This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
[PATCH] Fix C++ PATCH for C++14 sized deallocation
- From: Jakub Jelinek <jakub at redhat dot com>
- To: Jason Merrill <jason at redhat dot com>
- Cc: Andreas Schwab <schwab at suse dot de>, gcc-patches List <gcc-patches at gcc dot gnu dot org>
- Date: Tue, 16 Dec 2014 18:11:03 +0100
- Subject: [PATCH] Fix C++ PATCH for C++14 sized deallocation
- Authentication-results: sourceware.org; auth=none
- References: <548F28D2 dot 5090505 at redhat dot com> <mvm7fxrkirz dot fsf at hawking dot suse dot de> <54904CDA dot 9060002 at redhat dot com> <20141216165404 dot GH1667 at tucnak dot redhat dot com>
- Reply-to: Jakub Jelinek <jakub at redhat dot com>
On Tue, Dec 16, 2014 at 05:54:04PM +0100, Jakub Jelinek wrote:
> On Tue, Dec 16, 2014 at 10:16:42AM -0500, Jason Merrill wrote:
> > On 12/16/2014 05:09 AM, Andreas Schwab wrote:
> > >covariant4.C:(.text._ZN5ModelD2Ev[_ZN5ModelD5Ev]+0x1e): undefined reference to `operator delete(void*, unsigned int)'.
> >
> > Can you determine why this reference isn't being satisfied by libstdc++?
>
> Note it fails on i686-linux (and x86_64-linux with -m32) too:
> http://gcc.gnu.org/ml/gcc-testresults/2014-12/msg02036.html
So something like (untested)?
[jmy] is e.g. what is used for operator new...
2014-12-16 Jakub Jelinek <jakub@redhat.com>
* config/abi/pre/gnu.ver (CXXABI_1.3.9): Export not just
_Zd[la]Pvm, but also _Zd[la]Pv[jy] to cover other std::size_t
manglings.
--- libstdc++-v3/config/abi/pre/gnu.ver 2014-12-16 15:03:03.183517188 +0100
+++ libstdc++-v3/config/abi/pre/gnu.ver 2014-12-16 18:08:22.527440407 +0100
@@ -1734,9 +1734,9 @@ CXXABI_1.3.9 {
_ZTSPK[no];
# operator delete(void*, std::size_t)
- _ZdlPvm;
+ _ZdlPv[jmy];
# operator delete[](void*, std::size_t)
- _ZdaPvm;
+ _ZdaPv[jmy];
} CXXABI_1.3.8;
Jakub