Navigation Menu

Skip to content

Commit

Permalink
Add tests for modifying lint levels for lints reported at expansion time
Browse files Browse the repository at this point in the history
  • Loading branch information
petrochenkov committed Jun 9, 2020
1 parent 217a745 commit d60df53
Show file tree
Hide file tree
Showing 3 changed files with 83 additions and 0 deletions.
4 changes: 4 additions & 0 deletions src/test/ui/lint/expansion-time-include.rs
@@ -0,0 +1,4 @@
// ignore-test auxiliary file for expansion-time.rs

1
2
23 changes: 23 additions & 0 deletions src/test/ui/lint/expansion-time.rs
@@ -0,0 +1,23 @@
// check-pass

#[warn(meta_variable_misuse)]
macro_rules! foo {
( $($i:ident)* ) => { $($i)+ }; //~ WARN meta-variable repeats with different Kleene operator
}

#[warn(missing_fragment_specifier)]
macro_rules! m { ($i) => {} } //~ WARN missing fragment specifier
//~| WARN this was previously accepted

#[warn(soft_unstable)]
mod benches {
#[bench] //~ WARN use of unstable library feature 'test'
//~| WARN this was previously accepted
fn foo() {}
}

#[warn(incomplete_include)]
fn main() {
// WARN see in the stderr file, the warning points to the included file.
include!("expansion-time-include.rs");
}
56 changes: 56 additions & 0 deletions src/test/ui/lint/expansion-time.stderr
@@ -0,0 +1,56 @@
warning: meta-variable repeats with different Kleene operator
--> $DIR/expansion-time.rs:5:29
|
LL | ( $($i:ident)* ) => { $($i)+ };
| - ^^ - conflicting repetition
| |
| expected repetition
|
note: the lint level is defined here
--> $DIR/expansion-time.rs:3:8
|
LL | #[warn(meta_variable_misuse)]
| ^^^^^^^^^^^^^^^^^^^^

warning: missing fragment specifier
--> $DIR/expansion-time.rs:9:19
|
LL | macro_rules! m { ($i) => {} }
| ^^
|
note: the lint level is defined here
--> $DIR/expansion-time.rs:8:8
|
LL | #[warn(missing_fragment_specifier)]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
= note: for more information, see issue #40107 <https://github.com/rust-lang/rust/issues/40107>

warning: use of unstable library feature 'test': `bench` is a part of custom test frameworks which are unstable
--> $DIR/expansion-time.rs:14:7
|
LL | #[bench]
| ^^^^^
|
note: the lint level is defined here
--> $DIR/expansion-time.rs:12:8
|
LL | #[warn(soft_unstable)]
| ^^^^^^^^^^^^^
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
= note: for more information, see issue #64266 <https://github.com/rust-lang/rust/issues/64266>

warning: include macro expected single expression in source
--> $DIR/expansion-time-include.rs:4:1
|
LL | 2
| ^
|
note: the lint level is defined here
--> $DIR/expansion-time.rs:19:8
|
LL | #[warn(incomplete_include)]
| ^^^^^^^^^^^^^^^^^^

warning: 4 warnings emitted

0 comments on commit d60df53

Please sign in to comment.