Closed
Description
macro_rules
should use TokenStream
s instead of being pretty-printed into a string and later re-parsed. This is required to get correct/precise hygiene information and original source spans.
For example, right now macros from libstd
get <std macros>
in their spans instead of the original source, and we hide printing any of that source because it looks much worse than the original, and those spans also don't capture any fine-grained information from macro-defining macros.
IIRC @ibabushkin started working on this (see #43847) but I couldn't find a tracking issue.
cc @alexcrichton @jseyfried @Manishearth