Commit Graph

252 Commits

Author SHA1 Message Date
danrubel@google.com 7d2e793cba Update native keyword checking to accommodate frog
Review URL: https://chromiumcodereview.appspot.com//9585003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4969 260f80e4-7a28-3924-810f-c04153c831b5
2012-03-05 18:53:08 +00:00
devoncarew@google.com ebc6743226 Remove a build and 3-4 compiler warnings from com.google.dart.compiler.js.
Review URL: https://chromiumcodereview.appspot.com//9595024

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4964 260f80e4-7a28-3924-810f-c04153c831b5
2012-03-05 17:48:00 +00:00
scheglov@google.com 15cd929a08 Use ASTVisitor as in new AST.
I'm going to morph DartC to use new AST step by step.
We need to have new AST, even with old parser, to easily switch later to the resilient parser and also for any other future work on refactoring, quick assists, etc.

R=brianwilkerson@google.com,zundel@google.com
BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com//9598002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4962 260f80e4-7a28-3924-810f-c04153c831b5
2012-03-05 17:36:40 +00:00
zundel@google.com 0f3ef6185e Removes unused 'normalized' field in many AST nodes.
Review URL: https://chromiumcodereview.appspot.com//9597025

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4959 260f80e4-7a28-3924-810f-c04153c831b5
2012-03-05 16:41:06 +00:00
zundel@google.com ab603367c0 Update test.dart for detection output of machine formatted errors
This change causes the 'dartc' tests to be more sensitive to the difference
between a static type error and a compilation error.   Instead of
relying on the return value from the test being 0 or non zero, the
code now turns on '--error_format machine' and checks type
error level 'ERROR' or 'WARNING' and the type of error for
'STATIC_TYPE' if there is a static type error.  A new annotation
format adapted from multitests is introduced for standard test cases:

  int foo = "hello";   /// static type error

The above annotation means that a static type error is expected.
Currently enforcement is very lenient.  There must be at least as
many STATIC_TYPE error messages as there are '/// static type error'
annotations (and no ERROR level messages.)

Review URL: https://chromiumcodereview.appspot.com//9559007

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4895 260f80e4-7a28-3924-810f-c04153c831b5
2012-03-02 18:50:09 +00:00
danrubel@google.com 2e393c4913 Update method used by analyzeLibrary to correctly identify dart:core
Review URL: https://chromiumcodereview.appspot.com//9581004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4885 260f80e4-7a28-3924-810f-c04153c831b5
2012-03-02 17:00:22 +00:00
danrubel@google.com 535e0ce372 Detect core libraries for frog and VM
Review URL: https://chromiumcodereview.appspot.com//9583002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4883 260f80e4-7a28-3924-810f-c04153c831b5
2012-03-02 16:46:31 +00:00
scheglov@google.com c4fa02a635 Issue 1936. Unknown field from Dynamic has type Dynamic.
http://code.google.com/p/dart/issues/detail?id=1936

R=zundel@google.com,brianwilkerson@google.com
BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com//9569030

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4833 260f80e4-7a28-3924-810f-c04153c831b5
2012-03-01 22:05:12 +00:00
ager@google.com 6cd0ec3577 Add token to stderr as well as stdout for batch processing.
This makes it easy to tell when a test is completed and we have all
the output. stderr and stdout are independent file descriptors so
this is the only reliable way to know that you have flushed both.

Review URL: https://chromiumcodereview.appspot.com//9569003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4782 260f80e4-7a28-3924-810f-c04153c831b5
2012-03-01 09:13:47 +00:00
scheglov@google.com c81fcbafde Remove backends.
R=zundel@google.com,brianwilkerson@google.com
BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com//9479013

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4771 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-29 23:50:01 +00:00
sigmund@google.com ee6a907611 isolates refactor: this change introduces 'dart:isolate' as a library. This is a
big global change, so let me explain in more detail. This refactoring CL does
the following:
- moves all the dart code for isolates in a common library (lib/isolate)

- changes frog to understand 'dart:isolate' imoprts by loading the code from the
  location above.

- changes the vm to undernstand 'dart:isolate' imports by creating a separate
  library that is part of the bootstrap. This follows the same code-structure
  that Todd suggested in his CL introducing the mirror library

- changes dartc to use the shared isolate library as the source of truth for
  type checking. I left around some of the internal js code in dartc so that the
  backend continues to work for apps that don't use isolates.

- changes all tests that use isolates to import the library explicitly (this is a large bulk of the files in this CL)

- changes test status for tests we can't fix in this repo (e.g. co19)

- splits the isolate library code to make it possible to preserve some tests
  without exposing internal types (e.g. tests about
  serialization/deserialization)

- changes the create_sdk script to copy the isolate library to the sdk

- includes the isolate library in dartdoc

I'll wait for at least one lgtm from each area (dartc, vm, frog, sdk)

There is one important pending thing this CL doesn't do:
- update test_runner.dart: This should be updated next time we upload the new
  binaries to tool/testing/bin
- dartium specific changes: Vijay, is there anything I need to do for dartium?

