From a367cec6e355a0b17d611acba5577ee72c228971 Mon Sep 17 00:00:00 2001 From: Andy Russell Date: Mon, 3 Dec 2018 20:45:25 -0500 Subject: emit error with span for empty asserts Fixes #55547. --- src/libsyntax_ext/assert.rs | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'src/libsyntax_ext/assert.rs') diff --git a/src/libsyntax_ext/assert.rs b/src/libsyntax_ext/assert.rs index e3bd2ca0131..a2384b59048 100644 --- a/src/libsyntax_ext/assert.rs +++ b/src/libsyntax_ext/assert.rs @@ -24,6 +24,14 @@ pub fn expand_assert<'cx>( tts: &[TokenTree], ) -> Box { let mut parser = cx.new_parser_from_tts(tts); + + if parser.token == token::Eof { + cx.struct_span_err(sp, "macro requires a boolean expression as an argument") + .span_label(sp, "boolean expression required") + .emit(); + return DummyResult::expr(sp); + } + let cond_expr = panictry!(parser.parse_expr()); let custom_msg_args = if parser.eat(&token::Comma) { let ts = parser.parse_tokens(); -- cgit 1.4.1-3-g733a5