mirror of
https://gitee.com/openharmony/third_party_rust_lazy-static.rs
synced 2024-11-23 07:29:44 +00:00
parent
8a5f404fc8
commit
42fa58ea68
@ -1,7 +1,7 @@
|
||||
language: rust
|
||||
matrix:
|
||||
include:
|
||||
- rust: 1.24.1
|
||||
- rust: 1.27.2
|
||||
- rust: stable
|
||||
script:
|
||||
- cargo test
|
||||
|
@ -15,7 +15,7 @@ as well as anything that requires non-const function calls to be computed.
|
||||
|
||||
## Minimum supported `rustc`
|
||||
|
||||
`1.24.1+`
|
||||
`1.27.2+`
|
||||
|
||||
This version is explicitly tested in CI and may only be bumped in new minor versions. Any changes to the supported minimum version will be called out in the release notes.
|
||||
|
||||
|
@ -10,6 +10,7 @@ extern crate std;
|
||||
|
||||
use self::std::prelude::v1::*;
|
||||
use self::std::cell::Cell;
|
||||
use self::std::hint::unreachable_unchecked;
|
||||
use self::std::sync::Once;
|
||||
#[allow(deprecated)]
|
||||
pub use self::std::sync::ONCE_INIT;
|
||||
@ -54,15 +55,3 @@ macro_rules! __lazy_static_create {
|
||||
static $NAME: $crate::lazy::Lazy<$T> = $crate::lazy::Lazy::INIT;
|
||||
};
|
||||
}
|
||||
|
||||
/// Polyfill for std::hint::unreachable_unchecked. There currently exists a
|
||||
/// [crate](https://docs.rs/unreachable) for an equivalent to std::hint::unreachable_unchecked, but
|
||||
/// lazy_static currently doesn't include any runtime dependencies and we've chosen to include this
|
||||
/// short polyfill rather than include a new crate in every consumer's build.
|
||||
///
|
||||
/// This should be replaced by std's version when lazy_static starts to require at least Rust 1.27.
|
||||
unsafe fn unreachable_unchecked() -> ! {
|
||||
enum Void {}
|
||||
#[allow(deprecated)]
|
||||
match std::mem::uninitialized::<Void>() {}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user