]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
c++: fix some testcases
authorJason Merrill <jason@redhat.com>
Fri, 2 May 2025 13:33:39 +0000 (09:33 -0400)
committerJason Merrill <jason@redhat.com>
Fri, 2 May 2025 13:36:58 +0000 (09:36 -0400)
After r16-332 these tests started failing.  constexpr-89285.C should have
always given this error, and the new nonlit19.C needs to remove the
destructor body to prevent -fimplicit-constexpr from making the testcase
well-formed.

gcc/testsuite/ChangeLog:

* g++.dg/cpp1y/constexpr-89285.C: Always diagnose reinterpret_cast.
* g++.dg/cpp23/constexpr-nonlit19.C: Remove ~A body.

gcc/testsuite/g++.dg/cpp1y/constexpr-89285.C
gcc/testsuite/g++.dg/cpp23/constexpr-nonlit19.C

index efbf9bd15dde7aeebdb8a90fb0afd72693306ceb..d1aaecc1013b1a4d06bf631727fcaf3f9df247a8 100644 (file)
@@ -10,7 +10,7 @@ struct B {
     int *c = &x->a;
     while (*c)
       c = reinterpret_cast<int *>((reinterpret_cast<char *>(c) + *c));
-    *c = reinterpret_cast<char *>(this) - reinterpret_cast<char *>(c); // { dg-error "reinterpret_cast" "" { target c++20_down } }
+    *c = reinterpret_cast<char *>(this) - reinterpret_cast<char *>(c); // { dg-error "reinterpret_cast" }
   }
 };
 struct C : A {  // { dg-error "" "" { target c++14_down } }
index 1b73e2d8209d1f40e374f1fcf400f9715fff764f..834dc631778e66536376b931b6eb0e4a7429cc97 100644 (file)
@@ -1,6 +1,6 @@
 // { dg-do compile { target c++23 } }
 
-struct A { ~A() { } };
+struct A { ~A(); };
 
 struct B {
   constexpr B() {