<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rust/library/proc_macro/src, branch stable</title>
<subtitle>https://github.com/rust-lang/rust
</subtitle>
<id>http://git.dreamy.place/mirrors/rust/atom?h=stable</id>
<link rel='self' href='http://git.dreamy.place/mirrors/rust/atom?h=stable'/>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/'/>
<updated>2025-07-17T08:41:45+00:00</updated>
<entry>
<title>Rollup merge of #143631 - hkBst:update-escaper-2, r=compiler-errors</title>
<updated>2025-07-17T08:41:45+00:00</updated>
<author>
<name>Matthias Krüger</name>
<email>476013+matthiaskrgr@users.noreply.github.com</email>
</author>
<published>2025-07-17T08:41:45+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=465ae9432812040a80b7c22c5a1c020663757e0f'/>
<id>urn:sha1:465ae9432812040a80b7c22c5a1c020663757e0f</id>
<content type='text'>
update to literal-escaper-0.0.5

Quoting from the changelog, this version brings:
- Use `NonZero&lt;char/u8&gt;` in `unescape_c_str` and `check_raw_c_str` to statically exclude nuls
- Add `#[inline]` to small functions for improved performance
</content>
</entry>
<entry>
<title>Rollup merge of #141996 - Daniel-Aaron-Bloom:dollar_crate, r=petrochenkov</title>
<updated>2025-07-10T07:23:52+00:00</updated>
<author>
<name>Trevor Gross</name>
<email>t.gross35@gmail.com</email>
</author>
<published>2025-07-10T07:23:52+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=73d3adc67b700ab3a41c72791f0ca5cbaef51425'/>
<id>urn:sha1:73d3adc67b700ab3a41c72791f0ca5cbaef51425</id>
<content type='text'>
Fix `proc_macro::Ident`'s handling of `$crate`

This PR is addresses a few minor bugs, all relating to `proc_macro::Ident`'s support for `$crate`. `Ident` currently supports `$crate` (as can be seen in the `mixed-site-span` test), but:
* `proc_macro::Symbol::can_be_raw` is out of sync with `rustc_span::Symbol::can_be_raw`
  * former doesn't cover `$crate` while the latter does cover `kw::DollarCrate`
* `Ident::new` rejects `$crate`
  * This conflicts with the [reference definition](https://doc.rust-lang.org/nightly/reference/macros-by-example.html#r-macro.decl.meta.specifier) of `ident` which includes `$crate`.
  * This also conflicts with the documentation on [`Display for Ident`](https://doc.rust-lang.org/proc_macro/struct.Ident.html#impl-Display-for-Ident) which says the output "should be losslessly convertible back into the same identifier".

This PR fixes the above issues and extends the `mixed-site-span` test to exercise these fixed code paths, as well as validating the different possible spans resolve `$crate`  as expected (for both the new and old `$crate` construction code paths).
</content>
</entry>
<entry>
<title>update to literal-escaper-0.0.5</title>
<updated>2025-07-08T10:16:44+00:00</updated>
<author>
<name>Marijn Schouten</name>
<email>mhkbst@gmail.com</email>
</author>
<published>2025-07-08T10:16:44+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=d44dcd451326d32516c22ee5f998304afaf19c4d'/>
<id>urn:sha1:d44dcd451326d32516c22ee5f998304afaf19c4d</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Auto merge of #140999 - hkBst:update-escaper, r=nnethercote</title>
<updated>2025-06-25T01:03:30+00:00</updated>
<author>
<name>bors</name>
<email>bors@rust-lang.org</email>
</author>
<published>2025-06-25T01:03:30+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=2c2bb995af398383e3b93b859302bdc447ca7a7c'/>
<id>urn:sha1:2c2bb995af398383e3b93b859302bdc447ca7a7c</id>
<content type='text'>
update to literal-escaper 0.0.4 for better API without `unreachable` and faster string parsing

This is the replacement for just the part of https://github.com/rust-lang/rust/pull/138163 dealing with the changed API of unescape functionality, since that got moved into its own crate.

&lt;del&gt;This uses an unpublished version of literal-escaper (https://github.com/rust-lang/literal-escaper/pull/8).&lt;/del&gt;

r? `@nnethercote`
</content>
</entry>
<entry>
<title>update to literal-escaper 0.0.4 for better API without `unreachable` and faster string parsing</title>
<updated>2025-06-23T06:36:22+00:00</updated>
<author>
<name>Marijn Schouten</name>
<email>mhkbst@gmail.com</email>
</author>
<published>2025-03-07T11:17:39+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=707a6f54631c322e8c8ccff363fe024d67d93aa2'/>
<id>urn:sha1:707a6f54631c322e8c8ccff363fe024d67d93aa2</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Add support for repetition to `proc_macro::quote`</title>
<updated>2025-06-16T16:36:54+00:00</updated>
<author>
<name>Tomoaki Kobayashi</name>
<email>tomoaki.kobayashi.t3@alumni.tohoku.ac.jp</email>
</author>
<published>2025-05-26T17:30:53+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=23e35c6bd371485eff7c5f58cb59ee28da59ba62'/>
<id>urn:sha1:23e35c6bd371485eff7c5f58cb59ee28da59ba62</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Remove all support for wasm's legacy ABI</title>
<updated>2025-06-14T09:57:06+00:00</updated>
<author>
<name>bjorn3</name>
<email>17426603+bjorn3@users.noreply.github.com</email>
</author>
<published>2024-12-06T09:06:51+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=3e944fa3917a58e30d970d2cce42c14c5edf390b'/>
<id>urn:sha1:3e944fa3917a58e30d970d2cce42c14c5edf390b</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Add support for $crate to Ident</title>
<updated>2025-06-12T08:13:24+00:00</updated>
<author>
<name>Daniel Bloom</name>
<email>daniel@wormholelabs.xyz</email>
</author>
<published>2025-04-14T05:17:26+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=6d1e93d8cdea975303397d91f726c40f5a7396fd'/>
<id>urn:sha1:6d1e93d8cdea975303397d91f726c40f5a7396fd</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Do not get proc_macro from the sysroot in rustc</title>
<updated>2025-05-27T15:49:28+00:00</updated>
<author>
<name>bjorn3</name>
<email>17426603+bjorn3@users.noreply.github.com</email>
</author>
<published>2025-05-27T10:30:47+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=026baa1c6fb397e9bd2c171d750c939232c13a58'/>
<id>urn:sha1:026baa1c6fb397e9bd2c171d750c939232c13a58</id>
<content type='text'>
With the stage0 refactor the proc_macro version found in the sysroot
will no longer always match the proc_macro version that proc-macros get
compiled with by the rustc executable that uses this proc_macro. This
will cause problems as soon as the ABI of the bridge gets changed to
implement new features or change the way existing features work.

To fix this, this commit changes rustc crates to depend directly on the
local version of proc_macro which will also be used in the sysroot that
rustc will build.
</content>
</entry>
<entry>
<title>manual clippy fixes</title>
<updated>2025-05-12T13:33:41+00:00</updated>
<author>
<name>Pietro Albini</name>
<email>pietro@pietroalbini.org</email>
</author>
<published>2025-05-10T08:58:23+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=779dd35649c42b0f57a2338d4ccd344e8ba6ebe3'/>
<id>urn:sha1:779dd35649c42b0f57a2338d4ccd344e8ba6ebe3</id>
<content type='text'>
</content>
</entry>
</feed>
