delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2025/08/02/13:43:10

DMARC-Filter: OpenDMARC Filter v1.4.2 delorie.com 572Hh9ie426077
Authentication-Results: delorie.com; dmarc=pass (p=none dis=none) header.from=cygwin.com
Authentication-Results: delorie.com; spf=pass smtp.mailfrom=cygwin.com
DKIM-Filter: OpenDKIM Filter v2.11.0 delorie.com 572Hh9ie426077
Authentication-Results: delorie.com;
dkim=pass (1024-bit key, unprotected) header.d=cygwin.com header.i=@cygwin.com header.a=rsa-sha256 header.s=default header.b=MHfXfesO
X-Recipient: archive-cygwin AT delorie DOT com
DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 544A23858C2F
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cygwin.com;
s=default; t=1754134590;
bh=efT9/E01IkBAfSnXnGKbI7h3CvuPVyyRVABgATZbGHM=;
h=To:Subject:In-Reply-To:References:Date:List-Id:List-Unsubscribe:
List-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To:
From;
b=MHfXfesOWRkr/KJ4W44SMshJ51YclrrUz/cEqyM4ihoZhPYkOV5cR+Z/17V+ZNg//
dKmoyu8sX0nB4oIjnpgQnyKacqQjTNPDLWMTQf5W0Qeo/7GUcHXrWExrPm+sJfU1x9
/92jvR0GUqFqgXCnDiX3KTlAlEE0MC3CO39GoBYA=
X-Original-To: cygwin AT cygwin DOT com
Delivered-To: cygwin AT cygwin DOT com
DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org D794D385842F
ARC-Filter: OpenARC Filter v1.0.0 sourceware.org D794D385842F
ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1754134529; cv=none;
b=BqOgYU7ULYK8+rZKVO0hZMP82qa72ERi+iqOk0m7uze6gRcY2mTw86GBBvqnQIdNAJUQlWtKbW7Z2dtatDTrCzTITIhjZl04Fz6FfOX/rf6rcxHCQ7kJb4/YUqtlOu//DFT+O4+vNm8T+3AXZ996+krFAZqHuoQiSXsD1mdHBWQ=
ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key;
t=1754134529; c=relaxed/simple;
bh=ooWzBhQ5J16qeN3S6Q/QdLuc+A7GctERPC1wN32LX9A=;
h=DKIM-Signature:From:To:Subject:Date:Message-ID:MIME-Version;
b=AAX1spA69YzaNeUs3t87iDYcEWrp7D6hYMILgpPd3ftTw13szeCSuI4F43c9mvsVTwBnHKYR1irySDvCdOsIT4k+E+GEyzJfA+aJ0DzcY6sXhUI36VHIShQnafmJaB08uwTuY/v32437B4imnhob7XxdWFyABq7qOs1bnOZXmLI=
ARC-Authentication-Results: i=1; server2.sourceware.org
DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org D794D385842F
To: cygwin AT cygwin DOT com
Subject: Re: new c++ new/delete overloads need wrapping?
In-Reply-To: <81535510-8360-1c72-442a-0b630a6d937f@jdrake.com> (Jeremy Drake
via Cygwin's message of "Thu, 24 Jul 2025 22:41:04 -0700 (PDT)")
References: <81535510-8360-1c72-442a-0b630a6d937f AT jdrake DOT com>
Date: Sat, 02 Aug 2025 13:35:15 +0200
Message-ID: <871ppuklcc.fsf@Gerda.invalid>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
X-purgate-type: clean
X-purgate: clean
X-purgate-size: 2112
X-purgate-ID: 155817::1754134523-8D72A0C3-65EBA797/0/0
X-BeenThere: cygwin AT cygwin DOT com
X-Mailman-Version: 2.1.30
List-Id: General Cygwin discussions and problem reports <cygwin.cygwin.com>
List-Unsubscribe: <https://cygwin.com/mailman/options/cygwin>,
<mailto:cygwin-request AT cygwin DOT com?subject=unsubscribe>
List-Archive: <https://cygwin.com/pipermail/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-request AT cygwin DOT com?subject=help>
List-Subscribe: <https://cygwin.com/mailman/listinfo/cygwin>,
<mailto:cygwin-request AT cygwin DOT com?subject=subscribe>
From: ASSI via Cygwin <cygwin AT cygwin DOT com>
Reply-To: ASSI <Stromeko AT nexgo DOT de>
Errors-To: cygwin-bounces~archive-cygwin=delorie DOT com AT cygwin DOT com
Sender: "Cygwin" <cygwin-bounces~archive-cygwin=delorie DOT com AT cygwin DOT com>

Jeremy Drake via Cygwin writes:
> I was looking into C++ new/delete --wrap linker options, and noticed that
> in a quick test the wrapper for delete was not being called.  This was
> because delete is being compiled to _ZdlPvm and that symbol is not present
> in the --wrap arguments in the GCC spec, and is not part of the
> per_process_cxx_malloc struct.  I'm not seeing anything in that cxx_malloc
> struct like a size or version number, so I don't know a good way to
> extend it given that it is part of the startup code linked into every
> binary.

So, something like this?

--8<---------------cut here---------------start------------->8---
diff --git a/gcc/config/i386/cygwin-w64.h b/gcc/config/i386/cygwin-w64.h
index 8180d27c971..177e8203715 100644
--- a/gcc/config/i386/cygwin-w64.h
+++ b/gcc/config/i386/cygwin-w64.h
@@ -28,13 +28,24 @@ along with GCC; see the file COPYING3.  If not see
    malloc-like operators.  See N2800 #17.6.4.6 [replacement.functions] */
 #undef CXX_WRAP_SPEC_LIST
 #define CXX_WRAP_SPEC_LIST " \
-  --wrap _Znwm \
-  --wrap _Znam \
-  --wrap _ZdlPv \
-  --wrap _ZdaPv \
+  --wrap _ZnwmSt11align_val_tRKSt9nothrow_t \
+  --wrap _ZnwmSt11align_val_t \
   --wrap _ZnwmRKSt9nothrow_t \
+  --wrap _Znwm \
+  --wrap _ZnamSt11align_val_tRKSt9nothrow_t \
+  --wrap _ZnamSt11align_val_t \
   --wrap _ZnamRKSt9nothrow_t \
+  --wrap _Znam \
+  --wrap _ZdlPvmSt11align_val_t \
+  --wrap _ZdlPvm \
+  --wrap _ZdlPvSt11align_val_tRKSt9nothrow_t \
+  --wrap _ZdlPvSt11align_val_t \
   --wrap _ZdlPvRKSt9nothrow_t \
+  --wrap _ZdlPv \
+  --wrap _ZdaPvmSt11align_val_t \
+  --wrap _ZdaPvm \
+  --wrap _ZdaPvSt11align_val_tRKSt9nothrow_t \
+  --wrap _ZdaPvSt11align_val_t \
   --wrap _ZdaPvRKSt9nothrow_t \
 "
 
--8<---------------cut here---------------end--------------->8---

The symbols were in reverse order, so I kept it that way.


Regards,
Achim.
-- 
+<[Q+ Matrix-12 WAVE#46+305 Neuron microQkb Andromeda XTk Blofeld]>+

Factory and User Sound Singles for Waldorf Blofeld:
http://Synth.Stromeko.net/Downloads.html#WaldorfSounds

-- 
Problem reports:      https://cygwin.com/problems.html
FAQ:                  https://cygwin.com/faq/
Documentation:        https://cygwin.com/docs.html
Unsubscribe info:     https://cygwin.com/ml/#unsubscribe-simple

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019