Re: Recent warning regression in libstdc++-v3/libsupc++

2008-07-23 Thread Paolo Carlini
... just to keep you updated, I'm finishing testing the below, appears to work well. Still missing: comments about ABI (no throw()) vs our specific libsupc++ implementation (suggestions very welcome ;) Paolo. // Index: except.c ===

Re: Recent warning regression in libstdc++-v3/libsupc++

2008-07-23 Thread Paolo Carlini
> Does that help? Totally ;) And, for what is worth, I totally agree with your analysis. Essentially, as far as I can see, only a TREE_NOTHROW (fn): line in except.c:do_begin_catch is missing to complete the "baseline project" ;) Patch forthcoming (I hope) Thanks! Paolo.

Re: Recent warning regression in libstdc++-v3/libsupc++

2008-07-23 Thread Mark Mitchell
Paolo Carlini wrote: Now, however, I'm not sure to understand which kind of way forward you can see... Should the warning machinery be smart enough to not warn at all in this case? Or? Sorry, probably it's just my ignorance about those issues at the interface between core and library, I would re

Re: Recent warning regression in libstdc++-v3/libsupc++

2008-07-23 Thread Paolo Carlini
Hi Mark, > This is not an ABI issue; the presence of absence of an > exception-specifier does not affect the ABI. Yes, I realized in the meanwhile, via my usual layman investigations using nm. [snip explanation] Ok. Actually I can clearly remember when you advertised the use of throw() whenev

Re: Recent warning regression in libstdc++-v3/libsupc++

2008-07-23 Thread Mark Mitchell
Paolo Carlini wrote: ... I see this comment in except.c:do_begin_catch: /* Declare void* __cxa_begin_catch (void *). */ Instead, in libstdc++/libsup++/unwind-cxx.h: extern "C" void *__cxa_begin_catch (void *) throw(); So, who is right? Note, the symbol is exported, I'm not suer w

Re: Recent warning regression in libstdc++-v3/libsupc++

2008-07-23 Thread Paolo Carlini
... I see this comment in except.c:do_begin_catch: /* Declare void* __cxa_begin_catch (void *). */ Instead, in libstdc++/libsup++/unwind-cxx.h: extern "C" void *__cxa_begin_catch (void *) throw(); So, who is right? Note, the symbol is exported, I'm not suer which headroom for chan

Re: Recent warning regression in libstdc++-v3/libsupc++

2008-07-23 Thread Paolo Carlini
Hi, > However, a svn log shows that neither unwind-cxx.h nor except.c > in the C++ frontend changed this year in a relevant way. So my guess > is that the warning is what changed. Either the warning settings during > compilation, or a new warning was introduced/activated in the > compiler itself.

Re: Recent warning regression in libstdc++-v3/libsupc++

2008-07-23 Thread Sebastian Redl
Paolo Carlini wrote: Hi all, hi Joseph, on x86_64-linux I'm seeing many new warnings which didn't exist until a few days ago, see below. Is that known? Joseph, can it have something to do with your recent libsupc++ changes? I noticed them too. These warnings say that the unwind-cxx.h dec