Commit Graph

79322 Commits

Author SHA1 Message Date
Vyacheslav Egorov aed72ae8c8 [vm/bin] Improve fallback error message for process creation
Instead of just giving up try to give as much information as possible
including error code, error returned by Dart_StringFromUtf8 and
ascii portion of the OS error message.

We are making this change because we are getting reports of
ProcessException being thrown with "OS error message was a
not a utf8 string." message. There is no way to reproduce
these situations so instead we are going to add additional
information into the fallback message to aid the investigation.

TEST=tested manually by simulating fallback to the newly added code

Bug: b/178383611
Change-Id: Idf528dc762723694145a15aa07320220e8af9bfc
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/181200
Commit-Queue: Vyacheslav Egorov <vegorov@google.com>
Reviewed-by: Daco Harkes <dacoharkes@google.com>
2021-01-26 12:56:49 +00:00
Vyacheslav Egorov 0f371f2dba [vm] Fix problems with TTS specialization
* Correctly handle _Smi type when producing TTS for it.
 Previously it would not correctly establish that an instance
 of _Smi is assignable to _Smi causing it to always fall through
 into runtime system;
* Correctly handle Null type as a type argument when checking C<Null>
 is C<X>, if Null is assignable to X we need to explicitly check if
 type argument is Null because cid ranges don't really handle this
 check.
* Strengthen the assert checking that TTS specialization succeeded:
 check that specialization is (bitwise) different from the previous
 version of the stub. If they are equal that means specialization
 failed.

TEST=vm/cc/TTS_SubtypeRangeCheck,vm/cc/TTS_Smi

Change-Id: I151a89b52ae07d7e5acce14f59bcb3226bfa1f36
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/180842
Commit-Queue: Vyacheslav Egorov <vegorov@google.com>
Reviewed-by: Alexander Markov <alexmarkov@google.com>
2021-01-26 11:03:29 +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
Stephen Adams 3541a4a125 [dart2js] Substitute conditions in continuation of diamond
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 condition can be substituted as if the join is on
the other path.

Change-Id: I9cc1058b4ca0cab892db7f1197141c5157d2bc5b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/180724
Commit-Queue: Stephen Adams <sra@google.com>
Reviewed-by: Mayank Patke <fishythefish@google.com>
2021-01-26 04:06:18 +00:00
asiva ac520f984d [ VM / CLI ] Add --verbosity to VM options
The verbosity option allows for specifying the CFE output verbosity

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

TEST=existing tests compile_test.dart and run_test.dart have new tests

Change-Id: I3d4e50811f84650aacf774ddb370a6eb765b9b24
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/181100
Commit-Queue: Siva Annamalai <asiva@google.com>
Reviewed-by: Alexander Aprelev <aam@google.com>
2021-01-26 03:01:58 +00:00
Brian Wilkerson 8ee08e1128 Clean up some docs from the analyzer_plugin package
Change-Id: Iea3e8233641fb294ca1006a7b68178c439cc5e4f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/180780
Auto-Submit: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2021-01-26 00:03:16 +00:00
Konstantin Shcheglov 3a9dc0ae9f Highlight Function/typedef as BUILT_IN, non-function TypeAliasElement as TYPE_ALIAS.
Change-Id: Icd2375338c3b37c34b8438453d58af43e8d0dfd7
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/180640
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2021-01-25 23:02:17 +00:00
Konstantin Shcheglov 2941757a9a Report NULLABLE_TYPE_IN_EXTENDS_CLAUSE for nullable type aliases.
Change-Id: I51b66f8707c42b2630ea6e92753fe7a839f864fd
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/180941
Reviewed-by: Samuel Rawlins <srawlins@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2021-01-25 22:58:27 +00:00
Sigmund Cherem 7c1b43d10a [dart2js] make js_runtime a proper package
Change-Id: Ib5583f79abc0ab00a96ce6473282f4322da5143c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/180720
Reviewed-by: Stephen Adams <sra@google.com>
Commit-Queue: Sigmund Cherem <sigmund@google.com>
2021-01-25 22:39:23 +00:00
Nate Bosch 436c12e8ea Update to latest package:html
Resolves some differences between internal and external copies of the
tests.

