Commit graph

8283 commits

Author SHA1 Message Date
Brian Anderson
96af6f05a1 rt: Randomize port selection 2012-02-16 12:53:21 -08:00
Brian Anderson
601f7144d8 core: Add comm::select2
Receives on two ports simultaneously
2012-02-16 12:53:18 -08:00
Brian Anderson
b2cfb7ef82 rt: Add rust_port_select function 2012-02-16 11:12:22 -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
Marijn Haverbeke
ea6bb5aafa Remove to_zero/to_revoke kludge
It is much simpler to just move by_move args into a temporary
alloca.
2012-02-16 13:55:17 +01:00
Niko Matsakis
bfff2a8d55 make mut a keyword synonymous with mutable
first step towards issue #1273
2012-02-15 13:26:11 -08:00
Niko Matsakis
dddd9908d5 move shape into trans 2012-02-15 13:26:10 -08: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
4b63826050 Replace some explicit fails with 'alt check' invocations 2012-02-15 15:47:42 +01:00
Marijn Haverbeke
5b6eb67128 Register new snapshot 2012-02-15 14:00:02 +01:00
Marijn Haverbeke
9e685005d4 Fix use of expr_alt in fuzzer that was causing the build to fail 2012-02-15 12:01:09 +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
9ff5ba085d Fix bad line printing for parse errors
The code that extracted lines from partially-parsed files
was broken.

Closes #1848
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
Graydon Hoare
450c4f3fa8 Merge pull request #1808 from kevina/macro-fixups
More quasi-quote related fixups
2012-02-14 20:57:01 -08:00
Graydon Hoare
79c1ab234d Merge pull request #1845 from mernen/master
Typos on reference manual
2012-02-14 20:48:50 -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
379194753c Use file_substr rather than <anon> when re-parsing quasi-quotes
for better error messages.
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
Kevin Atkinson
74b4345a38 Change file_substr to allow for external strings. 2012-02-14 19:37:33 -08:00
Daniel Luz
06658b46b8 Duplicate keyword 2012-02-14 23:39:30 -02:00
Daniel Luz
039cc8d6c5 Fixed missing quote on bracket literal 2012-02-14 23:39:02 -02:00
Brian Anderson
ff6b71f78b core: Add core::future
Futures will be required for upcoming changes to the task API
2012-02-14 16:45:17 -08:00
Brian Anderson
859e025652 rt: Reconfigure the C stack for valgrind each time it's used 2012-02-14 15:11:56 -08:00
Brian Anderson
b157f0b263 core: Add comm::peek for looking into the message queue 2012-02-14 14:07:06 -08:00
Brian Anderson
a53a08e1b9 rt: Don't allocate a C stack for tasks that already have one 2012-02-14 13:51:15 -08:00
Graydon Hoare
44d4889bc2 Merge pull request #1842 from uasi/fix-typo
Fix typos in the reference manual
2012-02-14 11:44:16 -08:00
Tomoki Aonuma
6d1d9a0236 Fix typos in the reference manual 2012-02-15 04:34:02 +09: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
78034aa22a rustc: Add trans_crust_fn. Don't do anything special yet 2012-02-14 11:24:09 -08:00
Brian Anderson
d7c8cacfde rustc: Extract native function generation into trans::native 2012-02-14 11:24:09 -08:00
Brian Anderson
4cc1e31f74 rt: Add a Rust callback debugging function 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
Brian Anderson
6943b38e4f rustc: Add crust functions to the AST 2012-02-14 11:24:09 -08:00
Brian Anderson
acabd821d2 Merge pull request #1831 from killerswan/str_fixes
(core::str) changes to find / find_bytes
2012-02-14 11:22:31 -08:00
Brian Anderson
0cae213801 Merge pull request #1836 from tychosci/cargo-fix
cargo: additions for issue #1643 and #1806
2012-02-14 10:58:45 -08:00
Patrick Walton
d4d21b4279 tutorial: Mention how the destructor works in the section on resources. Closes #1615. 2012-02-14 09:28:39 -08:00
Marijn Haverbeke
857ad58dce Fix double-cleanup bug in patch 57c7645cb8
Things would run fine (probably by sheer luck) but valgrind didn't
approve.
2012-02-14 15:59:41 +01: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