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
Alexander Udalov
69343549b7
Move TEST_MODULE_NAME to KotlinTestUtils and change value to "test-module"
...
This name is more generic and thus can be used everywhere, not only in Java
integration tests
2016-05-26 11:47:30 +03:00
Pavel V. Talanov
5058e9b4e6
Fix import resolution in Repl
...
#KT-11428 Fixed
Refactor ReplState to be a component
2016-05-24 15:41:56 +03:00
Mikhail Glukhikh
9a69b8b7b5
REDUNDANT_OPEN_FOR_INTERFACE warning: reported for open members without implementation #KT-12452 Fixed
2016-05-24 14:25:27 +03:00
Mikhail Glukhikh
e66acd8101
Default modality is abstract for interface. REDUNDANT_MODIFIER_FOR_TARGET applicability reduced #KT-12302 Fixed
2016-05-24 14:25:22 +03:00
Mikhail Glukhikh
93defed324
KT-12302: ABSTRACT_MODIFIER_IN_INTERFACE warning is removed as obsolete
2016-05-24 14:25:18 +03:00
Mikhail Glukhikh
1a8181bdc4
Only private constructors for sealed / enum classes #KT-12377 Fixed
...
Also #KT-8497 Fixed
2016-05-23 13:08:57 +03:00
Mikhail Glukhikh
cffdce908e
Annotation parameters now cannot be mutable #KT-12367 Fixed
2016-05-23 13:04:00 +03:00
Alexey Andreev
f0ee52faaf
KT-11086 Treat initializer of a companion object as a class initializer
2016-05-23 12:22:50 +03:00
Dmitry Petrov
968ed3f091
KT-5068: Introduce a special diagnostic message for TYPE_MISMATCH cases such as 'fun f(): Int = { 1 }'.
2016-05-23 09:50:41 +03:00
Stanislav Erokhin
db64d9c528
Fixed visibility checks for annotation usage on top-level declarations
...
#KT-12429 Fixed
2016-05-20 14:58:18 +03:00
Alexander Udalov
ca7e4496c7
Refactor and improve class literal type checking code
...
Infer something sensible instead of error types when an error is reported, such
as absence of a type argument for Array or presence of type arguments for other
types
2016-05-20 14:53:07 +03:00
Alexander Udalov
1b79770121
Do not produce trailing space when rendering root package header
2016-05-20 14:53:07 +03:00
Dmitry Petrov
dd12c018ca
KT-8990: private member can't be overridden, even if it is visible in the current context
2016-05-20 14:32:48 +03:00
Dmitry Petrov
a2ec580119
KT-11588 Type aliases
...
Type alias stubs indexing (required for index-based declaration providers)
2016-05-20 14:17:26 +03:00
Dmitry Petrov
8bf87a9a4f
KT-11588 Type aliases
...
Proper abbreviated type for '<type-alias>?'
2016-05-20 14:17:26 +03:00
Dmitry Petrov
440e02016b
KT-11588 Type aliases
...
Fix diagnostic tests (renamed diagnostic message)
2016-05-20 14:17:25 +03:00
Dmitry Petrov
f296b17861
KT-11588 Type aliases
...
Additional test(s)
2016-05-20 14:17:25 +03:00
Dmitry Petrov
65293008fd
KT-11588 Type aliases
...
Type alias descriptor serialization
Types with type aliases serialization
2016-05-20 14:17:24 +03:00
Dmitry Petrov
59472927cd
KT-11588 Type aliases
...
Light class generation: do not fail on type aliases
TODO: actual binary representation for type aliases
2016-05-20 14:17:24 +03:00
Dmitry Petrov
a4406687f1
KT-11588 Type aliases
...
Resolution & expansion for type aliases.
NB: Nested type aliases capturing type parameters of outer classes are not supported yet.
2016-05-20 14:17:24 +03:00
Dmitry Petrov
ec94893189
KT-11588 Type aliases
...
Parse type aliases as top-level, member, and local declarations.
2016-05-20 14:17:24 +03:00
Dmitry Petrov
b86fb64008
KT-12358: fake override of a method of 'Any' in an interface is not an "implementation".
2016-05-20 13:02:29 +03:00
Stanislav Erokhin
c4778bfe5a
Fixed type checking recursive problem.
...
#KT-11995 Fixed
2016-05-20 09:26:56 +03:00
Alexander Udalov
1c8272d3f1
Simplify data class function generation and signature lookup code
...
- change prerequisites for generating equals/hashCode/toString in a data class:
previously they were generated if the corresponding method is trivial (i.e.
it comes from kotlin.Any), now we're generating it always unless it'll cause
a JVM signature clash error (see KT-6206)
- use static KotlinBuiltIns.isXxx methods to compare types instead of checking
against descriptors loaded from certain built-ins instance, this is quicker
and more correct in environments where several built-ins are possible
- don't use isOrOverridesSynthesized, it's not relevant for
equals/hashCode/toString because functions with these names are never
synthesized
#KT-6206 Fixed
2016-05-20 00:54:19 +03:00
Alexander Udalov
2200bfcc85
Simplify ImplementationBodyCodegen#generateToArray
...
- don't do anything for interfaces because there's no point in generating
abstract methods which are already abstract in supertypes
- don't use getDeclaredFunctionByRawSignature, check function signature
manually instead
- don't use isOrOverridesSynthesized because 'toArray' is never synthesized
2016-05-20 00:54:18 +03:00
Alexander Udalov
b208995d73
Render different class kinds differently in bytecode listing test
2016-05-20 00:36:56 +03:00
Dmitry Petrov
a25ba5baf1
KT-12156: for the purposes of inline-related diagnostics
...
treat function declaration as final if it is a member of a final class
2016-05-19 17:43:29 +03:00
Stanislav Erokhin
7332032bb6
Support sealed class inheritors in the same file
...
#KT-11573 Fixed
2016-05-19 16:22:40 +03:00
Denis Zharkov
46ac26147b
Annotate with @UnsafeVariance relevant types in built-ins
2016-05-18 19:21:38 +03:00
Mikhail Glukhikh
a4ad995f31
Overridden functions using default arguments in recursive call are no more considered tail recursive #KT-4285 Fixed
2016-05-17 14:29:01 +03:00
Mikhail Glukhikh
f35fd32a25
Exhaustive when with 'Unit' result now also generates an exception in else branch #KT-12192 Fixed
2016-05-17 14:28:57 +03:00
Denis Zharkov
9dc47d9a11
Move java/util/List.sort to MutableList
2016-05-16 15:38:13 +03:00
Denis Zharkov
d0acb3674a
Fix rendered testData
...
New members in enum member scope
2016-05-16 15:38:13 +03:00
Denis Zharkov
e90c92f8d3
Separate additional built-in members from JDK into three groups
...
- White list: can be used as common built-in declaration
- Black list: can be used only for overrides and super-calls-
- Not considered members: ones that is not in black or white list.
Such members can be used in any context, but they usages marked as deprecated
Third kind is needed to make possible use declarations added in future JDK versions.
Deprecation is necessary because they may get into black list in next Kotlin compiler version
2016-05-16 15:38:13 +03:00
Mikhael Bogdanov
c06b51c1d1
Allow top-level local delegated properties in scripts
2016-05-13 19:11:23 +03:00
Mikhael Bogdanov
6ece2b41d6
Box inline test for local delegated property
2016-05-13 19:11:23 +03:00
Mikhael Bogdanov
ec632c37ab
Support increment and '+=' on local delegated properties
2016-05-13 19:11:21 +03:00
Dotlin
4c223845b6
Delegated Properties: Code generation for local properties (JVM)
2016-05-13 19:11:19 +03:00
Dotlin
fa523b9af4
Delegated Properties: Analysis adjustments for local delegated properties support
2016-05-13 19:11:18 +03:00
phx402@gmail.com
75e9e35669
Fixed incorrect "No cast needed" warning when casting from extension function to regular one and vise versa
...
#KT-11780 Fixed
2016-05-13 13:40:14 +03:00
Nikolay Krasko
52cd7109c7
Use left bound element types to tight empty delegation contructor call to declaration
...
CONSTRUCTOR_DELEGATION_CALL and CONSTRUCTOR_DELEGATION_REFERENCE types were modified.
2016-05-12 17:25:19 +03:00
Nikolay Krasko
9c2ceca4b8
Revert "Additional simple test for variable initialize in secondary constructor"
...
This reverts commit 147f170f80 .
2016-05-12 17:22:16 +03:00
Nikolay Krasko
147f170f80
Additional simple test for variable initialize in secondary constructor
2016-05-12 17:13:24 +03:00
Mikhael Bogdanov
d6a64af929
Fix for KT-12125: Wrong increment/decrement on Byte/Char/Short.MAX_VALUE/MIN_VALUE
...
#KT-12125 Fixed
2016-05-11 18:07:25 +03:00
Dmitry Jemerov
d7b1526cd5
preserve leading indentation in KDoc code blocks
...
#KT-9933 Fixed
2016-05-06 22:11:38 +02:00