Change-Id: Id11261c3751cfd4b5f10a8ad9c33d4ad05576f74
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/180604
Auto-Submit: Nate Bosch <nbosch@google.com>
Reviewed-by: Jake Macdonald <jakemac@google.com>
Commit-Queue: Nate Bosch <nbosch@google.com>
2021-01-25 21:44:53 +00:00
Sam Rawlins f78b2bcad9 Reland: Report on return types of Future.catchError function
The type of the `onError` parameter of Future<T>.catchError is just Function,
but the function can either have signature `FutureOr<T> Function(dynamic)` or
`FutureOr<T> Function(dynamic, StackTrace)`. This change adds checks for return
statements in a function literal passed to `onError`, and the return type of a
function-typed expression passed to `onError`.

We still need to check parameter types.

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

Change-Id: I806d9d30e595fb9d63ae669f3c30c428b60fdf4a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/180880
Commit-Queue: Samuel Rawlins <srawlins@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2021-01-25 21:30:43 +00:00
Alexander Markov 91b0f16663 Migrate samples/sample_extension to null safety
Closes https://github.com/dart-lang/sdk/issues/43711

Change-Id: I7628e4a6192efb26a12f8051b4fa87dfafabab9c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/180960
Reviewed-by: Régis Crelier <regis@google.com>
Commit-Queue: Alexander Markov <alexmarkov@google.com>
2021-01-25 20:06:43 +00:00
pq f438d72387 report sdk root in status
Change-Id: I9c9d09a2812566d88835b3dbc6808a515089cd4d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/180921
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Phil Quitslund <pquitslund@google.com>
2021-01-25 19:53:53 +00:00
pq 527034b059 remove (redundant) exists check
the check is expensive and because of the async nature of the filesystem doesn't do away with a need for try-catch.

Change-Id: Ief5020066f21789c83a331f767a65ccdb2769a77
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/180920
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Phil Quitslund <pquitslund@google.com>
2021-01-25 19:32:13 +00:00
Nicholas Shahan 0551fdc7f1 [ddc] Format dart_library.js
Just some preliminary formatting to make it easier to see the diffs
when I merge the changes from the version in google3. The diff
algorithm gerrit uses doesn't handle the change in indentation very
well.

Change-Id: I2a4daa50d0051140569d51bea5845a0366ba1dad
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/180700
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Commit-Queue: Nicholas Shahan <nshahan@google.com>
2021-01-25 18:47:53 +00:00
Konstantin Shcheglov 40b9650b67 Add ElementKind.TYPE_ALIAS and HighlightRegionType.TYPE_ALIAS to the protocol.
Change-Id: Ia4991d4f657f4bfa5e244d9c3b126e89571b9e7c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/180660
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2021-01-25 18:42:03 +00:00
Sigurd Meldgaard 2c41e14b8b Bump pub
Included commits:
```
git log --format="%C(auto) %h %s" 0402c467547daa5886352cb315338ae54552d21c..0e657414a472e74ca5dd76ae0db50cc060251dec
 0e657414 Show outdated and discontinued in listing in get (#2844)
 f842ae22 Include a deprecation notice in .packages (#2845)
```

Change-Id: Iaf03c5ea0380c16332ce65f2c4b3bf935873d30c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/180841
Reviewed-by: Jonas Jensen <jonasfj@google.com>
Commit-Queue: Sigurd Meldgaard <sigurdm@google.com>
2021-01-25 16:07:03 +00:00
Sam Rawlins e2ef697356 Add to analyzer's changelog for 2.12.
Change-Id: Ida77c397743cbb460376a1f47f6de861e878f376
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/180801
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Samuel Rawlins <srawlins@google.com>
2021-01-25 16:03:03 +00:00
Daco Harkes e8497a332e [analyzer/ffi] Fix null exceptions
The analyzer has not been migrated, so this is based on manual
inspecation of the API about what can be `null` for now.

Note with the analyzer from master (running in nnbd by default) this
file contains many nullable to non-null assignments. However, we cannot
migrate this file to nnbd yet because of the language version it's used
in.

Closes: https://github.com/dart-lang/sdk/issues/44763

