Commit Graph

64479 Commits

Author SHA1 Message Date
danrubel 7983fac33b add "extension" built-in keyword for extension methods
Change-Id: I6529fff31f681fd24c22f8c7579d2a35097f4d07
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102940
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2019-05-17 22:24:15 +00:00
Sigmund Cherem 475f55d46b Add dart2js modular test suite under a unit test.
At this time this only compiles to .dill and then compiles from multiple modular
dill files.

Next steps: add the global split and add the modular data bits

Change-Id: I3399776dbd5187ddb0a3e2fdd307622a736570c9
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102126
Commit-Queue: Sigmund Cherem <sigmund@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
2019-05-17 22:21:05 +00:00
Sigmund Cherem 1f409716d6 Add packageBase to simplify how we build packages files and how we process
package import uris

THis is not actively used in the loader unit tests yet, but will be in the
dart2js pipeline.

Change-Id: Ie0db6243c735e2fba396f2a5a156d52ea1e53bbe
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102125
Reviewed-by: Johnni Winther <johnniwinther@google.com>
2019-05-17 22:21:05 +00:00
Zichang Guo c6f6713de1 [vm,exception] notify debugger to stop for ReThrow
Rethrow should behave the same as throwing from debugger point of view. Thus, notify debugger for possibly pausing on exceptions.

Bug: https://github.com/dart-lang/sdk/issues/36907
Change-Id: I84886fd8f3e1c579f60802aadb9fdaa4e076b6c1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102681
Commit-Queue: Zichang Guo <zichangguo@google.com>
Reviewed-by: Ben Konyi <bkonyi@google.com>
Reviewed-by: Siva Annamalai <asiva@google.com>
2019-05-17 21:29:51 +00:00
Paul Berry 8d52c0d08e Store library nullability status in LibraryElement; adjust TypeParameterElement.type based on it.
Change-Id: I0a9673b3b2f46bbf5c3aea429e90c6ddafa978e4
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102224
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2019-05-17 21:27:21 +00:00
danrubel c33f1a079e revise scanner api so that error tokens are always prepended
This CL revises the scanner API so that tokens are always prepended
to the beginning of the token stream. This allows the parser handling
of error tokens to be simplified. Any clients using the scanner directly
rather than through the scanner API should call scannerRecovery
if the scanner has detected errors in the content.

Change-Id: I32510da10205bd964f80898a238489d1508733e6
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102680
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2019-05-17 20:59:51 +00:00
Paul Berry 42334a7f67 Infer when the bound of a type parameter needs to be nullable.
Change-Id: I6c500318a66e05a0b3d10c85f07660dfe37339ea
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/103000
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2019-05-17 20:41:11 +00:00
Ben Konyi b1f9f2182d [ VM / Service ] Remove root frame from traceEvents in _getCpuProfileTimeline response
This frame is already filtered from the trie, so this will make behavior
consistent.

Change-Id: I9283a6ef170b725f739d91795fbb81cf7d902470
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102103
Reviewed-by: Ryan Macnak <rmacnak@google.com>
Commit-Queue: Ben Konyi <bkonyi@google.com>
2019-05-17 18:41:51 +00:00
Liam Appelbe b2a3d1c31b Give Field::is_nullable the same consistency check as guarded_cid
Fixes: https://github.com/dart-lang/sdk/issues/36717
Bug: https://github.com/dart-lang/sdk/issues/36717
Change-Id: Ic58b9a004a0bbab91d330c24212ff2d8634c084f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/100273
Reviewed-by: Ryan Macnak <rmacnak@google.com>
Commit-Queue: Liam Appelbe <liama@google.com>
2019-05-17 17:17:40 +00:00
danrubel b4611b9357 add extension-methods experimental feature
Change-Id: Iad76a6d0b91ff83fce3dbd963d0c341b3b62eeb9
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102880
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2019-05-17 13:15:30 +00:00
Ryan Macnak 0e8656e045 [vm, compiler] Shorter invocation counter check.
Remove the optimization function stub and self function from the constant pool of every unoptimized function.

