From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 27297 invoked by alias); 27 Nov 2003 20:28:57 -0000 Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Received: (qmail 27290 invoked from network); 27 Nov 2003 20:28:56 -0000 Received: from unknown (HELO uniton.integrable-solutions.net) (62.212.99.186) by sources.redhat.com with SMTP; 27 Nov 2003 20:28:56 -0000 Received: from uniton.integrable-solutions.net (localhost [127.0.0.1]) by uniton.integrable-solutions.net (8.12.3/8.12.3/SuSE Linux 0.6) with ESMTP id hARKQ29b010500; Thu, 27 Nov 2003 21:26:02 +0100 Received: (from gdr@localhost) by uniton.integrable-solutions.net (8.12.3/8.12.3/Submit) id hARKQ1Dw010499; Thu, 27 Nov 2003 21:26:01 +0100 X-Authentication-Warning: uniton.integrable-solutions.net: gdr set sender to gdr@integrable-solutions.net using -f To: Chris Lattner Cc: Zack Weinberg , Andrew Haley , , Jim Wilson , Subject: Re: avoid unnecessary register saves for setjmp References: From: Gabriel Dos Reis In-Reply-To: Organization: Integrable Solutions Date: Thu, 27 Nov 2003 20:51:00 -0000 Message-ID: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-SW-Source: 2003-11/txt/msg02190.txt.bz2 Chris Lattner writes: | LIFO order. I guess that people are used to not having longjmp work | "correctly"? :) Yup. In effect, the C++ standard says nothing about mixing setjmp/longjmp with notions like construction and destruction -- meaning it is undefined. C++ tries to provide those non local gotos in structrured manner through exception handling -- which gives better guarantees. -- Gaby