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
Mikhail Glukhikh
bc396b9765
K2: don't report RETURN_TYPE_MISMATCH on last statement returns
...
#KT-53198 Fixed
2022-07-22 16:39:51 +00:00
Mikhail Glukhikh
e20efc1398
K1: don't report UNRESOLVED_WITH_TARGET on hidden setters
2022-07-22 16:03:53 +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
Victor Petukhov
db54d18c72
[FE 1.0] Add fallback for extracting when call
2022-07-22 16:03:52 +00:00
Victor Petukhov
42e71f8c53
Remove explicit enabling the new type inference from test data
2022-07-22 16:03:52 +00:00
Victor Petukhov
224beb24eb
Remove explicit disabling the new type inference from test data
2022-07-22 16:03:51 +00:00
Victor Petukhov
c0ae68fe93
[FE 1.0] Remove type predicate calculation from CFG tests
...
That logic is hard to support because it used deprecated `OldResolutionCandidate` and `ResolvedCallImpl`. Moreover FIR has own CFG utils.
2022-07-22 16:03:51 +00:00
Victor Petukhov
6e191147b9
[FE 1.0] Resolve setters through the new type inference infra
...
^KT-48961 In progress
2022-07-22 16:03:50 +00:00
Victor Petukhov
0070c234ce
[FE 1.0] Resolve constructor calls through the new type inference infra
...
^KT-48961 In progress
2022-07-22 16:03:49 +00:00
Victor Petukhov
e66cc9a639
[FE 1.0] Resolve special construct calls through the new type inference infra
...
^KT-48961 In progress
2022-07-22 16:03:48 +00:00
Victor Petukhov
bab8047bb3
[FE 1.0] Resolve this and super calls through the new type inference infra
...
^KT-48961 In progress
2022-07-22 16:03:48 +00:00
Mikhail Glukhikh
9add6f3d55
K2: add more accurate & more automatic control of diagnostic suppression
...
#KT-51363 Fixed
2022-07-22 11:35:26 +00:00
Dmitriy Novozhilov
b2e558a174
[CLI] Make -Xcompiler-plugin experimental and K2 only
2022-07-20 09:07:27 +00:00
Dmitriy Novozhilov
928416c9c5
[CLI] Introduce new compiler arguments for registering compiler plugins
...
With new syntax each plugin should be registered in separate argument with syntax
`-Xcompiler-plugin=classpath1,classpath2[=argument1=value1,argument2=value2]`
2022-07-20 09:07:26 +00:00
Dmitriy Novozhilov
8919703448
[Test] Extract CLI tests for plugins into separate directory
2022-07-20 09:07:26 +00:00
Svyatoslav Kuzmich
11c8c01a50
[Wasm] Update v8 shell to v10.5.207
2022-07-19 18:46:52 +02:00
Sergej Jaskiewicz
1241565cce
[JS IR] Adapt stepping tests for Kotlin/JS
2022-07-19 16:06:24 +00:00
Sergej Jaskiewicz
ea556ce428
[JS IR] Implement stepping tests for Kotlin/JS
...
We already have stepping tests for Kotlin/JVM.
They are helpful for testing the correctness of the generated
debugging information.
They are better than line number tests in that they allow to test the
_behavior_, not the generated data. The structure of the data may change
even if the behavior stays the same. For that reason, stepping tests
are more stable.
2022-07-19 16:06:23 +00:00
Ilya Kirillov
d04bd320f9
[LL FIR] ignore test failing due to ^KT-53242
2022-07-19 17:17:35 +02:00
Dmitriy Dolovov
ce04a24b26
[IR][tests] Removal of class used as variable type and constructor call
2022-07-18 17:29:50 +02:00
Dmitriy Dolovov
d5ded97ccb
[IR][tests] Removal of inlined class case
...
^KT-52478
2022-07-18 17:29:50 +02:00
Dmitriy Dolovov
7b5e33b6ca
[IR][tests] Add tests for removal-of-typealias case
2022-07-18 17:29:49 +02:00
Dmitriy Dolovov
89a188d199
[IR][tests] Add tests for remove-inlined-callable member case
2022-07-18 17:29:49 +02:00
Dmitriy Dolovov
9c1c712057
[IR][tests] Add tests for removal-of-overridden open callable case
2022-07-18 17:29:49 +02:00
Pavel Mikhailovskii
846537b367
KT-45375 Lightweight lambdas; KT-52817 introduce @JvmSerializableLambda
2022-07-18 17:10:07 +02:00
Pavel Mikhailovskii
fd5800e8b5
KT-53090 Support -Xlambdas=indy for anonymous functions
2022-07-18 08:18:05 +00:00
Alexander Udalov
b50d2ff20a
Revert "JVM IR: Move direct invoke optimization into a separate pass"
...
This reverts commit f0760e0550 .
The reason is that it leads to KT-53202.
2022-07-15 18:29:07 +02:00
Mikhail Glukhikh
623f832bfd
FIR: fix private-to-this corner case with outer class type parameter
...
Related to KT-49875
2022-07-15 07:57:42 +00:00
Mikhail Glukhikh
d16e5e5e50
FIR: Support checking PRIVATE_TO_THIS visibility #KT-49875 Fixed
2022-07-15 07:57:41 +00:00
Mikhail Glukhikh
83200f8774
FIR: Support inferring PRIVATE_TO_THIS visibility see KT-49875
2022-07-15 07:57:41 +00:00
Alexander Udalov
3b613b3745
Fix some tests related to direct invoke optimization
...
- Fix test data of light class tests
(SymbolLightClassesForLibraryTestGenerated).
- Revert the changes in kt8666.kt because they fail on JS IR, and it
seems that this test is mostly needed for JS anyway.
- Use 'invoke(' as the pattern in bytecode text tests because plain
'invoke' is used when these tests are run on JDK 11, where indy string
concatenation is enabled by default and therefore we reference
`java/lang/invoke/StringConcatFactory`.
2022-07-15 02:29:01 +02:00
Steven Schäfer
8014712569
JVM IR: Check that we generate callable references in tests
2022-07-14 23:24:18 +02:00
Steven Schäfer
2acfb3a41f
JVM IR: Avoid direct lambda invokes in inline tests
2022-07-14 23:24:18 +02:00
Steven Schäfer
f0760e0550
JVM IR: Move direct invoke optimization into a separate pass
...
This also changes the transformation to inline the body of a directly
invoked lambda rather than producing a call to an anonymous local
function. The latter is unsupported in inline functions and problematic
from an ABI perspective, since it results in functions whose name
depends on the entire source code up to this point.
2022-07-14 23:24:18 +02:00
Steven Schäfer
7d59c7689c
JVM IR: Avoid direct invokes in callable reference tests
...
Due to the direct invoke optimization, most callable reference tests
were not generating callable references/lambdas.
2022-07-14 23:24:18 +02:00
Pavel Mikhailovskii
b26155dd9e
KT-53007 Fix accessibility checks when calling a protected member via super@Outer
2022-07-14 13:09:42 +02:00
Mikhail Glukhikh
475e40b3e4
K1: report warning for inline virtual member in enum #KT-53148 Fixed
...
Related to KT-34372
2022-07-14 07:59:33 +00:00
Mikhail Glukhikh
70e15b281c
K2: fix exception in deserializer for external setter #KT-53031 Fixed
2022-07-13 17:06:14 +00:00
Pavel Kunyavskiy
5cdda48487
[K/N] Extract const val initializers to place of usage
...
This would make behaviour more consistent with jvm. There is still
a difference in behaviour about point where side effects happen.
^KT-52970
2022-07-13 08:49:40 +00:00
Igor Chevdar
e36bd5fe90
[box-tests] Added a multi-module box test
2022-07-13 08:01:51 +00:00
Vladimir Sukharev
a9789203ac
Run test genericFunctionReferenceSignature.kt only for JVM and native
...
Merge-request: KT-MR-6636
Merged-by: Vladimir Sukharev <Vladimir.Sukharev@jetbrains.com >
2022-07-12 13:07:14 +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
Vladimir Sukharev
fd52f475cb
Devirtualization fails to eliminate boxing in function reference context
...
^KT-49847 Fixed
Merge-request: KT-MR-6460
Merged-by: Vladimir Sukharev <Vladimir.Sukharev@jetbrains.com >
2022-07-12 08:26:27 +00:00
pyos
5a2ec4a0d5
FIR CFG: merge data flow if called-in-place lambda may not be called
2022-07-11 18:11:30 +03:00
pyos
06c7572ee5
FIR CFG: process called-in-place lambdas as loops
2022-07-11 18:11:30 +03:00
Victor Petukhov
7d945d9bdc
[FIR] Support loading rxjava3 nullability annotations on bounded wildcards
...
^KT-53041 Fixed
2022-07-11 12:44:08 +00:00
Victor Petukhov
cb2dbca0c3
[FE 1.0] Support loading rxjava3 nullability annotations on bounded wildcards
...
^KT-53041 Fixed
2022-07-11 12:44:07 +00:00
Victor Petukhov
2057deb91b
[FE 1.0] Create DONT_CARE type only for callable references with no expected type
...
Otherwise, it can be resolved safety
^KT-52270 Fixed
2022-07-11 12:44:06 +00:00