Module Pulselib.PulseDiagnostic
module CallEvent = PulseCallEventmodule Invalidation = PulseInvalidationmodule Trace = PulseTracemodule ValueHistory = PulseValueHistory- type access_to_invalid_address- =- {- calling_context : (CallEvent.t * IBase.Location.t) list;- the list of function calls leading to the issue being realised, which is an additional common prefix to the traces in the record - invalidation : Invalidation.t;- invalidation_trace : Trace.t;- assuming we are in the calling context, the trace leads to - invalidationwithout further assumptions- access_trace : Trace.t;- assuming we are in the calling context, the trace leads to an access to the value invalidated in - invalidation_tracewithout further assumptions- must_be_valid_reason : Invalidation.must_be_valid_reason option;- }
- val compare_access_to_invalid_address : access_to_invalid_address -> access_to_invalid_address -> int
- val equal_access_to_invalid_address : access_to_invalid_address -> access_to_invalid_address -> bool
- val yojson_of_access_to_invalid_address : access_to_invalid_address -> Ppx_yojson_conv_lib.Yojson.Safe.t
- type read_uninitialized_value- =- {- calling_context : (CallEvent.t * IBase.Location.t) list;- the list of function calls leading to the issue being realised, which is an additional common prefix to the traces in the record - trace : Trace.t;- assuming we are in the calling context, the trace leads to read of the uninitialized value - }
- val compare_read_uninitialized_value : read_uninitialized_value -> read_uninitialized_value -> int
- val equal_read_uninitialized_value : read_uninitialized_value -> read_uninitialized_value -> bool
- val yojson_of_read_uninitialized_value : read_uninitialized_value -> Ppx_yojson_conv_lib.Yojson.Safe.t
- type t- =- |- AccessToInvalidAddress of access_to_invalid_address- |- MemoryLeak of- {- procname : IR.Procname.t;- allocation_trace : Trace.t;- location : IBase.Location.t;- }- |- ReadUninitializedValue of read_uninitialized_value- |- StackVariableAddressEscape of- {- variable : IR.Var.t;- history : ValueHistory.t;- location : IBase.Location.t;- }
- an error to report to the user 
- val get_message : t -> string
- val get_location : t -> IBase.Location.t
- val get_issue_type : t -> IBase.IssueType.t
- val get_trace : t -> Absint.Errlog.loc_trace