Commit Graph

2256 Commits

Author SHA1 Message Date
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
Vijay Menon 136396c107 Regen js_test.txt
I'm seeing this diff locally on presubmit.

R=jmesserly@google.com

Review URL: https://codereview.chromium.org/1300203002 .
2015-08-19 13:09:37 -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
John Messerly 38065257a2 fixes #292, report async_helper test failures
R=vsm@google.com

Review URL: https://codereview.chromium.org/1289673007 .
2015-08-19 08:35:41 -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 ae53ea3f15 fix testChecker to include test inside
R=leafp@google.com, rnystrom@google.com

Review URL: https://codereview.chromium.org/1273343002 .
2015-08-07 09:59:53 -07:00
Vijay Menon 3fcc78e070 Suppress console logs when testing locally
See #278 - not really a fix though.

R=jmesserly@google.com

Review URL: https://codereview.chromium.org/1275053003 .
2015-08-06 10:14:12 -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 8422d7ab48 fix language_tests.js to use strict mode
we weren't running a bunch of tests on the bots :|
amazingly, none were broken yet
this also fixes karma.conf log level, and disables some spammy prints from one of the tests

R=vsm@google.com

Review URL: https://codereview.chromium.org/1257233008 .
2015-08-03 14:08:28 -07:00
John Messerly 98c5c659d9 Update pubspec.yaml 2015-08-03 08:27:40 -07:00
Olivier Chafik 569f8de91e Make pub_semver a normal dep (issue #275) 2015-08-03 06:27:07 -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 cd1fbf5659 release 0.1.5 that includes dartdevrun 2015-07-31 08:31:54 -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
vsmenon 05c2e9e77c Update STRONG_MODE.md 2015-07-28 18:53:33 -07: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 30421b44f3 Update pubspec.yaml
release a new version to fix #273
2015-07-28 17:40:59 -07:00
John Messerly 63054e093e add analysis options
R=leafp@google.com

Review URL: https://codereview.chromium.org/1264533002 .
2015-07-28 17:28:52 -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
Leaf Petersen c27685968a Static semantics v0.1. This now contains a fairly complete version of the static semantics for a core language, along with a translation into the same core language extended with a few small primitives. The insertion of covariance type checks is handled. Per Siggi's suggestion, I've moved the extended core language primitives into the elaboration section. The main changes from the last checkin are the treatment of classes, class hierarchies, override checking, etc. I've added some text to explain the general idea of what's going on.
I've gone ahead an uploaded a pdf version to the site.dev_compiler repository that matches the version in this CL.

BUG=
R=vsm@google.com

Review URL: https://codereview.chromium.org/1253143002.
2015-07-28 15:29:14 -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 8aa0f1c695 fix code coverage to work on dev channel
R=vsm@google.com

Review URL: https://codereview.chromium.org/1236493003 .
2015-07-22 14:50:23 -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
Leaf Petersen b561f0c284 Core static semantics checkpoint. First take on a core static semantics. Class typing is not done, but all of the core language is pretty well fleshed out. Fuzzy arrow types are handled, downwards inference on function types is modeled, and local variable type inference is modeled. Field lookup has not been specified yet.
I've split out the elaboration of the input syntax into the final program with runtime checks and suppressed that from the output for now.

BUG=
R=vsm@google.com

Review URL: https://codereview.chromium.org/1236443002.
2015-07-15 15:52:39 -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
John Messerly edf237c202 fix coverage of sdk build
R=vsm@google.com

Review URL: https://codereview.chromium.org/1223103003.
2015-07-14 17:05:42 -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
John Messerly bc4e0f2a38 fixes #6, refactor to use AnalysisError/Listener throughout dev_compiler
Main goal here was to get rid of the enter/exit compilation unit tracking, to allow further Compiler/Server refactoring. We can get the Uri/LineInfo/contents off Source, which AnalysisError already has
SummaryReporter is now fairly generic.

TODOs for the future:
* figure out what to do about ErrorCodes, in particular dev_compiler prefix feels off.
* skip the intermediate StaticInfo types? They're really just builders now for AnalysisError.
* don't classify all existing messages as "AnalyzerError" ... just print them ...
* skip logger. For our command line program, stdout is part of its "API", IMO it shouldn't use logging for those messages. Consider Pub, which uses stdout/err for its messages, and uses logging for more detailed troubleshooting.

R=pquitslund@google.com, vsm@google.com

Review URL: https://codereview.chromium.org/1230903002.
2015-07-10 10:15:08 -07:00
John Messerly b0a1bed3e9 switch travis to only test dev SDK
R=vsm@google.com

Review URL: https://codereview.chromium.org/1223363002.
2015-07-09 10:29:41 -07:00
John Messerly 79b5dd8a44 bump pubspec.yaml for release
R=vsm@google.com

Review URL: https://codereview.chromium.org/1225373002.
2015-07-09 10:21:34 -07:00
John Messerly f17187f3aa fix for 1.12.0-dev SDK and 0.25.1 analyzer breaking changes
unfortunately we can't run on stable anymore

R=vsm@google.com

Review URL: https://codereview.chromium.org/1228063003.
2015-07-09 10:11:32 -07:00