Skip to content

Commit

Permalink
Fix false positive with missing_docs and #[test]
Browse files Browse the repository at this point in the history
Since #130025, the compiler don't ignore missing_docs when compiling the tests.
But there is now a false positive warning for every `#[test]`

For example, this code
```rust
//! Crate docs

fn just_a_test() {}
```

Would emit this warning when running `cargo test`

```
warning: missing documentation for a constant
 --> src/lib.rs:5:1
  |
4 | #[test]
  | ------- in this procedural macro expansion
5 | fn just_a_test() {}
  | ^^^^^^^^^^^^^^^^^^^
```
  • Loading branch information
ogoffart committed Sep 11, 2024
1 parent 4c5fc2c commit f6fe6eb
Show file tree
Hide file tree
Showing 2 changed files with 5 additions and 0 deletions.
2 changes: 2 additions & 0 deletions compiler/rustc_builtin_macros/src/test.rs
Original file line number Diff line number Diff line change
Expand Up @@ -277,6 +277,8 @@ pub(crate) fn expand_test_or_bench(
cx.attr_nested_word(sym::cfg, sym::test, attr_sp),
// #[rustc_test_marker = "test_case_sort_key"]
cx.attr_name_value_str(sym::rustc_test_marker, test_path_symbol, attr_sp),
// #[allow(missing_docs)]
cx.attr_nested_word(sym::allow, sym::missing_docs, attr_sp),
],
// const $ident: test::TestDescAndFn =
ast::ItemKind::Const(
Expand Down
3 changes: 3 additions & 0 deletions tests/ui/lint/lint-missing-doc-test.rs
Original file line number Diff line number Diff line change
Expand Up @@ -3,3 +3,6 @@

//@ check-pass
//@ compile-flags: --test -Dmissing_docs

#[test]
fn test() {}

0 comments on commit f6fe6eb

Please sign in to comment.