[FIR] pass correct scope during annotation resolve for local declarations

We should pass container for correct logic around CLASS_HEADER_ANNOTATIONS.
Also, such correct containers will be used in the context of KT-63042 to
correctly detect an annotation ownership

^KT-63042
^KT-63842 Fixed
This commit is contained in:
Dmitrii Gridin
2023-11-27 19:11:32 +01:00
committed by Space Team
parent fcb3f003dc
commit 06aad65ed3
27 changed files with 131 additions and 146 deletions
@@ -5,7 +5,7 @@ fun foo() {
class OriginalClass<T> {
val prop = 0
<!TOPLEVEL_TYPEALIASES_ONLY!>@Anno("alias $<!UNRESOLVED_REFERENCE!>prop<!>")
typealias NestedTypeAlias <@Anno("type param $<!UNRESOLVED_REFERENCE!>prop<!>") A : <!BOUND_ON_TYPE_ALIAS_PARAMETER_NOT_ALLOWED!>@Anno("bound $<!UNRESOLVED_REFERENCE!>prop<!>") Number<!>> = @Anno("type $<!UNRESOLVED_REFERENCE!>prop<!>") OriginalClass<A><!>
<!TOPLEVEL_TYPEALIASES_ONLY!>@Anno(<!NON_CONST_VAL_USED_IN_CONSTANT_EXPRESSION!>"alias $prop"<!>)
typealias NestedTypeAlias <@Anno(<!NON_CONST_VAL_USED_IN_CONSTANT_EXPRESSION!>"type param $prop"<!>) A : <!BOUND_ON_TYPE_ALIAS_PARAMETER_NOT_ALLOWED!>@Anno(<!NON_CONST_VAL_USED_IN_CONSTANT_EXPRESSION!>"bound $prop"<!>) Number<!>> = @Anno(<!NON_CONST_VAL_USED_IN_CONSTANT_EXPRESSION!>"type $prop"<!>) OriginalClass<A><!>
}
}