d: Merge upstream dmd, druntime 4c18eed967, phobos d945686a4.
[official-gcc.git] / gcc / testsuite / gdc.test / fail_compilation / diag8318.d
blob99dc6c41d11acf506c3c2aea1e000c5c3d337fc7
1 /*
2 TEST_OUTPUT:
3 ---
4 fail_compilation/diag8318.d(18): Error: function `diag8318.Bar8318.foo` return type inference is not supported if may override base class function
5 fail_compilation/diag8318.d(23): Error: function `diag8318.C10021.makeI` return type inference is not supported if may override base class function
6 fail_compilation/diag8318.d(31): Error: function `diag8318.Bar10195.baz` return type inference is not supported if may override base class function
7 fail_compilation/diag8318.d(37): Error: function `diag8318.B14173.foo` does not override any function
8 fail_compilation/diag8318.d(23): Error: class `diag8318.C10021` interface function `I10021 makeI()` is not implemented
9 fail_compilation/diag8318.d(29): Error: class `diag8318.Bar10195` interface function `int baz()` is not implemented
10 ---
12 class Foo8318
14 auto foo() { return "Foo.foo"; }
16 class Bar8318 : Foo8318
18 override auto foo() { return "Bar.foo"; }
21 interface I10021 { I10021 makeI(); }
22 class D10021 : I10021 { D10021 makeI() { return this; } }
23 class C10021 : I10021 { auto makeI() { return this; } }
25 interface Foo10195
27 int baz();
29 class Bar10195 : Foo10195
31 override auto baz() { return 1; }
34 class A14173 {}
35 class B14173 : A14173
37 override foo() {}