Richard Trieu | 304e233 | 2011-07-01 20:02:53 +0000 | [diff] [blame] | 1 | // RUN: %clang_cc1 -fsyntax-only -verify %s |
2 | |||||
3 | struct BaseReturn {}; | ||||
4 | |||||
5 | struct Base { | ||||
6 | virtual BaseReturn Foo() = 0; // expected-note{{overridden virtual function is here}} | ||||
7 | }; | ||||
8 | struct X {}; | ||||
9 | struct Derived : Base { | ||||
10 | X Foo(); // expected-error{{virtual function 'Foo' has a different return type ('X') than the function it overrides (which has return type 'BaseReturn')}} | ||||
11 | }; | ||||
12 | |||||
13 | Derived d; |