diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 86f4476..260f375 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -26,6 +26,8 @@ jobs: steps: - uses: actions/checkout@v2 - uses: dtolnay/rust-toolchain@nightly + with: + components: rust-src - run: cargo test - run: cargo update -Z minimal-versions - run: cargo build diff --git a/rust-toolchain.toml b/rust-toolchain.toml new file mode 100644 index 0000000..20fe888 --- /dev/null +++ b/rust-toolchain.toml @@ -0,0 +1,2 @@ +[toolchain] +components = ["rust-src"] diff --git a/tests/ui/not-repeatable.stderr b/tests/ui/not-repeatable.stderr index 94b8b87..76f5261 100644 --- a/tests/ui/not-repeatable.stderr +++ b/tests/ui/not-repeatable.stderr @@ -1,25 +1,47 @@ error[E0599]: the method `quote_into_iter` exists for struct `Ipv4Addr`, but its trait bounds were not satisfied - --> $DIR/not-repeatable.rs:7:13 - | -3 | struct Ipv4Addr; - | ---------------- - | | - | method `quote_into_iter` not found for this - | doesn't satisfy `Ipv4Addr: Iterator` - | doesn't satisfy `Ipv4Addr: ToTokens` - | doesn't satisfy `Ipv4Addr: quote::__private::ext::RepIteratorExt` - | doesn't satisfy `Ipv4Addr: quote::__private::ext::RepToTokensExt` + --> $DIR/tests/ui/not-repeatable.rs:7:13 + | +3 | struct Ipv4Addr; + | ---------------- + | | + | method `quote_into_iter` not found for this + | doesn't satisfy `Ipv4Addr: Iterator` + | doesn't satisfy `Ipv4Addr: ToTokens` + | doesn't satisfy `Ipv4Addr: quote::__private::ext::RepIteratorExt` + | doesn't satisfy `Ipv4Addr: quote::__private::ext::RepToTokensExt` ... -7 | let _ = quote! { #(#ip)* }; - | ^^^^^^^^^^^^^^^^^^ method cannot be called on `Ipv4Addr` due to unsatisfied trait bounds - | - = note: the following trait bounds were not satisfied: - `Ipv4Addr: Iterator` - which is required by `Ipv4Addr: quote::__private::ext::RepIteratorExt` - `&Ipv4Addr: Iterator` - which is required by `&Ipv4Addr: quote::__private::ext::RepIteratorExt` - `Ipv4Addr: ToTokens` - which is required by `Ipv4Addr: quote::__private::ext::RepToTokensExt` - `&mut Ipv4Addr: Iterator` - which is required by `&mut Ipv4Addr: quote::__private::ext::RepIteratorExt` - = note: this error originates in the macro `$crate::quote_bind_into_iter` (in Nightly builds, run with -Z macro-backtrace for more info) +7 | let _ = quote! { #(#ip)* }; + | ^^^^^^^^^^^^^^^^^^ method cannot be called on `Ipv4Addr` due to unsatisfied trait bounds + | + = note: the following trait bounds were not satisfied: + `Ipv4Addr: Iterator` + which is required by `Ipv4Addr: quote::__private::ext::RepIteratorExt` + `&Ipv4Addr: Iterator` + which is required by `&Ipv4Addr: quote::__private::ext::RepIteratorExt` + `Ipv4Addr: ToTokens` + which is required by `Ipv4Addr: quote::__private::ext::RepToTokensExt` + `&mut Ipv4Addr: Iterator` + which is required by `&mut Ipv4Addr: quote::__private::ext::RepIteratorExt` +note: the following traits must be implemented + --> $RUST/core/src/iter/traits/iterator.rs + | + | / pub trait Iterator { + | | /// The type of the elements being iterated over. + | | #[stable(feature = "rust1", since = "1.0.0")] + | | type Item; +... | + | | } + | | } + | |__^ + | + ::: $DIR/src/to_tokens.rs:12:1 + | +12 | / pub trait ToTokens { +13 | | /// Write `self` to the given `TokenStream`. +14 | | /// +15 | | /// The token append methods provided by the [`TokenStreamExt`] extension +... | +76 | | } +77 | | } + | |_^ + = note: this error originates in the macro `$crate::quote_bind_into_iter` (in Nightly builds, run with -Z macro-backtrace for more info)