Commit Graph

12648 Commits

Author SHA1 Message Date
Brian Anderson
3acf4a2a9c Fix test 2012-11-25 14:04:45 -08:00
Brian Anderson
f648de74a5 Ignore a should_fail test on windows 2012-11-25 13:52:07 -08:00
Brian Anderson
5c0206a1e4 Rename insert_with functions to update, update_with_key 2012-11-25 13:26:37 -08:00
Kevin Cantu
ff4075e553 Add improvements to insert_with_key
This commit adds a lower-level implementation of the generic
`insert_with_key` which I expect to be faster. Now insert could be
defined with insert_with_key, too, although I'm not sure we want to do that.

This also clarifies the tests a bit and adds an `insert_with` function.
2012-11-25 12:41:11 -08:00
Kevin Cantu
7b13ef7d50 Test insert_with_key... 2012-11-25 12:41:11 -08:00
Kevin Cantu
a343e435d5 Add an insert_with_key function to the Map trait 2012-11-25 12:41:11 -08:00
Tim Chevalier
455d73cb86 [libs] Remove unread_byte method from core::io::Reader
Method isn't used. See discussion on #2738 and #4031

Closes #2738
2012-11-24 14:39:21 -08:00
Tim Chevalier
fa66f3ec18 [tests] Add passing test
Closes #3683
2012-11-24 14:02:35 -08:00
Tim Chevalier
77e5498868 Long lines 2012-11-24 13:59:21 -08:00
Tim Chevalier
ec0c029a7e Split EBML module into a reader and a writer module
Minor refactoring, no review.

Closes #2739
2012-11-24 13:40:00 -08:00
Tim Chevalier
236fd32f0a [tests] Add test for #4033 2012-11-24 13:40:00 -08:00
Tim Chevalier
f74fe894fc [libstd] getopts, now with fewer copies
Change the opt_ functions in getopts to take a reference to a
Matches, instead of taking a Matches by-value, as suggested in
2012-11-24 12:52:27 -08:00
Tim Chevalier
55ca36196d Merge pull request #4026 from eholk/float-perf
Inline numeric operations for floats.
2012-11-24 09:01:23 -08:00
Tim Chevalier
626a7aa4f4 Merge pull request #4029 from Dretch/ioreadfixes
Fix a bug where read(buf, len) would fail if buf was big enough and ...
2012-11-24 09:00:55 -08:00
Gareth Daniel Smith
f841d43f54 Fix a bug where read(buf, len) would fail if buf was big enough and succeed if it was too small ... which is the opposite of correct. 2012-11-24 15:19:51 +00:00
Niko Matsakis
117e5e3583 Implement LUB algorithm and add new unit-testing infrastructure for infer.
r=brson
2012-11-24 09:53:39 -05:00
Eric Holk
c961d214d9 Inline numeric operations for floats. 2012-11-23 13:27:02 -08:00
Graydon Hoare
dc34fb9219 std: try to fix breakage. 2012-11-22 23:32:30 -08:00
Brian Anderson
e8dcb654ce Silence some debug logging in rustc 2012-11-22 22:10:49 -08:00
Graydon Hoare
632def8f34 Back out (apparently) non-bootstrap-capable snapshots. Uh oh. 2012-11-22 18:38:21 -08:00
Graydon Hoare
eeb584ccbd std: initial sketch of workcache, barely does anything. 2012-11-22 18:31:12 -08:00
Graydon Hoare
105a0b9fc1 Oops. Snapshots file has spaces there. 2012-11-22 18:31:12 -08:00
Graydon Hoare
8378b9f240 Register snapshots. 2012-11-22 18:21:02 -08:00
Graydon Hoare
0c8a009dc9 libcore: fix build breakage on win32 stat. 2012-11-21 15:35:47 -08:00
Tim Chevalier
ef833d4101 Introduce a T_err type for type errors
This allows more errors to be non-fatal, as per #1871.

I only went through and started changing span_fatal to span_err in
check.rs. There are probably more errors that could be made
non-fatal. So if you see derived type errors appearing from now on,
file a bug!

r=graydon

