public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug fortran/96041] New: [11 regression] ICE in gfortran.dg/pr93423.f90 after r11-1792
@ 2020-07-02 22:45 seurer at linux dot vnet.ibm.com
  2020-07-03  6:59 ` [Bug fortran/96041] " rguenth at gcc dot gnu.org
                   ` (14 more replies)
  0 siblings, 15 replies; 16+ messages in thread
From: seurer at linux dot vnet.ibm.com @ 2020-07-02 22:45 UTC (permalink / raw)
  To: gcc-bugs

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

            Bug ID: 96041
           Summary: [11 regression] ICE in gfortran.dg/pr93423.f90 after
                    r11-1792
           Product: gcc
           Version: 11.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: fortran
          Assignee: unassigned at gcc dot gnu.org
          Reporter: seurer at linux dot vnet.ibm.com
  Target Milestone: ---

g:b88744905a46be44ffa3c57d46080f601ae832b8, r11-1792

spawn -ignore SIGHUP
/home/seurer/gcc/git/build/gcc-test/gcc/testsuite/gfortran/../../gfortran
-B/home/seurer/gcc/git/build/gcc-test/gcc/testsuite/gfortran/../../
-B/home/seurer/gcc/git/build/gcc-test/powerpc64-unknown-linux-gnu/./libgfortran/
exceptions_enabled44873.cc -fno-diagnostics-show-caret
-fno-diagnostics-show-line-numbers -fdiagnostics-color=never
-fdiagnostics-urls=never -fno-diagnostics-show-caret
-fno-diagnostics-show-line-numbers -fdiagnostics-color=never
-fdiagnostics-urls=never -S -o exceptions_enabled44873.s
FAIL: gfortran.dg/pr93423.f90   -O  (test for excess errors)
Excess errors:
f951: internal compiler error: Segmentation fault
0x10be671b crash_signal
        /home/seurer/gcc/git/gcc-test/gcc/toplev.c:328
0x103a6484 free_st_labels
        /home/seurer/gcc/git/gcc-test/gcc/fortran/symbol.c:2662
0x103a648f free_st_labels
        /home/seurer/gcc/git/gcc-test/gcc/fortran/symbol.c:2662
0x103a648f free_st_labels
        /home/seurer/gcc/git/gcc-test/gcc/fortran/symbol.c:2662
0x103afd63 gfc_free_namespace(gfc_namespace*)
        /home/seurer/gcc/git/gcc-test/gcc/fortran/symbol.c:4044
0x103aff67 gfc_free_symbol(gfc_symbol*)
        /home/seurer/gcc/git/gcc-test/gcc/fortran/symbol.c:3084
0x103b01af free_sym_tree
        /home/seurer/gcc/git/gcc-test/gcc/fortran/symbol.c:3896
0x103b01a7 free_sym_tree
        /home/seurer/gcc/git/gcc-test/gcc/fortran/symbol.c:3894
0x103b019f free_sym_tree
        /home/seurer/gcc/git/gcc-test/gcc/fortran/symbol.c:3893
0x103afcdb gfc_free_namespace(gfc_namespace*)
        /home/seurer/gcc/git/gcc-test/gcc/fortran/symbol.c:4035
0x103b067b gfc_symbol_done_2()
        /home/seurer/gcc/git/gcc-test/gcc/fortran/symbol.c:4095
0x1031f8cf gfc_done_2()
        /home/seurer/gcc/git/gcc-test/gcc/fortran/misc.c:358
0x10345cdb clean_up_modules
        /home/seurer/gcc/git/gcc-test/gcc/fortran/parse.c:6267
0x10356413 translate_all_program_units
        /home/seurer/gcc/git/gcc-test/gcc/fortran/parse.c:6330
0x10356413 gfc_parse_file()
        /home/seurer/gcc/git/gcc-test/gcc/fortran/parse.c:6546
0x103c757f gfc_be_parse_file
        /home/seurer/gcc/git/gcc-test/gcc/fortran/f95-lang.c:212

testcase /home/seurer/gcc/git/gcc-test/gcc/testsuite/gfortran.dg/dg.exp
completed in 0 seconds

                === gfortran Summary ===

# of expected passes            2
# of unexpected failures        2

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

* [Bug fortran/96041] [11 regression] ICE in gfortran.dg/pr93423.f90 after r11-1792
  2020-07-02 22:45 [Bug fortran/96041] New: [11 regression] ICE in gfortran.dg/pr93423.f90 after r11-1792 seurer at linux dot vnet.ibm.com
