<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rust/compiler/rustc_errors/src, branch perf-tmp</title>
<subtitle>https://github.com/rust-lang/rust
</subtitle>
<id>http://git.dreamy.place/mirrors/rust/atom?h=perf-tmp</id>
<link rel='self' href='http://git.dreamy.place/mirrors/rust/atom?h=perf-tmp'/>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/'/>
<updated>2025-09-04T23:42:13+00:00</updated>
<entry>
<title>fix: Filter suggestion parts that match existing code</title>
<updated>2025-09-04T23:42:13+00:00</updated>
<author>
<name>Scott Schafer</name>
<email>schaferjscott@gmail.com</email>
</author>
<published>2025-08-28T02:33:50+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=b307a1146b4af3b5808510e44a13f56f2b0252e9'/>
<id>urn:sha1:b307a1146b4af3b5808510e44a13f56f2b0252e9</id>
<content type='text'>
</content>
</entry>
<entry>
<title>chore: Remove redundant disjoint spans assert</title>
<updated>2025-09-04T23:42:13+00:00</updated>
<author>
<name>Scott Schafer</name>
<email>schaferjscott@gmail.com</email>
</author>
<published>2025-09-04T22:21:44+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=f196f50d6609eecfe94989a317a8779637288d94'/>
<id>urn:sha1:f196f50d6609eecfe94989a317a8779637288d94</id>
<content type='text'>
</content>
</entry>
<entry>
<title>refactor: Move assert for disjoint substitution spans</title>
<updated>2025-09-04T23:42:13+00:00</updated>
<author>
<name>Scott Schafer</name>
<email>schaferjscott@gmail.com</email>
</author>
<published>2025-08-28T02:33:50+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=81557349be64db933c5060a6e1d7398bef32e0d7'/>
<id>urn:sha1:81557349be64db933c5060a6e1d7398bef32e0d7</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Correct typo in `rustc_errors` comment</title>
<updated>2025-09-02T12:43:34+00:00</updated>
<author>
<name>Samuel Moelius</name>
<email>35515885+smoelius@users.noreply.github.com</email>
</author>
<published>2025-09-02T12:43:34+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=5e9b655e7094295ba4ce40568d8f182aef3704fc'/>
<id>urn:sha1:5e9b655e7094295ba4ce40568d8f182aef3704fc</id>
<content type='text'>
</content>
</entry>
<entry>
<title>fix: Render continuation between no source labels</title>
<updated>2025-08-26T21:15:17+00:00</updated>
<author>
<name>Scott Schafer</name>
<email>schaferjscott@gmail.com</email>
</author>
<published>2025-07-22T11:14:37+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=2bd47d264628dc227ed317a6c0d0f03891dd8c5c'/>
<id>urn:sha1:2bd47d264628dc227ed317a6c0d0f03891dd8c5c</id>
<content type='text'>
</content>
</entry>
<entry>
<title>fix: Add col separator before secondary messages with no source</title>
<updated>2025-08-26T21:15:17+00:00</updated>
<author>
<name>Scott Schafer</name>
<email>schaferjscott@gmail.com</email>
</author>
<published>2025-07-03T21:47:15+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=93d16c510066db062700e783a53461d45e5dbe4b'/>
<id>urn:sha1:93d16c510066db062700e783a53461d45e5dbe4b</id>
<content type='text'>
</content>
</entry>
<entry>
<title>fix: Don't add an end column separator after a file with no source</title>
<updated>2025-08-26T21:15:17+00:00</updated>
<author>
<name>Scott Schafer</name>
<email>schaferjscott@gmail.com</email>
</author>
<published>2025-07-22T11:14:37+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=8835ea854e9339ae83a35461c064a1b919872ca5'/>
<id>urn:sha1:8835ea854e9339ae83a35461c064a1b919872ca5</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Support lints in early attribute parsing</title>
<updated>2025-08-24T07:14:49+00:00</updated>
<author>
<name>Jana Dönszelmann</name>
<email>jana@donsz.nl</email>
</author>
<published>2025-08-11T09:46:30+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=4b35cde904c1015df42b2c63244c1db1ed51fff9'/>
<id>urn:sha1:4b35cde904c1015df42b2c63244c1db1ed51fff9</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Allow errors to be emitted as fatal during attribute parsing</title>
<updated>2025-08-24T07:14:49+00:00</updated>
<author>
<name>Jana Dönszelmann</name>
<email>jana@donsz.nl</email>
</author>
<published>2025-08-11T09:46:30+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=3bf61444616fc0b9de1e09031f40be0943823fc5'/>
<id>urn:sha1:3bf61444616fc0b9de1e09031f40be0943823fc5</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Refactor lint buffering to avoid requiring a giant enum</title>
<updated>2025-08-22T08:59:56+00:00</updated>
<author>
<name>Josh Triplett</name>
<email>josh@joshtriplett.org</email>
</author>
<published>2025-08-22T03:30:28+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=c99320156dfeea98836fe7dad97d16f67c4d879e'/>
<id>urn:sha1:c99320156dfeea98836fe7dad97d16f67c4d879e</id>
<content type='text'>
Lint buffering currently relies on a giant enum `BuiltinLintDiag`
containing all the lints that might potentially get buffered. In
addition to being an unwieldy enum in a central crate, this also makes
`rustc_lint_defs` a build bottleneck: it depends on various types from
various crates (with a steady pressure to add more), and many crates
depend on it.

Having all of these variants in a separate crate also prevents detecting
when a variant becomes unused, which we can do with a dedicated type
defined and used in the same crate.

Refactor this to use a dyn trait, to allow using `LintDiagnostic` types
directly.

This requires boxing, but all of this is already on the slow path
(emitting an error).

Because the existing `BuiltinLintDiag` requires some additional types in
order to decorate some variants, which are only available later in
`rustc_lint`, use an enum `DecorateDiagCompat` to handle both the `dyn
LintDiagnostic` case and the `BuiltinLintDiag` case.
</content>
</entry>
</feed>
