Hi, For my optimized builds I've long used -O3 -march=native. After one of the recent package updates (I'm not certain when exactly yet), the main regression tests started to fail for me with that. Oddly enough in opr_sanity:
-- Ask access methods to validate opclasses -- (this replaces a lot of SQL-level checks that used to be done in this file) SELECT oid, opcname FROM pg_opclass WHERE NOT amvalidate(oid); - oid | opcname ------+--------- -(0 rows) +INFO: operator family "array_ops" of access method hash contains function hash_array_extended(anyarray,bigint) with wrong signature for support number 2 +INFO: operator family "bpchar_ops" of access method hash contains function hashbpcharextended(character,bigint) with wrong signature for support number 2 ... + 16492 | part_test_int4_ops + 16497 | part_test_text_ops +(43 rows) Given that I did not encounter this problem with gcc-12 before, and that gcc-12 has been released, it seems less likely to be a bug in our code highlighted by a new optimization and more likely to be a bug in a gcc bugfix, but it's definitely not clear. I only investigated this a tiny bit so far. What fails is the procform->prorettype != restype comparison in check_hash_func_signature(). Greetings, Andres Freund