Commit Graph

5559 Commits

Author SHA1 Message Date
srdjan@google.com bdb48aefb4 Use deopt on some instructions that have not collected type feedback when optimizing compierl kicks in. Optimize SAR.
Review URL: http://codereview.chromium.org//8972002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2487 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-15 22:39:21 +00:00
dgrove@google.com d470872145 When += (and similar operations) are converted to = + ,
we may need to parenthesize the original RHS.

BUG=849
Review URL: http://codereview.chromium.org//8947008

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2478 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-15 21:32:52 +00:00
jmesserly@google.com 71af5a2680 Fix factories in Frog to correspond to the new syntax.
(Note: this is designed to work against corelib changes in http://codereview.chromium.org/8931011/, but it also works against current checked in corelib) I kept old factories limping along in Frog. We can remove them soon

Review URL: http://codereview.chromium.org//8952006

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2474 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-15 19:59:52 +00:00
codefu@google.com c5d6f1b773 Adding failure case for Frog: FuntionTypeAlias2Test
R=ahe@google.com
BUG=
TEST=

Review URL: http://codereview.chromium.org//8954013

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2467 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-15 14:13:51 +00:00
codefu@google.com e9487a92e4 Expands on previous function RTT to support named/optional parameters.
Issues encountered:
http://code.google.com/p/dart/issues/detail?id=847
http://code.google.com/p/dart/issues/detail?id=848

BUG=
TEST=

Review URL: http://codereview.chromium.org//8913006

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2465 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-15 13:31:32 +00:00
sigmund@google.com 0c903c8de6 update status for frogium
BUG=
TEST=

Review URL: http://codereview.chromium.org//8951006

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2460 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-15 04:31:44 +00:00
sigmund@google.com bfe2649732 frog: better binding of methods.
Review URL: http://codereview.chromium.org//8914024

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2457 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-15 03:59:22 +00:00
srdjan@google.com 7bffefc980 Disable OptimizedSetterTest for frog
Review URL: http://codereview.chromium.org//8950003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2455 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-15 01:00:04 +00:00
srdjan@google.com a3f519eacc Optimize instance setters for non-implicit-setters and for setters with multiple targets.
Review URL: http://codereview.chromium.org//8945002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2451 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-15 00:46:27 +00:00
ahe@google.com 7e68227003 Run the same leg tests on build bot as in presubmit.py.
Review URL: http://codereview.chromium.org//8898043

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2423 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-14 11:34:14 +00:00
sra@google.com b8977d6c8d Fix missing trampolines for named arguments.
To elide the trampoline, the named arguments must be in exactly the right positions, and not merely in the correct order to preserve evaluation order semantics.

BUG=
TEST=

Review URL: http://codereview.chromium.org//8912017

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2418 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-14 08:25:50 +00:00
sra@google.com 2b020ab084 Test for named arguments with tricky names.
BUG=
TEST=

Review URL: http://codereview.chromium.org//8932012

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2414 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-14 04:41:02 +00:00
sra@google.com 0a78b6a45b Test for named arguments with tricky (for frog) names.
BUG=
TEST=

Review URL: http://codereview.chromium.org//8912014

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2412 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-14 02:02:14 +00:00
srdjan@google.com c0f481100e Expand ArithmeticTest to include truncate divide corner case and to trigger optimizing compiler.
Review URL: http://codereview.chromium.org//8935015

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2410 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-14 01:18:38 +00:00
sigmund@google.com cd10dad521 frogium: fix all status file to reflect frogium current status.
Review URL: http://codereview.chromium.org//8930024

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2407 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-14 00:57:56 +00:00
regis@google.com 0a3e0f8a0f Fix frog build.
Review URL: http://codereview.chromium.org//8929011

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2395 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-13 19:56:19 +00:00
regis@google.com 5db4de9756 Implement revised factories in the VM.
Emit warnings when obsolete syntax is used.
Review URL: http://codereview.chromium.org//8921033

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2394 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-13 19:35:07 +00:00
ngeoffray@google.com 50f743d593 Frogot this change from last commit.
Review URL: http://codereview.chromium.org//8930007

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2384 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-13 13:39:55 +00:00
sra@google.com 82066a9553 Test for frog native properties.
BUG=
TEST=

Review URL: http://codereview.chromium.org//8923015

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2362 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-12 23:18:13 +00:00
zundel@google.com 2c38b7de7f This adds a check to the resolver to detect when an override
has different number of parameters than in its superinterface.

Review URL: http://codereview.chromium.org//8632020

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2354 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-12 19:19:18 +00:00
scheglov@google.com 05a20f5381 Restore failure in release mode
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2349 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-12 18:40:09 +00:00
sigmund@google.com addfb308e2 fix bot: corrected language.status file
TBR=jimhug

Review URL: http://codereview.chromium.org//8921013

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2348 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-12 18:34:54 +00:00
sigmund@google.com d4b3d10673 frog: check that const constructors have potentially const initializers. Also
check that const objects don't have non-final fields (this makes
ConstConstructorNegativeTest fail for the right reasons)