Change-Id: If0432341e7fefb973b0229bcc325eeefed84f7cb
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/180821
Reviewed-by: Vyacheslav Egorov <vegorov@google.com>
Commit-Queue: Daco Harkes <dacoharkes@google.com>
2021-01-25 15:16:32 +00:00
Alexander Thomas a82830858e [co19] Roll co19 to 103d027d38472f9871b66fb0c2b01cc91c858c9f
2021-01-24 irina.arkhipets@gmail.com Issue #983: Static warning checks corrected.
2021-01-22 irina.arkhipets@gmail.com Issue #983: triple-shift folders re-named correctly, typo in the library paths updated for 2 tests.
2021-01-21 sgrekhov@unipro.ru Fixes #985. LateInitializationError removed
2021-01-20 sgrekhov@unipro.ru Fixes #982. Add tests for The future value type of an asynchronous non-generator function part of NNBD spec
2021-01-19 irina.arkhipets@gmail.com Issue #462: NNBD type-normalization tests for weak mode added.
2021-01-19 irina.arkhipets@gmail.com Issue #462: NNBD type-aliases tests for weak mode added.
2021-01-19 irina.arkhipets@gmail.com Issue #462: NNBD tripple-shift tests for weak mode added.
2021-01-19 irina.arkhipets@gmail.com Issue #462: NNBD tests for weak mode added for the override checkings.
2021-01-19 irina.arkhipets@gmail.com Issue #462: NNBD tests for weak mode added (Leatest-greatest-closures).
2021-01-19 irina.arkhipets@gmail.com Issue #462: NNBD tests for weak mode added (Leatest-greatest-closures).
2021-01-18 sgrekhov@unipro.ru Fixes #981. Add tests for Return statements part of NNBD spec
2021-01-18 irina.arkhipets@gmail.com Issue #462: NNBD tests for weak mode corrected according to the current Spec changes.
2021-01-14 irina.arkhipets@gmail.com Issue #462: Additional comments regarding the constant evaluation issues added to weak mode tests.
2021-01-14 sgrekhov@unipro.ru Fixes #980. Remove warnings expectations for overriding default values of optional parameters tests
2021-01-13 irina.arkhipets@gmail.com Issue #462: Tests for weak mode added to nnbd/weak/flow-analysis directory.
2021-01-12 sgrekhov@unipro.ru #978. Weak mode test changes
2021-01-12 irina.arkhipets@gmail.com Issue #462: Tests for weak mode added to nnbd/weak directory.
2021-01-11 sgrekhov@unipro.ru Fixes #978. Tests updated according to the "flow analysis boolean variable" feature
2020-12-25 irina.arkhipets@gmail.com Issues #463: Tests for weak mode added.
2020-12-25 irina.arkhipets@gmail.com Issues #462, #463: Moved or added new nnbd tests for weak mode, added new tests for strong mode.
2020-12-24 sgrekhov@unipro.ru #970. Usr correct values for ProcessSignal.sigusr1 and ProcessSignal.sigusr2 on Mac
2020-12-24 irina.arkhipets@gmail.com Issue #462: 1. Added nnbd tests for weak mode: exports_*, expression_typing_*, extension_method_resolution_*, future_flattening_*. 2. Moved and re-factored nnbd extension_method_resolution_*, future_flattening_* tests for weak mode into weak folder. 3. Copyrights updated Issue #463: Two exports* tests for strong mode added.
2020-12-24 sgrekhov@unipro.ru Fixes #496. Change tested date to 1 second instead of 1 day to reduce probability to change timezone on DST
2020-12-23 sgrekhov@unipro.ru Fixes #473. Remove UtilsHtml directory
2020-12-23 irina.arkhipets@gmail.com Fix for Issue #462: 1. Added nnbd tests for weak mode: assignability_*, const_evaluation_*, const_objects_*, const_type_var_elimination_*. 2. Moved and re-factored nnbd exports_* tests for weak mode into weak folder.
2020-12-10 sgrekhov@unipro.ru Fixes #976. Remove obsolete errors expectations
2020-12-10 sgrekhov@unipro.ru Fixes #975. Fix wrong expected compile time error type
2020-12-07 sgrekhov@unipro.ru Flag Requirements=nnbd-weak added to the tests that run legacy code

Cq-Include-Trybots: dart/try:analyzer-nnbd-linux-release-try,dart2js-nnbd-linux-x64-chrome-try,ddc-nnbd-linux-release-chrome-try,front-end-nnbd-linux-release-x64-try,vm-kernel-nnbd-linux-release-simarm64-try,vm-kernel-nnbd-linux-release-x64-try,vm-kernel-nnbd-mac-release-x64-try,vm-kernel-nnbd-win-release-x64-try,vm-kernel-precomp-nnbd-linux-release-x64-try
Change-Id: I69acc5c0a28fd2e7a2d38f6c9062e5a5854bdfa6
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/180823
Reviewed-by: William Hesse <whesse@google.com>
2021-01-25 13:49:17 +00:00
Emmanuel Pellereau ba0159688e Revert "Analyzer: Report on return types of Future.catchError function"
This reverts commit d5ee021819.

