1 msgWide Streams
4 msgMINGW I/O support for file sizes > 2GB (LFS ...
2 msg#define WINVER 0x0400
11 msgWhy does g++ not link with libstdc++?
3 msghow to compile and link a library
1 msgHey Guys
5 msgCompile error using mingw
2 msg'include/c++/ext' missing fromgcc-part-c++-4.3....
1 msgFMTID_SummaryInformation andFMTID_UserDefinedPr...
2 msghow to realize mouse programming
3 msglooking for tiny light cross platform filesyste...
2 msgMinGW GCC Development Plan
3 msghow to use the read/write

GCC 4.3.0 20080502 (alpha) Released - Please he...
\ Aaron W. LaFramboise (5 May 2008)
. \ Chris Sutcliffe (5 May 2008)
. . \ Aaron W. LaFramboise (5 May 2008)
. . \ Earnie Boyd (5 May 2008)
. \ Doug Schaefer (5 May 2008)
. . \ Aaron W. LaFramboise (5 May 2008)
. . \ John Marriott (11 May 2008)
. . . \ Earnie Boyd (11 May 2008)
. . . . \ John Marriott (11 May 2008)
. . . . . \ Earnie Boyd (11 May 2008)
. . . . . . \ NightStrike (11 May 2008)
. \ John Brown (5 May 2008)
. . \ Aaron W. LaFramboise (5 May 2008)
. \ JonY (6 May 2008)
. . \ Bob Rossi (6 May 2008)
. . . \ Greg Chicares (6 May 2008)
. . . \ Aaron W. LaFramboise (6 May 2008)
. . . . \ Bob Rossi (6 May 2008)
. . . . . \ Tonal (6 May 2008)
. . . . . . \ Bob Rossi (6 May 2008)
. . . . . . . \ Mathias Fröhlich (6 May 2008)
. . . . . . . . \ Bob Rossi (6 May 2008)
. . . . . . . \ Earnie Boyd (6 May 2008)
. . . . . . . . \ Aaron W. LaFramboise (6 May 2008)
. . . . . . . . . \ Earnie Boyd (6 May 2008)
. . . . . . . . . \ Danny Smith (7 May 2008)
. . . . . . . . . . \ NightStrike (7 May 2008)
. . . . . . . . . . . \ Danny Smith (7 May 2008)
. . . . . . . . . . . . \ NightStrike (7 May 2008)
. . . . . . . . . . . \ Kai Tietz (7 May 2008)
. . . . . . . . . . \ Earnie Boyd (7 May 2008)
. . . . . \ Aaron W. LaFramboise (6 May 2008)
. . . \ Tonal (6 May 2008)
. . . . \ Bob Rossi (6 May 2008)
. . . . \ Aaron W. LaFramboise (6 May 2008)
. . . . . \ Tonal (8 May 2008)
. . . . . . \ Tonal (8 May 2008)
. . . . . . \ Earnie Boyd (8 May 2008)
. . . . . . . \ Tonal (8 May 2008)
. . . . . . . . \ Aaron W. LaFramboise (8 May 2008)
. . . . . . . . \ Earnie Boyd (8 May 2008)
. . . . \ Tonal (6 May 2008)
. \ Brian Dessent (6 May 2008)
. \ Brian Dessent (6 May 2008)
. . \ Aaron W. LaFramboise (6 May 2008)
. . . \ Tonal (6 May 2008)
. . . . \ Aaron W. LaFramboise (6 May 2008)
. \ Brian Dessent (6 May 2008)
. . \ Aaron W. LaFramboise (6 May 2008)
. . \ Greg Chicares (6 May 2008)
. \ StéphaneLarouche (7 May 2008)
. . \ Aaron W. LaFramboise (8 May 2008)
. \ ATS (7 May 2008)
. . \ Aaron W. LaFramboise (8 May 2008)
. . . \ Tonal (8 May 2008)
. \ Ramiro Polla (8 May 2008)
. . \ Aaron W. LaFramboise (8 May 2008)
. \ ATS (8 May 2008)
. . \ Charles Wilson (8 May 2008)
. . . \ Tonal (8 May 2008)
. . . . \ Aaron W. LaFramboise (8 May 2008)
. \ Sisyphus (8 May 2008)
. . \ Aaron W. LaFramboise (8 May 2008)
. \ Danny Smith (8 May 2008)
. . \ Aaron W. LaFramboise (8 May 2008)
. \ StéphaneLarouche (10 May 2008)
. . \ Aaron W. LaFramboise (10 May 2008)
. \ Brian Dessent (10 May 2008)
. \ StéphaneLarouche (10 May 2008)
. \ Tonal (11 May 2008)
. . \ Tonal (11 May 2008)
. . . \ JonY (11 May 2008)
. . . . \ Tonal (11 May 2008)
. . \ Tonal (11 May 2008)

10 msgMinGW gcc 3.x, 4.x and exceptions
4 msgdllwrap 2.17.50 20060824
12 msgstrtod is not C99-compatible
4 msgTest program crashes with g++ 4.2.1-dw2 usingli...
25 msgimlib2
3 msgDisassembly of stack frame
Subject:Re: GCC 4.3.0 20080502 (alpha) Released - Please help us test it!
Group:Mingw-users
From:Aaron W. LaFramboise
Date:8 May 2008


 
ATS wrote:

> One thing that I've found very useful is to translate Unix signals
> into C++ exceptions (from GCC 4.2 this is supported on Linux). One
> gets semantics very close to what MS VC++:
>
> try {
> *(int*)0 = 0;
> } catch ( SignalException* pse ) {
> printf( "Exception condition: %s\n", pse->GetReason() );
> }
>

Thanks for pointing this out. Just off the top of my head, there is
some chance we can make this work with MinGW GCC as well. I'll look
into it.

> This provides a safety net when loading plugins or other running other
> code that one has not built oneself. Without a mechanism like this, the
> app is doomed whenever 3rd party code does a NULL pointer access or
> divide by zero. For me this is a crucial feature.

MinGW can do it presently using the 'manual' SEH interface in <expt.h>,
but it isn't nearly as pretty.


> As I see it the either-or debate (SJLJ/DWARF) is a bit limiting. SJLJ
> is slow because it does a complete CPU state save (FPU, MMX?, SSE?).
> This is needed when saving thread context. However, jumping into a
> catch block, it is way too much.
...
> My vote would be for a light weight state exception mechanism for Windows.
> It is not affected by foreign frames, is quite fast and small. It would
> be per thread. A decent interface / binding with SEH on top of that would
> be a bonus.

I think SEH might be close that 'light weight' mechanism you propose, as
it doesn't save state, and uses a per-thread mechanism.

Unfortunately, MinGW maintainers do not have the resources to write a
new exception model; we don't even have resources to implement SEH, a
frequently-demanded feature.


However, the problem is not that the exception throwing or catching is
slow. The problem is that merely passing through a try {} block or
exception specification such as throw(std::bad_alloc) has a small
penalty, which can be measurable in tight loops. DW2 completely solves
the problem, by having no direct runtime cost at all.


-------------------------------------------------------------------------
This SF.net email is sponsored by the 2008 JavaOne(SM) Conference
Don't miss this year's exciting event. There's still time to save $100.
Use priority code J8TL2D2.
http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone
_______________________________________________
MinGW-users mailing list
MinGW-users

You may change your MinGW Account Options or unsubscribe at:
https://lists.sourceforge.net/lists/listinfo/mingw-users


© 2004-2008 readlist.com