Review URL: http://codereview.chromium.org//8921009

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2347 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-12 18:30:20 +00:00
ngeoffray@google.com 28cb721c9f First implementation of top-level fields without initializers.
Review URL: http://codereview.chromium.org//8924001

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2346 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-12 17:29:12 +00:00
scheglov@google.com 4a11fd42a3 Tweaks for reporting duplicates, issue 519.
http://code.google.com/p/dart/issues/detail?id=519

New tests, plus inlining existing *.dart files into tests with strict checks.

R=zundel@google.com
BUG=
TEST=

Review URL: http://codereview.chromium.org//8846002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2343 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-12 16:20:05 +00:00
sra@google.com e1c3205bf2 Test for static methods and named constructors on hidden native class.
BUG=
TEST=

Review URL: http://codereview.chromium.org//8894027

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2335 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-10 07:54:36 +00:00
regis@google.com 809cd5590a Helper ast node sequences must not wrongly grab ownership of the enclosing
scope (fix issue 736).
Add test.
Review URL: http://codereview.chromium.org//8893008

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2324 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-09 21:32:14 +00:00
ahe@google.com 199dd9ca5e Add --ast to mini_parser.dart.
Review URL: http://codereview.chromium.org//8879052

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2314 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-09 16:30:57 +00:00
floitsch@google.com 2b393613eb Second try for instantiation of objects.
First try was here: http://codereview.chromium.org/8888010/

Review URL: http://codereview.chromium.org//8893001

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2313 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-09 15:24:58 +00:00
ahe@google.com 846bdc88d0 Parse all variations of for-statement.
Review URL: http://codereview.chromium.org//8883024

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2300 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-09 09:34:35 +00:00
regis@google.com dd32effb72 Adjust index of type parameters at finalization time (fix issue 718).
Add test.
Review URL: http://codereview.chromium.org//8872037

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2286 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-08 23:00:55 +00:00
vsm@google.com 9c799be622 Build fix: failing tests now passing
TBR=sigmund

Review URL: http://codereview.chromium.org//8885023

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2279 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-08 20:42:45 +00:00
srdjan@google.com 8591cd93ef Removed print from test.
Review URL: http://codereview.chromium.org//8883027

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2266 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-08 18:19:47 +00:00
codefu@google.com 5613c66865 Function type checking: Part Deux
This replaced the following CL that was falling behind head.
http://codereview.chromium.org/8566022/

Summary:
Add support for function runtime type checking and typedefs; re-worked to
support tree-shaking at head.  Static, instance, top level, and hoisted
methods have RTT lookup methods to identify their types.  Respective
getters() and binds() have been updated or added to link the lookup methods
to bounded methods. Static method getters were added as well to perform this
linking for non-bound situations.

BUG=
TEST=

Review URL: http://codereview.chromium.org//8845002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2263 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-08 18:12:00 +00:00
zundel@google.com c92b33dc0c Overriding fields is now permissable.
Review URL: http://codereview.chromium.org//8859002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2250 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-08 15:58:19 +00:00
sigmund@google.com 174f04e153 frog: detect when getter/setter has incorrect number of arguments.
Review URL: http://codereview.chromium.org//8879006

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2217 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-08 02:17:54 +00:00
srdjan@google.com 2d352798b9 Fix for intrinsified Math.sqrt method, added test.
Review URL: http://codereview.chromium.org//8866010

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2213 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-08 00:47:52 +00:00
sigmund@google.com 890c352f09 frog: improve errors with named param (bug 507)
BUG= 507
TEST=

