Bug path
test_4
‘test_4’
:
events 1-2
39
void test_4 (void)
^~~~~~
|
(1) entry to ‘test_4’
40
{
41
char *s = called_by_test_4 (0);
~~~~~~~~~~~~~~~~~~~~
|
(2) calling ‘called_by_test_4’ from ‘test_4’
called_by_test_4
‘called_by_test_4’
:
events 3-5
31
called_by_test_4 (int flag)
^~~~~~~~~~~~~~~~
|
(3) entry to ‘called_by_test_4’
32
{
33
if (flag)
~
|
(4) following ‘false’ branch (when ‘flag == 0’)...
[...]
36
return (char *)"bar";
~~~~~~~~~~~~~
|
(5) ...to here
‘test_4’
:
events 6-7
41
char *s = called_by_test_4 (0);
^~~~~~~~~~~~~~~~~~~~
|
(6) returning to ‘test_4’ from ‘called_by_test_4’
42
s[1] = 'z'; /* { dg-warning "write to string literal" } */
~~~~~~~~~~
|
(7) write to string literal here