@ 2020-07-03  6:59 ` rguenth at gcc dot gnu.org
  2020-07-03 18:27 ` anlauf at gcc dot gnu.org
                   ` (13 subsequent siblings)
  14 siblings, 0 replies; 16+ messages in thread
From: rguenth at gcc dot gnu.org @ 2020-07-03  6:59 UTC (permalink / raw)
  To: gcc-bugs

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

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|---                         |11.0

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

* [Bug fortran/96041] [11 regression] ICE in gfortran.dg/pr93423.f90 after r11-1792
  2020-07-02 22:45 [Bug fortran/96041] New: [11 regression] ICE in gfortran.dg/pr93423.f90 after r11-1792 seurer at linux dot vnet.ibm.com
  2020-07-03  6:59 ` [Bug fortran/96041] " rguenth at gcc dot gnu.org
@ 2020-07-03 18:27 ` anlauf at gcc dot gnu.org
  2020-07-04  5:59 ` dominiq at lps dot ens.fr
                   ` (12 subsequent siblings)
  14 siblings, 0 replies; 16+ messages in thread
From: anlauf at gcc dot gnu.org @ 2020-07-03 18:27 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #1 from anlauf at gcc dot gnu.org ---
(In reply to Bill Seurer from comment #0)
> f951: internal compiler error: Segmentation fault
> 0x10be671b crash_signal
> 	/home/seurer/gcc/git/gcc-test/gcc/toplev.c:328
> 0x103a6484 free_st_labels
> 	/home/seurer/gcc/git/gcc-test/gcc/fortran/symbol.c:2662
> 0x103a648f free_st_labels
> 	/home/seurer/gcc/git/gcc-test/gcc/fortran/symbol.c:2662
> 0x103a648f free_st_labels
> 	/home/seurer/gcc/git/gcc-test/gcc/fortran/symbol.c:2662
> 0x103afd63 gfc_free_namespace(gfc_namespace*)
> 	/home/seurer/gcc/git/gcc-test/gcc/fortran/symbol.c:4044

Bill,

can you set a breakpoint at symbol.c:4044 and print ns->st_labels?

On x86_64 I always have a NULL pointer here, so that symbol.c:2662
is never reached.

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

* [Bug fortran/96041] [11 regression] ICE in gfortran.dg/pr93423.f90 after r11-1792
  2020-07-02 22:45 [Bug fortran/96041] New: [11 regression] ICE in gfortran.dg/pr93423.f90 after r11-1792 seurer at linux dot vnet.ibm.com
  2020-07-03  6:59 ` [Bug fortran/96041] " rguenth at gcc dot gnu.org
  2020-07-03 18:27 ` anlauf at gcc dot gnu.org
@ 2020-07-04  5:59 ` dominiq at lps dot ens.fr
  2020-07-04 14:29 ` dominiq at lps dot ens.fr
                   ` (11 subsequent siblings)
  14 siblings, 0 replies; 16+ messages in thread
From: dominiq at lps dot ens.fr @ 2020-07-04  5:59 UTC (permalink / raw)
  To: gcc-bugs

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

Dominique d'Humieres <dominiq at lps dot ens.fr> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
   Last reconfirmed|                            |2020-07-04
     Ever confirmed|0                           |1

--- Comment #2 from Dominique d'Humieres <dominiq at lps dot ens.fr> ---
Confirmed on darwin.

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

* [Bug fortran/96041] [11 regression] ICE in gfortran.dg/pr93423.f90 after r11-1792
  2020-07-02 22:45 [Bug fortran/96041] New: [11 regression] ICE in gfortran.dg/pr93423.f90 after r11-1792 seurer at linux dot vnet.ibm.com
                   ` (2 preceding siblings ...)
  2020-07-04  5:59 ` dominiq at lps dot ens.fr
@ 2020-07-04 14:29 ` dominiq at lps dot ens.fr
  2020-07-04 17:17 ` anlauf at gcc dot gnu.org
                   ` (10 subsequent siblings)
  14 siblings, 0 replies; 16+ messages in thread
From: dominiq at lps dot ens.fr @ 2020-07-04 14:29 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #3 from Dominique d'Humieres <dominiq at lps dot ens.fr> ---
>From several runs

    frame #0: 0x00000001000f11ed f951`gfc_free_namespace(gfc_namespace*)
[inlined] free_uop_tree(uop_tree=0x00000000000000ce) at symbol.c:3881:17
    frame #0: 0x00000001000f11ed f951`gfc_free_namespace(gfc_namespace*)
