about summary refs log tree commit diff
path: root/tests/ui/macros/assert-trailing-junk.rs
diff options
context:
space:
mode:
Diffstat (limited to 'tests/ui/macros/assert-trailing-junk.rs')
-rw-r--r--tests/ui/macros/assert-trailing-junk.rs27
1 files changed, 27 insertions, 0 deletions
diff --git a/tests/ui/macros/assert-trailing-junk.rs b/tests/ui/macros/assert-trailing-junk.rs
new file mode 100644
index 00000000000..da725e19e2a
--- /dev/null
+++ b/tests/ui/macros/assert-trailing-junk.rs
@@ -0,0 +1,27 @@
+// revisions: with-generic-asset without-generic-asset
+// [with-generic-asset] compile-flags: --cfg feature="generic_assert"
+
+// Ensure assert macro does not ignore trailing garbage.
+//
+// See https://github.com/rust-lang/rust/issues/60024 for details.
+
+fn main() {
+    assert!(true some extra junk, "whatever");
+    //~^ ERROR expected one of
+
+    assert!(true some extra junk);
+    //~^ ERROR expected one of
+
+    assert!(true, "whatever" blah);
+    //~^ ERROR no rules expected
+
+    assert!(true "whatever" blah);
+    //~^ ERROR unexpected string literal
+    //~^^ ERROR no rules expected
+
+    assert!(true;);
+    //~^ ERROR macro requires an expression
+
+    assert!(false || true "error message");
+    //~^ ERROR unexpected string literal
+}