Mikhail Glukhikh
692623cb55
Cleanup: smart casts of safe call receiver applied (do NOT cherry-pick to 1.0.X)
2016-07-27 16:24:18 +03:00
Alexander Udalov
d945c33d5e
Move some members from OverrideResolver to OverridingUtil
2016-07-25 15:55:31 +03:00
Alexander Udalov
77bb691d4e
Rename SymbolUsageValidator -> ClassifierUsageChecker
...
Also validateTypeUsage -> check
2016-06-29 22:03:34 +03:00
Alexander Udalov
6ba32ed624
Refactor CallChecker and subclasses
...
Encapsulate everything that is needed in checkers into CallCheckerContext. Pass
an instance of this context instead of BasicCallResolutionContext to checkers.
Also pass an instance of the element to report errors on: this is useful
because before this, every checker had its own way of determining where should
the error be reported on. Some of them, for example, were not doing anything if
Call#calleeExpression returned null, which is wrong, see operatorCall.kt
#KT-12875 Open
2016-06-29 19:20:00 +03:00
Alexey Andreev
33248e7721
KT-3008: minor code style fixes
2016-06-27 15:33:31 +03:00
Alexey Andreev
b556b6efca
KT-3008 Fix JS backend tests
2016-06-27 15:33:24 +03:00
Alexey Andreev
95b78e18df
KT-3008 Change the way how modules are referenced in JS
2016-06-27 15:33:23 +03:00
Alexey Andreev
2909533522
KT-3008 Add module kind. Include module kind and module dependencies in metadata
2016-06-27 15:33:23 +03:00
Denis Zharkov
1b82e43d76
Add LanguageFeatureSettings parameter to single method in checkers interfaces
...
This parameter will be used further for target-dependent checks
Also introduce SimpleDeclarationChecker/SimpleCallChecker sub-interfaces (more weak ones)
Implementing them instead of base checkers is more convenient in most cases
2016-06-09 17:57:15 +03:00
Pavel V. Talanov
76971eca70
Refactor LanguageFeatureSettings: Add LanguageVersion and LanguageFeature entities
2016-05-26 22:16:47 +03:00
Alexander Udalov
e1ba4480d7
Support "-language-version" CLI option for compatibility with older releases
...
Introduce LanguageFeatureSettings, instance of which should be injected by the
container and be accessible everywhere during the compilation (front-end and
back-end).
Parameters of LanguageFeatureSettings are unused in this commit, will be used
later
2016-05-26 22:15:39 +03:00
Alexander Udalov
159d88102f
Use MODULE_NAME configuration key in JS instead of MODULE_ID
2016-05-26 11:47:30 +03:00
Alexander Udalov
cad4b6973c
Introduce and use JSConfigurationKeys similar to JVMConfigurationKeys
...
Use type-safe keys in CompilerConfiguration instead of multiple parameters,
duplicated in the base class (JsConfig), derived class (LibrarySourcesConfig)
and its builder (LibrarySourcesConfig.Builder)
2016-05-26 11:47:30 +03:00
Alexander Udalov
b65980f3b7
Drop JsConfig#inlineEnabled flag
...
Use CommonConfigurationKeys#DISABLE_INLINE flag (moved from
JVMConfigurationKeys) in CompilerConfiguration instead, similarly to the JVM
compiler
2016-05-26 11:47:30 +03:00
Alexander Udalov
6889bdbef8
Add CompilerConfiguration to JsConfig
...
Will be used to store common compiler options (such as source version, inline
disabled, etc) as well as JS-specific options, to unify the logic of compiler
option initialization between JS and JVM compilers
2016-05-26 11:47:30 +03:00
Alexander Udalov
116e4a5ced
Rename Config -> JsConfig
2016-05-26 11:47:30 +03:00
Stanislav Erokhin
8c2d68fff0
Refactoring. Move specificity relations into TypeSpecificityComparator component.
2016-05-20 09:32:53 +03:00
Alexey Andreev
0f6a6a3ba4
JS/RTTI. Fix runtime checking against kotlin.CharSequence
2016-05-05 17:24:25 +03:00
Alexey Tsvetkov
9bb60b48b2
JS/RTTI. Fix run-time type checking against Comparable
2016-05-05 17:24:22 +03:00
Denis Zharkov
5bc5722051
Load additional JDK functions into built-ins member scope
...
#KT-5990 Fixed
#KT-7127 Fixed
#KT-10370 Fixed
2016-04-25 17:41:08 +03:00
Denis Zharkov
c667f50741
Delete TargetPlatform.builtins
...
Replace it's usages with relevant singleton reference
2016-04-25 17:41:08 +03:00
Denis Zharkov
ef18d64931
Parametrize module creation by platform with built-ins
2016-04-25 17:41:08 +03:00
Alexey Andreev
7ca6102cac
KT-11030 Disable error reporting of local classes in JS backend
2016-04-20 18:01:06 +03:00
Alexander Udalov
8316953259
Fix double quotes in diagnostic messages
...
For diagnostics without any parameters, the given text is simply rendered as a
String, so no symbols should be escaped.
For diagnostics with parameters, the format in java.text.MessageFormat is used,
so one single quote is erased and two single quotes become one single quote in
the rendered text.
2016-03-30 21:41:43 +03:00
Alexander Udalov
3944d56ac2
Minor, remove unnecessary type parameter in CallChecker#check
2016-03-28 14:13:59 +03:00
Pavel V. Talanov
ced5a6c917
Introduce RenderingContext and add as parameter to DiagnosticParameterRenderer#render
...
RenderingContext holds data about the whole diagnostics allowing to adjust rendering of its parameters
2016-02-26 14:45:04 +03:00
Pavel V. Talanov
4f18b3da53
Rename: Renderer -> DiagnosticParameterRenderer and move it out of descriptors module
...
DescriptorRenderer is no longer a renderer
DescriptorRenderers should not be used to render diagnostic parameters explicitly
2016-02-26 14:45:02 +03:00
Alexey Andreev
f5786dd567
[KT-4124] Add test case for nested/inner classes inside native class. Add diagnostic of inner classes inside native classes.
2016-02-20 15:19:28 +03:00
Alexey Andreev
68828317b8
[KT-4124] Suppress error reporting about native local classes
2016-02-20 15:19:27 +03:00
Alexey Andreev
e3c7cd0021
[KT-4124] Add diagnostic that reports of local classes. Remove test for diagnostic of nested types
2016-02-20 15:19:27 +03:00
Alexey Andreev
a8014dec50
[KT-4124] Add support for simple nested classes
2016-02-20 15:19:20 +03:00
Pavel V. Talanov
1800e5a7db
Remove some usages of Name.guess (and rename this utility to discourage new usages)
2016-02-15 13:32:42 +03:00
Denis Zharkov
29c24267fa
Fix project compilation
...
First parameters of `DiagnosticFactory.on` methods are annotated as 'NotNull'
2016-01-28 08:36:24 +03:00
Ilya Gorbunov
9fbbc9db98
Packages: move Ranges, Progression, ProgressionIterators to kotlin.ranges and PrimitiveIterators to kotlin.collections.
2016-01-22 05:54:38 +03:00
Dmitry Jemerov
d6a11b839b
js: cleanup 'public', property access syntax
2016-01-07 18:15:19 +01:00
Ilya Gorbunov
da4b1ae0fb
Cleanup in js modules
2015-12-29 18:04:16 +03:00
Ilya Gorbunov
b71b336a69
Fix fq names of moved facade classes in imports and other code occurrences
2015-12-29 18:04:13 +03:00
Michael Bogdanov
e671d05105
Companion public val annotated with @JvmFIeld or const
2015-12-29 16:45:23 +03:00
Michael Bogdanov
aeb6486473
Deprecated 'INSTANCE$' replaced with 'INSTANCE'
2015-12-24 13:59:43 +03:00
Nikolay Krasko
20379028e8
Refactoring: extract separate class that can store suppressions
2015-12-19 14:32:34 +03:00
Stanislav Erokhin
fe9cbd982d
Extract SyntheticScopes to injection component
2015-12-18 22:49:23 +03:00
Mikhail Glukhikh
91621704a2
Additional information to catch EA-75872
2015-12-17 17:30:30 +03:00
Ilya Gorbunov
42565129ee
Add packages kotlin.collections, kotlin.ranges, kotlin.sequences, and kotlin.text to default imports.
2015-12-14 01:07:49 +03:00
Yan Zhulanow
46ac3571d5
Fix "infix modifier required" errors in project
2015-11-27 15:51:11 +03:00
Michael Nedzelsky
c80c33efb6
add kjsm option for kotlin js command line compiler
2015-11-23 22:32:32 +03:00
Dmitry Petrov
9a736bf874
Use platform-dependent filter for callable package members
...
before checking for overloads:
filter deserialized callable package members by implementation class files
for callable package members from source.
#KT-10051 Fixed
2015-11-19 09:51:21 +03:00
Mikhail Glukhikh
f8a70302ac
Cleanup: get rid of effective visibility warnings
2015-10-28 14:31:51 +03:00
Dmitry Jemerov
d6a3870101
rename Kt to Kotlin in KtType, KtIcons
2015-10-20 16:23:31 +02:00
Dmitry Jemerov
49033e0002
rename Jet* classes to Kt*
2015-10-19 21:35:30 +02:00
Dmitry Petrov
8cd624a58a
Drop package facades: code cleanup in Kotlin project.
2015-10-15 10:33:47 +03:00