Dmitriy Novozhilov
ff3f3d2f9b
[FIR] Properly setup search scope for IC symbol provider
2021-05-20 14:21:49 +03:00
Dmitriy Novozhilov
6e4cc49f1d
[FIR] Cleanup IC provider creation in FirSessionFactory
2021-05-20 14:21:47 +03:00
Jinseong Jeon
f0f1e2d945
FIR checker: report CAPTURED_VAL_INITIALIZATION
2021-05-20 13:59:13 +03:00
Andrey Zinovyev
d38effcbbe
Use camel-case in FirFunctionCallOrigin
...
Also componentCall is operator call
2021-05-20 13:46:35 +03:00
Andrey Zinovyev
419aa65381
[FIR] Fix more tests because of modifier usage in resolution
2021-05-20 13:46:34 +03:00
Andrey Zinovyev
07a8ae7e71
[FIR] Mark more calls origin as OPERATOR
2021-05-20 13:46:32 +03:00
Andrey Zinovyev
0a45b3a50b
[FIR] Set Function call origin to assign operators' functions
2021-05-20 13:46:31 +03:00
Andrey Zinovyev
cd22255ab7
[FIR] Set Function call origin in light tree too
...
Plus actualize some tests
2021-05-20 13:46:30 +03:00
Andrey Zinovyev
e021e25d6c
[FIR] Resolve operator calls to operator functions only
2021-05-20 13:46:29 +03:00
Andrey Zinovyev
b1c8669b43
[FIR] Resolve infix calls to infix functions only
...
Implements INFIX_MODIFIER_REQUIRED diagnostics
2021-05-20 13:46:27 +03:00
Mikhail Glukhikh
6dd41b617a
FIR: position INAPPLICABLE_FILE_TARGET on file use-site (when possible)
2021-05-20 12:22:22 +03:00
Mikhail Glukhikh
6572010eed
Introduce use-site annotation target checks for FIR
2021-05-20 12:22:22 +03:00
Mikhail Glukhikh
9a13ec9b76
FIR: report WRONG_ANNOTATION_TARGET on types
2021-05-20 12:22:22 +03:00
Mikhail Glukhikh
2a33a6927c
FIR: report WRONG_ANNOTATION_TARGET(_WITH_USE_SITE_TARGET) on declarations
2021-05-20 12:22:21 +03:00
Mikhail Glukhikh
95f2c52659
FirAnnotationHelpers: use KotlinTarget instead of AnnotationTarget
2021-05-20 12:22:21 +03:00
Mikhail Glukhikh
d11092ae3c
FIR: support WRONG_ANNOTATION_TARGET on expressions
2021-05-20 12:22:21 +03:00
Mikhail Glukhikh
92ab600081
FIR: add check of SOURCE retention for EXPRESSION-targeted annotation
2021-05-20 12:22:21 +03:00
Mikhail Glukhikh
4b00a43b22
FIR: add ANNOTATION_ON_SUPERCLASS diagnostic
2021-05-20 12:22:20 +03:00
Mikhail Glukhikh
0d6bc7e7b2
FIR: report ANNOTATION_CLASS_CONSTRUCTOR_CALL diagnostic
2021-05-20 12:22:20 +03:00
Mikhail Glukhikh
3663884db2
FIR: support CONDITION_TYPE_MISMATCH diagnostic
...
We report CONDITION_TYPE_MISMATCH on
- loop conditions
- when branch conditions
- binary logic arguments
2021-05-20 12:22:20 +03:00
Mikhail Glukhikh
e85d97b894
FIR: introduce separate THROWABLE_TYPE_MISMATCH
2021-05-20 12:22:20 +03:00
Mikhail Glukhikh
f0ce311fc6
Drop unused ConeTypeMismatchError
2021-05-20 12:22:19 +03:00
Dmitriy Novozhilov
99cdb86145
[FIR] Move createSessionWithDependencies to FirSessionFactory
2021-05-19 16:29:20 +03:00
pyos
f1f13b6e97
JVM_IR: do not evaluate receiver of static calls if it is pure
...
#KT-46802 Fixed
2021-05-19 16:22:59 +03:00
Ilmir Usmanov
9fe503eeb3
Minor. Add regression test
...
#KT-45685 Fixed
2021-05-19 12:45:26 +02:00
Jinseong Jeon
a3105da32e
FIR checker: more specific type for CONFLICTIONG_PROJECTION
2021-05-19 01:04:21 +03:00
Jinseong Jeon
8d474c0e7e
FIR checker: more specific type for containing class in diagnostics
...
about abstract members in non-abstract class
2021-05-19 01:04:20 +03:00
Jinseong Jeon
864ab2cadd
FIR checker: clearer parameter names in diagnostics
2021-05-19 01:04:19 +03:00
Dmitriy Novozhilov
e08df2c530
[Test] Add diagnostics and codegen tests with hmpp module structure
2021-05-19 00:52:31 +03:00
Dmitry Petrov
851980e36f
JVM_IR KT-45103 optimize direct invoke for lambdas and callable refs
2021-05-18 22:20:12 +03:00
pyos
bfb1a06f3d
FIR: resolve conflicts between overloads with platform integer types
2021-05-18 22:11:33 +03:00
Dmitriy Novozhilov
38fe917141
[FIR] Change order of IC symbol provider and dependency symbol provider
...
This is semantically incorrect, but current behavior leads to problems
in FIR bootstrap due to incorrect setup of IC provider. So this ordering
change is a workaround for now
2021-05-18 20:56:07 +03:00
Dmitriy Novozhilov
dbccd4d459
[FIR] Properly acquire module data in FirSignatureEnhancement
2021-05-18 20:56:04 +03:00
Steven Schäfer
60bc0f4baf
IR: Lower shared variables in enum entries (KT-46605)
2021-05-18 16:55:38 +02:00
Victor Petukhov
2239404085
Extract type preparation during type checking to a separate component
2021-05-18 17:52:23 +03:00
Victor Petukhov
0d6764efc5
Process raw types during erasion properly
...
^KT-46670 Fixed
^KT-46476 Fixed
2021-05-18 17:38:52 +03:00
pyos
7eedcf75f9
Add tests for default inline suspend lambdas
...
Broken on JVM and JVM_IR
2021-05-18 10:48:31 +02:00
pyos
34ac232a82
Add a test for KT-46601
2021-05-18 10:48:31 +02:00
Ivan Kochurkin
c3b8f3e859
[FIR] Add lValueTypeRef to FirVariableAssignment, fix tests with ASSIGNMENT_TYPE_MISMATCH
2021-05-17 22:33:18 +03:00
Ivan Kochurkin
e57108d4e8
[FIR] Implement ASSIGNMENT_TYPE_MISMATCH, RESULT_TYPE_MISMATCH diagnostics, fix tests
2021-05-17 22:33:16 +03:00
Ilya Kirillov
aa70c952eb
FIR IDE: fix SOE on opening project
...
Kotlin library may contain cycles which causes SOE in FirModuleInfoBasedModuleData.dependencies
2021-05-17 20:56:57 +02:00
Dmitry Petrov
3a0e3798ec
JVM_IR KT-46597 fix receiver type for inlined callable reference
...
Receiver type is used by SyntheticAccessorLowering to determine class in
which a synthetic accessor should be generated.
2021-05-17 20:12:58 +03:00
Igor Yakovlev
c5372be267
[FIR IDE] Move and rename RawFirFragmentForLazyBodiesBuilder into Fir Ide module
2021-05-14 23:05:57 +03:00
Igor Yakovlev
633e03b710
[FIR IDE] LowLevel api refactoring
2021-05-14 23:05:54 +03:00
Igor Yakovlev
445f13d1bf
[FIR IDE] Fix invalid body lazy resolve
2021-05-14 23:05:53 +03:00
Igor Yakovlev
37ccab4e23
[FIR] Fixed supertypes resolve for invalid code with class without ClassId
2021-05-14 23:05:48 +03:00
Igor Yakovlev
2e7eedd3f2
[FIR IDE] Correct in-body supertype resolve of fake nodes
2021-05-14 23:05:46 +03:00
Igor Yakovlev
959ff50fa7
[FIR IDE] Collect tower contexts for local declarations
2021-05-14 23:05:45 +03:00
Igor Yakovlev
ae63ad0b6d
[FIR] Fix annotations invalid references diagnostics
2021-05-14 23:05:44 +03:00
Igor Yakovlev
779a06e86f
[FIR IDE] Add types, supertypes and status lazy designated transformers
2021-05-14 23:05:41 +03:00