Andrey Zinovyev
0f04fac5b2
[FIR] Add BOUNDS_NOT_ALLOWED_IF_BOUNDED_BY_TYPE_PARAMETER diagnostic
2021-04-07 08:19:31 +00:00
Abduqodiri Qurbonzoda
b0f1ddc91e
Advance max/min(By/With) deprecation level to ERROR
2021-04-07 07:49:23 +03:00
Abduqodiri Qurbonzoda
d28d0a6321
Advance String(CharArray) deprecation level to ERROR in Common and JS
2021-04-07 00:23:29 +03:00
Abduqodiri Qurbonzoda
968099fbec
Advance deprecation level of FP to lesser than Int types to ERROR #KT-30360
2021-04-07 00:23:20 +03:00
Ivan Kochurkin
404c69ded7
[FIR] Implement INCORRECT_CHARACTER_LITERAL, EMPTY_CHARACTER_LITERAL, TOO_MANY_CHARACTERS_IN_CHARACTER_LITERAL, ILLEGAL_ESCAPE, ILLEGAL_ESCAPE_SEQUENCE diagnostics, fix tests
2021-04-06 20:44:32 +03:00
Abduqodiri Qurbonzoda
e8992c5d19
Advance deprecation level of InputStream.readBytes(estimatedSize) to ERROR
2021-04-06 18:42:53 +03:00
Dmitriy Novozhilov
66668b2294
[FIR] Support resolve of local typealiases
2021-04-06 12:30:42 +03:00
Dmitriy Novozhilov
3cb17ac2f0
[FIR] Implement FirReturnAllowedChecker
...
Supported diagnostics:
- RETURN_NOT_ALLOWED
- RETURN_IN_FUNCTION_WITH_EXPRESSION_BODY
2021-04-06 12:30:41 +03:00
Dmitriy Novozhilov
22cbb8720a
[FIR] Fix computing labels of anonymous functions (not lambdas)
2021-04-06 12:30:38 +03:00
Dmitriy Novozhilov
5ebd24eac5
[FIR] Save inline status of lambda after resolution
2021-04-06 12:30:34 +03:00
Him188
f90cbb0ce7
Support properties from primary constructor in JvmFieldApplicabilityChecker
...
#KT-32753 In progress
2021-04-06 11:40:44 +03:00
Dmitriy Novozhilov
99e681ec1d
[NI] Assume that ILT is number type in inference
...
#KT-41679 Fixed
2021-04-06 11:40:42 +03:00
Dmitriy Novozhilov
a107e3d160
Support actualization of expect sealed class with typealias in CliSealedClassInheritorsProvider
2021-04-06 11:40:40 +03:00
Dmitriy Novozhilov
1633190478
Refine expect classes in CliSealedClassInheritorsProvider
...
KT-45796 Fixed
2021-04-06 11:40:36 +03:00
Dmitry Petrov
120eba8d3d
Minor: add tests for KT-45893
2021-04-05 17:50:43 +03:00
Andrey Zinovyev
e10df86037
[FIR] Add UPPER_BOUND_IS_EXTENSION_FUNCTION_TYPE diagnostic
2021-04-05 17:15:32 +03:00
yantimirov-timur
9e7f6332d1
[FIR] Complete WRONG_SETTER_TYPE_PARAMETER checker
2021-04-05 16:17:34 +03:00
Julia
5472199bb1
[FIR] Introduce supertypes-for-annotation-class checker
2021-04-05 15:54:57 +03:00
Mikhail Glukhikh
caeb0b43be
FIR: introduce JvmPlatformOverloadsConflictResolver
...
The added here JvmPlatformOverloadsConflictResolver prefers Java field
to property in case of conflicts.
2021-04-05 15:54:49 +03:00
Andrey Zinovyev
67505a0071
[FIR] Add FINAL_UPPER_BOUND checker
2021-04-05 14:51:44 +03:00
Denis.Zharkov
0637748f10
FIR: Introduce NAMED_PARAMETER_NOT_FOUND diagnostic
2021-04-05 12:58:07 +03:00
Jinseong Jeon
2d42e64c17
FIR: prefer flexible type over other equal types when computing intersection
2021-04-05 10:39:51 +03:00
Jinseong Jeon
0d3969597c
FIR: more accurate nullability of intersection of flexible types
2021-04-05 10:39:51 +03:00
Jinseong Jeon
871b5a2174
FIR: fix nullability computation of intersection of flexible types
...
Without this, currently,
it(ft(J..J?), ft(J..J?) => J
which should be ft(J..J?) instead.
2021-04-05 10:39:51 +03:00
Dmitriy Novozhilov
f1cef0fc95
Update testdata
2021-04-03 16:52:05 +03:00
Mikhail Glukhikh
f0ff9ad5a7
FIR: rename AMBIGUITY to OVERLOAD_RESOLUTION_AMBIGUITY to match FE 1.0
2021-04-02 16:22:01 +03:00
Tianyu Geng
761a0a7d0d
FIR checkers: report specific errors instead of INAPPLICABLE_CANDIDATE
...
Specifically, the report the following 4 errors.
* NON_VARARG_SPREAD
* ARGUMENT_PASSED_TWICE
* TOO_MANY_ARGUMENTS
* NO_VALUE_FOR_PARAMETER
Also added/updated the following position strategies.
* NAME_OF_NAMED_ARGUMENT
* VALUE_ARGUMENTS
2021-04-02 14:36:14 +03:00
Tianyu Geng
fc8d0e3ee0
FIR checkers: report VAL_REASSIGNMENT for assignment operators
...
Currently VAL_REASSIGNMENT are only reported on direct assignments.
Reassignments in the form of, for example, `+=` are reported as
`VARIABLE_EXPECTED`, which differs from FE1.0.
2021-04-02 13:33:52 +03:00
Dmitry Petrov
eefb6e94a9
Minor: update tests to pass on Android
2021-04-02 10:53:30 +03:00
Mikhail Glukhikh
42d53dd954
FIR: introduce delegated & overridden conflict checks
2021-04-02 10:24:20 +03:00
Mikhail Glukhikh
566dc434cc
FIR: introduce MANY_*_MEMBER_NOT_IMPLEMENTED diagnostic
2021-04-02 10:24:20 +03:00
Mikhail Glukhikh
9f27362ee1
Match triangle & diamond intersections in FirTypeIntersectionScope
2021-04-02 10:24:20 +03:00
Dmitry Petrov
19fb7ebfd5
JVM_IR fix local class names for files with @JvmPackageName
2021-04-02 00:08:55 +03:00
Alexander Udalov
ce0c0ad2e3
JVM IR: get rid of toIrBasedKotlinType in MethodSignatureMapper
...
Commonize (in terms of TypeSystemCommonBackendContext implementations
for KotlinType/IrType) code that computes optimal TypeMappingMode to
apply to different positions where inline class types can be present.
2021-04-01 20:17:45 +02:00
Ilmir Usmanov
b5ecccb610
Enable suspend in fun interfaces by default
...
#KT-45836 Fixed
2021-04-01 20:26:42 +03:00
Jinseong Jeon
b4a5eec5f4
Raw FIR: correct loop target for break/continue in do-while loop condition
...
As shown in KT-44412 (or KT-45319 or KT-17728):
```
fun test5() {
var i = 0
Outer@while (true) {
++i
var j = 0
Inner@do {
++j
} while (if (j >= 3) false else break) // break@Inner
if (i == 3) break
}
}
```
To properly set the loop target for `break` in do-while loop condition,
the loop target for that do-while loop should be ready before parsing
the loop condition.
Previously, Raw FIR loop building configures loop target after visiting
loop conditions. This commit splits the configuration and lets the
builders prepare the loop target for do-while loop only.
2021-04-01 20:07:50 +03:00
Jinseong Jeon
81999117dc
FIR2IR: force return type of loop body block as Unit
2021-04-01 20:07:49 +03:00
Jinseong Jeon
7898d167f3
FIR2IR: wrap do-while loop in IrBlock
...
"so that variables declared in loop body are not visible outside of the
loop" (from commit d096f1d )
2021-04-01 20:07:47 +03:00
Denis.Zharkov
5cbfb172a4
Ignore new FIR box test on android
2021-04-01 14:52:05 +03:00
Denis.Zharkov
d685e2aac7
FIR2IR: Fix inheritance case from built-in interface with default methods
2021-04-01 12:11:37 +03:00
Ilmir Usmanov
786999bcfe
Minor. Add regression tests
...
#KT-44143
2021-04-01 00:51:08 +03:00
Ilya Goncharov
47f1a8a0bb
[IR] Make IrTypeOperatorCall copyable
...
^KT-45655 fixed
2021-03-31 20:14:52 +03:00
Ilya Gorbunov
94240f7b21
Stabilize unsigned types KT-45653
...
Deprecate specialized unsigned iterators for removal.
Fix compiler tests:
- drop unsignedLiteralsOn1_2 because apiVersion 1.2 is no longer supported
- drop experimental unsigned literals diagnostic test
2021-03-31 19:05:04 +03:00
Dmitry Petrov
9bf7f3af04
JVM_IR KT-45697 reference classes from sources before IR generation
2021-03-31 16:40:49 +03:00
Denis.Zharkov
fa65081878
Revert "FIR2IR: minimize scope processing in fake override generation"
...
This reverts commit 9934cfbb00 .
See the tests added: Subclass may have private same-name method that
should not be a reason to avoid generating fake overrides
2021-03-31 15:57:03 +03:00
Denis.Zharkov
55e5af1111
FIR: Add workaround for flatMap issue
2021-03-31 15:57:03 +03:00
Denis.Zharkov
4d3825a824
FIR: Serialize members originated from delegation
2021-03-31 15:57:03 +03:00
Denis.Zharkov
a130b110f1
FIR2IR: Fix incorrect conversion of adapted callable references with receiver
2021-03-31 15:57:02 +03:00
Denis.Zharkov
1f074326bf
FIR: Fix Java scope in case of accessor with getter signature from supertype
...
^KT-45584 Fixed
2021-03-31 15:57:02 +03:00
Ilmir Usmanov
cf73f182c7
Minor. Change warning message
2021-03-31 09:04:35 +03:00