Ivan Kylchik
a993939127
[FIR] Allow constant values for IntrinsicConstEvaluation declarations
2022-05-18 21:19:55 +03:00
Denis.Zharkov
b87412c5af
FIR2IR: Fix substitution work for context receivers
2022-05-13 18:04:02 +00:00
Dmitriy Novozhilov
2796d21ec6
[FIR] Create snapshot of tower data context for postponed callable referneces
...
This fixes an issue if type of some implicit receiver was changed because
of changed smartcast in outer scope
^KT-51228 Fixed
2022-05-12 12:15:31 +03:00
Ilya Kirillov
6e0eba7e00
[low level api] fix ISE: Expected FirResolvedTypeRef with ConeKotlinType but was FirImplicitTypeRefImpl for CheckDslScopeViolation
2022-05-11 13:14:44 +02:00
Victor Petukhov
20a8e5d742
[FE] Determine intersection type emptiness by looking at supertypes properly: substitute their type arguments
2022-04-27 19:50:29 +00:00
Victor Petukhov
54f0794ce3
[FE] Substitute erased type parameters as covariant
2022-04-27 19:50:28 +00:00
Victor Petukhov
39d13442be
[FE] Support intersection type emptiness checking for interfaces
2022-04-27 19:50:25 +00:00
Victor Petukhov
e0a1f1c405
[FE] Review fixes
2022-04-27 19:50:24 +00:00
Victor Petukhov
47d6236a2d
[FIR] Support determining emptiness of an intersection type with type parameters' types
2022-04-27 19:50:23 +00:00
Victor Petukhov
313da6f41e
[FIR] Unbind type parameter erasing from java
2022-04-27 19:50:23 +00:00
Victor Petukhov
9e9e0211eb
[FE] Check if type variable is fixed into an empty intersection type and report resolution warnings/errors if needed (completion stage)
...
^KT-51221 Fixed
2022-04-27 19:50:18 +00:00
Victor Petukhov
8e834fc7bb
[FIR] Move subtyping helpers into TypeUtils.kt
2022-04-27 19:50:17 +00:00
Ivan Kochurkin
05bed8f751
[FIR] Hide local type for return type of single expression function ^KT-51418 Fixed
2022-04-18 15:36:18 +00:00
Dmitriy Novozhilov
b79f5a445f
[FIR] Use proper ReturnTypeCalculator inside FakeOverrideTypeCalculator
2022-04-07 12:18:49 +00:00
Dmitriy Novozhilov
6e2402620f
[FIR] Fix collecting member candidates on receiver with smartcast
...
^KT-51460 Fixed
^KT-51827
2022-04-07 12:18:48 +00:00
Denis.Zharkov
41bc842b9d
FIR: Support context receivers in Fir2Ir
2022-04-06 16:05:39 +00:00
Denis.Zharkov
ef84dddc88
FIR: Add preliminary support for context receivers in resolution
2022-04-06 16:05:32 +00:00
Denis.Zharkov
f3e28c3767
FIR: Prepare ConeAttribute infrastructure for non-singleton attrs
2022-04-06 16:05:25 +00:00
Mikhail Glukhikh
9bd6a9c069
FIR: handle 'SinceKotlin' as a special kind of deprecated
...
#KT-51850 Fixed
2022-04-06 12:51:20 +00:00
Ivan Kochurkin
1eefca4259
[FIR] Fix dependencies duplication
2022-04-05 15:50:44 +00:00
Dmitriy Novozhilov
5a3b397552
[FIR] Get rid of FirTypedDeclaration
...
`FirTypedDeclaration` has only one inheritor (`FirCallableDeclaration`),
so there is no much sense to keep this class
2022-04-04 15:23:58 +00:00
Dmitriy Novozhilov
ae0ce57b2c
[FIR] Don't force calculation of return type of overrides during status resolution
2022-04-04 15:23:57 +00:00
Dmitriy Novozhilov
effa3f197a
[FIR] Move ReturnTypeCalculator to :fir:providers module
...
Also make it an abstract class and turn ReturnTypeCalculatorForFullBodyResolve
into object (because it has no state and there is no need to create
different instances of it)
2022-04-04 15:23:56 +00:00
Dmitriy Novozhilov
ff1e2c05bf
[FIR] Fix declaration specificity rules
...
Handle visibility of declarations and setters of properties
2022-04-04 15:23:56 +00:00
Dmitriy Novozhilov
caffe36181
[FIR] Move utilities for matching overrides into separate session component
2022-04-04 15:23:55 +00:00
simon.ogorodnik
03bb482322
KT-45553. Hide declaration from star import if imported with alias
2022-03-29 23:38:42 +00:00
Evgeniy.Zhelenskiy
b6f2513dd2
[FIR] Introduce valueClassRepresentation to FIR
...
#KT-1179
2022-03-24 11:38:44 +00:00
Evgeniy.Zhelenskiy
28bf83ceac
[IR] Unite inline class and multi-field value class representation
...
#KT-1179
2022-03-24 11:38:43 +00:00
Evgeniy.Zhelenskiy
282ab398c6
[IR] Generify lowerings
...
#KT-1179
2022-03-24 11:38:42 +00:00
Victor Petukhov
b5933c70e2
[FE 1.0] Refactor error utils: split error entities and introduce error type and error scope kinds
2022-03-23 21:13:33 +00:00
Mikhail Glukhikh
bd790b792c
FIR: minor code cleanup
2022-03-15 13:21:01 +00:00
Simon Ogorodnik
f5b49e48ad
FIR. Remove visibility filtering from importing scopes
2022-03-10 20:42:38 +00:00
Simon Ogorodnik
ec3e2f7b99
FIR. Shadow classifiers from super-type scopes
2022-03-10 20:42:38 +00:00
Simon Ogorodnik
5ea1c246d7
FIR. Get rid of kotlin.Throws prioritization hack
2022-03-10 20:42:38 +00:00
Dmitriy Novozhilov
35a2a6bcec
[FIR] Store containingDeclarationSymbol for type parameters of substitution overrides
2022-02-28 11:42:33 +03:00
Ivan Kochurkin
31d9313c51
[FIR] Fix "Expected some types" exception, ^KT-51274 Fixed
2022-02-23 14:21:59 +03:00
Mikhail Glukhikh
981f8b1871
FIR: implement resolve of unqualified enum references in when
...
See KT-16768
2022-02-22 22:13:06 +03:00
Dmitriy Novozhilov
6105271d41
[FIR] Make internal declarations from dependsOn dependent modules visible
2022-02-18 17:44:36 +03:00
Dmitriy Novozhilov
ab1ff7baf5
[FIR] Prioritize source dependencies in dependency provider
2022-02-18 17:44:35 +03:00
Mikhail Glukhikh
c1925885fe
Extract ConeTypeSubstitutorByTypeConstructor
2022-02-17 15:04:37 +00:00
Mikhail Glukhikh
6e53dd1a4b
FIR: implement FE1.0-matching ILT approximation during inference
...
#KT-51357 Fixed
2022-02-17 15:04:37 +00:00
Mikhail Glukhikh
6506d35aa6
FIR: add forgotten ConeIntegerLiteralIntersector (relates to KT-51357)
2022-02-17 15:04:36 +00:00
Ivan Kochurkin
5391ee91af
[FIR2IR] Fix incorrect type of typealias for suspend functional type, ^KT-50997 Fixed
2022-02-07 17:21:59 +03:00
Dmitriy Novozhilov
1591518cf6
[FIR] Support constant unary operators for integer literal operators
...
^KT-38895
2022-02-07 13:36:37 +03:00
Dmitriy Novozhilov
52b72a7dac
[FIR] Implement Int -> Long conversions for literals and operators over them
...
^KT-38895
^KT-50996 Fixed
^KT-51000 Fixed
^KT-51003 Fixed
^KT-51018 Fixed
2022-02-07 13:36:36 +03:00
Dmitriy Novozhilov
b980f5ab32
[FIR] Introduce new kind of integer literal types for constant operator calls
2022-02-07 13:36:35 +03:00
Dmitriy Novozhilov
bb5217be72
[FIR] Don't create ILT for integer literal if its value don't fit to Int type
2022-02-07 13:36:34 +03:00
Dmitriy Novozhilov
0bd3e8f418
[FIR] Rename ConeClassErrorType to ConeErrorType, drop ConeKotlinErrorType alias
2022-02-07 13:36:33 +03:00
Dmitriy Novozhilov
84913772ec
[FIR] Drop redundant FirIntegerOperatorCall and number of fir copy methods
2022-02-07 13:36:32 +03:00
Mikhail Glukhikh
11bbd79c4b
FIR: replace ConeKotlinType with more concrete type when possible
2022-02-03 19:12:18 +03:00