Skip to content

Regression in botocore_parser-0.1.1, Rust 1.17 #40954

Closed
@brson

Description

@brson

Unfortunately I cannot locate the git source for this crate, but here's what cargobomb says:

boom! testing botocore_parser-0.1.1 against nightly for nightly
boom! running: cargo +nightly build --frozen
boom! creating container for: cargo +nightly build --frozen
boom! running `docker create -v /home/ec2-user/cargobomb/./work/local/test-source/nightly/nightly:/source:ro -v /home/ec2-user/cargobomb/./work/local/cargo-home:/cargo-home:ro -v /home/ec2-user/cargobomb/./work/local/rustup-home:/rustup-home:ro -v /home/ec2-user/cargobomb/./work/local/target-dirs/nightly/nightly:/target:rw -e USER_ID=500 -e CMD=cargo +nightly build --frozen cargobomb`
blam! ebf0c9359fd13037b53446c0570a0c71dc99309b623a6f1ce227d11995403025
boom! running `docker start -a ebf0c9359fd13037b53446c0570a0c71dc99309b623a6f1ce227d11995403025`
kablam!    Compiling syntex_syntax v0.29.3
kablam!    Compiling serde v0.6.15
kablam!    Compiling Inflector v0.1.6
kablam!    Compiling serde_json v0.6.1
kablam!    Compiling aster v0.13.1
kablam!    Compiling syntex v0.29.2
kablam!    Compiling quasi v0.7.0
kablam!    Compiling quasi_codegen v0.7.0
kablam! error[E0271]: type mismatch resolving `for<'cx, 'r, 'r> <fn(&mut syntax::ext::base::ExtCtxt<'_>, syntax::codemap::Span, &[syntax::ast::TokenTree]) -> std::boxed::Box<syntax::ext::base::MacResult> {expand_quote_stmt::<'_>} as std::ops::FnOnce<(&'cx mut syntax::ext::base::ExtCtxt<'r>, syntax::codemap::Span, &'r [syntax::ast::TokenTree])>>::Output == std::boxed::Box<syntax::ext::base::MacResult + 'cx>`
kablam!    --> /cargo-home/registry/src/github.com-1ecc6299db9ec823/quasi_codegen-0.7.0/src/lib.rs:728:9
kablam!     |
kablam! 728 |     reg.add_macro("quote_stmt", expand_quote_stmt);
kablam!     |         ^^^^^^^^^ expected bound lifetime parameter 'cx, found concrete lifetime
kablam!     |
kablam!     = note: concrete lifetime that was found is lifetime '_#61r
kablam!     = note: required because of the requirements on the impl of `syntax::ext::base::TTMacroExpander` for `fn(&mut syntax::ext::base::ExtCtxt<'_>, syntax::codemap::Span, &[syntax::ast::TokenTree]) -> std::boxed::Box<syntax::ext::base::MacResult> {expand_quote_stmt::<'_>}`
kablam! 
kablam! error[E0271]: type mismatch resolving `for<'cx, 'r, 'r> <fn(&mut syntax::ext::base::ExtCtxt<'_>, syntax::codemap::Span, &[syntax::ast::TokenTree]) -> std::boxed::Box<syntax::ext::base::MacResult> {expand_quote_item::<'_>} as std::ops::FnOnce<(&'cx mut syntax::ext::base::ExtCtxt<'r>, syntax::codemap::Span, &'r [syntax::ast::TokenTree])>>::Output == std::boxed::Box<syntax::ext::base::MacResult + 'cx>`
kablam!    --> /cargo-home/registry/src/github.com-1ecc6299db9ec823/quasi_codegen-0.7.0/src/lib.rs:733:9
kablam!     |
kablam! 733 |     reg.add_macro("quote_item", expand_quote_item);
kablam!     |         ^^^^^^^^^ expected bound lifetime parameter 'cx, found concrete lifetime
kablam!     |
kablam!     = note: concrete lifetime that was found is lifetime '_#137r
kablam!     = note: required because of the requirements on the impl of `syntax::ext::base::TTMacroExpander` for `fn(&mut syntax::ext::base::ExtCtxt<'_>, syntax::codemap::Span, &[syntax::ast::TokenTree]) -> std::boxed::Box<syntax::ext::base::MacResult> {expand_quote_item::<'_>}`
kablam! 
kablam! error: aborting due to 2 previous errors
kablam! 
kablam! error: Could not compile `quasi_codegen`.
kablam! 
kablam! To learn more, run the command again with --verbose.
boom! running `docker rm -f ebf0c9359fd13037b53446c0570a0c71dc99309b623a6f1ce227d11995403025`
blam! ebf0c9359fd13037b53446c0570a0c71dc99309b623a6f1ce227d11995403025

I don't know whether this is on beta or not.

Maybe one of the @rustoto authors can help repro.

Metadata

Metadata

Assignees

No one assigned

    Labels

    T-compilerRelevant to the compiler team, which will review and decide on the PR/issue.regression-from-stable-to-nightlyPerformance or correctness regression from stable to nightly.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions