Dmitriy Novozhilov
624b9306f0
[FIR] Resolve LHS of type operator call in independent context
...
#KT-39046 Fixed
2020-07-02 15:10:51 +03:00
Jinseong Jeon
c9e423bf64
FIR deserializer: fix parameter shift for constructor of inner classes and enums
...
#KT-39837 Fixed
2020-07-02 13:34:39 +03:00
Jinseong Jeon
34174d6e7d
FIR deserializer: load annotations for property and fields, along with use-site targets
2020-06-30 17:28:22 +03:00
Dmitriy Novozhilov
309050d956
[FIR] Add ExtensionFunctionType attribute
...
#KT-39034 Fixed
2020-06-30 11:30:19 +03:00
Jinseong Jeon
fab9ee47f9
FIR deserializer: proper annotation loading for value parameter of property setter
2020-06-30 11:01:03 +03:00
Mikhail Glukhikh
c1609ed490
[FIR] Make expect class members also expect
2020-06-29 16:07:50 +03:00
Mikhail Zarechenskiy
9be8c5b527
Update test data about built-ins
2020-06-29 14:25:09 +03:00
Dmitriy Novozhilov
7834284bec
[FIR] Support deserialization of value parameter annotations
...
There are still some problems, see KT-39837
2020-06-29 12:19:03 +03:00
Dmitriy Novozhilov
dbbb999952
[FIR] Support builder (coroutine) inference
...
#KT-37431 Fixed
2020-06-29 12:19:02 +03:00
Mikhail Glukhikh
699829ccb3
Make FIR multi-module tests from IDE regular FIR compiler resolve tests
2020-06-25 12:35:25 +03:00
Ivan Kylchik
79691feb8f
Fix fir load compiled kotlin tests after introducing const deserializer
2020-06-25 12:30:24 +03:00
Ilya Gorbunov
696701d377
Drop deprecated MutableMap property delegation operator
2020-06-22 12:29:25 +03:00
Dmitriy Novozhilov
bd8eaad885
[FIR-TEST] Update cfg dumps in some tests
...
One of previous commit changed order for those graphs, but i didn't
find which one
2020-06-19 15:53:11 +03:00
Dmitriy Novozhilov
26458875d5
[FIR] Add checker for uninitialized properties
2020-06-19 15:53:09 +03:00
Dmitriy Novozhilov
12ed8c3bb4
[FIR-TEST] Update CFG dumps according to new nodes order
2020-06-19 15:53:04 +03:00
Dmitriy Novozhilov
87859b0faa
[FIR] Introduce new algorithm for building CFG for declarations
2020-06-19 15:53:00 +03:00
Dmitriy Novozhilov
950bbfe3a5
[FIR] Add kind for back edges in CFG
2020-06-19 15:53:00 +03:00
Dmitriy Novozhilov
65fae3bb0c
[FIR] Fix problem with local classes in anonymous objects
2020-06-19 15:52:58 +03:00
Jinseong Jeon
12181e55c0
FIR deserializer: signature-aware annotation loading for constructors
2020-06-19 10:21:09 +03:00
Jinseong Jeon
781bfa20e8
FIR deserializer: fix conversion of class literal inside annotation array value.
2020-06-19 10:21:09 +03:00
Jinseong Jeon
b076bec07f
FIR deserializer: signature-aware annotation loading for functions
2020-06-19 10:21:09 +03:00
simon.ogorodnik
1a7b30c13a
[FIR] Fix incorrect name in anonymous object class id
2020-06-16 00:01:06 +03:00
Dmitriy Novozhilov
d7ee168dff
[FIR] Create error candidate for completion instead of simple error reference
2020-06-15 15:32:25 +03:00
Denis Zharkov
7b61bf9178
FIR: Add nullability smartcast after !is check
...
^KT-39072 Fixed
2020-06-15 11:33:42 +03:00
Denis Zharkov
24948a8b3f
FIR: Fix incorrect handling bare types when subject is type alias
...
^KT-39043 Fixed
2020-06-15 11:33:42 +03:00
Denis Zharkov
5ab05e6e47
FIR: Fix incorrect resolution to synthetic property by implicit receiver
...
When there's an explicit one
^KT-39028 Fixed
2020-06-11 11:31:39 +03:00
Denis Zharkov
293f78efe8
FIR: Correct capturing for type-alias bases arguments
...
NB: The test data change at testData/diagnostics/tests/typealias/noApproximationInTypeAliasArgumentSubstitution.fir.kt
is correct: see the relevant non-fir test, the call shouldn't be applicable
^KT-39008 Fixed
2020-06-11 11:31:38 +03:00
Denis Zharkov
bea37569e6
FIR: Fix processOverriddenFunctions implementations
2020-06-11 11:31:36 +03:00
Denis Zharkov
38922a84f1
FIR: Do not create synthetic properties for non-Java accessors
...
^KT-35495 Fixed
2020-06-11 11:01:43 +03:00
Jinseong Jeon
fd32e918d5
FIR deserializer: signature-aware annotation loading for property accessors
2020-06-11 10:57:51 +03:00
Jinseong Jeon
2d55b8db07
FIR deserializer: build property accessors if non-default ones exist
2020-06-11 10:57:51 +03:00
simon.ogorodnik
ab02381a83
[FIR] Make overriding generic callables independent of TP bounds order
2020-06-05 17:46:35 +03:00
simon.ogorodnik
2287435740
[FIR] KT-39033: Fix generic property override detection
...
#KT-39033 Fixed
2020-06-05 17:46:35 +03:00
Mikhail Glukhikh
1ea72ec378
Fix test data in FIR diagnostic test (merge with local eff. visibility)
2020-06-04 10:35:01 +03:00
Jinseong Jeon
0d6e309372
FIR: construct type with actual type arguments during GetClassCall transformation
2020-06-04 10:13:37 +03:00
Denis Zharkov
55a4c40970
FIR: Fix diagnostics test data after safe-call refactoring
...
^KT-38444 In Progress
2020-06-03 10:43:37 +03:00
Denis Zharkov
723b275d99
FIR: Fix rendered fir and DFA graph test data after safe-calls refactoring
...
^KT-38444 In Progress
2020-06-03 10:43:37 +03:00
Denis Zharkov
7ba1371466
FIR: Support safe-calls new format in body resolution
...
^KT-38444 In Progress
2020-06-03 10:43:37 +03:00
Denis Zharkov
be4d3783a4
FIR: Fix type resolution for anonymous objects
...
^KT-39050 Fixed
2020-06-03 10:43:37 +03:00
Denis Zharkov
4d484dd971
FIR: Support java array in type argument
...
^KT-37321 Fixed
2020-06-03 10:43:37 +03:00
Mikhail Glukhikh
0ffa0b2bd7
[FIR] Fix effective visibility handling for local members
...
In future 'Local' effective visibility could be used
as a flag of local declaration
2020-06-02 18:47:58 +03:00
Mikhail Glukhikh
72dd2ef448
[FIR] Fix CFG building for secondary constructor with delegation
2020-06-02 16:12:32 +03:00
Mikhail Glukhikh
718f0240a1
[FIR TEST] Add problematic CFG test
2020-06-02 16:12:21 +03:00
Alexander Udalov
4520e02bae
Support fun interfaces in kotlinx-metadata
...
#KT-37421 Fixed
2020-05-27 23:29:12 +02:00
Mikhail Likholetov
80cd26c9df
[FIR] Support several annotation class diagnostics
2020-05-21 18:01:36 +03:00
Kevin Most
4f26ac9a04
Fix "Koltin" typos throughout codebase ( #3383 )
...
* Fix "Koltin" typos throughout codebase
* Update K2MetadataKlibSerializer.kt
2020-05-20 15:12:32 +03:00
Denis Zharkov
e1e149a062
FIR: Support coercion-to-unit semantics for callable references
2020-05-18 11:17:45 +03:00
Denis Zharkov
b691b13d8e
FIR: Add separate local scopes for blocks
2020-05-15 16:04:44 +03:00
Denis Zharkov
0ef1628751
FIR: Refactor scope structure on body resolve stage
...
Before this change:
- Local scopes, implicit receivers and type parameter scopes were separated.
- Static scopes for super classes were not present as a concept.
Instead of them, all-inherited-static for the current class has been used.
- During call resolution we were processing implicit receivers first and then non-local scopes,
while we should process them in the order of their syntax appearance from the closest
to the most distant
All these facts affect semantics (see test data changed here and the following commits)
The architecture changes are the following:
- FirTowerDataElement introduced as tower level that is used in resolution
(effectively it's a union type between scope and implicit receiver + isLocal flag)
- FirTowerDataContext introduced for sake of encapsulation of tower data elements' list
(it also has redundant implicitReceiverStack and localScopes)
- For each regular class we collect relevant tower data elements and add them to the current context
- Also, we preserve a special tower data context for static entities of the class
(it doesn't have class' dispatch receiver and generic parameters)
2020-05-15 16:04:44 +03:00
simon.ogorodnik
86683e94fc
[FIR] Fix cfg crash with multiple postponed arguments
2020-05-13 19:20:02 +03:00