Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | | Extend analysis-stats a bit | Florian Diebold | 2020-02-15 | 1 | -0/+3 | |
|/ | | | | | | | | | | | | This adds some tools helpful when debugging nondeterminism in analysis-stats: - a `--randomize` option that analyses everything in random order - a `-vv` option that prints even more detail Also add a debug log if Chalk fuel is exhausted (which would be a source of nondeterminism, but didn't happen in my tests). I found one source of nondeterminism (rust-lang/chalk#331), but there are still other cases remaining. | |||||
* | Merge #3147 | bors[bot] | 2020-02-14 | 3 | -0/+42 | |
|\ | | | | | | | | | | | | | | | 3147: Check that impl self type matches up with expected self type in path mode r=matklad a=flodiebold Fixes #3144. Co-authored-by: Florian Diebold <[email protected]> | |||||
| * | Check that impl self type matches up with expected self type in path mode | Florian Diebold | 2020-02-14 | 3 | -0/+42 | |
| | | | | | | | | Fixes #3144. | |||||
* | | Make Self implement the trait inside trait default methods | Florian Diebold | 2020-02-14 | 3 | -4/+77 | |
|/ | ||||||
* | Move hir_fmt code to display module | Florian Diebold | 2020-02-14 | 2 | -372/+376 | |
| | ||||||
* | Rename Ty::Param => Ty::Placeholder | Florian Diebold | 2020-02-14 | 3 | -11/+11 | |
| | | | | This aligns more with Chalk. | |||||
* | Don't let unknown match arms fall back to ! | Florian Diebold | 2020-02-11 | 2 | -1/+22 | |
| | ||||||
* | Add or- and parenthesized-patterns | Matthew Jasper | 2020-02-09 | 2 | -3/+13 | |
| | ||||||
* | Add two more tests | Florian Diebold | 2020-02-07 | 1 | -0/+51 | |
| | ||||||
* | Fix some TODOs | Florian Diebold | 2020-02-07 | 3 | -11/+17 | |
| | ||||||
* | Don't print implicit type args from impl Trait | Florian Diebold | 2020-02-07 | 2 | -14/+21 | |
| | ||||||
* | Deal better with implicit type parameters and argument lists | Florian Diebold | 2020-02-07 | 4 | -26/+138 | |
| | ||||||
* | Formatting | Florian Diebold | 2020-02-07 | 9 | -38/+82 | |
| | ||||||
* | Clean up RPIT a bit | Florian Diebold | 2020-02-07 | 4 | -41/+13 | |
| | ||||||
* | Fix compilation of other crates | Florian Diebold | 2020-02-07 | 2 | -4/+10 | |
| | ||||||
* | Use variables in predicates as well | Florian Diebold | 2020-02-07 | 5 | -63/+52 | |
| | ||||||
* | Comment fixes / todos | Florian Diebold | 2020-02-07 | 3 | -6/+8 | |
| | ||||||
* | Fix APIT some more | Florian Diebold | 2020-02-07 | 4 | -101/+115 | |
| | ||||||
* | Fix APIT | Florian Diebold | 2020-02-07 | 1 | -0/+2 | |
| | ||||||
* | Change Ty::Param to contain param ID | Florian Diebold | 2020-02-07 | 11 | -127/+136 | |
| | ||||||
* | WIP use params for APIT | Florian Diebold | 2020-02-07 | 3 | -1/+64 | |
| | ||||||
* | Fix assoc type selection | Florian Diebold | 2020-02-07 | 2 | -32/+43 | |
| | ||||||
* | Fix another test | Florian Diebold | 2020-02-07 | 2 | -7/+3 | |
| | ||||||
* | First stab at desugaring bounds for APIT | Florian Diebold | 2020-02-07 | 2 | -6/+33 | |
| | ||||||
* | Fix crash | Florian Diebold | 2020-02-07 | 1 | -4/+7 | |
| | ||||||
* | Fix enum constructors | Florian Diebold | 2020-02-07 | 3 | -11/+9 | |
| | ||||||
* | Fix printing of function types | Florian Diebold | 2020-02-07 | 7 | -72/+73 | |
| | ||||||
* | Lower impl trait to variables, move away from using placeholders where they ↵ | Florian Diebold | 2020-02-07 | 9 | -188/+220 | |
| | | | | don't belong | |||||
* | wip lower impl trait to type args | Florian Diebold | 2020-02-07 | 4 | -4/+6 | |
| | ||||||
* | wip implement lowering mode | Florian Diebold | 2020-02-07 | 2 | -26/+34 | |
| | ||||||
* | Add impl trait lowering mode | Florian Diebold | 2020-02-07 | 4 | -32/+132 | |
| | ||||||
* | Introduce TyLoweringContext | Florian Diebold | 2020-02-07 | 4 | -146/+130 | |
| | ||||||
* | Standard formatting for array types | Aleksey Kladov | 2020-01-28 | 5 | -89/+89 | |
| | ||||||
* | Tweak Chalk settings | Florian Diebold | 2020-01-27 | 1 | -2/+1 | |
| | ||||||
* | Ignore failing impl Trait tests | Florian Diebold | 2020-01-27 | 1 | -0/+2 | |
| | ||||||
* | Upgrade Chalk | Florian Diebold | 2020-01-27 | 3 | -61/+71 | |
| | ||||||
* | Update crates | Jeremy Kolb | 2020-01-26 | 1 | -1/+1 | |
| | ||||||
* | Omit default parameters for reference types | Kirill Bulatov | 2020-01-22 | 2 | -2/+7 | |
| | ||||||
* | Fix inference for shift operators | Florian Diebold | 2020-01-17 | 3 | -5/+35 | |
| | | | | Fixes #2602. | |||||
* | Merge #2844 | bors[bot] | 2020-01-14 | 1 | -2/+2 | |
|\ | | | | | | | | | | | | | | | 2844: Use dummy value for line! and column! macro r=matklad a=edwin0cheng Use dummy value `0` for line! and column! macro. Co-authored-by: Edwin Cheng <[email protected]> | |||||
| * | Use dummy value for line! and column! macro | Edwin Cheng | 2020-01-14 | 1 | -2/+2 | |
| | | ||||||
* | | Push resolver further up | Aleksey Kladov | 2020-01-14 | 3 | -25/+44 | |
| | | ||||||
* | | Push resolver up | Aleksey Kladov | 2020-01-14 | 1 | -21/+51 | |
| | | ||||||
* | | Move impls_future to Type, where it belongs | Aleksey Kladov | 2020-01-14 | 1 | -2/+1 | |
| | | ||||||
* | | Don't panic if chalk panics | Aleksey Kladov | 2020-01-13 | 1 | -9/+35 | |
|/ | ||||||
* | Fix various names, e.g. Iterator not resolving in core prelude | Florian Diebold | 2020-01-11 | 1 | -0/+54 | |
| | | | | | | | | | | | | | Basically, `Iterator` is re-exported via several steps, which happened to not be resolved yet when we got to the prelude import, but since the name resolved to the reexport from `core::iter` (just to no actual items), we gave up trying to resolve it further. Maybe part of the problem is that we can have `PartialResolvedImport::Unresolved` or `PartialResolvedImport::Indeterminate` with `None` in all namespaces, and handle them differently. Fixes #2683. | |||||
* | Add test for macro expansion in various expressions | Florian Diebold | 2020-01-10 | 1 | -0/+81 | |
| | ||||||
* | Expand PAREN_EXPR as expression | Edwin Cheng | 2020-01-10 | 1 | -0/+17 | |
| | ||||||
* | Merge #2742 | bors[bot] | 2020-01-03 | 3 | -4/+13 | |
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2742: Split `infer` query into two for better profiling r=flodiebold a=michalt This is the same change as we did with `crate_def_map` and it does seem that we mostly spend time in salsa, without recomputing much on rust-analyzer side. Example output: ``` 233ms - handle_inlay_hints 163ms - get_inlay_hints 163ms - SourceAnalyzer::new 67ms - def_with_body_from_child_node 67ms - analyze_container 67ms - analyze_container 67ms - Module::from_definition 67ms - Module::from_file 67ms - crate_def_map 0ms - parse_macro_query (6 calls) 0ms - raw_items_query (1 calls) 66ms - ??? 0ms - crate_def_map (1 calls) 0ms - crate_def_map (1 calls) 96ms - infer 2ms - trait_solve_query (2 calls) 94ms - ??? 0ms - body_with_source_map_query (1 calls) 0ms - crate_def_map (1 calls) [...] ``` Signed-off-by: Michal Terepeta <[email protected]> Co-authored-by: Michal Terepeta <[email protected]> | |||||
| * | Split `infer` query into two for better profiling | Michal Terepeta | 2020-01-03 | 3 | -4/+13 | |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is the same change as we did with `crate_def_map` and it does seem that we mostly spend time in salsa, without recomputing much on rust-analyzer side. Example output: ``` 233ms - handle_inlay_hints 163ms - get_inlay_hints 163ms - SourceAnalyzer::new 67ms - def_with_body_from_child_node 67ms - analyze_container 67ms - analyze_container 67ms - Module::from_definition 67ms - Module::from_file 67ms - crate_def_map 0ms - parse_macro_query (6 calls) 0ms - raw_items_query (1 calls) 66ms - ??? 0ms - crate_def_map (1 calls) 0ms - crate_def_map (1 calls) 96ms - infer 2ms - trait_solve_query (2 calls) 94ms - ??? 0ms - body_with_source_map_query (1 calls) 0ms - crate_def_map (1 calls) [...] ``` Signed-off-by: Michal Terepeta <[email protected]> |