@@ -688,14 +688,14 @@ end = struct
688688 let add t lib =
689689 let virtual_ = Lib_info. virtual_ lib.info in
690690 match lib.implements, virtual_ with
691- | None , None -> Resolve.Memo. return t
692- | Some _ , Some _ -> assert false (* can't be virtual and implement *)
693- | None , Some _ ->
691+ | None , false -> Resolve.Memo. return t
692+ | Some _ , true -> assert false (* can't be virtual and implement *)
693+ | None , true ->
694694 Resolve.Memo. return
695695 (if Set. mem t.implemented lib
696696 then t
697697 else { t with unimplemented = Set. add t.unimplemented lib })
698- | Some vlib , None ->
698+ | Some vlib , false ->
699699 let + vlib = Memo. return vlib in
700700 { implemented = Set. add t.implemented vlib
701701 ; unimplemented = Set. remove t.unimplemented vlib
@@ -726,10 +726,10 @@ end = struct
726726 | (lib , stack ) :: libs ->
727727 let virtual_ = Lib_info. virtual_ lib.info in
728728 (match lib.implements, virtual_ with
729- | None , None -> loop acc libs
730- | Some _ , Some _ -> assert false (* can't be virtual and implement *)
731- | None , Some _ -> loop (Map. set acc lib (No_impl stack)) libs
732- | Some vlib , None ->
729+ | None , false -> loop acc libs
730+ | Some _ , true -> assert false (* can't be virtual and implement *)
731+ | None , true -> loop (Map. set acc lib (No_impl stack)) libs
732+ | Some vlib , false ->
733733 let * vlib = Memo. return vlib in
734734 (match Map. find acc vlib with
735735 | None ->
@@ -948,8 +948,8 @@ end = struct
948948 let * vlib = resolve_forbid_ignore name in
949949 let virtual_ = Lib_info. virtual_ vlib.info in
950950 match virtual_ with
951- | None -> Error. not_virtual_lib ~loc ~impl: info ~not_vlib: vlib.info
952- | Some _ -> Resolve.Memo. return vlib
951+ | false -> Error. not_virtual_lib ~loc ~impl: info ~not_vlib: vlib.info
952+ | true -> Resolve.Memo. return vlib
953953 in
954954 Memo. map res ~f: Option. some
955955 in
@@ -1616,8 +1616,7 @@ end = struct
16161616 in
16171617 (* If the library has an implementation according to variants or
16181618 default impl. *)
1619- let virtual_ = Lib_info. virtual_ lib.info in
1620- if Option. is_none virtual_
1619+ if not (Lib_info. virtual_ lib.info)
16211620 then R. return ()
16221621 else
16231622 let * impl = R. lift (impl_for lib) in
0 commit comments