diff options
Diffstat (limited to 'gcc-4.9/gcc/testsuite/g++.dg/warn/Wreturn-local-addr-2.C')
-rw-r--r-- | gcc-4.9/gcc/testsuite/g++.dg/warn/Wreturn-local-addr-2.C | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/gcc-4.9/gcc/testsuite/g++.dg/warn/Wreturn-local-addr-2.C b/gcc-4.9/gcc/testsuite/g++.dg/warn/Wreturn-local-addr-2.C new file mode 100644 index 000000000..c483601e6 --- /dev/null +++ b/gcc-4.9/gcc/testsuite/g++.dg/warn/Wreturn-local-addr-2.C @@ -0,0 +1,11 @@ +// PR c++/44859 + +struct Base2 { int m_foo; }; +struct Derived2 : public Base2 {}; + +const Base2& f8() { return Derived2(); } // { dg-warning "reference to temporary" } + +struct foo { }; +struct bar { foo base; }; + +const foo& f9() { return bar().base; } // { dg-warning "reference to temporary" } |