From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 5259 invoked by alias); 14 Oct 2002 22:37:42 -0000 Mailing-List: contact gcc-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-owner@gcc.gnu.org Received: (qmail 5252 invoked from network); 14 Oct 2002 22:37:42 -0000 Received: from unknown (HELO postoffice.sanjose.telcontar.com) (64.105.38.146) by sources.redhat.com with SMTP; 14 Oct 2002 22:37:42 -0000 Received: from CharlesKim ([10.0.1.114]) by postoffice.sanjose.telcontar.com with Microsoft SMTPSVC(5.0.2195.5329); Mon, 14 Oct 2002 15:37:41 -0700 Reply-To: From: "Charles Y. Kim" To: Subject: Throw/Catch not working in SO? Date: Mon, 14 Oct 2002 17:36:00 -0000 Message-ID: <000e01c273d2$4e4ef900$7201000a@sanjose.telcontar.com> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 (Normal) X-MSMail-Priority: Normal X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Importance: Normal X-OriginalArrivalTime: 14 Oct 2002 22:37:41.0608 (UTC) FILETIME=[4E6FEE80:01C273D2] X-SW-Source: 2002-10/txt/msg00761.txt.bz2 Hi all, I'm using some exception handling in a shared object, and while the throw()/catch() works in both Windows and FreeBSD (using GCC 2.96), in Linux (GCC 3.02 --enable-shared --enable-threads=posix) the throw is executed, and the catch never happens. For example... let's say I have the following code in the shared object... void error() { throw(1); } void error2() { error(); } void function() { try { if (blah) error2(); } catch(...) { printf("exception caught"); } } I know that error2() is being called and the exception is being thrown... but it's not being caught at all. Does anyone have ANY ideas? Thanks. - Charles