dart-sdk/pkg/front_end
Chloe Stefantsova a46de1c30c [cfe] Add implicit null-check on throw
Throwing `null` is not supported in sound null safety. This change
inserts an implicit `as Object` cast that result in a TypeError, rather
than a NullThrownError, in sound mode.

Closes https://github.com/dart-lang/sdk/issues/49198

TEST=Covered by the existing tests

Change-Id: I041baf95becd2df1b940fdff7cde398a4e391ee7
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/247546
Reviewed-by: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Chloe Stefantsova <cstefantsova@google.com>
Commit-Queue: Chloe Stefantsova <cstefantsova@google.com>
2022-12-12 00:48:13 +00:00
..
benchmarks
lib [cfe] Add implicit null-check on throw 2022-12-12 00:48:13 +00:00
outline_extraction_testcases
parser_testcases Patterns parsing: track when variable patterns are in an assignment context. 2022-12-07 22:45:40 +00:00
test Patterns parsing: track when variable patterns are in an assignment context. 2022-12-07 22:45:40 +00:00
testcases [cfe] Add implicit null-check on throw 2022-12-12 00:48:13 +00:00
tool [3.0 alpha][VM/Runtime] - Flip flag to make strong null safety the default. 2022-12-06 04:04:23 +00:00
analysis_options.yaml
analysis_options_no_lints.yaml
error_recovery.yaml
LICENSE
messages.status [3.0 alpha] Remove error for use of the List default constructor 2022-12-09 13:13:14 +00:00
messages.yaml [3.0 alpha] Update CFE messages for Dart 3 sound null safety by-default 2022-12-09 16:55:03 +00:00
OWNERS
PRESUBMIT.py
pubspec.yaml
README.md
testing.json
testing_with_lints.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 dart analyze command-line tool to analyze their Dart code.

Integrators that want to write tools that analyze Dart code should use the analyzer package.

Note: A previous version of this package was published on pub.dev. It has now been marked DISCONTINUED as it is not intended for direct consumption, as per the notes above.