Closes #1871
2012-11-21 12:44:51 -08:00
Erick Tryzelaar
77ef4e7176 change json::Deserializer to take a json enum
This allows the deserializer to be used on an already
parsed json object.
2012-11-21 11:48:16 -08:00
Brian Anderson
2d4c217186 rustdoc: Fix build error 2012-11-21 11:25:01 -08:00
Patrick Walton
e6d87a3ef4 libsyntax: Implement deriving correctly for type-parameterized structs and enums. r=brson 2012-11-21 10:27:37 -08:00
Patrick Walton
57588edf3b libsyntax: Implement deriving via a syntax extension for the IterBytes trait. r=brson 2012-11-21 10:27:34 -08:00
Patrick Walton
b053f0b5e6 libsyntax: Fix duplication of items that occurs if #[deriving_eq] is applied to a non-enum/non-struct. r=brson 2012-11-21 10:27:30 -08:00
Patrick Walton
e0876fdfc1 libsyntax: Implement deriving for enums with N-ary variants. r=brson 2012-11-21 10:27:13 -08:00
Brian Anderson
809bd3e5ef rustdoc: More demoding 2012-11-20 23:01:43 -08:00
Brian Anderson
451463ab39 rustdoc: Use more explicit self 2012-11-20 22:21:03 -08:00
Brian Anderson
415664181b rustdoc: Begin removing legacy modes 2012-11-20 22:13:50 -08:00
Brian Anderson
145e02347e rustdoc: Remove legacy exports 2012-11-20 21:04:37 -08:00
Erick Tryzelaar
a27f5239bd libcore: Add stat methods to paths
Should we return the posix types, or should we just use i64s?
Should we expose platform specific stat fields?
2012-11-20 16:39:31 -08:00
Erick Tryzelaar
20c11ca757 libcore: add stat functions to libc 2012-11-20 16:39:31 -08:00
Erick Tryzelaar
28745ce7c8 libcore: Clean up the path tests 2012-11-20 16:39:30 -08:00
Erick Tryzelaar
ab5d84258e Add PosixPath and WindowsPath constructor fns 2012-11-20 16:39:30 -08:00
Erick Tryzelaar
e1a552a628 libstd: fix warnings in sort 2012-11-20 16:39:30 -08:00
Erick Tryzelaar
e70b481803 libcore: minor os.rs cleanup 2012-11-20 16:39:30 -08:00
Erick Tryzelaar
079c768df5 libcore: Fix a typo 2012-11-20 16:39:30 -08:00
Erick Tryzelaar
9539724e8b Remove parentheses from closure argument types 2012-11-20 16:39:30 -08:00
Graydon Hoare
497a8b54b5 syntax: switch tt quoter to emit ~[tt], not tt. 2012-11-20 16:08:05 -08:00
Patrick Walton
ba01cd7fb0 libsyntax: Long line. rs=make-tidy 2012-11-20 11:59:20 -08:00
Patrick Walton
a7aecc46a5 rustc: Implement "deriving" for monomorphic structs via a syntax extension. r=brson 2012-11-20 11:58:19 -08:00
Graydon Hoare
633b9a8660 Register new snapshots. 2012-11-19 22:12:02 -08:00
Brian Anderson
886117bc53 Long lines 2012-11-19 18:02:29 -08:00
Brian Leibig
a7ecab4ae7 Added support for multiline commands in the REPL with :{ .. :} 2012-11-19 16:28:03 -08:00
Graydon Hoare
34b7db3bbc Merge pull request #4001 from jesse99/features/docs
Features/docs
2012-11-19 16:10:31 -08:00
Patrick Walton
318e534895 rustc: Implement explicit self for Eq and Ord. r=graydon 2012-11-19 15:33:11 -08:00
Graydon Hoare
4101587a88 register snapshots. 2012-11-19 15:13:42 -08:00
Brian Anderson
9bed0ddb0e Fix parsing of interpolated paths 2012-11-19 14:00:39 -08:00
Brian Anderson
371be3c6c4 Remove unused file_type enum from the parser 2012-11-18 18:09:41 -08:00
Brian Anderson
74b2e99797 Report errors better when failing to open files for sub-parsers 2012-11-18 18:09:41 -08:00
Brian Anderson
72cc1aca17 Parse file mods from .rs files 2012-11-18 18:09:41 -08:00
Brian Anderson
ddbff6fd2a syntax: Remove cdir_syntax. Unused 2012-11-18 18:09:41 -08:00
Jesse Jones
e5c9a8a479 Fixed lint problems 2012-11-18 17:05:04 -08:00
Brian Anderson
68c73dc5f2 Whitespace 2012-11-18 15:00:43 -08:00
Brian Anderson
a41903d234 Remove some unused code from lexer 2012-11-18 15:00:21 -08:00
Tim Chevalier
5e4ed709cb Merge pull request #3998 from jesse99/feature/getopts
Added support for options that take no arguments and may be repeated.
2012-11-18 13:56:57 -08:00
Jesse Jones
0fd9c9d054 Made from_str pure 2012-11-18 13:25:27 -08:00
Jesse Jones
361aea94f2 Fixing warnings for long and blank lines 2012-11-18 13:25:26 -08:00
Jesse Jones
333d268b3e Made merge_sort pure 2012-11-18 13:25:26 -08:00
Jesse Jones
6d99a2f8a9 Made more stuff pure.
escape functions in char, io.with_str_reader, base64 and md5sum, cell.empty_cell
and is_empty.
2012-11-18 13:25:26 -08:00
Jesse Jones
15989ecb13 Made most of the URL functions pure.
This closes #3782.
2012-11-18 13:25:25 -08:00
Jesse Jones
c5ab47e7ba Made Result.get, get_ref, is_ok, is_err, and iter methods pure.
Note that the function versions were already pure.
2012-11-18 13:25:25 -08:00
Jesse Jones
2c0dab02ad Made the time to string functions pure as well as empty_tm.
This closes #3919.
2012-11-18 13:25:25 -08:00
Jesse Jones
c58951ea7d Replace TmMut with inherited mutability 2012-11-18 13:25:24 -08:00
Jesse Jones
a9e13586a3 Moved strptime and strftime into private helper functions.
Makes the public API much easier to see and prepares the way for making them pure.
2012-11-18 13:25:24 -08:00
Jesse Jones
68c852ad3a Made Map.contains_key, contains_key_ref, and get pure. 2012-11-18 13:25:24 -08:00
Jesse Jones
d107e586ea Documented fmt! expression syntax.
Closes #3280
2012-11-18 11:00:39 -08:00
Jesse Jones
340955b3a5 Added support for options that take no arguments and may be repeated.
Closes #3568.
2012-11-17 19:43:39 -08:00
Brian Anderson
1a1e99c27d Merge remote-tracking branch 'brson/codemap'
Conflicts:
	src/libsyntax/ext/source_util.rs
