Augment some tests involving attributes.
This shows places where the use of `name_or_empty` causes problems, i.e. we print empty identifiers in error messages: ``` error: unrecognized field name `` error: `` isn't a valid `#[macro_export]` argument `#[no_sanitize()]` should be applied to a function ``` (The last one is about an attribute `#[no_sanitize("address")]`.) The next commit will fix these.
This commit is contained in:
parent
400e8e5dc8
commit
7e1f2f9c54
6 changed files with 46 additions and 3 deletions
|
@ -52,3 +52,6 @@ type TestAbiNeSign = (fn(i32), fn(u32)); //~ ERROR: ABIs are not compatible
|
|||
|
||||
#[rustc_abi(assert_eq)]
|
||||
type TestAbiEqNonsense = (fn((str, str)), fn((str, str))); //~ ERROR: cannot be known at compilation time
|
||||
|
||||
#[rustc_abi("assert_eq")] //~ ERROR unrecognized field name ``
|
||||
type Bad = u32;
|
||||
|
|
|
@ -906,6 +906,12 @@ LL | type TestAbiEqNonsense = (fn((str, str)), fn((str, str)));
|
|||
= help: the trait `Sized` is not implemented for `str`
|
||||
= note: only the last element of a tuple may have a dynamically sized type
|
||||
|
||||
error: unrecognized field name ``
|
||||
--> $DIR/debug.rs:56:13
|
||||
|
|
||||
LL | #[rustc_abi("assert_eq")]
|
||||
| ^^^^^^^^^^^
|
||||
|
||||
error: `#[rustc_abi]` can only be applied to function items, type aliases, and associated functions
|
||||
--> $DIR/debug.rs:29:5
|
||||
|
|
||||
|
@ -1004,6 +1010,6 @@ error: fn_abi_of(assoc_test) = FnAbi {
|
|||
LL | fn assoc_test(&self) { }
|
||||
| ^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
error: aborting due to 11 previous errors
|
||||
error: aborting due to 12 previous errors
|
||||
|
||||
For more information about this error, try `rustc --explain E0277`.
|
||||
|
|
|
@ -16,5 +16,11 @@ error: `not_local_inner_macros` isn't a valid `#[macro_export]` argument
|
|||
LL | #[macro_export(not_local_inner_macros)]
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
error: aborting due to 2 previous errors
|
||||
error: `` isn't a valid `#[macro_export]` argument
|
||||
--> $DIR/invalid_macro_export_argument.rs:33:16
|
||||
|
|
||||
LL | #[macro_export("blah")]
|
||||
| ^^^^^^
|
||||
|
||||
error: aborting due to 3 previous errors
|
||||
|
||||
|
|
|
@ -30,4 +30,10 @@ macro_rules! e {
|
|||
() => ()
|
||||
}
|
||||
|
||||
#[macro_export("blah")]
|
||||
//[deny]~^ ERROR `` isn't a valid `#[macro_export]` argument
|
||||
macro_rules! f {
|
||||
() => ()
|
||||
}
|
||||
|
||||
fn main() {}
|
||||
|
|
|
@ -38,3 +38,8 @@ fn valid() {}
|
|||
|
||||
#[no_sanitize(address)]
|
||||
static VALID : i32 = 0;
|
||||
|
||||
#[no_sanitize("address")]
|
||||
//~^ ERROR `#[no_sanitize()]` should be applied to a function
|
||||
//~| ERROR invalid argument for `no_sanitize`
|
||||
static VALID2 : i32 = 0;
|
||||
|
|
|
@ -59,5 +59,22 @@ LL | #[no_sanitize(address, memory)]
|
|||
LL | static INVALID : i32 = 0;
|
||||
| ------------------------- not a function
|
||||
|
||||
error: aborting due to 7 previous errors
|
||||
error: `#[no_sanitize()]` should be applied to a function
|
||||
--> $DIR/no-sanitize.rs:42:15
|
||||
|
|
||||
LL | #[no_sanitize("address")]
|
||||
| ^^^^^^^^^
|
||||
...
|
||||
LL | static VALID2 : i32 = 0;
|
||||
| ------------------------ not a function
|
||||
|
||||
error: invalid argument for `no_sanitize`
|
||||
--> $DIR/no-sanitize.rs:42:15
|
||||
|
|
||||
LL | #[no_sanitize("address")]
|
||||
| ^^^^^^^^^
|
||||
|
|
||||
= note: expected one of: `address`, `cfi`, `hwaddress`, `kcfi`, `memory`, `memtag`, `shadow-call-stack`, or `thread`
|
||||
|
||||
error: aborting due to 9 previous errors
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue