J'ai le code simplifié suivant :
#include <stdio.h>
int main ()
{
printf("Hello ");
goto Cleanup;
Cleanup:
char *str = "World\n";
printf("%s\n", str);
}
J'obtiens une erreur car une nouvelle variable est déclarée après l'étiquette. Si je place le contenu (principalement l'initialisation) après l'étiquette dans un bloc {}, la compilation réussit.
Je pense comprendre la raison du blocage dans le cas d'un interrupteur, mais pourquoi devrait-il être applicable dans le cas d'une étiquette ?
Cette erreur provient d'un compilateur gcc