Commit Graph

93251 Commits

Author SHA1 Message Date
Ilya Kirillov a10e55cd6a [analysis api] remove KtClassKind.ENUM_ENTRY as enum entry is not a classifier 2022-06-22 09:31:36 +02:00
Ilya Kirillov a16a01bf37 [analysis api] fix Analysis API contracts violation 2022-06-22 09:31:36 +02:00
Ilya Kirillov c2558521cf [analysis api fir] make KtFirBackingFieldSymbol.hashCode to be consistent with equals 2022-06-22 09:31:35 +02:00
Ilya Kirillov 0da66cc52f [Low Level API FIR] fix invalid traverse of supertypes list
the supertypes list should not be traversed without proper locking,
otherwise some transformer may transform it concurrently

In case of looking for a declaration by class id it just should not be traversed

^KTIJ-21791
2022-06-21 18:16:27 +00:00
Martynas Petuška 6cf085aafb KT-52637 SCSS support
^KT-52637 fixed
2022-06-21 18:12:50 +00:00
Mikhail Glukhikh b42cbf6650 Drop redundant comment to OptIn annotation class 2022-06-21 17:32:42 +00:00
Mikhail Zarechenskiy f4944d80b9 [DI] Do not recreate collections in case of empty results
^KT-52756
2022-06-21 17:07:28 +00:00
Pavel Kunyavskiy 5b1581486b [K/N] Disable safepoint removal test with non-default gc 2022-06-21 16:25:41 +00:00
Jaebaek Seo 6b3c10fa9c FIR usage: resolve KtFirSimpleNameReference using getter/setter
`fun getResolvedToPsi(analysisSession: KtAnalysisSession): Collection<PsiElement>`
of `KtFirReference` resolves the target of the reference. When the
target of reference to a property is a getter or setter, we have to
check the getter/setter if the target for the property does not
exist. This commit adds the fallback logic i.e., resolving the
getter/setter of the property in
`fun getResolvedToPsi(analysisSession: KtAnalysisSession): Collection<PsiElement>`
of `KtFirSimpleNameReference`.
2022-06-21 17:25:19 +02:00
Dmitriy Novozhilov eb453dc96b [FIR] Expand typealiases in OverloadConflictResolver
^KT-52825 Fixed
2022-06-21 14:10:38 +00:00
Dmitriy Novozhilov b73783b693 Add test for KT-52580 2022-06-21 14:10:37 +00:00
Dmitriy Novozhilov ed8187109a [FIR] Fix forgotten level changes during building CFG for !! 2022-06-21 14:10:37 +00:00
Dmitriy Novozhilov d835005647 [Build] Automatically exclude some modules from JPS build
Those modules can not be compiled by JPS for different reasons (and it's
  ok), so now they are excluded from compilation during import (before
  it was needed to manually add all those modules into compiler excludes)
2022-06-21 14:10:36 +00:00
Dmitriy Novozhilov 80223bd555 [FIR] Fix determination of which type is FIR type in tree generator
^KT-52832 Fixed
2022-06-21 14:10:36 +00:00
Dmitriy Novozhilov a7bae6f4c4 [FE] Generate default method for ComponentRegistrar.supportsK2
This is needed to keep binary compatibility for existing compilers plugins
^KT-52872 Fixed
2022-06-21 14:10:35 +00:00
Victor Petukhov 9e8ef56cca [FE 1.0] Imitate having builder inference annotation while trying resolve with a builder inference
^KT-52892 Fixed
2022-06-21 15:02:31 +02:00
Victor Petukhov fa7809cd80 [FE] Remove BuilderInference annotation from tests 2022-06-21 15:01:56 +02:00
Victor Petukhov dbe7f3ab0d [Stdlib] Suppress deprecation warnings at usages of @BuilderInference 2022-06-21 15:01:56 +02:00
Victor Petukhov de3f5497ab [Stdlib] Deprecate BuilderInference annotation
^KT-52400 Fixed
2022-06-21 15:01:56 +02:00
Yahor Berdnikau 4d47cf07be Update org.robolectric:android-all to 4.4_r1-robolectric-r2
Possibly could fix flaky parcelize plugin tests on Windows OS.
2022-06-21 11:26:30 +00:00
Yahor Berdnikau ec545f6273 Add Kotlin SourceDirectorySet as extension
KotlinSourceSet now should be accessed via Kotlin project extension.
Conventions are still available, but not used inside plugins.

