diff options
| author | Jason Merrill <jason@redhat.com> | 2025-11-12 15:03:46 +0530 |
|---|---|---|
| committer | Jason Merrill <jason@redhat.com> | 2025-11-15 11:40:41 +0530 |
| commit | 2359344af53a5fc844d108fcf9f0e8bddd84a6b5 (patch) | |
| tree | b57ceed5bff69faeeb2303a293ff94d8e22ee001 /libjava/classpath/gnu/java/beans/decoder/ArrayHandler.java | |
| parent | 05a3346353dce270d8b6ef0d13fe977cf75d1fcb (diff) | |
c++/modules: friend void foo<bar>()
23_containers/mdspan/layouts/padded.cc was failing because on load we were
wrongly treating the __get_static_stride friends as equivalent between
layout_left_padded and layout_right_padded. This happened because we were
wrongly pushing these declarations into namespace scope even though we don't
yet know what template they instantiate. Fixed by using the same
MK_local_friend mechanism as template friends.
gcc/cp/ChangeLog:
* decl.cc (grokfndecl): Set DECL_CHAIN of a friend f<>.
* module.cc (trees_out::get_merge_kind): Give it MK_local_friend.
(trees_out::decl_container): Its container is the befriender.
(trees_out::key_mergeable): Expand comment.
* cp-tree.h (decl_specialization_friend_p): New.
* friend.cc (do_friend): Use it.
* pt.cc (tsubst_friend_function): Likewise.
gcc/testsuite/ChangeLog:
* g++.dg/modules/friend-11_a.C: New test.
* g++.dg/modules/friend-11_b.C: New test.
Diffstat (limited to 'libjava/classpath/gnu/java/beans/decoder/ArrayHandler.java')
0 files changed, 0 insertions, 0 deletions
