На моей машине GCC не вызывает деструкторы thread_local
с.Код отлично работает на Clang 7 и Visual Studio.
Это ошибка?Я использую MinGW GCC 8.1 для Windows.
Thread model: posix
gcc version 8.1.0 (x86_64-posix-seh-rev0, Built by MinGW-W64 project)
Вот код:
#include <iostream>
struct A {
A() {
std::cout << "A()\n";
}
~A() {
std::cout << "~A()\n";
}
void
print() {
std::cout << "A\n";
}
};
thread_local A a;
int
main() {
a.print();
return 0;
}