Jens Johansen
66f11394f3
[CFE] Textual outline knows about (and can thus sort) named mixin applications
...
Before this CL the textual outline didn't know about named mixin
applications which caused it to insert "fences", i.e. splaces it
wouldn't sort across.
So for instance
class E {}
class D {}
class C<T> = Object with A<Function(T)>;
class B {}
class A {}
would not be sorted fully because class C is a named mixin application,
something it didn't know about, and it would only allow stuff on either
side to be sorted. So the sorted output would have been
class D {}
class E {}
class C<T> = Object with A<Function(T)>;
class A {}
class B {}
With this change it knows about it and the output would now thus be
class A {}
class B {}
class C<T> = Object with A<Function(T)>;
class D {}
class E {}
Change-Id: I97b28706732582d0c37f1b2c052b9f6eaf862a5a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/158550
Reviewed-by: Johnni Winther <johnniwinther@google.com >
2020-08-17 08:16:18 +00:00
Jens Johansen
42214d2eb0
[CFE] Textual outline doesn't add line-break for empty classes
...
E.g. before this change an empty class output would have been
class Foo {
}
now instead it becomes
class Foo {}
this matches what the formatter does.
Change-Id: Id08edc5259bae00deff9a66b4ae745f21c192358
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/158549
Reviewed-by: Johnni Winther <johnniwinther@google.com >
2020-08-17 08:16:18 +00:00
Jens Johansen
330c7500d4
[CFE] Textual outline doesn't add space for empty methods
...
E.g. before this change a procedure output would have been
foo() { }
now instead it becomes
foo() {}
this matches what the formatter does.
Change-Id: Ieb538d61e527cbec26d1d65ed6de349311dd0163
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/158548
Reviewed-by: Johnni Winther <johnniwinther@google.com >
2020-08-17 08:16:18 +00:00
Johnni Winther
d267906184
[cfe] Ensure that noSuchMethod forwarders are not marked as member signatures
...
Change-Id: Id8a093db8d757b08cee97d9c7de1baa452531bb9
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/158547
Reviewed-by: Jens Johansen <jensj@google.com >
2020-08-14 15:30:24 +00:00
Paul Berry
e403e6ae77
Flow analysis: rework handling of equality tests.
...
The new logic classifies the LHS and RHS of the equality check as
either null, non-nullable, or potentially nullable, and then either
promotes, treats the expression as equivalent to a boolean, or does
nothing, as appropriate.
This means, for example, that a comparison between a non-nullable
value and `null` is now known to evaluate to `true` for reachability
analysis.
Note: as part of this change, it was tempting to trigger promotion
whenever a varialbe is equality compared to an expression of type
`Null`, but this would be unsound (consider `(int? x) => x == (x =
null) ? true : x.isEven`). So we still only promote when the variable
is compared to a literal `null`.
Fixes #41985 .
There's a corresponding spec change out for review:
https://github.com/dart-lang/language/pull/1134
Change-Id: Id7f1d4eaa3b0fa57124445bb8352eef32c304feb
Bug: https://github.com/dart-lang/sdk/issues/41985
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/155926
Reviewed-by: Konstantin Shcheglov <scheglov@google.com >
Reviewed-by: Johnni Winther <johnniwinther@google.com >
2020-08-14 12:16:36 +00:00
Johnni Winther
4b2f375402
[cfe] Ensure that forwarding stub are distinct from member signatures
...
Change-Id: Ie5c37b55e0d636a1ab70cb77d816b977b5351451
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/158385
Commit-Queue: Johnni Winther <johnniwinther@google.com >
Reviewed-by: Jens Johansen <jensj@google.com >
2020-08-14 11:12:40 +00:00
Johnni Winther
e597681d22
[cfe] Update messages for failures to opt in to non-nullable experiment
...
Change-Id: I16d71feeb51a7eee13048195898adfe7bf5761d2
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/157482
Reviewed-by: Jens Johansen <jensj@google.com >
Commit-Queue: Johnni Winther <johnniwinther@google.com >
2020-08-14 09:01:07 +00:00
Johnni Winther
bc73bb1b2c
[cfe] Remove inheritanceConflictCache
...
Change-Id: I91619b9292a6dd20f657aea9cf8e642ce21ffda5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/158381
Reviewed-by: Jens Johansen <jensj@google.com >
Commit-Queue: Johnni Winther <johnniwinther@google.com >
2020-08-13 11:14:34 +00:00
Jens Johansen
7e42cbf582
[parser] Change recovery of multiple extends with comma
...
E.g. class Foo extends Bar, Baz {} would before have parsed weirdly,
but it will parse as you'd (probably) expect with an error saying
you cannot do that. For now at least both CFE and Analyzer will
pretend like you just specified the first one but I suppose Analyzer
could for instance use the extra information to propose converting
other ones to implements clauses or similar.
Fixes https://github.com/dart-lang/sdk/issues/22313
Change-Id: I180cdd8ab07143dd74fd21c9976ec2a46c428d8e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/158261
Commit-Queue: Jens Johansen <jensj@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Reviewed-by: Johnni Winther <johnniwinther@google.com >
2020-08-13 08:49:53 +00:00
Alexander Markov
4ef577d50e
[vm/tfa] add map/set factory specializer to support infer metatype
...
https://github.com/dart-lang/sdk/issues/37861
Closes https://github.com/dart-lang/sdk/pull/42943
https://github.com/dart-lang/sdk/pull/42943
GitOrigin-RevId: 508f49256f1916e862c6d6f48efc77406d0b63de
Change-Id: Iec6786bcd4fa09704c533cbff6957130aa524ada
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/157240
Reviewed-by: Alexander Markov <alexmarkov@google.com >
Reviewed-by: Johnni Winther <johnniwinther@google.com >
Commit-Queue: Alexander Markov <alexmarkov@google.com >
2020-08-12 19:20:38 +00:00
Johnni Winther
d5def62c9c
[cfe] Insert forward stub only in the first class that needs it
...
This avoids adding forwarding stubs on all subsequent subclasses by
using the result of the superclass member computation in subclass
member computation.
Change-Id: Id9ae4a8e7b0fbfe90c863580f056bf9d6266220f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/157322
Commit-Queue: Johnni Winther <johnniwinther@google.com >
Reviewed-by: Jens Johansen <jensj@google.com >
2020-08-12 14:40:05 +00:00
Johnni Winther
d98aa34388
[cfe] Cache field class members
...
Change-Id: I43e2ac785d361649420e47a6302a74b93a71a67b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/158011
Reviewed-by: Jens Johansen <jensj@google.com >
Commit-Queue: Johnni Winther <johnniwinther@google.com >
2020-08-11 13:55:59 +00:00
Johnni Winther
65e48e423a
[cfe] Add a member signature origin to member signatures
...
Adds a member signature origin to member signatures and includes
an additional reference to these in MethodInvocation, PropertyGet,
PropertySet, etc.
This enables the VM to bypass the member signatures when loading the
AST.
Change-Id: I5cae11f4434bc052d0ba0acf0670dd002c6f3df1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/157498
Reviewed-by: Jens Johansen <jensj@google.com >
Commit-Queue: Johnni Winther <johnniwinther@google.com >
2020-08-11 08:16:59 +00:00
Jens Johansen
4c0cab024e
[parser] No longer support ?.[ syntax
...
Update CFE tests (and a few analyzer tests) to match the new world
of the syntax being unsupported.
Fixes https://github.com/dart-lang/sdk/issues/42681
Change-Id: I71bc973f36dfb978ddb825edb68530d8e260a58a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/157980
Commit-Queue: Jens Johansen <jensj@google.com >
Reviewed-by: Johnni Winther <johnniwinther@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2020-08-11 08:09:59 +00:00
Johnni Winther
9a2a3aae14
[front-end] fix bug in BodyBuilder
...
https://github.com/dart-lang/sdk/issues/42997
@mraleph
> Also, how to construct tests that generate AmbiguousBuilder and catch error?
Closes https://github.com/dart-lang/sdk/pull/42998
https://github.com/dart-lang/sdk/pull/42998
GitOrigin-RevId: be1aae61495cabcb1a7e8cffff47c18574f97d2e
Change-Id: Icdfb8f5acf7db8475a9500596b995354d2e83b3a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/157941
Reviewed-by: Johnni Winther <johnniwinther@google.com >
Commit-Queue: Johnni Winther <johnniwinther@google.com >
2020-08-11 07:26:02 +00:00
Johnni Winther
3059f64647
[cfe] Use mutual subtyping to check valid mixin applications
...
Related to flutter/flutter#63029
Change-Id: I492b348c414c76b5fda497614c733730d02bccfc
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/157981
Reviewed-by: Jens Johansen <jensj@google.com >
Commit-Queue: Johnni Winther <johnniwinther@google.com >
2020-08-11 07:24:39 +00:00
JustWe
d6ef844a72
[front-end] bugfix: fix bug in constant eval .
...
fix bug in constant eval.
https://github.com/dart-lang/sdk/issues/42946
``` dart
main() {
const x = (2 == 2.0);
print(x); // prints `true`
}
```
@mraleph
Closes https://github.com/dart-lang/sdk/pull/42949
https://github.com/dart-lang/sdk/pull/42949
GitOrigin-RevId: 79feed76089dad86651e165faf12e41bdc6b1d88
Change-Id: I0af49901af7fdbc42a0f84d8ef49c3cbd1e32911
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/157341
Reviewed-by: Vyacheslav Egorov <vegorov@google.com >
2020-08-07 09:42:57 +00:00
Johnni Winther
b9c5118c73
[cfe] Don't mark external methods as abstract
...
Closes #31233
Related to flutter/flutter#62887
Change-Id: I96e5a1b8045f75f1ad02fb47e5e41fe402dc3dc1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/157481
Commit-Queue: Johnni Winther <johnniwinther@google.com >
Reviewed-by: Jens Johansen <jensj@google.com >
2020-08-06 16:29:09 +00:00
jlcontreras
d5ff386abe
[cfe] Add call to value class transformer in kernel_target.
...
Change-Id: I4cce1307652b5a29761fc1b431cc49c1dfd0fa06
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/156909
Commit-Queue: Javier López-Contreras <jlcontreras@google.com >
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
2020-08-05 10:41:38 +00:00
Jacob MacDonald
ed3584b71b
add remaining flutter test dependencies to the allow list
...
Change-Id: I00b249feff6ae49f9c9eee841bdf937da7591b9e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/156942
Reviewed-by: Jonah Williams <jonahwilliams@google.com >
Reviewed-by: Leaf Petersen <leafp@google.com >
Commit-Queue: Jake Macdonald <jakemac@google.com >
2020-08-04 04:09:13 +00:00
Johnni Winther
25e08663ce
[cfe] Pass return type as part of callee type for invocation inference
...
Change-Id: I3b2f54fe73cc7f7c427e51e20cb60b25fc45f6bc
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/156885
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
Commit-Queue: Johnni Winther <johnniwinther@google.com >
2020-08-03 14:12:51 +00:00
Johnni Winther
ad9c73cb32
[cfe] Use promoted type as type context in variable assignment
...
Closes #41698
Change-Id: Iea87c770b560f6f72f9382f06615d99ad2be0c3a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/155764
Commit-Queue: Johnni Winther <johnniwinther@google.com >
Reviewed-by: Paul Berry <paulberry@google.com >
2020-08-03 10:37:41 +00:00
Dmitry Stefantsov
7831716efd
[cfe] Use Object? as top type in NNBD greatest closure algorithm
...
Closes #42579 , #42580 .
Bug: https://github.com/dart-lang/sdk/issues/42579
Bug: https://github.com/dart-lang/sdk/issues/42580
Change-Id: I90a519b4d580d139bbccfcefd8553ec68aac71ce
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/156240
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com >
Reviewed-by: Johnni Winther <johnniwinther@google.com >
2020-07-30 15:49:59 +00:00
Johnni Winther
c50cbe9ed0
[cfe] Don't use type context for local function inference when type parameters mismatch
...
Change-Id: Ia6f697fa25ea83a7518ba63ad083b3493d35b2a2
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/156460
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
Commit-Queue: Johnni Winther <johnniwinther@google.com >
2020-07-30 13:18:28 +00:00
Mayank Patke
ca743398c2
Ensure CFE provides correct setter name to instantiateInvocation.
...
All of the backends (dart2js, DDC, VM) were checking if the invocation
name was tagged with "set:" and appending "=" to the name if so.
Instead, we can simply have the CFE perform this logic at the callsite.
Note that the name of the setter itself is still unchanged. Backends may
still need to generate the correct name themselves when handling NSMs
via code paths other than instantiateInvocation.
Change-Id: Iae42c849d3557be3e3b77c3af6f3993347ba0b6c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/156142
Reviewed-by: Johnni Winther <johnniwinther@google.com >
Commit-Queue: Mayank Patke <fishythefish@google.com >
2020-07-30 06:21:20 +00:00
Johnni Winther
eb1dc6786b
[cfe] Revert receiverType/receiverBound update
...
This change was introduced in https://dart-review.googlesource.com/c/sdk/+/155324
but has unforeseen negative consequences.
Change-Id: Ifda680a533833fc21f575f13f0e6f0f3be857fa2
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/156195
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
2020-07-29 14:59:01 +00:00
Johnni Winther
ac85af3a0c
[cfe] Handle type parameters bounded by Null/Never in local function parameter type inference
...
Closes #42206
Change-Id: Id36fe76d8581ab0712165a8c90f1734d4be1a913
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/156186
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
2020-07-29 14:21:17 +00:00
Johnni Winther
767692b32f
[cfe] Remove error/warning on duplicate library name in export/import
...
Closes #42700
Change-Id: I1fd047ea91de45be727690cf6053298cecf91410
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/155326
Reviewed-by: Jens Johansen <jensj@google.com >
2020-07-29 08:53:06 +00:00
jlcontreras
355cade14f
Add experiment flag for Value Classes
...
Change-Id: I94b42676ed233c3d421ac41be1c74dd90c74501e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/156005
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
Reviewed-by: Konstantin Shcheglov <scheglov@google.com >
Commit-Queue: Javier López-Contreras <jlcontreras@google.com >
2020-07-28 12:16:08 +00:00
Johnni Winther
251c3d7d42
[cfe] Allow nullable arguments to super==
...
Closes #42603
Change-Id: I52261ccb7c1d88a7469a72e244466b193777fe38
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/155330
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
Commit-Queue: Johnni Winther <johnniwinther@google.com >
2020-07-28 07:41:01 +00:00
Johnni Winther
fffd0d04b1
[cfe] Handle Null/Never-ish spread element types
...
Closes #42758
Change-Id: I0b25a5a1abc0896300f61fc98f514f1ed1a63e31
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/155447
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
2020-07-28 06:29:36 +00:00
Johnni Winther
77fcb33bd0
[cfe] Update local function return type inference
...
Closes #42721
Change-Id: Ia962c8ff3b6d469a0884b8983994de5c5c2286f4
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/155760
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
2020-07-28 06:29:17 +00:00
Johnni Winther
4c210e8b98
[cfe] Infer Null from implicit return in function literal type inference
...
Closes #42743
Change-Id: I7aca374894704cdc002d927aef9ea72cbabd12e6
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/155606
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
2020-07-28 06:29:17 +00:00
Nate Bosch
b9205ddc0c
Allow null safety for convert, crypto, csslib
...
Towards #42395
These packages are used by benchmarks and need to be migrated to null
safety before stable.
Change-Id: I0b8a24f40384720343364795c60ddaede8fe0de4
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/156065
Reviewed-by: Jake Macdonald <jakemac@google.com >
Auto-Submit: Nate Bosch <nbosch@google.com >
2020-07-28 00:11:39 +00:00
Johnni Winther
da663d6eb0
[cfe] Fix bad supertype substitution in mixin check.
...
Closes #42792
Change-Id: I21757f0f8417ad677d075e8417e390e1fa532a2b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/155444
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
2020-07-27 18:43:25 +00:00
Johnni Winther
22dc855e46
[cfe] Implement toText for Binary/Unary/ParenthesizedExpression
...
Change-Id: Ic3585081aa8910a75c54fadb8e8e583445d0d532
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/155328
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
2020-07-27 18:41:12 +00:00
Johnni Winther
1d092219a3
[cfe] Move LUB computation to package:kernel
...
Change-Id: I06951e5367dbf5e84d897e38d38ec00fa6115db7
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/155325
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
2020-07-27 18:41:12 +00:00
Johnni Winther
33378492e5
[cfe] Implement new static types for arithmetic operations
...
Closes #41559
Closes #42577
Change-Id: I22da02731c106ec354d72a649c5b6ac6091b9292
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/155324
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
2020-07-27 18:40:24 +00:00
Johnni Winther
6a265278f9
[cfe] Fix off-by-one error in type variable target resolution
...
Change-Id: Ia0adbd27b9f3067d754851f081a25ac4a6126a7d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/155128
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
2020-07-27 16:44:40 +00:00
Johnni Winther
b8dc7627a9
[cfe] Handle NullCheck in constant evaluation
...
Closes #42802
Closes #42803
Change-Id: I282539cbfef90309dd343950101aefe0820785b7
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/155600
Reviewed-by: Johnni Winther <johnniwinther@google.com >
2020-07-23 09:16:09 +00:00
William Hesse
f88ce7aef5
Increase Dart version to 2.10
...
Change-Id: Ic6b556f935602834564aca24690608aa624efa43
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/155440
Reviewed-by: Martin Kustermann <kustermann@google.com >
2020-07-22 13:22:07 +00:00
Johnni Winther
fcd1c5b61a
[cfe] Implement remaining external/abstract field errors
...
Closes #42718
Change-Id: Ifca0b1e8c1db93cad2283bc1a5d8a0534665e932
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/155122
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
Commit-Queue: Johnni Winther <johnniwinther@google.com >
2020-07-21 11:14:52 +00:00
Johnni Winther
9f50ee4e38
[cfe] Implement TypeOperations.isNever
...
Change-Id: I0e87392a47178a9c8473baf562e3034734f548f0
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/155123
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
Commit-Queue: Johnni Winther <johnniwinther@google.com >
2020-07-21 11:14:43 +00:00
Johnni Winther
84e5eeaea4
[cfe] Ensure legacy result types for invocation and access in opt-out libraries (part 2)
...
- now also for binary, unary, index-get expressions
Related to #42660
Change-Id: I1bf656a901b64ec916596508167330a235f6c7e4
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/154941
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
Commit-Queue: Johnni Winther <johnniwinther@google.com >
2020-07-21 07:45:44 +00:00
Paul Berry
ded9b3ce3f
Flow analysis: consider promotion to Never to be unreachable.
...
Fixes #41981 .
Bug: https://github.com/dart-lang/sdk/issues/41981
Change-Id: Id2ce176c703cb3346d4bd7471b10ecac9e3b9907
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/154624
Reviewed-by: Konstantin Shcheglov <scheglov@google.com >
Reviewed-by: Johnni Winther <johnniwinther@google.com >
Commit-Queue: Paul Berry <paulberry@google.com >
2020-07-20 16:17:57 +00:00
Johnni Winther
87906e832b
[cfe] Implemenet abstract fields errors
...
Change-Id: I78900228ee72d914844e9fe11fcfb2cdef952ece
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/154881
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
Commit-Queue: Johnni Winther <johnniwinther@google.com >
2020-07-20 12:05:54 +00:00
Sam Rawlins
9dca49e71e
FE: Remove unused optional parameters on private methods
...
Analyzer will enforce this soon, for
https://github.com/dart-lang/sdk/issues/29731
Change-Id: Iaab4ee6a7c74f1b3f7d32787aecd860fef80f113
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/154687
Reviewed-by: Johnni Winther <johnniwinther@google.com >
Commit-Queue: Samuel Rawlins <srawlins@google.com >
2020-07-17 13:26:08 +00:00
Johnni Winther
92f4eb58c8
[cfe] Support abstract fields
...
Only positive implementation, no error states are checked yet.
Change-Id: Iad79da1dd7e8be9229ee9d47c5301d39ebc3debc
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/154003
Commit-Queue: Johnni Winther <johnniwinther@google.com >
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2020-07-16 10:13:23 +00:00
Paul Berry
8cb7dfa70f
Modify parser to handle abstract fields.
...
There is no functional change to the analyzer or CFE yet; we simply
report the error in the parser listeners now rather than the parser
itself. In follow up CLs when we add full support for the feature, we
will want to keep the error reporting logic, but only report the
errors in pre-NNBD code.
Change-Id: Ifd14dd97d7d1d57586a8e14a25103356d54f0ea1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/154364
Commit-Queue: Paul Berry <paulberry@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Reviewed-by: Johnni Winther <johnniwinther@google.com >
2020-07-15 22:48:01 +00:00
Dmitry Stefantsov
ac4de98a29
[cfe] Eliminate UnknownType in async type downcasts
...
Closes #42615 .
Bug: https://github.com/dart-lang/sdk/issues/42615
Change-Id: Ieb289acee04b3868304d320d3c2231fd6eb94dd6
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/154322
Reviewed-by: Johnni Winther <johnniwinther@google.com >
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com >
2020-07-14 14:10:19 +00:00