Dmitry Petrov
4f6aa50417
Fix == for inline classes with boxes
...
TODO generalize code generating object vs primitive equality
#KT-25914 Fixed
#KT-25981 Fixed
#KT-25983 Fixed
2018-08-10 10:34:57 +03:00
Roman Artemev
6c8e30eb05
Fix test failures
...
* add metadata
* unmute working tests
* mute temporary broken ones
2018-08-09 20:55:50 +03:00
Mikhael Bogdanov
a7d706f693
Unmute jvm ir-tests
2018-08-09 16:30:32 +03:00
Zalim Bashorov
3c765e3625
[JS BE] Support val in when subject
...
#KT-25014 Fixed
2018-08-09 16:22:25 +03:00
Mikhael Bogdanov
bbc5fa4705
Perform InnerClassLowerings after CallableReferenceLowering
2018-08-09 14:22:51 +03:00
Mikhael Bogdanov
357359b1dd
Unmute ir-tests after CR support
2018-08-09 14:22:50 +03:00
Mikhael Bogdanov
06b16a6459
Unmute ir-tests after prev commit
2018-08-09 14:22:46 +03:00
Mikhail Zarechenskiy
be38263fc7
Introduce conversions from signed pure constants to unsigned ones
...
#KT-24717 In Progress
#KT-25996 Open
#KT-25997 Open
2018-08-09 09:47:48 +03:00
Roman Artemev
36a99da820
Break/finally chain in suspend function test fix & workaround
2018-08-08 19:11:17 +03:00
Roman Artemev
efec82c0eb
Update test data
...
* add new tests for coroutines
* add copy of some tests without dependency on stdlib
2018-08-08 18:33:41 +03:00
Roman Artemev
c62e4b4fcf
[JS IR BE] Support coroutines
...
* Move FinallyBlockLowering to common part
* Fix catching of dynamic exception
* Fix bridges for suspend functions
* Disable explicit cast to Unit
* Run lowering per module
* Update some test data
2018-08-08 18:33:39 +03:00
Svyatoslav Kuzmich
439350d41a
[JS IR BE] Cast types in bridges
2018-08-07 14:41:50 +03:00
Mikhail Zarechenskiy
1497c19dc9
Do not generate useless methods inside wrapper for inline class
...
Fix for test data (inlineFunctionInsideInlineClassesBox.kt) is needed
to avoid check about "no inline functions".
This check has two steps: first, names of inline functions from
the metadata are loaded, then these names are checked that they are
presented for physical methods in the classfile.
Because now there are no physical methods in the classfile, we can't pass
the second check, therefore this fix is needed.
#KT-24872 Fixed
2018-08-07 12:15:46 +03:00
Mikhail Zarechenskiy
1972387022
Fix test data after 6d4d244c28
2018-08-06 17:45:24 +03:00
Mikhail Zarechenskiy
55e7def3c1
Fix coercion for stack value property in case of inline classes
...
#KT-25771 Fixed
2018-08-06 17:45:20 +03:00
Mikhael Bogdanov
ddf6bdffcf
Move jvm ir tests to jvm ones
2018-08-06 13:57:43 +03:00
Mikhail Zarechenskiy
6d4d244c28
Generate function from Any for inline classes same as for data classes
...
#KT-24873 Fixed
#KT-25293 Fixed
#KT-25299 Fixed
2018-08-06 10:56:01 +03:00
Mikhail Zarechenskiy
043ce1cb27
Support secondary constructors for inline classes
...
#KT-25614 Fixed
#KT-25246 Fixed
KT-25599 Will be fixed after recompilation of unsigned classes
2018-08-06 10:55:57 +03:00
Dmitry Petrov
1bfb75a51b
Generate intrinsic-based numeric comparison only for FP types
2018-08-03 09:34:59 +03:00
Ilmir Usmanov
0c867b4804
Disable callable references to suspend functions in 1.2
...
#KT-25604: Fixed
2018-08-02 18:55:49 +03:00
Mikhael Bogdanov
a8b9393e79
Fix test data
2018-08-02 15:51:16 +02:00
Mikhael Bogdanov
6c41f078a6
Mute jvm ir box tests
2018-08-02 13:19:28 +02:00
Mikhael Bogdanov
34a12cb87c
Mute 'boxAgainstJava' tests
2018-08-02 13:19:27 +02:00
Mikhael Bogdanov
6c65507f29
Mute inline tests
2018-08-02 13:19:25 +02:00
Mikhael Bogdanov
9ccb25789b
Unmute jvm-ir inline tests
2018-08-02 13:19:24 +02:00
Mikhael Bogdanov
0ddbe12e62
Use common assertion in ir-tests and proper arithmetic flag
2018-08-02 10:38:06 +02:00
Mikhael Bogdanov
cb53e86183
Move ir box test under "box/ir"
2018-08-02 09:52:48 +02:00
Alexander Udalov
0c8b231fde
Add tests on coercion to Unit for callable references
...
#KT-11723
2018-08-01 16:26:07 +02:00
Alexander Udalov
9babd90999
Support default arguments and varargs for callable references
...
#KT-8834
#KT-19869
#KT-25514
2018-08-01 16:26:06 +02:00
Mikhael Bogdanov
2884d728fd
Mute/unmute jvm_ir tests
2018-08-01 12:29:24 +02:00
Roman Artemev
c9b7db646c
Temporary mute test with issue between coroutines and crossinline
2018-08-01 10:56:08 +03:00
Roman Artemev
dac1fac957
Unmute working test
2018-08-01 10:55:21 +03:00
Zalim Bashorov
2fb286e39c
[JS IR BE] Update tests
2018-07-31 11:28:39 +03:00
Dmitry Petrov
566b5856ec
Constructor call normalization mode depends on language version
2018-07-27 09:52:29 +03:00
Roman Artemev
14b1f0ef6a
Fix issue #KT-24475
...
* count coroutine metadata references during RemoveUnusedImport pass in JsInliner
* add cases to test usage of stdlib symbols in inlined functions
2018-07-26 19:23:06 +03:00
Ilmir Usmanov
82f64b9b14
Generate LVT entry for continuation
...
#KT-25688: Fixed
2018-07-26 16:12:54 +03:00
Roman Artemev
dec307799a
Fix infinite loop in suspend function in case of return from finally [#KT-21961]
...
* add test
2018-07-25 23:04:57 +03:00
Ilmir Usmanov
dc3b230b55
Do not generate continuation's setLabel and getLabel methods in 1.3
...
Also, do not call them.
#KT-25521: Fixed
2018-07-25 15:35:18 +03:00
Zalim Bashorov
a6cd552a71
[JS IR BE] Implement Long.rangeTo and unmute tests
2018-07-25 14:51:08 +03:00
Roman Artemev
eb420a1e0f
Fix [#KT-23921]
...
* make name collector in inliner process handle JsCatch
* visit JsParameter during live analyser in coroutine transformer
2018-07-25 14:22:11 +03:00
Roman Artemev
5241b37ad9
Fix fallthrough in suspendable switch [#KT-22694, #KT-23687]
...
* do not explicitly put break for each case
* add test for related cases
2018-07-24 20:19:35 +03:00
Roman Artemev
0c6256d003
Fix initialization order
...
* put inheritance code in the beginning
* put top-level initializer after any declaration
2018-07-24 20:16:39 +03:00
Mikhail Zarechenskiy
f9b19c6286
[NI] Approximate types during type translation for IR
2018-07-24 20:14:17 +03:00
Alexander Udalov
20ddbc9698
Do not generate generic signature for SAM wrapper methods
...
#KT-23870 Fixed
2018-07-24 13:35:47 +02:00
Svyatoslav Kuzmich
625983b28a
[JS IR BE] Enum class lowering
2018-07-23 15:08:18 +03:00
Dmitry Petrov
86e863951e
Compare FP numbers properly when determining if field initializer needed
2018-07-20 17:53:25 +03:00
Mikhail Zarechenskiy
045058c29a
Support inline class values inside string templates through boxing
...
#KT-25626 Fixed
#KT-25613 Open
2018-07-20 13:58:31 +03:00
Mikhail Zarechenskiy
9aa4247065
Do not box primitives in a single-entry string template expression
2018-07-20 13:46:11 +03:00
Mikhail Zarechenskiy
ec9d8e580e
Leave boxing for compareTo/areEqual methods for inline classes
...
Inline classes can override methods and thus introduce side effects
2018-07-20 11:51:34 +03:00
Dmitry Petrov
acf0bb349c
Update testData for restricted expression annotations retention
2018-07-20 10:39:51 +03:00