Commit Graph

64479 Commits

Author SHA1 Message Date
Brian Wilkerson 96a078ce76 Add quick fixes for new SDK constraint checks
Change-Id: I1a3d3b61e8f12b50bb3ad31b5d91612ef6b3e8aa
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97700
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2019-03-22 21:54:41 +00:00
Konstantin Shcheglov 0b4fdc46fe Compute export scopes for source libraries.
R=brianwilkerson@google.com, paulberry@google.com

Change-Id: Idd3ebaf6c17ed2744b9cfd8cf770e1fc0f3a42ce
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97680
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-03-22 21:19:11 +00:00
Sigmund Cherem ee79ca9a74 dart2js support for loading .dill files built modularly
Change-Id: Ie360b13b5be786df9101c96982400136c63dff00
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97462
Commit-Queue: Sigmund Cherem <sigmund@google.com>
Reviewed-by: Jens Johansen <jensj@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
2019-03-22 21:16:21 +00:00
Brian Wilkerson 9c6a882af0 Add SDK constraint checks for the constant update 2018 features
Change-Id: I308a32de5e73a93d8dead38ab45c130f88ef706d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97567
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2019-03-22 20:09:01 +00:00
Konstantin Shcheglov a8d0a33360 Build elements for local FunctionExpression(s) and parameters while reading AST.
So, when we resolve AST to perform inference, references to parameters
are resolved, their types are available, so we can infer return types,
and  types based on types of these closures.

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

