Commit Graph

35087 Commits

Author SHA1 Message Date
Brian Wilkerson 1804309d9c Remove more dead code from server
Change-Id: I99c58e87b8cc6e02dc9beab0ba9244e63ae1557c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/182000
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2021-02-01 00:32:03 +00:00
Brian Wilkerson 8363ed81b0 Enhance the relevance table generator
Add support for serializing and deserializing the data and for combining
data from multiple sources. The intent is for this to be used to allow
us to efficiently analyzer larger code bases to get more accurate values.

Change-Id: I89fe11bbfa7acc2cab56c2f06cb9ac06c2a4fb30
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/181940
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2021-02-01 00:24:08 +00:00
Brian Wilkerson d1882b6bea Remove the unused class DartContributionSorter
This was used by the ML support, which has been removed.

Change-Id: Idedb04e31c7b859f8ac0e590fd722958ce40d9ff
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/181980
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2021-02-01 00:23:59 +00:00
Brian Wilkerson 388b6ff746 Add failing tests for suggesting else in an if element
Change-Id: I8e04fc190a598c812da68b328e5e5628afa01cb4
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/181880
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2021-01-30 21:09:17 +00:00
Brian Wilkerson 53f5179b45 Improve the placement of added named parameters
Change-Id: I8ed588c14402a3d85d134dc75c324d9e3d96f532
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/181820
Reviewed-by: Phil Quitslund <pquitslund@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2021-01-29 19:33:56 +00:00
William Hesse 4a39a9b9fe [infra] Disallow spaces in test configuration names
Change-Id: Ibd96e414d9a8c76a36b4fc8360ceca3560f1dd91
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/181404
Commit-Queue: William Hesse <whesse@google.com>
Reviewed-by: Nicholas Shahan <nshahan@google.com>
2021-01-29 14:55:56 +00:00
Konstantin Shcheglov 0c3696d76a Switch refactoring tests to 2.12 + non-function type aliases.
Change-Id: Iaf366ba1ee5f05d47a6ae102a9c5f2daeb8112c2
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/181780
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2021-01-29 01:32:35 +00:00
Anna Gringauze d6cf6b6bc9 Pass type parameters to expression evaluation function
- Pass type parameters to the synthetic expression evaluation
  function
- Add tests

Closes: https://github.com/dart-lang/sdk/issues/44755
Change-Id: Ifbc859b72c616d8f47a76ad9de2cc2aeef67e636
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/181660
Reviewed-by: Mark Zhou <markzipan@google.com>
Commit-Queue: Anna Gringauze <annagrin@google.com>
2021-01-29 01:24:05 +00:00
Paul Berry d35cb900ca Expose _flowAnalysis from ResolverVisitor.
This saves a lot of plumbing work in the analyzer, because it allows
the individual resolver components to access flow analysis via the
resolver field rather than needing to maintain their own field.  It
should be helpful in supporting the upcoming "why not promoted"
functionality (#38773), which will require flow analysis to be visible
to even more parts of the resolver.

Bug: https://github.com/dart-lang/sdk/issues/38773
Change-Id: Ibea0ec7e263461d6c512b3dad59f10622b2aac6f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/181661
Reviewed-by: Samuel Rawlins <srawlins@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2021-01-28 23:00:05 +00:00
Konstantin Shcheglov 65f8699046 Fix for searching required named parameters, merge SearchTest.
Change-Id: Iae337b68507bb2ae26bb7d872ca1bba8df329e08
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/181680
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2021-01-28 22:57:55 +00:00
Ben Konyi 9fe5f563f4 [ package:vm_service ] Fix some Instance fields not being parsed from JSON
Fixes https://github.com/dart-lang/sdk/issues/44800

TEST=Manual testing

Change-Id: Id03bc8a6be57c8937c8fa850fbf82227bef8bafb
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/181720
Commit-Queue: Ben Konyi <bkonyi@google.com>
Reviewed-by: Gary Roumanis <grouma@google.com>
2021-01-28 22:25:35 +00:00
Brian Wilkerson e586c931f7 Improve the highlight range for body_might_complete_normally
Closes https://github.com/dart-lang/sdk/issues/44446

Change-Id: I895253b341f299553441e073efb7485ec086ee5f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/181640
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2021-01-28 19:24:55 +00:00
Lasse R.H. Nielsen 4a484c88e1 Make ListMixin.take check that the argument is not null.
Fixes #41743, #30155
BUG= http://dartbug.com/41743

Change-Id: I223905a92b7353cdc50498d265a6dfe2f2f614d9
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/160640
Commit-Queue: Lasse R.H. Nielsen <lrn@google.com>
Reviewed-by: Nate Bosch <nbosch@google.com>
2021-01-28 17:19:35 +00:00
Sam Rawlins 0a66c39bbe Analyzer: Report incorrect parameters for Future.catchError onError handler.
Fixes https://github.com/dart-lang/sdk/issues/35825

This check ensures that the function type passed to Future.catchError's onError
handler either accepts exactly one positional argument (an Object), or exactly
two positional arguments (an Object and a StackTrace).

Change-Id: Ic0473f6f3032e64fa5df478b478bd97fad8dae5d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/180680
Commit-Queue: Samuel Rawlins <srawlins@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2021-01-28 15:49:15 +00:00
Jens Johansen e2b6208871 [CFE] Shard front-end try bots better
This CL shards the CFE try bot tests better.
* co19_2 runs was previously made faster, so using 10 shards on that is
  way too much.
* sdk_test runs was previously made faster, so using 5 shard on that is
  way too much.
* unit_tests was taking ~10 minutes and wasn't sharded. This CL shards
  it. Note that this sharding is semi-complicated because a few tests
  use git which is not usable on shard-runs. To overcome this a previous
  CL renamed the tests that use git and here the sharded runs only run
  the tests that doesn't require git. Then the "main bot" runs the tests
  that require git.
* unit tests suites was taking ~12 minutes and wasn't sharded. This CL
  shards it. Note that this sharding is semi-complicated because a few
  of the suites use git which is not usable on shard-runs. Also a single
  suite uses many more files that it is reasonable to include in the
  fileset for the shards. In both cases these are run on the "main bot"
  instead. The suit runnier was already "threaded", but simply launched
  all threads (say around 20 or something like that) at the same time.
  That's not ideal if having, say, 8 cores to work with (which is what
  the bots seem to have) - or 12 (which is what my computer has).
  Now only 'cores - 1' "threads" are run at any one time, and most
  "sub-suites" are sharded, so that if one finishes early that core
  can start another "sub-suite" - hopefully utilizing more of the
  resources avaiable on the computer running it.

