<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rust/compiler/rustc_codegen_ssa/src/debuginfo, branch 1.74.0</title>
<subtitle>https://github.com/rust-lang/rust
</subtitle>
<id>http://git.dreamy.place/mirrors/rust/atom?h=1.74.0</id>
<link rel='self' href='http://git.dreamy.place/mirrors/rust/atom?h=1.74.0'/>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/'/>
<updated>2023-09-23T13:47:30+00:00</updated>
<entry>
<title>Remove GeneratorWitness and rename GeneratorWitnessMIR.</title>
<updated>2023-09-23T13:47:30+00:00</updated>
<author>
<name>Camille GILLOT</name>
<email>gillot.camille@gmail.com</email>
</author>
<published>2023-08-03T13:47:04+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=44ac8dcc71c908aa320ccb51717ab2a0a8262b1d'/>
<id>urn:sha1:44ac8dcc71c908aa320ccb51717ab2a0a8262b1d</id>
<content type='text'>
</content>
</entry>
<entry>
<title>the Const::eval_bits methods don't need to be given the Ty</title>
<updated>2023-09-20T05:27:21+00:00</updated>
<author>
<name>Ralf Jung</name>
<email>post@ralfj.de</email>
</author>
<published>2023-09-19T15:44:31+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=a2374e65aafd47fa68a3954fa2a3116c519aa7e5'/>
<id>urn:sha1:a2374e65aafd47fa68a3954fa2a3116c519aa7e5</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Auto merge of #115817 - fee1-dead-contrib:fix-codegen, r=oli-obk</title>
<updated>2023-09-14T13:42:30+00:00</updated>
<author>
<name>bors</name>
<email>bors@rust-lang.org</email>
</author>
<published>2023-09-14T13:42:30+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=5e719131567bae5b973b6adb3e3fa756a5f7eb73'/>
<id>urn:sha1:5e719131567bae5b973b6adb3e3fa756a5f7eb73</id>
<content type='text'>
treat host effect params as erased in codegen

This fixes the changes brought to codegen tests when effect params are added to libcore, by not attempting to monomorphize functions that get the host param by being `const fn`.

r? `@oli-obk`
</content>
</entry>
<entry>
<title>treat host effect params as erased generics in codegen</title>
<updated>2023-09-14T07:34:35+00:00</updated>
<author>
<name>Deadbeef</name>
<email>ent3rm4n@gmail.com</email>
</author>
<published>2023-09-13T13:55:23+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=a0a801cd3807498bdf6b0d7fd4148fdff9ede4b1'/>
<id>urn:sha1:a0a801cd3807498bdf6b0d7fd4148fdff9ede4b1</id>
<content type='text'>
This fixes the changes brought to codegen tests when effect params are
added to libcore, by not attempting to monomorphize functions that get
the host param by being `const fn`.
</content>
</entry>
<entry>
<title>make the eval() functions on our const types return the resulting value</title>
<updated>2023-09-13T05:29:34+00:00</updated>
<author>
<name>Ralf Jung</name>
<email>post@ralfj.de</email>
</author>
<published>2023-09-12T21:28:25+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=6e4779ab1775d0901408c08d64dc12c735069701'/>
<id>urn:sha1:6e4779ab1775d0901408c08d64dc12c735069701</id>
<content type='text'>
</content>
</entry>
<entry>
<title>inline format!() args up to and including rustc_codegen_llvm</title>
<updated>2023-07-30T12:22:50+00:00</updated>
<author>
<name>Matthias Krüger</name>
<email>matthias.krueger@famsik.de</email>
</author>
<published>2023-07-25T21:04:01+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=3ce90b16490490aea6da61f913fb0ecbc5d4ec7a'/>
<id>urn:sha1:3ce90b16490490aea6da61f913fb0ecbc5d4ec7a</id>
<content type='text'>
</content>
</entry>
<entry>
<title>refactor(rustc_middle): Substs -&gt; GenericArg</title>
<updated>2023-07-14T12:27:35+00:00</updated>
<author>
<name>Mahdi Dibaiee</name>
<email>mdibaiee@pm.me</email>
</author>
<published>2023-07-11T21:35:29+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=e55583c4b831c601452117a8eb20af59779ef582'/>
<id>urn:sha1:e55583c4b831c601452117a8eb20af59779ef582</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Use translatable diagnostics in `rustc_const_eval`</title>
<updated>2023-06-01T14:45:18+00:00</updated>
<author>
<name>Deadbeef</name>
<email>ent3rm4n@gmail.com</email>
</author>
<published>2023-05-17T10:30:14+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=4f83717cf768adb0b0dfe23b8eecf2b259eec354'/>
<id>urn:sha1:4f83717cf768adb0b0dfe23b8eecf2b259eec354</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Restrict `From&lt;S&gt;` for `{D,Subd}iagnosticMessage`.</title>
<updated>2023-05-02T22:44:39+00:00</updated>
<author>
<name>Nicholas Nethercote</name>
<email>n.nethercote@gmail.com</email>
</author>
<published>2023-04-20T03:26:58+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=6b62f37402cb2990c7d350379238579af0360b10'/>
<id>urn:sha1:6b62f37402cb2990c7d350379238579af0360b10</id>
<content type='text'>
Currently a `{D,Subd}iagnosticMessage` can be created from any type that
impls `Into&lt;String&gt;`. That includes `&amp;str`, `String`, and `Cow&lt;'static,
str&gt;`, which are reasonable. It also includes `&amp;String`, which is pretty
weird, and results in many places making unnecessary allocations for
patterns like this:
```
self.fatal(&amp;format!(...))
```
This creates a string with `format!`, takes a reference, passes the
reference to `fatal`, which does an `into()`, which clones the
reference, doing a second allocation. Two allocations for a single
string, bleh.

This commit changes the `From` impls so that you can only create a
`{D,Subd}iagnosticMessage` from `&amp;str`, `String`, or `Cow&lt;'static,
str&gt;`. This requires changing all the places that currently create one
from a `&amp;String`. Most of these are of the `&amp;format!(...)` form
described above; each one removes an unnecessary static `&amp;`, plus an
allocation when executed. There are also a few places where the existing
use of `&amp;String` was more reasonable; these now just use `clone()` at
the call site.

As well as making the code nicer and more efficient, this is a step
towards possibly using `Cow&lt;'static, str&gt;` in
`{D,Subd}iagnosticMessage::{Str,Eager}`. That would require changing
the `From&lt;&amp;'a str&gt;` impls to `From&lt;&amp;'static str&gt;`, which is doable, but
I'm not yet sure if it's worthwhile.
</content>
</entry>
<entry>
<title>Store hashes in special types so they aren't accidentally encoded as numbers</title>
<updated>2023-04-18T14:52:47+00:00</updated>
<author>
<name>Ben Kimock</name>
<email>kimockb@gmail.com</email>
</author>
<published>2023-04-08T03:11:20+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=0445fbdd835c92156e4d06e42ce99a39e9315343'/>
<id>urn:sha1:0445fbdd835c92156e4d06e42ce99a39e9315343</id>
<content type='text'>
</content>
</entry>
</feed>
