Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
initialization of 'identifier' is skipped by 'goto label'
When compiled by using /Za, a jump to the label prevents the identifier from being initialized.
You can only jump past a declaration with an initializer if the declaration is enclosed in a block that isn't entered, or if the variable has already been initialized.
The following sample generates C2362:
// C2362.cpp
// compile with: /Za
int main() {
goto label1;
int i = 1; // C2362, initialization skipped
label1:;
}
Possible resolution:
// C2362b.cpp
// compile with: /Za
int main() {
goto label1;
{
int j = 1; // OK, this block is never entered
}
label1:;
}