srdjan@google.com
22ea3cf225
Fix String.trim implementation (follow spec).
...
Fix Queue.every, Queue.some, Queue.filter, ..
Adapt co19 status files.
Review URL: http://codereview.chromium.org//8510066
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1521 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-14 22:23:41 +00:00
asiva@google.com
5cf3ad018a
Changes to pass the current isolate to all runtime and native calls.
...
Review URL: http://codereview.chromium.org//8528010
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1499 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-12 05:55:22 +00:00
regis@google.com
8b9ebb3528
Second attempt at finalizing all classes in the VM (fix issue 364).
...
Review URL: http://codereview.chromium.org//8491055
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1475 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-11 21:38:49 +00:00
regis@google.com
a6282231eb
Revert r1380 that is breaking frog.
...
Review URL: http://codereview.chromium.org//8509031
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1382 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-10 01:39:06 +00:00
iposva@google.com
1e203b2dc9
- Move the RuntimeOptions implementation into the shared library
...
code. It has no dependency on the VM.
Review URL: http://codereview.chromium.org//8505043
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1381 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-10 01:28:51 +00:00
regis@google.com
8dd26ba9f6
Finalize all classes (fix issue 364).
...
Review URL: http://codereview.chromium.org//8506001
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1380 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-09 23:33:48 +00:00
srdjan@google.com
6b6d16a41e
Add type check tracing (--trace_type_checks). Inline type checks with class types that have only Dynamic type arguments (or none) and with List<Dynamic> interface.
...
Review URL: http://codereview.chromium.org//8503034
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1372 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-09 21:36:32 +00:00
ager@google.com
8a7ae17d76
Handling of wrong types of arguments in the File API.
...
R=sgjesse@google.com
BUG=
TEST=
Review URL: http://codereview.chromium.org//8491014
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1251 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-07 13:23:28 +00:00
asiva@google.com
8743e1cc2a
- Fix the snapshot generation python script to return an error code when snapshot generation fails and print the error message.
...
- Split isolate creation into CreateIsolate and InitializeIsolate so that we don't get SEGVs when there is a failure compiling the corelib dart sources during the bootstrap process
Review URL: http://codereview.chromium.org//8334031
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1225 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-04 22:08:13 +00:00
mattsh@google.com
a93088691c
convert isolates to use Future
...
BUG=
TEST=
Review URL: http://codereview.chromium.org//8457005
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1213 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-04 18:40:13 +00:00
srdjan@google.com
59b79d8171
Fix more co19 crashes. Introduce GET_NATIVE_ARGUMENT that throws an illegal argument exception if the native argument is of incorrect type.
...
Review URL: http://codereview.chromium.org//8476002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1205 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-04 16:30:29 +00:00
srdjan@google.com
6a0e00c33c
Fix crashes in String natives.
...
Review URL: http://codereview.chromium.org//8455004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1199 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-04 15:00:04 +00:00
srdjan@google.com
0265e3f027
Fixes to co19 crashes:
...
- Null is a valid exception object.
- Throw exception in array copy.
Review URL: http://codereview.chromium.org//8437106
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1173 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-03 22:31:32 +00:00
iposva@google.com
97634fb30e
- Add the implementation of the Options interface to the runtime.
...
Review URL: http://codereview.chromium.org//8437075
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1169 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-03 21:45:03 +00:00
srdjan@google.com
49caedb014
Fix issue: 5427703 (compareTo), fix parsing of -0.0.
...
Review URL: http://codereview.chromium.org//8430037
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1156 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-03 18:03:39 +00:00
ngeoffray@google.com
a76068abeb
Remove unused constructor.
...
Review URL: http://codereview.chromium.org//8440062
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1138 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-03 10:09:06 +00:00
hausner@google.com
7651034e9e
Two-phase constructors
...
This CL fixes the initializer evaluation order and brings the VM fully up to spec.
Constructors are executed in two phases: the initializer phase and the constructor body phase. An additional implicit parameter tells the constructor code whether to execute the initializer list or the body (or both).
If the super initializer call is not at the end of the initializer list, the super constructor has to be called twice. The arguments to the super initializer have to be evaluated and stored in temporary local variables. At the beginning of the constructor block, a second implicit super call is inserted.
If the super initializer call happens to be at the end of the list, none of this madness has to happen, except for the extra implicit parameter to the constructor.
Review URL: http://codereview.chromium.org//8440014
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1102 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-02 17:19:15 +00:00
ager@google.com
5b5c36e253
Implement async file API on top of isolates.
...
This is not going to be efficient but will give us the right
semantics of the operations. We should be using native async
operations for this.
Fixed a bug in VM implementation of List.setRange.
R=sgjesse@google.com
BUG=
TEST=
Review URL: http://codereview.chromium.org//8431028
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1012 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-01 14:07:30 +00:00
srdjan@google.com
6d8d978d5a
FIx issue 261: throw exception if index if idnexed oeprators if lists Array and GrowableArray is not int.
...
Review URL: http://codereview.chromium.org//8387035
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@962 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-31 18:40:32 +00:00
ngeoffray@google.com
5496005d1d
Add optional arguments to our indexOf/lastIndexOf methods.
...
Review URL: http://codereview.chromium.org//8424012
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@947 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-31 13:21:30 +00:00
ngeoffray@google.com
210fd33d0a
Remove List.fromList constructor, and List.copyFrom. They are duplicates of the new range methods.
...
Review URL: http://codereview.chromium.org//8422005
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@941 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-31 09:49:15 +00:00
regis@google.com
78353be760
Verify that user classes/interfaces do not extend/implement any of bool, num,
...
int, double, String, Function, or Dynamic.
Review URL: http://codereview.chromium.org//8416052
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@922 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-28 22:24:18 +00:00
asiva@google.com
b245c234f0
Report NullPointerException when we try to construct a regular expression
...
using a NULL pointer.
Report NullPointerException instead of ObjectNotClosureException when the
closure object is Null.
Review URL: http://codereview.chromium.org//8363034
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@901 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-28 17:32:29 +00:00
srdjan@google.com
8d69118676
More strict non-equal cleanups in library code
...
Review URL: http://codereview.chromium.org//8413018
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@892 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-28 15:21:42 +00:00
srdjan@google.com
959f4b519d
Use strict equality when comparing with null, especially when null is a default value.
...
Review URL: http://codereview.chromium.org//8400038
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@859 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-27 22:11:16 +00:00
vsm@google.com
f3463fcb44
Remove obsolete isolate bind method
...
This has been removed from corelib and compiler. See
http://codereview.chromium.org//8370031 .
Review URL: http://codereview.chromium.org//8399025
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@800 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-27 05:03:23 +00:00
regis@google.com
1df8ca858e
Rename the VM internal 'var' type to 'Dynamic' type.
...
This change does not implement support for the built-in identifier 'Dynamic'.
Review URL: http://codereview.chromium.org//8403003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@779 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-26 20:58:34 +00:00
ngeoffray@google.com
592e3848a3
Implement String.contains when the pattern is not a string.
...
Review URL: http://codereview.chromium.org//8379001
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@676 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-25 06:56:15 +00:00
cshapiro@google.com
f52039f03c
Implement case mapping using the Unicode default case mapping algorithm.
...
BUG=5425968
Review URL: http://codereview.chromium.org//8333001
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@616 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-21 20:33:29 +00:00
iposva@google.com
4906ccd1db
- Remove the remaining Array interface.
...
Review URL: http://codereview.chromium.org//8348025
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@556 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-19 15:44:55 +00:00
turnidge@google.com
0e98d4ae64
Allow embedders to provide custom message delivery for an isolate.
...
==============
Added Dart_SetPostMessageCallback and Dart_SetClosePortCallback.
These allow the embedder to provide custom message/port behavior
for their application. The vm provides standard implementations
that work with the standard run loop.
Added Dart_HandleMessage, which processes one message on the
current isolate. Embedders can use this to write their own
message processing loops. Rewrote code to use this internally.
Added Isolate::StandardRunLoop() to share code between
Dart_RunLoop and lib/isolate.cc
Changed the interface to PortMap::PostMessage. PostMessage is
now agnostic to message delivery mechanism. Note that PortMap is
now out of the "ReceiveMessage" business entirely. Moved
MessageQueue and friends out to message_queue.cc/h.
Moved the monitor from the Isolate into the MessageQueue. No
need for outsiders to mess. Added MessageQueue::Wait. Moved
monitor locking from PortMap into MessageQueue itself, which was
easier for me to reason about. Wrote some tests.
Removed PortMessage::Handle. The code turned into Dart_HandleMessage.
Regularized the nomenclature around ports. Type is now always
Dart_Port instead of intptr_t. Variables end in _port instead of
_id. Use the term "dest" instead of "target" or "send".
Added a family of new tests to port_test.
Added EXPECT_NE to the test framework.
Review URL: http://codereview.chromium.org//8297004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@516 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-18 17:54:07 +00:00
ngeoffray@google.com
ac91a5a8da
Fix build failures due to forgotten change in the Array -> List transition.
...
Review URL: http://codereview.chromium.org//8333017
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@508 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-18 10:54:45 +00:00
ngeoffray@google.com
70c01beb9b
Clean up (most) uses of Array. Still more to come in the VM corelib code base.
...
Review URL: http://codereview.chromium.org//8321024
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@507 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-18 10:02:59 +00:00
vsm@google.com
cc71ad71ed
Test fix: remove extraneous print
...
TEST=corelib/ListInsertRangeTest
Review URL: http://codereview.chromium.org//8294020
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@483 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-17 20:18:45 +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
ngeoffray@google.com
52aa068f73
Implement List.insertRange.
...
Review URL: http://codereview.chromium.org//8271029
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@439 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-14 13:44:18 +00:00
benl@google.com
c0a59669cf
Do away with the PromiseQueue.
...
Instead of queuing messages with promises in them until the promises
are ready, send immediately. This is done by sending a port down which
the receiver sends a port which can be used to signal completion of
the outgoing promise.
Review URL: https://chromereviews.googleplex.com/3573013
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@427 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-14 11:18:12 +00:00
ngeoffray@google.com
85804080f3
Implement List.getRange.
...
Review URL: http://codereview.chromium.org//8276005
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@403 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-13 16:24:09 +00:00
ngeoffray@google.com
9e03f7c985
IllegalArgumentException expects a string.
...
Review URL: http://codereview.chromium.org//8277007
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@402 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-13 16:19:06 +00:00
ngeoffray@google.com
b69b4200c8
Implement removeRange, and update some documentation on the list interface.
...
Review URL: http://codereview.chromium.org//8273004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@400 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-13 15:54:48 +00:00
ngeoffray@google.com
edcae54a2c
Implement setRange on DartC and the VM.
...
Review URL: https://chromereviews.googleplex.com/3574018
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@394 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-13 12:58:49 +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
mmendez@google.com
fc7390d97b
Add support for --enable_type_checks (developer mode) for dartc.
...
This patch is based on https://chromereviews.googleplex.com/3520019/ . However it addresses the following issues:
1) TypeError exceptions will now have the stack trace filled in.
2) Type parameters are now accessible from closurized code, including the trampoline shims for named optinal parameters.
3) Suppress use of FunctionExpressionInliner with type checks because the inline normalization can leave return nodes in the AST.
4) Pass the generateHumanReadableOutput flag to the closure backend.
5) TypeDartcTest passes in debug and release modes with type checking enabled. We still need to enable the additional cases in the code.
Review URL: https://chromereviews.googleplex.com/3558021
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@271 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-08 04:11:34 +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
kasperl@google.com
1a3e9c39b1
Make replyTo argument optional in SendPort.send.
...
R=benl@google.com
BUG=
TEST=
Review URL: https://chromereviews.googleplex.com/3561014
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@207 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-07 10:44:50 +00:00
ngeoffray@google.com
d4c8bacc2d
substringToEnd does not exist anymore.
...
Review URL: https://chromereviews.googleplex.com/3575012
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@203 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-07 08:48:12 +00:00
ngeoffray@google.com
c2b5e488da
Remove substringToEnd.
...
Review URL: https://chromereviews.googleplex.com/3561013
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@201 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-07 08:41:38 +00:00
ngeoffray@google.com
cb3a9f6641
Add range methods to List. Throw not implemented for now.
...
Review URL: https://chromereviews.googleplex.com/3573012
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@198 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-07 07:56:42 +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