public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug c/94730] New: [10 Regression] internal compiler error: in fold_convert_loc, at fold-const.c:2435
@ 2020-04-23 13:58 anbu1024.me at gmail dot com
  2020-04-23 14:11 ` [Bug c/94730] [8/9/10 " jakub at gcc dot gnu.org
                   ` (7 more replies)
  0 siblings, 8 replies; 9+ messages in thread
From: anbu1024.me at gmail dot com @ 2020-04-23 13:58 UTC (permalink / raw)
  To: gcc-bugs

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

            Bug ID: 94730
           Summary: [10 Regression] internal compiler error: in
                    fold_convert_loc, at fold-const.c:2435
           Product: gcc
           Version: 10.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c
          Assignee: unassigned at gcc dot gnu.org
          Reporter: anbu1024.me at gmail dot com
  Target Milestone: ---

$ cat reduced.c 

int x , y ; 

int foo ( ) 
{ 
        x = 0 ; 
        y = 0 ; 

        if (x != 0) 
                y ++; 
        else 
                x ++ ; 

} 

int x [] = { 0 } ;

--------------------------------------------------------------------------------

$ gcc-10 --version
gcc (GCC) 10.0.1 20200419 (experimental)
Copyright (C) 2020 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

--------------------------------------------------------------------------------

$ gcc-10 reduced.c 
reduced.c:16:5: error: conflicting types for ‘x’
   16 | int x [] = { 0 } ;
      |     ^
reduced.c:2:5: note: previous declaration of ‘x’ was here
    2 | int x , y ;
      |     ^
reduced.c: In function ‘foo’:
reduced.c:12:5: internal compiler error: in fold_convert_loc, at
fold-const.c:2435
   12 |   x ++ ;
      |   ~~^~
0x65b582 fold_convert_loc(unsigned int, tree_node*, tree_node*)
        ../../gcc-10-20200419/gcc/fold-const.c:2435
0xb12707 gimplify_self_mod_expr(tree_node**, gimple**, gimple**, bool,
tree_node*)
        ../../gcc-10-20200419/gcc/gimplify.c:3186
0xafd218 gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*),
int)
        ../../gcc-10-20200419/gcc/gimplify.c:13538
0xb00bd6 gimplify_stmt(tree_node**, gimple**)
        ../../gcc-10-20200419/gcc/gimplify.c:6825
0xb133cc gimplify_cond_expr
        ../../gcc-10-20200419/gcc/gimplify.c:4269
0xafdafe gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*),
int)
        ../../gcc-10-20200419/gcc/gimplify.c:13565
0xb00bd6 gimplify_stmt(tree_node**, gimple**)
        ../../gcc-10-20200419/gcc/gimplify.c:6825
0xafe48b gimplify_statement_list
        ../../gcc-10-20200419/gcc/gimplify.c:1869
0xafe48b gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*),
int)
        ../../gcc-10-20200419/gcc/gimplify.c:14052
0xb00bd6 gimplify_stmt(tree_node**, gimple**)
        ../../gcc-10-20200419/gcc/gimplify.c:6825
0xb0199b gimplify_bind_expr
        ../../gcc-10-20200419/gcc/gimplify.c:1424
0xafe0b3 gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*),
int)
        ../../gcc-10-20200419/gcc/gimplify.c:13809
0xb15927 gimplify_stmt(tree_node**, gimple**)
        ../../gcc-10-20200419/gcc/gimplify.c:6825
0xb15927 gimplify_body(tree_node*, bool)
        ../../gcc-10-20200419/gcc/gimplify.c:14857
0xb15e53 gimplify_function_tree(tree_node*)
        ../../gcc-10-20200419/gcc/gimplify.c:15030
0x9607d7 cgraph_node::analyze()
        ../../gcc-10-20200419/gcc/cgraphunit.c:670
0x9633f7 analyze_functions
        ../../gcc-10-20200419/gcc/cgraphunit.c:1227
0x963fc2 symbol_table::finalize_compilation_unit()
        ../../gcc-10-20200419/gcc/cgraphunit.c:2974
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.

--------------------------------------------------------------------------------

$ gcc-9 --version
gcc (GCC) 9.2.1 20191102
Copyright (C) 2019 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

--------------------------------------------------------------------------------

$ gcc-9 reduced.c 
reduced.c:16:5: error: conflicting types for ‘x’
   16 | int x [] = { 0 } ;
      |     ^
reduced.c:2:5: note: previous declaration of ‘x’ was here
    2 | int x , y ;
      |     ^
reduced.c:12: confused by earlier errors, bailing out

^ permalink raw reply	[flat|nested] 9+ messages in thread

* [Bug c/94730] [8/9/10 Regression] internal compiler error: in fold_convert_loc, at fold-const.c:2435
  2020-04-23 13:58 [Bug c/94730] New: [10 Regression] internal compiler error: in fold_convert_loc, at fold-const.c:2435 anbu1024.me at gmail dot com
