From: Pierre-Emmanuel Patry <[email protected]>

Fix Rust-GCC/gccrs#4046 where the inline llvm_asm macro parser did not
expect a comma.

gcc/rust/ChangeLog:

        * expand/rust-macro-builtins-asm.cc (parse_llvm_clobbers): Expect a
        comma between clobbers.

Signed-off-by: Pierre-Emmanuel Patry <[email protected]>
---
 gcc/rust/expand/rust-macro-builtins-asm.cc | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/gcc/rust/expand/rust-macro-builtins-asm.cc 
b/gcc/rust/expand/rust-macro-builtins-asm.cc
index 4080a22cfae..6cbcf87ebc9 100644
--- a/gcc/rust/expand/rust-macro-builtins-asm.cc
+++ b/gcc/rust/expand/rust-macro-builtins-asm.cc
@@ -1125,8 +1125,11 @@ parse_llvm_clobbers (LlvmAsmContext &ctx)
        {
          ctx.llvm_asm.get_clobbers ().push_back (
            {strip_double_quotes (token->as_string ()), token->get_locus ()});
+
+         parser.skip_token (STRING_LITERAL);
        }
-      parser.skip_token (STRING_LITERAL);
+
+      parser.maybe_skip_token (COMMA);
       token = parser.peek_current_token ();
     }
 }
-- 
2.50.1

Reply via email to