aboutsummaryrefslogtreecommitdiff
path: root/clang/test
diff options
context:
space:
mode:
authorTimm Bäder <tbaeder@redhat.com>2024-07-07 12:41:45 +0200
committerTimm Bäder <tbaeder@redhat.com>2024-07-09 10:43:35 +0200
commitdd2bf3b840df260d794e37cc96d4498372aa08f6 (patch)
tree80b5142ded27a26c38a0aa0a5576a2d5602089bd /clang/test
parentf0c7505f597998c84023ccd609ecfc9af3d5b4d6 (diff)
downloadllvm-dd2bf3b840df260d794e37cc96d4498372aa08f6.zip
llvm-dd2bf3b840df260d794e37cc96d4498372aa08f6.tar.gz
llvm-dd2bf3b840df260d794e37cc96d4498372aa08f6.tar.bz2
[clang][Interp] Redo variable (re)visiting
Depending on the circumstances we visit variables in, we need to be careful about when to destroy their temporaries and whether to emit a Ret op at all or not.
Diffstat (limited to 'clang/test')
-rw-r--r--clang/test/C/C23/n3017.c1
-rw-r--r--clang/test/CodeGenCXX/no-const-init-cxx2a.cpp1
-rw-r--r--clang/test/SemaCXX/warn-unused-variables.cpp6
3 files changed, 8 insertions, 0 deletions
diff --git a/clang/test/C/C23/n3017.c b/clang/test/C/C23/n3017.c
index 0d22d31..0533735 100644
--- a/clang/test/C/C23/n3017.c
+++ b/clang/test/C/C23/n3017.c
@@ -1,4 +1,5 @@
// RUN: %clang_cc1 -verify -fsyntax-only --embed-dir=%S/Inputs -std=c2x %s -Wno-constant-logical-operand
+// RUN: %clang_cc1 -verify -fsyntax-only --embed-dir=%S/Inputs -std=c2x %s -Wno-constant-logical-operand -fexperimental-new-constant-interpreter
/* WG14 N3017: full
* #embed - a scannable, tooling-friendly binary resource inclusion mechanism
diff --git a/clang/test/CodeGenCXX/no-const-init-cxx2a.cpp b/clang/test/CodeGenCXX/no-const-init-cxx2a.cpp
index a945c06..2933d42 100644
--- a/clang/test/CodeGenCXX/no-const-init-cxx2a.cpp
+++ b/clang/test/CodeGenCXX/no-const-init-cxx2a.cpp
@@ -1,4 +1,5 @@
// RUN: %clang_cc1 -triple x86_64-linux-gnu -emit-llvm -o - %s -std=c++2a | FileCheck %s
+// RUN: %clang_cc1 -triple x86_64-linux-gnu -emit-llvm -o - %s -std=c++2a -fexperimental-new-constant-interpreter | FileCheck %s
// CHECK-DAG: @p = {{.*}} null
// CHECK-DAG: @_ZGR1p_ = {{.*}} null
diff --git a/clang/test/SemaCXX/warn-unused-variables.cpp b/clang/test/SemaCXX/warn-unused-variables.cpp
index 29e8d08..216873a 100644
--- a/clang/test/SemaCXX/warn-unused-variables.cpp
+++ b/clang/test/SemaCXX/warn-unused-variables.cpp
@@ -2,6 +2,12 @@
// RUN: %clang_cc1 -fsyntax-only -Wunused-variable -Wunused-label -Wno-c++1y-extensions -verify=expected,cxx98-14 -std=gnu++11 %s
// RUN: %clang_cc1 -fsyntax-only -Wunused-variable -Wunused-label -Wno-c++1y-extensions -verify=expected,cxx98-14 -std=gnu++14 %s
// RUN: %clang_cc1 -fsyntax-only -Wunused-variable -Wunused-label -Wno-c++1y-extensions -verify -std=gnu++17 %s
+
+// RUN: %clang_cc1 -fsyntax-only -Wunused-variable -Wunused-label -Wno-c++1y-extensions -verify %s -fexperimental-new-constant-interpreter
+// RUN: %clang_cc1 -fsyntax-only -Wunused-variable -Wunused-label -Wno-c++1y-extensions -verify=expected,cxx98-14 -std=gnu++11 %s -fexperimental-new-constant-interpreter
+// RUN: %clang_cc1 -fsyntax-only -Wunused-variable -Wunused-label -Wno-c++1y-extensions -verify=expected,cxx98-14 -std=gnu++14 %s -fexperimental-new-constant-interpreter
+// RUN: %clang_cc1 -fsyntax-only -Wunused-variable -Wunused-label -Wno-c++1y-extensions -verify -std=gnu++17 %s -fexperimental-new-constant-interpreter
+
template<typename T> void f() {
T t;
t = 17;