dtolnay / watt

Runtime for executing procedural macros as WebAssembly
Apache License 2.0
1.29k stars 29 forks source link

Fix for recent syn version #56

Closed WanzenBug closed 3 weeks ago

WanzenBug commented 3 weeks ago

This adds two missing methods/impls to build recent syn version.


error[E0277]: `LexError` doesn't implement `std::fmt::Display`
  --> /home/mwanzenboeck/.cargo/registry/src/index.crates.io-6f17d22bba15001f/syn-2.0.86/src/error.rs:407:32
    |
407 |         Error::new(err.span(), err)
    |         ----------             ^^^ `LexError` cannot be formatted with the default formatter
    |         |
    |         required by a bound introduced by this call
    |
    = help: the trait `std::fmt::Display` is not implemented for `LexError`
    = note: in format strings you may be able to use `{:?}` (or {:#?} for pretty-print) instead
note: required by a bound in `error::Error::new`
   --> /home/mwanzenboeck/.cargo/registry/src/index.crates.io-6f17d22bba15001f/syn-2.0.86/src/error.rs:158:19
    |
158 |     pub fn new<T: Display>(span: Span, message: T) -> Self {
    |                   ^^^^^^^ required by this bound in `Error::new`

error[E0599]: no function or associated item named `c_string` found for struct `proc_macro2::Literal` in the current scope
   --> /home/mwanzenboeck/.cargo/registry/src/index.crates.io-6f17d22bba15001f/syn-2.0.86/src/lit.rs:310:34
    |
310 |         let mut token = Literal::c_string(value);
    |                                  ^^^^^^^^ function or associated item not found in `Literal`
    |