summaryrefslogtreecommitdiffstats
path: root/tests/ui/macros/macro-in-expression-context.stderr
diff options
context:
space:
mode:
Diffstat (limited to 'tests/ui/macros/macro-in-expression-context.stderr')
-rw-r--r--tests/ui/macros/macro-in-expression-context.stderr50
1 files changed, 50 insertions, 0 deletions
diff --git a/tests/ui/macros/macro-in-expression-context.stderr b/tests/ui/macros/macro-in-expression-context.stderr
new file mode 100644
index 000000000..3f492b141
--- /dev/null
+++ b/tests/ui/macros/macro-in-expression-context.stderr
@@ -0,0 +1,50 @@
+error: macro expansion ignores token `assert_eq` and any following
+ --> $DIR/macro-in-expression-context.rs:12:9
+ |
+LL | assert_eq!("B", "B");
+ | ^^^^^^^^^
+...
+LL | foo!()
+ | ------ caused by the macro expansion here
+ |
+ = note: the usage of `foo!` is likely invalid in expression context
+help: you might be missing a semicolon here
+ |
+LL | foo!();
+ | +
+
+warning: trailing semicolon in macro used in expression position
+ --> $DIR/macro-in-expression-context.rs:5:29
+ |
+LL | assert_eq!("A", "A");
+ | ^
+...
+LL | foo!()
+ | ------ in this macro invocation
+ |
+ = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
+ = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
+ = note: macro invocations at the end of a block are treated as expressions
+ = note: to ignore the value produced by the macro, add a semicolon after the invocation of `foo`
+ = note: `#[warn(semicolon_in_expressions_from_macros)]` on by default
+ = note: this warning originates in the macro `foo` (in Nightly builds, run with -Z macro-backtrace for more info)
+
+error: aborting due to previous error; 1 warning emitted
+
+Future incompatibility report: Future breakage diagnostic:
+warning: trailing semicolon in macro used in expression position
+ --> $DIR/macro-in-expression-context.rs:5:29
+ |
+LL | assert_eq!("A", "A");
+ | ^
+...
+LL | foo!()
+ | ------ in this macro invocation
+ |
+ = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
+ = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
+ = note: macro invocations at the end of a block are treated as expressions
+ = note: to ignore the value produced by the macro, add a semicolon after the invocation of `foo`
+ = note: `#[warn(semicolon_in_expressions_from_macros)]` on by default
+ = note: this warning originates in the macro `foo` (in Nightly builds, run with -Z macro-backtrace for more info)
+