4e4e9ec74a
The implementation strategy is to replace int literals with double literals during type inference, provided they occur in a double context and can be represented exactly as a double. This requires us to keep integer literals larger than the 64-bit range until after type inference and to keep the source text of 64-bit integers until after type inference for error reporting. We postpone the check for web int literals as well because the expression generator that was performing it isn't otherwise needed. Fixes https://github.com/dart-lang/sdk/issues/34357. Change-Id: Ia78c031565cad83961675fc4fb1cc871eaed01d3 Reviewed-on: https://dart-review.googlesource.com/c/78122 Commit-Queue: Kevin Millikin <kmillikin@google.com> Reviewed-by: Peter von der Ahé <ahe@google.com> |
||
---|---|---|
.. | ||
benchmarks/ikg | ||
lib/src | ||
test | ||
testcases | ||
tool | ||
analysis_options.yaml | ||
error_recovery.yaml | ||
LICENSE | ||
messages.status | ||
messages.yaml | ||
pubspec.yaml | ||
README.md | ||
testing.json |
Front end for Dart
This package provides a low-level API for use by compiler back ends that wish to implement the Dart language. It is intended for eventual use by dev_compiler, dart2js, and the Dart VM. In addition, it will share implementation details with the analyzer package--this will be accomplished by having the analyzer package import (and re-export) parts of this package's private implementation.
End-users should use the [dartanalyzer][analyzercli] command-line tool to analyze their Dart code.
Integrators that want to write tools that analyze Dart code should use the [analyzer] package.
Note: The APIs in this package are in an early state; developers should be careful about depending on this package. In particular, there is no semver contract for release versions of this package. Please depend directly on individual versions.