Review URL: https://chromiumcodereview.appspot.com//9422019

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4647 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-27 22:50:44 +00:00
zundel@google.com 1d6d0fc624 Removes dependency on d8/v8 from dartc
Review URL: https://chromiumcodereview.appspot.com//9466041

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4616 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-27 14:32:11 +00:00
zundel@google.com c8d34435fd Backout change in test.dart from -batch to --batch.
Review URL: https://chromiumcodereview.appspot.com//9447094

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4594 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-26 14:20:08 +00:00
zundel@google.com 564d6c5cc1 Incremental build is now off by default
Also got rid of some legacy flag settings.

Review URL: https://chromiumcodereview.appspot.com//9447057

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4593 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-26 13:33:02 +00:00
zundel@google.com 919b7609f9 Updates incremental compilation tests to work w/o code generation
Removes end2end tests that presume code generation

Review URL: https://chromiumcodereview.appspot.com//9464044

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4592 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-26 11:10:05 +00:00
scheglov@google.com c60d333d2e Issue 1129. Report #import errors after parsing, so after "unitAboutToCompile".
http://code.google.com/p/dart/issues/detail?id=1129

R=zundel@google.com,devoncarew@google.com
BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com//9466013

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4579 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-24 20:07:25 +00:00
scheglov@google.com 0a0bc8cd1c Issue 1738. Check type of DartMethodDeclaration.getName().
http://code.google.com/p/dart/issues/detail?id=1738

R=zundel@google.com,brianwilkerson@google.com
BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com//9430013

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4413 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-21 23:12:09 +00:00
scheglov@google.com dedbb79fa3 Issue 1714. Report warning if assert argument is not 'bool' or '() -> bool'.
http://code.google.com/p/dart/issues/detail?id=1714

R=codefu@google.com
BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com//9421002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4404 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-21 18:19:28 +00:00
scheglov@google.com bdfccd85b4 Allow declare new named parameters in method override.
http://code.google.com/p/dart/issues/detail?id=1575

R=karlklose@google.com,zundel@google.com
BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com//9403026

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4402 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-21 17:56:56 +00:00
scheglov@google.com cf869318e9 Issue 1606/1108. The 'native' keyword is supposed to only be allowed in core libraries.
http://code.google.com/p/dart/issues/detail?id=1606
http://code.google.com/p/dart/issues/detail?id=1108

R=codefu@google.com,zundel@google.com
BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com//9421001

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4361 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-17 18:07:07 +00:00
scheglov@google.com 5fdd279826 Issue 1475. Report warning for non-unique Map literal keys.
http://code.google.com/p/dart/issues/detail?id=1475

R=codefu@google.com
BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com//9355006

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4360 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-17 17:55:29 +00:00
scheglov@google.com d6e272b8e1 Issue 1548. If URI can not be parsed, return null.
http://code.google.com/p/dart/issues/detail?id=1548

This is also specified in JavaDoc for this method.

R=danrubel@google.com
BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com//9420011

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4341 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-16 21:26:25 +00:00
scheglov@google.com 74ab781eab Issue 1551. Report error for new-line in single-line raw string.
http://code.google.com/p/dart/issues/detail?id=1551

R=codefu@google.com,zundel@google.com
BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com//9414015

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4332 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-16 19:19:20 +00:00
karlklose@google.com 1165672c79 Allow named parameters in const constructor invocations.
The compile time constant analyzer visited the name of the parameter as identifier, which was not resolved. This resulted in an element of kind NONE, which was classified as non-constant.

BUG=http://code.google.com/p/dart/issues/detail?id=1576
TEST=language/NamedArgumentInConstCreationTest

Review URL: https://chromiumcodereview.appspot.com//9359038

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4301 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-16 08:13:49 +00:00
jwren@google.com f5d335800f This CL is part of a proposal to change the API of dartc's implementation of UrlSource.
Review URL: https://chromiumcodereview.appspot.com//9392017

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4272 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-15 16:41:24 +00:00
ahe@google.com 9bf46f477d Don't cache subtypes in elements. It causes a memory leak in the Editor.
Review URL: https://chromiumcodereview.appspot.com//9390011

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4271 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-15 16:37:55 +00:00
danrubel@google.com f81c137b51 Multimap replacement
Review URL: https://chromiumcodereview.appspot.com//9373059

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4217 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-14 13:19:42 +00:00
scheglov@google.com 1b21501f7a Remove DartIsolateStubGenerator.
R=zundel@google.com
BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com//9384013

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4191 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-13 16:42:24 +00:00
danrubel@google.com b994d9d930 Optimize clone operation
Review URL: https://chromiumcodereview.appspot.com//9370016

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4143 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-10 20:17:11 +00:00
ahe@google.com 41f0492cf0 Remove dartc optimizing backend.
Review URL: https://chromiumcodereview.appspot.com//9353015

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4025 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-08 10:22:07 +00:00
zundel@google.com 8fdd07b9fd This change makes the normal way of running dartc equivalent to running it with what was the --check-only flag. Shared test status files have been updated to run 'green' for now until we can get a special static analysis testing tool in place.
The code generation backend is still there behind a flag, but due to be removed.

