diff options
Diffstat (limited to 'src/test/ui/lint/lint-forbid-internal-unsafe.rs')
-rw-r--r-- | src/test/ui/lint/lint-forbid-internal-unsafe.rs | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/src/test/ui/lint/lint-forbid-internal-unsafe.rs b/src/test/ui/lint/lint-forbid-internal-unsafe.rs new file mode 100644 index 000000000..3ee55ba96 --- /dev/null +++ b/src/test/ui/lint/lint-forbid-internal-unsafe.rs @@ -0,0 +1,17 @@ +#![forbid(unsafe_code)] +#![feature(allow_internal_unsafe)] + +#[allow_internal_unsafe] +//~^ ERROR: `allow_internal_unsafe` allows defining +macro_rules! evil { + ($e:expr) => { + unsafe { + $e + } + } +} + +fn main() { + println!("{}", evil!(*(0 as *const u8))); + //~^ WARNING dereferencing a null pointer +} |