public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug fortran/95068] New: [10/11 Regression] ICE in gfc_get_class_from_expr, at fortran/trans-expr.c:484
@ 2020-05-11 18:55 gscfq@t-online.de
  2020-05-11 18:56 ` [Bug fortran/95068] " gscfq@t-online.de
                   ` (6 more replies)
  0 siblings, 7 replies; 8+ messages in thread
From: gscfq@t-online.de @ 2020-05-11 18:55 UTC (permalink / raw)
  To: gcc-bugs

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

            Bug ID: 95068
           Summary: [10/11 Regression] ICE in gfc_get_class_from_expr, at
                    fortran/trans-expr.c:484
           Product: gcc
           Version: 11.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: fortran
          Assignee: unassigned at gcc dot gnu.org
          Reporter: gscfq@t-online.de
  Target Milestone: ---

Changed between 20190922 and 20190929 :


$ cat z1.f90
program p
   type t
   end type
contains
   function f() result(x)
      class(t), allocatable :: x
      associate (y => (f))
      end associate
   end
end


$ gfortran-9 -c z1.f90   # no error
z1.f90:7:23:

    7 |       associate (y => (f))
      |                       1
Warning: Non-RECURSIVE procedure 'f' at (1) is possibly calling itself
recursively.  Declare it RECURSIVE or use '-frecursive'



$ gfortran-11-20200510-chk -c z1.f90
z1.f90:7:23:

    7 |       associate (y => (f))
      |                       1
Warning: Non-RECURSIVE procedure 'f' at (1) is possibly calling itself
recursively.  Declare it RECURSIVE or use '-frecursive'
z1.f90:7:0:

    7 |       associate (y => (f))
      |
internal compiler error: tree check: expected class 'expression', have
'declaration' (function_decl) in tree_operand_check, at tree.h:3792
0x61669c tree_class_check_failed(tree_node const*, tree_code_class, char
const*, int, char const*)
        ../../gcc/tree.c:9736
0x776349 expr_check(tree_node*, char const*, int, char const*)
        ../../gcc/tree.h:3463
0x776349 tree_operand_check(tree_node*, int, char const*, int, char const*)
        ../../gcc/tree.h:3792
0x776349 gfc_get_class_from_expr(tree_node*)
        ../../gcc/fortran/trans-expr.c:484
0x7d2502 trans_associate_var
        ../../gcc/fortran/trans-stmt.c:2100
0x7d8d99 gfc_trans_block_construct(gfc_code*)
        ../../gcc/fortran/trans-stmt.c:2283
0x73a207 trans_code
        ../../gcc/fortran/trans.c:1960
0x77194d gfc_generate_function_code(gfc_namespace*)
        ../../gcc/fortran/trans-decl.c:6835
0x77165c gfc_generate_contained_functions
        ../../gcc/fortran/trans-decl.c:5830
0x77165c gfc_generate_function_code(gfc_namespace*)
        ../../gcc/fortran/trans-decl.c:6767
0x6ea066 translate_all_program_units
        ../../gcc/fortran/parse.c:6306
0x6ea066 gfc_parse_file()
        ../../gcc/fortran/parse.c:6545
0x7364ff gfc_be_parse_file
        ../../gcc/fortran/f95-lang.c:210

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

* [Bug fortran/95068] [10/11 Regression] ICE in gfc_get_class_from_expr, at fortran/trans-expr.c:484
  2020-05-11 18:55 [Bug fortran/95068] New: [10/11 Regression] ICE in gfc_get_class_from_expr, at fortran/trans-expr.c:484 gscfq@t-online.de