Review URL: https://chromiumcodereview.appspot.com//9346021

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4008 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-07 22:00:40 +00:00
zundel@google.com 574f7dfb0b Fix DartRunner to work properly with --check-only cmdline flag
Review URL: https://chromiumcodereview.appspot.com//9310096

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3944 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-06 14:15:52 +00:00
scheglov@google.com 15234d56d5 Remove DartDocumentationGenerator and related flags.
R=zundel@google.com
BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com//9317093

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3919 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-03 21:27:31 +00:00
scheglov@google.com d861694b20 Issue 561. Fix for methods named get/set/operator.
http://code.google.com/p/dart/issues/detail?id=561

R=zundel@google.com
BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com//9301007

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3866 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-02 19:18:22 +00:00
scheglov@google.com 0b61628ce3 Fix for extra memory consumption.
Especially in the big List.sort() test.

R=zundel@google.com
BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com//9310061

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3846 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-02 14:57:23 +00:00
scheglov@google.com ecbd1874bf Recompile unit with potential conflict/dependency on some top-level symbol.
1. Change dependency tracking from API version on unit to just unit last modified time.

2. Track sets of top-level and all declared symbols in units, recompile in case of possible conflict.

3. Track units with TypeErrorCode.CANNOT_BE_RESOLVED, recompile if any unit changes top-level symbols.

4. Better tests with source code directly in test method.

R=zundel@google.com
BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com//9148026

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3799 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-01 17:47:04 +00:00
zundel@google.com ffd2a08a22 Type Variables cannot be used in identifier expressions
dartc was allowing this code to get through to code generation.

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

Review URL: https://chromiumcodereview.appspot.com//9307010

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3757 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-31 22:17:00 +00:00
zundel@google.com 6d9ee83915 Fix crash in dartc when given cyclic type variable bounds.
http://code.google.com/p/dart/issues/detail?id=211

Review URL: https://chromiumcodereview.appspot.com//9186017

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3751 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-31 21:46:24 +00:00
ahe@google.com 3ddd2d6b03 Two different classes may have the same *name*.
Review URL: https://chromiumcodereview.appspot.com//9303033

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3725 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-31 13:31:17 +00:00
scheglov@google.com 2ae9b5fcaf Issue 1251. Check for getter existence.
http://code.google.com/p/dart/issues/detail?id=1251

R=zundel@google.com
BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com//9296016

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3693 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-30 17:36:42 +00:00
zundel@google.com 8d897192ae Call operator shared test and parser updates for operator call in dartc.
http://code.google.com/p/dart/issues/detail?id=1355

Review URL: https://chromiumcodereview.appspot.com//9288076

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3671 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-27 22:32:00 +00:00
zundel@google.com afeaa7ed81 DartToSourceVisitor was omitting type annotations on list/map literals
Review URL: https://chromiumcodereview.appspot.com//9295019

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3664 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-27 19:57:28 +00:00
scheglov@google.com 3964729a31 Issue 801. Use actual super constructor with all named or synthetic.
http://code.google.com/p/dart/issues/detail?id=801

R=zundel@google.com
BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com//9232050

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3661 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-27 17:12:43 +00:00
scheglov@google.com 49e1adff6f Issue 962. Fix for crash in nested function parameters list code generation.
http://code.google.com/p/dart/issues/detail?id=962

R=zundel@google.com
BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com//9225024

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3655 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-27 14:58:22 +00:00
scheglov@google.com 99cc34e500 Issue 1287. Allow to invoke function literal.
http://code.google.com/p/dart/issues/detail?id=1287

R=zundel@google.com
BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com//9288021

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3626 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-26 20:22:08 +00:00
zundel@google.com 226ed91138 Added runtime type checking to the elements of list and map literals in dartc
http://code.google.com/p/dart/issues/detail?id=220
http://code.google.com/p/dart/issues/detail?id=221

Review URL: https://chromiumcodereview.appspot.com//9289029

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3619 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-26 17:33:04 +00:00
scheglov@google.com 6f85c329e7 Issue 1330. Return actual Type from DartNewExpression.
http://code.google.com/p/dart/issues/detail?id=1330

R=zundel@google.com
BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com//9113064

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3609 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-25 21:43:57 +00:00
zundel@google.com 7169189529 Update map literal syntax to expect only one type parameter
As of the spec v0.6, the correct syntax is now:
  <V>{"key" : value };
Whereas you used to also specify the key. Added a deprecation warning
for the old syntax.

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

Review URL: https://chromiumcodereview.appspot.com//9235015

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3606 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-25 20:21:24 +00:00
zundel@google.com 1431b3238e Provide better debugging if a null type is encountered.
Patches up at least one case where the 'this' keyword could return null if used in a static context.

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

Review URL: https://chromiumcodereview.appspot.com//9160004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3564 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-24 20:12:07 +00:00
scheglov@google.com f7182176bf Issue 1229. Report error for using unary plus operator.
http://code.google.com/p/dart/issues/detail?id=1229

R=zundel@google.com
BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com//9284029

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3560 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-24 19:05:55 +00:00