Remove one PP move from unoptimized frame entry.

Bug: https://github.com/dart-lang/sdk/issues/36409
Change-Id: Idbe37ce36b57dc316a131e6c83742ee2b3df4a0d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102660
Commit-Queue: Ryan Macnak <rmacnak@google.com>
Reviewed-by: Aart Bik <ajcbik@google.com>
2019-05-16 23:04:22 +00:00
Todd Volkert 5ffff98440 Add autoUncompress to _HttpClientResponse
Bug: dartbug.com/36971
Change-Id: I5f35c26f705591330d7e777773d5595e0978d3e0
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102780
Reviewed-by: Zach Anderson <zra@google.com>
Commit-Queue: Todd Volkert <tvolkert@google.com>
2019-05-16 20:31:39 +00:00
Nicholas Shahan 86c7165969 [tests] Avoid use of $strong because it is always true now
* Remove all `&&  $strong` clauses.
* Delete all sections that include a `&& !$strong` clause.

Change-Id: Idd32cf5623793e3f98e3e998025bac079d88e2f1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102223
Commit-Queue: Nicholas Shahan <nshahan@google.com>
Reviewed-by: Bob Nystrom <rnystrom@google.com>
Reviewed-by: William Hesse <whesse@google.com>
2019-05-16 17:41:27 +00:00
Danny Tuppeny 8209013be3 Fix DartDoc section in Diagnostics server for LSP
Change-Id: I8bb40a08b7b6aa53c962bc5a86eb3e68a330a87c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102620
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Danny Tuppeny <dantup@google.com>
2019-05-16 13:34:47 +00:00
Ryan Macnak cc2d5adec9 [dart:io] Don't leak /dev/urandom fd on fork.
Change-Id: I90ff8585408078e12bf732f6669cf3f9d149495a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102205
Reviewed-by: Jonas Termansen <sortie@google.com>
Commit-Queue: Ryan Macnak <rmacnak@google.com>
2019-05-15 21:27:19 +00:00
Aart Bik 57c970d87a [dart/vm] Fix inconsistencies in intermediate representation
Rationale:
Stricter graph checking found some dangling pointers
and missing updates. This CL fixes the omissions
and removes some bail-outs in the graph checker itself,
making the checker stricter and more consistent. Also
adds flag to control verification (avoid excessive runtimes
for large programs in general, but allows testing even
these through command line option).

https://github.com/dart-lang/sdk/issues/36893
https://github.com/dart-lang/sdk/issues/36894
https://github.com/dart-lang/sdk/issues/36895
https://github.com/dart-lang/sdk/issues/36899

Change-Id: If4357cb897484ddfdb60722525092198771ec90a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102420
Reviewed-by: Aart Bik <ajcbik@google.com>
Commit-Queue: Aart Bik <ajcbik@google.com>
2019-05-15 19:13:49 +00:00
Dan Field 034fce1e39 [dart:io] unbreak build
Change-Id: Ia8965e62f4b89a80aeb6db1489ca45c6db321adc
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102640
Reviewed-by: Régis Crelier <regis@google.com>
Auto-Submit: Dan Field <dnfield@google.com>
Commit-Queue: Régis Crelier <regis@google.com>
2019-05-15 19:13:29 +00:00
Dan Field 7f323feefe [dart:io] Fix iOS https leaks
Add move constructor and equality operators to
ScopedCFType, add specialized destructor for arrays.

Add release to ScopedCFType.

Use ScopedCFType for SecCertificateRef.

