Commit Graph

38722 Commits

Author SHA1 Message Date
sebastian.sellmair bd303007f8 [MPP][Test] Fix style issue in MultiplatformAnalysisConfiguration
https://jetbrains.team/im/review/rkiO80z6BKm?message=9COoK0SQK6G&channel=1roPNU0orOwc

^KT-50120
2021-12-21 21:31:47 +00:00
sebastian.sellmair 601026fb51 [MPP][Test] Remove dangling comma in ClassicFrontendFacade
^KT-50120
2021-12-21 21:31:47 +00:00
sebastian.sellmair 760c496000 [MPP][Test] Enable 'SKIP_TXT' default directive for AbstractDiagnosticsWithMultiplatformCompositeAnalysisTest
^KT-50120
2021-12-21 21:31:46 +00:00
sebastian.sellmair a39ff7ece7 [MPP][Test] Declare multiplatformAnalysisConfiguration as member property
^KT-50120
2021-12-21 21:31:46 +00:00
sebastian.sellmair 54ab133a75 [MPP][Test] Improve comments in MultiplatformAnalysisConfiguration
^KT-50120
2021-12-21 21:31:45 +00:00
sebastian.sellmair ae764a3640 [MPP][Test] Include original module in 'findAllDependsOnPaths'
^KT-50120
2021-12-21 21:31:45 +00:00
sebastian.sellmair 2e55b82ba3 [MPP] Introduce allModulesProviding(Expects|Actuals)For filters
This new filters will also take care of filtering out descriptors
that are provided by 'regular' dependencies instead of 'dependsOn'
dependencies.

^KT-50120
2021-12-21 21:31:44 +00:00
sebastian.sellmair d1ce7ae870 [MPP] Remove irrelevant declarations from constructor.kt
^KT-50120
2021-12-21 21:31:44 +00:00
sebastian.sellmair 381a3e7917 [MPP] Improve readability of MultiplatformDiagnosticsDirectives
- Improved description as suggested during code review
- Renamed MULTIPLATFORM_COMPOSITE_ANALYSIS_MODE du *_ENABLED

^KT-50120
2021-12-21 21:31:44 +00:00
sebastian.sellmair e561b095f7 [MPP] Fix checkExpectedParameter using wrong ModuleFilter
KT-50120 Partially solved for functions.
ClassConstructors seem to be deserialized with 'isExpect=false'
which will still lead to wrong 'expect/actual matching'
2021-12-21 21:31:43 +00:00
sebastian.sellmair 017aacba44 [MPP] Add default parameter tests for ^KT-50120 2021-12-21 21:31:42 +00:00
sebastian.sellmair 3598ba1d45 [MPP][Test] Implement Diagnostics with mpp composite analysis tests
Using the 'MULTIPLATFORM_COMPOSITE_ANALYSIS_MODE' test directive
will add support for testing "cli metadata compilation" and
"ide analysis" _like_ configurations. In this configuration,
dependsOn modules will not be analyzed together with dependents in
the same ModuleDescriptor, but will be passed as separate 'expectedBy'
dependency descriptor.

Used to cover ^KT-50120 inside kotlin.git
2021-12-21 21:31:42 +00:00
Alexander Udalov 7771e5914d Revert "Do not write version requirements for suspend functions"
This reverts commit 6807ed6642.

