Commit Graph

368 Commits

Author SHA1 Message Date
Jacob Richman 3356f82eb3 Fix crashing bug for closures of the form () { return; }
BUG=
R=jmesserly@google.com, vsm@google.com

Review URL: https://codereview.chromium.org/2484913004 .
2016-11-08 15:14:10 -08:00
Jennifer Messerly 3995146b55 fix #27775, enum declaration where "name" is a property
R=vsm@google.com

Review URL: https://codereview.chromium.org/2488543002 .
2016-11-08 10:18:55 -08:00
Jennifer Messerly ce76fc1fe5 fix #27644, allow "dart" and "dartx" to be renamed if needed
R=vsm@google.com

Review URL: https://codereview.chromium.org/2435223002 .
2016-10-21 11:48:19 -07:00
Jennifer Messerly 95ef8bb59a fix #27643, failed to virtualize fields if an abstract one is mixed in
R=vsm@google.com

Review URL: https://codereview.chromium.org/2441693003 .
2016-10-20 16:31:06 -07:00
Jennifer Messerly cc1ad8cdde fix #27532, implementing a native type with fields
R=vsm@google.com

Review URL: https://codereview.chromium.org/2430953006 .
2016-10-20 15:59:18 -07:00
Bob Nystrom 60a966605d Remove uses of unittest in the HTML tests where possible.
This finishes going through the dev_compiler HTML tests and switches
out unittest for minitest wherever possible.

In the process, it gets another 10 tests strong mode clean, and gets
several more passing, and more not skipped. With this CL, we're running
another 50 more HTML tests (though some are expected to fail, mostly
because of #27578).

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

Review URL: https://codereview.chromium.org/2419863002 .
2016-10-14 13:44:19 -07:00
Bob Nystrom ae5a566f98 Move minitest.dart into the expect package.
R=vsm@google.com

Review URL: https://codereview.chromium.org/2416853003 .
2016-10-13 14:15:21 -07:00
Bob Nystrom 2305865365 Start cleaning up the HTML tests.
My initial goal was just to move some of the HTML tests off unittest,
but that ended up slurping in some other changes as well. I haven't
finished going through all of the tests, but this puts the
infrastructure in place and fixes a batch of them. I'll do more next.

Changes:

- Add a "minitest" package. This shims just enough of the unittest/test
  API to make it easy to swap it out for unittest without having to
  rework the entire test.

- Go through the HTML tests from A-J and change them to use minitest
  when possible. The ones that aren't possible use asynchrony.
  Minitest doesn't support async tests (yet, maybe).

- Triage those tests and enable ones that are passing. Mark them failing
  if failing. Filed a couple of tracking bugs for the common issues,
  but for other cases, I just left a comment.

- In the process of this, I went ahead and make some of the affected
  tests strong mode clean if they weren't already and it was easy.

- Synchronize changes between dev_compiler's fork of expect and
  pkg/expect. We'll want to unfork those at some point. D-:

This gets dev_compiler from 1985 tests to 2042.

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

Review URL: https://codereview.chromium.org/2413073002 .
2016-10-13 08:47:27 -07:00
Bob Nystrom 9b6317d571 Stop using unittest in point_test and rectangle_test.
This also makes rectangle_test strong mode clean. Alas, the test isn't
passing because of another bug, but once that bug is fixed, it should.

R=vsm@google.com

Review URL: https://codereview.chromium.org/2407913002 .
2016-10-10 11:02:37 -07:00
Bob Nystrom b30571884f Use expect instead of unittest for json_lib_test.
One step closer to removing the deprecated unittest.

R=vsm@google.com

Review URL: https://codereview.chromium.org/2402123002 .
2016-10-10 09:42:40 -07:00
nshahan 0132d6114a Fix for the missing new keyword on an external factory call.
Added a test for calling an external factory and updated expected test failures/errors from turning on the tests: js_typed_interop_test

Fixes #27443

R=jacob314@gmail.com, vsm@google.com

Review URL: https://codereview.chromium.org/2394103002 .
2016-10-06 10:24:38 -07:00
John Messerly 1129d3d121 fix #27421, DDC did not generate implicit super calls in some cases
this would happen when there was a chain of implicit super calls, leading to an implicit super with field initializers

R=vsm@google.com

Review URL: https://codereview.chromium.org/2365053003 .
2016-09-23 17:06:10 -07:00
John Messerly 361cd4c61c fix #27408, reverts "ignore dynamic in inference"
this reverts https://github.com/dart-lang/sdk/commit/8c25a41accf52265a89bcc2ffac3bdb7c271f9fb

R=vsm@google.com

Review URL: https://codereview.chromium.org/2360973004 .
2016-09-23 17:01:33 -07:00
Vijay Menon a22b3b6205 Runtime fixes on DDC tests
TBR=jmesserly@google.com

Review URL: https://codereview.chromium.org/2354383003 .
2016-09-21 16:12:30 -07:00
Vijay Menon 8e943b8c59 Fix tests
This fixed the original 5 static errors from this morning.

TBR=jmesserly@google.com

Review URL: https://codereview.chromium.org/2356413002 .
2016-09-21 13:59:55 -07:00
John Messerly a4734d4b33 fix #27353, support @checked covariant parameters in DDC
Seems pretty straightforward. Just added a simple test for now.

R=leafp@google.com

Review URL: https://codereview.chromium.org/2340463009 .
2016-09-15 15:42:04 -07:00
John Messerly 1c957d548d fix DDC build: some inference failures are reported now, so we need to update some test type annotations
Review URL: https://codereview.chromium.org/2347493002 .
2016-09-14 17:39:27 -07:00
John Messerly 6d31434983 Have setters use strict -> like methods
R=leafp@google.com

Review URL: https://codereview.chromium.org/2319233002 .
2016-09-07 14:01:14 -07:00
Vijay Menon 9af2fb0115 More DDC mirrors support
(Note, this is a straight migration of the old DDC repo CL. :-))

