Commit Graph

94690 Commits

Author SHA1 Message Date
Leonid Startsev 6b32ce76c2 Support serializable objects in FIR plugin 2022-08-19 14:42:30 +00:00
Dmitriy Novozhilov 4db579e128 [FIR2IR] Add enum entries to Fir2IrLazyClass for enums 2022-08-19 14:42:29 +00:00
Dmitriy Novozhilov 7390d8cd54 [Build] Add reflect to runtime classpath of kotlinx.serialization tests
This is needed to be able to run those tests with JPS build
2022-08-19 14:42:28 +00:00
Leonid Startsev edff4d43bf Generate writeSelf and load constructor even if they were not created by frontend
which is true in case for FIR which discourages purely synthetic declarations.
2022-08-19 14:42:27 +00:00
Leonid Startsev acd6180c30 Support generic classes in serialization FIR plugin 2022-08-19 14:42:26 +00:00
Ilya Gorbunov 805fc747b9 Advance bootstrap to 1.8.0-dev-2023 2022-08-19 14:06:16 +00:00
Mikhail Glukhikh b78106e437 Don't report INFERRED_..._INTO_EMPTY_INTERSECTION with explicit arguments 2022-08-19 14:01:38 +00:00
Mikhail Glukhikh a6b90fcb8e Add a test with false positive "inferred into empty intersection"
Related to KT-50232
2022-08-19 14:01:37 +00:00
Igor Chevdar d3eedd791e [K/N][IR] Turned off prerequisite for ReturnsInsertionsPhase
Sometimes we have 0 files in the module and CompilerPhase thinks no work has been done
causing the prerequisite requirement to fail
2022-08-19 16:19:53 +03:00
Igor Chevdar 3462d4e5e8 [K/N][IR] Made caches ABI lowerings per file 2022-08-19 10:33:22 +00:00
Igor Chevdar 85379159be [K/N][IR] Reworked caches ABI lowering 2022-08-19 10:33:21 +00:00
Igor Chevdar c1d63fa6dd [K/N][IR] Moved caches ABI lowerings to a separate file 2022-08-19 10:33:20 +00:00
Mikhail Glukhikh d3648bce0c Run LoadJava.CompiledKotlin test group with stdlib if some enum is inside
This commit makes compiler tests working similarly to ResolveByStub IDE tests.
2022-08-19 10:08:11 +00:00
Mikhail Glukhikh fb1c80a7c9 K2: discriminate synthetic 'Enum.entries' during resolve 2022-08-19 10:08:11 +00:00
Mikhail Glukhikh 68ca453467 K2: don't report REDECLARATION on Enum.entries 2022-08-19 10:08:10 +00:00
Mikhail Glukhikh 730de8fd7c K1/K2: add test for enum class with 'entries' entry 2022-08-19 10:08:09 +00:00
Mikhail Glukhikh 8a4105e542 IR: fix origin of default getter of Enum.entries synthetic property 2022-08-19 10:08:08 +00:00
Alexander Korepanov 28c83e43ad [JS IR] Performance fixes for the IC infrastructure 2022-08-19 09:38:09 +00:00
Sergey Bogolepov 5152966aa0 [K/N] KT-39747
Add a WinHTTP platform library.
2022-08-19 08:27:26 +00:00
Dmitriy Novozhilov bb38690273 [FIR] Introduce FirAssignExpressionAltererExtension
This extension can be used to override resolution of assign statements
  with custom statement
2022-08-19 07:44:09 +00:00
Dmitriy Novozhilov 42b1621b4b Reformat coneDiagnosticToFirDiagnostic.kt 2022-08-19 07:44:09 +00:00
Dmitriy Novozhilov 6573533b95 [FE 1.0] Make all components of ExpressionTypingComponents public
There is no much sense to have them package-private, since all setters
  for them are public. Also those services can be used in assign alterer
  extension
2022-08-19 07:44:08 +00:00
Dmitriy Novozhilov f843883985 [FE 1.0] Introduce AssignResolutionAltererExtension
This extension can be used to override resolution of assign statements
  with custom logic

WARNING: there is no compatibility guarantees for this extension
2022-08-19 07:44:08 +00:00
Arseniy Terekhov c0ab367281 [FIR] DeprecationProvider: fix test, remove FIR_IDE_IGNORE 2022-08-19 07:37:55 +00:00
Arseniy Terekhov 539e5f82e2 [FIR] DeprecationProvider: inline builder, fix named arguments, cosmetic 2022-08-19 07:37:55 +00:00
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