From: <dan...@ya...> - 2002-05-31 00:47:55
|
The w32api and mingw-runtime each conatin a file called excpt.h The one in the w32api just defines __try, __except, __finally as no-ops and lets some code "at least" compile. I would like to get rid of that file, so mingw has only one excpt.h and we don't have the perennial problem of one overwriting the other, depending on order of installation. This patch puts the no-op defines in windef.h, so that they are still available to cygwin users of w32api and to mingw. Alternative option is to put them in the mingw-runtime version of excpt.h and thus remove them from cygwin. I think they should go in the rubbish, but others may like to have code that compiles and links fine and then crashes at runtime. No, I don't mean to stir up a long debate over this, I just want to get rid of the file somehow. 2002-05-31 Danny Smith <dan...@us...> * include/windef.h: Add no-op __try, __except, __finally defines from ... * include/excpt.h: Remove file. * include/windows.h: Don't include excpt.h. Index: include/windef.h =================================================================== RCS file: /cvs/src/src/winsup/w32api/include/windef.h,v retrieving revision 1.10 diff -u -p -r1.10 windef.h --- include/windef.h 6 May 2002 23:37:52 -0000 1.10 +++ include/windef.h 30 May 2002 23:17:50 -0000 @@ -184,6 +184,19 @@ extern "C" { #endif #endif +/* FIXME: This will make some code compile. The programs will most + likely crash when an exception is raised, but at least they will + compile. */ +#if defined ( __GNUC__ ) /* && defined (__SEH_NOOP) */ +#define __try +#define __except(x) if (0) /* don't execute handler */ +#define __finally + +#define _try __try +#define _except __except +#define _finally __finally +#endif + typedef unsigned long DWORD; typedef int WINBOOL,*PWINBOOL,*LPWINBOOL; /* FIXME: Is there a good solution to this? */ Index: include/windows.h =================================================================== RCS file: /cvs/src/src/winsup/w32api/include/windows.h,v retrieving revision 1.10 diff -u -p -r1.10 windows.h --- include/windows.h 6 May 2002 23:37:52 -0000 1.10 +++ include/windows.h 30 May 2002 23:17:50 -0000 @@ -48,7 +48,6 @@ #include <windef.h> #include <wincon.h> #include <basetyps.h> -#include <excpt.h> #include <winbase.h> #ifndef _WINGDI_H #include <wingdi.h> http://www.sold.com.au - The Sold.com.au Big Brand Sale - New PCs, notebooks, digital cameras, phones and more ... Sale ends June 12 |
From: Steven E. <ste...@ya...> - 2002-05-31 01:31:27
|
> The w32api and mingw-runtime each conatin a file > called excpt.h > The one in the w32api just defines __try, __except, > __finally as > no-ops and lets some code "at least" compile Kinda off topic but is there a plan to add real Windows SEH support to Mingw? I know this is asked a lot but I've never really heard a good answer. Untill Mingw has it, ReactOS wont be able to use most Windows drivers. Thanks Steven __________________________________________________ Do You Yahoo!? Yahoo! - Official partner of 2002 FIFA World Cup http://fifaworldcup.yahoo.com |
From: Earnie B. <ear...@ya...> - 2002-05-31 01:54:44
|
--- Steven Edwards <ste...@ya...> wrote: > > The w32api and mingw-runtime each conatin a file > > called excpt.h > > The one in the w32api just defines __try, __except, > > __finally as > > no-ops and lets some code "at least" compile > > Kinda off topic Not at all off topic. > but is there a plan to add real > Windows SEH support to Mingw? I know this is asked a > lot but I've never really heard a good answer. When someone has time to work on it, or someone submits a patch, yes. > Untill > Mingw has it, ReactOS wont be able to use most Windows > drivers. > IIRC, I heard ors that ReactOS was working on modifications for GCC and/or binutils to accomplish that. Earnie. ===== Earnie Boyd mailto:ear...@ya... --- <http://earniesystems.safeshopper.com> --- --- Cygwin: POSIX on Windows <http://gw32.freeyellow.com/> --- --- Minimalist GNU for Windows <http://www.mingw.org/> --- __________________________________________________ Do You Yahoo!? Yahoo! - Official partner of 2002 FIFA World Cup http://fifaworldcup.yahoo.com |
From: Steven E. <ste...@ya...> - 2002-05-31 08:17:39
|
> IIRC, I heard ors that ReactOS was working on > modifications for GCC and/or > binutils to accomplish that. I know Capser is working on the DDK and has done some inital SEH work but how far along he is and if anyone else is working on it, I do not know. Thanks Steven __________________________________________________ Do You Yahoo!? Yahoo! - Official partner of 2002 FIFA World Cup http://fifaworldcup.yahoo.com |
From: Casper H. <ch...@it...> - 2002-05-31 11:57:20
|
fre, 2002-05-31 kl. 10:17 skrev Steven Edwards: > > IIRC, I heard ors that ReactOS was working on > > modifications for GCC and/or > > binutils to accomplish that. > > I know Capser is working on the DDK and has done some > inital SEH work but how far along he is and if anyone > else is working on it, I do not know. > > Thanks > Steven I am still working on SEH support between other projects, but I'm still a gcc newbie so it's going a little slow. I hope to have something usable this year. Another issue is wether you will accept patches that possibly violates patents (which this patch may do). Borland has the patent for the special use of the stack as used to implement SEH (and you cannot get around this and still be compatible). If MinGW will not accept the SEH patch, we will understand, and use our own customized MinGW since we believe the patent is bogus. - Casper |
From: Earnie B. <ear...@ya...> - 2002-05-31 01:50:39
|
--- Danny Smith <dan...@ya...> wrote: > The w32api and mingw-runtime each conatin a file called excpt.h > The one in the w32api just defines __try, __except, __finally as > no-ops and lets some code "at least" compile. I would like to get rid of > that > file, so mingw has only one excpt.h and we don't have the perennial problem > of one overwriting the other, depending on order of installation. > > This patch puts the no-op defines in windef.h, so that they are still > available to cygwin users of w32api and to mingw. Alternative option > is to put them in the mingw-runtime version of excpt.h and thus remove > them from cygwin. > I think this is a good compromise. > I think they should go in the rubbish, but others may like to have code > that compiles and links fine and then crashes at runtime. > Me too, so I think your __SEH_NOOP should be implemented. That way the analyst can decide. > No, I don't mean to stir up a long debate over this, I just want to get rid > of > the file somehow. > I'm glad you have. On a side note, have you looked at the SEH patch that was on the mingw-users list a month or so ago? I put it on my round tuit list but that's a deep stack. Earnie. ===== Earnie Boyd mailto:ear...@ya... --- <http://earniesystems.safeshopper.com> --- --- Cygwin: POSIX on Windows <http://gw32.freeyellow.com/> --- --- Minimalist GNU for Windows <http://www.mingw.org/> --- __________________________________________________ Do You Yahoo!? Yahoo! - Official partner of 2002 FIFA World Cup http://fifaworldcup.yahoo.com |
From: <dan...@ya...> - 2002-05-31 03:01:51
|
--- Earnie Boyd <ear...@ya...> wrote: > --- Danny Smith <dan...@ya...> wrote: > > The w32api and mingw-runtime each conatin a file called excpt.h > > The one in the w32api just defines __try, __except, __finally as > > no-ops and lets some code "at least" compile. I would like to get rid of > > that > > file, so mingw has only one excpt.h and we don't have the perennial problem > > of one overwriting the other, depending on order of installation. > > > > This patch puts the no-op defines in windef.h, so that they are still > > available to cygwin users of w32api and to mingw. Alternative option > > is to put them in the mingw-runtime version of excpt.h and thus remove > > them from cygwin. > > > > I think this is a good compromise. > > > I think they should go in the rubbish, but others may like to have code > > that compiles and links fine and then crashes at runtime. > > > > Me too, so I think your __SEH_NOOP should be implemented. That way the > analyst > can decide. > OK, unless I hear any objections from cygwin camp, I'll go with this. > > No, I don't mean to stir up a long debate over this, I just want to get rid > > of > > the file somehow. > > > > I'm glad you have. On a side note, have you looked at the SEH patch that was > on the mingw-users list a month or so ago? I put it on my round tuit list > but > that's a deep stack. > No. One day. Ideally SEH should go into the compiler itself as __builtin functionality. Its possible, but a lot of work. Danny > Earnie. > > ===== > Earnie Boyd > mailto:ear...@ya... > > --- <http://earniesystems.safeshopper.com> --- > --- Cygwin: POSIX on Windows <http://gw32.freeyellow.com/> --- > --- Minimalist GNU for Windows <http://www.mingw.org/> --- > > __________________________________________________ > Do You Yahoo!? > Yahoo! - Official partner of 2002 FIFA World Cup > http://fifaworldcup.yahoo.com http://www.sold.com.au - The Sold.com.au Big Brand Sale - New PCs, notebooks, digital cameras, phones and more ... Sale ends June 12 |
From: Christopher F. <cg...@re...> - 2002-06-01 03:39:58
|
On Fri, May 31, 2002 at 01:01:51PM +1000, Danny Smith wrote: > --- Earnie Boyd <ear...@ya...> wrote: > --- Danny Smith >>Me too, so I think your __SEH_NOOP should be implemented. That way the >>analyst can decide. >> >OK, unless I hear any objections from cygwin camp, I'll go with this. No objections from me. cgf |