Vijay Menon
089d9c4afa
Fix custom formatter setup
...
R=jacobr@google.com
Review-Url: https://codereview.chromium.org/2742653002 .
2017-03-08 18:58:07 -08:00
Vijay Menon
402e025c63
Add option to suppress type-check whitelisting
...
Run most tests without the whitelisting.
See #27223
R=leafp@google.com
Review-Url: https://codereview.chromium.org/2739863003 .
2017-03-08 17:51:32 -08:00
Vijay Menon
01508dd2e2
Fix mocking on native classes
...
Fixes #28658
R=jacobr@google.com
Review-Url: https://codereview.chromium.org/2732413002 .
2017-03-07 15:32:54 -08:00
Vijay Menon
f6e964fca9
Fix dangling ddc references in libraries.dart
...
Our internal tooling is complaining about this when building / checking the ddc sdk. It appears to use the analyzer's summary builder tool which seems less forgiving about dangling references / missing files.
R=srawlins@google.com
Review-Url: https://codereview.chromium.org/2740573003 .
2017-03-07 15:27:46 -08:00
Vijay Menon
2acb2eb669
Update for latest tests and sdk
...
TBR=leafp@google.com
Review-Url: https://codereview.chromium.org/2731333002 .
2017-03-06 09:36:14 -08:00
Jacob Richman
a6a206062d
Custom formatter cleanup Fix case where displaying a class constructor generated unreadable huge output. Fix case where exceptions were throw. Correct display of statics, fix indentation bugs. Add improved custom formatter test to main repro. As a drive by fix, switch hashCode to use a symbol instead of the name $identityHash as $identityHash was making custom formatter test output unstable.
...
BUG=
R=vsm@google.com
Review-Url: https://codereview.chromium.org/2703263002 .
2017-02-28 17:47:53 -08:00
Jennifer Messerly
fe294f3753
unfork DDC's copy of most SDK libraries
...
There's some changes in strong mode errors we may want to follow up on.
Unforks the following: async, collection, convert, core, developer, internal, io, isolate, math, mirrors.
Does not unfork: html, indexed_db, js, js_util, svg, typed_data, web_audio, web_gl, web_sql.
R=vsm@google.com
Review-Url: https://codereview.chromium.org/2698353003 .
2017-02-28 17:10:52 -08:00
Vijay Menon
53971cb67e
Fix Function.apply
...
Fixes #27257 .
R=alanknight@google.com , jmesserly@google.com
Review-Url: https://codereview.chromium.org/2716583006 .
2017-02-24 19:24:48 -08:00
Leaf Petersen
ef120f105f
When metadata is not requested, elide signature information that is
...
not needed for dynamic checks (static fields/getters/setters and constructors).
BUG=
R=jmesserly@google.com
Review-Url: https://codereview.chromium.org/2711253004 .
2017-02-24 12:59:09 -08:00
Vijay Menon
4021fecb1a
Streamline field symbol names
...
Original CL from Kasper. :-)
R=jmesserly@google.com
Review-Url: https://codereview.chromium.org/2703373003 .
2017-02-23 14:11:21 -08:00
Vijay Menon
1ec614fd7b
Enable DDC output to run on v8/d8 using ES6 modules
...
Fixes #27309
V8 / D8 tip supports ES6 modules natively. It's a little cumbersome
to set up, but hello world runs. :-)
> ln -s $DDC_PATH/lib/js/es6/ddc_sdk.js ddc_sdk
> dart $DDC_PATH/bin/dartdevc.dart --dart-sdk-summary $DDC_PATH/lib/sdk/ddc_sdk.sum --modules es6 -o hello hello.dart
> cat > run.js
import { hello } from 'hello';
hello.main();
> d8 --module run.js
R=jmesserly@google.com
Review-Url: https://codereview.chromium.org/2701963002 .
2017-02-17 16:54:21 -08:00
Vijay Menon
5601a604f0
Cleanup proxy/defer code
...
This cleans up some issues I found when merging this internally.
R=jacobr@google.com
Review-Url: https://codereview.chromium.org/2699943003 .
2017-02-17 08:12:03 -08:00
Vijay Menon
e011ac789e
Deferred parsing for legacy modules
...
This is a nice win for large, internal apps. Module code is not parsed until accesses via proxy.
R=jmesserly@google.com
Review-Url: https://codereview.chromium.org/2697093002 .
2017-02-15 16:30:20 -08:00
Leaf Petersen
fd6f2cc4cc
Add generic types to Future.forEach in DDC sdk
...
BUG=
R=vsm@google.com
Review-Url: https://codereview.chromium.org/2696133005 .
2017-02-15 11:17:25 -08:00
Vijay Menon
b27e65d5d1
Unwrap type if needed on dcall
...
R=leafp@google.com
Review-Url: https://codereview.chromium.org/2672273004 .
2017-02-06 20:51:53 -08:00
Jennifer Messerly
5817ba47e2
fix #28642 , handling of top and bottom types in DDC
...
in particular: void, Null, and combinations with FutureOr<T>
R=leafp@google.com
Review-Url: https://codereview.chromium.org/2671113002 .
2017-02-06 14:56:10 -08:00
Leaf Petersen
a3b4366f11
Infer Null for return type of functions with empty returns.
...
This allows inference to infer Null as the return type of functions
which have no return statements, or which return with no value.
Also allows inference to propagate Null.
Fixes https://github.com/dart-lang/sdk/issues/28602
Fixes https://github.com/dart-lang/sdk/issues/28630
BUG=
R=brianwilkerson@google.com , jmesserly@google.com
Review-Url: https://codereview.chromium.org/2667343005 .
2017-02-06 12:24:39 -08:00
Jacob Richman
a8c7e74424
Remove dynamic call from _LinkedHashSet. Remove some dcalls from the dart:html util library.
...
BUG=
R=alanknight@google.com , vsm@google.com
Review-Url: https://codereview.chromium.org/2666053004 .
2017-02-01 13:26:41 -08:00
Jacob Richman
f6151f902e
Fix dynamic calls on JS interop classes.
...
BUG=
Review-Url: https://codereview.chromium.org/2668543002 .
2017-01-30 14:19:07 -08:00
Jacob Richman
f3c33b047d
Remove spurious call to captureStackTrace.
...
Just creating an Error object is sufficient on FF,
Chrome, Safari, and Edge. Note that captureStackTrace
was not supported by other browsers so those browsers
were going down the even slower path of throwing an
exception.
BUG=
R=vsm@google.com
Review-Url: https://codereview.chromium.org/2668503002 .
2017-01-30 13:30:31 -08:00
Jacob Richman
959a375541
Fix getFieldType to handle metadata and workaround bad types for setters called via mirrors.
...
BUG=
R=vsm@google.com
Review-Url: https://codereview.chromium.org/2664493005 .
2017-01-27 14:23:34 -08:00
Vijay Menon
50ccf6d9b5
Fix DOM constructors in inline JS
...
R=jacobr@google.com
Review-Url: https://codereview.chromium.org/2659063002 .
2017-01-27 09:47:13 -08:00
Vijay Menon
fd94337b42
Fix for Animation and other polyfills
...
The polyfill code needs to run before dart_sdk is loaded. Otherwise, the registerExtension step on these types does not work.
Also fixes #27605
R=jacobr@google.com
Review-Url: https://codereview.chromium.org/2649613003 .
2017-01-25 16:18:49 -08:00
Vijay Menon
a91cc9cc9e
Use microtasks in dart.async
...
Not quite sure about this, but it makes ordering match for the example in #28509
R=jmesserly@google.com
Review-Url: https://codereview.chromium.org/2653253002 .
2017-01-25 16:14:01 -08:00
Jennifer Messerly
0e00b3e5c8
fix #28008 , fix #28009 implement FutureOr<T>
...
This implements FutureOr<T> in strong mode, otherwise it's ignored (treated as `dynamic`.
Also fixes strong mode's inference subtype function incorrectly treating `void` as a malformed type. This had the consequence of allowing `void` to be inferred as a type argument.
R=leafp@google.com , paulberry@google.com
Review-Url: https://codereview.chromium.org/2647833002 .
2017-01-25 15:32:57 -08:00
Jacob Richman
d90ed8c295
Fix noSuchMethod handling of methods that are also extension methods. Fix noSuchMethod handling of methods with names that are rewritten in DDC e.g. "_get" instead of "[]" Fix some mirror system handling of symbols with names that are rewritten in DDC
...
BUG=
R=jmesserly@google.com
Review-Url: https://codereview.chromium.org/2623053004 .
2017-01-24 11:16:21 -08:00
Vijay Menon
a7f7a311c0
Fix for covariant
...
We've been silently failing to rebuild the SDK since covariant was added.
Looking at making SDK build break fail the presubmit!
TBR=leafp@google.com ,jacobr@google.com
Review-Url: https://codereview.chromium.org/2648863002 .
2017-01-20 15:20:44 -08:00
Leaf Petersen
8ae2f82dce
Eliminate redundant signatures.
...
The check to see that a method signature was redundant was not
handling generics correctly. This CL fixes it, so that we no
longer emit redundant signatures for methods on generic
classes. This should help with startup and code size a bit.
Fixes https://github.com/dart-lang/sdk/issues/28432
BUG=
R=rnystrom@google.com
Review-Url: https://codereview.chromium.org/2640793007 .
2017-01-19 12:44:39 -08:00
Vijay Menon
c83dac537f
Throw TypeError on arg mismatch
...
Improvement on #28286 - this is still not quite right as we'll throw a
TypeError instead of a NSM in certain cases depending on the order.
The spec will only throw a TypeError if NSM doesn't apply.
R=leafp@google.com
Review-Url: https://codereview.chromium.org/2636313002 .
2017-01-17 16:26:22 -08:00
Vijay Menon
f710e7209a
Make ddc legacy loader more defensive
...
This should match what we need internally.
R=alanknight@google.com , jacobr@google.com
Review-Url: https://codereview.chromium.org/2634463002 .
2017-01-13 08:01:56 -08:00
Vijay Menon
46b7f79fd5
Defer all recursive mixins
...
This defers mixins along with the supertype. It passes Leaf's example on the bug. Will add that as a proper test.
Fixes #28334
R=jmesserly@google.com
Review-Url: https://codereview.chromium.org/2625913003 .
2017-01-11 10:32:23 -08:00
Vijay Menon
be95523221
Cleanup references to the old DDC repo
...
Reachable issues migrated over.
R=jmesserly@google.com
Review-Url: https://codereview.chromium.org/2621543004 .
2017-01-10 12:56:29 -08:00
Vijay Menon
33c8f425b6
Disable auto "debugger" call for tests
...
R=jacobr@google.com
Review-Url: https://codereview.chromium.org/2621823002 .
2017-01-09 15:42:42 -08:00
Jacob Richman
badfd146d2
Fix type error in js_dart2js.dart caught by DDC.
...
BUG=
R=vsm@google.com
Review-Url: https://codereview.chromium.org/2611423002 .
2017-01-09 07:42:49 -08:00
Leaf Petersen
7ab0daeedf
Make EventStreamSubscription DDC safe.
...
EventStreamSubscription.listen does a cast which is only working in
DDC because we're ignoring the failure. This wraps the listener to
check the argument rather than casting the function. Also picks up a
few misc changes to the main SDK that hadn't been merged into DDC.
BUG=
R=jacobr@google.com
Review-Url: https://codereview.chromium.org/2609633002 .
2017-01-09 04:13:36 -08:00
Jennifer Messerly
95d5bf471c
fix analyzer failing resolve loop variable nodes
...
for example: `var item; for (item in list) { ... }`
this happens anytime ResolutionCopier is used on these, because it drops the staticElement reference for `item` in the above example.
R=vsm@google.com
Review-Url: https://codereview.chromium.org/2612983002 .
2017-01-05 10:47:43 -08:00
Jacob Richman
93fb5d8119
Fix cross-window JS interop on FireFox.
...
BUG=
R=vsm@google.com
Review-Url: https://codereview.chromium.org/2610813003 .
2017-01-04 14:15:20 -08:00
Jacob Richman
3659aaf181
Fix bug in Blob creation from workers.
...
Fixes https://github.com/dart-lang/sdk/issues/28155
BUG=
Review-Url: https://codereview.chromium.org/2592813003 .
2016-12-21 08:45:48 -08:00
Jacob Richman
7f26211c26
Correct handling of cross-frame functions in ddc.
...
Misc fixes of dart:js support on ddc.
Work around issue with Blob constructor on ddc.
Fix incorrect dart:js test on dart2js (fixes https://github.com/dart-lang/sdk/issues/26197 )
BUG=
R=alanknight@google.com , leafp@google.com , rnystrom@google.com
Review-Url: https://codereview.chromium.org/2587203002 .
2016-12-19 15:00:55 -08:00
Jennifer Messerly
77f53f609f
fixes #27385 , implement virtual fields in DDC
...
If a field is marked @virtual in Analyzer, DDC will allow it to be overridden as well
also fixes #28114 , abstract getters/setters broke generation of forwarding getters/setters
R=vsm@google.com
Review-Url: https://codereview.chromium.org/2571363002 .
2016-12-15 11:39:25 -08:00
Vijay Menon
392c242df9
Add dart:io stubs to ddc sdk, define dart.library.html
...
Fixes #27302
R=brianwilkerson@google.com , jmesserly@google.com , rnystrom@google.com
Review-Url: https://codereview.chromium.org/2578573003 .
2016-12-14 12:34:33 -08:00
Bob Nystrom
b900a39620
Implement messages in assert() in dev_compiler.
...
Fix #27342 .
R=jmesserly@google.com
Review-Url: https://codereview.chromium.org/2568313002 .
2016-12-13 13:31:56 -08:00
Vijay Menon
dd16c377fb
Enable more async code on node
...
This is primarily for easier testing/repro on node which has "global",
but not "self".
R=jmesserly@google.com
Review URL: https://codereview.chromium.org/2558133002 .
2016-12-07 10:52:04 -08:00
Vijay Menon
201c5b9297
Fix runtime strong mode error in ListMixin
...
R=jacobr@google.com
Review URL: https://codereview.chromium.org/2544163002 .
2016-12-01 15:41:46 -08:00
Alan Knight
1ff09b431f
Keep only a single active stack trace, enables traces for thrown non-exceptions
...
BUG=
R=jmesserly@google.com
Review URL: https://codereview.chromium.org/2545923002 .
2016-12-01 13:41:08 -08:00
Vijay Menon
106c623a9f
Some fixes for lazy JS types
...
R=jacobr@google.com
Review URL: https://codereview.chromium.org/2542833002 .
2016-12-01 07:44:38 -08:00
Bob Nystrom
aa749dbd8d
Sprinkle some types on the SDK like the static typing fairy.
...
When I'm looking at the dynamic call profiles of an internal app test,
I see a bunch coming from the SDK itself. In fact, the top five most
common dynamic call sites are in the SDK.
This fixes four of them. (The fifth is in runUnary() in Zone, and I
don't think can be made typed yet.)
R=vsm@google.com
Review URL: https://codereview.chromium.org/2542723003 .
2016-11-30 17:04:54 -08:00
Alan Knight
667fc8dbe9
Make the dart:developer library available in DDC so debugger statement works
...
BUG=
R=vsm@google.com
Review URL: https://codereview.chromium.org/2534263002 .
2016-11-29 16:13:45 -08:00
Vijay Menon
88c5dd5745
Better mirrors support for mixins and private fields
...
This is generally motivated by pageloader usage.
R=rnystrom@google.com
Review URL: https://codereview.chromium.org/2535273002 .
2016-11-29 14:00:01 -08:00
Jacob Richman
1b339deab2
Support lazy JS types.
...
BUG=
R=jmesserly@google.com
Review URL: https://codereview.chromium.org/2515353003 .
2016-11-22 10:55:35 -08:00