Dmitriy Novozhilov
e742af5444
[Test] Run fir diagnostics tests with light tree in sequential mode
...
In parallel mode many tests are failing so it's temporary workaround
2021-01-15 11:16:28 +03:00
Dmitriy Novozhilov
2f1e4862e5
[Test] Enable builtin parallel tests execution form JUnit5 in :compiler:tests-common-new
2021-01-15 11:16:26 +03:00
Mads Ager
250cc1dc92
[JVM] Never treat arguments to methods as locals that can be removed.
...
Fixes KT-44347
2021-01-15 10:33:11 +03:00
Stanislav Erokhin
d24331955e
Rename FirConstKind to ConstantValueKind and move it to compiler.common
2021-01-14 12:12:25 +01:00
Alexander Udalov
221f44da5f
Fix warnings in stdlib/compiler/plugins/test code
2021-01-13 19:18:20 +01:00
Alexander Udalov
e0363788f4
Remove some remaining tests on old coroutines
2021-01-13 19:16:31 +01:00
Mikhail Glukhikh
7953974f3d
[FIR] Make WRONG_IMPLIES_CONDITION warning instead of error
2021-01-13 18:14:26 +03:00
Dmitriy Novozhilov
e3066a166e
[Test] Migrate AbstractFirBlackBoxCodegenTest to new infrastructure
2021-01-12 18:35:40 +03:00
Dmitriy Novozhilov
285ccf7583
[Test] Don't generate JVM BB tests for expect-actual linker
...
This feature is supported only on JS backend so those tests on JVM
are meaningless. Also those tests had passed on jvm because of
old codegen tests didn't use `MODULE` directive and analyze all
files in tests in single module
2021-01-12 18:35:27 +03:00
Svyatoslav Kuzmich
ab753625fe
[JS Legacy] Fix returning Char from suspend functions (KT-44221)
...
Mark translated expression with a proper type, like we do with
non-suspending calls, to coerce it later.
2021-01-12 15:42:31 +03:00
Svyatoslav Kuzmich
2d88ff6fb2
[JS IR] Fix unsgined integer default arguemtns (KT-44180)
...
Const lowering didn't exprect null constants with unsigned number
types and crashed with NPE. This commit fixes that.
2021-01-12 15:42:31 +03:00
Jinseong Jeon
d53354057a
FIR: build functional type for SAM with receiver properly
2021-01-12 10:33:55 +03:00
pyos
f618763250
FIR: implement -Xfriend-paths
2021-01-12 10:33:45 +03:00
Alexander Udalov
c2d7b69e5f
Remove bytecode text test kt15806.kt
...
It's not correct to expect that the backend generates the `when` in this
test as tableswitch because there are only two branches. JVM IR has a
cutoff in the when optimization and generates `when`s with fewer than 3
branches as if-else chains, which is probably better. Note that there's
also a corresponding box test in when/enumOptimization/, so the backend
behavior is still tested.
2021-01-11 17:27:03 +01:00
Mikhail Glukhikh
0c0dbd6245
[FIR] Perform more accurate pre-check of candidate receiver type
2021-01-11 17:57:04 +03:00
Mikhail Glukhikh
4e4293b609
[FIR] Introduce separate getTopLevelFunction/PropertySymbols
2021-01-11 17:52:51 +03:00
Mikhail Glukhikh
fd99f2b2cf
FirDefaultStarImportingScope: improve measurements
2021-01-11 17:52:05 +03:00
Mikhail Glukhikh
33037fd885
FirAbstractImportingScope: minor simplification
2021-01-11 17:52:00 +03:00
Dmitry Petrov
b02a9846d0
IR KT-44233 support flexible nullability in IrTypeSystemContext
...
^KT-44233 Fixed Target versions 1.5-M1
2021-01-11 17:33:50 +03:00
Jinseong Jeon
093f62caac
FIR2IR: check non-parameter Unit type for adapted callable references
2021-01-11 16:23:00 +03:00
Mads Ager
dfc86feecd
[IR] Extend test coverage for smart cast handling.
2021-01-11 12:01:48 +03:00
Steven Schäfer
dad10e94aa
JVM IR: Mangle names of $$forInline functions
2021-01-08 16:30:18 +01:00
Jinseong Jeon
f8f08e8134
IR: add a test about maximum number of constants in an enum class
2021-01-07 23:00:37 +01:00
Alexander Udalov
ed9a0e514d
Regenerate tests and fir-tree
2021-01-03 14:53:41 +01:00
Alexander Udalov
bf3f6594d5
IR: do not lose $default function annotations when generating calls
...
Losing an annotation like `JvmName` resulted in the incorrect bytecode
generated in the JVM IR backend.
#KT-44160 Fixed
2020-12-31 18:36:24 +01:00
Shagen Ogandzhanian
e7dc199ad7
Init enum entries whenever we access companion object or accessing valueOf
...
Fixes https://youtrack.jetbrains.com/issue/KT-43987
Fixes https://youtrack.jetbrains.com/issue/KT-43989
2020-12-30 14:54:34 +01:00
Dmitry Petrov
7fa04afda2
JVM_IR KT-32115 fix $$delegatedProperties initialization in enum
2020-12-30 15:56:18 +03:00
Dmitry Petrov
81e00ca371
JVM box tests for KT-30402
2020-12-30 10:57:46 +03:00
Ilmir Usmanov
80289e4a3f
IC Mangling: Generate inline class literal instead of underlying type
...
literal in annotations.
#KT-30280 Fixed
2020-12-30 03:31:08 +01:00
Mikhail Glukhikh
a6534c4653
[FIR] Fix completion of synthetic call arguments
2020-12-29 17:48:15 +03:00
Denis.Zharkov
b7a382f097
Revert "Fix ISE when inferring type of a property that delegates to itself"
...
This reverts commit 1a03d5c93e .
The reason is that original change seems to be breaking (see KT-44137).
^KT-44137 Relates
^KT-37796 Open
2020-12-29 17:41:12 +03:00
Roman Artemev
826985450e
Add test for KT-42036
2020-12-29 16:27:31 +03:00
Victor Petukhov
30a5eee481
Don't approximate abbreviation during substitution it as it can't be projected at top-level
...
^KT-42036 Fixed
2020-12-29 16:08:38 +03:00
Mikhail Glukhikh
74077bf6d2
[FIR] Don't attempt to process interface constructors
2020-12-29 12:18:03 +03:00
Alexander Udalov
77a9d14f93
Capitalize/decapitalize only ASCII characters across project
...
Use {de,}capitalizeAsciiOnly and to{Lower,Upper}CaseAsciiOnly where
possible, and stdlib's functions with Locale.US everywhere else.
Otherwise, if the default system locale is Turkish, the capital latin
letter "I" is transformed in toLowerCase to "ı" (see
https://github.com/JetBrains/kotlin/blob/66bc142f92085047a1ca64f9a291f0496e33dd98/libraries/stdlib/jvm/test/text/StringJVMTest.kt#L119 ),
which for example breaks the codegen for `intArrayOf` in
KT-25400/KT-43405.
Similarly, lower case latin letter "i" is transformed to "İ".
#KT-13631 Fixed
#KT-25400 Fixed
#KT-43405 Fixed
2020-12-28 16:10:30 +01:00
Dmitry Petrov
5d4b0b19d4
JVM_IR KT-13213 split string constants into parts of acceptable length
2020-12-28 16:50:29 +03:00
Denis.Zharkov
acbf382d04
FIR: Add test on ambiguous vararg
...
Fix is in the two previous commits
2020-12-28 13:19:23 +03:00
Jinseong Jeon
8c7b23a8dd
FIR Java/JVM: avoid plain "Array" comparison
2020-12-28 12:45:51 +03:00
Jinseong Jeon
383de7a9c5
FIR Java: Fix Java override ambiguity with vararg value type
...
#KT-44066 Fixed
2020-12-28 12:45:51 +03:00
Mikhail Glukhikh
d663f204e5
FIR Java: make method annotations lazy
2020-12-28 12:06:51 +03:00
Mikhail Glukhikh
c8c34ebf17
FIR Java: make constructor annotations lazy
2020-12-28 12:06:45 +03:00
Mikhail Glukhikh
56df95b8e7
FIR Java: make field annotations lazy
2020-12-28 12:06:39 +03:00
Victor Petukhov
37473ad640
Substitute lambda's receiver type during completion including the builder inference stub variables substitution
...
^KT-42175 Fixed
2020-12-25 21:33:37 +03:00
Mikhail Glukhikh
0d40fde713
FIR synthetics: make setter subtype check more precise #KT-43347 Fixed
2020-12-25 14:07:28 +03:00
Mikhail Glukhikh
8c8f81330a
FIR Java: make value parameter annotations lazy
2020-12-25 14:07:16 +03:00
Mikhail Glukhikh
1239a8629e
FIR Java: make type annotations lazy
2020-12-25 14:06:34 +03:00
Mikhail Glukhikh
776c4ba6ca
Add test for KT-25489 (to reproduce, turn UL classes OFF)
2020-12-25 14:06:16 +03:00
Victor Petukhov
7ed6aae46e
Fix tests after rebasing
2020-12-25 11:53:21 +03:00
Victor Petukhov
1926434b18
Report error about uninferred type parameter for some special call' subcalls
2020-12-25 11:53:14 +03:00
Dmitry Petrov
a1574bf50a
JVM box tests for KT-30548
2020-12-24 19:35:36 +03:00