diff options
Diffstat (limited to 'src/emit.rs')
-rw-r--r-- | src/emit.rs | 18 |
1 files changed, 1 insertions, 17 deletions
diff --git a/src/emit.rs b/src/emit.rs index 4a051ba..c7717aa 100644 --- a/src/emit.rs +++ b/src/emit.rs @@ -1,5 +1,4 @@ use proc_macro::TokenStream; -use proc_macro2::Span; use quote::quote; use syn::Error; @@ -11,13 +10,7 @@ pub enum Kind { Let, } -pub fn emit(err: Error, kind: Kind, output: TokenStream) -> TokenStream { - let mut err = err; - if !probably_has_spans(kind) { - // Otherwise the error is printed without any line number. - err = Error::new(Span::call_site(), &err.to_string()); - } - +pub fn emit(err: &Error, kind: Kind, output: TokenStream) -> TokenStream { let err = err.to_compile_error(); let output = proc_macro2::TokenStream::from(output); @@ -28,12 +21,3 @@ pub fn emit(err: Error, kind: Kind, output: TokenStream) -> TokenStream { TokenStream::from(expanded) } - -// Rustc is so bad at spans. -// https://github.com/rust-lang/rust/issues/43081 -fn probably_has_spans(kind: Kind) -> bool { - match kind { - Kind::Enum | Kind::Struct => true, - Kind::Match | Kind::Let => false, - } -} |