833c70be61
Add a visitor that checks for invalid JS interop usage and reports diagnostics. Wire the visitor up to the `DevCompilerTarget` and `Dart2jsTarget`. - Add a message without an analyzer code for this error. In the long term we may want to also add it to analyzer. - Add a new package `_js_interop_checks` to share the kernel visitor between dart2js and ddc. Some of the code is copied from ddc, and in the long term we can centralize more of the detection of JS interop annotations to this package. - Implement the first check to detect definitions of `operator []` or `operator []=` which are not allowed in JS interop classes. Change-Id: I095a4b7f4732796dbc3cae55b32d5fc9bcdbd798 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/130733 Commit-Queue: Nate Bosch <nbosch@google.com> Reviewed-by: Sigmund Cherem <sigmund@google.com>
FE/analyzer shared code
This package contains logic that is shared between the front_end and analyzer packages. It is intended solely to facilitate development of the Dart SDK, and is not intended for use by end users. In particular, this package has no public API, so no guarantee is made of compatibility between one version of the package and the next.
End users should consider using the analyzer package to analyze Dart source code.