@ 2020-04-23 14:11 ` jakub at gcc dot gnu.org
  2020-04-23 14:26 ` jakub at gcc dot gnu.org
                   ` (6 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: jakub at gcc dot gnu.org @ 2020-04-23 14:11 UTC (permalink / raw)
  To: gcc-bugs

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

Jakub Jelinek <jakub at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |error-recovery
   Target Milestone|---                         |8.5
            Summary|[10 Regression] internal    |[8/9/10 Regression]
                   |compiler error: in          |internal compiler error: in
                   |fold_convert_loc, at        |fold_convert_loc, at
                   |fold-const.c:2435           |fold-const.c:2435
   Last reconfirmed|                            |2020-04-23
             Status|UNCONFIRMED                 |NEW
     Ever confirmed|0                           |1
           Priority|P3                          |P4
                 CC|                            |jakub at gcc dot gnu.org

--- Comment #1 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
ICEs since r0-94713-ga406865a0845cdef8bdd3eefa53e7f3992cb34ff or so (perhaps
the previous commit).

^ permalink raw reply	[flat|nested] 9+ messages in thread

* [Bug c/94730] [8/9/10 Regression] internal compiler error: in fold_convert_loc, at fold-const.c:2435
  2020-04-23 13:58 [Bug c/94730] New: [10 Regression] internal compiler error: in fold_convert_loc, at fold-const.c:2435 anbu1024.me at gmail dot com
  2020-04-23 14:11 ` [Bug c/94730] [8/9/10 " jakub at gcc dot gnu.org
@ 2020-04-23 14:26 ` jakub at gcc dot gnu.org
  2020-04-23 18:05 ` joseph at codesourcery dot com
                   ` (5 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: jakub at gcc dot gnu.org @ 2020-04-23 14:26 UTC (permalink / raw)
  To: gcc-bugs

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

Jakub Jelinek <jakub at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |jsm28 at gcc dot gnu.org

--- Comment #2 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Note, with
int x, y;

void
foo ()
{
  x = 0;
  y = 0;
  if (x != 0)
    y++;
  else
    x++;
}

int x[1] = { 0 };

the type of x isn't overritten, only when it is int x[] = { 0 };

The type replacement happened in pop_scope:
1370                  gcc_assert (I_SYMBOL_BINDING (b->id) == b);
1371                  I_SYMBOL_BINDING (b->id) = b->shadowed;
1372                  if (b->shadowed && b->shadowed->u.type)
1373                    TREE_TYPE (b->shadowed->decl) = b->shadowed->u.type;

^ permalink raw reply	[flat|nested] 9+ messages in thread

* [Bug c/94730] [8/9/10 Regression] internal compiler error: in fold_convert_loc, at fold-const.c:2435
  2020-04-23 13:58 [Bug c/94730] New: [10 Regression] internal compiler error: in fold_convert_loc, at fold-const.c:2435 anbu1024.me at gmail dot com
  2020-04-23 14:11 ` [Bug c/94730] [8/9/10 " jakub at gcc dot gnu.org
  2020-04-23 14:26 ` jakub at gcc dot gnu.org
@ 2020-04-23 18:05 ` joseph at codesourcery dot com
  2020-05-06  9:31 ` [Bug c/94730] [8/9/10/11 " jakub at gcc dot gnu.org
                   ` (4 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: joseph at codesourcery dot com @ 2020-04-23 18:05 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #3 from joseph at codesourcery dot com <joseph at codesourcery dot com> ---
I'd suspect the code in finish_decl that deals with types determined from 
array initializers ("For global variables, update the copy of the type 
that exists in the binding.") of being involved here.

                  if (b_ext->u.type && comptypes (b_ext->u.type, type))
                    b_ext->u.type = composite_type (b_ext->u.type, type);
                  else
                    b_ext->u.type = type;

If the new type isn't compatible with the existing type of the 
declaration, it should probably not be stored in b_ext->u.type.

^ permalink raw reply	[flat|nested] 9+ messages in thread

* [Bug c/94730] [8/9/10/11 Regression] internal compiler error: in fold_convert_loc, at fold-const.c:2435
  2020-04-23 13:58 [Bug c/94730] New: [10 Regression] internal compiler error: in fold_convert_loc, at fold-const.c:2435 anbu1024.me at gmail dot com
                   ` (2 preceding siblings ...)
  2020-04-23 18:05 ` joseph at codesourcery dot com
@ 2020-05-06  9:31 ` jakub at gcc dot gnu.org
  2020-05-16 17:38 ` pinskia at gcc dot gnu.org
                   ` (3 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: jakub at gcc dot gnu.org @ 2020-05-06  9:31 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #4 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
*** Bug 94966 has been marked as a duplicate of this bug. ***

^ permalink raw reply	[flat|nested] 9+ messages in thread

* [Bug c/94730] [8/9/10/11 Regression] internal compiler error: in fold_convert_loc, at fold-const.c:2435
  2020-04-23 13:58 [Bug c/94730] New: [10 Regression] internal compiler error: in fold_convert_loc, at fold-const.c:2435 anbu1024.me at gmail dot com
                   ` (3 preceding siblings ...)
  2020-05-06  9:31 ` [Bug c/94730] [8/9/10/11 " jakub at gcc dot gnu.org
@ 2020-05-16 17:38 ` pinskia at gcc dot gnu.org
  2021-05-14  9:53 ` [Bug c/94730] [9/10/11/12 " jakub at gcc dot gnu.org
                   ` (2 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: pinskia at gcc dot gnu.org @ 2020-05-16 17:38 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #5 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
*** Bug 95161 has been marked as a duplicate of this bug. ***

^ permalink raw reply	[flat|nested] 9+ messages in thread

* [Bug c/94730] [9/10/11/12 Regression] internal compiler error: in fold_convert_loc, at fold-const.c:2435
  2020-04-23 13:58 [Bug c/94730] New: [10 Regression] internal compiler error: in fold_convert_loc, at fold-const.c:2435 anbu1024.me at gmail dot com
                   ` (4 preceding siblings ...)
  2020-05-16 17:38 ` pinskia at gcc dot gnu.org
@ 2021-05-14  9:53 ` jakub at gcc dot gnu.org
  2021-06-01  8:17 ` rguenth at gcc dot gnu.org
  2021-06-12  6:36 ` pinskia at gcc dot gnu.org
  7 siblings, 0 replies; 9+ messages in thread
From: jakub at gcc dot gnu.org @ 2021-05-14  9:53 UTC (permalink / raw)
  To: gcc-bugs

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

Jakub Jelinek <jakub at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|8.5                         |9.4

--- Comment #6 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
GCC 8 branch is being closed.

^ permalink raw reply	[flat|nested] 9+ messages in thread

* [Bug c/94730] [9/10/11/12 Regression] internal compiler error: in fold_convert_loc, at fold-const.c:2435
  2020-04-23 13:58 [Bug c/94730] New: [10 Regression] internal compiler error: in fold_convert_loc, at fold-const.c:2435 anbu1024.me at gmail dot com
                   ` (5 preceding siblings ...)
  2021-05-14  9:53 ` [Bug c/94730] [9/10/11/12 " jakub at gcc dot gnu.org
@ 2021-06-01  8:17 ` rguenth at gcc dot gnu.org
  2021-06-12  6:36 ` pinskia at gcc dot gnu.org
  7 siblings, 0 replies; 9+ messages in thread
From: rguenth at gcc dot gnu.org @ 2021-06-01  8:17 UTC (permalink / raw)
  To: gcc-bugs

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

Richard Biener <rguenth at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|9.4                         |9.5

--- Comment #7 from Richard Biener <rguenth at gcc dot gnu.org> ---
GCC 9.4 is being released, retargeting bugs to GCC 9.5.

^ permalink raw reply	[flat|nested] 9+ messages in thread

* [Bug c/94730] [9/10/11/12 Regression] internal compiler error: in fold_convert_loc, at fold-const.c:2435
  2020-04-23 13:58 [Bug c/94730] New: [10 Regression] internal compiler error: in fold_convert_loc, at fold-const.c:2435 anbu1024.me at gmail dot com
                   ` (6 preceding siblings ...)
  2021-06-01  8:17 ` rguenth at gcc dot gnu.org
@ 2021-06-12  6:36 ` pinskia at gcc dot gnu.org
  7 siblings, 0 replies; 9+ messages in thread
From: pinskia at gcc dot gnu.org @ 2021-06-12  6:36 UTC (permalink / raw)
  To: gcc-bugs

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

Andrew Pinski <pinskia at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|---                         |DUPLICATE

--- Comment #8 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
Almost an exact dup of bug 79412.

*** This bug has been marked as a duplicate of bug 79412 ***

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2021-06-12  6:36 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-04-23 13:58 [Bug c/94730] New: [10 Regression] internal compiler error: in fold_convert_loc, at fold-const.c:2435 anbu1024.me at gmail dot com
2020-04-23 14:11 ` [Bug c/94730] [8/9/10 " jakub at gcc dot gnu.org
2020-04-23 14:26 ` jakub at gcc dot gnu.org
2020-04-23 18:05 ` joseph at codesourcery dot com
2020-05-06  9:31 ` [Bug c/94730] [8/9/10/11 " jakub at gcc dot gnu.org
2020-05-16 17:38 ` pinskia at gcc dot gnu.org
2021-05-14  9:53 ` [Bug c/94730] [9/10/11/12 " jakub at gcc dot gnu.org
2021-06-01  8:17 ` rguenth at gcc dot gnu.org
2021-06-12  6:36 ` pinskia at gcc dot gnu.org

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).