Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | internal: refactor unresolved import diagnostic | Aleksey Kladov | 2021-06-13 | 1 | -37/+0 |
| | |||||
* | internal: refactor unresolved extern crate diagnostic | Aleksey Kladov | 2021-06-13 | 1 | -29/+0 |
| | |||||
* | internal: start new diagnostics API | Aleksey Kladov | 2021-06-13 | 1 | -14/+0 |
| | | | | | | | | | | | | | | | | | | At the moment, this moves only a single diagnostic, but the idea is reafactor the rest to use the same pattern. We are going to have a single file per diagnostic. This file will define diagnostics code, rendering range and fixes, if any. It'll also have all of the tests. This is similar to how we deal with assists. After we refactor all diagnostics to follow this pattern, we'll probably move them to a new `ide_diagnostics` crate. Not that we intentionally want to test all diagnostics on this layer, despite the fact that they are generally emitted in the guts on the compiler. Diagnostics care to much about the end presentation details/fixes to be worth-while "unit" testing. So, we'll unit-test only the primary output of compilation process (types and name res tables), and will use integrated UI tests for diagnostics. | ||||
* | internal: check that coverage marks are always paired | Aleksey Kladov | 2021-06-13 | 1 | -5/+5 |
| | |||||
* | cargo fmt | Maan2003 | 2021-06-13 | 1 | -27/+24 |
| | |||||
* | clippy::useless_return | Maan2003 | 2021-06-13 | 1 | -1/+1 |
| | |||||
* | clippy::redundant_closure | Maan2003 | 2021-06-13 | 1 | -2/+2 |
| | |||||
* | clippy::clone_on_copy | Maan2003 | 2021-06-13 | 2 | -2/+2 |
| | |||||
* | clippy::useless_conversion | Maan2003 | 2021-06-13 | 3 | -8/+5 |
| | |||||
* | clippy::redudant_borrow | Maan2003 | 2021-06-13 | 9 | -36/+36 |
| | |||||
* | internal: cross-crate cov-marks | Aleksey Kladov | 2021-06-12 | 1 | -1/+1 |
| | |||||
* | Don't stringify `cfg_attr`-gated attributes | Jonas Schievink | 2021-06-11 | 1 | -4/+18 |
| | | | | This preserves the assigned `TokenId`s | ||||
* | Reduce fst_path calls | Kirill Bulatov | 2021-06-10 | 1 | -11/+5 |
| | |||||
* | Add more profiling for flyimports | Kirill Bulatov | 2021-06-10 | 3 | -71/+85 |
| | |||||
* | Implement dummy expansions for builtin attributes | Lukas Wirth | 2021-06-09 | 1 | -1/+3 |
| | |||||
* | Merge #9169 | bors[bot] | 2021-06-07 | 4 | -3/+26 |
|\ | | | | | | | | | | | | | | | | | | | 9169: internal: steps towards attribute macro token mapping r=jonas-schievink a=jonas-schievink This doesn't work yet, but we seem to be getting a bit further along (for example, we now stop highlighting `use` items inside item with attribute macros as if they were written verbatim). bors r+ Co-authored-by: Jonas Schievink <[email protected]> | ||||
| * | Handle attribute macros in `descend_into_macros` | Jonas Schievink | 2021-06-06 | 4 | -3/+26 |
| | | |||||
* | | Make Documentation::new non-generic | Laurențiu Nicola | 2021-06-07 | 1 | -2/+2 |
|/ | |||||
* | Render documentation for derive completion | Lukas Wirth | 2021-06-04 | 1 | -0/+4 |
| | |||||
* | Return `ReachedFixedPoint::No` when resolving derive helper | Jonas Schievink | 2021-06-04 | 1 | -0/+1 |
| | |||||
* | Update list of built-in attributes | Jonas Schievink | 2021-06-03 | 1 | -16/+22 |
| | |||||
* | Make it opt-in | Jonas Schievink | 2021-06-03 | 3 | -1/+15 |
| | |||||
* | Expand procedural attribute macros | Jonas Schievink | 2021-06-03 | 2 | -6/+90 |
| | |||||
* | NFC: remove redundant clones (clippy::perf) | Matthias Krüger | 2021-06-03 | 1 | -1/+1 |
| | |||||
* | ItemTree: make variant fields inherit the enum's visibility | Jonas Schievink | 2021-06-03 | 2 | -4/+43 |
| | |||||
* | Add comment | Jonas Schievink | 2021-06-03 | 1 | -0/+3 |
| | |||||
* | Implement `#[rustc_skip_array_during_method_dispatch]` | Jonas Schievink | 2021-06-01 | 1 | -1/+13 |
| | |||||
* | Fall back to legacy prelude | Jonas Schievink | 2021-06-01 | 1 | -14/+27 |
| | |||||
* | Implement per-edition preludes | Jonas Schievink | 2021-06-01 | 4 | -69/+186 |
| | |||||
* | Expand fixme comments | Dawer | 2021-05-31 | 1 | -1/+4 |
| | |||||
* | Clean up, more docs. | Dawer | 2021-05-31 | 1 | -4/+1 |
| | |||||
* | Implement struct ctor application | Dawer | 2021-05-31 | 1 | -1/+1 |
| | |||||
* | Merge #8866 | bors[bot] | 2021-05-31 | 1 | -2/+2 |
|\ | | | | | | | | | | | | | | | 8866: Update salsa r=matklad a=jonas-schievink This updates salsa to include https://github.com/salsa-rs/salsa/pull/265, and removes all cancellation-related code from rust-analyzer Co-authored-by: Jonas Schievink <[email protected]> | ||||
| * | Update salsa | Jonas Schievink | 2021-05-27 | 1 | -2/+2 |
| | | |||||
* | | Diagnose unimplemented built-in macros | Jonas Schievink | 2021-05-30 | 3 | -16/+48 |
| | | |||||
* | | Thread proc-macro types through the HIR | Jonas Schievink | 2021-05-29 | 2 | -2/+17 |
| | | |||||
* | | hir_ty: use async ret type for inference inside async bodies | cynecx | 2021-05-29 | 4 | -3/+9 |
| | | |||||
* | | Test that `ItemTree` works as intended | Jonas Schievink | 2021-05-27 | 1 | -1/+73 |
| | | |||||
* | | Don't store supertraits in ItemTree | Laurențiu Nicola | 2021-05-27 | 5 | -13/+3 |
|/ | |||||
* | Drop `ignore` from doctests | Jonas Schievink | 2021-05-27 | 1 | -3/+3 |
| | |||||
* | Reduce memory usage a bit | Jonas Schievink | 2021-05-26 | 2 | -9/+14 |
| | |||||
* | Clean up ItemTree lowering now that it's 1:1 | Jonas Schievink | 2021-05-26 | 1 | -53/+26 |
| | |||||
* | Stop expanding UseTrees during ItemTree lowering | Jonas Schievink | 2021-05-26 | 10 | -168/+312 |
| | |||||
* | Merge #8973 | bors[bot] | 2021-05-25 | 12 | -621/+232 |
|\ | | | | | | | | | | | | | | | 8973: internal: move diagnostics to hir r=matklad a=matklad Co-authored-by: Aleksey Kladov <[email protected]> | ||||
| * | internal: move diagnostics to hir | Aleksey Kladov | 2021-05-25 | 12 | -621/+232 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The idea here is to eventually get rid of `dyn Diagnostic` and `DiagnosticSink` infrastructure altogether, and just have a `enum hir::Diagnostic` instead. The problem with `dyn Diagnostic` is that it is defined in the lowest level of the stack (hir_expand), but is used by the highest level (ide). As a first step, we free hir_expand and hir_def from `dyn Diagnostic` and kick the can up to `hir_ty`, as an intermediate state. The plan is then to move DiagnosticSink similarly to the hir crate, and, as final third step, remove its usage from the ide. One currently unsolved problem is testing. You can notice that the test which checks precise diagnostic ranges, unresolved_import_in_use_tree, was moved to the ide layer. Logically, only IDE should have the infra to render a specific range. At the same time, the range is determined with the data produced in hir_def and hir crates, so this layering is rather unfortunate. Working on hir_def shouldn't require compiling `ide` for testing. | ||||
* | | Consider trait to be in scope for trait-impl | Lukas Wirth | 2021-05-25 | 1 | -13/+25 |
| | | |||||
* | | Fix lowering of FnOnce() without return type | Florian Diebold | 2021-05-25 | 1 | -12/+15 |
|/ | | | | This should result in an implicit `-> ()`, not leaving out the binding. | ||||
* | internal: intern `AttrInput` | Jonas Schievink | 2021-05-24 | 3 | -13/+14 |
| | |||||
* | Intern `GenericArgs` | Jonas Schievink | 2021-05-24 | 4 | -11/+10 |
| | | | | This shaves off another ~4 mb or so | ||||
* | internal: intern `TypeBound`s | Jonas Schievink | 2021-05-24 | 9 | -25/+39 |
| | | | | | Doesn't save much memory (~2 mb), but interning things is generally a good pattern to follow |