Commit Graph

1350 Commits

Author SHA1 Message Date
pyos 3a5d75fd22 K2: introduce platform-specific visibility checks for overrides + tests
Related to KT-53197
2022-09-29 08:34:13 +00:00
Mikhail Glukhikh 9f7c465eb0 FE: add test for KT-53197 2022-09-29 08:34:11 +00:00
Mikhail Glukhikh e9bb0f4fda Resolution: extract projections from captured flexible type properly
#KT-54100 Fixed
Related to KT-54196, KT-54198
2022-09-28 15:29:43 +00:00
Nikolay Lunyak f578381726 [FIR] KT-46483: Forbid annotations in where Clauses
Merge-request: KT-MR-7208
Merged-by: Nikolay Lunyak <lunyak.kolya@mail.ru>
2022-09-28 13:38:18 +00:00
Ilmir Usmanov 4a10dbf383 FE: Warn about generic inline class parameter in LV < 1.8
#KT-54192 Fixed
2022-09-27 16:50:43 +00:00
Ilya Kirillov cd5b9d6356 [Analysis API] do not generate standalone tests which use compiler plugin 2022-09-21 09:44:24 +02:00
Ilya Kirillov 2387b31b9b [Analysis API] add kotlin-stdlib to Analysis API tests via KotlinStandardLibrariesPathProvider
to customize it outside kotlin repo
2022-09-21 09:44:24 +02:00
Ilya Kirillov 51cece4741 Publish Analysis API test framework 2022-09-21 09:44:23 +02:00
Dmitry Khalanskiy 4cbee3cde7 Fix KT-51478
The issue was that, when various context elements were available
to fulfill a need for an extension receiver, but none of them were
applicable to it, the compiler behaved the same way as if there
was no extension receiver at all.