Change-Id: Id230f2d08c17a490a7ac4287b0212e426daac946
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97603
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-03-22 20:08:11 +00:00
asiva 98dddc9daa [tests] Ensure that --enable-asserts is used whereever checked was used previously
Change-Id: Ia88c03a8dd36237f3c819a3a892f8f17ecf7f00b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97604
Commit-Queue: Alexander Aprelev <aam@google.com>
Reviewed-by: Alexander Aprelev <aam@google.com>
2019-03-22 19:51:41 +00:00
Mike Fairhurst a8831e7481 Handle _FROM_DEFERRED_LIBRARY codes for ui as code
Change-Id: Ie75eea20cd692331c25e2bb20bc11db30fbd749a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/96851
Commit-Queue: Mike Fairhurst <mfairhurst@google.com>
Auto-Submit: Mike Fairhurst <mfairhurst@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-03-22 18:53:49 +00:00
Alexander Aprelev 14fcc352cd [gardening] Try troubleshoot flutter hhh buildbot.
This reverts move to appjit for flutter tools (https://github.com/flutter/flutter/pull/27749) that is in the range of the changes that broke `pub run build_runner test`

Change-Id: Ia1c1e66031fb7976faf75cf4a9bf95bac3a450a0
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97640
Reviewed-by: Alexander Aprelev <aam@google.com>
2019-03-22 17:36:14 +00:00
Mike Fairhurst ddcc63e1ad [Analyzer] move usage of mostSpecificTypeArgument in strong checker
Change-Id: Ie8ea3287c891a52025cb11165fc5ef5274bd5439
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97344
Auto-Submit: Mike Fairhurst <mfairhurst@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Mike Fairhurst <mfairhurst@google.com>
2019-03-22 17:28:06 +00:00
Mike Fairhurst c22c2b7645 Test that set/list if elements/else elements get implicit casts
Change-Id: Ia8b7b02645a9288d09573b19b89787d5e61fc143
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97546
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Mike Fairhurst <mfairhurst@google.com>
Auto-Submit: Mike Fairhurst <mfairhurst@google.com>
2019-03-22 17:21:36 +00:00
William Hesse c8c5eff08f [infra] Deflake tests that are both multitests and have multiple VMOptions lines
These tests were skipped because they had two numbers added to their names, like
bar/foo_test/02/3. We didn't generate the possible filename bar/foo_test.dart in
that case.

Fixes https://github.com/dart-lang/sdk/issues/36304

Bug: Fixes https://github.com/dart-lang/sdk/issues/36304
Change-Id: Ib42432d7c7e35ac373cd909ac982c8cbe4ec1b14
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97630
Reviewed-by: Jonas Termansen <sortie@google.com>
2019-03-22 17:20:29 +00:00
asiva 1bab46b06f [vm] Remove support for '-c', '--checked' flags and '--enable-checked-mode'
1. Remove support for the following flags '-c', '--checked' and '--enable-checked-mode'
2. Cleanup some of the tests and test scripts where these options were being passed.

https://github.com/dart-lang/sdk/issues/34660

Change-Id: I4d8aa0d14bd054cfba08d78a411a0df4fc829df1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97550
Commit-Queue: Siva Annamalai <asiva@google.com>
Reviewed-by: Ryan Macnak <rmacnak@google.com>
2019-03-22 17:08:56 +00:00
Liam Appelbe c614b99ae1 [vm] Load kernel service from ABI versioned dill file
Bug: https://github.com/dart-lang/sdk/issues/36047
Change-Id: I7122e8f0c8841be462e0fa0b28a75ef693d85d20
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97260
Commit-Queue: Liam Appelbe <liama@google.com>
Reviewed-by: Siva Annamalai <asiva@google.com>
2019-03-22 16:14:16 +00:00
Alexander Aprelev 7e170b351d [vm] Add whitespace before parenthesis.
Follow-up to https://dart-review.googlesource.com/c/sdk/+/97560.

Change-Id: I83cc296238f33ec1c58994393c1b416976ff383a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97564
Reviewed-by: Alexander Aprelev <aam@google.com>
2019-03-22 15:08:04 +00:00
Jonas Termansen b60eae48e5 Test that VM interpreter, bytecode, and unoptimized benchmarks can run.
Change-Id: I9264ac1589c54196089db2559d81ce735db4b8bf
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97333
Reviewed-by: Alexander Markov <alexmarkov@google.com>
2019-03-22 14:56:13 +00:00
Alexander Aprelev 2631fdf8cf [vm] Reclaim GraphMarked bit.
Use ObjectIdTable for object graph walk instead of tagging object by header bit.

Change-Id: I1e7f2e733253e714c680b7d459a4c4e1711448e9
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97560
Reviewed-by: Martin Kustermann <kustermann@google.com>
Reviewed-by: Ryan Macnak <rmacnak@google.com>
Commit-Queue: Alexander Aprelev <aam@google.com>
2019-03-22 14:47:05 +00:00
Kevin Moore a447b36280 convert: remove private typedefs
Change-Id: Ie97da6a9347b6c3a96ae5854c8b7d6ba1be0dba8
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97354
Reviewed-by: Lasse R.H. Nielsen <lrn@google.com>
Commit-Queue: Kevin Moore <kevmoo@google.com>
Auto-Submit: Kevin Moore <kevmoo@google.com>
2019-03-22 14:27:25 +00:00
danrubel 485640df2e update scanner tests to use scanString
... rather than directly referencing the scanner classes

Change-Id: I4b42ef7318d66b412bb57c396c1b3980aad6c8fc
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97600
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2019-03-22 13:44:40 +00:00
danrubel f3ac707aea report error for invalid super/this initializer
This reports an error for two more invalid initializer situations
to address comment in https://dart-review.googlesource.com/c/sdk/+/97404

The comments about error message text will be addressed in a subsequent CL.

Change-Id: I45785ae7de4adfdb63a238383e6accf465bd8a74
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97601
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2019-03-22 13:40:10 +00:00
danrubel 4cd410d6ac add parser listener handleErrorToken event
Change-Id: I11ae5f8d25248b9cc3586edbc6e49037d99bb5a4
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97555
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2019-03-22 13:36:35 +00:00
Brian Wilkerson 11a148c85e Add the ability to associate a URL with a diagnostic
Change-Id: I06f694311130a36b1db4b4baf2e7d46d999f07b7
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97554
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2019-03-22 13:32:05 +00:00
Johnni Winther 87c553bf3c Ascribe constants to the member world impacts
Change-Id: I978a6453196b47dd4ed5f51dde1d81feaa4f2008
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97502
Commit-Queue: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2019-03-22 12:58:40 +00:00
Brian Wilkerson f141914e65 Cleanup warnings in the analyzer code base
Change-Id: Ie01b837243c8c003b334657d8211b4bb35ceae1f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97562
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2019-03-22 12:39:20 +00:00
Jonas Termansen ecf5a46c96 [infra] Fix approve_results crashing on approvals for deleted tests.
Change-Id: If269731bc7ac76d6ffd624eb02f51aed1f446d27
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97624
Reviewed-by: William Hesse <whesse@google.com>
2019-03-22 12:19:17 +00:00
Jonas Termansen 849e914cb4 [infra] Fix per-CL approval not setting the expires field.
Change-Id: Iaac00636aac6b755032fb19d2f17137c026ccf05
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97623
Reviewed-by: William Hesse <whesse@google.com>
2019-03-22 12:07:35 +00:00
Jens Johansen 2aed6c0311 [CFE] >>> in fasta
Parser support was enabled a long time ago (under a flag;
52892f7c47).
Enabling it would crash fasta though. This CL stops that from happening
and instead creates code that seems to work.

Change-Id: Ibe9735bd428104371ab34a1be08838988079220c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97621
Reviewed-by: Kevin Millikin <kmillikin@google.com>
Commit-Queue: Jens Johansen <jensj@google.com>
2019-03-22 11:42:24 +00:00
Jonas Termansen 94e214bacc [infra] Fix auto-approval breaking as of per-CL approval.
The matches getter could crash if there was no result but there were approved
results or baseline results. Instead fall back on the matches field from
the baseline or approved results.

TBR=whesse@google.com

Change-Id: Ic57a2833dccb85dd69f2eba5a82bc8a0f7efa2c4
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97622
Reviewed-by: Jonas Termansen <sortie@google.com>
2019-03-22 11:41:53 +00:00
Jonas Termansen 065910f0c1 [infra] Add support for pre-approvals in approved_results.json.
This change adds a 'preapprovals' field to approved_results.json, which is
a map from gerrit Change-Id values to a pre-approval record, containing:

* 'from': What the previous approval was.
* 'result': What the new approval is.
* 'matches': Whether the new approval matches the expectation.
* 'expected': The expectation for the new approval.
* 'preapprover': Who did the preapproval.
* 'preapproved_at': When the preapproval occurred.

tools/approve_results.dart now produces pre-approval records instead of
updating the actual approvals. This ensures pre-approvals don't take
effect immediately and fixes the problem of pre-approving one kind of
failure becoming another kind of failure. The script needed to query the
gerrit API in order to determine the Change-Id of changelists. This query
also lets approve_results know what the latest changelist and lifts the
restriction that the patchset must be supplied when pre-approving.

The innards of approve_results has been refactored so it better can handle
selective modification of approve_results.dart.

approve_results now also checks for race conditions with any other
concurrent approval in interactive mode. This should catch most cases where
people leave approve_results running for long. There still is a small race
condition, so there is no check done in the non-interactive mode as the
results would just have been downloaded anyway.

The new tools/bots/apply_preapprovals.dart script will be used by the
recipe. It locates the outstanding pre-approved changelists and checks
the git history for whether they have landed by searching for their
Change-Id. It then applies their pre-approvals in order, warning about any
merge conflicts. Optionally it uploads the pre-approvals. This will work
for the commit queue where the pre-approvals can be applied temporarily,
and in the continuous integration where the pre-approvals become permanent
approvals.

This change allows empty approval records that only contain preapprovals but
with no actual base approval. tools/bots/compare_results.dart has been
updared to handle that case.

This changelist addresses https://github.com/dart-lang/sdk/issues/36279 by
ensuring only verified fields make it into new approved_results.json records
and adds a temporary workaround for 14 days to remove existing needless
existing fields.

Change-Id: I7b3ff59756dc0d28721c6db480782b4ea983b55d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97308
Reviewed-by: William Hesse <whesse@google.com>
2019-03-22 11:11:00 +00:00
Stevie Strickland 81b984d735 [gardening] Fix up name detection in isolate tests.
This change addresses the test failures seen in
https://github.com/dart-lang/sdk/issues/36232.

Change-Id: I062669c07f4963291450b35a46fb73256505c706
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97220
Auto-Submit: Stevie Strickland <sstrickl@google.com>
Reviewed-by: Ben Konyi <bkonyi@google.com>
Commit-Queue: Stevie Strickland <sstrickl@google.com>
2019-03-22 09:24:33 +00:00
Johnni Winther 3de6276ad6 Handle deferred constants in the ssa builder
Change-Id: I8fc5e4f01d00a0f1b5ad1b2b51495476f0ec625e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97328
Commit-Queue: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2019-03-22 09:06:03 +00:00
Peter von der Ahé 9db4119b67 Combine override checks and override-based inference in one phase
Change-Id: I2760f72f4eaa44bd192747179e843f017db30874
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97301
Commit-Queue: Peter von der Ahé <ahe@google.com>
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2019-03-22 08:59:48 +00:00
Mike Fairhurst 3678efae60 Test that map if elements/else elements keys/values get implicit casts
Change-Id: I920400f6924a48364d09cfc9f27dfff57bbe9044
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97523
Commit-Queue: Mike Fairhurst <mfairhurst@google.com>
Auto-Submit: Mike Fairhurst <mfairhurst@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2019-03-22 07:17:13 +00:00
Konstantin Shcheglov fa74184b7a Verify that constructor initializers use only potentially constant expressions.
...but don't evaluate them, because they don't have to be constants.

R=brianwilkerson@google.com

Change-Id: I5bc44a02947c1682da85c1f22b3fc28b52b13370
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97549
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-03-22 02:50:43 +00:00
danrubel 8b8a8f7b4e Report error for invalid this/super in initializer
Fix https://github.com/dart-lang/sdk/issues/36262

Change-Id: I20b0997f58a2835b87869952f186fbe83bfe5e3b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97404
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2019-03-22 01:43:13 +00:00
Bob Nystrom 74b7890597 Fix a few mistakes and oversights in the control flow collection tests.
- Use "{" and "}" for maps.
- Add tests for Object and non-Iterable in for-in loop.
- Fix copy/paste error in inference test.

Change-Id: I563df4e94e221a1a03bbc52cf6f312aae5e07310
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97524
Reviewed-by: Nicholas Shahan <nshahan@google.com>
Commit-Queue: Bob Nystrom <rnystrom@google.com>
2019-03-21 23:22:51 +00:00
Nicholas Shahan f5d97104e8 [dartdevc] Fix ForElement downcasts and expected run time errors
* Move implicit cast generation on the for-in statement iterator to the code generator
  so it can be reused on the for-in element.

Issue: #36005
Change-Id: I0f77ff13dae032fa7fa1248f3c9338255ec9264b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97349
Commit-Queue: Nicholas Shahan <nshahan@google.com>
Reviewed-by: Jenny Messerly <jmesserly@google.com>
2019-03-21 23:04:13 +00:00
danrubel 266d823f5c remove unused scanner error list
Change-Id: I3dd5d66dcf05ae2bf9f2087724801cae4f3b6036
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97542
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2019-03-21 22:33:02 +00:00
Jenny Messerly 986fbe34d7 [dartdevc] fix #36275, emit members whose names are from other libraries
Dart interfaces can contain private member names that aren't accessible
in the current library. This is represented in Kernel as a stub that
throws (similar to the stubs used when noSuchMethod is present on a
class, typically used for mocks). DDC's Kernel backend did not
understsand that private members could belong to a different library.
This CL addresses it.

Note, this fix does not fix private names across modules. That is
covered by issue #36252 and will be addressed on top of this fix.

Change-Id: Id77d5de15d8d7ec5e44fc0f1264ced5e786636ae
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97441
Reviewed-by: Nicholas Shahan <nshahan@google.com>
Reviewed-by: Jake Macdonald <jakemac@google.com>
Commit-Queue: Jenny Messerly <jmesserly@google.com>
2019-03-21 21:02:21 +00:00
Mike Fairhurst 602ac1226d Check if element conditions for downcasts
Change-Id: Ie1277f0efd5b327d1d068c0f8ce21f377313ee82
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97543
Commit-Queue: Mike Fairhurst <mfairhurst@google.com>
Auto-Submit: Mike Fairhurst <mfairhurst@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-03-21 20:49:12 +00:00
Konstantin Shcheglov 2ffe0c7b7a Report not potential constants in ShortCircuitOperators.
Also fix getNotPotentiallyConstants() to allow parameters of const
constructors in constructor initializers.

I'n not sure about using new CompileTimeErrorCode.NOT_POTENTIAL_CONSTANT,
it could be generic INVALID_CONSTANT, and report for constant literal
elements errors like NON_CONSTANT_LIST_ELEMENT, or NON_CONSTANT_MAP_KEY.
So, a bit inconsistency maybe, but we give more specific errors.

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

Change-Id: I88d8db77f7e5521e03e623cc26171a70599ba614
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97522
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-03-21 20:18:42 +00:00
Ryan Macnak 298dacfef5 [vm] Avoid main thread compilation of implicit accessors.
Main thread compilations: 337 functions / 87.8 ms -> 111 functions / 45.5ms

Change-Id: I64ed6c2aca98c0b3849a9142d698a8a94ed418cd
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97405
Commit-Queue: Ryan Macnak <rmacnak@google.com>
Reviewed-by: Alexander Markov <alexmarkov@google.com>
Reviewed-by: Régis Crelier <regis@google.com>
2019-03-21 20:18:32 +00:00
Vijay Menon 1e405a8226 [ddc] sidestep constant regression in ddk
See https://github.com/dart-lang/sdk/issues/36285

Change-Id: Ia4cb040ad22dfe12ae4b8269c0ca5fd3a675c02a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97351
Commit-Queue: Jenny Messerly <jmesserly@google.com>
Reviewed-by: Jenny Messerly <jmesserly@google.com>
2019-03-21 19:25:41 +00:00
Paul Berry 61e71e785f Prepare to publish analyzer version 0.36.0
Change-Id: I858ebe2a1717a467ef1901d5e643fe3e416036f5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97544
Reviewed-by: Mike Fairhurst <mfairhurst@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2019-03-21 19:08:11 +00:00
Régis Crelier c403804d9c [vm/interpreter] Take arg desc into consideration when resolving call method in invoke field dispatchers.
Add regression test.
This fixes issue 36084.
Issue 36293 filed against ddc, which fails on the new test.

Change-Id: I1112572d72671fbc1d78a768ee85affff41951a0
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97142
Reviewed-by: Alexander Markov <alexmarkov@google.com>
2019-03-21 18:51:22 +00:00
Mike Fairhurst 40e77d29d5 Tests for implicit cast properties; add cast for <T>[...dynamic].
Change-Id: Ia04c75d304dc6673c9f637c9007a8eb60062078c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97461
Auto-Submit: Mike Fairhurst <mfairhurst@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Nicholas Shahan <nshahan@google.com>
Commit-Queue: Mike Fairhurst <mfairhurst@google.com>
2019-03-21 18:34:47 +00:00
Liam Appelbe 9622562482 Make _cancelWakeup a no-op if _sendPort is null
This seems to fix the issue, but it's a flaky crash so it's hard to 100% verify.

Bug: https://github.com/dart-lang/sdk/issues/33838
Bug: https://github.com/flutter/devtools/issues/337
Change-Id: Ic037a94cfb9fe7da319d7d4b20e3a3efd0c7289f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97541
Reviewed-by: Ryan Macnak <rmacnak@google.com>
Commit-Queue: Liam Appelbe <liama@google.com>
2019-03-21 18:15:27 +00:00
Alexander Markov 8f827aef4f [vm/bytecode] Recognize identical() in bytecode flow graph builder
This optimization is performed in AST-based flow graph builder and
it is needed for optimizer to constant fold certain things
(e.g. testing endianness in typed data getters).

Replicating it in bytecode flow graph builder to keep parity with
AST-based flow graph builder.

Bug: FL-203.
Change-Id: Id28bcccc75c5d5184801574dbe10b74b86711d50
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97400
Commit-Queue: Alexander Markov <alexmarkov@google.com>
Reviewed-by: Aart Bik <ajcbik@google.com>
2019-03-21 18:07:47 +00:00
Konstantin Shcheglov 02d5d26b83 Fix for 'int' in const List<void>.
This is another issue with runtimeTypeMatch(). This time we will use
both, TypeSystem and DartType.isSubtypeOf(), and accept the value if
any of them succeedes.

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

Change-Id: I77294485e1d62e016e25992ba869e909608b1e42
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97540
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-03-21 17:37:27 +00:00
Konstantin Shcheglov ba0147ac07 Resynthesize typedef(s) and generic function types.
R=brianwilkerson@google.com

Change-Id: I3ee3014ffc615052ef077dbf58947330e4ca5e17
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97420
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-03-21 16:11:18 +00:00
Kevin Moore a7a36961bd math: dartfmt -f --fix
Change-Id: I1ffb3c418479903d982f17753e74d264b9341361
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97447
Reviewed-by: Lasse R.H. Nielsen <lrn@google.com>
Commit-Queue: Kevin Moore <kevmoo@google.com>
2019-03-21 16:02:08 +00:00