Alexander Udalov
3f034e8b67
Enable lightweight lambdas (aka invokedynamic) since 2.0
...
#KT-45375 Fixed
#KT-58173 Open
2024-02-08 19:46:18 +00:00
vladislav.grechko
34bac48541
Add JVM ABI K1/K2 consistency tests
2023-12-26 10:18:19 +00:00
vladislav.grechko
f71a731b6b
Temporary do not check bytecode listings for some tests
...
Removing nullability directives from the methods of anonymous classes
affects some bytecode listing tests, but the changes will take effect
only after the advancing of the bootstrap compiler version.
See ^KT-62044
2023-10-10 10:34:33 +00:00
vladislav.grechko
29eb1c7a63
Do not add nullability annotations to the methods of anonymous classes
...
Nullability annotations are useless for the methods of anonymous classes
due to their restricted scope.
^KT-62044: Fixed
2023-10-10 10:34:33 +00:00
vladislav.grechko
457837a255
Fix function invocation mangling rule
...
Mangle invocations of functions with value classes in signature which
override (directly or indirectly) a method declared in Kotlin code.
Otherwise, NoSuchMethodError is being thrown.
^KT-55945: Fixed
2023-06-15 09:34:21 +00:00
vladislav.grechko
b8b8b7fd3a
[JVM_IR] Move variables out of IrInlinedFunctionBlock on MFVC lowering
...
Variables in `IrInlinedFunctionBlock` declared before the composite
blocks with arguments evaluation may lead to error on codegen while
processing `IrInlinedFunctionBlock`.
^KT-58779: Fixed
2023-06-14 17:34:14 +00:00
vladislav.grechko
4f1d181c88
[JVM_IR] Set correct origin for new variables on MFVC flattening.
...
Preserve information that variable is temporary while flattening.
Otherwise, unnecessary bytecode for them might be generated.
2023-06-14 17:34:14 +00:00
Alexander Udalov
23fb96378e
Tests: remove duplicate LANGUAGE test directives
...
To help them run on the old infrastructure, which light analysis tests
are still using.
2023-06-13 17:48:23 +00:00
Alexander Udalov
be4df35867
Tests: add FILE directives to some multimodule tests
...
To help them run on the old infrastructure, which light analysis tests
are still using.
2023-06-13 17:48:23 +00:00
Ivan Kylchik
f74fd947b3
[JVM_IR] Don't add synthetic accessor when processing function reference
...
The issue appeared after code refactoring. Originally we didn't
save generated accessor for symbols in `IrFunctionReference`. These
symbols will be processed in their own turn.
#KT-59079 Fixed
2023-06-08 11:13:50 +00:00
Evgeniy.Zhelenskiy
07576b03c4
[IR] Fix inline class constructors having MFVC parameters
...
Signed-off-by: Evgeniy.Zhelenskiy <Evgeniy.Zhelenskiy@jetbrains.com >
#KT-1179
2023-05-12 18:36:49 +00:00
Evgeniy.Zhelenskiy
2535a87f85
[IR] Change value classes lowering dispatching strategy
...
Signed-off-by: Evgeniy.Zhelenskiy <Evgeniy.Zhelenskiy@jetbrains.com >
#KT-1179
2023-05-12 18:36:49 +00:00
Evgeniy.Zhelenskiy
bf5fa61ffb
[IR] Unify MFVC bridge redirection, fix related bugs, support MFVC overriding functions with default parameters
...
#KT-1179
2023-05-04 16:44:18 +00:00
Evgeniy.Zhelenskiy
8c748bfea4
[IR] Add more tests for inline/value classes secondary constructors
...
Signed-off-by: Evgeniy.Zhelenskiy <Evgeniy.Zhelenskiy@jetbrains.com >
#KT-55333
2023-04-17 12:10:14 +00:00
Ivan Kylchik
b812a6c6f5
Ignore tests that are currently not working with IR inliner
2023-03-14 20:47:42 +00:00
Evgeniy.Zhelenskiy
948714e7e5
[IR] Fix delegating MFVC constructors
...
Signed-off-by: Evgeniy.Zhelenskiy <Evgeniy.Zhelenskiy@jetbrains.com >
#KT-1179
2023-03-13 19:49:10 +01:00
Evgeniy.Zhelenskiy
3b5ad0681f
[IR] Fix compiler bugs with MFVC to let KorGE run
...
Signed-off-by: Evgeniy.Zhelenskiy <Evgeniy.Zhelenskiy@jetbrains.com >
#KT-1179
2023-03-13 13:09:56 +00:00
Evgeniy.Zhelenskiy
9b3fc34f78
[IR] Add for statement to tests for MFVC returning from inline functions
...
Signed-off-by: Evgeniy.Zhelenskiy <Evgeniy.Zhelenskiy@jetbrains.com >
#KT-1179
2023-03-13 13:09:56 +00:00
Evgeniy.Zhelenskiy
19424702e0
[IR] Fix mutable shared reference of MFVC type
...
Signed-off-by: Evgeniy.Zhelenskiy <Evgeniy.Zhelenskiy@jetbrains.com >
#KT-1179
2023-03-13 13:09:55 +00:00
Evgeniy.Zhelenskiy
5b868becf4
[IR] Hide regular class constructor with MFVC parameters
...
Signed-off-by: Evgeniy.Zhelenskiy <Evgeniy.Zhelenskiy@jetbrains.com >
#KT-1179
2023-03-07 21:44:41 +00:00
Evgeniy.Zhelenskiy
53b98503ed
[IR] Support MFVC properties without backing fields
...
Signed-off-by: Evgeniy.Zhelenskiy <Evgeniy.Zhelenskiy@jetbrains.com >
#KT-1179
2022-12-18 22:11:23 +00:00
Steven Schäfer
6af616d3c3
FIR: make declarations marked with 'override' implicitly open
...
#KT-52236 Fixed
2022-12-14 21:46:41 +00:00
Evgeniy.Zhelenskiy
abc1d942d1
[IR] Add tests for value classes secondary constructors with body and set language feature version for the feature
...
Signed-off-by: Evgeniy.Zhelenskiy <Evgeniy.Zhelenskiy@jetbrains.com >
#KT-55333
2022-12-11 22:06:47 +01:00
Evgeniy.Zhelenskiy
40f38c8adb
[IR] Eliminate redundant boxing/unboxing of MFVC after inlining
...
Signed-off-by: Evgeniy.Zhelenskiy <Evgeniy.Zhelenskiy@jetbrains.com >
#KT-1179
2022-12-08 15:12:28 +00:00
Mikhail Glukhikh
5cf1a88c42
FE: move delegate name functions to NameUtils
2022-12-02 21:54:18 +00:00
Dmitriy Novozhilov
1281b778fb
[Test] Fix broken testdata
2022-12-01 14:47:24 +02:00
Evgeniy.Zhelenskiy
fa4a4e56f3
[Tests] Remove unnecessary usages of OPTIONAL_JVM_INLINE_ANNOTATION
...
Signed-off-by: Evgeniy.Zhelenskiy <Evgeniy.Zhelenskiy@jetbrains.com >
#KT-1179
2022-11-30 18:55:42 +00:00
Evgeniy.Zhelenskiy
50310d42e3
[IR] MFVC lateinit variables and properties test
...
Signed-off-by: Evgeniy.Zhelenskiy <Evgeniy.Zhelenskiy@jetbrains.com >
#KT-1179
2022-11-30 18:55:42 +00:00
Evgeniy.Zhelenskiy
b7f249cdb6
[IR] Fix bugs in MFVC function references support
...
Signed-off-by: Evgeniy.Zhelenskiy <Evgeniy.Zhelenskiy@jetbrains.com >
#KT-1179
2022-11-30 18:55:41 +00:00
Evgeniy.Zhelenskiy
68fb8aa2a1
[IR] Replace indexes with names for mfvc methods and fields
...
Signed-off-by: Evgeniy.Zhelenskiy <Evgeniy.Zhelenskiy@jetbrains.com >
#KT-1179
2022-11-30 18:55:41 +00:00
Evgeniy.Zhelenskiy
b692748938
[IR] Always add getter methods to value classes even if not used
...
Signed-off-by: Evgeniy.Zhelenskiy <Evgeniy.Zhelenskiy@jetbrains.com >
#KT-1179
2022-11-30 18:55:40 +00:00
Evgeniy.Zhelenskiy
3653c86f08
[IR] Rename static replacement of MFVC typed equals to "equals-impl0"
...
Signed-off-by: Evgeniy.Zhelenskiy <Evgeniy.Zhelenskiy@jetbrains.com >
#KT-1179
2022-11-30 18:55:40 +00:00
Evgeniy.Zhelenskiy
38c80192f9
[IR] Support MFVC-typed properties and interfaces delegates
...
Signed-off-by: Evgeniy.Zhelenskiy <Evgeniy.Zhelenskiy@jetbrains.com >
#KT-1179
2022-11-30 18:55:40 +00:00
Evgeniy.Zhelenskiy
4d426fc4cd
[IR] Generate not FIR_IDENTICAL box fir value classes tests
...
Signed-off-by: Evgeniy.Zhelenskiy <Evgeniy.Zhelenskiy@jetbrains.com >
#KT-1179
2022-11-30 18:55:39 +00:00
Evgeniy.Zhelenskiy
adee33d3e5
[IR] Forbid MFVC primary constructors default arguments
...
Signed-off-by: Evgeniy.Zhelenskiy <Evgeniy.Zhelenskiy@jetbrains.com >
#KT-1179
2022-11-30 18:55:38 +00:00
Evgeniy.Zhelenskiy
c6e54e6433
[IR] Support object-like interaction with MFVC function references
...
Signed-off-by: Evgeniy.Zhelenskiy <Evgeniy.Zhelenskiy@jetbrains.com >
#KT-1179
2022-11-30 18:55:37 +00:00
Evgeniy.Zhelenskiy
9f01ccc304
[IR] Support user-defined equals for MFVC
...
Signed-off-by: Evgeniy.Zhelenskiy <Evgeniy.Zhelenskiy@jetbrains.com >
#KT-1179
2022-11-30 18:55:36 +00:00
Evgeniy.Zhelenskiy
51f9f31a0a
[IR] Remove suffix from MFVC specialized equals function
...
Signed-off-by: Evgeniy.Zhelenskiy <Evgeniy.Zhelenskiy@jetbrains.com >
#KT-1179
2022-11-30 18:55:36 +00:00
Evgeniy.Zhelenskiy
6107caa8e2
[FE1.0, FIR] Support secondary constructors for Value Classes
...
Signed-off-by: Evgeniy.Zhelenskiy <Evgeniy.Zhelenskiy@jetbrains.com >
#KT-1179
2022-11-30 18:55:35 +00:00
Evgeniy.Zhelenskiy
89d5592622
[IR] Support function references
...
Signed-off-by: Evgeniy.Zhelenskiy <Evgeniy.Zhelenskiy@jetbrains.com >
#KT-1179
2022-11-30 18:55:34 +00:00
Evgeniy.Zhelenskiy
51e76aa19a
[IR] Support default arguments
...
Signed-off-by: Evgeniy.Zhelenskiy <Evgeniy.Zhelenskiy@jetbrains.com >
#KT-1179
2022-11-30 18:55:33 +00:00
Ilya Chernikov
5b3816cce5
Test infra: refactor IGNORE_BACKEND directive
...
treat it as a general one, introduce *_K1 and *_K2 variants for
more specific ignoring
2022-11-12 16:28:23 +01:00
vladislav.grechko
70c2f2b86f
Support specifying different bytecode listings for FIR and old frontend
2022-10-21 12:57:11 +00:00
Evgeniy.Zhelenskiy
6117cdc0c3
[IR] Remove unused MFVC getters
...
Signed-off-by: Evgeniy.Zhelenskiy <Evgeniy.Zhelenskiy@jetbrains.com >
#KT-1179
2022-10-07 12:43:46 +00:00
Evgeniy.Zhelenskiy
9dd308dc01
[IR] Add context receivers test, fix a flattening fields bug
...
Signed-off-by: Evgeniy.Zhelenskiy <Evgeniy.Zhelenskiy@jetbrains.com >
#KT-1179
2022-10-07 12:43:46 +00:00
Evgeniy.Zhelenskiy
e1f886936c
[IR] Support try for MFVC
...
#KT-1179
2022-10-07 12:43:45 +00:00
Evgeniy.Zhelenskiy
f8aa3612f8
[IR] Support if and when for MFVC, fix several bugs, refactor
...
#KT-1179
2022-10-07 12:43:44 +00:00
Evgeniy.Zhelenskiy
70293fab60
[IR] Rename MFVC tests + Add test for get-field optimization
...
#KT-1179
2022-10-07 12:43:43 +00:00
Evgeniy.Zhelenskiy
ec3c0af09d
[IR] Suppress temporary test failing on Android
...
Bug is fixed in https://jetbrains.team/p/kt/reviews/6452
#KT-1179
2022-10-07 12:43:42 +00:00
Evgeniy.Zhelenskiy
6f94af80ab
[IR] Correct work of the new MFVC lowering classes
...
#KT-1179
2022-10-07 12:43:42 +00:00