The reason is that Kotlin compilers until and including version 1.6.10
have code that detects obsolete coroutines via these version
requirements (see `versionAndReleaseCoroutinesMismatch`). Since Kotlin
1.6.10 can read metadata of version 1.7, the earliest we can drop these
version requirements is Kotlin 1.8.0.
2021-12-21 20:06:07 +01:00
Ivan Kochurkin 58dfe3d804 [FIR2IR] Reify type parameters for callee reference with vararg 2021-12-21 19:10:41 +03:00
Ivan Kochurkin ee7e04b28e [FIR] Ignore smartcast for non-final members from Java, ^KT-50219 Fixed 2021-12-21 19:10:40 +03:00
Ivan Kochurkin 84927e10b0 [FIR] Consider Nothing? as null constant in DFA, ^KT-44561 Fixed 2021-12-21 19:10:40 +03:00
Ivan Kochurkin 68f3ab2622 [FIR] Refactor processing of equality operators in DFA 2021-12-21 19:10:39 +03:00
Ivan Kochurkin 9e55e41d8b [FIR] Propagate non-null info for val members, ^KT-44560 Fixed 2021-12-21 19:10:38 +03:00
Ivan Kochurkin c5a03d0573 [FIR] Remove dependent data flow variables after receiver reassignment 2021-12-21 19:10:37 +03:00
Ivan Kochurkin 1f9ea50d1a [FIR] Rearrange arguments in VariableStorageImpl functions to make them consistent 2021-12-21 19:10:36 +03:00
Roman Artemev 9b49f0eb70 [JS IC] Support deleted files in IC cache invalidator
- support them in test too
2021-12-21 18:07:56 +03:00
Roman Artemev 2ace13a904 [JS IC TEST] Support deleted files list in module step 2021-12-21 18:07:56 +03:00
Dmitriy Novozhilov 8a58e98530 [FE 1.0] Support proper DUPLICATE_LABEL_IN_WHEN reporting for deprecated complex boolean expressions
^KT-50385
^KT-39883
2021-12-21 16:36:20 +03:00
Dmitriy Novozhilov eb753eac83 [FE 1.0] Report DUPLICATE_LABEL_IN_WHEN on proper branches
^KT-50385 Fixed
2021-12-21 16:36:19 +03:00
Dmitriy Novozhilov d9a3dd09ea [FE 1.0] Save ModuleDescriptor in CompileTimeConstant 2021-12-21 16:36:18 +03:00
Elena Lepilkina a4f7ed00cc [K/N] Disable test until don't fix inlining (KT-50281) 2021-12-21 12:50:07 +00:00
Mikhail Glukhikh 1938438fa1 FIR: save/restore tower data contexts during resolve jumps
#KT-50278 Fixed
2021-12-21 10:45:36 +00:00
Mikhail Glukhikh f3f63a458b Make FirRegularTowerDataContexts immutable, SpecialTower.. just a storage 2021-12-21 10:45:35 +00:00
Mikhail Glukhikh 87e11c0f42 FirTowerDataContext parts: split into regular and special 2021-12-21 10:45:35 +00:00
Mikhail Glukhikh 25f30cb3a9 FIR: add resolve test for potential local scope problems 2021-12-21 10:45:34 +00:00
Mads Ager b5b1b38cb0 [FE] Do not repeatedly load inner classes from class files.
Java protobufs generate a lot of inner classes and when compiling
Kotlin wrappers for those Java protobufs the inner classes can
be loaded hundreds of times leading to out of memory. This change
avoids reloading by fixing a bug in the cache implementation that
caused inner classes to not be cached.
2021-12-21 13:23:48 +03:00
Anastasia.Shadrina ea33da3a8d [FE] Fix: do not report ambiguous label if label map is empty 2021-12-21 10:41:46 +03:00
Dmitry Petrov 8905586cbb IR KT-50258 rewrite enum-based 'when' more carefully 2021-12-21 06:06:45 +00:00
Roman Artemev e17f121b23 [JS REPL] Extract JS script/repl parts into separate module
- don't load js evaluation plugin in CLI compiler
2021-12-21 04:15:11 +03:00
Kristoffer Andersen 91e65edf86 [EE-IR] Minor: Refactor EvaluatorFragmentInfo
Part of migration to new constructor signature.

Unblocked by intellij-community#1839.
2021-12-20 19:04:19 +01:00
Alexander Udalov 6acb0c3d06 CLI: load module-info from META-INF/versions/... for any version
Not just 9, since at least some libraries are putting module-info to
META-INF/versions/11 nowadays.

 #KT-48027 Fixed
2021-12-20 18:59:07 +01:00
Alexander Korepanov b82c306530 [JS IR] Add deep copying for callable reference
Perform a deep copy of callable reference adapter on inline lowering

^KT-49844 Fixed
2021-12-20 14:02:11 +00:00
Dmitry Petrov 976998b56c PSI2IR KT-49526 function reference type approximation hack 2021-12-17 21:06:24 +00:00
Vyacheslav Gerasimov 5369813acc Fix "IdeaWin64.dll not found" error when running tests on Windows 2021-12-17 21:28:10 +03:00
Svyatoslav Scherbina 3fd4d90cca Native: remove harmful assertions from NaiveSourceBasedFileEntryImpl
These assertions checked that nobody requests line and column number
for the UNDEFINED_OFFSET.
But diagnostic and crash reporting tools might request line and column,
and crashing during crash reporting is not great.

So handle UNDEFINED_OFFSET gracefully instead, in a conventional manner.
2021-12-17 14:49:34 +00:00
Artem Kobzar ab7615adaf fix: fake override on interfaces. 2021-12-17 14:22:46 +00:00
Dmitry Petrov 0805916564 IR KT-47483 handle 'Nothing' in array constructor call 2021-12-17 13:43:59 +03:00
Pavel Kunyavskiy c9e9cbb62d [K/N] Fix vtable generation for nested suspend function inheritance
^KT-50304
2021-12-17 10:30:48 +00:00
Vyacheslav Gerasimov 944c7990a1 Build: Use fake ideaHome for tests with intellij build number only
#KTI-82
2021-12-16 21:48:24 +03:00
Vyacheslav Gerasimov f7a9065b75 Build: Use intellij maven repo instead of downloaded IDEA
#KTI-82
2021-12-16 21:48:23 +03:00
Vyacheslav Gerasimov 049066f8ac Replace systemIndependentPath from Idea with invariantSeparatorsPath 2021-12-16 21:48:21 +03:00
Vyacheslav Gerasimov bc2f0936bd Build: Rename commonDep -> commonDependency 2021-12-16 21:48:19 +03:00
Vyacheslav Gerasimov 156ecce961 Build: Fix unconditional adding kotlin-reflect.jar for JPS build
Should be added only when JPS build enabled to avoid kotlin-reflect
reindexing after each build
2021-12-16 21:48:18 +03:00
Dmitry Petrov 8c71e38c92 JVM_IR KT-49765 bridge for throwing stub should just throw UOE 2021-12-16 21:07:12 +03:00
Victor Petukhov e50e055eb4 [FE 1.0] Don't try to compute value parameters for variables while creating a flat signature for the overload resolution
^KT-50172 Fixed
2021-12-16 17:46:01 +03:00