Commit Graph

5559 Commits

Author SHA1 Message Date
ngeoffray@google.com 7eabfc0a13 Do not allow native syntax on all libraries.
Review URL: https://chromiumcodereview.appspot.com//9568008

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@5070 260f80e4-7a28-3924-810f-c04153c831b5
2012-03-07 09:41:26 +00:00
regis@google.com 315ad5d30a Fix frog and friends build by skipping 3 tests that are broken and need support
for multiple error annotations. These are skipped in dartc as well.
Review URL: https://chromiumcodereview.appspot.com//9600071

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@5065 260f80e4-7a28-3924-810f-c04153c831b5
2012-03-07 03:14:09 +00:00
regis@google.com f4ddc43cdf Generate dynamic type errors according to spec.
Fix a few bad tests.
Turn a couple negative tests in multi-tests.
Triage a few co19 failing tests.

Still to do:
Check bounds of generic types at runtime in checked mode.
Stop reporting bounds error in new operator as a compile time error.
Review URL: https://chromiumcodereview.appspot.com//9615035

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@5064 260f80e4-7a28-3924-810f-c04153c831b5
2012-03-07 02:23:12 +00:00
zundel@google.com a7669d35cc Type assignment errors should be static type warnings, not compile-time errors
http://code.google.com/p/dart/issues/detail?id=1939

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@5053 260f80e4-7a28-3924-810f-c04153c831b5
2012-03-06 20:58:56 +00:00
ahe@google.com dbee0f2c18 Implement literal maps.
Review URL: https://chromiumcodereview.appspot.com//9558005

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@5032 260f80e4-7a28-3924-810f-c04153c831b5
2012-03-06 16:15:29 +00:00
floitsch@google.com bdb48996b1 Reapply "Refactor constant part." (r4958) with fixes.
This reverts commit r4965.

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@5027 260f80e4-7a28-3924-810f-c04153c831b5
2012-03-06 14:08:56 +00:00
ngeoffray@google.com e1151981ff Support for stack traces in catch blocks.
Review URL: https://chromiumcodereview.appspot.com//9601014

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@5018 260f80e4-7a28-3924-810f-c04153c831b5
2012-03-06 12:17:49 +00:00
ahe@google.com d3b04b2939 For reasons beyond logic, null matches any exception type.
Review URL: https://chromiumcodereview.appspot.com//9549002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@5017 260f80e4-7a28-3924-810f-c04153c831b5
2012-03-06 11:30:49 +00:00
ahe@google.com 29c84a5d61 Generate code for some switch statements.
Review URL: https://chromiumcodereview.appspot.com//9599026

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@5013 260f80e4-7a28-3924-810f-c04153c831b5
2012-03-06 10:09:07 +00:00
iposva@google.com 0d57413abb - Fix Dartium tests.
Review URL: https://chromiumcodereview.appspot.com//9553006

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4996 260f80e4-7a28-3924-810f-c04153c831b5
2012-03-06 00:13:11 +00:00
iposva@google.com 8d86287bc6 - Fix test name.
Review URL: https://chromiumcodereview.appspot.com//9554005

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4993 260f80e4-7a28-3924-810f-c04153c831b5
2012-03-06 00:03:50 +00:00
iposva@google.com 33d6e58134 Added test for issue 1882:
- Make sure that we can disable library privacy for testing.
Review URL: https://chromiumcodereview.appspot.com//9568016

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4988 260f80e4-7a28-3924-810f-c04153c831b5
2012-03-05 23:08:53 +00:00
zundel@google.com 6ad9f84212 Revert "New test exposes some bugs in the static analysis (dartc) engine on assignment problems" r4963
Some of the VM builds broke, and since I can't reproduce the break
locally, I'm backing out.

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4966 260f80e4-7a28-3924-810f-c04153c831b5
2012-03-05 18:12:24 +00:00
ahe@google.com 166e950db3 Revert "Refactor constant part."
This reverts revision 4958.

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4965 260f80e4-7a28-3924-810f-c04153c831b5
2012-03-05 17:54:04 +00:00
zundel@google.com 2e9748c13d New test exposes some bugs in the static analysis (dartc) engine on assignment problems
http://code.google.com/p/dart/issues/detail?id=1957

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4963 260f80e4-7a28-3924-810f-c04153c831b5
2012-03-05 17:38:13 +00:00
floitsch@google.com bab3cfdc26 Refactor constant part.
The Ssa backend now uses the CompileTimeConstantHandler's Constants.

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4958 260f80e4-7a28-3924-810f-c04153c831b5
2012-03-05 16:16:23 +00:00
ngeoffray@google.com d3a9607ab6 Support the literal kind for native classes (ie Console).
Review URL: https://chromiumcodereview.appspot.com//9583006

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4935 260f80e4-7a28-3924-810f-c04153c831b5
2012-03-05 09:08:10 +00:00
zundel@google.com 9cfde6c7f1 Gets rid of static analysis error in Context2Test
spoke with regis, and method not being defined was not important to
the repro case.

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4913 260f80e4-7a28-3924-810f-c04153c831b5
2012-03-03 00:54:02 +00:00
zundel@google.com 4c3f75a01f fix vm build break - wrong cmdline argument in VMOptions
Review URL: https://chromiumcodereview.appspot.com//9585018

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4898 260f80e4-7a28-3924-810f-c04153c831b5
2012-03-02 19:25:57 +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
ahe@google.com 6ba4024e32 No IntegerDivisionByZeroException in Leg (as it only has doubles). Also fix a rounding issue.
Review URL: https://chromiumcodereview.appspot.com//9562006

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4887 260f80e4-7a28-3924-810f-c04153c831b5
2012-03-02 17:04:28 +00:00
regis@google.com 6737e03dc2 Next attempt at making frog happy.
(I gave in and built/installed nodejs on my workstation)
Review URL: https://chromiumcodereview.appspot.com//9562033

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4836 260f80e4-7a28-3924-810f-c04153c831b5
2012-03-01 22:30:25 +00:00
regis@google.com c9147ab516 Second attempt at making frog happy.
Review URL: https://chromiumcodereview.appspot.com//9568035

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4829 260f80e4-7a28-3924-810f-c04153c831b5
2012-03-01 21:39:55 +00:00
regis@google.com 2f4f73b9f2 Fix frog build (failures on new tests in unchecked mode only).
Review URL: https://chromiumcodereview.appspot.com//9568030

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4822 260f80e4-7a28-3924-810f-c04153c831b5
2012-03-01 20:36:46 +00:00
regis@google.com 72529efec7 Check type argument bounds of interfaces in type tests (work in progress).
Add a new test.
Fix broken tests.
Review URL: https://chromiumcodereview.appspot.com//9565016

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4819 260f80e4-7a28-3924-810f-c04153c831b5
2012-03-01 19:54:19 +00:00
efortuna@google.com 681a96b43b Test added in r4799 breaks in Safari, FF, and IE.
TBR
Review URL: https://chromiumcodereview.appspot.com//9567014

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4814 260f80e4-7a28-3924-810f-c04153c831b5
2012-03-01 18:37:54 +00:00
ahe@google.com f494288228 Add test inspired by Leg bug.
Review URL: https://chromiumcodereview.appspot.com//9570002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4799 260f80e4-7a28-3924-810f-c04153c831b5
2012-03-01 15:16:52 +00:00
ahe@google.com 38b5ade1ee Special case -0.0 when constant folding.
Review URL: https://chromiumcodereview.appspot.com//9536012

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4760 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-29 19:12:21 +00:00
ahe@google.com b4da51c990 Create mock versions set and sort implementations.
Review URL: https://chromiumcodereview.appspot.com//9537009

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4752 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-29 13:24:50 +00:00
floitsch@google.com 8d1b6ade1b Fix this capturing in closures.
Review URL: https://chromiumcodereview.appspot.com//9542001

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4749 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-29 12:35:00 +00:00
lrn@google.com 2f4b4f5835 Fix break implementation.
Instead of multiple join blocks for loops/statements with breaks, use phis with multiple inputs.

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4745 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-29 10:43:31 +00:00
regis@google.com 47724a8491 Add support for malformed types and postpone some related errors from compile
time to execution time.

