aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/testsuite/ChangeLog3
-rw-r--r--gcc/testsuite/g++.dg/torture/pr82823.C26
2 files changed, 29 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 4cc2ced..0a08fe2 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,5 +1,8 @@
2017-11-03 Jeff Law <law@redhat.com>
+ PR target/82823
+ * g++.dg/torture/pr82823.C: New test.
+
* gcc.target/i386/stack-check-12.c: New test.
2017-11-03 Jakub Jelinek <jakub@redhat.com>
diff --git a/gcc/testsuite/g++.dg/torture/pr82823.C b/gcc/testsuite/g++.dg/torture/pr82823.C
new file mode 100644
index 0000000..dab369e
--- /dev/null
+++ b/gcc/testsuite/g++.dg/torture/pr82823.C
@@ -0,0 +1,26 @@
+// { dg-do compile }
+// { dg-additional-options "-fstack-clash-protection" }
+// { dg-require-effective-target supports_stack_clash_protection }
+
+
+class a
+{
+public:
+ ~a ();
+ int b;
+};
+class c
+{
+public:
+ a m_fn1 ();
+};
+class d
+{
+ int e ();
+ c f;
+};
+int
+d::e ()
+{
+ return f.m_fn1 ().b;
+}