-
Notifications
You must be signed in to change notification settings - Fork 13.4k
Rustdoc regression in synstructure: error[E0275]: overflow evaluating the requirement alloc::raw_vec::RawVec<(syn::Lifetime, syn::token::Add)>: std::marker::Unpin
#62132
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
Comments
Duplicate of #62059. Thanks. |
SimonSapin
added a commit
to SimonSapin/synstructure
that referenced
this issue
Jul 5, 2019
See rust-lang/rust#62132 and rust-lang/rust#62059 The fix in rustdoc is at the “investigating the feasibility” stage, and this is preventing Servo from upgrading its Rust toolchain.
SimonSapin
added a commit
to SimonSapin/synstructure
that referenced
this issue
Jul 5, 2019
See rust-lang/rust#62132 and rust-lang/rust#62059 The fix in rustdoc is at the “investigating the feasibility” stage, and this is preventing Servo from upgrading its Rust toolchain.
SimonSapin
added a commit
to SimonSapin/rust-derivative
that referenced
this issue
Jul 5, 2019
In current Nightly, `cargo doc` fails with the error message below. The fix in rustdoc is at the “investigating the feasibility” stage. See rust-lang/rust#62132 and rust-lang/rust#62059 ``` error[E0275]: overflow evaluating the requirement `proc_macro2::Group: std::marker::Unpin` | = help: consider adding a `#![recursion_limit="128"]` attribute to your crate = note: required because it appears within the type `proc_macro2::TokenTree` = note: required because it appears within the type `*const proc_macro2::TokenTree` = note: required because it appears within the type `std::ptr::Unique<proc_macro2::TokenTree>` = note: required because it appears within the type `alloc::raw_vec::RawVec<proc_macro2::TokenTree>` = note: required because it appears within the type `std::vec::Vec<proc_macro2::TokenTree>` = note: required because it appears within the type `proc_macro2::fallback::TokenStream` = note: required because it appears within the type `proc_macro2::imp::TokenStream` = note: required because it appears within the type `proc_macro2::TokenStream` = note: required because it appears within the type `syn::Macro` = note: required because it appears within the type `syn::PatMacro` = note: required because it appears within the type `syn::Pat` = note: required because it appears within the type `(syn::Pat, syn::token::Or)` = note: required because it appears within the type `*const (syn::Pat, syn::token::Or)` = note: required because it appears within the type `std::ptr::Unique<(syn::Pat, syn::token::Or)>` = note: required because it appears within the type `alloc::raw_vec::RawVec<(syn::Pat, syn::token::Or)>` = note: required because it appears within the type `std::vec::Vec<(syn::Pat, syn::token::Or)>` = note: required because it appears within the type `syn::punctuated::Punctuated<syn::Pat, syn::token::Or>` = note: required because it appears within the type `syn::ExprLet` = note: required because it appears within the type `syn::Expr` = note: required because it appears within the type `syn::TypeArray` = note: required because it appears within the type `syn::Type` = note: required because it appears within the type `syn::GenericArgument` = note: required because it appears within the type `(syn::GenericArgument, syn::token::Comma)` = note: required because it appears within the type `*const (syn::GenericArgument, syn::token::Comma)` = note: required because it appears within the type `std::ptr::Unique<(syn::GenericArgument, syn::token::Comma)>` = note: required because it appears within the type `alloc::raw_vec::RawVec<(syn::GenericArgument, syn::token::Comma)>` = note: required because it appears within the type `std::vec::Vec<(syn::GenericArgument, syn::token::Comma)>` = note: required because it appears within the type `syn::punctuated::Punctuated<syn::GenericArgument, syn::token::Comma>` = note: required because it appears within the type `syn::AngleBracketedGenericArguments` = note: required because it appears within the type `syn::PathArguments` = note: required because it appears within the type `syn::PathSegment` = note: required because it appears within the type `(syn::PathSegment, syn::token::Colon2)` = note: required because it appears within the type `*const (syn::PathSegment, syn::token::Colon2)` = note: required because it appears within the type `std::ptr::Unique<(syn::PathSegment, syn::token::Colon2)>` = note: required because it appears within the type `alloc::raw_vec::RawVec<(syn::PathSegment, syn::token::Colon2)>` = note: required because it appears within the type `std::vec::Vec<(syn::PathSegment, syn::token::Colon2)>` = note: required because it appears within the type `syn::punctuated::Punctuated<syn::PathSegment, syn::token::Colon2>` = note: required because it appears within the type `syn::Path` = note: required because it appears within the type `syn::Attribute` = note: required because it appears within the type `*const syn::Attribute` = note: required because it appears within the type `std::ptr::Unique<syn::Attribute>` = note: required because it appears within the type `alloc::raw_vec::RawVec<syn::Attribute>` = note: required because it appears within the type `std::vec::Vec<syn::Attribute>` = note: required because it appears within the type `syn::LifetimeDef` = note: required because it appears within the type `(syn::LifetimeDef, syn::token::Comma)` = note: required because it appears within the type `*const (syn::LifetimeDef, syn::token::Comma)` = note: required because it appears within the type `std::ptr::Unique<(syn::LifetimeDef, syn::token::Comma)>` = note: required because it appears within the type `alloc::raw_vec::RawVec<(syn::LifetimeDef, syn::token::Comma)>` = note: required because it appears within the type `std::vec::Vec<(syn::LifetimeDef, syn::token::Comma)>` = note: required because it appears within the type `syn::punctuated::Punctuated<syn::LifetimeDef, syn::token::Comma>` = note: required because it appears within the type `syn::BoundLifetimes` = note: required because it appears within the type `std::option::Option<syn::BoundLifetimes>` = note: required because it appears within the type `syn::PredicateType` = note: required because it appears within the type `syn::WherePredicate` = note: required because it appears within the type `*const syn::WherePredicate` = note: required because it appears within the type `std::ptr::Unique<syn::WherePredicate>` = note: required because it appears within the type `alloc::raw_vec::RawVec<syn::WherePredicate>` = note: required because it appears within the type `std::vec::Vec<syn::WherePredicate>` = note: required because it appears within the type `std::option::Option<std::vec::Vec<syn::WherePredicate>>` = note: required because it appears within the type `attr::InputClone` = note: required because it appears within the type `std::option::Option<attr::InputClone>` = note: required because it appears within the type `attr::Input` = note: required because it appears within the type `ast::Input<'a>` error: aborting due to previous error For more information about this error, try `rustc --explain E0275`. error: Could not document `derivative`. ```
SimonSapin
added a commit
to SimonSapin/rust-derivative
that referenced
this issue
Jul 5, 2019
In current Nightly, `cargo doc` fails with the error message below. The fix in rustdoc is at the “investigating the feasibility” stage. See rust-lang/rust#62132 and rust-lang/rust#62059 ```rust error[E0275]: overflow evaluating the requirement `proc_macro2::Group: std::marker::Unpin` | = help: consider adding a `#![recursion_limit="128"]` attribute to your crate = note: required because it appears within the type `proc_macro2::TokenTree` = note: required because it appears within the type `*const proc_macro2::TokenTree` = note: required because it appears within the type `std::ptr::Unique<proc_macro2::TokenTree>` = note: required because it appears within the type `alloc::raw_vec::RawVec<proc_macro2::TokenTree>` = note: required because it appears within the type `std::vec::Vec<proc_macro2::TokenTree>` = note: required because it appears within the type `proc_macro2::fallback::TokenStream` = note: required because it appears within the type `proc_macro2::imp::TokenStream` = note: required because it appears within the type `proc_macro2::TokenStream` = note: required because it appears within the type `syn::Macro` = note: required because it appears within the type `syn::PatMacro` = note: required because it appears within the type `syn::Pat` = note: required because it appears within the type `(syn::Pat, syn::token::Or)` = note: required because it appears within the type `*const (syn::Pat, syn::token::Or)` = note: required because it appears within the type `std::ptr::Unique<(syn::Pat, syn::token::Or)>` = note: required because it appears within the type `alloc::raw_vec::RawVec<(syn::Pat, syn::token::Or)>` = note: required because it appears within the type `std::vec::Vec<(syn::Pat, syn::token::Or)>` = note: required because it appears within the type `syn::punctuated::Punctuated<syn::Pat, syn::token::Or>` = note: required because it appears within the type `syn::ExprLet` = note: required because it appears within the type `syn::Expr` = note: required because it appears within the type `syn::TypeArray` = note: required because it appears within the type `syn::Type` = note: required because it appears within the type `syn::GenericArgument` = note: required because it appears within the type `(syn::GenericArgument, syn::token::Comma)` = note: required because it appears within the type `*const (syn::GenericArgument, syn::token::Comma)` = note: required because it appears within the type `std::ptr::Unique<(syn::GenericArgument, syn::token::Comma)>` = note: required because it appears within the type `alloc::raw_vec::RawVec<(syn::GenericArgument, syn::token::Comma)>` = note: required because it appears within the type `std::vec::Vec<(syn::GenericArgument, syn::token::Comma)>` = note: required because it appears within the type `syn::punctuated::Punctuated<syn::GenericArgument, syn::token::Comma>` = note: required because it appears within the type `syn::AngleBracketedGenericArguments` = note: required because it appears within the type `syn::PathArguments` = note: required because it appears within the type `syn::PathSegment` = note: required because it appears within the type `(syn::PathSegment, syn::token::Colon2)` = note: required because it appears within the type `*const (syn::PathSegment, syn::token::Colon2)` = note: required because it appears within the type `std::ptr::Unique<(syn::PathSegment, syn::token::Colon2)>` = note: required because it appears within the type `alloc::raw_vec::RawVec<(syn::PathSegment, syn::token::Colon2)>` = note: required because it appears within the type `std::vec::Vec<(syn::PathSegment, syn::token::Colon2)>` = note: required because it appears within the type `syn::punctuated::Punctuated<syn::PathSegment, syn::token::Colon2>` = note: required because it appears within the type `syn::Path` = note: required because it appears within the type `syn::Attribute` = note: required because it appears within the type `*const syn::Attribute` = note: required because it appears within the type `std::ptr::Unique<syn::Attribute>` = note: required because it appears within the type `alloc::raw_vec::RawVec<syn::Attribute>` = note: required because it appears within the type `std::vec::Vec<syn::Attribute>` = note: required because it appears within the type `syn::LifetimeDef` = note: required because it appears within the type `(syn::LifetimeDef, syn::token::Comma)` = note: required because it appears within the type `*const (syn::LifetimeDef, syn::token::Comma)` = note: required because it appears within the type `std::ptr::Unique<(syn::LifetimeDef, syn::token::Comma)>` = note: required because it appears within the type `alloc::raw_vec::RawVec<(syn::LifetimeDef, syn::token::Comma)>` = note: required because it appears within the type `std::vec::Vec<(syn::LifetimeDef, syn::token::Comma)>` = note: required because it appears within the type `syn::punctuated::Punctuated<syn::LifetimeDef, syn::token::Comma>` = note: required because it appears within the type `syn::BoundLifetimes` = note: required because it appears within the type `std::option::Option<syn::BoundLifetimes>` = note: required because it appears within the type `syn::PredicateType` = note: required because it appears within the type `syn::WherePredicate` = note: required because it appears within the type `*const syn::WherePredicate` = note: required because it appears within the type `std::ptr::Unique<syn::WherePredicate>` = note: required because it appears within the type `alloc::raw_vec::RawVec<syn::WherePredicate>` = note: required because it appears within the type `std::vec::Vec<syn::WherePredicate>` = note: required because it appears within the type `std::option::Option<std::vec::Vec<syn::WherePredicate>>` = note: required because it appears within the type `attr::InputClone` = note: required because it appears within the type `std::option::Option<attr::InputClone>` = note: required because it appears within the type `attr::Input` = note: required because it appears within the type `ast::Input<'a>` error: aborting due to previous error For more information about this error, try `rustc --explain E0275`. error: Could not document `derivative`. ```
SimonSapin
added a commit
to SimonSapin/rust-derivative
that referenced
this issue
Jul 5, 2019
In current Nightly, `cargo doc` fails with the error message below. The fix in rustdoc is at the “investigating the feasibility” stage. See rust-lang/rust#62132 and rust-lang/rust#62059 ```rust error[E0275]: overflow evaluating the requirement `proc_macro2::Group: std::marker::Unpin` | = help: consider adding a `#![recursion_limit="128"]` attribute to your crate = note: required because it appears within the type `proc_macro2::TokenTree` = note: required because it appears within the type `*const proc_macro2::TokenTree` = note: required because it appears within the type `std::ptr::Unique<proc_macro2::TokenTree>` = note: required because it appears within the type `alloc::raw_vec::RawVec<proc_macro2::TokenTree>` = note: required because it appears within the type `std::vec::Vec<proc_macro2::TokenTree>` = note: required because it appears within the type `proc_macro2::fallback::TokenStream` = note: required because it appears within the type `proc_macro2::imp::TokenStream` = note: required because it appears within the type `proc_macro2::TokenStream` = note: required because it appears within the type `syn::Macro` = note: required because it appears within the type `syn::PatMacro` = note: required because it appears within the type `syn::Pat` = note: required because it appears within the type `(syn::Pat, syn::token::Or)` = note: required because it appears within the type `*const (syn::Pat, syn::token::Or)` = note: required because it appears within the type `std::ptr::Unique<(syn::Pat, syn::token::Or)>` = note: required because it appears within the type `alloc::raw_vec::RawVec<(syn::Pat, syn::token::Or)>` = note: required because it appears within the type `std::vec::Vec<(syn::Pat, syn::token::Or)>` = note: required because it appears within the type `syn::punctuated::Punctuated<syn::Pat, syn::token::Or>` = note: required because it appears within the type `syn::ExprLet` = note: required because it appears within the type `syn::Expr` = note: required because it appears within the type `syn::TypeArray` = note: required because it appears within the type `syn::Type` = note: required because it appears within the type `syn::GenericArgument` = note: required because it appears within the type `(syn::GenericArgument, syn::token::Comma)` = note: required because it appears within the type `*const (syn::GenericArgument, syn::token::Comma)` = note: required because it appears within the type `std::ptr::Unique<(syn::GenericArgument, syn::token::Comma)>` = note: required because it appears within the type `alloc::raw_vec::RawVec<(syn::GenericArgument, syn::token::Comma)>` = note: required because it appears within the type `std::vec::Vec<(syn::GenericArgument, syn::token::Comma)>` = note: required because it appears within the type `syn::punctuated::Punctuated<syn::GenericArgument, syn::token::Comma>` = note: required because it appears within the type `syn::AngleBracketedGenericArguments` = note: required because it appears within the type `syn::PathArguments` = note: required because it appears within the type `syn::PathSegment` = note: required because it appears within the type `(syn::PathSegment, syn::token::Colon2)` = note: required because it appears within the type `*const (syn::PathSegment, syn::token::Colon2)` = note: required because it appears within the type `std::ptr::Unique<(syn::PathSegment, syn::token::Colon2)>` = note: required because it appears within the type `alloc::raw_vec::RawVec<(syn::PathSegment, syn::token::Colon2)>` = note: required because it appears within the type `std::vec::Vec<(syn::PathSegment, syn::token::Colon2)>` = note: required because it appears within the type `syn::punctuated::Punctuated<syn::PathSegment, syn::token::Colon2>` = note: required because it appears within the type `syn::Path` = note: required because it appears within the type `syn::Attribute` = note: required because it appears within the type `*const syn::Attribute` = note: required because it appears within the type `std::ptr::Unique<syn::Attribute>` = note: required because it appears within the type `alloc::raw_vec::RawVec<syn::Attribute>` = note: required because it appears within the type `std::vec::Vec<syn::Attribute>` = note: required because it appears within the type `syn::LifetimeDef` = note: required because it appears within the type `(syn::LifetimeDef, syn::token::Comma)` = note: required because it appears within the type `*const (syn::LifetimeDef, syn::token::Comma)` = note: required because it appears within the type `std::ptr::Unique<(syn::LifetimeDef, syn::token::Comma)>` = note: required because it appears within the type `alloc::raw_vec::RawVec<(syn::LifetimeDef, syn::token::Comma)>` = note: required because it appears within the type `std::vec::Vec<(syn::LifetimeDef, syn::token::Comma)>` = note: required because it appears within the type `syn::punctuated::Punctuated<syn::LifetimeDef, syn::token::Comma>` = note: required because it appears within the type `syn::BoundLifetimes` = note: required because it appears within the type `std::option::Option<syn::BoundLifetimes>` = note: required because it appears within the type `syn::PredicateType` = note: required because it appears within the type `syn::WherePredicate` = note: required because it appears within the type `*const syn::WherePredicate` = note: required because it appears within the type `std::ptr::Unique<syn::WherePredicate>` = note: required because it appears within the type `alloc::raw_vec::RawVec<syn::WherePredicate>` = note: required because it appears within the type `std::vec::Vec<syn::WherePredicate>` = note: required because it appears within the type `std::option::Option<std::vec::Vec<syn::WherePredicate>>` = note: required because it appears within the type `attr::InputClone` = note: required because it appears within the type `std::option::Option<attr::InputClone>` = note: required because it appears within the type `attr::Input` = note: required because it appears within the type `ast::Input<'a>` error: aborting due to previous error For more information about this error, try `rustc --explain E0275`. error: Could not document `derivative`. ```
This was referenced Jul 5, 2019
Closed
# for free
to join this conversation on GitHub.
Already have an account?
# to comment
In a minified package:
Running
rustup run --install nightly-2019-06-21 cargo doc
completes successfully, butrustup run --install nightly-2019-06-22 cargo doc
causes the error below. Note thatcargo build
orcargo check
succeeds with either version.Regression range: 1d9981f...929b48e. #60293 is in the range and looks relevant. CC @nagisa, @eddyb
The text was updated successfully, but these errors were encountered: