Ilya Goncharov
bf8681296b
[Gradle, JS] IR by default and report warnings for using legacy compiler
...
- just legacy - report warning about deprecation
- both - report warning about deprecation of legacy
- no compiler explicitly chosen - error about explicit setting compiler
warn from cli legacy compiler
nowarn flag - kotlin.js.compiler.nowarn
KT-42326
KT-53074
2022-09-16 09:48:41 +00:00
Alexander Korepanov
639af77b91
[JS IR] Invalidate IC cache after modifying language settings
...
^KT-54010 Fixed
2022-09-16 07:19:20 +00:00
Alexander Korepanov
ef05a0d9ed
[JS IR] Disable JS IR IC infrastructure when WASM is enabled
2022-09-16 07:19:19 +00:00
Anže Sodja
09d6dfc8bf
[Assign plugin] Add a compiler plugin for overloading assign ('=') operator
2022-09-16 10:12:41 +03:00
Anže Sodja
6052962f50
Register AssignResolutionAltererExtension in KotlinCoreEnvironment
2022-09-16 10:12:41 +03:00
Alexander Udalov
0569f429dd
Report error on -Xuse-old-backend, remove Gradle option useOldBackend
...
Allow using old JVM backend only to compile kts.
#KT-48532 Fixed
2022-09-16 00:16:31 +02:00
Aleksei.Cherepanov
782dc55800
Make exception more user-friendly (2)
...
Add stacktrace and given error to error message
#KTIJ-21077 Fixed
Co-authored-by: Alexander Udalov <Alexander.Udalov@jetbrains.com >
Merge-request: KT-MR-7122
Merged-by: Aleksei Cherepanov <aleksei.cherepanov@jetbrains.com >
2022-09-15 13:33:11 +00:00
Aleksei.Cherepanov
0d1b748cd5
Make exception more user-friendly
...
Accompany registration of non-compatible compiler plugin with readable error
#KTIJ-21077 Fixed
2022-09-14 10:30:42 +00:00
Mikhail Glukhikh
036f9affd8
K2: link via signatures if -Xlink-via-signatures is set
...
Related to KT-53505
2022-09-14 10:15:22 +00:00
Alexander Udalov
7dad47cd76
Add -X argument to disable generation of @SourceDebugExtension
...
This will be used in tests in the subsequent commit.
2022-09-09 14:32:35 +02:00
Dmitry Gridin
aa31ca67e2
[lc] KotlinAsJavaSupportBase: make librariesTracker abstract
...
^KT-50241
2022-09-08 13:47:40 +00:00
Dmitry Gridin
ec1b6f4f3e
[lc] KotlinAsJavaSupportBase: reduce number of findModule calls
...
^KT-50241
2022-09-08 13:47:39 +00:00
Dmitry Gridin
e58b98bb5c
[lc] KotlinAsJavaSupportBase: implement getLightClassForScript
...
^KT-50241
2022-09-08 13:47:39 +00:00
Dmitry Gridin
46548e5443
[lc] KotlinAsJavaSupportBase: implement getLightClass
...
add more caching
^KT-50241
2022-09-08 13:47:38 +00:00
Pavel Mikhailovskii
6a14400342
KT-53804 Restore old and incorrect logic of generating InnerClasses attributes for kotlin-stdlib
2022-09-05 14:02:52 +00:00
Alexander Korepanov
453faeaa45
[JS IR] Memory consumption optimization
...
- Remove IR after JS AST generation
- Remove JS AST after/during JS code generation
2022-09-05 11:15:55 +00:00
Alexander Udalov
13ca189825
Support -Xjdk-release=8 as alias for -Xjdk-release=1.8
...
#KT-53278 Fixed
2022-09-01 12:15:47 +02:00
Alexander Udalov
a76de14026
Remove obsolete compiler argument -Xsingle-module
...
#KT-51622
2022-08-31 20:54:50 +02:00
Mikhael Bogdanov
bd6aff7f6a
Xjdk-release: avoid folder duplication
2022-08-29 12:26:27 +00:00
Dmitry Gridin
924dd38144
[lc] introduce KotlinAsJavaSupportBase with new common facade logic
...
^KT-53543
2022-08-29 11:51:42 +00:00
Alexander Udalov
690322b203
Add flag -Xno-new-java-annotation-targets
...
Do not generate TYPE_USE/TYPE_PARAMETER Java annotation targets when
this flag is specified.
#KT-53712 Fixed
2022-08-29 13:43:49 +02:00
Nikita Bobko
2a4f3f41aa
2/5 Replace source dependency on kotlin-reflect with binary dependency
...
Review: https://jetbrains.team/p/kt/reviews/6753
Meaningful semantic change was splitted into 5 commits to simplify the
change review. Sinle commit would be too big.
Why replace source to binary: to get rid of kotlin-reflect in Kotlin
plugin artifact KTIJ-22276
Note: Kotlin Maven artifacts (./gradlew publish) changed their
dependency on kotlin-reflect
2022-08-22 15:43:49 +02:00
Nikita Bobko
0874fb71c6
Replace all kotlin-reflect-api dependencies with kotlin-reflect
...
Review: https://jetbrains.team/p/kt/reviews/6753
Why: I'm going to replace source dependency on kotlin-reflect with
binary dependency. Normalize reflect dependency before global
processing.
2022-08-22 15:43:11 +02:00
Dmitriy Novozhilov
f843883985
[FE 1.0] Introduce AssignResolutionAltererExtension
...
This extension can be used to override resolution of assign statements
with custom logic
WARNING: there is no compatibility guarantees for this extension
2022-08-19 07:44:08 +00:00
Ivan Kylchik
3027ea9551
Add new jvm compilation key ignoreConstOptimizationErrors
...
This key suppose to be a workaround in keys if something goes
wrong in ir interpreter.
2022-08-18 16:50:06 +00:00
Alexander Udalov
45abea5b0a
Use platform class loader in 'kotlin' runner on JDK 9+
...
#KT-46312 Fixed
2022-08-17 22:23:10 +02:00
Andrey Uskov
339868305e
Fixed handling of special symbols in paths when reporting errors
...
#KT-53246 Fixed
2022-08-17 10:38:28 +04:00
Aleksei.Cherepanov
df017ea187
Clean JavaClassesTracker and LookupTracker on call RetryWithAdditionalRoots
...
#KT-38576 Fixed
2022-08-16 14:38:01 +00:00
Abduqodiri Qurbonzoda
983c7adb1e
Remove :libraries:tools:stdlib-compiler-classpath project
...
It was used as a workaround to allow jvmTarget=1.6 in stdlib.
2022-08-13 01:42:43 +03:00
Jiaxiang Chen
94abeb64c5
use top level classId for looking up java classes in KotlinCliJavaFileManagerImpl
2022-08-12 14:24:13 +02:00
Artem Kobzar
87038e7d8a
[K/JS] feat: add logic under the flag for strict implicit export generating inside d.ts files.
2022-08-09 16:48:59 +00:00
Igor Chevdar
030e3b306f
[K/N][build] Added -Xmake-per-file-cache compiler option
2022-08-06 17:40:24 +00:00
Igor Chevdar
7e79b2b500
[K/N][IR][codegen] Preliminary support of per-file caches
2022-08-06 17:40:23 +00:00
Aleksei.Cherepanov
92551b7685
Prevent overwriting output dir to empty string
...
#KTIJ-921 Fixed
Co-authored-by: Alexander Udalov <Alexander.Udalov@jetbrains.com >
Merge-request: KT-MR-6183
Merged-by: Aleksei Cherepanov <aleksei.cherepanov@jetbrains.com >
2022-08-03 14:46:32 +00:00
Victor Petukhov
9beb279964
[FE CLI] Remove -Xnew-inference in the compiler cli module settings
2022-08-02 10:29:40 +00:00
Mikhael Bogdanov
90f8f8e14e
Support inner classes in -Xjdk-release
...
#KT-52823 Fixed
2022-08-02 04:56:20 +00:00
Ivan Kochurkin
2f56b29b3f
[FIR] Extract FirSessionConfigurator and IncrementalCompilationContext to separated classes
...
With FirSessionFactory and FirJsSessionFactory
2022-07-25 23:30:09 +02:00
Sergey Bogolepov
cd54afea8f
[K/N] Add option to omit generation of binary when producing framework
...
`-Xomit-framework-binary` is useful when the user does not care about
generated machine code, but only about its public interface.
Current use-case is for development purposes only: to iterate faster
on ObjCExport. But potentially it can be turned into user-facing feature
2022-07-22 11:57:15 +00:00
Mikhail Glukhikh
9add6f3d55
K2: add more accurate & more automatic control of diagnostic suppression
...
#KT-51363 Fixed
2022-07-22 11:35:26 +00:00
Sergej Jaskiewicz
9bc057afb2
[JS IR] Generate the correct relative paths in source maps
2022-07-21 12:18:45 +00:00
Dmitriy Novozhilov
b2e558a174
[CLI] Make -Xcompiler-plugin experimental and K2 only
2022-07-20 09:07:27 +00:00
Dmitriy Novozhilov
928416c9c5
[CLI] Introduce new compiler arguments for registering compiler plugins
...
With new syntax each plugin should be registered in separate argument with syntax
`-Xcompiler-plugin=classpath1,classpath2[=argument1=value1,argument2=value2]`
2022-07-20 09:07:26 +00:00
Dmitry Gridin
0e17d9b452
[light classes] extract KotlinLightClassFactory to service
...
^KT-53097
2022-07-19 15:42:07 +00:00
Dmitry Gridin
e5519064f4
[light classes] move script creation logic to KotlinLightClassFactory
...
^KT-53097
2022-07-19 15:41:45 +00:00
Dmitry Gridin
dc552c9fe3
[light classes] move facade creation logic to KotlinLightClassFactory
...
^KT-53097
2022-07-19 15:41:44 +00:00
Dmitry Gridin
9510c4876c
[light classes] introduce KotlinLightClassFactory
...
^KT-53097
2022-07-19 15:41:43 +00:00
Dmitry Gridin
47fa444792
[light classes] move descriptors from KtLightClassForSourceDeclaration to KtLightClassImpl
...
^KT-53097
2022-07-19 15:41:36 +00:00
Yahor Berdnikau
93a0cdbf97
Improve warnings and errors emitted by compiler in Gradle build
...
Make warnings and errors location clickable by using file URI scheme.
In most terminals and code editors (including IDEA) clicking on such uri
will open file at given line and offset.
^KT-51923 Fixed
2022-07-19 09:30:36 +00:00
Yahor Berdnikau
603d043abc
Move Kotlin/Native compiler arguments into :compiler:cli:cli-common
...
This allows to reference them in the Gradle plugins without enabling
kotlin-native part of the repository
^KT-53108 In Progress
2022-07-14 10:57:28 +00:00
Denis.Zharkov
f7a2889a40
FastJarHandler: Add information for exceptions thrown during CD parsing
...
^KT-52786 Related
2022-07-12 14:45:37 +00:00