Nikolay Krasko
20fedb040f
Update 192 branch to 2019.2 BETA2 (192.5728.12)
2019-07-17 23:50:32 +03:00
Nikolay Krasko
59c5bcc11c
Fix Jsr305HighlightingTest in 192 - don't ask project for not initialized fixture
2019-07-17 23:50:32 +03:00
Nikolay Krasko
9e002b3ff8
Fix inability to instantiate UsefulTestCase because of JdomSerializer
...
Stack Trace
at kotlin.collections.CollectionsKt___CollectionsKt.first(_Collections.kt:184)
at com.intellij.configurationStore.XmlSerializer.<clinit>(xmlSerializer.kt:15)
at com.intellij.codeInsight.CodeInsightSettings.writeExternal(CodeInsightSettings.java:228)
at com.intellij.testFramework.UsefulTestCase.<clinit>(UsefulTestCase.java:104)
at com.intellij.testFramework.TestLoggerFactory.log(TestLoggerFactory.java:154)
at com.intellij.testFramework.TestLogger.info(TestLogger.java:70)
at org.jetbrains.kotlin.scripting.compiler.plugin.definitions.CliScriptDependenciesProvider.calculateRefinedConfiguration(CliScriptDependenciesProvider.kt:45)
...
2019-07-17 23:50:32 +03:00
Alexander Udalov
5341de253f
JVM IR: run FileClass & ExpectDeclarationsRemoving phases on whole module
...
Since we now generate file classes even for IR loaded from dependencies
(see 3a9b94235f ) to simplify code in certain lowerings, it makes sense
to do that for all source files together before any meaningful
lowerings. The easiest way to do so is to make FileClassLowering a
module-wide phase.
ExpectDeclarationsRemoveLowering is now also a module-wide phase because
it needs to be run before FileClassLowering (to avoid producing empty
facades for files that only contain `expect` declarations)
2019-07-17 18:15:02 +02:00
Alexander Udalov
e867830eab
JVM IR: inline JvmBackend, JvmCodegen
2019-07-17 18:15:02 +02:00
Alexander Udalov
9d639bc9a4
Minor, remove code duplication in WrappedDescriptors
2019-07-17 18:15:01 +02:00
Georgy Bronnikov
0423d0f41e
JVM_IR: specify facadeClassGenerator properly in Psi2IrTranslator
2019-07-17 18:15:01 +02:00
Dmitriy Dolovov
1d3b1ed0cb
CIDR: Filter aux library order entries that do not represent K/N libraries
...
Issue #KT-32726 Fixed
2019-07-17 22:37:42 +07:00
Dmitriy Dolovov
10b79816ab
Always analyze KTS with JVM platform
...
Issue #KT-29953
2019-07-17 22:37:37 +07:00
Dmitriy Dolovov
80d2e2ac0d
Make [Jvm|Js]IdePlatformKind and [Jvm|Js]IdePlatformKindTooling available in all IDEs
...
Issue #KT-29953 Fixed
2019-07-17 22:37:31 +07:00
Dmitriy Dolovov
f37c81f1be
Dependency on K/N platform-deps is no more required in plugin.xml
2019-07-17 22:37:25 +07:00
victor.petukhov
7ee5583c89
Fix error message for non-parenthesized annotations on functional types
2019-07-17 17:02:46 +03:00
victor.petukhov
6a679d86ab
Support non-parenthesized annotations on functional types without receiver
...
^KT-31734 Fixed
2019-07-17 16:18:15 +03:00
Vadim Brilyantov
60e3787800
Tests for Sealed Class move + Fix invalid move declaration test
...
MoveDeclarationToSeparateFile.testSealed test was threated to check that the intention is not applicable but it currently is.
2019-07-17 15:53:58 +03:00
Vadim Brilyantov
91d603292c
#KT-27389 : Change JavaSourceRoot usages to Kotlin analogs
2019-07-17 15:53:58 +03:00
Vadim Brilyantov
895b49c0b9
Disable default search in comments and strings when renaming
2019-07-17 15:53:58 +03:00
Vadim Brilyantov
145a4b24ca
#KT-29622: Support sealed classes with non-nested impls move
2019-07-17 15:53:57 +03:00
Vadim Brilyantov
a16551557c
#KT-29622: Support sealed classes with nested impls move
2019-07-17 15:53:57 +03:00
Vyacheslav Gerasimov
a8e0dfabc7
Add -XX:+HeapDumpOnOutOfMemoryError for gradle in import tests
...
#KT-32643
2019-07-17 15:39:44 +03:00
Alexander Udalov
9595c815f1
JVM IR: invent names for SAM wrapper classes
...
Similarly to how it's done for callable references. This is needed for
IrTypeMapper to be able to correctly compute the name of the SAM wrapper
IrClass without resorting to the name of the underlying descriptor
(computed in CodegenAnnotatingVisitor)
2019-07-17 13:55:37 +02:00
Alexander Udalov
a15575d546
JVM IR: do not use KotlinTypeMapper in IrTypeMapper.mapType
2019-07-17 13:55:37 +02:00
Alexander Udalov
1e16c0a447
JVM IR: minimize public API of IrTypeMapper
2019-07-17 13:55:37 +02:00
Alexander Udalov
59ce76e9fd
JVM IR: do not use misleading names for callable reference classes
...
The real JVM name is invented in InventNamesForLocalClasses and will be
used by the codegen when generating the actual class
2019-07-17 13:55:36 +02:00
Alexander Udalov
29fa1793d3
JVM IR: add InventNamesForLocalClasses pass
2019-07-17 13:55:36 +02:00
Alexander Udalov
529efff8cb
IR: introduce IrAttributeContainer
...
This is useful to store data that must be kept when the element is
transformed, such as names of local/anonymous classes and
EnclosingMethod values on JVM which are computed before any lowerings.
For now, this is implemented very conservatively: the only field
`attributeOwnerId` which can be used in BackendContext implementation as
a key in the map
2019-07-17 13:55:36 +02:00
Alexander Udalov
d399144b80
Use TypeSystemCommonBackendContext in mapBuiltInType
2019-07-17 13:55:36 +02:00
Alexander Udalov
13bc5f0c47
Use TypeSystemCommonBackendContext in computeExpandedTypeForInlineClass
2019-07-17 13:55:36 +02:00
Alexander Udalov
c27d9c4546
Use TypeSystemCommonBackendContext in KotlinTypeMapper.writeGenericArguments
2019-07-17 13:55:36 +02:00
Alexander Udalov
2585ce0aa7
Introduce TypeSystemCommonBackendContext, use in KotlinTypeMapper.getVarianceForWildcard
2019-07-17 13:55:35 +02:00
Alexander Udalov
0460b2990f
Use TypeSystemContext in KotlinTypeMapper.hasNothingInNonContravariantPosition
...
Thanks to this abstraction, this code will now easily work with
IrType-based TypeSystemContext implementation in the new IR type mapper
2019-07-17 13:55:35 +02:00
Alexander Udalov
1896537091
Minor, extract inline class type mapping to separate file
2019-07-17 13:55:35 +02:00
Alexander Udalov
bd8c09bfb5
JVM IR: move CollectionToArray creation to JvmSymbols
...
Also simplify it to use IR builder DSL
2019-07-17 13:55:35 +02:00
Alexander Udalov
15e0fd93bd
Minor, rename IrBuiltIns.IrTypeMapper -> BuiltInIrTypePair
...
To avoid name clash with the new IrTypeMapper in JVM backend
2019-07-17 13:55:35 +02:00
Alexander Udalov
f9a1e582b2
Minor, somewhat simplify ClassCodegen construction
2019-07-17 13:55:35 +02:00
Alexander Udalov
edaff968ad
Minor optimization in MutableList.transformFlat
2019-07-17 13:55:35 +02:00
Ilya Gorbunov
945e058586
Document return value of removeAll and retainAll with predicate
...
#KT-32532 Fixed
2019-07-17 14:27:26 +03:00
Dmitry Gridin
7d173ed385
GradleBuildScript: throw exception when trying to change level of language features to disable in multiplatform & fix tests
2019-07-17 12:55:12 +03:00
Dmitry Gridin
0d49ffa831
UpdateConfigurationQuickFixTest: update tests
2019-07-17 12:55:12 +03:00
Dmitry Gridin
cb432acfb7
BuildScriptManipulator: implement new syntax for enable experimental features in MPP
...
#KT-28295 Fixed
2019-07-17 12:55:12 +03:00
Dmitry Gridin
8887031962
GradleConfiguratorTest: fix configureJvmEAPWithBuildGradleKts test
2019-07-17 12:55:11 +03:00
Dmitry Gridin
46dfff7d82
KotlinBuildScriptManipulator: cleanup code
2019-07-17 12:55:11 +03:00
Dmitry Gridin
b1d1a4b2e1
FeatureSupportIntentionActionsFactory: add the missing branch else
2019-07-17 12:55:11 +03:00
Dmitry Petrov
28215186ca
IR serialization: migrate to new generated Java classes structure
2019-07-17 12:00:34 +03:00
Dmitry Petrov
8baa7dfe22
Generated Java classes for Kotlin IR protobuf
2019-07-17 12:00:34 +03:00
Dmitry Petrov
2305bea2b5
Generate IR protobuf classes as multiple Java files
...
Otherwise KotlinIr.java becomes too big for IDEA to swallow in the
default configuration.
2019-07-17 12:00:34 +03:00
Dmitry Petrov
d6eee37481
GenerateProtoBuf: support java_multiple_files mode
2019-07-17 12:00:34 +03:00
Anton Yalyshev
19dfbfa42c
Cleanup: make comments more informative
2019-07-17 10:58:57 +03:00
Anton Yalyshev
1cdcde86e3
Extract adding of sourceSets to subclass, cause superclass is also used in other wizards where this procedure breaks build.gradle
...
#KT-32105 Fixed
2019-07-17 10:58:39 +03:00
Anton Yalyshev
5b66063650
Add clarifications about single/multi targeting to framework descriptions
2019-07-17 10:58:13 +03:00
Anton Yalyshev
a864715cb8
Refactoring: extract and pull up duplicated code from JVM- and JS- related subclassed
2019-07-17 10:57:22 +03:00