parser.c (cp_parser_postfix_expression): Set idk properly for object->scope::member.
authorJason Merrill <jason@gcc.gnu.org>
Wed, 12 Feb 2003 20:02:40 +0000 (15:02 -0500)
committerJason Merrill <jason@gcc.gnu.org>
Wed, 12 Feb 2003 20:02:40 +0000 (15:02 -0500)
        * parser.c (cp_parser_postfix_expression): Set idk properly for
        object->scope::member.

From-SVN: r62784

gcc/testsuite/g++.dg/overload/virtual1.C [new file with mode: 0644]

diff --git a/gcc/testsuite/g++.dg/overload/virtual1.C b/gcc/testsuite/g++.dg/overload/virtual1.C
new file mode 100644 (file)
index 0000000..8940aef
--- /dev/null
@@ -0,0 +1,21 @@
+// Test that explicit scope suprresses virtual lookup even after an
+// explicit object.
+
+extern "C" int printf (const char *, ...);
+
+struct A
+{
+  virtual int f () { return 0; }
+};
+
+struct B: public A
+{
+  int f () { return 1; }
+  int g() { return this->A::f(); }
+};
+
+int main()
+{
+  B b;
+  return b.g();
+}