Dmitry Petrov
eebb071ae9
KT-34509 Properly unwrap callable reference descriptor
...
NB there's a problem with callable references to SAM constructors,
see also KT-16789
2019-10-22 12:30:15 +03:00
Dmitry Petrov
7dde503697
KT-34500 Use correct loop parameter type in ForInArrayLoopGenerator
2019-10-22 12:23:59 +03:00
Igor Yakovlev
bc66834c3c
Fix UL classes descriptors leaks
...
UL classes built upon descriptors and UL support classes are saving a descriptors.
This could lead to descriptors leakage so we have to eliminate any fields with descriptor references.
Fixed #KT-34337
2019-10-21 22:04:49 +03:00
pyos
847e287bd6
JVM_IR: add $assertionsDisabled when an inlined function uses it
...
NOTE: jvmCrossinlineLambdaDeclarationSite.kt is muted because the
inliner does not remap references to an anonymous object's parent
class after regenerating it. Unlike the JVM backend, JVM_IR uses the
top level named class' assertion status for all inner classes. (The
test used to pass because the lambda in `inline fun call` read the
`$assertionsDisabled` field of `CrossinlineLambdaContainer`, which
was not reloaded after changing the assertion status of package `test`.)
2019-10-21 21:05:18 +03:00
Vladimir Dolzhenko
30229da95a
Don't render pure error types in OverrideMemberChooserObject
...
#KT-34379 Fixed
2019-10-21 17:18:23 +02:00
Vladimir Dolzhenko
96198a1cd3
Report no parent KtNamedDeclaration for declaration instead of NPE in BindingContextUtils.getEnclosingDescriptor
...
#EA-210816 Fixed
2019-10-21 17:18:23 +02:00
Vladimir Dolzhenko
46a083cd1e
Fix readAccess in ResolveSession.java on checking is a local declaration
...
#EA-213627 Fixed
2019-10-21 17:18:23 +02:00
Vladimir Dolzhenko
10ea8abc2b
Wrap file.declarations with runReadAction
...
#EA-209932 Fixed
2019-10-21 17:18:04 +02:00
Alexander Gorshenev
597e760fab
Broght back a condition lost during a refactoring
2019-10-21 17:41:56 +03:00
Roman Artemev
2cde7f2402
[KLIB] Fix explicitlyExported mode
...
- Refactor deserialization pipeline
- Fix K/N test
2019-10-21 17:41:56 +03:00
Roman Artemev
43e855150c
[KLIB] Correctly restore top level property order during deserialization - Add test - Fix KT-34273
2019-10-21 17:41:56 +03:00
Roman Artemev
aecd08e562
[Psi2Ir] Fix IrText test generation
2019-10-21 17:41:55 +03:00
Denis Zharkov
d902a5f304
Temporary disable assertion in bridges generation
...
^KT-34431 Fixed
^KT-34507 Open
2019-10-21 17:24:15 +03:00
Kristoffer Andersen
28b6913a25
JVM IR: Support parameterless main methods
...
This commit:
- introduces tests explicating what is and isn't considered a
proper main method on the JVM backends.
- implements support for parameterless main methods on the JVM IR
backend
- See KT-34338 for more tests.
2019-10-21 15:08:34 +02:00
Mads Ager
4b77db8979
Fix test to actually fail if expected exception is not thrown.
2019-10-21 15:05:32 +02:00
Mikhail Glukhikh
1a59e41224
Add JvmSymbols.String & StringBuilder for FIR mode to fix context initialization
...
This commit fixes in particular testFirHello
2019-10-21 16:01:35 +03:00
pyos
0c3dfca6ee
JVM_IR: remove an assertion that triggers due to a frontend bug
2019-10-21 14:59:03 +02:00
Jim Sproch
383239aff6
Make useIR available from Gradle KotlinJvmOptions
2019-10-21 13:20:54 +03:00
Mads Ager
8be6a1fe8a
[JVM_IR] Contain 'invokeSuspend' rewriting to the suspend function.
...
Do not rewrite returns in methods in nested lambda implementations.
That leads to unintended non-local returns from nested non-suspend
lambdas.
2019-10-21 13:16:57 +03:00
Ilmir Usmanov
78b9c082e7
JVM_IR: Generate 'create' for suspend lambdas with one parameter
2019-10-21 13:15:45 +03:00
Ilmir Usmanov
5eeb2958f7
JVM_IR: Support is/as SuspendFunction operators
2019-10-21 13:15:43 +03:00
Ilmir Usmanov
6f47699796
JVM_IR: Calculate correct arity of callable reference to suspend
...
function
2019-10-21 13:15:41 +03:00
Ilmir Usmanov
b0a0399dd0
JVM_IR: Support callable references to suspend functions
2019-10-21 13:15:39 +03:00
Ilmir Usmanov
e736b782dd
JVM_IR: Support suspend lambdas with multiple parameters
2019-10-21 13:15:37 +03:00
Ilmir Usmanov
f4a7c839d3
JVM_IR: Generate as much LINENUMBER information as possible inside
...
suspend functions and lambdas.
Otherwise, when state-machine builder splits instructions and adds
LINENUMBER between states, the information becomes corrupted.
2019-10-21 13:15:35 +03:00
Dmitry Petrov
69a9559eac
IR serialization: isExpect in proto and ser/deser
2019-10-21 13:04:59 +03:00
Dmitry Petrov
922b1e576d
IR serialization: isExpect (TODO actual value in proto)
2019-10-21 13:04:59 +03:00
Dmitry Petrov
66b63c4296
JS_IR: isExpect
2019-10-21 13:04:59 +03:00
Dmitry Petrov
e87517764d
JVM_IR: isExpect
2019-10-21 13:04:59 +03:00
Dmitry Petrov
6bdc9ee65b
IR BE common: isExpect
2019-10-21 13:04:59 +03:00
Dmitry Petrov
1d229b6dca
FIR2IR: isExpect
2019-10-21 13:04:59 +03:00
Dmitry Petrov
6532f29cc6
IR: isExpect
2019-10-21 13:04:59 +03:00
Dmitriy Novozhilov
4df4c58a05
[FIR] Resolve type of when expression to Unit if it is not exhaustive
2019-10-21 11:59:44 +03:00
Dmitriy Novozhilov
b8bc449bc3
[FIR] Fix generating of redundant empty else branch in light tree fir generator
2019-10-21 10:44:30 +03:00
Igor Yakovlev
8c65a9a2aa
Move AllOpen UL support to separate extension
2019-10-18 23:22:48 +03:00
Igor Yakovlev
58b8d8868a
Remove fallbacking of UL (to LightClasses) by complexity checking
2019-10-18 23:22:47 +03:00
Igor Yakovlev
3f9bffcc5f
Move UL compiler plugin support to separate extension point
2019-10-18 23:22:47 +03:00
Igor Yakovlev
6ce37fff95
Add UL support for AllOpen compiler plugin
2019-10-18 23:22:47 +03:00
Igor Yakovlev
558a700f51
Add UL support for ParcelableCodegenExtension compiler plugin
2019-10-18 23:22:47 +03:00
Igor Yakovlev
110a6700e4
Add UL support for NoArg compiler plugin
2019-10-18 23:22:47 +03:00
Mikhail Glukhikh
c9f6482f25
Throw exception from FIR smoke test if failure file does not exist
...
It's more convenient to see exception from the beginning and
not a strange message about generated .fir.fail file
2019-10-18 20:40:21 +03:00
Steven Schäfer
eb744cc9e1
JVM IR: Fix constant folding for unsigned toString
2019-10-18 17:24:53 +02:00
Steven Schäfer
c905209504
JVM IR: Lower IrStringConcatenation
2019-10-18 17:24:53 +02:00
Steven Schäfer
78b4024ccb
JVM IR: Unify the handling of IrStringConcatenation and toString
2019-10-18 17:24:12 +02:00
Steven Schäfer
c2de89cb8c
Minor: Make String.valueOf bytecode tests more precise
2019-10-18 17:24:12 +02:00
Steven Schäfer
64aa50a921
Add more tests for SAM wrappers
2019-10-18 17:22:58 +02:00
Steven Schäfer
c3d0a7582c
JVM IR: Fix names, caching, and visibilities for SAM wrappers used in inline functions.
2019-10-18 17:22:58 +02:00
Steven Schäfer
f2e0c1a930
JVM IR: Minor fix for nullable SAM wrappers
2019-10-18 17:22:58 +02:00
Dmitriy Novozhilov
4d43c13fb1
[FIR] Add logging to artifact in ModularizedTest for old frontend
2019-10-18 18:21:36 +03:00
Steven Schäfer
18940ab0cb
JVM IR: Refactor SyntheticAccessorLowering to use a single traversal
2019-10-18 17:20:22 +02:00