Commit Graph

44628 Commits

Author SHA1 Message Date
Ivan Kochurkin 20c53fc15d Unify JvmSignatureSerializer 2023-07-12 13:11:25 +00:00
Ivan Kochurkin 4d24a8b40c [FIR] Remove duplicated code discovered by running inspection 2023-07-12 13:11:25 +00:00
Ivan Kochurkin 1a28067b76 [FIR] Merge FirBasedKotlinMangler into FirMangler
FirMangler has only one implementation and it's FirBasedKotlinMangler

It looks excessive
2023-07-12 13:11:24 +00:00
Ivan Kochurkin ca93165044 [FIR] Remove useless code discovered by code coverage 2023-07-12 13:11:24 +00:00
Pavel Mikhailovskii 9486d966dc [FIR] Keep slashes in FirJvmTypeMapper.Context.getClassInternalName 2023-07-12 13:06:00 +00:00
Dmitrii Krasnov f2816a5531 Added property for overriding konan distribution location
#KT-50463 Fixed

Merge-request: KT-MR-10310
Merged-by: Dmitrii Krasnov <Dmitrii.Krasnov@jetbrains.com>
2023-07-12 12:36:51 +00:00
Brian Norman 10ed26991d [FIR] Extract LHS receiver of assignment operator statements
#KT-53490 Fixed
2023-07-12 11:41:33 +00:00
Timofey Solonin c245fa45e3 Split K2 and K1 test data for multiplatform feature diagnostic
and add an explicit expect to the test data

^KT-31281
2023-07-12 10:50:33 +00:00
Anastasia.Nekrasova fcba0ad75e [Test] Add a test covering for resolution to subsumed members for raw types
^KT-57620
2023-07-12 09:11:01 +00:00
Timofey Solonin e12e78d96b Add an explicit diagnostic for when expect/actual modifiers are used in
an unsupported compilation

^KT-31281
2023-07-12 08:29:28 +00:00
Artem Kobzar fdda394a77 [K/JS] Calculate generated function names based on signatures of argument types (instead of fqNames) ^KT-49077 Fixed 2023-07-11 13:14:45 +00:00
Denis.Zharkov e94a0b8483 K2: Suppress "unused" for some methods at DependencyListForCliModule
Because we assume this part as a part of a public API
2023-07-11 13:12:22 +00:00
Denis.Zharkov e98890cece K2: Remove a bunch of unused declarations 2023-07-11 13:12:22 +00:00
Denis.Zharkov 1705d5f704 K2: Add @Supress("unused") to debug-related helpers 2023-07-11 13:12:22 +00:00
Denis.Zharkov f7e54fa76a K2: Simplify FirToConstantValueTransformer hierarchy
FirToConstantValueTransformerSafe was unused and then
there only one FirToConstantValueTransformer left
2023-07-11 13:12:22 +00:00
Denis.Zharkov 379ec2fae8 K2: Get rid of redundant enum at FirOptInUsageBaseChecker 2023-07-11 13:12:22 +00:00
Denis.Zharkov 987fa87c90 K2: Remove redundant parameters in ClassWrapper 2023-07-11 13:12:22 +00:00
Denis.Zharkov 03e06be324 K2: Remove redundant TypeModifier class 2023-07-11 13:12:22 +00:00
Dmitriy Dolovov b7bd078a31 [PL] Lower the default PL engine messages log level down to INFO
^KT-59136
2023-07-11 11:37:35 +00:00
Jinseong Jeon 6fc02c3408 SLC: ROOT package exists no matter what
^KT-59843 Fixed
2023-07-11 11:47:23 +02:00
Ivan Kylchik 076305bb78 [Test] Drop SMAPTestUtil.kt file
It is not used anywhere. Probably left after transition to new test
infrastructure.
2023-07-11 09:30:26 +00:00
Mikhail Glukhikh 39406710b2 FIR2IR: fix origin calculation for explicit inc/dec calls 2023-07-11 08:28:04 +00:00
Mikhail Glukhikh f8ca440e96 K2: resolve Java enum entries from the beginning (related to KT-59464) 2023-07-11 08:28:04 +00:00
Mikhail Glukhikh e6d43c1f48 FIR2IR: simplify operations with getStatementsOrigin
#KT-54989 Fixed
2023-07-11 08:28:04 +00:00
Mikhail Glukhikh ba0ab38b83 K2: set vararg type for Java annotations #KT-59464 Fixed 2023-07-11 08:28:04 +00:00
Mikhail Glukhikh 6f8e2b4718 FIR2IR: Drop a set of redundant or unclear TODOs 2023-07-11 08:28:04 +00:00
Mikhail Glukhikh c2135b72c4 Fir2IrLazyProperty: simplify backing field check a little bit 2023-07-11 08:28:04 +00:00
Mikhail Glukhikh 71456c5514 FIR2IR: properly set constant expression type 2023-07-11 08:28:04 +00:00
Mikhail Glukhikh 09175c7d56 Fir2IrLazyProperty: drop redundant error type check 2023-07-11 08:28:04 +00:00
Mikhail Glukhikh 0e6a7bbe82 FIR2IR: simplify ConversionTypeOrigin/Context 2023-07-11 08:28:04 +00:00
Mikhail Glukhikh 2c0c9e5b5c FIR2IR: drop error type check in createIrProperty 2023-07-11 08:28:04 +00:00
Mikhail Glukhikh 595aace885 Fir2IrConverter: unite two process*Members functions in processClassMembers 2023-07-11 08:28:04 +00:00
Timofey Solonin 792b6482c0 Emit MultiPlatformProjects diagnostic on all declarations
where expect/actual modifier is present

