Commit Graph

13595 Commits

Author SHA1 Message Date
Daniel Micay
45c9f6a099 add find method to the core::container::Map trait 2013-01-23 14:25:06 -05:00
Daniel Micay
ee0a8c68ab rename hashmap find_ref/get_ref -> find/get 2013-01-23 14:25:06 -05:00
Daniel Micay
203fcbd0f3 rename hashmap find/get -> find_copy/get_copy 2013-01-23 14:25:06 -05:00
Daniel Micay
bc96fe9c49 get rid of the std::map::Map LinearMap impl
This legacy trait needs to be dropped in order to migrate to
core::container::Map, which doesn't require @ and Copy, and will make
proper use of borrowed pointers.
2013-01-23 14:25:06 -05:00
Daniel Micay
b7ef28c33a rename send_map to hashmap
This makes the module much more discoverable, and is in line with the
'treemap' naming.
2013-01-23 14:25:01 -05:00
Patrick Walton
778aec998b libsyntax: Implement the + syntax for multiple trait bounds. r=tjc 2013-01-23 11:15:10 -08:00
Tim Chevalier
995ccc0d82 Merge pull request #4596 from Trinick/tomutrename
core: Rename to_mut and from_mut to cast_to_mut and cast_from_mut
2013-01-23 10:56:08 -08:00
Trinick
9dc8e96c5f core: Rename to_mut and from_mut to cast_to_mut and cast_from_mut 2013-01-23 10:09:45 +00:00
Tim Chevalier
54344c2468 testsuite: Add tests for mutable function arguments 2013-01-22 23:34:35 -08:00
Tim Chevalier
83ddb55e8f syntax: Pretty-print mut qualifiers on args 2013-01-22 23:34:35 -08:00
Tim Chevalier
a7eaa1f5e4 syntax: Allow closure args to be mutable 2013-01-22 23:34:34 -08:00
Seo Sanghyeon
800b8a759d Implement mut in arguments 2013-01-22 23:34:34 -08:00
Seo Sanghyeon
d10b5c725b Add is_mutbl field to def_arg 2013-01-22 23:34:34 -08:00
Seo Sanghyeon
4dd29dee57 Parse mut in arguments 2013-01-22 23:34:33 -08:00
Seo Sanghyeon
9a5d617092 Add is_mutbl field to arg 2013-01-22 23:34:33 -08:00
Tim Chevalier
dfa97c21a5 Merge pull request #4586 from thestinger/treemap
drop is_not_empty from TreeSet/TreeMap
2013-01-22 23:08:18 -08:00
Seo Sanghyeon
3ed39ce26f Handle divide by zero in constant evaluator 2013-01-23 15:07:00 +09:00
Graydon Hoare
93e969e356 std: un-ignore strptime test; fix bug introduced by 1a226f instead. 2013-01-22 21:42:24 -08:00
Graydon Hoare
2c870e4074 Merge pull request #4585 from thestinger/map
migrate LinearMap<T, ()> to LinearSet<T>
2013-01-22 19:52:39 -08:00
Daniel Micay
7eb8642aed drop is_not_empty from TreeSet/TreeMap 2013-01-22 22:36:29 -05:00
Daniel Micay
9cdcd9bff9 migrate gather_loans.rs to LinearSet 2013-01-22 22:10:04 -05:00
Daniel Micay
342cb602db migrate coherence.rs to LinearSet 2013-01-22 22:10:00 -05:00
Tim Chevalier
e31ebeadc1 std: Ignore time::tests::test_strptime, it's failing for some reason
I'll file an issue.
2013-01-22 19:09:21 -08:00
Daniel Micay
8cff5c22c3 migrate task/spawn.rs to LinearSet 2013-01-22 21:28:28 -05:00
Daniel Micay
7de5e6c487 migrate gc.rs to LinearSet 2013-01-22 21:28:28 -05:00
Graydon Hoare
499f00de1d std: various hacking on workcache. 2013-01-22 17:55:36 -08:00
Graydon Hoare
bcaeb20800 long line police 2013-01-22 17:53:27 -08:00
Tim Chevalier
14d721388b Add test case for change in 039bfe 2013-01-22 16:22:55 -08:00
Josh Matthews
72259e0772 Translate const references to extern functions as *i8 instead of the typical closure pair. Fixes #4522. 2013-01-22 16:22:55 -08:00
Tim Chevalier
1a226f5807 Merge pull request #4466 from ScriptDevil/master
Range checking and miscellaneous fixes tin time library
2013-01-22 16:10:48 -08:00
Tim Chevalier
9d672671e2 Make borrowck's notion of scopes consistent with trans's notion of scopes
This eliminates an ICE in trans where the scope for a particular
borrow was a statement ID, but the code in trans that does cleanups
wasn't finding the block with that scope. As per #3860

preserve looks at a node ID to see if it's for a statement -- if it
is, it uses the enclosing scope instead when updating the map that
trans looks at later.

I added a comment noting that this is not the best fix (since it may
cause boxes to be frozen for longer than necessary) and referring
to #3511.

