32 lines
1.6 KiB
Rust
32 lines
1.6 KiB
Rust
// Ensures #[unstable] functions without opting in the corresponding #![feature]
|
|
// will not break inference.
|
|
|
|
//@ aux-build:inference_unstable_iterator.rs
|
|
//@ aux-build:inference_unstable_itertools.rs
|
|
//@ run-pass
|
|
|
|
extern crate inference_unstable_iterator;
|
|
extern crate inference_unstable_itertools;
|
|
|
|
#[allow(unused_imports)]
|
|
use inference_unstable_iterator::IpuIterator;
|
|
use inference_unstable_itertools::IpuItertools;
|
|
|
|
fn main() {
|
|
assert_eq!('x'.ipu_flatten(), 1);
|
|
//~^ WARN a method with this name may be added to the standard library in the future
|
|
//~| WARN once this associated item is added to the standard library, the ambiguity may cause an
|
|
assert_eq!('x'.ipu_by_value_vs_by_ref(), 1);
|
|
//~^ WARN a method with this name may be added to the standard library in the future
|
|
//~| WARN once this associated item is added to the standard library, the ambiguity may cause an
|
|
assert_eq!('x'.ipu_by_ref_vs_by_ref_mut(), 1);
|
|
//~^ WARN a method with this name may be added to the standard library in the future
|
|
//~| WARN once this associated item is added to the standard library, the ambiguity may cause an
|
|
assert_eq!((&mut 'x' as *mut char).ipu_by_mut_ptr_vs_by_const_ptr(), 1);
|
|
//~^ WARN a method with this name may be added to the standard library in the future
|
|
//~| WARN once this associated item is added to the standard library, the ambiguity may cause an
|
|
assert_eq!(char::C, 1);
|
|
//~^ WARN an associated constant with this name may be added to the standard library in the future
|
|
//~| WARN once this associated item is added to the standard library, the ambiguity may cause an
|
|
}
|