Commit Graph

93461 Commits

Author SHA1 Message Date
Ilya Kirillov 77758d1552 [Analysis] do not reregister services in AbstractStubBuilderTest 2022-07-01 11:33:21 +02:00
Ilya Kirillov 271ecfbd68 [Analysis] Try to fix randomly failing tests because of unregistered FileAttributeService
It should be unregistered with the application by ApplicationEnvironmentDisposer
which is registered in :compiler:tests-common-new
2022-07-01 11:33:21 +02:00
Bart van Helvert 7bef560b6b KTIJ-21986 Don't log non-kotlin code fragment context when it's null
This warning shouldn't be logged when the context is null.
2022-07-01 08:15:58 +00:00
Roman Golyshev 79ba790b38 [FIR IDE] Add support for new types of predicates for compiler plugins 2022-07-01 07:42:54 +00:00
Ilya Chernikov bc1e3667ff Fix testdata after switching Kotlin to version 1.8
the corresponding features - GenericInlineClassParameter && DataObjects
- were turned on in 1.8 right after the last check build, therefore the
discrepancy went unnoticed
2022-06-30 16:34:14 +00:00
Pavel Mikhailovskii 8a402bcacd KT-52875 Fix extension function literal creation with -Xlambdas=indy 2022-06-30 14:13:05 +00:00
Alexander Shabalin 97c542dd76 [K/N] Fix performance project
Merge-request: KT-MR-6567
Merged-by: Alexander Shabalin <Alexander.Shabalin@jetbrains.com>
2022-06-30 09:08:23 +00:00
Ilmir Usmanov a5084c2f69 JVM IR: Make receiver type of IrGetField not null
otherwise, it will be mapped to inline class type if underlying type
is primitive of nullable.

 #KT-52913 Fixed
2022-06-30 01:28:09 +00:00
Dmitriy Novozhilov cb1a8bd687 Advance bootstrap to 1.8.0-dev-6 2022-06-29 20:35:16 +03:00
Mikhail Glukhikh 2b235e1188 FE10 Analysis API: use compact renderer for flexible types even in debug 2022-06-29 16:50:06 +00:00
Mikhail Glukhikh 38f4a35be2 FIR: introduce flexible types pretty rendering for no arguments case
#KT-52020 Fixed
2022-06-29 16:50:05 +00:00
Mikhail Glukhikh 31ec10142b FirRenderer: add renderAllModifiers and renderDetailedTypeReferences
Related to KT-52020
2022-06-29 16:50:04 +00:00
Mikhail Glukhikh b2a9ad079d Fix unreachable branch in ConeKotlinType.render() 2022-06-29 16:50:03 +00:00
Mikhail Glukhikh 9a8fa300d7 Add test for KT-52020 2022-06-29 16:50:03 +00:00
Nikita Bobko 2c5bd4a065 Drop unused DefaultIdeTargetPlatformKindProvider class
KMA-455

This class was used in intellij but usages was dropped in
a55a62106e40f8545d654d5519576fa4e732d0fd (intellij repo).

DefaultIdeTargetPlatformKindProvider is useless because
`DefaultIdeTargetPlatformKindProvider.defaultPlatform` implementation
always returns `JvmPlatforms.defaultJvmPlatform`
2022-06-29 15:35:57 +02:00
Dmitriy Novozhilov 935f5c1180 [Parcelize] Fix registration of IR extension for K2 mode 2022-06-29 12:00:02 +00:00
Dmitriy Novozhilov 1a8496757e [Compiler] Mark all entrypoints to compiler API as experimental 2022-06-29 12:00:01 +00:00
Dmitriy Novozhilov 169e80e8c9 [Build] Cleanup build.gradle.kts for :compiler module 2022-06-29 12:00:01 +00:00
Dmitriy Novozhilov 65e240679e [FE] Move utility of parsing plugin options to :compiler:frontend.common
This is needed to be able to use this utility inside FIR part of IDE plugin
2022-06-29 12:00:00 +00:00
Dmitriy Novozhilov f587c02d38 [FE] Move ServiceLoaderLite to :compiler:frontend.common
This is needed to be able to use this class inside FIR part of IDE plugin
2022-06-29 12:00:00 +00:00
Dmitriy Novozhilov 441f3d202a [LL API] Introduce converters from plugin defined diagnostics to KtDiagnostics 2022-06-29 12:00:00 +00:00
Dmitriy Novozhilov 22dae9bff4 [FIR] Fix registration of multiple compiler plugins 2022-06-29 11:59:59 +00:00
Dmitriy Novozhilov 0c6a9d3eac [LL API] Provide proper way for automatic registration of compiler plugins 2022-06-29 11:59:59 +00:00
Dmitriy Novozhilov c979e1edcf [Plugins] Deprecate ComponentRegistrar
^KT-52665 In Progress
2022-06-29 11:59:58 +00:00
Dmitriy Novozhilov 8b42638afa [Plugins] Introduce new API for registering compiler plugins
Original `ComponentRegistrar` exposes Project to its registration method,
  so plugins should manually register extensions to it. To prepare for
  possible unbound compiler from Project API in future new  `K2ComponentRegistrar`
  introduced which provides registration method without Project at all
