Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1p4Zju-0005up-FW for pgsql-hackers@arkaria.postgresql.org; Mon, 12 Dec 2022 03:44:26 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1p4Zjt-0001WI-BU for pgsql-hackers@arkaria.postgresql.org; Mon, 12 Dec 2022 03:44:25 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1p4Zjs-0001W9-VP for pgsql-hackers@lists.postgresql.org; Mon, 12 Dec 2022 03:44:25 +0000 Received: from mail-vk1-xa36.google.com ([2607:f8b0:4864:20::a36]) by magus.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1p4Zjp-0001cq-L5 for pgsql-hackers@postgresql.org; Mon, 12 Dec 2022 03:44:24 +0000 Received: by mail-vk1-xa36.google.com with SMTP id b81so4916243vkf.1 for ; Sun, 11 Dec 2022 19:44:20 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=lT/STeCzTQXluWZZmo5xI8KjNrc+5aZbkh6A2j9gbb0=; b=ny9vKlFQnO4XSQYm0kbJ4EvlfSxYCpqFepQzcBJWW0wWFs9ufFfVde1w+0/IWCL/ae Qoy8ip4YSgSBo0kx81TmqAf46OrdnMWJPeZpz4yo3lYboW7N27VAGevz0V+1NCN8lrLr owbzxe1/f/gxz5c568/BMcKBDSwwamurSn7DVQtZboR3/+S9dY4ea5efzR6xoliMoPLb DXHYTDMGGdQbRBdCM/Cj1P9ih+STw4wcOzMXWaC+MLC5O1vY0OLZrNGiqPJ2U5A2gM4H D/BPKU/2xbDPEDoaaoVViMxN1cW7SqREtYJFEc9nzEEJSBDGjIj4f+ft2QDteB68Ee/k Gb7A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=lT/STeCzTQXluWZZmo5xI8KjNrc+5aZbkh6A2j9gbb0=; b=2gMCLINyQWPklsl+b+/y7Ge1h45M4/v4ggKze/BWGUUPGP1CxqqaZAp1XHXc6cpANN +NHt1JDGtpZw6cslQQUYfTA6NuesaIjMgEEHzVdckVcBX6dPsMiP+QpsEk1W71k5XTEN ud5evh83mokeMoUSRWgBqYwcRg7OUE6XMwbj+HcevN8sZOWbNIsrS9iLBf2N8+yBofiv XaN0vgeZ71hB7t12q01yjeCkAlBNjCnA+YTyXzLNrot6/9upJd87+PSUGg5zPA1eFu71 rqft7hSLoIO/qG2WiP9DR3vNFlLQl67Ny1k5sBCf/0ZVb75iueL1ojPod2SpWA+4ppD5 P7dA== X-Gm-Message-State: ANoB5plW4kG3iNX841B4RnloxqkcWT3qwvydluD4ZVi8WCxjtGyCag9G 2aYbzsNQ6kTf4zwGI9JlGbkOrDnRZGLNpjUDtUc= X-Google-Smtp-Source: AA0mqf74Ez7N0UPiVA+HdVqUge4/sPG7fGliXb9wDUl7KBMkTImRywD2GEhqLtcKemgTgQerlEx72ACPsrejokiYMKQ= X-Received: by 2002:a1f:a6d4:0:b0:3bc:a4d5:a0ef with SMTP id p203-20020a1fa6d4000000b003bca4d5a0efmr39267895vke.16.1670816659353; Sun, 11 Dec 2022 19:44:19 -0800 (PST) MIME-Version: 1.0 References: <1725174.1651449765@sss.pgh.pa.us> <3953550.1663376882@sss.pgh.pa.us> <208054.1663534665@sss.pgh.pa.us> <334554.1663596005@sss.pgh.pa.us> <508012.1663611012@sss.pgh.pa.us> <722832.1663690513@sss.pgh.pa.us> <1914802.1670814425@sss.pgh.pa.us> In-Reply-To: <1914802.1670814425@sss.pgh.pa.us> From: Thomas Munro Date: Mon, 12 Dec 2022 16:43:41 +1300 Message-ID: Subject: Re: Tree-walker callbacks vs -Wdeprecated-non-prototype To: Tom Lane Cc: pgsql-hackers Content-Type: multipart/mixed; boundary="00000000000077964405ef9951e8" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --00000000000077964405ef9951e8 Content-Type: text/plain; charset="UTF-8" On Mon, Dec 12, 2022 at 4:07 PM Tom Lane wrote: > Thomas Munro writes: > > As visible on seawasp and locally (16/main branch nightly packages), > > they decided to start warning about these casts with a new strict > > variant of the warning. Their discussion: > > > https://reviews.llvm.org/D134831 > > > There are also a few other cases unrelated to this thread's original > > problem, for example casts involving pg_funcptr_t, HashCompareFunc. I > > guess our options would be to turn that warning off, or reconsider and > > try shoving the cast of "generic" arguments pointers down into the > > functions? > > I'm for "turn the warning off". Per previous discussion, adhering > strictly to that rule would make our code worse (less legible AND > less safe), not better. Alright, this seems to do the trick here. --00000000000077964405ef9951e8 Content-Type: text/x-patch; charset="US-ASCII"; name="0001-Disable-clang-16-s-Wcast-function-type-strict.patch" Content-Disposition: attachment; filename="0001-Disable-clang-16-s-Wcast-function-type-strict.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_lbk91z3f0 RnJvbSBiMDE2OTBjYTg1OWI1ZjI3ZWNlMzg2NTc3YjdiOWQ5ZDc1NzJiOGQyIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBUaG9tYXMgTXVucm8gPHRob21hcy5tdW5yb0BnbWFpbC5jb20+ CkRhdGU6IE1vbiwgMTIgRGVjIDIwMjIgMTY6Mjg6MjQgKzEzMDAKU3ViamVjdDogW1BBVENIXSBE aXNhYmxlIGNsYW5nIDE2J3MgLVdjYXN0LWZ1bmN0aW9uLXR5cGUtc3RyaWN0LgoKQ2xhbmcgMTYg aXMgc3RpbGwgaW4gZGV2ZWxvcG1lbnQsIGJ1dCBzZWF3YXNwIHJldmVhbHMgdGhhdCBpdCBoYXMK c3RhcnRlZCB3YXJuaW5nIGFib3V0IG1hbnkgb2Ygb3VyIGNhc3RzIG9mIGZ1bmN0aW9uIHBvaW50 ZXJzLiAgRGlzYWJsZQp0aGUgbmV3IHdhcm5pbmcgZm9yIG5vdywgc2luY2Ugb3RoZXJ3aXNlIGJ1 aWxkZmFybSBhbmltYWwgc2Vhd2FzcCBmYWlscy4KCk1heSBiZSBiYWNrLXBhdGNoZWQgd2l0aCBv dGhlciBDbGFuZy9MTFZNIDE2IGNoYW5nZXMgYXJvdW5kIHJlbGVhc2UKdGltZS4KCkRpc2N1c3Np b246IGh0dHBzOi8vcG9zdGdyLmVzL20vQ0ElMkJoVUtHSnZYJTJCTDNhTU44NGtzVC1jR3kwOFZI RXJSTmlwM25WLVdtVHg3ZjZQcWh5dyU0MG1haWwuZ21haWwuY29tCi0tLQogY29uZmlndXJlICAg IHwgNDQgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKIGNvbmZp Z3VyZS5hYyB8ICA2ICsrKysrKwogbWVzb24uYnVpbGQgIHwgIDMgKysrCiAzIGZpbGVzIGNoYW5n ZWQsIDUzIGluc2VydGlvbnMoKykKCmRpZmYgLS1naXQgYS9jb25maWd1cmUgYi9jb25maWd1cmUK aW5kZXggNjJmMzgyYzFkMS4uNTAyNTQ0OGEwNSAxMDA3NTUKLS0tIGEvY29uZmlndXJlCisrKyBi L2NvbmZpZ3VyZQpAQCAtNjYxMSw2ICs2NjExLDUwIEBAIGZpCiAgIGlmIHRlc3QgLW4gIiROT1Rf VEhFX0NGTEFHUyI7IHRoZW4KICAgICBDRkxBR1M9IiRDRkxBR1MgLVduby1zdHJpbmdvcC10cnVu Y2F0aW9uIgogICBmaQorICAjIFN1cHByZXNzIGNsYW5nIDE2J3Mgc3RyaWN0IHdhcm5pbmdzIGFi b3V0IGZ1bmN0aW9uIGNhc3RzCisgIE5PVF9USEVfQ0ZMQUdTPSIiCisgIHsgJGFzX2VjaG8gIiRh c19tZToke2FzX2xpbmVuby0kTElORU5PfTogY2hlY2tpbmcgd2hldGhlciAke0NDfSBzdXBwb3J0 cyAtV2Nhc3QtZnVuY3Rpb24tdHlwZS1zdHJpY3QsIGZvciBOT1RfVEhFX0NGTEFHUyIgPiY1Cisk YXNfZWNob19uICJjaGVja2luZyB3aGV0aGVyICR7Q0N9IHN1cHBvcnRzIC1XY2FzdC1mdW5jdGlv bi10eXBlLXN0cmljdCwgZm9yIE5PVF9USEVfQ0ZMQUdTLi4uICIgPiY2OyB9CitpZiAke3BnYWNf Y3ZfcHJvZ19DQ19jZmxhZ3NfX1djYXN0X2Z1bmN0aW9uX3R5cGVfc3RyaWN0Kzp9IGZhbHNlOyB0 aGVuIDoKKyAgJGFzX2VjaG9fbiAiKGNhY2hlZCkgIiA+JjYKK2Vsc2UKKyAgcGdhY19zYXZlX0NG TEFHUz0kQ0ZMQUdTCitwZ2FjX3NhdmVfQ0M9JENDCitDQz0ke0NDfQorQ0ZMQUdTPSIke05PVF9U SEVfQ0ZMQUdTfSAtV2Nhc3QtZnVuY3Rpb24tdHlwZS1zdHJpY3QiCithY19zYXZlX2Nfd2Vycm9y X2ZsYWc9JGFjX2Nfd2Vycm9yX2ZsYWcKK2FjX2Nfd2Vycm9yX2ZsYWc9eWVzCitjYXQgY29uZmRl ZnMuaCAtIDw8X0FDRU9GID5jb25mdGVzdC4kYWNfZXh0CisvKiBlbmQgY29uZmRlZnMuaC4gICov CisKK2ludAorbWFpbiAoKQoreworCisgIDsKKyAgcmV0dXJuIDA7Cit9CitfQUNFT0YKK2lmIGFj X2ZuX2NfdHJ5X2NvbXBpbGUgIiRMSU5FTk8iOyB0aGVuIDoKKyAgcGdhY19jdl9wcm9nX0NDX2Nm bGFnc19fV2Nhc3RfZnVuY3Rpb25fdHlwZV9zdHJpY3Q9eWVzCitlbHNlCisgIHBnYWNfY3ZfcHJv Z19DQ19jZmxhZ3NfX1djYXN0X2Z1bmN0aW9uX3R5cGVfc3RyaWN0PW5vCitmaQorcm0gLWYgY29y ZSBjb25mdGVzdC5lcnIgY29uZnRlc3QuJGFjX29iamV4dCBjb25mdGVzdC4kYWNfZXh0CithY19j X3dlcnJvcl9mbGFnPSRhY19zYXZlX2Nfd2Vycm9yX2ZsYWcKK0NGTEFHUz0iJHBnYWNfc2F2ZV9D RkxBR1MiCitDQz0iJHBnYWNfc2F2ZV9DQyIKK2ZpCit7ICRhc19lY2hvICIkYXNfbWU6JHthc19s aW5lbm8tJExJTkVOT306IHJlc3VsdDogJHBnYWNfY3ZfcHJvZ19DQ19jZmxhZ3NfX1djYXN0X2Z1 bmN0aW9uX3R5cGVfc3RyaWN0IiA+JjUKKyRhc19lY2hvICIkcGdhY19jdl9wcm9nX0NDX2NmbGFn c19fV2Nhc3RfZnVuY3Rpb25fdHlwZV9zdHJpY3QiID4mNjsgfQoraWYgdGVzdCB4IiRwZ2FjX2N2 X3Byb2dfQ0NfY2ZsYWdzX19XY2FzdF9mdW5jdGlvbl90eXBlX3N0cmljdCIgPSB4InllcyI7IHRo ZW4KKyAgTk9UX1RIRV9DRkxBR1M9IiR7Tk9UX1RIRV9DRkxBR1N9IC1XY2FzdC1mdW5jdGlvbi10 eXBlLXN0cmljdCIKK2ZpCisKKworICBpZiB0ZXN0IC1uICIkTk9UX1RIRV9DRkxBR1MiOyB0aGVu CisgICAgQ0ZMQUdTPSIkQ0ZMQUdTIC1Xbm8tY2FzdC1mdW5jdGlvbi10eXBlLXN0cmljdCIKKyAg ZmkKIGVsaWYgdGVzdCAiJElDQyIgPSB5ZXM7IHRoZW4KICAgIyBJbnRlbCdzIGNvbXBpbGVyIGhh cyBhIGJ1Zy9taXNvcHRpbWl6YXRpb24gaW4gY2hlY2tpbmcgZm9yCiAgICMgZGl2aXNpb24gYnkg TkFOIChOYU4gPT0gMCksIC1tcDEgZml4ZXMgaXQsIHNvIGFkZCBpdCB0byB0aGUgQ0ZMQUdTLgpk aWZmIC0tZ2l0IGEvY29uZmlndXJlLmFjIGIvY29uZmlndXJlLmFjCmluZGV4IGNmYjEwZjU5Y2Uu LjRjZDMyOGZjODMgMTAwNjQ0Ci0tLSBhL2NvbmZpZ3VyZS5hYworKysgYi9jb25maWd1cmUuYWMK QEAgLTU3Myw2ICs1NzMsMTIgQEAgaWYgdGVzdCAiJEdDQyIgPSB5ZXMgLWEgIiRJQ0MiID0gbm87 IHRoZW4KICAgaWYgdGVzdCAtbiAiJE5PVF9USEVfQ0ZMQUdTIjsgdGhlbgogICAgIENGTEFHUz0i JENGTEFHUyAtV25vLXN0cmluZ29wLXRydW5jYXRpb24iCiAgIGZpCisgICMgU3VwcHJlc3MgY2xh bmcgMTYncyBzdHJpY3Qgd2FybmluZ3MgYWJvdXQgZnVuY3Rpb24gY2FzdHMKKyAgTk9UX1RIRV9D RkxBR1M9IiIKKyAgUEdBQ19QUk9HX0NDX1ZBUl9PUFQoTk9UX1RIRV9DRkxBR1MsIFstV2Nhc3Qt ZnVuY3Rpb24tdHlwZS1zdHJpY3RdKQorICBpZiB0ZXN0IC1uICIkTk9UX1RIRV9DRkxBR1MiOyB0 aGVuCisgICAgQ0ZMQUdTPSIkQ0ZMQUdTIC1Xbm8tY2FzdC1mdW5jdGlvbi10eXBlLXN0cmljdCIK KyAgZmkKIGVsaWYgdGVzdCAiJElDQyIgPSB5ZXM7IHRoZW4KICAgIyBJbnRlbCdzIGNvbXBpbGVy IGhhcyBhIGJ1Zy9taXNvcHRpbWl6YXRpb24gaW4gY2hlY2tpbmcgZm9yCiAgICMgZGl2aXNpb24g YnkgTkFOIChOYU4gPT0gMCksIC1tcDEgZml4ZXMgaXQsIHNvIGFkZCBpdCB0byB0aGUgQ0ZMQUdT LgpkaWZmIC0tZ2l0IGEvbWVzb24uYnVpbGQgYi9tZXNvbi5idWlsZAppbmRleCBhNjJkODE3MWNj Li45ZGY4Njg1ZGZkIDEwMDY0NAotLS0gYS9tZXNvbi5idWlsZAorKysgYi9tZXNvbi5idWlsZApA QCAtMTc3Myw2ICsxNzczLDkgQEAgbmVnYXRpdmVfd2FybmluZ19mbGFncyA9IFsKICAgJ2Zvcm1h dC10cnVuY2F0aW9uJywKICAgJ3N0cmluZ29wLXRydW5jYXRpb24nLAogCisgICMgU3VwcHJlc3Mg Y2xhbmcgMTYncyBzdHJpY3Qgd2FybmluZ3MgYWJvdXQgZnVuY3Rpb24gY2FzdHMKKyAgJ2Nhc3Qt ZnVuY3Rpb24tdHlwZS1zdHJpY3QnLAorCiAgICMgVG8gbWFrZSB3YXJuaW5nX2xldmVsPTIgLyAt V2V4dHJhIHdvcmssIHdlJ2QgbmVlZCBhdCBsZWFzdCB0aGUgZm9sbG93aW5nCiAgICMgJ2Nsb2Ji ZXJlZCcsCiAgICMgJ21pc3NpbmctZmllbGQtaW5pdGlhbGl6ZXJzJywKLS0gCjIuMzUuMQoK --00000000000077964405ef9951e8--