Skip to main content
Katzenberger.Michael
Associate III
December 16, 2018
Question

STM32CubeMx 5.0.0 update leads to firmware lock using new() operator

  • December 16, 2018
  • 2 replies
  • 880 views

After updating CubeMx from 4.27 to 5.0.0 I ran into trouble regarding the newly created module syscall.c:

  • compiler error (had to switch the C++ dialect settings from "-std=c++0x" to "-std=gnu11" to fix it)
  • but firmware is now not running - it stucks in function _exit() caused by a new() operator

0690X000006CqI5QAK.png

How can this be fixed ???

Thanks,

Michael.

    This topic has been closed for replies.

    2 replies

    Pavel A.
    Super User
    December 16, 2018

    Have you found why operator new fails? Pool size too small? The _exit() hangs exactly because it's coded so.

    -- pa

    Katzenberger.Michael
    Associate III
    December 16, 2018

    Thanks for pointing me into the right direction. Indeed the heap and the stack pointer are interfering.

    Now the question is why this issue was not occuring while using the C++ dialect -std=c++0x ... :\