Yahor Berdnikau
caa6b630ab
Apply 'kotlin-android' plugin dynamically.
...
Only apply when one of android plugins are also applied to the project.
If none of AGP plugins are applied and 'kotlin-android' is - exception
in 'afterEvaluate {..}' will be thrown.
^KT-46626 Fixed
2021-07-20 13:44:45 +03:00
Dmitriy Novozhilov
f3116cb64a
Fix NON_EXHAUSTIVE_WHEN_STATEMENT warnings in project code
2021-07-20 13:33:46 +03:00
Dmitriy Novozhilov
a6edd852ff
[FIR] Report NON_EXHAUSTIVE_WHEN_STATEMENT/NO_ELSE_IN_WHEN for when's on logical types
...
^KT-47709 In Progress
2021-07-20 13:33:44 +03:00
Dmitriy Novozhilov
ef635f6a96
[FE 1.0] Report NON_EXHAUSTIVE_WHEN_STATEMENT/NO_ELSE_IN_WHEN for when's on logical types
...
^KT-47709 In Progress
2021-07-20 13:33:43 +03:00
Dmitriy Novozhilov
85c7f386eb
Add Kotlin 1.7 language version
2021-07-20 13:33:41 +03:00
Andrey Zinovyev
4a37de51bb
[FIR] Add ANONYMOUS_INITIALIZER_IN_INTERFACE diagnostic
2021-07-20 13:29:00 +03:00
Yahor Berdnikau
304d01127f
Fix false positive on Java/Kotlin JVM target validation.
...
Fix false positive case when java toolchain was set to <JDK1.8. In such
case Java tasks return '8' (or less) for target instead of '1.8'.
^KT-47520 Fixed
2021-07-20 09:25:06 +00:00
nataliya.valtman
f76864260a
Log changed files into ES statistic
2021-07-20 11:26:55 +03:00
Dmitriy Novozhilov
9b3b386f0a
[FIR IDE] Ignore HMMP compiler test
2021-07-20 10:33:54 +03:00
Dmitriy Novozhilov
749dbf4d44
[FIR] Safe dependency symbol provider in IDE session
2021-07-20 10:33:53 +03:00
Dmitriy Novozhilov
37c096cb10
[FIR] Support creation of IR of common + platform sources in FirAnalyzerFacade
2021-07-20 10:33:52 +03:00
Dmitriy Novozhilov
df11ccf755
[FIR] Fix dependency on jvm descriptors for running fir2ir tests with JPS
2021-07-20 10:33:51 +03:00
Dmitriy Novozhilov
5354e4afe4
[FIR] Ignore some MPP backend tests
...
FIR doesn't support actual declarations in same module where expect
declarations lay
2021-07-20 10:33:50 +03:00
Dmitriy Novozhilov
c3060e861f
[FIR] Add expect actual checker
2021-07-20 10:33:49 +03:00
Dmitriy Novozhilov
faadb08174
[FIR-IDE] Fix generating conversions for pair with non-trivial converters
2021-07-20 10:33:48 +03:00
Dmitriy Novozhilov
b363d95160
[FIR-IDE] Add conversion for Map type
2021-07-20 10:33:47 +03:00
Dmitriy Novozhilov
3b2df7ade3
[FIR] Inherit expect modifier from outer classes
2021-07-20 10:33:46 +03:00
Dmitriy Novozhilov
18af4155b8
[FIR] Properly infer open modality for functions of expect interfaces
2021-07-20 10:33:45 +03:00
Dmitriy Novozhilov
3991383853
[FIR] Provide compiler light classes from all source modules
2021-07-20 10:33:44 +03:00
Dmitriy Novozhilov
8729421e7a
[FIR] Add kind to all FirSessions
2021-07-20 10:33:43 +03:00
Dmitriy Novozhilov
2c1ada131d
[FIR] Don't generate implicit primary constructor for expect classes
2021-07-20 10:33:42 +03:00
Dmitriy Novozhilov
b1e47a46cd
[FIR] Inherit isExpect flag of members from containing class
2021-07-20 10:33:41 +03:00
Dmitriy Novozhilov
9fd25af1a7
[FIR] Add pretty toString to FirSession and ModuleData
2021-07-20 10:33:40 +03:00
Dmitriy Novozhilov
55775a7beb
[FIR] Use proper moduleData in fake override generator
2021-07-20 10:33:38 +03:00
Dmitriy Novozhilov
7f20b83159
[FIR] Use proper moduleData in synthetic properties scope
2021-07-20 10:33:37 +03:00
Dmitriy Novozhilov
7008f02962
[FIR] Create fir classes for java annotations and enums with Final modality
2021-07-20 10:33:34 +03:00
Dmitriy Novozhilov
6e83820f97
Move ExpectActualCompatibility to :compiler:resolution.common
2021-07-20 10:33:33 +03:00
Dmitriy Novozhilov
950db81aa4
[FIR] Split compileModulesUsingFrontendIR to multiple functions
2021-07-20 10:33:32 +03:00
Dmitriy Novozhilov
ec1651df92
[FIR] Store dependencies symbol provider as separate session component
2021-07-20 10:33:31 +03:00
Ilya Matveev
1c5361dacd
[K/N] disable throwThroughBridge test for wasm32
2021-07-20 07:19:38 +00:00
Hung Nguyen
ecf6001365
KotlinCompile: Prepare for classpath snapshotting and diffing
...
This commit prepares necessary components only. The core parts of
classpath snapshotting and diffing will be implemented next.
Bug: KT-45777
Test: Existing IncrementalCompilationClasspathSnapshotJvmMultiProjectIT
and IncrementalJavaChangeClasspathSnapshotIT
2021-07-20 04:04:43 +03:00
Hung Nguyen
41345b2c50
Pass classpath changes from KotlinCompile task to Kotlin compiler
...
This commit wires necessary components only. The actual classpath
changes will be provided later.
Bug: KT-45777
Test: Existing IncrementalCompilationClasspathSnapshotJvmMultiProjectIT
and IncrementalJavaChangeClasspathSnapshotIT
2021-07-20 04:04:43 +03:00
Hung Nguyen
c8b3b6df9c
KotlinCompile: Set up artifact transform to take classpath snapshot
...
This commit sets up the artifact transform only. The actual classpath
snapshotting and computation of classpath changes will be done later.
Bug: KT-45777
Test: Existing IncrementalCompilationClasspathSnapshotJvmMultiProjectIT
and IncrementalJavaChangeClasspathSnapshotIT
2021-07-20 04:04:43 +03:00
Ilmir Usmanov
5517aa36e1
Minor. Add debugger test
...
#KT-47749
2021-07-19 22:07:17 +00:00
Ilmir Usmanov
e870a200c4
Merge consequent LVT records
...
that is, if LVT record starts where previous one ends, merge them.
#KT-47749 Fixed
2021-07-19 22:07:16 +00:00
Ilmir Usmanov
5ae01c8b2a
Do not duplicate $result in LVT
...
#KT-47749
2021-07-19 22:07:16 +00:00
Ilmir Usmanov
b4d356c5bd
Split LVT record for known nulls
...
Since they are not spilled, the logic for splitting LVT records, that
is applied for spilled variables, was not applied for known nulls.
Fix that by applying the logic to them.
#KT-47749
2021-07-19 22:07:15 +00:00
Mads Ager
83dddd73b0
Always add a local variable for its live ranges.
...
There used to be code that extended a previous range instead.
However, that does not work as that extension could have the
local cover code where it does not exists. Since we no longer
extend the range of locals, we should always introduce a new
one even if there was another one for a previous range.
2021-07-19 22:07:14 +00:00
Ilya Muradyan
ae650ef19b
Add EPL 1.0 licence text for Eclipse Aether dependencies
2021-07-19 21:31:50 +03:00
Ilya Muradyan
46bbe5b1cb
Replace Ivy resolver with Maven resolver in all places
2021-07-19 21:31:49 +03:00
Ilya Muradyan
014765a302
Add dependencies-maven-all artifact
2021-07-19 21:31:48 +03:00
Ilya Muradyan
f7c2adae30
Always use wagon classloader as a plexus class world
...
In CLI compiler, system classloader doesn't load all classes directly,
so wagons (including HttpWagon) happen to be invisible to
Plexus DI that leads to artifacts download failures.
2021-07-19 21:31:46 +03:00
Alexander Likhachev
b93bd1fe09
[Gradle] Simplify optInAnnotation function name to optIn in DSL
...
#KT-38111
2021-07-19 19:57:00 +03:00
Dmitry Petrov
e276dec4de
JVM don't merge local values in FixStackAnalyzer
...
We care only about stacks there.
This yields about 10-15% in a pathological case such as KT-41510.
2021-07-19 19:24:57 +03:00
Ilya Kirillov
230fce65e5
LL API: add kt -> fir mapping tests for types
2021-07-19 18:45:44 +03:00
Ilya Kirillov
1423aa2c43
LL API: fix kt -> fir mapping of type inside nullable type
2021-07-19 18:45:43 +03:00
Ilya Kirillov
ddd257adc2
LL API: add test for kt -> fir mapping of qualified calls
2021-07-19 18:45:42 +03:00
Ilya Kirillov
3ae1fe69da
LL API: add test for kt -> fir mapping
2021-07-19 18:45:41 +03:00
Ilya Kirillov
b380bcfd99
LL API: add kt -> fir mapping tests for expressions
2021-07-19 18:45:40 +03:00
Ilya Kirillov
0554e2a083
LL API: fix kt -> fir mapping for KtStringTemplateEntryWithExpression
2021-07-19 18:45:38 +03:00