Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Fix unresolved attribute fallback again | Jonas Schievink | 2021-05-19 | 1 | -4/+4 |
| | |||||
*-. | Merge #8885 #8887 | bors[bot] | 2021-05-19 | 1 | -13/+14 |
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8885: internal: greatly simplify eager macro representation r=jonas-schievink a=jonas-schievink - Share structures with lazy macros, make both use `MacroCallLoc`. - Remove `intern_eager_expansion`, `EagerCallLoc`, `EagerMacroId`, and *many* matches on `MacroCallId`. - Make a lot of FIXMEs obsolete since the code no longer distinguishes between eager and lazy macros. - Add `EagerCallInfo`, which is `Some` for calls to eager macros and holds the argument or expansion result and the included file. 8887: fix: fix derive collection after unresolved attribute fallback r=jonas-schievink a=jonas-schievink Fixes https://github.com/rust-analyzer/rust-analyzer/pull/8882#issuecomment-844379170 bors r+ Co-authored-by: Jonas Schievink <[email protected]> | ||||
| | * | Fix derive collection after unresolved attribute fallback | Jonas Schievink | 2021-05-19 | 1 | -1/+5 |
| |/ |/| | |||||
| * | Simplify eager macro representation | Jonas Schievink | 2021-05-19 | 1 | -12/+9 |
|/ | |||||
* | Merge #8882 | bors[bot] | 2021-05-19 | 1 | -27/+153 |
|\ | | | | | | | | | | | | | | | | | | | | | | | 8882: internal: resolve attributes in name resolution (minimal version) r=jonas-schievink a=jonas-schievink Closes https://github.com/rust-analyzer/rust-analyzer/pull/7049 This should not have any observable effect, since we don't attempt to expand attribute macros yet, and I have implemented a fallback that treats items with unresolved attributes as if the attribute wasn't there. Derive helpers are not yet resolved. `#![register_{attr,tool}]` are not yet supported. Co-authored-by: Jonas Schievink <[email protected]> | ||||
| * | Rewrite `resolve_imports` to use an iterator | Jonas Schievink | 2021-05-19 | 1 | -19/+23 |
| | | | | | | | | This allows reusing the original vector's allocation | ||||
| * | Restructure nameres loop to be a bit clearer | Jonas Schievink | 2021-05-19 | 1 | -38/+41 |
| | | |||||
| * | internal: resolve attributes in name resolution | Jonas Schievink | 2021-05-19 | 1 | -2/+121 |
| | | |||||
* | | Merge #8871 | bors[bot] | 2021-05-18 | 1 | -23/+13 |
|\ \ | | | | | | | | | | | | | | | | | | | | | | 8871: internal: Simplify `DefCollector::resolve_macros` r=jonas-schievink a=jonas-schievink bors r+ Co-authored-by: Jonas Schievink <[email protected]> | ||||
| * | | Simplify `DefCollector::resolve_macros` | Jonas Schievink | 2021-05-18 | 1 | -23/+13 |
| |/ | |||||
* | | Added cov mark | ivan770 | 2021-05-17 | 1 | -0/+1 |
| | | |||||
* | | Fix #8834 | ivan770 | 2021-05-16 | 1 | -0/+4 |
|/ | |||||
* | Move `AttrId` back into `hir_def` | Jonas Schievink | 2021-05-10 | 1 | -2/+2 |
| | |||||
* | Precompute macro fragment kind | Jonas Schievink | 2021-05-09 | 1 | -6/+14 |
| | |||||
* | Include path in `unresolved-macro-call` diagnostic | Jonas Schievink | 2021-04-16 | 1 | -4/+5 |
| | |||||
* | Resolve prelude and crate root names in the root DefMap | Jonas Schievink | 2021-04-09 | 1 | -1/+2 |
| | |||||
* | Store `#[derive]` attribute ID along macro invoc | Jonas Schievink | 2021-04-09 | 1 | -7/+11 |
| | |||||
* | Use named fields in `MacroCallKind` | Jonas Schievink | 2021-04-08 | 1 | -1/+1 |
| | |||||
* | Track recursion limit when expanding custom derive | Jonas Schievink | 2021-04-08 | 1 | -1/+1 |
| | |||||
* | nameres: collect unnamed consts | Jonas Schievink | 2021-04-07 | 1 | -13/+21 |
| | |||||
* | Merge #8352 | bors[bot] | 2021-04-05 | 1 | -9/+3 |
|\ | | | | | | | | | | | | | | | 8352: Remove dead legacy macro expansion code r=lnicola a=brandondong I was investigating some unrelated macro issue when I noticed this dead code. This legacy macro expansion logic was changed in https://github.com/rust-analyzer/rust-analyzer/pull/8128. Co-authored-by: Brandon <[email protected]> | ||||
| * | Remove dead legacy macro expansion code | Brandon | 2021-04-05 | 1 | -9/+3 |
| | | |||||
* | | Use shrink_to_fit to reduce DefMap sizes | Jonas Schievink | 2021-04-03 | 1 | -1/+3 |
| | | |||||
* | | Intern `ModPath` in `Import` | Jonas Schievink | 2021-04-03 | 1 | -2/+6 |
| | | | | | | | | Minor savings only | ||||
* | | Support `#[rustc_builtin_macro = "builtin_name"]` | Jonas Schievink | 2021-04-03 | 1 | -1/+11 |
| | | |||||
* | | Only populate prelude for crate-level DefMaps | Jonas Schievink | 2021-04-02 | 1 | -14/+16 |
| | | |||||
* | | Intern Attr, MacroCall and Path components | Jonas Schievink | 2021-04-01 | 1 | -1/+1 |
| | | |||||
* | | Basic Support Macro 2.0 | Edwin Cheng | 2021-03-27 | 1 | -39/+63 |
|/ | |||||
* | Merge bang-macros and derives in name resolution | Jonas Schievink | 2021-03-23 | 1 | -86/+79 |
| | |||||
* | Expand legacy-scoped macro during collection | Jonas Schievink | 2021-03-21 | 1 | -6/+7 |
| | |||||
* | Fix handling of `#![cfg]` in outline module file | Jonas Schievink | 2021-03-19 | 1 | -21/+29 |
| | |||||
* | Rename derive-specific APIs | Jonas Schievink | 2021-03-19 | 1 | -4/+4 |
| | |||||
* | Record custom derive helpers in `DefMap` | Jonas Schievink | 2021-03-18 | 1 | -24/+9 |
| | | | | Also clean up proc macro attribute parsing a bit | ||||
* | Store an `AstId` for procedural macros | Jonas Schievink | 2021-03-18 | 1 | -6/+7 |
| | |||||
* | Make MacroDefId's `AstId` mandatory when possible | Jonas Schievink | 2021-03-18 | 1 | -4/+1 |
| | |||||
* | Rename `item_tree` query to `file_item_tree` | Jonas Schievink | 2021-03-18 | 1 | -4/+4 |
| | |||||
* | Make `ItemTreeId` its own type | Jonas Schievink | 2021-03-18 | 1 | -6/+6 |
| | |||||
* | Fix `use crate as <name>;` imports | Jonas Schievink | 2021-03-17 | 1 | -16/+18 |
| | |||||
* | Use first early expansion error during nameres | Jonas Schievink | 2021-03-17 | 1 | -1/+3 |
| | |||||
* | Update crates/hir_def/src/nameres/collector.rs | brandondong | 2021-03-15 | 1 | -1/+1 |
| | | | Co-authored-by: Jonas Schievink <[email protected]> | ||||
* | Fix incorrect diagnositics for failing built in eager macros | Brandon | 2021-03-14 | 1 | -10/+23 |
| | |||||
* | Delete `ContainerId` | Jonas Schievink | 2021-03-09 | 1 | -12/+11 |
| | |||||
* | Stop using `ContainerId` in `AssocContainerId` | Jonas Schievink | 2021-03-09 | 1 | -3/+3 |
| | |||||
* | Use upstream cov-mark | Laurențiu Nicola | 2021-03-08 | 1 | -9/+8 |
| | |||||
* | For unresolved macros, hightlight only the last segment | Aleksey Kladov | 2021-02-28 | 1 | -33/+48 |
| | |||||
* | is_visible_from_def_map: handle block expressions | Jonas Schievink | 2021-02-23 | 1 | -2/+2 |
| | |||||
* | Make `ModPath`'s representation private | Jonas Schievink | 2021-02-04 | 1 | -2/+2 |
| | |||||
* | Don't keep the parent DefMap alive via Arc | Jonas Schievink | 2021-02-04 | 1 | -4/+5 |
| | | | | | This seems like it could easily leak a lot of memory since we don't currently run GC | ||||
* | Use the right `DefMap` when looking up modules | Jonas Schievink | 2021-02-02 | 1 | -1/+7 |
| | |||||
* | Honor #![macro_use] in mod source files | Lukas Wirth | 2021-01-31 | 1 | -8/+9 |
| |