In total - in my 'benchmarks' (i.e. try bot runs) - the
front-end-linux-release-x64-try bot previously rook around 35 minutes
to complete, and with these changes it takes around 15 minutes to
complete. The biggest entry in the timeline is now building dart which
takes almost half that time. It does so with fewer shards than before,
but each might be utilized for longer.

Change-Id: Ie034058d8f33aafd21bc49f2bc878484563ba01c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/181383
Commit-Queue: Jens Johansen <jensj@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
2021-01-28 14:16:25 +00:00
Johnni Winther 019ce33409 [cfe] Don't handle synthesized as if they are declared in mixins
Members declared in mixins are treated as if these were declared in
the class where they are mixed in. This means that use their types as
declared types, instead of including them in a combined member signature.

This failed in the case where a member was synthetically added to the
mixin class, because the types of these we wrongfully be handled as
declared types.

We now skip all synthetic members when reasoning about mixed in members
as declared members.

Change-Id: I9c2311b4472fe16162fcdc4c56fce8db2d946f4d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/181201
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
Commit-Queue: Johnni Winther <johnniwinther@google.com>
2021-01-28 09:39:50 +00:00
Jens Johansen 30ae8e3d14 [CFE] Rename tests that require git; split unit_test_suites; filter tests better
This CL is a warm-up to a follow-up change that will make running the
CFE trybot faster.
This CL:
* Rename tests that require git (because when working with filesets
  and shards in the test system, the "checkout" is not a git checkout
  and git commands thus doesn't work properly.
* Filters the front-end unit test setup on the front-end bot the way
  it was probably intended, i.e. run tests in pkg/kernel, pkg/front_end
  and pkg/fasta (actually, the last one doesn't exist, but still)
  instead of just in folders inside the "suite" 'pkg' that somewhere in
  the path has something called 'kernel', 'front_end' or 'fasta'.
* Split unit_test_suites.dart into a "forwarding shell" and a impl.
  In a follow-up CL the impl will be converted to nnbd to allow for
  using 'required' on named parameters, but if the entry point was
  nnbd it would run in sound nnbd mode and nothing would compile
  because all imports are not nnbd.

Overall this CL should change very little, mostly just run a few less
tests, i.e. for instance skip tests that live inside a folder called
'fasta' somewhere inside the analyzer directory path.

Change-Id: I3226c7261cff8b68cc287cff07dc1715dfd85159
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/181381
Reviewed-by: Johnni Winther <johnniwinther@google.com>
Commit-Queue: Jens Johansen <jensj@google.com>
2021-01-28 07:46:10 +00:00
Konstantin Shcheglov 7bbab07bea Outline for non-function type aliases.
Change-Id: I1a8ef42e700fa84ac7a249268cdbd3aa72921c1c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/181541
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2021-01-28 07:28:50 +00:00
Konstantin Shcheglov 17a78826b7 Index references to any ParameterElement(s), such as required named.
Also switch index tests to the latest language version, with
non-function type aliases feature.

Change-Id: Ia818bde5ec6b83f850336baff4eb48ee0e418d90
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/181540
Reviewed-by: Samuel Rawlins <srawlins@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2021-01-28 06:34:50 +00:00
Konstantin Shcheglov 3c390c2909 Tweaks for NonConstantTypeArgumentTest.
Change-Id: I19596e8c337799ef3f11650946dd8c7cfec80002
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/181462
Reviewed-by: Samuel Rawlins <srawlins@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2021-01-28 06:34:10 +00:00
Srujan Gaddam e0cd4b37cf [pkg:js] Disable JS/Native class conflict check
Bug: https://github.com/dart-lang/sdk/issues/44778

The Native/JS class conflict check breaks user behavior. It should
instead be added under a language version to avoid a breakage on
SDK update. This CL simply disables the check always so that it can
be a simpler cherry-pick for 2.12.

Change-Id: I40b0a3a4c46b1442257028c99360ef0ed0b4154c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/181440
Reviewed-by: Riley Porter <rileyporter@google.com>
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Commit-Queue: Srujan Gaddam <srujzs@google.com>
2021-01-28 02:16:20 +00:00
Konstantin Shcheglov 75a5e771be Remove unnecessary type annotation.
It seems that after switching to null safe version of package:html
we don't need it anymore.

Change-Id: I599ffb2e1b716358e07e4884544b62a2dfa72216
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/181461
Reviewed-by: Samuel Rawlins <srawlins@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2021-01-27 23:55:15 +00:00
Konstantin Shcheglov 5c426d8d43 Add Element.aliasedType to the protocol.
R=brianwilkerson@google.com

Change-Id: I95fb2c9d50096f90913c4d6670ce0841095fe6a0
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/181443
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2021-01-27 23:27:21 +00:00
Konstantin Shcheglov 974926e468 Update StaticMemberContributor to support completion via non-function type alias.
Change-Id: Ic59fba42a8ddad52a55f0f323dc199d78597a9c1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/181460
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2021-01-27 23:23:05 +00:00
Brian Wilkerson 8cf4c15bf0 Update the context location label for general type alias support
By the way, I didn't actually regenerate the table, I just hand edited
it. We don't have any way to ensure that the checked in table matches
what would be generated because we can't have the code used to generate
the table available on the build systems (or every developer's machine).

Change-Id: I4b645f3a276f23bab469e5daf2325cc8f2d0bce4
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/181441
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2021-01-27 22:38:07 +00:00
Danny Tuppeny 77353dc380 [Analyzer] Allow files inside .dart_tool to be analyzed when modified
These files were already analyzed at startup but not when modified. This meant code generated by flutter_gen would not update unless the analysis server was restarted/the project was reanalyzed.

Fixes https://github.com/Dart-Code/Dart-Code/issues/3074.

Change-Id: If0c88c1e5ab7e796046e7e776a42c3d904944405
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/179776
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2021-01-27 20:37:25 +00:00
Mark Zhou f09a5d4243 [dartdevc] Avoid caching constants during eval.
Avoids masking the issue underlying #44713.

Change-Id: I107c1ea3aab18a97ac08e868741fa0929e2292b2
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/181304
Reviewed-by: Nicholas Shahan <nshahan@google.com>
Commit-Queue: Mark Zhou <markzipan@google.com>
2021-01-27 20:25:45 +00:00
Brian Wilkerson 00edf6fd13 Mark newly published docs as being published
Change-Id: I5663eaf6a6df94d279f15ca42364e96054c04987
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/180800
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2021-01-27 20:19:17 +00:00
Konstantin Shcheglov 3a5294c7e6 Fixes and tests for completion in non-function type aliases.
Change-Id: I69cf74380fc1c251e0f44334fdff17f327cafeaa
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/181341
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2021-01-27 19:27:35 +00:00
Johnni Winther 2761782d60 [kernel] Move switch cases to helpers in ast_from_binary
Change-Id: If3e2854cd6f7118179766e179348fb02227f9798
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/181384
Reviewed-by: Jens Johansen <jensj@google.com>
Commit-Queue: Johnni Winther <johnniwinther@google.com>
2021-01-27 18:56:59 +00:00
Nate Bosch 6e1a0b08c7 Update to null safe package:html
Change-Id: I667efbe0f895628130bc695e96a7f95a991c2e9d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/181040
Commit-Queue: Nate Bosch <nbosch@google.com>
Reviewed-by: Jake Macdonald <jakemac@google.com>
2021-01-27 18:41:10 +00:00
Nicholas Shahan f5743e6c66 [ddc] Fix async methods with Object return type
The sound null safety spec includes a change in the calculation of
static types of return values in async methods. The "Future value
type" should be `Object?` when the declared return type of the
async method is `Object`.

See https://github.com/dart-lang/language/blob/master/accepted/future-releases/nnbd/feature-specification.md#the-future-value-type-of-an-asynchronous-non-generator-function

With this change,
co19/LanguageFeatures/nnbd/future_value_type_A05_t01 is now passing
in sound mode.

Change-Id: Ia7d4cb2fd57c1d2e50dbf8e59658a70124b0c8b3
Fixes: https://github.com/dart-lang/sdk/issues/44745
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/181303
Commit-Queue: Nicholas Shahan <nshahan@google.com>
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Reviewed-by: Mark Zhou <markzipan@google.com>
2021-01-27 18:17:40 +00:00
Konstantin Shcheglov ab03a9cde5 Issue 43090. Catch parser exceptions in available declarations.
Bug: https://github.com/dart-lang/sdk/issues/43090
Change-Id: Ia4cd891842bfdc7ac0b6a7755a916032bccfa202
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/181340
Reviewed-by: Samuel Rawlins <srawlins@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2021-01-27 02:39:15 +00:00
Konstantin Shcheglov 934980be80 Issue 44780. Fix reporing accessing instance from static when enclosed in local variable.
Bug: https://github.com/dart-lang/sdk/issues/44780
Change-Id: Iec59d928161b68ecf77f95792bd6e9ac8ca0d462
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/181305
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Samuel Rawlins <srawlins@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2021-01-27 00:03:45 +00:00
Brian Wilkerson b23be6b8ee Update the completion metrics measurement tool
Change-Id: I8e67d138e60e0e226cef87e9efd35088526dec72
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/181300
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2021-01-26 23:54:15 +00:00
Daco Harkes bc5952d8e8 [analyzer/ffi] Stop non-const warnings on ..ref
Closes: https://github.com/dart-lang/sdk/issues/44782

TEST=pkg/analyzer/test/src/diagnostics/non_constant_type_argument_test.dart

Change-Id: I434b9e68fb07e37cad03b1418897ea2295f81fc7
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/181204
Commit-Queue: Daco Harkes <dacoharkes@google.com>
Auto-Submit: Daco Harkes <dacoharkes@google.com>
Reviewed-by: Samuel Rawlins <srawlins@google.com>
Reviewed-by: Siva Annamalai <asiva@google.com>
2021-01-26 23:12:00 +00:00
Konstantin Shcheglov 83a72e18f3 Switch completion tests to WithNonFunctionTypeAliasesMixin, updates and tests for suggesting non-function type aliases.
Change-Id: I0066d479b23b46e0aaaae43aebdc1bbc58336ad8
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/181282
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2021-01-26 23:04:05 +00:00
Konstantin Shcheglov 79c35e872d Update messages for checking the name of a type alias.
R=brianwilkerson@google.com

Change-Id: I6a523d3b5f8db07f1f1e1e779c1e9aacf885b173
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/181301
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2021-01-26 23:03:55 +00:00
Konstantin Shcheglov e9fe25003b Issue 43166. Don't ignore changes to files excluded from reporting diagnostics.
Bug: https://github.com/dart-lang/sdk/issues/43166
Change-Id: I9d9f8cf77129ecd811f13876aa6e284f633f023a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/181280
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2021-01-26 22:23:55 +00:00
Konstantin Shcheglov d8961dc2c9 Test that rename refactoring works for non-function type aliases.
Change-Id: I801be01b73f0e27245ec8958b0a18e521615c8e7
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/181281
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2021-01-26 22:11:45 +00:00
Konstantin Shcheglov 64a8d2a8b8 Fix for indexing constructor references in documentation comments.
Bug: https://github.com/Dart-Code/Dart-Code/issues/2816
Change-Id: I4515b6887f5d8bd93fc6ba59812c5a9ec14f0d3c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/181260
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2021-01-26 20:15:44 +00:00
Alexander Markov 55daf05f4f Add --[no-]sound-null-safety option to dart2native and dart compile exe
Fixes https://github.com/dart-lang/sdk/issues/44553

Change-Id: Id461550e7761d874719220a5cb7a6b2c9ac421a0
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/181020
Commit-Queue: Alexander Markov <alexmarkov@google.com>
Reviewed-by: Clement Skau <cskau@google.com>
Reviewed-by: Ben Konyi <bkonyi@google.com>
2021-01-26 19:16:30 +00:00
Dmitry Stefantsov 03e22f5fe4 Reland "[cfe] Pass variance through in ReplacementVisitor"
This is a reland of a212650da6

Original change's description:
> [cfe] Pass variance through in ReplacementVisitor
>
> Change-Id: I8dc9c1a77c5dfe70ad186bbd6254aaf5353aa0ca
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/180900
> Reviewed-by: Johnni Winther <johnniwinther@google.com>
> Commit-Queue: Dmitry Stefantsov <dmitryas@google.com>

Change-Id: I8e7a6b8acb615c2793062751906830e870b8c513
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/181203
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com>
2021-01-26 17:50:09 +00:00
Dmitry Stefantsov cc1cc0bb57 Revert "[cfe] Pass variance through in ReplacementVisitor"
This reverts commit a212650da6.

Reason for revert: Regressions detected by the Dart CI bot.

Original change's description:
> [cfe] Pass variance through in ReplacementVisitor
>
> Change-Id: I8dc9c1a77c5dfe70ad186bbd6254aaf5353aa0ca
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/180900
> Reviewed-by: Johnni Winther <johnniwinther@google.com>
> Commit-Queue: Dmitry Stefantsov <dmitryas@google.com>

TBR=dmitryas@google.com,johnniwinther@google.com

Change-Id: I678c9f013b1df9c7fe4da043fc1e1b19d3f24168
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/181202
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com>
2021-01-26 16:12:01 +00:00
Konstantin Shcheglov d373094cbb Test that search of/in non-function type alias works.
Change-Id: I4d750da4a706d837d626349ad4225f80d35c3f78
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/181140
Reviewed-by: Samuel Rawlins <srawlins@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2021-01-26 16:08:39 +00:00
Johnni Winther b4119d6787 [cfe] Add tests for how the CFE handles duplicates and setter conflicts
This is in preparation for a CL the removes @fields/@=fields canonical
names in favor of @getters/@setters and therefore needs stricter handling
of how duplicates and conflicts are emitted in the AST.

Change-Id: I87220a41c9777c94f9e9bce51ff5223fafdc738f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/180342
Commit-Queue: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2021-01-26 14:27:39 +00:00
Dmitry Stefantsov a212650da6 [cfe] Pass variance through in ReplacementVisitor
Change-Id: I8dc9c1a77c5dfe70ad186bbd6254aaf5353aa0ca
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/180900
Reviewed-by: Johnni Winther <johnniwinther@google.com>
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com>
2021-01-26 14:21:29 +00:00
Clement Skau c3ec3e53a1 [VM] Adds Future.then stack unwind. (3)
TEST=ASAN; Various 'causal' tests updated below.

Issues addressed in this revision:
- https://github.com/dart-lang/sdk/issues/44708 ASAN
- https://github.com/dart-lang/sdk/issues/44700 SegFault

Cq-Include-Trybots: luci.dart.try:vm-kernel-precomp-asan-linux-release-x64-try,vm-kernel-asan-linux-release-x64-try,analyzer-linux-release-try,analyzer-analysis-server-linux-try,analyzer-nnbd-linux-release-try
Bug: https://github.com/dart-lang/sdk/issues/40815, https://github.com/dart-lang/sdk/issues/37953
Change-Id: I8b8f6ee2e5d4ca2e6bea988ec1cd9f912ddf8240
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/180186
Commit-Queue: Clement Skau <cskau@google.com>
Reviewed-by: Vyacheslav Egorov <vegorov@google.com>
2021-01-26 14:02:39 +00:00
Stephen Adams 67e71d02c8 [dart2js] load elimination: better intersection with unreachable inputs
The single-entry / single-exit patterns of the CFG prevent inlined
throw statements and throw expressions from having exit edges like a
statement-level throw. If the join block is not reachable on one path
of a diamond, the kills on the infeasible path can be ignored in the
join.

Change-Id: I3e227f450091cabbf240858c1a369d91ec97a60d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/180761
Commit-Queue: Stephen Adams <sra@google.com>
Reviewed-by: Mayank Patke <fishythefish@google.com>
2021-01-26 07:25:18 +00:00
Konstantin Shcheglov 4a5ac9df57 Support for non-function type aliases in convertElement() and test navigation.
Change-Id: Ic2dcf6ad3faaf6712fdcbbe5197f332b6ba42e78
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/181120
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2021-01-26 06:40:00 +00:00