diff options
| author | bors <bors@rust-lang.org> | 2018-11-06 09:20:31 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2018-11-06 09:20:31 +0000 |
| commit | f90aab7aa9bb5834b340eaef0326994e5e09b933 (patch) | |
| tree | 512ae3004f0e3c52b761bf370beec7c72f68d3ba /src/libstd | |
| parent | 24e66c28980442a48d9458f1a4f9b76cc722dc8a (diff) | |
| parent | 8589ca08b1006feb8b1bd89d87669024509bab81 (diff) | |
| download | rust-f90aab7aa9bb5834b340eaef0326994e5e09b933.tar.gz rust-f90aab7aa9bb5834b340eaef0326994e5e09b933.zip | |
Auto merge of #55710 - kennytm:rollup, r=kennytm
Rollup of 11 pull requests Successful merges: - #55490 (resolve: Fix ICE in macro import error recovery) - #55597 (std: Enable usage of `thread_local!` through imports) - #55601 (Fix tracking issue numbers for some unstable features) - #55621 (Add precision for create_dir function) - #55644 (ci: Add Dockerfile for dist-powerpcspe-linux) - #55664 (Make "all possible cases" help message uniform with existing help messages) - #55689 (miri: binary_op_val -> binary_op_imm) - #55694 (Fixes #31076) - #55696 (NLL Diagnostic Review 3: Missing errors for borrows of union fields) - #55700 (Update ui tests with respect to NLL) - #55703 (Update `configure --help` (via configure.py) to reflect decoupling of debug+optimize)
Diffstat (limited to 'src/libstd')
| -rw-r--r-- | src/libstd/fs.rs | 7 | ||||
| -rw-r--r-- | src/libstd/thread/local.rs | 8 |
2 files changed, 11 insertions, 4 deletions
diff --git a/src/libstd/fs.rs b/src/libstd/fs.rs index 017949291bc..49012a7d341 100644 --- a/src/libstd/fs.rs +++ b/src/libstd/fs.rs @@ -1755,12 +1755,19 @@ pub fn canonicalize<P: AsRef<Path>>(path: P) -> io::Result<PathBuf> { /// /// [changes]: ../io/index.html#platform-specific-behavior /// +/// **NOTE**: If a parent of the given path doesn't exist, this function will +/// return an error. To create a directory and all its missing parents at the +/// same time, use the [`create_dir_all`] function. +/// /// # Errors /// /// This function will return an error in the following situations, but is not /// limited to just these cases: /// /// * User lacks permissions to create directory at `path`. +/// * A parent of the given path doesn't exist. (To create a directory and all +/// its missing parents at the same time, use the [`create_dir_all`] +/// function.) /// * `path` already exists. /// /// # Examples diff --git a/src/libstd/thread/local.rs b/src/libstd/thread/local.rs index ccbead7cc2f..4df47511172 100644 --- a/src/libstd/thread/local.rs +++ b/src/libstd/thread/local.rs @@ -146,13 +146,13 @@ macro_rules! thread_local { // process multiple declarations ($(#[$attr:meta])* $vis:vis static $name:ident: $t:ty = $init:expr; $($rest:tt)*) => ( - __thread_local_inner!($(#[$attr])* $vis $name, $t, $init); - thread_local!($($rest)*); + $crate::__thread_local_inner!($(#[$attr])* $vis $name, $t, $init); + $crate::thread_local!($($rest)*); ); // handle a single declaration ($(#[$attr:meta])* $vis:vis static $name:ident: $t:ty = $init:expr) => ( - __thread_local_inner!($(#[$attr])* $vis $name, $t, $init); + $crate::__thread_local_inner!($(#[$attr])* $vis $name, $t, $init); ); } @@ -202,7 +202,7 @@ macro_rules! __thread_local_inner { }; ($(#[$attr:meta])* $vis:vis $name:ident, $t:ty, $init:expr) => { $(#[$attr])* $vis const $name: $crate::thread::LocalKey<$t> = - __thread_local_inner!(@key $(#[$attr])* $vis $name, $t, $init); + $crate::__thread_local_inner!(@key $(#[$attr])* $vis $name, $t, $init); } } |
