Commit Graph

102026 Commits

Author SHA1 Message Date
Dmitriy Dolovov 2e43fa7cd0 [PL][tests] Adapt tests for K/N to the conditions when static cache is used w/o lazy IR 2023-06-22 08:10:11 +00:00
Igor Chevdar 5f3dad14a2 [K/N] Make -Xlazy-ir-for-caches disabled by default 2023-06-22 08:10:11 +00:00
Igor Chevdar cc9dd48c09 [K/N] Support non-LazyIR for cached libraries
Use the same lazy deserialization mechanism (inline function bodies, class fields)
for both LazyIR and usual IR
2023-06-22 08:10:11 +00:00
Kirill Rakhman 6318da0f02 [FIR] Remove or replace whole expressions in FIR diagnostic messages
FIR expressions rendered by FirRenderer don't look very nice in error
messages anyway, and additionally, they can become arbitrarily large,
so we shouldn't use them in messages.

#KT-59449 Fixed
2023-06-22 08:02:07 +00:00
Dmitriy Novozhilov 0f0f0d604f [FIR] Expand typealiases before checking type of class literal 2023-06-22 07:09:15 +00:00
Dmitriy Novozhilov 6c7eb0167c [FIR] Report errors about type arguments on resolved qualifiers
^KT-56186 Fixed
^KT-56187 Fixed
^KT-59553
2023-06-22 07:09:15 +00:00
Dmitriy Novozhilov 1b24b95cde [FIR] Check for subtyping during actualization of supertypes of expect class
^KT-59356 Fixed
2023-06-22 07:05:31 +00:00
Roman Golyshev ac92c129bf KT-59093 [Analysis API] Remove unnecessary resolveCall overloads from KtCallResolverMixIn
^KT-58161 Fixed
2023-06-21 20:40:22 +00:00
Roman Golyshev 50c93b0228 KT-59093 [Analysis API] Make all resolveCall overloads nullable
Instead of returning an error which does not mean anything specific,
it's easier just to return `null`
2023-06-21 20:40:22 +00:00
Roman Golyshev c81b22e7de KT-59093 [Analysis API] Remove error logging from KtFirCallResolver
There are too many possible error cases when code resolution cannot
properly resolve a call. Since in external mode `Logger.error` calls
lead to visible IDE errors, we want to avoid that

^KT-59093 Fixed
2023-06-21 20:40:21 +00:00
Bart van Helvert 807df9a120 [AA] Properly render type arguments in short name renderer
Render type arguments for short names without nested qualifier.
2023-06-21 18:51:57 +00:00
Roman Golyshev 26dbeb9b6f KTIJ-25530 [Analysis API] Add missing test cases for Java statics
Can be done now because KT-58980 is fixed
2023-06-21 18:37:09 +00:00
Mikhail Glukhikh 4b7ab54d95 FE: fix test data after commit clash 2023-06-21 19:25:14 +02:00
Svyatoslav Scherbina 41247e8cef Native: workaround KT-59552 in filecheck_single_tls_load test
After recent changes (0cfb801) println got inlined into the checked
function. As a result, the test became affected by KT-59552.

Fix the test by moving println out of the checked function.
2023-06-21 15:49:53 +00:00
Alexander Udalov 13baf43ae3 K2: fix NSME on toChar for subclasses of Number
Code in `ReplaceNumberToCharCallSitesLowering` relies on `Number.toChar`
being declared in IR as non-abstract. Otherwise the
`resolveFakeOverride` call there doesn't work, and the lowering can't
rewrite the call to `toInt().toChar()`, and we end up with a call to the
missing method `Number.toChar` in the bytecode.

 #KT-57217 Fixed
2023-06-21 14:58:02 +00:00
Vsevolod Tolstopyatov 175cf5e833 KT-53327 replace Enum.values() with Enum.entries in CharCategory
Also, replace it in stdlib tests where appropriate and disable already unsupported legacy JS tests


^KT-53327 fixed

Co-authored-by: Artem Kobzar <Artem.Kobzar@jetbrains.com>

Merge-request: KT-MR-10632
Merged-by: Vsevolod Tolstopyatov <qwwdfsad@gmail.com>
2023-06-21 14:40:16 +00:00
Kirill Rakhman c867a4b52f [FIR] Don't expand typealiases when checking for DeprecatedSinceKotlin
During serialization, this can lead to a cycle resulting in a Stack
Overflow.

#KT-58356 Fixed
2023-06-21 14:35:43 +00:00
Alexander Udalov da884bd554 Minor, add error message to linker exception
(cherry picked from commit 04048d57ab912823504e9f57ddbc3a5f06b6af7c)
2023-06-21 14:24:28 +00:00
Alexander Udalov 530f533c84 K2 CLI: minor, remove misleading warning
Light tree is used by default now, so it's no longer far from being
production-ready.
2023-06-21 14:16:43 +00:00
Alexander Udalov 8653992ffc K2 CLI: wrap module name into angle brackets
This is not a user-visible change, so no issue is created and no tests
are added.

K1 uses angle brackets, and it will be very convenient to have the same
module names in K1 and K2, in particular to compare IR dumps where
almost everything is the same (up to a certain point) except the module
name.
2023-06-21 14:16:42 +00:00
Artem Daugel-Dauge b6847d0835 [Gradle] Support configuration cache in Xcode/CocoaPods tasks with Gradle 8.1
This commit moves invocation of `xcodebuild` from configuration to execution time. This also fixes the problem with Xcode version being cached inside the daemon.

