Leonid Startsev
ce0a3a57df
Instantiation of annotations for JVM IR with the corresponding feature flag
...
Seperate checker for platforms that do not support this language feature yet
Synthetic implementations of annotations are generated on-demand with proper
equals, hashCode, and annotationType methods
#KT-47699 Fixed
2021-07-21 10:23:51 +00:00
Mads Ager
6436a1686d
[JVM_IR] Recursively perform constant lowering.
...
Otherwise constants in child expressions are not transformed.
^KT-47716 Fixed.
2021-07-21 02:11:41 +02:00
Mads Ager
2877f1cabe
[JVM_IR] Fix check for inline class property backing in lowering.
...
The inline class lowering would attempt to lower a companion object
property backing field.
^KT-47762 Fixed.
2021-07-21 01:56:46 +02:00
Dmitry Petrov
8763235053
JVM specially hacked method analyzer for FixStack
2021-07-20 19:50:58 +03:00
Mikhael Bogdanov
ff26a471b4
Update diagnostics test affected by ApproximateIntegerLiteralTypesInReceiverPosition and ProhibitSimplificationOfNonTrivialConstBooleanExpressions features
2021-07-20 12:19:57 +00:00
Mikhael Bogdanov
fd605a13d7
Update box tests affected by ApproximateIntegerLiteralTypesInReceiverPosition feature
2021-07-20 11:42:29 +00:00
Andrey Zinovyev
15be38192b
[FIR] Mark implicit types in accessors as fake
...
To not check their types in deprecation checker
2021-07-20 14:25:14 +03:00
Dmitriy Novozhilov
a6edd852ff
[FIR] Report NON_EXHAUSTIVE_WHEN_STATEMENT/NO_ELSE_IN_WHEN for when's on logical types
...
^KT-47709 In Progress
2021-07-20 13:33:44 +03:00
Dmitriy Novozhilov
ef635f6a96
[FE 1.0] Report NON_EXHAUSTIVE_WHEN_STATEMENT/NO_ELSE_IN_WHEN for when's on logical types
...
^KT-47709 In Progress
2021-07-20 13:33:43 +03:00
Dmitriy Novozhilov
85c7f386eb
Add Kotlin 1.7 language version
2021-07-20 13:33:41 +03:00
Andrey Zinovyev
4a37de51bb
[FIR] Add ANONYMOUS_INITIALIZER_IN_INTERFACE diagnostic
2021-07-20 13:29:00 +03:00
Dmitriy Novozhilov
9b3b386f0a
[FIR IDE] Ignore HMMP compiler test
2021-07-20 10:33:54 +03:00
Dmitriy Novozhilov
37c096cb10
[FIR] Support creation of IR of common + platform sources in FirAnalyzerFacade
2021-07-20 10:33:52 +03:00
Dmitriy Novozhilov
5354e4afe4
[FIR] Ignore some MPP backend tests
...
FIR doesn't support actual declarations in same module where expect
declarations lay
2021-07-20 10:33:50 +03:00
Dmitriy Novozhilov
c3060e861f
[FIR] Add expect actual checker
2021-07-20 10:33:49 +03:00
Dmitriy Novozhilov
7008f02962
[FIR] Create fir classes for java annotations and enums with Final modality
2021-07-20 10:33:34 +03:00
Ilmir Usmanov
5517aa36e1
Minor. Add debugger test
...
#KT-47749
2021-07-19 22:07:17 +00:00
Ilmir Usmanov
e870a200c4
Merge consequent LVT records
...
that is, if LVT record starts where previous one ends, merge them.
#KT-47749 Fixed
2021-07-19 22:07:16 +00:00
Ilmir Usmanov
5ae01c8b2a
Do not duplicate $result in LVT
...
#KT-47749
2021-07-19 22:07:16 +00:00
Ilmir Usmanov
b4d356c5bd
Split LVT record for known nulls
...
Since they are not spilled, the logic for splitting LVT records, that
is applied for spilled variables, was not applied for known nulls.
Fix that by applying the logic to them.
#KT-47749
2021-07-19 22:07:15 +00:00
Mads Ager
83dddd73b0
Always add a local variable for its live ranges.
...
There used to be code that extended a previous range instead.
However, that does not work as that extension could have the
local cover code where it does not exists. Since we no longer
extend the range of locals, we should always introduce a new
one even if there was another one for a previous range.
2021-07-19 22:07:14 +00:00
Dmitry Petrov
e276dec4de
JVM don't merge local values in FixStackAnalyzer
...
We care only about stacks there.
This yields about 10-15% in a pathological case such as KT-41510.
2021-07-19 19:24:57 +03:00
Dmitriy Novozhilov
c304363aea
[FE 1.0] Report WRONG_ANNOTATION_TARGET on annotations on type arguments
...
^KT-47772 Fixed
2021-07-19 14:00:24 +03:00
Andrey Zinovyev
7e9f27436a
[FIR] Fix cfg for safe call inside elvis
2021-07-19 13:40:31 +03:00
Andrey Zinovyev
a6984c5198
[FIR] Add NO_RETURN_IN_FUNCTION_WITH_BLOCK_BODY diagnostic
2021-07-19 13:40:28 +03:00
Dmitry Petrov
d41fc0b599
PSI2IR fix suspend conversion tests
...
- support chained suspend conversion + SAM conversion
- support suspend conversion in vararg elements
2021-07-17 09:10:19 +03:00
Victor Petukhov
0cc6fbbc6e
Add tests for converting expressions of function types to suspending functional types
2021-07-17 09:10:17 +03:00
Mads Ager
b51ff799cb
Fix IteratorNext intrinsic to cast its dispatch receiver to
...
the expected type.
^KT-47741 Fixed.
2021-07-16 21:07:11 +02:00
Victor Petukhov
6a1ec92d39
Introduce specific error for calls which could be resolved only with unrestricted builder inference
...
^KT-47747 Fixed
2021-07-16 19:32:36 +03:00
Victor Petukhov
357fda2efa
Initialize builder inference lambda anyway, even a call is inapplicable
...
^KT-47744 Fixed
2021-07-16 19:32:35 +03:00
Mikhael Bogdanov
5f53a2071d
Update test affected by ProperTypeInferenceConstraintsProcessing feature
2021-07-16 13:26:37 +00:00
Mikhael Bogdanov
392dce9a40
Update test affected by PrivateInFileEffectiveVisibility feature
2021-07-16 13:26:36 +00:00
Mikhael Bogdanov
c519003e13
Update test affected by ProhibitSimplificationOfNonTrivialConstBooleanExpressions feature
2021-07-16 13:26:36 +00:00
Mikhael Bogdanov
a657e63dbb
Update test affected by ForbidUsingExtensionPropertyTypeParameterInDelegate feature
2021-07-16 13:26:35 +00:00
Mikhael Bogdanov
70df4f10c5
Update test affected by AbstractClassMemberNotImplementedWithIntermediateAbstractClass feature
2021-07-16 13:26:34 +00:00
Mikhael Bogdanov
f05d470f6a
Update test affected by 'ProhibitJvmFieldOnOverrideFromInterfaceInPrimaryConstructor' feature
2021-07-16 13:26:33 +00:00
pyos
f5dd5ead1f
JVM: produce a better error on @JvmStatic external in interface
...
Java does not permit `static native` methods in interfaces, so this
never worked on any existing JRE.
#KT-43696 Fixed
2021-07-16 15:24:09 +02:00
pyos
ad7ed483f3
JVM_IR: copy correspondingProperty of static external functions
...
Required for correctly mapping their names.
#KT-47715 Fixed
2021-07-16 15:24:05 +02:00
Dmitriy Novozhilov
22f57220c1
[FE 1.0] Report INTEGER_OPERATOR_RESOLVE_WILL_CHANGE on rhs of assign
...
^KT-47729 Fixed
2021-07-16 15:18:46 +03:00
Dmitriy Novozhilov
afb7625d0c
[FE 1.0] Fix false positive INTEGER_OPERATOR_RESOLVE_WILL_CHANGE
...
^KT-47729 In progress
2021-07-16 15:18:44 +03:00
Dmitriy Novozhilov
2fb5f776d8
[FE 1.0] Report INTEGER_OPERATOR_RESOLVE_WILL_CHANGE on calls in parenthesis
...
^KT-47729 In progress
2021-07-16 15:18:38 +03:00
Victor Petukhov
ea4ab46765
Report implicit inferred Nothing only for own type parameters and in delegation resolve
...
^KT-47724 Fixed
2021-07-16 11:21:51 +03:00
Ilya Chernikov
c83614386e
[minor] FIR: (temporarily) fix testdata due to different builtins behavior
2021-07-16 02:24:45 +03:00
Ilya Chernikov
c9b6847d83
FIR: Add test on delegated member with default param in overridden...
...
sensitive to the file processing order, therefore failing on the
current fir2ir at least with the new irBuiltIns
2021-07-16 02:24:36 +03:00
Ilya Chernikov
5b2acea98f
FIR: Add analysis flag for loading IR builtins from sources
2021-07-16 02:24:32 +03:00
Ilya Chernikov
8f5d5c3ace
FIR: Fixes in testdata after implementing FIR-specific IrBuiltIns
2021-07-16 02:24:29 +03:00
Mikhael Bogdanov
f080dbb78c
Update resolveAnnotations tests in new infrastructure
2021-07-15 17:08:17 +00:00
Mikhael Bogdanov
3aeb9291fe
Move resolveAnnotations tests into diagnostics tests
2021-07-15 17:08:16 +00:00
Dmitry Petrov
8ea4916d64
JVM_IR KT-47739 recognize fake override external stubs
2021-07-15 19:20:39 +03:00
Ivan Kochurkin
dd54338ec0
[FIR] Fix positioning and detecting of WRONG_NUMBER_OF_TYPE_ARGUMENTS
...
Refactor code and fix compilation errors caused by changes to symbol.fir
2021-07-15 19:02:58 +03:00