Dmitriy Novozhilov
6712191538
[FIR] Update plugin prototype testdata
2021-10-12 17:26:41 +03:00
Dmitriy Novozhilov
9a802e7cd7
[FIR] Return symbols instead of FIR from FirPredicateBasedProvider
2021-10-12 17:26:40 +03:00
Dmitriy Novozhilov
1cfe4deda9
[FIR] Remove unused methods from FirPredicateBasedProvider
2021-10-12 17:26:40 +03:00
Dmitriy Novozhilov
6a14d91dbd
[FIR] Change predicate providing API for FIR extensions
...
Predicate declaration was split into two parts:
- registering any number of predicates which are used in specific extension
- special checks for declaration applicability for each specific extension
2021-10-12 17:26:39 +03:00
Dmitriy Novozhilov
20e35167c8
[FIR] Add simple IR body generator to FIR plugin prototype
2021-10-12 17:26:39 +03:00
Dmitriy Novozhilov
fc1f2e9c72
[FIR2IR] Run IrGenerationExtensions after fir2ir stage
2021-10-12 17:26:38 +03:00
Dmitriy Novozhilov
b3768a201f
[FIR2IR] Create special IrDeclarationOrigin for generated declarations
2021-10-12 17:26:37 +03:00
Dmitriy Novozhilov
233b9f1242
[FIR] Generate IR for generated FIR declarations
2021-10-12 17:26:37 +03:00
Dmitriy Novozhilov
e3579389ee
[FIR] Create IR text tests for declarations generators
2021-10-12 17:26:36 +03:00
Dmitriy Novozhilov
b454fcc1e0
[FIR] Save IR dumps to .ir.txt files instead of .txt in tests
...
This is needed to avoid clashes between different dumps from different
handlers
2021-10-12 17:26:36 +03:00
Dmitriy Novozhilov
0f076e16ed
[FIR] Update plugin testdata
2021-10-12 17:26:35 +03:00
Dmitriy Novozhilov
c60ba51f8f
[FIR] Include generated declarations into FIR dump in tests
...
Also include non root package directive of FirFile to dump
2021-10-12 17:26:34 +03:00
Dmitriy Novozhilov
ea93d23dca
[FIR] Move fir plugin tests to diagnostics sub directory
2021-10-12 17:26:34 +03:00
Dmitriy Novozhilov
79f1779d89
[FIR] Add methods to collect all class and callable ids from extensions
...
They will be needed for generating IR for all declarations from plugins
2021-10-12 17:26:33 +03:00
Dmitriy Novozhilov
9baf10cfcc
[Build] Remove forgotten comment from build config
2021-10-12 17:26:33 +03:00
Dmitriy Novozhilov
38877ba842
[FIR] Implement extension for providing additional type attributes
2021-10-12 17:26:32 +03:00
Dmitriy Novozhilov
32709151c3
[FIR] Move base FirExtension infrastructure to :fir:tree module
...
This is needed for type attribute extension which is used not only
from :resolve module but also from :(de)serialization modules
2021-10-12 17:26:32 +03:00
Dmitriy Novozhilov
e26cd74b16
[FIR] Fix applying generated supertypes for classes without explicit supertypes
2021-10-12 17:26:31 +03:00
Dmitriy Novozhilov
26fa772846
[FIR] Add ability to generate members and nested classifiers for existing classes
2021-10-12 17:26:30 +03:00
Dmitriy Novozhilov
9bfa6c54b8
[FIR] Inherit FirContainingNamesAwareScope from FirScope
...
This is needed to simplify FirScope hierarchy, because in
fact all inheritors of `FirContainingNamesAwareScope` were
inheritors of `FirScope` too
2021-10-12 17:26:29 +03:00
Dmitriy Novozhilov
f3a9d70eb6
[FIR] Add ability to generate members and nested classifiers for generated classes
2021-10-12 17:26:29 +03:00
Dmitriy Novozhilov
270962e176
[FIR] Make KotlinScopeProvider a session component
2021-10-12 17:26:27 +03:00
Dmitriy Novozhilov
4f764c28cb
[FIR] Use proper caches in FirDeclaredMemberScopeProvider
2021-10-12 17:26:27 +03:00
Dmitriy Novozhilov
15abd839ed
[FIR] Rewrite algorithm of generating declarations by plugins
...
Before there was separate global stage which asks extensions
to generate new declarations. Now it is changed to provider
like requests, so extensions will decide do they have declarations
with specific classId/callableId or not
2021-10-12 17:26:26 +03:00
Dmitriy Novozhilov
760943f0e1
[FE] Make setter of CallableId.classId private
...
Fact that `classId` is `var` is detail of implementation,
so there is no reason to expose its setter to public API
2021-10-12 17:26:24 +03:00
Dmitriy Novozhilov
e87f7c5cb4
[FIR] Update dummy checker in allopen plugin
2021-10-12 17:26:24 +03:00
Dmitriy Novozhilov
84dab9230e
[FIR] Adapt AllOpenVisibilityTransformer to work with unresolved annotation arguments
2021-10-12 17:26:23 +03:00
Dmitriy Novozhilov
e011ca183d
[FIR] Fix FirPluginAnnotationsResolveTransformer after recent compiler changes
2021-10-12 17:26:22 +03:00
Dmitriy Novozhilov
3da2fbf02d
[FIR] Add FIR plugin tests to list of all testData directories
2021-10-12 17:26:22 +03:00
Dmitriy Novozhilov
91624dd841
[FIR] Move call of status transform extensions to FirStatusResolver
...
It makes more sense to run status transformer extension
right in status resolve stage, because it reduces
number of compiler stages
2021-10-12 17:26:21 +03:00
Dmitriy Novozhilov
6d42914e56
[FIR] Migrate fir plugin prototype tests to new test infrastructure
2021-10-12 17:26:18 +03:00
Dmitriy Novozhilov
e56c87a17a
[Build] Move utils for generation JUnit 5 tests to :generators module
2021-10-12 17:26:18 +03:00
Dmitriy Novozhilov
48aa063b21
[FIR] Cleanup utils for creating FirTotalResolveProcessor
2021-10-12 17:26:16 +03:00
Sergej Jaskiewicz
1f0b691ab6
[JS] Fix some JS prettyprinting
...
- Print a newline after `default` case in `switch`es
- Print a newline after `if` blocks without corresponding `else` blocks
2021-10-12 13:38:56 +00:00
Mikhail Glukhikh
7243d30869
Split property use-site targets during FIR building
2021-10-12 16:22:58 +03:00
Mikhail Glukhikh
2a9a1dbb86
FIR: allow diagnostic collection on default property accessors
2021-10-12 16:22:56 +03:00
Mikhail Glukhikh
39fe457f91
Add test reproducing KT-49087 and KT-49069
2021-10-12 16:22:54 +03:00
Ilmir Usmanov
d0a70e5cc0
Minor. Use safe cast in isStaticInlineClassReplacementDelegatingCall
2021-10-12 15:09:07 +02:00
pyos
226306ac83
IR: check whether local declarations need to throw after Nothing return
...
^KT-48982 Fixed
2021-10-12 15:09:05 +02:00
Dmitry Petrov
a213dad9ab
JVM_IR add more tests for specialized generics and reification
2021-10-12 15:56:38 +03:00
Dmitry Petrov
0098103376
JVM_IR minor: update test
2021-10-12 15:56:36 +03:00
Dmitry Petrov
b184c72e3d
JVM_IR make proxy funs synthetic, fix some typos
2021-10-12 15:56:35 +03:00
Dmitry Petrov
e0c2a2efd7
JVM_IR Minor: remove outdated TODO
2021-10-12 15:56:34 +03:00
Dmitry Petrov
005d3b1f6f
JVM_IR pass reified type parameters in indy SAM conversion proxy
2021-10-12 15:56:33 +03:00
Dmitry Petrov
40fe67880b
JVM_IR wrap function into a proxy if indy SAM-conversion becomes valid
2021-10-12 15:56:31 +03:00
Elena Lepilkina
9ad62eb1fd
[K/N][perf] Added more buildSrc files in excluding list in performance infrastructure
2021-10-12 11:35:00 +00:00
Alexander Likhachev
8c8b311d9f
[Gradle, JS] Detect classpath changes in KotlinJsDce
...
Now -Xdev-mode-overwriting-strategy=older compiler argument is handled on Gradle side to detect incremental changes to increase performance
#KT-35640 Fixed
2021-10-12 09:31:09 +00:00
Alexander Likhachev
5db4ec15d2
[Gradle, JS] Add test for KT-35640
2021-10-12 09:31:09 +00:00
Alexander Likhachev
a0e6fb03f0
[Gradle] Do not register compilation outputs in clean task
...
Calculations of compilation outputs implicitly requires compile task configuration to execute `clean` task. This implicit configuration works unstable in parallel builds. We probably fine with the fact that outputs that are configured to be outside of build directory will not be cleaned by `clean` task
#KT-48046 Fixed
2021-10-12 09:29:57 +00:00
Dmitriy Novozhilov
f0aba5e892
[Test] Update parcelize bytecode testdata
2021-10-12 10:30:13 +03:00