DMARC-Filter: OpenDMARC Filter v1.4.2 delorie.com 56TLZ5IG1042309 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 56TLZ5IG1042309 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=dMf+tcp/ X-Recipient: archive-cygwin AT delorie DOT com DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org BEE763858D37 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cygwin.com; s=default; t=1753824902; bh=pgiW41IzZ1l2erATd+YIC6Gw86SCujim0WH+UreI0pg=; h=Date:To:cc:Subject:In-Reply-To:References:List-Id: List-Unsubscribe:List-Archive:List-Post:List-Help:List-Subscribe: From:Reply-To:From; b=dMf+tcp/onMdNHEgF2ahAmTT0WMUGsnBAuT00FvJojLN3cX4SsQp3jaM0kPAMbVLW 63ee0ozVz2HOW/bBYqgbtrLh+ISYS39eO+zR57HigbP2oaIVRl9mqSwNC/swzvx9uS RF/GHeL/GetdYCERxGSf+fht7zjrqJpWcBMwhths= X-Original-To: cygwin AT cygwin DOT com Delivered-To: cygwin AT cygwin DOT com DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org B57823858D26 ARC-Filter: OpenARC Filter v1.0.0 sourceware.org B57823858D26 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1753824840; cv=none; b=lsP0sDZu59GGxh8pZu9JwaMoeBSotQm/S5BpQGl3SQHqAlRMXQL6vvqbMOuwDRfoFP8qRByvc4lbAp3P9jCeLJKHNWN3K7u8xpswulAgVUlDhBA8FcuyCz9IvvadHWTAaoLTjpYz/cApHUKG+dIziiRpjmCqjsOzuIv4fpq53xA= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1753824840; c=relaxed/simple; bh=55IT7tNymzDycMdTRULUQdHSNwgmQwduzQ1TaSKjvNQ=; h=DKIM-Signature:Date:From:To:Subject:Message-ID:MIME-Version; b=M73k6Cfzh67YA6D2YUP7b5DfzSe1kgjPadt/QmzDe+rd/NsZ4nSZNZrYy9zIN9/iAne9iX2ZGc7ZEP45fSWgy1XPsqd3aqgbUGXJKSr8kZrCbBBv+ciNlNjxUCszcNTqjYXwSL8BYOstExQ2mFEHxaW4XWguLUmoImBY726et/o= ARC-Authentication-Results: i=1; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org B57823858D26 Date: Tue, 29 Jul 2025 14:34:00 -0700 (PDT) X-X-Sender: jeremyd AT resin DOT csoft DOT net To: Corinna Vinschen via Cygwin cc: Corinna Vinschen Subject: Re: new c++ new/delete overloads need wrapping? In-Reply-To: Message-ID: <2786ab8c-11a7-b1e4-59a0-02f567b3f368@jdrake.com> References: <81535510-8360-1c72-442a-0b630a6d937f AT jdrake DOT com> <80497791-d323-4204-66ef-4b1a8ff45aa9 AT jdrake DOT com> MIME-Version: 1.0 X-BeenThere: cygwin AT cygwin DOT com X-Mailman-Version: 2.1.30 Precedence: list List-Id: General Cygwin discussions and problem reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , From: Jeremy Drake via Cygwin Reply-To: Jeremy Drake Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: cygwin-bounces~archive-cygwin=delorie DOT com AT cygwin DOT com Sender: "Cygwin" On Tue, 29 Jul 2025, Jeremy Drake via Cygwin wrote: > On Tue, 29 Jul 2025, Corinna Vinschen via Cygwin wrote: > > > On Jul 28 12:57, Jeremy Drake via Cygwin wrote: > > > On Mon, 28 Jul 2025, Corinna Vinschen via Cygwin wrote: > > > > Unless there's some automatism referencing the __wrap_X functions even > > > > if the --wrap option isn't present, I don't see this incompatibility as > > > > much of a problem. We're trying to maintain backward compat, but that > > > > doesn't mean an executable created under and for a newer Cygwin DLL > > > > has to run under an older DLL. > > > > > > OK, then the patch adds support for wrapping these functions ends up in a > > > stable Cygwin release, then GCC is updated to add additional --wrap > > > parameters for them, and that GCC and binaries it produces will no longer > > > be compatible with older Cygwin DLLs. > > > > *iff* the --wrap option is used with functions not provided by older > > DLLs, right? Not for some reason generally incompatible, I hope... > > Correct. However, I expect that to be very common for C++ binaries, > because it seems like the C++14 sized delete is now used by default for > ordinary (non-array) delete. Oh, and you know what else uses these symbols... libstdc++-6.dll. And the larger cygwin_cxx_malloc struct will mean that binaries that try to fill it out will need a newer DLL version with the larger struct (libstdc++-6.dll being notable there as it provides the implementations generally). -- 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