Johnni Winther
36641368bb
[cfe] Treat NonNullableByDefault as default in ast-to-text
...
This changes ast-to-text to mark legacy libraries instead of
non-nullable-by-default libraries.
TEST=existing
Change-Id: Ib01147e4ef48c2c5b2ffc6b23547998344dfdf2e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/307121
Commit-Queue: Johnni Winther <johnniwinther@google.com >
Reviewed-by: Chloe Stefantsova <cstefantsova@google.com >
Reviewed-by: Alexander Markov <alexmarkov@google.com >
2023-06-08 06:28:50 +00:00
Johnni Winther
13c4ad23c5
[kernel] Add SwitchStatement.expressionType
...
This adds the static type of the switch statement expression to
the AST to better support optimizations based on the possible
runtime values of the switch expression.
TEST=existing
Change-Id: Ief35b687150401100d8c96721a026e9f0911b3b4
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/301063
Reviewed-by: Alexander Markov <alexmarkov@google.com >
Commit-Queue: Johnni Winther <johnniwinther@google.com >
Reviewed-by: Jens Johansen <jensj@google.com >
Reviewed-by: Mayank Patke <fishythefish@google.com >
2023-05-08 07:39:02 +00:00
Johnni Winther
5518abf1c7
[_fe_analyzer_shared] Update non-exhaustive message
...
This updates the message report for non-exhaustive switch statements
and expressions to include the witness in the problem message and
a reduced witness, which doesn't include properties that fully cover the
static type. The message is also split into two messages; one for
switch statements and one for switch expressions, allowing for a
better wording regarding the default/wildcard pattern case.
Change-Id: I17db657ef12ade5d47fa96bf69b8807e33ed5b8c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/293040
Reviewed-by: Paul Berry <paulberry@google.com >
Commit-Queue: Johnni Winther <johnniwinther@google.com >
2023-04-04 09:44:59 +00:00
Paul Berry
df7c4bb439
Allow empty switch expressions.
...
This an experimental change; we haven't yet decided whether we want to
allow this. See https://github.com/dart-lang/language/issues/2939 for
discussion.
Bug: https://github.com/dart-lang/language/issues/2939
Change-Id: If69ab66d18ae7ec3dfc79496ce13517ef1c15227
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/290907
Reviewed-by: Konstantin Shcheglov <scheglov@google.com >
Commit-Queue: Paul Berry <paulberry@google.com >
Reviewed-by: Chloe Stefantsova <cstefantsova@google.com >
2023-03-24 20:22:52 +00:00
Chloe Stefantsova
23c0ff5dba
[cfe] Implement desugaring of switch expressions
...
Part of https://github.com/dart-lang/sdk/issues/49749
Closes https://github.com/dart-lang/sdk/issues/50814
Change-Id: Ie2524c7e5a1fc1a25f392eecbf2e444c89229923
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/277685
Commit-Queue: Chloe Stefantsova <cstefantsova@google.com >
Reviewed-by: Johnni Winther <johnniwinther@google.com >
Reviewed-by: Aske Simon Christensen <askesc@google.com >
2023-01-02 10:16:35 +00:00
Johnni Winther
be7779ae7f
[cfe] Handle switch expression in BodyBuilder
...
Change-Id: Idf987e8bb59a11d1628fc866d677267f439ed5cc
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/272300
Commit-Queue: Johnni Winther <johnniwinther@google.com >
Reviewed-by: Jens Johansen <jensj@google.com >
2022-11-30 16:21:28 +00:00