Fix stub-psi mismatch exception on restoring annotation for nullable types

(cherry picked from commit 1aa37f11258dde289a9f7cb700294a038168fbdc)

Conflicts:
	compiler/frontend/src/org/jetbrains/kotlin/psi/stubs/KotlinStubVersions.kt
	idea/idea-analysis/src/org/jetbrains/kotlin/idea/decompiler/stubBuilder/TypeClsStubBuilder.kt
This commit is contained in:
Nikolay Krasko
2016-10-21 16:50:14 +03:00
parent e53940f4af
commit d1dfcfaca1
8 changed files with 258 additions and 18 deletions
+28
View File
@@ -4,3 +4,31 @@ PsiJetFileStubImpl[package=]
PROPERTY[fqName=foo, hasDelegate=false, hasDelegateExpression=false, hasInitializer=false, hasReturnTypeRef=true, isExtension=false, isTopLevel=true, isVar=false, name=foo]
TYPE_REFERENCE
DYNAMIC_TYPE
PROPERTY[fqName=foo_nullable, hasDelegate=false, hasDelegateExpression=false, hasInitializer=false, hasReturnTypeRef=true, isExtension=false, isTopLevel=true, isVar=false, name=foo_nullable]
TYPE_REFERENCE
NULLABLE_TYPE
DYNAMIC_TYPE
PROPERTY[fqName=foo_a, hasDelegate=false, hasDelegateExpression=false, hasInitializer=false, hasReturnTypeRef=true, isExtension=false, isTopLevel=true, isVar=false, name=foo_a]
TYPE_REFERENCE
ANNOTATION_ENTRY[hasValueArguments=false, shortName=A]
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
USER_TYPE
REFERENCE_EXPRESSION[referencedName=A]
DYNAMIC_TYPE
PROPERTY[fqName=foo_nullable_a, hasDelegate=false, hasDelegateExpression=false, hasInitializer=false, hasReturnTypeRef=true, isExtension=false, isTopLevel=true, isVar=false, name=foo_nullable_a]
TYPE_REFERENCE
ANNOTATION_ENTRY[hasValueArguments=false, shortName=A]
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
USER_TYPE
REFERENCE_EXPRESSION[referencedName=A]
NULLABLE_TYPE
DYNAMIC_TYPE
CLASS[fqName=A, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=true, name=A, superNames=[]]
MODIFIER_LIST[annotation]
ANNOTATION_ENTRY[hasValueArguments=true, shortName=Target]
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
USER_TYPE
REFERENCE_EXPRESSION[referencedName=Target]
+7 -1
View File
@@ -1 +1,7 @@
val foo: dynamic
val foo: dynamic
val foo_nullable: dynamic?
val foo_a: @A dynamic
val foo_nullable_a: @A dynamic?
@Target(AnnotationTarget.TYPE, AnnotationTarget.TYPE_PARAMETER)
annotation class A