diff options
author | bors[bot] <26634292+bors[bot]@users.noreply.github.com> | 2021-02-28 12:53:21 +0000 |
---|---|---|
committer | GitHub <[email protected]> | 2021-02-28 12:53:21 +0000 |
commit | 7f57a01b3d524a5ed85a30265b8aee2c81118f15 (patch) | |
tree | 3840422e50aef72a8d81cc5e6856cc403ac439a6 | |
parent | 76404c4ac814bc39e64bc8721dda44e1fac113f4 (diff) | |
parent | 30402beeb200fe85bd7595a6a8e6efdb81ede2b5 (diff) |
Merge #7808
7808: Fix assert split exprs on comma r=edwin0cheng a=edwin0cheng
bors r+
Co-authored-by: Edwin Cheng <[email protected]>
-rw-r--r-- | crates/hir_expand/src/builtin_macro.rs | 19 |
1 files changed, 2 insertions, 17 deletions
diff --git a/crates/hir_expand/src/builtin_macro.rs b/crates/hir_expand/src/builtin_macro.rs index 6fbb9570a..eb57ea7d6 100644 --- a/crates/hir_expand/src/builtin_macro.rs +++ b/crates/hir_expand/src/builtin_macro.rs | |||
@@ -182,25 +182,10 @@ fn assert_expand( | |||
182 | // ```, | 182 | // ```, |
183 | // which is wrong but useful. | 183 | // which is wrong but useful. |
184 | 184 | ||
185 | let mut args = Vec::new(); | 185 | let args = parse_exprs_with_sep(tt, ','); |
186 | let mut current = Vec::new(); | ||
187 | for tt in tt.token_trees.iter().cloned() { | ||
188 | match tt { | ||
189 | tt::TokenTree::Leaf(tt::Leaf::Punct(p)) if p.char == ',' => { | ||
190 | args.push(current); | ||
191 | current = Vec::new(); | ||
192 | } | ||
193 | _ => { | ||
194 | current.push(tt); | ||
195 | } | ||
196 | } | ||
197 | } | ||
198 | if !current.is_empty() { | ||
199 | args.push(current); | ||
200 | } | ||
201 | 186 | ||
202 | let arg_tts = args.into_iter().flat_map(|arg| { | 187 | let arg_tts = args.into_iter().flat_map(|arg| { |
203 | quote! { &(##arg), } | 188 | quote! { &(#arg), } |
204 | }.token_trees).collect::<Vec<_>>(); | 189 | }.token_trees).collect::<Vec<_>>(); |
205 | 190 | ||
206 | let expanded = quote! { | 191 | let expanded = quote! { |