diff options
author | Richard Smith <richard-llvm@metafoo.co.uk> | 2018-11-03 02:23:33 +0000 |
---|---|---|
committer | Richard Smith <richard-llvm@metafoo.co.uk> | 2018-11-03 02:23:33 +0000 |
commit | ebc4635e79d821d484c241908398981d4921d5a6 (patch) | |
tree | d1a95f35f48e2cd368d7fc7a226afb75315bfcee /test/CXX | |
parent | 463f16491d79cdf784a1715540c4d7f5581b3d65 (diff) |
Revert r345562: "PR23833, DR2140: an lvalue-to-rvalue conversion on a glvalue of type"
This exposes a (known) CodeGen bug: it can't cope with emitting lvalue
expressions that denote non-odr-used but usable-in-constant-expression
variables. See PR39528 for a testcase.
Reverted for now until that issue can be fixed.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@346065 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/CXX')
-rw-r--r-- | test/CXX/drs/dr21xx.cpp | 10 |
1 files changed, 0 insertions, 10 deletions
diff --git a/test/CXX/drs/dr21xx.cpp b/test/CXX/drs/dr21xx.cpp index b111529b09..2522ff7dbd 100644 --- a/test/CXX/drs/dr21xx.cpp +++ b/test/CXX/drs/dr21xx.cpp @@ -19,16 +19,6 @@ namespace dr2120 { // dr2120: 7 static_assert(!__is_standard_layout(E), ""); } -namespace dr2140 { // dr2140: 8 -#if __cplusplus >= 201103L - union U { int a; decltype(nullptr) b; }; - constexpr int *test(U u) { - return u.b; - } - static_assert(!test({123}), "u.b should be valid even when b is inactive"); -#endif -} - namespace dr2180 { // dr2180: yes class A { A &operator=(const A &); // expected-note 0-2{{here}} |