mirror of
https://github.com/dlang/dmd.git
synced 2025-04-26 05:00:16 +03:00
38 lines
1.2 KiB
D
38 lines
1.2 KiB
D
/*
|
|
TEST_OUTPUT:
|
|
---
|
|
fail_compilation/diag8318.d(18): Error: function `diag8318.Bar8318.foo` return type inference is not supported if may override base class function
|
|
fail_compilation/diag8318.d(23): Error: function `diag8318.C10021.makeI` return type inference is not supported if may override base class function
|
|
fail_compilation/diag8318.d(31): Error: function `diag8318.Bar10195.baz` return type inference is not supported if may override base class function
|
|
fail_compilation/diag8318.d(37): Error: function `diag8318.B14173.foo` does not override any function
|
|
fail_compilation/diag8318.d(23): Error: class `diag8318.C10021` interface function `I10021 makeI()` is not implemented
|
|
fail_compilation/diag8318.d(29): Error: class `diag8318.Bar10195` interface function `int baz()` is not implemented
|
|
---
|
|
*/
|
|
class Foo8318
|
|
{
|
|
auto foo() { return "Foo.foo"; }
|
|
}
|
|
class Bar8318 : Foo8318
|
|
{
|
|
override auto foo() { return "Bar.foo"; }
|
|
}
|
|
|
|
interface I10021 { I10021 makeI(); }
|
|
class D10021 : I10021 { D10021 makeI() { return this; } }
|
|
class C10021 : I10021 { auto makeI() { return this; } }
|
|
|
|
interface Foo10195
|
|
{
|
|
int baz();
|
|
}
|
|
class Bar10195 : Foo10195
|
|
{
|
|
override auto baz() { return 1; }
|
|
}
|
|
|
|
class A14173 {}
|
|
class B14173 : A14173
|
|
{
|
|
override foo() {}
|
|
}
|