2012-11-17 18:38:39 -08:00
Brian Anderson
e621e68c60 Remove unused MultiByteChar.sum field from codemap 2012-11-16 15:52:33 -08:00
Brian Anderson
7c72fd89f1 Add some docs to codemap 2012-11-16 15:15:17 -08:00
Tim Chevalier
428c58b9f9 Forbid duplicate supertraits
I actually already pushed most of this by accident before I meant to, but
r=nmatsakis anyway.

Closes #3953
2012-11-16 15:12:14 -08:00
Brian Anderson
2af088529f Remove incorrect comment from codemap 2012-11-16 14:55:52 -08:00
Graydon Hoare
5005be67cc syntax: rename quote! to quote_tokens!, add quote_{expr,type,item,pat,stmt}!
r=brson, Close #3976.
2012-11-16 14:50:49 -08:00
Brian Anderson
1ac28c36ac Remove unused types from codemap 2012-11-16 14:35:43 -08:00
Brian Anderson
4a5b28ff0c Stop tracking CodeMap offsets in the parse session. Big simplification 2012-11-16 14:22:09 -08:00
Brian Anderson
2374154ded Stop storing char positions in CodeMap 2012-11-16 14:10:17 -08:00
Brian Anderson
81d20156cd Change spans to use byte offsets instead of char offsets 2012-11-16 12:06:44 -08:00
Graydon Hoare
2bf6663cf0 librustc: Fastisel dislikes memmove, switch to memcpy. Perf win, r=catamorphism.
Fastisel actually has a special case for memcpy, the intrinsic, by name.
It has no such special case for memmove, so bails.

Close #3987.
2012-11-16 11:26:26 -08:00
Brian Anderson
8b309e54c7 re-xfail two tests 2012-11-16 11:19:45 -08:00
Tim Chevalier
624fbbd3d1 Update and un-xfail tests 2012-11-15 19:57:46 -08:00
Tim Chevalier
b9b21b2614 Update test and un-xfail it 2012-11-15 19:36:48 -08:00
Tim Chevalier
9d6ab9ae23 Update error message and un-xfail test 2012-11-15 19:36:48 -08:00
Tim Chevalier
39c306eeef Un-xfail working tests 2012-11-15 19:36:44 -08:00
Tim Chevalier
2fd2a56063 Update error message and un-xfail test 2012-11-15 18:41:17 -08:00
Tim Chevalier
f8bd95589f Add comments explaining why these tests are xfailed 2012-11-15 18:41:17 -08:00
Tim Chevalier
d4cc7db138 Un-xfail working test 2012-11-15 18:41:17 -08:00
Tim Chevalier
2f83baf857 Check for duplicate supertraits and forbid them
As per #3953
2012-11-15 18:41:17 -08:00
Tim Chevalier
82017b8416 Make staticness mismatch a fatal error
Exit with a fatal error, instead of recording a non-fatal error,
when we encounter an impl method that's static when its corresponding
trait method isn't (or vice versa). This is because code later on in
the typechecker will expect the staticness of the two methods to be
consistent and ICE otherwise.

r=nmatsakis

Closes #3969
2012-11-15 18:14:13 -08:00
Tim Chevalier
f9ca0c89d8 Add xfailed test for #3979 2012-11-15 18:03:35 -08:00
Brian Anderson
8cba337cce Remove CodeMap.lookup_byte_pos 2012-11-15 17:32:14 -08:00
Patrick Walton
64305174c9 librustc: Fix cross-crate reexports. rs=blocking-servo 2012-11-15 17:15:02 -08:00
Tim Chevalier
cb355bf7ad Update error message and un-xfail test 2012-11-15 17:14:28 -08:00
Tim Chevalier
5da43724bf Add comments explaining why these tests fail 2012-11-15 16:59:07 -08:00
Tim Chevalier
fb47e41411 Un-xfail working tests 2012-11-15 16:59:07 -08:00
Tim Chevalier
6b65aed350 Remove test that tested behavior of unchecked blocks
We don't have unchecked blocks anymore.
2012-11-15 16:59:07 -08:00
Tim Chevalier
d58e0e30ed Update error messages and un-xfail 2012-11-15 16:59:07 -08:00
Tim Chevalier
35b2960d00 Add another test for #3177 2012-11-15 16:59:07 -08:00
Tim Chevalier
1f81e4cbc6 Remove typestate test 2012-11-15 16:59:07 -08:00
Tim Chevalier
f67904ca40 Un-ignore test_from_str and test_parse_buf
Closes #2609
2012-11-15 16:49:57 -08:00
Brian Anderson
187c6c90a1 rt: Don't print backtraces unless the ::rt::backtrace log level is greater than log_err 2012-11-15 15:14:30 -08:00
Brian Anderson
d5e35e3e87 Convert CodeMap and FileMap to use &self instead of @self 2012-11-15 15:00:49 -08:00
Graydon Hoare
1a2eaed43d rustc: make llloadenv bb optional, kill 1.5% of emitted llvm insns. 2012-11-15 14:55:11 -08:00
Brian Anderson
bcccf333ab Add some comments to codemap and lexer 2012-11-15 14:43:31 -08:00
Brian Anderson
4a0f4f5e31 Refactor the lexer to use FilePos types 2012-11-15 14:24:53 -08:00
Tim Chevalier
9b6f025eb6 Rename thread_pool to task_pool
Minor change, no review.

