Commit Graph

79322 Commits

Author SHA1 Message Date
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
regis@google.com 777625235f Support qualified factory names (fix issue 514).
Review URL: http://codereview.chromium.org//8804019

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2085 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-05 19:22:27 +00:00
sra@google.com e493abe738 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

BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2083 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-05 19:03:16 +00:00
iposva@google.com 7dc624930d - Add the include directory to the include directories of code
depending on libdart.
Review URL: http://codereview.chromium.org//8806018

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2082 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-05 18:59:43 +00:00
dgrove@google.com 7bde487aac Add runtime's dart:builtin to SDK.
Review URL: http://codereview.chromium.org//8805012

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2081 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-05 18:28:35 +00:00
turnidge@google.com 1abf65b434 Add Dart_IsExternalString and Dart_ExternalStringGetPeer to the dart
embedding api.
Review URL: http://codereview.chromium.org//8775039

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2080 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-05 17:55:01 +00:00
mmendez@google.com 7500c61126 64 bit JVMs need a higher heap now.
TBR=fabiomfv

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2078 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-05 16:43:15 +00:00
mmendez@google.com 734ac5a5a4 JS tree shaking for incremental builds.
This patch does two things:
1) Introduces the infrastructure that is needed by dart-level tree shaking so that it can properly deal with native JS code and thereby prune both dart and JS code.
2) Leverages the infrastructure above to enable JS-level tree shaking of the output of incremental builds by default.  Non-incremental builds are not impacted and neither are libraries without entry points.

Prior to this patch an empty application compiled to 558,508 bytes, but with it the size is reduced to 103,679 bytes.  It is important to note that the large lower bound is driven by the dependency chain introduced by isolate$processWorkerMessage in corelib/implementation/isolate.js.

For applications like total the savings are much bigger.  Prior to this patch Total compiled to 12,151,122 bytes, but with it the size is reduced to 3,758,174.  For an app the size of total this additional tree shaking takes about 2 seconds.

Once this patch lands the plan is to thread it into the pending dart-level tree shaking work if needed.  This second arc of work will allow us to further compress the output during non-incremental builds by eliding RTT, native JS code, dart methods exposed to native JS code and do dead code elimination.

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2077 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-05 16:12:08 +00:00
ager@google.com 379d80c2a7 t cl dcommit# Enter a description of the change.
Add test_config.dart for client dartc tests.

R=floitsch@google.com
BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2074 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-05 15:56:13 +00:00
ager@google.com 2713ef1ca0 Make tools/test-runtime.dart executable.
R=sgjesse@google.com
BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2073 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-05 15:00:16 +00:00
mmendez@google.com 19270d9547 Fixes OOME for tests/co19/src/LibTest/core/List/sort/List_sort_A01_t06.dart
When tree shaking is enabled we need a little more memory to prevent OOMEs on tests/co19/src/LibTest/core/List/sort/List_sort_A01_t06.dart.

BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2071 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-05 14:16:47 +00:00
zundel@google.com 5a73e63df8 Add #library directive to generate-stubs templates
Now the checked in version should match what is generated
when running --component dartc tests

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2070 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-05 13:55:45 +00:00
ahe@google.com f0ea6ebcf4 Various scanner fixes:
* tokenize string interpolation

* handle 1.toString() and 2.dynamic better

* don't group <> across semicolon

* tokenize keywords that is a prefix of another keyword.

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2068 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-05 13:45:48 +00:00
ager@google.com 456d63c6ab Add support for client/dartc compilation only tests.
These tests do not fit in that nicely. They have an interesting
way of finding out what are test cases. They use the .dart
suffix in the status file.

Implement directory createTempSync.

R=whesse@google.com
BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2067 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-05 13:34:12 +00:00
ager@google.com 17d97944a1 Do not show percentages when we don't know what they are in test progress indication.
Print the --report output as soon as we can.

