Nikolay Lunyak
79ceaf03bf
[FIR] Add ir support
2021-09-11 22:05:38 +03:00
Nikolay Lunyak
8b918e12b2
[FIR] Simplify FirPropertyFieldDeclarationChecker
2021-09-11 22:05:37 +03:00
Nikolay Lunyak
30e52186eb
[FIR] Make default accessors always present
2021-09-11 22:05:37 +03:00
Nikolay Lunyak
cc0d63117a
[FIR] Add property type narrowing
2021-09-11 22:05:36 +03:00
Nikolay Lunyak
56b2a984ce
[FIR] Quick fix FirModifierChecker
2021-09-11 22:05:35 +03:00
Nikolay Lunyak
25124cca3d
[FIR] Add an interface/abstract checker for the backing field
2021-09-11 22:05:35 +03:00
Nikolay Lunyak
aefd6c30ad
[FIR] Merge FirPropertyFieldDeclarationSymbol into FirBackingFieldSymbol
2021-09-11 22:05:34 +03:00
Nikolay Lunyak
1291f9e460
[FIR] Add missing getters generation
2021-09-11 22:05:34 +03:00
Nikolay Lunyak
b72488b4c2
[FIR] Add replaceGetter & replaceSetter
2021-09-11 22:05:33 +03:00
Nikolay Lunyak
47abdf2de1
[FIR] Add a modifiers diagnostic for the backing field
2021-09-11 22:05:33 +03:00
Nikolay Lunyak
d4d43b9907
[FIR] Add type-related diagnostics for the backing field
2021-09-11 22:05:32 +03:00
Nikolay Lunyak
d2124e1ec6
[FIR] Add checkers support for FirBackingField
2021-09-11 22:05:31 +03:00
Nikolay Lunyak
7a522ade15
[FIR] Add isSubtypeOf function
2021-09-11 22:05:30 +03:00
Nikolay Lunyak
38079372e1
[FIR] Add RawFirBuilder & DeclarationsConverter support
2021-09-11 22:05:29 +03:00
Nikolay Lunyak
ee58df6b3c
[FIR] Add FirBackingField
2021-09-11 22:05:29 +03:00
Nikolay Lunyak
a0982341ee
[FIR] Update parser test data
2021-09-11 22:05:28 +03:00
Nikolay Lunyak
6776930881
[FIR] Forbid explicit backing fields for FE 1.0
2021-09-11 22:05:27 +03:00
Nikolay Lunyak
37f832bc2f
[FIR] Add KtBackingField (see: KT-CR-4119, KT-14663)
2021-09-11 22:05:26 +03:00
Nikolay Lunyak
654ed3caf6
[FIR] Add propertySymbol to property accessors
2021-09-11 22:05:25 +03:00
Roman Golyshev
e34b64d6f2
[FIR IDE] Make KtFirImportOptimizer more robust to reference errors
2021-09-11 14:57:01 +03:00
Aleksei.Cherepanov
cc5382b37e
[JPS] Fix incremental build after changing Java constant
...
InlineConstantTracker implemented for tracking changed java static final constants, that used in kotlin.
#KT-46506 Fixed
2021-09-11 13:00:00 +03:00
pyos
23420ecf7a
IR: do not infer array element types for non-annotation constants
...
While annotations restrict the set of allowed types to a few final
built-ins, in arbitrary constants we can have array elements that are
some subtype of the array's element type.
#KT-48671 Fixed
2021-09-10 21:55:15 +02:00
Pavel Kunyavskiy
51c85e7f86
[K/N] Safer handling of bridges function in dce
2021-09-10 15:58:42 +00:00
Mikhail Glukhikh
007cf2ce7c
Rename AnalysisFlags.useExperimental to optIn
2021-09-10 16:29:18 +03:00
Mikhail Glukhikh
aedcec7715
Drop unused LanguageSettingsDirectives.EXPERIMENTAL
2021-09-10 16:29:17 +03:00
Mikhail Glukhikh
fc6403679a
Rename !USE_EXPERIMENTAL test directive to !OPT_IN
2021-09-10 16:29:16 +03:00
Mikhail Glukhikh
3febabe977
Use OPT_IN instead of EXPERIMENTAL in diagnostic names
2021-09-10 16:29:13 +03:00
Sergej Jaskiewicz
2f07589b42
[JS IR] Avoid name clashes for @JsQualifier-annotated declarations
...
#KT-42039 Fixed
2021-09-10 15:48:43 +03:00
Sergej Jaskiewicz
681ff2dcec
[test] Add missing whitespaces
2021-09-10 15:48:40 +03:00
Roman Golyshev
9d6a3edbe2
[FIR] Make copyAsImplicitInvokeCall inline
2021-09-10 14:06:17 +03:00
Pavel Kunyavskiy
7e58660ce2
[K/N] Emmit error on using @SymbolName with new mm
2021-09-10 07:46:39 +00:00
Pavel Kunyavskiy
ca9ec76c08
[K/N] Replace SymbolName with GCUnsafeCall in interop
2021-09-10 07:46:39 +00:00
Pavel Kunyavskiy
91c6ee1ebb
[K/N] Replace SymbolName with GCUnsafeCall in stdlib
2021-09-10 07:46:39 +00:00
Tianyu Geng
05fbed68e2
FIR checker: report PROPERTY_AS_OPERATOR
2021-09-10 07:07:43 +03:00
Tianyu Geng
4915d8dda3
FIR checker: support DUPLICATE_LABEL_IN_WHEN
...
Changes from FE1.0:
1. As discussed previously, no expression evaluation happens during this
check.
2. FE1.0 doesn't check redundant object comparisons.
2021-09-10 07:07:42 +03:00
Ivan Kochurkin
7c6326856b
[FIR] Use toFirRegularClassSymbol instead of toFirRegular in checkers
2021-09-10 00:49:11 +03:00
Ivan Kochurkin
8cdb79f969
Move JvmNames, JvmFieldApplicabilityProblem to common.jvm module
2021-09-10 00:49:10 +03:00
Ivan Kochurkin
ee37768808
[FIR] Rename getClassLikeSymbolFqName to getClassLikeSymbolByClassId
2021-09-10 00:49:10 +03:00
Ivan Kochurkin
69a13a3269
[FIR] Use getAnnotationByClassId instead of getAnnotationByFqName in JVM checkers
2021-09-10 00:49:09 +03:00
Ivan Kochurkin
9ee7fecdd5
[FIR] withSuppressedDiagnostics now takes FirAnnotationContainer instead of FirElement
...
Reduce allocations in withSuppressedDiagnostics
2021-09-10 00:49:09 +03:00
Ivan Kochurkin
f3e754f314
[FIR] Remove excess FirAnnotationContainer from some super types
2021-09-10 00:49:08 +03:00
Ivan Kochurkin
55f33999f1
[FIR] Add REPEATED_ANNOTATION, REPEATED_ANNOTATION_WARNING
2021-09-10 00:49:07 +03:00
Ivan Kochurkin
fa12e72551
[FIR] Add REPEATABLE_CONTAINER_* diagnostics
...
REPEATABLE_CONTAINER_MUST_HAVE_VALUE_ARRAY
REPEATABLE_CONTAINER_HAS_NON_DEFAULT_PARAMETER
REPEATABLE_CONTAINER_HAS_SHORTER_RETENTION
REPEATABLE_CONTAINER_TARGET_SET_NOT_A_SUBSET
REPEATABLE_ANNOTATION_HAS_NESTED_CLASS_NAMED_CONTAINER
2021-09-10 00:49:07 +03:00
Ivan Kochurkin
6fa1c0353c
Use deprecation type for some REPEATABLE_* diagnostics
2021-09-10 00:49:06 +03:00
Ivan Kochurkin
f414a91c66
[FIR] Implement FirInterfaceDefaultMethodCallChecker
...
Add diagnostics: INTERFACE_STATIC_METHOD_CALL_FROM_JAVA6_TARGET,
INTERFACE_CANT_CALL_DEFAULT_METHOD_VIA_SUPER,
DEFAULT_METHOD_CALL_FROM_JAVA6_TARGET
2021-09-10 00:49:04 +03:00
Ivan Kochurkin
97bc079634
[FIR] Add REPEATED_ANNOTATION_WITH_CONTAINER, NON_SOURCE_REPEATED_ANNOTATION
...
REPEATED_ANNOTATION_TARGET6
2021-09-10 00:49:03 +03:00
Ivan Kochurkin
2baed77598
[FIR] Add JVM_SYNTHETIC_ON_DELEGATE diagnostic
...
Extract JVM names to common JvmNames
2021-09-10 00:49:03 +03:00
Ivan Kochurkin
3725c58794
[FIR] Add INAPPLICABLE_JVM_FIELD, INAPPLICABLE_JVM_FIELD_WARNING
2021-09-10 00:49:02 +03:00
Ivan Kochurkin
e3805c9b98
Extract JvmNames, JvmFieldApplicabilityProblem to compiler.common
2021-09-10 00:49:01 +03:00
Ivan Kochurkin
d4746903c8
[FIR] Rename getOuterClass to getContainingDeclaration, fix if for local classes
...
Simplify checking of WRONG_NUMBER_OF_TYPE_ARGUMENTS
2021-09-10 00:49:01 +03:00