File tree Expand file tree Collapse file tree 4 files changed +13
-3
lines changed
Expand file tree Collapse file tree 4 files changed +13
-3
lines changed Original file line number Diff line number Diff line change @@ -278,7 +278,7 @@ object (self)
278278 | _ ->
279279 let deps = DLocal [invindex; vinv#index] in
280280 let msg =
281- " local assignment(s) to "
281+ " assignment(s) to "
282282 ^ vinfo.vname
283283 ^ " : "
284284 ^ (String. concat
Original file line number Diff line number Diff line change 249249
250250
251251let check_locally_initialized (poq :po_query_int ) (vinfo : varinfo ) (lval :lval ) =
252- let invs = poq#get_invariants 2 in
252+ let f_priority (inv : invariant_int ) =
253+ match inv#get_fact with
254+ | NonRelationalFact (_ , FInitializedSet _ ) -> true
255+ | _ -> false in
256+ let invs =
257+ CCHInvariantFact. prioritize_invariants f_priority (poq#get_invariants 2 ) in
253258 let _ = poq#set_diagnostic_invariants 2 in
254259 let _ =
255260 poq#set_init_vinfo_mem_diagnostic_invariants
Original file line number Diff line number Diff line change @@ -873,6 +873,7 @@ class type system_settings_int =
873873 method is_value_wrap_around : bool
874874
875875 method set_output_parameter_analysis : unit
876+ method set_undefined_behavior_analysis : unit
876877 method is_undefined_behavior_analysis : bool
877878 method is_output_parameter_analysis : bool
878879
Original file line number Diff line number Diff line change @@ -98,7 +98,11 @@ object
9898
9999 method is_value_wrap_around = analysis_level = ValueWrapAround
100100
101- method set_output_parameter_analysis = analysis_kind < - OutputParameterAnalysis
101+ method set_output_parameter_analysis =
102+ analysis_kind < - OutputParameterAnalysis
103+
104+ method set_undefined_behavior_analysis =
105+ analysis_kind < - UndefinedBehaviorAnalysis
102106
103107 method is_undefined_behavior_analysis =
104108 analysis_kind = UndefinedBehaviorAnalysis
You can’t perform that action at this time.
0 commit comments