Bug: https://github.com/dart-lang/sdk/issues/36935
Change-Id: I7b40f23fb8f0d7ab0835587e040362f883f86bd5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102560
Reviewed-by: Zach Anderson <zra@google.com>
Auto-Submit: Dan Field <dnfield@google.com>
Commit-Queue: Zach Anderson <zra@google.com>
2019-05-15 17:53:49 +00:00
Paul Berry 1c469617c5 TypeParameter.declaredElement is guaranteed to be a TypeParameterElement
Change-Id: Ia6af1109cce334362885e1db150608f38081f064
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102600
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2019-05-15 15:59:24 +00:00
Paul Berry 14d21859e7 Make assertConnection failures easier to debug
Change-Id: I0f3934826c7464ec3d3c4f3d206a75ab53ce4ab7
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102580
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2019-05-15 15:55:39 +00:00
Ben Konyi ea9b0cd0f5 [ VM / FFI ] Fixed imports in ffi.h which were invalid for Flutter iOS build
Change-Id: I7c910ce4cd54b083bfb2125711cc91646b703f7f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102582
Reviewed-by: Zach Anderson <zra@google.com>
Commit-Queue: Ben Konyi <bkonyi@google.com>
2019-05-15 15:51:19 +00:00
pq af2d02f9c8 fix lint code reporting
Fixes: https://github.com/dart-lang/linter/issues/1568

Change-Id: I38d6138aa76fd79c11ef4d603705fdf2e29541e9
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102581
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Phil Quitslund <pquitslund@google.com>
2019-05-15 15:36:39 +00:00
Konstantin Shcheglov f6d3466856 Work around DDC with summary2 for now.
We will need to patch DDC to link summary2, but for now it uses
sumamry1, and I'd like to build SDK and run analyzer tests on bots.

R=brianwilkerson@google.com

Change-Id: I7ac74b87a4bce1a1e08925256dc1edfc55406f3e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102503
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-05-15 13:36:19 +00:00
Danny Tuppeny 6805bb52ea Add implementation/tests for textDocument/Implementation
Fixes https://github.com/dart-lang/sdk/issues/36896

Change-Id: Ie450c6c5257ac13aa3c7b48343aa8b015b1dc4d8

Tweak tests to require all, plus fix empty classes

Change-Id: Iefff7e24c6b965f0a1bc5abf8adbac26ad38e3a0

Add implementation/tests for textDocument/Implementation

Change-Id: I640379d83aeb9baa73d04d98d39147e2b748d6c3
Bug: https://github.com/dart-lang/sdk/issues/36896
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102366
Commit-Queue: Danny Tuppeny <dantup@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-05-15 09:08:28 +00:00
Danny Tuppeny 3a7ce7a646 Enable declarations tracker for LSP to support dart doc macros
Change-Id: I614be91ecf7a1afc377afeee70e559cff324dc61
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102368
Commit-Queue: Danny Tuppeny <dantup@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2019-05-15 08:16:18 +00:00
Danny Tuppeny cdcc387084 Add LSP custom notifications for analyzing status
Change-Id: I0d26d274c9ccc472da81e45d0c9170104bbd9414
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102370
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Danny Tuppeny <dantup@google.com>
2019-05-15 06:35:48 +00:00
Konstantin Shcheglov 6ac6d3ae7d Fix FileState refresh2 to allow caching.
R=brianwilkerson@google.com

Change-Id: I1654809d90ae24f41a42f9130266493f27525003
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102320
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-05-15 01:57:17 +00:00
Mike Fairhurst a3073fc581 check null condition in assert
Change-Id: I4de11a7de3e5106ce9d5fbaf89d0b0965d637b08
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102221
Auto-Submit: Mike Fairhurst <mfairhurst@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Mike Fairhurst <mfairhurst@google.com>
2019-05-14 22:24:34 +00:00
Konstantin Shcheglov ebaf0ad8b1 Record GenericFunctionType nodes separately in the unit.
This fixes most failures related to them.

R=brianwilkerson@google.com, paulberry@google.com

