This makes these checks useful in situations where you don't want to spend
an extra statement, like `=>` bodies or initializer lists (including
forwarding generative constructors).
Change-Id: Ia55b8741a7c75af631db48ac70e64597d8f96c73
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/135649
Commit-Queue: Lasse R.H. Nielsen <lrn@google.com>
Reviewed-by: Lasse R.H. Nielsen <lrn@google.com>
Reviewed-by: Bob Nystrom <rnystrom@google.com>
The new version 0.16.1 does not use `fromEnvironment` constructors,
whereas the old version 0.15.7 does use it, and 0.15.7 uses it in a way
which requires updates in order to keep working when the breaking
change #40678 is landed.
Change-Id: I10cabc2d7799c448f7b42d88e24bb8406fcf0672
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/140604
Reviewed-by: Alexander Thomas <athom@google.com>
Commit-Queue: Erik Ernst <eernst@google.com>
This re-attempts dacd22bdc2
which was reverted in 1e9b55888f
Change-Id: I6c0bb1b7163b89bf64f54838749cdacca2b501bb
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/140562
Auto-Submit: Kevin Moore <kevmoo@google.com>
Commit-Queue: Bob Nystrom <rnystrom@google.com>
Reviewed-by: Bob Nystrom <rnystrom@google.com>
This reverts commit a0e4f0575a.
Reason for revert: Issues with hot restart in google3, see b/152181536.
Original change's description:
> Revert "Revert "[dartdevc] record metrics""
>
> Reland with fixes for internal build (patch set 2+)
>
> Change-Id: I5b130d020c9437a2c52dd074ad007e1fef7a8fa5
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/139241
> Commit-Queue: Vijay Menon <vsm@google.com>
> Reviewed-by: Sigmund Cherem <sigmund@google.com>
> Reviewed-by: Gary Roumanis <grouma@google.com>
TBR=vsm@google.com,sigmund@google.com,grouma@google.com
# Not skipping CQ checks because original CL landed > 1 day ago.
Change-Id: I012e1adaa405e85fd1a3d7d280b889b7df44e5b3
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/140580
Reviewed-by: David Morgan <davidmorgan@google.com>
Commit-Queue: David Morgan <davidmorgan@google.com>
This is a bare-bones implementation (and test) for having an explicit
toString on all `Node`s.
This can then be extended as-needed to better suit our debugging
purposes. It's not allowed to leak, though.
Change-Id: I8d3f5a9cd13b292ed7a6bf33762e507286f3fa7d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/139805
Commit-Queue: Jens Johansen <jensj@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
If lookup succeeds, then the DWARF stack frame uses the symbol
name and offset instead of the dynamic library name. The
native_stack_traces package (once updated) can translate these
stack frames into symbolic stack frames even if given a partial
stack trace without the header.
Also, consistently use uword instead of a mix of uintptr_t and uword.
Change-Id: Ida9ba4726a306fb77b141cb9c6ad635a12a320ec
Cq-Include-Trybots: luci.dart.try:vm-kernel-precomp-linux-release-x64-try,vm-kernel-precomp-linux-release-simarm_x64-try,vm-kernel-precomp-mac-release-simarm64-try,vm-kernel-precomp-win-release-x64-try
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/140282
Commit-Queue: Teagan Strickland <sstrickl@google.com>
Reviewed-by: Ryan Macnak <rmacnak@google.com>
Reviewed-by: Martin Kustermann <kustermann@google.com>
Dev and beta version strings will look very look very similar, so adding
the channel name will make it easy for users to see if they are on be,
dev, beta, or stable. This will change both the output of
`dart --version` as well as the value of `Platform.version`.
This also removes the Flutter stable release version hack.
Fixes https://github.com/dart-lang/sdk/issues/40993
Change-Id: Iceb8e84a9cf4d0bfb7659669878e42d0a59febc4
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/140287
Reviewed-by: Siva Annamalai <asiva@google.com>
Commit-Queue: Alexander Thomas <athom@google.com>
Support Unix domain sockets communication on Linux, MacOS and Android.
Changes:
1. Add a field for InternetAddressType named unix.
2. Constructor of InternetAddress gains one more optional field: type. InternetAddress(String address, {InternetAddressType type});
3. Add another constructor to InternetAddress which taks raw address/path for ip/unix addresses as an argument. InternetAddress.fromRawAddress(Uint8List rawAddress, {InternetAddressType type});
The operation for unix domain sockets communication is basically the same as normal sockets except an InternetAddress with type unix should be passed.
Change-Id: I6a1135bbdd7f4e4fc745ccf8f95dec5272b6839b
Bug: https://github.com/dart-lang/sdk/issues/21403
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/125932
Commit-Queue: Zichang Guo <zichangguo@google.com>
Reviewed-by: Siva Annamalai <asiva@google.com>
I saw crashes because of this internally, mostly around ListLiteral
resolution (which were arguments of method invocations), and left
unresolved.
Change-Id: I814a7ac6cb4bfdffff701a8ed51b80849cedb82c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/140483
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Change-Id: I93d217009ea72c43c1db0ee45b8c2d5fbd9141fe
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/140377
Commit-Queue: Kevin Moore <kevmoo@google.com>
Auto-Submit: Kevin Moore <kevmoo@google.com>
Reviewed-by: Nate Bosch <nbosch@google.com>
This would have been an over-optimization originally, but at this point, we have 10 of these computer objects in completion_metrics.dart, and we are running this algorithm with up to 1.2 million ranks.
(Assuming that an int takes 4 bytes which I believe is true...) On a recent run of Brians, 29.4 MB of data was the running total of all the ranks. With this change, the same data will be stored with 10 doubles and 10 ints.
Change-Id: If97ca18e78782c02a3ca0a3ed9d6a9725f5a05ea
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/140321
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Jaime Wren <jwren@google.com>
This removes the need for member type inference during override
checking.
Change-Id: I67e2da91cda362b0dda1f5ab6791db458fae6c92
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/139815
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
Commit-Queue: Johnni Winther <johnniwinther@google.com>
This reverts commit dacd22bdc2.
For some reason we're still trying to create
Error: Input file not found: out/ReleaseX64/gen/utils/dartdevc/pkg_kernel/unittest.dill.
Which is crashing the dartdevk builders
Change-Id: I364fac28e58c63ce619c9391b5e410096f3d799c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/140376
Reviewed-by: Kevin Moore <kevmoo@google.com>
Reviewed-by: Nate Bosch <nbosch@google.com>
Commit-Queue: Nate Bosch <nbosch@google.com>
Commit-Queue: Kevin Moore <kevmoo@google.com>
A NullableType can be a precise AbstactValue if the base type can be
precise.
The main effect is more lowering of field setters to HFieldSet,
(i.e. for fields with nullable types.
Change-Id: If1f92e1a79da87a73df02da3b9fc8fc3542f7b40
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/139326
Reviewed-by: Stephen Adams <sra@google.com>
Commit-Queue: Stephen Adams <sra@google.com>
The isolate implementation will not be included in analysis_server_client
(as that is a public package), but to allow sharing of code this
refactors Server with a base class for common code between the
implementations. This is intended to be a non-breaking change for
the interface of analysis_server_client.
Bug: https://github.com/dart-lang/sdk/issues/41056
Change-Id: I60fc5233193527f19cbc4b937a784150a53e86b3
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/140140
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Janice Collins <jcollins@google.com>