<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rust/tests/codegen/issues, branch try</title>
<subtitle>https://github.com/rust-lang/rust
</subtitle>
<id>http://git.dreamy.place/mirrors/rust/atom?h=try</id>
<link rel='self' href='http://git.dreamy.place/mirrors/rust/atom?h=try'/>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/'/>
<updated>2025-05-17T07:49:03+00:00</updated>
<entry>
<title>Describe lifetime of call argument temporaries passed indirectly</title>
<updated>2025-05-17T07:49:03+00:00</updated>
<author>
<name>Tomasz Miąsko</name>
<email>tomasz.miasko@gmail.com</email>
</author>
<published>2025-03-14T09:48:02+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=3b7ca287a7ecb80185f2c679e663cd9c94cdc9f4'/>
<id>urn:sha1:3b7ca287a7ecb80185f2c679e663cd9c94cdc9f4</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Rollup merge of #139261 - RalfJung:msvc-align-mitigation, r=oli-obk</title>
<updated>2025-04-24T09:40:35+00:00</updated>
<author>
<name>Matthias Krüger</name>
<email>476013+matthiaskrgr@users.noreply.github.com</email>
</author>
<published>2025-04-24T09:40:35+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=a8ebfb256af3d38338d4f26c6282e1984f18bcfc'/>
<id>urn:sha1:a8ebfb256af3d38338d4f26c6282e1984f18bcfc</id>
<content type='text'>
mitigate MSVC alignment issue on x86-32

This implements mitigation for https://github.com/rust-lang/rust/issues/112480 by stopping to emit `align` attributes on loads and function arguments when building for a win32 MSVC target. MSVC is known to not properly align `u64` and similar types, and claiming to LLVM that everything is properly aligned increases the chance that this will cause problems.

Of course, the misalignment is still a bug, but we can't fix that bug, only MSVC can.

Also add an errata note to the platform support page warning users about this known problem.

try-job: `i686-msvc*`
</content>
</entry>
<entry>
<title>tests: adjust 101082 test for LLVM 21 fix</title>
<updated>2025-04-17T19:11:21+00:00</updated>
<author>
<name>Augie Fackler</name>
<email>augie@google.com</email>
</author>
<published>2025-04-17T19:11:21+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=d3b167493efcfa154640ece0da1b3a9b869d743e'/>
<id>urn:sha1:d3b167493efcfa154640ece0da1b3a9b869d743e</id>
<content type='text'>
Fixes #139987.
</content>
</entry>
<entry>
<title>Auto merge of #139430 - scottmcm:polymorphic-array-into-iter, r=cuviper</title>
<updated>2025-04-11T23:21:31+00:00</updated>
<author>
<name>bors</name>
<email>bors@rust-lang.org</email>
</author>
<published>2025-04-11T23:21:31+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=1bc56185ee257ed829a0aea7abdc3b03c5fed887'/>
<id>urn:sha1:1bc56185ee257ed829a0aea7abdc3b03c5fed887</id>
<content type='text'>
Polymorphize `array::IntoIter`'s iterator impl

Today we emit all the iterator methods for every different array width.  That's wasteful since the actual array length never even comes into it -- the indices used are from the separate `alive: IndexRange` field, not even the `N` const param.

This PR switches things so that an `array::IntoIter&lt;T, N&gt;` stores a `PolymorphicIter&lt;[MaybeUninit&lt;T&gt;; N]&gt;`, which we *unsize* to `PolymorphicIter&lt;[MaybeUninit&lt;T&gt;]&gt;` and call methods on that non-`Sized` type for all the iterator methods.

