diff options
author | jjasmine <tanghocle456@gmail.com> | 2024-06-16 21:23:21 -0700 |
---|---|---|
committer | CohenArthur <arthur.cohen@embecosm.com> | 2024-06-28 09:59:34 +0000 |
commit | 12cc79fe8fe24f69a92e5b24918dd64ebecf1821 (patch) | |
tree | 0a587f36a95968c139642eb3f40cf3738bc399c1 /gcc/rust/expand/rust-macro-builtins-asm.h | |
parent | 76ba4a65809d2c8d1b8dac97585676c5ce22f447 (diff) | |
download | gcc-12cc79fe8fe24f69a92e5b24918dd64ebecf1821.zip gcc-12cc79fe8fe24f69a92e5b24918dd64ebecf1821.tar.gz gcc-12cc79fe8fe24f69a92e5b24918dd64ebecf1821.tar.bz2 |
Added a test that is expected to fail
gcc/rust/ChangeLog:
* expand/rust-macro-builtins-asm.cc (parse_clobber_abi):
added comments
(parse_options): Likewise
(parse_asm_arg): Likewise
(parse_asm): Likewise
* expand/rust-macro-builtins-asm.h: Likewise
gcc/testsuite/ChangeLog:
* rust/compile/inline_asm_illegal_options.rs: new test
* rust/compile/inline_asm_illegal_operands.rs: New test.
This is expected to fail but we couldn't resolve parse_expr()'s
general functionality yet
Signed-off-by: badumbatish <tanghocle456@gmail.com>
Diffstat (limited to 'gcc/rust/expand/rust-macro-builtins-asm.h')
-rw-r--r-- | gcc/rust/expand/rust-macro-builtins-asm.h | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/gcc/rust/expand/rust-macro-builtins-asm.h b/gcc/rust/expand/rust-macro-builtins-asm.h index 201f807..32a8d0b 100644 --- a/gcc/rust/expand/rust-macro-builtins-asm.h +++ b/gcc/rust/expand/rust-macro-builtins-asm.h @@ -6,11 +6,19 @@ #include "rust-macro-invoc-lexer.h" #include "rust/ast/rust-expr.h" namespace Rust { -// All the operands are called asm_args in rustc asm.rs, we create a struct that -// can store all of these AsmArgs This replaces the phase where we have to parse -// all operands. + enum InlineAsmParseError { + // Enum for InlineAsmParseError + + // Currently with two error, COMMITTED AND NONCOMMITTED (to a token), + // which directs the parser to either bubbles the error up, or keep on going + // (vertical or horizontal) + + // COMMITTED can be use as a way for parser to bubble up + // after it has exhausted its search space despite it not having committed to + // any token + COMMITTED, NONCOMMITED, }; |