Hung Nguyen
e01c2bc651
Warn in Gradle log when incremental compilation fails
...
When incremental compilation fails, we currently log it at the `debug`
level (and fall back to non-incremental compilation). This commit will
change it to `warning` so that we can get more user reports, which will
allow us to fix the root cause.
Also make sure the warning includes a stack trace.
Additionally, let ReportSeverity.fromCode() return a non-null value
or throw an exception otherwise as that case is not expected.
^KT-52839 In Progress
2022-07-15 10:48:34 +00:00
Mikhail Glukhikh
623f832bfd
FIR: fix private-to-this corner case with outer class type parameter
...
Related to KT-49875
2022-07-15 07:57:42 +00:00
Mikhail Glukhikh
d16e5e5e50
FIR: Support checking PRIVATE_TO_THIS visibility #KT-49875 Fixed
2022-07-15 07:57:41 +00:00
Mikhail Glukhikh
83200f8774
FIR: Support inferring PRIVATE_TO_THIS visibility see KT-49875
2022-07-15 07:57:41 +00:00
Alexander Udalov
3b613b3745
Fix some tests related to direct invoke optimization
...
- Fix test data of light class tests
(SymbolLightClassesForLibraryTestGenerated).
- Revert the changes in kt8666.kt because they fail on JS IR, and it
seems that this test is mostly needed for JS anyway.
- Use 'invoke(' as the pattern in bytecode text tests because plain
'invoke' is used when these tests are run on JDK 11, where indy string
concatenation is enabled by default and therefore we reference
`java/lang/invoke/StringConcatFactory`.
2022-07-15 02:29:01 +02:00
Steven Schäfer
8014712569
JVM IR: Check that we generate callable references in tests
2022-07-14 23:24:18 +02:00
Steven Schäfer
2acfb3a41f
JVM IR: Avoid direct lambda invokes in inline tests
2022-07-14 23:24:18 +02:00
Steven Schäfer
f0760e0550
JVM IR: Move direct invoke optimization into a separate pass
...
This also changes the transformation to inline the body of a directly
invoked lambda rather than producing a call to an anonymous local
function. The latter is unsupported in inline functions and problematic
from an ABI perspective, since it results in functions whose name
depends on the entire source code up to this point.
2022-07-14 23:24:18 +02:00
Steven Schäfer
7d59c7689c
JVM IR: Avoid direct invokes in callable reference tests
...
Due to the direct invoke optimization, most callable reference tests
were not generating callable references/lambdas.
2022-07-14 23:24:18 +02:00
Steven Schäfer
f0238766df
JVM IR: Avoid patchDeclarationParents after inlining
...
The code in IrInlineUtils.kt already updates declaration parents.
2022-07-14 23:24:18 +02:00
Stanislav Erokhin
a18ac2ac91
Restore JvmIrCodegenFactory constructor for compatibility with AS 221
2022-07-14 16:30:12 +00:00
Alexander Likhachev
a9e5074330
[Gradle, JS] Update IC test project with multiple artifacts
2022-07-14 13:21:07 +00:00
Alexander Likhachev
e3f6ba4502
[Gradle, JS] Handle empty directories in task outputs backups
...
#KT-52925 Fixed
2022-07-14 13:21:07 +00:00
Alexander Likhachev
10146a7028
[Gradle, JS] Make the KT-51801 test to cover KT-52925
2022-07-14 13:21:06 +00:00
Denis.Zharkov
9f84e7651b
Add issue link to deprecation warning message
...
^KT-29168 Fixed
2022-07-14 13:04:35 +00:00
Alexander Likhachev
5cae57cf28
[IC] Flush incremental caches on close
...
#KT-53168 Fixed
2022-07-14 12:55:30 +00:00
Aleksei.Cherepanov
0950205a47
[IC] Add test for lookups flushing
...
#KT-53168
2022-07-14 12:55:29 +00:00
konstantin.tskhovrebov
7d6cf449b1
[KT-53174] Add platform version to synthetic generated Podfile.
2022-07-14 12:20:39 +00:00
Pavel Mikhailovskii
b26155dd9e
KT-53007 Fix accessibility checks when calling a protected member via super@Outer
2022-07-14 13:09:42 +02:00
Yahor Berdnikau
603d043abc
Move Kotlin/Native compiler arguments into :compiler:cli:cli-common
...
This allows to reference them in the Gradle plugins without enabling
kotlin-native part of the repository
^KT-53108 In Progress
2022-07-14 10:57:28 +00:00
Mikhail Glukhikh
13713323cf
Make FirRenderer inherit FirRendererComponents instead of FirPrinter
...
#KT-53024 Fixed
2022-07-14 09:38:46 +00:00
Mikhail Glukhikh
7ce5100946
FirRenderer: slightly change/refactor declaration rendering
2022-07-14 09:38:45 +00:00
Mikhail Glukhikh
ac34fe3306
FirRenderer: code cleanup & move parts to contract renderer
2022-07-14 09:38:44 +00:00
Mikhail Glukhikh
801426d0e6
Simplify creation of FirRenderer
2022-07-14 09:38:44 +00:00
Mikhail Glukhikh
f9fdb5d3bc
Extract separate FirResolvePhaseRenderer
2022-07-14 09:38:43 +00:00
Mikhail Glukhikh
42b3adf33a
Extract separate ConeIdRenderer and get rid of FirRenderer.RenderMode
2022-07-14 09:38:42 +00:00
Mikhail Glukhikh
e484a4a946
Make ConeContractRenderer a renderer component
2022-07-14 09:38:41 +00:00
Mikhail Glukhikh
31a46866b6
Extract separate FirPropertyAccessorRenderer
2022-07-14 09:38:41 +00:00
Mikhail Glukhikh
9f1f777e0d
Extract separate FirValueParameterRenderer
2022-07-14 09:38:40 +00:00
Mikhail Glukhikh
76d5d3a2ec
Extract separate FirModifierRenderer
2022-07-14 09:38:39 +00:00
Mikhail Glukhikh
3fe35e6997
Extract separate FirCallArgumentsRenderer
2022-07-14 09:38:39 +00:00
Mikhail Glukhikh
abfa33b200
Get rid of mode argument in FirElement.render(withType)
2022-07-14 09:38:38 +00:00
Mikhail Glukhikh
7c27e6f843
FirRenderer: partially get rid of RenderMode
2022-07-14 09:38:37 +00:00
Mikhail Glukhikh
9890066b72
Extract separate FirPackageDirectiveRenderer
2022-07-14 09:38:36 +00:00
Mikhail Glukhikh
bc49107d25
Extract separate FirDeclarationRenderer
2022-07-14 09:38:36 +00:00
Mikhail Glukhikh
5bb4a0ccda
FirRenderer: drop effectively unused renderDeclarationOrigin parameter
2022-07-14 09:38:35 +00:00
Mikhail Glukhikh
089044e5b0
FirRenderer: get rid of direct Visitor usages
2022-07-14 09:38:34 +00:00
Mikhail Glukhikh
998ed8849f
FirRenderer: drop effectively unused renderLambdaBodies parameter
2022-07-14 09:38:34 +00:00
Mikhail Glukhikh
a82baf87cb
FIR renderer: extract separate ConeTypeRenderer
2022-07-14 09:38:33 +00:00
Mikhail Glukhikh
591143be7c
FIR renderer: introduce separate body & annotation renderers
2022-07-14 09:38:32 +00:00
Mikhail Glukhikh
f64a7d3ff9
FirRenderer: extract separate printer & visitor
2022-07-14 09:38:32 +00:00
Mikhail Glukhikh
38d6f3d548
Move FirRenderer to separate package
2022-07-14 09:38:31 +00:00
Mikhail Glukhikh
475e40b3e4
K1: report warning for inline virtual member in enum #KT-53148 Fixed
...
Related to KT-34372
2022-07-14 07:59:33 +00:00
konstantin.tskhovrebov
f509a756fd
[KT-53127] Fix paths to local unarchived pod and for git pod.
2022-07-14 07:37:09 +00:00
konstantin.tskhovrebov
6d594d1a08
[KT-53127] Add pod dependency version for synthetic generated project.
2022-07-14 07:37:08 +00:00
Alexander Likhachev
07c9cfd486
[Gradle, JS] Make simple K/JS IC test to cover IR backend as well
2022-07-13 19:40:49 +00:00
Alexander Likhachev
d2450268f6
[Gradle, JS] Migrate simple K/JS IC test to the new plugin (#KT-52946)
2022-07-13 19:40:49 +00:00
Alexander Likhachev
1e76404163
[Gradle, JS] Fix multimodule IC for K/JS plugin
...
#KT-52946 Fixed
2022-07-13 19:40:48 +00:00
Alexander Likhachev
18560db373
[IC] Remove unused variable declaration
...
Previously it was introduced to make `when` exhaustive, but now all the `when` operators on enums are exhaustive
2022-07-13 19:40:47 +00:00
Yahor Berdnikau
0c4598a00e
Enable caching for generated script accessors
...
According to https://github.com/gradle/gradle/issues/20416 issue it is
safe to do.
2022-07-13 17:30:16 +00:00