Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1viEaR-001FeY-02 for pgsql-hackers@arkaria.postgresql.org; Tue, 20 Jan 2026 16:28:11 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1viEaQ-001mZ5-00 for pgsql-hackers@arkaria.postgresql.org; Tue, 20 Jan 2026 16:28:10 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1viEaP-001mYu-0j for pgsql-hackers@lists.postgresql.org; Tue, 20 Jan 2026 16:28:10 +0000 Received: from fout-a8-smtp.messagingengine.com ([103.168.172.151]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1viEaM-001YMG-1l for pgsql-hackers@lists.postgresql.org; Tue, 20 Jan 2026 16:28:09 +0000 Received: from phl-compute-02.internal (phl-compute-02.internal [10.202.2.42]) by mailfout.phl.internal (Postfix) with ESMTP id B7A29EC023E; Tue, 20 Jan 2026 11:28:04 -0500 (EST) Received: from phl-frontend-04 ([10.202.2.163]) by phl-compute-02.internal (MEProxy); Tue, 20 Jan 2026 11:28:04 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=eisentraut.org; h=cc:cc:content-transfer-encoding:content-type:content-type :date:date:from:from:in-reply-to:in-reply-to:message-id :mime-version:references:reply-to:subject:subject:to:to; s=fm1; t=1768926484; x=1769012884; bh=1Z6b/MiBqvqTZpIsuCUxs6/iGAcCMfWG 2Tg9QQOY9f4=; b=f5di4yoQn1RlfX8JHYJGA6E+ONTeYvsG7TRncZdyDoo9CJWs 1ghQOlJcdJrMzuqbus3EpZbHHMU/NdY8xXHCj9TTzws/xeMpmROc6tgDozkakLsR isf5a8fzKHILYFXGpygLOfFSTHiqMeoWcOK707RpQVkSiyMWKYAe6QdI4L9SfP+t pfMtniZVbLS6ELspCluUH1nB36AQaITcwL4z6If/Yq5GTIKdWPVrvnEPe10mhNPa KkvKfEJGBZmEyBFfSsozl012lvc2s4YA9GSDUMyCZyBCKSqGkz1ozpUjO//x7Gwd KrLWFpZ3KMjCVzBLB5tKYMi51KmxK2Djblr7EA== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding :content-type:content-type:date:date:feedback-id:feedback-id :from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:subject:subject:to:to:x-me-proxy :x-me-sender:x-me-sender:x-sasl-enc; s=fm2; t=1768926484; x= 1769012884; bh=1Z6b/MiBqvqTZpIsuCUxs6/iGAcCMfWG2Tg9QQOY9f4=; b=y 1cvGoMFSzmcUdPKeXrm9n3+vbrn8qwe4MTADQMT5OztcKoQeYfLKX2NNq9i9TY8m lTcHlDr2a2oVeB8Y9nRxRLwyeffdEf9G0xeZHDYpFf+s3FG+9/pQzsPVdGpcMuDK SKmqoItDXohU8QztpnyfbuhRpwJRokxp8tG8IIoOAvhZqDTtnNBeb4IEhC+tKKip Zi155Azb9EBOWD94CvYKMypd4kpTFF/ns+XZ74VOYpJ0KH1ktZsJhzQeByWVUboD mv9HL9gXXLQs7bsYAUVzTAitD2pT04G++3e2l5wW56tIrM6Qp9Vmc0MOXAQsPv3L BvvmVHjauX2BuAB9bilOA== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeefgedrtddtgddugedtkeelucetufdoteggodetrf dotffvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfurfetoffkrfgpnffqhgenuceu rghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmnecujf gurhepkfffgggfuffvvehfhfgjtgfgsehtjeertddtvdejnecuhfhrohhmpefrvghtvghr ucfgihhsvghnthhrrghuthcuoehpvghtvghrsegvihhsvghnthhrrghuthdrohhrgheqne cuggftrfgrthhtvghrnhepgfejtdfhkeeftdeugfeileehteeljeeghfeuledthfeutedv ffdukeefjefhgeehnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilh hfrhhomhepphgvthgvrhesvghishgvnhhtrhgruhhtrdhorhhgpdhnsggprhgtphhtthho peefpdhmohguvgepshhmthhpohhuthdprhgtphhtthhopehpohhsthhgrhgvshesjhgvlh htvghfrdhnlhdprhgtphhtthhopehpghhsqhhlqdhhrggtkhgvrhhssehlihhsthhsrdhp ohhsthhgrhgvshhqlhdrohhrghdprhgtphhtthhopehthhhomhgrshdrmhhunhhrohesgh hmrghilhdrtghomh X-ME-Proxy: Feedback-ID: ie0a040ee:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Tue, 20 Jan 2026 11:28:02 -0500 (EST) Message-ID: <4e82f77b-acad-4356-94f6-8255135fb36b@eisentraut.org> Date: Tue, 20 Jan 2026 17:28:00 +0100 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: Make copyObject work in C++ To: Jelte Fennema-Nio Cc: PostgreSQL Hackers , Thomas Munro References: <4d8b9e53-3f37-43f0-a4aa-5bda9c7961b3@eisentraut.org> Content-Language: en-US From: Peter Eisentraut In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk On 17.01.26 16:25, Jelte Fennema-Nio wrote: >> AFAICT, the minimum changes to get a minimum test module to work are >> >> - fix for "restrict", recently committed >> - disable warning about zero-length arrays, seems trivial >> - named designated initializers > > Correct, I've now restructured the commits to have the module > introduction as the first one. Then all the other commits, both fix a > macro to work in C++ and add some usage of those macros as coverage to > the previously added module. I have split your first patch further. For a start, I left out the PG_MODULE_MAGIC*-related changes and disabled the module under MSVC. This has been committed. I plan to let the buildfarm run with it for a day or two and then add in the basic MSVC support. I implemented a different solution for checking whether C++ is available under configure. The runtime check from the makefile looked a bit fragile. This way, we now have a "have_cxx" variable available in both meson and makefiles.