Мій сценарій такий (він працював у кланге, але не в gcc)
liba.hpp:
inline int MY_GLOBAL = 0;
libother.cpp: (dll)
#include "myliba.hpp"
void myFunc() {
//
MYGLOBAL = 28;
}
someexe.cpp:
RunAppThatUsesBothLibAandLibOther();
Проблема полягає в тому, що вбудована змінна показувала 0 в тих місцях, де я очікувала 28, оскільки вона була змінена на час зміни часу. MSVC не погоджується з цим, але Кланг робить те, що я очікував.
Питання в тому, чи можна змінити вбудовані змінні під час виконання в моєму сценарії? (Я вирішив проблему, видаливши змінну.)