@ 2020-05-11 18:56 ` gscfq@t-online.de
  2020-05-12  6:49 ` marxin at gcc dot gnu.org
                   ` (5 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: gscfq@t-online.de @ 2020-05-11 18:56 UTC (permalink / raw)
  To: gcc-bugs

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

G. Steinmetz <gscfq@t-online.de> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |ice-on-invalid-code

--- Comment #1 from G. Steinmetz <gscfq@t-online.de> ---

Further reduced (ICEs down to r7, r6 rejects it) :


$ cat z2.f90
function f() result(x)
   associate (y => (f))
   end associate
end


$ gfortran-11-20200510 -c z2.f90
z2.f90:2:20:

    2 |    associate (y => (f))
      |                    1
Warning: Non-RECURSIVE procedure 'f' at (1) is possibly calling itself
recursively.  Declare it RECURSIVE or use '-frecursive'
during RTL pass: expand
z2.f90:2:0:

    2 |    associate (y => (f))
      |
internal compiler error: in convert_mode_scalar, at expr.c:313
0x8c13cc convert_mode_scalar
        ../../gcc/expr.c:313
0x8c13cc convert_move(rtx_def*, rtx_def*, int)
        ../../gcc/expr.c:297
0x8cd3f2 expand_expr_real_2(separate_ops*, rtx_def*, machine_mode,
expand_modifier)
        ../../gcc/expr.c:8670
0x7c3175 expand_gimple_stmt_1
        ../../gcc/cfgexpand.c:3786
0x7c3175 expand_gimple_stmt
        ../../gcc/cfgexpand.c:3847
0x7c7d57 expand_gimple_basic_block
        ../../gcc/cfgexpand.c:5887
0x7ca3ce execute
        ../../gcc/cfgexpand.c:6571



$ gfortran-11-20200510-chk -c z2.f90
z2.f90:2:20:

    2 |    associate (y => (f))
      |                    1
Warning: Non-RECURSIVE procedure 'f' at (1) is possibly calling itself
recursively.  Declare it RECURSIVE or use '-frecursive'
z2.f90:1:0:

    1 | function f() result(x)
      |
Error: non-trivial conversion in unary operation
real(kind=4)
real(kind=4) <T5c7> (void)
y = ((f.0_1));
z2.f90:1:0: internal compiler error: 'verify_gimple' failed
0xd9158d verify_gimple_in_seq(gimple*)
        ../../gcc/tree-cfg.c:5113
0xa4ded1 gimplify_body(tree_node*, bool)
        ../../gcc/gimplify.c:14917
0xa4e187 gimplify_function_tree(tree_node*)
        ../../gcc/gimplify.c:14988
0x889347 cgraph_node::analyze()
        ../../gcc/cgraphunit.c:670
0x88c771 analyze_functions
        ../../gcc/cgraphunit.c:1227
0x88d982 symbol_table::finalize_compilation_unit()
        ../../gcc/cgraphunit.c:2971

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

* [Bug fortran/95068] [10/11 Regression] ICE in gfc_get_class_from_expr, at fortran/trans-expr.c:484
  2020-05-11 18:55 [Bug fortran/95068] New: [10/11 Regression] ICE in gfc_get_class_from_expr, at fortran/trans-expr.c:484 gscfq@t-online.de
  2020-05-11 18:56 ` [Bug fortran/95068] " gscfq@t-online.de
