diff options
| author | bors <bors@rust-lang.org> | 2025-07-01 02:22:42 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2025-07-01 02:22:42 +0000 |
| commit | 6988a8fea774a2a20ebebddb7dbf15dd6ef594f9 (patch) | |
| tree | aca0c8231f4ab0171865cef0fbb27aebfa57bb7a /tests/ui/macros/metavar-expressions/count-empty-index-arg.stderr | |
| parent | fdad98d7463eebcdca94716ec3036c38a8d66f50 (diff) | |
| parent | 478f8287c0e2c35cda511fd3ac01b7ac78ee7cfe (diff) | |
| download | rust-6988a8fea774a2a20ebebddb7dbf15dd6ef594f9.tar.gz rust-6988a8fea774a2a20ebebddb7dbf15dd6ef594f9.zip | |
Auto merge of #141875 - nnethercote:ByteSymbol, r=petrochenkov
Introduce `ByteSymbol` It's like `Symbol` but for byte strings. The interner is now used for both `Symbol` and `ByteSymbol`. E.g. if you intern `"dog"` and `b"dog"` you'll get a `Symbol` and a `ByteSymbol` with the same index and the characters will only be stored once. The motivation for this is to eliminate the `Arc`s in `ast::LitKind`, to make `ast::LitKind` impl `Copy`, and to avoid the need to arena-allocate `ast::LitKind` in HIR. The latter change reduces peak memory by a non-trivial amount on literal-heavy benchmarks such as `deep-vector` and `tuple-stress`. `Encoder`, `Decoder`, `SpanEncoder`, and `SpanDecoder` all get some changes so that they can handle normal strings and byte strings.
Diffstat (limited to 'tests/ui/macros/metavar-expressions/count-empty-index-arg.stderr')
0 files changed, 0 insertions, 0 deletions
