Index: firmware/source/sys_selftest.c =================================================================== diff -u -r8c9511a4eb046091fbfe6a3e481eb83c756b288f -r26d736280fef713e7639cd2b98eed975e2eb4353 --- firmware/source/sys_selftest.c (.../sys_selftest.c) (revision 8c9511a4eb046091fbfe6a3e481eb83c756b288f) +++ firmware/source/sys_selftest.c (.../sys_selftest.c) (revision 26d736280fef713e7639cd2b98eed975e2eb4353) @@ -1124,8 +1124,8 @@ */ /* USER CODE BEGIN (42) */ uint32_t marker = STACK_MARKER; - uint32_t contentOfLinkRegister = *(volatile uint32_t*)(&marker + LR_OFFSET_WORD_IN_STACK); - *(volatile uint32_t*)(&marker + LR_OFFSET_WORD_IN_STACK) = contentOfLinkRegister + LR_OFFSET_ADJUSTMENT; + uint32_t contentOfLinkRegister = *(volatile uint32_t*)( &marker + LR_OFFSET_WORD_IN_STACK ); + *(volatile uint32_t*)( &marker + LR_OFFSET_WORD_IN_STACK ) = contentOfLinkRegister + LR_OFFSET_ADJUSTMENT; SET_ALARM_WITH_2_U32_DATA( ALARM_ID_HD_SOFTWARE_FAULT, (U32)SW_FAULT_ID_ILLEGAL_MEM_ACCESS, contentOfLinkRegister ) // log LR to determine what caused violation /* USER CODE END */