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

Martin Sebor <msebor at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           See Also|                            |https://gcc.gnu.org/bugzill
                   |                            |a/show_bug.cgi?id=82429
             Status|NEW                         |ASSIGNED
           Assignee|unassigned at gcc dot gnu.org      |msebor at gcc dot 
gnu.org

--- Comment #5 from Martin Sebor <msebor at gcc dot gnu.org> ---
Reduced test case (the stpcpy declaration is important because of the hack
described in pr82429):

$ cat v.c && gcc -O2 -S -Wall v.c
char *stpcpy (char *, const char *);

void f (char *d, char c, char *s)
{
  __builtin_strcat (d, s);
  __builtin_strncat (d, &c, 1);
}
during GIMPLE pass: strlen
v.c: In function ‘f’:
v.c:3:6: internal compiler error: gimple check: expected
gimple_call(error_mark), have gimple_nop() in gimple_call_fndecl, at
gimple.h:3171
    3 | void f (char *d, char c, char *s)
      |      ^
0xe66115 gimple_check_failed(gimple const*, char const*, int, char const*,
gimple_code, tree_code)
        /src/gcc/master/gcc/gimple.c:1259
0xbb23bf GIMPLE_CHECK2<const gcall*>
        /src/gcc/master/gcc/gimple.h:74
0xb7bbe1 gimple_call_fndecl
        /src/gcc/master/gcc/gimple.h:3171
0xb8edf0 gimple_call_alloc_size(gimple*, generic_wide_int<wide_int_storage>*,
range_query*)
        /src/gcc/master/gcc/builtins.c:4931
0x15cc71e handle_builtin_stxncpy_strncat
        /src/gcc/master/gcc/tree-ssa-strlen.c:3109
0x15caea9 handle_builtin_strncat
        /src/gcc/master/gcc/tree-ssa-strlen.c:2666
0x15d214f strlen_check_and_optimize_call
        /src/gcc/master/gcc/tree-ssa-strlen.c:5166
0x15d2d30 check_and_optimize_stmt
        /src/gcc/master/gcc/tree-ssa-strlen.c:5374
0x15d3917 strlen_dom_walker::before_dom_children(basic_block_def*)
        /src/gcc/master/gcc/tree-ssa-strlen.c:5626
0x22901c2 dom_walker::walk(basic_block_def*)
        /src/gcc/master/gcc/domwalk.c:309
0x15d3c0e printf_strlen_execute
        /src/gcc/master/gcc/tree-ssa-strlen.c:5692
0x15d3fa4 execute
        /src/gcc/master/gcc/tree-ssa-strlen.c:5814
Please submit a full bug report,
with preprocessed source if appropriate.
Please include the complete backtrace with any bug report.
See <https://gcc.gnu.org/bugs/> for instructions.

Reply via email to