Commit graph

65423 commits

Author SHA1 Message Date
Nate Bosch 55f81f2210 Mass format python with yapf
- Add `.style.yapf` with configuration to use Google style.
- Run `yapf` on all `.py` files in this repo.
- Manually fix one trailing space in a doc string.
- Run `git cl format runtime` to satisfy presubmit.

Change-Id: I7e6bd11e91f07926b9188362599af398551eed79
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111600
Commit-Queue: Nate Bosch <nbosch@google.com>
Reviewed-by: Alexander Thomas <athom@google.com>
2019-08-05 20:34:31 +00:00
danrubel 8b2993568e implement dartfix --pedantic
This CL adds a new --pedantic option to dartfix for applying all fixes
marked as pedantic. In addition, this addresses comments in
https://dart-review.googlesource.com/c/sdk/+/111840

Change-Id: Ia2e7a792911f19edb698c126c8fd77cd8f8f77cc
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111981
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2019-08-05 20:18:05 +00:00
danrubel 1c5911982e add includePedanticFixes flag to dartfix protocol
Change-Id: I43c40eacf038beed6245ec873e746dcbb1ed80df
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111980
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-08-05 20:18:05 +00:00
Stephen Adams a188b534dc [dart2js] new-rti: as/check used 'is' method
If 'is' is specialized, 'as' will benefit.

Change-Id: Ie95982322bbdd48ac05f0073699547e0b8e7f77c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111986
Reviewed-by: Mayank Patke <fishythefish@google.com>
Commit-Queue: Stephen Adams <sra@google.com>
2019-08-05 19:59:45 +00:00
Mayank Patke 8d1f5a5b51 [dart2js] Omit empty objects from new RTI type rules.
Change-Id: I3efbb9d1283606023babbe4940e040b5c5e24d60
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111265
Commit-Queue: Mayank Patke <fishythefish@google.com>
Reviewed-by: Stephen Adams <sra@google.com>
2019-08-05 19:48:08 +00:00
Johnni Winther 5c7fe46e3e [cfe] Merge more Kernel*Builders into *Builders
Change-Id: I335216e2702fe881287e296e0dd1d457e6c7cea7
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111541
Commit-Queue: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2019-08-05 19:31:28 +00:00
Johnni Winther 262aaf13a0 [cfe] Merge KernelLibraryBuilder into SourceLibraryBuilder
Change-Id: I8c654aa8065b5e2b43c864a43924925cbfd972b7
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111540
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2019-08-05 19:31:28 +00:00
Konstantin Shcheglov cdf6103b38 Support for free-form 'expression' in FlutterWidgetPropertyValue.
Also add ENUM_LIKE property editor, that is like ENUM, but allows
such free-form expressions.

R=brianwilkerson@google.com

Change-Id: I3910b6bea98110c192b6cc9fb716b73270e1d97c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111985
Reviewed-by: Jacob Richman <jacobr@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-08-05 18:43:29 +00:00
Konstantin Shcheglov 034131f10a Add MapSubstitution interface, and use it in Member hierarchy.
R=brianwilkerson@google.com

Change-Id: If5a9c07c2fb1582fb31ba414f0f329c59eb1af16
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111924
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-08-05 18:30:50 +00:00
Ari Aye 98ffe8a7c6 Update dart/language_model rev to EFtZ0Z5T822s4EUOOaWeiXUppRGKp5d9Z6jomJIeQYcC
This version of the dart/language_model CIPD package sets the package attribute
preserve_writable: true and removes the read-only CIPD version file.

Bug: https://github.com/dart-lang/sdk/issues/37698
Change-Id: I3823decf92518dd4e4eb39e8862eb98550fcf2af
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111983
Commit-Queue: Ari Aye <ariaye@google.com>
Reviewed-by: Alexander Thomas <athom@google.com>
2019-08-05 18:28:49 +00:00
Brian Wilkerson 77a957da1d Report the use of an extension override without an instance member access
Change-Id: Ibd960aedd1739e4b446371349f0f4d4d6d5f6c61
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/112000
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2019-08-05 18:11:28 +00:00
Konstantin Shcheglov 28a4717476 Don't overwrite synthetic field setter with duplicate setter.
R=brianwilkerson@google.com

