<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rust/compiler/rustc_errors/src, branch 1.60.0</title>
<subtitle>https://github.com/rust-lang/rust
</subtitle>
<id>http://git.dreamy.place/mirrors/rust/atom?h=1.60.0</id>
<link rel='self' href='http://git.dreamy.place/mirrors/rust/atom?h=1.60.0'/>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/'/>
<updated>2022-02-01T09:15:59+00:00</updated>
<entry>
<title>add a rustc::query_stability lint</title>
<updated>2022-02-01T09:15:59+00:00</updated>
<author>
<name>lcnr</name>
<email>rust@lcnr.de</email>
</author>
<published>2022-01-05T12:02:16+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=a1a30f7548bdb625f8f90c25258f8ab463cebe8c'/>
<id>urn:sha1:a1a30f7548bdb625f8f90c25258f8ab463cebe8c</id>
<content type='text'>
</content>
</entry>
<entry>
<title>rustc_errors: add a new assert for the size of `PResult&lt;()&gt;`.</title>
<updated>2022-01-24T15:14:40+00:00</updated>
<author>
<name>Eduard-Mihai Burtescu</name>
<email>eddyb@lyken.rs</email>
</author>
<published>2022-01-24T15:14:40+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=f5a32711dc14ea66510bd5c8a21763183ee5fc99'/>
<id>urn:sha1:f5a32711dc14ea66510bd5c8a21763183ee5fc99</id>
<content type='text'>
</content>
</entry>
<entry>
<title>rustc_errors: only box the `diagnostic` field in `DiagnosticBuilder`.</title>
<updated>2022-01-24T11:23:14+00:00</updated>
<author>
<name>Eduard-Mihai Burtescu</name>
<email>eddyb@lyken.rs</email>
</author>
<published>2022-01-24T11:23:14+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=a8dfa3757cddd958c7dcadeeafd62721c45a487e'/>
<id>urn:sha1:a8dfa3757cddd958c7dcadeeafd62721c45a487e</id>
<content type='text'>
</content>
</entry>
<entry>
<title>rustc_errors: remove `allow_suggestions` from `DiagnosticBuilder`.</title>
<updated>2022-01-24T10:49:10+00:00</updated>
<author>
<name>Eduard-Mihai Burtescu</name>
<email>eddyb@lyken.rs</email>
</author>
<published>2022-01-24T09:19:33+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=68fa81baa3acf3a93ce4b41c8366039229926fc2'/>
<id>urn:sha1:68fa81baa3acf3a93ce4b41c8366039229926fc2</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Rollup merge of #93229 - mark-i-m:noquiet, r=eddyb</title>
<updated>2022-01-23T19:13:07+00:00</updated>
<author>
<name>Matthias Krüger</name>
<email>matthias.krueger@famsik.de</email>
</author>
<published>2022-01-23T19:13:07+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=a1645e5b57a42831e98b6c160b31f9f185e8b0c2'/>
<id>urn:sha1:a1645e5b57a42831e98b6c160b31f9f185e8b0c2</id>
<content type='text'>
Remove DiagnosticBuilder.quiet

r? `@eddyb`

cc https://github.com/rust-lang/rust/issues/69426 `@GuillaumeGomez` `@Manishearth`
</content>
</entry>
<entry>
<title>Remove DiagnosticBuilder.quiet</title>
<updated>2022-01-23T06:11:13+00:00</updated>
<author>
<name>mark</name>
<email>markm@cs.wisc.edu</email>
</author>
<published>2022-01-23T06:11:13+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=cf382de0cc268e6af8d37d31323bf36d0099ade3'/>
<id>urn:sha1:cf382de0cc268e6af8d37d31323bf36d0099ade3</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Make `Decodable` and `Decoder` infallible.</title>
<updated>2022-01-21T23:38:31+00:00</updated>
<author>
<name>Nicholas Nethercote</name>
<email>n.nethercote@gmail.com</email>
</author>
<published>2022-01-18T02:22:50+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=416399dc1028545ea0ac6d68fb0b5cc5fa97d393'/>
<id>urn:sha1:416399dc1028545ea0ac6d68fb0b5cc5fa97d393</id>
<content type='text'>
`Decoder` has two impls:
- opaque: this impl is already partly infallible, i.e. in some places it
  currently panics on failure (e.g. if the input is too short, or on a
  bad `Result` discriminant), and in some places it returns an error
  (e.g. on a bad `Option` discriminant). The number of places where
  either happens is surprisingly small, just because the binary
  representation has very little redundancy and a lot of input reading
  can occur even on malformed data.