@ 2020-05-12  6:49 ` marxin at gcc dot gnu.org
  2020-06-26 12:05 ` rguenth at gcc dot gnu.org
                   ` (4 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: marxin at gcc dot gnu.org @ 2020-05-12  6:49 UTC (permalink / raw)
  To: gcc-bugs

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

Martin Liška <marxin at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
      Known to work|                            |9.3.0
     Ever confirmed|0                           |1
      Known to fail|                            |10.1.0, 11.0
                 CC|                            |marxin at gcc dot gnu.org,
                   |                            |pault at gcc dot gnu.org
   Last reconfirmed|                            |2020-05-12

--- Comment #2 from Martin Liška <marxin at gcc dot gnu.org> ---
Confirmed, started with r10-3456-g56b070e3bbc4364f.

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

* [Bug fortran/95068] [10/11 Regression] ICE in gfc_get_class_from_expr, at fortran/trans-expr.c:484
  2020-05-11 18:55 [Bug fortran/95068] New: [10/11 Regression] ICE in gfc_get_class_from_expr, at fortran/trans-expr.c:484 gscfq@t-online.de
  2020-05-11 18:56 ` [Bug fortran/95068] " gscfq@t-online.de
  2020-05-12  6:49 ` marxin at gcc dot gnu.org
@ 2020-06-26 12:05 ` rguenth at gcc dot gnu.org
  2020-07-23  6:51 ` rguenth at gcc dot gnu.org
                   ` (3 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: rguenth at gcc dot gnu.org @ 2020-06-26 12:05 UTC (permalink / raw)
  To: gcc-bugs

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

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Priority|P3                          |P4
   Target Milestone|---                         |10.2

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

* [Bug fortran/95068] [10/11 Regression] ICE in gfc_get_class_from_expr, at fortran/trans-expr.c:484
  2020-05-11 18:55 [Bug fortran/95068] New: [10/11 Regression] ICE in gfc_get_class_from_expr, at fortran/trans-expr.c:484 gscfq@t-online.de
                   ` (2 preceding siblings ...)
  2020-06-26 12:05 ` rguenth at gcc dot gnu.org
@ 2020-07-23  6:51 ` rguenth at gcc dot gnu.org
  2021-04-08 12:02 ` rguenth at gcc dot gnu.org
                   ` (2 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: rguenth at gcc dot gnu.org @ 2020-07-23  6:51 UTC (permalink / raw)
  To: gcc-bugs

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

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|10.2                        |10.3

--- Comment #3 from Richard Biener <rguenth at gcc dot gnu.org> ---
GCC 10.2 is released, adjusting target milestone.

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

* [Bug fortran/95068] [10/11 Regression] ICE in gfc_get_class_from_expr, at fortran/trans-expr.c:484
  2020-05-11 18:55 [Bug fortran/95068] New: [10/11 Regression] ICE in gfc_get_class_from_expr, at fortran/trans-expr.c:484 gscfq@t-online.de
                   ` (3 preceding siblings ...)
  2020-07-23  6:51 ` rguenth at gcc dot gnu.org
@ 2021-04-08 12:02 ` rguenth at gcc dot gnu.org
  2022-06-28 10:40 ` [Bug fortran/95068] [10/11/12/13 " jakub at gcc dot gnu.org
  2023-06-02  8:23 ` [Bug fortran/95068] [10/11/12/13/14 " pault at gcc dot gnu.org
  6 siblings, 0 replies; 8+ messages in thread
From: rguenth at gcc dot gnu.org @ 2021-04-08 12:02 UTC (permalink / raw)
  To: gcc-bugs

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

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|10.3                        |10.4

--- Comment #4 from Richard Biener <rguenth at gcc dot gnu.org> ---
GCC 10.3 is being released, retargeting bugs to GCC 10.4.

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

* [Bug fortran/95068] [10/11/12/13 Regression] ICE in gfc_get_class_from_expr, at fortran/trans-expr.c:484
  2020-05-11 18:55 [Bug fortran/95068] New: [10/11 Regression] ICE in gfc_get_class_from_expr, at fortran/trans-expr.c:484 gscfq@t-online.de
                   ` (4 preceding siblings ...)
  2021-04-08 12:02 ` rguenth at gcc dot gnu.org
@ 2022-06-28 10:40 ` jakub at gcc dot gnu.org
  2023-06-02  8:23 ` [Bug fortran/95068] [10/11/12/13/14 " pault at gcc dot gnu.org
  6 siblings, 0 replies; 8+ messages in thread
From: jakub at gcc dot gnu.org @ 2022-06-28 10:40 UTC (permalink / raw)
  To: gcc-bugs

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

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|10.4                        |10.5

--- Comment #5 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
GCC 10.4 is being released, retargeting bugs to GCC 10.5.

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

* [Bug fortran/95068] [10/11/12/13/14 Regression] ICE in gfc_get_class_from_expr, at fortran/trans-expr.c:484
  2020-05-11 18:55 [Bug fortran/95068] New: [10/11 Regression] ICE in gfc_get_class_from_expr, at fortran/trans-expr.c:484 gscfq@t-online.de
                   ` (5 preceding siblings ...)
  2022-06-28 10:40 ` [Bug fortran/95068] [10/11/12/13 " jakub at gcc dot gnu.org
@ 2023-06-02  8:23 ` pault at gcc dot gnu.org
  6 siblings, 0 replies; 8+ messages in thread
From: pault at gcc dot gnu.org @ 2023-06-02  8:23 UTC (permalink / raw)
  To: gcc-bugs

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

Paul Thomas <pault at gcc dot gnu.org> changed:

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

--- Comment #6 from Paul Thomas <pault at gcc dot gnu.org> ---
This bug is "auto-fixed" on trunk. I will close the PR for housekeeping
purposes but will ensure that the backport of all recent associate patches do
fix this bug.

Thanks once more!

Paul

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

end of thread, other threads:[~2023-06-02  8:24 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-05-11 18:55 [Bug fortran/95068] New: [10/11 Regression] ICE in gfc_get_class_from_expr, at fortran/trans-expr.c:484 gscfq@t-online.de
2020-05-11 18:56 ` [Bug fortran/95068] " gscfq@t-online.de
2020-05-12  6:49 ` marxin at gcc dot gnu.org
2020-06-26 12:05 ` rguenth at gcc dot gnu.org
2020-07-23  6:51 ` rguenth at gcc dot gnu.org
2021-04-08 12:02 ` rguenth at gcc dot gnu.org
2022-06-28 10:40 ` [Bug fortran/95068] [10/11/12/13 " jakub at gcc dot gnu.org
2023-06-02  8:23 ` [Bug fortran/95068] [10/11/12/13/14 " pault 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).