Alexander Udalov
c9769ab454
Do not serialize/deserialize CommonCompilerArguments#errors
...
This prevents .idea/kotlinc.xml from being added with an empty
ArgumentParseErrors object and also fixes
ConfigureKotlinInTempDirTest.testKotlincExistsNoSettingsRuntime11
2017-04-22 02:17:49 +03:00
Dmitry Jemerov
4e8fe18ca8
Fix facet validation: change ArgumentParseErrors to a data class
...
BaseCompilerSettings.validateInheritedFieldsUnchanged() compares
old and new properties of the compiler settings, and the check requires
ArgumentParseErrors.equals() to be correctly implemented
2017-04-21 13:20:49 +02:00
Denis Zharkov
a5c352dc9f
Add -Xuse-old-class-files-reading CLI argument
...
By default we use the fast implementation in CLI compiler,
but in the most of the tests the old one is enabled
Also add tests on CompiledJava with the fast class reading
implementation
2017-04-21 12:56:29 +03:00
Alexander Udalov
aee5326ca7
CLI: refactor argument validation out of parsing
2017-04-20 16:20:54 +03:00
Alexander Udalov
8aba862e97
CLI: use "--" to separate free arguments from compiler options
...
#KT-9370 Fixed
2017-04-20 16:20:54 +03:00
Zalim Bashorov
9783a31779
Remove kotlin-reflect.jar dependency from util module and move reflectionUtil.kt closer to "clients"
...
Main goal is get rid of kotlin-reflect.jar from modules what required for minimal compiler.jar which can compile Kotlin only to JS to make it smaller.
2017-04-17 18:18:38 +03:00
Zalim Bashorov
05c3e7e81d
Don't export kotlin-reflect form util module and add it explicitly where it's required.
...
Also, remove kotlin-reflect form container module.
Main goal is get rid of kotlin-reflect.jar from modules what required for minimal compiler.jar which can compile Kotlin only to JS to make it smaller.
2017-04-17 18:18:31 +03:00
Alexander Udalov
b7de272884
CLI: support delimiter for array arguments
...
The " " delimiter is used in kotlin-native (see
K2NativeCompilerArguments)
2017-04-17 11:51:33 +03:00
Alexander Udalov
072f87ddab
Introduce -Xintellij-plugin-root, deprecate CompilerJarLocator
2017-04-14 20:13:11 +03:00
Alexander Udalov
ff846e787f
Report warning for non-boolean CLI argument passed multiple times
...
Only if its values are different, see the test
2017-04-14 20:07:54 +03:00
Alexander Udalov
be54e4b93b
Get rid of coroutinesWarn/coroutinesEnable/coroutinesError
...
Use a single coroutinesState instead. Change the coroutines state in
some tests from "warn" to "enable"/"error" to test that deserialization
of older config files works ("warn" is the default value, so it wasn't
testing anything here)
2017-04-14 20:07:54 +03:00
Alexander Udalov
f4b6db4dc0
Change format of -X arguments to require value after '='
...
Report a warning when an argument is passed in the old form (with the
whitespace)
#KT-17264 Fixed
2017-04-14 20:07:54 +03:00
Alexander Udalov
78c0111c6e
Drop cli-parser, use simple reflection-based parser instead
...
The main reason of this change is that major changes are required in how
command line arguments are parsed in kotlinc, and it's much easier to
make them in our own codebase (given that the code is short and simple
enough) than in a third-party library
2017-04-14 20:07:53 +03:00
Alexander Udalov
cb4d2994a3
Drop CompilerMessageLocation.NO_LOCATION, use null everywhere instead
2017-04-11 12:08:31 +03:00
Alexander Udalov
861d9a1620
Use null instead of CompilerMessageLocation.NO_LOCATION in MessageCollector
2017-04-11 12:08:31 +03:00
Dmitry Jemerov
406714a1f4
Remove warning for running the compiler under Java 6/7
...
Now the compiler won't even start, so no need to check this manually.
2017-04-10 17:30:03 +02:00
Ilya Chernikov
0199ec18b1
Add new compiler argument for passing script resolver environment
2017-04-06 10:02:48 +02:00
Alexander Udalov
78e278ec4c
Remove redundant type arguments for Java 8+ in compiler modules
2017-04-03 14:51:18 +03:00
Alexander Udalov
d440f07111
Use Java 7+ diamond operator in compiler modules
2017-04-03 14:51:15 +03:00
Alexander Udalov
37f435da93
Use List.sort instead of Collections.sort
2017-04-03 14:50:33 +03:00
Alexander Udalov
5ebee6ceca
Use Java 8 lambdas instead of anonymous classes in compiler modules
2017-04-03 14:49:23 +03:00
Alexander Udalov
6aa0f7bb65
Use multi-catch when possible
2017-04-03 14:26:53 +03:00
Alexander Udalov
34f0576135
Invoke "remove unnecessary final" intention in compiler modules
2017-04-03 14:26:52 +03:00
Alexander Udalov
08b50cab08
Use java.util.function.Predicate instead of Guava
2017-04-03 14:26:50 +03:00
Mikhail Zarechenskiy
aec0c029e5
Display description of language version in options
2017-03-30 13:27:50 +03:00
Mikhail Zarechenskiy
20d5616d75
Introduce Kotlin language version 1.2
...
Wherein DEFAULT version is still 1.1, which means that version 1.2 should be configured manually
2017-03-30 13:27:45 +03:00
Anton Bannykh
9b34e21619
JS: fixed <Type>Array.iterator methods; added -Xtypedarray compiler key
...
The <Type>Array.iterator used to lack next<Type>() method (KT-16626).
The -Xtypedarray compiler key enables translation of primitive arrays
to TypedArrays, and primitive array`is`-checks (KT-15358, KT-14007,
KT-14614, KT-16056).
2017-03-27 23:09:34 +03:00
Ilya Chernikov
c034a73d72
Extract and reuse JarFS-related IO fallback configurator function
...
Partly fixes #KT-16927
2017-03-23 18:11:38 +01:00
Alexey Sedunov
38f9e99d91
Kotlin Facet: Fix argument merging
...
#KT-16982 Fixed
2017-03-22 13:36:06 +03:00
Alexey Sedunov
5c55b9fbbe
Configuration: Check that project-level common arguments are not changed through platform-specific holders
2017-03-16 03:14:34 +03:00
Mikhail Glukhikh
b121bf8802
Cleanup: fix some compiler warnings (mostly deprecations, javaClass)
2017-03-15 17:35:31 +03:00
Alexander Udalov
573c6ab5d4
Move JvmTarget to frontend.java, introduce TargetPlatformVersion
...
Previously JvmTarget was declared in module 'util' which is accessible
for example from 'frontend', which is not very good.
Also add a superinterface named TargetPlatformVersion which is going to
be used in platform-independent injectors in 'frontend' in the following
commits. Use it in one place (LanguageVersionSettingsProviderImpl.kt)
instead of DescriptionAware because TargetPlatformVersion sounds like a
better abstraction than DescriptionAware here
2017-03-15 11:02:56 +03:00
Alexey Sedunov
6b6d7a5030
Configuration: Don't create kotlinc.xml if the settings don't differ from the defaults
...
#KT-16647 Fixed
2017-03-14 15:33:11 +03:00
Alexey Sedunov
73b879ea89
Misc: Include cli-parser 1.1.2 sources into the project under different package and drop original library dependency
...
This would allow building the project with Kotlin JPS plugin on TeamCity where older library takes precendence due to appearing earlier in JPS classpath
2017-03-14 15:33:06 +03:00
Dmitry Jemerov
af7de9a0c5
Warn when running the compiler under Java 6 or 7
...
(cherry picked from commit 5537800)
(cherry picked from commit 5614874)
2017-03-01 16:21:57 +01:00
Ilya Chernikov
d3682b7f7d
Implement JSR 223 script template with eval functions, some fixes
2017-02-24 16:58:25 +01:00
Ilya Chernikov
a3a782613a
Cleanup
2017-02-24 16:58:24 +01:00
Ilya Chernikov
b9469a9308
Fix script-util after changes in repl infrastruct
2017-02-24 16:58:24 +01:00
Ilya Chernikov
b23911fd59
Reintroduce history check between compile and eval, place generation into code line and id
2017-02-24 16:58:24 +01:00
Ilya Chernikov
7b2ea001c1
Fix state conversion, fix tests
2017-02-24 16:58:24 +01:00
Ilya Chernikov
f9dedab8c8
Extract repl state as a separate object
2017-02-24 16:58:24 +01:00
Alexander Udalov
2e8bfde2e7
Move -Xskip-metadata-version-check from JVM to common arguments
...
To be used in JS
2017-02-15 10:46:48 +03:00
Alexander Udalov
8fee62a8c5
Minor, explain what CompilerMessageSeverity.STRONG_WARNING is
2017-02-13 12:11:16 +03:00
Alexey Sedunov
4325632b3e
Kotlin Facet: Always parse argument string to proper compiler arguments bean
...
#KT-16137 Fixed
#KT-16157 Fixed
#KT-16206 Fixed
2017-02-08 11:56:59 +03:00
Alexander Udalov
464820458e
JS: rename "-library-files" argument to "-libraries" and change separator
...
Use the system separator (':' or ';') instead of commas
#KT-16083 Fixed
2017-01-31 16:26:35 +03:00
Alexander Udalov
7ac96163ac
Introduce CompilerMessageSeverity.STRONG_WARNING
...
This is a severity for mandatory warnings, i.e. those which should be reported
in any case, even if there are compilation errors
2017-01-30 16:01:27 +03:00
Alexander Udalov
e5680565b3
JS: drop "-kjsm" flag, merge logic with "-meta-info"
...
#KT-16049 Fixed
2017-01-30 11:31:03 +03:00
Zalim Bashorov
29ac01f2e2
KJS: allow to use packages with names starting with "kotlin" only if the -Xallow-kotlin-package command line option is specified
...
#KT-14668 Fixed
2017-01-29 17:21:01 +03:00
Ilya Chernikov
b8b044c6b0
Reuse script args substitution for replacing bindings in JSR 223 sample engines, fixes KT-15450
2017-01-27 22:20:44 +01:00
Ilya Chernikov
0b689a4ecb
PR-1021 review: minor fixes
...
# Conflicts:
# compiler/cli/cli-common/src/org/jetbrains/kotlin/cli/common/repl/GenericReplCompilingEvaluator.kt
# compiler/cli/cli-common/src/org/jetbrains/kotlin/cli/common/repl/GenericReplEvaluator.kt
# compiler/cli/src/org/jetbrains/kotlin/cli/jvm/repl/GenericReplCompiler.kt
2017-01-27 22:20:44 +01:00