R=whesse@google.com
BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2064 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-05 08:04:57 +00:00
mmendez@google.com 0a54d3b612 Revert r2061.
r2061 caused a OOME in one of the co19 tests in debug mode for dartc and caused one of the dart editor tests to fail.  Rolling back while I take a look.

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2062 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-05 03:30:08 +00:00
mmendez@google.com 01999e7f7d Patched change from bad branch.
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2061 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-05 03:13:01 +00:00
mmendez@google.com 5e54419eb9 Revert r2058 - incomplete commit.
TBR=codefu,fabiomfv,zundel

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2060 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-05 02:50:42 +00:00
mmendez@google.com 6456939045 I run the JS treeshaking and pass the complete file size.
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2058 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-05 02:43:43 +00:00
sra@google.com 5008a20945 Fix CanvasPixelArray's operator[] for the wrapping js dom
The item() indexing accessor went away, so implement Dart indexing on
top of JS indexing.

BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2055 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-03 09:02:37 +00:00
sra@google.com 4a7fece9e9 Generate callbacks as typedefs.
IDL interfaces with the Callback extended attribute are emitted as
typedefs instead of interfaces or classes.  This brings the JS doms
into line with the Dartium version.

BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2054 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-03 06:08:32 +00:00
iposva@google.com a9a5759f30 - Add free list to be used for sweep phase of mark-sweep collector.
Review URL: http://codereview.chromium.org//8787012

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2053 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-03 05:39:26 +00:00
sra@google.com 33c8cecafd Turn on webaudio for JS backends.
There was a comment to fix the idl/parser but it no longer seems to be
a problem.

BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2052 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-03 03:20:40 +00:00
sigmund@google.com c1d1e3e6dd Check constness of default args
BUG= http://code.google.com/p/dart/issues/detail?id=635

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2051 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-03 02:29:52 +00:00
jmesserly@google.com a00c2af2ea Fix "extends" checks. Move them out of resolve phase and do them on demand.
We now do the check when we first notice a type is used. This gets us back to a state where we don't depend on the order that resolve() happens. (this order varies on VM vs node.js)

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2050 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-03 02:24:40 +00:00
sra@google.com 79ad37eb5f Generate JS code to characterize browsers.
The generated html can be run in several browsers to gather data to
determine the common set of DOM objects with constructors in the
global namespace.

BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2049 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-03 02:22:37 +00:00
rnystrom@google.com f02660f3a0 Link to factory class if an interface has one.
Review URL: http://codereview.chromium.org//8763016

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2048 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-03 01:43:41 +00:00
efortuna@google.com a3ac094f6e Tweaking perf testing script and adding smoketests to run on buildbot.
Review URL: http://codereview.chromium.org//8775058

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2046 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-03 01:34:13 +00:00
dgrove@google.com 332f6c640b Skip building SDK in Debug mode.
Review URL: http://codereview.chromium.org//8784007

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2045 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-03 01:07:49 +00:00
dgrove@google.com 88e6204578 Move JSON to its own lib directory in sdk.
Review URL: http://codereview.chromium.org//8786009

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2044 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-03 00:29:18 +00:00
jmesserly@google.com ca64ec8bf6 Fixing factories.
Review URL: http://codereview.chromium.org//8788004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2043 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-02 23:58:35 +00:00
dgrove@google.com 35ed89198b Build the sdk in PRODUCT_DIR.
Review URL: http://codereview.chromium.org//8784005

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2042 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-02 23:56:16 +00:00
dgrove@google.com 502ab12afe Fix linux build break.
TBR=sigmund

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2041 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-02 23:28:13 +00:00
dgrove@google.com d83560fb0d Initial CL to create SDK directory (this will be done via the usual gyp and tools/build.py process).
Proposed top-level structure:
..sdk/
....bin/
......dart or dart.exe (executable)
......frogc.dart
......frogsh (coming later)
....lib/
......core/
........core_{compiler, frog, runtime}.dart
........{compiler, frog, runtime}/ 
......coreimpl/
........coreimpl_{compiler, frog, runtime}.dart
........{compiler, frog, runtime}/ 
......dom/
........dom.dart
......frog/
......html/ 
........html.dart
......htmlimpl/ 
........htmlimpl.dart
......(more will come here - io, etc)
....tools/
......dartdoc/
......(more will come here)
Review URL: http://codereview.chromium.org//8619005

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2040 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-02 23:20:35 +00:00
zundel@google.com 7e210b682a Trying to unbreak dart editor build - new use of rollback messes up code completion
Review URL: http://codereview.chromium.org//8788001

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2038 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-02 22:18:17 +00:00
mmendez@google.com 98f6bb8259 More memory for tests...
Until we can do something about http://code.google.com/p/dart/issues/detail?id=670.

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2033 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-02 21:17:11 +00:00
rnystrom@google.com cafe727361 Create separate HTML pages for each type.
This also writes everything to an index.html inside an appropriate
directory. This keeps the URLs nice and pretty like: core_lib/String.
The downside is that you'll need to run a little local web server
to get them to be served up right instead of just opening them as
files in your browser.

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2031 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-02 19:41:08 +00:00
brianwilkerson@google.com d8d90a89de Add support for ignoring a string after the native keyword in a method, needed for compatability with frog
Review URL: http://codereview.chromium.org//8769023

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2029 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-02 18:55:49 +00:00
ngeoffray@google.com e00d4fbb1f Start resolving classes and default constructors.
Review URL: http://codereview.chromium.org//8769012

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2026 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-02 15:43:10 +00:00
ager@google.com 9c8fa42417 Add color indication to progress.
R=sgjesse@google.com
BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2025 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-02 15:22:48 +00:00
zundel@google.com f8c0479aaf Parse method names that include type variables.
As a first step to allow factory methods to specify type variables, this
allows the parser to accept statements similar to the form:

  class A {
    factory B<T>.create() { }
  }

