SkylerLipthay / interpolate_idents

Useable macro identifier concatenation plugin for Rust (deprecated)
MIT License
42 stars 10 forks source link

Failure to compile on nightly 2018-01-27 #28

Closed Bert-Proesmans closed 6 years ago

Bert-Proesmans commented 6 years ago

I updated my nightly compiler this morning to "rustc 1.25.0-nightly (7d6e5b9da 2018-01-27)" and received the error below when trying to compile this library. I cannot say with certainty that this compile error happens since this exact version because i only update once every few days.

error[E0277]: the trait bound `syntax::<unnamed>::FatalError: std::marker::Send` is not satisfied
  --> C:\Users\Bert\.cargo\registry\src\github.com-1ecc6299db9ec823\interpolate_idents-0.2.1\src\parser_any_macro.rs:61:19
   |
61 |         let ret = panictry!(self.parser.borrow_mut().parse_expr());
   |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   |                   |
   |                   `syntax::<unnamed>::FatalError` cannot be sent between threads safely
   |                   in this macro invocation
   |
   = help: the trait `std::marker::Send` is not implemented for `syntax::<unnamed>::FatalError`
   = note: required by `std::rt::begin_panic`
   = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info)

Edit: i wasn't complete with my information. The same error is thrown for each call to the panictry macro at lines 61, 66, 72, 86.

Bert-Proesmans commented 6 years ago

https://github.com/rust-lang/rust/commit/9a8d6b8bb5dd7dd2d378849f0c2fa586e3a5b48b

That is the cause of this issue probably, i will file a PR to fix this

johalun commented 6 years ago

I was just about to post an issue about this when I found this one. Solved it temporarily by replacing FatalError with "fatal error" so at least I'm not blocked.