Still to do (once spec is clarified):
- properly handle generic type bounds errors
- properly handle 'instance of' type checks involving malformed types
- fix bad tests
Review URL: https://chromiumcodereview.appspot.com//9515011

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4732 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-29 02:14:18 +00:00
zundel@google.com 4ec3b6bd97 Sorts the dartc portion of the language.status file
Review URL: https://chromiumcodereview.appspot.com//9508003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4715 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-28 18:09:47 +00:00
ahe@google.com 55ff24ec82 Implement String.hashCode.
Review URL: https://chromiumcodereview.appspot.com//9490003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4714 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-28 18:06:03 +00:00
floitsch@google.com fd74243036 Add FunctionDeclaration node.
Review URL: https://chromiumcodereview.appspot.com//9502002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4707 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-28 17:36:20 +00:00
ahe@google.com 64867a3bcf Improve exception handling:
* Translate native JS exceptions to corresponding Dart objects.

* Implement rethrow.

Also handle abstract methods and final fields correctly.

Finally, don't cancel compilation when seeing a continue statement, instead generate code that throws an exception.

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4701 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-28 16:46:15 +00:00
floitsch@google.com fed4bb09ae Update status file.
Fixes build-breakage.

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4684 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-28 14:02:28 +00:00
floitsch@google.com 0b7b746eb5 Update status files.
Fixes build breakage.

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4683 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-28 13:38:42 +00:00
zundel@google.com e028896393 Fix build break, test forgot to instantiate new constructor
Review URL: https://chromiumcodereview.appspot.com//9487008

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4682 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-28 13:31:19 +00:00
floitsch@google.com 3c2b298a75 Implement Double.{toString, toStringAsExponential, toStringAsPrecision}
Also switch to -0.0.

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4681 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-28 13:19:50 +00:00
floitsch@google.com e1eab2177a Refactor Constants.
Review URL: https://chromiumcodereview.appspot.com//9475021

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4680 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-28 13:11:41 +00:00
zundel@google.com f152409954 Update ConstructorNamedArgumentTest to use the 'runtime-error' directive
See 10.13.2 in the spec (Binding Actuals to Formals)

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

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4678 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-28 12:47:22 +00:00
floitsch@google.com f87598ab31 Initialize fields with their default values.
Review URL: https://chromiumcodereview.appspot.com//9487004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4670 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-28 10:39:40 +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
efortuna@google.com a5081b4474 Fix status file for safari.
TBR=jmesserly@google.com
Review URL: https://chromiumcodereview.appspot.com//9481007

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4634 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-27 18:52:22 +00:00
zundel@google.com f79555188f Fix build break in dartc after adding new test
http://code.google.com/p/dart/issues/detail?id=1872

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4615 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-27 14:26:23 +00:00
karlklose@google.com 0f47af5657 Support named parameters for super initializers and redirections.
Review URL: https://chromiumcodereview.appspot.com//9454014

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4606 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-27 12:23:58 +00:00
floitsch@google.com 09d6ee2210 Fix bug where the closure-invocation method was not mangled correctly.
Review URL: https://chromiumcodereview.appspot.com//9463046

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4604 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-27 10:00:39 +00:00
srdjan@google.com a343a49338 Do not count invocations but usage of a function, i.e., increment a function's counter at IC calls and at return operations in unoptimized code. (TODO: increment count at static calls as well). There is no checking at method entry any more. The function counter reporting is not measuring the invocation count but much more how much time we spend in a method. Removed counter at backward branches.
Renamed flags to:
--optimization_counter_threshold (default 2000)
--report_usage_count
Review URL: https://chromiumcodereview.appspot.com//9460015

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4583 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-25 00:33:25 +00:00
ngeoffray@google.com 0c2376c02d Fix typo in status file.
Review URL: https://chromiumcodereview.appspot.com//9466004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@4565 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-24 11:46:12 +00:00