rust/compiler
Matthias Krüger fc5516b782
Rollup merge of #108588 - ehuss:lint-docs-produces, r=eholk
Fix the ffi_unwind_calls lint documentation

This fixes the [`ffi_unwind_calls`](https://doc.rust-lang.org/nightly/rustc/lints/listing/allowed-by-default.html#ffi-unwind-calls) documentation to show its output correctly. Currently it is showing the text `{{produces}}` which is not how it should look.

This fixes it by not ignoring the example. I'm not sure why it was ignored, as the way the lint currently works it doesn't seem to require external linkage. This also fixes several mistakes in the example:

* There is no `ffi_unwind_calls` feature.
* Denies the lint (which is otherwise allow be default).
* Removes the `mod impl` which is not valid Rust syntax, and doesn't appear to be needed anyways.

The output now looks like:

```
warning: call to foreign function with FFI-unwind ABI
  --> lint_example.rs:10:14
   |
10 |     unsafe { foo(); }
   |              ^^^^^ call to foreign function with FFI-unwind ABI
   |
note: the lint level is defined here
  --> lint_example.rs:2:9
   |
2  | #![warn(ffi_unwind_calls)]
   |         ^^^^^^^^^^^^^^^^

warning: call to function pointer with FFI-unwind ABI
  --> lint_example.rs:12:14
   |
12 |     unsafe { ptr(); }
   |              ^^^^^ call to function pointer with FFI-unwind ABI

```

This also includes some updates to the lint-docs tool to help with this issue:

* Adds a check if a lint documentation has `{{produces}}` with an ignored example, and generates an error.
* All instances of a lint are now displayed. Previously it only showed the first time the lint fires. Some examples may trigger a lint multiple times, and they are all now displayed.
2023-03-23 19:55:45 +01:00
..
rustc fix link 2023-03-11 10:53:47 -06:00
rustc_abi Unify validity checks into a single query 2023-02-23 18:42:36 +00:00
rustc_apfloat compiler: remove unnecessary imports and qualified paths 2022-12-10 18:45:34 +01:00
rustc_arena compiler: remove unnecessary imports and qualified paths 2022-12-10 18:45:34 +01:00
rustc_ast rustc: Remove unused Session argument from some attribute functions 2023-03-22 13:55:55 +04:00
rustc_ast_lowering rustc: Remove unused Session argument from some attribute functions 2023-03-22 13:55:55 +04:00
rustc_ast_passes rustc: Remove unused Session argument from some attribute functions 2023-03-22 13:55:55 +04:00
rustc_ast_pretty Remove box_syntax from AST and use in tools 2023-03-12 13:19:46 +00:00
rustc_attr rustc: Remove unused Session argument from some attribute functions 2023-03-22 13:55:55 +04:00
rustc_baked_icu_data update ICU4X to 1.1.0 2023-02-04 22:28:59 +01:00
rustc_borrowck Auto merge of #109503 - matthiaskrgr:rollup-cnp7kdd, r=matthiaskrgr 2023-03-23 07:01:03 +00:00
rustc_builtin_macros rustc_interface: Add a new query pre_configure 2023-03-23 14:22:48 +04:00
rustc_codegen_cranelift Remove Ty::is_region_ptr 2023-03-20 15:32:21 +08:00
rustc_codegen_gcc Remove uses of box_syntax in rustc and tools 2023-03-12 13:19:46 +00:00
rustc_codegen_llvm Rollup merge of #107718 - Zoxc:z-time, r=nnethercote 2023-03-23 19:55:43 +01:00
rustc_codegen_ssa Rollup merge of #107718 - Zoxc:z-time, r=nnethercote 2023-03-23 19:55:43 +01:00
rustc_const_eval Rollup merge of #109435 - oli-obk:🇨🇭🥚_copy_op, r=RalfJung 2023-03-23 00:00:35 +05:30
rustc_data_structures Rollup merge of #107718 - Zoxc:z-time, r=nnethercote 2023-03-23 19:55:43 +01:00
rustc_driver Remove unneeded extern crate 2023-02-02 07:47:39 +01:00
rustc_driver_impl Rollup merge of #107718 - Zoxc:z-time, r=nnethercote 2023-03-23 19:55:43 +01:00
rustc_error_codes Rollup merge of #109501 - lukas-code:link, r=WaffleLapkin 2023-03-22 22:44:43 +01:00
rustc_error_messages Simplify message paths 2023-03-11 22:51:57 +01:00
rustc_errors Rollup merge of #109403 - chenyukang:yukang/fix-109396, r=estebank 2023-03-21 19:00:13 +01:00
rustc_expand rustc_interface: Add a new query pre_configure 2023-03-23 14:22:48 +04:00
rustc_feature Rollup merge of #108549 - clubby789:fix-link-cfg-issue, r=eholk 2023-03-23 19:55:44 +01:00
rustc_fs_util
rustc_graphviz Fix uninlined_format_args for some compiler crates 2023-01-05 19:01:12 +01:00
rustc_hir Rollup merge of #109179 - llogiq:intrinsically-option-as-slice, r=eholk 2023-03-23 00:00:31 +05:30
rustc_hir_analysis Rollup merge of #107718 - Zoxc:z-time, r=nnethercote 2023-03-23 19:55:43 +01:00
rustc_hir_pretty Remove box expressions from HIR 2023-03-14 17:18:26 +00:00
rustc_hir_typeck Auto merge of #109517 - matthiaskrgr:rollup-m3orqzd, r=matthiaskrgr 2023-03-23 12:35:05 +00:00
rustc_incremental Use local key in providers 2023-03-21 15:38:51 +00:00
rustc_index Match unmatched backticks in compiler/ that are part of rustdoc 2023-03-03 08:39:00 +01:00
rustc_infer Auto merge of #109517 - matthiaskrgr:rollup-m3orqzd, r=matthiaskrgr 2023-03-23 12:35:05 +00:00
rustc_interface Rollup merge of #107718 - Zoxc:z-time, r=nnethercote 2023-03-23 19:55:43 +01:00
rustc_lexer fix(lexer): not skipped whitespace warning for '\x0c' 2023-03-09 22:44:58 +08:00
rustc_lint Rollup merge of #107880 - jieyouxu:issue-107563, r=petrochenkov 2023-03-23 19:55:43 +01:00
rustc_lint_defs Rollup merge of #108588 - ehuss:lint-docs-produces, r=eholk 2023-03-23 19:55:45 +01:00
rustc_llvm Remove an extraneous include 2023-03-07 22:46:39 -08:00
rustc_log Rollup merge of #107895 - matthiaskrgr:cl, r=compiler-errors 2023-02-11 17:18:44 +01:00
rustc_macros Allow using bool for optional diagnostics 2023-02-27 12:54:11 +00:00
rustc_metadata Auto merge of #109517 - matthiaskrgr:rollup-m3orqzd, r=matthiaskrgr 2023-03-23 12:35:05 +00:00
rustc_middle Auto merge of #108221 - petrochenkov:cratecfg, r=michaelwoerister 2023-03-23 15:17:59 +00:00
rustc_mir_build Auto merge of #109517 - matthiaskrgr:rollup-m3orqzd, r=matthiaskrgr 2023-03-23 12:35:05 +00:00
rustc_mir_dataflow Use index based drop loop for slices and arrays 2023-03-14 21:29:32 +01:00
rustc_mir_transform Rollup merge of #109435 - oli-obk:🇨🇭🥚_copy_op, r=RalfJung 2023-03-23 00:00:35 +05:30
rustc_monomorphize Rollup merge of #109109 - compiler-errors:polymorphize-foreign, r=Nilstrieb 2023-03-15 17:51:31 +05:30
rustc_parse Rollup merge of #109203 - Ezrashaw:refactor-ident-parsing, r=Nilstrieb 2023-03-22 22:44:39 +01:00
rustc_parse_format Improve heuristics for format_args literal being suggestable 2023-03-14 13:20:39 +00:00
rustc_passes rustc: Remove unused Session argument from some attribute functions 2023-03-22 13:55:55 +04:00
rustc_plugin_impl expand: Pass ast::Crate by reference to AST transforming passes 2023-03-23 14:20:55 +04:00
rustc_privacy Rename AliasEq -> AliasRelate 2023-03-23 05:56:40 +00:00
rustc_query_impl AsLocalKey trait 2023-03-21 15:38:52 +00:00
rustc_query_system Auto merge of #109046 - Zoxc:split-execute-job, r=cjgillot,michaelwoerister 2023-03-20 23:53:09 +00:00
rustc_resolve Rollup merge of #107880 - jieyouxu:issue-107563, r=petrochenkov 2023-03-23 19:55:43 +01:00
rustc_serialize Emit the enum discriminant separately for the Encodable macro 2023-02-25 01:04:56 +01:00
rustc_session Rollup merge of #107718 - Zoxc:z-time, r=nnethercote 2023-03-23 19:55:43 +01:00
rustc_smir Change item collection to be on demand 2023-03-07 12:47:25 -08:00
rustc_span Rollup merge of #109213 - oli-obk:cstore, r=cjgillot 2023-03-22 22:44:40 +01:00
rustc_symbol_mangling Use local key in providers 2023-03-21 15:38:51 +00:00
rustc_target Fix riscv64 fuchsia LLVM target name 2023-03-15 12:55:37 +09:00
rustc_trait_selection Auto merge of #109517 - matthiaskrgr:rollup-m3orqzd, r=matthiaskrgr 2023-03-23 12:35:05 +00:00
rustc_traits Rename AliasEq -> AliasRelate 2023-03-23 05:56:40 +00:00
rustc_transmute rustc_middle: Remove trait DefIdTree 2023-03-02 23:46:44 +04:00
rustc_ty_utils Auto merge of #109503 - matthiaskrgr:rollup-cnp7kdd, r=matthiaskrgr 2023-03-23 07:01:03 +00:00
rustc_type_ir Generate simpler MIR for shifts 2023-03-22 13:32:12 -07:00