with attached source file gfortran -c -O3 hsl_ma41.f90 gives hsl_ma41.f90: In function ‘prinfo.1459’: hsl_ma41.f90:616:0: error: type mismatch in component reference integer(kind=4)[0:D.1496] * restrict integer(kind=4)[0:D.2718] * # VUSE <.MEM_56> D.2523_12 = CHAIN.85_1(D)->info.0; hsl_ma41.f90:616:0: error: type mismatch in component reference real(kind=8)[0:D.1492] * restrict real(kind=8)[0:D.2722] * # VUSE <.MEM_75> D.2535_28 = CHAIN.85_1(D)->rinfo.0; hsl_ma41.f90:616:0: internal compiler error: verify_stmts failed
Created attachment 18576 [details] source file exposing the bug
Problem also occurs on *-*-freebsd. This may be related to the 2009-08-18 Michael Matz <matz@suse.de> commit.
Created attachment 18589 [details] Reduced testcase This is reduced testcase from the original source.
troutmask:sgk[231] gfc4x -c -O2 -finline-functions reduced.f90 reduced.f90: In function '__hsl_ma41_m_MOD_prininfo': reduced.f90:12:0: error: type mismatch in component reference integer(kind=4)[0:D.1361] * restrict integer(kind=4)[0:D.1449] * # .MEM_25 = VDEF <.MEM_24> FRAME.11.info.0 = D.1406_8; reduced.f90:12:0: internal compiler error: verify_stmts failed
it's the inliner that exposes this. I didn't yet investigate further.
Mine. The inliner remaps types (when they are variably modified) without caring for qualifiers or attributes, resulting in these mismatches. I have a patch.
Subject: Bug 41347 Author: matz Date: Thu Sep 17 11:11:58 2009 New Revision: 151799 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=151799 Log: PR middle-end/41347 * tree.c (build_type_attribute_qual_variant): Export. * tree.h (build_type_attribute_qual_variant): Declare. * tree-inline.c (remap_type_1): Use it to build variants with the original qualifiers and attributes. testsuite/ * gfortran.dg/pr41347.f90: New test. Added: trunk/gcc/testsuite/gfortran.dg/pr41347.f90 Modified: trunk/gcc/ChangeLog trunk/gcc/testsuite/ChangeLog trunk/gcc/tree-inline.c trunk/gcc/tree.c trunk/gcc/tree.h
Fixed.
Subject: Bug 41347 Author: hjl Date: Mon Sep 28 20:38:53 2009 New Revision: 152250 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=152250 Log: 2009-09-28 H.J. Lu <hongjiu.lu@intel.com> Backport from mainline: 2009-09-26 Andreas Schwab <schwab@linux-m68k.org> PR c/41476 * gcc.dg/cond-constqual-1.c: New test. 2009-09-26 Michael Matz <matz@suse.de> PR lto/40758 PR middle-end/41470 * gcc.dg/pr41470.c: New test. 2009-09-23 Alexandre Oliva <aoliva@redhat.com> PR debug/41248 * gcc.dg/pr41248.c: New. 2009-09-22 Alexandre Oliva <aoliva@redhat.com> PR debug/41295 * gcc.dg/pr41295.c: New. 2009-09-20 Andrew Pinski <pinskia@gcc.gnu.org> PR middle-end/40642 * g++.dg/torture/pr40642.C: New testcase. 2009-09-17 Michael Matz <matz@suse.de> PR middle-end/41347 * gfortran.dg/pr41347.f90: New test. 2009-09-16 Michael Matz <matz@suse.de> PR fortran/41212 * gfortran.dg/pr41212.f90: New test. 2009-09-11 Michael Matz <matz@suse.de> PR middle-end/41275 * g++.dg/tree-ssa/pr41275.C: New test. 2009-09-11 Janus Weil <janus@gcc.gnu.org> PR fortran/41242 * gfortran.dg/proc_ptr_comp_21.f90: New. Added: branches/gcc-4_4-branch/gcc/testsuite/g++.dg/torture/pr40642.C - copied unchanged from r152249, trunk/gcc/testsuite/g++.dg/torture/pr40642.C branches/gcc-4_4-branch/gcc/testsuite/g++.dg/tree-ssa/pr41275.C - copied unchanged from r152249, trunk/gcc/testsuite/g++.dg/tree-ssa/pr41275.C branches/gcc-4_4-branch/gcc/testsuite/gcc.dg/cond-constqual-1.c - copied unchanged from r152248, trunk/gcc/testsuite/gcc.dg/cond-constqual-1.c branches/gcc-4_4-branch/gcc/testsuite/gcc.dg/pr41248.c - copied unchanged from r152248, trunk/gcc/testsuite/gcc.dg/pr41248.c branches/gcc-4_4-branch/gcc/testsuite/gcc.dg/pr41295.c - copied unchanged from r152249, trunk/gcc/testsuite/gcc.dg/pr41295.c branches/gcc-4_4-branch/gcc/testsuite/gcc.dg/pr41470.c - copied unchanged from r152248, trunk/gcc/testsuite/gcc.dg/pr41470.c branches/gcc-4_4-branch/gcc/testsuite/gfortran.dg/pr41212.f90 - copied unchanged from r152249, trunk/gcc/testsuite/gfortran.dg/pr41212.f90 branches/gcc-4_4-branch/gcc/testsuite/gfortran.dg/pr41347.f90 - copied unchanged from r152249, trunk/gcc/testsuite/gfortran.dg/pr41347.f90 branches/gcc-4_4-branch/gcc/testsuite/gfortran.dg/proc_ptr_comp_21.f90 - copied unchanged from r152249, trunk/gcc/testsuite/gfortran.dg/proc_ptr_comp_21.f90 Modified: branches/gcc-4_4-branch/gcc/testsuite/ChangeLog