Review URL: http://codereview.chromium.org//8878001

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2212 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-08 00:46:46 +00:00
sigmund@google.com b0d4e767fc frog: use type annotation in map and list literals
BUG= http://code.google.com/p/dart/issues/detail?id=220 http://code.google.com/p/dart/issues/detail?id=221

Review URL: http://codereview.chromium.org//8849001

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2186 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-07 17:37:00 +00:00
scheglov@google.com 06d54c8d64 Support for 'abstract' modifier for class and spec recommended warnings, issue 375
http://code.google.com/p/dart/issues/detail?id=375

R=zundel@google.com
BUG=
TEST=

Review URL: http://codereview.chromium.org//8728001

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2181 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-07 16:15:20 +00:00
sra@google.com c15c0a6058 Test for native class with factory constructors.
This pattern is going to be important for having a sane API for DOM
classes like FLoat32Array which conceptually have multiple
constructors.

BUG=
TEST=

Review URL: http://codereview.chromium.org//8834004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2161 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-07 05:13:41 +00:00
sigmund@google.com 96c87abf28 frog: generalize checking that type args aren't used in static methods
Review URL: http://codereview.chromium.org//8826014

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2157 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-07 01:28:56 +00:00
sigmund@google.com 5a23450f9c frog bug 642: type variables can't be used in allocations.
Review URL: http://codereview.chromium.org//8826001

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2141 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-06 21:02:05 +00:00
scheglov@google.com 54c5f79d42 Check that interface constructors and default class constructors are compatible.
1. Number of required parameters.
2. Names and order of named parameters.
3. [disabled] type warning for non-identical types.
4. [wait for Eric, not implemented] type parameters check.

R=zundel@google.com
BUG=
TEST=

Review URL: http://codereview.chromium.org//8786002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2124 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-06 14:58:16 +00:00
sra@google.com 7bbb92e0f8 Add test for Frog native class with same native name as interface.
This pattern is needed for several DOM classes since DOMWindow,
History and Location all need to have different implementations for
in-page and cross-page.

Frog needs to know that "native '*I'" means that the name I must be
avoided by all other generated constructs.

BUG=
TEST=

Review URL: http://codereview.chromium.org//8806033

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2110 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-06 01:33:19 +00:00
jmesserly@google.com b076b0c35a Simple fix to get noSuchMethod working on private members
This came up in an old code review (comment here: http://codereview.chromium.org/8540030/diff/1/frog/member.dart#newcode1341)
Also fixes a test :)

Review URL: http://codereview.chromium.org//8802025

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2103 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-05 23:46:44 +00:00
sra@google.com 9dff8d60ca Revert "Revert "Add test where X is defined differentlty in co-importing libraries""
This reverts commit 5065d3cf293e647c8ab0533c84d3a07bcfc3fd81.

Added missing semicolon that caused last attempt to fail

BUG=
TEST=

Review URL: http://codereview.chromium.org//8802023

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2101 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-05 23:11:51 +00:00
sra@google.com 01eb0c88ad Revert "Add test where X is defined differentlty in co-importing libraries"
This reverts commit e562f59be076e6aaa23fbc7ea6736aeaf4409e62.

BUG=
TEST=

Review URL: http://codereview.chromium.org//8799017

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2097 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-05 22:10:12 +00:00
sra@google.com 19fdf76710 Add test where X is defined differentlty in co-importing libraries
AFAIK this should work because the imports use prefixes.

Frog: passes
Dartc: passes

VM:
'/usr/local/google/home/sra/dart-all/dart/tests/language/src/LibrarySameNameUsedLib2.dart': Error: Class 'X' is used where an interface is expected

Revert "Revert "Add test where X is defined differentlty in co-importing libraries""

This reverts commit d7f6a6c72e23d380f7af2af9958f77faa11787a7.

BUG=
TEST=

Review URL: http://codereview.chromium.org//8802018

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2095 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-05 22:02:33 +00:00
sra@google.com d40d8a5ad4 Revert "Add test where X is defined differentlty in co-importing libraries"
This reverts commit cf8c2a867746c8c120fe224d7bc5c1251857d762.

BUG=
TEST=

Review URL: http://codereview.chromium.org//8805021

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2086 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-05 19:52:17 +00:00