------- Comment #2 from rguenth at gcc dot gnu dot org 2006-06-01 15:57 -------
Reduced testcase:
long stack[100];
int main(int argc,char**argv,char **envp)
{
long *esp=stack;
static void* jarray[]={ &&KeyCtrlKV };
*++esp=(long)&&_loc0;
goto SetTermStruc;
_loc0:;
*++esp=(long)&&_loc1;
_loc1:;
*++esp=(long)&&_loc35;
_loc35:;
goto *(*esp--);
*++esp=(long)&&_loc36;
_loc36:;
*++esp=(long)&&_loc37;
_loc37:;
KeyCtrlKV:
*++esp=(long)&&_loc66;
_loc66:;
*++esp=(long)&&_loc106;
_loc106:;
*++esp=(long)&&_loc119;
_loc119:;
SetTermStruc:
goto *(*esp--);
}
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27863