Ivan Kochurkin
3dd8ad3599
[FIR] Fix resolving of local class reference chain ^KT-47135 Fixed
2021-10-08 18:52:21 +03:00
Ivan Kochurkin
cbfe0ac073
[FIR] Coerce first parameter to extension receiver ^KT-46371 Fixed
...
Fix typos
2021-10-08 18:52:20 +03:00
Ivan Kochurkin
cc4dac5bec
[FIR] Fix false positive TYPE_VARIANCE_CONFLICT in nested class ^KT-49078 Fixed
2021-10-08 18:52:19 +03:00
Ilya Muradyan
58831eacca
[scripting] Make properties from destructing declarations available with reflection
2021-10-07 18:17:21 +03:00
Denis.Zharkov
1c16f2f8c9
Fix ClassCastException at FirUninitializedEnumChecker
2021-10-07 17:26:29 +03:00
Ivan Kochurkin
55839aab91
[FIR] Extract non-null info from x?.y!! ^KT-44513 Fixed
2021-10-06 21:56:05 +03:00
Ivan Kochurkin
2e1f455d9c
[FIR] Fix type constraint for type parameter ^KT-45345 Fixed
2021-10-06 21:56:04 +03:00
Tianyu Geng
a297ee66d4
FIR: suppress VARIABLE_EXPECTED for error reference
2021-10-05 15:30:39 +03:00
Tianyu Geng
c572bf05b5
FIR checker: honor DSL marker annotation on the function type
...
It seems the original function type gets lost during resolution. Hence
thie change added a custom attribute to recover the original function
type on an anonymous function
2021-10-05 15:30:38 +03:00
Tianyu Geng
826ea122a9
FIR checker: DSL_SCOPE_VIOLATION
2021-10-05 15:30:37 +03:00
Tianyu Geng
7aaac2573c
FIR: preserve diagnostics in createResolvedNamedReference
2021-10-05 15:30:35 +03:00
Denis.Zharkov
0a3c950e7f
FIR: Fix resolution scope of constructor delegation calls
2021-10-05 13:48:53 +03:00
Ivan Kochurkin
75b40e4b75
[FIR] Add INVISIBLE_SETTER
2021-10-03 17:10:06 +03:00
Svyatoslav Kuzmich
c88cde2f8b
[Wasm] DONT_TARGET_WASM_BACKEND => IGNORE_BACKEND in testdata
2021-10-02 06:14:35 +00:00
Victor Petukhov
abd2507107
Don't discriminate generics during callable references resolution
...
^KT-49038 Fixed
2021-10-01 22:09:33 +03:00
Jinseong Jeon
8f3b06ac06
RAW FIR: record annotations on destructuring declarations
2021-10-01 18:54:16 +03:00
Tianyu Geng
c1754ad427
FIR: fix label on non-lambda anonymous function
2021-10-01 17:21:42 +03:00
Tianyu Geng
fadde98a86
FIR: fix label stealling and crash with multiple labels
...
Consider the code below
```
fun test() {
a@ b@ {
{}
}
}
```
Currently when the code is converted to FIR, label `b` is bound to the
outer lambda and `a` gets bound to the inner lambda because it's not
consumed. This is wrong and also leads transfromation to fail with
exceptions because of the unexpected consumption of `a`.
This change fixes the above issue by designating a specific node in the
AST as the allowed user of a label when the label is added.
2021-10-01 17:21:40 +03:00
Tianyu Geng
5c716ea979
FIR checker: report NOT_A_FUNCTION_LABEL
2021-10-01 17:21:39 +03:00
pyos
a4d1358e57
FIR: permit tailrec calls in inline lambdas
2021-10-01 14:37:54 +02:00
Victor Petukhov
43a83dd07a
Don't add LHS type constraint for callable references too early, before the resolution
...
The constraint depends on a resolution candidate, because it can be Java static or companion object's member (don't need add constraint in this case)
^KT-41978 Fixed
2021-10-01 13:33:21 +03:00
Victor Petukhov
5326c875c0
Update compiler tests after rebase
2021-09-30 20:09:00 +03:00
Victor Petukhov
b957831683
Use WarningAwareUpperBoundChecker independently
...
^KT-47920 Fixed
^KT-48290 Fixed
2021-09-30 20:08:58 +03:00
Victor Petukhov
d9c50f0fda
Report NON_VARARG_SPREAD on missed cases
...
^KT-48162 Fixed
2021-09-30 20:08:56 +03:00
Victor Petukhov
e30d467304
Implement deprecation cycle for proper refinement rhs type in assignments for java fields
...
^KT-46727 Fixed
2021-09-30 20:08:54 +03:00
Victor Petukhov
0cb56be14f
Have "in type" for java fields to be able to check that type in assignment positions (against rhs' type)
...
^KT-46727 Fixed
2021-09-30 20:08:52 +03:00
Victor Petukhov
2bdbbdd1a7
Commit delegation expression's trace with errors if we couldn't extract type info for it
...
^KT-44843 Fixed
2021-09-30 20:08:39 +03:00
Victor Petukhov
561ef5947a
Introduce error for PROTECTED_CONSTRUCTOR_CALL_FROM_PUBLIC_INLINE
...
^KT-42972 Fixed
2021-09-30 20:08:37 +03:00
Victor Petukhov
01e853fb9b
Introduce error for SUPER_CALL_FROM_PUBLIC_INLINE
...
^KT-45378 Fixed
2021-09-30 20:08:36 +03:00
Victor Petukhov
70d70b9042
Use warn mode by default for jspecify nullability annotations in 1.6
...
^KT-48851 Fixed
2021-09-30 20:08:35 +03:00
Mikhail Glukhikh
d3662b48a2
FIR: fix OPT_IN_MARKER_ON_WRONG_TARGET (setter via parameter case)
...
This commit fixes FIR bootstrap compilation
2021-09-30 14:58:14 +03:00
Denis.Zharkov
f7ef551f99
Report warnings on overrides with wrong types nullability
...
^KT-48899 Fixed
2021-09-30 14:36:26 +03:00
Dmitriy Novozhilov
7917e511ed
[FE 1.0] Disable INTEGER_OPERATOR_RESOLVE_WILL_CHANGE warning by default
...
Also remove sinceVersion parameter from
ApproximateIntegerLiteralTypesInReceiverPosition language feature
^KT-48992 Fixed
2021-09-29 21:23:22 +03:00
Mikhail Glukhikh
212c3e8d51
FIR: fix OPT_IN_MARKER_ON_WRONG_TARGET for constructor properties
2021-09-29 19:39:28 +03:00
Mikhail Glukhikh
e9bff861dd
FIR: report OPT_IN_MARKER_ON_OVERRIDE diagnostic
...
This diagnostic works in accordance with KT-45844 and KT-49002
2021-09-29 19:39:27 +03:00
Mikhail Glukhikh
ac3b738d9b
FIR: report OPT_IN_OVERRIDE(_ERROR) diagnostics
2021-09-29 19:39:25 +03:00
Mikhail Glukhikh
056f74a23b
FE 1.0: allow OptIn marker on override if base class is marked
...
#KT-49002 Fixed
2021-09-29 19:39:24 +03:00
Mikhail Glukhikh
a76aee9b69
FIR: spread OptIn markers to children except fake override case
...
This commit implements KT-49001 for FIR
2021-09-29 19:39:23 +03:00
Mikhail Glukhikh
69e06a242a
FE 1.0: spread OptIn markers to children except fake override case
...
#KT-49001 Fixed
2021-09-29 19:39:22 +03:00
Mikhail Glukhikh
3045a5e920
FIR: implement OPT_IN_MARKER_ON_WRONG_TARGET
2021-09-29 19:39:20 +03:00
Mark Punzalan
42abc4a3af
FIR: Don't use AnnotationUseSiteTarget.PROPERTY_GETTER when computing
...
deprecation from a callable reference use site.
Also fixed positioning of DEPRECATION(_ERROR) diagnostics on variable
assignments.
2021-09-29 19:39:17 +03:00
Mark Punzalan
b8ed46066e
FIR: Change diagnostic for ConeHiddenCandidate to UNRESOLVED_REFERENCE.
...
The KDoc for @Deprecated states that DeprecationLevel.HIDDEN usages
should look like unresolved references.
2021-09-29 19:39:17 +03:00
Mark Punzalan
58eb329fb9
FIR: Make CheckDeprecatedSinceKotlin the first resolution stage.
...
All subsequent stages don't need to run if the candidate is
@Deprecated(HIDDEN).
2021-09-29 19:39:14 +03:00
Mark Punzalan
63cc18b095
FIR: Add test for candidate behind hidden property accessors.
...
See KT-48799.
2021-09-29 19:39:13 +03:00
Tianyu Geng
f35680f0a4
FIR checker: resolve property with protected getter and public setter
...
Assuming Java class `Super` has a protected `getName` method and a
public `setName` method.
Then, in a subclass of `Super`, FE1.0 allows calls to `setName` via the
property syntax if the property is protected and invisible due to
dispatch receiver is not `this` or `super`.
2021-09-29 19:39:12 +03:00
Denis.Zharkov
9ac29e0714
Fix enhancement when mixing TYPE_USE and non-TYPE_USE annotations
2021-09-28 22:59:18 +03:00
Tianyu Geng
a5435c0efc
Make FE1.0 report tailrec diagnostics on the keyword
2021-09-28 22:30:20 +03:00
Tianyu Geng
5252effb10
FIR checker: report tailrec problems on the keyword
...
FE1.0 reports it on the declaration signature. This is not ideal so we
move it to the `tailrec` keyword in FIR.
2021-09-28 22:30:09 +03:00
Ivan Kochurkin
922ae607f6
[FIR] Implement REPEATED_ANNOTATION for types refs ^KT-48652 Fixed
2021-09-28 21:33:06 +03:00
Ivan Kochurkin
3dc0935da4
[FIR] Pass bounds from original type to fully expanded ^KT-40203 Fixed
2021-09-28 21:32:54 +03:00