https://youtrack.jetbrains.com/issue/KT-51478/Inapplicable-receiver-diagnostic-expected-when-there-are-two-context-receiver-candidates
2022-09-20 10:32:32 +00:00
Mikhail Glukhikh 6ab516a7e5 FE: add test for KT-53908 2022-09-19 19:12:20 +00:00
Jinseong Jeon dd7fc7f4ae AA FIR: avoid unsafe argument retrieval during const evaluation 2022-09-18 17:22:02 +02:00
Jinseong Jeon efb867b46c AA: do not create symbol pointers for (intersection|substitution) overridden members 2022-09-17 16:43:12 +02:00
Jinseong Jeon e50da634bc AA: add tests for resolution to built-ins 2022-09-17 16:43:12 +02:00
Jinseong Jeon c7347cfb48 LL FIR: module kind for built-ins module 2022-09-17 16:43:11 +02:00
Jinseong Jeon f9e086a6e3 S/LC: avoid building light classes for decompiled built-ins 2022-09-17 16:43:11 +02:00
Jinseong Jeon 0b63f294ab LL FIR: remove unnecessary type cast
For compiled symbol, it can be either library or built-ins session
2022-09-17 16:43:11 +02:00
Jinseong Jeon 7529965619 LL FIR: cache built-ins module to session 2022-09-17 16:43:11 +02:00
Jinseong Jeon c2daa26118 AA: use fully decompiled file when indexing built-ins 2022-09-17 16:43:10 +02:00
Jinseong Jeon 5bf333f6f5 AA: look up built-ins module for deserialized declarations from built-ins 2022-09-17 16:43:10 +02:00
Jinseong Jeon df95602e06 AA: populate index for built-ins 2022-09-17 16:43:10 +02:00
Mikhail Glukhikh fe38089205 FE: add test reproducing KT-54049 2022-09-16 07:15:43 +00:00
Mikhail Glukhikh 3e5d5bcaa7 FE: add test reproducing KT-53953 2022-09-16 07:15:42 +00:00
Jinseong Jeon 5721b3b73c AA: one representative lib module from compiler configuration
Split lib modules, which will be useful for reusable lib modules (if
there are multiple source modules that depend on same lib modules), are
not quite necessary for a project structure built from compiler
configuration. Those rather trigger OOM if lib modules' scopes are not
disjoint.
2022-09-15 21:27:13 +02:00
Jinseong Jeon e5b75dcd72 AA: cache PackagePartProvider per scope 2022-09-15 20:06:41 +02:00
Jinseong Jeon 2580a5c233 AA: migrate PackagePartProviderFactory to general API providers 2022-09-15 20:06:40 +02:00
Dmitriy Novozhilov c5916e1d1f [AA LC] Fix computation of const initializers of fields 2022-09-15 17:27:23 +03:00
Dmitriy Novozhilov 573b292cbc [AA LC] Make top-level functions static final 2022-09-15 17:27:23 +03:00
Dmitriy Novozhilov 7e24ddeb40 [AA LC] Properly compute retention for @java.lang.annotation.Retention 2022-09-15 17:27:22 +03:00
Dmitriy Novozhilov 77546e5e06 [AA LC] Compute nullability annotation for parameter for extension receiver 2022-09-15 17:27:22 +03:00
Dmitriy Novozhilov c67ded2d3b [AA LC] Properly set type mapping mode for bounds of type parameters 2022-09-15 17:27:22 +03:00
Dmitriy Novozhilov a3884e35e2 [AA LC] Fix type parameters for getters of generic extension properties 2022-09-15 17:27:22 +03:00
Dmitriy Novozhilov 3b87a9f354 [AA LC] Map kotlin collections to java in bounds of type parameters 2022-09-15 17:27:22 +03:00
Dmitriy Novozhilov e6092e2dff [AA LC] Generate nullability annotations for properties in enums 2022-09-15 17:27:22 +03:00
Dmitriy Novozhilov b7712a35f0 [AA LC] Generate backing field for inline classes 2022-09-15 17:27:21 +03:00
Dmitriy Novozhilov 8e80c5830e [AA LC] Fix annotations on fields for enum entries 2022-09-15 17:27:21 +03:00
Dmitriy Novozhilov a88fdd5eb7 [AA LC] Implement default values for methods of annotations 2022-09-15 17:27:21 +03:00
Dmitriy Novozhilov 3a51a8a655 [AA LC] Fix computing visibility for classes 2022-09-15 17:27:21 +03:00
Dmitriy Novozhilov 1fd2816755 [AA LC Test] Cleanup resulting java dump
- Remove redundant spaces
- Add empty line at the end
2022-09-15 17:27:21 +03:00
Dmitriy Novozhilov ab2aa3117b [AA LC] Add @java.lang.Override on override functions 2022-09-15 17:27:21 +03:00
Dmitriy Novozhilov d60f3980b1 [AA LC] Correctly determine override status for accessor methods 2022-09-15 17:27:20 +03:00
Dmitriy Novozhilov 258e3f9225 [AA LC] Fix visibility of fields for const vals 2022-09-15 17:27:20 +03:00
Dmitriy Novozhilov 1ff51356b9 [AA LC] Fix visibility of fields from companion objects
^KTIJ-22541
2022-09-15 17:27:20 +03:00
Dmitriy Novozhilov 7ef81c27df [AA] Make KotlinReferenceProvidersService and KotlinReferenceProviderContributor a project services
There is no need to have those services on application level
2022-09-15 17:27:20 +03:00
Dmitriy Novozhilov 0909cad886 Reformat FirAnnotationValueConverter.kt 2022-09-15 17:27:20 +03:00
Dmitriy Novozhilov 669e7e071c [AA] Register library and builtins session factories in Standalone AA Builder 2022-09-15 17:27:19 +03:00
Jinseong Jeon 1464f33c5d AA FIR: error annotation value for erroneous argument in class reference 2022-09-15 12:36:31 +02:00
Ilya Kirillov 447404f955 [Analysis API FIR] reformat KtFirSymbolProvider.kt 2022-09-15 12:12:41 +02:00
Ilya Kirillov 7d47651353 [Analysis API] rename KtAnnotationsList.containsAnnotation -> hasAnnotation 2022-09-15 12:12:40 +02:00
Ilya Kirillov 1bdde25dc7 [Analysis API] improve getClassOrObjectSymbolByClassId/getTopLevelCallableSymbols
add kdocs, use better names
2022-09-15 12:12:40 +02:00
Dmitry Gridin 7013fa1864 [lc] decompiled: support stub search for top level callable
^KT-53934
2022-09-15 09:27:53 +00:00