1969 Commits

Author SHA1 Message Date
Marijn Haverbeke
0da1aca498 Recognize last uses for copied closed-over variables
And clean up and fix some bad things in last_use.rs.

Closes #1894
2012-02-29 18:06:26 +01:00
Niko Matsakis
1fd9abaa47 rename aux to auxiliary, since aux is apparently reserved on windows 2012-02-28 06:45:33 -08:00
Niko Matsakis
5c1338a18e add ability to run multi-crate tests, run tests with --inline 2012-02-28 06:31:29 -08:00
Tim Chevalier
c28c258f91 Disallow type parameters in the main() function
Closes #1900
2012-02-25 11:06:01 -08:00
Niko Matsakis
274c9708f0 Test for #1374 2012-02-24 21:14:31 -08:00
Graydon Hoare
b44be95e45 Support basic, unsophisticated, somewhat wrong export-globs. 2012-02-23 18:39:14 -08:00
Graydon Hoare
5f4dcb0fa4 Fix comment, add test that export glob works as import glob in scope. 2012-02-23 18:39:13 -08:00
Marijn Haverbeke
780f8277f4 Finish cleanup of core::str
Closes #1849
2012-02-23 17:00:19 +01:00
Kevin Cantu
7782f5d692 (core::str) remove len_bytes alias 2012-02-23 17:00:19 +01:00
Kevin Cantu
98447f5236 (core::str) mostly rename len -> len_chars 2012-02-23 17:00:19 +01:00
Brian Anderson
27ab663845 rustc: Don't ignore attributes inside empty mods. Closes #1655 2012-02-22 21:47:23 -08:00
Brian Anderson
ffa77dd610 test: Add a test for #1696 2012-02-22 21:17:19 -08:00
Brian Anderson
ae23ee28e2 test: Add a test for #1697 2012-02-22 21:14:27 -08:00
Brian Anderson
99a48660d1 rustc: Allow any integral types on rhs of shift ops 2012-02-22 17:26:08 -08:00
Tim Chevalier
4acfcd8c2f Improve error message for use of a non-pure-fn in a pred
Closes #1883
2012-02-22 10:59:52 -08:00
Marijn Haverbeke
1e5266260a Take move captures in account in mutability checker
Closes #1461
2012-02-22 13:35:17 +01:00
Marijn Haverbeke
ffd50b9cdf Make the various from_str functions return options
So that they can be used with user input without causing task
failures.

Closes #1335
2012-02-22 13:18:15 +01:00
Marijn Haverbeke
ad03761a97 Remove preconditions from libraries
Closes #1805
2012-02-22 11:47:47 +01:00
Brian Anderson
77a01054fa rustc: Generate crates with #ast 2012-02-21 15:34:26 -08:00
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