| /* { dg-do compile } */ |
| /* { dg-options "-O2 -Wuninitialized" } */ |
| |
| struct machine_thread_all_state { |
| int set; |
| } _hurd_setup_sighandler_state; |
| int _hurd_setup_sighandler_ss_0; |
| struct { |
| int ctx; |
| } *_hurd_setup_sighandler_stackframe; |
| void _setjmp(); |
| void __thread_get_state(); |
| int machine_get_basic_state(struct machine_thread_all_state *state) { |
| if (state->set) |
| __thread_get_state(); |
| return 1; |
| } |
| int *_hurd_setup_sighandler() { |
| int *scp; /* { dg-bogus "used uninitialized" } */ |
| if (_hurd_setup_sighandler_ss_0) { |
| _setjmp(); |
| _hurd_setup_sighandler_state.set |= 5; |
| } |
| machine_get_basic_state(&_hurd_setup_sighandler_state); |
| scp = &_hurd_setup_sighandler_stackframe->ctx; |
| _setjmp(); |
| return scp; |
| } |