Dmitry Petrov
97d5bbf1c2
toDelegateFor: JVM BE implementation
2016-12-12 23:13:59 +03:00
Dmitry Petrov
5ddf8e60e6
Use delegate initializer expression resolution scope for 'toDelegateFor' resolution.
2016-12-12 23:13:57 +03:00
Mikhail Zarechenskiy
97ca51381a
Gradual migration of operator 'mod' to 'rem'
...
- Introduce new 'rem' operator convention
- Prefer 'rem()' to 'mod()' when both are available, even if mod() is a
member, and rem() -- an extension
- Place operator 'rem' under the language feature
2016-12-09 16:43:35 +03:00
Alexey Andreev
cf25e17209
JS: add tests that emulates promises and wraps them in coroutines, using suspend functions outside of controller
2016-12-09 14:56:21 +03:00
Alexey Andreev
060f08a8dd
JS: add support of interceptResume function in coroutine controller
2016-12-09 14:56:20 +03:00
Mikhael Bogdanov
18cb734c58
Do not mangle internal @PublishedApi functions
2016-12-09 11:55:16 +01:00
Mikhael Bogdanov
627dd66ed5
New ieee754 arithmetic, Fix for KT-14651: Floating point comparisons shall operate according to IEEE754
2016-12-09 09:48:46 +01:00
Mikhael Bogdanov
f9b40585cd
Partial fix for KT-14989: Missed null check for platform type
2016-12-09 09:46:38 +01:00
Alexander Udalov
c811c1bea5
Reflection: add KAnnotatedElement.findAnnotation
...
#KT-12250 Fixed
2016-12-07 21:45:24 +03:00
Mikhail Zarechenskiy
57ee8c878c
Regenerate tests
2016-12-06 08:56:45 +03:00
Mikhail Zarechenskiy
0134b8819b
Optimize const vals by inlining them at use sites
...
#KT-11734 Fixed
#KT-13570 Fixed
2016-12-05 22:11:33 +03:00
Mikhail Zarechenskiy
8c1e165f18
Skip property accessors for constants
...
- Inline protected constants from Java at use sites
- Do not create accessors for private constants in Kotlin
#KT-11734 In Progress
2016-12-05 22:10:14 +03:00
Yan Zhulanow
fcafaf5500
Update LightAnalysisModeCodegenTests for Kotlin 1.1
2016-12-05 20:10:32 +03:00
Yan Zhulanow
325245f996
Minor: Rebase to 1.0.6, re-generate tests
2016-12-05 19:57:55 +03:00
Yan Zhulanow
328286ab14
Use box tests to check if the light analysis mode (without analyzing bodies when possible) produces the same result as the complete analysis. See also the next commit in which light analysis mode is applied. Note that no tests were changed.
2016-12-05 19:57:47 +03:00
Alexey Andreev
784fe31053
JS: fix translation of calls with aliased labeled lambda arguments. Fix KT-14999
2016-12-05 09:19:06 +03:00
Denis Zharkov
fcd9ee037e
Support coroutines stack-unwinding in JVM backend
...
#KT-14924 In Progress
2016-11-29 14:14:50 +03:00
Anton Bannykh
159df7964a
JS: bound callable references (KT-13573).
2016-11-28 16:33:58 +03:00
Dmitry Petrov
3d2696c81b
KT-13440 Bound callable references in reflection
2016-11-25 16:11:18 +03:00
Dmitry Petrov
5879e201cd
Proper equality comparison for bound callable references represented as reflection objects
...
(including references to property accessors).
2016-11-25 14:49:24 +03:00
Dmitry Petrov
3dd0c9d1c7
Equality comparison for bound callable references takes into account bound receiver.
...
Fixed KT-14939: use expected receiver type when generating receiver code in get/set methods for bound property references.
Otherwise we have VerifyError for bound receiver 'null' of type 'Nothing?', which is mapped to 'java.lang.Void'.
TODO: proper equality comparison for property accessors ('x::prop.getter', 'x::prop.setter').
2016-11-25 14:49:24 +03:00
Alexey Andreev
40e00a62f5
JS: fix translation of augmented assignment when RHS changes value of LHS
2016-11-23 12:19:03 +03:00
Alexey Andreev
dc8e90809c
JS: coroutines: fix handling of throw statement inside try/catch block when controller has handleSuspend function
2016-11-23 12:19:02 +03:00
Denis Zharkov
01c21e218a
Add special tests for interceptRun support
...
Basically they're built upon basic coroutine tests, but for each of them
different interceptResume implementation are injected
(currently there are 12 of them).
It might be more simple just to generated additional testData, but I see this
more problematic in a sense of further maintenance
Note that all tests add idempotent 'interceptRun' operators,
which just execute given lambda in the current thread
#KT-14891 Fixed
2016-11-22 14:33:40 +03:00
Dmitry Petrov
d665193c20
Type alias constructors for inner classes in expressions ans supertype lists.
2016-11-21 10:25:51 +03:00
Dmitry Petrov
4c47d77a9f
Report error on non-top-level type aliases (unsupported in 1.1).
...
Get rid of nested type aliases in project.
2016-11-21 10:25:51 +03:00
Anton Bannykh
2f0bccfb09
JS: chained reified function calls (KT-12527) fixed
2016-11-18 13:48:16 +03:00
Dmitry Jemerov
a57748f4f4
@JvmOverloads-generated overloads of final methods are also final; test to verify that overloads of deprecated methods are deprecated
2016-11-18 11:05:03 +01:00
Dmitry Jemerov
d3ccbe8172
Generate correct varargs flag for @JvmOverloads-generated methods
...
#KT-14186 Fixed
2016-11-18 11:04:59 +01:00
Dmitry Jemerov
16a133bf5c
Generate default constructor also for private classes when all parameters have default values
...
#KT-14408 Fixed
2016-11-18 11:04:51 +01:00
Dmitry Jemerov
248185943c
Handle @JvmOverloads on inner class constructors correctly
...
#KT-14678 Fixed
2016-11-18 11:04:49 +01:00
Dmitry Petrov
8b99141030
KT-14839 Do not coerce after remapped variable store.
2016-11-18 09:35:31 +03:00
Anton Bannykh
0dc9121a91
JS property accessors inlining (KT-13456)
2016-11-17 15:25:29 +03:00
Anton Bannykh
5b078fb236
JS: augmented assignments and increments (KT-14810) fixed
2016-11-17 13:21:49 +03:00
Alexey Andreev
e2dc7ba37e
JS: coroutines: fixes after code review
2016-11-16 19:29:39 +03:00
Alexey Andreev
d41d09ffc4
JS: add metadata for generated continuation classes to properly implement RTTI
2016-11-16 19:29:37 +03:00
Alexey Andreev
2d315c3df8
JS: coroutines: fix translation of try/finally block without catch
2016-11-16 19:29:35 +03:00
Alexey Andreev
22aea1cf12
JS: fix translation of return statement surrounded by finally block. Temporarily suppress corresponding test case for JVM backend
2016-11-16 19:29:34 +03:00
Alexey Andreev
eae0ceed86
JS: add coroutines tests
2016-11-16 19:29:34 +03:00
Denis Zharkov
6fca46a452
Allow inferring property type from its getter
...
#KT-550 Fixed
2016-11-15 09:30:13 +03:00
Dmitry Petrov
b429f7bc86
KT-14581 Make FixStackAnalyzer tolerant to uninitialized values
2016-11-11 13:30:15 +03:00
Dmitry Petrov
6876f0e4d2
Support type aliases as bare types after 'is/as'.
2016-11-10 18:33:50 +03:00
Mikhael Bogdanov
21f2febf82
Fix for KT-13557: VerifyError with delegated local variable used in object expression
...
#KT-13557 Fixed
2016-11-10 15:12:16 +01:00
Zalim Bashorov
1dedb38481
Regenerate tests
2016-11-09 21:41:12 +03:00
Zalim Bashorov
a1730f98ba
Don't generate test when target backend is not suitable
2016-11-09 21:41:12 +03:00
Denis Zharkov
55508afb8c
Make initial continuation able to be resumed with exception
...
#KT-14719 Fixed
2016-11-09 16:26:32 +03:00
Denis Zharkov
ae70a60a0a
Validate label value of coroutine in case of no suspension points
...
#KT-14718 Fixed
2016-11-09 16:26:32 +03:00
Denis Zharkov
e54b466010
Make fields representing variables in coroutines non-volatile
...
#KT-14636 Fixed
2016-11-09 12:25:31 +03:00
Michael Bogdanov
fd6d4c352c
Special enum function support; Fix for KT-10569: Cannot iterate over values of an enum class when it is used as a generic parameter
...
#KT-10569 Fixed
2016-11-03 14:27:13 +03:00
Michael Bogdanov
0910f166a5
Make default methods for inlineOnly and reified functions package private
2016-10-27 11:03:35 +03:00