Mikhail Glukhikh
1321bf426b
[FIR] Define argument lists and their builders more accurately
2020-03-11 22:08:59 +03:00
Mikhail Glukhikh
3d17ce05b5
[FIR] Introduce FirResolvedArgumentList with argument-parameter mapping
...
#KT-36345 Fixed
2020-03-11 22:08:59 +03:00
Mikhail Glukhikh
6b0a3aa176
[FIR] Cleanup vararg handling during call completion
2020-03-11 22:08:59 +03:00
Mikhail Glukhikh
91d51b93e1
[FIR] Introduce FirArgumentList node
2020-03-11 22:08:58 +03:00
Dmitriy Novozhilov
476d3c4092
Revert "[FIR-TEST] Move FIR ide tests to separate module"
...
This reverts commit 36ec0a2e2e .
2020-03-11 20:22:55 +03:00
Anton Yalyshev
b44be51b5c
Disable FUS for Code Completion in 1.3.71
2020-03-11 19:52:01 +03:00
Dmitry Petrov
a9ab3ae192
KT-36047 Support when-with-subject in optimized 'when' generators
2020-03-11 18:09:17 +03:00
Ilmir Usmanov
fd70b10b17
JVM_IR: Generate suspend fun main wrapper as class instead of reference
...
This way, there is no getName, getOwner and getSignature generated.
#KT-37404: Open
2020-03-11 15:34:38 +01:00
Leonid Startsev
e495c35ad7
Use upper bound as a type for polymorphic serializer
...
when it is used in sealed class case
Fixes https://github.com/Kotlin/kotlinx.serialization/issues/753
2020-03-11 17:09:05 +03:00
Leonid Startsev
15fa6ea757
Do not insert @SerializableWith marker annotation if already present
...
Such situation may happen if generic class is customized by user
with object-kind serializer. In such case, both arguments from
generateSerializerGetter and generateSerializerFactory are objects.
See linked issue for details:
Fixes https://github.com/Kotlin/kotlinx.serialization/issues/749
2020-03-11 17:07:17 +03:00
Leonid Startsev
e20354926b
Do not check 'no ctor parameters' for serializable enums
...
fixes https://github.com/Kotlin/kotlinx.serialization/issues/742
Do not use serializableIrClass if it is not bound (this may happen
in case we're generating external serializer for library class)
fixes https://github.com/Kotlin/kotlinx.serialization/issues/744
2020-03-11 17:07:16 +03:00
Mark Punzalan
79fef09bf5
[JVM IR] Add tests for KT-15971.
2020-03-11 14:33:31 +01:00
Mark Punzalan
2239b5ceab
[JVM IR] Maintain KT-36188 bug compatibility between non-IR and IR
...
backends.
2020-03-11 14:33:31 +01:00
Sergey Igushkin
435e74b74b
Redirect warning output to error log when allWarningsAsErrors is enabled
...
Issue #KT-35447 Fixed
2020-03-11 16:03:55 +03:00
Mikhail Glukhikh
47ebd38534
FIR2IR: fix origin of object literal constructor call
2020-03-11 16:01:58 +03:00
Mikhail Glukhikh
8231377f6b
FIR2IR: convert qualifiers inside getClass properly
2020-03-11 16:01:57 +03:00
Mikhail Glukhikh
1812b490a1
FIR: set anonymous object constructor return type properly
2020-03-11 16:01:57 +03:00
Nicolay Mitropolsky
d1739289c6
Uast: UastFakeLightMethod hashcode fix (KT-37200)
2020-03-11 15:54:01 +03:00
Alexander Podkhalyuzin
5bb74d9840
Fixed generated text from jvm classfile, when quotes is required
...
#KT-34759 Fixed
2020-03-11 15:41:41 +03:00
Dmitriy Novozhilov
36ec0a2e2e
[FIR-TEST] Move FIR ide tests to separate module
2020-03-11 15:12:04 +03:00
Dmitriy Novozhilov
78f910e321
Regenerate tests
2020-03-11 15:12:04 +03:00
Alexander Udalov
4d2ee279c0
Remove unneeded workaround for IBM JDK and older intellij-core
...
The underlying problem (IDEA-206446) was fixed a long time ago and the
compiler is no longer affected by it.
#KT-37286 Fixed
2020-03-11 12:49:38 +01:00
Svyatoslav Kuzmich
f113c22450
[JS IR BE] Fix enum entry initialization
...
Keep helper fields uninitialized. This way thier initialization
would not depend on field initialization order.
2020-03-11 14:28:20 +03:00
Pavel Kirpichenkov
04f9a03796
[NI] Fix isNullableType for definitely not null type parameter
...
Consider type parameter with nullable bound not null
if it is inside of a definitely not null type.
2020-03-11 13:55:25 +03:00
Pavel Kirpichenkov
88ae9bc7d5
minor: rename test
2020-03-11 13:55:24 +03:00
Vladimir Dolzhenko
8af5e2bb04
Make copy-paste resolve task modal to avoid invalid psi elements
...
Due to background formatting pasted PSI elements become invalid quite soon and it is not possible to make resolve
#KT-37414 Fixed
2020-03-11 11:53:03 +01:00
Roman Golyshev
90750483ee
KT-36860 Collect extensions from object on first completion
...
- This should not affect the performance of the completion, since all
object extensions are collected on the last step, when all main variants
are already collected
- Add more tests
- Also, disable completion of extensions from objects as callable
references (^KT-37395 Fixed)
- ^KT-36860 Fixed
2020-03-11 13:31:56 +03:00
Zalim Bashorov
7dc9a2fc64
[JS IR BE] Add intrinsic for hashCode on Boolean
2020-03-11 12:54:43 +03:00
Zalim Bashorov
2103c0e0f8
[JS IR BE] Add intrinsic for hashCode on String
2020-03-11 12:54:43 +03:00
Zalim Bashorov
c8efe8c4ec
Add tests for equals, hashCode, toString in String and Number
2020-03-11 12:54:42 +03:00
Zalim Bashorov
8e788e2169
[stdlib-js-ir] Copy Boolean and String sources and add equals, hashCode, toString
2020-03-11 12:54:42 +03:00
Zalim Bashorov
9e59d93ad5
[JS IR BE] Add intrinsics for hashCode on primitive number types
2020-03-11 12:54:42 +03:00
Zalim Bashorov
adfb296e45
[stdlib-js-ir] Add equals, hashCode, toString to some builtins
...
Namely:
* Throwable;
* primitive numbers except Long (which implemented in Kotlin).
2020-03-11 12:54:42 +03:00
Zalim Bashorov
97e86fb2ce
[stdlib-js-ir] Char shouldn't be a data class
2020-03-11 12:54:41 +03:00
Zalim Bashorov
7c874ccf0c
[stdlib-js-ir] Hack: mark Char.toString by JsName to force keeping it
2020-03-11 12:54:41 +03:00
Zalim Bashorov
9e7f72382f
[stdlib-js-ir] Remove BitUtils object and make all members toplevel
...
It works slightly better with IR DCE --
we get about 6% less code on box tests.
2020-03-11 12:54:41 +03:00
Zalim Bashorov
62014e6711
[JS IR BE] Add better error message when some function not found during init JsIrBackendContext
2020-03-11 12:54:41 +03:00
Zalim Bashorov
43171f67a8
[stdlib-js-ir] Cleanup exceptions
2020-03-11 12:54:41 +03:00
Zalim Bashorov
d22e4495de
[JS IR DCE] Improve handling overrides
...
Introduce the notion of contagious for overridable declarations.
So, now overriding uncontagious declaration will not lead to becoming a declaration reachable.
By default, all declarations treated as contagious, it's not the most efficient, but it's safest.
In case when we access a declaration through a fake-override declaration,
the original (real) one will not be marked as contagious, so, later,
other overrides will not be processed unconditionally only because
it overrides a reachable declaration.
2020-03-11 12:54:40 +03:00
Zalim Bashorov
f60d0b2c7c
[JS IR CLI] Change K2JsIrCompiler#executableScriptFileName's body to TODO() and provide a proper fix later
2020-03-11 12:54:39 +03:00
Zalim Bashorov
2a7e32d3ae
[JS IR DCE] Add CLI option to print reachability info
2020-03-11 12:54:39 +03:00
Zalim Bashorov
16cd3f0cef
[JS IR DCE] Print reachability info
2020-03-11 12:54:39 +03:00
Zalim Bashorov
e6657b016f
[JS IR DCE] Move withNested fun to get better diff in the next commit
2020-03-11 12:54:39 +03:00
Zalim Bashorov
95d248189f
[JS IR BE] JsClassGenerator: don't use descriptor for error message
2020-03-11 12:54:39 +03:00
Leonid Startsev
01108d595c
Fix broken test data from 5d73550b
2020-03-11 12:25:13 +03:00
Anton Bannykh
63a909dee6
JS: fix KT-37386
...
Anonymous object constructor parameters should not reuse JsName's
of the super class. Otherwise the temporary name renamer gets
confused.
2020-03-11 12:15:23 +03:00
Dmitriy Dolovov
182c1cee05
[Commonizer] Don't regenerate commonized KLIBs for *-SNAPSHOT versions
2020-03-11 15:18:35 +07:00
Georgy Bronnikov
d032f9b9cc
JVM_IR: handle common klibs when compiled via cli
2020-03-11 11:03:58 +03:00
Georgy Bronnikov
6af099c11a
Typo fix
2020-03-11 11:03:58 +03:00
Ilya Gorbunov
afab52c3bc
Remove workarounds that called primary constructor manually
2020-03-11 02:09:32 +03:00