2022-06-29 11:59:58 +00:00
Ilya Chernikov bb996c1b27 Switch kotlin version to 1.8
with appropriate fixes in testdata, tests and other
places.
2022-06-29 10:20:30 +02:00
Dmitriy Novozhilov 7fa459044f [Test] Fix extracting path to standard libraries from incorrect places for external users 2022-06-29 06:41:07 +00:00
Ilmir Usmanov 09c9641e23 FE: Use safe call when searching for suspend modifier
The modifier does not exist, when the parameter type is typealias.

 #KT-35187 Fixed
2022-06-29 06:12:44 +02:00
Igor Yakovlev 1e0a705ba1 [WASM] Temporary disable wasm std test (until bootstrap) 2022-06-28 18:00:41 +00:00
Igor Yakovlev 6f88e9b16f [WASM] Fix interop adapter for long strings 2022-06-28 18:00:40 +00:00
Dmitry Gridin 6e75e4a56e Revert "Revert "[light classes] drop old light classes and backend: iteration #12""
This reverts commit 732a08f0df.
2022-06-28 17:57:35 +02:00
Dmitry Gridin d14a71acfc Revert "Revert "[light classes] drop old light classes and backend: iteration #11""
This reverts commit 357e15085e.
2022-06-28 17:57:34 +02:00
Dmitry Gridin 28aa47af8a Revert "Revert "[light classes] drop old light classes and backend: iteration #10""
This reverts commit 4b3e48dc47.
2022-06-28 17:57:34 +02:00
Dmitry Gridin cbf9b13ef8 Revert "Revert "[light classes] drop old light classes and backend: iteration #9""
This reverts commit 38c623bc3a.
2022-06-28 17:57:33 +02:00
Dmitry Gridin 9f3a269d62 Revert "Revert "[light classes] drop old light classes and backend: iteration #8""
This reverts commit 91fa6af556.
2022-06-28 17:57:33 +02:00
Dmitry Gridin ac83d5fcbc Revert "Revert "[light classes] drop old light classes and backend: iteration #7""
This reverts commit d1cde22254.
2022-06-28 17:57:33 +02:00
Dmitry Gridin 9dcc92e394 Revert "Revert "[light classes] drop old light classes and backend: iteration #6""
This reverts commit 8db53c0ca7.
2022-06-28 17:57:32 +02:00
Dmitry Gridin 4d43312cfe Revert "Revert "[light classes] drop old light classes and backend: iteration #5""
This reverts commit 8f7969549b.
2022-06-28 17:57:31 +02:00
Dmitry Gridin 2eaea66a0c Revert "Revert "[light classes] drop old light classes and backend: iteration #4""
This reverts commit 3d9a58627f.
2022-06-28 17:57:31 +02:00
Dmitry Gridin ce183a8eeb Revert "Revert "[light classes] drop old light classes and backend: iteration #3""
This reverts commit 074dd1c19d.
2022-06-28 17:57:30 +02:00
Dmitry Gridin dd824aacb6 Revert "Revert "[light classes] drop old light classes and backend: iteration #2""
This reverts commit 43b4df74bc.
2022-06-28 17:57:30 +02:00
Dmitry Gridin f10c5c28a5 Revert "Revert "[light classes] drop old light classes and backend: iteration #1""
This reverts commit 57de064251.
2022-06-28 17:57:29 +02:00
Dmitry Gridin db3ca797d9 Revert "Revert "[light classes] FakeFileForLightClass: advance language level to 1.8""
This reverts commit 11ad8020c8.
2022-06-28 17:57:17 +02:00
Artem Kobzar 133c6713ca [K/JS] fix(Interface Export): prevent structural identity between two interfaces. 2022-06-28 15:44:38 +00:00
Pavel Mikhailovskii c3c09aa95a KT-4107 Data objects 2022-06-28 16:58:20 +02:00
Ilya Chernikov 6c31dc90e4 Scripting: ignore incorrect test
see #KT-52986 for details
2022-06-28 16:21:25 +02:00
Ilya Chernikov fc5f56adc5 Scripting: restore REPL script definition
incorrectly set to default definition on switching REPL to the new infra
2022-06-28 16:21:25 +02:00
Ilya Chernikov 6e59c2e079 Scripting: fix CLI REPL error reporting behavior
discrepancy after switching to the new REPL internals was
discovered also on IJ plugin tests, so added a test emulating it.
also some test infra refactoring
2022-06-28 16:21:25 +02:00
Ilya Chernikov 8bc43917ec Scripting: switch default definition to new scheme
also correctly pass externaly provided configuration on compilation
and evaluation.
Fixes REPL evaluation with dependencies passed via compilation classpath.
2022-06-28 16:21:24 +02:00
Hung Nguyen 46c769deb6 [IC] Fix fallback logic in IncrementalCompilerRunner
The current logic works as follows:
- Try either incremental compilation or non-incremental compilation
- If the above (or any of its surrounding work) fails, fall back to
  non-incremental compilation

This means we may perform non-incremental compilation twice.

This commit will fix that logic so that we fall back to non-incremental
compilation only if *incremental compilation* fails.

A nice consequence of this change is that it also resolves the critical
bugs described at KT-52669 (which occur because the current logic is
flawed).

#KT-52669 Fixed
2022-06-28 12:47:11 +00:00