John Messerly
ff1b78ca42
fix a few more codegen issues:
...
* don't generate script tag
* handle U+2028 and U+2029
* handle name conflict with constructor
R=vsm@google.com
Review URL: https://codereview.chromium.org/1347453002 .
2015-09-14 17:06:28 -07:00
Olivier Chafik
58f1ca9259
Qualified exports and inheritance for Closure (fixes core.Object issue)
2015-09-14 14:07:02 +01:00
John Messerly
637c2c83de
fixes #314 , super method tear offs
...
R=leafp@google.com
Review URL: https://codereview.chromium.org/1310513013 .
2015-09-10 17:18:21 -07:00
John Messerly
dc560e572c
fix readability regressions from previous block-scope CL
...
also reverts the simple incremental compile code, it wasn't aware of our own compiler's version.
also fixes a warning from analyzer
R=leafp@google.com
Review URL: https://codereview.chromium.org/1305413006 .
2015-09-09 15:52:17 -07:00
John Messerly
99bdee4f8d
fix implicit_scope_test and builtin_identifier_test
...
these were generating invalid JS code
R=vsm@google.com
Review URL: https://codereview.chromium.org/1328303002 .
2015-09-08 16:56:50 -07:00
John Messerly
7263daed54
fix dynamic type literal
...
it doesn't have a library
R=leafp@google.com
Review URL: https://codereview.chromium.org/1310943005 .
2015-09-04 15:57:32 -07:00
John Messerly
badedeaf16
fix cascade on ThisExpression
...
R=leafp@google.com
Review URL: https://codereview.chromium.org/1309383003 .
2015-09-04 15:28:38 -07:00
Vijay Menon
2ef54c946b
Fixes for Angular
...
R=leafp@google.com
Review URL: https://codereview.chromium.org/1324693004 .
2015-09-02 13:39:53 -07:00
Vijay Menon
33ad4d9600
Reformat
...
Olivier: running presubmit locally (for me) reformats a few files. May be a pub upgrade issue to get on the latest formatter.
TBR=ochafik@google.com
Review URL: https://codereview.chromium.org/1322673004 .
2015-09-02 12:53:05 -07:00
Olivier Chafik
8ebe4c8a09
Merge pull request #286 from dart-lang/closure-annotations
...
Output Closure annotations when --closure (very experimental feature)
2015-09-02 18:34:54 +01:00
John Messerly
798076dbc8
make build_sdk more incremental
...
saves about 3s off a typical rebuild where nothing changed
R=vsm@google.com
Review URL: https://codereview.chromium.org/1327573002 .
2015-09-02 08:43:00 -07:00
Vijay Menon
b0abb3b302
Some preliminary support for quasi-generics
...
This just expands John's earlier hack on min/max. No downward
inference, etc, but it captures some simple cases. Worthwhile?
Testing whether this makes much of a difference on our larger code bases.
R=jmesserly@google.com , leafp@google.com
Review URL: https://codereview.chromium.org/1317933005 .
2015-08-31 09:56:41 -07:00
John Messerly
9c832d6a6b
makes tests faster, see #304
...
this doesn't completely address the issue, but it knocks off some of the time.
also attempt to stabilize error message order.
R=vsm@google.com
Review URL: https://codereview.chromium.org/1321103002 .
2015-08-28 10:14:16 -07:00
Olivier Chafik
08174babac
Update flags for iojs: --harmony_generators needed by async, --harmony_modules useless for now.
2015-08-27 16:34:26 +01:00
Olivier Chafik
59cf5dd893
Output some basic type annotations for the Closure Compiler when --closure is set.
2015-08-27 16:30:20 +01:00
Vijay Menon
604b199ed3
Make implicit casts hints
...
This appears to cut out about 1/3 of the strong mode errors reported
in angular2. The actual cases removed that I looked at seem fine - e.g., we may inject an implicit cast, but it'll work fine at runtime.
Fixes #302
R=leafp@google.com
Review URL: https://codereview.chromium.org/1310053005 .
2015-08-26 15:01:59 -07:00
John Messerly
74c760066b
implement null aware ops, fixes #249
...
this also implements multitest support, which fixes #280
Fixes some other preexisting bugs:
* MetaLets did not simplify themselves correctly in some nested cases
* Library prefixed identifiers did not work as lvalues in opassign
* dsetindex/dput/[]= methods did not return a value
* checker did not correctly handle invalid constructor field initializers
* cascades did not correctly work with method invocations(?)
* postfix ++/-- did not correctly generate lvalues in some cases
The good news: because this reuses on our existing lvalue/metalet helpers, it managed to flush out a lot of bugs in other features that use them.
R=vsm@google.com
Review URL: https://codereview.chromium.org/1316723003 .
2015-08-25 15:13:18 -07:00
Vijay Menon
50eb282f87
Infer parameter types on overrides
...
Fixes #105
This overlaps with brian's recent CL moving override inference logic. If this looks good, we'll need to move it over as well.
R=brianwilkerson@google.com , leafp@google.com
Review URL: https://codereview.chromium.org/1311863005 .
2015-08-25 10:45:08 -07:00
Vijay Menon
242511dab7
Fixes #287 and other failures statically checking SDK tests
...
This adds some defensiveness to override checking and other checks.
It fixes all known crashers running dartanalyzer in strong mode on language, co19, etc.
R=leafp@google.com
Review URL: https://codereview.chromium.org/1303913003 .
2015-08-21 13:15:36 -07:00
John Messerly
e420033f7c
sort errors so they appear in stable order
...
should be the same order analyzer_cli uses
R=vsm@google.com
Review URL: https://codereview.chromium.org/1299993004 .
2015-08-20 08:59:48 -07:00
Vijay Menon
669d105602
Repurposed this CL: Fix cast error in test
...
Introduced a private-ish JSObject type.
R=jmesserly@google.com
Review URL: https://codereview.chromium.org/1291623005 .
2015-08-20 06:31:44 -07:00
Leaf Petersen
8d36859187
Attach type info to extension method and object method tear-offs
...
Fixes #189 .
BUG=
R=jmesserly@google.com
Review URL: https://codereview.chromium.org/1293293002 .
2015-08-19 10:01:12 -07:00
Vijay Menon
8f9c38b128
Enable is and as checks on non-ground types
...
Failures generate a StrongModeError. Fixes #236 . Partially addresses #238 .
Some issues to do:
- We're too eager to throw a StrongModeError. E.g., <int>[] is List<String> will throw.
- We don't differentiate between implicit and explicit casts.
R=leafp@google.com
Review URL: https://codereview.chromium.org/1298893003 .
2015-08-19 06:15:04 -07:00
Vijay Menon
d3bc427f66
Cleanup InferableOverride
...
We don't use this anymore.
R=leafp@google.com
Review URL: https://codereview.chromium.org/1296723002 .
2015-08-14 16:09:20 -07:00
Vijay Menon
c0100939c2
Implement more of dart:mirrors
...
This unblocks angular.
See #199
R=jmesserly@google.com
Review URL: https://codereview.chromium.org/1252953003 .
2015-08-07 12:40:34 -07:00
John Messerly
c6a6488cd2
add special case for min/max, fixes #281
...
R=leafp@google.com
Review URL: https://codereview.chromium.org/1253903004 .
2015-08-05 11:08:15 -07:00
John Messerly
cbe23ee268
implement exports, fixes #141
...
R=vsm@google.com
Review URL: https://codereview.chromium.org/1263583005 .
2015-08-04 17:23:13 -07:00
John Messerly
2535238ee8
fixes #276 , path manipulation issues on windows. Also fixes server mode
...
R=leafp@google.com
Review URL: https://codereview.chromium.org/1270993002 .
2015-08-04 16:34:53 -07:00
John Messerly
b393e12c6b
fixes #197 , don't generate casts that always pass
...
R=vsm@google.com
Review URL: https://codereview.chromium.org/1261783005 .
2015-08-04 15:42:13 -07:00
John Messerly
c5f4228119
format with dart_style 0.2.0
...
R=vsm@google.com
Review URL: https://codereview.chromium.org/1268813003 .
2015-07-31 09:28:05 -07:00
John Messerly
922a4ba728
use some null aware ops
...
it looks like we can start using these now
R=leafp@google.com
Review URL: https://codereview.chromium.org/1253143003 .
2015-07-29 10:51:31 -07:00
Olivier Chafik
8426fa9e17
Added bin/devrun.dart, which runs DDC's output with iojs or d8 (issue #225 )
2015-07-29 14:17:56 +01:00
John Messerly
49d101c1c4
format with dart_style 0.2.0-rc.3
...
this unblocks null aware ops
R=vsm@google.com
Review URL: https://codereview.chromium.org/1266483003 .
2015-07-28 18:19:55 -07:00
John Messerly
9137a4538c
fixes #221 , initial sync*, async, async* implementation
...
also fixes #270
R=vsm@google.com
Review URL: https://codereview.chromium.org/1243503007 .
2015-07-28 16:52:23 -07:00
John Messerly
486f8dc70e
restore arrow function bind this workaround
...
to help out https://github.com/dart-lang/dev_compiler/pull/266
it seems io.js is using a V8 build from right before this was fixed
R=vsm@google.com
Review URL: https://codereview.chromium.org/1263593003 .
2015-07-28 14:51:31 -07:00
John Messerly
cc47aa0ce0
update analyzer and dart_style
...
R=vsm@google.com
Review URL: https://codereview.chromium.org/1258663002 .
2015-07-27 09:36:56 -07:00
John Messerly
8f6761dd4a
add test related to #264 and #228
...
R=vsm@google.com
Review URL: https://codereview.chromium.org/1252773002 .
2015-07-23 10:03:45 -07:00
John Messerly
3996aaf3d4
fix for bin/devc relative path
...
R=vsm@google.com
Review URL: https://codereview.chromium.org/1243693002 .
2015-07-23 09:55:21 -07:00
John Messerly
c56eec5708
fixes dart.throw to work for non-objects
...
language tests use this, for example
R=vsm@google.com
Review URL: https://codereview.chromium.org/1245023004 .
2015-07-23 09:34:41 -07:00
John Messerly
bbf292018a
allow await to be any value, fixes part of #264
...
Review URL: https://codereview.chromium.org/1248213002 .
2015-07-22 16:06:31 -07:00
John Messerly
26528756bd
some fixes for --strong warnings
...
I didn't go all the way, in case we want to change some of these. Thoughts?
R=leafp@google.com
Review URL: https://codereview.chromium.org/1245013002 .
2015-07-22 15:37:55 -07:00
John Messerly
7252228557
fix truncate call to use extension method
...
R=vsm@google.com
Review URL: https://codereview.chromium.org/1249043006 .
2015-07-22 14:52:40 -07:00
John Messerly
394836eaa2
fixes #259 , clone ast before mutation
...
R=vsm@google.com
Review URL: https://codereview.chromium.org/1245013005 .
2015-07-21 15:36:55 -07:00
Vijay Menon
9fe41d1202
Fix server mode
...
TBR=jmesserly@google.com
Review URL: https://codereview.chromium.org/1235293004 .
2015-07-17 21:21:18 -07:00
John Messerly
60aba749ca
fixes #219 , able to compile multiple entry points
...
also speeds up codegen_test by reusing the analysis context
BatchCompiler is pretty close to how analyzer_cli works now (other than missing features)
R=vsm@google.com
Review URL: https://codereview.chromium.org/1235503010 .
2015-07-16 17:41:33 -07:00
Vijay Menon
ebe7d54efd
Use standard harmony flag
...
This fixes current breakage with Chrome 46.
R=jmesserly@google.com
Review URL: https://codereview.chromium.org/1235393004 .
2015-07-16 09:33:10 -07:00
John Messerly
c4267e5d35
analyzer fixes
...
found these in the "dart analysis" tool window
(after excluding test files and such)
R=vsm@google.com
Review URL: https://codereview.chromium.org/1239803005 .
2015-07-15 10:00:20 -07:00
John Messerly
b1e92bfcaf
simplify computing of runtime file location
...
R=vsm@google.com
Review URL: https://codereview.chromium.org/1223113005 .
2015-07-15 09:58:26 -07:00
Vijay Menon
f50661aac4
Add support for Enums
...
Fixes #248
R=jmesserly@google.com
Review URL: https://codereview.chromium.org/1224083017 .
2015-07-14 17:48:38 -07:00
Vijay Menon
8ccef442a3
Fixes #254 - Better stacktrace support
...
R=jmesserly@google.com
Review URL: https://codereview.chromium.org/1233553005
2015-07-14 13:33:01 -07:00