Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Fix bind patterns always being treated as ref taking patterns | Lukas Wirth | 2021-06-02 | 1 | -19/+28 |
| | |||||
* | Implement per-edition preludes | Jonas Schievink | 2021-06-01 | 5 | -44/+97 |
| | |||||
* | hir_ty: use correct receiver_ty in method resolution | cynecx | 2021-05-31 | 1 | -0/+78 |
| | |||||
* | hir_ty: don't pass where clauses of associated types down to chalk (temp. ↵ | cynecx | 2021-05-30 | 1 | -8/+23 |
| | | | | fix #9052) | ||||
* | hir_ty: use async ret type for inference inside async bodies | cynecx | 2021-05-29 | 1 | -0/+49 |
| | |||||
* | Remove fragment kind knowledge from builtin macros | Jonas Schievink | 2021-05-29 | 1 | -0/+18 |
| | |||||
* | Move hir_ty incremental test to its own file | Jonas Schievink | 2021-05-27 | 1 | -0/+51 |
| | |||||
* | Consider trait to be in scope for trait-impl | Lukas Wirth | 2021-05-25 | 1 | -0/+30 |
| | |||||
* | Merge #8987 | bors[bot] | 2021-05-25 | 1 | -2/+24 |
|\ | | | | | | | | | | | | | | | 8987: Fix lowering of FnOnce() without return type r=flodiebold a=flodiebold This should result in an implicit `-> ()`, not leaving out the binding. Co-authored-by: Florian Diebold <[email protected]> | ||||
| * | Hide `-> ()` in Fn traits | Florian Diebold | 2021-05-25 | 1 | -3/+3 |
| | | |||||
| * | Fix lowering of FnOnce() without return type | Florian Diebold | 2021-05-25 | 1 | -5/+27 |
| | | | | | | | | This should result in an implicit `-> ()`, not leaving out the binding. | ||||
* | | Fix type inference not working for new Try trait | Lukas Wirth | 2021-05-25 | 1 | -0/+37 |
|/ | |||||
* | Minor test fixes / new tests | Florian Diebold | 2021-05-25 | 1 | -15/+62 |
| | |||||
* | Fix type mismatch caused by macros | Florian Diebold | 2021-05-25 | 1 | -0/+44 |
| | | | | | | MacroStmts should be completely transparent, but it prevented coercion. (I should maybe give `infer_expr` and `infer_expr_inner` better names.) | ||||
* | Fix test after rebase | Florian Diebold | 2021-05-21 | 1 | -1/+1 |
| | |||||
* | Deal with goals arising from unification | Florian Diebold | 2021-05-21 | 1 | -1/+1 |
| | |||||
* | Get rid of resolve_ty_as_possible | Florian Diebold | 2021-05-21 | 2 | -9/+9 |
| | | | | Instead use shallow resolving where necessary. | ||||
* | Fix handling of diverging branches in match coercion | Florian Diebold | 2021-05-21 | 1 | -0/+39 |
| | | | | Fixes #7626. | ||||
* | Fix coercion of two closures to a function pointer | Florian Diebold | 2021-05-21 | 2 | -37/+16 |
| | | | | Fixes #8604. | ||||
* | Update tests with expected changes | Florian Diebold | 2021-05-21 | 1 | -37/+34 |
| | |||||
* | internal: Record mismatches of pattern types. | Dawer | 2021-05-19 | 1 | -1/+57 |
| | |||||
* | Merge #8813 | bors[bot] | 2021-05-16 | 4 | -50/+166 |
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8813: Get some more array lengths! r=lf- a=lf- This is built on #8799 and thus contains its changes. I'll rebase it onto master when that one gets merged. It adds support for r-a understanding the length of: * `let a: [u8; 2] = ...` * `let a = b"aaa"` * `let a = [0u8; 4]` I have added support for getting the values of byte strings, which was not previously there. I am least confident in the correctness of this part and it probably needs some more tests, as we currently have only one test that exercised that part (!). Fixes #2922. Co-authored-by: Jade <[email protected]> | ||||
| * | Add more tests, refactor array lengths/consteval work | Jade | 2021-05-14 | 2 | -1/+106 |
| | | | | | | | | | | | | | | | | | | | | | | Fix #2922: add unknown length as a condition for a type having unknown. Incorporate reviews: * Extract some of the const evaluation workings into functions * Add fixmes on the hacks * Add tests for impls on specific array lengths (these work!!! 😁) * Add tests for const generics (indeed we don't support it yet) | ||||
| * | Test lowering byte strings some more | Jade | 2021-05-13 | 1 | -14/+25 |
| | | |||||
| * | Add support for lengths in array repeats, if they are literals | Jade | 2021-05-13 | 1 | -1/+1 |
| | | | | | | | | Now we will get the type of `[0u8; 4]`. | ||||
| * | Support length for ByteStrings | Jade | 2021-05-13 | 1 | -2/+2 |
| | | | | | | | | I am not confident that my added byte string parsing is right. | ||||
| * | Add lowering of array lengths in types | Jade | 2021-05-13 | 3 | -34/+34 |
| | | | | | | | | | | | | | | | | | | | | | | Now e.g. ```rust fn a(b: [u8; 2]) { } ``` will know about the length of b. | ||||
* | | Fix false positive "Missing match arm". | Dawer | 2021-05-14 | 1 | -1/+1 |
|/ | |||||
* | Merge #8799 | bors[bot] | 2021-05-12 | 5 | -95/+95 |
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | 8799: Add basic support for array lengths in types r=flodiebold a=lf- This recognizes `let a = [1u8, 2, 3]` as having type `[u8; 3]` instead of the previous `[u8; _]`. Byte strings and `[0u8; 2]` kinds of range array declarations are unsupported as before. I don't know why a bunch of our rustc tests had single quotes inside strings un-escaped by `UPDATE_EXPECT=1 cargo t`, but I don't think it's bad? Maybe something in a nightly? Co-authored-by: Jade <[email protected]> | ||||
| * | Add basic support for array lengths in types | Jade | 2021-05-11 | 5 | -95/+95 |
| | | | | | | | | | | | | | | | | | | | | This recognizes `let a = [1u8, 2, 3]` as having type `[u8; 3]` instead of the previous `[u8; _]`. Byte strings and `[0u8; 2]` kinds of range array declarations are unsupported as before. I don't know why a bunch of our rustc tests had single quotes inside strings un-escaped by `UPDATE_EXPECT=1 cargo t`, but I don't think it's bad? Maybe something in a nightly? | ||||
* | | Add a test for conditionally compiled tails | Daniel McNab | 2021-05-03 | 1 | -0/+49 |
|/ | |||||
* | Don't look in super traits for <T as Trait>::Assoc | Florian Diebold | 2021-04-29 | 1 | -0/+8 |
| | | | | | | | This isn't actually how it works, you have to specify the exact trait that has the associated type. Fixes #8686. | ||||
* | Add test for #8686 | Florian Diebold | 2021-04-29 | 1 | -0/+30 |
| | |||||
* | fix: closure unify without check ClosureId | Comonad | 2021-04-29 | 1 | -0/+36 |
| | | | | closes #8604 | ||||
* | Merge #8462 | bors[bot] | 2021-04-19 | 1 | -0/+199 |
|\ | | | | | | | | | | | | | | | 8462: Expand macros at type position r=jonas-schievink a=cynecx Co-authored-by: cynecx <[email protected]> | ||||
| * | hir_ty: cleanups and extend infinitely_recursive_macro_type test | cynecx | 2021-04-18 | 1 | -5/+9 |
| | | |||||
| * | hir_ty: keep body::Expander in TyLoweringContext | cynecx | 2021-04-18 | 1 | -0/+26 |
| | | |||||
| * | hir_ty: Expand macros at type position | cynecx | 2021-04-17 | 1 | -0/+169 |
| | | |||||
* | | Collect inherent impls in unnamed consts | Jonas Schievink | 2021-04-19 | 1 | -1/+36 |
|/ | |||||
* | Fix primitive shadowing with inner items | Jonas Schievink | 2021-04-16 | 1 | -0/+18 |
| | |||||
* | Support macros in pattern position | Jonas Schievink | 2021-04-11 | 2 | -2/+28 |
| | |||||
* | Respect test style guidelines in tests::traits | Lukas Wirth | 2021-04-10 | 1 | -698/+656 |
| | |||||
* | 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 |
|/ |