Dmitriy Novozhilov
d898e256ca
[FIR] Don't update explicit delegated constructor calls of classes with @JvmRecord
...
^KT-54573 Fixed
2022-12-09 12:02:08 +00:00
Dmitriy Novozhilov
a86bc425e5
[FIR2IR] Lookup for nested classes in scope in Fir2IrLazyClass
...
^KT-55269 Fixed
2022-12-09 12:02:07 +00:00
Dmitriy Novozhilov
5d6cb2b691
[Test] Use IrPluginContext for searching declarations for DUMP_EXTERNAL_CLASS check
2022-12-09 12:02:07 +00:00
Dmitriy Novozhilov
e7f6482857
[Test] Use DUMP_EXTERNAL_CLASS instead of invalid DUMP_DEPENDENCIES directive in ir text tests
2022-12-09 12:02:06 +00:00
Dmitriy Novozhilov
9946bfcdfd
[FIR2IR] Properly handle error references in generation of receivers
...
^KT-53698 Fixed
2022-12-09 12:02:06 +00:00
Dmitriy Novozhilov
6c6525ecde
[FIR] Add test for KT-55026
2022-12-09 12:02:04 +00:00
Pavel Mikhailovskii
b31209a38a
KT-51951 Add a test
2022-12-09 09:47:23 +00:00
Pavel Mikhailovskii
76997edebe
KT-52373 Fix generation of synthetic functions with context receivers and default parameters
2022-12-09 09:39:26 +00: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
Marco Pennekamp
dbb02a9bfb
[FIR] Fir2IrJsResultsConverter: Compute hasErrors of backend input
...
- This allows us to re-enable 3 tests.
2022-12-08 13:01:17 +00:00
Dmitriy Novozhilov
44fd9ddf85
[Test] Add test for KT-55338
2022-12-08 10:19:36 +00:00
pyos
0d46dfc1ba
FIR: fix substitution of type arguments in SAM type aliases
...
^KT-54730 Fixed
2022-12-07 22:09:20 +00:00
Pavel Mikhailovskii
4676072137
KT-51284 Fix SAM conversion for methods with context receivers
2022-12-07 09:01:21 +00:00
Pavel Mikhailovskii
2d69fd5a8a
KT-52027 Encapsulate and fix calculation of parameter indices
2022-12-06 23:16:11 +00:00
Pavel Mikhailovskii
25ad7fe31c
KT-51863 Account for context receivers in calls with changed parameter order
2022-12-06 16:28:08 +00:00
Vladislav Grechko
cb93e9d408
Get rid of redundant boxing of unsigned operands of infix 'compareTo'
...
^KT-48759: Fixed
2022-12-02 18:25:52 +00:00
Sergej Jaskiewicz
1539d7ef1a
[klib] Bring package names in sync with the directory layout
...
Basically, some package names were Native-specific, whilst the packages
themselves were not Native-specific at all. This was already reflected
in the directory layout, but not in the package names.
This is fixed here.
NFC, just an automatic rename of packages with fixes of imports.
2022-12-01 21:46:43 +00:00
Sergej Jaskiewicz
672be7ecb5
[test] Allow files with same names in tests
...
Introduce a directive that allows compiling different files with
matching names in tests.
2022-12-01 17:15:55 +00:00
Artem Kobzar
3f4a937ad6
[K/JS] Don't generate TypeScript definitions from ExportModel if the -Xgenerate-dts flag was not provided ^Fixed KT-53940
2022-12-01 15:47:08 +00:00
Dmitriy Novozhilov
6b343515e1
[Test] Save IR bytecode dumps from BytecodeListingHandler to .ir.txt file instead of _ir.txt
...
This is needed to keep consistency with other dumps and to allow
test helper plugin to recognize those dumps
2022-12-01 07:29:37 +00:00
Dmitriy Novozhilov
dff5799c58
[Test] Don't create separate .fir.txt file in BytecodeListingHandler if not necessary
2022-12-01 07:29:35 +00:00
Pavel Mikhailovskii
f96d41e414
KT-4107 Don't generate readResolve for data objects
2022-11-30 21:07:20 +00: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
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
fa4ceb4ef4
[IR] Add diagnostics to forbid annotations for MFVC-typed elements
...
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
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
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
Evgeniy.Zhelenskiy
0c70b60988
[IR] Add context receiver test on MFVC
...
Signed-off-by: Evgeniy.Zhelenskiy <Evgeniy.Zhelenskiy@jetbrains.com >
#KT-1179
2022-11-30 18:55:33 +00:00
Yan Zhulanow
10fc86ef92
[FE] Add tests for 'containingClassForStaticMemberAttr'
2022-11-30 04:12:28 +00:00
Yan Zhulanow
4489ccf864
Simplify registering new debug diagnostics in FirDiagnosticsHandler
2022-11-30 04:12:27 +00:00
Yan Zhulanow
0e050ae7f1
[FE] Consider derived class tag on caching substitution scopes
2022-11-30 04:12:27 +00:00
Mikhail Glukhikh
c698d060c6
FIR2IR: support static fake overrides for fields (related to KT-53441)
...
#KT-54921 Fixed
2022-11-28 17:27:50 +00:00
Sergej Jaskiewicz
aa1b18b0c8
[IR] Prevent infinite recursion when rendering bound symbol references
...
Refactor the renderer, make BoundSymbolReferenceRenderer a static class
to prevent calling RenderIrElementVisitor's methods from it to avoid
infinite recursion in the future.
^KT-52677 Fixed
2022-11-28 16:43:53 +00:00
Ilya Chernikov
47448d779c
K2 Scripting: enable script diagnostic tests for FIR
...
also add script scopes test
2022-11-26 18:01:49 +00:00
Nikolay Lunyak
a454d42e65
[FIR] KT-54587: Report the missing diagnostics
...
^KT-54587 Fixed
Merge-request: KT-MR-7791
Merged-by: Nikolay Lunyak <Nikolay.Lunyak@jetbrains.com >
2022-11-25 10:19:58 +00:00
vladislav.grechko
50e92d2238
Add null checks in constructors taking value class types
...
^KT-53492: Fixed
2022-11-24 20:12:05 +00:00
Vladislav Grechko
cd6e865fb3
Improve support of 'lateinit' modifier
...
- Allow 'lateinit' for inline classes which underlying type
is suitable for 'lateinit'
- K2: report all problems related to 'lateinit' modifier
^KT-55052: Fixed
2022-11-24 19:47:21 +00:00
vladislav.grechko
e0c13e5276
Fix addAll & putAll invocations on inline mutable collections
...
^KT-54950: Fixed
2022-11-24 19:27:42 +00:00
Denis.Zharkov
ca12cfb90d
K2: Do not fix variables that has yet unprocessed constraints in forks
...
Otherwise, exception from org.jetbrains.kotlin.resolve.calls.inference.components.ConstraintInjector.TypeCheckerStateForConstraintInjector.fixedTypeVariable
might happen during forks resolution
The test data is extracted from intelliJ FP test
^KT-43296 Fixed
2022-11-24 17:29:30 +00:00
Denis.Zharkov
b73acd7a3a
K2: Apply constraints from forks at UNTIL_FIRST_LAMBDA completion phase
...
Otherwise, OVERLOAD_RESOLUTION_AMBIGUITY is reported for the calls to
the functions annotated as @OverloadResolutionByLambdaReturnType
^KT-43296 In Progress
2022-11-24 17:29:29 +00:00
Denis.Zharkov
10d63cc52a
K2: Postpone inference forks resolution until FULL completion
...
It helps to use expected type information when choosing the branch
even in the nested calls
^KT-43296 In Progress
2022-11-24 17:29:29 +00:00
Denis.Zharkov
715a73c8fb
K2: Support inference case with a mix of smart-cast and expected type
...
The idea is that we should not fix (i.e. choose any of the fork branches)
on the stage of candidate processing before completion, but it's enough
just to check that current state can be converged to success.
And when completion starts, and we add expected type to the system,
we've got more information to choose the correct fork branch.
NB: The old `processForkConstraints` is being called just
at the beginning of the completion phase.
^KT-43296 In Progress
2022-11-24 17:29:28 +00:00
Ivan Kylchik
a1477983ba
Properly handle vararg interpretation for classic frontend
...
#KT-55108 Fixed
2022-11-24 11:07:07 +00:00
Denis.Zharkov
f7d8fd54ca
K2: Fix deserialization of flexible type based on type parameter
...
It's anyway safe to use avoidComprehensiveCheck = true because
during deserialization we're sure that we need DNN type because
it's been serialized as such.
2022-11-24 09:39:58 +00:00
Ivan Kochurkin
194d1cfccf
[FIR] Filter out incorrect library provides for dependencyProviders
...
Get rid of providers duplication
2022-11-23 18:29:29 +00:00
Ivan Kochurkin
6e76978530
[FIR] Consider anonymous objects in FirSuperclassNotAccessibleFromInterfaceChecker
...
^KT-54673 Fixed
2022-11-23 18:29:28 +00:00
Mikhail Glukhikh
f62bdb0e3d
K1 opt-in: fix message/behavior for future error with WasExperimental
2022-11-23 12:00:08 +00:00
Mikhail Glukhikh
b92ce68f32
K2 opt-in: restore marker annotation check for constructors
2022-11-23 12:00:07 +00:00