Can't omit default object name in imports and types
There should be only one way to denote a type (A.Default.B can't be denoted as A.B)
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
package f
|
||||
|
||||
import f.A.B
|
||||
import f.A.Default.B
|
||||
|
||||
class A {
|
||||
class object {
|
||||
|
||||
@@ -5,12 +5,12 @@ import b.B //class
|
||||
import b.foo //function
|
||||
import b.ext //extension function
|
||||
import b.value //property
|
||||
import b.C.<!CANNOT_BE_IMPORTED!>bar<!> //function from class object
|
||||
import b.C.<!CANNOT_BE_IMPORTED!>cValue<!> //property from class object
|
||||
import b.C.Default.<!CANNOT_BE_IMPORTED!>bar<!> //function from class object
|
||||
import b.C.Default.<!CANNOT_BE_IMPORTED!>cValue<!> //property from class object
|
||||
import b.<!CANNOT_IMPORT_FROM_ELEMENT!>constant<!>.<!DEBUG_INFO_MISSING_UNRESOLVED!>fff<!> //function from val
|
||||
import b.<!CANNOT_IMPORT_FROM_ELEMENT!>constant<!>.<!DEBUG_INFO_MISSING_UNRESOLVED!>dValue<!> //property from val
|
||||
import b.constant
|
||||
import b.E.<!CANNOT_BE_IMPORTED!>f<!> //val from class object
|
||||
import b.E.Default.<!CANNOT_BE_IMPORTED!>f<!> //val from class object
|
||||
import <!UNRESOLVED_REFERENCE!>smth<!>.<!DEBUG_INFO_MISSING_UNRESOLVED!>illegal<!>
|
||||
import b.C.<!UNRESOLVED_REFERENCE!>smth<!>.<!DEBUG_INFO_MISSING_UNRESOLVED!>illegal<!>
|
||||
import b.<!CANNOT_IMPORT_FROM_ELEMENT!>bar<!>.<!DEBUG_INFO_MISSING_UNRESOLVED!>smth<!>
|
||||
@@ -85,8 +85,8 @@ fun foo() {
|
||||
//FILE:d.kt
|
||||
package d
|
||||
|
||||
import d.A.B
|
||||
import d.A.C
|
||||
import d.A.Default.B
|
||||
import d.A.Default.C
|
||||
|
||||
val b : B = B()
|
||||
val c : B = C
|
||||
|
||||
+5
-5
@@ -21,10 +21,10 @@ public class M1 {
|
||||
public val a: A = A()
|
||||
public val b: A.B = A.B()
|
||||
public val c: A.C = A.C
|
||||
public val d: A.D = A.D()
|
||||
public val e: A.D.E = A.D.E
|
||||
public val d: A.Default.D = A.D()
|
||||
public val e: A.Default.D.E = A.D.E
|
||||
public val f: A.F = A().F()
|
||||
public val g: A.G = A.G()
|
||||
public val g: A.Default.G = A.G()
|
||||
}
|
||||
|
||||
// MODULE: m2
|
||||
@@ -47,8 +47,8 @@ public class A {
|
||||
public fun a(p: A) {}
|
||||
public fun b(p: A.B) {}
|
||||
public fun c(p: A.C) {}
|
||||
public fun d(p: A.D) {}
|
||||
public fun e(p: A.D.E) {}
|
||||
public fun d(p: A.Default.D) {}
|
||||
public fun e(p: A.Default.D.E) {}
|
||||
public fun f(p: A.F) {}
|
||||
public fun g(p: A.G) {}
|
||||
|
||||
|
||||
+1
-1
@@ -10,6 +10,6 @@ class Foo {
|
||||
}
|
||||
class User {
|
||||
fun main() : Unit {
|
||||
var <!UNUSED_VARIABLE!>boo<!> : Foo.Bar? /* <-- this reference is red */ = Foo.Bar()
|
||||
var <!UNUSED_VARIABLE!>boo<!> : Foo.Default.Bar? /* <-- this reference is red */ = Foo.Default.Bar()
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
// import all members from class object
|
||||
package c
|
||||
|
||||
import c.A.*
|
||||
import c.A.Default.B
|
||||
import c.<!CANNOT_IMPORT_ON_DEMAND_FROM_SINGLETON!>M<!>.*
|
||||
|
||||
fun foo() {
|
||||
|
||||
@@ -36,8 +36,8 @@ object N {
|
||||
package b
|
||||
|
||||
import b.N.M
|
||||
import b.A.P
|
||||
import b.A.B
|
||||
import b.A.Default.P
|
||||
import b.A.Default.B
|
||||
|
||||
fun foo() {
|
||||
val <!UNUSED_VARIABLE!>b<!> : B = B()
|
||||
|
||||
Reference in New Issue
Block a user