diff --git a/infer/src/backend/rearrange.ml b/infer/src/backend/rearrange.ml index 2286acff9..d516ef2a0 100644 --- a/infer/src/backend/rearrange.ml +++ b/infer/src/backend/rearrange.ml @@ -1286,7 +1286,7 @@ let check_call_to_objc_block_error pdesc prop fun_exp loc = match get_exp_called () with | Some (_, Sil.Lvar pvar) -> (* pvar is the block *) let name = Pvar.get_name pvar in - IList.exists (fun (cn, _) -> (Mangled.to_string name) = (Mangled.to_string cn)) (Cfg.Procdesc.get_captured pdesc) + IList.exists (fun (cn, _) -> (Mangled.equal name cn)) (Cfg.Procdesc.get_captured pdesc) | _ -> false in let is_field_deref () = (*Called expression is a field *) match get_exp_called () with diff --git a/infer/src/clang/cMethod_trans.ml b/infer/src/clang/cMethod_trans.ml index 5039a139c..cbcaafb57 100644 --- a/infer/src/clang/cMethod_trans.ml +++ b/infer/src/clang/cMethod_trans.ml @@ -363,10 +363,9 @@ let create_local_procdesc cfg tenv ms fbody captured is_objc_inst_method = && CMethod_signature.ms_get_lang ms = Config.CPP in let create_new_procdesc () = let formals = get_formal_parameters tenv ms in - let captured_str = - IList.map (fun (var, t) -> (Mangled.from_string (Pvar.to_string var), t)) captured in + let captured_mangled = IList.map (fun (var, t) -> (Pvar.get_name var), t) captured in (* Captured variables for blocks are treated as parameters *) - let formals = captured_str @ formals in + let formals = captured_mangled @ formals in let source_range = CMethod_signature.ms_get_loc ms in Printing.log_out "\nCreating a new procdesc for function: '%s'\n@." pname; let loc_start = CLocation.get_sil_location_from_range source_range true in diff --git a/infer/src/clang/cVar_decl.ml b/infer/src/clang/cVar_decl.ml index 6caec31b8..45c002e5c 100644 --- a/infer/src/clang/cVar_decl.ml +++ b/infer/src/clang/cVar_decl.ml @@ -19,20 +19,13 @@ module L = Logging let is_custom_var_pointer pointer = pointer <= 0 -let is_captured procdesc vname = - IList.exists - (fun (name, _) -> (Mangled.to_string name) = vname) - (Cfg.Procdesc.get_captured procdesc) - let sil_var_of_decl context var_decl procname = let outer_procname = CContext.get_outer_procname context in - let procdesc = context.CContext.procdesc in let open Clang_ast_t in match var_decl with | VarDecl (decl_info, name_info, type_ptr, var_decl_info) -> let shoud_be_mangled = - not (is_custom_var_pointer decl_info.Clang_ast_t.di_pointer) && - not (is_captured procdesc name_info.Clang_ast_t.ni_name) in + not (is_custom_var_pointer decl_info.Clang_ast_t.di_pointer) in let var_decl_details = Some (decl_info, type_ptr, var_decl_info, shoud_be_mangled) in General_utils.mk_sil_var name_info var_decl_details procname outer_procname | ParmVarDecl (decl_info, name_info, type_ptr, var_decl_info) ->