Reason for revert:
Breaks google3: b/178222419

Original change's description:
> Analyzer: Report on return types of Future.catchError function
>
> The type of the `onError` parameter of Future<T>.catchError is just Function,
> but the function can either have signature `FutureOr<T> Function(dynamic)` or
> `FutureOr<T> Function(dynamic, StackTrace)`. This change adds checks for return
> statements in a function literal passed to `onError`, and the return type of a
> function-typed expression passed to `onError`.
>
> We still need to check parameter types.
>
> https://github.com/dart-lang/sdk/issues/35825
>
> Change-Id: I3a1d1c444e298c5816fcd1d4bc537f7b87fa3da1
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/176221
> Commit-Queue: Samuel Rawlins <srawlins@google.com>
> Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
> Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>

TBR=scheglov@google.com,brianwilkerson@google.com,srawlins@google.com

# Not skipping CQ checks because original CL landed > 1 day ago.

Change-Id: I8ebbaac0a4b44293576809baa2dc2c3fdcf35379
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/180822
Commit-Queue: David Morgan <davidmorgan@google.com>
Reviewed-by: David Morgan <davidmorgan@google.com>
2021-01-25 12:04:52 +00:00
eggfly 341213becd Add --export-compile-commands option to generate compile_commands.json
compile_commands.json compilation database file can be easily recognized by IDEs such as VSCode, CLion or SciTools Understand.

Closes https://github.com/dart-lang/sdk/pull/44690
https://github.com/dart-lang/sdk/pull/44690

GitOrigin-RevId: 72a0848cd1db2fa787a057ba07be0e7e2ade596a
Change-Id: Ib5212063bec58fc1575c7bfd5fb5f2a01db9db52
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/179780
Reviewed-by: Vyacheslav Egorov <vegorov@google.com>
Commit-Queue: Vyacheslav Egorov <vegorov@google.com>
2021-01-25 10:37:02 +00:00
Jens Johansen 6e191c11e5 [CFE] Rename 'verifySkipPlatform' to 'skipPlatformVerification'
Follow-up to https://dart-review.googlesource.com/c/sdk/+/180562

Change-Id: I242da8dc94109008d33611067b62f5352d52f454
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/180565
Commit-Queue: Jens Johansen <jensj@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
2021-01-25 10:19:52 +00:00
Sigurd Meldgaard 7e5f96bd97 Bump pub
Contains a single commit:

```
 0402c467 Recommend running `flutter pub` instead of `dart pub` when running from inside flutter. (#2842)
```

Change-Id: Icb89708a16631a99157428ac7e0d04fc29524d49
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/180569
Commit-Queue: Sigurd Meldgaard <sigurdm@google.com>
Reviewed-by: Jonas Jensen <jonasfj@google.com>
2021-01-25 10:17:42 +00:00
Parker Lougheed 3223072f09 Remove mention of dart2js from mirrors library documentation
Change-Id: I6abb182c19f903cdc8121f2a23eecae4330aea18
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/180320
Reviewed-by: Lasse R.H. Nielsen <lrn@google.com>
Commit-Queue: Lasse R.H. Nielsen <lrn@google.com>
2021-01-25 10:08:23 +00:00
Dmitry Stefantsov 090b17fe99 [cfe] Don't run findTypeArgumentIssues twice
From the times where some of the type arguments should have been
reported as warnings, the procedure was run twice in two different
modes, in order to report some issues as errors and some as warnings.
This CL is a cleanup that invokes the procedure once.  Additionally, a
refactoring of the return value discipline is made: it always returns
a list and never returns null.  An empty list is returned if there are
no issues.