Closes #3972
2012-11-15 12:35:14 -08:00
Tim Chevalier
a0610c952f Add tests for #2190 (xfailed) 2012-11-15 12:35:14 -08:00
Graydon Hoare
59a034a63f rt: bump log levels up by one, fix tautological-compare error (and permit turning off logging entirely). 2012-11-15 12:03:54 -08:00
Patrick Walton
adc4bed773 librustc: Implement (and require) explicit self for derivable traits. r=nmatsakis 2012-11-15 10:26:49 -08:00
Patrick Walton
29e10c91fe librustc: Pass through extra parameters in automatically-derived methods. r=brson 2012-11-15 10:26:40 -08:00
Brian Anderson
b1dff40bae Create CodeMap.add_filemap 2012-11-14 21:56:58 -08:00
Brian Anderson
3a9ccd53e5 Factor out some position management code in the lexer 2012-11-14 21:56:55 -08:00
Niko Matsakis
b7c04d152b Inherit mutability through fixed-length vectors.
Fixes #3226.  No review (one line bug fix).
2012-11-14 19:47:06 -08:00
Ben Striegel
f4a5a76aa4 Convert the test suite to use the Drop trait 2012-11-14 19:26:37 -08:00
Graydon Hoare
6e650f2d2c llvm: fork to disable LiveIRVariabes in GCStrategy. 2012-11-14 18:21:09 -08:00
Graydon Hoare
41f2670633 librustc: discard side tables after translation, before llvm passes. 2012-11-14 18:21:09 -08:00
Brian Anderson
8069d2f266 Track character and byte positions together in the parser 2012-11-14 16:34:50 -08:00
Brian Anderson
872cb5ee8b std: Don't use Drop trait in thread_pool 2012-11-14 16:15:35 -08:00
Ben Striegel
4589597785 Convert libstd to use the Drop trait 2012-11-14 16:15:34 -08:00
Brian Anderson
f67bfe9738 Add types for character position and byte position in the codemap 2012-11-14 15:18:29 -08:00
Brian Anderson
9ecf86343a Camel case all the codemap types except span 2012-11-14 15:18:26 -08:00
Brian Anderson
c44c9a47d8 Revert "Convert libstd to use the Drop trait"
This reverts commit 28c7a25151.
2012-11-14 14:51:16 -08:00
Brian Anderson
11024eaebb rustc: Only strip out the main function when generating test executable, not lib 2012-11-14 14:11:20 -08:00
Brian Anderson
b808eaba37 rustc: Generate test code when in the 'test' config 2012-11-14 14:11:10 -08:00
Ben Striegel
28c7a25151 Convert libstd to use the Drop trait 2012-11-14 12:40:44 -08:00
Brian Anderson
8336cad95d Move two fn assignability tests from compile-fail to run-pass 2012-11-14 12:40:23 -08:00
Brian Anderson
234df9cae0 Long lines 2012-11-14 11:49:59 -08:00
Brian Anderson
f14240b1c8 Remove obsolete const pattern test 2012-11-14 11:43:28 -08:00
Patrick Walton
32ad4ae4cd librustc: Require the #[derivable] attribute, remove the significance of "impl Foo : Bar;", and allow only a subset of methods in a trait to be derived. r=brson 2012-11-14 11:36:55 -08:00
Patrick Walton
3e14ada4f6 rustc: Implement let assignability. r=nmatsakis 2012-11-14 11:26:00 -08:00
Patrick Walton
bad62dcb04 rustc: Allow constants to be used in patterns. r=nmatsakis 2012-11-14 11:06:29 -08:00
Brian Anderson
cf002e9d32 Tools should not be build prereqs of tests. Closes #3946 2012-11-13 18:35:02 -08:00
Patrick Walton
3e850c3c0c librustc: Stop reexporting all of core in every crate. rs=really-bad-bug 2012-11-13 15:46:39 -08:00
Graydon Hoare
f4e107e6c7 whitespace police 2 2012-11-13 11:30:37 -08:00
Graydon Hoare
d2f93fd290 whitespace police 2012-11-13 11:16:19 -08:00
Graydon Hoare
ac0fd0ddc9 rustc: fix pp build breakage. 2012-11-13 10:54:10 -08:00
Patrick Walton
db9f8db741 librustc: Implement deriving with a unit return type. r=tjc 2012-11-13 10:37:58 -08:00
Graydon Hoare
c6d0117bf6 rustc: add new token-tree based quasiquoter. 2012-11-13 08:57:31 -08:00
Graydon Hoare
12b212f38c rustc: Remove the case of foo![...] as invocation syntax. foo!(...) and foo!{...} only. 2012-11-13 08:57:31 -08:00
Graydon Hoare
f7960ac549 Revert "m1!{...} is now forbidden. Use m1!(...) instead."
This reverts commit 89bbaff84f.
2012-11-13 08:57:31 -08:00
Graydon Hoare
4e1ce014c8 cleanup: convert some remaining #foo invocations to foo! form. 2012-11-13 08:57:31 -08:00
Patrick Walton
2b93ab5a21 rustc: Make static methods not leak out of traits. r=brson 2012-11-12 22:11:22 -08:00
Brian Anderson
38b9740668 Remove unused get_snippet function from codemap 2012-11-12 18:36:03 -08:00
Brian Anderson
b22f941487 Make it clearer which codemap functions use chars vs. bytes 2012-11-12 18:35:17 -08:00
Brian Anderson
2ec09c4eb9 Objectify the codemap 2012-11-12 18:24:56 -08:00
Brian Anderson
1ead8aa0b5 Merge pull request #3954 from burg/result-chain
Fix Result::chain, Result::chain_err to not require Copy bounds.
2012-11-12 18:05:29 -08:00
Brian J. Burg
37ed7fcaae Fix Result::chain, Result::chain_err to not require Copy bounds. 2012-11-12 17:53:08 -08:00
Brian Anderson
15a5d2ccbf Convert codemap from legacy_exports 2012-11-12 17:26:02 -08:00
Brian Anderson
d115944809 Remove expn_info box typedef from codemap 2012-11-12 17:19:56 -08:00
Brian Anderson
18a825bda0 Reorder codemap decls 2012-11-12 17:14:15 -08:00
Brian Anderson
5b248a6ca8 Remove CodeMap box typedef from codemap 2012-11-12 17:09:52 -08:00
Brian Anderson
385a4668e5 Reformatting in codemap 2012-11-12 16:47:17 -08:00
Brian Anderson
9fc75e8d66 Move codemap doc comments to the proper place 2012-11-12 16:45:24 -08:00
Brian Anderson
1f3303163c Move filemap ctors to static methods 2012-11-12 16:44:53 -08:00
Brian Anderson
5f881b48cb Remove filemap box typedef from codemap 2012-11-12 16:41:20 -08:00
Brian Anderson
4c68084963 Convert most codemap types from records to structs 2012-11-12 16:21:39 -08:00
Patrick Walton
fe02814a63 rustc: Implement floating point literal inference. r=nmatsakis 2012-11-12 10:39:08 -08:00
Brian Anderson
f05e2da709 Add a test for multiple main functions 2012-11-09 12:13:55 -08:00
Brian Anderson
3f816bdd57 xfail-fast run-pass/pub-use-xcrate 2012-11-08 19:02:25 -08:00
Brian Anderson
166c10e666 std: Eliminate copy warning 2012-11-08 17:14:02 -08:00
Brian Anderson
c78020ef4f Whitespace 2012-11-08 17:11:44 -08:00
Brian Anderson
8643f757a2 rustc: Fix cross-crate reexports. #3908. r=pcwalton 2012-11-08 17:10:48 -08:00
Brian J. Burg
a5718ba377 Change option::expect to not require a Copy bound, and move instead. 2012-11-08 16:25:22 -08:00
Brian Anderson
17020244e4 Merge pull request #3923 from am0d/master
Fixes issue #3891
2012-11-08 12:35:14 -08:00
a_m0d
062ac8cb97 Fix whitespace issues from previous commits.
Also added test for #3891.
2012-11-07 23:49:01 -05:00
Patrick Walton
0fc952372a rustc: Support irrefutable patterns in function arguments. r=nmatsakis 2012-11-07 19:29:30 -08:00
Patrick Walton
b223c9c465 rustc: Autovivify modules even when a type def is present in resolve. Closes #3931. rs=nasty-bug 2012-11-07 14:28:16 -08:00
Brian Anderson
69a8b4d8e2 Rename src/rustc to src/librustc. Use the driver crate 2012-11-07 13:53:39 -08:00
Patrick Walton
f72ef31ede rustc: Long lines 2012-11-07 13:48:09 -08:00
Patrick Walton
2904095570 rustc: Implement the Drop trait. r=brson 2012-11-07 12:34:32 -08:00
Patrick Walton
70886d314d libstd: Implement a thread pool. r=brson 2012-11-07 12:05:41 -08:00
Zack Corr
a54d046174 Implement Ptr trait for mutable unsafe pointers. Closes #3926. 2012-11-07 16:24:29 +10:00
Graydon Hoare
92e3a8c17e rustc: reuse const vals, translate fn paths as consts. Close #2530. 2012-11-06 17:13:52 -08:00
a_m0d
d42cf97bcc Fix trailing whitespace issues 2012-11-06 19:16:01 -05:00
a_m0d
59a592f4c4 Add end_of_file handling to TcpBufferedSocket.
This fixes #3891.

