Irene Dea
374d287d08
Reorganize TypeAttributeTranslatorExtension
2022-01-08 15:26:38 +03:00
Irene Dea
19bfc43bee
Fixes and refactors
2022-01-08 15:25:07 +03:00
Victor Petukhov
d3ee284461
[FE 1.0] Check for readiness to fix for all type variables after try analysing a lambda with the builder inference
...
^KT-50498 Fixed
2021-12-24 13:37:45 +03:00
sebastian.sellmair
ba201a249e
[MPP] allModulesProvidingActualsFor: Support non-hmpp ide case
...
^KT-50156
2021-12-23 08:57:54 +00:00
sebastian.sellmair
2e55b82ba3
[MPP] Introduce allModulesProviding(Expects|Actuals)For filters
...
This new filters will also take care of filtering out descriptors
that are provided by 'regular' dependencies instead of 'dependsOn'
dependencies.
^KT-50120
2021-12-21 21:31:44 +00:00
sebastian.sellmair
e561b095f7
[MPP] Fix checkExpectedParameter using wrong ModuleFilter
...
KT-50120 Partially solved for functions.
ClassConstructors seem to be deserialized with 'isExpect=false'
which will still lead to wrong 'expect/actual matching'
2021-12-21 21:31:43 +00:00
Vyacheslav Gerasimov
f7a9065b75
Build: Use intellij maven repo instead of downloaded IDEA
...
#KTI-82
2021-12-16 21:48:23 +03:00
Victor Petukhov
e50e055eb4
[FE 1.0] Don't try to compute value parameters for variables while creating a flat signature for the overload resolution
...
^KT-50172 Fixed
2021-12-16 17:46:01 +03:00
Victor Petukhov
24900630cb
Revert "Revert "[FE 1.0] Provide an API to clean compile time initializer cache for variable descriptor""
...
This reverts commit faeb5d21ab .
2021-12-14 14:21:46 +03:00
Nikolay Krasko
faeb5d21ab
Revert "[FE 1.0] Provide an API to clean compile time initializer cache for variable descriptor"
...
This reverts commit 0e6762acc3 .
2021-12-10 16:54:55 +03:00
Victor Petukhov
0e6762acc3
[FE 1.0] Provide an API to clean compile time initializer cache for variable descriptor
2021-12-09 16:15:24 +03:00
Victor Petukhov
7475d26902
[FE 1.0] Implement checker to detect changed resolve for progressions and ranges due to the start of implementing Collection<T>
...
^KT-49276 Fixed
2021-12-07 18:48:27 +03:00
Anastasiya Shadrina
4372670dfa
[FE] Minor: remove redundant check
2021-12-02 20:24:45 +03:00
Anastasiya Shadrina
17b7bca5e4
[FE] CheckContextReceiversResolutionPart: return if no context receivers
2021-12-02 20:24:45 +03:00
Anastasiya Shadrina
fd7d000138
[FE] Minor: rename ApplicableArgumentWithConstraint
2021-12-02 20:24:43 +03:00
Anastasiya Shadrina
aeaa7f71da
[FE] Refactor: remove unused imports
2021-12-02 20:24:42 +03:00
Anastasiya Shadrina
2ce885b811
[FE] Minor: rename getArgumentWithConstraintIfCompatible()
2021-12-02 20:24:42 +03:00
Anastasiya Shadrina
4aa05d85a4
[FE] Handle context receivers in CallableReferencesCandidateFactory
2021-12-02 20:24:29 +03:00
Anastasiya Shadrina
083e718efd
[FE] Protect resolution from context receivers calculations
2021-12-02 20:24:29 +03:00
Anastasiya Shadrina
a091b345a0
[FE] Provide overloadability for candidates with different CR
2021-12-02 20:24:19 +03:00
Anastasiya Shadrina
7fce2691e2
[FE] Allow lambda argument cast to contextual functional type
2021-12-02 20:24:15 +03:00
Anastasiya Shadrina
d8faa9686d
[Tests] Test samples from KEEP
2021-12-02 20:24:14 +03:00
Anastasiya Shadrina
f92ac6ca14
[FE] TowerResolver optimizations
2021-12-02 20:24:12 +03:00
Anastasiya Shadrina
e3f987459c
[PSI, FE] Support functional types
2021-12-02 20:24:11 +03:00
Anastasiya Shadrina
e53cee77a3
[FE] Support multiple candidates for extension receiver
2021-12-02 20:24:10 +03:00
Anastasiya Shadrina
af78ec7371
[PSI, FE] Review fixes
2021-12-02 20:24:04 +03:00
Anastasiya Shadrina
f427265739
[FE] Resolve overload conflict between contextual and non-contextual declarations
2021-12-02 20:24:03 +03:00
Anastasiya Shadrina
814777ba8c
[FE] Report ambiguity in all possible cases
2021-12-02 20:23:58 +03:00
Anastasiya Shadrina
37495bcba0
[FE] Change resolution scheme
2021-12-02 20:23:57 +03:00
Anastasiya Shadrina
1f6746dc74
[FE] Relax the "no subtyping between context receivers" limitation
2021-12-02 20:23:56 +03:00
Anastasiya Shadrina
bfd20e1890
[FE] Move context receivers checks to the separate resolution part
2021-12-02 20:23:56 +03:00
Anastasiya Shadrina
c34fe8d547
[FE] Implement temporary resolution algorithm
2021-12-02 20:23:24 +03:00
Anastasiya Shadrina
d923c95671
[FE] Add context receivers to scope
2021-12-02 20:23:22 +03:00
Anastasiya Shadrina
a39fbd3822
[FE] Add getContextReceivers to CallableDescriptor interface
2021-12-02 20:23:17 +03:00
Denis.Zharkov
0d9ad62d4a
Fix inference for lambdas with with extension function expected type
...
^KT-49832 Fixed
^KT-49836 Fixed
2021-11-26 19:39:51 +03:00
Denis.Zharkov
61fe70b600
Minor. Rename isAnonymousFunction to isFunctionExpression
2021-11-26 19:39:50 +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
42805db989
[FE 1.0] Take into account import aliases during hidden member resolution
2021-11-22 10:43:43 +03:00
Dmitriy Novozhilov
93378b1a04
[FE 1.0] Resolve private constructors of sealed classes same as for regular classes
...
^KT-44866
^KT-49729
2021-11-18 13:54:05 +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
Victor Petukhov
64c682f465
Remove constraints containing stub types after completion of the common system of a builder inference call
...
^KT-49285 Fixed
2021-10-26 19:37:59 +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
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
e34b2d1850
Have common KotlinCallArgument for CompatibilityWarningOnArgument
2021-10-26 19:37:56 +03:00
Irene Dea
78ee6b2a09
Extend CandidateInterceptor to intercept ResolvedCallAtom candidate
2021-10-14 18:32:03 +03:00
Victor Petukhov
abd2507107
Don't discriminate generics during callable references resolution
...
^KT-49038 Fixed
2021-10-01 22:09:33 +03: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
Alexander Udalov
dbd28142d0
Fix callable reference adaptation for vararg in fake override
...
`mappedVarargElements` are populated with parameters from
`argumentMapping`, which is computed using `ArgumentsToParametersMapper`
which calls `original` on all value parameters (see
ArgumentsToParametersMapper.kt:136).
So the code that adds empty lists for unassigned vararg parameters
should also call `original`. Otherwise, in the added test, we ended up
with two arguments for the parameter `s` in `id(::base1)`, one for
`Base.s` containing the correct value, and another for `Derived.s`
containing the empty list. Psi2ir took the last one, which resulted in
empty array being passed to the vararg parameter.
Note that all of this is caused by the fact that `original` of a fake
override parameter is the parameter of the base function. This seems
suspicious because `original` of a fake override _function_ is that fake
override itself (NOT the base function), but this would probably be very
risky to change at this point.
#KT-48835 Fixed
2021-09-30 14:08:38 +02:00