Dmitrii Gridin
027899a22a
[K2 AA] add missing receiverType for getter and setter
...
^KT-54311
2022-10-17 14:59:48 +00:00
Dmitrii Gridin
afe7605649
[K1 AA] fix default getter and setter
...
^KT-54311
2022-10-17 14:59:47 +00:00
Dmitrii Gridin
4ee5bf178c
[AA] DebugSymbolRenderer: render symbols recursively
...
^KT-54311
2022-10-17 14:59:47 +00:00
Dmitrii Gridin
728e1941ac
[K2] FirIdeRenderer: fix render for setter parameter annotations
...
^KT-54311
2022-10-17 14:59:47 +00:00
Dmitrii Gridin
2d240d2925
[AA] add test on property annotations
...
^KT-54311
2022-10-17 14:59:46 +00:00
Dmitrii Gridin
01d5a5bc5b
[AA] support @JvmField in KtSymbolInfoProvider
...
^KT-54311
^KT-54360 Fixed
2022-10-17 14:59:46 +00:00
Dmitrii Gridin
f4ae696aee
[AA] more tests for file scope
...
^KT-54311
2022-10-17 14:59:46 +00:00
Dmitrii Gridin
317408e780
[AA] update tests on delegated property
...
^KT-54311
2022-10-17 14:59:45 +00:00
Dmitrii Gridin
9c30411bb3
[AA] create psi-based pointer only for KtSymbolOrigin.SOURCE
...
^KT-54311
2022-10-17 14:59:45 +00:00
Dmitrii Gridin
119f6858cd
[AA] AbstractSymbolTest: add assertion on redundant directive
...
^KT-54311
2022-10-17 14:59:45 +00:00
Dmitrii Gridin
3c2e0cb3b9
[K2] KtFirClassInitializerSymbol: implement psi-based pointer
...
^KT-54311
2022-10-17 14:59:44 +00:00
Dmitrii Gridin
5d2869b099
[K2] KtFirPropertySetterSymbol: cleanup code
...
^KT-54311
2022-10-17 14:59:43 +00:00
Dmitrii Gridin
2256cd83ce
[K2] KtFirPropertyGetterSymbol: cleanup code
...
^KT-54311
2022-10-17 14:59:43 +00:00
Dmitrii Gridin
a0b814a1b6
[FIR] make FirPropertyAccessor#propertySymbol non-nullable
...
we need it to restore property accessor by property
^KT-54311
2022-10-17 14:59:42 +00:00
pyos
ee921412fc
FIR: intersect return types of declarations in intersection scopes
...
^KT-54378 Fixed
2022-10-14 08:25:26 +00:00
Ivan Kochurkin
40a01180ff
[FIR] Move createSessionWithDependencies and createEmptySession into FirSessionFactoryHelper
2022-10-13 18:11:48 +00:00
vladislav.grechko
817afcd4af
KT-MR-7307 review fixes
2022-10-13 15:19:10 +00:00
Denis.Zharkov
31ba1f1534
Add deprecation warning for false-negative TYPE_MISMATCH
...
See KT-49404 for details
In K1, within SubstitutingScope we approximate almost all the types
containing captured types are being approximated to either a lower or
an upper bound.
While mostly, it's being done correctly there are some problems with
approximations for flexible types
So, the parameter's type of A<in Any>::foo is approximated to Inv<in Any!>,
thus allowing to use Inv<*>, while it's obviously unsound.
NB: For the similar example, in B, there are regular TYPE_MISMATCH
because parameter for B<in Any>::foo is approximated to Nothing
Also, it's important to say that
- in K2 everything works because we don't use type approximation there
- approximation algorithm that works incorrectly is only being used in K1
^KT-54332 Fixed
2022-10-12 20:53:02 +00:00
Mikhail Glukhikh
0940707fd4
FE: add reproducer for KT-54004
2022-10-12 08:21:12 +00:00
Pavel Mikhailovskii
f4bdf54601
KT-8575 Fix warnings for Java synthetic properties
2022-10-10 22:03:58 +00:00
vladislav.grechko
e0c8142106
Support of custom 'equals' and 'hashCode' in inline classes
...
'equals' from any made available for overriding in inline classes
'typed' equals made available for definition in inline classes
'typed' equals definition made compulsory if 'untyped' is overridden
'operator' keyword is allowed in 'typed' equals definition
^KT-24874: Fixed
2022-10-10 16:52:34 +00:00
Mikhail Glukhikh
d491eba629
K2: add reproducer for KT-54275
2022-10-10 06:20:39 +00:00
Nikolay Lunyak
b6f950ed75
[FIR][FE 1.0] KT-47933: Warn about redundant @Repeatable
...
Merge-request: KT-MR-7318
Merged-by: Nikolay Lunyak <Nikolay.Lunyak@jetbrains.com >
2022-10-07 13:33:49 +00:00
pyos
a9ae1fcdf9
FIR CFG: handle loops and try/catch when analyzing smartcasts in lambdas
...
See KT-50092
2022-10-07 08:56:04 +00:00
pyos
77c2601382
Add a test where a local variable has the same name as a property
2022-10-07 08:56:02 +00:00
Ilya Kirillov
fceb3425c8
[Analysis API FIR] fix invalid usages of CachedValue
...
it should not cache map as values are stored on soft references
2022-10-05 15:53:54 +00:00
Ilya Kirillov
457069090b
[Analysis API FIR] fix LLFirResolveSession creation for KtNotUnderContentRootModule
2022-10-05 15:53:54 +00:00
Ilya Kirillov
4de311f671
[Analysis API FIR] remove unused CachingKtAnalysisSessionProvider.getFirResolveSession(KtSymbol)
2022-10-05 15:53:53 +00:00
Ilya Kirillov
b68532a316
[Analysis API FIR] fix memory leaks via KtAnalysisSessionCache keys
2022-10-05 15:53:53 +00:00
Roman Golyshev
3485d65213
[K2] Ignore failing tests for isUsedAsExpression
...
Those tests do not pass at the moment because of KTIJ-23143
2022-10-05 15:06:52 +00:00
Kristoffer Andersen
f765457e51
[K2] isUsedAsExpression analysis
2022-10-05 15:06:52 +00:00
Kristoffer Andersen
fcabc60471
[FIR] Insert fake source for FIR for array access temporaries
2022-10-05 16:22:22 +02:00
Ilya Kirillov
49f2f85927
[Low Level FIR] fix exception when creating symbol by invalid code
2022-10-04 12:56:07 +00:00
Ilya Kirillov
24bf273b93
[Low Level FIR] add more info to error in LLFirResolvableResolveSession
2022-10-04 12:56:06 +00:00
Nikolay Lunyak
e2fdb352f1
[FIR] KT-42962: Ensure the issue is not present in K2
...
Merge-request: KT-MR-7288
Merged-by: Nikolay Lunyak <nikolay.lunyak@jetbrains.com >
2022-10-04 12:27:17 +00:00
Ilya Kirillov
81c52e6886
[Analysis API FIR] fix call resolution on error elements
2022-10-03 16:02:23 +02:00
Ilya Kirillov
ab3f916f3f
[Analysis API FIR] fix call resolution of non-resolvable elements
2022-10-03 16:02:23 +02:00
Dmitriy Novozhilov
a6c7d4c0c6
[FIR] Analyze bodies of non delegated property accessors without expected type
...
^KT-53349 Fixed
2022-10-03 15:48:17 +03:00
Dmitriy Novozhilov
6623456d2a
[FIR] Properly support @JvmRecord
...
^KT-53867 Fixed
2022-10-03 15:48:17 +03:00
Dmitriy Novozhilov
c0ad67c4f9
[FIR] Generate java declarations for record components of java records
...
^KT-53964 Fixed
2022-10-03 15:48:17 +03:00
Ilya Kirillov
e5a941030b
[Low Level FIR] fix CME in java enhancement
...
Now all computations in FirThreadSafeCache are performed under lock
^KTIJ-23081 fixed
2022-10-02 19:00:02 +02:00
Jinseong Jeon
fc1eb02590
SLC: implement PsiVariable#computeConstantValue for light field
2022-10-02 13:41:12 +02:00
Jinseong Jeon
2fdedf8251
AA FIR: unwrap fake override constructor
2022-10-02 13:39:49 +02:00
Ilya Kirillov
5772230357
[Low Level FIR] fix memory leak via use-site use session
...
^KTIJ-22749
2022-09-30 12:19:51 +02:00
Ilya Kirillov
86670361a1
[Analysis] do not fail when reporting exception with invalid psi as attachment
2022-09-30 12:19:51 +02:00
Ilya Kirillov
4ae1cb74dd
[Analysis API FIR] fix constant evaluation for incomplete call when compiler produces IntegerLiteralType
...
^KTIJ-21531 fixed
2022-09-30 12:19:51 +02:00
Ilya Kirillov
b72dbb7819
[Analysis] fix invalid implementation of getKtModuleOfTypeSafe
2022-09-30 12:19:35 +02:00
Ilya Kirillov
913bfc0838
[Low Level FIR] fix one case in CME when traversing FIR tree
...
Before extra child nodes of classes were visited during declaration by ClassId search.
If some other thread was mutating this tree, CME could happen
this is a fix of one case from ^KTIJ-21791
2022-09-30 12:19:35 +02:00
Ilya Kirillov
ae76ce666f
[Low Level FIR] optimize getting callables in LLFirProviderHelper
2022-09-30 12:19:35 +02:00
Ilya Kirillov
556b7894d5
[Low Level FIR] do not search for declarations from kotlin. package in source modules
2022-09-30 12:15:49 +02:00