diff options
Diffstat (limited to 'crates/ra_mbe/src/syntax_bridge.rs')
-rw-r--r-- | crates/ra_mbe/src/syntax_bridge.rs | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/crates/ra_mbe/src/syntax_bridge.rs b/crates/ra_mbe/src/syntax_bridge.rs index c0a3fec35..dce82f33d 100644 --- a/crates/ra_mbe/src/syntax_bridge.rs +++ b/crates/ra_mbe/src/syntax_bridge.rs | |||
@@ -56,8 +56,9 @@ where | |||
56 | if tree_sink.roots.len() != 1 { | 56 | if tree_sink.roots.len() != 1 { |
57 | return Err(ExpandError::ConversionError); | 57 | return Err(ExpandError::ConversionError); |
58 | } | 58 | } |
59 | 59 | //FIXME: would be cool to report errors | |
60 | Ok(tree_sink.inner.finish()) | 60 | let (tree, _errors) = tree_sink.inner.finish(); |
61 | Ok(tree) | ||
61 | } | 62 | } |
62 | 63 | ||
63 | /// Parses the token tree (result of macro expansion) to an expression | 64 | /// Parses the token tree (result of macro expansion) to an expression |
@@ -383,7 +384,7 @@ mod tests { | |||
383 | } | 384 | } |
384 | "#, | 385 | "#, |
385 | ); | 386 | ); |
386 | let expansion = expand(&rules, "literals!(foo)"); | 387 | let expansion = expand(&rules, "literals!(foo);"); |
387 | let buffer = tt::buffer::TokenBuffer::new(&[expansion.clone().into()]); | 388 | let buffer = tt::buffer::TokenBuffer::new(&[expansion.clone().into()]); |
388 | let mut tt_src = SubtreeTokenSource::new(&buffer); | 389 | let mut tt_src = SubtreeTokenSource::new(&buffer); |
389 | let mut tokens = vec![]; | 390 | let mut tokens = vec![]; |
@@ -422,7 +423,7 @@ mod tests { | |||
422 | } | 423 | } |
423 | "#, | 424 | "#, |
424 | ); | 425 | ); |
425 | let expansion = expand(&rules, "stmts!()"); | 426 | let expansion = expand(&rules, "stmts!();"); |
426 | assert!(token_tree_to_expr(&expansion).is_err()); | 427 | assert!(token_tree_to_expr(&expansion).is_err()); |
427 | } | 428 | } |
428 | } | 429 | } |