Denis Zharkov
bda1ef8d57
Do not run bytecode optimization passes for in bodyless modes
...
FunctionsFromAnyGeneratorImpl has been changed because previously
it didn't satisfy annotation visitor contract but it wasn't important
for MethodNode
2018-10-16 11:16:53 +03:00
Denis Zharkov
26da0b9e7e
Do not call default constructor of SourceInterpreter in subclasses
...
It became illegal since asm-6.x
See https://gitlab.ow2.org/asm/asm/blob/c72a86bd5f48a308537695213d3a23ac35a57d55/asm-analysis/src/main/java/org/objectweb/asm/tree/analysis/SourceInterpreter.java#L56
#KT-27572 Fixed
2018-10-16 11:16:53 +03:00
Georgy Bronnikov
4942ed5e7a
Clean up backend.common.ir.IrUtils.kt
2018-10-15 21:52:50 +03:00
Georgy Bronnikov
376eef05f5
JVM_IR. Accessor lowering
2018-10-15 21:52:50 +03:00
Georgy Bronnikov
a23aae590e
JVM_IR. Avoid unbound symbols and declarations without parent
2018-10-15 21:52:50 +03:00
Pavel Punegov
8ea8acc7f7
Set target backend to JVM for tests that have @JvmStatic annotations
2018-10-15 19:25:03 +03:00
Pavel Punegov
eb6580acdd
Return native ignore back.
...
K/N doesn't initialize companion objects if no methods were called from them
2018-10-15 19:25:02 +03:00
Pavel Punegov
d9a8a00069
Make tests that use jvm-annotations be targeted to jvm backend
2018-10-15 19:25:02 +03:00
Pavel Punegov
aab28e6cc7
Revert "Make coroutines test JVM-only"
...
This reverts commit 17b7bbce
2018-10-15 13:52:16 +03:00
Dmitry Petrov
b6be72bb11
Add more tests for inline classes
...
#KT-27416
#KT-27513
2018-10-15 12:21:14 +03:00
Dmitry Petrov
0fd68d29f4
Support @JvmStatic in inline class companion object
...
#KT-27107
2018-10-15 12:21:14 +03:00
Dmitry Petrov
5304754e88
Generate specialized 'toString' for inline classes when possible
...
#KT-25613
2018-10-15 12:21:14 +03:00
Dmitry Petrov
f68ce4b35b
Support default parameter values for inline class constructors and funs
...
#KT-26908
#KT-26554
Move default parameter value tests to separate directory
2018-10-15 12:21:14 +03:00
Dmitry Petrov
8ce1d09f8a
Fix inline class coercion in default parameter values
...
#KT-27358
2018-10-15 12:21:14 +03:00
Dmitry Savvinov
99e1d4ab45
Check for the presence of dispatch receiver too in isEqualsDescriptor()
...
Otherwise, top-level function with the name 'equals' and suitable
signature will be (erroneously) treated as true 'equals' invocation,
leading to further exception (see EA-126602)
2018-10-15 10:54:39 +03:00
Natalia Selezneva
c4aab8340b
Do not store script definition in psiFile
...
This may cause problems when definitions are reordered or switched off
KT-27375 Fixed
2018-10-15 09:43:49 +03:00
Svyatoslav Kuzmich
02277d0293
[JS IR BE] ExpectDeclarationsRemoving lowering
...
* Copy lowering from konan to common
* Keep actual default parameters when both actual and expect default parameters are present
* Run lowering before inline in JS IR BE to fix
box/multiplatform/defaultArguments/inlineFunctionWithDefaultLambda.kt
2018-10-15 00:03:46 +03:00
Svyatoslav Kuzmich
4c38d55f21
[JS IR BE] Unmute tests
2018-10-15 00:03:45 +03:00
Svyatoslav Kuzmich
5a057f8ca6
[JS IR BE] Support 'is Number' and 'is Comparable<>'
2018-10-14 23:53:03 +03:00
Svyatoslav Kuzmich
783f27c554
[JS IR BE] Support Number.to(Byte|Short|Int|Float|Double|Long)
2018-10-14 23:53:03 +03:00
Svyatoslav Kuzmich
bad9534abd
[JS IR BE] Support integer operation overflow
2018-10-14 23:53:02 +03:00
Zalim Bashorov
8013a56286
[JS IR BE] process empty loops correctly in BlockDecomposerLowering
2018-10-13 01:51:59 +03:00
Zalim Bashorov
6d592ae66b
Unmute tests
2018-10-13 01:51:59 +03:00
Zalim Bashorov
dfc3bda3b4
Minor: remove forgotten "TODO"
2018-10-13 01:51:58 +03:00
Nikolay Krasko
e3d930a6a1
Build maven-like stdlib sources artifacts during dist
...
This is needed to emulate gradle and maven like projects in plugin tests.
2018-10-12 18:50:04 +03:00
Nikolay Krasko
ac2bc22f54
Use information from stub for contracts presence
2018-10-12 18:21:39 +03:00
victor.petukhov
b86211b434
Add spec tests for integer literals
2018-10-12 17:31:24 +03:00
Natalia Selezneva
c73885142a
Do not access stubs in dumb mode finding script definition
2018-10-12 15:27:45 +03:00
Natalia Selezneva
daa6e9b562
Minor: reformat and rearrange code
2018-10-12 15:27:45 +03:00
Ilmir Usmanov
a5bcd3495e
Simplify tail-call optimisation check
...
Check, that all suspension points are immediately followed by ARETURN
and do not check that all these ARETURNs are immediately preceded by
suspension points.
#KT-27190 Fixed
2018-10-12 15:10:12 +03:00
Vyacheslav Gerasimov
d11fbac511
Build: Use cache-redirector.jetbrains.com to prevent connection timeouts
2018-10-12 14:57:37 +03:00
Ilmir Usmanov
e21159c28f
Report suspension point in monitor error on crossinline lambdas
...
#KT-27258: Fixed
2018-10-12 14:21:42 +03:00
Mikhail Zarechenskiy
b7d7d1eb01
Fix inline class type coercion in == with generic call
...
#KT-27393 Fixed
2018-10-12 12:50:49 +03:00
Mikhail Zarechenskiy
0201694f84
Propagate KotlinType into create method for coroutines
...
#KT-27526 Fixed
2018-10-12 12:50:47 +03:00
Mikhail Zarechenskiy
a8abd8cceb
Fix boxing/unboxing for generic functions on index expressions
...
Unsubstituted type should be used for coercion to box value of
inline class type if it's needed. For the substituted value it's not
known if it was a generic parameter or not.
#KT-27502 Fixed
2018-10-12 11:58:56 +03:00
Zalim Bashorov
9041d717a2
[JS IR BE] add IrType.asString that return stable string representation to use it for stringified signatures
...
`IrType.render` was used before, but it's written for debugging purpose and generates unstable string representation.
2018-10-11 14:54:55 +03:00
Ilmir Usmanov
c4d0b5493a
Fix NPE in suspension point in monitor call checker
...
#KT-27484 Fixed
2018-10-11 14:38:34 +03:00
Denis Zharkov
36c73eedbf
Minor. Move DslMarkerOnFunctionTypeReceiver entry closer to 1.4 features
2018-10-11 10:23:02 +03:00
Denis Zharkov
75dc8ce1c3
Fix exception in light classes when type alias in MultifileClass
...
#KT-27355 Fixed
2018-10-11 10:22:09 +03:00
Svyatoslav Kuzmich
7074909230
[JS IR BE] Support enumValues<T>() and enumValueOf<T>(name)
2018-10-10 19:35:17 +03:00
Svyatoslav Kuzmich
bdc3daf972
[JS IR BE] Support Enum::values
2018-10-10 19:35:17 +03:00
Pavel Punegov
17b7bbce8c
Make coroutines test JVM-only
2018-10-10 19:04:31 +03:00
Pavel Punegov
3dd16da315
Fix vararg test for native that assigns named argument.
...
Ignore test that uses nested class in enum in native
2018-10-10 19:03:56 +03:00
Pavel Punegov
dd1c9fa9f0
Native: Ignore tests that use reflection not implemented in native
2018-10-10 19:01:35 +03:00
Pavel Punegov
82b59c5044
Native: Ignore tests that use jvm or full reflect
2018-10-10 19:00:50 +03:00
Svyatoslav Kuzmich
89f7ced0d4
[JS IR BE] Unmute tests
2018-10-10 17:27:37 +03:00
Svyatoslav Kuzmich
e73ff16b35
[JS IR BE] Refactor: split IntrinsicifyCallsLowering into multiple classes
2018-10-10 17:27:37 +03:00
Svyatoslav Kuzmich
749556f565
[JS IR BE] Support Long coercion
2018-10-10 17:27:37 +03:00
Svyatoslav Kuzmich
c7bde6a5e6
[JS IR BE] Fix runtime compareTo(Number, Long)
2018-10-10 17:27:36 +03:00
Anton Bannykh
44d56cb278
JS: fix val with backing field initialization in secondary constructors
...
This change reverts the AssignmentTranslator logic to a previous state
of "if we assign to a val, tranlate to backing field". Previously a
check whether or not we are inside of a constructor was added. The
check didn't detect secondary constructors, hence initializing of
val's with backing field started to work incorrectly.
The check itself was added in an attempt to prevent augmented assignment
operators to reference the backing field. The check seems to have been
wrong, because an augmented assignment could happen inside a construcotr.
A more correct fix was added later. It seems that it is safe now to
revert the logic back and rely on the frontend to only allow assignment
to a val property during initilization.
2018-10-10 17:25:55 +03:00