<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rust/compiler/rustc_feature/src, branch 1.84.0</title>
<subtitle>https://github.com/rust-lang/rust
</subtitle>
<id>http://git.dreamy.place/mirrors/rust/atom?h=1.84.0</id>
<link rel='self' href='http://git.dreamy.place/mirrors/rust/atom?h=1.84.0'/>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/'/>
<updated>2024-11-25T11:46:46+00:00</updated>
<entry>
<title>replace placeholder version</title>
<updated>2024-11-25T11:46:46+00:00</updated>
<author>
<name>Boxy</name>
<email>rust@boxyuwu.dev</email>
</author>
<published>2024-11-25T11:46:46+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=70fbc71189dc0078de7257816f1bfbc529dc1014'/>
<id>urn:sha1:70fbc71189dc0078de7257816f1bfbc529dc1014</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Rollup merge of #130236 - yaahc:unstable-feature-usage, r=estebank</title>
<updated>2024-11-21T10:58:36+00:00</updated>
<author>
<name>Matthias Krüger</name>
<email>matthias.krueger@famsik.de</email>
</author>
<published>2024-11-21T10:58:36+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=fe5403f517617e1ecdf1cd3cd33bf205727f92c9'/>
<id>urn:sha1:fe5403f517617e1ecdf1cd3cd33bf205727f92c9</id>
<content type='text'>
unstable feature usage metrics

example output

```
test-lib on  master [?] is 📦 v0.1.0 via 🦀 v1.80.1
❯ cat src/lib.rs
───────┬───────────────────────────────────────────────────────
       │ File: src/lib.rs
───────┼───────────────────────────────────────────────────────
   1   │ #![feature(unix_set_mark)]
   2   │ pub fn add(left: u64, right: u64) -&gt; u64 {
   3   │     left + right
   4   │ }
   5   │
   6   │ #[cfg(test)]
   7   │ mod tests {
   8   │     use super::*;
   9   │
  10   │     #[test]
  11   │     fn it_works() {
  12   │         let result = add(2, 2);
  13   │         assert_eq!(result, 4);
  14   │     }
  15   │ }
───────┴───────────────────────────────────────────────────────

test-lib on  master [?] is 📦 v0.1.0 via 🦀 v1.80.1
❯ cargo +stage1 rustc -- -Zmetrics-dir=$PWD/metrics
   Compiling test-lib v0.1.0 (/home/yaahc/tmp/test-lib)
    Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.08s

test-lib on  master [?] is 📦 v0.1.0 via 🦀 v1.80.1
❯ cat metrics/unstable_feature_usage.json
───────┬─────────────────────────────────────────────────────────────────────
       │ File: metrics/unstable_feature_usage.json
───────┼─────────────────────────────────────────────────────────────────────
   1   │ {"lib_features":[{"symbol":"unix_set_mark"}],"lang_features":[]}
   ```

   related to https://github.com/rust-lang/rust/issues/129485
</content>
</entry>
<entry>
<title>unstable feature usage metrics</title>
<updated>2024-11-20T19:31:40+00:00</updated>
<author>
<name>Jane Losare-Lusby</name>
<email>jlusby@yaah.dev</email>
</author>
<published>2024-09-06T20:05:01+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=dc97db105ac3ebefe0ab51b88a26f87ef4fec207'/>
<id>urn:sha1:dc97db105ac3ebefe0ab51b88a26f87ef4fec207</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Rollup merge of #132732 - gavincrawford:as_ptr_attribute, r=Urgau</title>
<updated>2024-11-20T06:54:24+00:00</updated>
<author>
<name>Jacob Pratt</name>
<email>jacob@jhpratt.dev</email>
</author>
<published>2024-11-20T06:54:24+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=25dc4d0394df6ca1d4f3637aa4c1fad8c25833ab'/>
<id>urn:sha1:25dc4d0394df6ca1d4f3637aa4c1fad8c25833ab</id>
<content type='text'>
Use attributes for `dangling_pointers_from_temporaries` lint

Checking for dangling pointers by function name isn't ideal, and leaves out certain pointer-returning methods that don't follow the `as_ptr` naming convention. Using an attribute for this lint cleans things up and allows more thorough coverage of other methods, such as `UnsafeCell::get()`.
</content>
</entry>
<entry>
<title>Introduce `min_generic_const_args` and directly represent paths</title>
<updated>2024-11-19T05:07:43+00:00</updated>
<author>
<name>Noah Lev</name>
<email>camelidcamel@gmail.com</email>
</author>
<published>2024-11-19T05:01:59+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=59e339f76658bd8bd55f7514c95ffb5f39c94227'/>
<id>urn:sha1:59e339f76658bd8bd55f7514c95ffb5f39c94227</id>
<content type='text'>
Co-authored-by: Boxy UwU &lt;rust@boxyuwu.dev&gt;
Co-authored-by: León Orell Valerian Liehr &lt;me@fmease.dev&gt;
</content>
</entry>
<entry>
<title>Rollup merge of #133142 - RalfJung:naming-is-hard, r=compiler-errors</title>
<updated>2024-11-18T07:24:35+00:00</updated>
<author>
<name>Jacob Pratt</name>
<email>jacob@jhpratt.dev</email>
</author>
<published>2024-11-18T07:24:35+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=72a8d536ef28ba6f7c185b905dbcefee7536fc72'/>
<id>urn:sha1:72a8d536ef28ba6f7c185b905dbcefee7536fc72</id>
<content type='text'>
rename rustc_const_stable_intrinsic -&gt; rustc_intrinsic_const_stable_indirect

