Commit Graph

1845 Commits

Author SHA1 Message Date
Natalia.Ukhorskaya b6bdcb303d Resolve java.lang.Class as annotation argument 2013-07-05 19:18:58 +04:00
Natalia.Ukhorskaya bbed2da4dd Resolve annotations in annotation arguments 2013-07-05 19:18:57 +04:00
Natalia.Ukhorskaya 42b0bdc54d Support varargs in annotation arguments 2013-07-05 19:18:56 +04:00
Natalia.Ukhorskaya 98d3b1e113 Resolve arrays in annotation arguments 2013-07-05 19:18:54 +04:00
Natalia.Ukhorskaya dddec9ea3d Resolve enum in annotation arguments 2013-07-05 19:18:53 +04:00
Svetlana Isakova d3e6d2d6cd do not need to check stand-alone class object for class,
when it's on the left hand side of dot it is analyzed in 'getIdForImplicitReceiver' (test added)
2013-07-05 18:03:52 +04:00
Svetlana Isakova cf5c5dba3d KT-3189 Function invoke is called with no reason
prioritize tasks specially for invoke

 #KT-3189 Fixed
 #KT-3190 Fixed
 #KT-3297 Fixed
2013-07-05 18:03:51 +04:00
Svetlana Isakova 9347a48df8 restored priorities
members with invoke have more priority than extensions
2013-07-05 18:03:51 +04:00
Svetlana Isakova 54e1cf0879 removed incorrect code from resolve tests
Resolve tests had a functionality that for primary constructor parameters
 class A(val x: Int, y: Int)
 `$x` was resolved to property descriptor while `x` was resolved to value parameter descriptor.
