[patch, libgfortran] [7/8 Regression] Crash of runtime gfortran library during integer transformation

Steve Kargl sgk@troutmask.apl.washington.edu
Mon May 15 21:26:00 GMT 2017


On Mon, May 15, 2017 at 01:33:55PM -0700, Steve Kargl wrote:
> On Mon, May 15, 2017 at 01:10:43PM -0700, Jerry DeLisle wrote:
> > Hi all,
> > 
> > Crash is a misnomer on this PR [aside: People see the backtrace and assume]
> > 
> > This patch fixes the problem by correctly detecting the EOR condition for 
> > internal units. The previous check in read_sf_internal was wrong, relying 
> > probably on uninitialized memory as can be seen by the still open PR78881. 
> > Removing the bad hunk fixes the regression here and the new code lets 
> > dtio_26.f90 pass as expected.
> > 
> > Regression tested on x86_64. New test case will be added.
> > 
> > OK for trunk? Will back port in a few days to 7.
> > 
> 
> No.  There are a number of other failures with your patch applied.
> 
> Running /home/sgk/gcc/gccx/gcc/testsuite/gfortran.dg/dg.exp ...
> FAIL: gfortran.dg/read_3.f90   -O0  (test for excess errors)
> FAIL: gfortran.dg/read_3.f90   -O1  (test for excess errors)
> FAIL: gfortran.dg/read_3.f90   -O2  (test for excess errors)
> FAIL: gfortran.dg/read_3.f90   -O3 -fomit-frame-pointer -funroll-loops -fpeel-loops -ftracer -finline-functions  (test for excess errors)
> FAIL: gfortran.dg/read_3.f90   -O3 -g  (test for excess errors)
> FAIL: gfortran.dg/read_3.f90   -Os  (test for excess errors)
> 

The failures are from an unexpected warning.

Executing on host: /mnt/sgk/objx/gcc/testsuite/gfortran2/../../gfortran -B/mnt/sgk/objx/gcc/testsuite/gfortran2/../../ -B/mnt/sgk/objx/x86_64-unknown-freebsd12.0/./libgfortran/ /home/sgk/gcc/gccx/gcc/testsuite/gfortran.dg/read_3.f90    -fno-diagnostics-show-caret -fdiagnostics-color=never    -O0   -pedantic-errors  -B/mnt/sgk/objx/x86_64-unknown-freebsd12.0/./libgfortran/.libs -L/mnt/sgk/objx/x86_64-unknown-freebsd12.0/./libgfortran/.libs -L/mnt/sgk/objx/x86_64-unknown-freebsd12.0/./libgfortran/.libs -L/mnt/sgk/objx/x86_64-unknown-freebsd12.0/./libatomic/.libs -B/mnt/sgk/objx/x86_64-unknown-freebsd12.0/./libquadmath/.libs -L/mnt/sgk/objx/x86_64-unknown-freebsd12.0/./libquadmath/.libs -L/mnt/sgk/objx/x86_64-unknown-freebsd12.0/./libquadmath/.libs  -lm  -o ./read_3.exe    (timeout = 300)
spawn -ignore SIGHUP /mnt/sgk/objx/gcc/testsuite/gfortran2/../../gfortran -B/mnt/sgk/objx/gcc/testsuite/gfortran2/../../ -B/mnt/sgk/objx/x86_64-unknown-freebsd12.0/./libgfortran/ /home/sgk/gcc/gccx/gcc/testsuite/gfortran.dg/read_3.f90 -fno-diagnostics-show-caret -fdiagnostics-color=never -O0 -pedantic-errors -B/mnt/sgk/objx/x86_64-unknown-freebsd12.0/./libgfortran/.libs -L/mnt/sgk/objx/x86_64-unknown-freebsd12.0/./libgfortran/.libs -L/mnt/sgk/objx/x86_64-unknown-freebsd12.0/./libgfortran/.libs -L/mnt/sgk/objx/x86_64-unknown-freebsd12.0/./libatomic/.libs -B/mnt/sgk/objx/x86_64-unknown-freebsd12.0/./libquadmath/.libs -L/mnt/sgk/objx/x86_64-unknown-freebsd12.0/./libquadmath/.libs -L/mnt/sgk/objx/x86_64-unknown-freebsd12.0/./libquadmath/.libs -lm -o ./read_3.exe

/home/sgk/gcc/gccx/gcc/testsuite/gfortran.dg/read_3.f90:6:11: Warning: GNU Extension: Nonstandard type declaration INTEGER*4 at (1)

FAIL: gfortran.dg/read_3.f90   -O0  (test for excess errors)
Excess errors:
/home/sgk/gcc/gccx/gcc/testsuite/gfortran.dg/read_3.f90:6:11: Warning: GNU Extension: Nonstandard type declaration INTEGER*4 at (1)

-- 
Steve
20170425 https://www.youtube.com/watch?v=VWUpyCsUKR4
20161221 https://www.youtube.com/watch?v=IbCHE-hONow



More information about the Gcc-patches mailing list