Dmitry Petrov
ab9747ed6d
JVM_IR KT-50277 skip temporary var elimination on inline suspend lambda
2021-12-16 06:40:22 +00:00
Alexander Udalov
6807ed6642
Do not write version requirements for suspend functions
...
Coroutines are a stable feature since 1.3. Version requirement on
suspend functions, or functions mentioning suspend function types in the
signature, was needed to prevent older compilers from reading metadata
that they can't properly use. It's not needed anymore because a newer
metadata version prevents older compilers from reading any metadata
altogether.
Also, computing isSuspendOrHasSuspendTypesInSignature took ~0.5% of
backend time on compilation of intellij (related to KT-48233).
2021-12-15 22:27:51 +01:00
Victor Petukhov
b3943f5ab6
[FE 1.0] Process builder inference stub types with different nullability properly
...
^KT-49887 Fixed
2021-12-15 22:23:18 +03:00
Simon Ogorodnik
26b158bded
FIR: Update test-data (Delegate inference)
2021-12-15 22:23:12 +03:00
Mikhail Glukhikh
2338281889
FIR: Add test for get class + let in delegation
2021-12-15 22:23:07 +03:00
Mikhail Glukhikh
9aced1c33d
FIR: Update test-data (Delegate inference)
2021-12-15 22:23:04 +03:00
Mikhail Glukhikh
1e41ec7d22
FIR: replace ConeComposedSubstitutor with ChainedSubstitutor
2021-12-15 22:23:03 +03:00
Mikhail Glukhikh
40a2837b4c
FIR: Update test-data (Delegate inference)
2021-12-15 22:23:02 +03:00
Simon Ogorodnik
61ea65906c
FIR: Implement captured type substitution
2021-12-15 22:22:58 +03:00
Simon Ogorodnik
476a7727da
FIR: Unmute passing black-box tests
2021-12-15 22:22:57 +03:00
Mikhail Glukhikh
4d9e919f7e
FIR: preliminary refactoring of delegate resolve
2021-12-15 22:22:51 +03:00
Roman Artemev
1a64e2da91
[KLIB] Add klib layout tests
...
- currently only file paths are checked
2021-12-15 21:13:53 +03:00
Roman Artemev
526c85f820
[KLIB] Add CLI key to provide relative path base
2021-12-15 21:13:50 +03:00
Evgeniy.Zhelenskiy
ec2e96f3e4
Regenerate inline class tests as 1 arg value classes
2021-12-15 17:14:22 +00:00
Leonid Startsev
2eac2ff3a2
Support Array<KClass> in instantiated annotations
...
#KT-47703 Fixed
2021-12-15 16:05:29 +00:00
Dmitry Petrov
9375f41936
JVM_IR KT-50073 inline callable reference adapter into 'invoke'
2021-12-14 14:35:12 +00:00
Dmitry Petrov
42dd8aa12d
JVM_IR KT-50193 remove temporary variable in argument null check
2021-12-14 17:10:23 +03:00
Dmitry Petrov
34c70ea04e
JVM_IR KT-50193 result of !! is non-null
2021-12-14 17:10:20 +03:00
Anastasia.Shadrina
343a860553
[FE] Make OverloadChecker take CR into account
2021-12-14 15:19:42 +03:00
Ilya Chernikov
c1c94778ce
Detect and report inner classes capturing script instance
2021-12-14 13:39:22 +03:00
Ilya Chernikov
10c5071eda
Implement backend error reporting on unsupported script capturing
...
#KT-30616 fixed
#KT-43995 fixed
#KT-19424 fixed
#KT-49443 fixed
2021-12-14 13:39:17 +03:00
Ilya Chernikov
cb5e451e05
Implement script instance capturing in script lowering
...
for regular classes only. Reimplementing the main behavior of the
old BE and implementing few cases on top of it.
#KT-19423 fixed
2021-12-14 13:39:17 +03:00
Dmitry Petrov
e47871f98b
JVM_IR KT-50215 KT-50076 extra test
2021-12-13 20:34:57 +03:00
Ilya Goncharov
6adcbe081e
[JS IR] Consider erasing type parameters in return type in js signatures
2021-12-13 16:16:59 +00:00
Ivan Kylchik
b131c52889
Drop all usages of WITH_RUNTIME directive
2021-12-13 18:07:11 +03:00
Dmitry Petrov
df460a842b
JVM_IR KT-50076 avoid CHECKCAST on moved dispatch receiver parameter
2021-12-13 14:13:34 +00:00
Dmitry Petrov
6f148c594f
Revert "JVM_IR KT-50076 avoid CHECKCAST on moved dispatch receiver parameter"
...
This reverts commit 627d838343 .
2021-12-13 14:13:33 +00:00
Mikhail Glukhikh
febf336d23
IrConstTransformer: transform constants also inside call children
2021-12-13 16:24:59 +03:00
Mikhail Glukhikh
66231baa06
FIR2IR: pass annotationMode through arrayOf calls properly
...
#KT-50163 Fixed
2021-12-13 16:24:59 +03:00
Dmitry Petrov
81c805a754
JVM_IR KT-50171 add missing parent to temporary vals for proxy fun
2021-12-11 15:51:12 +00:00
Dmitry Petrov
627d838343
JVM_IR KT-50076 avoid CHECKCAST on moved dispatch receiver parameter
2021-12-11 08:04:26 +00:00
Dmitry Petrov
94bb465e62
JVM_IR KT-50076 don't null check moved dispatch receiver parameter
2021-12-11 08:04:26 +00:00
Evgeniy.Zhelenskiy
cb4ec932d7
[Tests] Introduce replacing source transformer
2021-12-10 18:19:17 +03:00
Evgeniy.Zhelenskiy
f0af2487c7
[Tests] Replace @JvmInline with actual OPTIONAL_JVM_INLINE_ANNOTATION
2021-12-10 18:19:16 +03:00
Evgeniy.Zhelenskiy
96334948f0
[Tests] Pass sample test without annotation with flag ValueClasses
2021-12-10 18:19:15 +03:00
Evgeniy.Zhelenskiy
f92290dfdf
[Tests] Generate runTest with transformer parameter + example
2021-12-10 18:19:15 +03:00
Dmitry Petrov
3017397960
JVM_IR fix string concatenation performance issues
...
KT-50080 KT-50084 KT-50140
2021-12-09 15:32:13 +03:00
Ivan Kochurkin
522d2064bb
[FIR2IR] Initialize fake overrides for callable references
2021-12-09 12:31:24 +00:00
Ivan Kochurkin
f68c8f8f01
[FIR] Fix visibility issues with private members within inner and anonymous scopes ^KT-49992 Fixed
2021-12-09 12:31:24 +00:00
Ivan Kochurkin
800d594a4f
[FIR] Check adding default error messages for all diagnostics ^KT-49973 fixed
...
Also, check for duplicates
2021-12-09 12:31:23 +00:00
Ivan Kochurkin
9f8387c76a
[FIR] Fix 1.(fun Int.() = 1)() call fir conversion
2021-12-09 12:31:23 +00:00
Mikhael Bogdanov
7e99ba30f3
Remove obsolete USAGE_OF_JVM_DEFAULT_THROUGH_SUPER_CALL diagnostic
...
#KT-47000
2021-12-09 11:30:06 +01:00
Mikhail Glukhikh
e591f79533
FIR2IR: fix origins for anonymous functions & lambdas
2021-12-09 13:26:41 +03:00
Mikhail Glukhikh
a6d4f9c3b0
FIR: don't change explicitly given anonymous function type
2021-12-09 13:26:40 +03:00
Mikhail Glukhikh
533e802c8d
FIR: support JVM_DEFAULT_WITH_COMPATIBILITY_* diagnostics (FE 1.0 sync)
2021-12-09 13:26:40 +03:00
Mikhail Glukhikh
178290eac3
FIR: drop JVM_DEFAULT_THROUGH_INHERITANCE diagnostic (FE 1.0 sync)
2021-12-09 13:26:39 +03:00
Mikhail Glukhikh
e1ca5fe344
FIR2IR: apply suspend conversions also to varargs
2021-12-09 13:26:38 +03:00
Mikhail Glukhikh
8c7f659a32
Black box: drop WITH_RUNTIME or replace with WITH_STDLIB
2021-12-09 13:26:38 +03:00
Mikhail Glukhikh
0f4647d95e
Black box: update/set FIR status for some new tests
2021-12-09 13:26:37 +03:00
Mikhail Glukhikh
9b42fab9de
FIR2IR: properly support combinations of SAM/suspend conversions
2021-12-09 13:26:36 +03:00