Sergey Igushkin
e8a303650c
Rework Gradle subplugins application in Kotlin/Native
2020-06-19 17:30:06 +03:00
Sergey Igushkin
06a3376368
Refactor the Kotlin Android plugin to make it compliant with TCA
...
Also simplify some of the APIs and move some others which are only used
by kapt to the kapt's codebase.
2020-06-19 17:30:06 +03:00
Sergey Igushkin
4dbc6803ba
Refactor the kapt Gradle plugin to use the new plugins API and TCA
2020-06-19 17:30:05 +03:00
Sergey Igushkin
96ed30a449
Introduce new API for Kotlin compiler support Gradle plugins
...
The old API was too specific for the Kotlin internal use cases and
leaked some abstractions due to the missing target-compilation project
model. One of such leaking abstractions was the Gradle tasks being
exposed to the subplugin, which required the tasks to instantiate
in order for the subplugin to apply. This violated task configuration
avoidance, so the old API could never work in compliance with TCA.
Introduce the new KotlinCompilerPluginSupportPlugin API that uses the
compilations instead of the tasks and is TCA-compliant.
2020-06-19 17:30:05 +03:00
Sergey Igushkin
0b2d96c1ef
Refactor Kotlin classes registration for java-library plugin
2020-06-19 17:30:04 +03:00
Sergey Igushkin
58dd0fa3d2
Use TCA-compliant Gradle APIs in the JS part of the Kotlin Gradle plugin
2020-06-19 17:29:59 +03:00
Sergey Igushkin
58e9b3ae0e
Use TCA-compliant Gradle APIs in the Kotlin Gradle plugin
2020-06-19 17:28:40 +03:00
Sergey Igushkin
84287d77ca
Add Java tasks to relevant compilation APIs
2020-06-19 17:28:39 +03:00
Sergey Igushkin
1749cb9129
(minor) Initialize compilations with the precise target type
2020-06-19 17:28:39 +03:00
Sergey Igushkin
f4e4baa253
Add TaskProvider property for Kotlin compile tasks in compilations
2020-06-19 17:28:37 +03:00
Pavel Kirpichenkov
1ebb116056
Revert "Invalidate library caches on OOCBM with enabled resolution anchors"
...
This reverts commit 91b371789e .
^KT-39734 Open
2020-06-19 17:18:45 +03:00
Denis Zharkov
f1955c84aa
FIR: Remove ignoreFrontendIR from GenerateInRangeExpressionTestData
...
It's unnecessary anymore since all tests are fixed
2020-06-19 17:15:56 +03:00
Sergey Rostov
6e9efefd2a
gradle scripts: fix isFirstLoadActual and notification typos
2020-06-19 17:04:01 +03:00
Sergey Rostov
9f4569e5a1
gradle scripts: custom notification wording gradle with default scripting support (gradle older then 6.0)
2020-06-19 16:37:59 +03:00
Sergey Rostov
37fbc75008
gradle scripts: "link project" action implementation
2020-06-19 16:37:21 +03:00
Sergey Rostov
d6fc830c24
gradle scripts: temporary disable irrelevant actions when script configuration was not received during import
2020-06-19 16:37:21 +03:00
Dmitriy Novozhilov
a7675c16d5
[FIR] Fix problems with renaming invocationKind and field in FirAnonymousFunction
2020-06-19 16:28:07 +03:00
Mikhail Zarechenskiy
9c8e979308
Fix compatibility resolve for references with multiple outer candidates
...
#KT-39533 Fixed
2020-06-19 16:21:24 +03:00
Mikhail Bogdanov
58183b774d
Fix test data
2020-06-19 15:07:36 +02:00
Alexey Trilis
99d844dcfb
Deprecate kotlin.browser and kotlin.dom packages and provide
...
replacements in packages kotlinx.dom and kotlinx.browser
KT-39330 Fixed
2020-06-19 16:01:40 +03:00
Ilya Chernikov
16100843b2
Add classpaths from all plugin classloaders to the console scripts
2020-06-19 14:56:00 +02:00
Ilya Chernikov
b5ecab31f5
Load script configuration under read action - avoid possible exception
2020-06-19 14:56:00 +02:00
Dmitriy Novozhilov
bd8eaad885
[FIR-TEST] Update cfg dumps in some tests
...
One of previous commit changed order for those graphs, but i didn't
find which one
2020-06-19 15:53:11 +03:00
Dmitriy Novozhilov
d01817ce14
Rename InvocationKind to EventOccurrencesRange
2020-06-19 15:53:11 +03:00
Dmitriy Novozhilov
1dfccf1416
[FIR] Rename edge kinds of control flow graph
2020-06-19 15:53:10 +03:00
Dmitriy Novozhilov
f0cc3a32d9
[FIR-TEST] Update testdata due to KT-39711
2020-06-19 15:53:10 +03:00
Dmitriy Novozhilov
64c9a83862
[FIR-TEST] Update testdata due to KT-39709
2020-06-19 15:53:10 +03:00
Dmitriy Novozhilov
a317c8a803
[FIR-TEST] Update testdata due to unresolved KT-36056
2020-06-19 15:53:09 +03:00
Dmitriy Novozhilov
26458875d5
[FIR] Add checker for uninitialized properties
2020-06-19 15:53:09 +03:00
Dmitriy Novozhilov
25621d699b
Add methods for combine InvocationKind's
...
There is two methods added -- `or` and `and`
`or` is used by CFA for combining two kinds that came from different
edges of control flow graph
`and` is analog of `+` operator for invocation kinds
2020-06-19 15:53:08 +03:00
Dmitriy Novozhilov
4078b4b6f9
[FIR] Prepare ControlFlowAnalysisDiagnosticComponent
2020-06-19 15:53:07 +03:00
Dmitriy Novozhilov
c9bc5884dd
[FIR] Add more utils for traversing control flow graph
2020-06-19 15:53:07 +03:00
Dmitriy Novozhilov
faa0f07d09
[FIR] Add utility flags to EdgeKind
2020-06-19 15:53:07 +03:00
Dmitriy Novozhilov
5ecbf8b7cd
[FIR] Add CFGNodeWithCfgOwner to detect subgraphs in CFA
2020-06-19 15:53:06 +03:00
Dmitriy Novozhilov
05ee436db0
[FIR] Introduce FirControlFlowGraphOwner node
2020-06-19 15:53:06 +03:00
Dmitriy Novozhilov
8a81a09fd0
[FIR] Assume that when without branches is not exhaustive. KT-39621
2020-06-19 15:53:05 +03:00
Dmitriy Novozhilov
4e2e05e689
[FIR-TEST] Check control flow graph in old frontend diagnostic tests
2020-06-19 15:53:05 +03:00
Dmitriy Novozhilov
12ed8c3bb4
[FIR-TEST] Update CFG dumps according to new nodes order
2020-06-19 15:53:04 +03:00
Dmitriy Novozhilov
4e6542a646
[FIR] Add Stub kind for CFG
...
Edges of stub graphs shouldn't be completed
2020-06-19 15:53:04 +03:00
Dmitriy Novozhilov
1a0df97961
[FIR] Pop and complete graph only after adding last edge to it
2020-06-19 15:53:03 +03:00
Dmitriy Novozhilov
3765c5119f
[FIR] Cache nodes in sorted order in CFG
2020-06-19 15:53:02 +03:00
Dmitriy Novozhilov
b5cceb8995
[FIR-TEST] Add validation of control flow graph nodes order
2020-06-19 15:53:02 +03:00
Dmitriy Novozhilov
2f8e95dace
[FIR-TEST] Add validation for completed graph in diagnostic tests
2020-06-19 15:53:01 +03:00
Dmitriy Novozhilov
9f55d4f3cd
[FIR-TEST] Mute test failing due to KT-39614
2020-06-19 15:53:01 +03:00
Dmitriy Novozhilov
87859b0faa
[FIR] Introduce new algorithm for building CFG for declarations
2020-06-19 15:53:00 +03:00
Dmitriy Novozhilov
950bbfe3a5
[FIR] Add kind for back edges in CFG
2020-06-19 15:53:00 +03:00
Dmitriy Novozhilov
34be9e3569
[FIR] Add controlFlowGraph references to value parameters
2020-06-19 15:52:59 +03:00
Dmitriy Novozhilov
65fae3bb0c
[FIR] Fix problem with local classes in anonymous objects
2020-06-19 15:52:58 +03:00
Dmitriy Novozhilov
5b64c0cfe2
[FIR] Add different states for CFG and some assertions for graph modification
2020-06-19 15:52:57 +03:00
Dmitriy Novozhilov
1261f62afb
[FIR] Extract CFGNode and it's inheritors to separate file
2020-06-19 15:52:56 +03:00