Это не компилируется на VS2015, но компилируется на Clang:
struct X
{
X(){}
~X(){}
};
int main() {
goto L;
X x;
L:
return 0;
}
ошибка C2362: инициализация ‘x’ пропускается командой ‘goto L’.
Только когда X содержит ctor + dtor или виртуальный dtor, он не компилируется на VS2015.
Есть ли способ подавить эту ошибку?
Почему Clang поддерживает функции Microsoft в более широком диапазоне, чем VS?
Задача ещё не решена.
Других решений пока нет …