http://code.google.com/p/dart/issues/detail?id=417

Committed: https://code.google.com/p/dart/source/detail?r=2004

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2024 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-02 14:50:10 +00:00
sgjesse@google.com a9fecab434 Fix performance of readLine
Using getRange to chop off the front of the list of char codes for
each line read was to slow. Use an offset into the list instead and
throw away the list when all char codes have been read.

R=ager@google.com

BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2023 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-02 14:38:46 +00:00
ager@google.com e90eb35c57 Fix multitest failure/pass marking.
Only dynamic type error tests should be marked as negative in
checked mode.

R=whesse@google.com
BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2022 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-02 14:33:19 +00:00
whesse@google.com df0f131782 Fix standalone/FileTest
BUG=dart:657
TEST=standalone/FileTest

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2020 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-02 13:57:23 +00:00
ager@google.com e2a6cd4eab Make multi tests work with DartC.
The static type error annotations
are in the multi-tests so that dartc can verify with the
--fatal-type-errors flag that they are correctly caugth.

Enqueue all tests from one configuration before moving on to the next to not start an overwhelming amount of directory listers.

Simplify the setup of dartc batch runners. Simply restart
with the right binary if there is a mismatch. With the new enqueueing switching happens at the right time and we can have as many dartc batch processors as we have cores.

R=whesse@google.com
BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2018 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-02 13:46:28 +00:00
whesse@google.com 71e98e9d4a tools/test.dart: Add summary report of the number of tests with each expectation.
BUG=
TEST=tools/test.dart --report

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2017 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-02 13:29:26 +00:00
sgjesse@google.com 775438288d Add line handler to string stream
This adds the line handler to the string stream to provide callbacks
when a line is known to be available.

This change also refactors parts of the string stream to avoid
converting decoded char codes to a string before checking for line
break sequences. With this change the string decoder tracks all line
breaks.

There is still room for improvement as e.g. the coping of the list of
char codes when reading lines can be avoided by using anoher offset.

R=ager@google.com

BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2016 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-02 11:59:02 +00:00
ager@google.com 3bf558018e Allow single-dash options to be specified without a space before value.
./tools/test.dart -mdebug,release

Make the patterns given to the test script more restrictive. A pattern
has to specify the test suite as the first component. The rest is used
as a pattern on all tests within that suite:

./tools/test.dart -mrelease leg co19/leg

will run the leg tests and the co19 tests that contains the substring
'leg' somewhere in the full path name of the test.

R=whesse@google.com
BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2014 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-02 11:50:05 +00:00
sra@google.com 7954dd7d6d Fix for Issue 622
Inhibit parsing a lambda expression only at the top level of an initializer.

Parse parenthesized expression explicitly to give better errors on
malformed expressions:
  * No longer blindly accept "(x: a)" as (a).
  * In "(a, b)" complain about comma at the comma rather than the close paren.

BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2012 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-02 09:11:36 +00:00
sra@google.com 7e8f214df6 Many operations are specified as [Custom] with no argument list.
Add supplementary IDL to allow operations to be used.

The longer-term fix is for correct IDL to be upstreamed.

Unblocks Issue 122 for forg/dartc.

BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2011 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-02 05:48:44 +00:00