Commit Graph

3244 Commits

Author SHA1 Message Date
Evgeny Gerashchenko db45f4a062 Fixed hot swap when closure captures variables
Stabilized order of synthetic constructor parameters in anonymous class.

 #KT-5440 fixed
2014-10-15 20:33:17 +04:00
Andrey Breslav 3453809b4b Defining flexible type semantic equality through subtyping 2014-10-15 14:07:55 +04:00
Andrey Breslav 391b57077b KT-5976 Parser recovery is poor on object with parameters
#KT-5976 Fixed
2014-10-15 12:22:35 +04:00
Evgeny Gerashchenko a759fc2454 Added test for EA-53340. 2014-10-15 11:50:59 +04:00
Valentin Kipyatkov eabcbb00ab KT-5876 Code completion should never auto-insert item which requires adding import
#KT-5876 Fixed
2014-10-14 15:47:45 +04:00
Alexey Sedunov a56c54371e Pseudocode: Generate instructions for unresolved array assignments 2014-10-14 01:59:42 +04:00
Zalim Bashorov 88f9621b45 Minor: update junit to 4.11 2014-10-13 21:25:55 +04:00
Pavel V. Talanov c1f8db5962 Fix MutableDiagnosticsTest#testCaching()
Sadly relying on implementation details
2014-10-13 19:48:57 +04:00
Andrey Breslav 070a7d4d72 Serialization of flexible types supported 2014-10-13 15:38:20 +04:00
Andrey Breslav 9fb09e62af toString() on nullables fixed 2014-10-13 15:38:19 +04:00
Andrey Breslav 8eb57f5a75 Parser recovers on platform types notation:
- Foo!
- Array<(out) Foo>!
- (Mutable)List<Foo>!
2014-10-13 15:38:18 +04:00
Andrey Breslav 1214bef3e8 Always create a missing txt file, even if the test itself fails before 2014-10-13 15:38:17 +04:00
Andrey Breslav 890ef7a8ae Choosing a best fit when getting multiple exact bounds for a type variable 2014-10-13 15:38:16 +04:00
Andrey Breslav e418a763db Fix JetType.equals(): flexible types are not equal to non-flexible ones, when we store them in a HashSet 2014-10-13 15:38:15 +04:00
Andrey Breslav 5be4dda58b Unit obtained through a generic substitution should not be mapped to VOID 2014-10-13 15:38:14 +04:00
Andrey Breslav a737352b5d Assertions when approximating platform types in delegation by expression 2014-10-13 15:38:13 +04:00
Andrey Breslav f1c66fa6b0 Assertions on approximation of platform types to non-null types
- for most expressions (ExpressionCodegen.genQualified)
2014-10-13 15:38:13 +04:00
Andrey Breslav 3d5d3e00e3 Minor. @TestDataFlie added for naviagtion 2014-10-13 15:38:12 +04:00
Andrey Breslav 013dd7261e Extensible specificity expressed as a type capability 2014-10-13 15:38:11 +04:00
Andrey Breslav 0b6a4df4f4 The case of Integer.getInteger("1", 2) fixed (was: OVERLOAD_RESOLUTION_AMBIGUITY) 2014-10-13 15:38:04 +04:00
Andrey Breslav 50aa918791 Failing test for type inference 2014-10-13 15:38:02 +04:00
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 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 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 c3c72fc528 Switching off propagation of types and KotlinSignatures for platform types 2014-10-13 15:37:53 +04:00
Andrey Breslav bdf7e924b5 Rendering flexible types with "!" and optional parts 2014-10-13 15:37:50 +04:00
Andrey Breslav a39d2bc24f Failing test isolated 2014-10-13 15:37:48 +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 a2f8def1e8 Tests for Java method calls 2014-10-13 15:37:44 +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
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
Pavel V. Talanov 8e6618920d Minor: rename test data file 2014-10-10 18:05:36 +04:00
Pavel V. Talanov bb5998048f Test code generation for enum deriving from a trait 2014-10-10 17:43:33 +04:00
Pavel V. Talanov 6eae62c235 Do not report NON_FINAL_MEMBER_IN_FINAL_CLASS on open members in enum classes 2014-10-10 17:43:32 +04:00
Pavel V. Talanov 4136c80358 Do not report ABSTRACT_MEMBER_NOT_IMPLEMENTED on enum classes
Partial fix of KT-3454
2014-10-10 17:43:31 +04:00