Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Add test for binary op return ty with adt | Lukas Wirth | 2021-04-10 | 1 | -0/+47 |
| | |||||
* | Add manual ops::Add impls to test::traits::closure_2 | Lukas Wirth | 2021-04-10 | 1 | -20/+46 |
| | |||||
* | Implement more precise binary op return type prediction | Lukas Wirth | 2021-04-10 | 1 | -5/+5 |
| | |||||
* | Resolve prelude and crate root names in the root DefMap | Jonas Schievink | 2021-04-09 | 1 | -0/+30 |
| | |||||
* | Fix crash on syn involving lifetimes returned by Chalk | Florian Diebold | 2021-04-09 | 1 | -0/+38 |
| | | | | | | | | | | If we get lifetime variables back in autoderef, just immediately replace them by static lifetimes for now. Method resolution doesn't really deal correctly with new variables being introduced (this needs to be fixed more properly). This fixes `rust-analyzer analysis-stats --with-deps` crashing in the RA repo. | ||||
* | Merge #8394 | bors[bot] | 2021-04-07 | 1 | -0/+33 |
|\ | | | | | | | | | | | | | | | 8394: Infer variants through type aliased enums r=Veykril a=Veykril bors r+ Co-authored-by: Lukas Wirth <[email protected]> | ||||
| * | Infer variants through type aliased enums | Lukas Wirth | 2021-04-07 | 1 | -0/+33 |
| | | |||||
* | | Collect trait impls inside unnamed consts | Jonas Schievink | 2021-04-07 | 1 | -0/+22 |
|/ | |||||
* | Fix block inner item defined in macro | Edwin Cheng | 2021-03-31 | 1 | -0/+26 |
| | |||||
* | Fix generic arguments being incorrectly offset in qualified trait casts | Lukas Wirth | 2021-03-30 | 1 | -0/+43 |
| | |||||
* | Basic Support Macro 2.0 | Edwin Cheng | 2021-03-27 | 1 | -1/+82 |
| | |||||
* | Fix recursive macro statement expansion | Edwin Cheng | 2021-03-25 | 1 | -1/+39 |
| | |||||
* | Merge #7907 | bors[bot] | 2021-03-24 | 4 | -20/+139 |
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 7907: Autoderef with visibility r=cynecx a=cynecx Fixes https://github.com/rust-analyzer/rust-analyzer/issues/7841. I am not sure about the general approach here. Right now this simply tries to check whether the autoderef candidate is reachable from the current module. ~~However this doesn't exactly work with traits (see the `tests::macros::infer_derive_clone_in_core` test, which fails right now).~~ see comment below Refs: - `rustc_typeck` checking fields: https://github.com/rust-lang/rust/blob/66ec64ccf31883cd2c28d045912a76179c0c6ed2/compiler/rustc_typeck/src/check/expr.rs#L1610 r? @flodiebold Co-authored-by: cynecx <[email protected]> | ||||
| * | hir_ty: add coverage testing for autoderef_visibility_method test | cynecx | 2021-03-20 | 1 | -0/+1 |
| | | |||||
| * | hir_ty: fix test by removing trailing whitespace | cynecx | 2021-03-20 | 1 | -24/+23 |
| | | |||||
| * | hir_ty: fix visibility in infer_inherent_method test | cynecx | 2021-03-20 | 1 | -16/+16 |
| | | |||||
| * | hir_ty: add tests around autoderef with visibility checking | cynecx | 2021-03-20 | 1 | -0/+119 |
| | | |||||
| * | hir_ty: fix tests by making required methods public | cynecx | 2021-03-20 | 2 | -4/+4 |
| | | |||||
* | | Merge #8156 | bors[bot] | 2021-03-22 | 1 | -0/+46 |
|\ \ | | | | | | | | | | | | | | | | | | | | | | 8156: Correctly lower TraitRefs with default params r=flodiebold a=Veykril Fixes #5685 Co-authored-by: Lukas Wirth <[email protected]> | ||||
| * | | Correctly lower TraitRefs with default params | Lukas Wirth | 2021-03-22 | 1 | -0/+46 |
| | | | |||||
* | | | resolver: manually traverse nested block scopes | Jonas Schievink | 2021-03-22 | 1 | -0/+13 |
|/ / | |||||
* | | Merge #8137 | bors[bot] | 2021-03-21 | 1 | -0/+22 |
|\ \ | | | | | | | | | | | | | | | | | | | | | | 8137: Fix box pattern inference panic r=flodiebold a=Veykril Fixes #6560 Co-authored-by: Lukas Wirth <[email protected]> | ||||
| * | | Fix box pattern inference panic | Lukas Wirth | 2021-03-21 | 1 | -0/+22 |
| |/ | |||||
* | | Merge #8134 | bors[bot] | 2021-03-21 | 1 | -0/+23 |
|\ \ | | | | | | | | | | | | | | | | | | | | | | 8134: Correct the paths of submodules from the include! macro r=edwin0cheng a=sticnarf This PR should fix #7846. It mostly follows the instructions from @edwin0cheng in that issue. Co-authored-by: Yilin Chen <[email protected]> | ||||
| * | | use the included file as the source of expanded include macro | Yilin Chen | 2021-03-21 | 1 | -0/+23 |
| |/ | | | | | | | Signed-off-by: Yilin Chen <[email protected]> | ||||
* | | Ignore type bindings in generic_predicates_for_param | Florian Diebold | 2021-03-21 | 1 | -3/+2 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | This allows us to handle more cases without a query cycle, which includes certain cases that rustc accepted. That in turn means we avoid triggering salsa-rs/salsa#257 on valid code (it will still happen if the user writes an actual cycle). We actually accept more definitions than rustc now; that's because rustc only ignores bindings when looking up super traits, whereas we now also ignore them when looking for predicates to disambiguate associated type shorthand. We could introduce a separate query for super traits if necessary, but for now I think this should be fine. | ||||
* | | Test for a Salsa bug | Florian Diebold | 2021-03-21 | 1 | -0/+51 |
|/ | |||||
* | Remove WhereClause::Error | Florian Diebold | 2021-03-20 | 1 | -2/+2 |
| | | | | | Chalk doesn't have it, and judging from the removed code, it wasn't useful anyway. | ||||
* | Merge #8082 | bors[bot] | 2021-03-18 | 1 | -0/+22 |
|\ | | | | | | | | | | | | | | | | | | | | | | | 8082: Proper handle inner recursive macro rules cases r=edwin0cheng a=edwin0cheng Fixes #7645 cc @jonas-schievink bors r+ Co-authored-by: Edwin Cheng <[email protected]> | ||||
| * | Handle inner recursive macro rules cases | Edwin Cheng | 2021-03-18 | 1 | -0/+22 |
| | | |||||
* | | Support `#[cfg]` on all associated items | Jonas Schievink | 2021-03-18 | 1 | -0/+19 |
| | | |||||
* | | Add test for self-calling inner function | Jonas Schievink | 2021-03-17 | 1 | -0/+21 |
|/ | |||||
* | Fix macro expansion for statements w/o semicolon | Edwin Cheng | 2021-03-16 | 1 | -0/+16 |
| | |||||
* | Fix unification logic | Florian Diebold | 2021-03-15 | 1 | -100/+116 |
| | |||||
* | Check ancestor maps when computing traits in scope | Jonas Schievink | 2021-03-09 | 1 | -0/+33 |
| | |||||
* | Use upstream cov-mark | Laurențiu Nicola | 2021-03-08 | 6 | -15/+10 |
| | |||||
* | hir_ty: use default type generic for box expressions | cynecx | 2021-02-28 | 1 | -0/+55 |
| | |||||
* | Add test from #7273 | Laurențiu Nicola | 2021-02-21 | 1 | -0/+45 |
| | |||||
* | Don't write trailing whitespace when formatting empty GenericPredicates | Lukas Wirth | 2021-02-20 | 1 | -2/+2 |
| | |||||
* | Don't lower TypeBound::Lifetime as GenericPredicate::Error | Lukas Wirth | 2021-02-20 | 2 | -5/+5 |
| | |||||
* | Add test for #1165 | Jonas Schievink | 2021-02-10 | 1 | -0/+29 |
| | | | | Closes #1165 | ||||
* | Slightly expand test | Jonas Schievink | 2021-02-10 | 1 | -0/+3 |
| | |||||
* | Add more tests | Jonas Schievink | 2021-02-10 | 2 | -8/+84 |
| | |||||
* | Update fixed tests | Jonas Schievink | 2021-02-10 | 1 | -3/+6 |
| | |||||
* | infer: update resolver when descending into block | Jonas Schievink | 2021-02-10 | 1 | -0/+19 |
| | |||||
* | Infra for "unit" benchmarking | Aleksey Kladov | 2021-02-09 | 1 | -11/+12 |
| | |||||
* | Check for dyn impls in method resolution | Lukas Wirth | 2021-02-08 | 1 | -0/+22 |
| | |||||
* | Handle box with allocator | Thiébaud Weksteen | 2021-01-22 | 1 | -0/+24 |
| | | | | | | | | In 1.49.0, the definition of Box was modified to support an optional Allocator[1]. Adapt the parsing of the `box` keyword to supply the expected number of parameters to the constructor. [1] https://github.com/rust-lang/rust/commit/f288cd2e179f600fa00c2a407206a12f6c5a91e0 | ||||
* | Render Fn* trait objects and impl types as rust does | Lukas Wirth | 2021-01-13 | 2 | -4/+19 |
| | |||||
* | Proper handling $crate Take 2 | Edwin Cheng | 2021-01-07 | 1 | -0/+31 |
| |