^KT-59252 Verification Pending
2023-06-21 13:31:38 +00:00
Mikhail Glukhikh 78f4d399d4 FE: add test to ensure Java entries static field is resolved normally 2023-06-21 13:08:01 +00:00
Mikhail Glukhikh 905e1dcd3b K2: introduce prioritized enum entries resolve by a 2.1 feature
Related to KT-48872
2023-06-21 13:08:01 +00:00
Mikhail Glukhikh b92f1e2036 K2: de-prioritize access to Enum.entries properly #KT-57954 Fixed 2023-06-21 13:08:00 +00:00
Mikhail Glukhikh 978d52d05b K2: render additionally *s for static references
This commit allows to distinguish static VS non-static things
inside FIR_DUMP, e.g. static synthetic Enum.entries with
enum entry Enum.entries
2023-06-21 13:08:00 +00:00
Mikhail Glukhikh 70899d492d K2: reproduce KT-57954 and reorganize tests around enum entries warnings
In particular, here we add FIR_DUMP to all enum entries tests with
some deprecation diagnostics and the feature on, and remove all txt-files
2023-06-21 13:08:00 +00:00
Alexander Shabalin 63e65a482c [K/N] Move GC schedulers into modules
Additionally,
- rename disabled into manual
- rename with_timer into adaptive
- remove on_safepoints
- store schedulers in GlobalData, ThreadData directly
2023-06-21 12:16:09 +00:00
Ilya Kirillov 0ad98ff610 [Analysis API] use fe10-specific testdata for Fe10IdeNormalAnalysisSourceModuleAnalysisApiImportOptimizerTestGenerated 2023-06-21 12:04:31 +02:00
Ilya Kirillov 7be17a80ce [Analysis API] regenerate Fe10IdeNormalAnalysisSourceModuleAnalysisApiImportOptimizerTestGenerated 2023-06-21 12:04:31 +02:00
Mikhail Glukhikh 7fd441f16a Analysis API: add normal FE10 import optimizer (taken from plugin code) 2023-06-21 12:04:31 +02:00
Dmitriy Novozhilov c29482f25f Advance bootstrap to 1.9.20-dev-4459 2023-06-21 09:49:49 +00:00
Jinseong Jeon b91a23be12 Reintroduce KtLightClassForScript as a common interface between (U|S)LC
...so that UAST's conversion to KotlinScriptUClass can work for both LCs
2023-06-21 11:14:15 +02:00
Jinseong Jeon 618d6526a7 Rename KtLightClassForScript to reuse it for common interface between LCs 2023-06-21 11:14:15 +02:00
Kirill Rakhman 911e62257a [FIR] Improve INVISIBLE_REFERENCE message
Report the nearest invisible containing declaration in cases where
the declaration itself is visible.

#KT-53820 Fixed
2023-06-21 08:36:46 +00:00
Kirill Rakhman 6a073e0b17 [FIR] Fix duplicate spaces in FirPartialModifierRenderer 2023-06-21 08:36:46 +00:00
Kirill Rakhman 7abeb05c8d [LL] Deserialize nested typealiases from stubs 2023-06-21 07:34:29 +00:00
Kirill Rakhman d7effec4e8 [LL] Set publishedApiEffectiveVisibility on deserialized declarations from stubs
#KT-58641
2023-06-21 07:34:29 +00:00
Kirill Rakhman ee91ee9403 [FIR] Set publishedApiEffectiveVisibility on deserialized declarations
#KT-58641 Fixed
2023-06-21 07:34:29 +00:00
Dmitriy Novozhilov 2581139b82 [FIR2IR] Expand typealiases before inserting implicit casts
^KT-59461 Fixed
^KT-59464
2023-06-21 07:34:09 +00:00
Dmitriy Novozhilov 8a1372e21c [Test] Add test for KT-58754 2023-06-21 06:57:42 +00:00
Dmitriy Novozhilov 5717b59f52 [FIR/IR] Introduce an ability to propagate generated IR annotation to metadata
^KT-58638 Fixed
2023-06-21 06:56:59 +00:00
Dmitriy Novozhilov 24e07fdfe0 [FIR plugin] Add test for plugin which generates annotations on IR
^KT-58638
2023-06-21 06:56:59 +00:00
Dmitriy Novozhilov fd670d33cb [FIR plugin] Compile annotations in plugin sandbox to jvm and js
This is needed for further testing of plugins with JS backend
2023-06-21 06:56:59 +00:00
Anna Kozlova a0f7656d2b [AA] provide parameters renderer without name/default value
used to have such renderer in file structure
2023-06-20 20:10:33 +00:00
Abduqodiri Qurbonzoda af1630e270 [K/N] Catch concurrent modifications of HashMap
As a part of efforts to stabilize Native stdlib.
2023-06-20 18:35:39 +00:00
Abduqodiri Qurbonzoda 9d8d9d000f [K/N] Catch concurrent modifications of ArrayList
As a part of efforts to stabilize Native stdlib.
2023-06-20 18:35:39 +00:00
Artem Kobzar c53b49d7fa [K/Wasm] Remove custom equals because this kind of equality is lowered in duration of the compilation ^KT-58126 Fixed 2023-06-20 17:36:01 +00:00
Ilya Chernikov 4fe3e875fa Write refined classpath back to compiler config in core env
- fixes refining with classpath updates
2023-06-20 16:38:33 +00:00
Ilya Chernikov 699ef5490b Scripting: using kotlin type names instead of java ones
avoids problems with K2 resolving of the java types in unexpected
places
2023-06-20 16:38:33 +00:00
Ilya Chernikov ae10eebc84 minor: scripting: fix processing of externally provided options 2023-06-20 16:38:32 +00:00