From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 18210 invoked by alias); 16 Apr 2009 08:58:48 -0000 Received: (qmail 18128 invoked by uid 48); 16 Apr 2009 08:58:25 -0000 Date: Thu, 16 Apr 2009 08:58:00 -0000 Message-ID: <20090416085825.18127.qmail@sourceware.org> X-Bugzilla-Reason: CC References: Subject: [Bug middle-end/39625] [4.5 regression] Revision 145338 breaks ability to build Ada In-Reply-To: Reply-To: gcc-bugzilla@gcc.gnu.org To: gcc-bugs@gcc.gnu.org From: "rguenth at gcc dot gnu dot org" Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org X-SW-Source: 2009-04/txt/msg01313.txt.bz2 ------- Comment #33 from rguenth at gcc dot gnu dot org 2009-04-16 08:58 ------- Ok, so we _do_ run lower_eh_constructs, but formal = p__proc_next (formal); returns false for stmt_could_throw_p (stmt). Why? (Not that I can follow the Ada testcase ... but I suppose the above function call returns abnormally) Hm, I guess because flag_exceptions is false. Is this Ada playing games behind the middle-end and implementing exceptions on its own pretending that there are none? In which case the LHS of the above stmt should be marked volatile at least - after all non-EH SJLJ stuff would need to follow C / POSIX requirements, no? I'm of course sort of confused here. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39625