[inlined] free_uop_tree(uop_tree=0x00000000000000ce) at symbol.c:3881:17
    frame #0: 0x00000001000f11ed f951`gfc_free_namespace(gfc_namespace*)
[inlined] free_uop_tree(uop_tree=0x00000000000000ce) at symbol.c:3881:17
    frame #0: 0x00000001000f11ed f951`gfc_free_namespace(gfc_namespace*)
[inlined] free_uop_tree(uop_tree=0x00000000000000ce) at symbol.c:3881:17
    frame #0: 0x00000001000f11ed f951`gfc_free_namespace(gfc_namespace*)
[inlined] free_uop_tree(uop_tree=0x00000000000000ce) at symbol.c:3881:17
    frame #0: 0x00000001000f11ed f951`gfc_free_namespace(gfc_namespace*)
[inlined] free_uop_tree(uop_tree=0x00000000000000ce) at symbol.c:3881:17
    frame #0: 0x00000001000f0b27 f951`::free_sym_tree(gfc_symtree *) [inlined]
free_sym_tree(sym_tree=0x00000000000000ce) at symbol.c:3899:17
    frame #0: 0x00000001000f0b27 f951`::free_sym_tree(gfc_symtree *) [inlined]
free_sym_tree(sym_tree=0x00000000000000ce) at symbol.c:3899:17
    frame #0: 0x00000001000f0b27 f951`::free_sym_tree(gfc_symtree *) [inlined]
free_sym_tree(sym_tree=0x00000000000000ce) at symbol.c:3899:17
    frame #0: 0x00000001000f0b27 f951`::free_sym_tree(gfc_symtree *) [inlined]
free_sym_tree(sym_tree=0x00000000000000ce) at symbol.c:3899:17
    frame #0: 0x00000001000f11ed f951`gfc_free_namespace(gfc_namespace*)
[inlined] free_uop_tree(uop_tree=0x00000000000000ce) at symbol.c:3881:17
    frame #0: 0x00000001000f0b27 f951`::free_sym_tree(gfc_symtree *) [inlined]
free_sym_tree(sym_tree=0x00000000000000ce) at symbol.c:3899:17
    frame #0: 0x00000001000f11ed f951`gfc_free_namespace(gfc_namespace*)
[inlined] free_uop_tree(uop_tree=0x00000000000000ce) at symbol.c:3881:17

It seems that some trees are not built properly.

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

* [Bug fortran/96041] [11 regression] ICE in gfortran.dg/pr93423.f90 after r11-1792
  2020-07-02 22:45 [Bug fortran/96041] New: [11 regression] ICE in gfortran.dg/pr93423.f90 after r11-1792 seurer at linux dot vnet.ibm.com
                   ` (3 preceding siblings ...)
  2020-07-04 14:29 ` dominiq at lps dot ens.fr
@ 2020-07-04 17:17 ` anlauf at gcc dot gnu.org
  2020-07-06 14:35 ` seurer at linux dot vnet.ibm.com
                   ` (9 subsequent siblings)
  14 siblings, 0 replies; 16+ messages in thread
From: anlauf at gcc dot gnu.org @ 2020-07-04 17:17 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #4 from anlauf at gcc dot gnu.org ---
(In reply to Dominique d'Humieres from comment #3)
> From several runs
> 
>     frame #0: 0x00000001000f11ed f951`gfc_free_namespace(gfc_namespace*)
> [inlined] free_uop_tree(uop_tree=0x00000000000000ce) at symbol.c:3881:17
>     frame #0: 0x00000001000f0b27 f951`::free_sym_tree(gfc_symtree *)
> [inlined] free_sym_tree(sym_tree=0x00000000000000ce) at symbol.c:3899:17
> 
> It seems that some trees are not built properly.

I set breakpoints in gdb in these routines but see nothing special on x86_64.

Maybe some stack/heap corruption issue affecting ref counts?

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

* [Bug fortran/96041] [11 regression] ICE in gfortran.dg/pr93423.f90 after r11-1792
  2020-07-02 22:45 [Bug fortran/96041] New: [11 regression] ICE in gfortran.dg/pr93423.f90 after r11-1792 seurer at linux dot vnet.ibm.com
                   ` (4 preceding siblings ...)
  2020-07-04 17:17 ` anlauf at gcc dot gnu.org
