Bug path
‘outer’
:
event 1
19
void outer (void)
^~~~~
|
(1) entry to ‘outer’
‘outer’
:
event 2
25
i = SETJMP(env);
^~~~~~
|
(2) ‘setjmp’ called here
‘outer’
:
events 3-5
27
if (i != 0)
^
|
(3) following ‘false’ branch (when ‘i == 0’)...
[...]
34
foo (1);
~~~~~~~
|
(4) ...to here
35
inner ();
~~~~~~~~
|
(5) calling ‘inner’ from ‘outer’
‘inner’
:
events 6-7
13
static void inner (void)
^~~~~
|
(6) entry to ‘inner’
[...]
16
longjmp (env, 0);
~~~~~~~~~~~~~~~~
|
(7) rewinding from ‘longjmp’ in ‘inner’...
‘outer’
:
event 8
25
i = SETJMP(env);
^~~~~~
|
(8) ...to ‘setjmp’ in ‘outer’ (saved at (2))
‘outer’
:
events 9-11
27
if (i != 0)
^
|
(9) following ‘true’ branch (when ‘i != 0’)...
28
{
29
foo (2);
~~~~~~~
|
(10) ...to here
30
__analyzer_dump_path (); /* { dg-message "path" } */
~~~~~~~~~~~~~~~~~~~~~~~
|
(11) here