Skip to content

Document the -Z flag to the rustc book #59680

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

Merged
merged 3 commits into from
Apr 12, 2019
Merged
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions src/doc/rustc/src/command-line-arguments.md
Original file line number Diff line number Diff line change
Expand Up @@ -86,6 +86,12 @@ This flag will set which lints should be set to the [deny level](lints/levels.ht

This flag will set which lints should be set to the [forbid level](lints/levels.html#forbid).

## `-Z`: set options for debugging rustc
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

So, while it's true that many flags are good for debugging, that's not the purpose of -Z. It's really for unstable compiler flags. It just so happens that debugging is a good use of flags that aren't yet stable.

Could we maybe re-word this?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ahh glad you say so! I came to that conclusion by running rustc --help which says:

-Z help             Print internal options for debugging rustc

Maybe this should be changed as well then? What do you think about:

-Z help             Print unstable compiler flags

When running rustc -Z help it also starts with:

Available debug options:
...

Should this be changed into something more generic like "Available options:" as well?

Curious to what you think of all this! Because of these lines I was really under the impression it was for debug options only (even though that seemed a bit weird to me..)

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

cc @rust-lang/compiler

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

+1 -- these aren't just for debugging, changing the description would make sense to me.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@steveklabnik @cramertj I updated the descriptions (Y).

I saw that some methods also contained words like "debug_..." but I wasn't brave enough to go and change those as well :)


This flag lets you set options for debugging rustc. In order to set multiple options, the -Z flag
can be used multiple times. For example: `rustc -Z verbose -Z time`. Specifying options with -Z is
only available on nightly. To view all available options run: `rustc -Z help`.

## `--cap-lints`: set the most restrictive lint level

This flag lets you 'cap' lints, for more, [see here](lints/levels.html#capping-lints).
Expand Down