- 27 2月, 2015 9 次提交
-
-
由 Manish Goregaokar 提交于
We were recording stability attributes applied to fields in the compiler, and even annotating it in the libs, but the compiler didn't actually do the checks to give errors/warnings in user crates. Details in the commit messages.
-
由 bors 提交于
Implements `Debug` for `RwLock` and `arc::Weak` in the same way it is implemented for `rc::Weak` (basically copy & paste). The lack of this implementation prevents the automatic implementation of `Debug` for structs containing members of these types.
-
由 bors 提交于
r? @alexcrichton cc @nikomatsakis @pnkfelix
-
由 bors 提交于
Instead of allocating the same ports for ipv4 and ipv6 tests, instead draw all ports from the same pool. Some tests connect to just "localhost" on a particular port which may accidentally be interacting with other tests as the ipv-what-ness isn't specified with the string "localhost" Relevant logs: * [Deadlock of the `net::tcp::tests::listen_localhost` test][mac] * [Failure of the `fast_rebind` test][win1] * [Failure of `multiple_connect_interleaved_lazy_schedule_ip4`][win2] [mac]: https://gist.github.com/alexcrichton/349c7ce7c620c1adb2f2 [win1]: https://gist.github.com/alexcrichton/7e3611faae2e1edaee6f [win2]: https://gist.github.com/alexcrichton/4f5f87749af3ad0f9851
-
由 Alex Crichton 提交于
Instead of allocating the same ports for ipv4 and ipv6 tests, instead draw all ports from the same pool. Some tests connect to just "localhost" on a particular port which may accidentally be interacting with other tests as the ipv-what-ness isn't specified with the string "localhost" Relevant logs: * [Deadlock of the `net::tcp::tests::listen_localhost` test][mac] * [Failure of the `fast_rebind` test][win1] * [Failure of `multiple_connect_interleaved_lazy_schedule_ip4`][win2] [mac]: https://gist.github.com/alexcrichton/349c7ce7c620c1adb2f2 [win1]: https://gist.github.com/alexcrichton/7e3611faae2e1edaee6f [win2]: https://gist.github.com/alexcrichton/4f5f87749af3ad0f9851
-
由 bors 提交于
rustdoc impl item did not include default methods for local crates, but did include them for external crates. This resulted in duplicate methods. Fix so that impl item does not include default methods for external crates. Fix #22595.
-
由 Huon Wilson 提交于
-
由 Flavio Percoco 提交于
-
- 26 2月, 2015 15 次提交
-
-
由 bors 提交于
In the process, also replaces two raw mutable pointers with `Unique` to spell out the ownership semantics. cc #22709
-
由 Seo Sanghyeon 提交于
-
由 Seo Sanghyeon 提交于
-
由 bors 提交于
This needs to make it into the snapshot before #21824 can land. r? @alexcrichton
-
由 nwin 提交于
-
由 Edward Wang 提交于
In the process, also replaces a raw mutable pointers with Unique to spell out the ownership semantics. cc #22709
-
由 bors 提交于
The Path/PathBuf pair already implements the required `Borrow`/`ToOwned` traits and can be used in a `Cow` pointer, so why not? r? @alexcrichton
-
由 Steven Fackler 提交于
-
由 Edward Wang 提交于
So it is symmetric to its `Iter` implementation. Also kills an FIXME.
-
由 Huon Wilson 提交于
The stability check checks the `PublicItems` map when giving errors if there is a #[stable] item with a public contents that doesn't not have its own stability. Without recording this, struct fields and enum variants will not get errors for e.g. stable modules with unmarked functions internally. This is just improving the compiler's precision to give the standard library developers more information earlier. E.g. #![staged_api] #![feature(staged_api)] #![crate_type = "lib"] #[stable(feature = "rust1", since = "1.0.0")] pub struct Foo { pub x: i32 } #[stable(feature = "rust1", since = "1.0.0")] pub mod bar { pub fn baz() {} } Without the patch it gives: test.rs:12:5: 12:20 error: This node does not have a stability attribute test.rs:12 pub fn baz() {} ^~~~~~~~~~~~~~~ error: aborting due to previous error With the patch it gives: test.rs:7:9: 7:15 error: This node does not have a stability attribute test.rs:7 pub x: i32 ^~~~~~ test.rs:12:5: 12:20 error: This node does not have a stability attribute test.rs:12 pub fn baz() {} ^~~~~~~~~~~~~~~ error: aborting due to 2 previous errors
-
由 Huon Wilson 提交于
We were recording stability attributes applied to fields in the compiler, and even annotating it in the libs, but the compiler didn't actually do the checks to give errors/warnings in user crates.
-
由 Sébastien Marie 提交于
-
由 bors 提交于
Avoid `cat_expr Erred` notes when already in error state. Also, to ensure we do not let the dropck get skipped, ICE if `cat_expr` errors when *not* in error state. This is not known to be a breaking change (i.e. I do not know of a current case that causes the new ICE to be exercised). Fix #22265
-
由 bors 提交于
-
由 Jorge Aparicio 提交于
-
- 25 2月, 2015 16 次提交
-
-
由 Manish Goregaokar 提交于
-
由 Manish Goregaokar 提交于
-
由 Manish Goregaokar 提交于
-
由 Manish Goregaokar 提交于
-
由 Manish Goregaokar 提交于
-
由 Manish Goregaokar 提交于
-
由 Manish Goregaokar 提交于
Turn `unsafe_no_drop_flag` back into a gated-feature. Fix #22173
-
由 Manish Goregaokar 提交于
Currently we have a `set_mode` mutator, so this just adds the pairing of a `mode` accessor to read the value. Closes #22738
-
由 Manish Goregaokar 提交于
If the filename for a path is `None` then we know that the creation of the parent directory created the whole path so there's no need to retry the call to `create_dir`. Closes #22737
-
由 Manish Goregaokar 提交于
Specifically, the following actions were takend: * The `copy_memory` and `copy_nonoverlapping_memory` functions to drop the `_memory` suffix (as it's implied by the functionality). Both functions are now marked as `#[stable]`. * The `set_memory` function was renamed to `write_bytes` and is now stable. * The `zero_memory` function is now deprecated in favor of `write_bytes` directly. * The `Unique` pointer type is now behind its own feature gate called `unique` to facilitate future stabilization. [breaking-change]
-
由 Manish Goregaokar 提交于
This commit moves `std::env` away from the `std::old_io` error type as well as the `std::old_path` module. Methods returning an error now return `io::Error` and methods consuming or returning paths use `std::path` instead of `std::old_path`. This commit does not yet mark these APIs as `#[stable]`. This commit also migrates `std::old_io::TempDir` to `std::fs::TempDir` with essentially the exact same API. This type was added to interoperate with the new path API and has its own `tempdir` feature. Finally, this commit reverts the deprecation of `std::os` APIs returning the old path API types. This deprecation can come back once the entire `std::old_path` module is deprecated. [breaking-change]
-
由 Manish Goregaokar 提交于
This commit removes many unnecessary `unsafe impl` blocks as well as pushing the needed implementations to the lowest level possible. I noticed that the bounds for `RwLock` are a little off when reviewing #22574 and wanted to ensure that we had our story straight on these implementations.
-
由 Manish Goregaokar 提交于
r? @Gankro
-
由 Manish Goregaokar 提交于
The recent commit on liblibc for nacl break the compilation for OpenBSD (and Bitrig too, I think). The problem is `ino_t` come from another block too now. This patch remove the extra declaration. ``` .../src/liblibc/lib.rs:98:9: 98:37 error: a type named `ino_t` has already been imported in this module [E0251] .../src/liblibc/lib.rs:98 pub use types::os::arch::posix01::*; ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: aborting due to previous error ``` @dhuseby do you have this problem too ? and if yes, does this patch correct it ?
-
由 Manish Goregaokar 提交于
Two changes: 1. Make traits with assoc types invariant w/r/t their inputs. 2. Fully normalize parameter environments, including any region variables (which were being overlooked). The former supports the latter, but also just seems like a reasonably good idea. Fixes #21750 cc @edwardw r? @pnkfelix
-
由 Manish Goregaokar 提交于
According to #22650 and bb0bbf63 the link changed. I think this should fix the link on http://doc.rust-lang.org/#faqs
-