-
Notifications
You must be signed in to change notification settings - Fork 13.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Non-ASCII Crate IDs do not work #13412
Comments
Related to #2253. |
Hm, something funny with the encoding might be happening. I copy-and-pasted the code from this page and it worked on both OSX and linux. What's the output you get with |
@alexcrichton My That log provides nothing interesting. The very first reference to either "foo" or "fℇℇ" is the error
This is emitted immediately after it successfully reads |
Aaand now I feel like a fool. I forgot Maybe rustc should suggest adding |
Implement lint for regex::Regex compilation inside a loop Closes rust-lang#598. Seems like a pretty simple one, I'm not sure if I sorted out all the lint plumbing correctly because I was adding it to the existing regex pass, but seems to work. The name is a bit jank and I'm super open to suggestions for changing it. changelog: [`regex_creation_in_loops`]: Added lint for Regex compilation inside loops.
Right now we can create crates with non-ASCII names, and they compile just fine, but we can't seem to link against them. I've reproduced this problem on both OS X and Linux, so I'm pretty sure it's not a filename issue. It also doesn't seem to matter if the crate ID is using decomposed or composed characters (or characters that only have one form).
We already have a feature gate for
non_ascii_idents
, it seems reasonable that we should feature-gate having non-ascii crate IDs as well (both implicit IDs taken from the filename, and explicit ones specified with the attribute). I don't believe we need to test any clients of such crates (using theextern crate foo = "fℇℇ#0.0"
syntax, asextern crate fℇℇ
already hits non_ascii_idents) because using the crate is already broken, and fixing it will not have any compatibility issues.Example:
foo.rs:
main.rs:
Compiling
foo.rs
works just fine, but compilingmain.rs
errors:The text was updated successfully, but these errors were encountered: