From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 5402 invoked by alias); 30 Jun 2006 08:54:57 -0000 Received: (qmail 5350 invoked by uid 48); 30 Jun 2006 08:54:47 -0000 Date: Fri, 30 Jun 2006 10:08:00 -0000 Message-ID: <20060630085447.5349.qmail@sourceware.org> X-Bugzilla-Reason: CC References: Subject: [Bug fortran/25392] ICEs with -ff2c In-Reply-To: Reply-To: gcc-bugzilla@gcc.gnu.org To: gcc-bugs@gcc.gnu.org From: "fxcoudert at gcc dot gnu dot org" Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org X-SW-Source: 2006-06/txt/msg02578.txt.bz2 List-Id: ------- Comment #5 from fxcoudert at gcc dot gnu dot org 2006-06-30 08:54 ------- Reduced testcase: real function foo () if (foo .gt. 0) call abort end I'm almost sure it's a type mismatch problem. The above code generates the following tree dump: foo () { real8 __result_foo; if (__result_foo > 0.0) { _gfortran_abort (); } else { (void) 0; } return __result_foo; } but I think foo is not declared a real8 but simply as real4. If I change the Fortran code to explicitly declare foo as "real*8 function foo ()" then the ICE disappears. -- fxcoudert at gcc dot gnu dot org changed: What |Removed |Added ---------------------------------------------------------------------------- Last reconfirmed|2006-05-11 11:36:23 |2006-06-30 08:54:46 date| | http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25392