Skip to content

Commit

Permalink
Document --json=future-incompat
Browse files Browse the repository at this point in the history
  • Loading branch information
ehuss committed Feb 4, 2022
1 parent b72f555 commit 800e0e2
Show file tree
Hide file tree
Showing 2 changed files with 29 additions and 0 deletions.
3 changes: 3 additions & 0 deletions src/doc/rustc/src/command-line-arguments.md
Original file line number Diff line number Diff line change
Expand Up @@ -384,6 +384,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`.
Expand Down
26 changes: 26 additions & 0 deletions src/doc/rustc/src/json.md
Original file line number Diff line number Diff line change
Expand Up @@ -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

0 comments on commit 800e0e2

Please sign in to comment.