Change-Id: I006b6e845b5359d02f0f60b48bf89544b2ed80c5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111966
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-08-05 18:02:41 +00:00
Régis Crelier c923007f37 [vm/bytecode] Fixes and improvements in bytecode debugger.
Remove DebugCheck on Jump opcode.
Emit explicit DebugCheck bytecode instructions for VariableSet (see CL 111221).
Emit explicit DebugCheck bytecode instructions for VariableDeclaration.
Emit explicit DebugCheck bytecode instructions in _generateNonLocalControlTransfer before context is unwound.
Refactor prologue of async op functions, so that the same DebugCheck opcode is
encountered on every reentry.
Allow extra single steps when debugging bytecode in service tests.
Support context level calculation of compiled frames.
Adjust filter of synthetic variables in debugger.
Fix logic to skip single steps in bytecode prologue.

Change-Id: I1d6236c37af1aded0eebca1c3e3bb1978f7369dc
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111867
Commit-Queue: Régis Crelier <regis@google.com>
Reviewed-by: Alexander Markov <alexmarkov@google.com>
2019-08-05 17:54:17 +00:00
Konstantin Shcheglov ba28529184 Use findNode and assertType().
R=brianwilkerson@google.com

Change-Id: I8229d83c402ddf0283fdbfc9fb9ebfd232dad9ce
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/112001
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-08-05 17:50:27 +00:00
Sam Rawlins 2bf13fd058 Add a language test for Object().runtimeType.
Fixes #15917

Change-Id: I4dd00385ba84f4c65ec0c0e2a9b0a4f6748d1396
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111963
Reviewed-by: Stephen Adams <sra@google.com>
Commit-Queue: Samuel Rawlins <srawlins@google.com>
2019-08-05 17:27:57 +00:00
Johnni Winther 067c6ea5b6 [cfe] Add extension type variables to procedures
Adds synthesized type variable builders and formal parameter builders to
the procedure builder. This ensure that both the outline and body
building correctly resolve extension type variables and extension this types.

Change-Id: I55d5665286dafedb4e47316faafb32ddb6cc33d3
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111730
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
Commit-Queue: Johnni Winther <johnniwinther@google.com>
2019-08-05 17:15:37 +00:00
Johnni Winther 6eb9f54683 [cfe] Add ClassKind to Listener.begin/endClassOrMixinBody
This allows for special-casing extension declarations bodies. This
is needed because the on-clause hold the type of the parameter holding
the `this` value inside an instance method in an extension declaration.

Change-Id: I7af9bf0a9842f7e6f42dddb54fb487c69a8fa519
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111729
Reviewed-by: Dan Rubel <danrubel@google.com>
2019-08-05 17:15:37 +00:00
Johnni Winther bd8f7aeebb [cfe] Add DeclarationKind to DeclarationBuilder
The prepares for special-casing methods in extension declarations
during building of the outline. This is needed to add synthesized
type parameters and parameters to the method signature.

Change-Id: Id41d85d86a9ad4eedc4a4ce346ad14e18277dda9
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111728
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2019-08-05 17:15:37 +00:00
Konstantin Shcheglov ae2a06171c Fix for enclosingElement for default parameter element initializer function.
This fixes another error found by Mike's fuzzer.

R=brianwilkerson@google.com

Change-Id: Id16a280949d14ce7589d47a88faf9a038c588e04
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111961
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Mike Fairhurst <mfairhurst@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-08-05 16:45:17 +00:00
Alexander Markov 8cd01287b4 [vm/aot/tfa] Infer types from generic return types of native methods
Issue: https://github.com/dart-lang/sdk/issues/37719
Change-Id: I35a8cd7a5e20e13d705f005e17ebc80fb8e8f80e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111900
Reviewed-by: Martin Kustermann <kustermann@google.com>
Commit-Queue: Alexander Markov <alexmarkov@google.com>
2019-08-05 16:43:47 +00:00
Danny Tuppeny 3011ca2da7 Include "import function" fixes for UNDEFINED_IDENTIFIER
Change-Id: I66ad76e82f419ed19ca8e47574d1ec8335571bd5
Bug: https://github.com/Dart-Code/Dart-Code/issues/1898
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111738
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Danny Tuppeny <dantup@google.com>
2019-08-05 16:27:07 +00:00
Brian Wilkerson ee6fa7c10d Move more diagnostic tests
Change-Id: I0b5ec1af7dd21298136788e3a7c1898f626acc22
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111982
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2019-08-05 16:17:37 +00:00
Martin Kustermann 271445d207 [vm] Prevent service-isolate from starting in run_vm_tests, except if test needs it
After landing d3f3b46, which adds support for vm-service to the run_vm_tests binary,
random vm/cc tests started to time out. The VM shutdown procedure waits
for the service isolate to shut down, which it doesn't do.