r=nmatsakis
2013-01-22 15:59:45 -08:00
Tim Chevalier
519b60f313 Merge pull request #4580 from Dretch/atvec-constructors
Add more constructors for managed vectors (as proposed in issue #4553)
2013-01-22 15:24:12 -08:00
Tim Chevalier
10260bee38 Change debuginfo to not use an option for the output type...
...now without a random libuv change.
2013-01-22 15:13:23 -08:00
Tim Chevalier
a36eacc4f9 Revert "Clean up previous commit to not require an Option"
I made a mistake and included some submodule weirdness.
About to re-push the patch without that.

This reverts commit 17ea548275.
2013-01-22 15:12:35 -08:00
gareth
9b27ec8684 Add more constructors for managed vectors (as proposed in issue #4553) 2013-01-22 22:52:20 +00:00
Tim Chevalier
17ea548275 Clean up previous commit to not require an Option 2013-01-22 14:28:05 -08:00
Josh Matthews
5b4e569bf3 Fix building of all rustc components with -g. 2013-01-22 14:27:21 -08:00
Tim Chevalier
a8d076d2de syntax/rustc: Make some metadata-related functions take slices, kill bad copies
Too small to review.
2013-01-22 11:58:08 -08:00
Tim Chevalier
8869e72386 Simplify path_entry's closure argument
Make the closure take two arguments instead of a single `path_entry`
struct; remove the `path_entry` type. This eliminates a bad copy.
2013-01-22 11:06:54 -08:00
Tim Chevalier
e02449c41d Merge pull request #4571 from thestinger/container
more work on container traits
2013-01-22 10:57:26 -08:00
Tim Chevalier
0c276daeb9 Merge pull request #4575 from cpeterso/timespec-nsec-comment
Add Timespec comment and assert about negative nsec
2013-01-22 10:40:57 -08:00
Daniel Micay
6f4d86ed90 add a base Container trait 2013-01-22 08:10:08 -05:00
Daniel Micay
d635a6e506 add a container::Map trait 2013-01-22 08:10:08 -05:00
Daniel Micay
ffb9049274 add a Mutable container trait with clear 2013-01-22 08:09:53 -05:00
Chris Peterson
f5a3ce687d Add Timespec comment and assert about negative nsec 2013-01-21 20:51:58 -08:00
Tim Chevalier
d3bb4990dd rustc: Make metadata::encoder::encode_path take an &path
Eliminates some bad copies.
2013-01-21 20:39:58 -08:00
Tim Chevalier
143039ca43 docs: Fix typo 2013-01-21 19:50:38 -08:00
William Ting
60184d12b6 Update documentation with examples for various int, vec methods.
add int::range(), remainder() examples
add vec::foldl(), foldr() examples

tweak
2013-01-21 19:50:38 -08:00
Tim Chevalier
b49c47a4c9 Merge pull request #4570 from wting/minor_int_cleanup
minor int-template.rs cleanup
2013-01-21 19:44:37 -08:00
Daniel Micay
66e50892c1 style fix 2013-01-21 21:27:21 -05:00
William Ting
04d38f38e7 minor int-template.rs cleanup 2013-01-21 11:15:11 -06:00
Chris Peterson
b3cbe9e3c1 Enable lint warnings for doc tests 2013-01-20 22:56:45 -08:00
Tim Chevalier
885f0a2eab testsuite: Un-xfail test for #3029 and move to run-fail 2013-01-20 20:35:24 -08:00
Tim Chevalier
b9920b052b testsuite: Tweak tests for #3888 2013-01-20 19:51:33 -08:00
Tim Chevalier
01f26249bb rustc: Print out region errors involving a function scope properly 2013-01-20 19:51:33 -08:00
Tim Chevalier
e5bf6d1afa testsuite: Update error message, unbreak build 2013-01-20 18:22:11 -08:00
Tim Chevalier
bc5dd2f557 rustc: Suppress more derived errors 2013-01-20 15:13:29 -08:00
Tim Chevalier
0a8c039135 Merge pull request #4506 from thestinger/mkdtemp
clean up tempfile module and rm FIXME
2013-01-20 14:18:00 -08:00
Tim Chevalier
fa4f4fa673 Merge pull request #4519 from cpeterso/impl-timespec-ord
Implement Ord trait for Timespec
2013-01-20 14:15:29 -08:00
Tim Chevalier
b428cd55b8 Merge pull request #4557 from thestinger/tidy-fix
fix long lines
2013-01-20 14:09:49 -08:00
Erick Tryzelaar
7f2c399f3a Convert many libsyntax records into structs
Specifically:

ast_map::ctx
ast_util::id_range
diagnostic::{handler_t,codemap_t}
auto_encode::field
ext::base::{macro_def,syntax_expander_tt,syntax_expander_tt_item}
ext::pipes::proto::next_state
2013-01-20 14:08:18 -08:00
Erick Tryzelaar
28da4ecdaa convert librustc record types to structs
specifically:

freevars::freevar_entry
ty::{field_ty,AutoAdjustment,AutoRef}
mod::{method_param,method_map_entry}
2013-01-20 14:08:18 -08:00
Erick Tryzelaar
d5d77b9351 convert the remaining ast record types into structs
These are: region,arg,fn_decl,method,_mod,foreign_mod,
variant_arg,enum_def_,variant_,trait_ref.
2013-01-20 14:08:18 -08:00
Erick Tryzelaar
5ba7e55a4c convert ast::{ty_field_,ty_method} into a struct 2013-01-20 14:08:18 -08:00
Erick Tryzelaar
8cdc3fda11 convert ast::ty into a struct 2013-01-20 14:08:18 -08:00
Erick Tryzelaar
8a3a1fc148 convert ast::expr into a struct 2013-01-20 14:08:18 -08:00
Daniel Micay
1f85c711af fix long lines 2013-01-20 17:07:57 -05:00
Tim Chevalier
1280a64089 Revert "Fix options passed to gpg in cargo init"
As per https://github.com/mozilla/rust/pull/4253

This reverts commit 6c05697667.
2013-01-20 14:05:07 -08:00
Tim Chevalier
b86c90b73a Merge pull request #4554 from thestinger/set
add a Set trait
2013-01-20 13:45:42 -08:00
Daniel Micay
5320e132d1 add a LinearSet type (implementing the Set trait) 2013-01-20 15:12:52 -05:00
Daniel Micay
13d07ad0a6 add a Set trait and implement it for TreeSet 2013-01-20 14:58:19 -05:00
Simon Sapin
9788c41ce7 repr: represent char values as char literals rather than integers. 2013-01-20 12:03:02 +01:00
Tim Chevalier
1cfa01decf Merge pull request #4546 from alexcrichton/bitv-difference-bug
Fix the difference method on bit vectors
2013-01-19 17:40:59 -08:00
Tim Chevalier
ef0f71dc3f testsuite: Add xfailed test for #4335 2013-01-19 17:39:15 -08:00
Tim Chevalier
1e1707ccb8 testsuite: Add license 2013-01-19 17:38:12 -08:00
Alex Crichton
95d25ca47c Fix the difference method on bit vectors 2013-01-19 20:17:12 -05:00
Tim Chevalier
96b4f43675 Handle region errors where the actual scope is a statement
Prevents a case of "unknown scope, this is a bug".

I judged this too small to review. Closes #4500
2013-01-19 17:06:36 -08:00
Graydon Hoare
e51ec26dd7 xfail-fast the #[main] tests, r=burningtree 2013-01-18 17:44:26 -08:00
Tim Chevalier
b72ed5572f core: Allow set_buffer_ to be referred to as set-buffer
After a snapshot, we can take out the set_buffer_ version (pipes
syntax exts use it).

As per #4421
2013-01-18 15:28:34 -08:00
Chris Peterson
a8ff9f2ef9 Rename copy_overlapping_memory() to copy_memory() 2013-01-18 14:38:46 -08:00
Tim Chevalier
97b20f8e02 rustc: Make type_names and named_types tables in trans use @str instead of ~str
Cuts down on bad copies (though there are still a few that can go
away once there are impls of push / append / + for @str)
2013-01-18 14:30:29 -08:00
Tim Chevalier
9c1476e7a4 Comments: turn XXXes into FIXMEs 2013-01-18 14:21:31 -08:00
Tim Chevalier
90372da5a8 testsuite: Update error messages. Unbreak build, I hope 2013-01-18 13:35:07 -08:00
Brian Anderson
6b6acde972 Add a license check to tidy. #4018 2013-01-17 23:28:42 -08:00
Brian Anderson
1bf8e57943 Add finally method for deferred execution 2013-01-17 19:24:52 -08:00
Brian Anderson
db1abbec4c core: Add private global data interface. #3915 2013-01-17 19:24:50 -08:00
Tim Chevalier
1244c0b6fd rustc: One Less Bad Copy 2013-01-17 19:17:24 -08:00
Niko Matsakis
440f8dfc4e Correct tests
rs=breakage
2013-01-17 18:45:57 -08:00
Niko Matsakis
532c94d0f1 Propagate expected types through block expressions.
r=graydon
2013-01-17 18:45:48 -08:00
Niko Matsakis
9fed56ed90 When decoding types, indicate to the def-id conversion function what kind of
def-id we have, so that the inliner can distinguish between external and
internal def-ids.  Also add some comments explaining the distinction!

Fixes #4516.

r=graydon
2013-01-17 18:45:45 -08:00
Daniel Micay
c7abdd3847 re-borrow in heir_swap (fixes compile) 2013-01-17 16:54:12 -08:00
Daniel Micay
f7d9485331 indentation fix 2013-01-17 16:54:12 -08:00
Daniel Micay
3fe6faace8 make is_superset/is_subset O(n+m) instead of O(n*log(m)) 2013-01-17 16:54:12 -08:00
Daniel Micay
4f92d8fb52 make intersection O(n+m) instead of O(n*log(m)) 2013-01-17 16:54:12 -08:00
Daniel Micay
9fb49088b3 make is_disjoint O(n+m) instead of O(n*log(m)) 2013-01-17 16:54:12 -08:00
Daniel Micay
8935771377 cleanup 2013-01-17 16:54:12 -08:00
Daniel Micay
4b567dd067 add TreeSetIterator 2013-01-17 16:54:12 -08:00
Daniel Micay
2b17e2fc18 docstring/comment fixes 2013-01-17 16:54:11 -08:00
Daniel Micay
3df183e7ab fix bug in union implementation (missing return) 2013-01-17 16:54:11 -08:00
Daniel Micay
a73f4b1baa implement symmetric_difference 2013-01-17 16:54:11 -08:00
Daniel Micay
d44084e100 implement set union 2013-01-17 16:54:11 -08:00
Daniel Micay
b8caba2fce make TreeSet tests a bit more paranoid 2013-01-17 16:54:11 -08:00
Daniel Micay
1aaeda1e1e add scaffolding for symmetric_difference/union 2013-01-17 16:54:11 -08:00
Daniel Micay
90b111f4bf range search would be nice 2013-01-17 16:54:11 -08:00
Daniel Micay
670748e383 implement set difference 2013-01-17 16:54:11 -08:00
Daniel Micay
3b3ecc9ffc fix API of union 2013-01-17 16:54:11 -08:00
Daniel Micay
dc27759bd1 remove 'TODO' from the list of future improvements 2013-01-17 16:54:11 -08:00
Daniel Micay
d001171435 rm extra newline 2013-01-17 16:54:11 -08:00
Daniel Micay
cae273abc0 clean up equality code a bit 2013-01-17 16:54:11 -08:00
Daniel Micay
1e5c553b7c make Eq implementation O(n) 2013-01-17 16:54:11 -08:00
Daniel Micay
9cc9a7582c add a lazy forward iterator to TreeMap 2013-01-17 16:54:11 -08:00
Daniel Micay
7f754764d6 replace treemap with a balanced tree 2013-01-17 16:54:11 -08:00
Patrick Walton
9f7514bfae test: Fix busted compile-fail tests. rs=bustage 2013-01-17 16:30:59 -08:00
Patrick Walton
f405e41d7a librustc: Implement write guards for borrowing @mut to & or &mut. r=nmatsakis 2013-01-17 11:50:20 -08:00
Chris Peterson
ed17ce1dda Implement Ord trait for Timespec 2013-01-16 23:37:21 -08:00
Tim Chevalier
8bde2c1d65 Minor cleanup and eliminate a bad copy 2013-01-16 19:29:38 -08:00
Patrick Walton
a2ec5400ff Merge pull request #4493 from jbclements/rename-moved-variable-to-moved-value
s/moved variable/moved value/
2013-01-16 12:30:55 -08:00
Daniel Micay
46880337f4 clean up tempfile module and rm FIXME
This removes the FIXME suggesting that mkdtemp should rely on the
default umask, because that would make it unusable for making a secure
work area in a world writable directory (have to assume that other users
have created files, directories, hard links, etc. in your directory).
The POSIX mkdtemp function creates a directory with 700 permissions to
avoid this problem.
2013-01-16 06:19:41 -05:00
Brian Anderson
ac435af73a Add at_exit function #4450 2013-01-15 18:00:19 -08:00
Brian Anderson
090b247056 Spawn new tasks onto the primary scheduler by default. #3760 2013-01-15 18:00:19 -08:00
Graydon Hoare
989667e545 librustc: minor missing change for crate-as-struct. 2013-01-15 17:57:45 -08:00
Graydon Hoare
84825ee310 librustc: Make the default sigil for block lambdas & instead of @. 2013-01-15 17:57:45 -08:00
Brian Anderson
bd6536f868 Merge pull request #4497 from ILyoan/i4488
When building a test runner, don't remove the main function
2013-01-15 17:27:45 -08:00
Brian Anderson
a7f422d55e Merge pull request #4503 from nickdesaulniers/incoming
Swap return value order in pipes::oneshot Issue #4496
2013-01-15 17:24:24 -08:00
Nick Desaulniers
bb7d7204e2 Swap return value order in pipes::oneshot Issue #4496 2013-01-15 17:18:00 -08:00
ILyoan
a63b11a009 when test, just remove #[main] attr 2013-01-15 17:06:37 +09:00
Erick Tryzelaar
293cd3480c convert ast::{field_,capture_item_,mt} and middle::ty::mt into structs 2013-01-14 21:36:27 -08:00
Erick Tryzelaar
4bcd19f6be Convert ast::{pat,field_pat,local_,arm} into structs 2013-01-14 20:52:28 -08:00
Erick Tryzelaar
3ea3136e84 convert ast::blk_ into a struct 2013-01-14 19:35:08 -08:00
Erick Tryzelaar
0b9e23146b convert ast::crate_ into a struct. 2013-01-14 19:06:59 -08:00
Erick Tryzelaar
eb8fd119c6 convert ast::pat_list_ident_ to a struct 2013-01-14 18:15:54 -08:00
Erick Tryzelaar
4b0f702608 convert ast::attribute_ and ast::view_item to a struct 2013-01-14 18:15:54 -08:00
Erick Tryzelaar
eafed93d72 convert ast::struct_field_ into a struct 2013-01-14 18:15:54 -08:00
Erick Tryzelaar
1f5e9ff362 convert ast::struct_def to a struct 2013-01-14 18:15:54 -08:00
Erick Tryzelaar
530a113bfa convert ast::item into a struct 2013-01-14 18:15:53 -08:00
Erick Tryzelaar
ebea895d02 convert ast::struct_dtor_ into a struct 2013-01-14 18:14:17 -08:00
Erick Tryzelaar
5c0d674a45 convert ast::foreign_item to a struct 2013-01-14 18:14:16 -08:00
Erick Tryzelaar
e1f1a1204a change ast::ty_param into a struct. 2013-01-14 18:14:16 -08:00
Erick Tryzelaar
df7d376d25 Convert ast::def_id into a struct. 2013-01-14 18:14:16 -08:00
Erick Tryzelaar
bea67bde21 Change ast::path into a struct. 2013-01-14 18:14:16 -08:00
John Clements
3bf8b8af98 s/moved variable/moved value/ 2013-01-14 17:38:22 -08:00
Tim Chevalier
1be4bfb8cc Merge pull request #4491 from jbclements/removed-ast-self-import
removed self-import (minor cleanup)
2013-01-14 17:35:12 -08:00
John Clements
dd621bd58d removed self-import (minor cleanup) 2013-01-14 17:26:56 -08:00
Tim Chevalier
a4dc65baa1 syntax/rustc: Eliminate some bad copies
r=pcwalton
2013-01-14 15:49:53 -08:00
Brian Anderson
0ca369e9dc Merge pull request #4485 from sanxiyn/use-truncate
Use vec::truncate for vec::retain
2013-01-14 14:11:26 -08:00
Brian Anderson
e699058511 Merge pull request #4484 from sanxiyn/test-retain
Add a test for vec::retain
2013-01-14 14:09:17 -08:00
ILyoan
b7cefd0c96 allowing the entry point name to be something other than main
add build tests
2013-01-14 13:58:13 -08:00
Brian Anderson
0e8490757f Merge pull request #4477 from jld/char-repr
Reflect on char as u32, not uint (which may be u64).
2013-01-14 13:39:29 -08:00
Brian Anderson
f1d0478002 Add cfg attrs to handle auto_encode transition 2013-01-14 13:17:20 -08:00
Brian Anderson
fc582bcfce Merge remote-tracking branch 'mneumann/f-serialize' 2013-01-14 12:56:31 -08:00
Daniel Micay
d0751b6535 spelling fixes for iter module docstrings 2013-01-14 09:46:32 -05:00
Seo Sanghyeon
e368b16f82 Use vec::truncate for vec::retain 2013-01-14 19:45:08 +09:00
Seo Sanghyeon
23b130441a Add a test for vec::retain 2013-01-14 17:38:15 +09:00
Ashok Gautham
e69d491aea Tidied up long lines 2013-01-14 10:01:09 +05:30
Jed Davis
0e1985eda6 Reflect on char as u32, not uint (which may be u64).
Fixes mozilla/rust#4473.
2013-01-13 19:08:30 -08:00
Brian Anderson
3d54187890 Win32 build fix 2013-01-13 16:43:39 -08:00
Brian Anderson
e6b57f858f Add FIXME's for #4404. Android JNI hacks 2013-01-13 16:43:39 -08:00
ILyoan
4fb4be8f17 More android support
Conflicts:
	Makefile.in
	cmakeFiles/rustllvm.cmake
2013-01-13 16:43:39 -08:00
kyeongwoon
987f824f23 Support ARM and Android
Conflicts:
	src/libcore/os.rs
	src/librustc/back/link.rs
	src/librustc/driver/driver.rs
	src/librustc/metadata/loader.rs
	src/librustc/middle/trans/base.rs
2013-01-13 16:43:39 -08:00
Brian Anderson
27e6a0fa56 Update libuv for Android 2013-01-13 16:43:39 -08:00
Tim Chevalier
62d1db1d6c Long lines 2013-01-13 16:34:54 -08:00
Tim Chevalier
07c39b1436 Merge pull request #4474 from tychosci/readlink_safe
core: Use libc::readlink function properly
2013-01-13 15:10:33 -08:00
Tim Chevalier
26334b64a2 Merge pull request #4411 from wting/4203_rename_memcpy
Rename memcpy, memmove, memset
2013-01-13 14:58:24 -08:00
Tim Chevalier
9bb399a6d6 Merge pull request #4444 from JensNockert/pub-semaphore
Make std::sync::semaphore() public
2013-01-13 14:56:14 -08:00
Tim Chevalier
fbc33e0247 Merge pull request #4459 from jld/constenum
Allow consts to be initialized by non-nullary enum constructors
2013-01-13 14:42:57 -08:00
Jed Davis
1b01629f18 Make vectors (& old ports) of zero-size types allocate one byte each. 2013-01-13 14:37:59 -08:00
Jed Davis
ea53c48ca2 Make empty structs debug-printable 2013-01-13 14:37:59 -08:00
Jed Davis
1b4f3fad1e Correct (I hope) amd64 ABI handling for empty structs 2013-01-13 14:37:59 -08:00
Jed Davis
cd01ecfe13 One more place where for loops and their bodies need to be unconfused. 2013-01-13 14:37:59 -08:00
Jed Davis
33414d81d1 Fix long lines in for loop trans change 2013-01-13 14:37:59 -08:00
Niko Matsakis
c75d45d7e3 For for loop bodies, translate the type of the closure
based on the expr_loop_body expression and not the inner closure
2013-01-13 14:37:59 -08:00
Jed Davis
745a020db5 Make () actually size 0 2013-01-13 14:37:59 -08:00
Tycho Sci
6441d619ba core: Use libc::readlink function properly
The specification of readlink() says it's not guaranteed that the
returned contents of the symbolic link is null-terminated.
2013-01-14 07:33:47 +09:00
Peter Williams
d5dc66ad31 core: Align cmp::le() with the other implementations
Also add comments reminding that IEEE 754 requires unusual semantics for
comparison operators as applied to NaNs (x != x, if x = NaN), in case someone
in the future wants to get clever.
2013-01-13 14:32:34 -08:00
Tim Chevalier
7eae397e58 Merge pull request #4465 from thestinger/option
improvements to option module
2013-01-13 14:29:05 -08:00
Daniel Micay
ac85bf356f add Option methods for in-place mutation 2013-01-13 11:09:09 -05:00
gifnksm
62f2749775 Inlining methods/functions in core.
Also inlining some functions which take functions as arguments.
2013-01-14 00:13:44 +09:00
Ashok Gautham
a157f1d5bf Add range checking in the time library
This was requested in Issue #2350. New function match_digits_in_range
added and used instead of match_digits wherever needed.
2013-01-13 17:18:10 +05:30
Ashok Gautham
406d2b3bfe Fix errors in how parsed time values were used
%u flag takes a value in the range of 1-7. However value needs to be
stored in tm.tm_wday between 0 and 6.
%y takes a two-digit year value. Subtracting 1900_i32 from it is not
needed.
2013-01-13 17:18:10 +05:30
Ashok Gautham
ca9358388a Fix incorrect error messages in the time library 2013-01-13 17:18:10 +05:30
Daniel Micay
3c6da7761b avoid unwrap in Option::map_consume implementation 2013-01-13 01:38:20 -05:00
Daniel Micay
65a0125f7f add Option map_consume_default method 2013-01-13 01:37:58 -05:00
Daniel Micay
a33966b2f2 add Option methods for swap_unwrap and map_consume 2013-01-13 00:48:30 -05:00
Patrick Walton
802d475190 libstd: "target_os = win32", not "target_os = windows". rs=bustage 2013-01-12 10:11:44 -08:00
Jed Davis
3aca4a1663 Regression tests for passing enum-typed consts by reference.
If the PointerCast in trans_def_lvalue is removed, these cases cause
LLVM assertion failures.
2013-01-11 23:42:51 -08:00
Jed Davis
79f0d67d28 Add more tests for enum constants.
The tests have consts defined both before and after their uses in order
to prevent bugs that depend on the order in which they are translated.
2013-01-11 23:42:51 -08:00
Jed Davis
349fa1e550 Omit needless zeroes for C-like variants of non-C-like enums 2013-01-11 23:42:51 -08:00
Jed Davis
abae61257c Allow consts to be non-nullary enum constructors 2013-01-11 23:42:51 -08:00
Jed Davis
f76e28aa1c Allow consts' LLVM types to depend on their initializers.
Loosening the connection between the LLVM type and the Rust type
is necessary to use non-nullary enum constructors as const initializers,
because the const needs to be initialized with data of the actual type of
the variant in question, which is (generally) not the same as the u8
array in the `type_of` type.

Thus, referring to a const now requires casting the LLVM global to the
expected pointer type instead of using it as-is.
2013-01-11 23:42:51 -08:00
Jed Davis
452642422d Factor out base::get_discrim_val from const translation 2013-01-11 23:42:51 -08:00
Tim Chevalier
0bc730f9b0 Merge pull request #4443 from wting/4386_add_privs
Adds priv qualifiers where they have been commented out before implementation.
2013-01-11 20:11:57 -08:00
Tim Chevalier
847d30db66 Merge pull request #4445 from apasel422/notop
Allow logical negation operator (!) to be overloaded
2013-01-11 20:10:51 -08:00
Andrew Paseltiner
92810089b5 libsyntax: Fix name generation in condition! macro 2013-01-11 21:32:10 -05:00
Brian Anderson
f99d6cab43 Long lines 2013-01-11 17:59:35 -08:00
Patrick Walton
063a7ad481 libstd: Ignore failing test on Windows 2013-01-11 15:47:11 -08:00
Tim Chevalier
cfa62cd5ee Make ast_util::path_name_i take a slice vector, eliminate a bad copy 2013-01-11 15:19:05 -08:00
Brian Anderson
1b1700f44b Add core::private::run_in_bare_thread
This begins executing Rust code in a fresh context with no runtime environment
2013-01-11 14:53:28 -08:00
Tim Chevalier
4c441e95d6 Comment out test_decode_form_urlencoded again. Filed issue 4449. rs=breakage 2013-01-11 13:40:49 -08:00
Andrew Paseltiner
ea937dca89 test: add test for overloading logical negation operator 2013-01-11 16:27:12 -05:00
Andrew Paseltiner
0de7aa5506 allow logical negation operator (!) to be overloaded 2013-01-11 14:31:44 -05:00
Patrick Walton
a82c8b3da2 test: XFAIL issue_3882 due to strange Windows failure. rs=failure 2013-01-11 10:57:24 -08:00
Patrick Walton
9b3452e10a libstd: Fix std test. rs=busted 2013-01-11 09:22:23 -08:00
Jens Nockert
6df643981b Make std::sync::semaphore() public 2013-01-11 12:51:16 +01:00
William Ting
9fd970ad13 Adds priv qualifiers where they have been commented out before implementation.
Updates #4386.
2013-01-11 02:30:10 -06:00
Patrick Walton
ad2fc50ca1 libcore: Fix core test more. rs=broken 2013-01-10 23:08:17 -08:00
Patrick Walton
c6fe93d9b5 libcore: Fix core test. rs=broken 2013-01-10 22:36:54 -08:00
Patrick Walton
83675895af libcore: Fix windows bustage. rs=bustage 2013-01-10 21:58:30 -08:00
Patrick Walton
b71381dcc9 libcore: Fix linux/windows bustage. rs=fire 2013-01-10 21:49:31 -08:00
Patrick Walton
a0c2a9b743 librustc: Implement a #[no_mangle] attribute to suppress name mangling. r=brson
This is very helpful for SDL, as SDL wants you to define a function named
`SDL_main`.
2013-01-10 21:44:59 -08:00
Tim Chevalier
0c05a6c092 Use filtered instead of filter in rustdoc. Fixes segfault.
...of course, it shouldn't be segfaulting, but this fixes the
build.

rs=breakage
2013-01-10 21:26:56 -08:00
Patrick Walton
ca71c6ec5b librustc: Make all external functions unsafe. r=tjc 2013-01-10 21:24:08 -08:00
Tim Chevalier
42095221f4 Properly suppress derived type error messages
Previously, the typechecker suppressed many but not all errors,
by suppressing errors where the actual type was either ty_err, or
a function type whose result was ty_err. Added a has_ty_err flag
to the type flags so as to suppress errors for any types involving
ty_err.

r=nmatsakis
2013-01-10 20:15:04 -08:00
Tim Chevalier
0274292bed std: Address XXXes in flatpipes 2013-01-10 20:10:10 -08:00
Tim Chevalier
3e7da96fd2 std: Fix pattern match on reference, address an XXX 2013-01-10 20:10:10 -08:00
Tim Chevalier
30c308b952 std: Fix net_url test that was commented out 2013-01-10 20:10:09 -08:00
Tim Chevalier
0ce0f83a38 std: Fix test that was commented out 2013-01-10 20:10:09 -08:00
Tim Chevalier
e1c52a4a9f core: Change XXXs into proper FIXMEs with issue numbers 2013-01-10 20:10:09 -08:00
Tim Chevalier
90a0dd4008 core: Change XXXs into proper FIXMEs with issue numbers 2013-01-10 15:35:41 -08:00
Tim Chevalier
603e13cc02 Use deriving_eq for Task 2013-01-10 15:35:41 -08:00
Tim Chevalier
329a57882f Add xfailed test for #3973 2013-01-10 15:35:41 -08:00
Niko Matsakis
fe0f84823a add two more copies required in word-count rs=breakage 2013-01-10 15:02:31 -08:00
Tim Chevalier
ae0ca9c646 Add working test for issue 3935 and xfailed test for issue 3888 2013-01-10 14:38:37 -08:00
Tim Chevalier
e0850d11ec Add test cases: one xfailed, one not 2013-01-10 14:16:02 -08:00
Niko Matsakis
89ed595e30 correct expected error msgs in various tests rs=breakage 2013-01-10 13:58:14 -08:00
Tim Chevalier
8a687dd8e4 tests: Add two test cases, one xfailed 2013-01-10 13:44:27 -08:00
Niko Matsakis
737e115646 mode: reset mode on entry to fn body.
This is an interim fix to address the "Beware!" unsoundness.  I have a
more comprehensive rewrite of mode.rs in the pipeline.

r=pcwalton
2013-01-10 13:17:25 -08:00
Brian Anderson
eaa256509e Merge pull request #4414 from gifnksm/bigint-test
Issue 4393 BigInt tests fail on 32-bit platforms
2013-01-10 11:19:11 -08:00
Patrick Walton
2a1b6c4de9 librustc: Implement &static as the replacement for Durable. r=nmatsakis 2013-01-10 11:16:54 -08:00
Patrick Walton
982830c836 librustc: Allow the type parameter version of Self to be spelled with a capital S 2013-01-10 10:37:22 -08:00
Graydon Hoare
61210e01f9 test: fix check-fast breakage. 2013-01-10 10:24:18 -08:00
gifnksm
360982f24f Fix: BigInt tests fail on 32-bit platforms 2013-01-10 22:47:55 +09:00
William Ting
5cfde77bca Rename memcpy, memmove, memset to prevent any confusion with the C equivalents.
Closes #4203.
2013-01-10 01:24:41 -06:00
Patrick Walton
349e772bc5 libcore: Fix missing off_t import on Mac. rs=bustage 2013-01-09 21:15:27 -08:00
Patrick Walton
bea3a7a14c libcore: Some more fixes to Windows libc stuff. rs=bustage 2013-01-09 21:14:28 -08:00
Patrick Walton
bd737d41a1 libcore: Fix Windows resolve errors. rs=bustage 2013-01-09 20:39:37 -08:00
Patrick Walton
1cc22a35df libcore: Fix import in libc. rs=bustage 2013-01-09 19:25:33 -08:00
Graydon Hoare
1f03ba134f std: fix net::tcp::test fallout from 2db3abd harder 2013-01-09 19:12:51 -08:00
Graydon Hoare
6644da5805 core: fix crashing vec methods due to non-working moved self. 2013-01-09 17:21:21 -08:00
Brian Anderson
6a2e495d67 rt: Remove unused command line parsing 2013-01-09 15:26:15 -08:00
Niko Matsakis
2b92962aa2 A collection of refactorings that I found it hard/tiresome to divide:
- Make `extern fn()` assignable to any closure type, rather than
  a subtype.
- Remove unused int_ty_set and float_ty_set
- Refactor variable unification and make it more DRY
- Do fn sub/lub/glb on the level of fn_sig
- Rename infer::to_str::ToStr to infer::to_str::InferStr
- Capitalize names of various types
- Correct hashing of FnMeta
- Convert various records-of-fns into structs-of-fns.  This is both
  eliminating use of deprecated features and more forwards compatible
  with fn reform.

r=pcwalton
2013-01-09 14:59:07 -08:00
Graydon Hoare
11a307294a rustc: yet more arch-specific fallout from 2db3abd 2013-01-09 14:11:55 -08:00
Graydon Hoare
d0fa688f56 rustc: more arch-specific fallout from 2db3abd 2013-01-09 10:43:16 -08:00
Graydon Hoare
dd5734d487 rustc: more fallout from 2db3abd 2013-01-09 09:49:11 -08:00
Graydon Hoare
896dcd4eb3 compiletest: more win32 fallout from 2db3abd 2013-01-09 09:48:17 -08:00
Graydon Hoare
8436a4460e core: try to fix arch- and platform-specific fallout from 2db3abd 2013-01-09 09:26:59 -08:00
Graydon Hoare
aebbd6bb46 std: fix net::tcp::test fallout from 2db3abd 2013-01-09 09:26:59 -08:00
Graydon Hoare
9b8c04e236 core: ignore recent should_fail tests on windows 2013-01-09 09:26:59 -08:00
Erick Tryzelaar
c766924f44 core: add vec.filter that moves elems out of the vector 2013-01-09 08:55:37 -08:00
Erick Tryzelaar
2891a49f0d core: rename vec.filter to vec.filtered 2013-01-09 08:55:37 -08:00
Erick Tryzelaar
9a7e261562 core: add vec.partition and vec.partitioned 2013-01-09 08:55:37 -08:00
Erick Tryzelaar
c55787d009 core: add a vec.consume method 2013-01-09 08:55:37 -08:00
Erick Tryzelaar
8f9a507973 core: add self to all vec methods 2013-01-09 08:55:37 -08:00
Erick Tryzelaar
dc7183ed0e core: rename MutableVector to OwnedVector 2013-01-09 08:55:37 -08:00
Erick Tryzelaar
d1b7d44b8c core: inline all vec methods and add whitespace 2013-01-09 08:55:37 -08:00
Erick Tryzelaar
93c2ebf994 syntax: convert ast::spanned into a struct 2013-01-09 08:55:36 -08:00
Graydon Hoare
f6dd2d219e core: fix libc linux fallout from 2db3abddcd 2013-01-09 08:04:18 -08:00
Patrick Walton
2db3abddcd librustc: Make unqualified identifier searches terminate at the nearest module scope. r=tjc 2013-01-08 22:02:35 -08:00
Brian Anderson
3a5b641720 Only ignore failing bigint tests on 32-bit platforms 2013-01-08 19:46:03 -08:00
Patrick Walton
44ab00ee37 Revert "librustc: Make unqualified identifier searches terminate at the nearest module scope. r=tjc"
This reverts commit a8d37af247.
2013-01-08 19:29:16 -08:00
Patrick Walton
a8d37af247 librustc: Make unqualified identifier searches terminate at the nearest module scope. r=tjc 2013-01-08 19:27:57 -08:00
Brian Anderson
fd872284bb Ignore some failing bigint tests 2013-01-08 17:47:41 -08:00
Niko Matsakis
c3a74d87bd Implement GLB algorithm. (Issue #2263)
r=brson
2013-01-08 15:41:53 -08:00
Brian Anderson
3b71d14442 Inject std when --test. #1127, #3241 2013-01-08 14:58:39 -08:00
ILyoan
2d3c22ae59 arrange core::os::consts 2013-01-08 14:35:28 -08:00
Niko Matsakis
9f7dc1cb33 Remove ret_style and instead check whether fn return type is bot
cc #3681
2013-01-08 14:21:06 -08:00
Tim Chevalier
80435ad429 Make self visible when typechecking nested functions
Necessary to allow supertrait methods to be called in default methods.

r=nikomatsakis
2013-01-08 13:56:26 -08:00
Tim Chevalier
2d1ce01a8a Suppress error messages about function types whose result is ty_err
Ideally we would suppress error messages involving any types that
contain ty_err, but that's awkward to do right now.
2013-01-08 13:56:26 -08:00
Brian Anderson
b43e639bf6 Remove unused bigint from runtime 2013-01-08 13:53:45 -08:00
Tim Chevalier
2791877009 Merge pull request #4388 from lkuper/alt-to-match
Rename identifiers that still use 'alt' to use 'match'
2013-01-08 13:49:21 -08:00
asdf
dd73dd0e37 removing checks from vec::bytes::memcpy and memmove as are duplicated from raw:: 2013-01-08 13:25:23 -08:00
asdf
4096c9f25f adding bound checks for raw::memcpy and memmove 2013-01-08 13:25:23 -08:00
Lindsey Kuper
816cb8c535 Rename identifiers that still use 'alt' to use 'match'
This'll be less confusing for anyone who works on match in future.
2013-01-08 14:31:58 -05:00
Brian Anderson
2d9b1fee8f Merge remote-tracking branch 'gifnksm/bigint' into kind-names 2013-01-08 11:28:56 -08:00
Patrick Walton
722d670c85 test: Fix botched regex. rs=bustage 2013-01-08 10:35:20 -08:00
Patrick Walton
1f667e7995 test: Regular expression mistake. rs=bustage 2013-01-07 22:13:34 -08:00
Patrick Walton
fcc470c0ee test: Fix check-fast for resolve changes. rs=bustage 2013-01-07 18:55:12 -08:00
Niko Matsakis
16ec9aa6e7 Support assignability for struct fields. r=pcwalton 2013-01-07 18:46:37 -08:00
Tim Chevalier
4557f70487 Revert "Suppress type error message involving a function type whose result is ty_err"
This reverts commit e45312e5a0.
2013-01-07 18:27:20 -08:00
Tim Chevalier
7b433d098a Revert "Change the self def_id to a self_info in typeck, and inherit"
This reverts commit 921393c568.
2013-01-07 18:18:22 -08:00
Tim Chevalier
0e774de766 Revert "Improve a typeck ICE message (slightly)"
This reverts commit c662a9aad7.
2013-01-07 18:15:44 -08:00
Tim Chevalier
921393c568 Change the self def_id to a self_info in typeck, and inherit
That is, treat `self` as if it has dynamic scope. This seems to
be harmless, and prevents an ICE as per #3563
2013-01-07 18:08:19 -08:00
Tim Chevalier
fb9458e1ec xfail broken tests 2013-01-07 18:05:18 -08:00
Tim Chevalier
86db69def2 Revert "xfail broken tests"
This reverts commit d771830c4c.
2013-01-07 18:04:30 -08:00
Tim Chevalier
d771830c4c xfail broken tests 2013-01-07 18:04:01 -08:00
Tim Chevalier
e45312e5a0 Suppress type error message involving a function type whose result is ty_err
In general it would be good to suppress any messages involving types that
have ty_err as a sub-component, but this works for now.
2013-01-07 16:14:25 -08:00
Tim Chevalier
c662a9aad7 Improve a typeck ICE message (slightly) 2013-01-07 16:14:25 -08:00
Patrick Walton
8bf38b26ee librustc: Fix some librustc test modes. rs=bustage 2013-01-07 15:37:48 -08:00
Andrew Paseltiner
1d4c5d90bd fmt: add unit tests 2013-01-07 17:22:01 -05:00
Andrew Paseltiner
73649f36e8 fmt: derive Eq for all types 2013-01-07 17:22:01 -05:00
Andrew Paseltiner
0429493363 fmt: fix formatting and style 2013-01-07 17:22:01 -05:00
Andrew Paseltiner
428abb3d97 fmt: simplify parse_fmt_string 2013-01-07 17:22:01 -05:00
Andrew Paseltiner
9e5a4166d5 fmt: simplify parse_conversion 2013-01-07 17:22:01 -05:00
Andrew Paseltiner
af298deff7 fmt: simplify parse_parameter 2013-01-07 17:22:01 -05:00
Andrew Paseltiner
4550cb0562 fmt: simplify parse_precision 2013-01-07 17:22:01 -05:00
Andrew Paseltiner
9c383deaa6 fmt: simplify parse_count 2013-01-07 17:22:01 -05:00
Andrew Paseltiner
f4bc9e6d57 fmt: simplify parse_flags 2013-01-07 17:22:01 -05:00
Andrew Paseltiner
51b141e3e4 fmt: simplify parse_type 2013-01-07 17:22:01 -05:00
Andrew Paseltiner
0a17ab2a9c fmt: replace parse_* structural records with struct Parsed<T> 2013-01-07 17:22:01 -05:00
Andrew Paseltiner
1a2a8975bc fmt: replace Conv record with struct Conv 2013-01-07 17:22:01 -05:00
Patrick Walton
53f41f07ce librustc: Make vectors no longer implicitly copyable in rustc. r=graydon
~20% perf win for trans on -O0, with other minor improvements across the board.
No effect on -O2.
2013-01-07 14:17:36 -08:00
Tim Chevalier
09758f7072 Merge pull request #4357 from jld/constenum-bonus-fix
Trivial cleanup: use enum_is_univariant; no functional change intended.
2013-01-07 13:40:45 -08:00
Tim Chevalier
78aad60062 Merge pull request #4358 from jld/constenum-unit
Fix consts of nullary univariant enum type.
2013-01-07 13:40:05 -08:00
Patrick Walton
3a570075b1 librustc: Remove unused mod_path_map. This was expensive to build. Saves another 15% or so. r=tjc 2013-01-07 12:54:46 -08:00
Patrick Walton
9f387926fc librustc: Fold rt items into lang items. Shaves another 10% or so off hello world compile time. 2013-01-07 12:21:34 -08:00
Patrick Walton
d2d1d98968 librustc: Encode language items into a special lookup table. 9% improvement in hello world compile time. 2013-01-07 10:51:53 -08:00
Patrick Walton
0ab7f9129e librustc: Refactor language items to have IDs. rs=refactor
Preparation for fixing the performance problems with language item collection.
2013-01-06 12:05:34 -08:00
Patrick Walton
96e01a67c7 librustc: Convert some large structural records over to structs. rs=perf
No effect on compile-time performance.
2013-01-06 11:16:14 -08:00
Patrick Walton
fa96740923 librustc: Remove some string allocations. rs=perf 2013-01-05 19:33:37 -08:00
Patrick Walton
1070cc0109 librustc: Fix unconditional ty_to_str call in ty.rs. Was heaviest path in allocation. Negligible perf win. rs=perf-fix 2013-01-05 18:41:22 -08:00
Patrick Walton
6c18c75f2d rt: Stop zeroing out all allocations. Unobservable perf win. Closes #2682. rs=negligible-perf-win 2013-01-05 18:04:29 -08:00
Jed Davis
3e7ab3a443 Add a test for nullary univariant enums. 2013-01-05 00:49:01 -08:00
Jed Davis
6043a72774 Make consts of degenerate nullary enums not ICE.
This makes the const construction code match the logic in type_of.
2013-01-05 00:24:38 -08:00
Jed Davis
8f8b417811 Trivial cleanup: use enum_is_univariant; no functional change intended. 2013-01-05 00:24:33 -08:00
Patrick Walton
7b245d46ed librustc: Stop generating first-class aggregates in visit glue, since they kick us off fast isel. Closes #4352. rs=minor-perf-improvement 2013-01-04 23:07:58 -08:00
Tim Chevalier
89acd1f57f Rename option::get_default => get_or_default, get_zero => get_or_zero 2013-01-04 16:01:26 -08:00
Tim Chevalier
4d8cc3f003 Make either::{partition, flip, to_result} take their arguments by-value
Addresses an XXX

r=pcwalton
2013-01-04 15:39:31 -08:00
Graydon Hoare
62f6f46072 core: fix windows breakage, r=burningtree. 2013-01-04 15:38:56 -08:00
Tim Chevalier
1f1e7e9616 Add option::get_zero
r=brson

Closes #3797
2013-01-04 00:46:55 -08:00
Andrew Paseltiner
a933cdfbf1 clean up condition module:
* use Drop trait in Guard
* fix formatting
* remove bare function in Condition.raise_default
* use moved types instead of borrowed pointers in Condition.{raise,trap}
* import common functions
2013-01-03 15:53:06 -08:00
Tim Chevalier
9e2a59dc5d Add xfailed test for #3707 2013-01-03 15:35:19 -08:00
Tim Chevalier
7b08ed02bb Actually xfail this, unbreak build 2013-01-03 15:26:41 -08:00
Tim Chevalier
1330b1cdf5 Add test cases (one xfailed, one not)
as per #3601 and #3609
2013-01-03 14:55:51 -08:00
Tim Chevalier
1bc51f1728 Merge pull request #4336 from thestinger/python
fix build for when 'python' is python3
2013-01-03 13:52:04 -08:00
Tim Chevalier
d91b2d428b Change "interface" to "trait" in rustdoc
Closes #4337
2013-01-03 11:34:08 -08:00
Daniel Micay
8ffc2b0f5e fix sugarise-doc-comments.py shebang 2013-01-03 02:40:21 -05:00
Ted Horst
af48f30542 use newtype struct for devnull rather than type aliased record 2013-01-02 15:35:32 -08:00
Ted Horst
7c79b5e434 really update mandelbrot to pipes 2013-01-02 15:35:32 -08:00
Tim Chevalier
0d4cf3ed72 remove apparently-superfluous extra parens from types 2013-01-02 15:33:13 -08:00
Peter Williams
ae69c2fc7d std: Constify the bytes sent to Sha1::input
We are of course never going to modify the data, and this change allows us to
accept data from to_bytes::IterBytes types.
2013-01-02 15:33:13 -08:00
Erick Tryzelaar
392708e3b1 core: convert an XXX into a FIXME. 2013-01-02 10:40:47 -05:00
Brian Anderson
587ce4894e Merge pull request #4324 from steveklabnik/std_net
Add some extra description for std::net
2012-12-31 22:04:36 -08:00
Steve Klabnik
9433284a11 Add some extra description for std::net 2013-01-01 01:02:48 -05:00
Brian Anderson
96ba9def35 Merge pull request #4316 from ttaubert/issue-4277-linear-map-len
reset LinearMap.size when expanding buckets
2012-12-31 22:02:42 -08:00
Chris Peterson
e08f304b81 rt: Remove dead code from schedule_task() 2012-12-30 23:12:24 -08:00
Tim Chevalier
08d9c5be2f Merge pull request #4312 from Dretch/issue-2914
Work towards fixing issue #2914
2012-12-30 15:58:20 -08:00
Tim Taubert
4b1d2dc884 reset LinearMap.size when expanding buckets 2012-12-30 19:38:42 +01:00
Patrick Walton
10333a5f3d libstd: Comment out mysteriously failing net-url test. rs=busted 2012-12-29 21:43:18 -08:00
Patrick Walton
2822365106 librustdoc: More text fixes. rs=busted 2012-12-29 21:17:06 -08:00
Patrick Walton
015ed66950 librustdoc: Fix typo. rs=busted 2012-12-29 20:44:25 -08:00
Patrick Walton
47cd1e4fc8 librustdoc: Fix a bunch of rustdoc tests. rs=bustage 2012-12-29 17:38:20 -08:00
gareth
624421aa3d Simplify idents_to_str and use it in more places. 2012-12-29 18:25:09 +00:00
gareth
d68954efa0 Fix the build by removing trailing whitespace. 2012-12-29 11:44:02 +00:00
gareth
b6aafe928d When an import fails to resolve, make the error message say
which import it actually was. This makes debugging imports
like: use aa::{x, y, z} easier (for issue #2914).
2012-12-29 11:15:54 +00:00
Patrick Walton
5245aceba9 test: Fix benchmarks. rs=rustbot 2012-12-28 19:57:18 -08:00
Patrick Walton
5bd8692e9d test: Fix a bunch of compile-fail tests. rs=bustage 2012-12-28 19:36:35 -08:00
Patrick Walton
b92ea8dc78 test: Fix test/run-pass-fulldeps/qquote.rs. rs=bustage 2012-12-28 18:42:10 -08:00
Patrick Walton
19dfb47564 test: Fix test/run-pass/class-cast-to-trait-cross-crate-2. rs=fire 2012-12-28 18:04:41 -08:00
Patrick Walton
40eaecbd47 test: Fix a couple more tests. rs=bustage 2012-12-28 18:02:20 -08:00
Patrick Walton
c42d5e2747 test: Fix test/run-pass/pipe-pingpong-proto. rs=bustage 2012-12-28 17:33:28 -08:00
Patrick Walton
31b07ae8c5 test: Fix test/run-pass/pipe-pingpong-bounded. rs=bustage 2012-12-28 17:32:42 -08:00
Patrick Walton
f67c37263e test: Fix a bunch of run-pass tests. rs=bustage 2012-12-28 17:17:05 -08:00
Ben Alpert
5910773c2e doc: Rename mention of insert_or_update_with_key
As far as I can tell, these docs were meant to refer to update_with_key.
2012-12-28 14:04:43 -08:00
Brian Leibig
dda12f8ef6 Replace much of the REPL run code with a call to compile_upto 2012-12-28 13:51:02 -08:00
Tim Chevalier
cef153947d Long lines 2012-12-28 13:35:15 -08:00
Tim Chevalier
a75c0b3b32 Merge pull request #4268 from catamorphism/issue-3477
Emit a type error for integer literals where the expected type is char
2012-12-28 13:05:58 -08:00
Patrick Walton
13879d8e9f libstd: Fix tests. rs=bustage 2012-12-28 12:48:27 -08:00
Tim Chevalier
7af1080f5e Merge pull request #4308 from steveklabnik/patch-1
Improve documentation for each.
2012-12-28 11:52:16 -08:00
Erick Tryzelaar
2d7b96ab72 Fix compiling compiletest. rs=fire 2012-12-28 11:50:27 -05:00
Erick Tryzelaar
5b2b13bff8 test: option variants get imported by default 2012-12-28 11:28:36 -05:00
Steve Klabnik
5ec3aba8cc Improve documentation for each.
Add description of arguments, and an example.
2012-12-28 01:12:28 -05:00
Patrick Walton
fa5ee934ed libstd: Fix a bunch of resolve errors in tests. rs=fire 2012-12-27 18:24:18 -08:00
Patrick Walton
e26ca35b08 librustc: Fix the test runner, the condition system, and core test. rs=bustage 2012-12-27 17:53:04 -08:00
Patrick Walton
84ce55e542 librustc: Fix some unresolved imports in the test runner. rs=bustage 2012-12-27 15:50:03 -08:00
Tim Chevalier
c880d0ab76 Add an xfailed test case and a CONTRIBUTING.md file 2012-12-27 14:58:45 -08:00
Tim Chevalier
0873553680 Merge pull request #4298 from JensNockert/byteswap
Add support for byteswap intrinsics
2012-12-27 10:47:15 -08:00
Jens Nockert
a51661e8c1 Add support for byteswap intrinsics
Adds support for the llvm.bswap.i{8,16,32} intrinsics, which swaps the
byte order from little endian to big endian, or the reverse.
2012-12-27 19:07:05 +01:00
Patrick Walton
57c599914a librustc: Terminate name searches at the nearest module scope for paths that contain at least two components. r=graydon 2012-12-27 10:02:54 -08:00
Patrick Walton
6b659392ea libcore: Add symlink(2) to libc. rs=trivial 2012-12-27 10:02:51 -08:00
Erick Tryzelaar
efb8711f90 Merge branch 'master' of github.com:mozilla/rust into incoming 2012-12-27 10:34:27 -05:00
Michael Neumann
2b6c456bf6 Enhance auto_encode to take number of struct fields
emit_struct and read_struct takes an additional len:uint parameter which tells
us how many fields the struct we are working on has.

This is required to implement an Encoder for the msgpack [1] serialization
format. To serialize a struct with msgpack you have to use arrays and the size
of the array has to be know before each of the elements are written out. JSON
as an example doesn't have this problem as it uses '[' and ']' delimiters for
arrays.

[1]: www.msgpack.org
2012-12-27 06:16:16 -06:00
Tim Chevalier
56227c42b3 Merge pull request #4286 from thestinger/vim
add Drop trait to vim syntax highlighting
2012-12-25 01:16:07 -08:00
Daniel Micay
2cf2d6aa92 add Drop trait to vim syntax highlighting 2012-12-25 01:20:27 -05:00
Tim Chevalier
c4720a73bb Update shootout-mandelbrot to work with the new io::Writer 2012-12-24 18:29:02 -08:00
Tim Chevalier
6dbb025267 Fix wayward search and replace; unbreak build 2012-12-24 18:29:02 -08:00
gareth
fddc849d75 Convert core::io to use explicit self (for issue #4118 and issue #2004) 2012-12-24 18:29:02 -08:00
Chris Peterson
8060bd846a std: Mark some functions as pure 2012-12-24 18:29:02 -08:00
Chris Peterson
c1e58aad70 core: Mark some functions as pure 2012-12-24 18:29:02 -08:00
Ted Horst
d30224a3d4 update mandelbrot to pipes, a few other updates 2012-12-24 18:29:01 -08:00
Tim Chevalier
8d438747a5 Remove xfail-fast from trait-composition-trivial 2012-12-24 18:29:01 -08:00
Tim Chevalier
d722217a68 tests: Add test case. Closes #3250 2012-12-24 18:29:01 -08:00
Daniel Micay
b8fe575e79 update after/syntax/rust.vim for removal of <- 2012-12-24 18:29:01 -08:00
Graydon Hoare
329316ce15 bump 0.5 => 0.6, redirect some URLs in docs. 2012-12-24 18:29:01 -08:00
Erick Tryzelaar
b6f0f300d5 std: modernize net_url
This switches over to using structs and send_maps for
query string parsing.
2012-12-24 18:29:01 -08:00
Erick Tryzelaar
03b5fcabbd Switch chain calls to use Option::chain method 2012-12-24 18:29:01 -08:00
Erick Tryzelaar
50902bb302 Fix Option::unwrap_err. 2012-12-24 18:29:01 -08:00
Tim Chevalier
499a58708f Assign correct types to struct-like enum variant constructors
Before, the type was just the enum type itself, which caused an
assertion failure in iter_variant in trans::base.

r=brson

Closes #4229
2012-12-24 15:59:15 -08:00
Tim Chevalier
7ce0d30b9b Update shootout-mandelbrot to work with the new io::Writer 2012-12-24 13:29:36 -08:00
Tim Chevalier
46122bf333 Fix wayward search and replace; unbreak build 2012-12-24 12:37:45 -08:00
Tim Chevalier
66dc4898c7 Merge pull request #4278 from cpeterso/incoming-pure-functions
Mark some more core and std functions as pure
2012-12-24 11:33:22 -08:00
gareth
feff3a9c6c Convert core::io to use explicit self (for issue #4118 and issue #2004) 2012-12-24 18:52:53 +00:00
Chris Peterson
ffaa477368 std: Mark some functions as pure 2012-12-23 14:38:01 -08:00
Chris Peterson
6d8621ae7f core: Mark some functions as pure 2012-12-23 14:37:44 -08:00
Tim Chevalier
baa4379e5a Merge pull request #4245 from JensNockert/bit-intrinsics
Add support for bitcount intrinsics Issue #2777
2012-12-23 13:50:28 -08:00
Tim Chevalier
197a1f9cfe Merge pull request #4243 from erickt/incoming
Fix a bug in Result::unwrap_err (and minor cleanup)
2012-12-23 13:49:32 -08:00
Tim Chevalier
8ec13a90aa Merge pull request #4239 from tedhorst/mandpipe
update mandelbrot to pipes, a few other updates
2012-12-23 13:48:31 -08:00
Tim Chevalier
b1b0c297a4 Merge pull request #4249 from graydon/0.6-bump
bump 0.5 => 0.6, redirect some URLs in docs.
2012-12-23 13:47:11 -08:00
Tim Chevalier
0e35391468 Merge pull request #4250 from thestinger/vim
update after/syntax/rust.vim for removal of <-
2012-12-23 13:45:56 -08:00
Tim Chevalier
79a68ef212 Merge pull request #4251 from erickt/url
std: modernize net_url
2012-12-23 13:45:31 -08:00
Tim Chevalier
915246314b Merge pull request #4253 from martindemello/patch-1
Fix options passed to gpg in cargo init
2012-12-23 13:37:36 -08:00
Ted Horst
2452ee11ab update mandelbrot to pipes, a few other updates 2012-12-23 13:17:42 -06:00
Tim Chevalier
10e8e3e286 Remove xfail-fast from trait-composition-trivial 2012-12-23 00:24:07 -08:00
Tim Chevalier
65839fa622 Emit a type error for integer literals where the expected type is char
For example, in let x: char = 42; This was an ICE and is now a
proper type error, as per #3477
2012-12-22 15:58:05 -08:00
Tim Chevalier
5c6e928e32 tests: Add test case. Closes #3250 2012-12-22 14:58:30 -08:00
Patrick Walton
3ee1d3ebb8 rustllvm: Fix symbol resolution on Mac for rusti. rs=bugfix 2012-12-22 16:24:19 -05:00
Martin DeMello
6c05697667 Fix options passed to gpg in cargo init 2012-12-21 23:13:06 -08:00
gifnksm
68c689f1ca Convert @[BigDigit] to ~[BigDigit] 2012-12-22 15:14:26 +09:00
gifnksm
54b548795f Impl Zero, One of BigInt, BigUint 2012-12-22 15:14:26 +09:00
gifnksm
0e83d70cc1 Convert std::bigint to explicit self. 2012-12-22 15:14:26 +09:00
gifnksm
c6a8778ef7 Move BigUint and BigDIgit to std::bigint. 2012-12-22 15:14:26 +09:00
gifnksm
ccc1f8d5e8 Implement BigInt and BigUint. 2012-12-22 15:14:26 +09:00
Patrick Walton
9bf87bbf66 rusti: Perform mode computation. Closes #4230. 2012-12-21 22:39:42 -05:00
Daniel Micay
a45e41faaa update after/syntax/rust.vim for removal of <- 2012-12-21 21:37:32 -05:00
Graydon Hoare
dbd36111fe bump 0.5 => 0.6, redirect some URLs in docs. 2012-12-21 15:35:49 -08:00
Jens Nockert
82641d4c39 Add support for bitcount intrinsics
Adds support for the llvm.ctpop, llvm.ctlz and llvm.cttz intrinsics.
2012-12-21 19:30:33 +01:00
Erick Tryzelaar
d6faf23ca3 std: modernize net_url
This switches over to using structs and send_maps for
query string parsing.
2012-12-21 07:47:32 -08:00
Brian Anderson
2fd8ebd03a Ignore some time tests 2012-12-20 21:39:11 -08:00
Erick Tryzelaar
beec519316 Switch chain calls to use Option::chain method 2012-12-20 21:16:02 -08:00
Erick Tryzelaar
5e94407a94 Fix Option::unwrap_err. 2012-12-20 21:16:02 -08:00
Erick Tryzelaar
76a2891feb Remove the cfg(stageN)-specific serialize code. 2012-12-20 12:52:53 -08:00
Erick Tryzelaar
faef32995c Register snapshots 2012-12-20 12:49:37 -08:00
Erick Tryzelaar
e8102e73a9 core: Add a Zero and One trait to num
I believe these are the last traits we need in order
to start grouping our numerical types into mathematical
groups and rings.
2012-12-20 07:15:04 -08:00
Erick Tryzelaar
b865b4b70d Fix a warning in the workcache test. 2012-12-19 18:16:20 -08:00
Erick Tryzelaar
c14105bb8a Remove serialize::traits submodule. 2012-12-19 18:16:20 -08:00
Erick Tryzelaar
9c673b246c Remove the old serialization code
Closes #3713.
2012-12-19 18:16:20 -08:00
Brian Anderson
dac88fa7e6 Remove transitional path2 attribute 2012-12-19 14:23:53 -08:00
Brian Anderson
78dc226617 Register snapshots 2012-12-19 12:30:36 -08:00
Erick Tryzelaar
2ad41b881c core: add unwrap methods to dvec, either, and mutable 2012-12-18 20:54:13 -08:00
Erick Tryzelaar
82a983de68 Remove superfluous parentheses. 2012-12-18 20:54:13 -08:00
Erick Tryzelaar
a0ef334179 core: use movable self to clean up option/result. 2012-12-18 20:54:13 -08:00
Erick Tryzelaar
938058b004 Fix vec::flat_map_to_vec method 2012-12-18 20:48:51 -08:00
Brian Anderson
97ddf3c7bd Stop resolving static methods at the module level. Closes #4179 2012-12-18 18:35:18 -08:00
Graydon Hoare
8e28f23c60 core: add macro_rules! for "condition! { c: in -> out; }". 2012-12-18 17:22:27 -08:00
Brian Anderson
9057e98a01 Make #[path] work with absolute paths again. Fix check-fast 2012-12-18 17:00:26 -08:00
Brian Anderson
a59747cd7f Another tweak to auto_encode to only use trait-qualified static methods 2012-12-18 15:38:34 -08:00
Brian Anderson
907fa74e8b Fix some iter tests 2012-12-18 15:08:51 -08:00
Brian Anderson
d062896a8b Deal with test failures in various ways 2012-12-18 14:35:53 -08:00
Graydon Hoare
6d4fbd4f9e core: fix remaining repr bugs, r=burningtree. 2012-12-18 14:35:20 -08:00
Brian Anderson
b46e25bdc8 Merge commit 'erickt/incoming^' into kind-names 2012-12-18 12:22:59 -08:00
Brian Anderson
c704d26c8c Change auto_encode to call 'std::serialize::traits::Decode::decode' 2012-12-18 12:04:26 -08:00
Graydon Hoare
55138c739d fix 4 repr tests due to differences in spacing. r=burningtree. 2012-12-18 11:17:33 -08:00
Erick Tryzelaar
85bb1fc2c4 Change iter::find's closure to take a ref 2012-12-17 22:01:38 -08:00
Erick Tryzelaar
88962eeed8 core: Add &self to core::iter methods 2012-12-17 22:01:38 -08:00
Erick Tryzelaar
3fc74df7a4 fix warnings in vec destructuring tests 2012-12-17 22:01:38 -08:00
Brian Anderson
23564574ac Change the default_methods lint mode from forbid to deny to fix tests 2012-12-17 20:41:12 -08:00
Brian Anderson
5827f1caf6 Fix build breakage 2012-12-17 20:23:09 -08:00
Erick Tryzelaar
8650c6f683 Switch from serialization to std::serialize. (snapshot) 2012-12-17 20:00:36 -08:00
Brian Anderson
ec9305802b std: Add flatpipes 2012-12-17 18:46:42 -08:00
Brian Anderson
33a8f855c2 Make the path and path2 attributes equivalent. Remove some uses 2012-12-17 18:06:52 -08:00
Graydon Hoare
7ab66a46b7 core: remove old repr system, enable newer one. Close #3109. 2012-12-17 16:55:40 -08:00
Jakub Wieczorek
6c83fe4c24 Add more tests 2012-12-17 16:50:40 -08:00
Jakub Wieczorek
6530fd3401 When matching a slice, the tail should have the same lifetime 2012-12-17 16:50:40 -08:00
Jakub Wieczorek
1fdfd3b1d6 Simplify the exhaustiveness check and add comments 2012-12-17 16:50:40 -08:00
Jakub Wieczorek
856dbac567 Use the same logic for _ and [..tail] when checking reachability 2012-12-17 16:50:40 -08:00
Jakub Wieczorek
1968cb315a Add support for destructuring vectors in match expressions 2012-12-17 16:50:40 -08:00
Brian Anderson
5bf7ba0773 Register snapshots 2012-12-17 16:44:27 -08:00
Brian Anderson
68998724c6 Revert "Register snapshots"
This reverts commit d6d12d90ff.
2012-12-17 16:26:44 -08:00
Brian Anderson
d6d12d90ff Register snapshots 2012-12-17 16:22:21 -08:00
Daniel Micay
f1e87733bd add an empty PriorityQueue constructor 2012-12-17 15:23:12 -08:00
Patrick Walton
02e804bba8 test: Fix some broken test cases 2012-12-17 14:58:21 -08:00
Brian Anderson
8311c94db4 Merge pull request #4200 from ttaubert/issue-2649-rewrite-to_str_bytes
rewrite uint::to_str_bytes to avoid raw pointers
2012-12-17 12:43:28 -08:00
Brian Anderson
161d289cc7 Long lines 2012-12-16 19:56:09 -08:00
Brian Anderson
8cbf817c2c Fix doc comment 2012-12-16 19:53:24 -08:00
Brian Anderson
60ef6095f2 Add priority_queue test for unique pointers 2012-12-16 19:53:14 -08:00
Brian Anderson
90bebe3522 Add various workaround attributes to priority_queue 2012-12-16 19:41:07 -08:00
Daniel Micay
ac695aa21a priority_queue: add docstring for from_vec 2012-12-16 19:27:06 -08:00
Daniel Micay
b3463ea657 priority_queue: replace copies with moves 2012-12-16 19:27:06 -08:00
Daniel Micay
6c433f22a1 priority_queue: clean up naming 2012-12-16 19:27:06 -08:00
Daniel Micay
ab75d3937d priority_queue: fix test compilation 2012-12-16 19:27:06 -08:00
Daniel Micay
04df723619 priority_queue: fix siftup/siftdown naming 2012-12-16 19:27:06 -08:00
Daniel Micay
7bd0d71554 priority_queue: avoid copy with top and maybe_top 2012-12-16 19:27:06 -08:00
Daniel Micay
e00c3b05e1 priority_queue: fix to_sorted_vec off-by-one error 2012-12-16 19:27:06 -08:00
Daniel Micay
8b13bf7530 priority_queue: replace some copies with swaps 2012-12-16 19:27:06 -08:00
Daniel Micay
285496bd55 priority_queue: make from_vec a static method 2012-12-16 19:27:05 -08:00
Daniel Micay
757a2afb6b priority_queue: make to_vec/to_sorted_vec methods 2012-12-16 19:27:05 -08:00
Daniel Micay
dd2b32be56 add priority queue implementation (binary heap) 2012-12-16 19:27:05 -08:00
Brian Anderson
7f8e302a6a Whitespace 2012-12-15 23:03:45 -08:00
Brian Anderson
20ea37b336 rt: Do some casting to avoid warnings 2012-12-15 22:38:20 -08:00
Brian Anderson
91067e9df4 Long lines 2012-12-15 22:38:20 -08:00
Jesse Jones
81805e0568 Check for oom in a few more places 2012-12-15 22:38:20 -08:00
Jesse Jones
0402360abb Abort instead of throwing on oom 2012-12-15 22:38:20 -08:00
Jesse Jones
e8d2d55900 Made a bunch more classes non-copyable 2012-12-15 22:38:20 -08:00
Jesse Jones
eca23da98b Instead of returning a bool (which everyone ignored) pop asserts 2012-12-15 22:38:20 -08:00
Jesse Jones
6bab226fc5 Check for realloc failure and bad subscripts 2012-12-15 22:38:20 -08:00
Jesse Jones
cf1c3d2da0 polymorphic indexed_list fixes:
1) indexed_list no longer has virtual methods. It's not actually subclassed
and there is very rarely good reason to subclass collection classes.
2) Added a virtual dtor to indexed_list_object which is intended to be
subclassed. This allows derived dtors to be called if the object is
deleted with a indexed_list_object*.
2012-12-15 22:38:20 -08:00
Jesse Jones
fc740a7297 Improvements to array_list, hash_map, and indexed_list:
* Disabled copying.
* Added const where appropiate.
2012-12-15 22:38:19 -08:00
Tim Taubert
2f3d4f6181 rewrite uint::to_str_bytes to avoid raw pointers 2012-12-15 18:45:40 +01:00
Patrick Walton
ebd9ad4d04 librustc: Add a lint mode for deprecated self. r=brson 2012-12-14 19:46:55 -08:00
Patrick Walton
41c0d7083e librustc: Fix type_use for generic newtype structs. Closes #4188. rs=bugfix 2012-12-14 19:44:07 -08:00
Patrick Walton
8a9ccf81b0 librustc: Implement a lint mode for default methods. r=brson 2012-12-14 19:28:43 -08:00
Patrick Walton
99fa9c3cab Revert "librustc: Implement a lint mode for default methods"
This reverts commit 53b181dd47.
2012-12-14 19:13:59 -08:00
Patrick Walton
593f414254 test: Add a test for trait inheritance with self as a type parameter. rs=test-only 2012-12-14 19:12:29 -08:00
Patrick Walton
53b181dd47 librustc: Implement a lint mode for default methods 2012-12-14 19:07:20 -08:00
Patrick Walton
bdb2d659ae librustc: Ensure that no moves from the inside of @ or & boxes occur. rs=crashing-servo 2012-12-14 18:19:07 -08:00
Brian Anderson
309cdfd835 Remove more uses of 'move' from core::vec 2012-12-14 17:12:41 -08:00
Brian Anderson
2c21f348a4 Rewrite core::vec::shift to not allocate 2012-12-14 17:09:44 -08:00
Brian Anderson
dbc52ce505 xfail-fast run-pass/stat.rs 2012-12-14 16:50:08 -08:00
Brian Anderson
a9601bce10 Fix broken tests 2012-12-14 15:58:06 -08:00
Brian Anderson
0afe002757 Fix broken test 2012-12-14 15:38:53 -08:00
Tim Chevalier
3a5b6a79c6 Fix trait-inheritance-overloading-xc and un-xfail 2012-12-14 15:25:32 -08:00
Brian Anderson
0a1ac75d1a Merge remote-tracking branch 'thestinger/vim' 2012-12-14 15:23:23 -08:00