aboutsummaryrefslogtreecommitdiff
path: root/test/CodeGenCXX/const-init-cxx11.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'test/CodeGenCXX/const-init-cxx11.cpp')
-rw-r--r--test/CodeGenCXX/const-init-cxx11.cpp27
1 files changed, 0 insertions, 27 deletions
diff --git a/test/CodeGenCXX/const-init-cxx11.cpp b/test/CodeGenCXX/const-init-cxx11.cpp
index e2a11c295f..5366d6d485 100644
--- a/test/CodeGenCXX/const-init-cxx11.cpp
+++ b/test/CodeGenCXX/const-init-cxx11.cpp
@@ -337,30 +337,3 @@ namespace VirtualBase {
X<D> x;
// CHECK: call {{.*}}@_ZN11VirtualBase1XINS_1DEEC1Ev
}
-
-// PR12145
-namespace Unreferenced {
- int n;
- constexpr int *p = &n;
- // We must not emit a load of 'p' here, since it's not odr-used.
- int q = *p;
- // CHECK-NOT: _ZN12Unreferenced1pE
- // CHECK: = load i32* @_ZN12Unreferenced1nE
- // CHECK-NEXT: store i32 {{.*}}, i32* @_ZN12Unreferenced1qE
- // CHECK-NOT: _ZN12Unreferenced1pE
-
- // Technically, we are not required to substitute variables of reference types
- // initialized by constant expressions, because the special case for odr-use
- // of variables in [basic.def.odr]p2 only applies to objects. But we do so
- // anyway.
-
- constexpr int &r = n;
- // CHECK-NOT: _ZN12Unreferenced1rE
- int s = r;
-
- const int t = 1;
- const int &rt = t;
- int f(int);
- int u = f(rt);
- // CHECK: call i32 @_ZN12Unreferenced1fEi(i32 1)
-}