Erro do Compilador C2362
inicialização do 'identificador' é ignorada pelo 'rótulo goto'
Quando compilado usando /Za, um salto para o rótulo impede que o identificador seja inicializado.
Você só pode ultrapassar uma declaração com um inicializador se a declaração estiver delimitada em um bloco que não foi inserido ou se a variável já tiver sido inicializada.
A amostra a seguir gera C2362:
// C2362.cpp
// compile with: /Za
int main() {
goto label1;
int i = 1; // C2362, initialization skipped
label1:;
}
Resolução possível:
// C2362b.cpp
// compile with: /Za
int main() {
goto label1;
{
int j = 1; // OK, this block is never entered
}
label1:;
}