But it worked incorrect (see tests changes) and was senseless because 'x' in code always resolves to property descriptor.
So it was dropped.
2013-07-05 18:03:51 +04:00
Natalia.Ukhorskaya 2152c22f86 Resolve annotation class constructors before other constructors 2013-07-04 14:38:17 +04:00
Natalia.Ukhorskaya a5662fe906 Resolve annotations arguments in body resolver 2013-07-04 14:38:07 +04:00
Natalia.Ukhorskaya 33ddd713b7 Check annotation constructor parameter types 2013-07-04 14:37:29 +04:00
Evgeny Gerashchenko e017645c97 Reorganized SAM-related test data. 2013-07-02 14:06:09 +04:00
Evgeny Gerashchenko 3e70661a6d Handling null correctly when wrapping function in SAM wrapper 2013-06-27 20:37:27 +04:00
Evgeny Gerashchenko d0c74755e8 Added test which should be enabled after fixing bug in front-end. 2013-06-27 17:09:18 +04:00
Evgeny Gerashchenko 939b658704 Supported SAM adapter in infix calls. 2013-06-27 17:09:17 +04:00
Evgeny Gerashchenko 79185b6775 Added tests with SAM adapters in comparison operators. 2013-06-27 17:09:17 +04:00
Evgeny Gerashchenko 9905e2a719 Added tests with SAM adapters in "invoke" convention. 2013-06-27 17:09:16 +04:00
Evgeny Gerashchenko f35390134f Supported SAM adapters in "in/!in" operators. 2013-06-27 17:09:16 +04:00
Evgeny Gerashchenko 0059db486f Supported SAM adapters in augmented assignment operators. 2013-06-27 17:09:16 +04:00
Evgeny Gerashchenko 036960f117 Supported SAM adapters as plus/minus/etc operators. 2013-06-27 17:09:16 +04:00
Evgeny Gerashchenko b1fb0aafea Supported SAM adapters as get/set operators. 2013-06-27 17:09:16 +04:00
Mikhael Bogdanov 8cd1880805 KT-3722: Write correct generic type information for generated fields
#KT-3722 Fixed
2013-06-27 15:59:48 +04:00
Evgeny Gerashchenko f2458f62c2 Prioritized super constructor calls. 2013-06-26 21:04:11 +04:00
Evgeny Gerashchenko 2cb4c7edbb Test with SAM adapter for method inherited/overriding other from Kotlin. 2013-06-25 20:17:48 +04:00
Evgeny Gerashchenko b4ce39aeb1 Test with calling abstract wrapper which is implemented in Kotlin. 2013-06-25 20:17:46 +04:00
Evgeny Gerashchenko 1f2676becd Ignoring SAM adapters when checking for unimplemented methods or methods to override. 2013-06-25 20:17:45 +04:00
Evgeny Gerashchenko fd7b29ad48 Added tests with SAM adapter overridden in Kotlin class. 2013-06-25 20:17:45 +04:00
Evgeny Gerashchenko f4c3a89408 Added tests with SAM adapter inherited in Kotlin class. 2013-06-25 20:17:44 +04:00
Evgeny Gerashchenko 5c3577dfed Added tests with SAM adapter overridden in Java class. 2013-06-25 20:17:44 +04:00
Evgeny Gerashchenko c77559fac9 Attaching stdlib in load java tests more directly. 2013-06-25 20:17:44 +04:00
Evgeny Gerashchenko 63dbfcb81c Added test with vararg parameter in SAM interface. 2013-06-25 20:17:44 +04:00
Evgeny Gerashchenko 906f900b28 Added test with inherited SAM adapter. 2013-06-25 20:17:43 +04:00
Evgeny Gerashchenko 8e49eb135a Correctly processing inherited methods when checking for SAM interface. 2013-06-25 20:17:43 +04:00
Evgeny Gerashchenko eb7dc87225 Ignore SAM adapters when finding abstract members. 2013-06-25 20:17:42 +04:00
Evgeny Gerashchenko d78f36a780 Minor. Renamed test. 2013-06-25 20:17:42 +04:00
Evgeny Gerashchenko ee9fcff9ca Supported non-literal arguments for SAM adapters. 2013-06-25 20:17:42 +04:00
Evgeny Gerashchenko be02943675 Considering SAM interface FQ name in hash. 2013-06-25 20:17:41 +04:00
Evgeny Gerashchenko 7ef4c8cfa8 Generating SAM wrapper class per source file. 2013-06-25 20:17:41 +04:00
Evgeny Gerashchenko fe77c3edb9 Replaced signed decimal with hex. Eliminated querying canonical path. 2013-06-25 20:16:21 +04:00
Evgeny Gerashchenko cfc99b941a Added test for ambiguous SAM adapters within one class. 2013-06-25 20:16:20 +04:00
Evgeny Gerashchenko 4980dacd33 Supported calls of SAM adapters for constructors. 2013-06-25 20:16:20 +04:00
Evgeny Gerashchenko 5e2c3fcb50 Loading SAM adapters for constructors. 2013-06-25 20:16:20 +04:00
Alexander Udalov 356c32893b Don't use 'iinc' instruction on byte/short/char variables
Android run-time verifier complains when there's any possibility that a
byte/short/char local variable could contain a value not fitting into the
type's limits.
2013-06-25 18:48:28 +04:00
Alexander Udalov 68b0ad53c4 Regression test for KT-24
#KT-24 Obsolete
2013-06-25 18:48:20 +04:00
Alexander Udalov 53cc582040 Minor, use incrementType in for-progression codegen
This doesn't fix anything, just makes it easier to figure out values of what
types are used where. Progression increment is of its own type, which may be
different from asmElementType in case of Byte, Char, Short progressions
2013-06-20 22:23:02 +04:00
Alexander Udalov 8a14b62a23 KT-3574 Assertion error when using ?: in for range
#KT-3574 Fixed

Do not assert that resolvedCall is non-null, since getRangeAsBinaryCall can
return a BinaryCall that doesn't represent a range at all (as specified by the
comment in getRangeAsBinaryCall)
2013-06-20 16:03:00 +04:00
Alexander Udalov ee80e0b8ca Fix loops over progressions near to MAX_VALUE/MIN_VALUE
#KT-492 Fixed

For Byte, Char and Short ranges, promote the type of the loop parameter to int
to avoid overflows. For Int and Long ranges at the end of the loop over a
progression we now check if the new (incremented) value of the loop parameter
is greater than the old value iff increment > 0
2013-06-20 16:03:00 +04:00
Alexander Udalov 33d6347876 Fix loop over a range literal up to MAX_VALUE
#KT-492 In Progress

For Byte, Char and Short explicit casting from Int is removed -- loop parameter
is already stored in an Int anyway. For Int and Long comparison "i < end" at
the beginning of the loop is replaced to "i != end" at the end of the loop + a
special check for an empty loop
2013-06-20 16:02:59 +04:00
Alexander Udalov f1a6d27d35 Minor, prevent infinite loops in range tests 2013-06-20 16:02:59 +04:00