Ilya Chernikov
b63ed0f4aa
Make script launcher aware of custom scripts, minor correction is core env
2016-06-07 21:12:53 +02:00
Ilya Chernikov
834bb51643
Add tests with partial classpath for script compilation
2016-06-07 21:12:39 +02:00
Ilya Chernikov
3c1503564e
Add possibility to specify supertypes for script, with tests
2016-06-07 21:11:23 +02:00
Ilya Chernikov
670627ac4e
Add helpers, compilation function and tests for passing classes as a parameters to a script
2016-06-07 21:11:23 +02:00
Alexander Udalov
61290d1225
Temporarily disable inline for bound function references
2016-06-07 12:43:10 +03:00
Alexander Udalov
b9e61f035f
Support bound callable references in codegen
2016-06-07 12:43:09 +03:00
Alexander Udalov
526a64dc36
Pass data flow info from '::' expressions, fix expected type
2016-06-07 12:43:07 +03:00
Alexander Udalov
e2d6e0cbab
Propagate control flow to bound double colon expressions
...
"Unused expression" should be reported on unused double colon expressions, this
is postponed
#KT-12551 Open
2016-06-07 12:42:42 +03:00
Alexander Udalov
0ce6bd9999
Ignore resolution to function without arguments on LHS of '::'
...
In the expression "Runnable::run" we were resolving the left-hand side to the
SAM constructor of Runnable. Now we detect this situation, ignore the result of
such resolution, and continue resolving the LHS as a type
2016-06-07 12:42:19 +03:00
Alexander Udalov
04c190231a
Support bound references to objects and companion objects
...
Tweak member extension detection a little bit to prohibit extensions imported
from objects (they don't have one of the receiver parameters)
2016-06-07 12:41:30 +03:00
Alexander Udalov
d90b40c661
Use LanguageFeatureSettings instead of custom option for bound callable references
2016-06-07 12:41:29 +03:00
Dmitry Petrov
872b3e8a52
DeclarationsChecker runs checks on type alias declarations.
...
TYPEALIAS_SHOULD_EXPAND_TO_CLASS diagnostics
(implemented for type aliases expanded to type parameters).
2016-06-06 13:50:37 +03:00
Dmitry Petrov
ea249244c5
'where' clause in type alias declaration is a syntax error
...
(type alias parameters can't have bounds)
2016-06-06 13:50:37 +03:00
Dmitry Petrov
772fe5badb
Treat unsupported or malformed type alias as a type alias with error types.
2016-06-03 16:07:20 +03:00
Dmitry Petrov
3500f5a96b
Type alias: resolve type alias RHS during force-resolve.
2016-06-03 16:07:20 +03:00
Dmitry Petrov
df335b9e8d
Type aliases: do not reparse RHS of type alias declaration in expanded type resolution
2016-06-03 16:07:20 +03:00
Mikhail Glukhikh
a22e7d3bcf
KT-12152 : leaking this inspection: accessing non-final member / this in non-final class
2016-06-03 14:45:58 +03:00
Mikhail Glukhikh
be40cf8138
KT-12152 : constructor consistency: distinguish properties with and w/o backing fields, with default / custom accessors
2016-06-03 09:45:49 +03:00
Mikhail Glukhikh
422ea4c6cb
KT-12152 : constructor consistency: handle open property accessing
2016-06-03 09:45:45 +03:00
Mikhail Glukhikh
f7b5d67543
KT-12152 : constructor consistency: handle non-final classes
2016-06-03 09:45:41 +03:00
Mikhail Glukhikh
8e18165065
KT-12152 : constructor consistency analysis, base cases
2016-06-03 09:45:37 +03:00
Mikhael Bogdanov
092be8ca8e
Don't generate unnecessary checkcast to java.lang.Number
2016-06-02 16:01:05 +03:00
Mikhael Bogdanov
a6cf169646
Fix for KT-12582: "VerifyError: Bad local variable type" caused by explicit loop variable type
...
#KT-12582 Fixed
2016-06-02 16:01:05 +03:00
Mikhael Bogdanov
c7d97c63a8
Small refactoring in constant processing
2016-06-02 16:01:03 +03:00
Nikolay Krasko
3f4cde3d25
NoSuchFieldError in Evaluate Expression on a property of a derived class (KT-12206)
...
#KT-12206 Fixed
2016-06-02 14:39:51 +03:00
Alexander Udalov
1339286261
Drop undocumented absolute name specification feature with 'package.'
2016-06-01 19:30:03 +03:00
Dmitry Petrov
0319d5a5aa
KT-11588 Type aliases
...
- Nested type aliases
- UNSUPPORTED_TYPEALIAS error (language level < 1.1)
- tests for is/as/as? with type alias
2016-06-01 14:32:46 +03:00
Dmitry Petrov
e979300579
KT-11588 Type aliases
...
Diagnostics for type arguments substitution in type alias expansion
(initial implementation; TODO: refactor).
2016-06-01 14:32:46 +03:00
Dmitry Petrov
9cf8ef287e
KT-11588 Type aliases
...
Additional tests for generic type alias arguments.
Small refactoring in TowerLevels.
2016-06-01 14:32:45 +03:00
Dmitry Petrov
62f8d00f89
KT-11588 Type aliases
...
Create substituted constructor descriptors for generic type aliases.
2016-06-01 14:32:45 +03:00
Dmitry Petrov
c63166047c
KT-11588 Type aliases
...
Additional tests for type alias constructor & companion object:
- codegen
- error diagnostics
2016-06-01 14:32:45 +03:00
Dmitry Petrov
1329a43d89
KT-11588 Type aliases
...
Type alias constructor
2016-06-01 14:32:44 +03:00
Dmitry Petrov
4a9507b3ab
KT-11588 Type aliases
...
Type alias companion object
2016-06-01 14:32:44 +03:00
Mikhael Bogdanov
0f1589fd50
Fix for KT-12200: initial property assignment ignored
...
#KT-12200 Fixed
2016-05-31 15:27:55 +03:00
Mikhael Bogdanov
bdc0b6b308
Local delegated properties moved to language feature option
2016-05-31 15:27:55 +03:00
Alexey Andreev
2bd807bb4e
KT-11960: add test for case of instantiating inner class of a local class
2016-05-31 15:24:30 +03:00
Alexey Andreev
acc5303731
KT-11960 Fix case of instantiation of local class via its inner class or via nested lambda. Move tests to more appropriate location. Fix bug in blackbox codegen generator for JVM, which does not allow to suppress tests.
2016-05-31 15:24:29 +03:00
Alexey Andreev
6f363a71be
KT-11960 Fix for data classes
2016-05-31 15:24:29 +03:00
Alexey Andreev
170a671a1b
KT-11960 Fix for case when class instantiates itself
2016-05-31 15:24:28 +03:00
Mikhail Glukhikh
8713190e33
Back-end JVM: more accurate handling of when expressions with Unit result #KT-12192 Fixed
2016-05-27 18:08:15 +03:00
Alexander Udalov
e1a21abd72
Report error on bare types in LHS of callable reference expressions
2016-05-26 22:22:41 +03:00
Alexander Udalov
a3b38cf6ed
Extract method to fully or partially resolve callable reference
...
Reuse it in the main type-checking path in DoubleColonExpressionResolver, as
well as in ArgumentTypeResolver which handles the case when a callable
reference appears as an argument to another call
2016-05-26 22:22:41 +03:00
Alexander Udalov
693c753988
Support for new double colon expressions in type checker
...
Despite the fact that the LHS of a double colon expression is now KtExpression
instead of KtUserType, we must still consider it a type for callable references
to work. Extract and reuse relevant parts of QualifiedExpressionResolver and
TypeResolver to support this behavior
2016-05-26 22:22:41 +03:00
Alexander Udalov
b5388d6a43
Parse expressions on LHS of '::'
...
See https://github.com/Kotlin/KEEP/issues/5
2016-05-26 22:22:41 +03:00
Alexander Udalov
7cb61b81ab
Minor, capitalize language feature names in tests
...
To simplify textual search across the codebase
2016-05-26 22:21:22 +03:00
Alexander Udalov
2c516f18a0
Add tests on "-language-version" usage from Ant, Maven, Gradle
2016-05-26 22:15:39 +03:00
Alexander Udalov
bc5202a4d7
Validate "-language-version" argument value, add tests
2016-05-26 22:15:39 +03:00
Alexander Udalov
331a6ee414
Use LanguageFeatureSettings instead of JVM option for top level sealed classes
2016-05-26 22:15:39 +03:00
Alexander Udalov
98c3e030a1
Support enabling/disabling language features in diagnostic tests
2016-05-26 22:15:39 +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