- 14 8月, 2014 1 次提交
-
-
由 Brian Anderson 提交于
ImmutableVector -> ImmutableSlice ImmutableEqVector -> ImmutableEqSlice ImmutableOrdVector -> ImmutableOrdSlice MutableVector -> MutableSlice MutableVectorAllocating -> MutableSliceAllocating MutableCloneableVector -> MutableCloneableSlice MutableOrdVector -> MutableOrdSlice These are all in the prelude so most code will not break. [breaking-change]
-
- 13 8月, 2014 19 次提交
-
-
由 bors 提交于
rust.md: Explicitly point out how special `'static` is. Drive-by: fix description of `&content` to point out that `&'f type` is (as of today) only for type expressions.
-
由 bors 提交于
Retry pull requesting of https://github.com/rust-lang/rust/pull/16407 after accidentally messing up rebasing of branches and making bors think the PR was merged
-
由 bors 提交于
This fixes borrow checking for closures. Code like this will break: struct Foo { x: int, } pub fn main() { let mut this = &mut Foo { x: 1, }; let r = || { let p = &this.x; &mut this.x; }; r() } Change this code to not take multiple mutable references to the same value. For example: struct Foo { x: int, } pub fn main() { let mut this = &mut Foo { x: 1, }; let r = || { &mut this.x; }; r() } Closes #16361. [breaking-change] r? @nikomatsakis
-
由 bors 提交于
`for` loop heads. This breaks code like: let x = Some(box 1i); for &a in x.iter() { } Change this code to obey the borrow checking rules. For example: let x = Some(box 1i); for &ref a in x.iter() { } Closes #16205. [breaking-change] r? @nikomatsakis
-
由 Ivan Petkov 提交于
* The caller should be responsible for cleaning up file descriptors * If a caller safely creates a file descriptor (via native::io::file::open) the returned structure (FileDesc) will try to clean up the file, failing in the process and writing error messages to the screen. * This should not happen as the caller has no public interface for telling the FileDesc structure to NOT free the underlying fd. * Alternatively, if another file is opened under the same fd held by the FileDesc structure returned by native::io::file::open, it will close the wrong file upon destruction.
-
由 bors 提交于
This code produces an ICE: ```rust #![crate_type = "rlib"] fn main() { if true { return } // remaining code is unreachable match () { () => { static MAGIC: uint = 0; } } } ``` ([playpen](http://is.gd/iwOISB)) The error is "encode_symbol: id not found 18", where 18 is the `NodeId` of the declaration of `MAGIC`. The problem is that `rustc` tries to emit metadata for `MAGIC`, but some of the information is missing because `MAGIC` never gets translated by `trans_item` - the entire body of the `match` gets skipped because the `match` itself is unreachable. This branch simplifies the handling of inner items by always processing them using the `trans_item` visitor, instead of sometimes using the visitor and sometimes waiting until `trans_stmt` encounters the item. This fixes the ICE by making the translation of the item no longer depend on the declaration being reachable code. This branch also reverts #16059 and #16359, since the new change to item translation fixes the same problems as those but is simpler.
-
由 Stuart Pernsteiner 提交于
-
由 Stuart Pernsteiner 提交于
This reverts commit f97f65f7. Conflicts: src/librustc/middle/trans/base.rs src/librustc/middle/trans/foreign.rs src/librustc/middle/trans/monomorphize.rs
-
由 Stuart Pernsteiner 提交于
This reverts commit 0c158b4f.
-
由 Patrick Walton 提交于
`for` loop heads. This breaks code like: let x = Some(box 1i); for &a in x.iter() { } Change this code to obey the borrow checking rules. For example: let x = Some(box 1i); for &ref a in x.iter() { } Closes #16205. [breaking-change]
-
由 bors 提交于
Previously the stability lint considered cross-crate items only. That's appropriate for unstable and experimental levels, but not for deprecation. In addition to changing the lint, this PR takes care of the fallout: a number of deprecated items that were being used throughout libstd. Closes #16409 Due to deny(deprecated), this is a: [breaking-change]
-
由 Patrick Walton 提交于
This fixes borrow checking for closures. Code like this will break: struct Foo { x: int, } pub fn main() { let mut this = &mut Foo { x: 1, }; let r = || { let p = &this.x; &mut this.x; }; r() } Change this code to not take multiple mutable references to the same value. For example: struct Foo { x: int, } pub fn main() { let mut this = &mut Foo { x: 1, }; let r = || { &mut this.x; }; r() } Closes #16361. [breaking-change]
-
由 Aaron Turon 提交于
-
由 Aaron Turon 提交于
-
由 Aaron Turon 提交于
-
由 Aaron Turon 提交于
Previously the lint considered cross-crate items only. That's appropriate for unstable and experimental levels, but not for deprecation. Closes #16409 Due to deny(deprecation), this is a: [breaking-change]
-
由 bors 提交于
patterns. This breaks code like: fn main() { match Some("foo") { None::<int> => {} Some(_) => {} } } Change this code to not contain a type error. For example: fn main() { match Some("foo") { None::<&str> => {} Some(_) => {} } } Closes #16353. [breaking-change] r? @huonw
-
由 bors 提交于
Fixes #15763
-
由 Patrick Walton 提交于
patterns. This breaks code like: fn main() { match Some("foo") { None::<int> => {} Some(_) => {} } } Change this code to not contain a type error. For example: fn main() { match Some("foo") { None::<&str> => {} Some(_) => {} } } Closes #16353. [breaking-change]
-
- 12 8月, 2014 20 次提交
-
-
由 bors 提交于
-
由 bors 提交于
Currently, this: println!("{}", std::f64::NAN); prints "-NaN". This commit is an attempt to change that to "NaN" instead.
-
由 bors 提交于
Implement `Index` for `RingBuf`, `HashMap`, `TreeMap`, `SmallIntMap`, and `TrieMap`. If there’s anything that I missed or should be removed, let me know.
-
由 Luqman Aden 提交于
-
由 P1start 提交于
-
由 P1start 提交于
This also deprecates SmallIntMap::get. Use indexing instead.
-
由 P1start 提交于
-
由 P1start 提交于
This also deprecates HashMap::get. Use indexing instead.
-
由 P1start 提交于
This also deprecates RingBuf::get. Use indexing instead.
-
由 bors 提交于
There was a bug in both libnative and libuv which prevented child processes from being spawned correctly on windows when one of the arguments was an empty string. The libuv bug has since been fixed upstream, and the libnative bug was fixed as part of this commit. When updating libuv, this also includes a fix for #15149. Closes #15149 Closes #16272
-
由 nham 提交于
-
由 Luqman Aden 提交于
-
由 Luqman Aden 提交于
-
由 Patrick Walton 提交于
This is needed for some GC stuff in Servo.
-
由 Luqman Aden 提交于
-
由 Luqman Aden 提交于
-
由 Vadim Chugunov 提交于
-
由 bors 提交于
- Moved examples for permutations and next into trait definition as comments on pull request #16244. - Fixed (hopefully) issue with erronious commit of changes to src/llvm.
-
由 bors 提交于
-
由 bors 提交于
Since https://github.com/rust-lang/rust/pull/16380 didn't get pulled in yet, I added it in here too. This covers the very, very, very basics of vectors. I wanted to have a section that mentioned them, but I'm unsure what else I should cover. So I just did the absolute simplest things. Feedback very welcome.
-