warning: `#[macro_escape]` is a deprecated synonym for `#[macro_use]`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:391:17
   |
LL |     mod inner { #![macro_escape] }
   |                 ^^^^^^^^^^^^^^^^
   |
   = help: try an outer attribute: `#[macro_use]`

warning: `#[macro_escape]` is a deprecated synonym for `#[macro_use]`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:388:1
   |
LL | #[macro_escape]
   | ^^^^^^^^^^^^^^^

warning: unknown lint: `x5400`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:46:9
   |
LL | #![warn(x5400)]
   |         ^^^^^
   |
note: the lint level is defined here
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:40:28
   |
LL | #![warn(unused_attributes, unknown_lints)]
   |                            ^^^^^^^^^^^^^

warning: unknown lint: `x5300`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:47:10
   |
LL | #![allow(x5300)]
   |          ^^^^^

warning: unknown lint: `x5200`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:48:11
   |
LL | #![forbid(x5200)]
   |           ^^^^^

warning: unknown lint: `x5100`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:49:9
   |
LL | #![deny(x5100)]
   |         ^^^^^

warning: unknown lint: `x5400`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:96:8
   |
LL | #[warn(x5400)]
   |        ^^^^^

warning: unknown lint: `x5400`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:99:25
   |
LL |     mod inner { #![warn(x5400)] }
   |                         ^^^^^

warning: unknown lint: `x5400`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:102:12
   |
LL |     #[warn(x5400)] fn f() { }
   |            ^^^^^

warning: unknown lint: `x5400`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:105:12
   |
LL |     #[warn(x5400)] struct S;
   |            ^^^^^

warning: unknown lint: `x5400`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:108:12
   |
LL |     #[warn(x5400)] type T = S;
   |            ^^^^^

warning: unknown lint: `x5400`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:111:12
   |
LL |     #[warn(x5400)] impl S { }
   |            ^^^^^

warning: unknown lint: `x5300`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:115:9
   |
LL | #[allow(x5300)]
   |         ^^^^^

warning: unknown lint: `x5300`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:118:26
   |
LL |     mod inner { #![allow(x5300)] }
   |                          ^^^^^

warning: unknown lint: `x5300`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:121:13
   |
LL |     #[allow(x5300)] fn f() { }
   |             ^^^^^

warning: unknown lint: `x5300`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:124:13
   |
LL |     #[allow(x5300)] struct S;
   |             ^^^^^

warning: unknown lint: `x5300`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:127:13
   |
LL |     #[allow(x5300)] type T = S;
   |             ^^^^^

warning: unknown lint: `x5300`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:130:13
   |
LL |     #[allow(x5300)] impl S { }
   |             ^^^^^

warning: unknown lint: `x5200`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:134:10
   |
LL | #[forbid(x5200)]
   |          ^^^^^

warning: unknown lint: `x5200`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:137:27
   |
LL |     mod inner { #![forbid(x5200)] }
   |                           ^^^^^

warning: unknown lint: `x5200`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:140:14
   |
LL |     #[forbid(x5200)] fn f() { }
   |              ^^^^^

warning: unknown lint: `x5200`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:143:14
   |
LL |     #[forbid(x5200)] struct S;
   |              ^^^^^

warning: unknown lint: `x5200`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:146:14
   |
LL |     #[forbid(x5200)] type T = S;
   |              ^^^^^

warning: unknown lint: `x5200`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:149:14
   |
LL |     #[forbid(x5200)] impl S { }
   |              ^^^^^

warning: unknown lint: `x5100`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:153:8
   |
LL | #[deny(x5100)]
   |        ^^^^^

warning: unknown lint: `x5100`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:156:25
   |
LL |     mod inner { #![deny(x5100)] }
   |                         ^^^^^

warning: unknown lint: `x5100`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:159:12
   |
LL |     #[deny(x5100)] fn f() { }
   |            ^^^^^

warning: unknown lint: `x5100`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:162:12
   |
LL |     #[deny(x5100)] struct S;
   |            ^^^^^

warning: unknown lint: `x5100`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:165:12
   |
LL |     #[deny(x5100)] type T = S;
   |            ^^^^^

warning: unknown lint: `x5100`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:168:12
   |
LL |     #[deny(x5100)] impl S { }
   |            ^^^^^

warning: `#[macro_export]` only has an effect on macro definitions
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:189:1
   |
LL | #[macro_export]
   | ^^^^^^^^^^^^^^^
   |
note: the lint level is defined here
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:40:9
   |
LL | #![warn(unused_attributes, unknown_lints)]
   |         ^^^^^^^^^^^^^^^^^

warning: `#[automatically_derived]` only has an effect on implementation blocks
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:257:1
   |
LL | #[automatically_derived]
   | ^^^^^^^^^^^^^^^^^^^^^^^^

warning: attribute should be applied to a free function, impl method or static
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:275:1
   |
LL |   #[no_mangle]
   |   ^^^^^^^^^^^^
...
LL | / mod no_mangle {
LL | |
LL | |     mod inner { #![no_mangle] }
...  |
LL | | }
   | |_- not a free function, impl method or static
   |
   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!

warning: `#[should_panic]` only has an effect on functions
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:315:1
   |
LL | #[should_panic]
   | ^^^^^^^^^^^^^^^

warning: `#[ignore]` only has an effect on functions
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:333:1
   |
LL | #[ignore]
   | ^^^^^^^^^

warning: crate-level attribute should be an inner attribute: add an exclamation mark: `#![foo]`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:368:1
   |
LL | #[reexport_test_harness_main = "2900"]
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: crate-level attribute should be an inner attribute: add an exclamation mark: `#![foo]`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:408:1
   |
LL | #[no_std]
   | ^^^^^^^^^

warning: attribute should be applied to a function definition
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:444:1
   |
LL |   #[cold]
   |   ^^^^^^^
...
LL | / mod cold {
LL | |
LL | |
LL | |     mod inner { #![cold] }
...  |
LL | | }
   | |_- not a function definition
   |
   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!

warning: attribute should be applied to a foreign function or static
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:473:1
   |
LL |   #[link_name = "1900"]
   |   ^^^^^^^^^^^^^^^^^^^^^
...
LL | / mod link_name {
LL | |
LL | |
LL | |     #[link_name = "1900"]
...  |
LL | | }
   | |_- not a foreign function or static
   |
   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!

warning: attribute should be applied to a function or static
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:512:1
   |
LL |   #[link_section = "1800"]
   |   ^^^^^^^^^^^^^^^^^^^^^^^^
...
LL | / mod link_section {
LL | |
LL | |
LL | |     mod inner { #![link_section="1800"] }
...  |
LL | | }
   | |_- not a function or static
   |
   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!

warning: attribute should be applied to an `extern` block with non-Rust ABI
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:544:1
   |
LL |   #[link()]
   |   ^^^^^^^^^
...
LL | / mod link {
LL | |
LL | |
LL | |     mod inner { #![link()] }
...  |
LL | | }
   | |_- not an `extern` block
   |
   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!

warning: `#[must_use]` has no effect when applied to a module
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:595:1
   |
LL | #[must_use]
   | ^^^^^^^^^^^

warning: crate-level attribute should be an inner attribute: add an exclamation mark: `#![foo]`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:608:1
   |
LL | #[windows_subsystem = "windows"]
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: crate-level attribute should be an inner attribute: add an exclamation mark: `#![foo]`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:629:1
   |
LL | #[crate_name = "0900"]
   | ^^^^^^^^^^^^^^^^^^^^^^

warning: crate-level attribute should be an inner attribute: add an exclamation mark: `#![foo]`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:648:1
   |
LL | #[crate_type = "0800"]
   | ^^^^^^^^^^^^^^^^^^^^^^

warning: crate-level attribute should be an inner attribute: add an exclamation mark: `#![foo]`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:667:1
   |
LL | #[feature(x0600)]
   | ^^^^^^^^^^^^^^^^^

warning: crate-level attribute should be an inner attribute: add an exclamation mark: `#![foo]`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:687:1
   |
LL | #[no_main]
   | ^^^^^^^^^^

warning: crate-level attribute should be an inner attribute: add an exclamation mark: `#![foo]`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:706:1
   |
LL | #[no_builtins]
   | ^^^^^^^^^^^^^^

warning: crate-level attribute should be an inner attribute: add an exclamation mark: `#![foo]`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:725:1
   |
LL | #[recursion_limit="0200"]
   | ^^^^^^^^^^^^^^^^^^^^^^^^^

warning: crate-level attribute should be an inner attribute: add an exclamation mark: `#![foo]`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:744:1
   |
LL | #[type_length_limit="0100"]
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: `#[should_panic]` only has an effect on functions
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:53:1
   |
LL | #![should_panic]
   | ^^^^^^^^^^^^^^^^

warning: `#[ignore]` only has an effect on functions
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:54:1
   |
LL | #![ignore]
   | ^^^^^^^^^^

warning: `#[proc_macro_derive]` only has an effect on functions
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:60:1
   |
LL | #![proc_macro_derive()]
   | ^^^^^^^^^^^^^^^^^^^^^^^

warning: attribute should be applied to an `extern` block with non-Rust ABI
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:64:1
   |
LL | #![link()]
   | ^^^^^^^^^^ not an `extern` block
   |
   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!

warning: attribute should be applied to a function or static
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:69:1
   |
LL | #![link_section = "1800"]
   | ^^^^^^^^^^^^^^^^^^^^^^^^^ not a function or static
   |
   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!

warning: attribute should be applied to a function definition
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:62:1
   |
LL | #![cold]
   | ^^^^^^^^ cannot be applied to crates
   |
   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!

warning: attribute should be applied to a foreign function or static
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:66:1
   |
LL | #![link_name = "1900"]
   | ^^^^^^^^^^^^^^^^^^^^^^ not a foreign function or static
   |
   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!

warning: `#[must_use]` has no effect when applied to a module
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:72:1
   |
LL | #![must_use]
   | ^^^^^^^^^^^^

warning: `#[macro_use]` only has an effect on `extern crate` and modules
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:176:5
   |
LL |     #[macro_use] fn f() { }
   |     ^^^^^^^^^^^^

warning: `#[macro_use]` only has an effect on `extern crate` and modules
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:179:5
   |
LL |     #[macro_use] struct S;
   |     ^^^^^^^^^^^^

warning: `#[macro_use]` only has an effect on `extern crate` and modules
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:182:5
   |
LL |     #[macro_use] type T = S;
   |     ^^^^^^^^^^^^

warning: `#[macro_use]` only has an effect on `extern crate` and modules
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:185:5
   |
LL |     #[macro_use] impl S { }
   |     ^^^^^^^^^^^^

warning: `#[macro_export]` only has an effect on macro definitions
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:192:17
   |
LL |     mod inner { #![macro_export] }
   |                 ^^^^^^^^^^^^^^^^

warning: `#[macro_export]` only has an effect on macro definitions
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:195:5
   |
LL |     #[macro_export] fn f() { }
   |     ^^^^^^^^^^^^^^^

warning: `#[macro_export]` only has an effect on macro definitions
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:198:5
   |
LL |     #[macro_export] struct S;
   |     ^^^^^^^^^^^^^^^

warning: `#[macro_export]` only has an effect on macro definitions
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:201:5
   |
LL |     #[macro_export] type T = S;
   |     ^^^^^^^^^^^^^^^

warning: `#[macro_export]` only has an effect on macro definitions
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:204:5
   |
LL |     #[macro_export] impl S { }
   |     ^^^^^^^^^^^^^^^

warning: `#[path]` only has an effect on modules
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:244:5
   |
LL |     #[path = "3800"] fn f() { }
   |     ^^^^^^^^^^^^^^^^

warning: `#[path]` only has an effect on modules
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:247:5
   |
LL |     #[path = "3800"]  struct S;
   |     ^^^^^^^^^^^^^^^^

warning: `#[path]` only has an effect on modules
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:250:5
   |
LL |     #[path = "3800"] type T = S;
   |     ^^^^^^^^^^^^^^^^

warning: `#[path]` only has an effect on modules
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:253:5
   |
LL |     #[path = "3800"] impl S { }
   |     ^^^^^^^^^^^^^^^^

warning: `#[automatically_derived]` only has an effect on implementation blocks
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:260:17
   |
LL |     mod inner { #![automatically_derived] }
   |                 ^^^^^^^^^^^^^^^^^^^^^^^^^

warning: `#[automatically_derived]` only has an effect on implementation blocks
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:263:5
   |
LL |     #[automatically_derived] fn f() { }
   |     ^^^^^^^^^^^^^^^^^^^^^^^^

warning: `#[automatically_derived]` only has an effect on implementation blocks
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:266:5
   |
LL |     #[automatically_derived] struct S;
   |     ^^^^^^^^^^^^^^^^^^^^^^^^

warning: `#[automatically_derived]` only has an effect on implementation blocks
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:269:5
   |
LL |     #[automatically_derived] type T = S;
   |     ^^^^^^^^^^^^^^^^^^^^^^^^

warning: attribute should be applied to a free function, impl method or static
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:280:17
   |
LL |     mod inner { #![no_mangle] }
   |     ------------^^^^^^^^^^^^^-- not a free function, impl method or static
   |
   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!

warning: attribute should be applied to a free function, impl method or static
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:287:5
   |
LL |     #[no_mangle] struct S;
   |     ^^^^^^^^^^^^ --------- not a free function, impl method or static
   |
   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!

warning: attribute should be applied to a free function, impl method or static
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:292:5
   |
LL |     #[no_mangle] type T = S;
   |     ^^^^^^^^^^^^ ----------- not a free function, impl method or static
   |
   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!

warning: attribute should be applied to a free function, impl method or static
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:297:5
   |
LL |     #[no_mangle] impl S { }
   |     ^^^^^^^^^^^^ ---------- not a free function, impl method or static
   |
   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!

warning: attribute should be applied to a free function, impl method or static
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:303:9
   |
LL |         #[no_mangle] fn foo();
   |         ^^^^^^^^^^^^ --------- not a free function, impl method or static
   |
   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!

warning: attribute should be applied to a free function, impl method or static
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:308:9
   |
LL |         #[no_mangle] fn bar() {}
   |         ^^^^^^^^^^^^ ----------- not a free function, impl method or static
   |
   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!

warning: `#[should_panic]` only has an effect on functions
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:318:17
   |
LL |     mod inner { #![should_panic] }
   |                 ^^^^^^^^^^^^^^^^

warning: `#[should_panic]` only has an effect on functions
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:323:5
   |
LL |     #[should_panic] struct S;
   |     ^^^^^^^^^^^^^^^

warning: `#[should_panic]` only has an effect on functions
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:326:5
   |
LL |     #[should_panic] type T = S;
   |     ^^^^^^^^^^^^^^^

warning: `#[should_panic]` only has an effect on functions
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:329:5
   |
LL |     #[should_panic] impl S { }
   |     ^^^^^^^^^^^^^^^

warning: `#[ignore]` only has an effect on functions
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:336:17
   |
LL |     mod inner { #![ignore] }
   |                 ^^^^^^^^^^

warning: `#[ignore]` only has an effect on functions
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:341:5
   |
LL |     #[ignore] struct S;
   |     ^^^^^^^^^

warning: `#[ignore]` only has an effect on functions
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:344:5
   |
LL |     #[ignore] type T = S;
   |     ^^^^^^^^^

warning: `#[ignore]` only has an effect on functions
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:347:5
   |
LL |     #[ignore] impl S { }
   |     ^^^^^^^^^

warning: `#[no_implicit_prelude]` only has an effect on modules
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:355:5
   |
LL |     #[no_implicit_prelude] fn f() { }
   |     ^^^^^^^^^^^^^^^^^^^^^^

warning: `#[no_implicit_prelude]` only has an effect on modules
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:358:5
   |
LL |     #[no_implicit_prelude] struct S;
   |     ^^^^^^^^^^^^^^^^^^^^^^

warning: `#[no_implicit_prelude]` only has an effect on modules
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:361:5
   |
LL |     #[no_implicit_prelude] type T = S;
   |     ^^^^^^^^^^^^^^^^^^^^^^

warning: `#[no_implicit_prelude]` only has an effect on modules
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:364:5
   |
LL |     #[no_implicit_prelude] impl S { }
   |     ^^^^^^^^^^^^^^^^^^^^^^

warning: crate-level attribute should be in the root module
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:371:17
   |
LL |     mod inner { #![reexport_test_harness_main="2900"] }
   |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: crate-level attribute should be an inner attribute: add an exclamation mark: `#![foo]`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:374:5
   |
LL |     #[reexport_test_harness_main = "2900"] fn f() { }
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: crate-level attribute should be an inner attribute: add an exclamation mark: `#![foo]`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:377:5
   |
LL |     #[reexport_test_harness_main = "2900"] struct S;
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: crate-level attribute should be an inner attribute: add an exclamation mark: `#![foo]`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:380:5
   |
LL |     #[reexport_test_harness_main = "2900"] type T = S;
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: crate-level attribute should be an inner attribute: add an exclamation mark: `#![foo]`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:383:5
   |
LL |     #[reexport_test_harness_main = "2900"] impl S { }
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: `#[macro_escape]` only has an effect on `extern crate` and modules
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:395:5
   |
LL |     #[macro_escape] fn f() { }
   |     ^^^^^^^^^^^^^^^

warning: `#[macro_escape]` only has an effect on `extern crate` and modules
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:398:5
   |
LL |     #[macro_escape] struct S;
   |     ^^^^^^^^^^^^^^^

warning: `#[macro_escape]` only has an effect on `extern crate` and modules
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:401:5
   |
LL |     #[macro_escape] type T = S;
   |     ^^^^^^^^^^^^^^^

warning: `#[macro_escape]` only has an effect on `extern crate` and modules
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:404:5
   |
LL |     #[macro_escape] impl S { }
   |     ^^^^^^^^^^^^^^^

warning: crate-level attribute should be in the root module
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:411:17
   |
LL |     mod inner { #![no_std] }
   |                 ^^^^^^^^^^

warning: crate-level attribute should be an inner attribute: add an exclamation mark: `#![foo]`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:414:5
   |
LL |     #[no_std] fn f() { }
   |     ^^^^^^^^^

warning: crate-level attribute should be an inner attribute: add an exclamation mark: `#![foo]`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:417:5
   |
LL |     #[no_std] struct S;
   |     ^^^^^^^^^

warning: crate-level attribute should be an inner attribute: add an exclamation mark: `#![foo]`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:420:5
   |
LL |     #[no_std] type T = S;
   |     ^^^^^^^^^

warning: crate-level attribute should be an inner attribute: add an exclamation mark: `#![foo]`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:423:5
   |
LL |     #[no_std] impl S { }
   |     ^^^^^^^^^

warning: attribute should be applied to a function definition
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:450:17
   |
LL |     mod inner { #![cold] }
   |     ------------^^^^^^^^-- not a function definition
   |
   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!

warning: attribute should be applied to a function definition
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:457:5
   |
LL |     #[cold] struct S;
   |     ^^^^^^^ --------- not a function definition
   |
   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!

warning: attribute should be applied to a function definition
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:462:5
   |
LL |     #[cold] type T = S;
   |     ^^^^^^^ ----------- not a function definition
   |
   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!

warning: attribute should be applied to a function definition
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:467:5
   |
LL |     #[cold] impl S { }
   |     ^^^^^^^ ---------- not a function definition
   |
   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!

warning: attribute should be applied to a foreign function or static
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:479:5
   |
LL |     #[link_name = "1900"]
   |     ^^^^^^^^^^^^^^^^^^^^^
...
LL |     extern "C" { }
   |     -------------- not a foreign function or static
   |
   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
help: try `#[link(name = "1900")]` instead
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:479:5
   |
LL |     #[link_name = "1900"]
   |     ^^^^^^^^^^^^^^^^^^^^^

warning: attribute should be applied to a foreign function or static
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:486:17
   |
LL |     mod inner { #![link_name="1900"] }
   |     ------------^^^^^^^^^^^^^^^^^^^^-- not a foreign function or static
   |
   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!

warning: attribute should be applied to a foreign function or static
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:491:5
   |
LL |     #[link_name = "1900"] fn f() { }
   |     ^^^^^^^^^^^^^^^^^^^^^ ---------- not a foreign function or static
   |
   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!

warning: attribute should be applied to a foreign function or static
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:496:5
   |
LL |     #[link_name = "1900"] struct S;
   |     ^^^^^^^^^^^^^^^^^^^^^ --------- not a foreign function or static
   |
   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!

warning: attribute should be applied to a foreign function or static
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:501:5
   |
LL |     #[link_name = "1900"] type T = S;
   |     ^^^^^^^^^^^^^^^^^^^^^ ----------- not a foreign function or static
   |
   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!

warning: attribute should be applied to a foreign function or static
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:506:5
   |
LL |     #[link_name = "1900"] impl S { }
   |     ^^^^^^^^^^^^^^^^^^^^^ ---------- not a foreign function or static
   |
   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!

warning: attribute should be applied to a function or static
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:518:17
   |
LL |     mod inner { #![link_section="1800"] }
   |     ------------^^^^^^^^^^^^^^^^^^^^^^^-- not a function or static
   |
   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!

warning: attribute should be applied to a function or static
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:525:5
   |
LL |     #[link_section = "1800"] struct S;
   |     ^^^^^^^^^^^^^^^^^^^^^^^^ --------- not a function or static
   |
   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!

warning: attribute should be applied to a function or static
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:530:5
   |
LL |     #[link_section = "1800"] type T = S;
   |     ^^^^^^^^^^^^^^^^^^^^^^^^ ----------- not a function or static
   |
   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!

warning: attribute should be applied to a function or static
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:535:5
   |
LL |     #[link_section = "1800"] impl S { }
   |     ^^^^^^^^^^^^^^^^^^^^^^^^ ---------- not a function or static
   |
   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!

warning: attribute should be applied to an `extern` block with non-Rust ABI
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:550:17
   |
LL |     mod inner { #![link()] }
   |     ------------^^^^^^^^^^-- not an `extern` block
   |
   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!

warning: attribute should be applied to an `extern` block with non-Rust ABI
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:555:5
   |
LL |     #[link()] fn f() { }
   |     ^^^^^^^^^ ---------- not an `extern` block
   |
   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!

warning: attribute should be applied to an `extern` block with non-Rust ABI
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:560:5
   |
LL |     #[link()] struct S;
   |     ^^^^^^^^^ --------- not an `extern` block
   |
   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!

warning: attribute should be applied to an `extern` block with non-Rust ABI
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:565:5
   |
LL |     #[link()] type T = S;
   |     ^^^^^^^^^ ----------- not an `extern` block
   |
   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!

warning: attribute should be applied to an `extern` block with non-Rust ABI
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:570:5
   |
LL |     #[link()] impl S { }
   |     ^^^^^^^^^ ---------- not an `extern` block
   |
   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!

warning: attribute should be applied to an `extern` block with non-Rust ABI
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:575:5
   |
LL |     #[link()] extern "Rust" {}
   |     ^^^^^^^^^
   |
   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!

warning: `#[must_use]` has no effect when applied to a module
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:597:17
   |
LL |     mod inner { #![must_use] }
   |                 ^^^^^^^^^^^^

warning: `#[must_use]` has no effect when applied to a type alias
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:603:5
   |
LL |     #[must_use] type T = S;
   |     ^^^^^^^^^^^

warning: `#[must_use]` has no effect when applied to an implementation block
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:605:5
   |
LL |     #[must_use] impl S { }
   |     ^^^^^^^^^^^

warning: crate-level attribute should be in the root module
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:611:17
   |
LL |     mod inner { #![windows_subsystem="windows"] }
   |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: crate-level attribute should be an inner attribute: add an exclamation mark: `#![foo]`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:614:5
   |
LL |     #[windows_subsystem = "windows"] fn f() { }
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: crate-level attribute should be an inner attribute: add an exclamation mark: `#![foo]`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:617:5
   |
LL |     #[windows_subsystem = "windows"] struct S;
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: crate-level attribute should be an inner attribute: add an exclamation mark: `#![foo]`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:620:5
   |
LL |     #[windows_subsystem = "windows"] type T = S;
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: crate-level attribute should be an inner attribute: add an exclamation mark: `#![foo]`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:623:5
   |
LL |     #[windows_subsystem = "windows"] impl S { }
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: crate-level attribute should be in the root module
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:632:17
   |
LL |     mod inner { #![crate_name="0900"] }
   |                 ^^^^^^^^^^^^^^^^^^^^^

warning: crate-level attribute should be an inner attribute: add an exclamation mark: `#![foo]`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:635:5
   |
LL |     #[crate_name = "0900"] fn f() { }
   |     ^^^^^^^^^^^^^^^^^^^^^^

warning: crate-level attribute should be an inner attribute: add an exclamation mark: `#![foo]`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:638:5
   |
LL |     #[crate_name = "0900"] struct S;
   |     ^^^^^^^^^^^^^^^^^^^^^^

warning: crate-level attribute should be an inner attribute: add an exclamation mark: `#![foo]`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:641:5
   |
LL |     #[crate_name = "0900"] type T = S;
   |     ^^^^^^^^^^^^^^^^^^^^^^

warning: crate-level attribute should be an inner attribute: add an exclamation mark: `#![foo]`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:644:5
   |
LL |     #[crate_name = "0900"] impl S { }
   |     ^^^^^^^^^^^^^^^^^^^^^^

warning: crate-level attribute should be in the root module
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:651:17
   |
LL |     mod inner { #![crate_type="0800"] }
   |                 ^^^^^^^^^^^^^^^^^^^^^

warning: crate-level attribute should be an inner attribute: add an exclamation mark: `#![foo]`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:654:5
   |
LL |     #[crate_type = "0800"] fn f() { }
   |     ^^^^^^^^^^^^^^^^^^^^^^

warning: crate-level attribute should be an inner attribute: add an exclamation mark: `#![foo]`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:657:5
   |
LL |     #[crate_type = "0800"] struct S;
   |     ^^^^^^^^^^^^^^^^^^^^^^

warning: crate-level attribute should be an inner attribute: add an exclamation mark: `#![foo]`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:660:5
   |
LL |     #[crate_type = "0800"] type T = S;
   |     ^^^^^^^^^^^^^^^^^^^^^^

warning: crate-level attribute should be an inner attribute: add an exclamation mark: `#![foo]`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:663:5
   |
LL |     #[crate_type = "0800"] impl S { }
   |     ^^^^^^^^^^^^^^^^^^^^^^

warning: crate-level attribute should be in the root module
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:670:17
   |
LL |     mod inner { #![feature(x0600)] }
   |                 ^^^^^^^^^^^^^^^^^^

warning: crate-level attribute should be an inner attribute: add an exclamation mark: `#![foo]`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:673:5
   |
LL |     #[feature(x0600)] fn f() { }
   |     ^^^^^^^^^^^^^^^^^

warning: crate-level attribute should be an inner attribute: add an exclamation mark: `#![foo]`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:676:5
   |
LL |     #[feature(x0600)] struct S;
   |     ^^^^^^^^^^^^^^^^^

warning: crate-level attribute should be an inner attribute: add an exclamation mark: `#![foo]`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:679:5
   |
LL |     #[feature(x0600)] type T = S;
   |     ^^^^^^^^^^^^^^^^^

warning: crate-level attribute should be an inner attribute: add an exclamation mark: `#![foo]`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:682:5
   |
LL |     #[feature(x0600)] impl S { }
   |     ^^^^^^^^^^^^^^^^^

warning: crate-level attribute should be in the root module
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:690:17
   |
LL |     mod inner { #![no_main] }
   |                 ^^^^^^^^^^^

warning: crate-level attribute should be an inner attribute: add an exclamation mark: `#![foo]`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:693:5
   |
LL |     #[no_main] fn f() { }
   |     ^^^^^^^^^^

warning: crate-level attribute should be an inner attribute: add an exclamation mark: `#![foo]`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:696:5
   |
LL |     #[no_main] struct S;
   |     ^^^^^^^^^^

warning: crate-level attribute should be an inner attribute: add an exclamation mark: `#![foo]`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:699:5
   |
LL |     #[no_main] type T = S;
   |     ^^^^^^^^^^

warning: crate-level attribute should be an inner attribute: add an exclamation mark: `#![foo]`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:702:5
   |
LL |     #[no_main] impl S { }
   |     ^^^^^^^^^^

warning: crate-level attribute should be in the root module
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:709:17
   |
LL |     mod inner { #![no_builtins] }
   |                 ^^^^^^^^^^^^^^^

warning: crate-level attribute should be an inner attribute: add an exclamation mark: `#![foo]`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:712:5
   |
LL |     #[no_builtins] fn f() { }
   |     ^^^^^^^^^^^^^^

warning: crate-level attribute should be an inner attribute: add an exclamation mark: `#![foo]`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:715:5
   |
LL |     #[no_builtins] struct S;
   |     ^^^^^^^^^^^^^^

warning: crate-level attribute should be an inner attribute: add an exclamation mark: `#![foo]`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:718:5
   |
LL |     #[no_builtins] type T = S;
   |     ^^^^^^^^^^^^^^

warning: crate-level attribute should be an inner attribute: add an exclamation mark: `#![foo]`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:721:5
   |
LL |     #[no_builtins] impl S { }
   |     ^^^^^^^^^^^^^^

warning: crate-level attribute should be in the root module
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:728:17
   |
LL |     mod inner { #![recursion_limit="0200"] }
   |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: crate-level attribute should be an inner attribute: add an exclamation mark: `#![foo]`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:731:5
   |
LL |     #[recursion_limit="0200"] fn f() { }
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^

warning: crate-level attribute should be an inner attribute: add an exclamation mark: `#![foo]`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:734:5
   |
LL |     #[recursion_limit="0200"] struct S;
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^

warning: crate-level attribute should be an inner attribute: add an exclamation mark: `#![foo]`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:737:5
   |
LL |     #[recursion_limit="0200"] type T = S;
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^

warning: crate-level attribute should be an inner attribute: add an exclamation mark: `#![foo]`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:740:5
   |
LL |     #[recursion_limit="0200"] impl S { }
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^

warning: crate-level attribute should be in the root module
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:747:17
   |
LL |     mod inner { #![type_length_limit="0100"] }
   |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: crate-level attribute should be an inner attribute: add an exclamation mark: `#![foo]`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:750:5
   |
LL |     #[type_length_limit="0100"] fn f() { }
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: crate-level attribute should be an inner attribute: add an exclamation mark: `#![foo]`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:753:5
   |
LL |     #[type_length_limit="0100"] struct S;
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: crate-level attribute should be an inner attribute: add an exclamation mark: `#![foo]`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:756:5
   |
LL |     #[type_length_limit="0100"] type T = S;
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: crate-level attribute should be an inner attribute: add an exclamation mark: `#![foo]`
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:759:5
   |
LL |     #[type_length_limit="0100"] impl S { }
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: the feature `rust1` has been stable since 1.0.0 and no longer requires an attribute to enable
  --> $DIR/issue-43106-gating-of-builtin-attrs.rs:85:12
   |
LL | #![feature(rust1)]
   |            ^^^^^
   |
   = note: `#[warn(stable_features)]` on by default

warning: 171 warnings emitted

