Commit Graph

13143 Commits

Author SHA1 Message Date
cshapiro@google.com 4f6c98ea40 Add a const qualifier to string handles which are not reassigned.
Review URL: http://codereview.chromium.org//8339002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@499 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-17 23:49:48 +00:00
hausner@google.com abdb2d6281 Fix mysterious build breakage that nobody can explain.
Review URL: http://codereview.chromium.org//8339003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@498 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-17 23:41:32 +00:00
regis@google.com 74420600b1 Verify method overrides in checked mode only (fix issue 69).
Review URL: http://codereview.chromium.org//8319020

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@489 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-17 23:00:09 +00:00
regis@google.com 7c2f02849c Merge the 3 different closure nodes into a single node.
Review URL: http://codereview.chromium.org//8294013

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@485 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-17 20:22:42 +00:00
regis@google.com 4d24678892 Set type argument vector at compile time in type of closure parameters; this
require the introduction of a signature type cached in signature functions.
Support printing of the name of an instantiated signature type, e.g. print
'(int) => int' instead of '<T>(T) => T<int>'.
Avoid cycles when printing the name of illegal types during error reporting by
checking that the type is not being finalized.
Review URL: http://codereview.chromium.org//8289027

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@479 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-17 19:03:32 +00:00
srdjan@google.com bb75f90553 Fix 5442338: Return true if the pc descriptor verifier skips verification because of too many descriptors to check.
Review URL: http://codereview.chromium.org//8318002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@466 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-17 12:29:49 +00:00
srdjan@google.com 934409878a Fix for bug 5442338 (crash in deoptimization): when optimized code calls deoptimization stub, check if the function was already deoptimized previously before attempting to restore unoptimized code.
Add test case when optimized code of a deoptimized function is several time on stack, and deoptimization occurs after the function was already deoptimized.
Review URL: http://codereview.chromium.org//8311017

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@465 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-17 11:27:22 +00:00
regis@google.com dc895f3138 Rename class AssertError to AssertionError in the VM (fix issue 119).
Move VM specific tests to the correct tests directory.
Enable asserts in the VM when type checks are enabled.
Review URL: http://codereview.chromium.org//8294005

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@460 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-14 22:02:50 +00:00
regis@google.com c09dfa132e Set type argument vector at run time in instantiated closure objects.
Set type argument vector at compile time in type of closure variables.
TODO: Set type argument vector at compile time in type of closure parameters.
Review URL: http://codereview.chromium.org//8271008

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@416 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-13 21:34:48 +00:00
hausner@google.com 13da6d834f Create implicit super constructor call if necessary
Create an implicit call to the super constructor if no explicit
call is present, and also if the constructor does not have an
initializer list at all.

The evaluation order is still not conforming to the spec. Thus,
a couple of tests that happened to pass before now fail.

Fix issue 85
https://code.google.com/p/dart/issues/detail?id=85
Review URL: http://codereview.chromium.org//8286003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@412 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-13 20:16:38 +00:00
asiva@google.com 60f1913eb2 Changes to handle unresolved qualified identifiers.
Review URL: http://codereview.chromium.org//8247014

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@411 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-13 20:09:21 +00:00
asiva@google.com 9c927f8e02 Ensure that the passed in raw pointer is not used in SetRaw().
Review URL: http://codereview.chromium.org//8231028

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@404 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-13 17:10:35 +00:00
srdjan@google.com 4aa5564622 Handle bug 5442338: PCDescriptors generated wrongly, disallowing optimizations, causing assert failures in debug. Fixed also assembly code generation in optimized code (a jumbo could be far). The test code from bug 5442338 can run now successfully.
Review URL: http://codereview.chromium.org//8240005

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@376 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-12 20:04:19 +00:00
hausner@google.com 08a5cffb3b Implement index operator super call
Last portion of super operator calls.
Review URL: http://codereview.chromium.org//8234022

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@359 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-11 23:50:19 +00:00
regis@google.com 19208574f0 Inline allocation of implicit closures.
Consolidate generation of closure allocation stubs into one function.
Fix type name printing when printing ast.
Review URL: http://codereview.chromium.org//8234016

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@357 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-11 23:42:20 +00:00
hausner@google.com a487770657 Implement super operator calls
Review URL: http://codereview.chromium.org//8222015

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@335 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-11 16:49:35 +00:00
asiva@google.com fdb5d9a607 Fix compilation warnings/errors seen with newer versions of gcc compiler.
Review URL: http://codereview.chromium.org//8222017

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@321 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-11 00:37:11 +00:00
cshapiro@google.com 95ab992168 Remove unneeded predicate variables.
Review URL: https://chromereviews.googleplex.com/3570017

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@305 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-10 18:47:53 +00:00
regis@google.com 6b6d732d3a Inline type checks for num, int, double, bool, String, and Function interfaces.
Review URL: https://chromereviews.googleplex.com/3557013

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@267 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-07 23:52:29 +00:00
regis@google.com 820653338a Avoid accessing the object store when checking for var class or void class.
Review URL: https://chromereviews.googleplex.com/3562016

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@249 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-07 18:31:02 +00:00
hausner@google.com 51bfa4841e Supercall skipping
Trivial change. Fixes b/5384453
Review URL: https://chromereviews.googleplex.com/3570015

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@244 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-07 18:02:30 +00:00
srdjan@google.com 3e702c53d7 Fix bool type checks for checked mode. Fast case is now always executed.
Review URL: https://chromereviews.googleplex.com/3577016

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@224 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-07 14:51:45 +00:00
ngeoffray@google.com 8b8b4844fa Add default arguments for regexp flags.
Review URL: https://chromereviews.googleplex.com/3558016

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@213 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-07 12:47:56 +00:00
srdjan@google.com 5529bf7abe The simplest change to enable optimizing compiler in type checked mode. Every node that needs type checking code will be executed by unoptimized code.
Review URL: https://chromereviews.googleplex.com/3577012

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@208 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-07 11:16:57 +00:00
iposva@google.com a6f62f6009 Fix bug 5425848:
- Handle LibraryPrefix entries when growing a library dictionary.
Review URL: https://chromereviews.googleplex.com/3570013

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@205 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-07 09:26:03 +00:00
iposva@google.com e4809c8a9f - Revert r80: Too large an impact on running in debug mode.
Review URL: https://chromereviews.googleplex.com/3558014

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@202 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-07 08:44:46 +00:00
kasperl@google.com de889ee719 Get rid of the support for the old parameter syntax.
I've CC'ed Matthias too and I wouldn't be surprised if he can
find a nicer way of dealing with this, but this is pretty
simple and allows me to make progress on getting rid of the
old syntax.

