<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rust/compiler/rustc_trait_selection/src/solve/assembly, branch 1.80.1</title>
<subtitle>https://github.com/rust-lang/rust
</subtitle>
<id>http://git.dreamy.place/mirrors/rust/atom?h=1.80.1</id>
<link rel='self' href='http://git.dreamy.place/mirrors/rust/atom?h=1.80.1'/>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/'/>
<updated>2024-06-04T07:25:48+00:00</updated>
<entry>
<title>Rollup merge of #125750 - compiler-errors:expect, r=lcnr</title>
<updated>2024-06-04T07:25:48+00:00</updated>
<author>
<name>许杰友 Jieyou Xu (Joe)</name>
<email>39484203+jieyouxu@users.noreply.github.com</email>
</author>
<published>2024-06-04T07:25:48+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=b477f890417fedbb4178b1f7385e939cb6eac32f'/>
<id>urn:sha1:b477f890417fedbb4178b1f7385e939cb6eac32f</id>
<content type='text'>
Align `Term` methods with `GenericArg` methods, add `Term::expect_*`

* `Term::ty` -&gt; `Term::as_type`.
* `Term::ct` -&gt; `Term::as_const`.
* Adds `Term::expect_type` and `Term::expect_const`, and uses them in favor of `.ty().unwrap()`, etc.

I could also shorten these to `as_ty` and then do `GenericArg::as_ty` as well, but I do think the `as_` is important to signal that this is a conversion method, and not a getter, like `Const::ty` is.

r? types
</content>
</entry>
<entry>
<title>Align Term methods with GenericArg methods</title>
<updated>2024-06-04T00:36:27+00:00</updated>
<author>
<name>Michael Goulet</name>
<email>michael@errs.io</email>
</author>
<published>2024-05-30T02:23:49+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=273b990554fa2a7efdd975ccf2ef490c6c90cbaf'/>
<id>urn:sha1:273b990554fa2a7efdd975ccf2ef490c6c90cbaf</id>
<content type='text'>
</content>
</entry>
<entry>
<title>check_is_object_safe -&gt; is_object_safe</title>
<updated>2024-06-03T13:49:30+00:00</updated>
<author>
<name>Michael Goulet</name>
<email>michael@errs.io</email>
</author>
<published>2024-05-21T18:39:30+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=511f1cf7c8e96c2350dac7b4870e92c99ee08b92'/>
<id>urn:sha1:511f1cf7c8e96c2350dac7b4870e92c99ee08b92</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Uplift TypeRelation and Relate</title>
<updated>2024-06-01T16:50:58+00:00</updated>
<author>
<name>Michael Goulet</name>
<email>michael@errs.io</email>
</author>
<published>2024-05-31T18:13:46+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=333458c2cbafbea22480075decc4a827f913a020'/>
<id>urn:sha1:333458c2cbafbea22480075decc4a827f913a020</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Add lang item for AsyncFnKindHelper::Upvars</title>
<updated>2024-05-29T18:28:53+00:00</updated>
<author>
<name>Michael Goulet</name>
<email>michael@errs.io</email>
</author>
<published>2024-05-29T18:28:53+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=a03ba7fd2d0a94bd29f1ed7618c6e7ceecd3222c'/>
<id>urn:sha1:a03ba7fd2d0a94bd29f1ed7618c6e7ceecd3222c</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Add lang item for Future::Output</title>
<updated>2024-05-29T18:22:56+00:00</updated>
<author>
<name>Michael Goulet</name>
<email>michael@errs.io</email>
</author>
<published>2024-05-29T18:22:56+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=a9c7e024c08ce4c7172cf3a46d0d16222eb4991f'/>
<id>urn:sha1:a9c7e024c08ce4c7172cf3a46d0d16222eb4991f</id>
<content type='text'>
</content>
</entry>
<entry>
<title>EvalCtxt::tcx() -&gt; EvalCtxt::interner()</title>
<updated>2024-05-28T14:45:51+00:00</updated>
<author>
<name>Michael Goulet</name>
<email>michael@errs.io</email>
</author>
<published>2024-05-19T15:37:56+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=50a5da16b815d7ff6f145cb86ea5c146b1c95329'/>
<id>urn:sha1:50a5da16b815d7ff6f145cb86ea5c146b1c95329</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Rollup merge of #125259 - compiler-errors:fn-mut-as-a-treat, r=oli-obk</title>
<updated>2024-05-22T17:04:45+00:00</updated>
<author>
<name>León Orell Valerian Liehr</name>
<email>me@fmease.dev</email>
</author>
<published>2024-05-22T17:04:45+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=44c7a2dbffef822bd8df3f154b37bf1bc51b1d9c'/>
<id>urn:sha1:44c7a2dbffef822bd8df3f154b37bf1bc51b1d9c</id>
<content type='text'>
An async closure may implement `FnMut`/`Fn` if it has no self-borrows

There's no reason that async closures may not implement `FnMut` or `Fn` if they don't actually borrow anything with the closure's env lifetime. Specifically, #123660 made it so that we don't always need to borrow captures from the closure's env.

See the doc comment on `should_reborrow_from_env_of_parent_coroutine_closure`:

https://github.com/rust-lang/rust/blob/c00957a3e269219413041a4e3565f33b1f9d0779/compiler/rustc_hir_typeck/src/upvar.rs#L1777-L1823

If there are no such borrows, then we are free to implement `FnMut` and `Fn` as permitted by our closure's inferred `ClosureKind`.

As far as I can tell, this change makes `async || {}` work in precisely the set of places they used to work before #120361.
Fixes #125247.

r? oli-obk
</content>
</entry>
<entry>
<title>Make EvalCtxt generic over interner</title>
<updated>2024-05-19T23:38:28+00:00</updated>
<author>
<name>Michael Goulet</name>
<email>michael@errs.io</email>
</author>
<published>2024-05-18T14:10:40+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=9dc073aa4bc660efe2e68837b729af8d341bb7f9'/>
<id>urn:sha1:9dc073aa4bc660efe2e68837b729af8d341bb7f9</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Uplift inspect into rustc_type_ir</title>
<updated>2024-05-18T20:21:43+00:00</updated>
<author>
<name>Michael Goulet</name>
<email>michael@errs.io</email>
</author>
<published>2024-05-17T16:16:36+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=0f528a4c08bbff98a4fa4d2dc20b23822e1a2dee'/>
<id>urn:sha1:0f528a4c08bbff98a4fa4d2dc20b23822e1a2dee</id>
<content type='text'>
</content>
</entry>
</feed>
