Roman Artemev
23d7f94dca
[JS IR] Generate JS Klib ABI tests
...
- add first test
2021-12-08 20:18:15 +03:00
Mikhael Bogdanov
8c17d5f5a7
JvmDefaultWithCompatibility. Switch retention to source
2021-12-08 12:25:02 +01:00
Mikhael Bogdanov
29afd674d2
JvmDefaultWithoutCompatibility. Add test with Kotlin Java mixed inheritance
2021-12-08 12:25:02 +01:00
Dmitry Petrov
93713a9ad4
JVM_IR KT-47939 use FunInterfaceConstructorReference as base class
2021-12-08 14:12:41 +03:00
Dmitry Petrov
0ccd7a7e0c
KT-47939 fun interface constructor reference should throw NPE for null
2021-12-08 14:12:41 +03:00
Dmitry Petrov
e5eee9bab9
KT-47939 KotlinFunInterfaceConstructorReference is experimental
2021-12-08 14:12:40 +03:00
Dmitry Petrov
72f7276f3c
PSI2IR KT-47939 more tests
2021-12-08 14:12:40 +03:00
Dmitry Petrov
9eeb8f54fb
JVM_IR KT-47939 fixes after review
2021-12-08 14:12:39 +03:00
Dmitry Petrov
e179598457
JVM_IR KT-47939 equality for fun interface constructor references
2021-12-08 14:12:38 +03:00
Dmitry Petrov
50b0dae786
KT-47939 fixes after review
2021-12-08 14:12:37 +03:00
Dmitry Petrov
58f1504aaf
KT-47939 basic fun interface constructor reference box test
2021-12-08 14:12:37 +03:00
Dmitry Petrov
11daed8b01
FIR2IR KT-47939 callable references to fun interface constructors
2021-12-08 14:12:36 +03:00
Dmitry Petrov
f55f880726
Minor: regenerate tests, update testData
2021-12-08 14:12:35 +03:00
Dmitry Petrov
27a144f86f
PSI2IR KT-47939 callable references to fun interface constructors
2021-12-08 14:12:34 +03:00
Dmitry Petrov
1fd0dec5e7
FE KT-47939 callable references to functional interface constructors
...
Allow callable references to Kotlin 'fun interface' constructors.
Prohibit callable references to Java SAM interface constructors.
2021-12-08 14:12:33 +03:00
Mikhael Bogdanov
bdeae7668e
JvmDefault. Support 'JvmDefaultWithCompatibility' annotation in old backend
...
#KT-48217
2021-12-08 06:27:57 +00:00
Alexander Udalov
1471602c9f
JVM IR: do not optimize properties with -Xno-optimized-callable-references
...
#KT-50019 Fixed
2021-12-08 03:15:49 +01:00
Ilmir Usmanov
f95cba0ec3
Support delegation by interface for inline classes in FIR
...
#KT-27435 Fixed
2021-12-08 00:11:55 +01:00
Ilmir Usmanov
bb53ba4a2e
Enable delegation by interface for inline classes in old FE
...
#KT-27435
2021-12-08 00:11:54 +01:00
Mikhail Glukhikh
386e2e0950
FIR2IR: don't create separate delegate fields for constructor properties
2021-12-07 23:17:38 +03:00
Mikhail Glukhikh
852475337b
FIR: use only most specific members when building intersection
...
In this commit we drop less concrete members in intersection.
See for example change in test data: before the commit, we intersected
all three A.foo, B.foo and C.foo in diamond hierarchy. After the commit
we drop A.foo and intersect B.foo and C.foo only.
2021-12-07 23:17:20 +03:00
Igor Yakovlev
ea060dcf8a
[WASM] Implement lazy with UnsafeLazyImpl
2021-12-07 21:33:34 +03:00
Igor Yakovlev
4f9b54da26
[WASM] Remove ignore from wasm std text tests
2021-12-07 21:33:28 +03:00
Victor Petukhov
7475d26902
[FE 1.0] Implement checker to detect changed resolve for progressions and ranges due to the start of implementing Collection<T>
...
^KT-49276 Fixed
2021-12-07 18:48:27 +03:00
Dmitry Petrov
100d7123c2
JVM_IR KT-50078 fix for-in-array loop bytecode shape
2021-12-07 17:41:59 +03:00
Leonid Startsev
767c570af4
Load default values for annotation members from classfiles
...
so that defaults are available to synthetic implementations.
#KT-48181 Fixed
Implementation is for JVM IR; other backends & FIR need to be supported
separately.
2021-12-07 10:10:04 +00:00
Victor Petukhov
ce2c6f5d1f
[FE 1.0] Don't mark type variable as READY_FOR_FIXATION_DECLARED_UPPER_BOUND_WITH_SELF_TYPES if it has complex dependency to other type variables
...
^KT-49838 Fixed
2021-12-07 11:41:13 +03:00
Victor Petukhov
61d40403e7
[FE 1.0] Create captured star projection for self types by replacing type arguments deeply
...
^KT-49752 Fixed
2021-12-07 11:38:45 +03:00
Mads Ager
529944fe9c
[JVM_IR] Fix inline class default method codegen.
...
Do not coroutine transform static inline class replacements that
forward to a default interface suspend method. No boxing has to
take place on return (as the default interface method always
boxes) so we can simply forward the call.
^KT-49645 Fixed
2021-12-06 17:29:59 +01:00
Dmitriy Novozhilov
50f610cfd8
[Test] Add forgotten dumps for Fir2Ir text tests
2021-12-06 19:23:14 +03:00
Mikhail Glukhikh
fa8441fb23
FIR2IR: insert implicit not-null casts in delegated calls
2021-12-06 18:07:18 +03:00
Mikhail Glukhikh
7cfec0d846
FIR2IR: find & use delegate-to members properly
2021-12-06 18:07:18 +03:00
Mikhail Glukhikh
a919351d07
FIR2IR: change delegate field type to initializer type
2021-12-06 18:07:18 +03:00
Mikhail Glukhikh
85240bdb06
FIR2IR: generate type arguments in delegation calls
2021-12-06 18:07:17 +03:00
Dmitry Petrov
7206c06d26
IR KT-50039 don't initialize outer 'this' in delegating constructor
2021-12-06 17:31:37 +03:00
Dmitriy Novozhilov
df2e9e3797
[FE 1.0] Correctly set USED_AS_EXPRESSION for unreachable when and if blocks
...
^KT-50028 Fixed
2021-12-06 17:24:06 +03:00
Mikhael Bogdanov
a2395ec8bb
Additional diagnostics for @JvmDefaultWithCompatibility
2021-12-06 14:20:25 +01:00
Mikhael Bogdanov
ea58c858d1
JvmDefault. Support @JvmDefaultWithCompatibility annotation
...
#KT-48217 Fixed
2021-12-06 14:20:24 +01:00
Anastasiya Shadrina
4d3035e2f7
[Parser] Do not support local contextual declarations
2021-12-03 20:22:17 +03:00
Dmitriy Novozhilov
1f0b62b25f
[FIR] Add smartcasts from == if equals is from Any
...
^KT-49127 Fixed
2021-12-03 14:19:25 +03:00
Mikhael Bogdanov
0997207c7c
Apply -Xjvm-default for specific modules only
2021-12-03 06:39:38 +01:00
Mikhael Bogdanov
c0ffbe03c6
Remove '-Xjvm-default-allow-non-default-inheritance' flag. Enable such inheritance by default
...
#KT-47000 Fixed
2021-12-03 06:39:38 +01:00
Anastasiya Shadrina
2d088196ce
[FE] Fill DESCRIPTOR_TO_CONTEXT_RECEIVER_MAP only with CR enabled
2021-12-02 20:25:06 +03:00
Anastasiya Shadrina
9e2271399e
[FE] Render context receivers for functions, properties, and classes
2021-12-02 20:25:05 +03:00
Anastasiya Shadrina
2b30c1eb5d
[FE] Do not change original semantics in LabelResolver
2021-12-02 20:25:00 +03:00
Anastasiya Shadrina
5d76f979cf
[Tests] Minor: add FIR_IDENTICAL to typeParameterAsContextReceiver.kt
2021-12-02 20:24:59 +03:00
Anastasiya Shadrina
a70036c945
[Tests] Add a test with type parameter as a context receiver
2021-12-02 20:24:58 +03:00
Anastasiya Shadrina
752bc299f1
[FE, Tests] Passing context(A, B) where context(B, A) expected
2021-12-02 20:24:56 +03:00
Anastasiya Shadrina
08570a37b8
[PSI2IR] Check how contextual functional type works with IR
2021-12-02 20:24:56 +03:00
Anastasiya Shadrina
a760865767
[PSI2IR] Generate safe calls correctly
2021-12-02 20:24:54 +03:00