Mark Punzalan
7efc29df7e
Split up generation of test data for codegen/box/ranges into signed and
...
unsigned ranges/progressions.
The tests pass in JVM_IR for signed, but fail for unsigned due to
inlining being broken. We can disable the JVM_IR tests for unsigned,
while keeping them enabled for signed, to get better test coverage in
the interim until inlining is fixed.
2019-05-14 14:26:15 +02:00
pyos
40696f65c3
JVM_IR: generate WhenMappings for enum ordinal subjects
2019-05-13 19:09:07 +03:00
pyos
fb194e982e
Copy EnumWhenLowering from Kotlin/Native
2019-05-13 19:09:07 +03:00
Steven Schäfer
1e08b3c7da
Simplify findLocalIndex in ExpressionCodegen
2019-05-13 18:34:00 +03:00
Steven Schäfer
b04dc69157
Access this through the dispatch parameter when available
2019-05-13 18:34:00 +03:00
Steven Schäfer
9b9236efcb
Fix parameter indices in SyntheticAccessorLowering
2019-05-13 18:34:00 +03:00
Roman Artemev
db5396c1c2
[JS IR BE] Fix main function detector
...
- Do not consider extension functions as main candidate
2019-05-13 15:26:09 +03:00
Svyatoslav Kuzmich
bd3953c09f
[JS IR BE] Turn on strict mode in generated code.
...
Fix multiple import of the same javascript module.
2019-05-13 13:41:11 +03:00
Svyatoslav Kuzmich
0f90aa5f80
[JS IR BE] BridgeConstruction: Fix init order of receivers and type parameters
2019-05-13 13:40:30 +03:00
Mikhail Glukhikh
d517276a06
Apply "unnamed boolean literal" to idea & J2K + other style fixes
2019-05-13 12:33:46 +03:00
Igor Yakovlev
bb071263b0
Fix JVMStatic annotation for UL-properties
2019-05-13 11:21:12 +03:00
Igor Yakovlev
5da6d9d438
Update license agreement
2019-05-13 11:21:12 +03:00
Igor Yakovlev
48136d64cf
KtUltraLightMethod now use null for MemberIndex
2019-05-13 11:21:12 +03:00
Igor Yakovlev
b485819a30
Move refactorings, fix annotations and fix cls-delegate tests
2019-05-13 11:21:11 +03:00
Igor Yakovlev
8e103b6559
Fix origin for TypeParameter + refactoring
2019-05-13 11:21:11 +03:00
Igor Yakovlev
f20ba9ddc2
Fix rename refactoring for UltraLightParameters
2019-05-13 11:21:11 +03:00
Igor Yakovlev
ab9e8c2d3a
Add @get/@set JvmName support for properties
2019-05-13 11:21:11 +03:00
Denis Zharkov
1b5f72bd59
Enable ultra-light classes by default
...
^KT-29267 Fixed
2019-05-13 11:21:11 +03:00
Mads Ager
e8fbd42f7c
JVM_IR: Support access flag jvm annotations on fields and methods.
2019-05-13 08:34:52 +02:00
Jiaxiang Chen
0020e953e1
Change order of line number geneartion for function call, and also force
...
line number generation after visiting inline functions.
2019-05-11 13:38:24 +02:00
max-kammerer
eeb1c0a0fc
Merge pull request #2321 from neetopia/irLineNumberTestFix
...
Fix compareCustom function in IrLineNumberTest class, to exclude comment
2019-05-10 11:40:19 +02:00
Steven Schäfer
570ee38256
Implement special cases for the hashCode intrinsic in JVM_IR
2019-05-10 09:40:57 +02:00
Ting-Yuan Huang
1c3b895fc0
Generate accessors for super calls if necessary
...
Current implementation of calls with super qualifier relies on
invokespecial, which has some more constraints than regular virtual
invocations. When those constraints aren't met, accessors are needed.
2019-05-10 08:57:37 +02:00
Mads Ager
99e7ae6b3f
Fix typo in expectation files for command line tests.
...
The expectations contained ';' instead of ':' which makes two
CLI tests fail.
2019-05-09 16:57:29 +02:00
pyos
4d9661890a
Test reification of type parameters into Array(size, init)
...
(cherry picked from commit 6daa61ef5f )
2019-05-09 11:54:43 +02:00
pyos
3171129c3c
JS_IR: remove traces of @kotlin.native.internal.InlineConstructor
...
This is a hack used by Kotlin/Native purely to implement Array
constructors. Since there's a lowering that does that, and inline
constructors are not part of the language (although they theoretically
could be), the code is redundant.
(cherry picked from commit a74fae246b )
2019-05-09 11:54:35 +02:00
pyos
08da078842
JVM_IR: implement IrReturnableBlock codegen
...
(cherry picked from commit 530ad368fe )
2019-05-09 11:54:26 +02:00
pyos
683f8417d3
Add a common JVM/JS lowering for Array(size, function)
...
and remove the hack from JVM_IR codegen that replaces this call with
hardcoded inline function bytecode.
(cherry picked from commit 4a29e3cfcf )
2019-05-09 11:54:18 +02:00
max-kammerer
e74e0ea013
Revert "Add a common JVM/JS lowering for Array(size, function)"
...
This reverts commit 4a29e3cfcf .
2019-05-09 11:49:34 +02:00
max-kammerer
856a1649c6
Revert "JVM_IR: implement IrReturnableBlock codegen"
...
This reverts commit 530ad368fe .
2019-05-09 11:49:34 +02:00
max-kammerer
05d352769b
Revert "JS_IR: remove traces of @kotlin.native.internal.InlineConstructor"
...
This reverts commit a74fae246b .
2019-05-09 11:49:34 +02:00
max-kammerer
8560459dc6
Revert "Test reification of type parameters into Array(size, init)"
...
This reverts commit 6daa61ef5f .
2019-05-09 11:49:34 +02:00
pyos
6daa61ef5f
Test reification of type parameters into Array(size, init)
2019-05-09 08:03:18 +02:00
pyos
a74fae246b
JS_IR: remove traces of @kotlin.native.internal.InlineConstructor
...
This is a hack used by Kotlin/Native purely to implement Array
constructors. Since there's a lowering that does that, and inline
constructors are not part of the language (although they theoretically
could be), the code is redundant.
2019-05-09 08:03:18 +02:00
pyos
530ad368fe
JVM_IR: implement IrReturnableBlock codegen
2019-05-09 08:03:18 +02:00
pyos
4a29e3cfcf
Add a common JVM/JS lowering for Array(size, function)
...
and remove the hack from JVM_IR codegen that replaces this call with
hardcoded inline function bytecode.
2019-05-09 08:03:18 +02:00
Svyatoslav Kuzmich
f4bb1354c9
[JS IR BE] Support friend modules
2019-05-08 23:34:00 +03:00
Jiaxiang Chen
2c5ebf3ab2
Fix compareCustom function in IrLineNumberTest class, to exclude comment
...
lines that are not related for line number verification.
Unmute a test case should have been unmuted but shadowed by this bug.
2019-05-08 12:53:45 -07:00
Mikhail Zarechenskiy
516fccbe7b
[NI] Complete call if return type contains only "good" type variables
2019-05-08 12:19:52 +03:00
Mikhail Zarechenskiy
61bd3a8d03
[NI] Complete call if return type has proper lower or equal constraints
...
There was a silly bug: equal constraint is actually a lower and an upper
constraint, but we checked only presence of lower constraints.
Test is important as here we have one equal constraint and should
complete inner call `foo<Int>()` without propagating it to `bar` to
avoid using `NoInfer` annotation multiple times
2019-05-08 12:19:50 +03:00
Mikhail Zarechenskiy
6c9394f0b2
[NI] Use original implicit receiver for DSL violation check
...
There is an inconsistency between old and new inference for storing
receivers of resolved calls. In new inference, for captured types,
receiver will be changed and to preserve behavior of the old inference,
we use original one during important checks.
This is more a workaround than a solution and should be revisited.
#KT-31356 Fixed
#KT-29948 Fixed
#KT-31360 Fixed
2019-05-08 12:19:48 +03:00
Mikhail Zarechenskiy
c283e15425
[NI] Preserve annotations during type substitution
...
#KT-31346 Fixed
2019-05-08 11:26:20 +03:00
Svyatoslav Kuzmich
f9c12db3b5
[JS IR] Unmute tests
2019-05-07 21:49:12 +03:00
Svyatoslav Kuzmich
e3bcabeae3
[JS IR] stdlib: Fix bugs in Long.toString(radix)
2019-05-07 21:49:12 +03:00
Nikolay Krasko
9b9bfe7ba3
Don't produce references for Kotlin block
2019-05-07 16:12:24 +03:00
Nikolay Krasko
78200dd38e
Get Kotlin references through Kotlin contributors only (KT-31129)
...
Speed up getting references and protect Kotlin from slow
references contributors.
#KT-31129 Fixed
2019-05-07 16:12:24 +03:00
Svyatoslav Kuzmich
0de1242f68
[JS IR BE] Unmute passed tests
2019-05-06 19:34:25 +03:00
Svyatoslav Kuzmich
331625a9bb
[JS IR BE] Lower kotlin.js.Json external interface methods
2019-05-06 19:34:25 +03:00
Svyatoslav Kuzmich
d6c9375196
[JS IR BE] Preserve package fqName when moving external declarations out
...
Create separate package fragment for each fqName of external declaration package
2019-05-06 19:34:25 +03:00
Svyatoslav Kuzmich
2741ecaaad
[JS IR BE] Materialize Unit object during upcasts in AutoBoxingTransformer
2019-05-06 19:34:25 +03:00