seen on all active versions (test file ends with two newlines): $ cat test.f90 end program & $ /usr/lib/gcc-snapshot/bin/gfortran test.f90 f951: Warning: No location in statement f951: internal compiler error: Segmentation fault 0x7f3381724fbf ??? /build/glibc-hBZSf0/glibc-2.27/signal/../sysdeps/unix/sysv/linux/x86_64/sigaction.c:0 0x7f3381711b16 __libc_start_main ../csu/libc-start.c:310 Please submit a full bug report, with preprocessed source if appropriate. Please include the complete backtrace with any bug report.
Confirmed from 4.8 up to trunk (9.0). An instrumented compiler gives f951: Warning: No location in statement ../../work/gcc/fortran/trans.c:1768:39: runtime error: member access within null pointer of type 'struct gfc_linebuf' f951: internal compiler error: Segmentation fault: 11
(In reply to Dominique d'Humieres from comment #1) > Confirmed from 4.8 up to trunk (9.0). An instrumented compiler gives > > f951: Warning: No location in statement > ../../work/gcc/fortran/trans.c:1768:39: runtime error: member access within > null pointer of type 'struct gfc_linebuf' > f951: internal compiler error: Segmentation fault: 11 The warning in comment#0 would be restored by the patch: Index: gcc/fortran/trans.c =================================================================== --- gcc/fortran/trans.c (revision 267065) +++ gcc/fortran/trans.c (working copy) @@ -1765,8 +1765,11 @@ void gfc_set_backend_locus (locus * loc) { - gfc_current_backend_file = loc->lb->file; - input_location = loc->lb->location; + if (loc->lb) + { + gfc_current_backend_file = loc->lb->file; + input_location = loc->lb->location; + } } However, this papers over the issue that the locus is not properly set.