Also removed debug!(...) statement from socket destructor which causes a
crash when the logging level is set to debug.
2012-11-06 19:12:26 -05:00
Niko Matsakis
b0ed151539 Cleanup how we handle proto in types, remove unsound subtyping
Fixes #1896 which was never truly fixed, just masked.
The given tests would have failed had they used `~fn()` and
not `@fn()`.  They now result in compilation errors.

Fixes #2978.

Necessary first step for #2202, #2263.
2012-11-06 08:56:29 -08:00
Brian Anderson
53ec6c3f9b rt: Remove shape code 2012-11-05 15:22:35 -08:00
Brian Anderson
bc3f89e92b rustc: Stop declaring unused upcalls 2012-11-05 15:22:35 -08:00
Patrick Walton
449f4fbb07 rustc: Implement deriving involving generic bounded traits. r=brson 2012-11-05 13:38:45 -08:00
Patrick Walton
be93b29d30 rustc: Implement parsing and typechecking for "once fn" 2012-11-05 13:17:02 -08:00
Brian Anderson
9aadfc3f4b Make std::rl unsafe. #3921 2012-11-05 11:20:44 -08:00
Brian Anderson
849d3ff703 rusti: main must be public 2012-11-04 17:51:57 -08:00
Brian Anderson
6a332b235f rusti's crate type is 'lib' 2012-11-04 17:48:47 -08:00
Brian Anderson
84208b2d26 Librarify rusti, etc. 2012-11-04 17:14:52 -08:00
Brian Anderson
9b723b25c7 Use 0.5 crates in rusti 2012-11-04 14:16:13 -08:00
Brian Anderson
6757eeefe5 Long lines 2012-11-04 14:06:51 -08:00
Brian Anderson
1b0c6665d9 Merge remote-tracking branch 'brson/repl'
Conflicts:
	mk/install.mk
	src/rt/rustrt.def.in
