Anna Kozlova
cf6a06fd14
[LL] [cls] don't access index to retrieve fir for given ktElement
...
also don't check name pattern, because
given ktElement proves that corresponding package contains something
2023-05-09 07:36:11 +00:00
Anna Kozlova
e47561e70b
[FIR tests] do not distinguish builtins & library origins
...
fir which is retrieved by LL symbol providers based on stubs,
receives builtin origin when found in kotlin_builtins
pure compiler providers found the same fir declarations in stdlib
and thus receive Library origin
to avoid splitting the testdata, let's ignore the difference
2023-05-09 07:36:11 +00:00
Anna Kozlova
89a03a74e4
[FIR] make use of FirFromMissingDependenciesNamedReference
...
during java annotations mapping in IDE, kotlin classes are not available,
thus FirFromMissingDependenciesNamedReference is created
Corresponding test in IJ repo:
K2HighlightingMetaInfoTestGenerated.Uncategorized#testJavaTypes
2023-05-09 07:36:10 +00:00
Anna Kozlova
366c67a668
extract StandartNames.NAME constant
2023-05-09 07:36:10 +00:00
Anna Kozlova
92b6a77431
[LL] [cls] remove search for sources for decompiled FIR
...
stub based deserializer provides sources during initialization,
no need to search afterward
2023-05-09 07:36:10 +00:00
Anna Kozlova
5ca052f87b
[LL] [cls] use stubBased symbol provider for builtins
...
this gives the following benefits:
1. no protobuf in memory, all data is already present in stubs
2. given that symbol provider for libraries is already stub based,
we can get rid of complicated code to find source psi by deserialized fir
3. it's also possible to reduce number of index access,
when fir is requested for given ktElement
2023-05-09 07:36:09 +00:00
Sebastian Sellmair
c2970c4dda
[Gradle] Add initial samples into KotlinPluginLifecycleSample
...
KT-58275
2023-05-09 07:32:38 +00:00
Sebastian Sellmair
c05b86dc7c
[Gradle] KotlinPluginLifecycle: Do not enter AfterBuildscriptEvaluate stage on failures
...
KT-58275
2023-05-09 07:32:38 +00:00
Sebastian Sellmair
b437c3e0e9
[Gradle] KotlinPluginLifecycle: Rename .configured to .configurationResult
...
^KT-58255 Verification Pending
2023-05-09 07:32:38 +00:00
Sebastian Sellmair
08055b6188
[Gradle] KGP Diagnostics: Update KotlinGradleProjectChecker documentation
...
KT-58275
2023-05-09 07:32:38 +00:00
Sebastian Sellmair
287c431bc4
[Gradle] KGP Diagnostics: Run diagnostics launched & schedule report once Project is configured
...
KT-58275
2023-05-09 07:32:38 +00:00
Sebastian Sellmair
d170897dbf
[Gradle] Introduce Project.configured: Future<ProjectConfigurationResult> API
...
KT-58275
2023-05-09 07:32:38 +00:00
Sebastian Sellmair
f616fffeb0
[Gradle] KotlinPluginLifecycle: Detect failure and abort further configuration
...
KT-58275
2023-05-09 07:32:37 +00:00
Sebastian Sellmair
8e9c3a21c0
[Gradle] Ensure Kotlin Plugin Lifecycle is started before in Plugin.apply
...
This should enable the lifecycle to still get into the
first 'afterEvaluate' based phase, even when an exception was thrown
in apply
KT-58275
2023-05-09 07:32:37 +00:00
Dmitrii Krasnov
375ff5ed2c
migrated AppleFrameworkIT to junit5 and gradle TestKit
...
#KT-51553 In Progress
Merge-request: KT-MR-9856
Merged-by: Dmitrii Krasnov <Dmitrii.Krasnov@jetbrains.com >
2023-05-09 07:17:14 +00:00
Igor Chevdar
b6030b3517
[K/N] Devirtualization: virtual calls from external world fix
...
The fix deals with the situation where a virtual function potentially from
the external world (because of the receiver) returns a final type (if it isn't final,
then it's conservatively assumed that no devirtualization could be done on it).
#KT-57791 Fixed
2023-05-09 05:25:11 +00:00
Igor Chevdar
197cba35eb
[K/N] Added couple of reproducers for KT-57791
2023-05-09 05:25:11 +00:00
Anna Kozlova
c46a95aad7
[Light classes] do not write explicit options for IDE
...
those options are configured explicitly by test
2023-05-08 20:30:24 +00:00
Yahor Berdnikau
0790fef161
Fix explicit api mode in commonizer
...
^KT-57653
2023-05-08 19:43:43 +00:00
Yahor Berdnikau
d57623891d
Fix explicit api issues in analysis modules
...
Explicit api mode was not working due to the bug.
^KT-57653
2023-05-08 19:43:43 +00:00
Yahor Berdnikau
1860683a71
Fix explicit api issues in kotlin-build-tools-api
...
Explicit api mode was not working due to the bug.
^KT-57653
2023-05-08 19:43:43 +00:00
Yahor Berdnikau
2ea65bd658
Fix explicitApiMode could be overwritten by freeCompilerArgs
...
Now tasks has a separate task input for 'explicitApiMode' which is
passed to Kotlin compiler via arg, rather than free compiler args.
^KT-57653 Fixed
2023-05-08 19:43:43 +00:00
Dmitrii Gridin
d3043b6f1c
[LL FIR] do not treat declarations from object literal as non-local
...
^KTIJ-25437 Fixed
2023-05-08 16:08:26 +00:00
Mikhail Zarechenskiy
6d7dc45ce6
K1: Add test for compatibility check of Enum.entries
...
Basically, the test checks that adding Enum.entries feature doesn't
break the existing code where it clashes with the user-defined "entries"
declaration; it's better to have a black-box test to be sure
that the compiler doesn't invoke something different at runtime
The test covers KT-53153 and KT-56587
Merge-request: KT-MR-9798
Merged-by: Michail Zarečenskij <Mikhail.Zarechenskiy@jetbrains.com >
2023-05-08 15:35:25 +00:00
Dmitrii Gridin
25f2c513f6
[LL FIR] drop global phase lock for super types phase
...
^KT-56551
2023-05-08 14:42:10 +00:00
Dmitrii Gridin
13dc4c8014
[LL FIR] split LLFirLockProvider on read and write API
...
^KT-56550
2023-05-08 14:42:10 +00:00
Nikolay Lunyak
76df0f9ad1
[FIR] KT-48870: Allow resolution to InaccessibleImplicitReceiverValue
...
^KT-48870 Fixed
2023-05-08 14:25:54 +00:00
Mikhail Glukhikh
f472f68dc5
SymbolTable: replace assert with require in createOwnerSafe
...
Related to KT-57049
2023-05-08 13:32:18 +00:00
Mikhail Glukhikh
dbdefe90a3
FIR2IR: add workaround for SymbolTable conflicts in property/field situation
...
Related to KT-57049
2023-05-08 13:32:18 +00:00
Mikhail Glukhikh
6c5afa4b87
SymbolTable: unmute the symbol comparison condition
...
#KT-57049 Fixed
2023-05-08 13:32:18 +00:00
Mikhail Glukhikh
e92cb49b24
K2: fix SymbolTable accessing in getIrClassSymbolForNotFoundClass
...
Related to KT-57049
2023-05-08 13:32:18 +00:00
Mikhail Glukhikh
db45f5f7db
FIR2IR: drop unused members from Fir2IrBindableSymbol & its inheritors
2023-05-08 13:32:18 +00:00
Dmitrii Krasnov
af4ef048be
migrated NativeIrLinkerIssuesIT to junit 5 and gradle TestKit
...
#KT-51553 In Progress
Merge-request: KT-MR-9921
Merged-by: Dmitrii Krasnov <Dmitrii.Krasnov@jetbrains.com >
2023-05-08 13:22:36 +00:00
Ilya Goncharov
cbcd68cd85
[Gradle, JS] Upgrade NPM versions
...
^KT-58522 fixed
2023-05-08 13:21:39 +00:00
Ilya Goncharov
f204a34909
[Gradle, JS] Add Gradle integration tests with language version 2.0
...
^KT-56740 fixed
2023-05-08 12:30:57 +00:00
Ilya Goncharov
7a4c688b5c
[Gradle, JS] Upgrade yarn.lock
2023-05-08 12:10:36 +00:00
Dmitrii Gridin
b9dd2f736a
[LL FIR] avoid redundant recursive type resolve for type aliases
...
In LL FIR we will do this by crawlSupertype
^KT-56550
2023-05-08 12:06:55 +00:00
Dmitrii Gridin
46f987ba79
[LL FIR] do not try to access supertypeRefs for classes during super types phase
...
We should try to find supe type refs in a session firstly, otherwise
we can try to access by getResolvedSuperTypeRefsForOutOfSessionDeclaration
^KT-56550
2023-05-08 12:06:55 +00:00
Dmitrii Gridin
873c7d63ed
[LL FIR] avoid redundant pass through the entire super type hierarchy for nested classes
...
We can omit this step in LL FIR because, according to the contract,
an outer class must be resolved before nested class
Also, it drops unsafe access to superTypeRefs from FIR transformer
^KT-56550
2023-05-08 12:06:55 +00:00
Dmitrii Gridin
ee74e10f28
[FIR] avoid jumping from super type transformer for local classes to unresolved non-local classes
...
In the worst case, we will visit the entire hierarchy of a local class,
where non-local classes are not yet resolved
^KT-56550
2023-05-08 12:06:55 +00:00
Dmitry Savvinov
6f584bcbe7
[mpp] Fix reporting of pre-HMPP dependencies from intermediate source sets
...
It's an unfortunate clash between introduction of KotlinPluginLifecycle
and changes in 'deprecationDiagnostics.kt'. It used 'afterEvaluate',
but with KotlinPluginLifecycle later stages are effectively invoked
in multiple nested afterEvaluate, making them invisible for single
afterEvaluate.
Specifically in this case, configuration of metadata compilations for
intermediate source sets is executed in 'FinaliseCompilations' stage,
which is simply not executed by the time checker runs in its single
afterEvaluate.
The fix is trivial -- wrap diagnostic checks runs into launchInStage
^KT-58470 Fixed
2023-05-08 10:42:11 +00:00
Dmitrii Krasnov
4dd54e4de4
migrated CommonNativeIT to junit 5 and gradle TestKit
...
#KT-51553 In Progress
Co-authored-by: Alexander Likhachev <Alexander.Likhachev@jetbrains.com >
Merge-request: KT-MR-9750
Merged-by: Dmitrii Krasnov <Dmitrii.Krasnov@jetbrains.com >
2023-05-08 09:38:13 +00:00
Alexander Udalov
530725c6bf
Kapt+JVM_IR: do not generate secondary constructor bodies
...
In addition to ceedad40f3 , do not generate bodies of constructors which
delegate to super.
#KT-58226 Fixed
2023-05-08 09:08:07 +00:00
Dmitrii Gridin
ba08f2c08a
[FIR] avoid jumping from status transformer for local classes to unresolved non-local classes
...
We must resolve a non-local declaration before access
if we want to jump from local to it to avoid possible problems
with parallel resolution
^KT-56550
2023-05-08 08:59:07 +00:00
Sergej Jaskiewicz
71c66cdb01
[test] Enable linkViaSignatures based on directive, not target backend
...
We want to be able to use signature-based linkage in other kinds
of tests.
2023-05-08 08:07:29 +00:00
Pavel Kunyavskiy
68a68b2763
[K/N] Refactor KonanSymbols to avoid descriptors when built over FIR
...
^KT-58437
2023-05-08 07:51:56 +00:00
Kirill Rakhman
7f9118d0f2
[FIR] Resolve property return type before resolving its annotations
...
This fixes TYPECHECKER_HAS_RUN_INTO_RECURSIVE_PROBLEM in a declaration
like `@Ann(myConst) const val myConst = ""`.
#KT-58080 Fixed
2023-05-08 07:45:57 +00:00
Mikhail Glukhikh
1c7ffb3276
ResultTypeResolver: don't allow Nothing as ILT subtype
...
#KT-58379 Fixed
2023-05-08 07:43:55 +00:00
Mikhail Glukhikh
6ae648f6f6
K2: reproduce KT-58379
2023-05-08 07:43:54 +00:00
Alexander Shabalin
142e2b4b2a
[K/N] Add RosettaExecutor
...
Merge-request: KT-MR-9986
Merged-by: Alexander Shabalin <Alexander.Shabalin@jetbrains.com >
2023-05-06 13:44:25 +00:00