aboutsummaryrefslogtreecommitdiff
path: root/gcc/recog.cc
diff options
context:
space:
mode:
authorNathaniel Shead <nathanieloshead@gmail.com>2025-12-07 23:17:15 +1100
committerNathaniel Shead <nathanieloshead@gmail.com>2025-12-09 13:38:23 +1100
commitcf22e30f0cfae65dd012966cab657583e2be667e (patch)
treee6f00d76220c4783e92ec55223d1348b4aef3fcd /gcc/recog.cc
parent8be2b7797769e48ab2c0adccdfef1c922cb343bc (diff)
downloadgcc-master.zip
gcc-master.tar.gz
gcc-master.tar.bz2
c++: Non-inline temploid friends should still be COMDAT [PR122819]HEADtrunkmaster
Modules allow temploid friends to no longer be implicitly inline, as functions defined in a class body will not be implicitly inline if attached to a named module. This requires us to clean up linkage handling a little bit, mostly by replacing usages of 'DECL_TEMPLATE_INSTANTIATION' with 'DECL_TEMPLOID_INSTANTIATION' when determining if an entity has vague linkage. PR c++/122819 gcc/cp/ChangeLog: * decl.cc (start_preparsed_function): Use DECL_TEMPLOID_INSTANTIATION instead of DECL_TEMPLATE_INSTANTIATION to check vague linkage. * decl2.cc (vague_linkage_p): Likewise. (c_parse_final_cleanups): Simplify condition. * semantics.cc (expand_or_defer_fn_1): Also check for temploid friend functions. gcc/testsuite/ChangeLog: * g++.dg/modules/tpl-friend-22.C: New test. Signed-off-by: Nathaniel Shead <nathanieloshead@gmail.com> Reviewed-by: Jason Merrill <jason@redhat.com>
Diffstat (limited to 'gcc/recog.cc')
0 files changed, 0 insertions, 0 deletions