Ivan Kochurkin
f046f2964b
[FIR] Add PLATFORM_CLASS_MAPPED_TO_KOTLIN
2021-11-24 23:13:41 +03:00
Ivan Kochurkin
3beb447e85
[FIR] Consider anonymous object declarations in classDeclarationsStack in transformers
2021-11-24 23:13:38 +03:00
Nikolay Lunyak
8d647fa016
[FIR] KT-49265: Fix implicit visibility checks
2021-11-24 14:44:50 +03:00
Ilya Kirillov
8ace9e45b9
LL API: unmute passing test
2021-11-23 15:41:03 +03:00
Dmitriy Novozhilov
9c7058c3c5
[FIR] Support fields as part of graph of class initialization
...
^KT-49747 Fixed
2021-11-22 20:22:22 +03:00
Dmitriy Novozhilov
9807c67ae4
[FIR] Properly collect overriddens for method enhancement
...
If some java class has multiple supertypes then we need to collect
overriddens from all those types directly, even if superTypeScope
(which is FirTypeIntersectionScope in this case) returns only
one symbol from one of this types (not intersection one)
This is needed to proper enhancement in cases when some type occurs
multiple times in supertypes graph with different nullability
of arguments:
class ConcurrentHashMap<K, V> : AbstractMap<K!, V!>, MutableMap<K, V>
If we try to find method `get(key: K): V` supertype scope returns
`AbstractMap.get(key: K!): V!` (because it actually overrides
`MutableMap(key: K): V?`), but we need to get both symbols to
properly enhance types for `ConcurrentHashMap.remove`
2021-11-22 17:01:17 +03:00
Victor Petukhov
a6fd14d4e6
[FE 1.0] Eliminate resolution ambiguity on inherited SAM-interfaces
...
^KT-17765 Fixed
2021-11-22 14:18:30 +03:00
Victor Petukhov
a5c6d370dd
[FE 1.0] Eliminate resolution ambiguity with external type parameters
...
^KT-10926 Fixed
2021-11-22 14:18:29 +03:00
Victor Petukhov
5c3835ab39
[FE 1.0] Don't use identifier in WhenMissingCase.kt if it wasn't provided
...
^KT-49702 Fixed
2021-11-22 10:44:06 +03:00
Victor Petukhov
42805db989
[FE 1.0] Take into account import aliases during hidden member resolution
2021-11-22 10:43:43 +03:00
Dmitriy Novozhilov
da02d25278
[FE 1.0] Implement deprecation warning for private constructors of sealed classes
...
^KT-44866
^KT-49729 Fixed
2021-11-18 13:54:05 +03:00
Ivan Kylchik
c7435ba760
Replace all occurrences of WITH_RUNTIME with WITH_STDLIB
...
We are going to deprecate `WITH_RUNTIME` directive. The main reason
behind this change is that `WITH_STDLIB` directive better describes
its meaning, specifically it will add kotlin stdlib to test's classpath.
2021-11-17 15:26:38 +03:00
Ivan Kochurkin
f05436b939
[FIR] Fix false positive case of CANNOT_CHECK_FOR_ERASED
...
Restore CANNOT_CHECK_FOR_ERASED as error
2021-11-16 18:15:49 +03:00
Dmitriy Novozhilov
2aa027639c
[FIR] Fix access to fields from super class
...
^KT-49654 Fixed
2021-11-16 15:48:08 +03:00
Dmitriy Novozhilov
499b97d51e
[FIR] Fix setting file in supertypes resolution
...
^KT-49652 Fixed
2021-11-16 15:48:06 +03:00
Nikolay Lunyak
2fb066e261
KT-47101: Fix companion supertypes
2021-11-15 13:22:38 +00:00
Ilmir Usmanov
b7d88be41a
Regenerate FIR diagnostics-related files
2021-11-13 12:38:49 +01:00
zhelenskiy
c1dc1f7e33
Diagnostics renamed
...
Signed-off-by: zhelenskiy <zhelenskiy2000@yandex.ru >
2021-11-13 12:38:45 +01:00
Ivan Kochurkin
98cce8e05b
[FIR] Support of intersection types in bareTypes.doUnify ^KT-48832 Fixed
2021-11-12 15:20:47 +03:00
Ivan Kochurkin
d0a4ca199d
[FIR] Add UNCHECKED_CAST
...
Regenerate diagnostics code
2021-11-12 15:20:45 +03:00
Ivan Kochurkin
2b5524b18f
[FIR] Add CAST_NEVER_SUCCEEDS
2021-11-12 15:20:44 +03:00
Ivan Kochurkin
e52a410599
[FIR] Initialize outer type parameters for local classes
2021-11-12 15:20:42 +03:00
Mikhail Glukhikh
b2d020606e
FIR: don't generate extension callable reference without receiver
2021-11-12 12:53:29 +03:00
Denis.Zharkov
6e15ee8fea
FIR: Refine callable reference resolution in assignment position
...
synthetic_select<() -> T>(::foo) form allows to select better candidate
than synthetic_select(::foo) with expect type `() -> T`
2021-11-10 22:00:01 +03:00
Denis.Zharkov
65d7da122f
FIR: Fix invalid INITIALIZER_TYPE_MISMATCH for suspend lambda
2021-11-10 22:00:01 +03:00
Denis.Zharkov
994040c91c
FIR: Support invoke convention on super-qualified calls
2021-11-10 22:00:00 +03:00
Ilya Kirillov
348403b1f3
FIR: do not inherit external modifier from super declaration
2021-11-08 19:01:35 +01:00
Denis.Zharkov
2e37ec6f0c
FIR: Fix false-positive ILLEGAL_RESTRICTED_SUSPENDING_FUNCTION_CALL on invokeExtension calls
2021-11-02 19:08:27 +03:00
Denis.Zharkov
37b5237e97
FIR: Fix type alias case for callable reference resolution type
2021-11-02 19:08:26 +03:00
Victor Petukhov
c8dea3db35
Add test for using underscored type in different positions
2021-11-01 13:03:40 +03:00
Victor Petukhov
5508d40371
Put using underscored type arguments under a feature
2021-11-01 12:25:45 +03:00
Victor Petukhov
248c9550cd
Support type annotations resolution on an underscored type argument
2021-11-01 12:25:10 +03:00
Victor Petukhov
b69fb6779f
Basic support of partially specified type arguments though a new underscore operator for type arguments
...
^KT-13394
2021-11-01 12:25:07 +03:00
zhelenskiy
ea10b4a781
Synchronizing by values and primitives is forbidden
...
Signed-off-by: zhelenskiy <zhelenskiy2000@yandex.ru >
2021-10-29 18:50:30 +02:00
Dmitriy Novozhilov
877b53201b
[FIR] Prohibit access to members of companion of enum from enum entry initializer
...
^KT-49110
2021-10-29 18:45:23 +03:00
Ivan Kochurkin
744191099c
[FIR] Fix false positive "return required" for if/else with inlined return in branch
...
^KT-49289 Fixed
2021-10-28 20:02:25 +03:00
Nikolay Lunyak
0eb2d117ef
[FIR] KT-45972, KT-49072: Add visibility checks to the type resolution
2021-10-28 14:31:27 +03:00
Mikhail Glukhikh
8bd0b237b7
Convert EXPOSED_PROPERTY_TYPE_IN_CONSTRUCTOR into deprecation error
...
#KT-28078 Fixed
2021-10-27 19:43:01 +03:00
Tianyu Geng
a969e5af50
FIR: fix API mode checker for local functions
2021-10-27 19:42:52 +03:00
Tianyu Geng
31b7248769
FIR: suppress excessive warning on java Class
...
The root cause is https://youtrack.jetbrains.com/issue/KT-49358 though.
We should undo this change after that issue is fixed.
2021-10-27 19:42:45 +03:00
Dmitriy Novozhilov
f26059a7d3
[FE] Add clear warning about future changes about nullability of safe call with non nullable receiver
...
^KT-46860
2021-10-27 16:28:37 +03:00
Victor Petukhov
e0a4704c21
Revert "Make freshly substituted type variables def not nullable if they come from not null type parameter"
...
This reverts commit 41936a790b37bef45d7e7dad851856ea1750ef01.
2021-10-26 19:37:58 +03:00
Victor Petukhov
2261928f4f
Process simple CapturedType in ClassicTypeSystemContext.typeConstructorProjection as well
...
^KT-49101 Fixed
2021-10-26 19:37:58 +03:00
Victor Petukhov
836c6b280d
Make freshly substituted type variables def not nullable if they come from not null type parameter
...
^KT-48778 Fixed
2021-10-26 19:37:57 +03:00
Victor Petukhov
02d06b6390
Transform VisibilityError diagnostic for callable references to further report it on the corresponding argument of a base call
...
^KT-46437 Fixed
2021-10-26 19:37:57 +03:00
Victor Petukhov
d015d3bc0e
Don't enhance previously erased value parameters for jspecify strict mode
...
^KT-48261 Fixed
2021-10-26 19:37:55 +03:00
Denis.Zharkov
5690a9f21b
FIR: Fix overridability of Kotlin vararg from Java
2021-10-26 18:45:59 +03:00
Denis.Zharkov
4b1ce6c1a7
FIR: Fix safe call receiver nullability after null check
2021-10-26 18:45:59 +03:00
Denis.Zharkov
0bdea4f20a
FIR: Do not create incorrect synthetic property
2021-10-26 18:45:59 +03:00
Denis.Zharkov
52c2908bb7
FIR: Fix another inconsistency with FE1.0 in synthetic properties resolution
2021-10-26 18:45:59 +03:00