R=jmesserly@google.com

Review URL: https://codereview.chromium.org/2301973002 .
2016-09-01 10:13:31 -07:00
John Messerly ade24133a1 remove unused DDC status files
TBR=vsm@google.com

Review URL: https://codereview.chromium.org/2298933004 .
2016-08-31 18:32:00 -07:00
John Messerly c1139934a7 fix #626, add AMD module format and make it default
R=nweiz@google.com, vsm@google.com

Review URL: https://codereview.chromium.org/2249233002 .
2016-08-25 09:39:36 -07:00
Jacob Richman 87577db2b2 Add dart:js_util library and tests to ddc. This library is already added to dart2js and dartium.
BUG=
R=jmesserly@google.com

Review URL: https://codereview.chromium.org/2269963005 .
2016-08-24 09:13:06 -07:00
Vijay Menon 124e71473a Add mirrors tests
Doh!

TBR=jmesserly@google.com

Review URL: https://codereview.chromium.org/2265533002 .
2016-08-19 08:37:45 -07:00
Vijay Menon 8442efa4d3 Support call methods on functions
Fixes #624

R=jmesserly@google.com

Review URL: https://codereview.chromium.org/2255993002 .
2016-08-18 07:51:17 -07:00
John Messerly a076edad94 roll analyzer
R=vsm@google.com

Review URL: https://codereview.chromium.org/2254883002 .
2016-08-17 21:10:21 -07:00
Vijay Menon 3ddb76b95c Reify type params on map literals
Fixes #621

R=jmesserly@google.com, leafp@google.com

Review URL: https://codereview.chromium.org/2211293002 .
2016-08-05 07:16:02 -07:00
Vijay Menon 0fd3e8821c Fix wrt analyzer tip
This sidesteps #618 for now.

R=jmesserly@google.com

Review URL: https://codereview.chromium.org/2209473002 .
2016-08-02 14:42:06 -07:00
John Messerly e51f9de339 fixes #616, statics on callable functions
also fixes `this` for them

R=vsm@google.com

Review URL: https://codereview.chromium.org/2200913002 .
2016-08-01 17:12:37 -07:00
John Messerly 344124e4a1 fix optional params to mock methods, allow all signatures
switches to use the same technique as `dsend`

R=vsm@google.com

Review URL: https://codereview.chromium.org/2201973002 .
2016-08-01 16:21:59 -07:00
John Messerly c1e97b495f fix #603, support mock objects
if noSuchMethod is used to implement an abstract member, this will be detected and appropriate code will be generated.

R=leafp@google.com

Review URL: https://codereview.chromium.org/2158173003 .
2016-07-19 13:24:02 -07:00
Leaf Petersen fceb82f49d Fix null aware generic invocation.
Fixes #600

BUG=
R=jacobr@google.com

Review URL: https://codereview.chromium.org/2132763002 .
2016-07-07 13:07:17 -07:00
Andrew Krieger 87bcbf9147 Move type tagging logic out of setSignature
setSignature is only called for classes with constructors or static
members, so previously _runtimeType was only set explicitly on such
classes. Now _runtimeType is not set on any classes except for Object,
and all other types inherit _runtimeType from Object.

R=jmesserly@google.com

Review URL: https://codereview.chromium.org/2076713002 .
2016-06-27 15:29:15 -07:00
John Messerly d27eda4ffc implement user-defined nSM, Object members on functions
fix #591 and fix #59

R=vsm@google.com

Review URL: https://codereview.chromium.org/2061373003 .
2016-06-22 17:18:52 -07:00
Stan Manilov 715c845d85 Add a regression test for bug #587
BUG= https://github.com/dart-lang/dev_compiler/issues/587
R=jmesserly@google.com

