Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | Handle impl Trait more correctly | Florian Diebold | 2019-12-15 | 1 | -0/+1 | |
| | | | | | | | When calling a function, argument-position impl Trait is transparent; same for return-position impl Trait when inside the function. So in these cases, we need to represent that type not by `Ty::Opaque`, but by a type variable that can be unified with whatever flows into there. | |||||
* | Rename N! to name! | Florian Diebold | 2019-12-13 | 1 | -2/+2 | |
| | ||||||
* | Add macros for known names and paths | Florian Diebold | 2019-12-13 | 1 | -2/+2 | |
| | ||||||
* | Correctly infer - and ! using std::ops::{Neg,Not} | Emil Lauridsen | 2019-12-13 | 1 | -21/+26 | |
| | ||||||
* | Add helper for resolving associated type of trait in infer | Emil Lauridsen | 2019-12-13 | 1 | -47/+7 | |
| | ||||||
* | Refactor parameter count tracking | Aleksey Kladov | 2019-12-07 | 1 | -10/+8 | |
| | ||||||
* | Remove idx and parent generics from generics | Aleksey Kladov | 2019-12-07 | 1 | -11/+13 | |
| | | | | | This makes `hir_def::GenericParams` flatter. The logic for re-numbering the params is moved to hir instead. | |||||
* | Store GenericParams in arena | Aleksey Kladov | 2019-12-07 | 1 | -1/+1 | |
| | ||||||
* | Don't unify within a reference | Florian Diebold | 2019-12-06 | 1 | -11/+10 | |
| | | | | | | | If we are expecting a `&Foo` and get a `&something`, when checking the `something`, we are *expecting* a `Foo`, but we shouldn't try to unify whatever we get with that expectation, because it could actually be a `&Foo`, and `&&Foo` coerces to `&Foo`. So this fixes quite a few false type mismatches. | |||||
* | Extract unification code to unify module | Florian Diebold | 2019-12-02 | 1 | -15/+15 | |
| | ||||||
* | Reduce variants of Expr | oxalica | 2019-11-29 | 1 | -39/+37 | |
| | ||||||
* | Infer range types | oxalica | 2019-11-28 | 1 | -0/+41 | |
| | ||||||
* | Move Ty | Aleksey Kladov | 2019-11-27 | 1 | -0/+686 | |