@@ -138,7 +138,7 @@ type tc_constraint = {
138
138
% token BACKTICK UNIV_HASH
139
139
% token BACKTICK_PERC
140
140
141
- % token< string > OPPREFIX OPINFIX0a OPINFIX0b OPINFIX0c OPINFIX0d OPINFIX1 OPINFIX2 OPINFIX3 OPINFIX4
141
+ % token< string > OPPREFIX OPINFIX0a OPINFIX0b OPINFIX0c OPINFIX0d OPINFIX1 OPINFIX2 OPINFIX3L OPINFIX3R OPINFIX4
142
142
% token< string > OP_MIXFIX_ASSIGNMENT OP_MIXFIX_ACCESS
143
143
% token< string * string * Lexing. position * FStarC_Sedlexing. snap> BLOB
144
144
% token< string * string * Lexing. position * FStarC_Sedlexing. snap> USE_LANG_BLOB
@@ -166,7 +166,8 @@ type tc_constraint = {
166
166
% right PIPE_LEFT
167
167
% right OPINFIX1
168
168
% left OPINFIX2 MINUS QUOTE
169
- % left OPINFIX3
169
+ % left OPINFIX3L
170
+ % right OPINFIX3R
170
171
% left BACKTICK
171
172
% right OPINFIX4
172
173
@@ -1346,12 +1347,14 @@ tmNoEqNoRecordWith(X):
1346
1347
in
1347
1348
mk_term (Sum (dom , res )) (rr2 $ loc(e1 ) $ loc(e2 )) Type_level
1348
1349
}
1349
- | e1= tmNoEqWith(X ) op= OPINFIX3 e2= tmNoEqWith(X )
1350
+
1351
+ | e1= tmNoEqWith(X ) op= OPINFIX3L e2= tmNoEqWith(X )
1352
+ | e1= tmNoEqWith(X ) op= OPINFIX3R e2= tmNoEqWith(X )
1353
+ | e1= tmNoEqWith(X ) op= OPINFIX4 e2= tmNoEqWith(X )
1350
1354
{ mk_term (Op (mk_ident(op, rr $ loc(op)), [e1; e2])) (rr $ loc) Un }
1355
+
1351
1356
| e1= tmNoEqWith(X ) BACKTICK op= tmNoEqWith(X ) BACKTICK e2= tmNoEqWith(X )
1352
1357
{ mkApp op [ e1, Infix ; e2, Nothing ] (rr $ loc) }
1353
- | e1= tmNoEqWith(X ) op= OPINFIX4 e2= tmNoEqWith(X )
1354
- { mk_term (Op (mk_ident(op, rr $ loc(op)), [e1; e2])) (rr $ loc) Un }
1355
1358
| BACKTICK_PERC e= atomicTerm
1356
1359
{ mk_term (VQuote e) (rr $ loc) Un }
1357
1360
| op= TILDE e= atomicTerm
@@ -1370,7 +1373,8 @@ binop_name:
1370
1373
| o= OPINFIX0d { mk_ident (o, rr $ loc) }
1371
1374
| o= OPINFIX1 { mk_ident (o, rr $ loc) }
1372
1375
| o= OPINFIX2 { mk_ident (o, rr $ loc) }
1373
- | o= OPINFIX3 { mk_ident (o, rr $ loc) }
1376
+ | o= OPINFIX3L { mk_ident (o, rr $ loc) }
1377
+ | o= OPINFIX3R { mk_ident (o, rr $ loc) }
1374
1378
| o= OPINFIX4 { mk_ident (o, rr $ loc) }
1375
1379
| o= IMPLIES { mk_ident (" ==>" , rr $ loc) }
1376
1380
| o= CONJUNCTION { mk_ident (" /\\ " , rr $ loc) }
0 commit comments