Alexander Udalov
382a0bd298
JVM IR: clear BindingContext after psi2ir
...
This helps to reduce peak memory in lowerings/codegen by a lot.
A more robust approach would be to have a separate BindingContext for
each file, and clear each of them after running psi2ir on it. This would
also lower peak memory usage in psi2ir.
Provide a fallback workaround compiler argument
-Xir-do-not-clear-binding-context just in case BindingContext is in fact
used somewhere and it's not caught by tests.
2020-10-26 10:34:43 +01:00
Alexander Udalov
48cd86b717
Add JVM target bytecode version 15
...
#KT-41916 Fixed
2020-10-19 14:47:21 +02:00
Victor Petukhov
9f716ba37c
Jspecify: Rename DefaultNotNull to DefaultNonNull
2020-10-08 14:00:10 +03:00
Victor Petukhov
2685c7efce
Jspecify: Rename codeanalysis annotations to jspecify ones
2020-10-08 14:00:10 +03:00
Denis Zharkov
f3a490ee16
Support compiler flag -Xcodeanalysis-annotations
2020-10-08 14:00:09 +03:00
Mikhael Bogdanov
d2c4be18a0
Rename runtime-string-concat option into 'string-concat'
2020-10-06 07:14:39 +02:00
Mikhael Bogdanov
c329c22630
Add runtime string concat options. Some renaming
2020-10-02 11:47:27 +02:00
Pavel Kirpichenkov
1465e10f12
Add language feature for inference compatibility mode
...
The feature is intended for updates in the inference algorithm
that change behaviour compared to the previous stable version.
2020-09-22 15:06:12 +03:00
Igor Yakovlev
c70383cc70
[ULC] Add compiler flag -Xdisable-ultra-light-classes to fallback to light implementation in CLI
2020-09-11 12:49:04 +03:00
Alexander Udalov
e7937db8fa
Add link to the online docs to kotlinc's help
...
#KT-35111 Fixed
2020-09-02 16:45:56 +02:00
Roman Artemev
0bff406a12
[JS IR] Add infra to test compilation with error
...
- add bunch of tests
- fix help test
2020-09-01 14:53:08 +03:00
Alexander Udalov
5e48be3d11
Add a fallback flag -Xno-unified-null-checks for KT-22275
...
#KT-41482 Fixed
2020-08-31 12:43:28 +02:00
vldf
6a15e0410f
[FIR] Fix CLI tests to prevent non-relevant errors from appearing
2020-08-27 16:07:04 +03:00
Nick
aeae898b94
[FIR] Fix issues with properties' fake sources
2020-08-24 11:06:45 +03:00
Nick
c8f8908a01
[FIR] Add NO_THIS & INSTANCE_ACCESS_BEFORE_SUPER_CALL
2020-08-24 11:06:10 +03:00
Nick
7e1c2cfd36
[FIR] Add diagnostic INAPPLICABLE_LATEINIT_MODIFIER + some builtin types
2020-08-24 11:06:06 +03:00
Nick
091e12c093
[FIR] Add diagnostic CONFLICTING_PROJECTION
2020-08-24 11:06:04 +03:00
vldf
a26eeb6ee8
[FIR] Add CLI flag for running extended checkers
2020-08-18 21:53:07 +03:00
Dmitriy Novozhilov
0e53d11dd4
Disable AllowResultInReturnType feature
...
#KT-40843
2020-08-10 17:57:53 +03:00
Mikhail Zarechenskiy
0c13a7f89a
Fix accessibility check for experimental declarations from default scope
...
#KT-40919 Fixed
2020-08-07 17:49:15 +03:00
Nick
6c0abe7e48
[FIR] Fix CliTestGenerated$Jvm.testFirError
2020-08-07 13:27:29 +03:00
Mikhail Glukhikh
e841b3a77b
[FIR] Add diagnostic collection to KotlinToJVMBytecodeCompiler
2020-08-04 22:27:18 +03:00
Mikhail Glukhikh
9c3b8484b9
[FIR TEST] Add CLI test with should-be-error (not yet)
2020-08-04 22:27:18 +03:00
Mikhail Zarechenskiy
0c8b847ae6
Introduce compiler key to disable compatibility resolution mechanism
...
Enable it if one was using new inferene before 1.4
#KT-40128 Fixed
#KT-40112 Fixed
#KT-40113 Fixed
2020-07-10 14:23:45 +03:00
Mikhail Bogdanov
b5b5c8aebc
Check target for -Xjvm-default modes
...
#KT-39925 Fixed
2020-06-30 19:47:06 +02:00
Alexander Gorshenev
41a472693a
Updated extraHelp test data for the new flags
2020-06-29 21:58:32 +03:00
Ilmir Usmanov
f127a0f593
Add flag to disable new spilled variable type analysis
2020-06-29 20:50:43 +02:00
Anton Bannykh
da79f93c61
JS IR: per-module .js generation support
2020-06-26 17:55:33 +03:00
simon.ogorodnik
cd9273028b
Profiling and repeat support for JVM CLI Compiler
2020-06-08 20:40:27 +03:00
Alexander Udalov
a0400f59c2
Add -Xskip-prerelease-check compiler argument
...
#KT-38070 Fixed
2020-05-07 13:24:26 +02:00
Mikhail Bogdanov
4f7599076c
Postpone JvmDefault deprecation. Revert "Deprecate @JvmDefault"
...
This reverts commit c11f3868
2020-05-04 10:02:16 +02:00
Alexander Udalov
94346e8a03
Add JVM target bytecode version 14
...
#KT-38413 Fixed
2020-04-28 13:00:23 +02:00
Ilya Matveev
e4f4b4eef0
[JS IR] Support setting custom module name (= unique name)
...
Required for #KT-36721.
2020-04-22 10:50:26 +07:00
Dmitry Petrov
ac5411c32e
Command-line option disabling KotlinNothingValueException generation
2020-04-16 19:38:30 +03:00
Mikhail Bogdanov
6e1af0caee
Minor. Update test data
2020-04-09 07:49:30 +02:00
Mikhail Bogdanov
0ddef7e4e4
Add new options for '-Xjvm-default'
2020-04-09 07:37:33 +02:00
Alexander Gorshenev
97be5617ca
Renamed -Xklib-mpp to -Xexpect-actual-linker to reduce user confusion
2020-04-08 05:23:12 +03:00
Mikhail Zarechenskiy
73e1ddc505
Allow Result as a return type if one enabled inline classes explicitly
...
#KT-38042 Fixed
2020-04-08 01:25:13 +03:00
Alexander Udalov
a9f7ff254b
Add -Xno-optimized-callable-references to disable KT-27362 optimization
...
This argument is useful in situations where the stdlib version which the
code compiles against is different from the one which is available at
runtime, such as the case of kotlin-gradle-plugin, which depends on the
compiler/stdlib compiled by 1.4, but may be executed in Gradle where
only 1.3.x is available.
#KT-37435
2020-03-13 10:07:22 +01:00
Zalim Bashorov
2a7e32d3ae
[JS IR DCE] Add CLI option to print reachability info
2020-03-11 12:54:39 +03:00
Mikhail Zarechenskiy
d1a8f57740
Disable New Inference in JS backend
...
See #KT-37163 for details
2020-03-02 18:03:41 +03:00
Zalim Bashorov
6f61ea7f67
[JS DCE] Add an ability to define overwriting strategy when copying dependencies in dev-mode
...
* CLI option "-Xdev-mode-overwriting-strategy"
* System Property "kotlin.js.dce.devmode.overwriting.strategy"
Possible values: "older", "all".
#KT-36349 Fixed
2020-02-20 19:10:29 +03:00
Mikhail Zarechenskiy
cd0012c527
[NI-MIGRATE] Update CLI tests
2020-02-13 11:15:59 +03:00
Alexander Udalov
d5987fd7f3
Minor, move wrongAnnotationArgumentInCtor.kt to CLI tests
...
The fact that this was a codegen box test was probably an abuse of the
testing infrastructure. It was never meant to pass, since it checks
presence of an error, and diagnostic tests aren't enough since they
might not check the full compiler execution.
2020-02-12 17:36:08 +01:00
Alexander Udalov
dc7b1fbff9
JVM IR: report warning instead of error for language/API version 1.2
...
This is needed for testing JVM IR on existing projects which for some
reason are still on Kotlin 1.2.
2020-02-10 17:32:18 +01:00
Pavel Kirpichenkov
fee72839bf
Report error if IR is enabled with incorrect language version
...
^KT-36338 Fixed
2020-02-07 16:10:03 +03:00
Anton Bannykh
1e96c3d21e
DCE-driven mode
...
:js:js.tests:jsIrTest works same as before
:js:js.tests:jsPirTest runs tests in DCE-driven mode
2020-02-06 21:03:41 +03:00
Dmitry Petrov
8ef79f932c
JVM_IR: Implement some BE diagnostics
...
TODO proper diagnostics tests with BE diagnostics
2020-02-04 00:04:22 +03:00
Pavel Kirpichenkov
9902643a26
Remove unsupported versions from kotlin compiler tab in settings
...
KT-36146 In progress
2020-01-29 21:40:50 +03:00
Pavel Kirpichenkov
913ed71863
Update error about unsupported language and API versions
...
Set first supported version to 1.3
Add property for oldest depecated language version in order to control unsupported ones
Report error on attempts to manually disable language feature from unsupported versions
Update test data, drop compatibility tests for features from unsupported versions
KT-36146 In progress
2020-01-29 21:40:44 +03:00