Commit Graph

62889 Commits

Author SHA1 Message Date
Dmitry Gridin 35f4ff000b i18n: add bundle for idea-gradle 2020-03-16 18:40:40 +07:00
Dmitry Gridin 3aa97643f5 i18n: add bundle for idea-core 2020-03-16 18:40:40 +07:00
Dmitry Gridin d644214251 i18n: add bundle for ide-common 2020-03-16 18:40:40 +07:00
Dmitry Gridin 7e3c07865c i18n: add bundle for formatter 2020-03-16 18:40:40 +07:00
Dmitry Gridin c8c316c379 i18n: introduce AbstractKotlinBundle 2020-03-16 18:40:40 +07:00
Sergey Igushkin e1ec53d4e9 Filter kapt generate stubs classpath for non-existent entries (KT-37241) (#3192)
Issue #KT-37241 Fixed
2020-03-16 14:16:35 +03:00
Vladimir Dolzhenko 364d97e950 Invalidate partialBodyResolveCache on OCB instead of PSI modification
#KT-37466 Fixed
2020-03-16 11:14:50 +00:00
Vladimir Dolzhenko 9fdf8530ff Add checkCanceled in loops in KotlinImportOptimizer to avoid freezes
#KT-37301 Fixed
2020-03-16 11:08:19 +00:00
Vladimir Dolzhenko ce9297c5d6 Be able to find annotated property accessor
#KT-37494 Fixed
2020-03-16 11:07:09 +00:00
Roman Golyshev 04ef1081b3 Disable stats-collector dependency for Android Studio
- AS40 has platform >= 193, but has no `stats-collector` plugin in it,
which caused build errors
2020-03-16 13:09:42 +03:00
Kirill Shmakov 5474d5f1d3 Support debug in Gradle tasks responsible for K/N tests 2020-03-16 12:20:29 +03:00
Igor Chevdar a1eff7f4af [IR] Set source offsets in SAM lowering
This is needed for debug info generating in K/N
2020-03-16 11:58:36 +03:00
Vladimir Ilmov 9904304e07 (CoroutineDebugger) StackFrameInterceptor service added to KotlinPositionManager, dependency cleanup 2020-03-15 14:37:15 +01:00
Vladimir Dolzhenko 0af61293d5 Fix ExtensionTestUtil compilation for 191; CustomUsageSearcherTest compilation for 201
Relates to #KT-36657
2020-03-14 22:41:31 +01:00
Alexander Udalov 57fd449288 Minor, add check of const field modifiers to codegen test
#KT-29885
2020-03-13 23:26:12 +01:00
Roman Golyshev 1e3e791d43 Fix compilation error in MLCompletionForKotlin bunch files
- Remove leftover `override` modifier
2020-03-13 22:26:24 +03:00
Sergey Igushkin a0aeb1554d Filter kapt generate stubs classpath for non-existent entries (KT-37241)
Issue #KT-37241 Fixed
2020-03-13 21:53:02 +03:00
Dmitriy Novozhilov 9daed1f2c6 Revert "[FIR-TEST] Move FIR ide tests to separate module"
This reverts commit 9955f342c0.
2020-03-13 20:51:41 +03:00
pyos bdd88e1655 JVM_IR: place suspend markers in faux lambdas around inline references
Otherwise, the assumption that coroutine codegen makes about every
inlined function already having the markers breaks and it is no longer
true that calls to inline lambdas do not require them.
2020-03-13 18:33:41 +01:00
Roman Golyshev f29e665dce Add "ML completion for Kotlin" experimental feature checkbox
- This checkbox should be shown only in IDEA >= 193 and should not
be shown in AS
- ML completion is enabled with `CompletionMLRankingSettings`, which
resides in `com.intellij.stats.completion` plugin that is bundled by
default
  - The `<depends>` section is required to be able to use classes from
  this plugin inside Kotlin plugin
- `CompletionMLRankingSettings` have package-private setter for enabling
ranking completion, so we have to use reflection to enable it (it will
probably change in the future)
2020-03-13 18:09:32 +03:00
Roman Golyshev 4c6ea7c26a KT-36808 Sink down member function Flow.collect in the completion
- This method is never supposed to be called, so we try to lower its
presence in the completion list by puting it on the last possible
position
- ^KT-36808 Fixed
2020-03-13 18:05:29 +03:00
Roman Artemev d27954a6d4 [IR] Use erased types in backing field initializer in case of generic delegated property
- Since neither IrProperty nor IrField is Type Parameter container
 using of proprty's type parameter in IrField related code leads to
 creation of "hanging" type parameters which should be considered as
 incorrect IR.
 - Such code designed to be prohibited in LV 1.5
 - The fix makes use of erased type in such case
 where type parameter is expected.
2020-03-13 17:28:31 +03:00
Roman Artemev 13a73b67de [IR] Fix IrPropertyReference for delegated property
- Make sure that property CR passed to `getValue` doesn't have type
 arguments.
2020-03-13 17:28:30 +03:00
Roman Artemev 34c17e2bed [KLIB] Add regression to about VarAsFun type parameter leak 2020-03-13 17:28:30 +03:00
Roman Artemev 8c1772d623 [KLIB] Add regression test 2020-03-13 17:28:30 +03:00
Vladimir Dolzhenko 09239743c1 Fix compilation KotlinCopyPasteReferenceProcessor for 191, 192 2020-03-13 13:13:15 +01:00
Vladimir Dolzhenko 123311007b Fix compilation CustomUsageSearcherTest for 191, 201 2020-03-13 13:11:21 +01:00
Dmitriy Novozhilov 31776d9a3b [CFA] Mark arguments of all annotation calls as USED_AS_EXPRESSION
Also revert hacky fix of KT-37294 introduced in 80caa063b
#KT-37447 Fixed
2020-03-13 14:32:28 +03:00
Dmitry Gridin b9ffed3f04 Replace ConfigurationFactory with SimpleConfigurationType
#KT-36781 Fixed
2020-03-13 17:56:10 +07:00
Alexander Udalov 43d6ddd405 Minor, fix typo in KotlinChunk.kt
#KT-37159 Fixed
2020-03-13 11:06:46 +01:00
Mikhail Glukhikh 20c4a7b244 [FIR2IR] Introduce staged transformation (first step)
Now FE IR -> BE IR transformation is performed in multiple stages
controller by Fir2IrConverter. Stages are
 * files & classes registration
 * supertypes & type parameters handling
 * functions & properties signature generation
 * body generation

After each step we have guarantee (with exception of local classes &
type inference combination, and external symbols) that required symbols
(class/function/property/variable/type parameter)
are already bound to real declarations and have correct parents.

This commit also fixes incorrect parents for local classes
2020-03-13 12:18:02 +03:00
Alexander Udalov a9f7ff254b Add -Xno-optimized-callable-references to disable KT-27362 optimization
This argument is useful in situations where the stdlib version which the
code compiles against is different from the one which is available at
runtime, such as the case of kotlin-gradle-plugin, which depends on the
compiler/stdlib compiled by 1.4, but may be executed in Gradle where
only 1.3.x is available.

 #KT-37435
2020-03-13 10:07:22 +01:00
Vladimir Dolzhenko ae4629a5a6 Fetch analysis results if it is available
The general idea is to try to fetch a full analysis if it is existed in PerFileAnalysisCache instead of go to ResolveElementCache and do analysis there. Do not perform analysis if it is not in PerFileAnalysisCache.

#KT-37467 Fixed
2020-03-13 09:25:28 +01:00
Zalim Bashorov 7cf8697e30 [JS BEs] use star projection when type parameter used recursively
#KT-37128 Fixed
2020-03-13 10:15:56 +03:00
Zalim Bashorov 8c7562d338 [CJS BE] don't crash when intersection types passed for a reified parameter
#KT-37163 Fixed
2020-03-13 10:15:53 +03:00
Zalim Bashorov 415893b8aa [JS CLI] revert disabling NI by default 2020-03-13 01:51:24 +03:00
Zalim Bashorov 5188bc6584 [JS FE] remove unused ReleaseCoroutinesDisabledLanguageVersionSettings 2020-03-13 01:51:24 +03:00
Vladimir Dolzhenko 87242b419a Improvements in KotlinCopyPasteReferenceProcessor
reduced scope of nonBlockingRead to avoid long rerun of it
used smart pointers to keep valid elements over changes
moved back to non-modal progress

Relates to #KT-37414
2020-03-12 22:42:58 +01:00
Victor Petukhov b1c4b5f51b NI: Analyze lambdas which are return arguments of another lambda
^KT-36044 Fixed
2020-03-12 23:29:09 +03:00
Georgy Bronnikov 426738b7d4 JVM_IR: Cache stubs in CollectionStubMethodLowering 2020-03-12 23:14:17 +03:00
Georgy Bronnikov 92268c8144 JVM_IR: do not generate excessive stubs for immutable collections 2020-03-12 23:14:17 +03:00
Dmitriy Novozhilov 9955f342c0 [FIR-TEST] Move FIR ide tests to separate module 2020-03-12 18:15:38 +03:00
Abduqodiri Qurbonzoda b1fac4e721 Implement reduceIndexedOrNull and reduceRightIndexedOrNull #KT-36866 2020-03-12 18:08:55 +03:00
Abduqodiri Qurbonzoda b60633d79a Add associateWith to Array<T> #KT-30372 2020-03-12 18:06:54 +03:00
Abduqodiri Qurbonzoda e632d58936 Nullable Array.contentEquals/contentHashCode/contentToString #KT-34161 2020-03-12 18:01:23 +03:00
Zalim Bashorov 179ec41a6b [JS BEs] Generate tests for whole "codegen/boxInline" 2020-03-12 17:22:33 +03:00
Zalim Bashorov fe3a81ebc9 [JS BEs] Minor: fix warnings in abstract classes for generated tests 2020-03-12 17:21:06 +03:00
Abduqodiri Qurbonzoda c664bfc62b Update property delegate test data 2020-03-12 16:52:36 +03:00
Alexander Udalov 3762b5cba7 Minor, remove extraneous field CodegenTestCase.coroutinesPackage
After a795c38eb7, this field is available in the base class
KotlinBaseTest.
2020-03-12 13:51:40 +01:00
Alexander Udalov 244db9bcf9 JVM IR: don't rename fake overrides for fields
In case derived class has a field with the same name as the base class,
RenameFieldsLowering previously tried to rename one of the fields by
adding the "...$1" suffix, which led to NoSuchFieldError.
2020-03-12 13:51:40 +01:00