This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug libstdc++/52765] -std=c++0x requires multilib for non-optimized libstdc++
- From: "paolo.carlini at oracle dot com" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Thu, 29 Mar 2012 13:12:40 +0000
- Subject: [Bug libstdc++/52765] -std=c++0x requires multilib for non-optimized libstdc++
- Auto-submitted: auto-generated
- References: <bug-52765-4@http.gcc.gnu.org/bugzilla/>
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52765
Paolo Carlini <paolo.carlini at oracle dot com> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |NEW
Last reconfirmed| |2012-03-29
Ever Confirmed|0 |1
--- Comment #4 from Paolo Carlini <paolo.carlini at oracle dot com> 2012-03-29 13:12:40 UTC ---
Something seems fishy on x86_64-linux too, with the library built -O0 and
-std=c++11 I see random segfaults.
But since the problem seems simply that at -O0 we have these *additional*
unwanted exports:
000000000008031e W std::complex<double>::imag() const
0000000000080310 W std::complex<double>::real() const
0000000000080394 W std::complex<long double>::imag() const
0000000000080386 W std::complex<long double>::real() const
00000000000802ac W std::complex<float>::imag() const
000000000008029e W std::complex<float>::real() const
00000000000802e4 W std::complex<double>::complex(double, double)
00000000000802e4 W std::complex<double>::complex(double, double)
0000000000080330 W std::complex<double>::operator=(double)
0000000000080358 W std::complex<long double>::complex(long double, long double)
0000000000080358 W std::complex<long double>::complex(long double, long double)
00000000000803a6 W std::complex<long double>::operator=(long double)
0000000000080276 W std::complex<float>::complex(float, float)
0000000000080276 W std::complex<float>::complex(float, float)
00000000000802be W std::complex<float>::operator=(float)
I suppose the fix should be straightforward: just tighten the linker map and
prevent that from happening.