Commit Graph

94365 Commits

Author SHA1 Message Date
Arseniy Terekhov a80870bc8f [FIR] DeprecationsProvider: caching results 2022-08-19 07:37:54 +00:00
Arseniy Terekhov 25fc948d95 [FIR] DeprecationsProvider: make evaluation of deprecations on demand 2022-08-19 07:37:54 +00:00
Ilya Gorbunov 98ebad2d75 Implement JS-IR intrinsic for rangeUntil builtin member operator #KT-52933 2022-08-18 19:15:27 +00:00
Ilya Gorbunov cda90dbfa5 Implement JS-legacy intrinsic for rangeUntil builtin member operator #KT-52933 2022-08-18 19:15:26 +00:00
Ilya Gorbunov 66facac25b Implement JVM intrinsic for rangeUntil builtin member operator #KT-52933 2022-08-18 19:15:25 +00:00
Ivan Kylchik 3027ea9551 Add new jvm compilation key ignoreConstOptimizationErrors
This key suppose to be a workaround in keys if something goes
wrong in ir interpreter.
2022-08-18 16:50:06 +00:00
Ivan Kylchik 44af612775 Provide better explanation message if interpreter fails 2022-08-18 16:50:05 +00:00
Ivan Kylchik 4e740e91f2 Safely unfold callable reference instruction in interpreter
There was an assumption that if receiver exists then parameter will
also exist. This is not true for references marked with `JvmStatic`.
Later in `JvmStaticInObjectLowering` dispatch receiver may be dropped.
2022-08-18 16:50:05 +00:00
Artem Kobzar 8e17c39cc9 [K/JS] fix(KT-53569): skip double traversing for nested annotation classes. 2022-08-18 16:39:48 +00:00
Ilya Kirillov 7441388f9d [Decompiled LC] restore missed ^IDEA-286315 fix during Decompiled LC migration to the kotlin repo
^IDEA-297478 fixed
2022-08-18 16:10:51 +00:00
Pavel Punegov 1502e6628b [K/N][perf] Workaround KGP bug when dirs are queried instantly 2022-08-18 16:05:29 +00:00
Pavel Kunyavskiy 5034581788 [K/N] Fix references for inline function
Corresponding lowering creating wrappers from JS Backend was used.

Also, the lowering was changed to create local function, instead of
normal one in outer scope, as a lot of logic from local declarations
lowering should be duplicated otherwise for correct type parameters
handling.

^KT-38535
2022-08-18 13:23:10 +00:00
Ilya Goncharov 2f75ea585e [JS, Frontend] Not report warning with non-exportable super type
^KT-53539 fixed
2022-08-18 12:46:40 +00:00
Alexander Likhachev c8a48473e2 [Gradle] Add test for KT-53617 2022-08-18 02:35:03 +02:00
Abduqodiri Qurbonzoda 9134b81863 Enable bytecode desugaring in Android test projects
After advancing stdlib jvmTarget to 1.8.
2022-08-17 23:35:18 +00:00
Alexander Udalov 45abea5b0a Use platform class loader in 'kotlin' runner on JDK 9+
#KT-46312 Fixed
2022-08-17 22:23:10 +02:00
Sergey.Shanshin 2cb6483e8a Added inspection for duplicating serial names in enumeration entries
Resolves Kotlin/kotlinx.serialization#1852
2022-08-17 20:17:22 +00:00
Abduqodiri Qurbonzoda 6c4777dcdd Fix JDK-dependent stdlib tests after advancing jvmTarget 2022-08-17 22:55:43 +03:00
Jinseong Jeon 9e35815ae3 AA: fail-safe path retrieval of source files
Also, apply file extension-based filtering since javaSourceRoots is
supposed to refer to either KotlinSourceRoot or JavaSourceRoot.
2022-08-17 21:32:29 +02:00
Ilya Kirillov e489c9b549 [analysis] regenerate tests 2022-08-17 19:16:18 +02:00
Jinseong Jeon 1b79ee89ba AA: drop ProjectStructureProvider#getKtBinaryModules
Instead, provide an option to register PSI declaration provider inside
Analysis API session builder where we can retrieve all necessary pieces,
including CoreJarFileSystem, PackagePartProvider, and binary modules
from internal project structure provider.
2022-08-17 19:16:18 +02:00
Jinseong Jeon 2a864b3685 AA: add tests for PsiDeclarationAndKtSymbolEqualityChecker 2022-08-17 19:16:17 +02:00
Jinseong Jeon 846ab7d97b AA: revamp standalone-mode tests 2022-08-17 19:16:17 +02:00
Artem Kobzar ab6964d32e [K/JS] test(Inner Classes): check exported and not-exported inner classes inside kotlin. 2022-08-17 14:58:31 +00:00
Abduqodiri Qurbonzoda 3ea653b0e1 [Build] Add Google maven repository to the cache-redirector list 2022-08-17 14:28:23 +00:00
Vladimir Sukharev 70db3b4c68 Count in interfaces/classes/packages when resolving name clashes with "_" suffix mangling
^KT-41904 Fixed