Change-Id: Icbd9eac52159064d5ffc43a4b30b75589a089a94
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102480
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-05-14 21:32:33 +00:00
Dan Rubel bc34b65a13 cleanup tests
* fix TokenType.IDENTIFIER name
* fix utf8 scanner tests to actually test the utf8 scanner

Change-Id: Ib87d322cf30402f9f95bae0e66a07e13192ed368
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102404
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2019-05-14 19:30:23 +00:00
Ryan Macnak bd840b93cb [package:vm] Account for package map comments.
Bug: https://github.com/dart-lang/sdk/issues/36954
Change-Id: Id224e9358cadc1f3c30fe5890515332074ec6983
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102460
Commit-Queue: Ryan Macnak <rmacnak@google.com>
Reviewed-by: Alexander Markov <alexmarkov@google.com>
2019-05-14 18:42:09 +00:00
Dan Rubel c855b9bfa3 move error token processing to parser
Change-Id: Ic886db54e68206d7ddc9f68bacaaecf9f86aafc0
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102461
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2019-05-14 15:49:33 +00:00
danrubel a50dcd8fe6 remove unused field
Change-Id: Id789870f4e4be6189356a1cd25ed06f397e9d0f8
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102462
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Auto-Submit: Dan Rubel <danrubel@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2019-05-14 13:00:46 +00:00
Paul Berry f440f77dd3 Store the nullability graph in the nullability nodes rather than in maps.
This should improve performance by avoiding map lookups.

Change-Id: Ic22a4be7486be1b8e9c164e9133c81a4851146a3
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102440
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2019-05-13 22:31:44 +00:00
Paul Berry 3ecb89ba8c Move NullabilityGraph into nullability_node.dart.
This will allow NullabilityGraph and NullabilityNode to have shared
access to private data without having to expose it to all other
libraries.

Change-Id: Idbef9a60cdeb273cd5739c45d501370d89b653df
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102403
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2019-05-13 22:31:44 +00:00
Paul Berry 6080e546c9 Rearrange NullabilityNode class hierarchy.
Instead of making immutable nullability nodes derive from mutable ones
(forcing the mutation method to be overridden to thrown an exception),
we make sibling classes for mutable and immutable nodes.  This will
allow additional mutation methods to be added in a less kludgy way.

Change-Id: Ib147583e0a9c4b56333ad9c56c3c725f02ab19ad
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102402
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2019-05-13 22:31:44 +00:00
Matthew Dempsky 6d5f763952 [vm] Eliminate Mutex/Monitor indirection where possible
In many cases, the Mutexes and Monitors have to be marked "mutable"
because they're used to synchronize const accessor methods.

Small text segment improvement for Product builds:

$ size dart.{arm,x64}.{before,after}
   text	   data	    bss	    dec	    hex	filename
19726069	 409960	 392332	20528361	1393ce9	dart.arm.before
19725525	 409960	 392332	20527817	1393ac9	dart.arm.after
22576021	 600376	1782824	24959221	17cd8f5	dart.x64.before
22574821	 600376	1782824	24958021	17cd445	dart.x64.after

Change-Id: I68f5cd5ad452044df8bfebd160910496036a3e6b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/101745
Commit-Queue: Matthew Dempsky <mdempsky@google.com>
Reviewed-by: Vyacheslav Egorov <vegorov@google.com>
2019-05-13 21:17:51 +00:00
Paul Berry bed74d6e97 Remove NullabilityGraph._upstream.
Its only purpose was to make NullabilityGraph.getUpstreamNodes fast to
compute, but that function was only used in unit tests anyway so there
was no need for it to be fast.  (Minor exception: it was also used in
an assert statement, but I was able to change that to
Nullabilitygraph.getUnconditionalUpstreamNodes).

