------- Comment #56 from l dot lunak at suse dot cz 2008-09-24 08:50 ------- (In reply to comment #55) > It seems reasonable to me for try { X } catch... to mean X when > -fno-exceptions. We don't need to error except on throw.
It seems unreasonable to me that gcc would silently modify code's behaviour, just like it would be unreasonable that -pedantic would silently change 'long long i = 2LL << 34;' to 'long i = 0;'. With today's complex build systems it is not that difficult to get -fno-exceptions without noticing and then get code that works differently than intended (and I'm not making this up, I had such a real case). If people really want code with exception handling to work with both -fexception states, then they need to write the code with that in mind and then they can as well just use __try/__catch macros the way libstdc++ does now, just without breaking the code for the rest of people who can run into trouble if the compiler/libraries try to outguess them. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25191