------- Additional Comments From sacolcor at provide dot net  2005-03-18 20:57 
-------
I'm working on it, but it may take me a where to track it down to a minimal 
case.

You're correct in that this is legal behavior for a conforming compiler; the
actual "core" problem is that because gcc (and most other compilers) #includes
some standard headers in others, it's possible to write code that is invalid
(because it does not #include all of the necessary headers) but have it still
compile without a diagnostic.  Thus, it breaks when moved to a compiler with a
different internal library header configuration.

In this case, the change was the debug header rework performed between v3.3.2
and v3.4.0.

It was the obvious "temporary" label on that line that led me to believe that it
was erroneous; if it needs to stay there, it probably shouldn't be tagged that
way (or should indicate what its intended lifetime is).

-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20534

Reply via email to