@@ -55,7 +55,7 @@ DEF_RULE_NC(eval_input_2, and(1), tok(NEWLINE))
5555// varargslist: vfpdef ['=' test] (',' vfpdef ['=' test])* [',' ['*' [vfpdef] (',' vfpdef ['=' test])* [',' '**' vfpdef] | '**' vfpdef]] | '*' [vfpdef] (',' vfpdef ['=' test])* [',' '**' vfpdef] | '**' vfpdef
5656// vfpdef: NAME
5757
58- DEF_RULE_NC (decorator , and (4 ), tok (DEL_AT ), rule (dotted_name ), opt_rule (trailer_paren ), tok (NEWLINE ))
58+ DEF_RULE_NC (decorator , and (4 ), tok (OP_AT ), rule (dotted_name ), opt_rule (trailer_paren ), tok (NEWLINE ))
5959DEF_RULE_NC (decorators , one_or_more , rule (decorator ))
6060DEF_RULE (decorated , c (decorated ), and_ident (2 ), rule (decorators ), rule (decorated_body ))
6161#if MICROPY_PY_ASYNC_AWAIT
@@ -96,7 +96,7 @@ DEF_RULE(simple_stmt_2, c(generic_all_nodes), list_with_end, rule(small_stmt), t
9696// small_stmt: expr_stmt | del_stmt | pass_stmt | flow_stmt | import_stmt | global_stmt | nonlocal_stmt | assert_stmt
9797// expr_stmt: testlist_star_expr (augassign (yield_expr|testlist) | ('=' (yield_expr|testlist_star_expr))*)
9898// testlist_star_expr: (test|star_expr) (',' (test|star_expr))* [',']
99- // augassign: '+=' | '-=' | '*=' | '/=' | '%=' | '&=' | '|=' | '^=' | '<<=' | '>>=' | '**=' | '//='
99+ // augassign: '+=' | '-=' | '*=' | '@=' | ' /=' | '%=' | '&=' | '|=' | '^=' | '<<=' | '>>=' | '**=' | '//='
100100// # For normal assignments, additional restrictions enforced by the interpreter
101101
102102DEF_RULE_NC (small_stmt , or (8 ), rule (del_stmt ), rule (pass_stmt ), rule (flow_stmt ), rule (import_stmt ), rule (global_stmt ), rule (nonlocal_stmt ), rule (assert_stmt ), rule (expr_stmt ))
@@ -108,7 +108,7 @@ DEF_RULE_NC(expr_stmt_assign, and_ident(2), tok(DEL_EQUAL), rule(expr_stmt_6))
108108DEF_RULE_NC (expr_stmt_6 , or (2 ), rule (yield_expr ), rule (testlist_star_expr ))
109109DEF_RULE (testlist_star_expr , c (generic_tuple ), list_with_end , rule (testlist_star_expr_2 ), tok (DEL_COMMA ))
110110DEF_RULE_NC (testlist_star_expr_2 , or (2 ), rule (star_expr ), rule (test ))
111- DEF_RULE_NC (augassign , or (12 ), tok (DEL_PLUS_EQUAL ), tok (DEL_MINUS_EQUAL ), tok (DEL_STAR_EQUAL ), tok (DEL_SLASH_EQUAL ), tok (DEL_PERCENT_EQUAL ), tok (DEL_AMPERSAND_EQUAL ), tok (DEL_PIPE_EQUAL ), tok (DEL_CARET_EQUAL ), tok (DEL_DBL_LESS_EQUAL ), tok (DEL_DBL_MORE_EQUAL ), tok (DEL_DBL_STAR_EQUAL ), tok (DEL_DBL_SLASH_EQUAL ))
111+ DEF_RULE_NC (augassign , or (13 ), tok (DEL_PLUS_EQUAL ), tok (DEL_MINUS_EQUAL ), tok (DEL_STAR_EQUAL ), tok ( DEL_AT_EQUAL ), tok (DEL_SLASH_EQUAL ), tok (DEL_PERCENT_EQUAL ), tok (DEL_AMPERSAND_EQUAL ), tok (DEL_PIPE_EQUAL ), tok (DEL_CARET_EQUAL ), tok (DEL_DBL_LESS_EQUAL ), tok (DEL_DBL_MORE_EQUAL ), tok (DEL_DBL_STAR_EQUAL ), tok (DEL_DBL_SLASH_EQUAL ))
112112
113113// del_stmt: 'del' exprlist
114114// pass_stmt: 'pass'
@@ -226,7 +226,7 @@ DEF_RULE(lambdef_nocond, c(lambdef), and_blank(4), tok(KW_LAMBDA), opt_rule(vara
226226// and_expr: shift_expr ('&' shift_expr)*
227227// shift_expr: arith_expr (('<<'|'>>') arith_expr)*
228228// arith_expr: term (('+'|'-') term)*
229- // term: factor (('*'|'/'
DC35
|'%'|'//') factor)*
229+ // term: factor (('*'|'@'|' /'|'%'|'//') factor)*
230230// factor: ('+'|'-'|'~') factor | power
231231// power: atom_expr ['**' factor]
232232// atom_expr: 'await' atom trailer* | atom trailer*
@@ -249,7 +249,7 @@ DEF_RULE_NC(shift_op, or(2), tok(OP_DBL_LESS), tok(OP_DBL_MORE))
249249DEF_RULE (arith_expr , c (term ), list , rule (term ), rule (arith_op ))
250250DEF_RULE_NC (arith_op , or (2 ), tok (OP_PLUS ), tok (OP_MINUS ))
251251DEF_RULE (term , c (term ), list , rule (factor ), rule (term_op ))
252- DEF_RULE_NC (term_op , or (4 ), tok (OP_STAR ), tok (OP_SLASH ), tok (OP_PERCENT ), tok (OP_DBL_SLASH ))
252+ DEF_RULE_NC (term_op , or (5 ), tok (OP_STAR ), tok ( OP_AT ), tok (OP_SLASH ), tok (OP_PERCENT ), tok (OP_DBL_SLASH ))
253253DEF_RULE_NC (factor , or (2 ), rule (factor_2 ), rule (power ))
254254DEF_RULE (factor_2 , c (factor_2 ), and_ident (2 ), rule (factor_op ), rule (factor ))
255255DEF_RULE_NC (factor_op , or (3 ), tok (OP_PLUS ), tok (OP_MINUS ), tok (OP_TILDE ))
0 commit comments