]> git.ipfire.org Git - thirdparty/gcc.git/commit
aarch64: Avoid registering duplicate C++ overloads [PR112989]
authorRichard Sandiford <richard.sandiford@arm.com>
Tue, 23 Jan 2024 11:10:41 +0000 (11:10 +0000)
committerRichard Sandiford <richard.sandiford@arm.com>
Tue, 23 Jan 2024 11:10:41 +0000 (11:10 +0000)
commit659a5a908edd84894c2aa7f6f89468217d6894ca
tree9f4b7e761234787d635fb44194e166cb5d9959f6
parent20e18106fac2d11ee43683291ff11d76da41d50b
aarch64: Avoid registering duplicate C++ overloads [PR112989]

In the original fix for this PR, I'd made sure that
including <arm_sme.h> didn't reach the final return in
simulate_builtin_function_decl (which would indicate duplicate
function definitions).  But it seems I forgot to do the same
thing for C++, which defines all of its overloads directly.

This patch fixes a case where we still recorded duplicate
functions for C++.  Thanks to Iain for reporting the resulting
GC ICE and for help with reproducing it.

gcc/
PR target/112989
* config/aarch64/aarch64-sve-builtins-shapes.cc (build_one): Skip
MODE_single variants of functions that don't take tuple arguments.
gcc/config/aarch64/aarch64-sve-builtins-shapes.cc