Commit graph

11550 commits

Author SHA1 Message Date
sigurdm@google.com 1e723f68d1 Allow use of deferred type-literals in non-constant contexts.
BUG= dartbug.com/22893
R=johnniwinther@google.com

Review URL: https://codereview.chromium.org//1109393012

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@45459 260f80e4-7a28-3924-810f-c04153c831b5
2015-04-30 11:38:54 +00:00
karlklose@google.com dd7d140bc3 Adjust test expectations for dart2js-cps-ir.
R=johnniwinther@google.com

Review URL: https://codereview.chromium.org//1116863002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@45457 260f80e4-7a28-3924-810f-c04153c831b5
2015-04-30 09:48:09 +00:00
johnniwinther@google.com d9b0cc7da2 Refactor SsaBuilder.visitStaticSend and visitGetterSend.
BUG=
R=karlklose@google.com

Review URL: https://codereview.chromium.org//1112563002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@45449 260f80e4-7a28-3924-810f-c04153c831b5
2015-04-29 11:44:05 +00:00
karlklose@google.com f59e077911 Update dart2js-cps_ir test expectations for new tests committed in r45444.
R=johnniwinther@google.com

Review URL: https://codereview.chromium.org//1117543004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@45448 260f80e4-7a28-3924-810f-c04153c831b5
2015-04-29 07:27:39 +00:00
rmacnak@google.com fd8e2db578 Fix status for Dartium (can't distinguish compile-time errors).
Review URL: https://codereview.chromium.org//1112783002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@45446 260f80e4-7a28-3924-810f-c04153c831b5
2015-04-29 03:52:25 +00:00
rmacnak@google.com a6e42c48b5 Deal with deferred loading in the VM mirrors.
- Invalidate MirrorSystem.libraries when a load completes.
- Recheck if a deferred import's target has been loaded before failing.
- Allow loading libraries from a LibraryDepedencyMirror.
- Propogate compile-time error when attempting to reflect a deferred type.

BUG=http://dartbug.com/22592
R=asiva@google.com, gbracha@google.com

Review URL: https://codereview.chromium.org//1095903002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@45444 260f80e4-7a28-3924-810f-c04153c831b5
2015-04-28 23:47:45 +00:00
johnniwinther@google.com e464269f96 Refactor SsaBuilder.visitSuperSend.
BUG=
R=karlklose@google.com

Review URL: https://codereview.chromium.org//1108783003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@45439 260f80e4-7a28-3924-810f-c04153c831b5
2015-04-28 08:23:58 +00:00
kmillikin@google.com f44f9c78ac Support rethrow in the dart2js JS backend.
The approach is simple: translate rethrow to a throw of the enclosing
catch block's JS exception.  There is already an assert that the JS
backend does not see rethrow at code generation time.

R=karlklose@google.com, floitsch@google.com
BUG=

Review URL: https://codereview.chromium.org//1094453006

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@45397 260f80e4-7a28-3924-810f-c04153c831b5
2015-04-24 11:23:09 +00:00
asiva@google.com 49d1dc7252 Address issue 13719, cleanup the status file to reflect reality.
R=regis@google.com

Review URL: https://codereview.chromium.org//1085363005

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@45383 260f80e4-7a28-3924-810f-c04153c831b5
2015-04-23 20:42:28 +00:00
karlklose@google.com adcdabdfd9 Update test expectations for native tests on dart2js-cps_ir.
R=johnniwinther@google.com

Review URL: https://codereview.chromium.org//1093893003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@45373 260f80e4-7a28-3924-810f-c04153c831b5
2015-04-23 10:32:36 +00:00
karlklose@google.com e8fa15c30a Update dart2js-cps_ir test expectations.
R=johnniwinther@google.com

Review URL: https://codereview.chromium.org//1091143003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@45371 260f80e4-7a28-3924-810f-c04153c831b5
2015-04-23 08:40:49 +00:00
regis@google.com f40270798e Add reference to existing issue in status file.
This test has to be skipped on dartium because the VMOptions line is ignored.

Review URL: https://codereview.chromium.org//1098343003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@45366 260f80e4-7a28-3924-810f-c04153c831b5
2015-04-22 20:58:52 +00:00
alanknight@google.com 25c6f198f5 "Reverting 45351"
BUG=

Review URL: https://codereview.chromium.org//1097053006

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@45353 260f80e4-7a28-3924-810f-c04153c831b5
2015-04-22 17:51:58 +00:00
alanknight@google.com 7431beaec2 appendHtml and insertAdjacentHtml should be consistently sanitized
BUG=
R=terry@google.com

Review URL: https://codereview.chromium.org//1081973003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@45351 260f80e4-7a28-3924-810f-c04153c831b5
2015-04-22 17:16:01 +00:00
johnniwinther@google.com 19c838f3eb Fix dart2dart new backend status.
BUG=
R=karlklose@google.com

Review URL: https://codereview.chromium.org//1083093005

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@45346 260f80e4-7a28-3924-810f-c04153c831b5
2015-04-22 13:20:48 +00:00
johnniwinther@google.com 3fbdff8783 Add structural equality to ConstantExpression.
BUG=
R=karlklose@google.com

Review URL: https://codereview.chromium.org//1050133006

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@45344 260f80e4-7a28-3924-810f-c04153c831b5
2015-04-22 13:03:57 +00:00
kmillikin@google.com ed699ec05d Mark a dart2js test that fails in --use-cps-ir mode.
R=karlklose@google.com
BUG=

Review URL: https://codereview.chromium.org//1085913004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@45337 260f80e4-7a28-3924-810f-c04153c831b5
2015-04-22 11:08:39 +00:00
kmillikin@google.com 4f7c1d3d54 Clean up handling of constants in the CPS backend.
Before: constant-valued expressions were usually compiled by the JS constant
compiler task, which surprisingly produces a Dart (not JS) constant.

After: use the already computed constant value of a constant-valued
expression.  This is looked up in one of two ways depending on whether the
expression is an identifier or not.  For primitive constants (Booleans,
doubles, integers, strings, and null) simply construct them as they have not
had a value computed.

Also, fix a variety of small bugs.  In some case the fix is disabling an
incorrect code path and bailing out of the compiler.

BUG=
R=johnniwinther@google.com

Review URL: https://codereview.chromium.org//1057483004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@45335 260f80e4-7a28-3924-810f-c04153c831b5
2015-04-22 10:59:03 +00:00
lrn@google.com f139d0e93b Add List.unmodifiable constructor.
R=sgjesse@google.com

Review URL: https://codereview.chromium.org//1056353004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@45334 260f80e4-7a28-3924-810f-c04153c831b5
2015-04-22 10:48:22 +00:00
floitsch@google.com 6594a922d5 Mark dart2js/exit_code_test as slow.
R=ricow@google.com

Review URL: https://codereview.chromium.org//1090273007

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@45330 260f80e4-7a28-3924-810f-c04153c831b5
2015-04-22 10:09:29 +00:00
karlklose@google.com 9e154bc62a Allow access to type variables as expressions in factory constructors.
BUG= http://dartbug.com/22700
R=johnniwinther@google.com

Review URL: https://codereview.chromium.org//1100073002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@45328 260f80e4-7a28-3924-810f-c04153c831b5
2015-04-22 09:11:14 +00:00
sigmund@google.com 3b57a3d8b7 Fix test in try affected by refactor
TBR=johnniwinther@google.com

Review URL: https://codereview.chromium.org//1079523004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@45317 260f80e4-7a28-3924-810f-c04153c831b5
2015-04-21 17:40:46 +00:00
hausner@google.com 21ca62f8bc Properly resolve top-level setters
Fixes issue 4386.

When converting a getter to a setter (converting a right-hand
side expression to a left-hand side, assignable entity),
we need to know where to look for the setter function.
Top-level setters need to be resolved in the library or prefix
scope in which the getter was found.

R=regis@google.com

Review URL: https://codereview.chromium.org//1090373006

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@45316 260f80e4-7a28-3924-810f-c04153c831b5
2015-04-21 17:36:34 +00:00
sigmund@google.com 667173800b Visit arguments of invalid TypeLiteralSends during inference
BUG= http://dartbug.com/23264
R=johnniwinther@google.com

Review URL: https://codereview.chromium.org//1081873005

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@45315 260f80e4-7a28-3924-810f-c04153c831b5
2015-04-21 15:36:22 +00:00
sgjesse@google.com 170be8d7d1 Process outstanding events before making a new HTTP client request
This re-applies r45127, which was reverted in r45129. The revert was due
to a failing test which is re-written here to perform the separate steps
in a deterministic order.

Original change description:

This fixes the issue of using a HTTP client connection from the
connection pool which was closed and where the close indication has
already been received by the event handler.

This specifically fixes the 'pub get' issue where a long running
constraint resolver would end with the error "Connection closed before
full header was received"

Retrying GET methods when the connection is closed after succesfuly
sending (parts of) the request is still missing.

R=lrn@google.com

BUG=http://dartbug.com/21798

Review URL: https://codereview.chromium.org//1055943004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@45313 260f80e4-7a28-3924-810f-c04153c831b5
2015-04-21 12:14:55 +00:00
johnniwinther@google.com af8a0dcdca Add SourceInformationFactory.
BUG=
R=floitsch@google.com

Review URL: https://codereview.chromium.org//1100723002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@45312 260f80e4-7a28-3924-810f-c04153c831b5
2015-04-21 12:07:51 +00:00
sra@google.com f1ab388015 Rewrite for-in loop on JavaScript indexable arrays as indexing loop
for (E variable in a) <body>

is generated as:

  _end = a.length;
  for (_i = 0; _i < a.length; a.length == _end || (0, H.throwConcurrentModificatiionError)(a), ++_i) {
    variable = a[_i];
    <body>;
  }

or, when the list is known to be fixed length:

  for (_i = 0; _i < a.length; ++_i) {
    variable = a[_i];
    <body>;
  }

R=floitsch@google.com

Committed: https://code.google.com/p/dart/source/detail?r=45270

Reverted: https://code.google.com/p/dart/source/detail?r=45271

Review URL: https://codereview.chromium.org//1087973002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@45309 260f80e4-7a28-3924-810f-c04153c831b5
2015-04-21 03:13:36 +00:00
regis@google.com 2b3abd61d8 Make build green by skipping debug break test on Dartium and friends (will
investigate later).

Review URL: https://codereview.chromium.org//1092373004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@45308 260f80e4-7a28-3924-810f-c04153c831b5
2015-04-21 01:42:52 +00:00
sra@google.com 904c18efcc Enforce token syntax for CssClassSet arguments
Committed: https://code.google.com/p/dart/source/detail?r=45265

Reverted: https://code.google.com/p/dart/source/detail?r=45266

R=terry@google.com

Committed: https://code.google.com/p/dart/source/detail?r=45301

Committed: https://code.google.com/p/dart/source/detail?r=45303

Reverted: https://codereview.chromium.org/1096433006/

Review URL: https://codereview.chromium.org//1077203004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@45307 260f80e4-7a28-3924-810f-c04153c831b5
2015-04-21 01:32:49 +00:00
sra@google.com 736007062a Revert "Enforce token syntax for CssClassSet arguments"
TBR=terry@google.com
BUG=

Review URL: https://codereview.chromium.org//1096433006

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@45306 260f80e4-7a28-3924-810f-c04153c831b5
2015-04-21 01:14:32 +00:00
sra@google.com a1850bb69a Enforce token syntax for CssClassSet arguments
Committed: https://code.google.com/p/dart/source/detail?r=45265

Reverted: https://code.google.com/p/dart/source/detail?r=45266

R=terry@google.com

Committed: https://code.google.com/p/dart/source/detail?r=45301

Review URL: https://codereview.chromium.org//1077203004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@45303 260f80e4-7a28-3924-810f-c04153c831b5
2015-04-21 00:37:10 +00:00
sra@google.com ec484da9f6 Revert "Enforce token syntax for CssClassSet arguments"
Review URL: https://codereview.chromium.org//1098073003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@45302 260f80e4-7a28-3924-810f-c04153c831b5
2015-04-21 00:25:54 +00:00
sra@google.com 01d3e99f18 Enforce token syntax for CssClassSet arguments
Committed: https://code.google.com/p/dart/source/detail?r=45265

Reverted: https://code.google.com/p/dart/source/detail?r=45266

R=terry@google.com

Review URL: https://codereview.chromium.org//1077203004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@45301 260f80e4-7a28-3924-810f-c04153c831b5
2015-04-20 23:44:11 +00:00
regis@google.com 240c208462 Add a separate test verifying that the optimizer does not trip over debug break.
R=iposva@google.com

Review URL: https://codereview.chromium.org//1091133002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@45300 260f80e4-7a28-3924-810f-c04153c831b5
2015-04-20 23:19:58 +00:00
sra@google.com 1b2296c2be getElementsByName returns HtmlCollection on IE
Review URL: https://codereview.chromium.org//1093243002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@45299 260f80e4-7a28-3924-810f-c04153c831b5
2015-04-20 22:23:08 +00:00
lrn@google.com 53fa5f6c0a Make html-escape also escape < and > in attributes.
Unescaped < is not allowed in strict XHTML attributes.

BUG= http://dartbug.com/21913
R=sgjesse@google.com

Review URL: https://codereview.chromium.org//1083413004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@45278 260f80e4-7a28-3924-810f-c04153c831b5
2015-04-20 11:01:22 +00:00
vegorov@google.com 7db7425826 Reland r45243.
Type and constant propagator should guard against mutable class ids.

Constant strings can be externalized so we can't fold away class checks against
them.

Prevent CP from removing redefinitions of constants with mutable cids.

BUG=
R=fschneider@google.com

Review URL: https://codereview.chromium.org//1091353002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@45275 260f80e4-7a28-3924-810f-c04153c831b5
2015-04-20 10:42:54 +00:00
lrn@google.com b4d052c5da Fix bug in DateTime.parse.
Used unescaepd "." to match "." in RegExp.

BUG= http://dartbug.com/22468
R=sgjesse@google.com

Review URL: https://codereview.chromium.org//1091553005

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@45274 260f80e4-7a28-3924-810f-c04153c831b5
2015-04-20 10:27:24 +00:00
sra@google.com 541fbcd32e Rewrite for-in loop on JavaScript indexable arrays as indexing loop
for (E variable in a) <body>

is generated as:

  _end = a.length;
  for (_i = 0; _i < a.length; a.length == _end || (0, H.throwConcurrentModificatiionError)(a), ++_i) {
    variable = a[_i];
    <body>;
  }

or, when the list is known to be fixed length:

  for (_i = 0; _i < a.length; ++_i) {
    variable = a[_i];
    <body>;
  }

R=floitsch@google.com

Committed: https://code.google.com/p/dart/source/detail?r=45270

Review URL: https://codereview.chromium.org//1087973002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@45271 260f80e4-7a28-3924-810f-c04153c831b5
2015-04-20 02:44:07 +00:00
sra@google.com 24478da6bc Rewrite for-in loop on JavaScript indexable arrays as indexing loop
for (E variable in a) <body>

is generated as:

  _end = a.length;
  for (_i = 0; _i < a.length; a.length == _end || (0, H.throwConcurrentModificatiionError)(a), ++_i) {
    variable = a[_i];
    <body>;
  }

or, when the list is known to be fixed length:

  for (_i = 0; _i < a.length; ++_i) {
    variable = a[_i];
    <body>;
  }

R=floitsch@google.com

Review URL: https://codereview.chromium.org//1087973002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@45270 260f80e4-7a28-3924-810f-c04153c831b5
2015-04-20 02:08:12 +00:00
sra@google.com efc7d09945 Enforce token syntax for CssClassSet arguments
Committed: https://code.google.com/p/dart/source/detail?r=45265

Review URL: https://codereview.chromium.org//1077203004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@45266 260f80e4-7a28-3924-810f-c04153c831b5
2015-04-18 01:58:20 +00:00
sra@google.com 08676965c4 Enforce token syntax for CssClassSet arguments
Review URL: https://codereview.chromium.org//1077203004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@45265 260f80e4-7a28-3924-810f-c04153c831b5
2015-04-18 01:53:21 +00:00
sigmund@google.com 0189a4b353 Better hints for await in non-async functions
BUG=23234
R=johnniwinther@google.com

Review URL: https://codereview.chromium.org//1094903002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@45256 260f80e4-7a28-3924-810f-c04153c831b5
2015-04-17 20:58:59 +00:00
regis@google.com c983ebf506 Fix bigint division (issue 23238).
Add regression test.

R=zra@google.com

Review URL: https://codereview.chromium.org//1062753004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@45253 260f80e4-7a28-3924-810f-c04153c831b5
2015-04-17 20:30:29 +00:00
alanknight@google.com b1bbf977b3 Remove 22327 suppression now that Chrome 41 is current
BUG=

Review URL: https://codereview.chromium.org//1097783002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@45252 260f80e4-7a28-3924-810f-c04153c831b5
2015-04-17 19:47:30 +00:00
sigmund@google.com ea5c8193c1 Make super.foo= erroneous if they are not assignable.
R=johnniwinther@google.com

Review URL: https://codereview.chromium.org//1090923004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@45250 260f80e4-7a28-3924-810f-c04153c831b5
2015-04-17 18:34:29 +00:00
rmacnak@google.com 1ed911f4c2 Skip spawn_function_root_library_test on Dartium.
BUG=

Review URL: https://codereview.chromium.org//1094933002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@45246 260f80e4-7a28-3924-810f-c04153c831b5
2015-04-17 17:44:38 +00:00
johnniwinther@google.com 62167b954f Move constant systems into their own libraries.
BUG=
R=karlklose@google.com

Review URL: https://codereview.chromium.org//1091443003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@45241 260f80e4-7a28-3924-810f-c04153c831b5
2015-04-17 16:29:44 +00:00
karlklose@google.com 385ddcde84 Adjust test expectations for dart2js_extra.
R=kmillikin@google.com

Review URL: https://codereview.chromium.org//1066803006

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@45238 260f80e4-7a28-3924-810f-c04153c831b5
2015-04-17 12:47:20 +00:00
karlklose@google.com 7dd2608820 Adjust test expectations for dart2js-cps-ir.
R=kmillikin@google.com

Review URL: https://codereview.chromium.org//1092013003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@45236 260f80e4-7a28-3924-810f-c04153c831b5
2015-04-17 11:45:51 +00:00