@ 2020-07-06 14:35 ` seurer at linux dot vnet.ibm.com
  2020-07-06 18:26 ` anlauf at gcc dot gnu.org
                   ` (8 subsequent siblings)
  14 siblings, 0 replies; 16+ messages in thread
From: seurer at linux dot vnet.ibm.com @ 2020-07-06 14:35 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #5 from Bill Seurer <seurer at linux dot vnet.ibm.com> ---
It hits that breakpoints many times and for the first many it was always 0. 
Then I just let it run until it ICEd and backed up the call stack a bit.


Program received signal SIGSEGV, Segmentation fault.
0x00000000106dcbd4 in free_st_labels (label=0x981) at
/home/seurer/gcc/git/gcc-test/gcc/fortran/symbol.c:2662
2662      free_st_labels (label->left);
(gdb) where
#0  0x00000000106dcbd4 in free_st_labels (label=0x981) at
/home/seurer/gcc/git/gcc-test/gcc/fortran/symbol.c:2662
#1  0x00000000106dcbe0 in free_st_labels (label=0x13492760) at
/home/seurer/gcc/git/gcc-test/gcc/fortran/symbol.c:2662
#2  0x00000000106dcbe0 in free_st_labels (label=0x3fffb7e50a58 <main_arena+88>)
at /home/seurer/gcc/git/gcc-test/gcc/fortran/symbol.c:2662
#3  0x00000000106dff28 in gfc_free_namespace (ns=0x13495ae0) at
/home/seurer/gcc/git/gcc-test/gcc/fortran/symbol.c:4050
#4  0x00000000106dda60 in gfc_free_symbol (sym=0x13493e40) at
/home/seurer/gcc/git/gcc-test/gcc/fortran/symbol.c:3084
#5  0x00000000106ddc14 in gfc_release_symbol (sym=0x13493e40) at
/home/seurer/gcc/git/gcc-test/gcc/fortran/symbol.c:3125
#6  0x00000000106dfa10 in free_sym_tree (sym_tree=0x13493e00) at
/home/seurer/gcc/git/gcc-test/gcc/fortran/symbol.c:3902
#7  0x00000000106dfa00 in free_sym_tree (sym_tree=0x13493ac0) at
/home/seurer/gcc/git/gcc-test/gcc/fortran/symbol.c:3900
#8  0x00000000106df9f0 in free_sym_tree (sym_tree=0x13493fa0) at
/home/seurer/gcc/git/gcc-test/gcc/fortran/symbol.c:3899
#9  0x00000000106dfe90 in gfc_free_namespace (ns=0x1348f6b0) at
/home/seurer/gcc/git/gcc-test/gcc/fortran/symbol.c:4041
#10 0x00000000106e0144 in gfc_symbol_done_2 () at
/home/seurer/gcc/git/gcc-test/gcc/fortran/symbol.c:4101
#11 0x000000001062536c in gfc_done_2 () at
/home/seurer/gcc/git/gcc-test/gcc/fortran/misc.c:358
#12 0x000000001066cec8 in clean_up_modules (gsym=0x13490330) at
/home/seurer/gcc/git/gcc-test/gcc/fortran/parse.c:6267
#13 0x000000001066d22c in translate_all_program_units
(gfc_global_ns_list=0x13477bf0) at
/home/seurer/gcc/git/gcc-test/gcc/fortran/parse.c:6330
#14 0x000000001066da84 in gfc_parse_file () at
/home/seurer/gcc/git/gcc-test/gcc/fortran/parse.c:6546
#15 0x00000000106f0488 in gfc_be_parse_file () at
/home/seurer/gcc/git/gcc-test/gcc/fortran/f95-lang.c:212
#16 0x0000000011248514 in compile_file () at
/home/seurer/gcc/git/gcc-test/gcc/toplev.c:458
#17 0x000000001124d87c in do_compile () at
/home/seurer/gcc/git/gcc-test/gcc/toplev.c:2307
#18 0x000000001124dda4 in toplev::main (this=0x3fffffffe910, argc=20,
argv=0x3fffffffed78) at /home/seurer/gcc/git/gcc-test/gcc/toplev.c:2446
#19 0x00000000124facf4 in main (argc=20, argv=0x3fffffffed78) at
/home/seurer/gcc/git/gcc-test/gcc/main.c:39

up a few times...

4050      free_st_labels (ns->st_labels);
(gdb) print ns->st_labels
$8 = (gfc_st_label *) 0x3fffb7e50a58 <main_arena+88>

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

* [Bug fortran/96041] [11 regression] ICE in gfortran.dg/pr93423.f90 after r11-1792
  2020-07-02 22:45 [Bug fortran/96041] New: [11 regression] ICE in gfortran.dg/pr93423.f90 after r11-1792 seurer at linux dot vnet.ibm.com
                   ` (5 preceding siblings ...)
  2020-07-06 14:35 ` seurer at linux dot vnet.ibm.com
@ 2020-07-06 18:26 ` anlauf at gcc dot gnu.org
  2020-07-07 12:03 ` dominiq at lps dot ens.fr
                   ` (7 subsequent siblings)
  14 siblings, 0 replies; 16+ messages in thread
