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
Evgeniy.Zhelenskiy
8ba20bee5b
[IR] Prepare MFVC-lowering for the new MFVC classes
...
#KT-1179
2022-10-07 12:43:41 +00:00
Evgeniy.Zhelenskiy
eb0aa55571
[IR] Fix MFVC with type arguments/parameters
...
#KT-1179
2022-10-07 12:43:40 +00:00
Evgeniy.Zhelenskiy
f9bed3d946
[IR] Support MFVC with type parameters
...
#KT-1179
2022-10-07 12:43:40 +00:00
Evgeniy.Zhelenskiy
14b8e41967
[IR] Integrate MFVC with Inline classes
...
#KT-1179
2022-10-07 12:43:39 +00:00