Since we haven't been running the vm-service isolate before, this
might've been an existing issue which is just surfaced now. This CL
disabled starting vm-service (like it was before) except for the
particular test which needs it.

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

Change-Id: I914cccf0cf640602a6a7e31b1aa456301837be79
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111737
Reviewed-by: Martin Kustermann <kustermann@google.com>
Commit-Queue: Martin Kustermann <kustermann@google.com>
Auto-Submit: Martin Kustermann <kustermann@google.com>
2019-08-05 15:26:42 +00:00
Konstantin Shcheglov 919b5cd2d5 Fix for duplicate top-level declarations.
This fixes one of the errors which Mike found with fuzz tester.

R=brianwilkerson@google.com

Change-Id: I987f47746c8721d9a39de0c186cf4c3776f66611
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111960
Reviewed-by: Mike Fairhurst <mfairhurst@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-08-05 14:29:55 +00:00
Konstantin Shcheglov 91f879b0a1 Remove unused import.
R=brianwilkerson@google.com, paulberry@google.com

Change-Id: I4896f11da73cc84d569bd28d32c5b4b23d5c4530
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111964
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-08-05 14:28:01 +00:00
Paul Berry db1988acd0 Add voidType to TypeProvider
Change-Id: Ibacf7e741c959584159798061ffd04ebefd9ebab
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111881
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2019-08-05 14:21:50 +00:00
Teagan Strickland 5574669966 [vm] Add TODO about recognized kinds on DIFs.
Bug: https://github.com/dart-lang/sdk/issues/37737
Change-Id: Ibe760ee0783c2853a52a19fa187fd152ade21661
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111733
Reviewed-by: Martin Kustermann <kustermann@google.com>
Commit-Queue: Teagan Strickland <sstrickl@google.com>
2019-08-05 13:59:29 +00:00
Teagan Strickland c271c599af [vm/compiler] Move S-exp deserialization into sexpression.{cc,h}.
This way, users of S-expression deserialization will not also pull in
the rest of the upcoming IL deserialization functionality (and
anything extra needed by that).

Also changes SExpParser::ReportError to just print the error
information to stderr and abort, instead of using the Dart VM
exception machinery.

Change-Id: Id01b2a6fdca1a6204d502f398df139c2faa12d07
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111644
Reviewed-by: Martin Kustermann <kustermann@google.com>
Commit-Queue: Teagan Strickland <sstrickl@google.com>
2019-08-05 13:59:22 +00:00
Clement Skau 844626c4e6 [VM] Copies Dart_CodeObserver in Init to prevent use-after-free.
Dart_CodeObserver is a struct (in dart_api.h) with two pointers:
  void* data;
  void (*Dart_OnNewCodeCallback)(...) on_new_code;

Change-Id: I556b73e0e3488a10f9fd162af24e36ad4f240fa1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111723
Reviewed-by: Martin Kustermann <kustermann@google.com>
Commit-Queue: Clement Skau <cskau@google.com>
2019-08-05 10:46:29 +00:00
Martin Kustermann d3f3b46b87 [VM] Add test for Dart_InvokeVMServiceMethod
This CL adds CC a test for Dart_InvokeVMServiceMethod. This requires also
adding support for starting the service-isolate in run_vm_tests, which in
return requires adding the vm_platform.dill (as well as a few other things).

Furthermore this CL also adds a Service::WaitForLoadPortInternal, which does
not require a current thread and makes Dart_InvokeVMServiceMethod use it.

Original CL (not landed): https://dart-review.googlesource.com/c/sdk/+/67761


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

Change-Id: Ife98b56043c26eb477825b05f8aaedaec508eeb8
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111726
Commit-Queue: Martin Kustermann <kustermann@google.com>
Reviewed-by: Clement Skau <cskau@google.com>
2019-08-05 10:07:39 +00:00
Jens Johansen fd7baa4fd9 [CFE] Serialize language version
Change-Id: I6ea448df722a7e1e51c31f06d42bfbe743855a45
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111725
Reviewed-by: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Vyacheslav Egorov <vegorov@google.com>
Commit-Queue: Jens Johansen <jensj@google.com>
2019-08-05 09:14:09 +00:00
Teagan Strickland 4969bc6d23 Revert "[vm] Clear recognized method info on dynamic invocation forwarders."
This reverts commit d6e9e15cf1.

