Redeclaration errors for type aliases: type alias vs function.

This commit is contained in:
Dmitry Petrov
2016-06-09 15:21:53 +03:00
parent 5ad4c8b9c7
commit 12710bec2f
8 changed files with 121 additions and 37 deletions
@@ -0,0 +1,13 @@
class C(val x: Int)
<!CONFLICTING_OVERLOADS!>typealias CC = C<!>
<!CONFLICTING_OVERLOADS!>fun CC(x: Int)<!> = x
class Outer {
class C(val x: Int)
<!CONFLICTING_OVERLOADS!>typealias CC = C<!>
<!CONFLICTING_OVERLOADS!>fun CC(x: Int)<!> = x
}
@@ -0,0 +1,29 @@
package
public typealias CC = C
public fun CC(/*0*/ x: kotlin.Int): kotlin.Int
public final class C {
public constructor C(/*0*/ x: kotlin.Int)
public final val x: kotlin.Int
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
public final class Outer {
public typealias CC = Outer.C
public constructor Outer()
public final fun CC(/*0*/ x: kotlin.Int): kotlin.Int
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
public final class C {
public constructor C(/*0*/ x: kotlin.Int)
public final val x: kotlin.Int
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
}
@@ -6,11 +6,11 @@ typealias <!REDECLARATION!>SomeClass<!> = Any
typealias <!REDECLARATION!>SomeClass<!> = Any
class Outer {
class <!REDECLARATION!>Nested<!>
class <!REDECLARATION, CONFLICTING_OVERLOADS!>Nested<!>
typealias <!REDECLARATION!>Nested<!> = Any
typealias <!REDECLARATION!>Nested<!> = Any
typealias <!REDECLARATION!>Nested<!> = Any
<!CONFLICTING_OVERLOADS!>typealias <!REDECLARATION!>Nested<!> = Any<!>
<!CONFLICTING_OVERLOADS!>typealias <!REDECLARATION!>Nested<!> = Any<!>
<!CONFLICTING_OVERLOADS!>typealias <!REDECLARATION!>Nested<!> = Any<!>
}
// FILE: file2.kt