Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Regression with macros in types on serde_derive #62590

Closed
Manishearth opened this issue Jul 11, 2019 · 2 comments
Closed

Regression with macros in types on serde_derive #62590

Manishearth opened this issue Jul 11, 2019 · 2 comments
Labels
regression-from-stable-to-nightly Performance or correctness regression from stable to nightly.

Comments

@Manishearth
Copy link
Member

serde_derive 0.0.94 compiles just fine with 2019-06-06's nightly, but is broken with 2019-06-11:

error[E0433]: failed to resolve: unresolved import
   --> src/internals/ast.rs:142:44
    |
142 |     variants: &'a Punctuated<syn::Variant, Token![,]>,
    |                                            ^^^^^^^^^
    |                                            |
    |                                            unresolved import
    |                                            help: a similar path exists: `syn::token`
    |
    = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info)
[09:23:31] मanishearth@noether ~/sand/serde_derive ^_^ 
$ cargo +nightly-2019-07-11 build
   Compiling proc-macro2 v0.4.30
   Compiling unicode-xid v0.1.0
   Compiling syn v0.15.39
   Compiling quote v0.6.12
   Compiling serde_derive v1.0.94 (/home/manishearth/sand/serde_derive)
error[E0433]: failed to resolve: unresolved import
   --> src/internals/ast.rs:142:44
    |
142 |     variants: &'a Punctuated<syn::Variant, Token![,]>,
    |                                            ^^^^^^^^^
    |                                            |
    |                                            unresolved import
    |                                            help: a similar path exists: `syn::token`
    |
    = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info)

error[E0433]: failed to resolve: unresolved import
   --> src/internals/ast.rs:187:40
    |
187 |     fields: &'a Punctuated<syn::Field, Token![,]>,
    |                                        ^^^^^^^^^
    |                                        |
    |                                        unresolved import
    |                                        help: a similar path exists: `syn::token`
    |
    = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info)

error[E0433]: failed to resolve: unresolved import
    --> src/internals/attr.rs:1542:44
     |
1542 |     metas: &'a Punctuated<syn::NestedMeta, Token![,]>,
     |                                            ^^^^^^^^^
     |                                            |
     |                                            unresolved import
     |                                            help: a similar path exists: `syn::token`
     |
     = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info)

error[E0433]: failed to resolve: unresolved import
    --> src/internals/attr.rs:1586:44
     |
1586 |     items: &'a Punctuated<syn::NestedMeta, Token![,]>,
     |                                            ^^^^^^^^^
     |                                            |
     |                                            unresolved import
     |                                            help: a similar path exists: `syn::token`
     |
     = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info)

error[E0433]: failed to resolve: unresolved import
    --> src/internals/attr.rs:1594:44
     |
1594 |     items: &'a Punctuated<syn::NestedMeta, Token![,]>,
     |                                            ^^^^^^^^^
     |                                            |
     |                                            unresolved import
     |                                            help: a similar path exists: `syn::token`
     |
     = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info)

error[E0433]: failed to resolve: unresolved import
    --> src/internals/attr.rs:1602:41
     |
1602 |     items: &Punctuated<syn::NestedMeta, Token![,]>,
     |                                         ^^^^^^^^^
     |                                         |
     |                                         unresolved import
     |                                         help: a similar path exists: `syn::token`
     |
     = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info)

error[E0433]: failed to resolve: unresolved import
    --> src/internals/attr.rs:1702:56
     |
1702 |     struct BorrowedLifetimes(Punctuated<syn::Lifetime, Token![+]>);
     |                                                        ^^^^^^^^^
     |                                                        |
     |                                                        unresolved import
     |                                                        help: a similar path exists: `syn::token`
     |
     = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info)

error[E0433]: failed to resolve: unresolved import
   --> src/bound.rs:198:31
    |
198 |                 colon_token: <Token![:]>::default(),
    |                               ^^^^^^^^^
    |                               |
    |                               unresolved import
    |                               help: a similar path exists: `syn::token`
    |
    = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info)

error[E0433]: failed to resolve: unresolved import
   --> src/bound.rs:232:27
    |
232 |             colon_token: <Token![:]>::default(),
    |                           ^^^^^^^^^
    |                           |
    |                           unresolved import
    |                           help: a similar path exists: `syn::token`
    |
    = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info)

error[E0433]: failed to resolve: unresolved import
   --> src/bound.rs:289:36
    |
289 |                         lt_token: <Token![<]>::default(),
    |                                    ^^^^^^^^^
    |                                    |
    |                                    unresolved import
    |                                    help: a similar path exists: `syn::token`
    |
    = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info)

error[E0433]: failed to resolve: unresolved import
   --> src/bound.rs:309:36
    |
309 |                         gt_token: <Token![>]>::default(),
    |                                    ^^^^^^^^^
    |                                    |
    |                                    unresolved import
    |                                    help: a similar path exists: `syn::token`
    |
    = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info)

error[E0433]: failed to resolve: unresolved import
  --> src/fragment.rs:58:18
   |
58 |                 <Token![,]>::default().to_tokens(out);
   |                  ^^^^^^^^^
   |                  |
   |                  unresolved import
   |                  help: a similar path exists: `syn::token`
   |
   = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info)

error: aborting due to 12 previous errors

For more information about this error, try `rustc --explain E0433`.
error: Could not compile `serde_derive`.

Something weird is going on with that macro.

cc @dtolnay @eddyb

@Manishearth Manishearth added the regression-from-stable-to-nightly Performance or correctness regression from stable to nightly. label Jul 11, 2019
@matthiaskrgr
Copy link
Member

Looks like #62562 ?

@Manishearth
Copy link
Member Author

#62562

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
regression-from-stable-to-nightly Performance or correctness regression from stable to nightly.
Projects
None yet
Development

No branches or pull requests

2 participants