Andrei Klunnyi
e3c1aa599d
KT-44487 [Sealed Interfaces]: sealed-inheritors-provider for MPP
2021-02-09 12:54:51 +00:00
Igor Chevdar
6f9bcf249b
[IR] Supported inlining of adapted references + tests
2021-02-09 17:23:19 +05:00
Dmitriy Novozhilov
9724d81a49
[FIR] Support boolean elvis bound smartcasts
...
#KT-44511 Fixed
2021-02-09 15:20:36 +03:00
Dmitriy Novozhilov
2b088f1147
[FIR] Fix generating data class if there is non-property in primary constructor
...
#KT-44554 Fixed
2021-02-09 15:20:34 +03:00
Mikhael Bogdanov
30b5bfe767
Disable D8 checks for -jvm-target 15 tests
2021-02-09 12:34:56 +01:00
Mikhael Bogdanov
3dff225b98
Aligh test data with JDK 15 reflection output
2021-02-09 12:34:55 +01:00
Mikhael Bogdanov
21e9f67322
Add JvmTargetXOnJvm15 test suites
2021-02-09 12:34:55 +01:00
Mikhael Bogdanov
5c5fb0ae39
Add JvmTarget6OnJvm8 test suite
2021-02-09 12:34:55 +01:00
Ilmir Usmanov
8af9ce1e0b
Minor. Ignore test on WASM
2021-02-09 12:31:14 +01:00
Ilmir Usmanov
275fef94fe
JVM_IR. Do not mangle callable reference constructor call
...
#KT-44703 Fixed
2021-02-09 12:31:11 +01:00
Roman Artemev
d97a2b13c0
[Plugin API] Add API to load top level declaration by its signature
...
- request from JP Compose, #KT-44100
2021-02-09 11:56:20 +03:00
Roman Artemev
ca6e1b8f1b
Add box test for #KT-43831
2021-02-09 11:33:34 +03:00
Roman Artemev
79f986bb75
[IR] Fix IrType equality in case of complex variance
...
- reimplement type capturing on top of pure IrCaptureType
- add captured type substitutor
- fix #KT-43831
2021-02-09 11:33:34 +03:00
Roman Artemev
4ed93d3dee
[IR] Add IrCapturedType into IR type system
...
- support it in TypeSystemContext
2021-02-09 11:33:33 +03:00
Georgy Bronnikov
9b6f95faa2
FIR: report lowering time in FullPipelineModularizedTest
2021-02-09 10:59:35 +03:00
Georgy Bronnikov
1664eec7e4
FIR: report lowering time from JvmIrCodegenFactory
2021-02-09 10:59:35 +03:00
Pavel Kirpichenkov
75954dd1a4
Minor: refactor extended compiler checks
...
Use an analysis flag instead of a stub language feature
2021-02-08 18:47:30 +03:00
Pavel Kirpichenkov
2a46da906c
Provide additional information about missing supertypes
...
Add -X flag to report extra compiler diagnostics which migth break compatibility.
Use the flag to unconditionally check constructors without fear of
prematurely evaluating lazy supertypes.
KT-19234
KT-42404
KT-44583
2021-02-08 18:47:30 +03:00
Mikhail Glukhikh
4a381d4b83
FIR DFA: update receivers properly in case of single flow in merge point
2021-02-08 18:23:44 +03:00
pyos
d96921e287
FIR2IR: collect annotations when expanding type aliases
2021-02-08 18:23:19 +03:00
Mikhail Glukhikh
d4b0688690
FIR: introduce delegate field initializers
...
Before this commit we initialized delegate fields in primary constructor,
that could provoke NPE in case delegate is used in initializer of
some property backing field.
Now we initialize delegate fields directly instead.
2021-02-08 14:28:27 +03:00
Mikhail Glukhikh
2cbdad0bb1
FIR2IR: insert implicit cast of receiver to Any for interface Any calls
2021-02-08 14:28:26 +03:00
Mikhail Glukhikh
1c210c2386
FIR: fix of super.methodOfAny resolve in case of one supertype
2021-02-08 14:28:25 +03:00
Mikhail Glukhikh
694d69fbfa
FIR2IR: select return target inside accessor properly
2021-02-08 14:28:24 +03:00
Ilya Goncharov
76b124a9c0
[JS IR] Method of any is exported
...
^KT-44616 fixed
2021-02-08 13:40:39 +03:00
Ilya Goncharov
6c051b2be4
[JS IR] Override method are not exported
...
[JS IR] Add test with jsexport overrides not js export method with stable name
^KT-44616 fixed
2021-02-08 13:38:30 +03:00
Jinseong Jeon
a9322a01ce
FIR checker: avoid redundant casting to resolved type ref
2021-02-08 13:01:12 +03:00
Jinseong Jeon
37a702b962
FIR: coerce to Unit when a lambda has early returns
...
^KT-39075 Fixed
2021-02-08 13:01:12 +03:00
Jinseong Jeon
83e3201677
FIR DFA: correct exit node retrieval when a safe call is the last expression
...
^KT-44699 Fixed
2021-02-08 13:01:11 +03:00
Jinseong Jeon
266432a482
FIR checker: fix condition for property type mismatch on override
2021-02-08 13:01:11 +03:00
Jinseong Jeon
065d0c66ab
FIR checker: reproduce a false alarm on type mismatch of overridden property
2021-02-08 13:01:11 +03:00
pyos
64c5608f31
FIR: expect nullable type for elvis LHS
2021-02-08 13:00:22 +03:00
Victor Petukhov
f9e5584a3e
Report error about uninferred type parameter for all CallForImplicitInvoke psi calls
...
^KT-44368 Fixed
2021-02-08 10:40:18 +03:00
Mikhail Glukhikh
a68837451a
FirCatchParameterChecker: minor fix
2021-02-05 10:46:42 +03:00
Mikhail Glukhikh
f1ab5d1fbd
FIR: introduce & use Throwable built-in type
2021-02-05 09:33:54 +03:00
Mikhail Glukhikh
bbd1da7b71
Use reportOn in FirThrowableSubclassChecker & FirCatchParameterChecker
2021-02-05 09:27:01 +03:00
eugenpolytechnic
a564f92eef
FIR: introduce ThrowableSubclassChecker
2021-02-05 09:22:12 +03:00
Ilmir Usmanov
cd189c0812
JVM_IR. Do not unbox Result in inline lambda
...
Since JVM_IR generates inline lambdas differently from old backend,
in this case, it generates them as normal functions.
Thus, there is no need to unbox the lambda argument.
#KT-44671 Fixed
2021-02-04 20:22:20 +01:00
Mikhael Bogdanov
35ec6b4f5c
Run IR test on Test Codegen on different platforms
2021-02-04 18:53:06 +01:00
Svyatoslav Kuzmich
cdb488149f
[JS IR] Namer improvements
...
- Compute and store local names locally when translating a body.
It is a step towards separate JS generation and hopefully reduces memory usage.
- Use stable mangled names for member names. Needed for separate JS generation.
- Add `abstract class IrNamerBase` with just 3 abstract methods to simplify
creating new IrNamer implementations.
- Fix O(N^2) of findFreshName when it is called wtih the same name suggestion a lot of times.
- Refactor NameTables initialisation: factor out some functions and use descriptive names.
- Use StringBuilder in sanitizeName
2021-02-04 16:17:01 +03:00
Svyatoslav Kuzmich
c9cb7bc0fd
[JS IR] Update tests
2021-02-04 16:16:41 +03:00
Svyatoslav Kuzmich
8be7e6064e
[JS IR] Optimize sanitization
...
- Use direct function call instead of lambda
- Don't do anything for already valid names
2021-02-04 16:16:00 +03:00
Svyatoslav Kuzmich
2a424ad2af
[IR] Make isExternal mutable and accessible via common interface
...
JS IR: Mark all effectively external declarations as external to access it
directly instead of computing it every time
2021-02-04 16:15:33 +03:00
Svyatoslav Kuzmich
924a7b009b
[JS IR] Fix object getInstance visibility
2021-02-04 15:41:22 +03:00
Andrey Zinovyev
95140f35f8
[parcelize] Fix codegen for generic classes
...
Replace type arguments with star projection in static methods
Fix IR function generation
^KT-42652 Fixed
2021-02-04 15:11:51 +03:00
Dmitriy Novozhilov
ca02573d1e
[Test] Print bytecode if DxCheckerHandler had failed
2021-02-04 10:53:50 +03:00
Dmitriy Novozhilov
771b1acbc1
[Test] Ignore multimodule tests in AbstractLightAnalysisModeTest
2021-02-04 10:53:50 +03:00
Dmitriy Novozhilov
29b96aa15d
[Test] Properly merge box against java testdata into codegen/box
...
Previous commit about it was 3199ce03 and it was completely wrong
2021-02-04 10:53:50 +03:00
Dmitriy Novozhilov
21c493a854
[Test] Support different backends enumeration in DONT_TARGET_EXACT_BACKEND directive
2021-02-04 10:53:49 +03:00
Alexander Udalov
acd8c4503b
Do not generate $suspendImpl for JvmDefault functions in interfaces
...
#KT-44533 Fixed
2021-02-03 21:37:58 +01:00