Dmitriy Dolovov
ca0c2f1405
[KLIB tool] Introduce a new CLI command: "dump-abi"
...
With this command it is possble to make an ABI snapshot of any IR-ful library
^KT-62340
2024-01-30 16:12:56 +00:00
Dmitriy Dolovov
9d6266d6ad
[KLIB tool] Use more correct wording in HELP output
...
"dump ... of all public declarations"
->
"dump ... of all non-private declarations"
^KT-62340
2024-01-30 16:12:56 +00:00
Dmitriy Dolovov
ab09a3d0fe
[KLIB tool] Dump metadata for all non-private declarations
...
This is done to make the output of "dump-metadata" command consistent
with the output of "dump-metadata-signatures" and "dump-ir-signatures",
which dump signatures for all non-private declarations.
^KT-62340
2024-01-30 16:12:56 +00:00
Dmitriy Dolovov
1f3da86021
[KLIB tool] Don't print stack trace on CLI args parsing errors
...
^KT-62340
2024-01-30 16:12:56 +00:00
Igor Chevdar
f220074d8a
[K/N][IR] Fixed a problem with top-level fields
...
#KT-65324 Fixed
2024-01-30 14:49:34 +00:00
Nataliya.Valtman
6000596673
Report FUS metrics only from FusMetrics.kt
...
#KT-65213 Fixed
2024-01-30 14:26:43 +00:00
vladislav.grechko
3da1efc94a
Set correct IR origin for getting array element operators
...
^KT-60246: Fixed
2024-01-30 14:26:10 +00:00
vladislav.grechko
9aa8fb80e7
Set correct IR origins for inc/dec operations
...
NB: in order to produce correct IR origins, the source element kinds for
some FIR elements has been changed. As a side effect, mapping PSI to FIR
slightly changed: namely, for `a[b]++`, `a[b]` used to be mapped on
`set` call or callable reference, but now it is mapped on `get` call.
^KT-61891: Fixed
^KT-64387: Fixed
2024-01-30 14:26:10 +00:00
vladislav.grechko
8b1d87848d
[FIR2IR] Fix unwrapping of single-statement blocks
...
Unwrapping should be done with respect to `forceUnitType` parameter.
^KT-65019: Fixed
2024-01-30 14:26:10 +00:00
Artem Kobzar
5b7478c0a6
[K/JS] Automatiacally add runtime dependency for JS Plain Objects plugin inside its Gradle plugin
2024-01-30 13:54:51 +00:00
strangepleasures
effcdd5e71
KT-65330 Fix the DuckDuckGo benchmark
2024-01-30 13:23:21 +00:00
Yahor Berdnikau
09f2f36545
[Gradle] Fix warnings in KotlinJsIrTarget
...
^KT-56904 In Progress
2024-01-30 11:49:07 +00:00
Yahor Berdnikau
c43a0228b9
[Gradle] Fix warnings in KotlinJsIrSubTarget
...
^KT-56904 In Progress
2024-01-30 11:49:07 +00:00
Yahor Berdnikau
cc29ee9f7a
[Gradle] Removed unused method in KotlinJsIrLink
...
^KT-56904 In Progress
2024-01-30 11:49:07 +00:00
Yahor Berdnikau
ed82ca5c09
[Gradle] Fix warnings in KotlinJsBinaryContainer
...
^KT-56904 In Progress
2024-01-30 11:49:07 +00:00
Yahor Berdnikau
d0b0774c6d
[Gradle] Fix warnings in KotlinBrowserJsIr
...
^KT-56904 In Progress
2024-01-30 11:49:07 +00:00
Yahor Berdnikau
f4d9d98a5e
[Gradle] Fix warnings in D8Exec
...
^KT-56904 In Progress
2024-01-30 11:49:07 +00:00
Yahor Berdnikau
5cf1572995
[Gradle] Fix warnings in KotlinJsCompilation
...
^KT-56904 In Progress
2024-01-30 11:49:07 +00:00
Yahor Berdnikau
0f29ae48ee
[Gradle] Fix warnings in InternalKotlinTargetPreset
...
^KT-56904 In Progress
2024-01-30 11:49:07 +00:00
Marco Pennekamp
9a4bf0601e
[AA] Add KtClass-based KotlinSealedInheritorsProvider
...
- The compiler's `SealedClassInheritorsProvider` should not be exposed
outside LL FIR, as it is an internal compiler component and also
exposes `FirRegularClass`. `KotlinSealedInheritorsProvider` is an
Analysis API provider for sealed inheritors that accepts a `KtClass`
instead.
^KT-64718 fixed
2024-01-30 11:48:09 +00:00
Yan Zhulanow
e001fa4e72
[Analysis API] Explicitly specify the context module in a directive
2024-01-30 11:41:26 +00:00
Yan Zhulanow
892212bdf6
[Analysis API] Add type code fragment test for a local class
2024-01-30 11:41:26 +00:00
Yan Zhulanow
3cd04a9e9e
[Analysis API] Migrate existing code fragment tests to the new API
2024-01-30 11:41:26 +00:00
Yan Zhulanow
ef890e9b76
[Analysis API] Add reference resolution tests for code fragments
2024-01-30 11:41:26 +00:00
Yan Zhulanow
c548bed6f6
[Analysis API] Fix 'getContainingDeclaration()' for code fragments
...
^KT-65075 Fixed
2024-01-30 11:41:26 +00:00
Yan Zhulanow
1c883c93fc
[Analysis API] Minor, prettify 'getContainingPsiDeclaration()'
2024-01-30 11:41:26 +00:00
Yan Zhulanow
83ad6eca08
[Analysis API] Minor, prettify 'hasParentSymbol()'
2024-01-30 11:41:26 +00:00
Yan Zhulanow
01ca31a061
[Analysis API] Add test infrastructure for code fragments
...
Now, Analysis API tests can define modules with code fragments.
The preceding module will be used as a context module.
2024-01-30 11:41:26 +00:00
Yan Zhulanow
7298289e4e
[FIR] Support type code fragments in 'PsiRawFirBuilder'
...
For type code fragments, which essentially contain a single type
reference, we add a single statement 'null is Type'.
^KT-61332 Fixed
2024-01-30 11:41:26 +00:00
Ilya Goncharov
0350533189
[Gradle, JS] Do not use project on execution phase
2024-01-30 10:38:09 +00:00
Jinseong Jeon
42e8245007
AA: take into account type arguments if available
...
...when computing receiver type for double colon expression
2024-01-30 06:57:27 +00:00
Jinseong Jeon
2429d09edd
AA: use explicit qualifier type if available
...
...when computing receiver type for double colon expression
^KT-65150 fixed
2024-01-30 06:57:27 +00:00
Sergej Jaskiewicz
2277c1ba97
[FIR] Fix metadata dump in a compiler plugin-related test
...
The previous commit also fixed the inconsistency between the test and
production compiler configuration, which led to the metadata dump in
this test to be correct.
See the commit message of 49071374b4
for details.
2024-01-29 21:07:43 +00:00
Sergej Jaskiewicz
f39335b3f7
[klib] Don't pass around metadata serialization closure
...
Pass the metadata serializer instance instead. This allows to further
reduce code duplication by introducing the common interface
`KlibSingleFileMetadataSerializer` for abstracting away K1 and K2
representation of a source file, as well as reusing
`Fir2KlibMetadataSerializer` across different backends.
KT-64392
2024-01-29 21:07:43 +00:00
Sergej Jaskiewicz
5a6f51e474
[klib] Move KlibMetadataSerializer to serialization.js
...
It's used only in JS compilation.
2024-01-29 21:07:43 +00:00
Sergej Jaskiewicz
abc53b2ee3
[klib] Inline the makeSerializedKlibMetadata function
...
It's used in only one place, and it doesn't really make the code easier
to read.
2024-01-29 21:07:43 +00:00
Sergej Jaskiewicz
93a1ceae75
[klib] Deduplicate KLIB serialization logic in K/JS and K/N
...
Introduce the new `serializeModuleIntoKlib` function that all KLIB-based
backends can use to serialize a module to a KLIB.
^KT-64392 Fixed
2024-01-29 21:07:43 +00:00
Sergej Jaskiewicz
c335cd0b1e
[IR] Remove unused IrMessageLogger from serialization logic
2024-01-29 21:07:43 +00:00
Sergej Jaskiewicz
f88d09a2f6
[IR] Move KtDiagnosticReporterWithImplicitIrBasedContext to ir.tree
...
So that it could be accessible from the `ir.serialization.common` module
2024-01-29 21:07:43 +00:00
Ilya Goncharov
6b6ed12df1
[Gradle, JS] Add test on source map config
...
^KT-59523 fixed
2024-01-29 20:43:01 +00:00
Artem Kobzar
8c69ffe8c9
[K/Wasm] Generate wasm-specific unsigned implementations ^KT-58039 Fixed
2024-01-29 20:11:41 +00:00
Artem Kobzar
b59993d88a
[K/Wasm] Prepare for splitting unsigned implementation helpers into expect/actuals KT-58039
2024-01-29 20:11:41 +00:00
Brian Norman
7f9774819c
Revert "[FIR] Do not smartcast class delegation implemented properties"
...
This reverts commit bb6f466162 .
Reverting the fix for KT-57417 as it causes failures in IntelliJ and
Space projects. May reintroduce fix after failures are investigated and
resolved.
2024-01-29 19:24:03 +00:00
Alexander.Likhachev
e8be5b4b0b
[Gradle] Fix "lib with tests" tests
...
The tests `NewMultiplatformIT.testLibWithTests` and `NewMultiplatformIT.testLibWithTestsKotlinDsl` were broken for a while, but this was unnoticed because of the TC bug. Java targets were removed from the test project in 34f4e3cbf6 . The fix just removes the Java target tests from the expected test report.
2024-01-29 18:39:41 +00:00
Alexander.Likhachev
a065b7adf8
[Gradle] Escape TC service messages in debug logs unconditionally
...
Those messages are not required for the real TC reporting. They are printed just for debugging purposes of integration with K/N and K/JS test runners.
^KT-65295 Fixed
2024-01-29 18:39:41 +00:00
Dmitriy Dolovov
e021411768
[Commonizer] Metadata comparator: More verbose output (with more details)
...
^KT-62753
2024-01-29 17:34:55 +00:00
Dmitriy Dolovov
5f3eee7267
[Commonizer] Metadata comparator: Fully support contracts comparison
...
^KT-62753
2024-01-29 17:34:55 +00:00
strangepleasures
4c8b5c699e
[KAPT] [CLI] KT-65251 Run Kapt CLI with -Xmx512M by default
2024-01-29 15:47:36 +00:00
strangepleasures
17955ce7d9
Revert "Remove flaky Kapt4ToolIntegrationTestGenerated test"
...
This reverts commit 58fd558308 .
2024-01-29 15:47:36 +00:00
Nikita Bobko
19c46662c6
[FIR] Fix missing ACTUAL_WITHOUT_EXPECT when expect is fake-override
...
^KT-65270 Fixed
KT review: https://jetbrains.team/p/kt/reviews/14064/timeline
IJ review: https://jetbrains.team/p/ij/reviews/124657/timeline
2024-01-29 14:56:49 +00:00