floitsch@google.com
7714545fd9
Add timeout to flaky test.
...
Review URL: https://codereview.chromium.org//22909035
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@26523 260f80e4-7a28-3924-810f-c04153c831b5
2013-08-22 14:14:03 +00:00
ricow@google.com
1a2510a8db
Mark dart2js_extra/deferred/deferred_function_test as flaky
...
Filed issue 12635
R=kustermann@google.com
Review URL: https://codereview.chromium.org//22926010
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@26512 260f80e4-7a28-3924-810f-c04153c831b5
2013-08-22 09:46:26 +00:00
sra@google.com
38f9e9a222
Revert "Fix casts and type assertions on mixins used in native classes"
...
Review URL: https://codereview.chromium.org//22831022
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@26473 260f80e4-7a28-3924-810f-c04153c831b5
2013-08-21 20:49:21 +00:00
sra@google.com
1a0e976128
Fix casts and type assertions on mixins used in native classes
...
TBR=ngeoffray@google.com
Review URL: https://codereview.chromium.org//23204007
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@26459 260f80e4-7a28-3924-810f-c04153c831b5
2013-08-21 19:32:16 +00:00
kustermann@google.com
bc051d0a91
Remove entries in status refering to non-existent files
...
R=ricow@google.com
Review URL: https://codereview.chromium.org//23245015
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@26438 260f80e4-7a28-3924-810f-c04153c831b5
2013-08-21 16:40:40 +00:00
ngeoffray@google.com
4e107aa0c0
Fix receiver refining optimization in the presence of null: any Object method can be called on the null object.
...
R=karlklose@google.com
Review URL: https://codereview.chromium.org//23353002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@26418 260f80e4-7a28-3924-810f-c04153c831b5
2013-08-21 07:30:19 +00:00
ngeoffray@google.com
67258b97fe
Refine the type of a local after it has been used as the receiver of a call.
...
R=karlklose@google.com
Review URL: https://codereview.chromium.org//22947008
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@26342 260f80e4-7a28-3924-810f-c04153c831b5
2013-08-20 09:36:32 +00:00
johnniwinther@google.com
781f279c61
Handle missing imports/exports/parts.
...
BUG=
R=ahe@google.com
Review URL: https://codereview.chromium.org//21544003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@26341 260f80e4-7a28-3924-810f-c04153c831b5
2013-08-20 09:19:36 +00:00
zarah@google.com
0fcc3c5b2c
Load builtin helper libraries on demand.
...
R=ahe@google.com
Review URL: https://codereview.chromium.org//23258002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@26309 260f80e4-7a28-3924-810f-c04153c831b5
2013-08-19 08:58:13 +00:00
zarah@google.com
ac3e971447
Enable unique global renaming in dart2dart minification.
...
R=ahe@google.com
Review URL: https://codereview.chromium.org//22849007
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@26308 260f80e4-7a28-3924-810f-c04153c831b5
2013-08-19 07:56:03 +00:00
ngeoffray@google.com
66476c7a28
Compensate for the lack of code motion in licm.
...
R=karlklose@google.com
Review URL: https://codereview.chromium.org//22871008
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@26265 260f80e4-7a28-3924-810f-c04153c831b5
2013-08-16 10:47:36 +00:00
sra@google.com
20097882cf
Native subclasses of a mixin include classes extending native classes
...
Fixes a problem Pete found with mixins and custom elements.
TBR=ngeoffray@google.com
Review URL: https://codereview.chromium.org//22854016
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@26251 260f80e4-7a28-3924-810f-c04153c831b5
2013-08-16 01:14:39 +00:00
sra@google.com
28dd6944b7
First cut at extending native classes.
...
Subclasses of native classes have to be treated largely like native classes since they require interceptors.
The ugly part is collecting the set of subclasses of native classes without resolving all classes. Only plausible classes are resolved. Plausible classes have a superclass name that is native class (or subclass of native class). The name-keyed graph is collected and inverted to identify the true subclasses of native classes.
Things that are missing from this CL:
1. I discussed with Peter a better way of finding which classes are subclasses of native classes by resolving the superclass. Peter's proposal will still require the graph inversion step but should be more precise.
2. It would be a good idea to replace the 'defineNativeSubclass' calls with more declarative static data on the class and post-process the classes.
3. We need to make sure that fields of subclasses of native classes do not conflict with any (potentially undeclared) properties of the base native class.
4. The compiler should do additional checking
- The constructor must be a factory constructor.
- No fields can have initializers.
R=ahe@google.com
Review URL: https://codereview.chromium.org//15026006
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@26208 260f80e4-7a28-3924-810f-c04153c831b5
2013-08-15 19:09:12 +00:00
ngeoffray@google.com
cbf92d012d
Address long-standing review comments.
...
Comments were from:
https://codereview.chromium.org/12299008/
https://codereview.chromium.org/11273121/
R=ahe@google.com
Review URL: https://codereview.chromium.org//22871009
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@26196 260f80e4-7a28-3924-810f-c04153c831b5
2013-08-15 16:07:07 +00:00
ngeoffray@google.com
e4b04e7007
Allow infering of return types on runtime helpers. It's only arugments the inferrer does not see.
...
Also fix a few dependencies of runtime errors requiring the string class to be instantiated.
R=ahe@google.com , karlklose@google.com
Review URL: https://codereview.chromium.org//22833005
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@26189 260f80e4-7a28-3924-810f-c04153c831b5
2013-08-15 11:53:41 +00:00
ngeoffray@google.com
9ec9da04eb
Fix test to not generate a NoSuchMethodError.
...
R=ahe@google.com
Review URL: https://codereview.chromium.org//23230003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@26184 260f80e4-7a28-3924-810f-c04153c831b5
2013-08-15 10:44:59 +00:00
ngeoffray@google.com
bf154f76a6
Ensure the type inferrer does not infer types for runtime helpers used by the backend.
...
R=ahe@google.com , karlklose@google.com
Review URL: https://codereview.chromium.org//23118007
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@26180 260f80e4-7a28-3924-810f-c04153c831b5
2013-08-15 10:06:08 +00:00
polux@google.com
775288a3d1
Refactor and reorganize type inference classes before porting ConcreteTypesInferrer to InferrerVisitor.
...
R=ngeoffray@google.com
Review URL: https://codereview.chromium.org//22398008
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@26174 260f80e4-7a28-3924-810f-c04153c831b5
2013-08-15 09:00:33 +00:00
ngeoffray@google.com
6698a94683
Fix inference bugs found by sra@ by changing how we merge if/then/else locals.
...
R=sra@google.com
Review URL: https://codereview.chromium.org//22955003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@26171 260f80e4-7a28-3924-810f-c04153c831b5
2013-08-15 08:04:30 +00:00
ahe@google.com
bd78f6f837
Update test after disallowing uppercase letters.
...
Review URL: https://codereview.chromium.org//23195002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@26124 260f80e4-7a28-3924-810f-c04153c831b5
2013-08-14 15:15:17 +00:00
kustermann@google.com
250264d15e
Implement visitCascade/visitCascadeReceiver in inferrer_visitor.dart
...
R=ngeoffray@google.com
Review URL: https://codereview.chromium.org//22881003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@26115 260f80e4-7a28-3924-810f-c04153c831b5
2013-08-14 12:45:48 +00:00
ngeoffray@google.com
86d92ec96f
Handle switch with default case, and do/while loop better in the inferrer.
...
R=ahe@google.com
Review URL: https://codereview.chromium.org//23050002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@26109 260f80e4-7a28-3924-810f-c04153c831b5
2013-08-14 08:10:07 +00:00
ahe@google.com
c0ce070471
Improve performance of ClassMirror.newInstance.
...
R=ngeoffray@google.com
Review URL: https://codereview.chromium.org//22934004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@26065 260f80e4-7a28-3924-810f-c04153c831b5
2013-08-13 17:25:47 +00:00
ahe@google.com
667e357a91
Only retain needed metadata constants.
...
R=ngeoffray@google.com
Review URL: https://codereview.chromium.org//22896003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@26056 260f80e4-7a28-3924-810f-c04153c831b5
2013-08-13 15:30:13 +00:00
sra@google.com
d082492e10
Tweak simple_inferrer_test to pass with fix for 12320
...
TBR=ngeoffray@google.com
Review URL: https://codereview.chromium.org//22916003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@26030 260f80e4-7a28-3924-810f-c04153c831b5
2013-08-12 20:33:51 +00:00
sra@google.com
d25bf6b258
Fix for switch type inferrence
...
Review URL: https://codereview.chromium.org//22279006
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@26022 260f80e4-7a28-3924-810f-c04153c831b5
2013-08-12 19:04:32 +00:00
ahe@google.com
bbdcf3ac01
Increase expectedMethodCount to account for new methods from UnmodifiableMapView.
...
Review URL: https://codereview.chromium.org//22894002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@26013 260f80e4-7a28-3924-810f-c04153c831b5
2013-08-12 17:40:34 +00:00
aprelev@gmail.com
3064d92f36
Ignore unused classes when constructing set for deferred loading.
...
BUG=dartbug.com/11740
R=ahe@google.com
Review URL: https://codereview.chromium.org//22067002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@25959 260f80e4-7a28-3924-810f-c04153c831b5
2013-08-09 01:56:05 +00:00
zarah@google.com
dd7d7f5012
Rename MirrorSystem.getName calls in dart2dart.
...
R=ahe@google.com
Review URL: https://codereview.chromium.org//21339002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@25924 260f80e4-7a28-3924-810f-c04153c831b5
2013-08-08 12:59:38 +00:00
ahe@google.com
47b20961c2
Retain fewer names for reflection.
...
R=johnniwinther@google.com , karlklose@google.com
Review URL: https://codereview.chromium.org//22301009
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@25878 260f80e4-7a28-3924-810f-c04153c831b5
2013-08-07 15:44:36 +00:00
ahe@google.com
c456a4e90b
Retain elements a finer granularity than library.
...
BUG=http://dartbug.com/11524
R=johnniwinther@google.com , nweiz@google.com
Review URL: https://codereview.chromium.org//21242002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@25873 260f80e4-7a28-3924-810f-c04153c831b5
2013-08-07 13:40:54 +00:00
johnniwinther@google.com
63f6d5ce6c
Handle int/double case expression types correctly.
...
BUG=http://dartbug.com/11536
R=ahe@google.com
Review URL: https://codereview.chromium.org//21292003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@25864 260f80e4-7a28-3924-810f-c04153c831b5
2013-08-07 09:14:33 +00:00
johnniwinther@google.com
1a2f104eaa
Remove support for remaining deprecated features.
...
BUG=
R=ahe@google.com
Review URL: https://codereview.chromium.org//21540002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@25858 260f80e4-7a28-3924-810f-c04153c831b5
2013-08-07 06:58:25 +00:00
johnniwinther@google.com
79274687c3
Remove support for getters with parameters.
...
BUG=
R=ahe@google.com
Review URL: https://codereview.chromium.org//21013004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@25857 260f80e4-7a28-3924-810f-c04153c831b5
2013-08-07 06:35:47 +00:00
johnniwinther@google.com
1319ddbac5
Remove support for missing part-of tag.
...
BUG=
R=ahe@google.com
Review URL: https://codereview.chromium.org//21074002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@25855 260f80e4-7a28-3924-810f-c04153c831b5
2013-08-07 06:02:10 +00:00
kustermann@google.com
cb18d8ba87
Removed compiler/ directory from repository
...
R=ricow@google.com
Review URL: https://codereview.chromium.org//20722006
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@25728 260f80e4-7a28-3924-810f-c04153c831b5
2013-08-02 08:31:15 +00:00
ahe@google.com
c63bb3c1ce
Implement MirrorUsed.targets for libraries.
...
Caveat: non-library targets are "replaced" by their library.
R=johnniwinther@google.com
Review URL: https://codereview.chromium.org//21110003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@25611 260f80e4-7a28-3924-810f-c04153c831b5
2013-07-30 12:07:09 +00:00
johnniwinther@google.com
dedc8aa0b4
Remove support for script tags.
...
BUG=
R=ahe@google.com
Review URL: https://codereview.chromium.org//20994004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@25606 260f80e4-7a28-3924-810f-c04153c831b5
2013-07-30 06:11:06 +00:00
johnniwinther@google.com
62c042d679
Support new malformed types semantics.
...
BUG=http://dartbug.com/8325,http://dartbug.com/9056
R=karlklose@google.com
Review URL: https://codereview.chromium.org//19097003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@25553 260f80e4-7a28-3924-810f-c04153c831b5
2013-07-29 10:19:58 +00:00
ahe@google.com
6b5691052c
Clean up error handling.
...
BUG=http://dartbug.com/12039
R=kustermann@google.com
Review URL: https://codereview.chromium.org//20742002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@25546 260f80e4-7a28-3924-810f-c04153c831b5
2013-07-28 09:07:07 +00:00
sra@google.com
a3663cc09a
Code review changes for r25379
...
Review URL: https://codereview.chromium.org//20509002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@25506 260f80e4-7a28-3924-810f-c04153c831b5
2013-07-25 22:09:05 +00:00
ngeoffray@google.com
9b964af467
Small inferrer improvments, and one refactoring in the inferrer.
...
- Make the try/catch handling put a phi at the end of the try block.
- Add a [InferrerEngine.addReturnTypeFor] to allow different implementations.
R=ahe@google.com
Review URL: https://codereview.chromium.org//20052002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@25406 260f80e4-7a28-3924-810f-c04153c831b5
2013-07-24 11:09:55 +00:00
sra@google.com
2173e09981
Add dartExperimentalFixupGetTag for polymer experiments.
...
If global JavaScript name dartExperimentalFixupGetTag is a function,
it is used to generate a 'hooked' version of the code that inspects an
object to discover the native class dispatch tag.
R=sigmund@google.com
Review URL: https://codereview.chromium.org//19533006
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@25379 260f80e4-7a28-3924-810f-c04153c831b5
2013-07-23 22:57:02 +00:00
ngeoffray@google.com
04d1990761
Cleanup in the type inferrer.
...
- Simplify inferencing of boxed variables. They are now inferred the same way as fields.
- Move the code to handle field initialization into its own class.
- Only track field initializations in generative constructors.
R=ahe@google.com
Review URL: https://codereview.chromium.org//19784005
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@25338 260f80e4-7a28-3924-810f-c04153c831b5
2013-07-23 10:59:20 +00:00
ahe@google.com
c17ca9d9b3
Implement top-level accessors.
...
Also, implement top-level fields in minified mode.
R=ngeoffray@google.com
Review URL: https://codereview.chromium.org//19676002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@25276 260f80e4-7a28-3924-810f-c04153c831b5
2013-07-22 14:52:39 +00:00
ahe@google.com
f3fd7eea2a
Fix some bugs regarding native fields.
...
BUG=http://dartbug.com/11894 , http://dartbug.com/11525
R=ngeoffray@google.com
Review URL: https://codereview.chromium.org//19693011
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@25272 260f80e4-7a28-3924-810f-c04153c831b5
2013-07-22 12:31:19 +00:00
ahe@google.com
e85e0ff11b
Improve decoding of JS TypeError.
...
R=kasperl@google.com , ngeoffray@google.com , sra@google.com
Review URL: https://codereview.chromium.org/11973018
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@25262 260f80e4-7a28-3924-810f-c04153c831b5
2013-07-22 10:47:29 +00:00
polux@google.com
a78aeef84a
Capture and handle properly every call to JSArray that read or writes elements via a native call
...
R=karlklose@google.com
Review URL: https://codereview.chromium.org//18429011
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@25215 260f80e4-7a28-3924-810f-c04153c831b5
2013-07-19 13:56:35 +00:00
polux@google.com
3af8457bb1
Handle do-while
...
R=karlklose@google.com
Review URL: https://codereview.chromium.org//18034027
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@25212 260f80e4-7a28-3924-810f-c04153c831b5
2013-07-19 13:13:43 +00:00
polux@google.com
0958316177
Account for boolean operators shortcircuiting behavior
...
R=karlklose@google.com
Review URL: https://codereview.chromium.org//18461006
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@25211 260f80e4-7a28-3924-810f-c04153c831b5
2013-07-19 13:08:25 +00:00