[Bug libfortran/81938] New: valgrind error message and heap-buffer-overflow on address sanitized libgfortran.so
zeccav at gmail dot com
gcc-bugzilla@gcc.gnu.org
Wed Aug 23 08:56:00 GMT 2017
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81938
Bug ID: 81938
Summary: valgrind error message and heap-buffer-overflow on
address sanitized libgfortran.so
Product: gcc
Version: 8.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: libfortran
Assignee: unassigned at gcc dot gnu.org
Reporter: zeccav at gmail dot com
Target Milestone: ---
Host: x86_64-pc-linux-gnu
Build: trunk 251201
! test case fmt_cache_1.f
! compiled with -g
! valgrind error message and heap-buffer-overflow on address sanitized
libgfortran.so
program astap
implicit none
character(34) :: teststring
real(4) :: arlxca = 0.0
open(10)
write(10,40) arlxca
write(10,40) arlxca
40 format(t4,"arlxca = ",1pg13.6,t27,"arlxcc = ",g13.6,t53,
. "atmpca = ",g13.6,t79,"atmpcc = ",g13.6,t105,
. "backup = ",g13.6,/,
. t4,"csgfac = ",g13.6,t27,"csgmax = ",g13.6,t53,
. "csgmin = ",g13.6,t79,"drlxca = ",g13.6,t105,
. "drlxcc = ",g13.6,/,
. t4,"dtimeh = ",g13.6,t27,"dtimei = ",g13.6,t53,
. "dtimel = ",g13.6,t79,"dtimeu = ",g13.6,t105,
. "dtmpca = ",g13.6,/,
. t4,"dtmpcc = ",g13.6,t27,"ebalna = ",g13.6,t53,
. "ebalnc = ",g13.6,t79,"ebalsa = ",g13.6,t105,
. "ebalsc = ",g13.6)
rewind 10
teststring = ""
read(10,'(a)') teststring
if (teststring.ne." arlxca = 0.00000 arlxcc =")call abort
teststring = ""
read(10,'(a)') teststring
if (teststring.ne." arlxca = 0.00000 arlxcc =")call abort
close(10, status='delete')
end program astap
!==5357== Memcheck, a memory error detector
!==5357== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al.
!==5357== Using Valgrind-3.13.0 and LibVEX; rerun with -h for copyright info
!==5357== Command: ./a.out
!==5357==
!==5357== Invalid read of size 4
!==5357== at 0x5020044: _gfortrani_free_format_data (format.c:269)
!==5357== by 0x50200D5: _gfortrani_free_format_hash_table (format.c:68)
!==5357== by 0x5031789: close_unit_1 (unit.c:787)
!==5357== by 0x400CBD: MAIN__ (p.f:31)
!==5357== by 0x400CF4: main (p.f:32)
!==5357== Address 0x5dbdf30 is 0 bytes after a block of size 4,176 alloc'd
!==5357== at 0x4C2EB6B: malloc (vg_replace_malloc.c:299)
!==5357== by 0x4E55404: _gfortrani_xmalloc (memory.c:42)
!==5357== by 0x50203D2: _gfortrani_parse_format (format.c:1318)
!==5357== by 0x502F727: data_transfer_init (transfer.c:2791)
!==5357== by 0x400A0B: MAIN__ (p.f:10)
!==5357== by 0x400CF4: main (p.f:32)
!==5357==
!==5357==
!==5357== HEAP SUMMARY:
!==5357== in use at exit: 0 bytes in 0 blocks
!==5357== total heap usage: 31 allocs, 31 frees, 34,795 bytes allocated
!==5357==
!==5357== All heap blocks were freed -- no leaks are possible
!==5357==
!==5357== For counts of detected and suppressed errors, rerun with: -v
!==5357== ERROR SUMMARY: 1 errors from 1 contexts (suppressed: 0 from 0)
More information about the Gcc-bugs
mailing list