Victor Petukhov
e25b315319
Introduce -Xpolymorphic-signature compiler flag as more priority than -XXLanguage:+PolymorphicSignature
2019-07-26 09:01:25 +03:00
Victor Petukhov
944ee8fcd5
Introduce -Xinline-classes compiler flag as more priority than -XXLanguage:+InlineClasses
2019-07-26 09:01:25 +03:00
Svyatoslav Kuzmich
cd651be461
[JS IR BE] Migrate JS BE to common klib utils
2019-06-05 11:15:45 +03:00
Mikhail Glukhikh
f4fdc66a34
Introduce experimental FIR compiler #KT-31265 Fixed
...
This commit also includes several FIR2IR fixes which helps FIR compiler
to produce normal results
2019-05-23 14:02:06 +03:00
Svyatoslav Kuzmich
b07690fccf
Phaser: Implement dumper and verifier as general actions
2019-05-14 16:23:43 +03:00
Alexander Udalov
cb6fb78bc3
JS: do not use "-no-stdlib" in non-relevant tests
...
Rename some Ant tests: "simple[...]" -> "simpleWithoutStdlib[...]" and
"simpleWithStdlib[...]" -> "simple[...]"
2019-04-25 14:42:43 +02:00
Svyatoslav Kuzmich
bb3b9a935f
Command line interface
2019-04-23 23:19:12 +03:00
Alexander Udalov
822b210e85
Minor, update argfile usage description
2019-04-19 12:55:23 +03:00
Alexander Udalov
4cb5a4fb6d
Fix misc typos in IR backends
2019-03-28 14:26:09 +01:00
Georgy Bronnikov
fae003866b
Use CLI compiler arguments directly in PhaseConfig creation
2019-03-21 23:32:25 +03:00
Georgy Bronnikov
c618ef9304
Correct phase argument names and cli test outputs
2019-02-28 11:53:02 +03:00
Marcin Moskala
686cfa6fd2
Fix common misspellings
2018-12-21 16:13:42 +03:00
Georgy Bronnikov
ffa3d7c57a
Update test data
2018-11-29 12:48:52 +03:00
Mikhail Glukhikh
cb92009862
Fix maven build + ~50 compiler tests broken by UNUSED_PARAMETER in main
2018-10-26 19:51:20 +03:00
Mikhail Zarechenskiy
169599abcc
Add flag to allow using kotlin.Result as a return type
...
#KT-26659 Fixed
2018-09-11 10:39:11 +03:00
Alexander Udalov
c4be039cd1
Support argfiles in CLI with "@argfile"
...
#KT-24613 Fixed
2018-09-10 14:12:32 +03:00
Alexander Udalov
9311ea5d25
Support progressive mode via "-progressive"
...
#KT-25862 Fixed
2018-09-10 14:12:31 +03:00
Alexander Udalov
02a9b03007
Report a warning or error if an old language version or API version is used
...
#KT-25823 Fixed
2018-08-30 14:57:31 +03:00
Alexander Udalov
0f003802fe
Introduce -Xcommon-sources and pass it correctly from build tool plugins
...
#KT-25196 In Progress
2018-08-21 12:49:10 +02:00
Alexander Udalov
19feacb96b
Minor, expand TESTDATA_DIR with absolute path in CLI tests
...
To be able to use it correctly inside an xml build file where, if the
path is not absolute, it's treated as relative to the build file path
(which is TMP_DIR in several tests of the subsequent commit)
2018-08-07 13:38:30 +02:00
Alexander Udalov
871b896a21
Add internal compiler argument to change metadata version
...
Will be used in tests to check how we behave on binaries produced by a
"future" compiler
2018-07-18 17:59:37 +02:00
Alexander Udalov
0c45f20515
Minor, fix several CLI argument descriptions
2018-06-27 13:25:30 +02:00
Dmitry Savvinov
e8181c0473
Introduce -Xprogressive
2018-05-18 16:16:23 +03:00
Dmitry Savvinov
97d455729b
Add -Xdump-perf
2018-05-04 15:00:43 +03:00
Dmitry Savvinov
9996a1bc7e
Rewrite performance statistics collection
...
This commit introduces notion of 'PerformanceManager' in CLI, suitable
for collecting performance metrics of the compiler. It:
- provides `notifyX{Started/Finished}` API, where 'X' is some
measurable event (previously there were just ad hoc manual time
measurements using System.nanoTime() and stuff)
- collects measurements, so that later they can be reported in an
appropriate way (previously measurements were reported immediately to
MessageCollector as plain strings)
- allows overriding to collect metrics, specific for just one target
platform compilation
Also, common logic of compiler performance statistics collection was
extracted from platform-compilers (K2JVMCompiler) to common classes
(CLICompiler), to allow other platform-compilers (e.g. K2JSCompiler)
re-use it.
2018-05-04 15:00:43 +03:00
Dmitry Savvinov
c3745c9040
Drop -Xrepeat flag
...
This flag hadn't been maintained for a long time and isn't working
properly at the moment.
2018-05-04 15:00:43 +03:00
Anton Bannykh
703611a15c
Revert "JS: remove -XtypedArraysEnabled flag (always true now)"
...
This reverts commit 4a5e9bb
2018-04-10 20:45:07 +03:00
Roman Artemev
3bc323807f
Fix function lookup in modules with similar names [KT-23582]
2018-04-10 15:58:30 +03:00
Roman Artemev
4cdd121c21
Add test for issue KT-23582
2018-04-10 15:58:30 +03:00
Anton Bannykh
4a5e9bbc7f
JS: remove -XtypedArraysEnabled flag (always true now)
2018-03-01 14:26:13 +03:00
Anton Bannykh
ed80252ba8
JS: fix double compareTo behaviour for NaN and +-0 (KT-22723)
2018-02-28 15:01:58 +03:00
Alexander Udalov
77625831f7
Support -Xexperimental and -Xuse-experimental, validate their values
...
#KT-22759 In Progress
2018-02-08 17:07:22 +01:00
Dmitry Savvinov
b29a6e48fb
Refactor language features, which control effect system
...
- Introduce new language feature 'ReadDeserializedContracts', which
allows to deserialize contracts from metadata.
- Introduce new language feature 'AllowContractsForCustomFunctions',
which allows reading contracts from sources.
- Use new features instead of combination 'CallsInPlaceEffect ||
ReturnsEffect'
- Rename 'CallsInPlaceEffect' -> 'UseCallsInPlaceEffect',
'ReturnsEffect' -> 'UseReturnsEffect'. As names suggest, they control
if it is allowed to use corresponding effect in analysis.
We have to introduce separate 'ReadDeserializedContracts' to enable
contracts only in some modules of the project, because libraries are
read with project-wide settings (see KT-20692).
2018-01-26 11:30:44 +03:00
Alexey Andreev
8514a7706f
Remove json.org library, use own JSON parser to parse source maps
2017-11-29 20:08:29 +03:00
Dmitry Savvinov
440b6d9934
Add -Xeffect-system CLI argument which enables Effect System
2017-11-23 12:35:51 +03:00
Mikhail Glukhikh
078c27efa3
Add fallback flag for legacy var smart casts after try #KT-21377 Fixed
2017-11-22 18:31:04 +03:00
Mikhail Zarechenskiy
0b484771dd
Add compiler key to enable new inference
2017-11-13 16:24:34 +03:00
Alexey Andreev
e0eea15a4c
Fix JS tests failing on Windows
2017-10-23 17:19:51 +03:00
Sergey Igushkin
9d62bb3561
(minor) Reorder args help in test data after the property was renamed
2017-10-13 14:02:42 +03:00
Alexander Udalov
5cbcbe4a9c
Support -Werror CLI argument to treat warnings as errors
...
The option is named "warningsAsErrors" in the Gradle plugin
#KT-10563 Fixed
2017-10-11 19:23:46 +03:00
Alexey Andreev
9008791a54
JS: generate paths in source maps relative to .map file location
...
See KT-19818
2017-10-06 15:24:25 +03:00
Alexey Andreev
21e91c4052
JS: rename -source-map-source-roots to -source-map-base-dirs
...
See KT-19906
2017-10-03 14:26:37 +03:00
Mikhail Glukhikh
c0dd97b40d
Migration to expect/actual: fix CLI tests
2017-09-16 19:47:41 +03:00
Stanislav Erokhin
7982f3489e
Rename compiler key -Xno-check-impl to -Xno-check-actual
2017-09-16 19:47:39 +03:00
Alexey Andreev
361d6dfca0
JS: rewrite source map generator to use specialized JSON writer
...
Fixes problems with string escaping. See KT-20005
2017-09-06 17:55:06 +03:00
Alexander Udalov
fb4bf4e5b8
Report error if Java 9 module "kotlin.stdlib" is not found in the graph
...
Use "-Xallow-kotlin-package" to suppress this error
#KT-19176 Fixed
2017-08-30 15:47:54 +03:00
Alexey Sedunov
e6f1a3ccf3
Minor: Use Kotlin reflection in usage printing and update test data
2017-08-02 13:08:06 +03:00
Alexander Udalov
1e6850f198
CLI: improve error message if libraries are not found in Kotlin home
...
Also support the '-kotlin-home' argument in kotlinc-js
#KT-18859 Fixed
2017-07-28 14:16:46 +03:00
Alexey Andreev
3331be9cc8
Fix JS CLI test that fails in Windows
2017-06-26 18:15:30 +03:00
Alexey Andreev
a0e1bde594
Allow to embed source files into JS source maps
2017-06-26 18:15:28 +03:00