<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rust/compiler/rustc_parse/src/errors.rs, branch 1.82.0</title>
<subtitle>https://github.com/rust-lang/rust
</subtitle>
<id>http://git.dreamy.place/mirrors/rust/atom?h=1.82.0</id>
<link rel='self' href='http://git.dreamy.place/mirrors/rust/atom?h=1.82.0'/>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/'/>
<updated>2024-08-29T10:13:06+00:00</updated>
<entry>
<title>Add `warn(unreachable_pub)` to `rustc_parser`.</title>
<updated>2024-08-29T10:13:06+00:00</updated>
<author>
<name>Nicholas Nethercote</name>
<email>n.nethercote@gmail.com</email>
</author>
<published>2024-08-29T05:13:12+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=cac04a1cb97f1339ab866051f7048786298e66b7'/>
<id>urn:sha1:cac04a1cb97f1339ab866051f7048786298e66b7</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Use bool in favor of Option&lt;()&gt; for diagnostics</title>
<updated>2024-08-21T05:31:11+00:00</updated>
<author>
<name>Michael Goulet</name>
<email>michael@errs.io</email>
</author>
<published>2024-08-21T04:57:58+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=25ff9b6bcbba9e7831eb4d6eba2df6bbcd267c55'/>
<id>urn:sha1:25ff9b6bcbba9e7831eb4d6eba2df6bbcd267c55</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Rollup merge of #128496 - clubby789:box-syntax-multipart, r=compiler-errors</title>
<updated>2024-08-01T16:43:41+00:00</updated>
<author>
<name>Matthias Krüger</name>
<email>matthias.krueger@famsik.de</email>
</author>
<published>2024-08-01T16:43:41+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=29cd3103a162c1bf80a6123aaa77fc2d3e392150'/>
<id>urn:sha1:29cd3103a162c1bf80a6123aaa77fc2d3e392150</id>
<content type='text'>
Fix removed `box_syntax` diagnostic if source isn't available

Fix #128442
</content>
</entry>
<entry>
<title>Fix removed `box_syntax` diagnostic if source isn't available</title>
<updated>2024-08-01T13:11:24+00:00</updated>
<author>
<name>clubby789</name>
<email>jamie@hill-daniel.co.uk</email>
</author>
<published>2024-08-01T13:11:24+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=e157954cce4497738a728f8c295c71b229d35a66'/>
<id>urn:sha1:e157954cce4497738a728f8c295c71b229d35a66</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Auto merge of #127543 - carbotaniuman:more_unsafe_attr_verification, r=estebank,traviscross</title>
<updated>2024-08-01T10:40:45+00:00</updated>
<author>
<name>bors</name>
<email>bors@rust-lang.org</email>
</author>
<published>2024-08-01T10:40:45+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=c0e32983f5b06a6f7d8cc776ccac71de6512ed6d'/>
<id>urn:sha1:c0e32983f5b06a6f7d8cc776ccac71de6512ed6d</id>
<content type='text'>
More unsafe attr verification

This code denies unsafe on attributes such as `#[test]` and `#[ignore]`, while also changing the `MetaItem` parsing so `unsafe` in args like `#[allow(unsafe(dead_code))]` is not accidentally allowed.

Tracking:

- https://github.com/rust-lang/rust/issues/123757
</content>
</entry>
<entry>
<title>Add toggle for `parse_meta_item` unsafe parsing</title>
<updated>2024-07-30T23:28:43+00:00</updated>
<author>
<name>carbotaniuman</name>
<email>41451839+carbotaniuman@users.noreply.github.com</email>
</author>
<published>2024-07-10T00:06:49+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=49db8a5a999f0908b5bf74b88a2d72a4f4dddf48'/>
<id>urn:sha1:49db8a5a999f0908b5bf74b88a2d72a4f4dddf48</id>
<content type='text'>
This makes it possible for the `unsafe(...)` syntax to only be
valid at the top level, and the `NestedMetaItem`s will automatically
reject `unsafe(...)`.
</content>
</entry>
<entry>
<title>Auto merge of #128083 - Mark-Simulacrum:bump-bootstrap, r=albertlarsan68</title>
<updated>2024-07-30T17:49:08+00:00</updated>
<author>
<name>bors</name>
<email>bors@rust-lang.org</email>
</author>
<published>2024-07-30T17:49:08+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=f8060d282d42770fadd73905e3eefb85660d3278'/>
<id>urn:sha1:f8060d282d42770fadd73905e3eefb85660d3278</id>
<content type='text'>
Bump bootstrap compiler to new beta

https://forge.rust-lang.org/release/process.html#master-bootstrap-update-t-2-day-tuesday
</content>
</entry>
<entry>
<title>Reformat `use` declarations.</title>
<updated>2024-07-28T22:26:52+00:00</updated>
<author>
<name>Nicholas Nethercote</name>
<email>n.nethercote@gmail.com</email>
</author>
<published>2024-07-28T22:13:50+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=84ac80f1921afc243d71fd0caaa4f2838c294102'/>
<id>urn:sha1:84ac80f1921afc243d71fd0caaa4f2838c294102</id>
<content type='text'>
The previous commit updated `rustfmt.toml` appropriately. This commit is
the outcome of running `x fmt --all` with the new formatting options.
</content>
</entry>
<entry>
<title>step cfg(bootstrap)</title>
<updated>2024-07-28T18:46:29+00:00</updated>
<author>
<name>Mark Rousskov</name>
<email>mark.simulacrum@gmail.com</email>
</author>
<published>2024-07-23T02:06:16+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=5eca36d27a5599f1e15885cd36d6559d36048cd3'/>
<id>urn:sha1:5eca36d27a5599f1e15885cd36d6559d36048cd3</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Rollup merge of #127054 - compiler-errors:bound-ordering, r=fmease</title>
<updated>2024-07-25T02:43:18+00:00</updated>
<author>
<name>Matthias Krüger</name>
<email>matthias.krueger@famsik.de</email>
</author>
<published>2024-07-25T02:43:18+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=cfc5f25b3d7c2f9fa37d0165085cdd4120939716'/>
<id>urn:sha1:cfc5f25b3d7c2f9fa37d0165085cdd4120939716</id>
<content type='text'>
Reorder trait bound modifiers *after* `for&lt;...&gt;` binder in trait bounds

This PR suggests changing the grammar of trait bounds from:

```
[CONSTNESS] [ASYNCNESS] [?] [BINDER] [TRAIT_PATH]

const async ? for&lt;'a&gt; Sized
```

to

```
([BINDER] [CONSTNESS] [ASYNCNESS] | [?]) [TRAIT_PATH]
```

i.e., either

```
? Sized
```

or

```
for&lt;'a&gt; const async Sized
```

(but not both)

### Why?

I think it's strange that the binder applies "more tightly" than the `?` trait polarity. This becomes even weirder when considering that we (or at least, I) want to have `async` trait bounds expressed like:

```
where T: for&lt;'a&gt; async Fn(&amp;'a ()) -&gt; i32,
```

and not:

```
where T: async for&lt;'a&gt; Fn(&amp;'a ()) -&gt; i32,
```

### Fallout

No crates on crater use this syntax, presumably because it's literally useless. This will require modifying the reference grammar, though.

### Alternatives

If this is not desirable, then we can alternatively keep parsing `for&lt;'a&gt;` after the `?` but deprecate it with either an FCW (or an immediate hard error), and begin parsing `for&lt;'a&gt;` *before* the `?`.
</content>
</entry>
</feed>
