This is only allowed for generic parameters (including `Self` in traits), and
special care needs to be taken to not run into cycles while resolving it,
because we use the where clauses of the generic parameter to find candidates for
the trait containing the associated type, but the where clauses may themselves
contain instances of short-hand associated types.
In some cases this is even fine, e.g. we might have `T: Trait<U::Item>, U:
Iterator`. If there is a cycle, we'll currently panic, which isn't great, but
better than overflowing the stack...
1891: Support open source version of vscode as well r=matklad a=jens1o
This patch adds support for https://github.com/VSCodium/vscodium - an truly open source version of vscode.
Co-authored-by: Jens Hausdorf <mail@jens-hausdorf.de>
1853: Introduce FromSource trait r=matklad a=viorina
The idea is to provide an ability to get HIR from AST in a more general way than it's possible using `source_binder`.
It also could help with #1622 fixing.
Co-authored-by: Ekaterina Babshukova <ekaterina.babshukova@yandex.ru>
1868: Fixed markdown in user README r=kjeremy a=zoewithabang
Link pointing to the GitHub issue regarding why a full restart of VS Code is needed was broken.
Co-authored-by: zoewithabang <zoewithabang@gmail.com>
1861: account for impls generated by macros r=matklad a=matklad
The code is pretty horrible and is copy-pased from expressions. We really need to find a better way to lower stuff generated by macros. But it gets the job done! I've actually though that we did this ages ago, but obviously we didn't
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
1862: Assoc item resolution refactoring (again) r=flodiebold a=flodiebold
This is #1849, with the associated type selection code removed for now. Handling cycles there will need some more thought.
Co-authored-by: Florian Diebold <flodiebold@gmail.com>
I must confess I don't really understand what this code is trying to
do, but it definitely misreports changes during fixedpoint iteration,
and no tests fail if I remove it, so...