File tree Expand file tree Collapse file tree 3 files changed +32
-6
lines changed Expand file tree Collapse file tree 3 files changed +32
-6
lines changed Original file line number Diff line number Diff line change @@ -419,8 +419,8 @@ rawDecl:
419
419
{
420
420
let r = rr $ loc in
421
421
let lbs = focusLetBindings lbs r in
422
- if q <> Rec && List . length lbs <> 1
423
- then raise_error_text r Fatal_MultipleLetBinding " Unexpected multiple let-binding (Did you forget some rec qualifier ?)" ;
422
+ if q <> Rec && FStarC_List . length lbs > Prims. parse_int " 1 "
423
+ then raise_error_text (fst (nth lbs ( Prims. parse_int " 1 " ))).prange Fatal_MultipleLetBinding " Unexpected multiple let-binding (Did you forget some rec qualifier ?)" ;
424
424
TopLevelLet (q, lbs)
425
425
}
426
426
| VAL c= constant
Original file line number Diff line number Diff line change @@ -359,10 +359,10 @@ mutOrRefQualifier:
359
359
| MUT { MUT }
360
360
| REF { REF }
361
361
362
- typX(X , Y ):
363
- | t= Y { t }
362
+ typX(X ):
363
+ | t= X { t }
364
364
365
- | q= quantifier bs= binders DOT trigger= trigger e= X
365
+ | q= quantifier bs= binders DOT trigger= trigger e= typX( X )
366
366
{
367
367
match bs with
368
368
| [] ->
@@ -373,5 +373,5 @@ typX(X,Y):
373
373
}
374
374
375
375
pulseSLProp:
376
- | p= typX(tmEqWith(appTermNoRecordExp), tmEqWith(appTermNoRecordExp) )
376
+ | p= typX(tmEqWith(appTermNoRecordExp))
377
377
{ p }
Original file line number Diff line number Diff line change
1
+ module QuantifierOps
2
+
3
+ # lang - pulse
4
+ open Pulse.Nolib
5
+
6
+ let ( exists * ) : # a :Type -> ( a -> slprop ) -> slprop = admit ()
7
+ let ( forall + ) : # a :Type -> ( a -> slprop ) -> slprop = admit ()
8
+
9
+ let test =
10
+ forall + ( x : int).
11
+ exists * ( y : int).
12
+ emp
13
+
14
+ let test2 =
15
+ exists * ( y : int).
16
+ forall + ( x : int).
17
+ emp
18
+
19
+ fn def ()
20
+ preserves
21
+ forall + ( x : int).
22
+ exists * ( y : int).
23
+ emp
24
+ {
25
+ ()
26
+ }
You can’t perform that action at this time.
0 commit comments