- json: this impl is fully fallible, but it's only used (a) for the
  `.rlink` file production, and there's a `FIXME` comment suggesting it
  should change to a binary format, and (b) in a few tests in
  non-fundamental ways. Indeed #85993 is open to remove it entirely.

And the top-level places in the compiler that call into decoding just
abort on error anyway. So the fallibility is providing little value, and
getting rid of it leads to some non-trivial performance improvements.

Much of this commit is pretty boring and mechanical. Some notes about
a few interesting parts:
- The commit removes `Decoder::{Error,error}`.
- `InternIteratorElement::intern_with`: the impl for `T` now has the same
  optimization for small counts that the impl for `Result&lt;T, E&gt;` has,
  because it's now much hotter.
- Decodable impls for SmallVec, LinkedList, VecDeque now all use
  `collect`, which is nice; the one for `Vec` uses unsafe code, because
  that gave better perf on some benchmarks.
</content>
</entry>
<entry>
<title>Auto merge of #92070 - rukai:replace_vec_into_iter_with_array_into_iter, r=Mark-Simulacrum</title>
<updated>2022-01-11T14:23:24+00:00</updated>
<author>
<name>bors</name>
<email>bors@rust-lang.org</email>
</author>
<published>2022-01-11T14:23:24+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=2e2c86eba21a08cf505cd67073736d03ff3887ad'/>
<id>urn:sha1:2e2c86eba21a08cf505cd67073736d03ff3887ad</id>
<content type='text'>
Replace usages of vec![].into_iter with [].into_iter

`[].into_iter` is idiomatic over `vec![].into_iter` because its simpler and faster (unless the vec is optimized away in which case it would be the same)

So we should change all the implementation, documentation and tests to use it.

I skipped:
* `src/tools` - Those are copied in from upstream
* `src/test/ui` - Hard to tell if `vec![].into_iter` was used intentionally or not here and not much benefit to changing it.
*  any case where `vec![].into_iter` was used because we specifically needed a `Vec::IntoIter&lt;T&gt;`
*  any case where it looked like we were intentionally using `vec![].into_iter` to test it.
</content>
</entry>
<entry>
<title>Compute most of Public/Exported access level in rustc_resolve</title>
<updated>2022-01-09T21:33:14+00:00</updated>
<author>
<name>Lamb</name>
<email>contact@ltow.me</email>
</author>
<published>2021-07-26T03:38:16+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=3a77bb86ff33bd4633aa831f2580aa3792a9c279'/>
<id>urn:sha1:3a77bb86ff33bd4633aa831f2580aa3792a9c279</id>
<content type='text'>
Mak DefId to AccessLevel map in resolve for export

hir_id to accesslevel in resolve and applied in privacy
using local def id
removing tracing probes
making function not recursive and adding comments

Move most of Exported/Public res to rustc_resolve

moving public/export res to resolve

fix missing stability attributes in core, std and alloc

move code to access_levels.rs

return for some kinds instead of going through them

Export correctness, macro changes, comments

add comment for import binding

add comment for import binding

renmae to access level visitor, remove comments, move fn as closure, remove new_key

fmt

fix rebase

fix rebase

fmt

fmt

fix: move macro def to rustc_resolve

fix: reachable AccessLevel for enum variants

fmt

fix: missing stability attributes for other architectures

allow unreachable pub in rustfmt

fix: missing impl access level + renaming export to reexport

Missing impl access level was found thanks to a test in clippy
</content>
</entry>
<entry>
<title>eplace usages of vec![].into_iter with [].into_iter</title>
<updated>2022-01-09T03:09:25+00:00</updated>
<author>
<name>Lucas Kent</name>
<email>rubickent@gmail.com</email>
</author>
<published>2021-12-17T07:36:18+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=08829853d3c69f68a5a09fb4bcc53ca87d373a78'/>
<id>urn:sha1:08829853d3c69f68a5a09fb4bcc53ca87d373a78</id>
<content type='text'>
</content>
</entry>
</feed>
