aboutsummaryrefslogtreecommitdiffstats
path: root/gcc-4.9/gcc/testsuite/g++.dg/torture/pr50672.C
diff options
context:
space:
mode:
Diffstat (limited to 'gcc-4.9/gcc/testsuite/g++.dg/torture/pr50672.C')
-rw-r--r--gcc-4.9/gcc/testsuite/g++.dg/torture/pr50672.C22
1 files changed, 22 insertions, 0 deletions
diff --git a/gcc-4.9/gcc/testsuite/g++.dg/torture/pr50672.C b/gcc-4.9/gcc/testsuite/g++.dg/torture/pr50672.C
new file mode 100644
index 000000000..614a35b6c
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/g++.dg/torture/pr50672.C
@@ -0,0 +1,22 @@
+// { dg-do compile }
+
+struct A
+{
+ bool isHint();
+};
+class B
+{
+ void makeLine( int *) const;
+ void drawLine() const; A* to() const;
+ void _print() const;
+};
+A a;
+void B::makeLine(int *p1) const
+{
+ if (a.isHint() && to()->isHint()) ;
+ else {
+ if (p1) B::drawLine(); else B::_print();
+ return;
+ }
+ if (p1) B::drawLine(); else B::_print();
+}