Add unstable option to nul-terminate location strings#135240
Closed
Darksonn wants to merge 2 commits intorust-lang:masterfrom
Closed
Add unstable option to nul-terminate location strings#135240Darksonn wants to merge 2 commits intorust-lang:masterfrom
Darksonn wants to merge 2 commits intorust-lang:masterfrom
Conversation
Collaborator
Collaborator
|
Some changes occurred to the CTFE machinery cc @rust-lang/wg-const-eval |
This was referenced Jan 8, 2025
5fb9306 to
e739649
Compare
19 tasks
5 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This is an alternative to #135054 for the ACP rust-lang/libs-team#466 that provides a compiler flag for adding a nul-terminator to filename strings.
Personally I still prefer adding a dedicated method to avoid provenance crimes, but this approach allows users to avoid increasing the binary size.
One potential way to avoid provenance questions is to add a
Location::file_ptrmethod that returns a*const u8pointer to the filename. This raw pointer can have provenance to access the nul-terminator even if the&strdoesn't.The new option is added to
-Zlocation-detailinstead of adding a new flag. This seems to be the simplest way to provide the option. Since-Zlocation-detailis unstable, this does not commit to supporting the feature.