Rollup merge of #93661 - ehuss:add-missing-rustc-arg-docs, r=estebank,Mark-Simulacrum

Add missing rustc arg docs

Add documentation for recently added rustc args

`-C symbol-mangling-version` was stabilized in #90128.
`--json=future-incompat` was stabilized in #91535.
This commit is contained in:
Dylan DPC 2022-05-10 08:24:00 +02:00 committed by GitHub
commit dd83ae2cd6
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 44 additions and 0 deletions

View File

@ -550,6 +550,21 @@ Supported values for this option are:
- `symbols` - same as `debuginfo`, but the rest of the symbol table section is
stripped as well if the linker supports it.
## symbol-mangling-version
This option controls the [name mangling] format for encoding Rust item names
for the purpose of generating object code and linking.
Supported values for this option are:
* `v0` — The "v0" mangling scheme. The specific format is not specified at
this time.
The default if not specified will use a compiler-chosen default which may
change in the future.
[name mangling]: https://en.wikipedia.org/wiki/Name_mangling
## target-cpu
This instructs `rustc` to generate code specifically for a particular processor.

View File

@ -408,6 +408,9 @@ to customize the output:
argument](#option-emit), and as soon as the artifact is available on the
filesystem a notification will be emitted.
- `future-incompat` - includes a JSON message that contains a report if the
crate contains any code that may fail to compile in the future.
Note that it is invalid to combine the `--json` argument with the
[`--color`](#option-color) argument, and it is required to combine `--json`
with `--error-format=json`.

View File

@ -229,6 +229,32 @@ flag][option-emit] documentation.
}
```
## Future-incompatible reports
If the [`--json=future-incompat`][option-json] flag is used, then a separate
JSON structure will be emitted if the crate may stop compiling in the future.
This contains diagnostic information about the particular warnings that may be
turned into a hard error in the future. This will include the diagnostic
information, even if the diagnostics have been suppressed (such as with an
`#[allow]` attribute or the `--cap-lints` option).
```javascript
{
/* An array of objects describing a warning that will become a hard error
in the future.
*/
"future_incompat_report":
[
{
/* A diagnostic structure as defined in
https://doc.rust-lang.org/rustc/json.html#diagnostics
*/
"diagnostic": {...},
}
]
}
```
[option-emit]: command-line-arguments.md#option-emit
[option-error-format]: command-line-arguments.md#option-error-format
[option-json]: command-line-arguments.md#option-json