diff options
Diffstat (limited to 'src/test/ui/feature-gates/issue-43106-gating-of-builtin-attrs-error.rs')
-rw-r--r-- | src/test/ui/feature-gates/issue-43106-gating-of-builtin-attrs-error.rs | 160 |
1 files changed, 0 insertions, 160 deletions
diff --git a/src/test/ui/feature-gates/issue-43106-gating-of-builtin-attrs-error.rs b/src/test/ui/feature-gates/issue-43106-gating-of-builtin-attrs-error.rs deleted file mode 100644 index 1fe133ac2..000000000 --- a/src/test/ui/feature-gates/issue-43106-gating-of-builtin-attrs-error.rs +++ /dev/null @@ -1,160 +0,0 @@ -//~ NOTE: not an `extern crate` item -//~^ NOTE: not a free function, impl method or static -//~^^ NOTE: not a function or closure -// This is testing whether various builtin attributes signals an -// error or warning when put in "weird" places. -// -// (This file sits on its own because it actually signals an error, -// which would mess up the treatment of other cases in -// issue-43106-gating-of-builtin-attrs.rs) - - -#![macro_export] -//~^ ERROR: `macro_export` attribute cannot be used at crate level -#![rustc_main] //~ ERROR: the `#[rustc_main]` attribute is used internally to specify -//~^ ERROR: `rustc_main` attribute cannot be used at crate level -#![start] -//~^ ERROR: `start` attribute cannot be used at crate level -#![repr()] -//~^ ERROR: `repr` attribute cannot be used at crate level -#![path = "3800"] -//~^ ERROR: `path` attribute cannot be used at crate level -#![automatically_derived] -//~^ ERROR: `automatically_derived` attribute cannot be used at crate level -#![no_mangle] -#![no_link] -//~^ ERROR: attribute should be applied to an `extern crate` item -#![export_name = "2200"] -//~^ ERROR: attribute should be applied to a free function, impl method or static -#![inline] -//~^ ERROR: attribute should be applied to function or closure -#[inline] -//~^ ERROR attribute should be applied to function or closure -mod inline { - //~^ NOTE not a function or closure - - mod inner { #![inline] } - //~^ ERROR attribute should be applied to function or closure - //~| NOTE not a function or closure - - #[inline = "2100"] fn f() { } - //~^ ERROR attribute must be of the form - //~| WARN this was previously accepted - //~| NOTE #[deny(ill_formed_attribute_input)]` on by default - //~| NOTE for more information, see issue #57571 <https://github.com/rust-lang/rust/issues/57571> - - #[inline] struct S; - //~^ ERROR attribute should be applied to function or closure - //~| NOTE not a function or closure - - #[inline] type T = S; - //~^ ERROR attribute should be applied to function or closure - //~| NOTE not a function or closure - - #[inline] impl S { } - //~^ ERROR attribute should be applied to function or closure - //~| NOTE not a function or closure -} - -#[no_link] -//~^ ERROR attribute should be applied to an `extern crate` item -mod no_link { - //~^ NOTE not an `extern crate` item - - mod inner { #![no_link] } - //~^ ERROR attribute should be applied to an `extern crate` item - //~| NOTE not an `extern crate` item - - #[no_link] fn f() { } - //~^ ERROR attribute should be applied to an `extern crate` item - //~| NOTE not an `extern crate` item - - #[no_link] struct S; - //~^ ERROR attribute should be applied to an `extern crate` item - //~| NOTE not an `extern crate` item - - #[no_link]type T = S; - //~^ ERROR attribute should be applied to an `extern crate` item - //~| NOTE not an `extern crate` item - - #[no_link] impl S { } - //~^ ERROR attribute should be applied to an `extern crate` item - //~| NOTE not an `extern crate` item -} - -#[export_name = "2200"] -//~^ ERROR attribute should be applied to a free function, impl method or static -mod export_name { - //~^ NOTE not a free function, impl method or static - - mod inner { #![export_name="2200"] } - //~^ ERROR attribute should be applied to a free function, impl method or static - //~| NOTE not a free function, impl method or static - - #[export_name = "2200"] fn f() { } - - #[export_name = "2200"] struct S; - //~^ ERROR attribute should be applied to a free function, impl method or static - //~| NOTE not a free function, impl method or static - - #[export_name = "2200"] type T = S; - //~^ ERROR attribute should be applied to a free function, impl method or static - //~| NOTE not a free function, impl method or static - - #[export_name = "2200"] impl S { } - //~^ ERROR attribute should be applied to a free function, impl method or static - //~| NOTE not a free function, impl method or static - - trait Tr { - #[export_name = "2200"] fn foo(); - //~^ ERROR attribute should be applied to a free function, impl method or static - //~| NOTE not a free function, impl method or static - - #[export_name = "2200"] fn bar() {} - //~^ ERROR attribute should be applied to a free function, impl method or static - //~| NOTE not a free function, impl method or static - } -} - -#[start] -//~^ ERROR: `start` attribute can only be used on functions -mod start { - mod inner { #![start] } - //~^ ERROR: `start` attribute can only be used on functions - - // for `fn f()` case, see feature-gate-start.rs - - #[start] struct S; - //~^ ERROR: `start` attribute can only be used on functions - - #[start] type T = S; - //~^ ERROR: `start` attribute can only be used on functions - - #[start] impl S { } - //~^ ERROR: `start` attribute can only be used on functions -} - -#[repr(C)] -//~^ ERROR: attribute should be applied to a struct, enum, or union -mod repr { -//~^ NOTE not a struct, enum, or union - mod inner { #![repr(C)] } - //~^ ERROR: attribute should be applied to a struct, enum, or union - //~| NOTE not a struct, enum, or union - - #[repr(C)] fn f() { } - //~^ ERROR: attribute should be applied to a struct, enum, or union - //~| NOTE not a struct, enum, or union - - struct S; - - #[repr(C)] type T = S; - //~^ ERROR: attribute should be applied to a struct, enum, or union - //~| NOTE not a struct, enum, or union - - #[repr(C)] impl S { } - //~^ ERROR: attribute should be applied to a struct, enum, or union - //~| NOTE not a struct, enum, or union -} - -fn main() {} |