^KT-47047 In Progress
2022-06-21 11:26:29 +00:00
Jinseong Jeon 9e8524d21a AA FIR: refactor KtFirType hierarchy 2022-06-21 11:36:02 +02:00
Jinseong Jeon 87ba8525cf AA: allow directory as source roots 2022-06-21 11:34:09 +02:00
Jinseong Jeon 4af2fcd633 AA: handle lib directory as a binary root 2022-06-21 11:34:09 +02:00
Jinseong Jeon 8c3df04c8e AA: null check containing file for PsiElement 2022-06-21 11:34:09 +02:00
Jinseong Jeon 814920b344 AA: restore JavaRoot from binary roots in JDK module 2022-06-21 11:34:09 +02:00
Jinseong Jeon 911963bafd CLI: utilize JRT path split (w/o magic number) 2022-06-21 11:34:09 +02:00
Jinseong Jeon 13c7fde071 AA: avoid reflective service registrations 2022-06-21 11:34:09 +02:00
Jinseong Jeon 38c3fbc0d1 AA: remove a redundant service registration 2022-06-21 11:34:09 +02:00
Ivan Kochurkin b67eab1eee [FIR] Use coneTypeSafe instead of coneType in loadExperimentalities to fix YouTrack building 2022-06-21 12:30:58 +03:00
Ilya Goncharov b14724260a [Gradle, JS] Upgrade npm dependencies
^KT-52856 fixed
2022-06-21 07:39:44 +00:00
Mikhail Glukhikh 8b4ae3bd70 IR interpreter: fix f/o delegation from primitive classes 2022-06-21 07:39:04 +00:00
Mikhail Glukhikh a8ce4e827c FIR2IR: fix f/o & delegate overridden symbol generation #KT-52745 Fixed 2022-06-21 07:39:03 +00:00
Mikhail Glukhikh 966e2442c6 Add tests for KT-52745 2022-06-21 07:39:03 +00:00
Simon Ogorodnik 00d7a755a9 Build. Disable K2 for jvm-minimal-for-test, as it uses multiplatform 2022-06-20 23:43:09 +00:00
Yahor Berdnikau 6710d216e1 Add simplified JVM toolchain configuration method in extension
^KT-52867 Fixed
2022-06-20 20:02:25 +00:00
Alexander Likhachev 7125c14a34 [Gradle] Fix outputs backup when outputs are outside the build dir
#KT-51801 Fixed
2022-06-20 17:19:17 +00:00
Alexander Likhachev 554470c462 [Gradle, JS] Add test for KT-51801 2022-06-20 17:19:16 +00:00
Ilya Kirillov ba797fa1b4 [stubs] fix cls stubs for declarations with context receivers
^KTIJ-21243 fixed
2022-06-20 19:10:36 +02:00
Ilya Kirillov a47880a98b [stubs] add test which checks consistency between cls and decompiled stubs 2022-06-20 19:09:44 +02:00
Jinseong Jeon b18999be82 FIR/LC: filter out scripts for facade creation
^KTIJ-22016 Fixed
2022-06-20 17:38:50 +02:00
Jinseong Jeon cd80bddfcd U/LC: use error(...), not error { }
Otherwise, the message would be: () -> String

Also, add more information to the error message

^KT-47777 Fixed
2022-06-20 17:38:50 +02:00
Pavel Kunyavskiy 9e9f26024b [K/N] Fix filecheck test for redundant safepoints removal 2022-06-20 15:21:39 +00:00
Dmitriy Novozhilov 970ebc7dc8 Advance bootstrap to 1.7.20-dev-2312 2022-06-20 12:32:27 +00:00
Mikhael Bogdanov 8dd141869a KAPT+IR: Skip assertion in BodyGenerator
#KT-49682
2022-06-20 11:42:54 +00:00
Mikhael Bogdanov e1d00c3d6e KAPT+IR: support nullability for error types
#KT-49682
2022-06-20 11:42:54 +00:00
Mikhael Bogdanov 162ca4ac2b KAPT+IR: support IR error types
#KT-49682
2022-06-20 11:42:53 +00:00
Mikhael Bogdanov 41d6f0dca4 Remove ir.tree.impl from build 2022-06-20 11:42:52 +00:00
Mikhael Bogdanov 328160894b Move ir.tree.impl into ir.tree 2022-06-20 11:42:51 +00:00
Mikhail Glukhikh 065e852199 FIR: support more precise diagnostics about parameter names
#KT-52762 Fixed
2022-06-20 11:28:55 +00:00