Review URL: https://codereview.chromium.org/2075493002 .
2016-06-15 16:58:57 -07:00
Leaf Petersen 3e5d1d80e6 Fix function subtyping crash
Fixes #588

BUG=
R=vsm@google.com

Review URL: https://codereview.chromium.org/2069653003 .
2016-06-14 09:55:04 -07:00
Leaf Petersen 59abfdb121 Fix bot, law of the excluded middle still holds
TBR=jacobr@google.com

BUG=

Review URL: https://codereview.chromium.org/2037503002 .
2016-06-01 20:58:44 -07:00
Leaf Petersen 40c7ac9038 Wire up class hierarchy for recursive inheritance
BUG=
R=jacobr@google.com

Review URL: https://codereview.chromium.org/2033543002 .
2016-06-01 19:21:45 -07:00
Leaf Petersen 3e9ed11db6 Name and hoist types
Adds infrastructure for naming and hoisting types in various ways. Makes an initial cut at how to slice the naming, but we will want to adjust.

BUG=
R=jmesserly@google.com

Review URL: https://codereview.chromium.org/1988023008 .
2016-05-25 11:07:38 -07:00
Bob Nystrom 1e5b3af2e0 Move generated files to gen/.
- The generated SDK goes into gen/patched_sdk.
- Expanded multitests go into gen/codegen_tests.
- Compiled tests go into gen/codegen_output.

R=jmesserly@google.com

Review URL: https://codereview.chromium.org/1988503002 .
2016-05-18 13:48:10 -07:00
John Messerly d2b6f53630 fix #470, string interpolation now respects Dart toString
R=sra@google.com

Review URL: https://codereview.chromium.org/1989663002 .
2016-05-17 17:23:57 -07:00
Bob Nystrom d95a368e70 Update dart:collection.
This doesn't include the copious changes in collection_patch.dart
because I believe (1) those are quite old and (2) are dart2js specific.

The changes here have basically no effect on DDC, but it at least gets
us a little better test coverage and reduces noise in the diffs.

R=sra@google.com

Review URL: https://codereview.chromium.org/1977003002 .
2016-05-17 15:39:52 -07:00
John Messerly 0cedeb49af simplify constructors, fixes #564
we still have an init method, for better or worse, to break out of ES6 restrictions

The idea here is default Dart constructor (really an initialization method) is always called `new` instead of the class name. We already do this for unnamed factory.

R=leafp@google.com

Review URL: https://codereview.chromium.org/1965213003 .
2016-05-17 14:36:56 -07:00
Leaf Petersen 59012493cb Eliminate unnecessary covariance checks.
This eliminates the erroneous checks inside of nested closures, and
eliminates checks where the type parameter is only used covariantly.

We still don't handle the cases where a generic is implemented by
a non-generic correctly.

BUG=
R=jmesserly@google.com

Review URL: https://codereview.chromium.org/1988613006 .
2016-05-17 12:21:02 -07:00
John Messerly 1265dc470b fix #569, cache constants defined in methods
R=leafp@google.com, sra@google.com

Review URL: https://codereview.chromium.org/1979013003 .
2016-05-17 11:09:59 -07:00
Stephen Adams 3c44af0a51 Named constants are (usually) not null.
R=vsm@google.com

BUG=

Review URL: https://codereview.chromium.org/1986683002 .
2016-05-17 10:55:14 -07:00
Harry Terkelsen 9458bdf428 enable top-level @JS() getters
BUG=
R=jmesserly@google.com

Review URL: https://codereview.chromium.org/1976383002 .
2016-05-16 09:22:32 -07:00
Bob Nystrom 4a51a187d3 Upgrade to the latest dart:convert.
This fixes html_escape_test as well as codec1_test.

R=vsm@google.com

Review URL: https://codereview.chromium.org/1978963002 .
2016-05-13 16:33:35 -07:00
Harry Terkelsen 382996f41c update dart:math
BUG=
R=rnystrom@google.com

Review URL: https://codereview.chromium.org/1967773005 .
2016-05-12 09:03:11 -07:00
John Messerly 825737dc13 fuse some null checks with type checks, introduce a special bool variant
fixes #536

R=sra@google.com

Review URL: https://codereview.chromium.org/1964263002 .
2016-05-11 11:16:00 -07:00
John Messerly a7f812b676 fix #552, Object members on native types
We initially hard coded a few of these. That worked until native_typed_data and html were added. Those two libraries have a lot of native types.

This also fixes TypeRep to extend dart:core Object, and fixes the dart:_runtime so we can write Dart classes. Cleans up a few of the JS builtins as well.

R=vsm@google.com

Review URL: https://codereview.chromium.org/1962823002 .
2016-05-10 11:35:38 -07:00