aboutsummaryrefslogtreecommitdiffstats
path: root/gcc-4.9/gcc/testsuite/g++.dg/warn/Wreturn-local-addr-2.C
diff options
context:
space:
mode:
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.C11
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" }