Merge-request: KT-MR-6862
Merged-by: Vladimir Sukharev <Vladimir.Sukharev@jetbrains.com>
2022-08-17 14:23:12 +00:00
Mikhail Glukhikh b4a92e8a56 Undeprecate @BuilderInference annotation #KT-52400 Declined 2022-08-17 14:07:13 +00:00
Ilya Gorbunov 744896b571 Explicitly specify repository for resolving tested version of artifacts
Currently, it implicitly relies on the space bootstrap repository
which can be changed when using a different bootstrap method
(e.g. from TeamCity build or from locally deployed artifacts).
2022-08-17 13:46:49 +00:00
Vladimir Sukharev 6f945aa2fc [KT-42830][Reverse C Interop] Add API to get value of boxed primitives
Merge-request: KT-MR-6836
Merged-by: Vladimir Sukharev <Vladimir.Sukharev@jetbrains.com>
2022-08-17 13:24:27 +00:00
Leonid Startsev c1191e141b Re-generate copyright in obsolete tests in kotlinx.serialization 2022-08-17 15:02:38 +02:00
Leonid Startsev 18ec5d4ec1 Add additional check to IrClass.findEnumValuesMethod()
to avoid finding user-defined member function
2022-08-17 11:43:41 +00:00
Leonid Startsev 6893e210fb [K2] Remove typeWithStarProjections in favor of constructStarProjectedType 2022-08-17 11:43:40 +00:00
Leonid Startsev 638665d9b0 Refactor typeWithStarProjections() so it uses FirClassSymbol instead of FirClass
It removes necessity to access .fir in plugins
2022-08-17 11:43:40 +00:00
Leonid Startsev b17ead97bc Fix incorrect class reference in polymorphic and contextual case
Upper bound should be used for type parameters there
2022-08-17 11:43:39 +00:00
Leonid Startsev 6a6b542ae2 Extract predicates to separate file, apply other review suggestions 2022-08-17 11:43:38 +00:00
Leonid Startsev a4b35c5810 Refactor most of the new code, split huge GeneratorHelpers.kt appropriately 2022-08-17 11:43:37 +00:00
Leonid Startsev c1b0ad418b Activate MetaSerializable test and update serialization dependency 2022-08-17 11:43:37 +00:00
Leonid Startsev b0716fe725 Adapt IR serialization plugin so it works both with FIR and old FE
(except some places that are not currently supported by FIR part of plugin)
2022-08-17 11:43:36 +00:00
Leonid Startsev 89329a0e1b Introduce @FirIncompatiblePluginApi 2022-08-17 11:43:35 +00:00
Leonid Startsev 467ff30aac Support full pipeline for basic kotlinx.serialization case:
FIR frontend and IR backend plugins.

Note: IR plugin is now broken for old FE, fixed in subsequent commits
2022-08-17 11:43:34 +00:00
Leonid Startsev cefc372632 Remove BindingContext, KotlinType and *Descriptor from IR plugin dependencies 2022-08-17 11:43:34 +00:00
Leonid Startsev 6f6342dafc Prototype of kotlinx.serialization FIR plugin:
Implement basic non-parameterized case
2022-08-17 11:43:33 +00:00
Jinseong Jeon ed92cc43c7 AA: introduce eq checker to handle ambiguous PSI from binary module 2022-08-17 13:35:29 +02:00
Andrey Uskov 3b63c1bf82 Update dependency on junit-jupiter-api to 5.6.3
#KT-51063 Fixed
2022-08-17 14:15:44 +04:00
Pavel Kunyavskiy de1dd47ab1 [K/N] Rework defines passing to runtime compilation 2022-08-17 08:32:47 +00:00
Andrey Uskov 339868305e Fixed handling of special symbols in paths when reporting errors
#KT-53246 Fixed
2022-08-17 10:38:28 +04:00
Alexander Udalov 02bd26562c Improve stack trace analysis logic in parameter null check intrinsic
This doesn't change behavior for the default JVM, so no new tests are
added. The current behavior is already tested in
`javaInterop/notNullAssertions/paramAssertionMessage.kt`. But this will
improve exception message on Android, where there are 2 platform frames
in the stack trace instead of 1.

 #KT-50083 Fixed
2022-08-17 02:00:49 +02:00
Sergej Jaskiewicz d24bbb63f5 [JS IR] Enable logging for stepping tests
The IrJsSteppingTestGenerated.testTryCatchExpression test is flaky.
Let's enable some logging to see what's what.
2022-08-16 16:46:43 +00:00
Svyatoslav Scherbina 66a870301c Bump Kotlin/Native version to 1.8.0-dev-1808 2022-08-16 17:18:09 +02:00
Aleksei.Cherepanov df017ea187 Clean JavaClassesTracker and LookupTracker on call RetryWithAdditionalRoots
#KT-38576 Fixed
2022-08-16 14:38:01 +00:00