Jennifer Messerly
93a02bf8f9
fix super setters when super is not allowed
...
We were generating these incorrectly. This also improves the code structure around super helpers as well as accessors vs fields.
R=vsm@google.com
Review-Url: https://codereview.chromium.org/2940323003 .
2017-06-16 11:49:51 -07:00
Jennifer Messerly
c848476643
fix super from constructors
...
R=vsm@google.com
Review-Url: https://codereview.chromium.org/2938713002 .
2017-06-13 16:47:20 -07:00
Jennifer Messerly
1f50f0d126
fix mixins with factory constructors
...
R=vsm@google.com
Review-Url: https://codereview.chromium.org/2935933005 .
2017-06-13 15:58:50 -07:00
Alan Knight
9e3fdbf94d
Update DDC core patch for ConstantExpressionError
...
BUG=
R=vsm@google.com
Review-Url: https://codereview.chromium.org/2941593002 .
2017-06-13 13:57:42 -07:00
Jennifer Messerly
71c7914061
fix checking of dsend generic type bounds
...
R=vsm@google.com
Review-Url: https://codereview.chromium.org/2935553002 .
2017-06-12 16:17:39 -07:00
Jennifer Messerly
cb038cda2f
fix test runner to understand mutlitests that expect an error
...
R=rnystrom@google.com , vsm@google.com
Review-Url: https://codereview.chromium.org/2930203002 .
2017-06-12 16:07:17 -07:00
Jennifer Messerly
e79fbd167b
fix #29789 , avoid unneccessary dcalls and checks in dart:_runtime
...
R=vsm@google.com
Review-Url: https://codereview.chromium.org/2932043003 .
2017-06-12 15:44:45 -07:00
Jennifer Messerly
334354f968
fix #29753 , use ES5 constructors for ddc
...
R=vsm@google.com
Review-Url: https://codereview.chromium.org/2934623003 .
2017-06-12 15:31:32 -07:00
Vijay Menon
06c4619b3e
Fix int test
...
Fixes #29822
R=jmesserly@google.com
Review-Url: https://codereview.chromium.org/2927703005 .
2017-06-08 17:42:35 -07:00
Vijay Menon
a7645f817f
Optimize runtime code on hot methods
...
ochafik: this should include your internal fixes.
Here are generated diffs:
JSArray:
[dartx._get](index) {
- if (!(typeof index == 'number')) dart.throw(_js_helper.diagnoseIndexError(this, index));
- if (dart.notNull(index) >= dart.notNull(this[dartx.length]) || dart.notNull(index) < 0) dart.throw(_js_helper.diagnoseIndexError(this, index));
+ if (index == null || index >= this.length || index < 0) {
+ dart.throw(_js_helper.diagnoseIndexError(this, index));
+ }
return this[index];
}
[dartx._set](index, value) {
E._check(value);
this[dartx.checkMutable]('indexed set');
- if (!(typeof index == 'number')) dart.throw(_js_helper.diagnoseIndexError(this, index));
- if (dart.notNull(index) >= dart.notNull(this[dartx.length]) || dart.notNull(index) < 0) dart.throw(_js_helper.diagnoseIndexError(this, index));
+ if (index == null || index >= this.length || index < 0) {
+ dart.throw(_js_helper.diagnoseIndexError(this, index));
+ }
R=jmesserly@google.com , ochafik@google.com
JSString:
[dartx.codeUnitAt](index) {
- if (!(typeof index == 'number')) dart.throw(_js_helper.diagnoseIndexError(this, index));
- if (dart.notNull(index) < 0) dart.throw(_js_helper.diagnoseIndexError(this, index));
- if (dart.notNull(index) >= dart.notNull(this[dartx.length])) dart.throw(_js_helper.diagnoseIndexError(this, index));
+ if (index == null || index < 0 || index >= this.length) {
+ dart.throw(_js_helper.diagnoseIndexError(this, index));
+ }
return this.charCodeAt(index);
}
[dartx.startsWith](pattern, index) {
if (index === void 0) index = 0;
- _js_helper.checkInt(index);
- if (dart.notNull(index) < 0 || dart.notNull(index) > dart.notNull(this[dartx.length])) {
+ let length = this.length;
+ if (dart.notNull(index) < 0 || index > length) {
dart.throw(new core.RangeError.range(index, 0, this[dartx.length]));
}
if (typeof pattern == 'string') {
let other = pattern;
- let otherLength = other[dartx.length];
- let endIndex = dart.notNull(index) + dart.notNull(otherLength);
- if (endIndex > dart.notNull(this[dartx.length])) return false;
+ let otherLength = other.length;
+ let endIndex = index + otherLength;
+ if (endIndex > length) return false;
return other == this.substring(index, endIndex);
}
return pattern[dartx.matchAsPrefix](this, index) != null;
}
get [dartx.isEmpty]() {
- return this[dartx.length] == 0;
+ return this.length == 0;
}
[dartx.compareTo](other) {
- if (!(typeof other == 'string')) dart.throw(_js_helper.argumentErrorValue(other));
+ if (other == null) dart.throw(_js_helper.argumentErrorValue(other));
return dart.equals(this, other) ? 0 : this < other ? -1 : 1;
}
get [dartx.hashCode]() {
let hash = 0;
- for (let i = 0; i < dart.notNull(this[dartx.length]); i++) {
+ let length = this.length;
+ for (let i = 0; i < length; i++) {
hash = 536870911 & hash + this.charCodeAt(i);
hash = 536870911 & hash + ((524287 & hash) << 10);
hash = hash ^ hash >> 6;
...
}
[dartx._get](index) {
- if (!(typeof index == 'number')) dart.throw(_js_helper.diagnoseIndexError(this, index));
- if (dart.notNull(index) >= dart.notNull(this[dartx.length]) || dart.notNull(index) < 0) dart.throw(_js_helper.diagnoseIndexError(this, index));
+ if (index == null || index >= this.length || index < 0) {
+ dart.throw(_js_helper.diagnoseIndexError(this, index));
+ }
return this[index];
}
Review-Url: https://codereview.chromium.org/2927763004 .
2017-06-08 17:31:44 -07:00
Ben Konyi
033c18472d
Revert "Removed SecurityContext.alpnSupported, as ALPN is now supported on all platforms. Also updated CHANGELOG.md to announce its removal."
...
This reverts commit 4b6fa0d5fb .
BUG=
R=kevmoo@google.com
Review-Url: https://codereview.chromium.org/2928013002 .
2017-06-08 14:32:41 -07:00
Ben Konyi
4b6fa0d5fb
Removed SecurityContext.alpnSupported, as ALPN is now supported on all platforms. Also updated CHANGELOG.md to announce its removal.
...
BUG=
R=zra@google.com
Review-Url: https://codereview.chromium.org/2926153004 .
2017-06-07 15:15:58 -07:00
Leaf Petersen
cb8cc2526b
Add codegen test for equality.
...
Adds a DDC test tracking the generated code and its correctness. Some
test harness changes to support running codegen tests.
BUG=
R=jmesserly@google.com
Review-Url: https://codereview.chromium.org/2930733002 .
2017-06-07 12:42:30 -07:00
Jennifer Messerly
332b34aba8
refactor _emitFunctionBody slightly to simplify it
...
R=vsm@google.com
Review-Url: https://codereview.chromium.org/2929503002 .
2017-06-06 15:58:55 -07:00
Jennifer Messerly
99d5344463
fix "unresolved names" code generation
...
now unsafe-force-compile will generate a throw rather than a free floating name
R=vsm@google.com
Review-Url: https://codereview.chromium.org/2920223009 .
2017-06-06 15:53:30 -07:00
Vijay Menon
b45e9e2de9
Minor tweak on README
...
Making the description on constructors more accurate.
R=jmesserly@google.com
Review-Url: https://codereview.chromium.org/2923123003 .
2017-06-06 10:39:31 -07:00
Leaf Petersen
671091b9ef
Regenerate DDC SDK.
...
BUG=
R=vsm@google.com
Review-Url: https://codereview.chromium.org/2926523002 .
2017-06-05 16:28:16 -07:00
Vijay Menon
532d9eabc7
Update DDC Readme
...
R=rnystrom@google.com
Staging: https://github.com/dart-lang/sdk/blob/ddc-readme/pkg/dev_compiler/README.md
Review-Url: https://codereview.chromium.org/2920373002 .
2017-06-05 15:04:09 -07:00
Jennifer Messerly
3054dc50c1
fix #27255 , remove angular whitelist hack
...
R=vsm@google.com
Review-Url: https://codereview.chromium.org/2928483002 .
2017-06-05 14:52:55 -07:00
Jennifer Messerly
88510c1860
fix #29146 , downgrade import error to warning in strong mode
...
R=brianwilkerson@google.com
Review-Url: https://codereview.chromium.org/2916223002 .
2017-06-01 15:44:30 -07:00
Devon Carew
a7c3358378
Remove an unused symbol analysis warning.
...
BUG=
R=vsm@google.com
Review-Url: https://codereview.chromium.org/2911983009 .
2017-05-30 18:06:11 -07:00
Alan Knight
a865f0ecf2
Update DDC libraries to match SDK, and debugger_test golden file
...
BUG=
R=jacobr@google.com
Review-Url: https://codereview.chromium.org/2903333002 .
2017-05-25 15:00:51 -07:00
Vijay Menon
75afaf5a24
Support reflectClass on parameterized classes
...
Internal pageloader usage hits this.
R=rnystrom@google.com
Review-Url: https://codereview.chromium.org/2899343004 .
2017-05-25 13:27:35 -07:00
Vijay Menon
570f6de05b
Remove unsafe flag from ddc sdk
...
One small step for man...
R=rnystrom@google.com
Review-Url: https://codereview.chromium.org/2910473002 .
2017-05-25 10:50:17 -07:00
Alan Knight
0bb2d5e548
Update DDC html libraries to match SDK
...
BUG=
R=vsm@google.com
Review-Url: https://codereview.chromium.org/2899083007 .
2017-05-25 09:33:23 -07:00
Vijay Menon
2187f5232d
DDC cleanup
...
R=jacobr@google.com , jakemac@google.com
Review-Url: https://codereview.chromium.org/2902103005 .
2017-05-24 13:01:10 -07:00
Alan Knight
b4b02daade
Include DDC fixes to dart:html in the main version
...
BUG=
R=jacobr@google.com , vsm@google.com
Review-Url: https://codereview.chromium.org/2899173002 .
2017-05-24 12:49:13 -07:00
Vijay Menon
5919a12038
Library root fix for win
...
R=jakemac@google.com
Jacob: do we need a fix in jsDebuggingLibraryName too? could that code be refactored - it looks like it duplicates a lot of logic.
Review-Url: https://codereview.chromium.org/2899363002 .
2017-05-24 12:10:47 -07:00
Vijay Menon
6402ad477d
Use the dart2js patch for dart:convert to get latest type fixes
...
BUG=
R=floitsch@google.com
Review-Url: https://codereview.chromium.org/2896253003 .
2017-05-24 07:33:19 -07:00
vsmenon
1f30612a21
Fix example in doc
2017-05-23 10:56:17 -07:00
Jacob Richman
58851f2f06
Add ignoreAllErrors option to dart:_runtime
...
Supports users who want to try to run broken code while porting a Dart
app to strong mode.
BUG=
R=alanknight@google.com
Review-Url: https://codereview.chromium.org/2893803006 .
2017-05-19 15:53:08 -07:00
Vijay Menon
92d39a4e08
One more minor mixin fix
...
We need to preserve the Mixin constructor to make sure metadata (e.g.,
implements) is injected in the right place.
R=jacobr@google.com
Review-Url: https://codereview.chromium.org/2779063002 .
2017-05-19 07:41:29 -07:00
Vijay Menon
1f94f3dc0a
Fix status for FF
...
TBR=alanknight@google.com
Review-Url: https://codereview.chromium.org/2895543002 .
2017-05-18 19:29:40 -07:00
Vijay Menon
b82b0e29ed
DDC fixes for SpeechRecognition
...
R=alanknight@google.com
Review-Url: https://codereview.chromium.org/2896463002 .
2017-05-18 17:05:51 -07:00
Vijay Menon
59e6c332ea
Regenerate DDC artifacts
...
TBR=rnystrom@google.com
Review-Url: https://codereview.chromium.org/2886403006 .
2017-05-18 13:29:26 -07:00
Vijay Menon
ad7f257f9b
Fix nullaware dynamic dispatch
...
Fixes #29610
R=leafp@google.com
Review-Url: https://codereview.chromium.org/2880103004 .
2017-05-15 20:47:10 -07:00
Jacob Richman
61b0cbd685
Fix language/stacktrace_rethrow_error_test_withtraceparameter_multi test
...
Fix is to remove unexpected frames on the stack trace by inlining
all calls to determine current DDC configuration settings.
BUG=
R=leafp@google.com , vsm@google.com
Review-Url: https://codereview.chromium.org/2879393002 .
2017-05-15 16:27:42 -07:00
Jacob Richman
65e0b8994e
Add progress events for loading DDC summaries to make it clear to users whether loading a DDC application has timed out.
...
BUG=
R=alanknight@google.com
Review-Url: https://codereview.chromium.org/2879843004 .
2017-05-15 08:41:00 -07:00
Devon Carew
4afc0aeb73
Fix some analysis issues.
...
BUG=
R=danrubel@google.com
Review-Url: https://codereview.chromium.org/2882003002 .
2017-05-13 16:24:47 -07:00
Vijay Menon
2375e5f9b5
Better error when force-compile fails
...
R=alanknight@google.com
Review-Url: https://codereview.chromium.org/2883443002 .
2017-05-12 17:21:15 -07:00
Jacob Richman
ff588405fe
Fix bugs supporting configuring DDC runtime settings before the application starts.
...
I don't see a better way to implement this given how DDC lazily
initializes fields.
BUG=
R=vsm@google.com
Review-Url: https://codereview.chromium.org/2875063003 .
2017-05-12 15:59:07 -07:00
Leaf Petersen
8cdcfb98e2
Use Null argument for callback arity check in async_error.
...
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 .
2017-05-11 17:36:47 -07:00
Bob Nystrom
979a75c4b3
Fix more errors in DDC SDK.
...
R=jacobr@google.com , vsm@google.com
Review-Url: https://codereview.chromium.org/2871363002 .
2017-05-11 11:22:05 -07:00
Bob Nystrom
a68b44924e
Disambiguate setters and getters when patching DDC SDK.
...
Stdio was having its setters applied twice instead of applying the
getter and setter each once.
R=vsm@google.com
Review-Url: https://codereview.chromium.org/2874713005 .
2017-05-10 16:56:41 -07:00
Leaf Petersen
a2ebe9c809
Update DDC built sdk.
...
BUG=
R=vsm@google.com
Review-Url: https://codereview.chromium.org/2873363002 .
2017-05-10 10:30:33 -07:00
Jacob Richman
a35b79f178
Support configuring DDC runtime settings before the application starts and normalize API for configuring runtime settings.
...
BUG=
R=vsm@google.com
Review-Url: https://codereview.chromium.org/2874813002 .
2017-05-10 10:05:49 -07:00
Jennifer Messerly
4c377076bf
fix #29585 , implement equality for tearoffs
...
R=vsm@google.com
Review-Url: https://codereview.chromium.org/2873073002 .
2017-05-09 16:21:51 -07:00
Vijay Menon
36356c28c1
Better stack trace support
...
- Caches stack trace objects (package:stack_trace appears to rely on this)
- Better support for stack traces on primitives
R=jmesserly@google.com
Review-Url: https://codereview.chromium.org/2869463002 .
2017-05-09 14:58:34 -07:00
Jennifer Messerly
811a9eed1d
Revert "Revert "fix #27256 , track type bounds for generic functions""
...
This reverts commit 3a23e604e2 .
The problem was unrelated to the CL; it appears to be a dart:async break of package:async.
In the meantime we have turned on --unsafe-force-compile to DDC's shapshotting step
Review-Url: https://codereview.chromium.org/2869733006 .
2017-05-09 14:20:25 -07:00
Vijay Menon
96f9287c0b
Regenerate DDC artifacts
...
I had to put --unsafe-force-compile back to get the snapshot to build. Investigating...
TBR=jmesserly@google.com
Review-Url: https://codereview.chromium.org/2873013003 .
2017-05-09 14:08:47 -07:00