Ivan Gavrilovic
01dd15cc3e
[Gradle] Use task properties to modify task configuration
...
This change migrates to using properties of KGP tasks and Gradle
built-in tasks. Also, in TaskProvider class, Configurator instances are
created to configure KGP tasks.
2021-05-06 13:54:12 +03:00
Ivan Gavrilovic
ad9f6e63b6
[Gradle] Extract configuration of KotlinJsIrLink to a class
...
Migrate KotlinJsIrLink to properties create Configurator class
to configure the task properties.
2021-05-06 13:54:11 +03:00
Ivan Gavrilovic
5eed9a4e6e
[Gradle] Extract configuration of KotlinCompileCommon to a class
...
Migrate KotlinCompileCommon to properties create Configurator class
to configure the task properties.
2021-05-06 13:54:10 +03:00
Ivan Gavrilovic
ff27a61252
[Gradle] Use ConfigurableFileCollection for task local state
...
Use ConfigurableFileCollection so that tasks can simply append to the
file collection and tasks that do not need this, can simply do nothing.
2021-05-06 13:54:09 +03:00
Ivan Gavrilovic
571c9c10d4
[Gradle] Update compile tasks to use properties and clean up code
...
Update AbstractKotlinCompile, KotlinCompile, and Kotlin2JsCompile to
use Gradle properties, and introduce Configurator classes that are
using configuration-time data to configure task. Also, introduce
TaskConfigurator interface that should be implemented by classes that
are used to configure tasks.
2021-05-06 13:54:08 +03:00
Ivan Gavrilovic
56cad96718
[Gradle] Remove KotlinCompileTaskData
...
When getting the incremental compilation information use the
task graph which processes all tasks present in it. Tasks have
all information that is needed to get IncrementalModuleInfo for all
compilations.
2021-05-06 13:54:06 +03:00
Ivan Gavrilovic
b3d8187df4
[Gradle] Remove deprecated ways to specify compiler classpath
...
This change removes options to specify compiler classpath using
deprecated properties that were deprecated for more than 2 years.
2021-05-06 13:54:05 +03:00
Jinseong Jeon
61e21ef6a2
FIR: ensure the absence of FirResolvedTypeRef with erroneous type
2021-05-06 12:22:40 +03:00
Andrey Zinovyev
cba21c68a3
[lombok] Actualize README
2021-05-06 11:27:51 +03:00
Jinseong Jeon
e2dc21da90
FIR checker: warn useless as and is
2021-05-05 18:20:51 +03:00
Jinseong Jeon
19d939c36e
TEST: remove redundant diagnostic directive (w/ syntax error)
2021-05-05 18:20:50 +03:00
Mikhail Glukhikh
7ee6597873
FIR: make inference context mandatory in withNullability() etc.
2021-05-05 17:35:50 +03:00
Jinseong Jeon
bb37728e4f
FIR: use withNullability with type context whenever possible
...
It could simplify flexible type cases.
2021-05-05 17:35:48 +03:00
Anton Lakotka
f94ed1a00c
Fail only when KotlinPm20ProjectExtension is passed
...
to buildKotlinProjectStructureMetadata
#Fixes KTIJ-11586
2021-05-05 16:53:20 +03:00
Jinseong Jeon
291cd842b9
UAST Kotlin: update test data
...
Addition of directive IGNORE_FIR alters synthetic local variable names.
2021-05-05 14:22:40 +02:00
Jinseong Jeon
dad198cb67
UAST Kotlin: make super type lookup test robust
...
Newly added directive IGNORE_FIR bothers lookup for object "O".
2021-05-05 14:22:40 +02:00
Jinseong Jeon
03d4cb0dfa
FIR UAST: use uast-kotlin/testData for legecy tests
2021-05-05 14:22:40 +02:00
Jinseong Jeon
eac875b5d6
FIR UAST: commonize utils from UAST Kotlin
2021-05-05 14:22:40 +02:00
Jinseong Jeon
f37c722c76
UAST Kotlin: fix typos
2021-05-05 14:22:40 +02:00
Jinseong Jeon
40eaabdbb5
FIR UAST: prototype plugin entrypoint, declarations, test infra
2021-05-05 14:22:40 +02:00
Jinseong Jeon
225e3a747c
LC: introduce light class interface for facade
...
so that FIR-based light class for facade can work well in LC utils
2021-05-05 14:11:48 +02:00
Jinseong Jeon
efba90c6f1
LC: rename KtLightClassForFacade to ...Impl
...
before introducing a common interface for light class for facade
This is a mechanical refactoring.
2021-05-05 14:11:48 +02:00
Alexander Udalov
c14a890e7e
IR: fix capturing of type parameters in local functions
...
collectPotentiallyCapturedTypeParameters no longer stops on the first
class when going through parents. This is needed because otherwise type
parameters of the containing class, and its outer classes, were never
considered "captured", and thus not duplicated/remapped later in
LocalDeclarationsLowering.
This led to the IR where a local function referenced generic type
parameters of the outer class. On JVM, local function is generated into
a private static function in that container class, and static functions
can't use generic type parameters, which crashed some bytecode
processing tools.
Also, add another explicit call to `seeType` to cover references to
generic type parameters in function return types.
#KT-45941 Fixed
2021-05-04 21:10:56 +02:00
Vasily Levchenko
b389fd6667
[performance][build][kotlin-build-gradle-plugin] version 0.0.27 (fix)
2021-05-04 15:44:19 +00:00
Stanislav Erokhin
d9be05fea8
Support getContainer for the synthetic it value parameter
...
Also fixed incorrect KtSymbolOrigin:
it was SOURCE instead of SOURCE_MEMBER_GENERATED
2021-05-04 17:25:34 +02:00
Stanislav Erokhin
c24ad0ba51
Use KtFunctionLiteral as key for KtAnonymousFunctionSymbol retrieving
...
It seems logical to do, because KtFunctionLiteral is KtDeclaration
and KtLambdaExpression is not. Also FirAnonymousFunction use it as
realPsi reference
2021-05-04 14:01:30 +02:00
Dmitriy Dolovov
75d2e415e1
[K/N][IR] Generate missing return statement, p. 2
...
^KT-42832
2021-05-04 13:26:02 +03:00
Alexander Shabalin
5e456ed82b
Put GC implementations into separate modules.
...
The mm module now compiles separately for each GC implementation.
2021-05-04 10:23:16 +00:00
Ilya Kirillov
41ab97ff1f
FIR IDE: introduce single function for checking if declaration can be lazily resolved
2021-05-04 08:19:50 +02:00
Ilya Kirillov
babf079c31
FIR IDE: fix resolving of inner type aliases
2021-05-04 08:19:50 +02:00
Ilya Kirillov
9e1bc5680d
FIR IDE: do not consider KtEnumEntry as ktClassOrObject
2021-05-04 08:19:50 +02:00
Ilya Kirillov
ef5f0e77ec
FIR IDE: use KtClassLikeDeclaration.classId instead of hacks
2021-05-04 08:19:50 +02:00
Ilya Kirillov
aff807e3af
Stubs: bump stubs version
2021-05-04 08:19:50 +02:00
Ilya Kirillov
4942f5eb66
Stubs: add classId to KtTypeAlias stubs
2021-05-04 08:19:50 +02:00
Ilya Kirillov
fdb091d98e
Stubs: add classId to KtClassOrObject stubs
2021-05-04 08:19:49 +02:00
Ilya Kirillov
09a94f3200
FIR IDE: ignore non-passing tests in compiler based tests
2021-05-04 08:19:49 +02:00
Ilya Kirillov
3503a54437
FIR IDE: run tests in parallel in module idea-fir-low-level-api
2021-05-04 08:19:49 +02:00
Ilya Kirillov
65ce641b22
FIR IDE: introduce diagnostics tests bases on FIR diagnostics tests
2021-05-04 08:19:49 +02:00
Mads Ager
0c77565104
JVM_IR: Add more local variable tests for finally code.
2021-05-03 07:43:38 +02:00
Mads Ager
6095d8a7fa
[JVM] Split the variable range for external finally blocks in inliner
...
When external finally blocks are inlined none of the current locals
are in scope of the finally block.
2021-05-03 07:43:37 +02:00
Mads Ager
6d9f02cfc6
[JVM_IR] Fix range of locals in connection with finally blocks.
...
For code such as:
```
try {
var y = "y"
for (i in 0 until 1) {
return y
}
} finally {
println("finally")
}
```
The local variables `y` and `i` ended up covering the finally block as
well in the debugger.
This change splits the range of the locals so that they do
not cover the finally block.
This change does not change the inliner to do similar transformations,
so the range of locals is still wrong win finally blocks when inlined
into an inline function. Added a failing test to that effect.
2021-05-03 07:43:37 +02:00
Mikhail Glukhikh
0764a0601c
Fix FIR IDE test data broken by 80a44986
2021-05-01 19:12:05 +03:00
sebastian.sellmair
a1ed81146e
[Commonizer] Logging: NativeDistributionCommonizationCache: Log in level 'quite' on cache misses
...
^KT-36679 Verification Pending
2021-05-01 14:36:18 +03:00
sebastian.sellmair
b48850c993
[Commonizer] Logging: Implement CommonizerLogLevel and hide verbose output by default
...
^KT-36679 Fixed
2021-05-01 14:36:18 +03:00
sebastian.sellmair
7349ec8f2f
[Commonizer] Logging: Implement ProgressLogger.fork
...
^KT-36679
2021-05-01 14:36:16 +03:00
sebastian.sellmair
ec440aecf6
[Commonizer] Logging: Remove 'COMMONIZATION' prologue
...
^KT-36679
2021-05-01 14:36:15 +03:00
sebastian.sellmair
9d9e11d6d8
[Commonizer] Logging: 'Preparing commonized Kotlin/Native libraries': show outputTarget instead of flat list of targets
...
^KT-36679
2021-05-01 14:36:14 +03:00
sebastian.sellmair
0d9e32f963
[Commonizer] Logging: Show [Step x of y] only when more than one task is scheduled
...
^KT-36679
2021-05-01 14:36:13 +03:00
Victor Petukhov
9eaec8d919
Use platform-independent line separator in jspecify tests handler
2021-05-01 13:39:28 +03:00
Nikolay Krasko
2a2fa31577
Allow emulate sonatype publishing when publishing to folder (KTI-552)
2021-05-01 01:41:30 +03:00