warning: type `snake_case` should have an upper camel case name
  --> $DIR/lint-group-nonstandard-style.rs:22:16
   |
LL |         struct snake_case;
   |                ^^^^^^^^^^ help: convert the identifier to upper camel case: `SnakeCase`
   |
note: the lint level is defined here
  --> $DIR/lint-group-nonstandard-style.rs:18:17
   |
LL |         #![warn(nonstandard_style)]
   |                 ^^^^^^^^^^^^^^^^^
   = note: `#[warn(non_camel_case_types)]` implied by `#[warn(nonstandard_style)]`

error: function `CamelCase` should have a snake case name
  --> $DIR/lint-group-nonstandard-style.rs:4:4
   |
LL | fn CamelCase() {}
   |    ^^^^^^^^^ help: convert the identifier to snake case: `camel_case`
   |
note: the lint level is defined here
  --> $DIR/lint-group-nonstandard-style.rs:1:9
   |
LL | #![deny(nonstandard_style)]
   |         ^^^^^^^^^^^^^^^^^
   = note: `#[deny(non_snake_case)]` implied by `#[deny(nonstandard_style)]`

error: function `CamelCase` should have a snake case name
  --> $DIR/lint-group-nonstandard-style.rs:12:12
   |
LL |         fn CamelCase() {}
   |            ^^^^^^^^^ help: convert the identifier to snake case: `camel_case`
   |
note: the lint level is defined here
  --> $DIR/lint-group-nonstandard-style.rs:10:14
   |
LL |     #[forbid(nonstandard_style)]
   |              ^^^^^^^^^^^^^^^^^
   = note: `#[forbid(non_snake_case)]` implied by `#[forbid(nonstandard_style)]`

error: static variable `bad` should have an upper case name
  --> $DIR/lint-group-nonstandard-style.rs:14:16
   |
LL |         static bad: isize = 1;
   |                ^^^ help: convert the identifier to upper case: `BAD`
   |
   = note: `#[forbid(non_upper_case_globals)]` implied by `#[forbid(nonstandard_style)]`

warning: function `CamelCase` should have a snake case name
  --> $DIR/lint-group-nonstandard-style.rs:20:12
   |
LL |         fn CamelCase() {}
   |            ^^^^^^^^^ help: convert the identifier to snake case: `camel_case`
   |
   = note: `#[warn(non_snake_case)]` implied by `#[warn(nonstandard_style)]`

error: aborting due to 3 previous errors; 2 warnings emitted

