Commit graph

36982 commits

Author SHA1 Message Date
Graydon Hoare
f0dfbe7b1b Register new snapshots, purge log_err and log_full in favour of log(...). 2011-12-22 17:53:53 -08:00
Graydon Hoare
389329ef1e Merge all 3 log syntaxes, tidy up residual misuses. 2011-12-22 16:14:00 -08:00
Graydon Hoare
8b580954fe Register snapshots and switch logging over to use of log_full or #error / #debug. 2011-12-22 14:42:52 -08:00
Lenny222
d812d06bc8 std::unicode: add functions, unit test 2011-12-22 22:58:38 +01:00
Marijn Haverbeke
e2e077c831 Remove trivial cast checker
I consider the added complexity not justified at this point, and it
interacts badly with the patches for issue #828. Feel free to discuss.
2011-12-22 15:04:00 +01:00
Lenny222
7beb21c6e3 tests: add corner case (empty list) 2011-12-22 08:59:22 +01:00
Lenny222
6f5a0a3b3b json: add "null" 2011-12-22 08:46:49 +01:00
Niko Matsakis
66856a39b3 add tests I forgot to add 2011-12-21 08:41:41 -08:00
Niko Matsakis
627217fa55 valid cap clause for kind-ness too 2011-12-21 06:14:36 -08:00
Brian Anderson
dedfef4c4c Revert "wip"
This reverts commit aeadc6269e.
2011-12-20 20:57:04 -08:00
Brian Anderson
aeadc6269e wip 2011-12-20 20:15:09 -08:00
Graydon Hoare
a24c19e867 Add companion-module core.rs that exports log levels and option/some/none everywhere. 2011-12-20 12:41:44 -08:00
Stefan Plantikow
b957916e06 removed math leftovers from std 2011-12-20 18:07:36 +01:00
Haitao Li
28b825d846 test: Remove 'error:' from error pattern
May include ansi escape code for color rendering on certain terminal.
2011-12-20 15:38:40 +08:00
Niko Matsakis
55a2fd18ec implement capture clauses (move, in particular) and integrate
them into type state and so forth
2011-12-19 14:07:46 -08:00
Niko Matsakis
b2b2a430df resolve capture clauses 2011-12-19 14:07:46 -08:00
Niko Matsakis
b0f1a5f051 when collecting free vars, track the span where it is used too 2011-12-19 14:07:46 -08:00
Niko Matsakis
98cbbbb642 impl the proper partial order between fn types 2011-12-19 14:07:46 -08:00
Erick Tryzelaar
02d84d89e0 libcore: add splitn to split a string N times. 2011-12-19 10:22:07 -08:00
Erick Tryzelaar
8e54e74be4 libcore: add vec push.
This is a simple wrapper around grow for the common
case of pushing a value on the end of a vector.
2011-12-19 10:22:07 -08:00
Erick Tryzelaar
6b1c60d312 libcore: Add vec any2 and all2 functions. 2011-12-19 10:22:07 -08:00
Erick Tryzelaar
a66f0688fd getopts: add test for strings with spaces. 2011-12-19 07:27:16 -08:00
Marijn Haverbeke
60acae4df7 Add type argument field to expr_path
This way, you can explicitly provide type parameters when calling a
generic method.

