Roman Artemev
f05c8ad953
[JS IR] Fix js("...") call checker in frontend.
...
Call mather relies on that BuiltIn package fragment implement specific
interface `BuiltInsPackageFragment` which was missed. Make sure that
BuiltIn module's package fragments implement that interface.
Fix progression optimizer symbols resolve in JS & WASM IR BE
2021-09-28 18:15:51 +03:00
Vyacheslav Gerasimov
ab146bd6d4
Build: Fix deprecated Gradle configurations usages
...
for migration to Gradle 7+ #KTI-559
2021-09-26 18:28:44 +03:00
Sergey Bogolepov
d5e2ac0efc
Fix KotlinLibraryResolverImpl.kt on Windows
...
`absoluteFile` is not enough to make path unique. For example, it doesn't
expand things like '..' and 'IDEAPR~1' on Windows. `canonicalFile` seems
to solve the problem.
2021-08-04 05:44:27 +00:00
Dmitry Savvinov
708fead1cc
Add debug strings to frontend scopes-related structures
...
Such as:
- PackageFragmentProviders, and, in particular,
CompositePackageFragmentProviders
- JavaPackageFragments
- Scopes produced by those providers
The rationale is that a lot of frontend-facing bugs (like red code) are
easily recognizeable in resolution. But at that point you just see a
bunch of scopes, without meaningful toStrings, you don't know who has
produced them, and what's exactly wrong.
With this commit it should make debugging slightly easier: now at least
you'll be able to see that "this scope is a scope of package fragment
for foo.bar of module baz" and decide whether the declaration should or
should not have been resolved from such scope.
2021-06-03 17:21:59 +03:00
Dmitriy Novozhilov
d114913cd2
Replace usages of addToStdlib.firstNotNullResult with firstNotNullOfOrNull
2021-05-14 14:30:19 +03:00
sebastian.sellmair
75d9cd3814
[Minor] KotlinLibraryResolverImpl: Improve readability in resolveDependencies
2021-04-21 20:05:57 +00:00
sebastian.sellmair
22ea5c7de4
Demote fatal error to warning on unresolved libraries mentioned in Klib's manifest 'depends' for metadata compilation
...
^KT-46107
2021-04-21 20:05:55 +00:00
Vladimir Ivanov
61883ee878
Exclude kdoc related stuff from proto comparison in IC ( #4283 )
2021-04-07 17:16:06 +03:00
Vladimir Ivanov
fd02802028
[Native] Export KDoc into generated native header
2021-03-09 16:50:23 +03:00
Roman Artemev
b0adcffed9
[JS IR] Fix transitive dependency resolve
2021-01-26 19:23:25 +03:00
Pavel Kirpichenkov
b66f5c8180
Drop type aliases for JS and KLIB string tables
...
They used to use the same approximation logic anyway
^KT-20996
2021-01-20 11:05:53 +03:00
Pavel Kirpichenkov
2f3f75b512
Fix local anonymous class name error in K2MetadataCompiler
...
Extract the logic of approximating to denotable class supertype
from JS/KLIB and use it in metadata compiler.
^KT-20996 In Progress
2021-01-20 11:05:53 +03:00
Dmitriy Novozhilov
a764732020
Rename KotlinBuiltInsNames to StandardNames
2020-08-25 10:41:33 +03:00
Dmitriy Novozhilov
3a48265077
Move ModuleDescriptor.Capability to :core:descriptors.common module
2020-08-25 10:31:37 +03:00
Dmitriy Novozhilov
7a7fe77b8e
Move static constants with builtin names to :core:descriptors.common module
2020-08-25 10:31:36 +03:00
Roman Artemev
851c287105
[KLIB] Use SoftReference to hold proto memory
...
- fix metadata memory leak for KT-40345
2020-08-03 19:22:06 +03:00
Dmitriy Dolovov
3d9093583f
Metadata: 'non-stable parameter names' flag for callables
...
^KT-34602
2020-07-27 23:11:30 +07:00
Anton Bannykh
e45cd02b01
KLIB: add EmptyPackageFragment's to fix ModuleDescritor.getSubPackagesOf
2020-07-15 20:42:23 +03:00
Dmitry Savvinov
b07f89864e
Allow dependencies to see internals from main module as well
...
^KT-38338 Fixed
2020-04-24 12:54:39 +03:00
Sergey Igushkin
d4a0844a77
Support additional module descriptor dependencies in klib descriptors
2020-04-24 12:54:37 +03:00
Dmitriy Dolovov
c35420eaf6
Minor. Add comments
2020-04-14 21:07:59 +07:00
Dmitriy Dolovov
8d2e999776
HMPP: Parameterize NativePlatform with KonanTarget
2020-04-14 21:06:48 +07:00
Alexey Tsvetkov
1c38466a22
Pass LookupTracker to deserialized scopes in JS KLIB compiler
...
Before this change, deserialized scopes were not tracking lookups properly,
because lookup tracker was not passed from compiler configuration correctly.
Because of that, lookups from dependencies were not tracked,
so multi-module IC was not working (chages were passed between modules,
but affected source files were not invalidated).
2020-04-10 05:35:45 +03:00
Svyatoslav Kuzmich
f4b94ccbc8
Update klib metadata version to 1.4.0
2020-04-07 21:19:14 +03:00
Dmitriy Dolovov
9bbfe9c1ac
Rename: KonanPlatform, KonanPlatforms -> NativePlatform, NativePlatforms
2020-03-29 23:20:52 +07:00
Dmitriy Dolovov
c23a11a6fc
Refactoring: Clean-up usage of KlibMetadataFactories
2020-03-27 13:12:01 +07:00
Roman Artemev
bb43a66716
[Metadata] Add platform dependent type transformer
...
- Fix forward declaration type construction
2020-02-26 14:55:54 +03:00
Roman Artemev
25a91a217e
[KLIB] Fix package for NullFlexibleTypeDeserializer
2020-02-26 14:55:53 +03:00
Georgy Bronnikov
47d6bdfd35
IR: add isProvidedByDefault() to SearchPathResolver
2020-01-28 12:19:43 +03:00
Mikhail Zarechenskiy
0e90d538df
FIC: propagate info about conversions for deserialized classes
2020-01-17 19:36:08 +03:00
Mikhail Zarechenskiy
0fdebdfeba
Refactoring: move SamConversionResolverImpl to core module
2020-01-17 19:36:07 +03:00
Leonid Startsev
9bd966c123
Supply correct Native platform for module descriptor while compiling from CLI
2020-01-15 12:48:49 +03:00
Dmitriy Dolovov
992a702762
Minor: organized imports
2019-12-13 15:52:03 +03:00
Dmitriy Dolovov
deb4025987
Fix: Use more precise KLIB compatibility check (by metadata version)
...
Issue #KT-34811
2019-12-13 15:51:54 +03:00
Dmitriy Dolovov
ce376f49fd
[Commonizer] CLI for Kotlin/Native KLIBs
2019-12-12 14:51:55 +03:00
Dmitriy Dolovov
a74e364849
[Commonizer] Support Kotlin/Native forward declarations
2019-12-12 14:51:29 +03:00
Alexander Gorshenev
a923e0d130
Only allow version triples for klib metadata and ir versions
2019-11-30 18:37:38 +03:00
Alexander Gorshenev
b0f077ff4b
Plumbing KlibMetadataVersion and KlibIrVersion values to klib manifest
2019-11-30 18:37:38 +03:00
Alexander Gorshenev
369d9bfdab
Dropped index from DeserializedSourceFile as it is no longer needed
2019-11-19 18:19:46 +03:00
Alexander Gorshenev
e7ef453d22
Got rid of klib file registry
2019-11-19 18:19:46 +03:00
Alexey Tsvetkov
6e9cd85b54
Exclude some proto messages from proto comparison in IC
2019-11-08 14:14:58 +03:00
Alexey Tsvetkov
ac9b7fa268
Exclude some proto fields from proto comparison in IC
2019-11-08 14:14:58 +03:00
Alexander Gorshenev
21c436c64c
Klib metadata cached package fragment and package fragment provider
2019-11-08 14:14:57 +03:00
Alexander Gorshenev
55805ddeb8
JS search path resolver with attributes.
...
Warn on inclusion of klibs with the same name in manifest
2019-10-11 17:02:06 +03:00
Anton Bannykh
82e8bcfca9
Proto: update the workaround which reduces memory allocations
2019-10-11 13:58:22 +03:00
Alexander Gorshenev
e5dbec4523
Commonized FileRegistry with SourceFileMap for klib metadata
2019-10-08 16:56:29 +03:00
Dmitriy Dolovov
2bc0a3c9c0
Fix KNPE after calling completion in native targeted filesIssue KT-34158 Fixed
2019-10-08 18:27:23 +07:00
Vyacheslav Gerasimov
24a8e1cd9c
Build: Fix maven dependencies for compiler daemon and util-klib-metadata artifacts
2019-10-07 15:18:38 +02:00
Alexander Gorshenev
147681f335
Fixed native PackageAccessTracker
2019-10-01 17:38:57 +03:00
Dmitriy Dolovov
5985c0c02b
KLIB API constants clean-up
2019-10-01 17:38:57 +03:00