In https://github.com/rust-lang/rust/pull/120370 this name caused confusion as the author thought the intrinsic was stable. So let's try a different name...

If we can land this before the beta cutoff we can avoid needing `cfg(bootstrap)` for this. ;)
Cc `@compiler-errors` `@saethlin`
</content>
</entry>
<entry>
<title>rename rustc_const_stable_intrinsic -&gt; rustc_intrinsic_const_stable_indirect</title>
<updated>2024-11-18T06:47:44+00:00</updated>
<author>
<name>Ralf Jung</name>
<email>post@ralfj.de</email>
</author>
<published>2024-11-17T21:50:14+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=9d4b1b2db497102257c6f372f308492089d689b4'/>
<id>urn:sha1:9d4b1b2db497102257c6f372f308492089d689b4</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Add `RUSTC_BOOTSTRAP=-1` to make rustc pretend as stable compiler</title>
<updated>2024-11-17T11:59:52+00:00</updated>
<author>
<name>Jieyou Xu</name>
<email>jieyouxu@outlook.com</email>
</author>
<published>2024-11-13T09:55:25+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=202caa7c57f635c481670037dc52735635ec2f82'/>
<id>urn:sha1:202caa7c57f635c481670037dc52735635ec2f82</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Add #[rustc_as_ptr] attribute</title>
<updated>2024-11-11T20:33:48+00:00</updated>
<author>
<name>gavincrawford</name>
<email>94875769+gavincrawford@users.noreply.github.com</email>
</author>
<published>2024-11-02T17:39:29+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=5f443df4044532d95c23aa8d97f2748ca287378f'/>
<id>urn:sha1:5f443df4044532d95c23aa8d97f2748ca287378f</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Rollup merge of #132552 - taiki-e:sparc-target-feature, r=workingjubilee</title>
<updated>2024-11-09T09:52:03+00:00</updated>
<author>
<name>Matthias Krüger</name>
<email>matthias.krueger@famsik.de</email>
</author>
<published>2024-11-09T09:52:03+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=b9d4ef16c9845306f14c327c1cf86049e9f58dc3'/>
<id>urn:sha1:b9d4ef16c9845306f14c327c1cf86049e9f58dc3</id>
<content type='text'>
Add v9, v8plus, and leoncasa target feature to sparc and use v8plus in create_object_file

This adds the following three unstable target features:

- `v9`: SPARC-V9 instructions ([LLVM definition][sparc-v9])
  - Relevant to https://github.com/rust-lang/rust/pull/131222#issuecomment-2453310963
  - Relevant to https://github.com/rust-lang/rust/pull/132472#discussion_r1832606081
  - This is also needed to implement https://github.com/taiki-e/atomic-maybe-uninit/pull/31 (depends on inline assembly support) more robustly.
- `v8plus`: SPARC-V8+ ABI ([LLVM definition][sparc-v8plus])
  - This is added in LLVM 20. In LLVM 19 and older, it is emulated to work the same way as LLVM in each LLVM version.
  - See https://github.com/rust-lang/rust/issues/132585#issuecomment-2453926257 for more.
- `leoncasa`: CASA instruction[^1] of LEON3 and LEON4 processors ([LLVM definition][sparc-leoncasa], LLVM feature name: `hasleoncasa`)
  - This is needed to implement https://github.com/taiki-e/atomic-maybe-uninit/pull/31 (depends on inline assembly support) more robustly.

[^1]: Atomic CAS instruction

[sparc-v9]: https://github.com/llvm/llvm-project/blob/f5e4ffaa49254706ad6fa209de8aec28e20f0041/llvm/lib/Target/Sparc/Sparc.td#L37-L39
[sparc-v8plus]: https://github.com/llvm/llvm-project/blob/f5e4ffaa49254706ad6fa209de8aec28e20f0041/llvm/lib/Target/Sparc/Sparc.td#L37-L39
[sparc-leoncasa]: https://github.com/llvm/llvm-project/blob/llvmorg-19.1.0/llvm/lib/Target/Sparc/LeonFeatures.td#L32-L37
</content>
</entry>
</feed>
