| 989 | } |
| 990 | |
| 991 | static unique_ptr<Instr> parse_extractvalue(string_view name) { |
| 992 | auto &type = parse_type(); |
| 993 | auto &val = parse_operand(type); |
| 994 | auto instr = make_unique<ExtractValue>(get_sym_type(), string(name), val); |
| 995 | |
| 996 | while (true) { |
| 997 | if (!tokenizer.consumeIf(COMMA)) |
| 998 | break; |
| 999 | instr->addIdx((unsigned)parse_number()); |
| 1000 | } |
| 1001 | |
| 1002 | return instr; |
| 1003 | } |
| 1004 | |
| 1005 | static unique_ptr<Instr> parse_insertvalue(string_view name) { |
| 1006 | auto &type = parse_type(); |
no test coverage detected