aboutsummaryrefslogtreecommitdiff
path: root/gcc/fortran
diff options
context:
space:
mode:
authorPatrick Palka <ppalka@redhat.com>2023-03-14 19:12:08 -0400
committerPatrick Palka <ppalka@redhat.com>2023-03-14 19:12:08 -0400
commitec62dc95c4f8776c9f4eff2a9a06f9aef6a2d98a (patch)
treeaeffebd9f1719a3e4b55b6a655fa07a0f88de044 /gcc/fortran
parent578f633ddabd62b41beed635697c95ee2aaa39c0 (diff)
downloadgcc-ec62dc95c4f8776c9f4eff2a9a06f9aef6a2d98a.zip
gcc-ec62dc95c4f8776c9f4eff2a9a06f9aef6a2d98a.tar.gz
gcc-ec62dc95c4f8776c9f4eff2a9a06f9aef6a2d98a.tar.bz2
c++: constrained template friend class matching [PR96830]
When instantiating a constrained template friend naming an already declared class template, tsubst_friend_class erroneously passes to redeclare_class_template the existing template's constraints instead of those of the friend declaration, which causes the constraint comparison check therein to trivially succeed and we fail to diagnose legitimate constraint mismatches. PR c++/96830 gcc/cp/ChangeLog: * pt.cc (redeclare_class_template): Add missing "of" in constraint mismatch diagnostic. (tsubst_friend_class): For an already declared class template, substitute and pass the friend declaration's constraints to redeclare_class_template instead of passing the existing template's constraints. gcc/testsuite/ChangeLog: * g++.dg/cpp2a/concepts-friend14.C: New test.
Diffstat (limited to 'gcc/fortran')
0 files changed, 0 insertions, 0 deletions