Fix types enhancement for properties' getters overrides in Java

Prior to the 1.1.4, nullability related annotations were stored
in types that became hard to maintain at some moment and
we got rid of it (see 57b7b91444)

But enhancement for properties overrides stopped working
because there were effectively no annotations in the
resulting descriptor

 #KT-19409 Fixed

 #KT-19409 Fixed
This commit is contained in:
Denis Zharkov
2017-08-10 17:14:37 +07:00
parent 9962fc88ca
commit ce37ab81ba
4 changed files with 63 additions and 3 deletions
@@ -0,0 +1,19 @@
// !DIAGNOSTICS: -UNUSED_PARAMETER
// FILE: VcsException.java
import org.jetbrains.annotations.NotNull;
public class VcsException extends Exception {
@Override
@NotNull
public String getMessage() {
return "";
}
}
// FILE: main.kt
fun foo(e: VcsException) {
e.message.contains("")
"" in e.message
}
public operator fun CharSequence.contains(other: CharSequence): Boolean = true
@@ -0,0 +1,26 @@
package
public fun foo(/*0*/ e: VcsException): kotlin.Unit
public operator fun kotlin.CharSequence.contains(/*0*/ other: kotlin.CharSequence): kotlin.Boolean
public open class VcsException : java.lang.Exception {
public constructor VcsException()
public open override /*1*/ /*fake_override*/ val cause: kotlin.Throwable?
public open override /*1*/ val message: kotlin.String
public final override /*1*/ /*fake_override*/ fun addSuppressed(/*0*/ exception: kotlin.Throwable!): kotlin.Unit
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun fillInStackTrace(): kotlin.Throwable!
public open override /*1*/ /*fake_override*/ fun getLocalizedMessage(): kotlin.String!
public open override /*1*/ /*fake_override*/ fun getStackTrace(): kotlin.Array<(out) java.lang.StackTraceElement!>!
public final override /*1*/ /*fake_override*/ fun getSuppressed(): kotlin.Array<(out) kotlin.Throwable!>!
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun initCause(/*0*/ cause: kotlin.Throwable!): kotlin.Throwable!
public open override /*1*/ /*fake_override*/ fun printStackTrace(): kotlin.Unit
public open override /*1*/ /*fake_override*/ fun printStackTrace(/*0*/ s: java.io.PrintStream!): kotlin.Unit
public open override /*1*/ /*fake_override*/ fun printStackTrace(/*0*/ s: java.io.PrintWriter!): kotlin.Unit
public open override /*1*/ /*fake_override*/ fun setStackTrace(/*0*/ stackTrace: kotlin.Array<(out) java.lang.StackTraceElement!>!): kotlin.Unit
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
// Static members
invisible_fake const final override /*1*/ /*fake_override*/ val serialVersionUID: kotlin.Long = -3387516993124229948.toLong()
}