Dmitriy Novozhilov
f9eba6e842
[FIR] Fix determining dependencies for modular jdk in CLI
2021-05-25 15:08:47 +03:00
Dmitriy Novozhilov
a1ae108ce5
[FIR] Properly generate IDE diagnostics from multiple diagnostics lists
2021-05-21 14:18:58 +03:00
Ilya Goncharov
0921235637
[JS IR] Remove redundant file after rebase
2021-05-20 16:37:47 +03:00
Ilya Goncharov
18cb8a1b9b
[JS IR] Add flag with writing base class to metadata
2021-05-20 16:37:45 +03:00
Ilya Goncharov
228c6879f5
[JS IR] Add per-module output module name
2021-05-20 16:37:44 +03:00
Ilya Goncharov
4d7f7fc50f
[Gradle, JS] Use jsOutputName as module name
2021-05-20 16:37:43 +03:00
Ilya Goncharov
eaf25b517d
[JS IR] Use module name instead of output file wo extension
2021-05-20 16:37:41 +03:00
Ilya Goncharov
0e00186ca1
[JS IR] Fix compilation after rebase
2021-05-20 16:37:39 +03:00
Anton Bannykh
6e40c814c8
[JS IR] add a flag which prepends a custom prefix to the per-module .js files
2021-05-20 16:37:37 +03:00
Anton Bannykh
7bd9462ffb
[JS IR] save the desired JS output file name in the klib.
...
This is only usedful for code splitting. The output .js file name
is provided by the build system during the module compilation.
It is desirable to keep the .js output file names same as in old BE,
but calculating those name during the klib -> js phase is tricky.
Thus the desired names are saved in the klib, and used later on.
2021-05-20 16:37:35 +03:00
Anton Bannykh
6633a9edc0
[JS IR] add a flag which enable safe property access
...
If an accessor is not available at runtime we fall back
to the property access.
This is useful in cases when JS objects are casted to Kotlin
classes implicitly. This pattern did work in the old BE, which
lead to a significant amount of code which doesn't work anymore.
2021-05-20 16:37:34 +03:00
Dmitriy Novozhilov
ff3f3d2f9b
[FIR] Properly setup search scope for IC symbol provider
2021-05-20 14:21:49 +03:00
Dmitriy Novozhilov
6e4cc49f1d
[FIR] Cleanup IC provider creation in FirSessionFactory
2021-05-20 14:21:47 +03:00
Dmitriy Novozhilov
6d38a236c1
[FIR] Extract FIR related part of KotlinToJVMBytecodeCompiler to separate file
2021-05-20 14:21:46 +03:00
Dmitriy Novozhilov
99cdb86145
[FIR] Move createSessionWithDependencies to FirSessionFactory
2021-05-19 16:29:20 +03:00
Dmitriy Novozhilov
2ee54c2201
[FIR] Remove way to create FirSession using Module
...
The problem is that Module may not contain some default dependencies in
classpath roots, so it's incorrect to take them from it
2021-05-19 16:29:19 +03:00
Dmitriy Novozhilov
7d5fa2830d
[FIR] Properly create source search scope in FIR CLI compiler
2021-05-18 20:56:05 +03:00
Yahor Berdnikau
800e382ba9
Warn on using 'jdkHome' option in Gradle builds.
...
User should instead use KotlinJavaToolchain that will take care of
tracking major java version and provide nicer API.
Gradle will still pass jdkHome value to the compiler, but it should
be changed in Kotlin 1.6 release.
^KT-45611 Fixed
2021-05-17 16:57:01 +03:00
Dmitriy Novozhilov
02c58b7a8f
[FIR] Refactor deserialized dependency providers and session factories with FirModuleData
2021-05-14 14:30:33 +03:00
Ilya Goncharov
19393948d7
[Gradle, JS] irBuildCache means ir compiler enabled
2021-05-12 11:57:14 +03:00
Ilya Goncharov
b9fc97b44f
[Gradle, JS] Add arguments for building caches
2021-05-12 11:57:14 +03:00
Xin Wang
b9209962cd
CLI: Add documentation for -J argument in kotlinc -help
2021-05-11 19:50:24 +02:00
Jinseong Jeon
efba90c6f1
LC: rename KtLightClassForFacade to ...Impl
...
before introducing a common interface for light class for facade
This is a mechanical refactoring.
2021-05-05 14:11:48 +02:00
Victor Petukhov
909f0d8bdb
Implement caching module annotations per class id
2021-04-30 14:43:27 +03:00
Victor Petukhov
2e57ff25ee
Leave KotlinCliJavaFileManager::findClass only passing JavaClassFinder.Request
2021-04-30 14:43:27 +03:00
Victor Petukhov
bc5e92033b
Support reading annotations on java 9 module on sources and binaries
2021-04-30 14:43:27 +03:00
Victor Petukhov
71755b7a5e
Support java 9 modules in the diagnostic tests both in sources and binaries
2021-04-30 14:43:26 +03:00
Mikhael Bogdanov
dfc6d85aee
Enable runtime string concatenation by default (for -Xjvm-target=9 or greater)
...
#KT-42522 Fixed
2021-04-27 09:08:28 +02:00
Andrey Zinovyev
f71e08df4d
[lombok] Experimental lombok plugin prototype
...
Add extension point for java descriptors
Add simple usage of this point to generate getter method
Add simple test infrastructure to test compilation with lombok plugin
2021-04-25 18:17:53 +03:00
Simon Ogorodnik
c6fa363487
[FIR] Add warning if FIR is used
2021-04-23 19:49:46 +03:00
Simon Ogorodnik
539d3e5df2
Add full-pipeline modularized tests for old frontend
2021-04-15 13:36:00 +03:00
Dmitriy Novozhilov
1f62a2d8cc
[FIR] Add disposing of FirJavaElementFinder in FIR compiler entrypoint
2021-04-15 10:30:09 +03:00
Alexander Udalov
005aa57f6d
Remove obsolete module cli-js-klib
...
It's no longer used anywhere in the build.
2021-04-14 13:47:02 +02:00
Alexander Udalov
988d1365a8
Remove dependency of backend.wasm on ir.tree.impl and ir.tree.persistent
2021-04-14 13:47:02 +02:00
Alexander Udalov
643c3f26c1
Remove dependency of backend.js on ir.tree.impl
...
By taking the instance of IrFactory either from SymbolTable, or passing
it from cli-js which depends on both ir.tree.impl and
ir.tree.persistent, and can choose the appropriate implementation.
2021-04-14 13:47:02 +02:00
Dmitriy Novozhilov
803d47daaa
Distinguish classes from different sourcesets in SealedInheritorInSameModuleChecker
...
#KT-45848 Fixed
#KT-46031
2021-04-13 11:21:58 +03:00
Alexander Udalov
115e2673ae
Minor, fix javac deprecation warning in DynamicBundle
2021-04-12 14:38:09 +02:00
Alexander Likhachev
9e78e43c49
[Gradle] Always declare system property reads for compile tasks
...
When Kotlin plugin is applied in buildSrc or included build that defines Gradle plugins it can cause Gradle to report undeclared system property reads at configuration time. Declaring all system properties reads through Gradle providers to cover all these cases.
#KT-45910 Fixed
2021-04-12 03:15:10 +03:00
Alexander Likhachev
16dc0a7d29
[Gradle] Read more system properties through Gradle providers
...
Related to #KT-43605
2021-04-08 14:28:05 +03:00
Alexander Likhachev
c44d83c6ba
[Gradle] Move Kotlin daemon system properties read to build service
...
Instead of having a copy of those properties in each task move them into single build service
Related to #KT-43605
2021-04-08 14:28:00 +03:00
Abduqodiri Qurbonzoda
40d1849f33
Migrate compiler, idea and others to new case conversion api
2021-04-08 03:22:02 +03:00
Ilmir Usmanov
b5ecccb610
Enable suspend in fun interfaces by default
...
#KT-45836 Fixed
2021-04-01 20:26:42 +03:00
Vyacheslav Gerasimov
f2a892a972
Cleanup 201 and as41 bunch files
2021-03-30 14:23:43 +03:00
Alexander Udalov
6e86df2f6d
Workaround illegal access to JDK internals in DynamicBundle
...
This is basically a manual cherry-pick of
https://github.com/JetBrains/intellij-community/commit/547caebd980d .
#KT-44624 Fixed
2021-03-30 11:33:07 +02:00
Alexander Udalov
8e1a70cff6
Copy com.intellij.DynamicBundle to compiler/cli
...
This is needed to fix KT-44264 without updating the whole project to
intellij 203, which might take significant time.
In this commit, the file is copied as is from
https://github.com/JetBrains/intellij-community/blob/27837dd8e68a95cc4da0954f93321c98017b3d11/platform/core-api/src/com/intellij/DynamicBundle.java .
2021-03-30 11:33:07 +02:00
Ting-Yuan Huang
8e7b561b10
Add AnalysisHandlerExtension extension point for K2JsCompiler
...
AnalysisHandlerExtension allows compiler plugins to:
1. Intercept and override the default analysis.
2. Utilize the compiler infrastructure to do custom analysis.
A well know plugin on the JVM platform is KAPT.
2021-03-29 20:41:05 +03:00
Ting-Yuan Huang
4db79285c1
Add AnalysisHandlerExtension extension point for K2MetadataCompiler
...
AnalysisHandlerExtension allows compiler plugins to:
1. Intercept and override the default analysis.
2. Utilize the compiler infrastructure to do custom analysis.
A well know plugin on the JVM platform is KAPT.
2021-03-29 20:41:03 +03:00
Victor Petukhov
9c38db754e
Add compiler flag to enable strict mode for improvements in the type enhancement
...
^KT-45674 Fixed
2021-03-26 11:04:01 +03:00
Vladimir Dolzhenko
51393d2d0f
Fix compilation
2021-03-25 16:23:01 +01:00
Simon Ogorodnik
0aca68e7c7
FIR: Add init time measurement to full pipeline
2021-03-25 18:05:51 +03:00