[Bug fortran/79446] New: Passing internal procedure as argument causes segfault at runtime
townsend at astro dot wisc.edu
gcc-bugzilla@gcc.gnu.org
Thu Feb 9 19:52:00 GMT 2017
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79446
Bug ID: 79446
Summary: Passing internal procedure as argument causes segfault
at runtime
Product: gcc
Version: 5.3.1
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: fortran
Assignee: unassigned at gcc dot gnu.org
Reporter: townsend at astro dot wisc.edu
Target Milestone: ---
Created attachment 40709
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=40709&action=edit
Example program
Attached program demonstrates my problem. Compiling with:
gfortran -std=f2008 -g -o test_mem test_mem.f90
Running on RHEL (2.6.32-642.13.1.el6.x86_64), I get the following segfault:
Program received signal SIGSEGV: Segmentation fault - invalid memory reference.
Backtrace for this error:
#0 0x14E10ED8FBB7
#1 0x14E10ED8EDB0
#2 0x354523269F
#3 0x7FFC67EF9B00
Segmentation fault (core dumped)
In gdb:
(gdb) where
#0 0x00007ffe250e7390 in ?? ()
#1 0x0000000000400865 in test_mem_m::do (a=3, theirproc=0x7ffe250e7390) at
test_mem.f90:17
#2 0x0000000000400928 in test_mem () at test_mem.f90:29
#3 0x000000000040095f in main (argc=1, argv=0x7ffe250e9110) at test_mem.f90:25
#4 0x000000354521ed5d in __libc_start_main () from /lib64/libc.so.6
#5 0x0000000000400709 in _start ()
If I change the internal procedure to a non-internal one, the segfault goes
away. Also, I don't experience the segfault on other Linux distros (e.g.,
Gentoo/3.16.5) or Mac OS.
cheers,
Rich
More information about the Gcc-bugs
mailing list