Summary: Just to organise PulseDomain a bit more since it's quite big. Reviewed By: mbouaziz Differential Revision: D10509334 fbshipit-source-id: a81b36aa6
@ -376,6 +376,8 @@ module Diagnostic = struct
let get_issue_type (AccessToInvalidAddress _) = IssueType.use_after_lifetime
end
(** operations on the domain *)
module Operations = struct
type 'a access_result = ('a, Diagnostic.t) result
(** Check that the address is not known to be invalid *)
@ -480,6 +482,7 @@ let invalidate location access_expr astate =
>>= fun (astate, addr) ->
let actor = {access_expr; location} in
check_addr_access actor addr astate >>| mark_invalid actor addr
include Domain
include Operations