delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2000/02/17/17:53:18

Mailing-List: contact cygwin-help AT sourceware DOT cygnus DOT com; run by ezmlm
List-Subscribe: <mailto:cygwin-subscribe AT sourceware DOT cygnus DOT com>
List-Archive: <http://sourceware.cygnus.com/ml/cygwin/>
List-Post: <mailto:cygwin AT sourceware DOT cygnus DOT com>
List-Help: <mailto:cygwin-help AT sourceware DOT cygnus DOT com>, <http://sourceware.cygnus.com/ml/#faqs>
Sender: cygwin-owner AT sourceware DOT cygnus DOT com
Delivered-To: mailing list cygwin AT sourceware DOT cygnus DOT com
From: Eric Youngblut <yngblut AT cs DOT washington DOT edu>
MIME-Version: 1.0
Message-ID: <14508.32095.512846.629105@grover.student.washington.edu>
Date: Thu, 17 Feb 2000 14:59:43 -0800 (PST)
To: Mumit Khan <khan AT xraylith DOT wisc DOT EDU>
Cc: Paul Henshaw <paul DOT henshaw AT jrc DOT it>, cygwin AT sourceware DOT cygnus DOT com
Subject: Re: catching Exceptions thrown from within a DLL (egcs,NT,C++,b20.1)
X-Mailer: VM 6.75 under Emacs 20.5.1

I was able to hack up a solution that allowed me to catch a C++
exception thrown from inside a DLL.  I put my technique up on the web:
http://www.cs.washington.edu/homes/yngblut/ehtest/

I hope other people find this useful.

Eric Youngblut
yngblut AT cs DOT washington DOT edu

PS  Thanks to all of the Cygwin and Mingw32 developers!  I appreciate
    your work tremendously.



Mumit Khan <khan AT xraylith DOT wisc DOT EDU> wrote:
>
>Paul Henshaw <paul DOT henshaw AT jrc DOT it> writes:
>> Dear All,
>> 
>> 	having managed now to build and link against a DLL, I have
>> 	encountered a problem with exception handling.
>> 
>> 	I have a test program which deliberately provokes an exception,
>> 	expecting to catch it, and throw it to it's caller.
>> 
>> 	When I run the DLLed version of this program, the exception
>> 	is constructed and displayed correctly, but the caller does
>> 	not catch the exception, and my SIGABORT handler is called.
>
>This is a problem that's been there since the beginning, and will be
>there for a while to come, sorry. Nobody is actively working on this
>part, at least publicly.
>
>The long term solution is rewrite the C++ exception mechanism for
>windows32 ports using SEH.
>
>> 	So is there is some magic incantation to chant over DLLs
>> 	to make exceptions work, or am I just being stupid (again)?
>
>I'll be grateful if someone does find a workaround for this issue.
>
>btw, the problem shows up on other platforms as well -- such as HPUX
>-- where exceptions thrown by shared libraries can't be caught. Not
>always an easy problem to solve, especially on window32, which GCC
>hackers just don't have much of an incentive to work on.
>
>Regards,
>Mumit

--
Want to unsubscribe from this list?
Send a message to cygwin-unsubscribe AT sourceware DOT cygnus DOT com

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019