Remove brittle test introduced in D140547.
authorUtkarsh Saxena <usx@google.com>
Fri, 13 Jan 2023 18:41:57 +0000 (19:41 +0100)
committerUtkarsh Saxena <usx@google.com>
Fri, 13 Jan 2023 19:26:38 +0000 (20:26 +0100)
clang/lib/Sema/SemaTemplateInstantiate.cpp
clang/test/SemaCXX/invalid-requirement-requires-expr.cpp [deleted file]

index b43a754..097203a 100644 (file)
@@ -1363,7 +1363,7 @@ namespace {
 
     ExprResult TransformRequiresExpr(RequiresExpr *E) {
       LocalInstantiationScope Scope(SemaRef, /*CombineWithOuterScope=*/true);
-      auto TransReq = inherited::TransformRequiresExpr(E);
+      ExprResult TransReq = inherited::TransformRequiresExpr(E);
       if (TransReq.isInvalid())
         return TransReq;
       assert(TransReq.get() != E &&
diff --git a/clang/test/SemaCXX/invalid-requirement-requires-expr.cpp b/clang/test/SemaCXX/invalid-requirement-requires-expr.cpp
deleted file mode 100644 (file)
index c238502..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-// RUN: %clang_cc1 %s -I%S -std=c++2a -verify
-
-// RequiresExpr contains invalid requirement. (Eg. Highly recurisive template).
-template<int x>
-struct A { static constexpr bool far(); };
-class B {
-    bool data_member;
-    friend struct A<1>;
-};
-
-template<>
-constexpr bool A<0>::far() { return true; }
-
-template<int x>
-constexpr bool A<x>::far() {
-    return requires(B b) {
-      b.data_member;
-      requires A<x-1>::far(); //expected-note 3{{in instantiation}} // expected-note 6{{while}} expected-note {{contexts in backtrace; use -ftemplate-backtrace-limit=0 to see all}}
-      // expected-error@-1{{recursive template instantiation exceeded maximum depth}}
-    };
-}
-static_assert(A<1>::far());
-static_assert(!A<10001>::far()); // expected-note {{in instantiation of member function}}