Tianyu Geng
d77db2cda6
FIR checker: expose API to check if two types are compatible
...
This is useful for quickfixes offering casts. We don't want to offer
user to cast incompatible types.
Also, explicitly allow compare to `Nothing` and handle `Nothing` from intersection
2021-09-17 01:59:05 +03:00
Tianyu Geng
951812f130
FIR checker: record whether type mismatch is due to nullability
...
This is useful for downstream quickfixes.
2021-09-17 01:59:01 +03:00
Tianyu Geng
d3e8cc577c
FIR checker: fix local type approximation on delegated property
...
Previously types of delegated property is not approximated, which can
cause local types to leak through public APIs.
2021-09-16 22:38:08 +03:00
Tianyu Geng
76e192fc8a
FIR Checker: check AMBIGUOUS_ANONYMOUS_TYPE_INFERRED
...
Also change
org.jetbrains.kotlin.fir.types.TypeUtilsKt#hideLocalTypeIfNeeded to skip
approximating anonymous objects if there are multiple super type refs so
that resolution behaves the same (for uncompilable code).
Note that this change does not implement check for
ApproximateAnonymousReturnTypesInPrivateInlineFunctions as the check is
already turned on in 1.5 and will likely not needed when FIR becomes
stable.
2021-09-16 22:38:06 +03:00
Jinseong Jeon
35409fdb8d
FIR IDE: resolve arrayOf calls in annotations
2021-09-15 22:33:20 +02:00
Jinseong Jeon
068e81570d
FIR IDE: type-aware constant conversion
2021-09-15 22:32:12 +02:00
Roman Golyshev
642591770e
[FIR] Calculate lazy initializers in properties with backing fields
...
More tests should be added in the future
2021-09-15 18:33:43 +00:00
Dmitriy Novozhilov
5c2a3bb78e
[FIR] Move duplicating names and classIds to StandardClassIds
2021-09-15 17:11:29 +03:00
Ilya Kirillov
81336820e2
FIR IDE: regenerate diagnostics
2021-09-15 11:32:59 +02:00
Ilya Kirillov
585eb9a4f0
FIR IDE: regenerate analysis api tests
2021-09-15 11:32:49 +02:00
Ilya Kirillov
5b38bd2be2
FIR IDE: fix generators after changing analysis api packages
2021-09-15 11:32:47 +02:00
Ilya Kirillov
99a65527b7
FIR IDE: fix symbol light classes imports after package changes
2021-09-15 11:32:45 +02:00
Ilya Kirillov
42f0536904
FIR IDE: move analysis api fir testdata to the analysis directory
2021-09-15 11:32:43 +02:00
Ilya Kirillov
4d52b354af
FIR IDE: move analysis api fir generator to the analysis directory
2021-09-15 11:32:33 +02:00
Ilya Kirillov
b43e664985
FIR IDE: move analysis api fir test sources to the analysis directory
2021-09-15 11:32:32 +02:00
Ilya Kirillov
5e9f807c78
FIR IDE: move analysis api fir main sources to the analysis directory
2021-09-15 11:32:30 +02:00
Ilya Kirillov
989f3248e4
FIR IDE: move low level api testdata sources to the analysis directory
2021-09-15 11:32:28 +02:00
Ilya Kirillov
633b0fa612
FIR IDE: move low level api test sources to the analysis directory
2021-09-15 11:32:25 +02:00
Ilya Kirillov
b70f4f581e
FIR IDE: move low level api main sources to the analysis directory
2021-09-15 11:32:22 +02:00
Ilya Kirillov
0c04ff98c3
FIR IDE: move analysis api to the analysis directory
2021-09-15 11:31:30 +02:00
Ilya Kirillov
55990f65cb
FIR LC: fix vararg parameter type
...
After fix in KtParamterSymbol, vararg parameter type now is a non-array type
2021-09-13 19:18:02 +02:00
Jinseong Jeon
c2964f688e
FIR LC: don't include annotations w/o use-site targets to property accessors
2021-09-09 16:07:09 +02:00
Jinseong Jeon
5446a8ad10
FIR IDE: null out for erroneous PsiType conversion
2021-09-09 16:07:09 +02:00
Dmitriy Novozhilov
762d225bd7
Unify Deprecation classes from :core:compiler.common and :compiler:frontend modules
2021-09-02 15:04:06 +03:00
Jinseong Jeon
24abf7168c
FIR LC: get origin of property accessors via light member origin
2021-08-30 23:13:23 +03:00
Jinseong Jeon
dbce9b3d45
FIR LC: use FirLightParameterList for setter parameter
...
to preserve the parent chain from setter parameter to setter
2021-08-30 23:13:22 +03:00
Ilya Kirillov
20f297aaf7
FIR LC: do not ignore useSite target for getting deprecation status
2021-08-24 20:13:18 +03:00
Ilya Kirillov
c17a4a5a3b
FIR IDE: move light classes to separate module
2021-08-24 20:13:09 +03:00
Ilya Kirillov
abe2311372
FIR IDE: move declaration/package providers to separate module
2021-08-24 20:12:58 +03:00