[K2] Resolve bodies of const properties during IMPLICIT_TYPES_BODY_RESOLVE

This is required to implement constant evaluator on the FIR level.

#KT-64151
This commit is contained in:
Ivan Kylchik
2024-01-25 14:50:32 +01:00
committed by Space Team
parent 0ebf2862a9
commit 61fabc02ba
9 changed files with 58 additions and 34 deletions
+2 -1
View File
@@ -23,7 +23,8 @@ List of all FIR phases that exist in the compiler right now with a short descrip
- **STATUS**: The compiler resolves modality, visibility, and modifiers for member declarations.
- **EXPECT_ACTUAL_MATCHING**: The compiler matches and records an `expect` member declaration for `actual` member declarations.
- **CONTRACTS**: The compiler resolves a contract definition in property accessors, functions, and constructors.
- **IMPLICIT_TYPES_BODY_RESOLVE**: The compiler resolves types for callable declarations without an explicit return type.
- **IMPLICIT_TYPES_BODY_RESOLVE**: The compiler resolves types for callable declarations without an explicit return type.
Also resolves initializers of const properties.
- **CONSTANT_EVALUATION**: The compiler evaluates values of const properties and defaults of annotations' constructors.
- **ANNOTATION_ARGUMENTS**: The compiler resolves arguments of annotations in declaration headers.
- **BODY_RESOLVE**: The compiler resolves bodies for declarations.