Dmitriy Novozhilov
67604dcb66
[FIR] Add generator for checkers aliases and sets of checkers
2020-09-08 12:51:12 +03:00
Dmitriy Novozhilov
a05d6da43b
Move descriptor-independent Visibilities to common modules
2020-09-04 11:42:50 +03:00
Dmitriy Novozhilov
d1fd1da56f
Rename Visibility to DescriptorVisibility
2020-09-04 11:07:42 +03:00
Alexander Udalov
b8d16f3d46
Add EnclosingMethod information to bytecode listing tests
2020-09-02 16:46:05 +02:00
Leonid Startsev
c881347110
Use correct return type for constructor call when creating EnumDescriptor
...
Previous one was converted using obsolete API, which caused unbound symbols to appear.
#KT-41321 Fixed
2020-09-02 13:22:23 +03:00
Leonid Startsev
8b0bb430e7
Fix multiple serialization plugin problems
...
Do not use fallback serializer if it is the same (fixes
https://github.com/Kotlin/kotlinx.serialization/issues/957 ).
Use correct number of serializable KClasses when creating sealed class
serializer (fixes https://github.com/Kotlin/kotlinx.serialization/issues/925 ).
2020-09-02 13:22:23 +03:00
Ivan Gavrilovic
91b99da7a0
KT-41313: Only load .jar files when locating annotation processors
...
Previously, we'd only check if file exists and try to load it. However,
some compile classpaths may contain .tar.gz files.
Test: ProcessorLoaderTest
2020-09-02 00:48:25 +09:00
Dmitriy Novozhilov
6db8c28291
[FIR] Refactor session components initialization
...
From now all customization of session should perform via DSL which
declared in FirSessionFactory. Registration or mutation session
services from other places is prohibited
2020-09-01 12:00:12 +03:00
Vladimir Dolzhenko
54d3c5fb0a
Pick up script language level from used stdlib in a gradle's classpath
...
^KT-41283 Fixed
2020-08-26 14:09:58 +00:00
Nicolay Mitropolsky
c93ae64546
Uast: KotlinClassViaConstructorUSimpleReferenceExpression resolve to PsiClass (KT-41290)
2020-08-26 16:13:13 +03:00
Alexander Udalov
a9ddf02556
Replace deprecated usages of max/min with maxOrNull/minOrNull
2020-08-25 20:33:59 +02:00
Dmitriy Novozhilov
a764732020
Rename KotlinBuiltInsNames to StandardNames
2020-08-25 10:41:33 +03:00
Dmitriy Novozhilov
7a7fe77b8e
Move static constants with builtin names to :core:descriptors.common module
2020-08-25 10:31:36 +03:00
Dmitriy Novozhilov
18ae593700
[FIR] Rename new visibilities to CamelCase
...
It's more convenient since they are objects now instead of
const fields in FE 1.0
2020-08-25 10:31:35 +03:00
Dmitriy Novozhilov
43821b681c
[FIR] Introduce new Visibility class which not depends on descriptors
2020-08-25 10:31:35 +03:00
Dmitriy Novozhilov
41ba9b0a2d
[FIR] Add flag to disable transformers required only for plugins
2020-08-25 10:31:34 +03:00
Ilya Chernikov
ee9c597767
Build: Remove exclusion of kotlinx-coroutines-core in scripting-compiler
...
The previous fix was insufficient to fix gradle substitution in MPP
projects (https://github.com/gradle/gradle/issues/14017 )
2020-08-24 19:13:16 +02:00
Alexander Udalov
1d15a5547d
Suppress deprecation warnings related to scripting
2020-08-20 14:58:11 +02:00
Yunir Salimzyanov
42da9e62db
Cleanup 192 patchset files (KTI-315)
2020-08-19 19:40:02 +03:00
Yunir Salimzyanov
27b2e16141
Cleanup as36 patchset files (KTI-315)
2020-08-19 19:40:00 +03:00
Ilya Chernikov
0a9089bc72
Set correct base classloader for REPL evaluation
...
the contributed partial fix of KT-35925 set it to the system classloader
which brought in many cases the compiler CP into the evaluation and lead
to the problems like KT-40898. This fix set it to the extension/platform
classloader, which preserves (partial) fix of the KT-35925 and do not
bring the compiler jar into the REPL evaluation classpath.
#KT-40898 fixed
2020-08-19 15:17:07 +02:00
Alexander Udalov
a810dbb41b
IR: fix compiler warnings
2020-08-18 10:33:25 +02:00
Alexander Udalov
256f4449ce
IR: annotate obsolete API in IrPluginContext with ObsoleteDescriptorBasedAPI
2020-08-17 21:18:19 +02:00
Alexander Udalov
9607414cf1
IR: make allOverridden return Set instead of Sequence, move to IrUtils
...
This doesn't hurt performance, but improves stack traces, in particular
in JVM's BridgeLowering.
2020-08-14 21:55:37 +02:00
Georgy Bronnikov
18ae665d41
IR: make IrCall take IrSimpleFunctionSymbol
2020-08-12 16:31:31 +03:00
Alexander Udalov
bcf1ee3907
Minor, fix test data for kotlinx.serialization bytecode text test
2020-08-11 15:14:06 +02:00
Pavel Kirpichenkov
f431da2a66
Reapply "Introduce @FrontendInternals annotation""
...
This reverts commit 9ca4717d11 .
^KT-39643 Fixed
2020-08-10 12:22:55 +03:00
Georgy Bronnikov
04d93dfbce
IR: move containerSource from descriptor to IrFunction, IrProperty
2020-08-10 10:16:23 +03:00
Pavel Kirpichenkov
9ca4717d11
Revert "Introduce @FrontendInternals annotation"
...
Revert due to Mobile IDE Trunk IJ TC configuration
This reverts commits:
ffc3d8bdfc
c0e713980b
^KT-39643 In Progress
2020-08-07 12:10:03 +03:00
Mads Ager
7f2efabe6a
[JVM_IR]: Improve stepping for when.
...
Additionally, use the line number of the class for default interface
dispatch methods.
2020-08-07 09:16:01 +02:00
Alexander Udalov
e4cd7cdbcf
IR: remove unused code, cleanup
2020-08-06 17:08:04 +02:00
Pavel Kirpichenkov
ffc3d8bdfc
Introduce @FrontendInternals annotation
...
#KT-39643
2020-08-05 21:44:47 +03:00
Dmitriy Novozhilov
644e9843f9
[FIR] Add initialization of calleeReference for FirAnnotationCall
2020-08-04 08:59:14 +03:00
Nick
7145caca40
[FIR] Refactor effective visibility calculation
...
Before this commit, we had effective visibility as a part of FIR status,
so it was integrated into the full pipeline. In this commit,
we introduced "effective visibility as a service" which is now used
only by exposed visibility checker. This allows us to make the thing
universal for all FIR nodes, including nodes for Java / deserialized.
2020-07-31 19:27:58 +03:00
Nicolay Mitropolsky
c254651ed3
Uast: handling annotations on the property receiver (KT-40539)
2020-07-29 19:42:22 +03:00
Leonid Startsev
96d0b1c47a
Update serialization runtime and fix test data
...
Revert "Mute/ignore 'PROVIDED_RUNTIME_TOO_LOW' in tests"
2020-07-29 14:20:33 +03:00
Alexander Udalov
4892737cc9
Use IrFactory in kotlin-serialization-compiler
2020-07-28 19:04:44 +02:00
Alexander Udalov
cce55f1609
IR: add module ir.tree.impl, move main IR implementation there
2020-07-28 19:04:44 +02:00
Alexander Udalov
d1dc938a5d
IR: use IrFactory in IR builders
2020-07-28 12:05:24 +02:00
Alexander Udalov
db4cbe7103
IR: use IrFactory in SymbolTable
2020-07-28 12:05:23 +02:00
Kevin Bierhoff
fa8c6e7fb6
Uast: KT-40578: resolve Kotlin property writes to setters ( #3597 )
...
* KT-40578: resolve Kotlin property writes to setters
* limit to non-constructor properties
* Uast: `KotlinIDERenderLogTest.testConstructors` fix
Co-authored-by: Nicolay Mitropolsky <nicolay.mitropolsky@jetbrains.com >
2020-07-28 10:03:22 +03:00
Dmitry Petrov
89a0b3e944
Check class source in bytecode listing tests
2020-07-27 19:13:37 +03:00
Dmitry Petrov
0741781462
Compare inner class access flags in bytecode listing tests
2020-07-23 19:13:28 +03:00
Nicolay Mitropolsky
f7031e65ba
Uast: don't throw exception if can't get a receiver parameter for annotation (KT-40494)
2020-07-23 10:33:44 +03:00
Alexander Udalov
d3a34a8898
Psi2Ir: somewhat simplify Psi2IrTranslator API
...
Inline some methods only used once, deduplicate usages, rearrange
parameters, etc.
2020-07-22 22:38:21 +02:00
Leonid Startsev
e3f42721e9
Mute/ignore 'PROVIDED_RUNTIME_TOO_LOW' in tests
2020-07-21 15:10:08 +03:00
Leonid Startsev
df5f38fec8
Implement reading kx.serialization runtime metadata from jar manifest
...
That allows to check whether current compiler plugin can work with
a given runtime version. Implementation-Version can help to detect whether
runtime version is too low, and Require-Kotlin-Version detects whether
runtime version is too high.
Corresponding diagnostic for Require-Kotlin included.
Implement minimal runtime version check for kotlinx.serialization
plugin.
#KT-40036 Fixed
Cache result from getVersionsForCurrentModule in BindingTrace.
Hide check in the IDE, because caching in trace does not work there.
2020-07-21 15:10:08 +03:00
Leonid Startsev
7db0bf8195
Add new serialization runtime packages
...
encoding and descriptors. Rename ContextSerializer to Contextual.
Unify getClassFrom*Package functions.
2020-07-21 15:02:06 +03:00
Dmitry Petrov
2e31f95554
Update testData
2020-07-20 20:04:32 +03:00
Georgy Bronnikov
c901e82a55
IR: add IrSimpleFunction.isInfix
2020-07-18 11:03:33 +03:00