Change-Id: Id497216bf51f49c86517cf16a52f03da5b65b1fd
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/180570
Reviewed-by: Johnni Winther <johnniwinther@google.com>
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com>
2021-01-25 09:53:27 +00:00
Sam Rawlins 28d08923c1 analysis_server_client: Remove unnecessary imports
Bug: https://github.com/dart-lang/sdk/issues/44569
Change-Id: Ie74a933b412edd80530404b6fc613d0884f3b7b0
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/177240
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Samuel Rawlins <srawlins@google.com>
2021-01-25 01:06:49 +00:00
pq 3001499c78 data driven sdk api fix support
Change-Id: I5b05044b505fa5936d8148515c61172e443dc129
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/180721
Commit-Queue: Phil Quitslund <pquitslund@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2021-01-24 15:41:48 +00:00
Brian Wilkerson a00530b46f Remove unused support for requesting token details
Change-Id: I9cc160d84e06b4b7be67e53962fe38c1430e74b2
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/180762
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2021-01-24 05:11:48 +00:00
Sander Kersten 089ca8c1eb Make compute assists async and fix message
Fixes #44730.
Fixes #44731.

For "fixes" there were similar bugs that I've fixed as well.

Closes https://github.com/dart-lang/sdk/pull/44758
https://github.com/dart-lang/sdk/pull/44758

GitOrigin-RevId: e08b25ea2890fc6f796c9cc0411fe7a71eaf70b9
Change-Id: I026c325d9d362775e178a7621a17ce6ff919ed40
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/180740
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2021-01-23 17:58:57 +00:00
Alexander Aprelev eccff3bc4d [io/http] Fix http_parser_header_add_test so it doesn't depend on external web server.
This is follow-up to https://dart.googlesource.com/sdk/+/60bea3003de2ea030a1970924d5af7b4a53f3a72.

Issue: https://github.com/dart-lang/sdk/issues/44756

Change-Id: I3c76fe0d15e4aba26540a95c63ccba8480dc8315
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/180722
Reviewed-by: Alexander Aprelev <aam@google.com>
Commit-Queue: Alexander Aprelev <aam@google.com>
2021-01-23 06:07:21 +00:00
Alexander Aprelev 60bea3003d Reland "[tests] rewrite and format several tests on http"
This reverts commit af4330d382, relands original e35120cfd14ed09302596e9fa20d8e845e8e2668(in patchset 1) with fixes for the tests(in subsequent patchsets).

Change-Id: I025022d242a75ad94b3616ff78aef28b7b5f372b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/180603
Commit-Queue: Alexander Aprelev <aam@google.com>
Reviewed-by: Siva Annamalai <asiva@google.com>
2021-01-22 23:49:17 +00:00
Ben Konyi 3187be979d [ VM ] Fix vm/cc/DartAPI_TypeGetParameterizedTypes using Dart_IdentityEquals() to compare types in unsound null safety mode
Fixes https://github.com/dart-lang/sdk/issues/44749

Fixed: 44749
TEST=Fixed test
Change-Id: Ibc378e0a82ca8317ba340ef7ac91b965281913b2
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/180607
Commit-Queue: Ben Konyi <bkonyi@google.com>
Reviewed-by: Régis Crelier <regis@google.com>
2021-01-22 22:26:54 +00:00
Konstantin Shcheglov 95cc07e37d Fix ContextBuilderImplTest on Windows.
TBR

R=brianwilkerson@google.com

Change-Id: I88c042ff53fa5ee6fc520cea07eaaf5160eae886
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/180662
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2021-01-22 22:14:53 +00:00
Paul Berry 06682de751 Migration: Additional test cases for extension overrides.
These test cases were accidentally left out of
8ad4919482.

Change-Id: I2986e7d2763ff2ee0eea4800da185a5d45d69e1c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/180401
Reviewed-by: Samuel Rawlins <srawlins@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2021-01-22 22:04:54 +00:00
Ben Konyi 6349ce0436 [ DDS ] Update package:vm_service dep to 6.0.1-nullsafety.0
Change-Id: I34c9d9f542fd896af742fd246c7111029c44daec
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/180606
Reviewed-by: Dan Field <dnfield@google.com>
Commit-Queue: Ben Konyi <bkonyi@google.com>
2021-01-22 22:03:07 +00:00
Sam Rawlins d5ee021819 Analyzer: Report on return types of Future.catchError function
The type of the `onError` parameter of Future<T>.catchError is just Function,
but the function can either have signature `FutureOr<T> Function(dynamic)` or
`FutureOr<T> Function(dynamic, StackTrace)`. This change adds checks for return
statements in a function literal passed to `onError`, and the return type of a
function-typed expression passed to `onError`.

We still need to check parameter types.

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

Change-Id: I3a1d1c444e298c5816fcd1d4bc537f7b87fa3da1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/176221
Commit-Queue: Samuel Rawlins <srawlins@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2021-01-22 20:56:09 +00:00
Paul Berry d4fb6b320c Set BinaryExpression.staticInvokeType properly for extension overrides.
Fixes #43114.