Issue #1227
2011-12-19 10:43:23 +01:00
Marijn Haverbeke
7185ea35c3 Use quotes around tokens in parser error messages to make them more readable
Closes #1328
2011-12-19 09:59:51 +01:00
Stefan Plantikow
fa27724a4b std: getopts now uses result::t (fixes #1289) 2011-12-18 18:55:39 -08:00
Brian Anderson
12cde6ebee libcore: Remove task::set_min_stack
This existed to make up for the lack of stack growth, and wasn't generally
safe.
2011-12-18 14:10:41 -08:00
Brian Anderson
22ac628e8c test: Enable all morestack tests 2011-12-18 13:37:33 -08:00
Marijn Haverbeke
f4acaf6934 Only look for a matching method when normal field access fails
We should probalby warn when defining a method foo on {foo: int} etc.

This should reduce the amount of useless typevars that are allocated.

Issue #1227
2011-12-18 19:41:44 +01:00
Brian Anderson
471b4d6e58 rt: Use a DWARF CFI scheme that works on mac in __morestack 2011-12-17 14:10:44 -08:00
Graham Fawcett
f14bc54b06 allow #[link_args] with #[nolink]. For now, fail if two modules link same lib, and second has link_args.
I think it should undefined to have multiple modules that link in the same
library, but provide different link arguments. Unfortunately we don't track
link_args by module -- they are just appended as discovered into the crate
store -- but for now, it should be an error to provide link_args on a module
that's already been included (with or without link_args).
2011-12-16 15:29:59 -08:00
Graham Fawcett
7ddd353ef6 implement #[nolink]; deprecate #[link_name = ""]; note in stdlib to remove empty link_name.
Can't remove them from stdlib until the snapshotted compiler supports #[nolink].
2011-12-16 15:29:59 -08:00
Elly Jones
89e880d613 std: file_is_dir -> path_is_dir, add path_exists 2011-12-16 17:37:21 -05:00
Niko Matsakis
34283c6a78 add test that requires capturing generic descriptors 2011-12-16 08:06:45 -08:00
Niko Matsakis
4465c1ad02 first test of sendable fns (passes) 2011-12-16 08:06:45 -08:00
Niko Matsakis
ac6aba016e rename iter2 to iteri to match typical convention 2011-12-16 07:17:29 -08:00
Niko Matsakis
2833ca478c reorder args to the various vec, option fns so blk comes last 2011-12-16 07:17:23 -08:00
Marijn Haverbeke
cff6bdd036 Change syntax for impl
Move the name of the bundle to the front, allow type parameters (not
handled yet), and add a 'for' keyword:

    impl utils for int {
        fn str() -> str { int::str(self) }
        fn times(f: block()) { ... }
    }
2011-12-16 11:46:57 +01:00
Marijn Haverbeke
4f826d81f6 Make 1.f parse as a field access on the integer 1
A dot is only considered part of a number when not followed by a letter

Closes #1306
2011-12-16 11:46:57 +01:00
Marijn Haverbeke
7efef98901 Make uses of self in impls compile
Get rid of expr_self_call, introduces def_self. `self` is now,
syntactically, simply a variable. A method implicitly brings a `self`
binding into scope.

Issue #1227
2011-12-16 11:46:57 +01:00
Patrick Walton
fd1dd76977 stdlib: Add a str::split_str() to split on a delimiter string of any length 2011-12-15 17:39:53 -08:00
Stefan Plantikow
af8e471908 Fixed type resolution error in math tests 2011-12-14 14:54:16 -08:00
Stefan Plantikow
50db7ce906 Moved std::math to std::core
- merges math and float into core::float
- Splits core::ctypes into core::ctypes and core::mtypes
- cmath is not exported
- stdtest::math passes
2011-12-14 14:54:16 -08:00
Stefan Plantikow
6d0901cb4d std: export math_f* as math::f* submods and use tailcalls in std::math 2011-12-14 14:54:16 -08:00
Graydon Hoare
fa9ad984fb Copy first batch of material from libstd to libcore. 2011-12-13 16:34:50 -08:00
Brian Anderson
7a8e73662d rt: Make unwinding through __morestack work on mac
Had to bump the min stack size in some of the tests from 256 bytes
to 1024 bytes. Not sure why yet.
2011-12-11 18:49:04 -08:00
Marijn Haverbeke
44ffd8e3aa Allow type annotations for blocks
I.e. {|foo: int| -> int foo + 2}

Issue #1275
2011-12-09 09:42:22 +01:00
Marijn Haverbeke
9a269a3aa8 Allow binding of nested patterns
See src/test/run-pass/nested-patterns.rs for some examples. The syntax is

    boundvar@subpattern

Which will match the subpattern as usual, but also bind boundvar to the
whole matched value.

Closes #838
2011-12-08 12:03:48 +01:00
Marijn Haverbeke
17e99ec57f Fix test that used an oversized int literal 2011-12-07 22:10:56 +01:00
Marijn Haverbeke
7548a0d77a Restore accidentally overwritten test 2011-12-07 22:02:38 +01:00
Marijn Haverbeke
3d0610b072 Check for literals that are out of range for their type 2011-12-07 21:53:05 +01:00