diff options
| author | bors <bors@rust-lang.org> | 2020-09-02 01:29:28 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2020-09-02 01:29:28 +0000 |
| commit | e36e4bd0f7e722d3c97d1ca45387e58f81e4e8ea (patch) | |
| tree | 505c8905fbf0db875c1be97477b65cac833bb653 /compiler/rustc_resolve/src/lib.rs | |
| parent | 130359cb05246fcacdde61baa2613419ef6570c7 (diff) | |
| parent | 4dd75f8049b722ea8bd4ff9d7c6c4a438161bad6 (diff) | |
Auto merge of #76231 - tmandry:rollup-ilvs9fq, r=tmandry
Rollup of 14 pull requests Successful merges: - #74880 (Add trailing comma support to matches macro) - #76074 (Add new `-Z dump-mir-spanview` option) - #76088 (Add more examples to lexicographic cmp on Iterators.) - #76099 (Add info about `!` and `impl Trait`) - #76126 (Use "Fira Sans" for crate list font) - #76132 (Factor out StmtKind::MacCall fields into `MacCallStmt` struct) - #76143 (Give a better error message for duplicate built-in macros) - #76158 (Stabilise link-self-contained option) - #76201 (Move to intra-doc links for library/core/src/panic.rs) - #76206 (Make all methods of `std::net::Ipv6Addr` const) - #76207 (# Move to intra-doc links for library/core/src/clone.rs) - #76212 (Document lint missing_doc_code_examples is nightly-only) - #76218 (lexer: Tiny improvement to shebang detection) - #76221 (Clean up header in `iter` docs for `for` loops) Failed merges: r? @ghost
Diffstat (limited to 'compiler/rustc_resolve/src/lib.rs')
| -rw-r--r-- | compiler/rustc_resolve/src/lib.rs | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/compiler/rustc_resolve/src/lib.rs b/compiler/rustc_resolve/src/lib.rs index 5892edf7652..50729086ec6 100644 --- a/compiler/rustc_resolve/src/lib.rs +++ b/compiler/rustc_resolve/src/lib.rs @@ -867,6 +867,12 @@ pub struct ExternPreludeEntry<'a> { pub introduced_by_item: bool, } +/// Used for better errors for E0773 +enum BuiltinMacroState { + NotYetSeen(SyntaxExtension), + AlreadySeen(Span), +} + /// The main resolver class. /// /// This is the visitor that walks the whole crate. @@ -960,7 +966,7 @@ pub struct Resolver<'a> { crate_loader: CrateLoader<'a>, macro_names: FxHashSet<Ident>, - builtin_macros: FxHashMap<Symbol, SyntaxExtension>, + builtin_macros: FxHashMap<Symbol, BuiltinMacroState>, registered_attrs: FxHashSet<Ident>, registered_tools: FxHashSet<Ident>, macro_use_prelude: FxHashMap<Symbol, &'a NameBinding<'a>>, |
