Repository navigation
Open
Description
Repro steps on Linux:
git clone https://github.com/kvark/wgpu -b swap-chain
cd wgpu
RUST_BACKTRACE=1 makeError:
thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: ParseSyntaxError { crate_name: "wgpu-native", src_path: "", error: Error { start_span: Span, end_span: Span, message: "expected one of: `for`, parentheses, `fn`, `unsafe`, `extern`, identifier, `::`, `<`, square brackets, `*`, `&`, `!`, `impl`, `_`, lifetime" } }', src/libcore/result.rs:997:5
stack backtrace:
0: std::sys::unix::backtrace::tracing::imp::unwind_backtrace
at src/libstd/sys/unix/backtrace/tracing/gcc_s.rs:39
1: std::sys_common::backtrace::_print
at src/libstd/sys_common/backtrace.rs:70
2: std::panicking::default_hook::{{closure}}
at src/libstd/sys_common/backtrace.rs:58
at src/libstd/panicking.rs:200
3: std::panicking::default_hook
at src/libstd/panicking.rs:215
4: std::panicking::rust_panic_with_hook
at src/libstd/panicking.rs:478
5: std::panicking::continue_panic_fmt
at src/libstd/panicking.rs:385
6: rust_begin_unwind
at src/libstd/panicking.rs:312
7: core::panicking::panic_fmt
at src/libcore/panicking.rs:85
8: core::result::unwrap_failed
at /rustc/daa53a52a2667533d5fe59bfcc5b8614b79c3d31/src/libcore/macros.rs:16
9: <core::result::Result<T, E>>::unwrap
at /rustc/daa53a52a2667533d5fe59bfcc5b8614b79c3d31/src/libcore/result.rs:798
10: wgpu_bindings::main
at wgpu-bindings/src/main.rs:35
11: std::rt::lang_start::{{closure}}
at /rustc/daa53a52a2667533d5fe59bfcc5b8614b79c3d31/src/libstd/rt.rs:64
12: std::panicking::try::do_call
at src/libstd/rt.rs:49
at src/libstd/panicking.rs:297
13: __rust_maybe_catch_panic
at src/libpanic_unwind/lib.rs:92
14: std::rt::lang_start_internal
at src/libstd/panicking.rs:276
at src/libstd/panic.rs:388
at src/libstd/rt.rs:48
15: std::rt::lang_start
at /rustc/daa53a52a2667533d5fe59bfcc5b8614b79c3d31/src/libstd/rt.rs:64
16: main
17: __libc_start_main
18: _start
at ../sysdeps/x86_64/start.S:120
Metadata
Metadata
Assignees
Labels
No labels
Type
Fields
Priority
None yet
Activity
grovesNL commentedon Jan 18, 2019
I investigated this a bit last night. To get source for parsing, cbindgen runs:
But the output of this command doesn't compile in Rust, because it fails on the
$:https://play.rust-lang.org/?version=nightly&mode=debug&edition=2018&gist=90fb57da21a6a9ef22088c29048bc568
So I don't really expect syn to parse this because it doesn't even compile. It would be useful if somebody could help clarify whether the issue related to the rustc macro expansion, syn, or cbindgen?
emilio commentedon Jan 18, 2019
I would expect
$crateto be expanded using--pretty=expandedthe same way all the other macro$variablesare expanded.grovesNL commentedon Jan 19, 2019
It seems related to rustc changing behavior for macro expansion between
2018-12-27-fb86d604band2018-12-28-60e825389nightlies.I have an example here which displays the difference in output https://gist.github.com/grovesNL/5d3ddc7b95c1939be26c64ba09f1ac2f
I also mentioned it on a PR which appears to be related rust-lang/rust#57155
cathaysia commentedon Aug 31, 2023
if you print something in macro, then this error will be raised.