* platforms/linux.make (platform-check): Make more robust.
[mono.git] / mcs / btests / InterfaceC6.vb
1 REM LineNo: 34
2 REM ExpectedError: BC30149
3 REM ErrorMessage: 'C1' must implement 'Sub S(a As Integer, [b As Integer = 20])' for interface 'I'.
4
5 REM LineNo: 35
6 REM ExpectedError: BC30401
7 REM ErrorMessage: 'S' cannot implement 'S' because there is no matching sub on interface 'I'.
8
9 REM LineNo: 37
10 REM ExpectedError: BC30300
11 REM ErrorMessage: 'Public Sub S(ByRef a As Integer)' and 'Public Sub S(a As Integer, [b As Integer = 30])' cannot overload each other because they differ only by optional parameters.
12
13 REM LineNo: 37
14 REM ExpectedError: BC30345
15 REM ErrorMessage: 'Public Sub S(ByRef a As Integer)' and 'Public Sub S(a As Integer, [b As Integer = 30])' cannot overload each other because they differ only by parameters declared 'ByRef' or 'ByVal'.
16
17 REM LineNo: 37
18 REM ExpectedError: BC30401
19 REM ErrorMessage: 'S' cannot implement 'S' because there is no matching sub on interface 'I'.
20
21 REM LineNo: 39
22 REM ExpectedError: BC30401
23 REM ErrorMessage: 'S' cannot implement 'S' because there is no matching sub on interface 'I'.
24
25 REM LineNo: 44
26 REM ExpectedError: BC30583
27 REM ErrorMessage: 'I.S' cannot be implemented more than once.
28
29 Imports System
30 Interface I
31         Sub S(byVal a As Integer,Optional b As Integer=20)      
32 End Interface
33 Class C1
34         Implements I
35         Sub S() Implements I.S
36         End Sub
37         Sub S(byRef a As Integer) Implements I.S
38         End Sub
39         Sub S(byVal a as Integer, Optional b As Integer=30) Implements I.S
40         End Sub
41 End Class
42 Class C2        'Class implements the same method more than once
43         Implements I
44         Public Sub S(byVal a As Integer,Optional b As Integer=20) Implements I.S
45         End Sub
46         Public Sub H(byVal a As Integer,Optional b As Integer=20) Implements I.S
47         End Sub
48 End Class
49 Module InterfaceC6
50         Sub Main()
51                 
52         End Sub
53 End Module
54