From: anlauf at gcc dot gnu.org @ 2020-07-06 18:26 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #6 from anlauf at gcc dot gnu.org ---
On x86_64 I never reach symbol.c:2662, since the code returns from line 2659.
This the closest I get to your backtrace:

Breakpoint 2, free_st_labels (label=0x0) at
../../gcc-trunk/gcc/fortran/symbol.c:2659
2659      if (label == NULL)
(gdb) bt
#0  free_st_labels (label=0x0) at ../../gcc-trunk/gcc/fortran/symbol.c:2659
#1  0x000000000073ad9a in gfc_free_namespace (ns=0x27c7c60)
    at ../../gcc-trunk/gcc/fortran/symbol.c:4050
#2  0x000000000073af45 in gfc_free_symbol (sym=0x27c7b00)
    at ../../gcc-trunk/gcc/fortran/symbol.c:3091
#3  0x000000000073b09f in free_sym_tree (sym_tree=0x275f280)
    at ../../gcc-trunk/gcc/fortran/symbol.c:3902
#4  0x000000000073b096 in free_sym_tree (sym_tree=0x27c5a00)
    at ../../gcc-trunk/gcc/fortran/symbol.c:3900
#5  0x000000000073b08d in free_sym_tree (sym_tree=0x275fb90)
    at ../../gcc-trunk/gcc/fortran/symbol.c:3899
#6  0x000000000073b08d in free_sym_tree (sym_tree=0x27c79a0)
    at ../../gcc-trunk/gcc/fortran/symbol.c:3899
#7  0x000000000073ad12 in gfc_free_namespace (ns=0x27c2670)
    at ../../gcc-trunk/gcc/fortran/symbol.c:4041
#8  0x000000000073b34b in gfc_symbol_done_2 ()
    at ../../gcc-trunk/gcc/fortran/symbol.c:4101
#9  0x00000000006d9379 in gfc_done_2 () at
../../gcc-trunk/gcc/fortran/misc.c:358
#10 0x00000000006f2053 in clean_up_modules (gsym=0x275e880)
    at ../../gcc-trunk/gcc/fortran/parse.c:6267
#11 0x00000000006f201d in clean_up_modules (gsym=0x2823580)
    at ../../gcc-trunk/gcc/fortran/parse.c:6259
#12 0x00000000006fd73c in translate_all_program_units
(gfc_global_ns_list=<optimized out>)
    at ../../gcc-trunk/gcc/fortran/parse.c:6330
#13 gfc_parse_file () at ../../gcc-trunk/gcc/fortran/parse.c:6546
#14 0x0000000000749f00 in gfc_be_parse_file ()
    at ../../gcc-trunk/gcc/fortran/f95-lang.c:212
#15 0x0000000000d74e8f in compile_file () at ../../gcc-trunk/gcc/toplev.c:458
#16 0x00000000006621c9 in do_compile () at ../../gcc-trunk/gcc/toplev.c:2307
#17 toplev::main (this=this@entry=0x7fffffffd4ae, argc=<optimized out>,
argc@entry=2, 
    argv=<optimized out>, argv@entry=0x7fffffffd5a8) at
../../gcc-trunk/gcc/toplev.c:2446
#18 0x000000000066602b in main (argc=2, argv=0x7fffffffd5a8)
    at ../../gcc-trunk/gcc/main.c:39
(gdb) p label
$1 = (gfc_st_label *) 0x0

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

* [Bug fortran/96041] [11 regression] ICE in gfortran.dg/pr93423.f90 after r11-1792
  2020-07-02 22:45 [Bug fortran/96041] New: [11 regression] ICE in gfortran.dg/pr93423.f90 after r11-1792 seurer at linux dot vnet.ibm.com
                   ` (6 preceding siblings ...)
  2020-07-06 18:26 ` anlauf at gcc dot gnu.org
