about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--src/libsyntax/parse/parser.rs3
-rw-r--r--src/test/run-pass/simd-intrinsic-generic-cast.rs2
2 files changed, 3 insertions, 2 deletions
diff --git a/src/libsyntax/parse/parser.rs b/src/libsyntax/parse/parser.rs
index b2cbe252344..454320337ed 100644
--- a/src/libsyntax/parse/parser.rs
+++ b/src/libsyntax/parse/parser.rs
@@ -4066,7 +4066,8 @@ impl<'a> Parser<'a> {
     /// (or the lack thereof) -- c.f. `parse_stmt`.
     pub fn finish_parsing_statement(&mut self, mut stmt: Stmt) -> PResult<'a, Stmt> {
         if let StmtKind::Mac(mac) = stmt.node {
-            if mac.1 != MacStmtStyle::NoBraces || self.token == token::Semi {
+            if mac.1 != MacStmtStyle::NoBraces ||
+               self.token == token::Semi || self.token == token::Eof {
                 stmt.node = StmtKind::Mac(mac);
             } else {
                 let (mac, _style, attrs) = mac.unwrap();
diff --git a/src/test/run-pass/simd-intrinsic-generic-cast.rs b/src/test/run-pass/simd-intrinsic-generic-cast.rs
index 74c0f39e2e3..a20dd3ef72a 100644
--- a/src/test/run-pass/simd-intrinsic-generic-cast.rs
+++ b/src/test/run-pass/simd-intrinsic-generic-cast.rs
@@ -113,7 +113,7 @@ fn main() {
         // product macro
         ($from: ident $(, $from_: ident)*: $($to: ident),*) => {
             fn $from() { unsafe { $( test!($from, $to); )* } }
-            tests!($($from_),*: $($to),*);
+            tests!($($from_),*: $($to),*)
         };
         ($($types: ident),*) => {{
             tests!($($types),* : $($types),*);