blob: 747174b1ebf1573957c7955da446138e07c18859 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
#[macro_export]
macro_rules! helper {
// Use `:tt` instead of `:ident` so that we don't get a `None`-delimited group
($first:tt) => {
pub fn foo<T>() {
// The span of `$first` comes from another file,
// so the expression `1 + $first` ends up with an
// 'invalid' span that starts and ends in different files.
// We use the `respan!` macro to give all tokens the same
// `SyntaxContext`, so that the parser will try to merge the spans.
respan::respan!(let a = 1 + $first;);
}
}
}
|