Ilya Kirillov
950a32901c
[Analysis API FIR] refactoring, remove duplicated code from KtFir(Non)StarImporting scope
...
use base class implementation instead.
2023-05-19 11:53:15 +00:00
Ilya Kirillov
55bbc5eb02
[Analysis API FIR] refactoring, extract base part of KtFirDelegatingScope into a separate class
...
For further reuse
2023-05-19 11:53:15 +00:00
Ilya Kirillov
41976a2932
[Analysis API] optimize scope members processing when a candidate name set is known
...
Use KtScope.getCallableSymbols/getClassifier symbols overloads which accept a candidate name set.
^KT-58653
2023-05-19 11:53:15 +00:00
Ilya Kirillov
29be88e3c9
[Analysis API] add KtScope.getCallableSymbols/getClassifier symbols overloads which accept a candidate name set
...
This is needed for the cases when a candidate name set is known
to avoid retrieving a set with all possible names when processing the scope.
^KT-58653 fixed
2023-05-19 11:53:15 +00:00
Kirill Rakhman
aacdfb67c6
[Stubs] Bump stubs version
...
#KT-58786
2023-05-19 11:50:40 +00:00
Kirill Rakhman
47b8fd7e0c
[AA] Mute tests related to decompilation of aliased types from stubs
...
#KT-58786
2023-05-19 11:50:40 +00:00
Kirill Rakhman
8f447e5b78
Revert "[AA] Deserialize reference to typealias from stubs as fully expanded"
...
This reverts commit 3c22b1ce53 .
#KT-58335
#KT-58786
2023-05-19 11:50:40 +00:00
Vladimir Sukharev
363c56e226
[K2/N] Export C adapters for non-root packages
...
^KT-56182
Merge-request: KT-MR-10160
Merged-by: Vladimir Sukharev <Vladimir.Sukharev@jetbrains.com >
2023-05-19 11:40:59 +00:00
Sergey Bogolepov
c57c34525f
[K/N] KT-58562: Implement frontend checkers for HiddenFromObjC on classes
2023-05-19 11:33:17 +00:00
Ilmir Usmanov
f3a22e0ac4
Warn about suspend extension functional types as supertypes
...
They will become error in 2.0
#KT-58529 Fixed
#KT-49175 Fixed
2023-05-19 12:41:37 +02:00
Dmitriy Novozhilov
b19116d3af
[FIR] Provide implementation of ExpectActualMatchingContext for FIR
...
^KT-58578
2023-05-19 10:19:17 +00:00
Dmitriy Novozhilov
8338370fbd
[FE 1.0] Provide implementation of ExpectActualMatchingContext for FE 1.0
...
^KT-58578
2023-05-19 10:19:17 +00:00
Dmitriy Novozhilov
b26b649d4e
[FE] Introduce commonized version of expect/actual compatibility calculator
...
This is needed to use the same code for those checks between
both frontends and backend
^KT-58578
2023-05-19 10:19:17 +00:00
Dmitriy Novozhilov
2c2f12d9ac
[FIR] Slightly reformat FirFunctionSymbol.kt
2023-05-19 10:19:17 +00:00
Michael Knudson
067456c052
Clarify error message for abstract property in primary constructor
2023-05-19 09:40:49 +00:00
Dmitrii Gridin
16214e01d1
[LL FIR] do not process member declarations during expect-actual phase
...
^KT-56551
2023-05-19 09:26:43 +00:00
Dmitrii Gridin
76b9cc6a04
[LL FIR] add lazy resolve test on expect-actual phase
...
^KT-56551
2023-05-19 09:26:43 +00:00
Dmitrii Gridin
14b28ba99b
[LL FIR] drop redundant lazy resolve to imports phase
...
Also, createTowerDataContext now uses cache
^KT-56551
2023-05-19 09:22:22 +00:00
Dmitrii Gridin
81ff3916e6
[LL FIR] resolve file to import phase only under lock
...
^KT-56551
2023-05-19 09:22:21 +00:00
Dmitrii Krasnov
8e3469f220
added mpp platform values into AllowedListAnonymizer for statistics
...
#KT-58104 InProgress
2023-05-19 06:41:52 +00:00
Ivan Kylchik
e0e1d57120
[IR] Check object init was called in case of name interpretation
...
#KT-58717 Fixed
2023-05-18 18:16:54 +00:00
Ivan Kylchik
e5c45a4e51
[IR] Move extension val property into Utils for interpreter
2023-05-18 18:16:54 +00:00
Ivan Kylchik
70560fc3eb
[IR] Handle each interpreter checker one by one
...
This wy we can interpret all expressions like `A::a.name` at first and
after that evaluate all complex expressions like
`A::a.name + A::b.name`.
2023-05-18 18:16:54 +00:00
Ivan Kylchik
e58e20fc7b
[IR] Add special preprocessors for ir interpreter
...
These preprocessors allow us to modify IR at first and only after that
try to evaluate. With this we can drop `KCallableNamePropertyLowering`.
2023-05-18 18:16:54 +00:00
Ivan Kylchik
c8371a339f
[IR] Create common interface for all interpreter checkers
2023-05-18 18:16:54 +00:00
Ivan Kylchik
82a111250b
[IR] Drop excess containingDeclaration parameter from IR checker
2023-05-18 18:16:54 +00:00
Ivan Kylchik
1fd8ef801e
[IR] Create special checker that will analyze name methods
...
We can insert all this logic into `IrCompileTimeChecker` but it is
a little bit specific and looks like it is nicer to just extract it.
2023-05-18 18:16:54 +00:00
Ivan Kylchik
104ac4bd69
[IR] Move IR interpreter transformers into separate package
2023-05-18 18:16:53 +00:00
Ivan Kylchik
b779dc5d27
[IR] Drop all explicit usages of EvaluationMode from interpreter checker
2023-05-18 18:16:53 +00:00
Ivan Kylchik
e3fa342d5c
[IR] Drop WITH_ANNOTATIONS evaluation mode in interpreter
...
This is old mode, that was used mainly in prototype phase
2023-05-18 18:16:53 +00:00
Ivan Kylchik
535806d0ab
[K2] Force interpretation of default argument for annotation's property
...
We miss these expression because they might be represented as
`IrGetFiled` values, but they still must be turned into `IrConst`.
#KT-58007 Fixed
2023-05-18 18:16:53 +00:00
Yahor Berdnikau
37402336d5
[Gradle] Fix compiler plugins options were not passed to KaptGenerateStubs task
...
^KT-58745 Fixed
2023-05-18 14:55:16 +00:00
Sergej Jaskiewicz
5f5b32b8ae
[IR] Add kdocs for IrSymbol-related classes and interfaces
2023-05-18 12:19:52 +00:00
Sergej Jaskiewicz
e473eaa5d6
[IR] Give generic parameters proper names in IrSymbol-related classes
...
Single-letter names were very confusing, especially in declarations like
```kotlin
private inline fun <
reified D : IrDeclaration,
reified ES : IrDelegatingSymbol<AS, D, *>,
reified AS : IrBindableSymbol<*, D>
> finalizeExpectActual(
expectSymbol: ES,
actualSymbol: IrSymbol,
noinline actualizer: (e: D, a: D) -> Unit
)
```
2023-05-18 12:19:52 +00:00
Pavel Kirpichenkov
88d68f77e5
[LL FIR] Temporarily stub common FIR session factory with JVM
...
A measure to not break tests until common session factory impl is ready
KT-58769
2023-05-18 09:48:40 +00:00
Pavel Kirpichenkov
2a79643dcf
[LL FIR] introduce platform-aware LL FIR session factories
...
KT-58769
2023-05-18 09:48:40 +00:00
Aleksei.Cherepanov
e11f7daae4
Disable JvmTargetDefaultSubstitutor
...
Disable JvmTargetDefaultSubstitutor as far as minimal supported jvmTarget version is 1.8
#KTIJ-25445 Fixed
2023-05-17 21:47:21 +00:00
Alexander.Likhachev
3273ee4519
[Build, IGS] Add a plugin-switch property
...
The plugin is not being actually applied until the `kotlin.build.internal.gradle.setup` property is explicitly set to enable the plugin logic.
#KTI-1223 Fixed
2023-05-17 19:36:15 +00:00
Alexander.Likhachev
b304f54d80
[Build] Apply InternalGradleSetupSettingsPlugin at first
...
#KTI-1223 In Progress
2023-05-17 19:36:15 +00:00
Alexander.Likhachev
ecbf5abb81
[Build, IGS] Don't run a separate thread as it leads to problems with user input
...
#KTI-1223 In Progress
2023-05-17 19:36:15 +00:00
Alexander.Likhachev
1e583d2946
[Build, IGS] Add logging to InternalGradleSetupSettingsPlugin
...
#KTI-1223 In Progress
2023-05-17 19:36:15 +00:00
Alexander.Likhachev
2a634ead6f
[Build, IGS] Specify the used value in the case of a property override
...
#KTI-1223 In Progress
2023-05-17 19:36:15 +00:00
Alexander.Likhachev
cf03863b65
[Build, IGS] Ignore non-existing keys during setup file parsing
...
#KTI-1223 In Progress
2023-05-17 19:36:15 +00:00
Alexander.Likhachev
ea38cfebf2
[Build, IGS] Implement InternalGradleSetupSettingsPlugin
...
#KTI-1223 In Progress
2023-05-17 19:36:15 +00:00
Alexander.Likhachev
f04f1d18c4
[Build, IGS] Implement ConsentManager
...
#KTI-1223 In Progress
2023-05-17 19:36:14 +00:00
Alexander.Likhachev
6804d0a0af
[Build, IGS] Implement LocalPropertiesModifier
...
#KTI-1223 In Progress
2023-05-17 19:36:14 +00:00
Alexander.Likhachev
e30b72fa8f
[Build, IGS] Deserialize setup json using kotlinx-serialization-json
...
#KTI-1223 In Progress
2023-05-17 19:36:14 +00:00
Alexander.Likhachev
188203197b
[Build] Add internal-gradle-setup settings plugin
...
#KTI-1223 In Progress
2023-05-17 19:36:14 +00:00
Alexander.Likhachev
e8ab063dc9
Use uppercase() instead of uppercase(Locale) in CliJavaModuleFinder
...
It follows the 877438b1f3 commit removing LV/AV limits for the module and it needed to avoid, for example, cases when `i` is being uppercased to `İ` in the `TR` locale
2023-05-17 19:34:40 +00:00
Alexander.Likhachev
169ef4874f
[Build] Enable checks of the build tools API on CI
...
At the moment, the only check is the binary compatibility check
#KT-58479 Fixed
2023-05-17 18:57:11 +00:00