[committed] add C++ test for PR60517

Message ID aa552517-04df-7c26-3590-49df541be3e9@gmail.com
State New
Headers show
Series
  • [committed] add C++ test for PR60517
Related show

Commit Message

Martin Sebor Aug. 6, 2019, 12:12 a.m.
The expected diagnostic is now issued so I resolved the bug
and committed the test in r274130.

Martin

+}

Patch

Index: gcc/testsuite/g++.dg/pr60517.C
===================================================================
--- gcc/testsuite/g++.dg/pr60517.C	(nonexistent)
+++ gcc/testsuite/g++.dg/pr60517.C	(revision 274130)
@@ -0,0 +1,22 @@ 
+// PR c++/60517 - warning/error for taking address of member of a temporary
+// object
+// { dg-do compile }
+
+class B
+{
+public:
+  double x[2];
+};
+
+class A
+{
+  B b;
+public:
+  B getB () { return b; }
+};
+
+double foo (A a)
+{
+  double * x = &(a.getB().x[0]);   // { dg-error "taking address of 
rvalue" }
+  return x[0];