RE: regression in qmtest_libstdcpp

"Wichmann, Mats D" <[email protected]>
Newsgroups gmane.linux.lsb.test-suite
Message-ID <A06801158AE07847B27A52C1A074BC1D08502F4A@fmsmsx404.amr.corp.intel.com>
 
>>Reviewing the gcc-4.0.1 source, I see the upstream tests have 
>changed, ...
>>
>>-  verify_demangle("f", "error code = -2: invalid mangled name");
>>+  verify_demangle("f", "float");
>>
>>Making the above change in the qmtest source tree and re-running 
>>build_binary_testsuite, they now pass in that environment (they were 
>>failing in the same manner as the binary test suite)
>>
>>Testing against our 10.2 release with libstdc++.so.6 built 
>>from gcc-3.4.3, the tests pass.

Stew confirmed on IRC that the updated test fails against
an old library, which wasn't a surprise, but good to know.

>The test changelog entry is from Feb 15, and says "Adjust for 
>2005-02-13 demangler change".  I don't actually see a changelog
>entry in gcc that would indicate such a change, nonetheless,
>the date on this is after the 3.4.3 release, but before the 
>3.4.4, 4.0, or 4.0.1 releases.

Okay, I found the entry, it was in libiberty where I didn't
think to look first.  This is from the 3.4 branch:

2005-05-19  Release Manager

	* GCC 3.4.4 released.

2005-02-13  Jason Merrill  <[email protected]>

	* cp-demangle.c (__cxa_demangle): Change resolution of ambiguous
	arguments.

2004-11-04  Release Manager

	* GCC 3.4.3 released


Here are the various references:

// IA 64 C++ ABI - 5.1 External Names (a.k.a. Mangling)

#include <testsuite_hooks.h>

// Examples given in the IA64 C++ ABI 
// http://www.codesourcery.com/cxx-abi/abi-examples.html#mangling

Which says:

f	C function or variable "f" or a global namespace variable "f" 

Working off the spec wording which says:

5.1.2 General Structure 

Entities with C linkage and global namespace variables are not mangled.
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.