Andrey Breslav
1dbfe5483a
Fix isNullableType() to always consider flexible types, even if they contain type parameters
2014-10-13 15:38:01 +04:00
Andrey Breslav
107480657a
Spec document added
2014-10-13 15:38:00 +04:00
Andrey Breslav
d1214d2368
Another TypeUtils.isNullableType() introduced
2014-10-13 15:38:00 +04:00
Andrey Breslav
12d18533e8
Recursion depth in CommonSupertypes is bounded by maxDepth + 3
2014-10-13 15:37:59 +04:00
Andrey Breslav
364a7a6574
Do not overuse makeNullableAsSpecified in TypeSubstitutor
2014-10-13 15:37:59 +04:00
Andrey Breslav
920769d36d
Fold standard flexible types in shortNames mode
2014-10-13 15:37:58 +04:00
Andrey Breslav
220c360081
Null-aware types introduced
...
Flexible types should drive their own conversions to nullable/not-null
2014-10-13 15:37:58 +04:00
Andrey Breslav
969beb7898
Account for substitutions of one variable for another (it must remain a variable)
2014-10-13 15:37:57 +04:00
Andrey Breslav
bdbd469aad
Do not wrap flexible types into Nullable/NotNull types
2014-10-13 15:37:57 +04:00
Andrey Breslav
141e731f39
Constraint Foo on T! should be turned into Foo! on T
2014-10-13 15:37:56 +04:00
Andrey Breslav
6cb1d2e3f7
Lower bound must be a subtype of the upper bound.
...
The change in CommonSupertypes:
We used to say that commonSupertype(Inv<A>, Inv<B>) = Inv<in Intersect(A, B)). This is counter-intuitive, should be Inv<out commonSupertype(A, B)>
2014-10-13 15:37:56 +04:00
Andrey Breslav
e232697da1
CommonSupertypes support for flexible types
2014-10-13 15:37:55 +04:00
Andrey Breslav
583694a450
Flexible types for primitive arrays
2014-10-13 15:37:54 +04:00
Andrey Breslav
8134d097e3
Another portion of test data fixed
2014-10-13 15:37:54 +04:00
Andrey Breslav
a3d9ff65aa
Wrong "USELESS_ELVIS" fixed
2014-10-13 15:37:54 +04:00
Andrey Breslav
c3c72fc528
Switching off propagation of types and KotlinSignatures for platform types
2014-10-13 15:37:53 +04:00
Andrey Breslav
fefadaa171
Rendering platform type for java.util.Map.Entry as kotlin.(Mutable)Map.(Mutable)Entry
2014-10-13 15:37:53 +04:00
Andrey Breslav
dd2e95b3bc
Substitution implemented for flexible occurrences of Java type parameters
2014-10-13 15:37:52 +04:00
Andrey Breslav
bf53222bd9
Flexible types in SAM conversions
2014-10-13 15:37:51 +04:00
Andrey Breslav
2529bb24d1
Don't create flexible types for ".class" expressions in annotation arguments
2014-10-13 15:37:51 +04:00
Andrey Breslav
c699fa96d9
Make not-null compile-time constants non-flexible
2014-10-13 15:37:51 +04:00
Andrey Breslav
867956729b
Don't create platform types for annotation members
2014-10-13 15:37:50 +04:00
Andrey Breslav
bdf7e924b5
Rendering flexible types with "!" and optional parts
2014-10-13 15:37:50 +04:00
Andrey Breslav
c2a03d60f0
Better support for forced resolve while debugging
2014-10-13 15:37:49 +04:00
Andrey Breslav
b4f26bde44
Support forced resolve for lazy flexible types
2014-10-13 15:37:49 +04:00
Andrey Breslav
549df3c0eb
Equality for flexible types
2014-10-13 15:37:48 +04:00
Andrey Breslav
a39d2bc24f
Failing test isolated
2014-10-13 15:37:48 +04:00
Andrey Breslav
b665a1998b
Supertypes should not be flexible
2014-10-13 15:37:47 +04:00
Andrey Breslav
0cbbb6a0db
Test data fixed
2014-10-13 15:37:47 +04:00
Andrey Breslav
195274370f
Fix the case of safe call and elvis operators: flexible types may be nullable
2014-10-13 15:37:46 +04:00
Andrey Breslav
45c1fa3741
Support flexible types in DataFlowValues
2014-10-13 15:37:46 +04:00
Andrey Breslav
f7de0e274c
TypeSubstitutor respects flexible types
2014-10-13 15:37:45 +04:00
Andrey Breslav
f11095b1d0
Minor. DelegatingFlexibleType moved to top level
2014-10-13 15:37:45 +04:00
Andrey Breslav
687fdce30a
Support flexible types in TypeCheckingProcedure
2014-10-13 15:37:44 +04:00
Andrey Breslav
a2f8def1e8
Tests for Java method calls
2014-10-13 15:37:44 +04:00
Andrey Breslav
6c50e1b237
Render flexible types in debug mode
2014-10-13 15:37:43 +04:00
Andrey Breslav
90e4b09272
Fix compilation errors
2014-10-13 15:37:43 +04:00
Andrey Breslav
e268e74fa3
Flexible types added to JDR
...
So far they act exactly like inflexible ones
2014-10-13 15:37:42 +04:00
Andrey Breslav
ad8de070fa
A flag in the JDR to govern usage of platform types
2014-10-13 15:37:42 +04:00
Michael Bogdanov
a88e9666e4
As designed KT-5930: Wrong execution order in case of extension function
...
#KT-5930 As Designed
2014-10-13 11:31:15 +04:00
Michael Bogdanov
5abc2dac4e
Generate labeled statements as statements
2014-10-13 11:31:15 +04:00
Michael Bogdanov
9d72036ba5
Fix for KT-5995: Labeled val causes an exception from the back-end
...
#KT-5995 Fixed
2014-10-13 11:30:28 +04:00
Michael Bogdanov
860544d299
Obsolete KT-5685: VerifyError: Bad local variable type for class with inline method and optional parameters
...
#KT-5685 Obsolete
2014-10-11 13:53:43 +04:00
Michael Bogdanov
605c9f48b4
Added inline annotation check on local funs
2014-10-11 13:53:43 +04:00
Michael Bogdanov
2a1520228e
Support inheritance from java 8 interfaces
...
#KT-5969 In Progress
2014-10-11 13:53:43 +04:00
Andrey Breslav
3613fb746c
Readme.md: Broken links fixed
2014-10-10 23:03:38 +04:00
Pavel V. Talanov
ebbd08a546
Respect resolve scope when adapting java types completion
...
Do not suggest classes from unrelated modules
2014-10-10 21:14:30 +04:00
Pavel V. Talanov
b6d76157c4
Respect source/test roots when building scope in CompletionSession
2014-10-10 21:14:29 +04:00
Pavel V. Talanov
2ded7bae73
Test abstract override in enum class
2014-10-10 18:19:57 +04:00
Pavel V. Talanov
b2c288b62a
Test super calls in enum literals
2014-10-10 18:12:56 +04:00