Mikhail Glukhikh
d00af1c932
FE: drop DiagnosticReporter.context.report & rename reportAndCommit
2022-10-17 12:46:24 +00:00
Mikhail Glukhikh
1826d9b332
K2: add & fix tests for JVM BE diagnostics
2022-10-17 12:46:24 +00:00
Xin Wang
69a4de0461
K2 JVM: Take JVM declarations conflicting error back
...
Since SimpleDiagnosticsCollectorWithSuppress have been replaced by
PendingDiagnosticsCollectorWithSuppress after commit 9add6f3d55 ,
diagnostics need to be committed now.
#KT-54366 Fixed
2022-10-17 12:46:23 +00: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
Dmitriy Novozhilov
6ef3d1e573
[FE] Add helper methods for reporting diagnostics with DiagnosticContext context receiver
2022-09-07 07:57:36 +00:00
Simon Ogorodnik
513af2dfbc
FIR. Refactor smart-cast representation in FIR tree
...
Make smart-casts non-transparent expression without delegation
to underlying FirQualifiedAccessExpression, as children delegation in
fir tree has unclear semantics
Remove two different kinds of tree nodes for smart-casts
2022-08-15 21:46:11 +00:00
Dmitry Gridin
4ceb170917
regenerate tests
2022-08-05 14:12:41 +02:00
Mikhail Glukhikh
bc396b9765
K2: don't report RETURN_TYPE_MISMATCH on last statement returns
...
#KT-53198 Fixed
2022-07-22 16:39:51 +00:00
Mikhail Glukhikh
07f16ef378
K2 LL API: implement automatic diagnostic suppression
2022-07-22 11:35:27 +00:00
Mikhail Glukhikh
9add6f3d55
K2: add more accurate & more automatic control of diagnostic suppression
...
#KT-51363 Fixed
2022-07-22 11:35:26 +00:00
Dmitriy Novozhilov
f587c02d38
[FE] Move ServiceLoaderLite to :compiler:frontend.common
...
This is needed to be able to use this class inside FIR part of IDE plugin
2022-06-29 12:00:00 +00:00
Ivan Kochurkin
b573532d8c
Introduce COMPONENT_FUNCTION_NAME_PREFIX constant
2022-06-17 23:26:15 +00:00
Nikolay Lunyak
858999c1a1
[FIR] Preserve information about prefix/postfix-ness
...
This information is needed for dynamics
2022-06-02 13:47:31 +00:00
Ilya Chernikov
03cbfea737
FIR LT: Introduce source file abstraction, carry it from parsing to IR
...
along with source lines mapping, allows to "emulate" usage of the
PSI files which allows to extract source file and line mapping info
on every stage from source element.
It makes sense to use this mapping for the error reporting too.
2022-03-30 08:34:30 +00:00
Ilya Chernikov
ae10346d75
Refactor FIR diagnostics: cleanup and extract position finder
...
for reusing the latter in the inliner for LT-based sources
2022-03-30 08:34:13 +00:00
Mikhail Glukhikh
4178c8156a
Fix NPE in KtSourceElement.elementType #KT-44152 Fixed
2022-03-10 09:01:58 +00:00
Dmitriy Novozhilov
52b72a7dac
[FIR] Implement Int -> Long conversions for literals and operators over them
...
^KT-38895
^KT-50996 Fixed
^KT-51000 Fixed
^KT-51003 Fixed
^KT-51018 Fixed
2022-02-07 13:36:36 +03:00
Vyacheslav Gerasimov
f7a9065b75
Build: Use intellij maven repo instead of downloaded IDEA
...
#KTI-82
2021-12-16 21:48:23 +03:00
Ilya Chernikov
c1c94778ce
Detect and report inner classes capturing script instance
2021-12-14 13:39:22 +03:00
Ivan Kochurkin
800d594a4f
[FIR] Check adding default error messages for all diagnostics ^KT-49973 fixed
...
Also, check for duplicates
2021-12-09 12:31:23 +00:00
Dmitriy Novozhilov
7bcd3c7948
[FIR] Add FirExtensionRegistrarAdapter to fix extension points in FE 1.0 IDE plugin
...
FirExtensionRegistrar is FIR specific extension which requires FIR
classes to work, which are missing in dependencies of FE 1.0 IDE plugin.
To fix this issue FirExtensionRegistrarAdapter is introduced. This
class is a base class for FirExtensionRegistrar and it does not have
any FIR specific classes in it's API, so it can be safely registered
in IDE
2021-12-06 17:19:34 +03:00
Victor Petukhov
5c3835ab39
[FE 1.0] Don't use identifier in WhenMissingCase.kt if it wasn't provided
...
^KT-49702 Fixed
2021-11-22 10:44:06 +03:00
Tianyu Geng
f217bb94de
Use more consistent names for inheritors of BooleanIsMissing
2021-11-04 23:04:35 +01:00
Ilya Chernikov
5bdda9c7f8
Implement suppression cache based on IR tree, use it in reporter
2021-10-27 22:17:42 +02:00
Ilya Chernikov
bfe31c97ac
Add support for ASTs without parents to suppress cache
2021-10-27 22:17:42 +02:00
Ilya Chernikov
7ef806b2ed
Extract AbstractKotlinSuppressCache to frontend.common
2021-10-27 22:17:42 +02:00
Ilya Chernikov
70366dc7a6
Refactor diagnostic & result reporters...
...
to better reflect actual roles
2021-10-27 22:17:41 +02:00
Ilya Chernikov
ea1edc2bd9
Add equality to diagnostic context, simplifying deduplication
2021-10-27 22:17:41 +02:00
Ilya Chernikov
fc176e9845
Refactor IR reporting and infrastructure
2021-10-27 22:17:41 +02:00
Ilya Chernikov
da2d3f29da
Add multiple renderer sources support to new diagnostics infrastructure
2021-10-27 22:17:41 +02:00
Ilya Chernikov
1ce4075112
Prepare CLI reporting infrastructure for non-PSI diagnostics
2021-10-27 22:17:40 +02:00
Ilya Chernikov
5446168770
Add path to FirFile to pass it to the DiagnosticContext
2021-10-27 22:17:40 +02:00
Ilya Chernikov
1e056a7aa8
Report IR errors via new diagnostic infrastructure
2021-10-27 22:17:40 +02:00
Ilya Chernikov
21ea92cd4a
Extract mutable diagnostic context to separate interface
2021-10-27 22:17:40 +02:00
Ilya Chernikov
9e60c70db7
Add abstract source element and switch diagnostics to it
2021-10-27 22:17:40 +02:00
Ilya Chernikov
524e40708d
Move report helpers to frontend.common
2021-10-27 22:17:40 +02:00
Ilya Chernikov
e9f59e8d1d
Move common diagnostics infrastructure to frontend.common
2021-10-27 22:17:39 +02:00
Ilya Chernikov
a65beb2dc5
Move Fir*SourceElement to frontend.common, rename to Kt* (complete)
2021-10-27 21:44:11 +02:00
Ilya Chernikov
c50c8ad270
Move FirSourceElement to frontend.common (only move to save history)
2021-10-27 21:43:15 +02:00
Jinseong Jeon
5af24dc6ce
FIR/LC: use DataClassResolver when determining componentN/copy
2021-09-30 19:42:42 +02:00
Victor Petukhov
b957831683
Use WarningAwareUpperBoundChecker independently
...
^KT-47920 Fixed
^KT-48290 Fixed
2021-09-30 20:08:58 +03:00
Vyacheslav Gerasimov
ab146bd6d4
Build: Fix deprecated Gradle configurations usages
...
for migration to Gradle 7+ #KTI-559
2021-09-26 18:28:44 +03:00
Ilya Kirillov
a8d321db63
FIR IDE: do not use FE1.0 compiler jars in frontend-independent-modules
2021-09-14 14:45:43 +02:00
Dmitriy Novozhilov
0260bf8767
[FE] Move diagnostic parameter renderers to common module
2021-09-09 17:20:20 +03:00
Dmitriy Novozhilov
ddc6c70611
[FE 1.0] Move diagnostic parameter renderers to common module
2021-09-09 17:20:15 +03:00
Jinseong Jeon
5819959cce
Consolidate arrayOf call names
2021-08-18 16:04:36 +03:00
Dmitriy Novozhilov
f3116cb64a
Fix NON_EXHAUSTIVE_WHEN_STATEMENT warnings in project code
2021-07-20 13:33:46 +03:00
Ilya Kirillov
75331b3448
FIR IDE: abstract low-level-api from dependency on idea
2021-06-20 22:07:11 +02:00
Jinseong Jeon
477c1c8cd7
Migrate CompileTimeType and OperationsMap to frontend.common
2021-06-19 21:58:47 -07:00
Ivan Kochurkin
ef53f0e0b3
[FIR] Render diagnostics parameters instead of full text in debug messages (closer to old tests)
2021-05-25 00:07:32 +03:00