[FIR] Ignore failing test, improve DiagnosticKind, fix UPPER_BOUND
This commit is contained in:
+1
-1
@@ -8,6 +8,6 @@ open class Base {
|
||||
|
||||
class Derived : Base() {
|
||||
|
||||
@<!OTHER_ERROR!>Foo<!>
|
||||
@<!UNRESOLVED_REFERENCE!>Foo<!>
|
||||
fun foo() = 42
|
||||
}
|
||||
Vendored
+14
-14
@@ -72,28 +72,28 @@ class C : O.B() {
|
||||
val n: FromCompanionC? = null
|
||||
|
||||
// INVISIBLE: direct superclasses themselves.
|
||||
val a: <!OTHER_ERROR!>A?<!> = null
|
||||
val b: <!OTHER_ERROR!>B?<!> = null
|
||||
val a: <!UNRESOLVED_REFERENCE!>A?<!> = null
|
||||
val b: <!UNRESOLVED_REFERENCE!>B?<!> = null
|
||||
|
||||
// DEPRECATED: Classifiers from companions of direct superclasses
|
||||
val e: <!OTHER_ERROR!>FromCompanionA?<!> = null
|
||||
val f: <!OTHER_ERROR!>FromCompanionB?<!> = null
|
||||
val e: <!UNRESOLVED_REFERENCE!>FromCompanionA?<!> = null
|
||||
val f: <!UNRESOLVED_REFERENCE!>FromCompanionB?<!> = null
|
||||
|
||||
// INVISIBLE: "cousin" supertypes themselves
|
||||
val g: <!OTHER_ERROR!>Alpha?<!> = null
|
||||
val h: <!OTHER_ERROR!>Beta?<!> = null
|
||||
val i: <!OTHER_ERROR!>Gamma?<!> = null
|
||||
val g: <!UNRESOLVED_REFERENCE!>Alpha?<!> = null
|
||||
val h: <!UNRESOLVED_REFERENCE!>Beta?<!> = null
|
||||
val i: <!UNRESOLVED_REFERENCE!>Gamma?<!> = null
|
||||
|
||||
// DEPRECATED: classifiers from "cousin" superclasses
|
||||
val k: <!OTHER_ERROR!>FromAlpha?<!> = null
|
||||
val l: <!OTHER_ERROR!>FromBeta?<!> = null
|
||||
val m: <!OTHER_ERROR!>FromGamma?<!> = null
|
||||
val k: <!UNRESOLVED_REFERENCE!>FromAlpha?<!> = null
|
||||
val l: <!UNRESOLVED_REFERENCE!>FromBeta?<!> = null
|
||||
val m: <!UNRESOLVED_REFERENCE!>FromGamma?<!> = null
|
||||
|
||||
// INVISIBLE: We don't see classifiers from companions of "cousin" superclasses
|
||||
val o: <!OTHER_ERROR!>FromCompanionAlpha?<!> = null
|
||||
val p: <!OTHER_ERROR!>FromCompanionBeta?<!> = null
|
||||
val q: <!OTHER_ERROR!>FromCompanionGamma?<!> = null
|
||||
val o: <!UNRESOLVED_REFERENCE!>FromCompanionAlpha?<!> = null
|
||||
val p: <!UNRESOLVED_REFERENCE!>FromCompanionBeta?<!> = null
|
||||
val q: <!UNRESOLVED_REFERENCE!>FromCompanionGamma?<!> = null
|
||||
|
||||
// DEPRECATED: Classifiers from supertypes of our own companion
|
||||
val r: <!OTHER_ERROR!>FromDelta?<!> = null
|
||||
val r: <!UNRESOLVED_REFERENCE!>FromDelta?<!> = null
|
||||
}
|
||||
Vendored
+14
-14
@@ -71,28 +71,28 @@ class C : O.B() {
|
||||
val n: FromCompanionC? = null
|
||||
|
||||
// INVISIBLE: direct superclasses themselves.
|
||||
val a: <!OTHER_ERROR!>A?<!> = null
|
||||
val b: <!OTHER_ERROR!>B?<!> = null
|
||||
val a: <!UNRESOLVED_REFERENCE!>A?<!> = null
|
||||
val b: <!UNRESOLVED_REFERENCE!>B?<!> = null
|
||||
|
||||
// DEPRECATED: Classifiers from companions of direct superclasses
|
||||
val e: <!OTHER_ERROR!>FromCompanionA?<!> = null
|
||||
val f: <!OTHER_ERROR!>FromCompanionB?<!> = null
|
||||
val e: <!UNRESOLVED_REFERENCE!>FromCompanionA?<!> = null
|
||||
val f: <!UNRESOLVED_REFERENCE!>FromCompanionB?<!> = null
|
||||
|
||||
// INVISIBLE: "cousin" supertypes themselves
|
||||
val g: <!OTHER_ERROR!>Alpha?<!> = null
|
||||
val h: <!OTHER_ERROR!>Beta?<!> = null
|
||||
val i: <!OTHER_ERROR!>Gamma?<!> = null
|
||||
val g: <!UNRESOLVED_REFERENCE!>Alpha?<!> = null
|
||||
val h: <!UNRESOLVED_REFERENCE!>Beta?<!> = null
|
||||
val i: <!UNRESOLVED_REFERENCE!>Gamma?<!> = null
|
||||
|
||||
// DEPRECATED: classifiers from "cousin" superclasses
|
||||
val k: <!OTHER_ERROR!>FromAlpha?<!> = null
|
||||
val l: <!OTHER_ERROR!>FromBeta?<!> = null
|
||||
val m: <!OTHER_ERROR!>FromGamma?<!> = null
|
||||
val k: <!UNRESOLVED_REFERENCE!>FromAlpha?<!> = null
|
||||
val l: <!UNRESOLVED_REFERENCE!>FromBeta?<!> = null
|
||||
val m: <!UNRESOLVED_REFERENCE!>FromGamma?<!> = null
|
||||
|
||||
// INVISIBLE: We don't see classifiers from companions of "cousin" superclasses
|
||||
val o: <!OTHER_ERROR!>FromCompanionAlpha?<!> = null
|
||||
val p: <!OTHER_ERROR!>FromCompanionBeta?<!> = null
|
||||
val q: <!OTHER_ERROR!>FromCompanionGamma?<!> = null
|
||||
val o: <!UNRESOLVED_REFERENCE!>FromCompanionAlpha?<!> = null
|
||||
val p: <!UNRESOLVED_REFERENCE!>FromCompanionBeta?<!> = null
|
||||
val q: <!UNRESOLVED_REFERENCE!>FromCompanionGamma?<!> = null
|
||||
|
||||
// DEPRECATED: Classifiers from supertypes of our own companion
|
||||
val r: <!OTHER_ERROR!>FromDelta?<!> = null
|
||||
val r: <!UNRESOLVED_REFERENCE!>FromDelta?<!> = null
|
||||
}
|
||||
-100
@@ -1,100 +0,0 @@
|
||||
// !LANGUAGE: +ProhibitVisibilityOfNestedClassifiersFromSupertypesOfCompanion
|
||||
// !DIAGNOSTICS: -UNUSED_VARIABLE
|
||||
|
||||
// See KT-21515 for a open class diagram and details
|
||||
|
||||
// Object is to prevent accidental short-name import
|
||||
object O {
|
||||
open class Alpha {
|
||||
open class FromAlpha
|
||||
|
||||
companion object {
|
||||
open class FromCompanionAlpha
|
||||
}
|
||||
}
|
||||
|
||||
open class Beta : Alpha() {
|
||||
open class FromBeta
|
||||
|
||||
companion object {
|
||||
open class FromCompanionBeta
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
open class A {
|
||||
open class FromA
|
||||
|
||||
companion object : Beta() {
|
||||
open class FromCompanionA
|
||||
}
|
||||
}
|
||||
|
||||
//////////////////////////
|
||||
|
||||
open class FarAway {
|
||||
open class FromFarAway
|
||||
|
||||
}
|
||||
|
||||
open class Gamma {
|
||||
open class FromGamma
|
||||
companion object : FarAway() {
|
||||
open class FromCompanionGamma
|
||||
}
|
||||
}
|
||||
|
||||
open class B : A() {
|
||||
open class FromB
|
||||
|
||||
companion object : Gamma() {
|
||||
open class FromCompanionB
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
///////////////////////////////
|
||||
|
||||
|
||||
open class Delta {
|
||||
open class FromDelta
|
||||
}
|
||||
|
||||
open class C : O.B() {
|
||||
companion object : Delta() {
|
||||
open class FromCompanionC
|
||||
}
|
||||
|
||||
// VISIBLE: Classifiers from direct superclasses
|
||||
open class c : FromA()
|
||||
open class d : FromB()
|
||||
|
||||
// VISIBLE: Classifiers from our own companion
|
||||
open class n : FromCompanionC()
|
||||
|
||||
// INVISIBLE: direct superclasses themselves.
|
||||
open class a : <!OTHER_ERROR!>A<!>()
|
||||
open class b : <!OTHER_ERROR!>B<!>()
|
||||
|
||||
// DEPRECATED: Classifiers from companions of direct superclasses
|
||||
open class e : <!OTHER_ERROR!>FromCompanionA<!>()
|
||||
open class f : <!OTHER_ERROR!>FromCompanionB<!>()
|
||||
|
||||
// INVISIBLE: "cousin" supertypes themselves
|
||||
open class g : <!OTHER_ERROR!>Alpha<!>()
|
||||
open class h : <!OTHER_ERROR!>Beta<!>()
|
||||
open class i : <!OTHER_ERROR!>Gamma<!>()
|
||||
|
||||
// DEPRECATED: classifiers from "cousin" superclasses
|
||||
open class k : <!OTHER_ERROR!>FromAlpha<!>()
|
||||
open class l : <!OTHER_ERROR!>FromBeta<!>()
|
||||
open class m : <!OTHER_ERROR!>FromGamma<!>()
|
||||
|
||||
// INVISIBLE: We don't see classifiers from companions of "cousin" superclasses
|
||||
open class o : <!OTHER_ERROR!>FromCompanionAlpha<!>()
|
||||
open class p : <!OTHER_ERROR!>FromCompanionBeta<!>()
|
||||
open class q : <!OTHER_ERROR!>FromCompanionGamma<!>()
|
||||
|
||||
// DEPRECATED: Classifiers from supertypes of our own companion
|
||||
open class r : <!OTHER_ERROR!>FromDelta<!>()
|
||||
}
|
||||
+1
@@ -1,3 +1,4 @@
|
||||
// FIR_IDENTICAL
|
||||
// !LANGUAGE: +ProhibitVisibilityOfNestedClassifiersFromSupertypesOfCompanion
|
||||
// !DIAGNOSTICS: -UNUSED_VARIABLE
|
||||
|
||||
|
||||
+14
-14
@@ -73,28 +73,28 @@ open class C : O.B() {
|
||||
open class n : FromCompanionC()
|
||||
|
||||
// INVISIBLE: direct superclasses themselves.
|
||||
open class a : <!OTHER_ERROR!>A<!>()
|
||||
open class b : <!OTHER_ERROR!>B<!>()
|
||||
open class a : <!UNRESOLVED_REFERENCE!>A<!>()
|
||||
open class b : <!UNRESOLVED_REFERENCE!>B<!>()
|
||||
|
||||
// DEPRECATED: Classifiers from companions of direct superclasses
|
||||
open class e : <!OTHER_ERROR!>FromCompanionA<!>()
|
||||
open class f : <!OTHER_ERROR!>FromCompanionB<!>()
|
||||
open class e : <!UNRESOLVED_REFERENCE!>FromCompanionA<!>()
|
||||
open class f : <!UNRESOLVED_REFERENCE!>FromCompanionB<!>()
|
||||
|
||||
// INVISIBLE: "cousin" supertypes themselves
|
||||
open class g : <!OTHER_ERROR!>Alpha<!>()
|
||||
open class h : <!OTHER_ERROR!>Beta<!>()
|
||||
open class i : <!OTHER_ERROR!>Gamma<!>()
|
||||
open class g : <!UNRESOLVED_REFERENCE!>Alpha<!>()
|
||||
open class h : <!UNRESOLVED_REFERENCE!>Beta<!>()
|
||||
open class i : <!UNRESOLVED_REFERENCE!>Gamma<!>()
|
||||
|
||||
// DEPRECATED: classifiers from "cousin" superclasses
|
||||
open class k : <!OTHER_ERROR!>FromAlpha<!>()
|
||||
open class l : <!OTHER_ERROR!>FromBeta<!>()
|
||||
open class m : <!OTHER_ERROR!>FromGamma<!>()
|
||||
open class k : <!UNRESOLVED_REFERENCE!>FromAlpha<!>()
|
||||
open class l : <!UNRESOLVED_REFERENCE!>FromBeta<!>()
|
||||
open class m : <!UNRESOLVED_REFERENCE!>FromGamma<!>()
|
||||
|
||||
// INVISIBLE: We don't see classifiers from companions of "cousin" superclasses
|
||||
open class o : <!OTHER_ERROR!>FromCompanionAlpha<!>()
|
||||
open class p : <!OTHER_ERROR!>FromCompanionBeta<!>()
|
||||
open class q : <!OTHER_ERROR!>FromCompanionGamma<!>()
|
||||
open class o : <!UNRESOLVED_REFERENCE!>FromCompanionAlpha<!>()
|
||||
open class p : <!UNRESOLVED_REFERENCE!>FromCompanionBeta<!>()
|
||||
open class q : <!UNRESOLVED_REFERENCE!>FromCompanionGamma<!>()
|
||||
|
||||
// DEPRECATED: Classifiers from supertypes of our own companion
|
||||
open class r : <!OTHER_ERROR!>FromDelta<!>()
|
||||
open class r : <!UNRESOLVED_REFERENCE!>FromDelta<!>()
|
||||
}
|
||||
-48
@@ -1,48 +0,0 @@
|
||||
// !LANGUAGE: +ProhibitVisibilityOfNestedClassifiersFromSupertypesOfCompanion
|
||||
// !DIAGNOSTICS: -UNUSED_PARAMETER -UNUSED_VARIABLE
|
||||
|
||||
// FILE: test/Java.java
|
||||
package test;
|
||||
|
||||
public class Java {
|
||||
public static void method() { }
|
||||
public static int property = 42;
|
||||
public static class Classifier { }
|
||||
public static void syntheticSam(Runnable r) { }
|
||||
|
||||
public static int getStaticSyntheticProperty() { return 42; }
|
||||
public static int setStaticSyntheticProperty(int x) { return 42; }
|
||||
|
||||
public int getInstanceSyntheticProperty() { return 42; }
|
||||
public int setInstanceSyntheticProperty(int x) { return 42; }
|
||||
}
|
||||
|
||||
// FILE: Kotlin.kt
|
||||
package test
|
||||
|
||||
open class Base {
|
||||
companion object : Java() {
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
class Derived : Base() {
|
||||
fun test(javaStaticInTypePosition: <!OTHER_ERROR!>Classifier<!>) {
|
||||
<!UNRESOLVED_REFERENCE!>method<!>()
|
||||
<!UNRESOLVED_REFERENCE!>property<!>
|
||||
<!UNRESOLVED_REFERENCE!>Classifier<!>()
|
||||
<!UNRESOLVED_REFERENCE!>syntheticSam<!> { }
|
||||
|
||||
// Instance members shouldn't be affected, but we check them, just in case
|
||||
val y = instanceSyntheticProperty
|
||||
instanceSyntheticProperty = 43
|
||||
|
||||
// Note that statics actually aren't converted into synthetic property in Kotlin
|
||||
val x = <!UNRESOLVED_REFERENCE!>syntheticProperty<!>
|
||||
<!UNRESOLVED_REFERENCE!>syntheticProperty<!> = 42
|
||||
}
|
||||
|
||||
class JavaStaticInSupertypeList : <!OTHER_ERROR!>Classifier<!>() {
|
||||
|
||||
}
|
||||
}
|
||||
@@ -1,3 +1,4 @@
|
||||
// FIR_IDENTICAL
|
||||
// !LANGUAGE: +ProhibitVisibilityOfNestedClassifiersFromSupertypesOfCompanion
|
||||
// !DIAGNOSTICS: -UNUSED_PARAMETER -UNUSED_VARIABLE
|
||||
|
||||
|
||||
+2
-2
@@ -27,7 +27,7 @@ open class Base {
|
||||
}
|
||||
|
||||
class Derived : Base() {
|
||||
fun test(javaStaticInTypePosition: <!OTHER_ERROR!>Classifier<!>) {
|
||||
fun test(javaStaticInTypePosition: <!UNRESOLVED_REFERENCE!>Classifier<!>) {
|
||||
<!UNRESOLVED_REFERENCE!>method<!>()
|
||||
<!UNRESOLVED_REFERENCE!>property<!>
|
||||
<!UNRESOLVED_REFERENCE!>Classifier<!>()
|
||||
@@ -42,7 +42,7 @@ class Derived : Base() {
|
||||
<!UNRESOLVED_REFERENCE!>syntheticProperty<!> = 42
|
||||
}
|
||||
|
||||
class JavaStaticInSupertypeList : <!OTHER_ERROR!>Classifier<!>() {
|
||||
class JavaStaticInSupertypeList : <!UNRESOLVED_REFERENCE!>Classifier<!>() {
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user