^KT-31281
2023-07-10 17:26:23 +00:00
Sergej Jaskiewicz 341f61428b [klib] Restore compatibility for IdSignature.CommonSignature constructor
^KT-59771 Fixed
2023-07-10 16:27:47 +00:00
Ivan Kylchik 0c6e2f135e [Native] Drop constantInliningPhase
We don't need this lowering anymore because corresponding work is done
by `constEvaluationPhase`
2023-07-10 13:19:52 +00:00
Ivan Kylchik a4b8ab8199 [Native] Forbid to inline NaN values during const evaluation 2023-07-10 13:19:52 +00:00
Ivan Kylchik 8e42ccaccb [IR] Drop FoldConstantLowering and StringTrimLowering 2023-07-10 13:19:51 +00:00
Ivan Kylchik ad6332112e [IR] Support const optimizations for Native backend 2023-07-10 13:19:51 +00:00
Pavel Mikhailovskii 6e6a4d6411 KT-59836 [SLC] Copy type parameters from the parent interface to DefaultImpls methods 2023-07-10 13:11:21 +00:00
Nikolay Lunyak d13e60aaec [FIR] Prevent loosing errors for synthetic outer calls
The error occurs when completing the
call for the outer synthetic call
`ACCEPT_SPECIFIC_TYPE`. The error
is saved into the CS of this outer
candidate, which leads to its
callable reference to be an error
reference, but since such calls are
not parts of the FIR tree, we never
collect such errors.

^Fixed KT-59233
2023-07-10 10:26:43 +00:00
Nikolay Lunyak 79fce56c95 [FIR] Add a test for KT-59233 2023-07-10 10:26:43 +00:00
Nikolay Lunyak d4c6e55e0a [FIR] Require equivalent candidates to have the same parameters count 2023-07-10 09:43:22 +00:00
Nikolay Lunyak fe783d7121 [FIR] Require equivalent candidates to have the same parameters order
NB: In general, it's unclear what to do in cases
like the following one, even when sometimes
we could, indeed, prefer something:

```
fun foo(a: Int, b: String, c: Boolean)
fun foo(b: String, c: Boolean, a: Int)

foo(c = false, b = "", a = 0)
```

^KT-55933 Fixed
2023-07-10 09:43:22 +00:00
Nikolay Lunyak 4f0563dee1 [FIR] Add a test for KT-55933 2023-07-10 09:43:22 +00:00
Nikolay Lunyak da60be06a0 [FIR] Add references to TODOs in checkers 2023-07-10 09:28:55 +00:00
Nikolay Lunyak 8c5b2ae85b [FIR] Fix modifying CheckerContext inside checkers
`InlineFunctionBodyContext` was not moved
outside the class to preserve as much
git blame info as possible.

^KT-56460 Fixed
2023-07-10 09:28:55 +00:00
Nikolay Lunyak ed2f0c295b [FIR] Remove the TODO from FirExplicitBackingFieldForbiddenChecker
Looks obsolete, nothing seems to fail.
2023-07-10 09:28:54 +00:00
Nikolay Lunyak b46d4e5399 [FIR] Check classes for EXPECTED_PRIVATE_DECLARATION 2023-07-10 09:28:54 +00:00
Nikolay Lunyak e7f1da3619 [FIR] Check actuals in FirOverloadsChecker 2023-07-10 09:28:54 +00:00
Nikolay Lunyak a9207a8396 [FIR] Remove the TODO in FirJvmAnnotationHelper.kt
This code should not be reachable when not
in JVM. `jvmDefaultModeState` is only
accessed from the JVM checkers.
2023-07-10 09:28:54 +00:00