On a switch fall through error, Fasta currently generates
```
throw new core::FallThroughError::•();
```
which generates the error-message via the VM:
```
'null': Switch case fall-through at line null.
```
This introduces a new constructor taking a url and a linenumber,
which then can give a better error message.
BUG=
R=ahe@google.com
Review-Url: https://codereview.chromium.org/2951453002 .
The code in the patch is now inlined into the vmservice library.
This is being done because, the vmservice related libraries are
now compiled directly from source instead of from the "patched_sdk".
So, what is being compiled now does not have the vmservice_patch
applied. By removing the patch, we are removing the need to
artificially patch the vmservice library and making the
vmservice_io.dill complete.
R=rmacnak@google.com
Review-Url: https://codereview.chromium.org/2946773002 .
directly inside dart2js.
A few notes:
* I ended up adding support for this feature also in dart2js with --use-kernel, it was not implemented correctly before. This is why more tests are passing.
* I played with two other ideas:
(a) making this a compile-time error instead
(b) making it a warning if the arguments were constant and implement it as a constant, treat it as an error if they were not.
Unfortunately both are a breaking changes, so I backed out from them. IMO (a) is the cleanest thing to do long term, and we should raise this with the language team.
R=efortuna@google.com
Review-Url: https://codereview.chromium.org/2896393003 .
This has a few advantages:
- We can track dependencies more precisely
- ninja can assemble things in parallel as they're ready rather than
sequentially all at once.
- It is easier to customize SDKs depending on target platform, e.g.
Fuchsia.
This CL also has a number of cleanups:
- Defining is_fuchsia and is_fuchsia host so we don't always have to check
- Piping through toolchain overrides in more places
- Fixing bugs in copy_tree.py, not using list_files.py, which is broken on Windows
related #29558R=whesse@google.com
Review-Url: https://codereview.chromium.org/2848943003 .
These tools are used to support applying source maps to stack traces
and running the Dart dev compiler in the browser as part of an extension.
This CL adds the following files
dart-sdk/lib/dev_compiler/web/ddc_web_compiler.js
dart-sdk/lib/dev_compiler/web/dart_stack_trace_mapper
BUG=
R=rmacnak@google.com, vsm@google.com
Review-Url: https://codereview.chromium.org/2889253002 .
Pre-filtering hunks to initialized ended up calling some initializations multiple times. This happened for empty parts, so was harmless after 4af03b1a65
Simplify logic to reduce use of corelib functions. There is no real need to be creating closures and calling all of List.generate, where, and map.
BUG=
R=sigmund@google.com
Review-Url: https://codereview.chromium.org/2893653005 .
- uniform quotes
- uniform naming of methods in _checkGrowable
- use .slice(0), it is slightly faster than .slice()
- avoid bounds and type checks in removeWhere/retainWhere
BUG=
R=sigmund@google.com
Review-Url: https://codereview.chromium.org/2880643005 .
We can't have the [data] and [source] getters typed as Object.
This causes it to appear that all DOM types are instantiated.
I have modelled the annotations after the same getters from
MessageEvent.
TBR=jacobr@google.com
BUG=
Review-Url: https://codereview.chromium.org/2879763002 .
Avoid relying on fuzzy arrow semantics by using Null for the callback type
parameter to be checked against. Any function of the right arity will pass the "is"
check.
BUG=
R=lrn@google.com
Review-Url: https://codereview.chromium.org/2878553003 .
This fixes two warnings in analyze_api_test:
R=jacobr@google.com
sdk/lib/html/dart2js/html_dart2js.dart:41478:31:
Warning: The getter '_namespaceUri' is not defined for the class 'Node'.
bool _matches(Node node) => node._namespaceUri == null;
^^^^^^^^^^^^^^^^^^
sdk/lib/html/dart2js/html_dart2js.dart:41514:31:
Warning: The getter '_namespaceUri' is not defined for the class 'Node'.
bool _matches(Node node) => node._namespaceUri == _namespace;
^^^^^^^^^^^^^^^^^^
Review-Url: https://codereview.chromium.org/2875183002 .
This CL computes the correct input and output in the copy_tree GN template by
modifying tools/copy_tree.py to perform a dry-run that lists the files to be copied.
Also, shutil.copytree uses shutil.copy2 to copy files and their metadata, but copying
the metadata appears to confuse ninja dependency tracking.
To do the dry run and to use shutil.copy instead of shutil.copy2, copy_tree.py now
uses its own CopyTree function instead of shutil.copytree.
R=whesse@google.com
Review-Url: https://codereview.chromium.org/2875893002 .