Bug: https://github.com/dart-lang/sdk/issues/43114
Change-Id: Ib0adf67c5ac5189732960a5925d7cdbcff0c4102
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/180441
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2021-01-22 20:53:24 +00:00
Liam Appelbe d0e1be5c99 Setup script for package:wasm that builds the Wasmer runtime library.
This replaces third_party/wasmer and the related build rules, so I'll
delete that stuff once the package is published.

Bug: https://github.com/dart-lang/sdk/issues/37882
Change-Id: I33728e42c734bc8c25a2d32522112f2a3dbf4384
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/180446
Commit-Queue: Liam Appelbe <liama@google.com>
Reviewed-by: Siva Annamalai <asiva@google.com>
2021-01-22 20:48:04 +00:00
Konstantin Shcheglov aa03d4a8e0 Add AnalysisContext.sdkRoot
Change-Id: I5895b4bb9ba797c93b22f20ee1f2185066de9365
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/180622
Reviewed-by: Phil Quitslund <pquitslund@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2021-01-22 20:19:44 +00:00
Konstantin Shcheglov 0f0c2b5e66 Fold tests with experiments into AnalysisNotificationHighlightsTest.
R=brianwilkerson@google.com

Change-Id: Idfc8e2413eda6f2d755a24f6cad8800244bf3aa0
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/180621
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2021-01-22 19:32:54 +00:00
Johnni Winther 14032a6209 [cfe] Handle conditional await in CFE
This converts `return e` in async methods in opt-in libraries into

   return let v = e in v is Future<FTV> ? await v ; v

where FTV is the future value type of the enclosing function.

Closes #44395
Closes #44396
Closes #44397
Closes #44399

TEST=existing tests

Change-Id: I59687039bfe4a97ffdaa55ac0f193ca4fb208f44
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/175310
Commit-Queue: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Erik Ernst <eernst@google.com>
2021-01-22 19:12:24 +00:00
Johnni Winther 97a4280e52 [cfe,dartdev,dart2js] Add support for --verbosity option
In response to https://github.com/dart-lang/sdk/issues/44727

TEST=pkg/dartdev/test/commands/compile_test.dart

Change-Id: I56b67d9362a415acd721c1cce2f7e2232d2493df
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/180566
Commit-Queue: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Jens Johansen <jensj@google.com>
2021-01-22 18:33:44 +00:00
Alexander Aprelev ee37fff58c [io/http] Have http parser reply with error if Content-Length and Transfer-Encoding are both specified on http request.
Issue b/150476984

Change-Id: Iafc7154c84682678e4d7e3d614b74942b0d259b1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/180485
Commit-Queue: Alexander Aprelev <aam@google.com>
Reviewed-by: Lasse R.H. Nielsen <lrn@google.com>
2021-01-22 18:32:43 +00:00
Sam Rawlins f849384456 analyzer: Remove extra space in RETURN_WITHOUT_VALUE
Change-Id: Iba0d7f88b1640ab7c07c71ac529b18633834b0d8
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/180601
Commit-Queue: Samuel Rawlins <srawlins@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2021-01-22 18:15:23 +00:00
Sam Rawlins aeb040fe75 dart migrate: Fix dead code; add test
Change-Id: I1cc015d4bf66c4810a2cb9a161018b075f317176
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/180602
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Samuel Rawlins <srawlins@google.com>
2021-01-22 18:14:23 +00:00
Konstantin Shcheglov 84f871bc8e Remove several usages of FunctionTypeAliasElement in analyzer.
Change-Id: I93009b2347d6f30d3ad7df20a2fadb4b4c419cf8
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/180501
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2021-01-22 17:22:03 +00:00
Sam Rawlins 97df2e6031 dart migrate: Tidy up extra newlines in opt-out comment
Change-Id: If0c2a2c98d3284da847cae40d1ae8fad97abce6d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/180482
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Samuel Rawlins <srawlins@google.com>
2021-01-22 16:22:03 +00:00
Dmitry Stefantsov 2c2cff3a5a [cfe] Fix nullability miscalculations in UP in the CFE
Closes #43479.

Bug: https://github.com/dart-lang/sdk/issues/43479
Change-Id: I95782f4936e13ee2dab238dca158fd2f367aecaf
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/180564
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
2021-01-22 15:31:48 +00:00