This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug fortran/51520] New: ICE in gfortran 4.6.2, x86_64
- From: "adrian at llnl dot gov" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Mon, 12 Dec 2011 22:35:05 +0000
- Subject: [Bug fortran/51520] New: ICE in gfortran 4.6.2, x86_64
- Auto-submitted: auto-generated
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51520
Bug #: 51520
Summary: ICE in gfortran 4.6.2, x86_64
Classification: Unclassified
Product: gcc
Version: 4.6.2
Status: UNCONFIRMED
Severity: major
Priority: P3
Component: fortran
AssignedTo: unassigned@gcc.gnu.org
ReportedBy: adrian@llnl.gov
I'm getting an ICE in gfortran 4.6.2 .
The machine is running Ubuntu 10.04, 64 bit on an Intel Xeon.
$ gfortran -I. -O0 -c -o test.o test.f03
test.f03: In function âevalresaâ:
test.f03:40:0: internal compiler error: Segmentation fault
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://gcc.gnu.org/bugs.html> for instructions.
below is the nonsensical delta-reduced test program:
test.f03
=======================================================
module sidl
use, intrinsic :: iso_c_binding
enum, bind(c)
enumerator :: sidl_row_major_order = 2
end enum
interface
end interface
contains
logical function sidl_opaque_is_null_p (opaq)
end function sidl_opaque_is_null_p
end module sidl
module sidl_array_type
use sidl
type sidl__array
type(c_ptr) :: d_array = c_null_ptr
end type sidl__array
end module sidl_array_type
module sidl_array_array_F03
use sidl_array_type
interface is_null
module procedure is_null_p
end interface
contains
logical function is_null_p(array)
type(sidl__array), intent(in) :: array
end function is_null_p
end module sidl_array_array_F03
module vect_Utils_F03
use sidl_array_array_F03
type vect_Utils_t
end type vect_Utils_t
interface is_null
module procedure is_null_s
end interface
contains
logical function is_null_s(ext)
class(vect_Utils_t), intent(in) :: ext
end function is_null_s
end module vect_Utils_F03
subroutine evalResA(tracker, partNum, res, expected, tol, okay)
use vect_Utils_F03
type (sidl__array) :: res, expected
if (.not. is_null(res)) then
endif
end subroutine evalResA
subroutine runProduct(tracker, partNum, a, u, tol, badLvl, res, okay,
expectExc, desc)
if (expectExc .eq. NoneExp) then
call evalResA(tracker, partNum, x, res, tol, okay)
endif
end subroutine runProduct
program vectortest
call runProduct(tracker, partNum, ZERO, n, TOL, NoVio, n, .true., NoneExp,&
'passing vuProduct() a null array - no precondition vio ')
end program vectortest
=========================================================
valgrind output:
==18442== Invalid read of size 1
==18442== at 0x5F49EE: mpz_get_double_int (double-int.c:1145)
==18442== by 0x550521: gfc_conv_mpz_to_tree (trans-const.c:204)
==18442== by 0x550D2F: gfc_conv_constant (trans-const.c:396)
==18442== by 0x5650FB: gfc_conv_initializer (trans-expr.c:4155)
==18442== by 0x55D80B: gfc_conv_structure (trans-expr.c:4666)
==18442== by 0x5651EB: gfc_conv_initializer (trans-expr.c:4197)
==18442== by 0x554620: gfc_get_symbol_decl (trans-decl.c:1379)
==18442== by 0x554C2F: generate_local_decl (trans-decl.c:4161)
==18442== by 0x52BD26: traverse_ns (symbol.c:3333)
==18442== by 0x52BD15: traverse_ns (symbol.c:3330)
==18442== by 0x52BD15: traverse_ns (symbol.c:3330)
==18442== by 0x52BD15: traverse_ns (symbol.c:3330)
==18442== Address 0x2 is not stack'd, malloc'd or (recently) free'd
==18442==
test.f03: In function âevalresaâ:
test.f03:40:0: internal compiler error: Segmentation fault
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://gcc.gnu.org/bugs.html> for instructions.
==18442==
==18442== HEAP SUMMARY:
==18442== in use at exit: 868,466 bytes in 3,301 blocks
==18442== total heap usage: 8,088 allocs, 4,787 frees, 1,634,007 bytes
allocated
==18442==
==18442== LEAK SUMMARY:
==18442== definitely lost: 12,428 bytes in 74 blocks
==18442== indirectly lost: 3,496 bytes in 5 blocks
==18442== possibly lost: 352 bytes in 18 blocks
==18442== still reachable: 852,190 bytes in 3,204 blocks
==18442== suppressed: 0 bytes in 0 blocks
==18442== Rerun with --leak-check=full to see details of leaked memory
==18442==
==18442== For counts of detected and suppressed errors, rerun with: -v
==18442== ERROR SUMMARY: 1 errors from 1 contexts (suppressed: 4 from 4)
==18439==
==18439== HEAP SUMMARY:
==18439== in use at exit: 32,293 bytes in 86 blocks
==18439== total heap usage: 502 allocs, 416 frees, 61,072 bytes allocated
==18439==
==18439== LEAK SUMMARY:
==18439== definitely lost: 5,444 bytes in 29 blocks
==18439== indirectly lost: 45 bytes in 3 blocks
==18439== possibly lost: 29 bytes in 2 blocks
==18439== still reachable: 26,775 bytes in 52 blocks
==18439== suppressed: 0 bytes in 0 blocks
==18439== Rerun with --leak-check=full to see details of leaked memory
==18439==
==18439== For counts of detected and suppressed errors, rerun with: -v
==18439== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 4 from 4)