diff --git a/miosix/arch/cpu/common/cortexMx_interrupts.cpp b/miosix/arch/cpu/common/cortexMx_interrupts.cpp
index 6d3ce34cdaa6a6b632410fefd36a7fdd8764fdbc..658fe78272a931e1e2c7a6b3f15eb0dd1ddede09 100644
--- a/miosix/arch/cpu/common/cortexMx_interrupts.cpp
+++ b/miosix/arch/cpu/common/cortexMx_interrupts.cpp
@@ -459,7 +459,6 @@ void MemManage_Handler()
     else id=fault::MP_NOADDR;
     if(Thread::IRQreportFault(FaultData(id,getProgramCounter(),arg)))
     {
-        SCB->SHCSR &= ~(1<<13); //Clear MEMFAULTPENDED bit
         //Clear MMARVALID, MLSPERR, MSTKERR, MUNSTKERR, DACCVIOL, IACCVIOL
         SCB->CFSR = 0x000000bb;
         return;
@@ -507,7 +506,6 @@ void BusFault_Handler()
     else id=fault::BF_NOADDR;
     if(Thread::IRQreportFault(FaultData(id,getProgramCounter(),arg)))
     {
-        SCB->SHCSR &= ~(1<<14); //Clear BUSFAULTPENDED bit
         //Clear BFARVALID, LSPERR, STKERR, UNSTKERR, IMPRECISERR, PRECISERR, IBUSERR
         SCB->CFSR = 0x0000bf00;
         return;
@@ -562,7 +560,6 @@ void UsageFault_Handler()
     else id=fault::UF_UNEXP;
     if(Thread::IRQreportFault(FaultData(id,getProgramCounter())))
     {
-        SCB->SHCSR &= ~(1<<12); //Clear USGFAULTPENDED bit
         //Clear DIVBYZERO, UNALIGNED, UNDEFINSTR, INVSTATE, INVPC, NOCP
         SCB->CFSR = 0x030f0000;
         return;