Compilers and demanglers might treat local/static functions different
between versions. In particular g++ 4.1.2 and libstdc++ mangle and
demangle the static void cxxfunc (int i) function as _Z7cxxfunci.
While g++ 4.8.2 and libstdc++ mangle and demangle it as _ZL7cxxfunci.
Signed-off-by: Mark Wielaard <mjw@redhat.com>
+2014-05-18 Mark Wielaard <mjw@redhat.com>
+
+ * testfile-backtrace-demangle.cc (cxxfunc): Make non-static.
+ (f): Likewise.
+ * testfile-backtrace-demangle.bz2: Regenerate.
+ * testfile-backtrace-demangle.core.bz2: Likewise.
+
2014-05-02 Mark Wielaard <mjw@redhat.com>
* Makefile.am (TESTS): run-readelf-dwz-multi.sh and
#define NOINLINE_NOCLONE __attribute__ ((noinline))
#endif
-static void NOINLINE_NOCLONE
+void NOINLINE_NOCLONE
cxxfunc (int i)
{
*(volatile int *)0=0;
extern "C"
{
- static void NOINLINE_NOCLONE
+ void NOINLINE_NOCLONE
f (void)
{
cxxfunc(1);