diff options
Diffstat (limited to 'test/CodeGenCXX/conditional-expr-lvalue.cpp')
-rw-r--r-- | test/CodeGenCXX/conditional-expr-lvalue.cpp | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/test/CodeGenCXX/conditional-expr-lvalue.cpp b/test/CodeGenCXX/conditional-expr-lvalue.cpp index a0843c40f071d..96aa8b07a664c 100644 --- a/test/CodeGenCXX/conditional-expr-lvalue.cpp +++ b/test/CodeGenCXX/conditional-expr-lvalue.cpp @@ -5,3 +5,16 @@ void f(bool flag) { (flag ? a : b) = 3; } + +// PR10756 +namespace test0 { + struct A { + A(const A &); + A &operator=(const A &); + A sub() const; + void foo() const; + }; + void foo(bool cond, const A &a) { + (cond ? a : a.sub()).foo(); + } +} |