Change-Id: I8be18560c2f454908eb0e31d198fd22961a89278
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102388
Reviewed-by: Dan Rubel <danrubel@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2019-05-13 19:23:51 +00:00
Aart Bik b0727bd661 [dart/vm] enhanced graph checker
Rationale:
Refactored existing verify uses (with some overlap and some
additional checks) into the graph checker. Also added more
verification code and repaired some inconsistencies in IR
found by new checker. However, some checks are disabled with
a TODO, since the IR does not currently meet all the stricter
assumptions. Fixes will follow.

https://github.com/dart-lang/sdk/issues/36893
https://github.com/dart-lang/sdk/issues/36894
https://github.com/dart-lang/sdk/issues/36895
https://github.com/dart-lang/sdk/issues/36899

Change-Id: Ic0395208da38ecb6fc8ca2551efe819e6458a731
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/101922
Commit-Queue: Aart Bik <ajcbik@google.com>
Reviewed-by: Alexander Markov <alexmarkov@google.com>
2019-05-13 17:47:11 +00:00
Paul Berry 228df22dbf Remove the old constraint variable based nullability migration logic.
Change-Id: I4fe2836160acf5adfd805a327616880f857e9b7a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102387
Reviewed-by: Dan Rubel <danrubel@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2019-05-13 16:38:01 +00:00
Paul Berry 83607564ea Switch nullability migration over to the new algorithm based on the new nullability graph.
Change-Id: I1cbfba8d3d46020d8e943109e582d61315781561
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102386
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-05-13 16:38:01 +00:00
Paul Berry 354bfb5bab Remove a few more usages of NullabilityNode._nullable.
This will allow us to switch to the new nullability migration algorithm.

Change-Id: I0246275aa07243f809fa490fdeb6b729e407c9c5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102385
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-05-13 16:38:01 +00:00
Kevin Moore eba45291fb [observatory] Cleanup unused imports, fix warning about SDK version
Change-Id: I80f1861b8dd1d1fa5eea93cc305fa0ee2475580d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/101884
Reviewed-by: Zach Anderson <zra@google.com>
Commit-Queue: Zach Anderson <zra@google.com>
Auto-Submit: Kevin Moore <kevmoo@google.com>
2019-05-13 16:27:41 +00:00
Paul Berry 933ad32baa Add logic to assertNonNullIntent to check the nullability graph.
This will be necessary to avoid losing test coverage when we remove
the old constraint-variable based migration algorithm.

Change-Id: Ie0c29e681f92044d11be6acdeeed1a16c806960a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102401
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2019-05-13 15:52:31 +00:00
Paul Berry b05190499d Add new nullability propagation logic based on the NullabilityGraph.
For now, we verify that the new logic produces the same results as the
old logic.  In follow-up CLs, the old nullability propagation logic
will be removed.

Change-Id: I2004067093e1f5a5cdf51786ed409058707c4a49
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102384
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2019-05-13 15:43:40 +00:00
Paul Berry f3aca11478 Record not-supplied named parameters in the nullability graph
Change-Id: Ie9656b6de3e1545f9021e7d1d8d6747c51f1e342
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102400
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-05-13 15:43:40 +00:00
Paul Berry 2fbc446d23 Record information about guards in the nullability graph.
Change-Id: I169133b85e0405d1ff6b3384a6d99c7fcb33a0fd
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102382
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-05-13 15:43:40 +00:00
Paul Berry 0ce9cb7267 Encode unconditional control flow information in nullability graph.
Change-Id: I598e05b61d6639d72ae6f84ab48f4e4051c87014
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102302
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-05-13 15:43:40 +00:00
Paul Berry 8a8a700336 Fix nullability of inferred dynamic types
Change-Id: Ib27c5ade4a57bbfa73c528adbafaaa19be53c97c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102301
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-05-13 15:43:40 +00:00
Paul Berry 9bbc06fddb Add the ability to do a debug dump of a nullability graph.
Change-Id: Ia3536423349ded8810c06ef2d4a631607273af88
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102300
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-05-13 15:43:40 +00:00