Mikhael Bogdanov
e20093d762
Support @JvmStatic and @JvmOverload in annotation companion
2020-11-02 08:27:49 +01:00
Mikhael Bogdanov
7ec2d036ae
Don't generate final modifier on static interface methods produced by @JvmStatic+@JvmOverloads from interface companion
...
#KT-35716 Fixed
2020-11-02 08:27:49 +01:00
Mark Punzalan
f55ff8eb1b
[FIR] Capture receiver for pre/postfix dec/increment of qualified access
...
This prevents double-evaluation of the receiver expression, which may
have side-effects. E.g.: a.b++
2020-09-22 10:20:46 +03:00
Jinseong Jeon
bff36e0199
FIR2IR: convert annotations on FirTypeRef
2020-07-30 11:25:36 +03:00
Jinseong Jeon
13ef97e51e
FIR2IR: set proper visibility of backing fields with @JvmField
2020-07-17 12:42:11 +03:00
simon.ogorodnik
ac1769a474
[FIR2IR] Support SAM constructors
2020-05-25 21:24:39 +03:00
Mikhail Glukhikh
f3e2dbf360
[FIR2IR] Add conversion of function annotations
2020-05-08 17:30:19 +03:00
Mikhail Glukhikh
d7460d47de
[FIR] Generate dispatch & extension receivers for variable assignments
2020-04-03 17:21:21 +03:00
Jinseong Jeon
de0c9a5c73
FIR: use dispatch receiver of the enclosing function if any.
2020-03-25 08:27:21 +03:00
Jinseong Jeon
e46a4246d2
FIR: regard property accessor without body as FirDefaultPropertyAccessor
2020-03-23 15:12:54 +03:00
Mikhail Glukhikh
ed6c9e67a1
FIR2IR: convert qualifiers to companion objects, if any
2020-03-10 15:19:34 +03:00
Dmitriy Novozhilov
3742586209
[FIR-TEST] Unmute some blackbox tests
2020-03-05 16:48:48 +03:00
Mikhail Glukhikh
0fee8a6946
FIR2IR: cache functions and their parents properly
2020-03-04 16:55:33 +03:00
Georgy Bronnikov
182e1c1b3b
JVM_IR: Remove buggy special case accessor code from JvmStaticAnnotationLowering
...
General purpose accessors in SyntheticAnnotationLowering are sufficient.
2020-02-09 13:12:33 +03:00
Juan Chen
573188bdc4
[FIR2IR]: fix translation of this references in instance methods
...
Currently FirThisReceiverExpression of instance methods are translated
to references of the class' thisReceiver,
not the method's dispatch receiver,
which causes problems with IrFrameMap::typeOf,
as the class' thisReceiver is not in the typeMap.
This commit translates non-qualified "this" references of
instance methods to references of the methods' dispatch receiver.
2020-01-10 10:43:07 +03:00
Mikhail Glukhikh
15f373a864
FIR2IR: support object receiver case (this fixes 24 black box tests)
2019-12-27 13:46:05 +03:00
Juan Chen
4c04ad2371
FIR: Add bindings for dispatch receiver parameters
...
Before this commit, such descriptors have null owners, which causes problems when the getter of the owner property is called.
2019-12-27 10:13:44 +03:00
Mark Punzalan
9df2f69f09
[FIR] Disable failing blackbox codegen tests for FIR.
2019-11-19 11:00:09 +03:00
Georgy Bronnikov
4920d71d70
JVM_IR: set dispatchReceiverParameter of imported JvmStatic object methods to null
2019-10-01 20:52:56 +03:00
pyos
b74586f84e
JVM_IR: implement single-abstract-method conversions
2019-04-04 09:45:00 +02:00
Mikhael Bogdanov
02d9c526e2
Proper resort variables on inlining lowered ir closures
...
Original problem is that lowered ir closures doesn't meet inliner expectations
about captured variable position in inlining method.
E.g.: Call 'foo(valueParam) { capturedParam }' to
inline function 'foo' with declaration
inline fun foo(valueParam: Foo, inlineParamWithCaptured: Bar.() ->) ....
is reorganized through inlining to equivalent call foo(valueParam, capturedParam1, cp2 ...).
But lowered closure for lambda parameter has totally different parameters order:
fun loweredLambda$x(extensionReceiver, captured1, cp2..., valueParam1, vp2...)
So before inlining lowered closure should be transformed to
fun loweredLambda$x(extensionReceiver, valueParam1, vp2..., captured1, cp2..)
#KT-28547 Fixed
2019-01-03 07:57:36 +01:00
Mikhael Bogdanov
f4e532e449
Specify JVM target backend for test with '@JvmXXX' annotations
2018-12-21 16:09:07 +01:00
Mikhael Bogdanov
a8a1bfca72
Specify JVM target backend for test with '// File: *.java'
2018-12-21 16:09:06 +01:00
Mikhael Bogdanov
3ef06c1e44
Specify JVM target backend for test with 'import java...'
2018-12-21 16:09:06 +01:00
Georgy Bronnikov
605afbae90
Move fields and init blocks of companions to their owners
2018-10-17 21:15:28 +03:00
Mikhael Bogdanov
357359b1dd
Unmute ir-tests after CR support
2018-08-09 14:22:50 +03:00
Georgy Bronnikov
f85030b1e6
Remove a file added by mistake
2018-07-13 16:16:39 +03:00
Georgy Bronnikov
8478c73434
Make @JvmStatic work on JVM_IR
2018-07-13 13:43:02 +03:00
Mikhael Bogdanov
e149cbe852
Mute failed jvm ir tests
2018-06-28 12:26:41 +02:00
Anton Bannykh
96355e2732
JS IR: mute codegen box tests automatically
2018-06-09 19:15:38 +03:00
Mikhael Bogdanov
ad48099ca6
Move java 8 tests to java8 folder
2018-02-06 10:32:14 +01:00
Mikhael Bogdanov
cc346aef64
Support @JvmStatic for interface companion objects in backend
2018-01-26 10:09:21 +01:00
Dmitry Petrov
15ac471626
Treat accessors to JvmStatic methods as having no dispatch receiver
...
#KT-21246 Fixed
2017-11-14 09:59:16 +03:00
Ilya Matveev
a5e4e0284e
Mute some box tests for native backend
...
This patch mutes the following test categories:
* Tests with java dependencies (System class,
java stdlib, jvm-oriented annotations etc).
* Coroutines tests.
* Reflection tests.
* Tests with an inheritance from the standard
collections.
2017-03-10 19:59:37 +03:00
Denis Zharkov
b989bfce59
Fix VerifyError with @JvmStatic annotated getter
...
The problem was that for property getter 'context.getContextDescriptor()'
references the containing property, while 'context.getFunctionDescriptor()'
the accessor itself
#KT-15594 Fixed
2017-02-10 16:05:15 +03:00
Zalim Bashorov
596f3364c6
Automatically mute failed tests
2016-11-09 21:41:12 +03:00
Denis Zharkov
194853b5c2
Fix backend issue related to JvmStatic val with accessor
...
Do not treat accessors to JvmStatic properties as having dispatch receiver
#KT-11585 Fixed
2016-10-11 12:22:03 +03:00
Michael Bogdanov
1a5bf33190
Fix for KT-11034: Private set with @JvmStatic lateinit var doesn't compile
...
#KT-11034 Fixed
2016-03-10 10:17:27 +03:00
Alexander Udalov
f8dfaf4599
Merge boxWithJava testData into box, delete BoxWithJava test
2016-03-09 10:25:38 +03:00
Alexander Udalov
06a67e6602
Merge boxWithStdlib testData into box, delete BoxWithStdlib test
2016-03-09 10:25:38 +03:00