Dmitriy Novozhilov
c652a9e7b1
[FIR-IDE] Use correct session in member scope provider
2021-05-14 14:30:45 +03:00
Dmitriy Novozhilov
194252e5a1
[FIR-IDE] Properly setup moduleDataProvider for ide library session
2021-05-14 14:30:44 +03:00
Dmitriy Novozhilov
43b075d452
[FIR] Add path normalization to LibraryPathFilter
2021-05-14 14:30:43 +03:00
Dmitriy Novozhilov
cf5af0f7ea
[FIR] Add KDoc to FirModuleData
2021-05-14 14:30:42 +03:00
Dmitriy Novozhilov
f02a4a6b1f
[FIR-IDE] Add workaround hack for building raw FIR with libraries session
2021-05-14 14:30:41 +03:00
Dmitriy Novozhilov
0427066558
[FIR-IDE] Fix compilation after changes in API of FirSessionFactory
2021-05-14 14:30:40 +03:00
Dmitriy Novozhilov
af307bd55d
[FIR] Fix compilation of AbstractFirBaseDiagnosticsTest
2021-05-14 14:30:38 +03:00
Dmitriy Novozhilov
28be3a0dbc
[FIR] Replace Path with String in KotlinJvmBinaryClass.containingLibrary
...
This is needed because :core:deserialization.common.jvm uses JDK 6
2021-05-14 14:30:37 +03:00
Dmitriy Novozhilov
2abed7161b
[FIR] Get rid of FirJvmModuleInfo
2021-05-14 14:30:36 +03:00
Dmitriy Novozhilov
28e4721a89
[FIR] Check internal visibility in FirJvmModuleVisibilityChecker using module data
2021-05-14 14:30:35 +03:00
Dmitriy Novozhilov
02c58b7a8f
[FIR] Refactor deserialized dependency providers and session factories with FirModuleData
2021-05-14 14:30:33 +03:00
Dmitriy Novozhilov
24f1f7b7b2
[FIR] Unify FirLibrarySession and FirJavaModuleBasedSession into single FirCliSession
2021-05-14 14:30:32 +03:00
Dmitriy Novozhilov
f16194e60d
[FIR] Get rid of FirSession.moduleInfo
2021-05-14 14:30:31 +03:00
Dmitriy Novozhilov
57a8642f5a
[FIR] Add analyzer services to FirModuleData
2021-05-14 14:30:29 +03:00
Dmitriy Novozhilov
92d6b39ffe
[FIR] Add late initialization of session in FirModuleData
2021-05-14 14:30:28 +03:00
Dmitriy Novozhilov
5cfa8694d4
[FIR] Fix all usages of declarationSiteSession
2021-05-14 14:30:27 +03:00
Dmitriy Novozhilov
a15316de24
[FIR] Replace declarationSiteSession with moduleData
2021-05-14 14:30:26 +03:00
Dmitriy Novozhilov
fa8d8ad503
[FIR] Add cache for top-level functions and properties to AbstractFirDeserializedSymbolsProvider
2021-05-14 14:30:25 +03:00
Dmitriy Novozhilov
c523379e6a
[FIR] Move out all JVM specific deserialization logic from AbstractFirDeserializedSymbolsProvider
2021-05-14 14:30:23 +03:00
Dmitriy Novozhilov
e8c4b0e947
[FIR] Rename KotlinScopeProvider to FirKotlinScopeProvider
2021-05-14 14:30:22 +03:00
Dmitriy Novozhilov
4ad7a4a2d1
[FIR] Split KotlinDeserializedJvmSymbolsProvider to common and JVM specific parts
2021-05-14 14:30:21 +03:00
Dmitriy Novozhilov
e5b7cf23d6
Drop min functions from addToStdlib.kt
2021-05-14 14:30:20 +03:00
Dmitriy Novozhilov
d114913cd2
Replace usages of addToStdlib.firstNotNullResult with firstNotNullOfOrNull
2021-05-14 14:30:19 +03:00
Dmitriy Novozhilov
24b6c5df56
Add regression test for KT-45905
2021-05-14 14:30:14 +03:00
Anton Yalyshev
c386b10f04
Add change notes for 1.5.20-M1
2021-05-14 14:05:44 +03:00
Tianyu Geng
3c4e3e8db6
FIR: remove obsolete DataFlowVariablev.isStable
2021-05-14 13:34:33 +03:00
Andrey Zinovyev
84a7bdffe5
[FIR] Don't report MUST_BE_INITIALIZED* on unreachable properties
2021-05-14 12:41:18 +03:00
Alexander Udalov
8308f5d7d3
Create array instances of correct types in reflection
...
Based on #4168 .
#KT-44977 Fixed
Co-authored-by: Arkady Bazhanov <arkady.bazhanov@gmail.com >
2021-05-14 11:16:29 +02:00
Roman Golyshev
ec6c25ef7e
FIR IDE: Remove names duplicates in createImportTypeFix
2021-05-13 21:41:57 +03:00
Roman Golyshev
9504488acb
FIR IDE: Do not show hint from ImportQuickFix if the PSI have changed
...
Without this check, the import hint will be available even after the
quickfix is applied; this happens because the element to which the
quickfix is attached is not invalidated by the quickfix execution
Since the quickfix is still considered as available some time after
the import have been added, the hint is also generated. And the hint
stays even after the quickfix itself is discarded
`isOutdated` function prevents this
2021-05-13 21:41:56 +03:00
Alexander Udalov
8991ce53f4
Regenerate tests
2021-05-13 19:16:09 +02:00
Steven Schäfer
b2378620c3
JVM IR: Fix handling of anonymous initializers in inline classes ( #4372 )
...
Fixes KT-46554
2021-05-13 18:40:26 +02:00
Yan Zhulanow
cc4c61d2b3
Remove dependency on parcelize-runtime in the Parcelize compiler plugin
2021-05-14 01:06:39 +09:00
Yan Zhulanow
e90cc30edb
Remove CLI and some of daemon-related modules from compiler-for-ide
...
These modules is not required by the plugin, and the plugin verifier
warns about unsatisfied dependencies of the modules.
CLI is needed in tests so a separate artifact is created instead.
2021-05-14 01:06:39 +09:00
Yan Zhulanow
26f71c33c0
IDE: Publish JS IR klib artifact
2021-05-14 01:06:39 +09:00
Andrey Zinovyev
58c7aa9937
[FIR] Don't replace custom compareTo with default one in primitives
2021-05-13 18:04:43 +03:00
Mikhail Glukhikh
1a3aa1bff0
FIR: report ANNOTATION_PARAMETER_DEFAULT_VALUE_MUST_BE_CONSTANT
2021-05-13 16:13:44 +03:00
Mikhail Glukhikh
55104a594c
FIR: fix WRONG_GETTER(SETTER)_RETURN_TYPE associated PSI types
2021-05-13 16:13:44 +03:00
Mikhail Glukhikh
0f9f63400e
FirSupertypesChecker: implement six more diagnostics
2021-05-13 16:13:43 +03:00
Mikhail Glukhikh
db828a6aad
Generalize FirInterfaceWithSuperclassChecker to FirSupertypesChecker
2021-05-13 16:13:43 +03:00
Mikhail Glukhikh
632a9d66d1
FIR: introduce isPrimitive / isPrimitiveOrNullablePrimitive helpers
2021-05-13 16:13:42 +03:00
Mikhail Glukhikh
6d82aa0bc9
Drop duplicating FirPropertyAccessorChecker
2021-05-13 16:13:08 +03:00
Mikhail Glukhikh
d2cbf941db
Collect all accessor checks in FirPropertyAccessorChecker
2021-05-13 16:13:08 +03:00
Mikhail Glukhikh
243114ef29
FIR: add 'withSuppressedDiagnostics' call to property checkers
2021-05-13 16:13:08 +03:00
Mikhail Glukhikh
6618b4ea57
FirPropertyAccessorChecker: add three new diagnostics
2021-05-13 16:13:07 +03:00
Dmitriy Novozhilov
1a3b5657c7
[FIR] Fix overload conflicts resolution for callable references with defaults
2021-05-13 15:31:18 +03:00
Alexander Udalov
e3b92fd561
Update instructions to run protoc on Windows and Linux
2021-05-13 13:58:43 +02:00
Alexander Udalov
b5af93c8b4
Fix IR proto backward compatibility for InlineClassRepresentation
...
This is important only if any backend which uses IR serialization will
(accidentally or voluntarily) use `IrClass.inlineClassRepresentation`,
which is missing in IR of klibs serialized with 1.5.20 or earlier.
Note that at the moment only JVM IR is using
`IrClass.inlineClassRepresentation`, but ideally we'd like to change
that (if needed).
2021-05-13 13:58:43 +02:00
Alexander Udalov
0a18174165
IR: remove hack related to inline class representation in lazy IR
...
This commit effectively reverts changes from
b5f9b1dfc0 , fixing the problem from
KT-44723 in a stabler way. It is possible because we now serialize
inline class representation to metadata and after previous changes, we
have that representation as a field in IrClass.
2021-05-13 13:56:59 +02:00
Alexander Udalov
da06faa57e
JVM IR: use inlineClassRepresentation in more utilities
...
Remove any logic related to finding the single parameter of the primary
constructor, and use inlineClassRepresentaton from IrClass or
ClassDescriptor instead.
2021-05-13 13:56:59 +02:00