summaryrefslogtreecommitdiff
path: root/tests/fstar
diff options
context:
space:
mode:
authorSon Ho2024-06-05 11:17:37 +0200
committerSon Ho2024-06-05 11:17:37 +0200
commit967c1aa8bd47e76905baeda5b9d41167af664942 (patch)
tree2f8b8bd9d6ddef3e56d3c840690e94d9322a963a /tests/fstar
parent7e50cacd736fc85930bd22689fb7e2b61ddda794 (diff)
parentc708fc2556806abc95cd2ca173a94a5fb49d034d (diff)
Merge branch 'main' into son/clean-synthesis
Diffstat (limited to '')
-rw-r--r--tests/fstar/arrays/Arrays.Funs.fst2
-rw-r--r--tests/fstar/hashmap/Hashmap.Funs.fst32
-rw-r--r--tests/fstar/misc/External.Funs.fst2
-rw-r--r--tests/fstar/misc/External.FunsExternal.fsti4
-rw-r--r--tests/fstar/misc/External.Types.fst2
-rw-r--r--tests/fstar/misc/External.TypesExternal.fsti2
-rw-r--r--tests/fstar/misc/NoNestedBorrows.fst172
-rw-r--r--tests/fstar/misc/Paper.fst14
-rw-r--r--tests/fstar/traits/Traits.fst2
9 files changed, 114 insertions, 118 deletions
diff --git a/tests/fstar/arrays/Arrays.Funs.fst b/tests/fstar/arrays/Arrays.Funs.fst
index 26a695bb..a4f2e19f 100644
--- a/tests/fstar/arrays/Arrays.Funs.fst
+++ b/tests/fstar/arrays/Arrays.Funs.fst
@@ -348,7 +348,7 @@ let rec sum2_loop
let sum2 (s : slice u32) (s2 : slice u32) : result u32 =
let i = slice_len u32 s in
let i1 = slice_len u32 s2 in
- if not (i = i1) then Fail Failure else sum2_loop s s2 0 0
+ if i = i1 then sum2_loop s s2 0 0 else Fail Failure
(** [arrays::f0]:
Source: 'tests/src/arrays.rs', lines 266:0-266:11 *)
diff --git a/tests/fstar/hashmap/Hashmap.Funs.fst b/tests/fstar/hashmap/Hashmap.Funs.fst
index 0e991720..fb77c7ef 100644
--- a/tests/fstar/hashmap/Hashmap.Funs.fst
+++ b/tests/fstar/hashmap/Hashmap.Funs.fst
@@ -393,31 +393,31 @@ let test1 : result unit =
let* hm3 = hashMap_insert u64 hm2 1024 138 in
let* hm4 = hashMap_insert u64 hm3 1056 256 in
let* i = hashMap_get u64 hm4 128 in
- if not (i = 18)
- then Fail Failure
- else
+ if i = 18
+ then
let* (_, get_mut_back) = hashMap_get_mut u64 hm4 1024 in
let* hm5 = get_mut_back 56 in
let* i1 = hashMap_get u64 hm5 1024 in
- if not (i1 = 56)
- then Fail Failure
- else
+ if i1 = 56
+ then
let* (x, hm6) = hashMap_remove u64 hm5 1024 in
begin match x with
| None -> Fail Failure
| Some x1 ->
- if not (x1 = 56)
- then Fail Failure
- else
+ if x1 = 56
+ then
let* i2 = hashMap_get u64 hm6 0 in
- if not (i2 = 42)
- then Fail Failure
- else
+ if i2 = 42
+ then
let* i3 = hashMap_get u64 hm6 128 in
- if not (i3 = 18)
- then Fail Failure
- else
+ if i3 = 18
+ then
let* i4 = hashMap_get u64 hm6 1056 in
- if not (i4 = 256) then Fail Failure else Ok ()
+ if i4 = 256 then Ok () else Fail Failure
+ else Fail Failure
+ else Fail Failure
+ else Fail Failure
end
+ else Fail Failure
+ else Fail Failure
diff --git a/tests/fstar/misc/External.Funs.fst b/tests/fstar/misc/External.Funs.fst
index f5e8d4b7..bc68426a 100644
--- a/tests/fstar/misc/External.Funs.fst
+++ b/tests/fstar/misc/External.Funs.fst
@@ -8,7 +8,7 @@ include External.FunsExternal
#set-options "--z3rlimit 50 --fuel 1 --ifuel 1"
(** Trait implementation: [core::marker::{(core::marker::Copy for u32)#61}]
- Source: '/rustc/ad963232d9b987d66a6f8e6ec4141f672b8b9900/library/core/src/marker.rs', lines 47:29-47:65
+ Source: '/rustc/65ea825f4021eaf77f1b25139969712d65b435a4/library/core/src/marker.rs', lines 47:29-47:65
Name pattern: core::marker::Copy<u32> *)
let core_marker_CopyU32 : core_marker_Copy_t u32 = {
cloneCloneInst = core_clone_CloneU32;
diff --git a/tests/fstar/misc/External.FunsExternal.fsti b/tests/fstar/misc/External.FunsExternal.fsti
index f005b657..62f063ea 100644
--- a/tests/fstar/misc/External.FunsExternal.fsti
+++ b/tests/fstar/misc/External.FunsExternal.fsti
@@ -7,14 +7,14 @@ include External.Types
#set-options "--z3rlimit 50 --fuel 1 --ifuel 1"
(** [core::cell::{core::cell::Cell<T>#10}::get]:
- Source: '/rustc/ad963232d9b987d66a6f8e6ec4141f672b8b9900/library/core/src/cell.rs', lines 497:4-497:26
+ Source: '/rustc/65ea825f4021eaf77f1b25139969712d65b435a4/library/core/src/cell.rs', lines 510:4-510:26
Name pattern: core::cell::{core::cell::Cell<@T>}::get *)
val core_cell_Cell_get
(t : Type0) (markerCopyInst : core_marker_Copy_t t) :
core_cell_Cell_t t -> state -> result (state & t)
(** [core::cell::{core::cell::Cell<T>#11}::get_mut]:
- Source: '/rustc/ad963232d9b987d66a6f8e6ec4141f672b8b9900/library/core/src/cell.rs', lines 574:4-574:39
+ Source: '/rustc/65ea825f4021eaf77f1b25139969712d65b435a4/library/core/src/cell.rs', lines 588:4-588:39
Name pattern: core::cell::{core::cell::Cell<@T>}::get_mut *)
val core_cell_Cell_get_mut
(t : Type0) :
diff --git a/tests/fstar/misc/External.Types.fst b/tests/fstar/misc/External.Types.fst
index 211dfda7..6e58cfe4 100644
--- a/tests/fstar/misc/External.Types.fst
+++ b/tests/fstar/misc/External.Types.fst
@@ -7,7 +7,7 @@ include External.TypesExternal
#set-options "--z3rlimit 50 --fuel 1 --ifuel 1"
(** Trait declaration: [core::marker::Copy]
- Source: '/rustc/ad963232d9b987d66a6f8e6ec4141f672b8b9900/library/core/src/marker.rs', lines 465:0-465:21
+ Source: '/rustc/65ea825f4021eaf77f1b25139969712d65b435a4/library/core/src/marker.rs', lines 465:0-465:21
Name pattern: core::marker::Copy *)
noeq type core_marker_Copy_t (self : Type0) = {
cloneCloneInst : core_clone_Clone self;
diff --git a/tests/fstar/misc/External.TypesExternal.fsti b/tests/fstar/misc/External.TypesExternal.fsti
index 188eb8e8..8a6a5ddd 100644
--- a/tests/fstar/misc/External.TypesExternal.fsti
+++ b/tests/fstar/misc/External.TypesExternal.fsti
@@ -6,7 +6,7 @@ open Primitives
#set-options "--z3rlimit 50 --fuel 1 --ifuel 1"
(** [core::cell::Cell]
- Source: '/rustc/ad963232d9b987d66a6f8e6ec4141f672b8b9900/library/core/src/cell.rs', lines 293:0-293:26
+ Source: '/rustc/65ea825f4021eaf77f1b25139969712d65b435a4/library/core/src/cell.rs', lines 294:0-294:26
Name pattern: core::cell::Cell *)
val core_cell_Cell_t (t : Type0) : Type0
diff --git a/tests/fstar/misc/NoNestedBorrows.fst b/tests/fstar/misc/NoNestedBorrows.fst
index 7e333b56..a5ba31bc 100644
--- a/tests/fstar/misc/NoNestedBorrows.fst
+++ b/tests/fstar/misc/NoNestedBorrows.fst
@@ -71,7 +71,7 @@ let test3 : result unit =
let* x = get_max 4 3 in
let* y = get_max 10 11 in
let* z = u32_add x y in
- if not (z = 15) then Fail Failure else Ok ()
+ if z = 15 then Ok () else Fail Failure
(** Unit test for [no_nested_borrows::test3] *)
let _ = assert_norm (test3 = Ok ())
@@ -79,7 +79,7 @@ let _ = assert_norm (test3 = Ok ())
(** [no_nested_borrows::test_neg1]:
Source: 'tests/src/no_nested_borrows.rs', lines 90:0-90:18 *)
let test_neg1 : result unit =
- let* y = i32_neg 3 in if not (y = -3) then Fail Failure else Ok ()
+ let* y = i32_neg 3 in if y = -3 then Ok () else Fail Failure
(** Unit test for [no_nested_borrows::test_neg1] *)
let _ = assert_norm (test_neg1 = Ok ())
@@ -87,7 +87,7 @@ let _ = assert_norm (test_neg1 = Ok ())
(** [no_nested_borrows::refs_test1]:
Source: 'tests/src/no_nested_borrows.rs', lines 97:0-97:19 *)
let refs_test1 : result unit =
- if not (1 = 1) then Fail Failure else Ok ()
+ if 1 = 1 then Ok () else Fail Failure
(** Unit test for [no_nested_borrows::refs_test1] *)
let _ = assert_norm (refs_test1 = Ok ())
@@ -95,15 +95,12 @@ let _ = assert_norm (refs_test1 = Ok ())
(** [no_nested_borrows::refs_test2]:
Source: 'tests/src/no_nested_borrows.rs', lines 108:0-108:19 *)
let refs_test2 : result unit =
- if not (2 = 2)
- then Fail Failure
- else
- if not (0 = 0)
- then Fail Failure
- else
- if not (2 = 2)
- then Fail Failure
- else if not (2 = 2) then Fail Failure else Ok ()
+ if 2 = 2
+ then
+ if 0 = 0
+ then if 2 = 2 then if 2 = 2 then Ok () else Fail Failure else Fail Failure
+ else Fail Failure
+ else Fail Failure
(** Unit test for [no_nested_borrows::refs_test2] *)
let _ = assert_norm (refs_test2 = Ok ())
@@ -122,7 +119,7 @@ let test_box1 : result unit =
let* (_, deref_mut_back) = alloc_boxed_Box_deref_mut i32 0 in
let* b = deref_mut_back 1 in
let* x = alloc_boxed_Box_deref i32 b in
- if not (x = 1) then Fail Failure else Ok ()
+ if x = 1 then Ok () else Fail Failure
(** Unit test for [no_nested_borrows::test_box1] *)
let _ = assert_norm (test_box1 = Ok ())
@@ -145,7 +142,7 @@ let test_panic (b : bool) : result unit =
(** [no_nested_borrows::test_copy_int]:
Source: 'tests/src/no_nested_borrows.rs', lines 160:0-160:22 *)
let test_copy_int : result unit =
- let* y = copy_int 0 in if not (0 = y) then Fail Failure else Ok ()
+ let* y = copy_int 0 in if 0 = y then Ok () else Fail Failure
(** Unit test for [no_nested_borrows::test_copy_int] *)
let _ = assert_norm (test_copy_int = Ok ())
@@ -159,7 +156,7 @@ let is_cons (t : Type0) (l : list_t t) : result bool =
Source: 'tests/src/no_nested_borrows.rs', lines 174:0-174:21 *)
let test_is_cons : result unit =
let* b = is_cons i32 (List_Cons 0 List_Nil) in
- if not b then Fail Failure else Ok ()
+ if b then Ok () else Fail Failure
(** Unit test for [no_nested_borrows::test_is_cons] *)
let _ = assert_norm (test_is_cons = Ok ())
@@ -177,7 +174,7 @@ let split_list (t : Type0) (l : list_t t) : result (t & (list_t t)) =
let test_split_list : result unit =
let* p = split_list i32 (List_Cons 0 List_Nil) in
let (hd, _) = p in
- if not (hd = 0) then Fail Failure else Ok ()
+ if hd = 0 then Ok () else Fail Failure
(** Unit test for [no_nested_borrows::test_split_list] *)
let _ = assert_norm (test_split_list = Ok ())
@@ -195,13 +192,11 @@ let choose
let choose_test : result unit =
let* (z, choose_back) = choose i32 true 0 0 in
let* z1 = i32_add z 1 in
- if not (z1 = 1)
- then Fail Failure
- else
+ if z1 = 1
+ then
let* (x, y) = choose_back z1 in
- if not (x = 1)
- then Fail Failure
- else if not (y = 0) then Fail Failure else Ok ()
+ if x = 1 then if y = 0 then Ok () else Fail Failure else Fail Failure
+ else Fail Failure
(** Unit test for [no_nested_borrows::choose_test] *)
let _ = assert_norm (choose_test = Ok ())
@@ -211,20 +206,25 @@ let _ = assert_norm (choose_test = Ok ())
let test_char : result char =
Ok 'a'
+(** [no_nested_borrows::panic_mut_borrow]:
+ Source: 'tests/src/no_nested_borrows.rs', lines 220:0-220:36 *)
+let panic_mut_borrow (i : u32) : result u32 =
+ Fail Failure
+
(** [no_nested_borrows::Tree]
- Source: 'tests/src/no_nested_borrows.rs', lines 220:0-220:16 *)
+ Source: 'tests/src/no_nested_borrows.rs', lines 225:0-225:16 *)
type tree_t (t : Type0) =
| Tree_Leaf : t -> tree_t t
| Tree_Node : t -> nodeElem_t t -> tree_t t -> tree_t t
(** [no_nested_borrows::NodeElem]
- Source: 'tests/src/no_nested_borrows.rs', lines 225:0-225:20 *)
+ Source: 'tests/src/no_nested_borrows.rs', lines 230:0-230:20 *)
and nodeElem_t (t : Type0) =
| NodeElem_Cons : tree_t t -> nodeElem_t t -> nodeElem_t t
| NodeElem_Nil : nodeElem_t t
(** [no_nested_borrows::list_length]:
- Source: 'tests/src/no_nested_borrows.rs', lines 260:0-260:48 *)
+ Source: 'tests/src/no_nested_borrows.rs', lines 265:0-265:48 *)
let rec list_length (t : Type0) (l : list_t t) : result u32 =
begin match l with
| List_Cons _ l1 -> let* i = list_length t l1 in u32_add 1 i
@@ -232,7 +232,7 @@ let rec list_length (t : Type0) (l : list_t t) : result u32 =
end
(** [no_nested_borrows::list_nth_shared]:
- Source: 'tests/src/no_nested_borrows.rs', lines 268:0-268:62 *)
+ Source: 'tests/src/no_nested_borrows.rs', lines 273:0-273:62 *)
let rec list_nth_shared (t : Type0) (l : list_t t) (i : u32) : result t =
begin match l with
| List_Cons x tl ->
@@ -241,7 +241,7 @@ let rec list_nth_shared (t : Type0) (l : list_t t) (i : u32) : result t =
end
(** [no_nested_borrows::list_nth_mut]:
- Source: 'tests/src/no_nested_borrows.rs', lines 284:0-284:67 *)
+ Source: 'tests/src/no_nested_borrows.rs', lines 289:0-289:67 *)
let rec list_nth_mut
(t : Type0) (l : list_t t) (i : u32) :
result (t & (t -> result (list_t t)))
@@ -260,7 +260,7 @@ let rec list_nth_mut
end
(** [no_nested_borrows::list_rev_aux]:
- Source: 'tests/src/no_nested_borrows.rs', lines 300:0-300:63 *)
+ Source: 'tests/src/no_nested_borrows.rs', lines 305:0-305:63 *)
let rec list_rev_aux
(t : Type0) (li : list_t t) (lo : list_t t) : result (list_t t) =
begin match li with
@@ -269,50 +269,50 @@ let rec list_rev_aux
end
(** [no_nested_borrows::list_rev]:
- Source: 'tests/src/no_nested_borrows.rs', lines 314:0-314:42 *)
+ Source: 'tests/src/no_nested_borrows.rs', lines 319:0-319:42 *)
let list_rev (t : Type0) (l : list_t t) : result (list_t t) =
let (li, _) = core_mem_replace (list_t t) l List_Nil in
list_rev_aux t li List_Nil
(** [no_nested_borrows::test_list_functions]:
- Source: 'tests/src/no_nested_borrows.rs', lines 319:0-319:28 *)
+ Source: 'tests/src/no_nested_borrows.rs', lines 324:0-324:28 *)
let test_list_functions : result unit =
let l = List_Cons 2 List_Nil in
let l1 = List_Cons 1 l in
let* i = list_length i32 (List_Cons 0 l1) in
- if not (i = 3)
- then Fail Failure
- else
+ if i = 3
+ then
let* i1 = list_nth_shared i32 (List_Cons 0 l1) 0 in
- if not (i1 = 0)
- then Fail Failure
- else
+ if i1 = 0
+ then
let* i2 = list_nth_shared i32 (List_Cons 0 l1) 1 in
- if not (i2 = 1)
- then Fail Failure
- else
+ if i2 = 1
+ then
let* i3 = list_nth_shared i32 (List_Cons 0 l1) 2 in
- if not (i3 = 2)
- then Fail Failure
- else
+ if i3 = 2
+ then
let* (_, list_nth_mut_back) = list_nth_mut i32 (List_Cons 0 l1) 1 in
let* ls = list_nth_mut_back 3 in
let* i4 = list_nth_shared i32 ls 0 in
- if not (i4 = 0)
- then Fail Failure
- else
+ if i4 = 0
+ then
let* i5 = list_nth_shared i32 ls 1 in
- if not (i5 = 3)
- then Fail Failure
- else
+ if i5 = 3
+ then
let* i6 = list_nth_shared i32 ls 2 in
- if not (i6 = 2) then Fail Failure else Ok ()
+ if i6 = 2 then Ok () else Fail Failure
+ else Fail Failure
+ else Fail Failure
+ else Fail Failure
+ else Fail Failure
+ else Fail Failure
+ else Fail Failure
(** Unit test for [no_nested_borrows::test_list_functions] *)
let _ = assert_norm (test_list_functions = Ok ())
(** [no_nested_borrows::id_mut_pair1]:
- Source: 'tests/src/no_nested_borrows.rs', lines 335:0-335:89 *)
+ Source: 'tests/src/no_nested_borrows.rs', lines 340:0-340:89 *)
let id_mut_pair1
(t1 t2 : Type0) (x : t1) (y : t2) :
result ((t1 & t2) & ((t1 & t2) -> result (t1 & t2)))
@@ -320,7 +320,7 @@ let id_mut_pair1
Ok ((x, y), Ok)
(** [no_nested_borrows::id_mut_pair2]:
- Source: 'tests/src/no_nested_borrows.rs', lines 339:0-339:88 *)
+ Source: 'tests/src/no_nested_borrows.rs', lines 344:0-344:88 *)
let id_mut_pair2
(t1 t2 : Type0) (p : (t1 & t2)) :
result ((t1 & t2) & ((t1 & t2) -> result (t1 & t2)))
@@ -328,7 +328,7 @@ let id_mut_pair2
let (x, x1) = p in Ok ((x, x1), Ok)
(** [no_nested_borrows::id_mut_pair3]:
- Source: 'tests/src/no_nested_borrows.rs', lines 343:0-343:93 *)
+ Source: 'tests/src/no_nested_borrows.rs', lines 348:0-348:93 *)
let id_mut_pair3
(t1 t2 : Type0) (x : t1) (y : t2) :
result ((t1 & t2) & (t1 -> result t1) & (t2 -> result t2))
@@ -336,7 +336,7 @@ let id_mut_pair3
Ok ((x, y), Ok, Ok)
(** [no_nested_borrows::id_mut_pair4]:
- Source: 'tests/src/no_nested_borrows.rs', lines 347:0-347:92 *)
+ Source: 'tests/src/no_nested_borrows.rs', lines 352:0-352:92 *)
let id_mut_pair4
(t1 t2 : Type0) (p : (t1 & t2)) :
result ((t1 & t2) & (t1 -> result t1) & (t2 -> result t2))
@@ -344,59 +344,57 @@ let id_mut_pair4
let (x, x1) = p in Ok ((x, x1), Ok, Ok)
(** [no_nested_borrows::StructWithTuple]
- Source: 'tests/src/no_nested_borrows.rs', lines 354:0-354:34 *)
+ Source: 'tests/src/no_nested_borrows.rs', lines 359:0-359:34 *)
type structWithTuple_t (t1 t2 : Type0) = { p : (t1 & t2); }
(** [no_nested_borrows::new_tuple1]:
- Source: 'tests/src/no_nested_borrows.rs', lines 358:0-358:48 *)
+ Source: 'tests/src/no_nested_borrows.rs', lines 363:0-363:48 *)
let new_tuple1 : result (structWithTuple_t u32 u32) =
Ok { p = (1, 2) }
(** [no_nested_borrows::new_tuple2]:
- Source: 'tests/src/no_nested_borrows.rs', lines 362:0-362:48 *)
+ Source: 'tests/src/no_nested_borrows.rs', lines 367:0-367:48 *)
let new_tuple2 : result (structWithTuple_t i16 i16) =
Ok { p = (1, 2) }
(** [no_nested_borrows::new_tuple3]:
- Source: 'tests/src/no_nested_borrows.rs', lines 366:0-366:48 *)
+ Source: 'tests/src/no_nested_borrows.rs', lines 371:0-371:48 *)
let new_tuple3 : result (structWithTuple_t u64 i64) =
Ok { p = (1, 2) }
(** [no_nested_borrows::StructWithPair]
- Source: 'tests/src/no_nested_borrows.rs', lines 371:0-371:33 *)
+ Source: 'tests/src/no_nested_borrows.rs', lines 376:0-376:33 *)
type structWithPair_t (t1 t2 : Type0) = { p : pair_t t1 t2; }
(** [no_nested_borrows::new_pair1]:
- Source: 'tests/src/no_nested_borrows.rs', lines 375:0-375:46 *)
+ Source: 'tests/src/no_nested_borrows.rs', lines 380:0-380:46 *)
let new_pair1 : result (structWithPair_t u32 u32) =
Ok { p = { x = 1; y = 2 } }
(** [no_nested_borrows::test_constants]:
- Source: 'tests/src/no_nested_borrows.rs', lines 383:0-383:23 *)
+ Source: 'tests/src/no_nested_borrows.rs', lines 388:0-388:23 *)
let test_constants : result unit =
let* swt = new_tuple1 in
let (i, _) = swt.p in
- if not (i = 1)
- then Fail Failure
- else
+ if i = 1
+ then
let* swt1 = new_tuple2 in
let (i1, _) = swt1.p in
- if not (i1 = 1)
- then Fail Failure
- else
+ if i1 = 1
+ then
let* swt2 = new_tuple3 in
let (i2, _) = swt2.p in
- if not (i2 = 1)
- then Fail Failure
- else
- let* swp = new_pair1 in
- if not (swp.p.x = 1) then Fail Failure else Ok ()
+ if i2 = 1
+ then let* swp = new_pair1 in if swp.p.x = 1 then Ok () else Fail Failure
+ else Fail Failure
+ else Fail Failure
+ else Fail Failure
(** Unit test for [no_nested_borrows::test_constants] *)
let _ = assert_norm (test_constants = Ok ())
(** [no_nested_borrows::test_weird_borrows1]:
- Source: 'tests/src/no_nested_borrows.rs', lines 392:0-392:28 *)
+ Source: 'tests/src/no_nested_borrows.rs', lines 397:0-397:28 *)
let test_weird_borrows1 : result unit =
Ok ()
@@ -404,71 +402,71 @@ let test_weird_borrows1 : result unit =
let _ = assert_norm (test_weird_borrows1 = Ok ())
(** [no_nested_borrows::test_mem_replace]:
- Source: 'tests/src/no_nested_borrows.rs', lines 402:0-402:37 *)
+ Source: 'tests/src/no_nested_borrows.rs', lines 407:0-407:37 *)
let test_mem_replace (px : u32) : result u32 =
let (y, _) = core_mem_replace u32 px 1 in
- if not (y = 0) then Fail Failure else Ok 2
+ if y = 0 then Ok 2 else Fail Failure
(** [no_nested_borrows::test_shared_borrow_bool1]:
- Source: 'tests/src/no_nested_borrows.rs', lines 409:0-409:47 *)
+ Source: 'tests/src/no_nested_borrows.rs', lines 414:0-414:47 *)
let test_shared_borrow_bool1 (b : bool) : result u32 =
if b then Ok 0 else Ok 1
(** [no_nested_borrows::test_shared_borrow_bool2]:
- Source: 'tests/src/no_nested_borrows.rs', lines 422:0-422:40 *)
+ Source: 'tests/src/no_nested_borrows.rs', lines 427:0-427:40 *)
let test_shared_borrow_bool2 : result u32 =
Ok 0
(** [no_nested_borrows::test_shared_borrow_enum1]:
- Source: 'tests/src/no_nested_borrows.rs', lines 437:0-437:52 *)
+ Source: 'tests/src/no_nested_borrows.rs', lines 442:0-442:52 *)
let test_shared_borrow_enum1 (l : list_t u32) : result u32 =
begin match l with | List_Cons _ _ -> Ok 1 | List_Nil -> Ok 0 end
(** [no_nested_borrows::test_shared_borrow_enum2]:
- Source: 'tests/src/no_nested_borrows.rs', lines 449:0-449:40 *)
+ Source: 'tests/src/no_nested_borrows.rs', lines 454:0-454:40 *)
let test_shared_borrow_enum2 : result u32 =
Ok 0
(** [no_nested_borrows::incr]:
- Source: 'tests/src/no_nested_borrows.rs', lines 460:0-460:24 *)
+ Source: 'tests/src/no_nested_borrows.rs', lines 465:0-465:24 *)
let incr (x : u32) : result u32 =
u32_add x 1
(** [no_nested_borrows::call_incr]:
- Source: 'tests/src/no_nested_borrows.rs', lines 464:0-464:35 *)
+ Source: 'tests/src/no_nested_borrows.rs', lines 469:0-469:35 *)
let call_incr (x : u32) : result u32 =
incr x
(** [no_nested_borrows::read_then_incr]:
- Source: 'tests/src/no_nested_borrows.rs', lines 469:0-469:41 *)
+ Source: 'tests/src/no_nested_borrows.rs', lines 474:0-474:41 *)
let read_then_incr (x : u32) : result (u32 & u32) =
let* x1 = u32_add x 1 in Ok (x, x1)
(** [no_nested_borrows::Tuple]
- Source: 'tests/src/no_nested_borrows.rs', lines 475:0-475:24 *)
+ Source: 'tests/src/no_nested_borrows.rs', lines 480:0-480:24 *)
type tuple_t (t1 t2 : Type0) = t1 * t2
(** [no_nested_borrows::use_tuple_struct]:
- Source: 'tests/src/no_nested_borrows.rs', lines 477:0-477:48 *)
+ Source: 'tests/src/no_nested_borrows.rs', lines 482:0-482:48 *)
let use_tuple_struct (x : tuple_t u32 u32) : result (tuple_t u32 u32) =
let (_, i) = x in Ok (1, i)
(** [no_nested_borrows::create_tuple_struct]:
- Source: 'tests/src/no_nested_borrows.rs', lines 481:0-481:61 *)
+ Source: 'tests/src/no_nested_borrows.rs', lines 486:0-486:61 *)
let create_tuple_struct (x : u32) (y : u64) : result (tuple_t u32 u64) =
Ok (x, y)
(** [no_nested_borrows::IdType]
- Source: 'tests/src/no_nested_borrows.rs', lines 486:0-486:20 *)
+ Source: 'tests/src/no_nested_borrows.rs', lines 491:0-491:20 *)
type idType_t (t : Type0) = t
(** [no_nested_borrows::use_id_type]:
- Source: 'tests/src/no_nested_borrows.rs', lines 488:0-488:40 *)
+ Source: 'tests/src/no_nested_borrows.rs', lines 493:0-493:40 *)
let use_id_type (t : Type0) (x : idType_t t) : result t =
Ok x
(** [no_nested_borrows::create_id_type]:
- Source: 'tests/src/no_nested_borrows.rs', lines 492:0-492:43 *)
+ Source: 'tests/src/no_nested_borrows.rs', lines 497:0-497:43 *)
let create_id_type (t : Type0) (x : t) : result (idType_t t) =
Ok x
diff --git a/tests/fstar/misc/Paper.fst b/tests/fstar/misc/Paper.fst
index e2412076..3566c5e2 100644
--- a/tests/fstar/misc/Paper.fst
+++ b/tests/fstar/misc/Paper.fst
@@ -13,7 +13,7 @@ let ref_incr (x : i32) : result i32 =
(** [paper::test_incr]:
Source: 'tests/src/paper.rs', lines 11:0-11:18 *)
let test_incr : result unit =
- let* x = ref_incr 0 in if not (x = 1) then Fail Failure else Ok ()
+ let* x = ref_incr 0 in if x = 1 then Ok () else Fail Failure
(** Unit test for [paper::test_incr] *)
let _ = assert_norm (test_incr = Ok ())
@@ -31,13 +31,11 @@ let choose
let test_choose : result unit =
let* (z, choose_back) = choose i32 true 0 0 in
let* z1 = i32_add z 1 in
- if not (z1 = 1)
- then Fail Failure
- else
+ if z1 = 1
+ then
let* (x, y) = choose_back z1 in
- if not (x = 1)
- then Fail Failure
- else if not (y = 0) then Fail Failure else Ok ()
+ if x = 1 then if y = 0 then Ok () else Fail Failure else Fail Failure
+ else Fail Failure
(** Unit test for [paper::test_choose] *)
let _ = assert_norm (test_choose = Ok ())
@@ -84,7 +82,7 @@ let test_nth : result unit =
let* x1 = i32_add x 1 in
let* l2 = list_nth_mut_back x1 in
let* i = sum l2 in
- if not (i = 7) then Fail Failure else Ok ()
+ if i = 7 then Ok () else Fail Failure
(** Unit test for [paper::test_nth] *)
let _ = assert_norm (test_nth = Ok ())
diff --git a/tests/fstar/traits/Traits.fst b/tests/fstar/traits/Traits.fst
index 70c345ba..556a26ac 100644
--- a/tests/fstar/traits/Traits.fst
+++ b/tests/fstar/traits/Traits.fst
@@ -503,7 +503,7 @@ let use_wrapper_len (t : Type0) (traitInst : trait_t t) : result usize =
type foo_t (t u : Type0) = { x : t; y : u; }
(** [core::result::Result]
- Source: '/rustc/ad963232d9b987d66a6f8e6ec4141f672b8b9900/library/core/src/result.rs', lines 502:0-502:21
+ Source: '/rustc/65ea825f4021eaf77f1b25139969712d65b435a4/library/core/src/result.rs', lines 502:0-502:21
Name pattern: core::result::Result *)
type core_result_Result_t (t e : Type0) =
| Core_result_Result_Ok : t -> core_result_Result_t t e