That also necessarily makes the layout consistent between the different lengths of arrays, because of the unsizing.  Compare that to today &lt;https://rust.godbolt.org/z/Prb4xMPrb&gt;, where different widths can't even be deduped because the offset to the indices is different for different array widths.
</content>
</entry>
<entry>
<title>replace `//@ compile-flags: --edition` with `//@ edition`</title>
<updated>2025-04-10T07:56:37+00:00</updated>
<author>
<name>Pietro Albini</name>
<email>pietro.albini@ferrous-systems.com</email>
</author>
<published>2025-04-08T13:17:08+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=cd371b90e25a5923f8106cea55b5705061974139'/>
<id>urn:sha1:cd371b90e25a5923f8106cea55b5705061974139</id>
<content type='text'>
</content>
</entry>
<entry>
<title>PR feedback</title>
<updated>2025-04-10T04:44:59+00:00</updated>
<author>
<name>Scott McMurray</name>
<email>scottmcm@users.noreply.github.com</email>
</author>
<published>2025-04-09T06:26:36+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=4207c786e752ed7495782c39b74917bbcaf438cf'/>
<id>urn:sha1:4207c786e752ed7495782c39b74917bbcaf438cf</id>
<content type='text'>
</content>
</entry>
<entry>
<title>mitigate MSVC unsoundness by not emitting alignment attributes on win32-msvc targets</title>
<updated>2025-04-07T21:30:55+00:00</updated>
<author>
<name>Ralf Jung</name>
<email>post@ralfj.de</email>
</author>
<published>2025-04-02T06:31:42+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=2678d04dd97444cf444c31be92bfd281f9986a47'/>
<id>urn:sha1:2678d04dd97444cf444c31be92bfd281f9986a47</id>
<content type='text'>
also mention the MSVC alignment issue in platform-support.md
</content>
</entry>
<entry>
<title>Rollup merge of #139438 - Zalathar:fix-test-122600, r=scottmcm</title>
<updated>2025-04-06T06:21:03+00:00</updated>
<author>
<name>Stuart Cook</name>
<email>Zalathar@users.noreply.github.com</email>
</author>
<published>2025-04-06T06:21:03+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=f4aa209e206788a7c75ef3484e98092872864e51'/>
<id>urn:sha1:f4aa209e206788a7c75ef3484e98092872864e51</id>
<content type='text'>
Prevent a test from seeing forbidden numbers in the rustc version

The final CHECK-NOT directive in this test was able to see past the end of the enclosing function, and find the substring `753` or `754` in the git hash in the rustc version number, causing false failures in CI whenever the git hash happens to contain those digits in sequence.

Adding an explicit check for `ret` prevents the CHECK-NOT directive from seeing past the end of the function.

---

Manually tested by adding `// CHECK-NOT: rustc` after the existing CHECK-NOT directives, and demonstrating that the new check prevents it from seeing the rustc version string.
</content>
</entry>
<entry>
<title>Prevent a test from seeing forbidden numbers in the rustc version</title>
<updated>2025-04-06T02:38:20+00:00</updated>
<author>
<name>Zalathar</name>
<email>Zalathar@users.noreply.github.com</email>
</author>
<published>2025-04-06T02:33:22+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=f6afb35c6170ad3cadc6e6d7d41dc4dc3bd46556'/>
<id>urn:sha1:f6afb35c6170ad3cadc6e6d7d41dc4dc3bd46556</id>
<content type='text'>
The final CHECK-NOT directive in this test was able to see past the end of the
enclosing function, and find the substring 753 or 754 in the git hash in the
rustc version number, causing false failures in CI.

Adding an explicit check for `ret` prevents the CHECK-NOT directive from seeing
past the end of the function.
</content>
</entry>
<entry>
<title>Polymorphize `array::IntoIter`'s iterator impl</title>
<updated>2025-04-06T00:55:24+00:00</updated>
<author>
<name>Scott McMurray</name>
<email>scottmcm@users.noreply.github.com</email>
</author>
<published>2025-04-06T00:46:47+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=e30cb329d81cc83a082f6919943361b8d9710509'/>
<id>urn:sha1:e30cb329d81cc83a082f6919943361b8d9710509</id>
<content type='text'>
</content>
</entry>
</feed>