@ 2020-07-07 12:03 ` dominiq at lps dot ens.fr
  2020-07-07 19:31 ` anlauf at gcc dot gnu.org
                   ` (6 subsequent siblings)
  14 siblings, 0 replies; 16+ messages in thread
From: dominiq at lps dot ens.fr @ 2020-07-07 12:03 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #7 from Dominique d'Humieres <dominiq at lps dot ens.fr> ---
Reduced test (provided t.mod exists)

submodule (t) ts

contains

  module procedure bp(s)
!  end procedure bp

end submodule ts
end

pr93423_red.f90:5:19:

    5 |   module procedure bp(s)
      |                   1
Error: MODULE PROCEDURE at (1) must be in a generic module interface
f951: internal compiler error: Segmentation fault: 11

* thread #1, queue = 'com.apple.main-thread', stop reason = EXC_BAD_ACCESS
(code=1, address=0x0)
  * frame #0: 0x00007fff6bd198b5 libsystem_platform.dylib`_platform_strcmp +
181
    frame #1: 0x00000001000c8856
f951`gfc_resolve_formal_arglist(proc=0x000000014301fbb0) at resolve.c:313:18
    frame #2: 0x00000001000eb283 f951`::do_traverse_symtree(st=<unavailable>,
st_func=0x0000000000000000, sym_func=(f951`::find_arglists(gfc_symbol *) at
resolve.c:546:3))(gfc_symtree *), void (*)(gfc_symbol *)) at symbol.c:4170:18
    frame #3: 0x00000001000c9098 f951`::resolve_types(gfc_namespace *)
[inlined] resolve_formal_arglists(ns=<unavailable>) at resolve.c:563:19
    frame #4: 0x00000001000c9089 f951`::resolve_types(gfc_namespace *)
[inlined] resolve_contained_functions(ns=0x0000000143839200)
    frame #5: 0x00000001000c9089 f951`::resolve_types(ns=0x0000000143839200)
    frame #6: 0x00000001000bb9a3 f951`gfc_resolve(ns=0x0000000143839200) at
resolve.c:17326:17
    frame #7: 0x00000001000ae701 f951`gfc_parse_file() at parse.c:6448:15
    frame #8: 0x00000001001032dc f951`::gfc_be_parse_file() at
f95-lang.c:212:18
    frame #9: 0x0000000100e8fddb f951`::compile_file() at toplev.c:458:25
    frame #10: 0x00000001015dcc7b f951`toplev::main(int, char**) at
toplev.c:2307:24
    frame #11: 0x00000001015dc8e0 f951`toplev::main(this=0x00007ffeefbff26e,
argc=<unavailable>, argv=<unavailable>)
    frame #12: 0x00000001015dfb61 f951`main(argc=2, argv=0x00007ffeefbff2a8) at
main.c:39:22
    frame #13: 0x00007fff6bb23cc9 libdyld.dylib`start + 1
    frame #14: 0x00007fff6bb23cc9 libdyld.dylib`start + 1

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

* [Bug fortran/96041] [11 regression] ICE in gfortran.dg/pr93423.f90 after r11-1792
  2020-07-02 22:45 [Bug fortran/96041] New: [11 regression] ICE in gfortran.dg/pr93423.f90 after r11-1792 seurer at linux dot vnet.ibm.com
                   ` (7 preceding siblings ...)
  2020-07-07 12:03 ` dominiq at lps dot ens.fr
@ 2020-07-07 19:31 ` anlauf at gcc dot gnu.org
  2020-09-14 22:52 ` burnus at gcc dot gnu.org
                   ` (5 subsequent siblings)
  14 siblings, 0 replies; 16+ messages in thread
From: anlauf at gcc dot gnu.org @ 2020-07-07 19:31 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #8 from anlauf at gcc dot gnu.org ---
(In reply to Dominique d'Humieres from comment #7)
> f951`gfc_resolve_formal_arglist(proc=0x000000014301fbb0) at resolve.c:313:18
>     frame #2: 0x00000001000eb283

Setting a breakpoint here and inspecting the arguments of

313           if (strcmp (proc->name, sym->name) == 0)

one can see that sym->name can be junk after the error message was emitted.

The place where sym is determined is a couple of lines above:

290       for (f = proc->formal; f; f = f->next)
291         {
292           gfc_array_spec *as;
293
294           sym = f->sym;

Either proc got corrupted or has not been set up properly.

On my x86_64 system I have:

(gdb) p *proc->formal->sym->name
$23 = 0 '\000'

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

* [Bug fortran/96041] [11 regression] ICE in gfortran.dg/pr93423.f90 after r11-1792
  2020-07-02 22:45 [Bug fortran/96041] New: [11 regression] ICE in gfortran.dg/pr93423.f90 after r11-1792 seurer at linux dot vnet.ibm.com
                   ` (8 preceding siblings ...)
  2020-07-07 19:31 ` anlauf at gcc dot gnu.org
@ 2020-09-14 22:52 ` burnus at gcc dot gnu.org
  2020-09-17 12:01 ` cvs-commit at gcc dot gnu.org
                   ` (4 subsequent siblings)
  14 siblings, 0 replies; 16+ messages in thread
From: burnus at gcc dot gnu.org @ 2020-09-14 22:52 UTC (permalink / raw)
  To: gcc-bugs

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

Tobias Burnus <burnus at gcc dot gnu.org> changed:

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

--- Comment #9 from Tobias Burnus <burnus at gcc dot gnu.org> ---
Patch: https://gcc.gnu.org/pipermail/gcc-patches/2020-September/553799.html

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

* [Bug fortran/96041] [11 regression] ICE in gfortran.dg/pr93423.f90 after r11-1792
  2020-07-02 22:45 [Bug fortran/96041] New: [11 regression] ICE in gfortran.dg/pr93423.f90 after r11-1792 seurer at linux dot vnet.ibm.com
                   ` (9 preceding siblings ...)
  2020-09-14 22:52 ` burnus at gcc dot gnu.org
@ 2020-09-17 12:01 ` cvs-commit at gcc dot gnu.org
  2020-09-17 12:07 ` burnus at gcc dot gnu.org
                   ` (3 subsequent siblings)
  14 siblings, 0 replies; 16+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2020-09-17 12:01 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #10 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Tobias Burnus <burnus@gcc.gnu.org>:

https://gcc.gnu.org/g:c12facd22881517127ebbe213d7ecc7fc1fcea4e

commit r11-3259-gc12facd22881517127ebbe213d7ecc7fc1fcea4e
Author: Tobias Burnus <tobias@codesourcery.com>
Date:   Thu Sep 17 14:01:09 2020 +0200

    Fortran: Avoid double-free with parse error (PR96041, PR93423)

    gcc/fortran/

            PR fortran/96041
            PR fortran/93423
            * decl.c (gfc_match_submod_proc): Avoid later double-free
            in the error case.

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

* [Bug fortran/96041] [11 regression] ICE in gfortran.dg/pr93423.f90 after r11-1792
  2020-07-02 22:45 [Bug fortran/96041] New: [11 regression] ICE in gfortran.dg/pr93423.f90 after r11-1792 seurer at linux dot vnet.ibm.com
                   ` (10 preceding siblings ...)
  2020-09-17 12:01 ` cvs-commit at gcc dot gnu.org
@ 2020-09-17 12:07 ` burnus at gcc dot gnu.org
  2020-09-18 20:19 ` cvs-commit at gcc dot gnu.org
                   ` (2 subsequent siblings)
  14 siblings, 0 replies; 16+ messages in thread
From: burnus at gcc dot gnu.org @ 2020-09-17 12:07 UTC (permalink / raw)
  To: gcc-bugs

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

Tobias Burnus <burnus at gcc dot gnu.org> changed:

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

--- Comment #11 from Tobias Burnus <burnus at gcc dot gnu.org> ---
FIXED on trunk (GCC 11), which is the only one affected.

Note: The patch causing this issue is for PR93423. The latter was a 8/9/10/11
regression of type ICE-on-invalid. If the PR93423 patch gets cherry-picked for
a branch, you may likely also see cherry-picks commits in PR.

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

* [Bug fortran/96041] [11 regression] ICE in gfortran.dg/pr93423.f90 after r11-1792
  2020-07-02 22:45 [Bug fortran/96041] New: [11 regression] ICE in gfortran.dg/pr93423.f90 after r11-1792 seurer at linux dot vnet.ibm.com
                   ` (11 preceding siblings ...)
  2020-09-17 12:07 ` burnus at gcc dot gnu.org
@ 2020-09-18 20:19 ` cvs-commit at gcc dot gnu.org
  2020-09-19 18:32 ` cvs-commit at gcc dot gnu.org
  2020-09-19 18:42 ` cvs-commit at gcc dot gnu.org
  14 siblings, 0 replies; 16+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2020-09-18 20:19 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #12 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The releases/gcc-10 branch has been updated by Harald Anlauf
<anlauf@gcc.gnu.org>:

https://gcc.gnu.org/g:13421890f81844acb134a460eda7132db3e504ed

commit r10-8775-g13421890f81844acb134a460eda7132db3e504ed
Author: Tobias Burnus <tobias@codesourcery.com>
Date:   Thu Sep 17 14:01:09 2020 +0200

    Fortran: Avoid double-free with parse error (PR96041, PR93423)

    gcc/fortran/

            PR fortran/96041
            PR fortran/93423
            * decl.c (gfc_match_submod_proc): Avoid later double-free
            in the error case.

    (cherry picked from commit c12facd22881517127ebbe213d7ecc7fc1fcea4e)

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

* [Bug fortran/96041] [11 regression] ICE in gfortran.dg/pr93423.f90 after r11-1792
  2020-07-02 22:45 [Bug fortran/96041] New: [11 regression] ICE in gfortran.dg/pr93423.f90 after r11-1792 seurer at linux dot vnet.ibm.com
                   ` (12 preceding siblings ...)
  2020-09-18 20:19 ` cvs-commit at gcc dot gnu.org
@ 2020-09-19 18:32 ` cvs-commit at gcc dot gnu.org
  2020-09-19 18:42 ` cvs-commit at gcc dot gnu.org
  14 siblings, 0 replies; 16+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2020-09-19 18:32 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #13 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The releases/gcc-9 branch has been updated by Harald Anlauf
<anlauf@gcc.gnu.org>:

https://gcc.gnu.org/g:0e442063a0adf01e6348e9fc55cc3e9869974769

commit r9-8921-g0e442063a0adf01e6348e9fc55cc3e9869974769
Author: Tobias Burnus <tobias@codesourcery.com>
Date:   Thu Sep 17 14:01:09 2020 +0200

    Fortran: Avoid double-free with parse error (PR96041, PR93423)

    gcc/fortran/

            PR fortran/96041
            PR fortran/93423
            * decl.c (gfc_match_submod_proc): Avoid later double-free
            in the error case.

    (cherry picked from commit c12facd22881517127ebbe213d7ecc7fc1fcea4e)

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

* [Bug fortran/96041] [11 regression] ICE in gfortran.dg/pr93423.f90 after r11-1792
  2020-07-02 22:45 [Bug fortran/96041] New: [11 regression] ICE in gfortran.dg/pr93423.f90 after r11-1792 seurer at linux dot vnet.ibm.com
                   ` (13 preceding siblings ...)
  2020-09-19 18:32 ` cvs-commit at gcc dot gnu.org
@ 2020-09-19 18:42 ` cvs-commit at gcc dot gnu.org
  14 siblings, 0 replies; 16+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2020-09-19 18:42 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #14 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The releases/gcc-8 branch has been updated by Harald Anlauf
<anlauf@gcc.gnu.org>:

https://gcc.gnu.org/g:e0c7ff6237c78d99b40869afbdcdbe27fe98b698

commit r8-10521-ge0c7ff6237c78d99b40869afbdcdbe27fe98b698
Author: Tobias Burnus <tobias@codesourcery.com>
Date:   Thu Sep 17 14:01:09 2020 +0200

    Fortran: Avoid double-free with parse error (PR96041, PR93423)

    gcc/fortran/

            PR fortran/96041
            PR fortran/93423
            * decl.c (gfc_match_submod_proc): Avoid later double-free
            in the error case.

    (cherry picked from commit c12facd22881517127ebbe213d7ecc7fc1fcea4e)

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

end of thread, other threads:[~2020-09-19 18:42 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-07-02 22:45 [Bug fortran/96041] New: [11 regression] ICE in gfortran.dg/pr93423.f90 after r11-1792 seurer at linux dot vnet.ibm.com
2020-07-03  6:59 ` [Bug fortran/96041] " rguenth at gcc dot gnu.org
2020-07-03 18:27 ` anlauf at gcc dot gnu.org
2020-07-04  5:59 ` dominiq at lps dot ens.fr
2020-07-04 14:29 ` dominiq at lps dot ens.fr
2020-07-04 17:17 ` anlauf at gcc dot gnu.org
2020-07-06 14:35 ` seurer at linux dot vnet.ibm.com
2020-07-06 18:26 ` anlauf at gcc dot gnu.org
2020-07-07 12:03 ` dominiq at lps dot ens.fr
2020-07-07 19:31 ` anlauf at gcc dot gnu.org
2020-09-14 22:52 ` burnus at gcc dot gnu.org
2020-09-17 12:01 ` cvs-commit at gcc dot gnu.org
2020-09-17 12:07 ` burnus at gcc dot gnu.org
2020-09-18 20:19 ` cvs-commit at gcc dot gnu.org
2020-09-19 18:32 ` cvs-commit at gcc dot gnu.org
2020-09-19 18:42 ` cvs-commit 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).