Mark Punzalan
9df2f69f09
[FIR] Disable failing blackbox codegen tests for FIR.
2019-11-19 11:00:09 +03:00
Alexander Udalov
0675b54e11
Minor, add regression test for KT-34766
2019-11-08 12:29:08 +01:00
Steven Schäfer
4878c7967a
JVM: Handle inline class equality in when statement with declaration
...
#KT-34268 Fixed
2019-10-16 19:23:49 +02:00
pyos
06c00f4d9e
Unmute some JVM_IR inlining tests
2019-10-08 17:19:41 +02:00
Steven Schäfer
e25a09f2f9
JVM IR: Fix local delegated properties with inline class types
2019-10-07 17:12:30 +02:00
Steven Schäfer
217f681b6e
JVM IR: Use WrappedClassDescriptor in class builder.
2019-10-02 08:29:22 +02:00
Steven Schäfer
ce3ef4e4d0
Add more tests for inline class equality with nullable arguments
2019-09-18 18:52:58 +02:00
Steven Schäfer
d8646e29b7
Add additional Result api test
2019-09-18 18:52:58 +02:00
Steven Schäfer
b85b2d9af8
Add more tests for inline class equality
2019-09-18 18:52:58 +02:00
Steven Schäfer
cdc5e1347b
JVM: Avoid boxing in inline class equality
2019-09-18 18:52:58 +02:00
Steven Schäfer
f53b28e8a3
JVM: Generate equals-impl0 method for inline classes
2019-09-18 18:52:58 +02:00
Steven Schäfer
2c7da67600
JVM IR: Avoid boxing in inline class equality
2019-09-18 18:52:58 +02:00
Steven Schäfer
b85a475358
JVM IR: Generate equals-impl0 method for inline classes
2019-09-18 18:52:58 +02:00
Steven Schäfer
cdd3f82396
JVM IR: Use correct scope owner in JvmInlineClassLowering
2019-09-18 18:52:58 +02:00
Steven Schäfer
102a3d60e0
IR: Consistently copyAttributes in DeepCopyIrTreeWithSymbols
...
This was missing for IrFunctionReferences, which caused problems when
copying default parameters before CallableReferenceLowering in the
JVM_IR backend.
2019-09-02 19:55:36 +02:00
Mikhail Zarechenskiy
80acc56c10
Don't lost type parameters for members of inline classes in the bytecode
...
#KT-33157 Fixed
2019-08-06 17:53:08 +03:00
Ilya Gorbunov
2e445ebad6
Enable test that uses Array.fill in JS and Native
2019-08-01 19:02:39 +03:00
Steven Schäfer
078ccbf077
JVM_IR: Implement name mangling exceptions for Result class.
2019-07-01 15:49:12 +02:00
Steven Schäfer
d458e4a7b2
JVM_IR: Enable inlining for external declarations with inline class parameters.
2019-07-01 15:49:12 +02:00
Mikhael Bogdanov
9b6fef005f
Simplify LocalDeclarationsLowering, support declaration pop up via separate lower
...
1. Scheme of capturing local variables not touched
2. Lowered local functions are transposed to the nearest class (including local) or file
3. Local classes are also transpose to the nearest class (including local) or file
2019-06-27 08:07:01 +02:00
Steven Schäfer
917ef250cf
Add and (un)mute inline class tests
2019-06-13 12:25:06 +02:00
Svyatoslav Kuzmich
f9c12db3b5
[JS IR] Unmute tests
2019-05-07 21:49:12 +03:00
Dmitry Petrov
bbeb65905e
KT-30780 Fix erased inline class context in class context hierarchy
...
In SourceCompilerForInline we could enter ERASED_INLINE_CLASS context
from containing declaration context. That broke codegen context
hierarchy invariants assumed in accessor generation.
2019-04-05 17:27:04 +03:00
Dmitry Petrov
e1fdf0aa43
KT-29959 fix IR generation for 'd.m = e'
2019-02-19 09:59:42 +03:00
Dmitry Petrov
740d5ec468
Mute some tests in JS_IR after adding basic dynamic expressions support
2019-02-14 16:03:11 +03:00
Svyatoslav Kuzmich
75328f26ea
[JS IR BE] Add missing KJS_WITH_FULL_RUNTIME to some tests
...
+ ranges test generator
2019-01-27 01:14:51 +03:00
Mikhael Bogdanov
f2a51d3b80
Support reflection tests on Android
2019-01-26 08:26:49 +01:00
Alexander Udalov
38fd2b9ed6
Fix reflection-related codegen tests on JDK 9+
...
In JDK 9, Class.simpleName changed behavior for local/anonymous Kotlin
classes (see KT-23072), this is why we now check for both variants of
the name in tests. Also, the format of annotation arguments changed a
little, where float parameters no longer have the trailing "f", and
class literals are rendered with ".class" at the end
2019-01-25 10:14:25 +01:00
Svyatoslav Kuzmich
aa811dcfb3
[JS IR BE] Add KJS_WITH_FULL_RUNTIME directive to compiler tests
2019-01-24 16:14:40 +03:00
Svyatoslav Kuzmich
c92a6f9ca2
[JS IR BE] Unmute inlineClasses tests
2019-01-16 12:11:28 +03:00
Dmitry Petrov
61ebe6a9aa
Minor: add non-intrinsified cases for javaObjectType/javaPrimitiveType
2018-12-25 13:23:48 +03:00
Dmitry Petrov
a4897641d4
Minor: mute some tests in JS/JS_IR
2018-12-24 16:10:35 +03:00
Dmitry Petrov
6768ae02c3
Support inline classes in javaObjectType/javaPrimitiveType
...
#KT-28290 Fixed Target versions 1.3.30
2018-12-24 16:10:31 +03:00
Dmitry Petrov
2f6c4a0472
Use original method signature to call accessor for hidden constructor
...
#KT-28855 Fixed Target versions 1.3.30
2018-12-24 16:09:44 +03:00
Mikhail Zarechenskiy
e509649132
Fix mapping of platform inline class types
...
For the inline class:
```
inline class IC(val x: Int)
```
Type (IC..IC?) should be mapped to the wrapper `IC`
because it can hold object and also because it does so for primitives
#KT-28983 Fixed
2018-12-24 12:32:22 +03:00
Mikhael Bogdanov
3e6f8db975
Specify JVM target backend for test with 'import kotlin.reflect.jvm'
2018-12-21 16:09:09 +01:00
Mikhael Bogdanov
a8a1bfca72
Specify JVM target backend for test with '// File: *.java'
2018-12-21 16:09:06 +01:00
Mikhael Bogdanov
1217d3591b
Specify JVM target backend for test with '::class.java' usage
2018-12-21 16:09:04 +01:00
Mikhail Zarechenskiy
c924a6efe8
Fix unbound class literals for inline classes
...
#KT-28361 Fixed
2018-12-18 11:35:36 +03:00
Dmitry Petrov
8ede477f99
KT-28585 Fix boxing for values of captured vars of inline class type
2018-12-10 14:57:09 +03:00
Dmitry Petrov
45035d3e11
KT-28405 Fix toString for inline classes with underlying arrays
2018-12-10 14:57:09 +03:00
Mikhail Zarechenskiy
b48614df47
Add test for class literals on inline classes
...
#KT-28361 Obsolete
2018-11-22 18:10:41 +03:00
Dmitry Petrov
90da274eaa
KT-28054: Treat inline class constructor accessors specially
2018-11-19 09:42:03 +03:00
Mikhail Zarechenskiy
3a93cab3b6
Mark JVM specific test with TARGET_BACKEND directive
...
This is needed to avoid test failing for Kotlin/Native
2018-11-17 22:55:18 +03:00
Mikhail Zarechenskiy
090d3327c0
Use wrapper class of an inline one as a result for javaClass
...
#KT-28185 Fixed
#KT-28246 Open
2018-11-16 00:55:01 +03:00
Mikhail Zarechenskiy
35fb3ba096
Fix CCE when unboxed inline class receiver is passed to inline function
...
Initial problem is started in `capturedBoundReferenceReceiver` method
where we assume that bound receiver is captured for usual call.
Note that if method is inline then we don't pass actual name reference
receiver, but pass special CAPTURED_RECEIVER_FIELD, which is then
is used to find special instructions during inline and fold several
instructions in `foldFieldAccessChainIfNeeded`.
As a result, we got unboxed reference receiver for inline call, which
caused CCE and to fix it we should box receiver one more time during
inline
#KT-28188 Fixed
2018-11-14 11:21:04 +03:00
Mikhail Zarechenskiy
79159947a5
Coerce last value of delegated expression for inline classes
...
Note that this commit doesn't fix case when some inline class over
`Any` is returned from a lambda, it'll be fixed further as part of the
#KT-27586
#KT-27737 Fixed
2018-11-12 14:21:24 +03:00
Mikhail Zarechenskiy
20ff74a726
Fix mapping for inline classes when JvmSuppressWildcards mode is using
...
#KT-28097 Fixed
2018-11-12 09:36:05 +03:00
Svyatoslav Kuzmich
5ea7673950
[JS IR BE] Mute inline class tests
2018-11-08 15:00:32 +03:00
Svyatoslav Kuzmich
43b4b6eaae
Add more specific fail messages in inline class box tests
2018-11-08 15:00:31 +03:00