https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110693

            Bug ID: 110693
           Summary: internal compiler error: Segmentation fault
           Product: gcc
           Version: 14.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c
          Assignee: unassigned at gcc dot gnu.org
          Reporter: 141242068 at smail dot nju.edu.cn
  Target Milestone: ---

When compiling below program using gcc-14 with option `gcc-14 a.c`, gcc-14
crashes:
```
char global;

void bar (void);

void __GIMPLE (ssa)
foo (char * p)
{
  __BB(2):
  if (p_2(D) == _Literal (char *)&global[2])
    goto __BB3;
  else
    goto __BB4;

  __BB(3):
  bar ();
  goto __BB4;

  __BB(4):
  return;
}

```

GCC's output is pasted below:
```
<source>:5:6: error: '__GIMPLE' only valid with '-fgimple'
    5 | void __GIMPLE (ssa)
      |      ^~~~~~~~
<source>: In function 'foo':
<source>:9:41: error: subscripted value is neither array nor pointer nor vector
    9 |   if (p_2(D) == _Literal (char *)&global[2])
      |                                         ^
<source>:9:44: error: invalid _Literal before ')' token
    9 |   if (p_2(D) == _Literal (char *)&global[2])
      |                                            ^
<source>:20:1: internal compiler error: Segmentation fault
   20 | }
      | ^
0x2150dee internal_error(char const*, ...)
        ???:0
0xb510f3 unchecked_make_edge(basic_block_def*, basic_block_def*, int)
        ???:0
0xa7d754 c_parser_parse_gimple_body(c_parser*, char*, c_declspec_il,
profile_count)
        ???:0
0xa7477d c_parse_file()
        ???:0
0xae3e59 c_common_parse_file()
        ???:0
Please submit a full bug report, with preprocessed source (by using
-freport-bug).
Please include the complete backtrace with any bug report.
See <https://gcc.gnu.org/bugs/> for instructions.
```

This can be verified by visiting the Compiler Explorer:
https://gcc.godbolt.org/z/To9vMd4z5
  • [Bug c/110693] New: interna... 141242068 at smail dot nju.edu.cn via Gcc-bugs

Reply via email to