// parameters that the surrounding function hasn't been instantiated yet. Note
// this may happen while we're comparing two templates' constraint
// equivalence.
- LocalInstantiationScope ScopeForParameters(S);
+ LocalInstantiationScope ScopeForParameters(S, /*CombineWithOuterScope=*/true);
if (auto *FD = DeclInfo.getDecl()->getAsFunction())
for (auto *PVD : FD->parameters()) {
if (!PVD->isParameterPack()) {
} {}
}
+
+namespace GH114685 {
+
+template <typename T> struct ptr {
+ template <typename U>
+ friend ptr<U> make_item(auto &&args)
+ requires(sizeof(args) > 1);
+};
+
+template <typename U>
+ptr<U> make_item(auto &&args)
+ requires(sizeof(args) > 1) {}
+
+ptr<char> p;
+
+} // namespace GH114685