Brian Anderson
6527fc3925
core: Fix to_str_exact for floats with no decimal component
2012-02-21 14:25:31 -08:00
Brian Anderson
4220dcf1e9
core: New task API
2012-02-20 18:58:04 -08:00
Tim Chevalier
fbc95ba018
Re-XFAIL test that I accidentally
2012-02-20 17:33:35 -08:00
Tim Chevalier
cd9579e079
fix whitespace again
2012-02-20 17:21:33 -08:00
Tim Chevalier
2299d204e4
Further work on resolving and typechecking classes
...
Class tests aren't working yet, but they fail a little later :-)
Also, make the parser correctly set a constructor's result type to
its enclosing class type.
2012-02-20 17:16:52 -08:00
Graydon Hoare
ef6f628589
Refactor view_path to parse (but not yet process) export globs, unify code paths.
2012-02-17 23:05:20 -08:00
Graydon Hoare
6f70896854
Add new test for export globs, xfailed.
2012-02-17 23:02:27 -08:00
Marijn Haverbeke
e62ddf4898
More rigorous reuse of cleanup sequences
...
In both landing pads and break/cont/ret unwinding.
Closes #300
2012-02-16 16:37:33 +01:00
Brian Anderson
93b66ee587
test: Assert that the result is correct in run-pass/crust-stress
2012-02-15 12:45:04 -08:00
Brian Anderson
0438e6e924
bench: Add a test for task concurrency
2012-02-15 11:52:43 -08:00
Marijn Haverbeke
1248c250d8
A test that I forgot to git-add
2012-02-15 17:21:03 +01:00
Marijn Haverbeke
67cc89f38d
Rewrite exhaustiveness checker
...
Issue #352
Closes #1720
The old checker would happily accept things like 'alt x { @some(a) { a } }'.
It now properly descends into patterns, checks exhaustiveness of booleans,
and complains when number/string patterns aren't exhaustive.
2012-02-15 15:47:42 +01:00
Marijn Haverbeke
16e5760564
Fix bug in safe-reference checker
...
At some point, a refactor broke the code that handled local declarations
to no longer descend into the initializer expressions.
Closes #1846
2012-02-15 11:53:32 +01:00
Marijn Haverbeke
6627890f6b
Support 'alt check' syntax
...
It is only a way to flag an alt as intentionally non-exhaustive right now.
Issue #1679
2012-02-15 11:53:32 +01:00
Brian Anderson
9f95ccb426
test: Add a crust function stress test
2012-02-15 01:16:53 -08:00
Kevin Atkinson
d6d7134c37
When parsing a source string, fail when the entire string is not parsed.
...
(For now only fail when parse_from_source_str is used to avoid
possible compatibility problems; parse_expr_from_source_str still
does not check.)
2012-02-14 19:37:33 -08:00
Kevin Atkinson
a803a14b56
Bug fix to accept $ in 0th pos, (ie #ast{$(x) + ...}).
...
Note: part from Niko Matsakis commit: rewrite assert to accept a $ in
0th pos.
2012-02-14 19:37:33 -08:00
Kevin Atkinson
3eef8d1419
Correctly handle the character position at the EOF.
...
Fixes issue #1785 .
2012-02-14 19:37:33 -08:00
Kevin Atkinson
0e44133e7c
Do a better job of reporting source location for files (i.e. filemap)
...
that are really a substr of another file.
2012-02-14 19:37:33 -08:00
Brian Anderson
d5e7f0d113
rt: Don't kill tasks while they are in a callback from C
2012-02-14 11:24:09 -08:00
Brian Anderson
3f4872f032
test: Test yielding in crust functions
2012-02-14 11:24:09 -08:00
Brian Anderson
a393fb3221
rt: Maintain stack ptrs correctly when returning from stack switches
2012-02-14 11:24:09 -08:00
Brian Anderson
214cdd0dee
rustc: Translate crust functions
2012-02-14 11:24:09 -08:00
Brian Anderson
c4c89dd684
rustc: Translate the value of crust functions
2012-02-14 11:24:09 -08:00
Brian Anderson
0a503228f6
rustc: Typecheck crust functions as *u8
2012-02-14 11:24:09 -08:00
Brian Anderson
305cbf9b8e
rustc: Parse crust functions
2012-02-14 11:24:09 -08:00
Marijn Haverbeke
90324a1978
XFAIL bind-methods test until I figure out what is going wrong
...
It is not Valgrind-clean.
2012-02-14 13:54:41 +01:00
Marijn Haverbeke
57c7645cb8
Allow static method calls to be bound
...
This allows you to take the value of, for example, `[1].len`, or bind
it with `bind x.map(_)` syntax.
I'm holding off on implementing this for dynamic methods (those on
bounded type parameters or iface types) until it's clearer what we
will do with monomorphization.
Issue #435
2012-02-14 13:43:36 +01:00
Marijn Haverbeke
f2e880b750
Add [X].len() to core, use it in trans modules
2012-02-14 13:43:36 +01:00
Brian Anderson
f3dba33043
test: Add test for #1821
2012-02-13 15:58:14 -08:00
Marijn Haverbeke
94d4dcdbf0
Fix bug in handling of block functions in last-use analysis
...
It would fail to start out with a fresh scope when going over
a loop or block function for the second time, and thus not
recognize last uses of locals defined inside the block.
Closes #1818
2012-02-13 17:55:40 +01:00
Niko Matsakis
520c3f5f79
correct error message and add to test
2012-02-13 07:33:16 -08:00
Niko Matsakis
4eb52f69a9
do not fail if iface/impl method have different number of parameters
2012-02-13 06:50:58 -08:00
Niko Matsakis
a7641e99e8
remove leading ::, new tests
2012-02-13 06:50:58 -08:00
Kevin Cantu
2b4f5136a5
(core::str) rename byte_len -> len_bytes and rename char_len -> len
2012-02-12 15:30:20 -08:00
Kevin Cantu
944f5a6598
(core::str) move push_byte, push_bytes, pop_byte, and shift_byte into str::unsafe
2012-02-12 15:30:20 -08:00
Brian Anderson
005a3efb8b
test: Fix cros-crate-glob-collision
2012-02-11 18:20:02 -08:00
Niko Matsakis
3f15a28b16
correct fully qualified type names to include the crate; add tests (take 2)
...
This reverts commit fc023d91c77f468211ba9f7681b4d2a6469aac74.
2012-02-11 14:09:52 -08:00
Niko Matsakis
13d743093b
rewrite to use ctypes types
2012-02-11 10:14:41 -08:00
Niko Matsakis
b106ef8116
make bind syntax unnecessary: just use _ for one of the arguments
2012-02-11 10:14:41 -08:00
Niko Matsakis
fc023d91c7
Revert prior commit until I have time to track down the valgrind error
...
This reverts commit 2ec3a0b60833736a3c0d805768885b4392c36100.
2012-02-11 09:49:02 -08:00
Niko Matsakis
2ec3a0b608
correct fully qualified type names to include the crate; add tests
...
fixes #1745
2012-02-10 21:53:17 -08:00
Niko Matsakis
d972226567
remove executable that was accidentally included
2012-02-10 20:48:29 -08:00
Niko Matsakis
fdddf8f9e1
put serializer into the build and encode full item paths
2012-02-10 20:48:28 -08:00
Brian Anderson
17110fb28b
test: Add tests for #1802
2012-02-10 15:43:35 -08:00
Marijn Haverbeke
7f1ea3ef6a
Don't allow binding patterns to bind keywords
...
Closes #1586
2012-02-10 15:54:47 +01:00
Marijn Haverbeke
74d4e2a32e
Add compile-fail tests for interfaces/impls
...
Closes #1475
2012-02-10 13:31:33 +01:00
Tim Chevalier
503dec1d62
Further WIP on classes
...
Changes to resolve and typeck. Still nothning working yet.
2012-02-09 14:36:43 -08:00
Marijn Haverbeke
50fb4c30ed
Increase precedence of as operator
...
Closes #1717
2012-02-09 11:58:08 +01:00
Brian Anderson
35ba9715fa
core: Add task::spawn_sched
...
This function creates a new scheduler with a specified number of threads and
immediately executes a task on it. The scheduler is configured to terminate
when the task dies. This is the minimum API necessary to enable blocking C
calls.
2012-02-08 15:42:51 -08:00