R=iposva@google.com
BUG=
TEST=

Review URL: https://chromereviews.googleplex.com/3569013

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@199 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-07 08:03:04 +00:00
cshapiro@google.com 7163d2595d Prove, instead of disprove, element width compatibility.
This improves robustness by ensuring that only one predicate variable
is true before selecting the implementation method.

Review URL: https://chromereviews.googleplex.com/3562012

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@177 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-07 00:18:59 +00:00
cshapiro@google.com 9aca46d2a7 Implement support for reading and writing UTF-8 encoded strings.
In the past, characters in C strings were assumed to encode themselves
and when converting Dart strings to C strings characters were narrowed
to 8-bit values.

With this change, C strings are assumed to be UTF-8 encoded.
Converting a C string to a Dart string applies UTF-8 decoding and
converting a Dart string to a C string applies UTF-8 encoding.

Also part of this change are new methods to construct uninitialized
string objects and to copy string data.

BUG=5343358

Review URL: https://chromereviews.googleplex.com/3557012

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@169 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-06 22:42:24 +00:00
regis@google.com db3a736c33 Support optional named arguments at the dart_entry level in the VM.
Fix bug 5422033: Const expressions don't work with named arguments.
Review URL: https://chromereviews.googleplex.com/3552015

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@168 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-06 22:40:45 +00:00
regis@google.com b618447392 Inline condition type check.
Review URL: https://chromereviews.googleplex.com/3534018

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@166 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-06 22:35:01 +00:00
asiva@google.com 0b30a49971 5419598: Add a setjmp around the isolate spawning code so that parse errors
are caught and reported as errors.
5417103: Add a setjmp around Dart_Run_Loop so that parse errors
are caught and reported as errors.
Review URL: https://chromereviews.googleplex.com/3553012

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@140 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-06 18:33:36 +00:00
srdjan@google.com 44392fdb03 Fix resolving of implicit closures: treat null objects same as instances of Object.
Review URL: https://chromereviews.googleplex.com/3551013

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@138 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-06 16:31:31 +00:00
floitsch@google.com 382580f9a7 Rename Time to Duration and adapt methods.
Review URL: https://chromereviews.googleplex.com/3536013

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@121 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-06 14:21:57 +00:00
floitsch@google.com 15727ed074 Rename DateTime to Date.
Review URL: https://chromereviews.googleplex.com/3529013

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@107 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-06 10:14:49 +00:00
srdjan@google.com b0af113468 Address Siva's suggestion.
Review URL: https://chromereviews.googleplex.com/3546013

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@97 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-06 07:46:45 +00:00
hausner@google.com b8a55bf3d7 Initializer expressions must not access 'this'
Catch explicit and implicit accesses to 'this' in initializer list of constructors.
Review URL: https://chromereviews.googleplex.com/3517020

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@81 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-05 22:39:25 +00:00
cshapiro@google.com 9a664c355d Wrap method bodies in a NoGCScope when receiving raw pointer arguments.
BUG=5413582

Review URL: https://chromereviews.googleplex.com/3521023

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@80 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-05 22:38:38 +00:00
srdjan@google.com 4b5b7fe381 Fix build.
Review URL: https://chromereviews.googleplex.com/3515026

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@51 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-05 16:39:25 +00:00
srdjan@google.com 2ecf52534f Terminate IC data array with a null group (preparation for new style of inline caching; easier to terminate when iterating over the array in assembly).
Review URL: https://chromereviews.googleplex.com/3507023

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@50 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-05 16:31:37 +00:00
srdjan@google.com 665b268641 Fix Dart_InvokeDynamic api to handle the null receiver properly: call Object's methods (e.g., "toString", "noSuchMethod").
Review URL: https://chromereviews.googleplex.com/3525014

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@48 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-05 16:27:07 +00:00
srdjan@google.com 288938bd88 Terminate IC data array with a null group (preparation for new style of inline caching; easier to terminate when iterating over the array in assembly).
Review URL: https://chromereviews.googleplex.com/3507023

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@46 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-05 16:25:14 +00:00
dgrove@google.com 4c0f559d23 Initial checkin.
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@15 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-05 05:20:07 +00:00