Reason for revert: The recognized kind was likely intentionally
carried over to the DIF, since the inliner doesn't distinguish
between dynamic and non-dynamic call sites for these recognized
method replacements. In addition, the replacements are speculative
and can't handle arbitrary inputs, so deoptimization should end up
re-executing the original DIF call and thus cause an appropriate
type error to be emitted via the DIF.

Original change's description:
> [vm] Clear recognized method info on dynamic invocation forwarders.
> 
> Similar change to b68e5c4338, where this information gets copied
> over into the new dynamic invocation forwarder from the original
> function.
> 
> Change-Id: I728fa459837a8bb2e831c5314d12f6a00f7f32b6
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/110722
> Reviewed-by: Martin Kustermann <kustermann@google.com>
> Commit-Queue: Teagan Strickland <sstrickl@google.com>

TBR=kustermann@google.com,sstrickl@google.com

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

Change-Id: Iffd34142647440f0bdb0ab60d1ec41ca638d4c04
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111732
Reviewed-by: Teagan Strickland <sstrickl@google.com>
Reviewed-by: Martin Kustermann <kustermann@google.com>
Commit-Queue: Teagan Strickland <sstrickl@google.com>
2019-08-05 08:55:44 +00:00
Jens Johansen 6d1c9975d7 [CFE] Initial language versioning "support"
This CL sets up the bare minimum support for saving the language version
specified in a file on the kernel library, and adds simple support for
testing it.

The data is not serialized out, error checked or similar in this change.

Change-Id: I4b061ce617acae7964b85be105e0ad0e3e031aa4
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111640
Commit-Queue: Jens Johansen <jensj@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
2019-08-05 07:03:04 +00:00
Jens Johansen 39a007678e [VM] Save kernel binary version in KernelProgramInfo
This is the beginning of allowing us to - wherever we process kernel
data - make decisions based on the kernel version. Said another way,
we can actually start to change the kernel format without breaking
backwards compatibility in the VM.

Change-Id: Ied7b3d9fe72976c4f3c0895d02b6ab70e0f5dba9
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111642
Commit-Queue: Jens Johansen <jensj@google.com>
Reviewed-by: Vyacheslav Egorov <vegorov@google.com>
2019-08-05 06:51:24 +00:00
Sam Rawlins 73a2cc06d4 Fix 'reasponse' typo. Fixes #37732
Bug: https://github.com/dart-lang/sdk/issues/37732
Change-Id: I553bd8df6c8ea8204d3560eea6fa13945b1f89ae
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111962
Reviewed-by: Kevin Moore <kevmoo@google.com>
Commit-Queue: Samuel Rawlins <srawlins@google.com>
2019-08-05 04:37:22 +00:00
Devon Carew 44b81dff73 [vm service] generate the Java version of the library with the Dart version
Change-Id: Ie5caaee6343d616e93edcedcb2b7b9b6a4198e74
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111319
Reviewed-by: Ben Konyi <bkonyi@google.com>
Commit-Queue: Devon Carew <devoncarew@google.com>
2019-08-04 23:42:22 +00:00
Alexander Markov ac45ee7e63 [vm/bytecode] Support exactness tracking in bytecode
MicroClosureCreateTearoffClassSecondTime(RunTime) 3922 us -> 2030 us.

Issue: https://github.com/dart-lang/sdk/issues/36429
Change-Id: I3a6f93950a469969d82243fd1744d5a4f7fb1e78
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111868
Reviewed-by: Ryan Macnak <rmacnak@google.com>
Commit-Queue: Alexander Markov <alexmarkov@google.com>
2019-08-03 17:36:31 +00:00
Konstantin Shcheglov df606cc566 Infer types of static fields in extensions, summary2.
This fixes:
co19_2/LanguageFeatures/Extension-methods/syntax_member_declarations_t01

R=brianwilkerson@google.com

Change-Id: Ic1fba8721414028d04a18c28eeff5c09db6c07c4
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111921
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-08-03 15:18:11 +00:00
Konstantin Shcheglov bf020a99d4 Sanitize recursive GenericTypeAlias in summary2.
This fixes:
co19_2/LanguageFeatures/regression/33599_34700_t02
co19_2/LanguageFeatures/regression/33599_34700_t04

