Mikhail Glukhikh
8a4105e542
IR: fix origin of default getter of Enum.entries synthetic property
2022-08-19 10:08:08 +00:00
Simon Ogorodnik
513af2dfbc
FIR. Refactor smart-cast representation in FIR tree
...
Make smart-casts non-transparent expression without delegation
to underlying FirQualifiedAccessExpression, as children delegation in
fir tree has unclear semantics
Remove two different kinds of tree nodes for smart-casts
2022-08-15 21:46:11 +00:00
Mikhail Glukhikh
12e8b1d844
K1: add support for Enum.entries synthetic property (see KT-48872)
...
#KT-53270 Fixed
2022-08-12 09:35:24 +00:00
Vsevolod Tolstopyatov
93f17a2b86
[FIR] Support static getters along with fake Enum.entries declaration in FIR
...
#KT-48872
2022-08-12 09:35:18 +00:00
Ivan Kylchik
45b89de9f4
Optimize ir interpretation of Enum.name
...
There is no need to create honest object in case of such simple
calculation. Furthermore, it can be harmful if enum class has
non-constant initializer or property.
#KT-53480 Fixed
2022-08-11 18:55:30 +03:00
Pavel Mikhailovskii
8ba80b4b7b
KT-1436 Allow break/continue in inlined lambdas
2022-08-11 10:38:23 +00:00
Sergej Jaskiewicz
5e34ae5e0d
[IR] Print annotations in source range compiler tests
2022-08-03 16:45:56 +00:00
Denis.Zharkov
7f7e5c5975
FIR: Fix candidate receivers orders when choosing a context receiver
...
^KT-53257 Fixed
2022-07-25 15:11:29 +00:00
Ivan Kylchik
008a5f02e5
Make enum entries to be interpreted in right order
...
#KT-53727 Fixed
2022-07-23 18:32:52 +00:00
Alexander Udalov
584b70719e
JVM IR: disable SAM conversion in case type has 'in' projection
...
... and the corresponding type parameter has a non-trivial (i.e.
non-`Any?`) upper bound.
The best solution here would be to get rid of
`removeExternalProjections` completely, and just use the type of the
argument at the call site, but see KT-52428.
#KT-51868 Fixed
2022-07-23 01:10:53 +02:00
Mikhail Glukhikh
3ae75a5094
FIR2IR: generate annotations on fake override parameters #KT-53208 Fixed
2022-07-22 16:39:52 +00:00
Mikhail Glukhikh
5445f4043a
K2: expand types during smartcasting to prevent redundant intersections
...
#KT-53184 Fixed
2022-07-22 16:39:52 +00:00
Victor Petukhov
00d1e46c5a
[FE 1.0] Don't throw exception during substitution of accessors, just return original
2022-07-22 16:03:53 +00:00
Mikhail Glukhikh
c92d685415
FIR: postpone callable reference candidate in default argument case
...
#KT-53019 Fixed
2022-07-12 12:22:34 +00:00
Mikhail Glukhikh
2880cd8d5a
FIR2IR: provide more precise conversion type context at some use-sites
2022-07-06 10:02:11 +00:00
Mikhail Glukhikh
bb0191b7d5
FIR2IR: don't calculate signatures for callables when possible
2022-07-06 10:02:10 +00:00
Ilya Chernikov
bb996c1b27
Switch kotlin version to 1.8
...
with appropriate fixes in testdata, tests and other
places.
2022-06-29 10:20:30 +02:00
Pavel Mikhailovskii
c3c09aa95a
KT-4107 Data objects
2022-06-28 16:58:20 +02:00
Ilya Gorbunov
7ab2f1493c
Add error() function to interpreter test helper sources
...
To compile standard library code that uses error()
2022-06-28 00:08:07 +00:00
Victor Petukhov
fa7809cd80
[FE] Remove BuilderInference annotation from tests
2022-06-21 15:01:56 +02:00
Mikhail Glukhikh
a8ce4e827c
FIR2IR: fix f/o & delegate overridden symbol generation #KT-52745 Fixed
2022-06-21 07:39:03 +00:00
Mikhail Glukhikh
966e2442c6
Add tests for KT-52745
2022-06-21 07:39:03 +00:00
Ivan Kochurkin
157eedca43
[FIR2IR] Create IrConst instead of IrGetField for default value param in annotation class, ^KT-52676 Fixed
2022-06-17 23:26:20 +00:00
Mikhail Glukhikh
fa914f20a4
Use nearest Java super qualifier for fields in IR converter
...
Related to KT-49507
2022-06-16 06:51:34 +00:00
Mikhail Glukhikh
8ae47d4c4d
IR: slightly fix kotlin-like dumping of super qualifiers
2022-06-16 06:51:34 +00:00
Mikhail Glukhikh
b0a6508d4b
Handle Java base class field read properly in IR converters
...
For FE 1.0, we just change super qualifier symbol to
base class, if it's possible.
For FIR, we introduce using of super qualifier symbols for
field accesses and repeat FE 1.0 behavior here.
#KT-49507 Fixed
2022-06-16 06:51:33 +00:00
Nikolay Lunyak
62ec19bda2
[FIR JS] Fix current tests
2022-06-02 13:47:33 +00:00
Roman Golyshev
01ce499bb2
[FIR] Unify some special names to make code more uniform
2022-06-01 00:11:17 +04:00
Ivan Kochurkin
e004c8e2d6
[FIR2IR] Pass value parameter name to createDefaultSetterParameter if it exists
2022-05-29 23:41:25 +03:00
Ivan Kochurkin
ad7c213ab2
[FIR] Initialize type for annotation arguments during deserialization
...
Get rid of IrErrorTypeImpl creating in FIR2IR
2022-05-29 23:41:23 +03:00
Ivan Kylchik
07ba9be2e0
Fix error with interpreting name of java property
2022-05-24 08:25:17 +00:00
Denis.Zharkov
9676cd26cf
FIR: Adjust Fir2IrText test data
2022-05-19 16:54:04 +00:00
Denis.Zharkov
f70ae2df3a
FIR: Refine inference constraints when type variable in flexible position
...
That issue might be fixed via changing
TypeVariableMarker.shouldBeFlexible at ConeConstraintSystemUtilContext
but this and some other tricks have been added because of incorrect
handling of constraints where type variable has a flexible bound
^KT-51168 Fixed
2022-05-19 16:53:59 +00:00
Georgy Bronnikov
8fd29a9fec
Fir2Ir: properly compute setter type parameter bounds
2022-05-19 12:02:44 +02:00
Georgy Bronnikov
870ee9c445
Fir2Ir: mute a test
...
FIR computes return type of testGeneric1 as T (type parameter).
Looks like a FIR bug.
2022-05-19 12:02:43 +02:00
Georgy Bronnikov
12818823b0
Fir2Ir: test data
2022-05-19 12:02:43 +02:00
Ivan Kylchik
40d224d5fe
Change error message of EXCEPTION_IN_CONST_VAL_INITIALIZER
2022-05-18 21:20:03 +03:00
Ivan Kylchik
20d0a531df
Add new tests to check evaluation of intrinsic сonsts
2022-05-18 21:20:02 +03:00
Ivan Kylchik
0b22cf6cb9
Rewrite ir interpreter's dump tests to box
...
Box tests will check the correctness of interpreter, meantime
by dumped ir we can understand that expression was folded.
2022-05-18 21:20:01 +03:00
Ivan Kylchik
fac98b7787
Add possibility to dump lowered ir in tests before lowering execution
2022-05-18 21:20:00 +03:00
Ivan Kylchik
df7be06558
Add tests to check constant evaluation for intrinsic const declarations
2022-05-18 21:19:58 +03:00
Ivan Kylchik
51ccc32a3f
Update test data after introducing IntrinsicConstEvaluation annotation
2022-05-18 21:19:57 +03:00
Anastasia.Shadrina
a3fa2dc9bf
[Tests] Fix contextualInlineCall.kt to avoid subtyping relation error
2022-05-17 15:27:27 +00:00
Kristoffer Andersen
7f531d8426
[IR] Improve stepping/LVT behavior around destructuring
2022-05-13 23:19:27 +02:00
Denis.Zharkov
e632689d90
FIR2IR: Fix case of using context receivers in property initializers
2022-05-13 18:04:02 +00:00
Alexander Udalov
24f3c7dc7d
Psi2Ir: fix usage of flexible vararg type after approximation
...
This only affects JVM IR, and this is similar to how this was done in
the old JVM backend in `CallBasedArgumentGenerator.generateVararg`.
#KT-52146 Fixed
2022-04-22 14:15:28 +02:00
Ivan Kochurkin
8c7fad9a5e
[FIR] Support of type arguments in annotations ^KT-48444 Fixed
2022-04-18 15:36:19 +00:00
Ilya Gorbunov
3778b1fde1
Remove ExperimentalStdlibApi no longer required in tests
2022-04-12 15:03:42 +00:00
Denis.Zharkov
66bd8dccfa
FIR: Unignore all Fir2IrText tests on context receivers
2022-04-06 16:05:40 +00:00
Ilya Chernikov
5d6e2b57a7
Sort sealed class inheritors to ensure reproducible builds with IC
...
without this sorting the inheritors field in the metadata may depend on
whether some inheritors are compiled in the IC round or not.
2022-03-30 08:35:30 +00:00