------- Comment #4 from bangerth at dealii dot org 2007-09-08 23:52 ------- The code is definitely invalid. The two typedefs declare two types with external linkage. This is an ODR violation making the code invalid. The standard doesn't require compilers to produce an error for a very good reason: it is almost impossible to detect this without support from a linker that understands all wrinkles and depths of the C++ language.
-- bangerth at dealii dot org changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |bangerth at dealii dot org Status|UNCONFIRMED |RESOLVED Resolution| |INVALID http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32549