Zalim Bashorov
0e428ca10c
JPS: don't consider that production target of module "B" is depends on test target of module "A" when "B" depends on "A"
...
#KT-12595 Fixed
2016-06-15 15:01:32 +03:00
Dmitry Petrov
a17b0dd1b5
KT-5075 Optimize array/collection indices usage in 'for' loop
...
Use specialized 'for' loop code generation strategy for loops over array indices and collection indices.
2016-06-15 14:01:18 +03:00
Mikhael Bogdanov
3a8591a729
Support 'jvm-target' in CLI
2016-06-15 13:43:29 +03:00
Mikhael Bogdanov
1c3ce93275
Generate same delagation structure as in jvm 6 target until new binary compatibility design
...
We need to make some decision about binary compatibility beetwen targets and semantics, so now old logic is used
2016-06-15 13:43:29 +03:00
Mikhael Bogdanov
bb59638039
Support bridges in interfaces. Fix for KT-12416: Missed bridges in js backend
...
#KT-12416 Fixed
2016-06-15 13:43:28 +03:00
Mikhael Bogdanov
c778af518b
isJvm6Interface -> isAnnotationOrJvm6Interface
2016-06-15 13:43:28 +03:00
Mikhael Bogdanov
16159c483d
Generate defaults methods on extending jvm6 interfaces
2016-06-15 13:43:27 +03:00
Mikhael Bogdanov
331341bd4d
Don't generate delegates on overriding jvm8 interfaces
2016-06-15 13:43:27 +03:00
Michael Bogdanov
01aa89b1ea
Generate delegation body for default interface methods, calculate proper abstractness for them
2016-06-15 13:43:26 +03:00
Mikhael Bogdanov
fc8058848f
Added classVersion to KotlinJvmBinaryClass
2016-06-15 13:43:26 +03:00
Michael Bogdanov
0ae2175a00
Add jvm8 target key, added jvm 8 option to bytecode tool window
...
IsJava8 renamed to isJvm8
2016-06-15 13:43:25 +03:00
Michael Bogdanov
96f892d60c
Obtain class file version from GenerationState
2016-06-15 13:43:25 +03:00
Mikhael Bogdanov
77a386a266
Move java8 'compileKotlinAgainstKotlin' test under 'codegen/java8/compileKotlinAgainstKotlin/jvm6' folder
2016-06-15 13:43:24 +03:00
Mikhael Bogdanov
0169f10bf3
Support directives in write flag tests
2016-06-15 13:43:23 +03:00
Mikhael Bogdanov
5d5734841b
Compile logic moved from AbstractBlackBoxCodegenTest to CodegenTestCase
2016-06-15 13:43:23 +03:00
Mikhael Bogdanov
dce260563c
Support directives in CompileKotlinAgainstKotlinTest
2016-06-15 13:43:22 +03:00
Alexander Udalov
99f4c7b6e7
Fix error in kapt on enum constructors with parameters
...
Do not skip writing the fictitious 'java/lang/Synthetic' annotation in KAPT
mode, because its absence makes ASM confuse indices of enum constructor
parameters (it cannot figure out that there are two additional parameters, name
and ordinal)
#KT-12694 Fixed
2016-06-14 22:06:45 +03:00
Nikolay Krasko
5e7d007e75
Build output parser in separate module under 1.6 (KT-12159)
...
KotlinOutputParser accessed from gradle execution environment that can be started under Java 1.6.
#KT-12159 Fixed
2016-06-14 20:58:07 +03:00
Alexander Udalov
7e38b93d80
Use protobuf with renamed packages, pack to IDEA plugin
...
Update GenerateProtoBuf.kt to also regexp-replace com.google.protobuf with
org.jetbrains.kotlin.protobuf in generated Java sources
#KT-12581 Fixed
2016-06-14 14:17:22 +03:00
Alexander Udalov
952a85414b
Rename packages in protobuf-java binaries and sources
...
#KT-12581 In Progress
2016-06-14 14:17:22 +03:00
Mikhail Glukhikh
b1734920b6
Surround with null check : applicable also for TYPE_MISMATCH
2016-06-13 15:56:41 +03:00
Mikhail Glukhikh
10935ba9db
Wrap with safe let call : minor refactoring
2016-06-13 15:42:04 +03:00
Mikhail Glukhikh
954952ae71
Surround with null check : apply for ITERATOR_ON_NULLABLE
2016-06-13 15:34:15 +03:00
Mikhail Glukhikh
7f771075fb
Surround with null check : minor refactoring
2016-06-13 15:34:10 +03:00
Mikhail Glukhikh
230f73acc9
KT-11104 extra : name validator introduced for wrap with safe let call
2016-06-13 15:34:04 +03:00
Mikhail Glukhikh
3c49b5f342
KT-11104 extra : "wrap with safe let call" is now applicable for argument type mismatches
2016-06-13 15:33:59 +03:00
Mikhail Glukhikh
47c1106d5d
Quick-fix "wrap with safe let call" introduced #KT-11104 Fixed
2016-06-13 15:33:53 +03:00
Mikhail Glukhikh
f8b6ed226a
Correct "Show type" on an invoked expression #KT-12671 Fixed
2016-06-13 15:33:48 +03:00
Mikhail Glukhikh
90342ea33b
KT-11104 : quick fix "surround with null check"
2016-06-13 15:33:36 +03:00
Stanislav Erokhin
585dcbf1f3
KT-10717 Type inference for lambda with local return
...
#KT-10717 Fixed
2016-06-10 21:28:05 +03:00
Stanislav Erokhin
da01e4a57c
Add assertion for variable as operator call.
2016-06-10 21:28:04 +03:00
Stanislav Erokhin
03241419bd
Minor. removed several tests with error calls.
2016-06-10 21:28:04 +03:00
Dmitry Petrov
c414f456a4
Like nested classes, it is not possible to reference inherited nested type alias by a child class.
2016-06-10 16:21:27 +03:00
Dmitry Petrov
7b6c1c092c
Inherited type alias capturing type parameters of generic base class:
...
doesn't work partially due to KT-11123.
2016-06-10 16:21:27 +03:00
Dmitry Petrov
bee1762b0e
'Nothing' as function return type and property type can't be abbreviated.
2016-06-10 16:21:27 +03:00
Dmitry Petrov
0ff677596f
Modifiers checking for type aliases.
...
Exposed type checking for type aliases.
2016-06-10 16:21:26 +03:00
Dmitry Petrov
139e219ebd
Star projections in type alias expansions are substituted to star projections
...
for corresponding type parameters in expanded type.
Test that type alias arguments are substituted literally,
and no type approximation is performed on substitution.
2016-06-10 16:21:26 +03:00
Dmitry Petrov
1efbd34529
Test: arguments of type aliases should be substituted literally,
...
without type approximation.
TYPE_MISMATCH is an expected error.
2016-06-10 16:21:26 +03:00
Dmitry Petrov
7da50069eb
Additional tests for illegal type in type alias expansion:
...
'Array<Nothing>' passed as an unused parameter to type alias.
2016-06-10 16:21:26 +03:00
Dmitry Petrov
115f40d371
UNUSED_TYPEALIAS_PARAMETER: special diagnostic for typealias parameters
...
explicitly telling that such type parameters are not used in type checking.
Move typealias-related utility functions on types to TypeUtils.kt.
2016-06-10 16:21:25 +03:00
Dmitry Petrov
40dd36bcf6
Recursive type alias expansion:
...
when resolving abbreviated type, do not check bounds
if the resulting type contains type aliases.
2016-06-10 16:21:25 +03:00
Nikolay Krasko
688c742802
j2k: minor fixes in KtLightClassForAnonymousDeclaration
2016-06-10 14:17:36 +03:00
Nikolay Krasko
4679ae60ab
j2k: actual convert KtLightClassForAnonymousDeclaration
2016-06-10 14:17:35 +03:00
Nikolay Krasko
81b94d0988
j2k: rename KtLightClassForAnonymousDeclaration
2016-06-10 14:17:31 +03:00
Nikolay Krasko
9e9c670ada
Minor: clean up and reformat
2016-06-10 14:17:20 +03:00
Dmitry Petrov
a4267f069d
Codegen should just skip (local) type alias declarations.
2016-06-10 10:25:10 +03:00
Dmitry Petrov
c04b16d6cc
Type parameters for type alias constructor are declared type parameters for type alias
...
(no implicit type parameters from containing scopes).
2016-06-10 10:25:09 +03:00
Dmitry Petrov
bcd1df4efe
More tests for type alias constructor type parameters.
2016-06-10 10:25:09 +03:00
Dmitry Petrov
6924ed53ec
Local type aliases: resolve
2016-06-10 10:25:09 +03:00
Dmitry Petrov
9a7bbc1516
Type alias shouldn't expand to a malformed type (e.g., 'Array<Nothing>').
2016-06-10 10:25:09 +03:00