Реализация Singleton для arm-gcc под stm32

Пробую пощупать VisualGDB + CubeMX. При инстанцировании такого вот синглтона:

class Singleton
{
    
public:
    
    static void update()
    {
        getInstance()._counter++;
    }
    
private:
    
    Singleton() {}
    Singleton(Singleton const &) = delete;
    void operator=(Singleton const &)  = delete;
    
    static Singleton& getInstance()
    {
        static Singleton instance;
        return instance;
    }
    
    int _counter = 0;
};

в функции

extern "C"
void main_loop()
{
    Singleton::update();
}

которая потом вызывается из кода на С, генерируемого CubeMX, компилятор создает что-то отъедающее очень много памяти:

введите сюда описание изображения

Подскажите, пожалуйста, как можно это исправить.


Ответы (0 шт):