Georgy Bronnikov
ffe1615e9c
Fir: simplify IrBuiltInsOverFir
2022-05-19 12:02:42 +02:00
Georgy Bronnikov
e0c175bb50
Fir2Ir: remove symbolTable as separate component from FirResult
...
It's already in components.
2022-05-19 12:02:41 +02:00
Georgy Bronnikov
3f66b31a47
Fir2Ir: add irProviders to Fir2IrComponents
...
Removes the last use of DeclarationStubGenerator in the FIR pipeline.
2022-05-19 12:02:41 +02:00
Georgy Bronnikov
13d4d60afa
Fir2Ir: pass Fir2IrExtensions to backend
2022-05-19 12:02:41 +02:00
Georgy Bronnikov
3c3c1be543
Fir2Ir: introduce Fir2IrExtensions
...
This allows us to remove DeclarationStubGenerator from Fir2IrConverter,
thus reducing dependency on descriptor-based code.
2022-05-19 12:02:41 +02:00
Aleksei.Cherepanov
3d8f140d6b
[JPS] Fix incremental build after changing Java enum used in Kotlin when
...
EnumWhenTracker implemented for tracking changed java enum class items, that used in kotlin when expression.
#KT-47824 Fixed
2022-04-19 18:39:41 +00:00
Dmitry Gridin
e737015d5f
[jps][tests] remove hardcoded dist path
...
^KTIJ-20456
2022-04-15 22:00:19 +07:00
Dmitry Gridin
57b9648041
make jps-plugin testable from IJ infrastructure
...
^KTIJ-20456
2022-04-14 11:17:47 +07:00
Denis.Zharkov
55159eba45
FIR: Do not verify descriptors consistency for FIR-based IR functions
2022-04-06 16:05:40 +00:00
Alexander Korepanov
9952d43252
[JS IR] IC improvements
...
- Reuse a built fragment
- Use cache for saving built JS code
2022-04-04 17:42:04 +00:00
Ilya Chernikov
03cbfea737
FIR LT: Introduce source file abstraction, carry it from parsing to IR
...
along with source lines mapping, allows to "emulate" usage of the
PSI files which allows to extract source file and line mapping info
on every stage from source element.
It makes sense to use this mapping for the error reporting too.
2022-03-30 08:34:30 +00:00
Ilya Chernikov
25e9de286d
Test infra: adapt blackbox test runner to work with non-psi sources
2022-03-30 08:34:06 +00:00
Ilya Chernikov
2044754628
Backend: remove psi files from generation state
...
pass them explicitly to all destinations. This is a step in attempt to
abstract dependencies on PSI in the GenerationState and related places.
2022-03-30 08:33:59 +00:00
Ilya Chernikov
da41fddabb
Backend: remove codegen factory from generation state
...
use it explicitly. This is a step in attempt to abstract dependencies
on PSI in the GenerationState and related places.
2022-03-30 08:33:51 +00:00
Ilya Chernikov
275135a1b2
FIR: extend cli pipeline with incremental compilation logic
...
use it in the IncrementalCompilationRunner
2022-03-30 08:31:10 +00:00
Ilya Chernikov
12d49c2cd8
FIR: new cli pipeline with LightTree support
2022-03-30 08:29:47 +00:00
Dmitriy Novozhilov
44bfb6fde8
[FIR] Don't register FirJavaElementFinder for common session
2022-02-18 17:44:40 +03:00
Alexander Udalov
ebb9659e03
Add mode to run kapt with JVM IR, use in tests
...
Currently JVM IR is not supported in kapt, so almost all tests are
failing, and thus are muted with IGNORE_BACKEND.
#KT-49682
2022-02-08 20:15:13 +01:00
Dmitriy Novozhilov
b980f5ab32
[FIR] Introduce new kind of integer literal types for constant operator calls
2022-02-07 13:36:35 +03:00
Dmitriy Novozhilov
0bd3e8f418
[FIR] Rename ConeClassErrorType to ConeErrorType, drop ConeKotlinErrorType alias
2022-02-07 13:36:33 +03:00
Dmitriy Novozhilov
938baa5cfe
[FIR] Support reading optIn annotations from module dump in MT and FP tests
2022-01-28 16:12:13 +03:00
Ilya Kirillov
40fdb26569
Analysis LC: introduce Symbol LC tests
2021-12-27 16:23:18 +03:00
sebastian.sellmair
3598ba1d45
[MPP][Test] Implement Diagnostics with mpp composite analysis tests
...
Using the 'MULTIPLATFORM_COMPOSITE_ANALYSIS_MODE' test directive
will add support for testing "cli metadata compilation" and
"ide analysis" _like_ configurations. In this configuration,
dependsOn modules will not be analyzed together with dependents in
the same ModuleDescriptor, but will be passed as separate 'expectedBy'
dependency descriptor.
Used to cover ^KT-50120 inside kotlin.git
2021-12-21 21:31:42 +00:00
Roman Artemev
2ace13a904
[JS IC TEST] Support deleted files list in module step
2021-12-21 18:07:56 +03:00
Vyacheslav Gerasimov
f7a9065b75
Build: Use intellij maven repo instead of downloaded IDEA
...
#KTI-82
2021-12-16 21:48:23 +03:00
Vyacheslav Gerasimov
bc2f0936bd
Build: Rename commonDep -> commonDependency
2021-12-16 21:48:19 +03:00
Simon Ogorodnik
196be93d42
FIR: Add separate type constructor to stub types
2021-12-15 22:22:54 +03:00
Roman Artemev
5ba6ca4c16
[TEST] Support module step directives in TestModel parser
2021-12-13 20:57:51 +03:00
Roman Artemev
4ef316a590
[TEST] Move info file names into common place
2021-12-08 20:18:13 +03:00
Roman Artemev
327b529e08
[TEST] Move TestModel parser into common test part
...
- fix dependent invalidation test runner
2021-12-08 20:18:10 +03:00
Anastasiya Shadrina
3f50b675b1
[Tests] Add irText tests
2021-12-02 20:24:25 +03:00
Steven Schäfer
05695761ec
jvm-abi-gen: Add test to check the declaration order in interface jars
2021-12-01 19:20:47 +01:00
Dmitriy Novozhilov
ce218b8a0b
[FIR] Make FirExtensionRegistrar a proper extension point
...
After that commit it's allowed to register any FIR plugin using
existing extension infrastructure (`-Xplugin` CLI argument,
plugin.xml for IDE plugins, etc)
2021-11-30 12:57:50 +03:00
Dmitriy Novozhilov
f26059a7d3
[FE] Add clear warning about future changes about nullability of safe call with non nullable receiver
...
^KT-46860
2021-10-27 16:28:37 +03:00
Yan Zhulanow
516dd825c2
[FIR IDE] Initial descriptor-based implementation of the Analysis API
2021-10-20 19:41:24 +03:00
Aleksei.Cherepanov
276fb77155
Fix incremental build after changing Java const used as class property
...
Report Java static final constant with InlineConstantTracker, used as class property in Kotlin for further registration in JPS
#KT-49177 Fixed
2021-10-20 15:06:19 +03:00
Dmitriy Novozhilov
fc1f2e9c72
[FIR2IR] Run IrGenerationExtensions after fir2ir stage
2021-10-12 17:26:38 +03:00
Georgy Bronnikov
4caa71538d
JVM_IR: introduce modes for IR serialization
...
Instead of a Boolean flag -Xserialize-ir, use modes: none,inline,all.
In "inline" mode, only information needed to deserialize bodies of inline
functions is serialized.
In the "all" mode, all declarations are serialized completely.
2021-10-11 11:53:29 +03:00
Dmitry Petrov
146f0f4904
JVM_IR KT-41214 emit PermittedSubclasses on JDK17+
2021-10-09 17:07:35 +03:00
Dmitriy Novozhilov
e933c7b6d9
[Build] Remove testApi(intellijDep()) dependencies from all modules
...
Since IDEA moved most of it's jars to java 11 it's illegal to use them
in our dependencies, so all modules which use `intellijDep()` should
carefully specify which jars they use
2021-09-30 14:41:31 +03:00
Dmitriy Novozhilov
de7fb9606a
Migrate all JDK 9 related tests to JDK 11
2021-09-28 13:01:47 +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
Alexander Udalov
5df316a129
Minor, rename module backend.jvm:backend.jvm.entrypoint -> backend.jvm.entrypoint
2021-09-14 22:29:13 +02:00
Alexander Udalov
eee8b033a6
JVM IR: minimize usages of jvmPhases outside backend.jvm
2021-09-14 22:29:12 +02:00
Alexander Udalov
1864716c83
Remove -Xnormalize-constructor-calls
...
Constructor call normalization is enabled by default since 1.3.
2021-09-02 22:11:22 +02:00
Ilya Chernikov
caa44e413d
Abstract FIR cli pipeline from core environment and related entities
2021-08-23 16:50:40 +03:00
Alexander Udalov
104188c035
Render annotation arguments in bytecodeListing tests
2021-07-26 14:33:30 +02:00
Ilya Chernikov
01f26ec699
FIR: Switch to FIR-based IrBuiltIns in FIR compilation
...
get rid of using old FE for builtins on FIR compilation
2021-07-16 02:24:28 +03:00
Georgy Bronnikov
20b76d4149
JVM_IR: reorganize initialization of JvmGeneratorExtensionsImpl
...
CachedFields are now created at initialization.
Therefore we need CompilerConfiguration as a constructor parameter.
2021-07-14 21:20:30 +03:00
Nikita Bobko
bf6718e0a5
Fix compilation in kotlin-ide
2021-07-14 17:17:19 +02:00