Skip to content

rc"" instead of cr"" should get a clear diagnostic #140170

@cyrgani

Description

@cyrgani

Code

fn main() { rc"\n"; }

Current output

error: prefix `rc` is unknown --> src/lib.rs:2:5 | 2 | rc"\n"; | ^^ unknown prefix | = note: prefixed identifiers and literals are reserved since Rust 2021 help: consider inserting whitespace here | 2 | rc "\n"; | + error: expected one of `!`, `.`, `::`, `;`, `?`, `{`, `}`, or an operator, found `"\n"` --> src/lib.rs:2:7 | 2 | rc"\n"; | ^^^^ expected one of 8 possible tokens

Desired output

error: prefix `rc` is unknown help: consider using `cr` instead:

Rationale and extra context

not sure whether the combination of c-string and raw string is common, but this seems like a plausible mistake if it is

Other cases

Rust Version

rustc 1.88.0-nightly (d6c1e454a 2025-04-21) binary: rustc commit-hash: d6c1e454aa8af5e7e59fbf5c4e7d3128d2f99582 commit-date: 2025-04-21 host: x86_64-unknown-linux-gnu release: 1.88.0-nightly LLVM version: 20.1.2

Anything else?

No response

Metadata

Metadata

Assignees

Labels

A-diagnosticsArea: Messages for errors, warnings, and lintsA-parserArea: The lexing & parsing of Rust source code to an ASTD-terseDiagnostics: An error or lint that doesn't give enough information about the problem at hand.T-compilerRelevant to the compiler team, which will review and decide on the PR/issue.

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions