Commit Graph

1355 Commits

Author SHA1 Message Date
Alexander Udalov c9bdfd2f07 Generate compareTo() properly
Take into account:
1) resolved call to compareTo (instead of always calling Comparable's method)
2) types of both caller and callee, when primitive, to avoid wrong casting
(instead of always using caller's type)

 #KT-3078 Fixed
2012-11-28 17:45:38 +04:00
Alexander Udalov 9eecf22e15 Booleans are no longer Comparable 2012-11-28 17:41:36 +04:00
Alexander Udalov b23601eefe EA-40964
Don't access elements of an empty array
2012-11-28 17:41:35 +04:00
Evgeny Gerashchenko a773b8426e Removed copyrights from Java test data. 2012-11-28 15:23:55 +04:00
Evgeny Gerashchenko 88bf3d9298 Processing vararg flag of parameter for primitives and wrappers.
#KT-2776 fixed
2012-11-28 15:08:57 +04:00
Evgeny Gerashchenko 6375ea89a0 Supported propagation of upper bounds of method type parameters.
#KT-2776 in progress
2012-11-28 15:08:57 +04:00
Evgeny Gerashchenko 8d7de5d063 Supported checking for changing signature in submethods.
#KT-2776 in progress
2012-11-28 15:08:56 +04:00
Evgeny Gerashchenko dd671313c5 Supported propagation of vararg mark.
#KT-2776 in progress
2012-11-28 15:08:56 +04:00
Evgeny Gerashchenko 4df311366d Added test for propagation of projection kind.
#KT-2776 in progress
2012-11-28 15:08:56 +04:00
Evgeny Gerashchenko 795b3bfbe0 Supported propagation of mutability in parameter position.
#KT-2776 in progress
2012-11-28 15:08:56 +04:00
Evgeny Gerashchenko a937d6be91 First converting classifier, and then process arguments. 2012-11-28 15:08:56 +04:00
Evgeny Gerashchenko 4da03f75f9 Supported simplest case of signatures propagation in value parameter position.
#KT-2776 in progress
2012-11-28 15:08:56 +04:00
Evgeny Gerashchenko 5b6828a7ce Fixed syntax error in @KotlinSignature. 2012-11-28 15:08:55 +04:00
Andrey Breslav 304926005f Proper errors for cases like 'is Map' supported in 'when' 2012-11-27 21:15:37 +04:00
Andrey Breslav dff5f382ab Special diagnostics when no type arguments passed on teh right-hand side of 'is' expression
Example:

if (a is Map) // ERROR: Say 'Map<*, *>' if you don't want to pass type arguments
2012-11-27 16:47:38 +04:00
Alexander Udalov 8e740a3ee4 Fix .put() for some stack values
#KT-3087 Fixed
2012-11-26 16:06:47 +04:00
Andrey Breslav e064a50728 Error renamed 2012-11-24 15:59:17 +04:00
Andrey Breslav c849a0c4e3 Redundant/conflicting projections 2012-11-24 15:59:16 +04:00
Andrey Breslav 12fd07af08 Report an error when variance is specified for a function or property type parameter 2012-11-24 15:59:16 +04:00
Andrey Breslav 889ea107f6 Reflect Kotlin's declaration-site variance in Java signatures 2012-11-24 15:59:15 +04:00
Andrey Breslav d3f9e61db7 Redundant projections removed from test data 2012-11-24 15:59:15 +04:00
Andrey Breslav 649259e715 Type substitutor logic regarding projection composition fixed 2012-11-24 15:59:15 +04:00
Andrey Breslav 7d8bde2ac6 Test data moved out of JetTypeCheckerTest 2012-11-24 14:08:43 +04:00
Pavel V. Talanov 59e74e79c2 Test for KT-2619
Remove outdated check in WhenChecker

# KT-2619 fixed
2012-11-23 17:18:09 +04:00
Pavel V. Talanov 997e26d11e Test for KT-2890
# KT-2890 can't reproduce
2012-11-23 17:17:42 +04:00
Pavel V. Talanov 5fa069bebd Test for KT-2152
# KT-2152 can't reproduce
2012-11-23 17:17:03 +04:00
Alexander Udalov 9d3907ff98 When-statements & correct line numbers 2012-11-22 22:32:21 +04:00
Alexander Udalov aa898725fc Mark line numbers on compile-time constants 2012-11-22 22:32:17 +04:00
Alexander Udalov 0f496eac21 Try-catch-finally statements & correct line numbers 2012-11-22 22:32:14 +04:00
Alexander Udalov ca587513e3 Fix for finally before empty return 2012-11-22 22:32:10 +04:00
Alexander Udalov 99a908e8fe If-then-else statements & correct line numbers
#KT-3036 Fixed
2012-11-22 22:31:58 +04:00
Alexander Udalov 8564c20baa Fix condition generation of empty if 2012-11-22 22:31:53 +04:00
Alexander Udalov af601b5a90 Single-branch if-statements
Single-branch if-expressions are now compiled to statements if the result is
not used

 #KT-3036 In Progress
2012-11-22 22:31:40 +04:00
Pavel V. Talanov a7536e1ae9 Fix ClassCastException introduced in https://github.com/JetBrains/kotlin/commit/8d501bd7f4f1093bcf29165755aff3f2a945c88a 2012-11-21 21:05:30 +04:00
Pavel V. Talanov 7f617de8ac Rework test for KT1119 2012-11-21 19:49:51 +04:00
Pavel V. Talanov c39a4dc57a Change type of enum entry property
Now such properties have types corresponding to enum class not it's own enum entry classes
2012-11-21 19:49:49 +04:00
Pavel V. Talanov c42380dc0b Make enum entry classes have private visibility and properties have public vibility
Tests for backend are broken
2012-11-21 19:49:48 +04:00
Pavel V. Talanov 3ae89dbb1d Test for resolving static members of java enum
Add clarifying note
2012-11-21 19:49:45 +04:00
Pavel V. Talanov b5b6f58b6b Test for resolving inner classes 2012-11-21 19:49:44 +04:00
Pavel V. Talanov 737b246b01 Fix resolve of inner and nested classes in JavaDescriptorResolver 2012-11-21 19:49:44 +04:00
Pavel V. Talanov 96b48aedfc Very simple test for resolving static members of java classes 2012-11-21 19:49:43 +04:00
Evgeny Gerashchenko 19e283a333 Fixed printing multiple errors in Kotlin signatures. 2012-11-21 14:00:51 +04:00
Evgeny Gerashchenko cda953942d Added @ExpectLoadErrors annotations to test data.
Also, fixed syntax error in AddNullabilitySameJavaType.
2012-11-21 14:00:51 +04:00
Svetlana Isakova 39450dd954 resolve function literal expression (as parameter) after resolve call
(therefore only once)
while resolve use FAKE_FUNCTION_TYPE as type
for function literal (which is a subtype/supertype for any function type)
2012-11-20 19:54:55 +04:00
Svetlana Isakova e8f9097127 do not mark error type
if the expression is resolved to namespace
 (EXPRESSION_EXPECTED_NAMESPACE_FOUND error)
2012-11-20 19:54:45 +04:00
Svetlana Isakova d0a6f6252d fixed: DEBUG_INFO_ERROR_ELEMENT should be visible in tests 2012-11-20 19:53:03 +04:00
Svetlana Isakova 993d3a3469 added tests for resolve
(to test performance issues)
2012-11-20 17:59:20 +04:00
Evgeny Gerashchenko 059c6d0673 Added tests for signatures propagation. 2012-11-20 17:20:01 +04:00
Evgeny Gerashchenko d37bdbc07d Saving and loading projection kind of array element type in bytecode. 2012-11-20 17:20:00 +04:00
Evgeny Gerashchenko 21e97b408c Loading java arrays as Array<out T> at method return type position, as well. 2012-11-20 16:16:47 +04:00