2012-11-04 13:42:39 -08:00
Brian Anderson
799eb105b9 Use a linenoise with win32 support 2012-11-04 13:34:14 -08:00
Brian Anderson
45a908cad0 Merge pull request #3916 from Dretch/iofix
More methods/docs/tests for core::io
2012-11-04 12:51:34 -08:00
Gareth Daniel Smith
fd6f62f9c7 Add more doc-comments for Reader, ReaderUtil, Writer and WriterUtil (loosely associated with issue #2004). 2012-11-04 18:11:37 +00:00
Gareth Daniel Smith
0aba903de7 Add size-specific int reading methods to ReaderUtil to match the existing int writing methods in WriterUtil (for issue #2004). 2012-11-04 10:14:49 +00:00
Zack Corr
a450119b0b Move rusti::rl to std::rl 2012-11-04 15:40:57 +10:00
Daniel Patterson
6c79d78843 library-ifying of tools - turning cargo, rustdoc, fuzzer, into libraries, as per #3543 2012-11-03 18:23:43 -07:00
Tim Chevalier
563aa0bf6c Remove the last use of rustrt::rust_compare_and_swap_ptr
Closes #3527

r=brson
2012-11-03 14:11:30 -07:00
Tim Chevalier
a006608276 Remove stage0 stuff that was awaiting snapshot
and re-register snapshots

Just removing unneeded code, no review
2012-11-03 14:04:32 -07:00
Gareth Daniel Smith
a42d2d408a Fix a bug where .write([]) would always fail. 2012-11-03 18:48:02 +00:00
Tim Chevalier
444a16a7e8 Revert "Register snapshots"
This reverts commit 04671b250d.
2012-11-03 00:22:29 -07:00
Tim Chevalier
04671b250d Register snapshots 2012-11-03 00:14:47 -07:00
Brian Anderson
762101b72a syntax: Fold macros in default methods. Closes #3911 2012-11-02 23:11:36 -07:00
Patrick Walton
b90d7d4c81 rustc: Refactor vtable lookup to use a vtable context, so that it can be called outside a function. rs=refactor 2012-11-02 17:59:15 -07:00
Patrick Walton
9e0c596141 rustc: Eliminate the necessity of having an expr in order to call lookup_vtables(). rs=#rust
Automatically-generated derived methods don't have exprs and need to call this function.
2012-11-02 17:11:57 -07:00
Brian Anderson
e2f33e6883 Add xfailed test for #3908 2012-11-02 15:57:47 -07:00
Brian Anderson
1c8c1b2181 Add xfailed test for #3907 2012-11-02 15:37:47 -07:00
Tim Chevalier
4876eb708c Fix #1996 (pending snapshot)
Change int to uint in some extfmt code. Remove the #[cfg(stage0)] code
after a snapshot.
2012-11-02 12:01:38 -07:00
Patrick Walton
caf68038dd test: Fix error messages in compile-fail tests. rs=rustbot 2012-11-02 10:43:28 -07:00
Patrick Walton
ad02510258 libcore: Implement a memory-safe "each_val" for data in aliasable, mutable locations 2012-11-02 10:17:32 -07:00
Patrick Walton
0c2e6fda73 rustc: Implement ~Trait. r=nmatsakis 2012-11-02 10:15:19 -07:00
Patrick Walton
65d4dbeb12 rustc: Implement dereference via unary '*' for structs. r=nmatsakis 2012-11-02 09:56:35 -07:00
Patrick Walton
4165edff22 rustc: Implement translation of pattern matching for tuple structs and unit-like structs. r=nmatsakis 2012-11-02 09:56:28 -07:00
Patrick Walton
106f9976ab rustc: Implement typechecking, exhaustiveness checking, and borrow checking for pattern matching of tuple structs. r=nmatsakis
Conflicts:

	src/rustc/middle/typeck/check/alt.rs
2012-11-02 09:56:09 -07:00
Brian Anderson
b62844e755 core: peek returns false for terminated pipes. Closes #3905 2012-11-02 00:57:44 -07:00
Brian Anderson
a90020fe8d xfail issue-2061 2012-11-01 17:13:59 -07:00
Brian Anderson
b92c1197b6 Long lines 2012-11-01 16:39:32 -07:00
Tim Chevalier
0069bd2f46 Add run-fail test for #2061 2012-11-01 16:20:58 -07:00
Brian Anderson
3edccc311e Support #[cfg] on methods 2012-11-01 15:48:50 -07:00
Tim Chevalier
768247f393 Tests for #1896 2012-11-01 15:14:52 -07:00
Tim Chevalier
b269ac13cd Adding xfailed test for #3874 2012-11-01 15:14:52 -07:00
Patrick Walton
abab49b7cf rustc: Fix tab characters 2012-11-01 15:13:43 -07:00
Patrick Walton
94f05c1936 rustc: Stop overwriting trait static method types when checking generic trait refs. Closes #3903. rs=blocking-burg 2012-11-01 15:10:41 -07:00
Tim Chevalier
3d8df9947f Add xfailed test cases 2012-11-01 14:43:26 -07:00
Tim Chevalier
9d276b11e5 Add test case for #3878, which didn't get merged somehow 2012-11-01 14:43:20 -07:00
Brian Anderson
45d04f5704 rustc: Swap argument order in drop_and_cancel_clean 2012-10-31 16:11:27 -07:00
Brian Anderson
740763fdef Merge remote-tracking branch 'vertexclique/incoming' 2012-10-31 16:11:23 -07:00
Mahmut Bulut
add4127192 change function and place in expr.rs 2012-11-01 00:49:37 +02:00
Brian Anderson
cb4de738cf Fix checking of duplicate and missing struct field initializers. Closes #3486. Closes #3892 2012-10-31 13:56:41 -07:00
Zack Corr
15880b3564 rusti: Correct by-copy flag 2012-10-31 13:21:28 +10:00
Zack Corr
1d55a5778b rusti: Remove legacy modes and exports 2012-10-31 10:11:19 +10:00
Tim Chevalier
4e5865f2ad Fix #1458 (allow paren'd exprs to be the operator in a do)
Closes #1458
2012-10-30 15:06:13 -07:00
Tim Chevalier
165ce14f68 Remove xfail-pretty from tests that pretty-print correctly now 2012-10-30 15:06:10 -07:00
Mahmut Bulut
1dc4d024a8 testcase added for #3878 2012-10-31 00:05:34 +02:00
Tim Chevalier
62f98c8ff8 Preserve parenthesization in the AST
Maintain explicit "paren" nodes in the AST so we can pretty-print
without having to guess where parens should go. We may revisit this
in the future.

r=graydon
2012-10-30 15:05:32 -07:00
Mahmut Bulut
bf792b922c * dropnzero_val fn added
* zero-mem for not needed drop situation placed in Ignore
2012-10-30 23:37:09 +02:00
Patrick Walton
a3b83c6224 rustc: Translate "deriving" for monomorphic intra-crate enums. r=brson 2012-10-30 11:40:44 -07:00
Patrick Walton
675c272dad rustc: Instantiate trait refs for automatically-derived implementations. Should fix check-fast. rs=bustage 2012-10-30 11:21:01 -07:00
Graydon Hoare
b7872fa13e core: fix breakage from recent merge. 2012-10-30 10:33:19 -07:00
Graydon Hoare
9bcafa28aa Merge pull request #3881 from vertexclique/incoming
Removing iter::TimesIx
2012-10-30 10:30:35 -07:00
Mahmut Bulut
f938714be1 Remove trait of TimesIx 2012-10-30 15:19:14 +02:00
Zack Corr
ea996556b9 rusti: Remove linenoise module, add to rt, remove core::rl 2012-10-30 11:08:36 +10:00
Patrick Walton
dd76050e51 Merge pull request #3885 from pcwalton/master
rustc: Implement typechecking for automatically-derived enums
2012-10-29 14:23:22 -07:00
Patrick Walton
a369a7881f rustc: Implement typechecking for automatically-derived enums 2012-10-29 14:11:56 -07:00
Graydon Hoare
5e5474e895 std: disable timsort crash-test on windows. 2012-10-29 11:29:27 -07:00
Patrick Walton
17a875b08a Merge pull request #3871 from pcwalton/master
rustc: Translate monomorphic intra-crate automatically-derived method…
2012-10-29 10:37:22 -07:00
Mahmut Bulut
ac92cc8898 Removing iter::TimesIx 2012-10-28 22:36:01 +02:00
Tim Chevalier
5e5ea04608 Make class-cast-to-trait compile (not sure why this worked before) 2012-10-27 17:38:57 -07:00
Tim Chevalier
64193a9eb8 Remove unnecessary suffixes 2012-10-27 17:16:26 -07:00
Tim Chevalier
47baebc68c Remove un-needed comparisons, suppress warnings 2012-10-27 17:07:45 -07:00
Zack Corr
1afa29986f rusti: Correct formatting 2012-10-27 21:41:41 +10:00
Zack Corr
c97c8131a5 rusti: Add current working directory to search path 2012-10-27 18:52:47 +10:00
Zack Corr
4912428cb5 rusti: Add linenoise, wrap into core::rl and add rusti REPL tool
Add Brian Leibig to AUTHORS.txt for REPL contributions
2012-10-27 18:03:15 +10:00
Niko Matsakis
2093952847 Partial fix for #2687---impl method must only be subtype of trait method, not exact match. 2012-10-26 19:41:17 -07:00
Patrick Walton
d5a27a0e0c rustc: Translate monomorphic intra-crate automatically-derived methods that follow the "eq" format 2012-10-26 18:23:45 -07:00
Patrick Walton
c7ec183b34 libsyntax: Fix pretty printing of tuple structs. Attempt to put out fire. rs=rustbot 2012-10-26 12:11:40 -07:00
Brian Anderson
c851d2a1bc std: Fix build errors in sort 2012-10-25 15:34:20 -07:00
Tim Chevalier
decbbaa182 Fix long line 2012-10-25 14:54:40 -07:00
Tim Chevalier
af842bf76c Rename core::uniq to core::owned
No review.
Closes #3841
2012-10-25 14:48:28 -07:00
Patrick Walton
93a0763d53 libsyntax: Don't write a ctor ID for struct-like enum variants. rs=rustbot 2012-10-25 14:20:09 -07:00
Brian Anderson
a9d7642b5d Merge remote-tracking branch '14427/incoming'
Conflicts:
	src/libstd/sort.rs
2012-10-25 14:01:49 -07:00
Patrick Walton
57cd6b3e3f rustc: Translate and check exhaustiveness of struct-like enum variant patterns. r=nmatsakis 2012-10-25 13:59:10 -07:00
Patrick Walton
65ee0e1ded Merge pull request #3858 from pcwalton/struct-like-typeck
rustc: Typecheck, privacy check, and borrow check struct-like enum variants. r=tjc
2012-10-25 12:35:29 -07:00
Tim Chevalier
75947b311a Make error message for non-copyable args less misleading
No review, just changing error message text.

Closes #3855
2012-10-25 12:20:41 -07:00
Patrick Walton
588ea59992 rustc: Typecheck, privacy check, and borrow check struct-like enum variants 2012-10-25 12:15:52 -07:00
Patrick Walton
599b4208fb rustc: Translate tuple struct constructors 2012-10-25 11:49:26 -07:00
Patrick Walton
ce23a99925 libcore: Make a few more dvec functions inline. Improves profile of Servo. rs=me 2012-10-25 10:23:37 -07:00
Simon BD
d4432a7974 Remove some unused MergeState code, add a Fixme and remove a workaround involving pure code not being considered pure 2012-10-25 11:30:41 -05:00
Brian Anderson
b2d5acd6bc Merge remote-tracking branch 'brson/futures' 2012-10-24 20:29:01 -07:00
Brian Anderson
d82ddc280c Long lines 2012-10-24 20:28:39 -07:00
Niko Matsakis
c6ed01cab3 adjust comments 2012-10-24 18:56:31 -07:00
Niko Matsakis
8468c40fde Workaround #3850 2012-10-24 18:56:31 -07:00
Niko Matsakis
1a3a70760b Implement proper subtyping for region fn types (part of #2263) 2012-10-24 18:56:31 -07:00
Simon BD
f2216ec9d0 Move binarysort out of MergeState 2012-10-24 20:42:41 -05:00
Simon BD
98c8a40828 Remove commented out code 2012-10-24 20:38:34 -05:00
Simon BD
8e6d209914 Remove and comment out more MergeState code 2012-10-24 20:36:10 -05:00
Simon BD
046460c7f6 Remove some code that MergeState used to prevent double frees 2012-10-24 19:21:39 -05:00
Simon BD
19a59cb748 Fix tests for Copy bound 2012-10-24 19:17:24 -05:00
Simon BD
fb61f915db Add copy bound to sort 2012-10-24 19:15:11 -05:00
Brian Anderson
a66e01369d Merge pull request #3852 from veddan/type-limits
Lint pass like GCC's -Wtype-limits (#3833)
2012-10-24 14:38:49 -07:00
Brian Anderson
3b6f5a18a2 Merge branch 'method-vis-parse'
Conflicts:
	src/libsyntax/parse/parser.rs
2012-10-24 12:15:21 -07:00
Patrick Walton
4da58a5bd6 rustc: Implement typechecking for tuple structs. r=nmatsakis 2012-10-24 10:54:09 -07:00
Viktor Dahl
0707780eac Added compile-fail tests 2012-10-24 19:14:50 +02:00
Viktor Dahl
87b5f05a9d Cleaned up formatting and fixed bug in rev_binop 2012-10-24 18:44:37 +02:00
Viktor Dahl
9d915294c9 Implemented '-W type-limits' (#3833) 2012-10-24 18:44:37 +02:00
Mahmut Bulut
27fb3fe90d stage2 run-pass test for #3753 2012-10-24 18:32:36 +03:00
Mahmut Bulut
21cbc310c7 Make check & Tidy 2012-10-24 16:51:33 +03:00
Patrick Walton
61bb3571a5 rustc: Implement construction of monomorphic struct-like variants. r=nmatsakis 2012-10-23 19:23:46 -07:00
Brian Anderson
d29962f0eb Move futures to std 2012-10-23 14:46:49 -07:00
Brian Anderson
f500f3f1fb core: Remove remaining use of Future 2012-10-23 14:21:15 -07:00
Brian Anderson
3e4b2bd2b2 core: Use PortOne instead of Future in future_result 2012-10-23 14:21:15 -07:00
Brian Anderson
f6d2a71436 core: Remove the unused Notification enum 2012-10-23 14:21:15 -07:00
Brian Anderson
b6bde885dc core: Use less code for option dancing that notification channel 2012-10-23 14:21:15 -07:00
Brian Anderson
84c8549622 core: Replace future_pipe with pipe::oneshot 2012-10-23 14:21:15 -07:00
Brian Anderson
50f9925fab core: Give future_pipe the same definition as pipes::oneshot 2012-10-23 14:21:15 -07:00
Brian Anderson
759e1c165f rt: Remove unused string upcalls harder 2012-10-23 13:48:09 -07:00
Brian Anderson
8d932160d9 rt: Remove box annihilator 2012-10-23 12:14:46 -07:00
Brian Anderson
a469a3524d rt: Remove unused string upcalls 2012-10-23 12:14:45 -07:00
Tim Chevalier
087cbb55d0 Remove <- operator from the compiler
Yield an obsolete syntax error on things like "let foo <- bar;"
and "foo <- bar;" r=brson

Progress on #3466
2012-10-23 12:10:19 -07:00