R=brianwilkerson@google.com

Change-Id: Ia01274fbce6a8a3e23a538bb81fd69cd1f6c1947
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111922
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-08-03 15:10:16 +00:00
Konstantin Shcheglov be581f69db Move search.getDeclarations to available declarations.
So, we keep this feature working when switch to summary2.
IntelliJ does not use it though.

Change-Id: I11f71443dc7354de8a593442de470fa91aa228e7
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111870
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-08-03 15:10:06 +00:00
Konstantin Shcheglov cf0af59b33 Fix summary2 for TypeAnnotation as extended type.
This fixes crash in:
language_2/extension_methods/static_extension_silly_types_test/01
language_2/extension_methods/static_extension_silly_types_test/none

R=brianwilkerson@google.com

Change-Id: I349e0cb7b2d071b879b61d992de681e39bdc4aa5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111923
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-08-03 15:02:14 +00:00
Konstantin Shcheglov e72b70fbc6 Extract RequiredParametersVerifier, but use directly in ErrorVerifier.
With AnalysisDriver, and computing constant values on demand, we
can check for required parameters directly, without pending constants
and errors.

We also don't have to do additional recursive pass over AST, so will
probably run a little faster.

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

Change-Id: I623f47851bf0094ac59d60a24f3015a3154432c7
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111925
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-08-03 15:02:03 +00:00
Brian Wilkerson 8ff3d98232 Split diagnostic tests into the standard locations
Change-Id: I48ddf036832ba6c7b2d8d0548d9697d85fc12581
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111872
Reviewed-by: Phil Quitslund <pquitslund@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2019-08-03 14:17:31 +00:00
Brian Wilkerson 19ab86cbf6 Report the use of covariant in optional parameters
Change-Id: I66cbe9b7b1c95e02ade4038786d6494af2f34a44
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111869
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2019-08-03 14:17:11 +00:00
Stephen Adams 6ff32127f4 Redo "[dart2js] new-rti: Add 'minified:' tag to minified names"
This reverts commit ac6a3d9369.

Change-Id: Ia8c9bde36e21ad12e9cd08c688043d4b08ae35e5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111873
Commit-Queue: Stephen Adams <sra@google.com>
Reviewed-by: Mayank Patke <fishythefish@google.com>
2019-08-03 01:42:50 +00:00
danrubel 3c1f679684 refactor driver test and remove required option shortcut
Change-Id: I5b5caa5aa4621f9f463a816391911bb6364b9e38
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111840
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2019-08-03 01:41:09 +00:00
Alexander Markov aa650e53f5 [vm/bytecode] Emit explicit DebugCheck bytecode instructions for VariableSet
AST-based flow graph builder has a heuristic logic on when to generate
DebugStepCheck when assigning value to a variable. This logic depends on
right-hand side expression. In order to replicate the same behavior
with bytecode, bytecode generator would also implement this logic and
generate explicit DebugCheck instructions instead of stopping on every
StoreLocal/PopLocal/StoreContextVar.

Change-Id: Ic10180673a324db9216e34459d9c0afaca6a11e6
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111221
Reviewed-by: Régis Crelier <regis@google.com>
Commit-Queue: Alexander Markov <alexmarkov@google.com>
2019-08-03 01:34:45 +00:00
pq cd30fa693d bump to linter 0.1.96
Change-Id: Ifd20c2551ef302a7e9e08f823cd1a68ddff75a5e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111860
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Phil Quitslund <pquitslund@google.com>
2019-08-03 00:35:21 +00:00
Stephen Adams a3d6b4802f [dart2js] new-rti: Use findType in parameter stubs
This fixes the stubs that default type parameters.
Some benchmarks test this behaviour.

Change-Id: If47d99e5fbf1a2bceeb0e6e930e27cfea6f3eedc
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111871
Reviewed-by: Mayank Patke <fishythefish@google.com>
Commit-Queue: Stephen Adams <sra@google.com>
2019-08-02 23:59:01 +00:00
Konstantin Shcheglov 4bebfebdbc Initial support for extension methods inference.
Only the case with ExtensionOverride is supported for now.
Still fixes some co19 tests.

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

Change-Id: I6c7c98f4839a1fc40504d93107648d952a4176d2
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/111866
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2019-08-02 23:24:41 +00:00