From 766a16cd9061c5f4c2e8626bfee21ff1104a7746 Mon Sep 17 00:00:00 2001 From: Jules Villard Date: Thu, 10 May 2018 03:45:44 -0700 Subject: [PATCH] [clang] enforce that `instruction` always returns one SIL expression Summary: Previously, the type of `trans_result` contained a list of SIL expressions. However, most of the time we expect to get exactly one, and getting a different number is a soft(!) error, usually returning `-1`. This splits `trans_result` into `control`, which contains the information needed for temporary computation (hence when we don't necessarily know the return value yet), and a new version of `trans_result` that includes `control`, the previous `exps` list but replaced by a single `return` expression instead, and a couple other values that made sense to move out of `control`. This allows some flexibility in the frontend compared to enforcing exactly one return expression always: if they are not known yet we stick to `control` instead (see eg `compute_controls_to_parent`). This creates more garbage temporary identifiers, however they do not show up in the final cfg. Instead, we see that temporary IDs are now often not consecutive... The most painful complication is in the treatment of `DeclRefExpr`, which was actually returning *two* expressions: the method name and the `this` object. Now the method name is a separate (optional) field in `trans_result`. Reviewed By: mbouaziz Differential Revision: D7881088 fbshipit-source-id: 41ad3b5 --- infer/src/IR/Exp.ml | 14 + infer/src/IR/Exp.mli | 5 + infer/src/IR/Sil.ml | 16 - infer/src/IR/Sil.mli | 6 - infer/src/clang/cAst_utils.ml | 6 - infer/src/clang/cAst_utils.mli | 2 - infer/src/clang/cFrontend_decl.ml | 3 +- infer/src/clang/cTrans.ml | 1346 ++++++++--------- infer/src/clang/cTrans_utils.ml | 231 +-- infer/src/clang/cTrans_utils.mli | 73 +- .../clang_translation/src/main.cpp.dot | 130 +- .../src/main_default_root.cpp.dot | 130 +- .../src/main_default_symlink.cpp.dot | 130 +- .../src/main_symlink.cpp.dot | 130 +- .../c/frontend/arithmetic/negate.c.dot | 12 +- .../booleans/condition_as_param.c.dot | 4 +- .../conditional_operator/array_access.c.dot | 16 +- .../binary_operator.c.dot | 32 +- .../frontend/conditional_operator/cond2.c.dot | 34 +- .../conditional_operator.c.dot | 36 +- .../conditional_operator/function_call.c.dot | 44 +- .../if_short_circuit.c.dot | 28 +- .../conditional_operator/int_negation.c.dot | 8 +- .../conditional_operator/member_access.c.dot | 12 +- .../conditional_operator/preincrement.c.dot | 16 +- .../conditional_operator/unary_operator.c.dot | 12 +- .../c/frontend/gotostmt/goto_ex.c.dot | 190 +-- .../loops/for_no_condition_incr.c.dot | 2 +- .../c/frontend/loops/for_only_body.c.dot | 2 +- .../loops/while_with_continue_and_break.c.dot | 8 +- .../c/frontend/nestedoperators/gnuexpr.c.dot | 4 +- .../offsetof_expr/offsetof_expr.c.dot | 2 +- .../c/frontend/switchstmt/switch.c.dot | 60 +- .../c/frontend/vaarg_expr/vaarg_expr.c.dot | 4 +- .../attributes/clang_fallthrough.cpp.dot | 20 +- .../cpp/frontend/builtin/new.cpp.dot | 8 +- .../frontend/destructors/break_scope.cpp.dot | 192 +-- .../destructors/call_destructor.cpp.dot | 2 +- .../destructors/call_on_delete.cpp.dot | 4 +- .../destructors/continue_scope.cpp.dot | 160 +- .../destructors/destructor_bases.cpp.dot | 38 +- .../pseudo_destructor_expr.cpp.dot | 8 +- .../cpp/frontend/destructors/scope.cpp.dot | 68 +- .../frontend/destructors/simple_decl.cpp.dot | 4 +- .../frontend/globals/global_const1.cpp.dot | 2 +- .../frontend/globals/global_const2.cpp.dot | 4 +- .../include_header/include_templ.cpp.dot | 12 +- .../inheriting_constructor.cpp.dot | 4 +- .../frontend/initialization/init_list.cpp.dot | 26 +- .../literals/scalar_value_init.cpp.dot | 12 +- .../cpp/frontend/loops/do_while.cpp.dot | 16 +- .../cpp/frontend/loops/foreach1.cpp.dot | 38 +- .../assign_in_condition.cpp.dot | 6 +- .../assign_with_increment.cpp.dot | 8 +- .../frontend/nestedoperators/union.cpp.dot | 6 +- .../cpp/frontend/vectors/shuffle_vector.cpp | 2 +- .../frontend/vectors/shuffle_vector.cpp.dot | 2 +- .../cpp/shared/attributes/annotate.cpp.dot | 42 +- .../conditional/binary_conditional.cpp.dot | 36 +- .../conditional/lvalue_conditional.cpp.dot | 48 +- .../constructors/constructor_array.cpp.dot | 24 +- .../constructor_default_arg.cpp.dot | 8 +- .../constructors/constructor_init.cpp.dot | 36 +- .../constructors/constructor_new.cpp.dot | 92 +- .../constructor_struct_init_list.cpp.dot | 6 +- .../constructor_with_body.cpp.dot | 22 +- .../constructors/copy_array_field.cpp.dot | 12 +- .../copy_move_constructor.cpp.dot | 50 +- .../constructors/default_field_init.cpp.dot | 20 +- .../shared/constructors/std_init_list.cpp.dot | 16 +- .../shared/constructors/temp_object.cpp.dot | 10 +- .../cpp/shared/exceptions/Exceptions.cpp.dot | 14 +- .../cpp/shared/lambda/lambda1.cpp.dot | 56 +- .../cpp/shared/methods/byvals.cpp.dot | 4 +- .../methods/conversion_operator.cpp.dot | 60 +- .../shared/methods/default_parameters.cpp.dot | 6 +- .../shared/methods/dereference_this.cpp.dot | 6 +- .../cpp/shared/methods/inline_method.cpp.dot | 4 +- .../cpp/shared/methods/overloading.cpp.dot | 4 +- .../cpp/shared/methods/return_struct.cpp.dot | 8 +- .../cpp/shared/methods/static.cpp.dot | 4 +- .../shared/methods/virtual_methods.cpp.dot | 32 +- .../cpp/shared/namespace/function.cpp.dot | 2 +- .../cpp/shared/namespace/namespace.cpp.dot | 16 +- .../var_decl_inside_for.cpp.dot | 18 +- .../var_decl_inside_if.cpp.dot | 58 +- .../var_decl_inside_switch.cpp.dot | 18 +- .../var_decl_inside_while.cpp.dot | 32 +- .../cpp/shared/npe/method_call.cpp.dot | 6 +- .../cpp/shared/reference/increment.cpp.dot | 8 +- .../cpp/shared/reference/init.cpp.dot | 14 +- .../shared/reference/member_access.cpp.dot | 8 +- .../member_access_from_return.cpp.dot | 8 +- .../reference/nested_assignment.cpp.dot | 10 +- .../cpp/shared/reference/ptr_mem.cpp.dot | 10 +- .../shared/reference/reference_field.cpp.dot | 62 +- .../reference/reference_struct_e2e.cpp.dot | 104 +- .../reference/reference_type_e2e.cpp.dot | 24 +- .../shared/reference/temporary_lvalue.cpp.dot | 8 +- .../cpp/shared/reference/unbox.cpp.dot | 12 +- .../templates/class_specialization.cpp.dot | 20 +- .../cpp/shared/templates/function.cpp.dot | 12 +- .../cpp/shared/templates/method.cpp.dot | 32 +- .../cpp/shared/templates/simple.cpp.dot | 4 +- .../cpp/shared/templates/sizeof_pack.cpp.dot | 8 +- .../cpp/shared/types/casts.cpp.dot | 2 +- .../cpp/shared/types/const.cpp.dot | 14 +- .../cpp/shared/types/functions.cpp.dot | 12 +- .../cpp/shared/types/inheritance.cpp.dot | 20 +- .../shared/types/inheritance_casts.cpp.dot | 30 +- .../shared/types/inheritance_field.cpp.dot | 28 +- .../shared/types/operator_overload.cpp.dot | 12 +- .../cpp/shared/types/return_struct.cpp.dot | 20 +- .../cpp/shared/types/struct.cpp.dot | 8 +- .../types/struct_forward_declare.cpp.dot | 16 +- .../shared/types/struct_pass_by_value.cpp.dot | 30 +- .../objc/frontend/block/retain_cycle.m.dot | 4 +- .../objc/frontend/boxing/Boxing.m.dot | 4 +- .../objc/frontend/boxing/array.m.dot | 6 +- .../objc/frontend/boxing/array_literal.c.dot | 4 +- .../objc/frontend/boxing/dict_literal.c.dot | 4 +- .../ConditionalOperation.m.dot | 12 +- .../exceptions/ExceptionExample.m.dot | 10 +- .../fast_enumeration/Fast_enumeration.m.dot | 24 +- .../frontend/returnstmt/void_return.m.dot | 6 +- .../objc/frontend/self_static/Self.m.dot | 32 +- .../objc/frontend/types/void_call.m.dot | 10 +- .../annotations/nullable_annotations.m.dot | 2 +- .../objc/shared/block/BlockVar.m.dot | 30 +- .../shared/block/Blocks_as_parameters.m.dot | 4 +- .../objc/shared/block/block-it.m.dot | 38 +- .../objc/shared/block/block_no_args.m.dot | 6 +- .../objc/shared/block/block_release.m.dot | 14 +- .../objc/shared/block/dispatch.m.dot | 2 +- .../MemoryLeakExample.m.dot | 2 +- .../TollBridgeExample.m.dot | 2 +- .../shared/property/PropertyAttributes.m.dot | 4 +- .../frontend/global_const/global_const.mm.dot | 6 +- 138 files changed, 2453 insertions(+), 2469 deletions(-) diff --git a/infer/src/IR/Exp.ml b/infer/src/IR/Exp.ml index d6b8f7d61..fac0bc921 100644 --- a/infer/src/IR/Exp.ml +++ b/infer/src/IR/Exp.ml @@ -304,3 +304,17 @@ let rec gen_program_vars = let program_vars e = Sequence.Generator.run (gen_program_vars e) + +let zero_of_type typ = + match typ.Typ.desc with + | Typ.Tint _ -> + Some (Const (Cint IntLit.zero)) + | Typ.Tfloat _ -> + Some (Const (Cfloat 0.0)) + | Typ.Tptr _ -> + Some (Const (Cint IntLit.null)) + | _ -> + None + + +let zero_of_type_exn typ = Option.value_exn (zero_of_type typ) diff --git a/infer/src/IR/Exp.mli b/infer/src/IR/Exp.mli index 89586e349..b4b36e033 100644 --- a/infer/src/IR/Exp.mli +++ b/infer/src/IR/Exp.mli @@ -136,3 +136,8 @@ val pp : F.formatter -> t -> unit val to_string : t -> string val is_objc_block_closure : t -> bool + +val zero_of_type : Typ.t -> t option +(** Returns the zero value of a type, for int, float and ptr types *) + +val zero_of_type_exn : Typ.t -> t diff --git a/infer/src/IR/Sil.ml b/infer/src/IR/Sil.ml index bb3f9c034..947f84601 100644 --- a/infer/src/IR/Sil.ml +++ b/infer/src/IR/Sil.ml @@ -211,22 +211,6 @@ let is_objc_object = function false -(** Returns the zero value of a type, for int, float and ptr types, None othwewise *) -let zero_value_of_numerical_type_option typ = - match typ.Typ.desc with - | Typ.Tint _ -> - Some (Exp.Const (Cint IntLit.zero)) - | Typ.Tfloat _ -> - Some (Exp.Const (Cfloat 0.0)) - | Typ.Tptr _ -> - Some (Exp.Const (Cint IntLit.null)) - | _ -> - None - - -(** Returns the zero value of a type, for int, float and ptr types, fail otherwise *) -let zero_value_of_numerical_type typ = Option.value_exn (zero_value_of_numerical_type_option typ) - (** Check if a pvar is a local static in objc *) let is_static_local_name pname pvar = (* local static name is of the form procname_varname *) diff --git a/infer/src/IR/Sil.mli b/infer/src/IR/Sil.mli index dd1cd2db2..ac7a9ae03 100644 --- a/infer/src/IR/Sil.mli +++ b/infer/src/IR/Sil.mli @@ -240,12 +240,6 @@ val hpred_compact : sharing_env -> hpred -> hpred val is_objc_object : hpred -> bool (** {2 Comparision And Inspection Functions} *) -val zero_value_of_numerical_type_option : Typ.t -> Exp.t option -(** Returns the zero value of a type, for int, float and ptr types, None othwewise *) - -val zero_value_of_numerical_type : Typ.t -> Exp.t -(** Returns the zero value of a type, for int, float and ptr types, fail otherwise *) - val is_static_local_name : string -> Pvar.t -> bool (** Check if a pvar is a local static in objc *) diff --git a/infer/src/clang/cAst_utils.ml b/infer/src/clang/cAst_utils.ml index 5c94b15d8..34e1e1c8f 100644 --- a/infer/src/clang/cAst_utils.ml +++ b/infer/src/clang/cAst_utils.ml @@ -70,12 +70,6 @@ let dummy_stmt_info () = {Clang_ast_t.si_pointer= get_fresh_pointer (); si_source_range= dummy_source_range ()} -let dummy_stmt () = - let pointer = get_fresh_pointer () in - let source_range = dummy_source_range () in - Clang_ast_t.NullStmt ({Clang_ast_t.si_pointer= pointer; si_source_range= source_range}, []) - - let get_decl decl_ptr = Int.Table.find ClangPointers.pointer_decl_table decl_ptr let get_decl_opt decl_ptr_opt = diff --git a/infer/src/clang/cAst_utils.mli b/infer/src/clang/cAst_utils.mli index e11b1425b..c6f121244 100644 --- a/infer/src/clang/cAst_utils.mli +++ b/infer/src/clang/cAst_utils.mli @@ -11,8 +11,6 @@ open! IStd (** Functions for transformations of ast nodes *) -val dummy_stmt : unit -> Clang_ast_t.stmt - val dummy_source_range : unit -> Clang_ast_t.source_range val dummy_stmt_info : unit -> Clang_ast_t.stmt_info diff --git a/infer/src/clang/cFrontend_decl.ml b/infer/src/clang/cFrontend_decl.ml index 55aae716d..ef13a1093 100644 --- a/infer/src/clang/cFrontend_decl.ml +++ b/infer/src/clang/cFrontend_decl.ml @@ -57,7 +57,8 @@ module CFrontend_decl_funct (T : CModule_type.CTranslation) : CModule_type.CFron CMethod_trans.create_external_procdesc cfg procname method_kind None in let pp_context fmt () = - F.fprintf fmt "Aborting translation of method '%a'" Typ.Procname.pp procname + F.fprintf fmt "Aborting translation of method '%a' in file '%a'" Typ.Procname.pp procname + SourceFile.pp trans_unit_ctx.CFrontend_config.source_file in let f () = match Typ.Procname.Hash.find cfg procname with diff --git a/infer/src/clang/cTrans.ml b/infer/src/clang/cTrans.ml index 7f2bfa4e6..a2e215ccb 100644 --- a/infer/src/clang/cTrans.ml +++ b/infer/src/clang/cTrans.ml @@ -102,9 +102,7 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s false - let collect_exprs res_trans_list = - List.concat_map ~f:(fun res_trans -> res_trans.exps) res_trans_list - + let collect_returns trans_result_list = List.map ~f:(fun {return} -> return) trans_result_list (* If e is a block and the calling node has the priority then we need to release the priority to allow creation of nodes inside the block. At the end of block translation, we need to get the @@ -116,18 +114,15 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s else f trans_state e - let exec_with_node_creation f trans_state stmt = + let exec_with_node_creation ~f trans_state stmt = let res_trans = f trans_state stmt in - if res_trans.instrs <> [] then + if res_trans.control.instrs <> [] then let stmt_info, _ = Clang_ast_proj.get_stmt_tuple stmt in let stmt_info' = {stmt_info with Clang_ast_t.si_pointer= CAst_utils.get_fresh_pointer ()} in let trans_state_pri = PriorityNode.try_claim_priority_node trans_state stmt_info' in let sil_loc = CLocation.get_sil_location stmt_info' trans_state.context in - let to_parent = - PriorityNode.compute_results_to_parent trans_state_pri sil_loc "Fallback node" stmt_info' - [res_trans] - in - {to_parent with exps= res_trans.exps} + PriorityNode.compute_result_to_parent trans_state_pri sil_loc ~node_name:"Fallback node" + stmt_info' res_trans else res_trans @@ -168,11 +163,11 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s match Clang_ast_proj.get_expr_tuple stmt with Some (_, _, ei) -> ei | None -> assert false in let res_trans = f trans_state stmt in - let exp, typ = - extract_exp_from_list res_trans.exps - "[Warning] Need exactly one expression to add reference type@\n" + let return = + let exp, typ = res_trans.return in + (exp, add_reference_if_glvalue typ expr_info) in - {res_trans with exps= [(exp, add_reference_if_glvalue typ expr_info)]} + {res_trans with return} (** Execute translation of e forcing to release priority (if it's not free) and then setting it @@ -264,16 +259,13 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s (* value doesn't work good anyway. This may need to be revisited later*) let ret_param = (var_exp, param_type) in let ret_exp = (var_exp, return_type) in - ( (Ident.create_fresh Ident.knormal, Typ.mk Tvoid) - , params_sil @ [ret_param] - , [var_exp] - , [ret_exp] ) + (mk_fresh_void_id_typ (), params_sil @ [ret_param], [var_exp], ret_exp) else ( ret_id_typ , params_sil , [] , let i, t = ret_id_typ in - [(Exp.Var i, t)] ) + (Exp.Var i, t) ) in let forwarded_params, forwarded_init_instrs = if is_inherited_ctor then get_forwarded_params trans_state sil_loc else ([], []) @@ -282,7 +274,8 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s Sil.Call (ret_id', function_sil, params @ forwarded_params, sil_loc, call_flags) in let call_instr' = Sil.add_with_block_parameters_flag call_instr in - {empty_res_trans with instrs= forwarded_init_instrs @ [call_instr']; exps= ret_exps; initd_exps} + mk_trans_result ret_exps + {empty_control with instrs= forwarded_init_instrs @ [call_instr']; initd_exps} (** Given a captured var, return the instruction to assign it to a temp *) @@ -303,13 +296,13 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s List.map2_exn ~f:(fun id (pvar, typ) -> (Exp.Var id, pvar, typ)) ids captured_vars in let closure = Exp.Closure {name= closure_pname; captured_vars} in - {empty_res_trans with instrs; exps= [(closure, typ)]} + mk_trans_result (closure, typ) {empty_control with instrs} let stringLiteral_trans trans_state expr_info str = let typ = CType_decl.get_type_from_expr_info expr_info trans_state.context.CContext.tenv in let exp = Exp.Const (Const.Cstr str) in - {empty_res_trans with exps= [(exp, typ)]} + mk_trans_result (exp, typ) empty_control (** FROM CLANG DOCS: "Implements the GNU __null extension, which is a name for a null pointer @@ -320,12 +313,12 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s let gNUNullExpr_trans trans_state expr_info = let typ = CType_decl.get_type_from_expr_info expr_info trans_state.context.CContext.tenv in let exp = Exp.Const (Const.Cint IntLit.zero) in - {empty_res_trans with exps= [(exp, typ)]} + mk_trans_result (exp, typ) empty_control let nullPtrExpr_trans trans_state expr_info = let typ = CType_decl.get_type_from_expr_info expr_info trans_state.context.CContext.tenv in - {empty_res_trans with exps= [(Exp.null, typ)]} + mk_trans_result (Exp.null, typ) empty_control let objCSelectorExpr_trans trans_state expr_info selector = @@ -347,7 +340,7 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s let characterLiteral_trans trans_state expr_info n = let typ = CType_decl.get_type_from_expr_info expr_info trans_state.context.CContext.tenv in let exp = Exp.Const (Const.Cint (IntLit.of_int n)) in - {empty_res_trans with exps= [(exp, typ)]} + mk_trans_result (exp, typ) empty_control let booleanValue_trans trans_state expr_info b = @@ -357,7 +350,7 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s let floatingLiteral_trans trans_state expr_info float_string = let typ = CType_decl.get_type_from_expr_info expr_info trans_state.context.CContext.tenv in let exp = Exp.Const (Const.Cfloat (float_of_string float_string)) in - {empty_res_trans with exps= [(exp, typ)]} + mk_trans_result (exp, typ) empty_control (* Note currently we don't have support for different qual type like long, unsigned long, etc. *) @@ -373,26 +366,14 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s let id = Ident.create_fresh Ident.knormal in Exp.Var id in - {empty_res_trans with exps= [(exp, typ)]} + mk_trans_result (exp, typ) empty_control let cxxScalarValueInitExpr_trans trans_state expr_info = let typ = CType_decl.get_type_from_expr_info expr_info trans_state.context.CContext.tenv in (* constant will be different depending on type *) - let zero_opt = - match typ.desc with - | Typ.Tfloat _ | Typ.Tptr _ | Typ.Tint _ -> - Some (Sil.zero_value_of_numerical_type typ) - | Typ.Tvoid -> - None - | _ -> - Some (Exp.Const (Const.Cint IntLit.zero)) - in - match zero_opt with - | Some zero -> - {empty_res_trans with exps= [(zero, typ)]} - | _ -> - empty_res_trans + let zero = Exp.zero_of_type typ |> Option.value ~default:Exp.zero in + mk_trans_result (zero, typ) empty_control (** Create instructions to initialize record with zeroes. It needs to traverse @@ -404,45 +385,46 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s (* This node will always be child of InitListExpr, claiming priority will always fail *) let tenv = trans_state.context.CContext.tenv in let sil_loc = CLocation.get_sil_location stmt_info trans_state.context in - let flatten_res_trans = collect_res_trans trans_state.context.procdesc in (* Traverse structure of a type and initialize int/float/ptr fields with zero *) - let rec fill_typ_with_zero (exp, typ) : trans_result = + let rec fill_typ_with_zero ((exp, typ) as exp_typ) = match typ.Typ.desc with | Tstruct tn -> - let field_exps = + let field_exp_typs = match Tenv.lookup tenv tn with | Some {fields} -> - List.filter_map fields ~f:(fun (fieldname, fieldtype, _) -> - Some (Exp.Lfield (exp, fieldname, typ), fieldtype) ) + List.map fields ~f:(fun (fieldname, fieldtype, _) -> + (Exp.Lfield (exp, fieldname, typ), fieldtype) ) | None -> assert false in - List.map ~f:fill_typ_with_zero field_exps |> flatten_res_trans + List.map field_exp_typs ~f:(fun exp_typ -> (fill_typ_with_zero exp_typ).control) + |> collect_controls trans_state.context.procdesc |> mk_trans_result exp_typ | Tarray {elt= field_typ; length= Some n} -> let size = IntLit.to_int n in let indices = CGeneral_utils.list_range 0 (size - 1) in List.map indices ~f:(fun i -> let idx_exp = Exp.Const (Const.Cint (IntLit.of_int i)) in let field_exp = Exp.Lindex (exp, idx_exp) in - fill_typ_with_zero (field_exp, field_typ) ) - |> flatten_res_trans + (fill_typ_with_zero (field_exp, field_typ)).control ) + |> collect_controls trans_state.context.procdesc |> mk_trans_result exp_typ | Tint _ | Tfloat _ | Tptr _ -> - let zero_exp = Sil.zero_value_of_numerical_type typ in + let zero_exp = Exp.zero_of_type_exn typ in let instrs = [Sil.Store (exp, typ, zero_exp, sil_loc)] in - let exps = [(exp, typ)] in - {empty_res_trans with exps; instrs} + mk_trans_result (exp, typ) {empty_control with instrs} | Tfun _ | Tvoid | Tarray _ | TVar _ -> CFrontend_config.unimplemented __POS__ stmt_info.Clang_ast_t.si_source_range "fill_typ_with_zero on type %a" (Typ.pp Pp.text) typ in let res_trans = fill_typ_with_zero var_exp_typ in - {res_trans with initd_exps= [fst var_exp_typ]} + {res_trans with control= {res_trans.control with initd_exps= [fst var_exp_typ]}} | None -> CFrontend_config.unimplemented __POS__ stmt_info.Clang_ast_t.si_source_range "Retrieving var from non-InitListExpr parent" - let no_op_trans succ_nodes = {empty_res_trans with root_nodes= succ_nodes} + let no_op_trans succ_nodes = + mk_trans_result (mk_fresh_void_exp_typ ()) {empty_control with root_nodes= succ_nodes} + (* The stmt seems to be always empty *) let unaryExprOrTypeTraitExpr_trans trans_state unary_expr_or_type_trait_expr_info = @@ -455,10 +437,10 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s | (`SizeOf | `SizeOfWithSize _) as size -> let nbytes = match size with `SizeOfWithSize nbytes -> Some nbytes | _ -> None in let sizeof_data = {Exp.typ; nbytes; dynamic_length= None; subtype= Subtype.exact} in - {empty_res_trans with exps= [(Exp.Sizeof sizeof_data, typ)]} + mk_trans_result (Exp.Sizeof sizeof_data, typ) empty_control | `AlignOf | `OpenMPRequiredSimdAlign | `VecStep -> let nondet = (Exp.Var (Ident.create_fresh Ident.knormal), typ) in - {empty_res_trans with exps= [nondet]} + mk_trans_result nondet empty_control (* search the label into the hashtbl - create a fake node eventually *) @@ -466,7 +448,8 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s let gotoStmt_trans trans_state stmt_info label_name = let sil_loc = CLocation.get_sil_location stmt_info trans_state.context in let root_node' = GotoLabel.find_goto_label trans_state.context label_name sil_loc in - {empty_res_trans with root_nodes= [root_node']; leaf_nodes= trans_state.succ_nodes} + mk_trans_result (mk_fresh_void_exp_typ ()) + {empty_control with root_nodes= [root_node']; leaf_nodes= trans_state.succ_nodes} let get_builtin_pname_opt trans_unit_ctx qual_name decl_opt = @@ -517,7 +500,7 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s let name = QualifiedCppName.to_qual_string qual_name in CMethod_trans.create_procdesc_with_pointer context decl_ptr None name in - {empty_res_trans with exps= [(Exp.Const (Const.Cfun pname), typ)]} + mk_trans_result (Exp.Const (Const.Cfun pname), typ) empty_control let field_deref_trans trans_state stmt_info pre_trans_result decl_ref ~is_constructor_init = @@ -528,12 +511,9 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s let field_string = name_info.Clang_ast_t.ni_name in L.(debug Capture Verbose) "!!!!! Dealing with field '%s' @." field_string ; let field_typ = CType_decl.qual_type_to_sil_type context.tenv qual_type in - let obj_sil, class_typ = - extract_exp_from_list pre_trans_result.exps - "WARNING: in Field dereference we expect to know the object@\n" - in + let obj_sil, class_typ = pre_trans_result.return in let is_pointer_typ = Typ.is_pointer class_typ in - let class_typ = match class_typ.desc with Typ.Tptr (t, _) -> t | _ -> class_typ in + let class_typ = match class_typ.Typ.desc with Typ.Tptr (t, _) -> t | _ -> class_typ in L.(debug Capture Verbose) "Type is '%s' @." (Typ.to_string class_typ) ; let class_tname = match CAst_utils.get_decl decl_ptr with @@ -570,67 +550,62 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s (Exp.Var id, [deref_instr]) else (field_exp, []) in - let instrs = pre_trans_result.instrs @ deref_instrs in - {pre_trans_result with instrs; exps= [(exp, field_typ)]} + let instrs = pre_trans_result.control.instrs @ deref_instrs in + { pre_trans_result with + control= {pre_trans_result.control with instrs}; return= (exp, field_typ) } + + type decl_ref_context = MemberOrIvar of trans_result | DeclRefExpr - let method_deref_trans ?(is_inner_destructor= false) trans_state pre_trans_result decl_ref - stmt_info decl_kind = + let method_deref_trans ?(is_inner_destructor= false) trans_state ~context:decl_ref_context + decl_ref stmt_info decl_kind = let open CContext in let context = trans_state.context in let sil_loc = CLocation.get_sil_location stmt_info context in - let name_info, decl_ptr, qual_type = CAst_utils.get_info_from_decl_ref decl_ref in + let name_info, decl_ptr, _ = CAst_utils.get_info_from_decl_ref decl_ref in let decl_opt = CAst_utils.get_function_decl_with_body decl_ptr in Option.iter ~f:(call_translation context) decl_opt ; let method_name = CAst_utils.get_unqualified_name name_info in L.(debug Capture Verbose) "!!!!! Dealing with method '%s' @." method_name ; - let method_typ = CType_decl.qual_type_to_sil_type context.tenv qual_type in let ms_opt = CMethod_trans.method_signature_of_pointer context.translation_unit_context context.tenv decl_ptr in let is_instance_method = match ms_opt with - | Some ms -> ( - match ms.CMethodSignature.method_kind with - | ProcAttributes.CPP_INSTANCE | ProcAttributes.OBJC_INSTANCE -> - true - | _ -> - false ) - | _ -> + | Some {CMethodSignature.method_kind= CPP_INSTANCE | OBJC_INSTANCE} -> + true + | Some {CMethodSignature.method_kind= CPP_CLASS | OBJC_CLASS | BLOCK | C_FUNCTION} -> + false + | None -> + (* might happen for methods that are not exported yet (some templates) *) true - (* might happen for methods that are not exported yet (some templates). *) - in - let is_cpp_virtual = - match ms_opt with Some ms -> ms.CMethodSignature.is_cpp_virtual | _ -> false in - let extra_exps, extra_instrs = + let this_exp_typ, this_instrs = if is_instance_method then match - (* pre_trans_result.exps may contain expr for 'this' parameter: if it comes from + decl_ref_context + (* the result exps of [context] may contain expr for 'this' parameter: if it comes from CXXMemberCallExpr it will be there if it comes from CXXOperatorCallExpr it won't be there and will be added later In case of CXXMemberCallExpr it's possible that type of 'this' parameter won't have a pointer - if that happens add a pointer to type of the object *) - pre_trans_result.exps with - | [] -> - ([], []) - | [(exp, {Typ.desc= Tptr (typ, _)})] + | MemberOrIvar {return= (exp, {Typ.desc= Tptr (typ, _)}) as return} (* We need to add a dereference before a method call to find null dereferences when calling a method with null *) when decl_kind <> `CXXConstructor -> let no_id = Ident.create_none () in let extra_instrs = [Sil.Load (no_id, exp, typ, sil_loc)] in - (pre_trans_result.exps, extra_instrs) - | [(_, {Typ.desc= Tptr _})] -> - (pre_trans_result.exps, []) - | [(sil, typ)] -> - ([(sil, Typ.mk (Tptr (typ, Typ.Pk_reference)))], []) - | _ -> - assert false - else (* don't add 'this' expression for static methods *) - ([], []) + (return, extra_instrs) + | MemberOrIvar {return= (_, {Typ.desc= Tptr _}) as return} -> + (return, []) + | MemberOrIvar {return= exp, typ} -> + ((exp, Typ.mk (Tptr (typ, Typ.Pk_reference))), []) + | DeclRefExpr -> + (mk_fresh_void_exp_typ (), []) + else (* don't add 'this' expression for static methods. *) + (mk_fresh_void_exp_typ (), []) in (* unlike field access, for method calls there is no need to expand class type use qualified method name for builtin matching, but use unqualified name elsewhere *) @@ -665,11 +640,17 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s CMethod_trans.create_procdesc_with_pointer context decl_ptr (Some class_typename) method_name in - let method_exp = (Exp.Const (Const.Cfun pname), method_typ) in - { pre_trans_result with - is_cpp_call_virtual= is_cpp_virtual - ; exps= [method_exp] @ extra_exps - ; instrs= pre_trans_result.instrs @ extra_instrs } + let is_cpp_call_virtual = + match ms_opt with Some {CMethodSignature.is_cpp_virtual} -> is_cpp_virtual | None -> false + in + let context_control_with_this = + match decl_ref_context with + | MemberOrIvar pre_trans_result -> + {pre_trans_result.control with instrs= pre_trans_result.control.instrs @ this_instrs} + | DeclRefExpr -> + {empty_control with instrs= this_instrs} + in + mk_trans_result ~is_cpp_call_virtual ~method_name:pname this_exp_typ context_control_with_this let destructor_deref_trans trans_state pvar_trans_result class_type_ptr si ~is_inner_destructor = @@ -686,12 +667,13 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s | Some decl_ref -> ( match CAst_utils.get_decl decl_ref.Clang_ast_t.dr_decl_pointer with | Some (CXXDestructorDecl _) -> - method_deref_trans ~is_inner_destructor trans_state pvar_trans_result decl_ref si - `CXXDestructor + Some + (method_deref_trans ~is_inner_destructor trans_state + ~context:(MemberOrIvar pvar_trans_result) decl_ref si `CXXDestructor) | _ -> - empty_res_trans ) + None ) | None -> - empty_res_trans + None let get_this_pvar_typ stmt_info ?class_qual_type {CContext.curr_class; tenv; procdesc} = @@ -711,9 +693,11 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s let this_expr_trans stmt_info ?class_qual_type trans_state sil_loc = let this_pvar, this_typ = get_this_pvar_typ stmt_info ?class_qual_type trans_state.context in - let exps = [(Exp.Lvar this_pvar, this_typ)] in + let return = (Exp.Lvar this_pvar, this_typ) in (* there is no cast operation in AST, but backend needs it *) - dereference_value_from_result sil_loc {empty_res_trans with exps} ~strip_pointer:false + dereference_value_from_result sil_loc + (mk_trans_result return empty_control) + ~strip_pointer:false (** get the [this] of the current procedure *) @@ -721,10 +705,7 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s let context = trans_state.context in let sil_loc = CLocation.get_sil_location stmt_info context in let this_res_trans = this_expr_trans stmt_info trans_state sil_loc in - let obj_sil, class_typ = - extract_exp_from_list this_res_trans.exps - "WARNING: There should be one expression for 'this'. @\n" - in + let obj_sil, class_typ = this_res_trans.return in let this_qual_type = match class_typ.desc with Typ.Tptr (t, _) -> t | _ -> class_typ in (obj_sil, this_qual_type, this_res_trans) @@ -748,8 +729,9 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s (* create the label root node into the hashtbl *) let sil_loc = CLocation.get_sil_location stmt_info context in let root_node' = GotoLabel.find_goto_label trans_state.context label_name sil_loc in - Procdesc.node_set_succs_exn context.procdesc root_node' res_trans.root_nodes [] ; - {empty_res_trans with root_nodes= [root_node']; leaf_nodes= trans_state.succ_nodes} + Procdesc.node_set_succs_exn context.procdesc root_node' res_trans.control.root_nodes [] ; + mk_trans_result (mk_fresh_void_exp_typ ()) + {empty_control with root_nodes= [root_node']; leaf_nodes= trans_state.succ_nodes} and var_deref_trans trans_state stmt_info (decl_ref: Clang_ast_t.decl_ref) = @@ -772,7 +754,7 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s in CContext.add_block_static_var context procname (pvar, typ) ; let var_exp = Exp.Lvar pvar in - let exps = + let return = if Self.is_var_self pvar (CContext.is_objc_method context) && CType.is_class typ then let class_name = CContext.get_curr_class_typename stmt_info context in if trans_state.is_fst_arg_objc_method_call then @@ -781,11 +763,11 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s {class_name; position= __POS__; source_range= stmt_info.Clang_ast_t.si_source_range}) else let exp_typ = sizeof_expr_class class_name in - [exp_typ] - else [(var_exp, typ)] + exp_typ + else (var_exp, typ) in L.(debug Capture Verbose) "@\n@\n PVAR ='%s'@\n@\n" (Pvar.to_string pvar) ; - let res_trans = {empty_res_trans with exps} in + let res_trans = mk_trans_result return empty_control in match typ.desc with | Tptr (_, Pk_reference) -> (* dereference pvar due to the behavior of reference types in clang's AST *) @@ -794,31 +776,24 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s res_trans - and decl_ref_trans ?(is_constructor_init= false) ~source trans_state stmt_info decl_ref = + and decl_ref_trans ?(is_constructor_init= false) ~context trans_state stmt_info decl_ref = L.(debug Capture Verbose) " priority node free = '%s'@\n@." (string_of_bool (PriorityNode.is_priority_free trans_state)) ; let decl_kind = decl_ref.Clang_ast_t.dr_kind in - match (decl_kind, source) with + match (decl_kind, context) with | `EnumConstant, _ -> enum_constant_trans trans_state decl_ref | `Function, _ -> function_deref_trans trans_state decl_ref | (`Var | `ImplicitParam | `ParmVar), _ -> var_deref_trans trans_state stmt_info decl_ref - | (`Field | `ObjCIvar), `MemberOrIvar pre_trans_result -> + | (`Field | `ObjCIvar), MemberOrIvar pre_trans_result -> (* a field outside of constructor initialization is probably a pointer to member, which we do not support *) field_deref_trans trans_state stmt_info pre_trans_result decl_ref ~is_constructor_init | (`CXXMethod | `CXXConversion | `CXXConstructor | `CXXDestructor), _ -> - let pre_trans_result = - match source with - | `MemberOrIvar pre_trans_result -> - pre_trans_result - | `DeclRefExpr -> - empty_res_trans - in - method_deref_trans trans_state pre_trans_result decl_ref stmt_info decl_kind + method_deref_trans trans_state ~context decl_ref stmt_info decl_kind | _ -> CFrontend_config.unimplemented __POS__ stmt_info.Clang_ast_t.si_source_range "Decl ref expression %a with pointer %d still needs to be translated" @@ -826,18 +801,12 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s decl_kind decl_ref.Clang_ast_t.dr_decl_pointer - and declRefExpr_trans trans_state stmt_info decl_ref_expr_info _ = + and declRefExpr_trans trans_state stmt_info decl_ref_expr_info = L.(debug Capture Verbose) " priority node free = '%b'@\n@." (PriorityNode.is_priority_free trans_state) ; - let decl_ref = - match decl_ref_expr_info.Clang_ast_t.drti_decl_ref with - | Some dr -> - dr - | None -> - assert false - in - decl_ref_trans ~source:`DeclRefExpr trans_state stmt_info decl_ref + let decl_ref = Option.value_exn decl_ref_expr_info.Clang_ast_t.drti_decl_ref in + decl_ref_trans ~context:DeclRefExpr trans_state stmt_info decl_ref (** evaluates an enum constant *) @@ -846,7 +815,7 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s | Some (Clang_ast_t.EnumConstantDecl (_, _, _, enum_constant_decl_info)) -> ( match enum_constant_decl_info.Clang_ast_t.ecdi_init_expr with | Some stmt -> - expression_trans context stmt "WARNING: Expression in Enumeration constant not found@\n" + expression_trans context stmt | None -> match prev_enum_constant_opt with | Some prev_constant_pointer -> @@ -880,7 +849,7 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s let _, _, qual_type = CAst_utils.get_info_from_decl_ref decl_ref in let typ = CType_decl.qual_type_to_sil_type context.CContext.tenv qual_type in let const_exp = get_enum_constant_expr context decl_ref.Clang_ast_t.dr_decl_pointer in - {empty_res_trans with exps= [(const_exp, typ)]} + mk_trans_result (const_exp, typ) empty_control and arraySubscriptExpr_trans trans_state expr_info stmt_list = @@ -897,34 +866,32 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s in let res_trans_a = instruction trans_state array_stmt in let res_trans_idx = instruction trans_state idx_stmt in - let a_exp, _ = - extract_exp_from_list res_trans_a.exps - "WARNING: In ArraySubscriptExpr there was a problem in translating array exp.@\n" - in - let i_exp, _ = - extract_exp_from_list res_trans_idx.exps - "WARNING: In ArraySubscriptExpr there was a problem in translating index exp.@\n" - in + let a_exp, _ = res_trans_a.return in + let i_exp, _ = res_trans_idx.return in let array_exp = Exp.Lindex (a_exp, i_exp) in let root_nodes = - if res_trans_a.root_nodes <> [] then res_trans_a.root_nodes else res_trans_idx.root_nodes + if res_trans_a.control.root_nodes <> [] then res_trans_a.control.root_nodes + else res_trans_idx.control.root_nodes in let leaf_nodes = - if res_trans_idx.leaf_nodes <> [] then res_trans_idx.leaf_nodes else res_trans_a.leaf_nodes + if res_trans_idx.control.leaf_nodes <> [] then res_trans_idx.control.leaf_nodes + else res_trans_a.control.leaf_nodes in - if res_trans_idx.root_nodes <> [] then + if res_trans_idx.control.root_nodes <> [] then List.iter - ~f:(fun n -> Procdesc.node_set_succs_exn context.procdesc n res_trans_idx.root_nodes []) - res_trans_a.leaf_nodes ; + ~f:(fun n -> + Procdesc.node_set_succs_exn context.procdesc n res_trans_idx.control.root_nodes [] ) + res_trans_a.control.leaf_nodes ; (* Note the order of res_trans_idx.ids @ res_trans_a.ids is important. *) (* We expect to use only res_trans_idx.ids in construction of other operation. *) (* res_trans_a.ids is passed to be Removed.*) - { empty_res_trans with - root_nodes - ; leaf_nodes - ; instrs= res_trans_a.instrs @ res_trans_idx.instrs - ; exps= [(array_exp, typ)] - ; initd_exps= res_trans_idx.initd_exps @ res_trans_a.initd_exps } + let control = + { root_nodes + ; leaf_nodes + ; instrs= res_trans_a.control.instrs @ res_trans_idx.control.instrs + ; initd_exps= res_trans_idx.control.initd_exps @ res_trans_a.control.initd_exps } + in + mk_trans_result (array_exp, typ) control and binaryOperator_trans trans_state binary_operator_info stmt_info expr_info stmt_list = @@ -937,10 +904,12 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s (string_of_bool (PriorityNode.is_priority_free trans_state)) ; let context = trans_state.context in let trans_state_pri = PriorityNode.try_claim_priority_node trans_state stmt_info in - let nname = "BinaryOperatorStmt: " ^ CArithmetic_trans.bin_op_to_string binary_operator_info in + let node_name = + "BinaryOperatorStmt: " ^ CArithmetic_trans.bin_op_to_string binary_operator_info + in let trans_state' = {trans_state_pri with succ_nodes= []} in let sil_loc = CLocation.get_sil_location stmt_info context in - let typ = + let res_typ = CType_decl.qual_type_to_sil_type context.CContext.tenv expr_info.Clang_ast_t.ei_qual_type in match stmt_list with @@ -950,25 +919,19 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s (* becomes the successor of the nodes that may be created when *) (* translating the operands. *) let res_trans_e1 = instruction trans_state' s1 in - let (var_exp, var_exp_typ) as e1_with_typ = - extract_exp_from_list res_trans_e1.exps - "@\nWARNING: Missing LHS operand in BinOp. Returning -1. Fix needed...@\n" - in - let trans_state'' = {trans_state' with var_exp_typ= Some e1_with_typ} in + let (exp1, typ1) as exp_typ1 = res_trans_e1.return in + let trans_state'' = {trans_state' with var_exp_typ= Some exp_typ1} in let res_trans_e2 = (* translation of s2 is done taking care of block special case *) exec_with_block_priority_exception instruction trans_state'' s2 stmt_info in - let e2_with_typ = - extract_exp_from_list res_trans_e2.exps - "@\nWARNING: Missing RHS operand in BinOp. Returning -1. Fix needed...@\n" - in - let binop_res_trans, exp_to_parent = - if List.exists ~f:(Exp.equal var_exp) res_trans_e2.initd_exps then ([], []) + let exp_typ2 = res_trans_e2.return in + let binop_control, return = + if List.exists ~f:(Exp.equal exp1) res_trans_e2.control.initd_exps then ([], exp_typ1) else let exp_op, instr_bin = CArithmetic_trans.binary_operation_instruction stmt_info.Clang_ast_t.si_source_range - binary_operator_info e1_with_typ typ e2_with_typ sil_loc + binary_operator_info exp_typ1 res_typ exp_typ2 sil_loc in (* Create a node if the priority if free and there are instructions *) let creating_node = @@ -988,19 +951,18 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s (* assignment. *) (* As no node is created here ids are passed to the parent *) let id = Ident.create_fresh Ident.knormal in - let res_instr = Sil.Load (id, var_exp, var_exp_typ, sil_loc) in + let res_instr = Sil.Load (id, exp1, typ1, sil_loc) in ([res_instr], Exp.Var id) else ([], exp_op) in - let binop_res_trans = {empty_res_trans with instrs= instr_bin @ extra_instrs} in - ([binop_res_trans], [(exp_to_parent, var_exp_typ)]) + let return = (exp_to_parent, typ1) in + let binop_control = {empty_control with instrs= instr_bin @ extra_instrs} in + ([binop_control], return) in - let all_res_trans = [res_trans_e1; res_trans_e2] @ binop_res_trans in - let res_trans_to_parent = - PriorityNode.compute_results_to_parent trans_state_pri sil_loc nname stmt_info - all_res_trans - in - {res_trans_to_parent with exps= exp_to_parent} + let all_res_trans = [res_trans_e1.control; res_trans_e2.control] @ binop_control in + PriorityNode.compute_controls_to_parent trans_state_pri sil_loc ~node_name stmt_info + all_res_trans + |> mk_trans_result return | _ -> (* Binary operator should have two operands *) assert false @@ -1019,10 +981,15 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s (* claim priority if no ancestors has claimed priority before *) let trans_state_callee = {trans_state_pri with succ_nodes= []} in let res_trans_callee = instruction trans_state_callee fun_exp_stmt in - let sil_fe, _ = - extract_exp_from_list res_trans_callee.exps - "WARNING: The translation of fun_exp did not return an expression.Returning -1. NEED TO \ - BE FIXED" + let sil_fe = + match res_trans_callee.method_name with + | Some pname -> + (* back from a CXX method call, the [method_name] field is set but the return expression + is the object instance's [this] *) + Exp.Const (Const.Cfun pname) + | None -> + (* more boring function call, the function name is the return expression *) + fst res_trans_callee.return in let callee_pname_opt = match sil_fe with Exp.Const (Const.Cfun pn) -> Some pn | _ -> (* function pointer *) None @@ -1038,88 +1005,63 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s (* call instruction for each parameter and collect the results *) (* afterwards. The 'instructions' function does not do that *) let trans_state_param = {trans_state_pri with succ_nodes= []; var_exp_typ= None} in - let result_trans_subexprs = + let result_trans_params = let instruction' = exec_with_glvalue_as_reference instruction in - let res_trans_p = List.map ~f:(instruction' trans_state_param) params_stmt in - res_trans_callee :: res_trans_p + List.map ~f:(instruction' trans_state_param) params_stmt in match Option.bind callee_pname_opt - ~f:(CTrans_utils.builtin_trans trans_state_pri sil_loc result_trans_subexprs) + ~f: + (CTrans_utils.builtin_trans trans_state_pri sil_loc + (res_trans_callee :: result_trans_params)) with | Some builtin -> builtin | None -> - let act_params = - let params = List.tl (collect_exprs result_trans_subexprs) |> Option.value ~default:[] in - if Int.equal (List.length params) (List.length params_stmt) then params - else - (* FIXME(t21762295) this is reachable *) - let procname = Procdesc.get_proc_name context.CContext.procdesc in - CFrontend_config.incorrect_assumption __POS__ si.Clang_ast_t.si_source_range - "In call to %a: stmt_list and res_trans_par.exps must have same size but they don't:@\n\ - stmt_list(%d)=[%a]@\n\ - res_trans_par.exps(%d)=[%a]@\n" - Typ.Procname.pp procname (List.length params) (Pp.seq Exp.pp) - (List.map ~f:fst params) (List.length params_stmt) - (Pp.seq (Pp.to_string ~f:Clang_ast_j.string_of_stmt)) - params_stmt - in + let act_params = collect_returns result_trans_params in let res_trans_call = let is_call_to_block = objc_exp_of_type_block fun_exp_stmt in let call_flags = {CallFlags.default with CallFlags.cf_is_objc_block= is_call_to_block} in create_call_instr trans_state function_type sil_fe act_params sil_loc call_flags ~is_objc_method:false ~is_inherited_ctor:false in - let nname = "Call " ^ Exp.to_string sil_fe in - let all_res_trans = result_trans_subexprs @ [res_trans_call] in - let res_trans_to_parent = - PriorityNode.compute_results_to_parent trans_state_pri sil_loc nname si all_res_trans - in - {res_trans_to_parent with exps= res_trans_call.exps} + let node_name = "Call " ^ Exp.to_string sil_fe in + let all_res_trans = res_trans_callee :: (result_trans_params @ [res_trans_call]) in + PriorityNode.compute_results_to_parent trans_state_pri sil_loc ~node_name si + ~return:res_trans_call.return all_res_trans and cxx_method_construct_call_trans trans_state_pri result_trans_callee params_stmt si function_type is_cpp_call_virtual extra_res_trans ~is_inherited_ctor = let context = trans_state_pri.context in let sil_loc = CLocation.get_sil_location si context in - (* first for method address, second for 'this' expression and other parameters *) - assert (List.length result_trans_callee.exps >= 1) ; - let sil_method, _ = List.hd_exn result_trans_callee.exps in - let callee_pname = - match sil_method with - | Exp.Const (Const.Cfun pn) -> - pn - | _ -> - (* method pointer not implemented, this shouldn't happen but it does (t21762295) *) - CFrontend_config.incorrect_assumption __POS__ si.Clang_ast_t.si_source_range - "Could not resolve CXX method call %a" Exp.pp sil_method - in + let callee_pname = Option.value_exn result_trans_callee.method_name in (* As we may have nodes coming from different parameters we need to call instruction for each parameter and collect the results afterwards. The 'instructions' function does not do that *) - let result_trans_subexprs = + let result_trans_params = let trans_state_param = {trans_state_pri with succ_nodes= []; var_exp_typ= None} in let instruction' = exec_with_glvalue_as_reference instruction in let res_trans_p = List.map ~f:(instruction' trans_state_param) params_stmt in result_trans_callee :: res_trans_p in - (* first expr is method address, rest are params including 'this' parameter *) - let actual_params = List.tl_exn (collect_exprs result_trans_subexprs) in - match cxx_method_builtin_trans trans_state_pri sil_loc result_trans_subexprs callee_pname with + (* params including 'this' parameter *) + let actual_params = collect_returns result_trans_params in + match cxx_method_builtin_trans trans_state_pri sil_loc result_trans_params callee_pname with | Some builtin -> builtin - | _ -> + | None -> + let sil_method = Exp.Const (Const.Cfun callee_pname) in let call_flags = {CallFlags.default with CallFlags.cf_virtual= is_cpp_call_virtual} in let res_trans_call = create_call_instr trans_state_pri function_type sil_method actual_params sil_loc call_flags ~is_objc_method:false ~is_inherited_ctor in - let nname = "Call " ^ Exp.to_string sil_method in - let all_res_trans = result_trans_subexprs @ [res_trans_call; extra_res_trans] in - let result_trans_to_parent = - PriorityNode.compute_results_to_parent trans_state_pri sil_loc nname si all_res_trans + let node_name = "Call " ^ Exp.to_string sil_method in + let all_res_trans = + result_trans_params @ res_trans_call :: Option.to_list extra_res_trans in - {result_trans_to_parent with exps= res_trans_call.exps} + PriorityNode.compute_results_to_parent trans_state_pri sil_loc ~node_name si + ~return:res_trans_call.return all_res_trans and cxxMemberCallExpr_trans trans_state si stmt_list expr_info = @@ -1139,7 +1081,7 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s let fn_type_no_ref = CType_decl.get_type_from_expr_info expr_info context.CContext.tenv in let function_type = add_reference_if_glvalue fn_type_no_ref expr_info in cxx_method_construct_call_trans trans_state_pri result_trans_callee params_stmt si - function_type is_cpp_call_virtual empty_res_trans ~is_inherited_ctor:false + function_type is_cpp_call_virtual None ~is_inherited_ctor:false and cxxConstructExpr_trans trans_state si params_stmt ei cxx_constr_info ~is_inherited_ctor = @@ -1163,9 +1105,9 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s in let this_type = CType.add_pointer_to_typ class_type in let this_res_trans = - {empty_res_trans with exps= [(var_exp, this_type)]; initd_exps= [var_exp]} + mk_trans_result (var_exp, this_type) {empty_control with initd_exps= [var_exp]} in - let tmp_res_trans = {empty_res_trans with exps= [(var_exp, class_type)]} in + let tmp_res_trans = mk_trans_result (var_exp, class_type) empty_control in (* When class type is translated as pointer (std::shared_ptr for example), there needs to be extra Load instruction before returning the trans_result of constructorExpr. There is no LValueToRvalue cast in the AST afterwards since clang doesn't know @@ -1186,13 +1128,13 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s else tmp_res_trans in let res_trans_callee = - decl_ref_trans ~source:(`MemberOrIvar this_res_trans) trans_state si decl_ref + decl_ref_trans ~context:(MemberOrIvar this_res_trans) trans_state si decl_ref in let res_trans = cxx_method_construct_call_trans trans_state_pri res_trans_callee params_stmt si - (Typ.mk Tvoid) false extra_res_trans ~is_inherited_ctor + (Typ.mk Tvoid) false (Some extra_res_trans) ~is_inherited_ctor in - {res_trans with exps= extra_res_trans.exps} + {res_trans with return= extra_res_trans.return} and cxx_destructor_call_trans trans_state si this_res_trans class_type_ptr ~is_inner_destructor = @@ -1200,21 +1142,20 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s generated to avoid premature node creation *) let si' = {si with Clang_ast_t.si_pointer= CAst_utils.get_fresh_pointer ()} in let trans_state_pri = PriorityNode.try_claim_priority_node trans_state si' in - let this_exp, this_typ = - extract_exp_from_list this_res_trans.exps - "WARNING: There should be one expression for 'this' in constructor. @\n" - in + let this_exp, this_typ = this_res_trans.return in let this_res_trans' = - {this_res_trans with exps= [(this_exp, CType.add_pointer_to_typ this_typ)]} + {this_res_trans with return= (this_exp, CType.add_pointer_to_typ this_typ)} in - let res_trans_callee = + match destructor_deref_trans trans_state this_res_trans' class_type_ptr si' ~is_inner_destructor - in - let is_cpp_call_virtual = res_trans_callee.is_cpp_call_virtual in - if res_trans_callee.exps <> [] then - cxx_method_construct_call_trans trans_state_pri res_trans_callee [] si' (Typ.mk Tvoid) - is_cpp_call_virtual empty_res_trans ~is_inherited_ctor:false - else empty_res_trans + with + | Some res_trans_callee when Option.is_some res_trans_callee.method_name -> + let is_cpp_call_virtual = res_trans_callee.is_cpp_call_virtual in + Some + (cxx_method_construct_call_trans trans_state_pri res_trans_callee [] si' (Typ.mk Tvoid) + is_cpp_call_virtual None ~is_inherited_ctor:false) + | _ -> + None and objCMessageExpr_trans_special_cases trans_state si obj_c_message_expr_info method_type @@ -1234,7 +1175,7 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s {class_name; position= __POS__; source_range= si.Clang_ast_t.si_source_range}) else let exp, typ = sizeof_expr_class class_name in - Some {empty_res_trans with exps= [(exp, typ)]} + Some (mk_trans_result (exp, typ) empty_control) else if (* alloc or new *) String.equal selector CFrontend_config.alloc @@ -1256,25 +1197,24 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s change the call from instance to static *) and objCMessageExpr_deal_with_static_self trans_state_param stmt_list obj_c_message_expr_info = match stmt_list with - | stmt :: rest -> - let obj_c_message_expr_info, fst_res_trans = - try - let trans_state_param' = {trans_state_param with is_fst_arg_objc_method_call= true} in - let fst_res_trans = instruction trans_state_param' stmt in - (obj_c_message_expr_info, fst_res_trans) - with Self.SelfClassException e -> - let pointer = obj_c_message_expr_info.Clang_ast_t.omei_decl_pointer in - let selector = obj_c_message_expr_info.Clang_ast_t.omei_selector in - let obj_c_message_expr_info = - Ast_expressions.make_obj_c_message_expr_info_class selector e.class_name pointer - in - (obj_c_message_expr_info, empty_res_trans) + | stmt :: rest + -> ( + let param_trans_results = + List.map ~f:(exec_with_glvalue_as_reference instruction trans_state_param) rest in - let instruction' = exec_with_glvalue_as_reference instruction in - let l = List.map ~f:(instruction' trans_state_param) rest in - (obj_c_message_expr_info, fst_res_trans :: l) + try + let trans_state_param' = {trans_state_param with is_fst_arg_objc_method_call= true} in + let fst_res_trans = instruction trans_state_param' stmt in + (obj_c_message_expr_info, fst_res_trans :: param_trans_results) + with Self.SelfClassException e -> + let pointer = obj_c_message_expr_info.Clang_ast_t.omei_decl_pointer in + let selector = obj_c_message_expr_info.Clang_ast_t.omei_selector in + let obj_c_message_expr_info = + Ast_expressions.make_obj_c_message_expr_info_class selector e.class_name pointer + in + (obj_c_message_expr_info, param_trans_results) ) | [] -> - (obj_c_message_expr_info, [empty_res_trans]) + (obj_c_message_expr_info, []) and objCMessageExpr_trans trans_state si obj_c_message_expr_info stmt_list expr_info = @@ -1290,7 +1230,7 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s let obj_c_message_expr_info, res_trans_subexpr_list = objCMessageExpr_deal_with_static_self trans_state_param stmt_list obj_c_message_expr_info in - let subexpr_exprs = collect_exprs res_trans_subexpr_list in + let subexpr_exprs = collect_returns res_trans_subexpr_list in match objCMessageExpr_trans_special_cases trans_state si obj_c_message_expr_info method_type trans_state_pri sil_loc subexpr_exprs @@ -1306,8 +1246,8 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s Self.add_self_parameter_for_super_instance si context procname sil_loc obj_c_message_expr_info in - let res_trans_subexpr_list = res_trans_add_self :: res_trans_subexpr_list in - let subexpr_exprs = collect_exprs res_trans_subexpr_list in + let res_trans_subexpr_list = Option.to_list res_trans_add_self @ res_trans_subexpr_list in + let subexpr_exprs = collect_returns res_trans_subexpr_list in let is_virtual = CMethod_trans.equal_method_call_type method_call_type CMethod_trans.MCVirtual in @@ -1318,40 +1258,37 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s ~is_objc_method:true ~is_inherited_ctor:false in let selector = obj_c_message_expr_info.Clang_ast_t.omei_selector in - let nname = "Message Call: " ^ selector in + let node_name = "Message Call: " ^ selector in let assertion_trans_opt = if CTrans_models.is_handleFailureInMethod selector then - CTrans_utils.trans_assertion trans_state sil_loc - else empty_res_trans + Some (CTrans_utils.trans_assertion trans_state sil_loc) + else None in - let all_res_trans = res_trans_subexpr_list @ [res_trans_call; assertion_trans_opt] in - let res_trans_to_parent = - PriorityNode.compute_results_to_parent trans_state_pri sil_loc nname si all_res_trans + let all_res_trans = + res_trans_subexpr_list @ res_trans_call :: Option.to_list assertion_trans_opt in - {res_trans_to_parent with exps= res_trans_call.exps} + PriorityNode.compute_results_to_parent trans_state_pri sil_loc ~node_name si + ~return:res_trans_call.return all_res_trans and inject_base_class_destructor_calls trans_state stmt_info bases obj_sil this_qual_type = - List.rev_map bases ~f:(fun base -> - let this_res_trans_destruct = {empty_res_trans with exps= [(obj_sil, this_qual_type)]} in + List.rev_filter_map bases ~f:(fun base -> + let this_res_trans_destruct = mk_trans_result (obj_sil, this_qual_type) empty_control in cxx_destructor_call_trans trans_state stmt_info this_res_trans_destruct base ~is_inner_destructor:true ) - and add_this_instrs_if_result_empty res_trans this_res_trans = - let all_res_trans = List.filter ~f:(fun res -> res <> empty_res_trans) res_trans in - let all_res_trans = - if all_res_trans <> [] then - {empty_res_trans with instrs= this_res_trans.instrs} :: all_res_trans - else all_res_trans - in - all_res_trans + and add_this_instrs_if_result_non_empty res_trans this_res_trans = + if res_trans <> [] then + mk_trans_result this_res_trans.return + {empty_control with instrs= this_res_trans.control.instrs} + :: res_trans + else res_trans and cxx_inject_virtual_base_class_destructors trans_state stmt_info = let context = trans_state.context in - if not (CGeneral_utils.is_cpp_translation context.translation_unit_context) then - empty_res_trans + if not (CGeneral_utils.is_cpp_translation context.translation_unit_context) then None else (* get virtual base classes of the current class *) let class_ptr = CContext.get_curr_class_decl_ptr stmt_info context.CContext.curr_class in @@ -1368,16 +1305,16 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s inject_base_class_destructor_calls trans_state_pri stmt_info_loc bases obj_sil this_qual_type in - let all_res_trans = add_this_instrs_if_result_empty bases_res_trans this_res_trans in + let all_res_trans = add_this_instrs_if_result_non_empty bases_res_trans this_res_trans in let sil_loc = CLocation.get_sil_location stmt_info_loc context in - PriorityNode.compute_results_to_parent trans_state_pri sil_loc "Destruction" stmt_info_loc - all_res_trans + Some + (PriorityNode.compute_results_to_parent trans_state_pri sil_loc ~node_name:"Destruction" + stmt_info_loc ~return:(mk_fresh_void_exp_typ ()) all_res_trans) and cxx_inject_field_destructors_in_destructor_body trans_state stmt_info = let context = trans_state.context in - if not (CGeneral_utils.is_cpp_translation context.translation_unit_context) then - empty_res_trans + if not (CGeneral_utils.is_cpp_translation context.translation_unit_context) then None else (* get fields and base classes of the current class *) let class_ptr = CContext.get_curr_class_decl_ptr stmt_info context.CContext.curr_class in @@ -1395,7 +1332,7 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s in let trans_state_pri = PriorityNode.try_claim_priority_node trans_state stmt_info' in let all_res_trans = - List.rev_map fields ~f:(function + List.rev_filter_map fields ~f:(function | Clang_ast_t.FieldDecl ({di_parent_pointer}, {ni_name}, qual_type, _) -> let class_tname = match CAst_utils.get_decl_opt di_parent_pointer with @@ -1407,9 +1344,7 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s let field_name = CGeneral_utils.mk_class_field_name class_tname ni_name in let field_exp = Exp.Lfield (obj_sil, field_name, this_qual_type) in let field_typ = CType_decl.qual_type_to_sil_type context.tenv qual_type in - let this_res_trans_destruct = - {empty_res_trans with exps= [(field_exp, field_typ)]} - in + let this_res_trans_destruct = mk_trans_result (field_exp, field_typ) empty_control in cxx_destructor_call_trans trans_state_pri stmt_info_loc this_res_trans_destruct qual_type.Clang_ast_t.qt_type_ptr ~is_inner_destructor:false | _ -> @@ -1420,17 +1355,17 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s this_qual_type in let all_res_trans = - add_this_instrs_if_result_empty (all_res_trans @ bases_res_trans) this_res_trans + add_this_instrs_if_result_non_empty (all_res_trans @ bases_res_trans) this_res_trans in let sil_loc = CLocation.get_sil_location stmt_info context in - PriorityNode.compute_results_to_parent trans_state_pri sil_loc "Destruction" stmt_info' - all_res_trans + Some + (PriorityNode.compute_results_to_parent trans_state_pri sil_loc ~node_name:"Destruction" + stmt_info' ~return:(mk_fresh_void_exp_typ ()) all_res_trans) and inject_destructors trans_state stmt_info = let context = trans_state.context in - if not (CGeneral_utils.is_cpp_translation context.translation_unit_context) then - empty_res_trans + if not (CGeneral_utils.is_cpp_translation context.translation_unit_context) then None else let procname = Procdesc.get_proc_name context.CContext.procdesc in (* The source location of destructor should reflect the end of the statement *) @@ -1446,13 +1381,13 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s try let map = context.CContext.vars_to_destroy in let vars_to_destroy = CContext.StmtMap.find_exn map stmt_info.Clang_ast_t.si_pointer in - List.map + List.filter_map ~f:(function | Clang_ast_t.VarDecl (_, _, qual_type, _) as decl -> let pvar = CVar_decl.sil_var_of_decl context decl procname in let exp = Exp.Lvar pvar in let typ = CType_decl.qual_type_to_sil_type context.CContext.tenv qual_type in - let this_res_trans_destruct = {empty_res_trans with exps= [(exp, typ)]} in + let this_res_trans_destruct = mk_trans_result (exp, typ) empty_control in cxx_destructor_call_trans trans_state_pri stmt_info_loc this_res_trans_destruct qual_type.Clang_ast_t.qt_type_ptr ~is_inner_destructor:false | _ -> @@ -1463,8 +1398,9 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s [] in let sil_loc = CLocation.get_sil_location stmt_info context in - PriorityNode.compute_results_to_parent trans_state_pri sil_loc "Destruction" stmt_info' - all_res_trans + Some + (PriorityNode.compute_results_to_parent trans_state_pri sil_loc ~node_name:"Destruction" + stmt_info' ~return:(mk_fresh_void_exp_typ ()) all_res_trans) and compoundStmt_trans trans_state stmt_info stmt_list = @@ -1473,22 +1409,28 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s let destr_trans_result = match List.last stmt_list with | Some (Clang_ast_t.ReturnStmt _) -> - empty_res_trans + None | _ -> inject_destructors trans_state stmt_info in (* Injecting destructor call nodes at the end of the compound statement *) let succ_nodes = - if destr_trans_result.root_nodes <> [] then destr_trans_result.root_nodes - else trans_state.succ_nodes + match destr_trans_result with + | Some {control= {root_nodes= []}} | None -> + trans_state.succ_nodes + | Some {control= {root_nodes}} -> + root_nodes in let trans_state' = {trans_state with succ_nodes} in - let trans_res = instructions trans_state' stmt_list in - let leaf_nodes = - if destr_trans_result.leaf_nodes <> [] then destr_trans_result.leaf_nodes - else trans_res.leaf_nodes + let compound_control, returns = instructions trans_state' stmt_list in + let compound_control' = + match destr_trans_result with + | Some {control= {leaf_nodes= []}} | None -> + compound_control + | Some {control= {leaf_nodes}} -> + {compound_control with leaf_nodes} in - {trans_res with leaf_nodes} + mk_trans_result (last_or_mk_fresh_void_exp_typ returns) compound_control' and conditionalOperator_trans trans_state stmt_info stmt_list expr_info = @@ -1500,22 +1442,29 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s let trans_state_pri = PriorityNode.force_claim_priority_node trans_state stmt_info in let trans_state' = {trans_state_pri with succ_nodes= []} in let res_trans_b = instruction trans_state' stmt in - let e', _ = - extract_exp_from_list res_trans_b.exps - "@\nWARNING: Missing branch expression for Conditional operator. Need to be fixed@\n" + let e' = + match res_trans_b.return with + | _, {Typ.desc= Tvoid} -> + (* void return *) Exp.Var (Ident.create_fresh Ident.knormal) + | e', _ -> + e' + in + let temp_var = Exp.Lvar pvar in + let set_temp_var = [Sil.Store (temp_var, var_typ, e', sil_loc)] in + let temp_return = (temp_var, var_typ) in + let tmp_var_res_trans = + mk_trans_result temp_return {empty_control with instrs= set_temp_var} in - let set_temp_var = [Sil.Store (Exp.Lvar pvar, var_typ, e', sil_loc)] in - let tmp_var_res_trans = {empty_res_trans with instrs= set_temp_var} in let trans_state'' = {trans_state' with succ_nodes= [join_node]} in let all_res_trans = [res_trans_b; tmp_var_res_trans] in let res_trans = - PriorityNode.compute_results_to_parent trans_state'' sil_loc "ConditinalStmt Branch" - stmt_info all_res_trans + PriorityNode.compute_results_to_parent trans_state'' sil_loc + ~node_name:"ConditionalStmt Branch" stmt_info ~return:temp_return all_res_trans in let prune_nodes_t, prune_nodes_f = List.partition_tf ~f:is_true_prune_node prune_nodes in let prune_nodes' = if branch then prune_nodes_t else prune_nodes_f in List.iter - ~f:(fun n -> Procdesc.node_set_succs_exn context.procdesc n res_trans.root_nodes []) + ~f:(fun n -> Procdesc.node_set_succs_exn context.procdesc n res_trans.control.root_nodes []) prune_nodes' in match stmt_list with @@ -1538,16 +1487,15 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s (cond_trans ~if_kind:Sil.Ik_bexp ~negate_cond:false) in (* Note: by contruction prune nodes are leafs_nodes_cond *) - do_branch true exp1 var_typ res_trans_cond.leaf_nodes join_node pvar ; - do_branch false exp2 var_typ res_trans_cond.leaf_nodes join_node pvar ; + do_branch true exp1 var_typ res_trans_cond.control.leaf_nodes join_node pvar ; + do_branch false exp2 var_typ res_trans_cond.control.leaf_nodes join_node pvar ; let id = Ident.create_fresh Ident.knormal in let instrs = [Sil.Load (id, Exp.Lvar pvar, var_typ, sil_loc)] in - { empty_res_trans with - root_nodes= res_trans_cond.root_nodes - ; leaf_nodes= [join_node] - ; instrs - ; exps= [(Exp.Var id, typ)] - ; initd_exps= [] (* TODO we should get exps from branches+cond *) } + mk_trans_result (Exp.Var id, typ) + { root_nodes= res_trans_cond.control.root_nodes + ; leaf_nodes= [join_node] + ; instrs + ; initd_exps= [] (* TODO we should get exps from branches+cond *) } | _ -> assert false @@ -1566,19 +1514,19 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s (* evaluate stmt1 once. Then, use it as replacement for OpaqueValueExpr*) (* when translating ostmt1 and ostmt2 *) let init_res_trans = instruction trans_state_cond stmt1 in - let opaque_exp = extract_exp_from_list init_res_trans.exps "" in + let opaque_exp = init_res_trans.return in let trans_state' = {trans_state_pri with opaque_exp= Some opaque_exp} in let op_res_trans = conditionalOperator_trans trans_state' stmt_info [ostmt1; ostmt2; stmt2] expr_info in - let trans_state'' = {trans_state_cond with succ_nodes= op_res_trans.root_nodes} in + let trans_state'' = {trans_state_cond with succ_nodes= op_res_trans.control.root_nodes} in let init_res_trans' = - PriorityNode.compute_results_to_parent trans_state'' sil_loc "BinaryConditinalStmt Init" - stmt_info [init_res_trans] + PriorityNode.compute_result_to_parent trans_state'' sil_loc + ~node_name:"BinaryConditionalStmt Init" stmt_info init_res_trans in - let root_nodes = init_res_trans'.root_nodes in - let root_nodes' = if root_nodes <> [] then root_nodes else op_res_trans.root_nodes in - {op_res_trans with root_nodes= root_nodes'} + let root_nodes = init_res_trans'.control.root_nodes in + if root_nodes <> [] then {op_res_trans with control= {op_res_trans.control with root_nodes}} + else op_res_trans | _ -> CFrontend_config.unimplemented __POS__ stmt_info.Clang_ast_t.si_source_range "BinaryConditionalOperator not translated" @@ -1587,24 +1535,20 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s (** Translate a condition for if/loops statement. It shorts-circuit and/or. The invariant is that the translation of a condition always contains (at least) the prune nodes. Moreover these are always the leaf nodes of the translation. *) - and cond_trans ~if_kind ~negate_cond trans_state cond = + and cond_trans ~if_kind ~negate_cond trans_state cond : trans_result = let context = trans_state.context in let si, _ = Clang_ast_proj.get_stmt_tuple cond in let sil_loc = CLocation.get_sil_location si context in let mk_prune_node ~branch ~negate_cond e ins = create_prune_node ~branch ~negate_cond e ins sil_loc if_kind context in - let extract_exp el = - extract_exp_from_list el - "@\nWARNING: Missing expression for Conditional operator. Need to be fixed" - in (* this function translate cond without doing shortcircuit *) let no_short_circuit_cond ~is_cmp = L.(debug Capture Verbose) " No short-circuit condition@\n" ; let res_trans_cond = if is_null_stmt cond then - { empty_res_trans with - exps= [(Exp.Const (Const.Cint IntLit.one), Typ.mk (Tint Typ.IBool))] } + mk_trans_result (Exp.Const (Const.Cint IntLit.one), Typ.mk (Tint Typ.IBool)) + empty_control (* Assumption: If it's a null_stmt, it is a loop with no bound, so we set condition to 1 *) else if is_cmp then let open Clang_ast_t in @@ -1623,19 +1567,19 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s else instruction trans_state cond in let e', instrs' = - define_condition_side_effects res_trans_cond.exps res_trans_cond.instrs sil_loc + define_condition_side_effects res_trans_cond.return res_trans_cond.control.instrs sil_loc in let prune_t = mk_prune_node ~branch:true ~negate_cond e' instrs' in let prune_f = mk_prune_node ~branch:false ~negate_cond:(not negate_cond) e' instrs' in List.iter ~f:(fun n' -> Procdesc.node_set_succs_exn context.procdesc n' [prune_t; prune_f] []) - res_trans_cond.leaf_nodes ; - let rnodes = - if List.is_empty res_trans_cond.root_nodes then [prune_t; prune_f] - else res_trans_cond.root_nodes + res_trans_cond.control.leaf_nodes ; + let root_nodes = + if List.is_empty res_trans_cond.control.root_nodes then [prune_t; prune_f] + else res_trans_cond.control.root_nodes in - { empty_res_trans with - root_nodes= rnodes; leaf_nodes= [prune_t; prune_f]; instrs= instrs'; exps= e' } + mk_trans_result e' + {empty_control with root_nodes; leaf_nodes= [prune_t; prune_f]; instrs= instrs'} in (* This function translate (s1 binop s2) doing shortcircuit for '&&' and '||' *) (* At the high level it does cond_trans s1; cond_trans s2; glue_nodes *) @@ -1647,7 +1591,7 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s let short_circuit binop s1 s2 = let res_trans_s1 = cond_trans ~if_kind ~negate_cond trans_state s1 in let prune_nodes_t, prune_nodes_f = - List.partition_tf ~f:is_true_prune_node res_trans_s1.leaf_nodes + List.partition_tf ~f:is_true_prune_node res_trans_s1.control.leaf_nodes in let res_trans_s2 = cond_trans ~if_kind ~negate_cond trans_state s2 in (* prune_to_s2 is the prune node that is connected with the root node of the *) @@ -1664,20 +1608,21 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s assert false in List.iter - ~f:(fun n -> Procdesc.node_set_succs_exn context.procdesc n res_trans_s2.root_nodes []) + ~f:(fun n -> + Procdesc.node_set_succs_exn context.procdesc n res_trans_s2.control.root_nodes [] ) prune_to_s2 ; let root_nodes_to_parent = - if List.is_empty res_trans_s1.root_nodes then res_trans_s1.leaf_nodes - else res_trans_s1.root_nodes + if List.is_empty res_trans_s1.control.root_nodes then res_trans_s1.control.leaf_nodes + else res_trans_s1.control.root_nodes in - let exp1, typ1 = extract_exp res_trans_s1.exps in - let exp2, _ = extract_exp res_trans_s2.exps in + let exp1, typ1 = res_trans_s1.return in + let exp2, _ = res_trans_s2.return in let e_cond = Exp.BinOp (binop, exp1, exp2) in - { empty_res_trans with - root_nodes= root_nodes_to_parent - ; leaf_nodes= prune_to_short_c @ res_trans_s2.leaf_nodes - ; instrs= res_trans_s1.instrs @ res_trans_s2.instrs - ; exps= [(e_cond, typ1)] } + mk_trans_result (e_cond, typ1) + { root_nodes= root_nodes_to_parent + ; leaf_nodes= prune_to_short_c @ res_trans_s2.control.leaf_nodes + ; instrs= res_trans_s1.control.instrs @ res_trans_s2.control.instrs + ; initd_exps= [] } in L.(debug Capture Verbose) "Translating Condition for If-then-else/Loop/Conditional Operator @\n" ; @@ -1705,7 +1650,7 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s and declStmt_in_condition_trans trans_state decl_stmt res_trans_cond = match decl_stmt with | Clang_ast_t.DeclStmt (stmt_info, _, decl_list) -> - let trans_state_decl = {trans_state with succ_nodes= res_trans_cond.root_nodes} in + let trans_state_decl = {trans_state with succ_nodes= res_trans_cond.control.root_nodes} in declStmt_trans trans_state_decl decl_list stmt_info | _ -> res_trans_cond @@ -1722,12 +1667,12 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s (* leaf nodes are ignored here as they will be already attached to join_node *) let res_trans_b = instruction trans_state' stmt_branch in let nodes_branch = - match res_trans_b.root_nodes with + match res_trans_b.control.root_nodes with | [] -> - [ create_node (Procdesc.Node.Stmt_node "IfStmt Branch") res_trans_b.instrs sil_loc - context ] + [ create_node (Procdesc.Node.Stmt_node "IfStmt Branch") res_trans_b.control.instrs + sil_loc context ] | _ -> - res_trans_b.root_nodes + res_trans_b.control.root_nodes in let prune_nodes_t, prune_nodes_f = List.partition_tf ~f:is_true_prune_node prune_nodes in let prune_nodes' = if branch then prune_nodes_t else prune_nodes_f in @@ -1743,9 +1688,11 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s let res_trans_cond = cond_trans ~if_kind:Sil.Ik_if ~negate_cond:false trans_state'' cond in let res_trans_decl = declStmt_in_condition_trans trans_state decl_stmt res_trans_cond in (* Note: by contruction prune nodes are leafs_nodes_cond *) - do_branch true stmt1 res_trans_cond.leaf_nodes ; - do_branch false stmt2 res_trans_cond.leaf_nodes ; - {empty_res_trans with root_nodes= res_trans_decl.root_nodes; leaf_nodes= [join_node]} + do_branch true stmt1 res_trans_cond.control.leaf_nodes ; + do_branch false stmt2 res_trans_cond.control.leaf_nodes ; + mk_trans_result (mk_fresh_void_exp_typ ()) + { empty_control with + root_nodes= res_trans_decl.control.root_nodes; leaf_nodes= [join_node] } | _ -> assert false @@ -1764,22 +1711,22 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s let res_trans_cond_tmp = instruction trans_state' cond in let switch_special_cond_node = let node_kind = Procdesc.Node.Stmt_node "Switch_stmt" in - create_node node_kind res_trans_cond_tmp.instrs sil_loc context + create_node node_kind res_trans_cond_tmp.control.instrs sil_loc context in List.iter ~f:(fun n' -> Procdesc.node_set_succs_exn context.procdesc n' [switch_special_cond_node] [] ) - res_trans_cond_tmp.leaf_nodes ; + res_trans_cond_tmp.control.leaf_nodes ; let root_nodes = - if res_trans_cond_tmp.root_nodes <> [] then res_trans_cond_tmp.root_nodes + if res_trans_cond_tmp.control.root_nodes <> [] then res_trans_cond_tmp.control.root_nodes else [switch_special_cond_node] in - let switch_e_cond', switch_e_cond'_typ = - extract_exp_from_list res_trans_cond_tmp.exps - "@\nWARNING: The condition of the SwitchStmt is not singleton. Need to be fixed@\n" - in + let switch_e_cond', switch_e_cond'_typ = res_trans_cond_tmp.return in let res_trans_cond = - {res_trans_cond_tmp with root_nodes; leaf_nodes= [switch_special_cond_node]} + { res_trans_cond_tmp with + control= + {res_trans_cond_tmp.control with root_nodes; leaf_nodes= [switch_special_cond_node]} + } in let res_trans_decl = declStmt_in_condition_trans trans_state decl_stmt res_trans_cond in let trans_state_no_pri = @@ -1842,7 +1789,7 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s | instr :: rest -> let trans_state''' = {trans_state'' with succ_nodes= successor_nodes} in let res_trans_instr = instruction trans_state''' instr in - let instr_entry_points = res_trans_instr.root_nodes in + let instr_entry_points = res_trans_instr.control.root_nodes in connected_instruction rest instr_entry_points in let rec translate_and_connect_cases cases next_nodes next_prune_nodes = @@ -1853,18 +1800,17 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s PriorityNode.try_claim_priority_node trans_state'' stmt_info in let res_trans_case_const = instruction trans_state_pri case_const in - let e_const = res_trans_case_const.exps in - let e_const' = match e_const with [(head, _)] -> head | _ -> assert false in - let sil_eq_cond = Exp.BinOp (Binop.Eq, switch_e_cond', e_const') in + let e_const, _ = res_trans_case_const.return in + let sil_eq_cond = Exp.BinOp (Binop.Eq, switch_e_cond', e_const) in let sil_loc = CLocation.get_sil_location stmt_info context in let true_prune_node = create_prune_node ~branch:true ~negate_cond:false - [(sil_eq_cond, switch_e_cond'_typ)] res_trans_case_const.instrs sil_loc + (sil_eq_cond, switch_e_cond'_typ) res_trans_case_const.control.instrs sil_loc Sil.Ik_switch context in let false_prune_node = create_prune_node ~branch:false ~negate_cond:true - [(sil_eq_cond, switch_e_cond'_typ)] res_trans_case_const.instrs sil_loc + (sil_eq_cond, switch_e_cond'_typ) res_trans_case_const.control.instrs sil_loc Sil.Ik_switch context in (true_prune_node, false_prune_node) @@ -1907,9 +1853,10 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s in let _ = connected_instruction (List.rev pre_case_stmts) top_entry_point in Procdesc.node_set_succs_exn context.procdesc switch_special_cond_node top_prune_nodes [] ; - let top_nodes = res_trans_decl.root_nodes in + let top_nodes = res_trans_decl.control.root_nodes in (* succ_nodes will remove the temps *) - {empty_res_trans with root_nodes= top_nodes; leaf_nodes= succ_nodes} + mk_trans_result (mk_fresh_void_exp_typ ()) + {empty_control with root_nodes= top_nodes; leaf_nodes= succ_nodes} | _ -> (* TODO(t21762295) this raises sometimes *) CFrontend_config.incorrect_assumption __POS__ stmt_info.Clang_ast_t.si_source_range @@ -1919,17 +1866,9 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s and stmtExpr_trans trans_state stmt_list = - let stmt = - extract_stmt_from_singleton stmt_list "ERROR: StmtExpr should have only one statement.@\n" - in + let stmt = extract_stmt_from_singleton stmt_list "StmtExpr should have only one statement." in let trans_state' = {trans_state with priority= Free} in - let res_trans_stmt = instruction trans_state' stmt in - let exps' = List.rev res_trans_stmt.exps in - match exps' with - | last_exp :: _ -> - {res_trans_stmt with exps= [last_exp]} - | [] -> - res_trans_stmt + instruction trans_state' stmt and loop_instruction trans_state loop_kind stmt_info = @@ -1947,7 +1886,7 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s let trans_state' = {trans_state with succ_nodes= [join_node]; continuation} in let res_trans_init = instruction trans_state' init in let res_trans_incr = instruction trans_state' increment in - Some (res_trans_init.root_nodes, res_trans_incr.root_nodes) + Some (res_trans_init.control.root_nodes, res_trans_incr.control.root_nodes) | _ -> None in @@ -1977,12 +1916,12 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s | Loops.While _ -> [join_node] | Loops.DoWhile _ -> - res_trans_cond.root_nodes + res_trans_cond.control.root_nodes in let body_continuation = match (loop_kind, continuation, init_incr_nodes) with | Loops.DoWhile _, Some c, _ -> - Some {c with continue= res_trans_cond.root_nodes} + Some {c with continue= res_trans_cond.control.root_nodes} | _, Some c, Some (_, nodes_incr) -> Some {c with continue= nodes_incr} | _ -> @@ -1997,18 +1936,18 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s let join_succ_nodes = match loop_kind with | Loops.For _ | Loops.While _ -> - res_trans_decl.root_nodes + res_trans_decl.control.root_nodes | Loops.DoWhile _ -> - res_trans_body.root_nodes + res_trans_body.control.root_nodes in - (* Note: prune nodes are by contruction the res_trans_cond.leaf_nodes *) + (* Note: prune nodes are by contruction the res_trans_cond.control.leaf_nodes *) let prune_nodes_t, prune_nodes_f = - List.partition_tf ~f:is_true_prune_node res_trans_cond.leaf_nodes + List.partition_tf ~f:is_true_prune_node res_trans_cond.control.leaf_nodes in let prune_t_succ_nodes = match loop_kind with | Loops.For _ | Loops.While _ -> - res_trans_body.root_nodes + res_trans_body.control.root_nodes | Loops.DoWhile _ -> [join_node] in @@ -2026,7 +1965,8 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s | Loops.While _ | Loops.DoWhile _ -> [join_node] in - {empty_res_trans with root_nodes; leaf_nodes= prune_nodes_f} + mk_trans_result (mk_fresh_void_exp_typ ()) + {empty_control with root_nodes; leaf_nodes= prune_nodes_f} and forStmt_trans trans_state ~init ~decl_stmt ~condition ~increment ~body stmt_info = @@ -2155,14 +2095,9 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s if List.is_empty stmts then (* perform zero initialization of a primitive type, record types will have ImplicitValueInitExpr nodes *) - let exps = - match Sil.zero_value_of_numerical_type_option var_typ with - | Some zero_exp -> - [(zero_exp, var_typ)] - | None -> - [] - in - {empty_res_trans with root_nodes= trans_state.succ_nodes; exps} + let return_exp = Exp.zero_of_type var_typ |> Option.value ~default:Exp.zero in + let return = (return_exp, var_typ) in + mk_trans_result return {empty_control with root_nodes= trans_state.succ_nodes} else let sil_loc = CLocation.get_sil_location stmt_info trans_state.context in let trans_state_pri = PriorityNode.try_claim_priority_node trans_state stmt_info in @@ -2181,12 +2116,12 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s CFrontend_config.unimplemented __POS__ stmt_info.Clang_ast_t.si_source_range "InitListExp for var %a of type %a" Exp.pp var_exp (Typ.pp Pp.text) var_typ in - let nname = "InitListExp" in + let node_name = "InitListExp" in let res_trans = - PriorityNode.compute_results_to_parent trans_state_pri sil_loc nname stmt_info - all_res_trans + PriorityNode.compute_results_to_parent trans_state_pri sil_loc ~node_name stmt_info + ~return:(var_exp, var_typ) all_res_trans in - {res_trans with exps= [(var_exp, var_typ)]; initd_exps= [var_exp]} + {res_trans with control= {res_trans.control with initd_exps= [var_exp]}} and init_dynamic_array trans_state array_exp_typ array_stmt_info dynlength_stmt_pointer = @@ -2196,28 +2131,19 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s let dynlength_stmt_info, _ = Clang_ast_proj.get_stmt_tuple dynlength_stmt in let trans_state_pri = PriorityNode.try_claim_priority_node trans_state array_stmt_info in let dynlength_trans_result = instruction trans_state_pri dynlength_stmt in - let dynlength_exp_typ = - extract_exp_from_list dynlength_trans_result.exps - "WARNING: There should be one expression.@\n" - in + let dynlength_exp_typ = dynlength_trans_result.return in let sil_loc = CLocation.get_sil_location dynlength_stmt_info trans_state_pri.context in + let ret_id_typ, ret_exp_typ = mk_fresh_void_return () in let call_instr = let call_exp = Exp.Const (Const.Cfun BuiltinDecl.__set_array_length) in let actuals = [array_exp_typ; dynlength_exp_typ] in - Sil.Call - ( (Ident.create_fresh Ident.knormal, Typ.mk Tvoid) - , call_exp - , actuals - , sil_loc - , CallFlags.default ) + Sil.Call (ret_id_typ, call_exp, actuals, sil_loc, CallFlags.default) in - let call_trans_result = {empty_res_trans with instrs= [call_instr]} in - let res_trans = - PriorityNode.compute_results_to_parent trans_state_pri sil_loc - "Initialize dynamic array length" dynlength_stmt_info - [dynlength_trans_result; call_trans_result] - in - {res_trans with exps= []} + let call_trans_control = {empty_control with instrs= [call_instr]} in + PriorityNode.compute_controls_to_parent trans_state_pri sil_loc + ~node_name:"Initialize dynamic array length" dynlength_stmt_info + [dynlength_trans_result.control; call_trans_control] + |> mk_trans_result ret_exp_typ and init_expr_trans trans_state var_exp_typ ?qual_type var_stmt_info init_expr_opt = @@ -2233,7 +2159,7 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s init_dynamic_array trans_state var_exp_typ var_stmt_info stmt_pointer | _ -> (* Nothing to do if no init expression and not a variable length array *) - {empty_res_trans with root_nodes= trans_state.succ_nodes} ) + mk_trans_result var_exp_typ {empty_control with root_nodes= trans_state.succ_nodes} ) | Some ie -> (*For init expr, translate how to compute it and assign to the var*) let var_exp, _ = var_exp_typ in @@ -2249,86 +2175,88 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s let instruction' = exec_with_glvalue_as_reference instruction in exec_with_block_priority_exception instruction' trans_state' ie var_stmt_info in - let sil_e1', ie_typ = - extract_exp_from_list res_trans_ie.exps - "WARNING: In DeclStmt we expect only one expression returned in recursive call@\n" - in - let _, instrs_assign = - (* variable might be initialized already - do nothing in that case*) - if List.exists ~f:(Exp.equal var_exp) res_trans_ie.initd_exps then ([], []) - else ([], [Sil.Store (var_exp, ie_typ, sil_e1', sil_loc)]) - in - let res_trans_assign = {empty_res_trans with instrs= instrs_assign} in - let all_res_trans = [res_trans_ie; res_trans_assign] in - let res_trans = - PriorityNode.compute_results_to_parent trans_state_pri sil_loc "DeclStmt" var_stmt_info - all_res_trans + let assign_trans_control_opt = + if + (* variable might be initialized already - do nothing in that case*) + List.exists ~f:(Exp.equal var_exp) res_trans_ie.control.initd_exps + then None + else + let sil_e1', ie_typ = res_trans_ie.return in + Some {empty_control with instrs= [Sil.Store (var_exp, ie_typ, sil_e1', sil_loc)]} in - {res_trans with exps= [(var_exp, ie_typ)]} + let all_res_trans = res_trans_ie.control :: Option.to_list assign_trans_control_opt in + PriorityNode.compute_controls_to_parent trans_state_pri sil_loc ~node_name:"DeclStmt" + var_stmt_info all_res_trans + |> mk_trans_result var_exp_typ - and collect_all_decl trans_state var_decls next_nodes stmt_info = - let rec collect_all_decl_inner trans_state var_decls = - let open Clang_ast_t in - let context = trans_state.context in - let procdesc = context.CContext.procdesc in - let procname = Procdesc.get_proc_name procdesc in - let do_var_dec (di, var_name, qual_type, vdi) next_node = - let var_decl = VarDecl (di, var_name, qual_type, vdi) in - let pvar = CVar_decl.sil_var_of_decl context var_decl procname in - let typ = CType_decl.qual_type_to_sil_type context.CContext.tenv qual_type in - CVar_decl.add_var_to_locals procdesc var_decl typ pvar ; - let trans_state' = {trans_state with succ_nodes= next_node} in - init_expr_trans trans_state' (Exp.Lvar pvar, typ) ~qual_type stmt_info - vdi.Clang_ast_t.vdi_init_expr - in - match var_decls with + and collect_all_decl trans_state var_decls next_nodes stmt_info : trans_result = + let open Clang_ast_t in + let context = trans_state.context in + let procdesc = context.CContext.procdesc in + let procname = Procdesc.get_proc_name procdesc in + let do_var_dec var_decl qual_type vdi next_node = + let pvar = CVar_decl.sil_var_of_decl context var_decl procname in + let typ = CType_decl.qual_type_to_sil_type context.CContext.tenv qual_type in + CVar_decl.add_var_to_locals procdesc var_decl typ pvar ; + let trans_state' = {trans_state with succ_nodes= next_node} in + init_expr_trans trans_state' (Exp.Lvar pvar, typ) ~qual_type stmt_info + vdi.Clang_ast_t.vdi_init_expr + in + let rec aux : decl list -> trans_result option = function | [] -> - ({empty_res_trans with root_nodes= next_nodes}, None) - | VarDecl (di, n, qt, vdi) :: var_decls' -> - (* Var are defined when procdesc is created, here we only take care of initialization*) - let res_trans_vd, leaf_nodes_opt = collect_all_decl_inner trans_state var_decls' in - let res_trans_tmp = do_var_dec (di, n, qt, vdi) res_trans_vd.root_nodes in - let leaf_nodes = Option.value ~default:res_trans_tmp.leaf_nodes leaf_nodes_opt in - ( { empty_res_trans with - root_nodes= res_trans_tmp.root_nodes - ; leaf_nodes= [] - ; instrs= res_trans_tmp.instrs @ res_trans_vd.instrs - ; exps= [] - ; initd_exps= res_trans_tmp.initd_exps @ res_trans_vd.initd_exps } - , Some leaf_nodes ) + None + | (VarDecl (_, _, qt, vdi) as var_decl) :: var_decls' -> + (* Var are defined when procdesc is created, here we only take care of initialization *) + let res_trans_tl = aux var_decls' in + let root_nodes_tl, instrs_tl, initd_exps_tl = + match res_trans_tl with + | None -> + (next_nodes, [], []) + | Some {control= {root_nodes; instrs; initd_exps}} -> + (root_nodes, instrs, initd_exps) + in + let res_trans_tmp = do_var_dec var_decl qt vdi root_nodes_tl in + (* keep the last return and leaf_nodes from the list *) + let return, leaf_nodes = + match res_trans_tl with + | None -> + (res_trans_tmp.return, res_trans_tmp.control.leaf_nodes) + | Some {return; control= {leaf_nodes}} -> + (return, leaf_nodes) + in + Some + (mk_trans_result return + { root_nodes= res_trans_tmp.control.root_nodes + ; leaf_nodes + ; instrs= res_trans_tmp.control.instrs @ instrs_tl + ; initd_exps= res_trans_tmp.control.initd_exps @ initd_exps_tl }) | _ :: var_decls' -> - (* Here we can get also record declarations or typedef declarations, which are dealt with somewhere else. - We just handle the variables here. *) - collect_all_decl_inner trans_state var_decls' + (* Here we can get also record declarations or typedef declarations, which are dealt with + somewhere else. We just handle the variables here. *) + aux var_decls' in - let res_trans, leaf_nodes_opt = collect_all_decl_inner trans_state var_decls in - match leaf_nodes_opt with Some leaf_nodes -> {res_trans with leaf_nodes} | None -> res_trans + match aux var_decls with + | Some trans_result -> + trans_result + | None -> + mk_trans_result (mk_fresh_void_exp_typ ()) {empty_control with root_nodes= next_nodes} (* stmt_list is ignored because it contains the same instructions as *) (* the init expression. We use the latter info. *) - and declStmt_trans trans_state decl_list stmt_info = + and declStmt_trans trans_state decl_list stmt_info : trans_result = let succ_nodes = trans_state.succ_nodes in - let res_trans = - let open Clang_ast_t in - match decl_list with - | VarDecl _ :: _ - (* Case for simple variable declarations*) - | CXXRecordDecl _ :: _ - (*C++/C record decl treated in the same way *) - | RecordDecl _ :: _ -> - (* Case for struct *) - collect_all_decl trans_state decl_list succ_nodes stmt_info - | (TypedefDecl _ | TypeAliasDecl _ | UsingDecl _ | UsingDirectiveDecl _) :: _ -> - empty_res_trans - | decl :: _ -> - CFrontend_config.unimplemented __POS__ stmt_info.Clang_ast_t.si_source_range - "In DeclStmt found an unknown declaration type %s" (Clang_ast_j.string_of_decl decl) - | [] -> - assert false - in - res_trans + match (decl_list : Clang_ast_t.decl list) with + | VarDecl _ :: _ | CXXRecordDecl _ :: _ | RecordDecl _ :: _ -> + collect_all_decl trans_state decl_list succ_nodes stmt_info + | (TypedefDecl _ | TypeAliasDecl _ | UsingDecl _ | UsingDirectiveDecl _) :: _ -> + mk_trans_result (mk_fresh_void_exp_typ ()) empty_control + | decl :: _ -> + CFrontend_config.unimplemented __POS__ stmt_info.Clang_ast_t.si_source_range + "In DeclStmt found an unknown declaration type %s" (Clang_ast_j.string_of_decl decl) + | [] -> + assert false and objCPropertyRefExpr_trans trans_state stmt_list = @@ -2342,7 +2270,7 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s (string_of_bool (PriorityNode.is_priority_free trans_state)) ; match trans_state.opaque_exp with | Some exp -> - {empty_res_trans with exps= [exp]} + mk_trans_result exp empty_control | None -> match opaque_value_expr_info.Clang_ast_t.ovei_source_expr with | Some stmt -> @@ -2400,30 +2328,33 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s let sil_loc = CLocation.get_sil_location stmt_info context in let stmt = extract_stmt_from_singleton stmt_list - "WARNING: In CastExpr There must be only one stmt defining the expression to be cast.@\n" + "In CastExpr There must be only one stmt defining the expression to be cast." in let res_trans_stmt = instruction trans_state stmt in let typ = CType_decl.qual_type_to_sil_type context.CContext.tenv expr_info.Clang_ast_t.ei_qual_type in let cast_kind = cast_expr_info.Clang_ast_t.cei_cast_kind in - (* This gives the differnece among cast operations kind*) - let cast_inst, cast_exp = cast_operation cast_kind res_trans_stmt.exps typ sil_loc in - {res_trans_stmt with instrs= res_trans_stmt.instrs @ cast_inst; exps= [cast_exp]} + let exp_typ = res_trans_stmt.return in + (* This gives the difference among cast operations kind *) + let cast_inst, cast_exp = cast_operation cast_kind exp_typ typ sil_loc in + { res_trans_stmt with + control= {res_trans_stmt.control with instrs= res_trans_stmt.control.instrs @ cast_inst} + ; return= cast_exp } (** function used in the computation for both Member_Expr and ObjCIVarRefExpr *) and do_memb_ivar_ref_exp trans_state stmt_info stmt_list decl_ref = let exp_stmt = extract_stmt_from_singleton stmt_list - "WARNING: in MemberExpr there must be only one stmt defining its expression.@\n" + "in MemberExpr there must be only one stmt defining its expression." in (* Don't pass var_exp_typ to child of MemberExpr - this may lead to initializing variable *) (* with wrong value. For example, we don't want p to be initialized with X(1) for:*) (* int p = X(1).field; *) let trans_state' = {trans_state with var_exp_typ= None} in let result_trans_exp_stmt = exec_with_glvalue_as_reference instruction trans_state' exp_stmt in - decl_ref_trans ~source:(`MemberOrIvar result_trans_exp_stmt) trans_state stmt_info decl_ref + decl_ref_trans ~context:(MemberOrIvar result_trans_exp_stmt) trans_state stmt_info decl_ref and objCIvarRefExpr_trans trans_state stmt_info stmt_list obj_c_ivar_ref_expr_info = @@ -2444,16 +2375,12 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s let trans_state_pri = PriorityNode.try_claim_priority_node trans_state stmt_info in let stmt = extract_stmt_from_singleton stmt_list - "WARNING: We expect only one element in stmt list defining the operand in UnaryOperator. \ - NEED FIXING@\n" + "We expect only one element in stmt list defining the operand in UnaryOperator." in let trans_state' = {trans_state_pri with succ_nodes= []} in let res_trans_stmt = instruction trans_state' stmt in (* Assumption: the operand does not create a cfg node*) - let sil_e', _ = - extract_exp_from_list res_trans_stmt.exps - "@\nWARNING: Missing operand in unary operator. NEED FIXING.@\n" - in + let sil_e', _ = res_trans_stmt.return in let ret_typ = CType_decl.qual_type_to_sil_type context.CContext.tenv expr_info.Clang_ast_t.ei_qual_type in @@ -2461,28 +2388,30 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s CArithmetic_trans.unary_operation_instruction context.translation_unit_context unary_operator_info sil_e' ret_typ sil_loc in - let unary_op_res_trans = {empty_res_trans with instrs= instr_op} in - let all_res_trans = [res_trans_stmt; unary_op_res_trans] in - let nname = "UnaryOperator" in - let res_trans_to_parent = - PriorityNode.compute_results_to_parent trans_state_pri sil_loc nname stmt_info all_res_trans - in - {res_trans_to_parent with exps= [(exp_op, ret_typ)]} + let unary_op_control = {empty_control with instrs= instr_op} in + let all_control = [res_trans_stmt.control; unary_op_control] in + PriorityNode.compute_controls_to_parent trans_state_pri sil_loc ~node_name:"UnaryOperator" + stmt_info all_control + |> mk_trans_result (exp_op, ret_typ) and returnStmt_trans trans_state stmt_info stmt_list = let context = trans_state.context in - let succ_nodes = trans_state.succ_nodes in let sil_loc = CLocation.get_sil_location stmt_info context in let procdesc = context.CContext.procdesc in let procname = Procdesc.get_proc_name procdesc in let trans_state_pri = PriorityNode.try_claim_priority_node trans_state stmt_info in + (* Check that the destructor-injecting functions do not create new nodes for return statement + This is ensured by creating a fresh pointer in these functions. *) + let check_destructor_translation = function + | Some {control= {root_nodes}} -> + assert (List.is_empty root_nodes) + | None -> + () + in let mk_ret_node instrs = let destr_trans_result = inject_destructors trans_state_pri stmt_info in - (* `inject_destructors` should not create new nodes for return statement, - this is ensured by creating a fresh pointer in `inject_destructors` - *) - if destr_trans_result.root_nodes <> [] then assert false ; + check_destructor_translation destr_trans_result ; let is_destructor = match procname with | Typ.Procname.ObjC_Cpp cpp_pname -> @@ -2493,15 +2422,16 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s let destructor_res = if is_destructor then cxx_inject_field_destructors_in_destructor_body trans_state_pri stmt_info - else empty_res_trans + else None in (* `cxx_inject_field_destructors_in_destructor_body` should not create new nodes for return statement, this is ensured by creating a fresh pointer in `cxx_inject_field_destructors_in_destructor_body` *) - if destructor_res.root_nodes <> [] then assert false ; + check_destructor_translation destructor_res ; + let instrs_of = function Some {control= {instrs}} -> instrs | None -> [] in let ret_node = create_node (Procdesc.Node.Stmt_node "Return Stmt") - (instrs @ destr_trans_result.instrs @ destructor_res.instrs) + (instrs @ instrs_of destr_trans_result @ instrs_of destructor_res) sil_loc context in Procdesc.node_set_succs_exn context.procdesc ret_node @@ -2532,34 +2462,30 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s {trans_state_pri with succ_nodes= []; var_exp_typ= Some (ret_exp, ret_typ)} in let res_trans_stmt = instruction trans_state' stmt in - let sil_expr, _ = - extract_exp_from_list res_trans_stmt.exps - "WARNING: There should be only one return expression.@\n" - in let ret_instrs = - if List.exists ~f:(Exp.equal ret_exp) res_trans_stmt.initd_exps then [] - else [Sil.Store (ret_exp, ret_type, sil_expr, sil_loc)] + if List.exists ~f:(Exp.equal ret_exp) res_trans_stmt.control.initd_exps then [] + else + let sil_expr, _ = res_trans_stmt.return in + [Sil.Store (ret_exp, ret_type, sil_expr, sil_loc)] in - let instrs = var_instrs @ res_trans_stmt.instrs @ ret_instrs in + let instrs = var_instrs @ res_trans_stmt.control.instrs @ ret_instrs in let ret_node = mk_ret_node instrs in List.iter ~f:(fun n -> Procdesc.node_set_succs_exn procdesc n [ret_node] []) - res_trans_stmt.leaf_nodes ; + res_trans_stmt.control.leaf_nodes ; let root_nodes_to_parent = - if List.length res_trans_stmt.root_nodes > 0 then res_trans_stmt.root_nodes + if List.length res_trans_stmt.control.root_nodes > 0 then + res_trans_stmt.control.root_nodes else [ret_node] in - {empty_res_trans with root_nodes= root_nodes_to_parent; leaf_nodes= []} + mk_trans_result res_trans_stmt.return + {empty_control with root_nodes= root_nodes_to_parent} | [] -> (* return; *) let ret_node = mk_ret_node [] in - {empty_res_trans with root_nodes= [ret_node]; leaf_nodes= []} + mk_trans_result (mk_fresh_void_exp_typ ()) {empty_control with root_nodes= [ret_node]} | _ -> - L.(debug Capture Verbose) - "@\n\ - WARNING: Missing translation of Return Expression. Return Statement ignored. Need \ - fixing!@\n" ; - {empty_res_trans with root_nodes= succ_nodes} + assert false in (* We expect a return with only one expression *) trans_result @@ -2572,7 +2498,7 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s and parenExpr_trans trans_state stmt_list = let stmt = extract_stmt_from_singleton stmt_list - "WARNING: In ParenExpression there should be only one stmt.@\n" + "WARNING: In ParenExpression there should be only one stmt." in instruction trans_state stmt @@ -2700,7 +2626,9 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s if is_by_ref then (trans_results_acc, (Exp.Lvar pvar, pvar, typ) :: captured_vars_acc) else let id, instr = assign_captured_var loc pvar_typ in - let trans_results = {empty_res_trans with instrs= [instr]} in + let trans_results = + mk_trans_result (Exp.Var id, typ) {empty_control with instrs= [instr]} + in (trans_results :: trans_results_acc, (Exp.Var id, pvar, typ) :: captured_vars_acc) in let translate_captured @@ -2747,9 +2675,8 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s let trans_results, captured_vars = List.fold_right ~f:translate_captured ~init:([], []) lei_captures in - let final_trans_result = collect_res_trans context.procdesc trans_results in let closure = Exp.Closure {name= lambda_pname; captured_vars} in - {final_trans_result with exps= [(closure, typ)]} + collect_trans_results context.procdesc ~return:(closure, typ) trans_results and cxxNewExpr_trans trans_state stmt_info expr_info cxx_new_expr_info = @@ -2759,23 +2686,18 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s let trans_state_pri = PriorityNode.try_claim_priority_node trans_state stmt_info in let is_dyn_array = cxx_new_expr_info.Clang_ast_t.xnei_is_array in let source_range = stmt_info.Clang_ast_t.si_source_range in - let size_exp_opt, res_trans_size = + let size_exp_opt, control_size = if is_dyn_array then match CAst_utils.get_stmt_opt cxx_new_expr_info.Clang_ast_t.xnei_array_size_expr source_range with - | Some stmt - -> ( + | Some stmt -> let trans_state_size = {trans_state_pri with succ_nodes= []} in let res_trans_size = instruction trans_state_size stmt in - match res_trans_size.exps with - | [(exp, _)] -> - (Some exp, res_trans_size) - | _ -> - (None, empty_res_trans) ) + (Some (fst res_trans_size.return), Some res_trans_size.control) | None -> - (Some (Exp.Const (Const.Cint IntLit.minus_one)), empty_res_trans) - else (None, empty_res_trans) + (Some (Exp.Const (Const.Cint IntLit.minus_one)), None) + else (None, None) in let placement_args = List.filter_map @@ -2783,18 +2705,20 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s cxx_new_expr_info.Clang_ast_t.xnei_placement_args in let trans_state_placement = {trans_state_pri with succ_nodes= []} in - let res_trans_placement = instructions trans_state_placement placement_args in - let res_trans_new = cpp_new_trans sil_loc typ size_exp_opt res_trans_placement.exps in + let res_trans_placement_control, res_trans_placement_exps = + instructions trans_state_placement placement_args + in + let res_trans_new = cpp_new_trans sil_loc typ size_exp_opt res_trans_placement_exps in let stmt_opt = CAst_utils.get_stmt_opt cxx_new_expr_info.Clang_ast_t.xnei_initializer_expr source_range in let trans_state_init = {trans_state_pri with succ_nodes= []} in let var_exp_typ = - match res_trans_new.exps with - | [(var_exp, ({desc= Tptr (t, _)} as var_typ))] when is_dyn_array -> + match res_trans_new.return with + | var_exp, ({desc= Tptr (t, _)} as var_typ) when is_dyn_array -> (* represent dynamic array as Tarray *) (var_exp, Typ.mk_array ~default:var_typ t) - | [(var_exp, {desc= Tptr (t, _)})] when not is_dyn_array -> + | var_exp, {desc= Tptr (t, _)} when not is_dyn_array -> (var_exp, t) | _ -> assert false @@ -2825,12 +2749,14 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s | _ -> [init_expr_trans trans_state_init var_exp_typ init_stmt_info stmt_opt] in - let all_res_trans = [res_trans_size; res_trans_placement; res_trans_new] @ res_trans_init in - let nname = "CXXNewExpr" in - let result_trans_to_parent = - PriorityNode.compute_results_to_parent trans_state_pri sil_loc nname stmt_info all_res_trans + let all_res_trans = + Option.to_list control_size @ [res_trans_placement_control; res_trans_new.control] + @ List.map ~f:(fun {control} -> control) res_trans_init in - {result_trans_to_parent with exps= res_trans_new.exps} + let node_name = "CXXNewExpr" in + PriorityNode.compute_controls_to_parent trans_state_pri sil_loc ~node_name stmt_info + all_res_trans + |> mk_trans_result res_trans_new.return and cxxDeleteExpr_trans trans_state stmt_info stmt_list delete_expr_info = @@ -2842,19 +2768,16 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s let trans_state_pri = PriorityNode.try_claim_priority_node trans_state stmt_info in let trans_state_param = {trans_state_pri with succ_nodes= []} in let result_trans_param = instruction trans_state_param param in - let exp = - extract_exp_from_list result_trans_param.exps - "WARNING: There should be one expression to delete. @\n" - in + let ret_id_typ, call_return = mk_fresh_void_return () in let call_instr = Sil.Call - ( (Ident.create_fresh Ident.knormal, Typ.mk Tvoid) + ( ret_id_typ , Exp.Const (Const.Cfun fname) - , [exp] + , [result_trans_param.return] , sil_loc , CallFlags.default ) in - let call_res_trans = {empty_res_trans with instrs= [call_instr]} in + let call_res_trans = mk_trans_result call_return {empty_control with instrs= [call_instr]} in let all_res_trans = if false then (* FIXME (t10135167): call destructor on deleted pointer if it's not null *) @@ -2864,21 +2787,19 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s let destruct_stmt_info = {stmt_info with Clang_ast_t.si_pointer= CAst_utils.get_fresh_pointer ()} in - (* use empty_res_trans to avoid ending up with same instruction twice *) + (* use mk_trans_result to avoid ending up with same instruction twice *) (* otherwise it would happen due to structutre of all_res_trans *) - let this_res_trans_destruct = {empty_res_trans with exps= result_trans_param.exps} in + let this_res_trans_destruct = mk_trans_result result_trans_param.return empty_control in let destruct_res_trans = cxx_destructor_call_trans trans_state_pri destruct_stmt_info this_res_trans_destruct deleted_type.Clang_ast_t.qt_type_ptr ~is_inner_destructor:false in - [result_trans_param; destruct_res_trans; call_res_trans] (* --- END OF DEAD CODE --- *) + result_trans_param :: (Option.to_list destruct_res_trans @ [call_res_trans]) + (* --- END OF DEAD CODE --- *) else [result_trans_param; call_res_trans] in - let res_trans = - PriorityNode.compute_results_to_parent trans_state_pri sil_loc "Call delete" stmt_info - all_res_trans - in - {res_trans with exps= []} + PriorityNode.compute_results_to_parent trans_state_pri sil_loc ~node_name:"Call delete" + stmt_info ~return:call_return all_res_trans and materializeTemporaryExpr_trans trans_state stmt_info stmt_list expr_info = @@ -2892,7 +2813,7 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s let temp_exp = match stmt_list with [p] -> p | _ -> assert false in let var_exp_typ = (Exp.Lvar pvar, typ_tmp) in let res_trans = init_expr_trans trans_state var_exp_typ stmt_info (Some temp_exp) in - let _, typ = extract_exp_from_list res_trans.exps "MaterializeExpr initializer missing@\n" in + let _, typ = res_trans.return in let var_data : ProcAttributes.var_data = {name= Pvar.get_name pvar; typ; attributes= []} in Procdesc.append_locals procdesc [var_data] ; res_trans @@ -2926,18 +2847,16 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s let builtin = Exp.Const (Const.Cfun BuiltinDecl.__cast) in let stmt = match stmts with [stmt] -> stmt | _ -> assert false in let res_trans_stmt = exec_with_glvalue_as_reference instruction trans_state' stmt in - let exp = match res_trans_stmt.exps with [e] -> e | _ -> assert false in + let exp = res_trans_stmt.return in let args = [exp; (sizeof_expr, Typ.mk Tvoid)] in let ret_id = Ident.create_fresh Ident.knormal in let call = Sil.Call ((ret_id, cast_type), builtin, args, sil_loc, CallFlags.default) in let res_ex = Exp.Var ret_id in - let res_trans_dynamic_cast = {empty_res_trans with instrs= [call]} in - let all_res_trans = [res_trans_stmt; res_trans_dynamic_cast] in - let nname = "CxxDynamicCast" in - let res_trans_to_parent = - PriorityNode.compute_results_to_parent trans_state_pri sil_loc nname stmt_info all_res_trans - in - {res_trans_to_parent with exps= [(res_ex, cast_type)]} + let res_trans_dynamic_cast = {empty_control with instrs= [call]} in + let all_res_trans = [res_trans_stmt.control; res_trans_dynamic_cast] in + PriorityNode.compute_controls_to_parent trans_state_pri sil_loc ~node_name:"CxxDynamicCast" + stmt_info all_res_trans + |> mk_trans_result (res_ex, cast_type) and cxxDefaultExpr_trans trans_state default_expr_info = @@ -2955,19 +2874,16 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s let res_trans_subexpr_list = List.map ~f:(exec_with_glvalue_as_reference instruction trans_state_param) stmts in - let params = collect_exprs res_trans_subexpr_list in + let params = collect_returns res_trans_subexpr_list in let sil_fun = Exp.Const (Const.Cfun pname) in - let call_instr = - Sil.Call - ((Ident.create_fresh Ident.knormal, ret_typ), sil_fun, params, sil_loc, CallFlags.default) + let ret_id = Ident.create_fresh Ident.knormal in + let call_instr = Sil.Call ((ret_id, ret_typ), sil_fun, params, sil_loc, CallFlags.default) in + let res_trans_call = + mk_trans_result (Exp.Var ret_id, ret_typ) {empty_control with instrs= [call_instr]} in - let res_trans_call = {empty_res_trans with instrs= [call_instr]; exps= []} in let all_res_trans = res_trans_subexpr_list @ [res_trans_call] in - let res_trans_to_parent = - PriorityNode.compute_results_to_parent trans_state_pri sil_loc instr_name stmt_info - all_res_trans - in - {res_trans_to_parent with exps= res_trans_call.exps} + PriorityNode.compute_results_to_parent trans_state_pri sil_loc ~node_name:instr_name stmt_info + ~return:res_trans_call.return all_res_trans and gccAsmStmt_trans trans_state stmt_info stmts = @@ -2987,7 +2903,7 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s and cxxPseudoDestructorExpr_trans () = let fun_name = Typ.Procname.from_string_c_fun CFrontend_config.infer_skip_fun in - {empty_res_trans with exps= [(Exp.Const (Const.Cfun fun_name), Typ.mk Tvoid)]} + mk_trans_result (Exp.Const (Const.Cfun fun_name), Typ.mk Tvoid) empty_control and cxxTypeidExpr_trans trans_state stmt_info stmts expr_info = @@ -2999,9 +2915,9 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s match stmts with | [stmt] -> let trans_state_param = {trans_state_pri with succ_nodes= []} in - instruction trans_state_param stmt + Some (instruction trans_state_param stmt) | _ -> - empty_res_trans + None in let fun_name = BuiltinDecl.__cxx_typeid in let sil_fun = Exp.Const (Const.Cfun fun_name) in @@ -3016,15 +2932,24 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s let field_name = CGeneral_utils.mk_class_field_name class_tname "__type_name" in let ret_exp = Exp.Var ret_id in let field_exp = Exp.Lfield (ret_exp, field_name, typ) in - let args = type_info_objc :: (field_exp, void_typ) :: res_trans_subexpr.exps in + let args = + type_info_objc + :: (field_exp, void_typ) + :: Option.value_map ~default:[] res_trans_subexpr ~f:(fun trans_result -> + [trans_result.return] ) + in let call_instr = Sil.Call ((ret_id, typ), sil_fun, args, sil_loc, CallFlags.default) in - let res_trans_call = {empty_res_trans with instrs= [call_instr]; exps= [(ret_exp, typ)]} in - let all_res_trans = [res_trans_subexpr; res_trans_call] in - let res_trans_to_parent = - PriorityNode.compute_results_to_parent trans_state_pri sil_loc "CXXTypeidExpr" stmt_info - all_res_trans + let res_control = {empty_control with instrs= [call_instr]} in + let all_res_trans = + match res_trans_subexpr with + | Some trans_result -> + [trans_result.control; res_control] + | None -> + [res_control] in - {res_trans_to_parent with exps= res_trans_call.exps} + PriorityNode.compute_controls_to_parent trans_state_pri sil_loc ~node_name:"CXXTypeidExpr" + stmt_info all_res_trans + |> mk_trans_result (ret_exp, typ) and cxxStdInitializerListExpr_trans trans_state stmt_info stmts expr_info = @@ -3036,18 +2961,17 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s let trans_state_pri = PriorityNode.try_claim_priority_node trans_state stmt_info in let trans_state_param = {trans_state_pri with succ_nodes= []} in let res_trans_subexpr_list = List.map ~f:(instruction trans_state_param) stmts in - let params = collect_exprs res_trans_subexpr_list in + let params = collect_returns res_trans_subexpr_list in let sil_fun = Exp.Const (Const.Cfun fun_name) in let ret_id = Ident.create_fresh Ident.knormal in let ret_exp = Exp.Var ret_id in let call_instr = Sil.Call ((ret_id, typ), sil_fun, params, sil_loc, CallFlags.default) in - let res_trans_call = {empty_res_trans with instrs= [call_instr]; exps= [(ret_exp, typ)]} in - let all_res_trans = res_trans_subexpr_list @ [res_trans_call] in - let res_trans_to_parent = - PriorityNode.compute_results_to_parent trans_state_pri sil_loc "CXXStdInitializerListExpr" - stmt_info all_res_trans + let res_trans_call = + mk_trans_result (ret_exp, typ) {empty_control with instrs= [call_instr]} in - {res_trans_to_parent with exps= res_trans_call.exps} + let all_res_trans = res_trans_subexpr_list @ [res_trans_call] in + PriorityNode.compute_results_to_parent trans_state_pri sil_loc + ~node_name:"CXXStdInitializerListExpr" stmt_info ~return:res_trans_call.return all_res_trans and binaryOperator_trans_with_cond trans_state stmt_info stmt_list expr_info binop_info = @@ -3087,12 +3011,15 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s and breakStmt_trans trans_state stmt_info = match trans_state.continuation with - | Some bn -> + | Some bn + -> ( let trans_state' = {trans_state with succ_nodes= bn.break} in - let destr_trans_result = inject_destructors trans_state' stmt_info in - if destr_trans_result.root_nodes <> [] then {destr_trans_result with leaf_nodes= []} - else {empty_res_trans with root_nodes= bn.break} - | _ (* t21762295 *) -> + match inject_destructors trans_state' stmt_info with + | Some ({control= {root_nodes= _ :: _}} as destr_trans_result) -> + {destr_trans_result with control= {destr_trans_result.control with leaf_nodes= []}} + | Some {control= {root_nodes= []}} | None -> + mk_trans_result (mk_fresh_void_exp_typ ()) {empty_control with root_nodes= bn.break} ) + | None (* t21762295 *) -> CFrontend_config.incorrect_assumption __POS__ stmt_info.Clang_ast_t.si_source_range "Break stmt without continuation: %a" (Pp.to_string ~f:Clang_ast_j.string_of_stmt_info) @@ -3101,12 +3028,16 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s and continueStmt_trans trans_state stmt_info = match trans_state.continuation with - | Some bn -> + | Some bn + -> ( let trans_state' = {trans_state with succ_nodes= bn.continue} in - let destr_trans_result = inject_destructors trans_state' stmt_info in - if destr_trans_result.root_nodes <> [] then {destr_trans_result with leaf_nodes= []} - else {empty_res_trans with root_nodes= bn.continue} - | _ (* t21762295 *) -> + match inject_destructors trans_state' stmt_info with + | Some ({control= {root_nodes= _ :: _}} as destr_trans_result) -> + {destr_trans_result with control= {destr_trans_result.control with leaf_nodes= []}} + | Some {control= {root_nodes= []}} | None -> + mk_trans_result (mk_fresh_void_exp_typ ()) {empty_control with root_nodes= bn.continue} + ) + | None (* t21762295 *) -> CFrontend_config.incorrect_assumption __POS__ stmt_info.Clang_ast_t.si_source_range "Continue stmt without continuation: %a" (Pp.to_string ~f:Clang_ast_j.string_of_stmt_info) @@ -3114,25 +3045,34 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s (* Expect that this doesn't happen *) - and trans_into_undefined_expr trans_state expr_info = + and undefined_expr trans_state expr_info = let tenv = trans_state.context.CContext.tenv in let typ = CType_decl.get_type_from_expr_info expr_info tenv in - {empty_res_trans with exps= [(CTrans_utils.undefined_expression (), typ)]} + mk_trans_result (CTrans_utils.undefined_expression (), typ) empty_control (** no-op translated for unsupported instructions that will at least translate subexpressions *) - and skip_unimplemented ~reason trans_state ret_typ stmts = - call_function_with_args reason BuiltinDecl.__infer_skip trans_state ret_typ stmts + and skip_unimplemented ~reason trans_state stmt_info ret_typ stmts = + call_function_with_args reason BuiltinDecl.__infer_skip trans_state stmt_info ret_typ stmts (** Translates a clang instruction into SIL instructions. It takes a a [trans_state] containing - current info on the translation and it returns a [trans_result].*) - and instruction trans_state instr = - let stmt_kind = Clang_ast_proj.get_stmt_kind_string instr in - let stmt_info, stmts = Clang_ast_proj.get_stmt_tuple instr in - let stmt_pointer = stmt_info.Clang_ast_t.si_pointer in - L.(debug Capture Verbose) "@\nPassing from %s '%d' @\n" stmt_kind stmt_pointer ; - let open Clang_ast_t in + current info on the translation and it returns a [trans_result].*) + and instruction trans_state instr : trans_result = + let pp_pointer f instr = + let {Clang_ast_t.si_pointer}, _ = Clang_ast_proj.get_stmt_tuple instr in + Format.pp_print_int f si_pointer + in + L.(debug Capture Verbose) + "Translating statement '%a' (pointer= '%a')@\n@[" + (Pp.to_string ~f:Clang_ast_proj.get_stmt_kind_string) + instr pp_pointer instr ; + let trans_result = instruction_aux trans_state instr in + L.(debug Capture Verbose) "@]" ; + trans_result + + + and instruction_aux trans_state (instr: Clang_ast_t.stmt) = match instr with | GotoStmt (stmt_info, _, {Clang_ast_t.gsi_label= label_name; _}) -> gotoStmt_trans trans_state stmt_info label_name @@ -3167,9 +3107,9 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s ifStmt_trans trans_state stmt_info stmt_list | SwitchStmt (stmt_info, switch_stmt_list) -> switchStmt_trans trans_state stmt_info switch_stmt_list - | CaseStmt _ -> + | CaseStmt ({Clang_ast_t.si_source_range}, _) -> (* where do we even get case stmts outside of the switch stmt? (t21762295) *) - CFrontend_config.incorrect_assumption __POS__ stmt_info.Clang_ast_t.si_source_range + CFrontend_config.incorrect_assumption __POS__ si_source_range "Case statement outside of switch statement: %a" (Pp.to_string ~f:Clang_ast_j.string_of_stmt) instr @@ -3192,7 +3132,7 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s | DeclStmt (stmt_info, _, decl_list) -> declStmt_trans trans_state decl_list stmt_info | DeclRefExpr (stmt_info, _, _, decl_ref_expr_info) -> - declRefExpr_trans trans_state stmt_info decl_ref_expr_info instr + declRefExpr_trans trans_state stmt_info decl_ref_expr_info | ObjCPropertyRefExpr (_, stmt_list, _, _) -> objCPropertyRefExpr_trans trans_state stmt_list | CXXThisExpr (stmt_info, _, expr_info) -> @@ -3274,7 +3214,8 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s | ObjCAtSynchronizedStmt (_, stmt_list) -> objCAtSynchronizedStmt_trans trans_state stmt_list | ObjCIndirectCopyRestoreExpr (_, stmt_list, _) -> - instructions trans_state stmt_list + let control, returns = instructions trans_state stmt_list in + mk_trans_result (last_or_mk_fresh_void_exp_typ returns) control | BlockExpr (stmt_info, _, expr_info, decl) -> blockExpr_trans trans_state stmt_info expr_info decl | ObjCAutoreleasePoolStmt (stmt_info, stmts) -> @@ -3323,7 +3264,7 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s | None -> genericSelectionExprUnknown_trans trans_state stmt_info stmts ) | SizeOfPackExpr _ -> - {empty_res_trans with exps= [(Exp.get_undefined false, Typ.mk Tvoid)]} + mk_trans_result (Exp.get_undefined false, Typ.mk Tvoid) empty_control | GCCAsmStmt (stmt_info, stmts) -> gccAsmStmt_trans trans_state stmt_info stmts | CXXPseudoDestructorExpr _ -> @@ -3342,26 +3283,28 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s | CXXNoexceptExpr (_, _, expr_info, cxx_noexcept_expr_info) -> booleanValue_trans trans_state expr_info cxx_noexcept_expr_info.Clang_ast_t.xnee_value | OffsetOfExpr (_, _, expr_info) | VAArgExpr (_, _, expr_info) -> - trans_into_undefined_expr trans_state expr_info + undefined_expr trans_state expr_info | ArrayInitIndexExpr _ | ArrayInitLoopExpr _ -> no_op_trans trans_state.succ_nodes (* vector instructions for OpenCL etc. we basically ignore these for now; just translate the sub-expressions *) | ObjCAvailabilityCheckExpr (_, _, expr_info, _) -> - trans_into_undefined_expr trans_state expr_info + undefined_expr trans_state expr_info (* Infer somehow ended up in templated non instantiated code - right now it's not supported and failure in those cases is expected. *) - | SubstNonTypeTemplateParmExpr _ - | SubstNonTypeTemplateParmPackExpr _ - | CXXDependentScopeMemberExpr _ -> - CFrontend_config.unimplemented __POS__ stmt_info.Clang_ast_t.si_source_range + | SubstNonTypeTemplateParmExpr ({Clang_ast_t.si_source_range}, _, _) + | SubstNonTypeTemplateParmPackExpr ({Clang_ast_t.si_source_range}, _, _) + | CXXDependentScopeMemberExpr ({Clang_ast_t.si_source_range}, _, _) -> + CFrontend_config.unimplemented __POS__ si_source_range ~ast_node:(Clang_ast_proj.get_stmt_kind_string instr) "Translation of templated code is unsupported: %a" (Pp.to_string ~f:Clang_ast_j.string_of_stmt) instr - | ForStmt (_, _) | WhileStmt (_, _) | DoStmt (_, _) | ObjCForCollectionStmt (_, _) -> - CFrontend_config.incorrect_assumption __POS__ stmt_info.Clang_ast_t.si_source_range - "Unexpected shape for %a: %a" + | ForStmt ({Clang_ast_t.si_source_range}, _) + | WhileStmt ({Clang_ast_t.si_source_range}, _) + | DoStmt ({Clang_ast_t.si_source_range}, _) + | ObjCForCollectionStmt ({Clang_ast_t.si_source_range}, _) -> + CFrontend_config.incorrect_assumption __POS__ si_source_range "Unexpected shape for %a: %a" (Pp.to_string ~f:Clang_ast_proj.get_stmt_kind_string) instr (Pp.to_string ~f:Clang_ast_j.string_of_stmt) @@ -3456,25 +3399,27 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s | SEHTryStmt _ | ShuffleVectorExpr _ | DefaultStmt _ -> - let stmt_info, stmts, ret_typ = + let (stmt_info, stmts), ret_typ = match Clang_ast_proj.get_expr_tuple instr with | Some (stmt_info, stmts, expr_info) -> let ret_typ = CType_decl.get_type_from_expr_info expr_info trans_state.context.tenv in - (stmt_info, stmts, ret_typ) + ((stmt_info, stmts), ret_typ) | None -> - (stmt_info, stmts, Typ.mk Tvoid) + let stmt_tuple = Clang_ast_proj.get_stmt_tuple instr in + (stmt_tuple, Typ.mk Tvoid) in skip_unimplemented ~reason: - (Printf.sprintf "unimplemented construct: %s" - (Clang_ast_proj.get_stmt_kind_string instr)) + (Printf.sprintf "unimplemented construct: %s, found at %s" + (Clang_ast_proj.get_stmt_kind_string instr) + (Clang_ast_j.string_of_source_range stmt_info.Clang_ast_t.si_source_range)) trans_state stmt_info ret_typ stmts (** Function similar to instruction function, but it takes C++ constructor initializer as - an input parameter. *) + an input parameter. *) and cxx_constructor_init_trans ctor_init trans_state = let context = trans_state.context in let source_range = ctor_init.Clang_ast_t.xci_source_range in @@ -3493,53 +3438,56 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s let var_res_trans = match ctor_init.Clang_ast_t.xci_subject with | `Delegating _ | `BaseClass _ -> - let this_exp, this_typ = - extract_exp_from_list this_res_trans.exps - "WARNING: There should be one expression for 'this' in constructor. @\n" - in + let this_exp, this_typ = this_res_trans.return in (* Hack: Strip pointer from type here since cxxConstructExpr_trans expects it this way *) (* it will add pointer back before making it a parameter to a call *) let class_typ = match this_typ.Typ.desc with Tptr (t, _) -> t | _ -> assert false in - {this_res_trans with exps= [(this_exp, class_typ)]} + {this_res_trans with return= (this_exp, class_typ)} | `Member decl_ref -> - decl_ref_trans ~is_constructor_init:true ~source:(`MemberOrIvar this_res_trans) + decl_ref_trans ~is_constructor_init:true ~context:(MemberOrIvar this_res_trans) trans_state' child_stmt_info decl_ref in - let var_exp_typ = - extract_exp_from_list var_res_trans.exps - "WARNING: There should be one expression to initialize in constructor initializer. @\n" - in + let var_exp_typ = var_res_trans.return in let init_expr = ctor_init.Clang_ast_t.xci_init_expr in let init_res_trans = init_expr_trans trans_state' var_exp_typ child_stmt_info init_expr in - PriorityNode.compute_results_to_parent trans_state' sil_loc "Constructor Init" this_stmt_info - [var_res_trans; init_res_trans] + PriorityNode.compute_results_to_parent trans_state' sil_loc ~node_name:"Constructor Init" + this_stmt_info ~return:init_res_trans.return [var_res_trans; init_res_trans] (** Given a translation state and list of translation functions it executes translation *) - and exec_trans_instrs trans_state trans_stmt_fun_list = - let rec exec_trans_instrs_no_rev trans_state rev_trans_fun_list = + and exec_trans_instrs trans_state trans_stmt_fun_list : control * (Exp.t * Typ.t) list = + let rec exec_trans_instrs_rev trans_state rev_trans_fun_list = match rev_trans_fun_list with | [] -> - {empty_res_trans with root_nodes= trans_state.succ_nodes} + ({empty_control with root_nodes= trans_state.succ_nodes}, []) | trans_stmt_fun :: trans_stmt_fun_list' -> let res_trans_s = trans_stmt_fun trans_state in let trans_state' = - if res_trans_s.root_nodes <> [] then - {trans_state with succ_nodes= res_trans_s.root_nodes} + if res_trans_s.control.root_nodes <> [] then + {trans_state with succ_nodes= res_trans_s.control.root_nodes} else trans_state in - let res_trans_tail = exec_trans_instrs_no_rev trans_state' trans_stmt_fun_list' in - { empty_res_trans with - root_nodes= res_trans_tail.root_nodes - ; leaf_nodes= res_trans_s.leaf_nodes - ; instrs= res_trans_tail.instrs @ res_trans_s.instrs - ; exps= res_trans_tail.exps @ res_trans_s.exps - ; initd_exps= res_trans_tail.initd_exps @ res_trans_s.initd_exps } + let control_tail_rev, returns_tail_rev = + exec_trans_instrs_rev trans_state' trans_stmt_fun_list' + in + ( { root_nodes= control_tail_rev.root_nodes + ; leaf_nodes= res_trans_s.control.leaf_nodes + ; instrs= List.rev_append res_trans_s.control.instrs control_tail_rev.instrs + ; initd_exps= + List.rev_append res_trans_s.control.initd_exps control_tail_rev.initd_exps } + , res_trans_s.return :: returns_tail_rev ) in - exec_trans_instrs_no_rev trans_state (List.rev trans_stmt_fun_list) + let rev_control, rev_returns = + exec_trans_instrs_rev trans_state (List.rev trans_stmt_fun_list) + in + ( { rev_control with + instrs= List.rev rev_control.instrs; initd_exps= List.rev rev_control.initd_exps } + , List.rev rev_returns ) + + and get_clang_stmt_trans stmt trans_state = + exec_with_node_creation ~f:instruction trans_state stmt - and get_clang_stmt_trans stmt trans_state = exec_with_node_creation instruction trans_state stmt (* TODO write translate function for cxx constructor exprs *) and get_custom_stmt_trans stmt = @@ -3556,10 +3504,10 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s exec_trans_instrs trans_state stmt_trans_fun - and expression_trans context stmt warning = + and expression_trans context stmt = let trans_state = CTrans_utils.default_trans_state context in let res_trans_stmt = instruction trans_state stmt in - fst (CTrans_utils.extract_exp_from_list res_trans_stmt.exps warning) + fst res_trans_stmt.return let instructions_trans context body extra_instrs exit_node ~is_destructor_wrapper = @@ -3582,15 +3530,19 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s , Clang_ast_t.CompoundStmt (stmt_info', []) ) else if is_destructor then (cxx_inject_field_destructors_in_destructor_body trans_state stmt_info, body) - else (empty_res_trans, body) + else (None, body) in (* Injecting destructor call nodes of fields at the end of the body *) let succ_nodes = - if destructor_res.root_nodes <> [] then destructor_res.root_nodes else trans_state.succ_nodes + match destructor_res with + | Some {control= {root_nodes= _ :: _ as root_nodes}} -> + root_nodes + | Some {control= {root_nodes= []}} | None -> + trans_state.succ_nodes in let trans_state' = {trans_state with succ_nodes} in let instrs = extra_instrs @ [`ClangStmt body] in let instrs_trans = List.map ~f:get_custom_stmt_trans instrs in - let res_trans = exec_trans_instrs trans_state' instrs_trans in - res_trans.root_nodes + let res_control, _ = exec_trans_instrs trans_state' instrs_trans in + res_control.root_nodes end diff --git a/infer/src/clang/cTrans_utils.ml b/infer/src/clang/cTrans_utils.ml index e44c1d2ec..a05de7c38 100644 --- a/infer/src/clang/cTrans_utils.ml +++ b/infer/src/clang/cTrans_utils.ml @@ -14,24 +14,14 @@ module Hashtbl = Caml.Hashtbl module L = Logging -(** Extract the element of a singleton list. If the list is not a singleton It stops the computation - giving a warning. We use this because we assume in many places that a list is just a - singleton. We use the warning if to see which assumption was not correct. *) -let extract_item_from_singleton l warning_string failure_val = +(** Extract the element of a singleton list. If the list is not a singleton it crashes *) +let extract_item_from_singleton l pp warning_string = match l with | [item] -> item | _ -> - L.(debug Capture Medium) "%s" warning_string ; - failure_val - - -let dummy_exp = (Exp.minus_one, Typ.mk (Tint Typ.IInt)) - -(** Extract the element of a singleton list. If the list is not a singleton Gives a warning and - return -1 as standard value indicating something went wrong. *) -let extract_exp_from_list el warning_string = - extract_item_from_singleton el warning_string dummy_exp + L.die InternalError "List has %d elements, 1 expected:@\n[@[%a@]]@\n%s" (List.length l) + (Pp.semicolon_seq pp) l warning_string module Nodes = struct @@ -50,13 +40,9 @@ module Nodes = struct Procdesc.create_node procdesc loc node_kind instrs - let create_prune_node ~branch ~negate_cond e_cond instrs_cond loc if_kind context = - let e_cond', _ = - extract_exp_from_list e_cond - "@\nWARNING: Missing expression for Conditional operator. Need to be fixed" - in - let e_cond'' = if negate_cond then Exp.UnOp (Unop.LNot, e_cond', None) else e_cond' in - let instrs_cond' = instrs_cond @ [Sil.Prune (e_cond'', loc, branch, if_kind)] in + let create_prune_node ~branch ~negate_cond (e_cond, _) instrs_cond loc if_kind context = + let e_cond = if negate_cond then Exp.UnOp (Unop.LNot, e_cond, None) else e_cond in + let instrs_cond' = instrs_cond @ [Sil.Prune (e_cond, loc, branch, if_kind)] in create_node (prune_kind branch if_kind) instrs_cond' loc context @@ -140,20 +126,6 @@ type trans_state = ; opaque_exp: (Exp.t * Typ.t) option ; is_fst_arg_objc_method_call: bool } -(** A translation result. It is returned by the translation function. *) -type trans_result = - { root_nodes: Procdesc.Node.t list (** Top cfg nodes (root) created by the translation *) - ; leaf_nodes: Procdesc.Node.t list (** Bottom cfg nodes (leaf) created by the translate *) - ; instrs: Sil.instr list - (** list of SIL instruction that need to be placed in cfg nodes of the parent*) - ; exps: (Exp.t * Typ.t) list (** SIL expressions resulting from translation of clang stmt *) - ; initd_exps: Exp.t list - ; is_cpp_call_virtual: bool } - -let empty_res_trans = - {root_nodes= []; leaf_nodes= []; instrs= []; exps= []; initd_exps= []; is_cpp_call_virtual= false} - - let default_trans_state context = { context ; succ_nodes= [] @@ -164,31 +136,47 @@ let default_trans_state context = ; is_fst_arg_objc_method_call= false } +type control = + { root_nodes: Procdesc.Node.t list + ; leaf_nodes: Procdesc.Node.t list + ; instrs: Sil.instr list + ; initd_exps: Exp.t list } + +type trans_result = + { control: control + ; return: Exp.t * Typ.t + ; method_name: Typ.Procname.t option + ; is_cpp_call_virtual: bool } + +let empty_control = {root_nodes= []; leaf_nodes= []; instrs= []; initd_exps= []} + +let mk_trans_result ?method_name ?(is_cpp_call_virtual= false) return control = + {control; return; method_name; is_cpp_call_virtual} + + let undefined_expression () = Exp.Var (Ident.create_fresh Ident.knormal) (** Collect the results of translating a list of instructions, and link up the nodes created. *) -let collect_res_trans pdesc l = - let rec collect l rt = - match l with - | [] -> - rt - | rt' :: l' -> - let root_nodes = if rt.root_nodes <> [] then rt.root_nodes else rt'.root_nodes in - let leaf_nodes = if rt'.leaf_nodes <> [] then rt'.leaf_nodes else rt.leaf_nodes in - if rt'.root_nodes <> [] then - List.iter - ~f:(fun n -> Procdesc.node_set_succs_exn pdesc n rt'.root_nodes []) - rt.leaf_nodes ; - collect l' - { root_nodes - ; leaf_nodes - ; instrs= List.rev_append rt'.instrs rt.instrs - ; exps= List.rev_append rt'.exps rt.exps - ; initd_exps= List.rev_append rt'.initd_exps rt.initd_exps - ; is_cpp_call_virtual= false } +let collect_controls pdesc l = + let collect_one result_rev {root_nodes; leaf_nodes; instrs; initd_exps} = + if root_nodes <> [] then + List.iter + ~f:(fun n -> Procdesc.node_set_succs_exn pdesc n root_nodes []) + result_rev.leaf_nodes ; + let root_nodes = if result_rev.root_nodes <> [] then result_rev.root_nodes else root_nodes in + let leaf_nodes = if leaf_nodes <> [] then leaf_nodes else result_rev.leaf_nodes in + { root_nodes + ; leaf_nodes + ; instrs= List.rev_append instrs result_rev.instrs + ; initd_exps= List.rev_append initd_exps result_rev.initd_exps } in - let rt = collect l empty_res_trans in - {rt with instrs= List.rev rt.instrs; exps= List.rev rt.exps; initd_exps= List.rev rt.initd_exps} + let rev_result = List.fold l ~init:empty_control ~f:collect_one in + {rev_result with instrs= List.rev rev_result.instrs; initd_exps= List.rev rev_result.initd_exps} + + +let collect_trans_results pdesc ~return trans_results = + List.map trans_results ~f:(fun {control} -> control) |> collect_controls pdesc + |> mk_trans_result return module PriorityNode = struct @@ -216,16 +204,16 @@ module PriorityNode = struct match pri with Busy p when Int.equal p stmt_info.Clang_ast_t.si_pointer -> true | _ -> false - (* Used by translation functions to handle potenatial cfg nodes. *) + (* Used by translation functions to handle potential cfg nodes. *) (* It connects nodes returned by translation of stmt children and *) (* deals with creating or not a cfg node depending of owning the *) (* priority_node. It returns nodes, ids, instrs that should be passed to parent *) - let compute_results_to_parent trans_state loc nd_name stmt_info res_states_children = - let res_state = collect_res_trans trans_state.context.procdesc res_states_children in + let compute_controls_to_parent trans_state loc ~node_name stmt_info res_states_children = + let res_state = collect_controls trans_state.context.procdesc res_states_children in let create_node = own_priority_node trans_state.priority stmt_info && res_state.instrs <> [] in if create_node then ( (* We need to create a node *) - let node_kind = Procdesc.Node.Stmt_node nd_name in + let node_kind = Procdesc.Node.Stmt_node node_name in let node = Nodes.create_node node_kind res_state.instrs loc trans_state.context in Procdesc.node_set_succs_exn trans_state.context.procdesc node trans_state.succ_nodes [] ; List.iter @@ -233,10 +221,23 @@ module PriorityNode = struct res_state.leaf_nodes ; (* Invariant: if root_nodes is empty then the params have not created a node.*) let root_nodes = if res_state.root_nodes <> [] then res_state.root_nodes else [node] in - {res_state with root_nodes; leaf_nodes= [node]; instrs= []; exps= []} ) - else - (* The node is created by the parent. We just pass back nodes/leafs params *) - {res_state with exps= []} + {res_state with root_nodes; leaf_nodes= [node]; instrs= []} ) + else (* The node is created by the parent. We just pass back nodes/leafs params *) + res_state + + + let compute_results_to_parent trans_state loc ~node_name stmt_info ~return trans_results = + List.map trans_results ~f:(fun trans_result -> trans_result.control) + |> compute_controls_to_parent trans_state loc ~node_name stmt_info |> mk_trans_result return + + + let compute_control_to_parent trans_state loc ~node_name stmt_info control = + compute_controls_to_parent trans_state loc ~node_name stmt_info [control] + + + let compute_result_to_parent trans_state loc ~node_name stmt_info trans_result = + compute_control_to_parent trans_state loc ~node_name stmt_info trans_result.control + |> mk_trans_result trans_result.return end module Loops = struct @@ -355,12 +356,10 @@ let create_alloc_instrs ~alloc_builtin ?size_exp ?placement_args_exps sil_loc fu let alloc_trans trans_state ~alloc_builtin loc stmt_info function_type = let function_type, instrs, exp = create_alloc_instrs ~alloc_builtin loc function_type in - let res_trans_tmp = {empty_res_trans with instrs} in - let res_trans = - let nname = "Call alloc" in - PriorityNode.compute_results_to_parent trans_state loc nname stmt_info [res_trans_tmp] - in - {res_trans with exps= [(exp, function_type)]} + let control_tmp = {empty_control with instrs} in + PriorityNode.compute_control_to_parent trans_state loc ~node_name:"Call alloc" stmt_info + control_tmp + |> mk_trans_result (exp, function_type) let objc_new_trans trans_state ~alloc_builtin loc stmt_info cls_name function_type = @@ -382,12 +381,10 @@ let objc_new_trans trans_state ~alloc_builtin loc stmt_info cls_name function_ty Sil.Call (ret_id_typ, Exp.Const (Const.Cfun pname), args, loc, call_flags) in let instrs = alloc_stmt_call @ [init_stmt_call] in - let res_trans_tmp = {empty_res_trans with instrs} in - let res_trans = - let nname = "Call objC new" in - PriorityNode.compute_results_to_parent trans_state loc nname stmt_info [res_trans_tmp] - in - {res_trans with exps= [(Exp.Var init_ret_id, alloc_ret_type)]} + let res_trans_tmp = {empty_control with instrs} in + let node_name = "Call objC new" in + PriorityNode.compute_control_to_parent trans_state loc ~node_name stmt_info res_trans_tmp + |> mk_trans_result (Exp.Var init_ret_id, alloc_ret_type) let new_or_alloc_trans trans_state loc stmt_info qual_type class_name_opt selector = @@ -421,7 +418,7 @@ let cpp_new_trans sil_loc function_type size_exp placement_args_exps = let function_type, stmt_call, exp = create_alloc_instrs ~alloc_builtin ?size_exp ~placement_args_exps sil_loc function_type in - {empty_res_trans with instrs= stmt_call; exps= [(exp, function_type)]} + mk_trans_result (exp, function_type) {empty_control with instrs= stmt_call} let create_call_to_free_cf sil_loc exp typ = @@ -446,7 +443,7 @@ let dereference_var_sil (exp, typ) sil_loc = (** Given trans_result with ONE expression, create temporary variable with value of an expression assigned to it *) let dereference_value_from_result sil_loc trans_result ~strip_pointer = - let obj_sil, class_typ = extract_exp_from_list trans_result.exps "" in + let obj_sil, class_typ = trans_result.return in let typ_no_ptr = match class_typ.Typ.desc with | Tptr (typ, _) -> @@ -458,15 +455,16 @@ let dereference_value_from_result sil_loc trans_result ~strip_pointer = in let cast_typ = if strip_pointer then typ_no_ptr else class_typ in let cast_inst, cast_exp = dereference_var_sil (obj_sil, cast_typ) sil_loc in - {trans_result with instrs= trans_result.instrs @ cast_inst; exps= [(cast_exp, cast_typ)]} + { trans_result with + control= {trans_result.control with instrs= trans_result.control.instrs @ cast_inst} + ; return= (cast_exp, cast_typ) } -let cast_operation cast_kind exps cast_typ sil_loc = - let exp, typ = extract_exp_from_list exps "" in +let cast_operation cast_kind ((exp, typ) as exp_typ) cast_typ sil_loc = match cast_kind with | `NoOp | `DerivedToBase | `UncheckedDerivedToBase -> (* These casts ignore change of type *) - ([], (exp, typ)) + ([], exp_typ) | `BitCast | `IntegralCast | `IntegralToBoolean -> (* This is treated as a nop by returning the same expressions exps*) ([], (exp, cast_typ)) @@ -491,20 +489,17 @@ let cast_operation cast_kind exps cast_typ sil_loc = let trans_assertion_failure sil_loc (context: CContext.t) = let assert_fail_builtin = Exp.Const (Const.Cfun BuiltinDecl.__infer_fail) in let args = [(Exp.Const (Const.Cstr Config.default_failure_name), Typ.mk Tvoid)] in + let ret_id = Ident.create_fresh Ident.knormal in + let ret_typ = Typ.mk Tvoid in let call_instr = - Sil.Call - ( (Ident.create_fresh Ident.knormal, Typ.mk Tvoid) - , assert_fail_builtin - , args - , sil_loc - , CallFlags.default ) + Sil.Call ((ret_id, ret_typ), assert_fail_builtin, args, sil_loc, CallFlags.default) in let exit_node = Procdesc.get_exit_node (CContext.get_procdesc context) and failure_node = Nodes.create_node (Procdesc.Node.Stmt_node "Assertion failure") [call_instr] sil_loc context in Procdesc.node_set_succs_exn context.procdesc failure_node [exit_node] [] ; - {empty_res_trans with root_nodes= [failure_node]} + mk_trans_result (Exp.Var ret_id, ret_typ) {empty_control with root_nodes= [failure_node]} let trans_assume_false sil_loc (context: CContext.t) succ_nodes = @@ -512,7 +507,8 @@ let trans_assume_false sil_loc (context: CContext.t) succ_nodes = let instrs_cond = [Sil.Prune (Exp.zero, sil_loc, true, if_kind)] in let prune_node = Nodes.create_node (Nodes.prune_kind true if_kind) instrs_cond sil_loc context in Procdesc.node_set_succs_exn context.procdesc prune_node succ_nodes [] ; - {empty_res_trans with root_nodes= [prune_node]; leaf_nodes= [prune_node]} + mk_trans_result (Exp.zero, Typ.(mk (Tint IInt))) + {empty_control with root_nodes= [prune_node]; leaf_nodes= [prune_node]} let trans_assertion trans_state sil_loc = @@ -535,16 +531,15 @@ let trans_std_addressof params_trans_res = let trans_replace_with_deref_first_arg sil_loc params_trans_res ~cxx_method_call = let first_arg_res_trans = - match params_trans_res with - | _ :: fst_arg_res :: _ when not cxx_method_call -> - fst_arg_res - | ({exps= _method_exp :: rest} as fst_arg_res) :: _ when cxx_method_call -> - (* method_deref_trans uses a different format to store the first argument: it stores the - [method_exp] first. We need to get rid of first exp before calling - dereference_value_from_result *) - {fst_arg_res with exps= rest} - | _ -> - assert false + if cxx_method_call then + match params_trans_res with + | fst_arg_res :: _ -> + assert (Option.is_some fst_arg_res.method_name) ; + fst_arg_res + | [] -> + assert false + else + match params_trans_res with _ :: fst_arg_res :: _ -> fst_arg_res | [] | [_] -> assert false in dereference_value_from_result sil_loc first_arg_res_trans ~strip_pointer:true @@ -565,16 +560,13 @@ let cxx_method_builtin_trans trans_state loc params_trans_res pname = else None -let define_condition_side_effects e_cond instrs_cond sil_loc = - let e', typ = - extract_exp_from_list e_cond "@\nWARNING: Missing expression in IfStmt. Need to be fixed@\n" - in - match e' with +let define_condition_side_effects ((e_cond_exp, e_cond_typ) as e_cond) instrs_cond sil_loc = + match e_cond_exp with | Exp.Lvar pvar -> let id = Ident.create_fresh Ident.knormal in - ([(Exp.Var id, typ)], [Sil.Load (id, Exp.Lvar pvar, typ, sil_loc)]) + ((Exp.Var id, e_cond_typ), [Sil.Load (id, Exp.Lvar pvar, e_cond_typ, sil_loc)]) | _ -> - ([(e', typ)], instrs_cond) + (e_cond, instrs_cond) let is_superinstance mei = @@ -584,7 +576,7 @@ let is_superinstance mei = let is_null_stmt s = match s with Clang_ast_t.NullStmt _ -> true | _ -> false let extract_stmt_from_singleton stmt_list warning_string = - extract_item_from_singleton stmt_list warning_string (CAst_utils.dummy_stmt ()) + extract_item_from_singleton stmt_list (Pp.to_string ~f:Clang_ast_j.string_of_stmt) warning_string module Self = struct @@ -596,7 +588,7 @@ module Self = struct let add_self_parameter_for_super_instance stmt_info context procname loc mei = if is_superinstance mei then - let typ, self_expr, ins = + let typ, self_expr, instrs = let t' = CType.add_pointer_to_typ (Typ.mk (Tstruct (CContext.get_curr_class_typename stmt_info context))) @@ -605,8 +597,8 @@ module Self = struct let id = Ident.create_fresh Ident.knormal in (t', Exp.Var id, [Sil.Load (id, e, t', loc)]) in - {empty_res_trans with exps= [(self_expr, typ)]; instrs= ins} - else empty_res_trans + Some (mk_trans_result (self_expr, typ) {empty_control with instrs}) + else None let is_var_self pvar is_objc_method = @@ -636,3 +628,20 @@ let is_logical_negation_of_int tenv ei uoi = true | _, _ -> false + + +let mk_fresh_void_exp_typ () = (Exp.Var (Ident.create_fresh Ident.knormal), Typ.mk Tvoid) + +let mk_fresh_void_id_typ () = (Ident.create_fresh Ident.knormal, Typ.mk Tvoid) + +let mk_fresh_void_return () = + let id = Ident.create_fresh Ident.knormal and void = Typ.mk Tvoid in + ((id, void), (Exp.Var id, void)) + + +let last_or_mk_fresh_void_exp_typ exp_typs = + match List.last exp_typs with + | Some last_exp_typ -> + last_exp_typ + | None -> + mk_fresh_void_exp_typ () diff --git a/infer/src/clang/cTrans_utils.mli b/infer/src/clang/cTrans_utils.mli index 977b82863..f0b27f464 100644 --- a/infer/src/clang/cTrans_utils.mli +++ b/infer/src/clang/cTrans_utils.mli @@ -30,33 +30,50 @@ type trans_state = ; opaque_exp: (Exp.t * Typ.t) option ; is_fst_arg_objc_method_call: bool } -(** A translation result. It is returned by the translation function. *) -type trans_result = +val default_trans_state : CContext.t -> trans_state + +(** Part of the translation result that is (loosely) related to control flow graph + construction. More importantly, this is the part of a [trans_result] that some internal + translation functions work on when constructing a [trans_result] before the other components of + the translation result are available (such as the return expression). This is made into a + separate type to make intermediate computations easier to write and easier to typecheck. *) +type control = { root_nodes: Procdesc.Node.t list (** Top cfg nodes (root) created by the translation *) ; leaf_nodes: Procdesc.Node.t list (** Bottom cfg nodes (leaf) created by the translate *) ; instrs: Sil.instr list (** list of SIL instruction that need to be placed in cfg nodes of the parent*) - ; exps: (Exp.t * Typ.t) list (** SIL expressions resulting from translation of clang stmt *) - ; initd_exps: Exp.t list + ; initd_exps: Exp.t list (** list of expressions that are initialised by the instructions *) } + +(** A translation result. It is returned by the translation function. *) +type trans_result = + { control: control + ; return: Exp.t * Typ.t (** value returned by the translated statement *) + ; method_name: Typ.Procname.t option + (** in the specific case of translating a method call in C++, we get the method name called + at the same time we get the [this] object that contains the method. The [this] instance + object is returned as the [return] field, while the method to call is filled in here. + This field is [None] in all other cases. *) ; is_cpp_call_virtual: bool } -val empty_res_trans : trans_result +val empty_control : control -val default_trans_state : CContext.t -> trans_state +val mk_trans_result : + ?method_name:BuiltinDecl.t -> ?is_cpp_call_virtual:bool -> Exp.t * Typ.typ -> control + -> trans_result val undefined_expression : unit -> Exp.t -val collect_res_trans : Procdesc.t -> trans_result list -> trans_result +val collect_controls : Procdesc.t -> control list -> control (** Collect the results of translating a list of instructions, and link up the nodes created. *) +val collect_trans_results : Procdesc.t -> return:Exp.t * Typ.t -> trans_result list -> trans_result + val is_return_temp : continuation option -> bool val mk_cond_continuation : continuation option -> continuation option -val extract_exp_from_list : (Exp.t * Typ.t) list -> string -> Exp.t * Typ.t - val define_condition_side_effects : - (Exp.t * Typ.t) list -> Sil.instr list -> Location.t -> (Exp.t * Typ.t) list * Sil.instr list + Exp.t * Typ.t -> Sil.instr list -> Location.t -> (Exp.t * Typ.t) * Sil.instr list val extract_stmt_from_singleton : Clang_ast_t.stmt list -> string -> Clang_ast_t.stmt @@ -68,8 +85,7 @@ val dereference_value_from_result : expression assigned to it *) val cast_operation : - Clang_ast_t.cast_kind -> (Exp.t * Typ.t) list -> Typ.t -> Location.t - -> Sil.instr list * (Exp.t * Typ.t) + Clang_ast_t.cast_kind -> Exp.t * Typ.t -> Typ.t -> Location.t -> Sil.instr list * (Exp.t * Typ.t) val trans_assertion : trans_state -> Location.t -> trans_result @@ -95,8 +111,8 @@ module Nodes : sig Procdesc.Node.nodekind -> Sil.instr list -> Location.t -> CContext.t -> Procdesc.Node.t val create_prune_node : - branch:bool -> negate_cond:bool -> (Exp.t * Typ.t) list -> Sil.instr list -> Location.t - -> Sil.if_kind -> CContext.t -> Procdesc.Node.t + branch:bool -> negate_cond:bool -> Exp.t * Typ.t -> Sil.instr list -> Location.t -> Sil.if_kind + -> CContext.t -> Procdesc.Node.t val is_true_prune_node : Procdesc.Node.t -> bool end @@ -121,14 +137,23 @@ module PriorityNode : sig val own_priority_node : t -> Clang_ast_t.stmt_info -> bool - (* Used by translation functions to handle potenatial cfg nodes. *) - (* It connects nodes returned by translation of stmt children and *) - (* deals with creating or not a cfg node depending of owning the *) - (* priority_node. It returns nodes, ids, instrs that should be passed to parent *) + val compute_controls_to_parent : + trans_state -> Location.t -> node_name:string -> Clang_ast_t.stmt_info -> control list + -> control + (** Used by translation functions to handle potential cfg nodes. It connects nodes returned by the + translation of stmt children and deals with creating or not a cfg node depending of owning the + priority_node. It returns the [control] that should be passed to the parent. *) val compute_results_to_parent : - trans_state -> Location.t -> string -> Clang_ast_t.stmt_info -> trans_result list + trans_state -> Location.t -> node_name:string -> Clang_ast_t.stmt_info -> return:Exp.t * Typ.t + -> trans_result list -> trans_result + (** convenience wrapper around [compute_controls_to_parent] *) + + val compute_result_to_parent : + trans_state -> Location.t -> node_name:string -> Clang_ast_t.stmt_info -> trans_result -> trans_result + (** convenience function like [compute_results_to_parent] when there is a single [trans_result] + to consider *) end (** Module for translating goto instructions by keeping a map of labels. *) @@ -171,10 +196,18 @@ module Self : sig val add_self_parameter_for_super_instance : Clang_ast_t.stmt_info -> CContext.t -> Typ.Procname.t -> Location.t - -> Clang_ast_t.obj_c_message_expr_info -> trans_result + -> Clang_ast_t.obj_c_message_expr_info -> trans_result option val is_var_self : Pvar.t -> bool -> bool end val is_logical_negation_of_int : Tenv.t -> Clang_ast_t.expr_info -> Clang_ast_t.unary_operator_info -> bool + +val mk_fresh_void_exp_typ : unit -> Exp.t * Typ.t + +val mk_fresh_void_id_typ : unit -> Ident.t * Typ.t + +val mk_fresh_void_return : unit -> (Ident.t * Typ.t) * (Exp.t * Typ.t) + +val last_or_mk_fresh_void_exp_typ : (Exp.t * Typ.t) list -> Exp.t * Typ.t diff --git a/infer/tests/build_systems/codetoanalyze/clang_translation/src/main.cpp.dot b/infer/tests/build_systems/codetoanalyze/clang_translation/src/main.cpp.dot index 2263c6e12..e01b818e1 100644 --- a/infer/tests/build_systems/codetoanalyze/clang_translation/src/main.cpp.dot +++ b/infer/tests/build_systems/codetoanalyze/clang_translation/src/main.cpp.dot @@ -7,7 +7,7 @@ digraph cfg { "atomic_flag_clear#std#17550914922100779771.d1fb16da8327178ccc23af6843a8ea0b_2" [label="2: Exit std::atomic_flag_clear \n " color=yellow style=filled] -"atomic_flag_clear#std#17550914922100779771.d1fb16da8327178ccc23af6843a8ea0b_3" [label="3: Call _fun_std::atomic_flag_clear \n n$0=*&f:std::atomic_flag* [line 967, column 51]\n _=*n$0:std::atomic_flag [line 967, column 51]\n n$2=_fun_std::atomic_flag_clear(n$0:std::atomic_flag*,5:int) [line 967, column 51]\n " shape="box"] +"atomic_flag_clear#std#17550914922100779771.d1fb16da8327178ccc23af6843a8ea0b_3" [label="3: Call _fun_std::atomic_flag_clear \n n$1=*&f:std::atomic_flag* [line 967, column 51]\n _=*n$1:std::atomic_flag [line 967, column 51]\n n$3=_fun_std::atomic_flag_clear(n$1:std::atomic_flag*,5:int) [line 967, column 51]\n " shape="box"] "atomic_flag_clear#std#17550914922100779771.d1fb16da8327178ccc23af6843a8ea0b_3" -> "atomic_flag_clear#std#17550914922100779771.d1fb16da8327178ccc23af6843a8ea0b_2" ; @@ -18,7 +18,7 @@ digraph cfg { "atomic_flag_clear#std#8417018393663174481.295be794cdae89c82fc079ad828db14c_2" [label="2: Exit std::atomic_flag_clear \n " color=yellow style=filled] -"atomic_flag_clear#std#8417018393663174481.295be794cdae89c82fc079ad828db14c_3" [label="3: Call _fun_std::atomic_flag_clear \n n$0=*&f:std::atomic_flag* [line 966, column 60]\n _=*n$0:std::atomic_flag [line 966, column 60]\n n$2=_fun_std::atomic_flag_clear(n$0:std::atomic_flag*,5:int) [line 966, column 60]\n " shape="box"] +"atomic_flag_clear#std#8417018393663174481.295be794cdae89c82fc079ad828db14c_3" [label="3: Call _fun_std::atomic_flag_clear \n n$1=*&f:std::atomic_flag* [line 966, column 60]\n _=*n$1:std::atomic_flag [line 966, column 60]\n n$3=_fun_std::atomic_flag_clear(n$1:std::atomic_flag*,5:int) [line 966, column 60]\n " shape="box"] "atomic_flag_clear#std#8417018393663174481.295be794cdae89c82fc079ad828db14c_3" -> "atomic_flag_clear#std#8417018393663174481.295be794cdae89c82fc079ad828db14c_2" ; @@ -29,7 +29,7 @@ digraph cfg { "atomic_flag_clear_explicit#std#13508243229460098920.9096df62446733c75716182054ac50b0_2" [label="2: Exit std::atomic_flag_clear_explicit \n " color=yellow style=filled] -"atomic_flag_clear_explicit#std#13508243229460098920.9096df62446733c75716182054ac50b0_3" [label="3: Call _fun_std::atomic_flag_clear \n n$0=*&f:std::atomic_flag* [line 973, column 3]\n _=*n$0:std::atomic_flag [line 973, column 3]\n n$2=*&mo:int [line 973, column 12]\n n$3=_fun_std::atomic_flag_clear(n$0:std::atomic_flag*,n$2:int) [line 973, column 3]\n " shape="box"] +"atomic_flag_clear_explicit#std#13508243229460098920.9096df62446733c75716182054ac50b0_3" [label="3: Call _fun_std::atomic_flag_clear \n n$1=*&f:std::atomic_flag* [line 973, column 3]\n _=*n$1:std::atomic_flag [line 973, column 3]\n n$3=*&mo:int [line 973, column 12]\n n$4=_fun_std::atomic_flag_clear(n$1:std::atomic_flag*,n$3:int) [line 973, column 3]\n " shape="box"] "atomic_flag_clear_explicit#std#13508243229460098920.9096df62446733c75716182054ac50b0_3" -> "atomic_flag_clear_explicit#std#13508243229460098920.9096df62446733c75716182054ac50b0_2" ; @@ -40,7 +40,7 @@ digraph cfg { "atomic_flag_clear_explicit#std#17643441563504553916.f821a0b7a94ce430273c34c2a0bc2777_2" [label="2: Exit std::atomic_flag_clear_explicit \n " color=yellow style=filled] -"atomic_flag_clear_explicit#std#17643441563504553916.f821a0b7a94ce430273c34c2a0bc2777_3" [label="3: Call _fun_std::atomic_flag_clear \n n$0=*&f:std::atomic_flag* [line 970, column 3]\n _=*n$0:std::atomic_flag [line 970, column 3]\n n$2=*&mo:int [line 970, column 12]\n n$3=_fun_std::atomic_flag_clear(n$0:std::atomic_flag*,n$2:int) [line 970, column 3]\n " shape="box"] +"atomic_flag_clear_explicit#std#17643441563504553916.f821a0b7a94ce430273c34c2a0bc2777_3" [label="3: Call _fun_std::atomic_flag_clear \n n$1=*&f:std::atomic_flag* [line 970, column 3]\n _=*n$1:std::atomic_flag [line 970, column 3]\n n$3=*&mo:int [line 970, column 12]\n n$4=_fun_std::atomic_flag_clear(n$1:std::atomic_flag*,n$3:int) [line 970, column 3]\n " shape="box"] "atomic_flag_clear_explicit#std#17643441563504553916.f821a0b7a94ce430273c34c2a0bc2777_3" -> "atomic_flag_clear_explicit#std#17643441563504553916.f821a0b7a94ce430273c34c2a0bc2777_2" ; @@ -124,23 +124,23 @@ digraph cfg { "main.fad58de7366495db4650cfefac2fcd61_3" -> "main.fad58de7366495db4650cfefac2fcd61_2" ; -"main.fad58de7366495db4650cfefac2fcd61_4" [label="4: DeclStmt \n n$4=_fun_std::basic_string,std::allocator>_basic_string(&s:std::basic_string,std::allocator>*,\"1234\":char const *) [line 22, column 15]\n " shape="box"] +"main.fad58de7366495db4650cfefac2fcd61_4" [label="4: DeclStmt \n n$5=_fun_std::basic_string,std::allocator>_basic_string(&s:std::basic_string,std::allocator>*,\"1234\":char const *) [line 22, column 15]\n " shape="box"] "main.fad58de7366495db4650cfefac2fcd61_4" -> "main.fad58de7366495db4650cfefac2fcd61_3" ; -"main.fad58de7366495db4650cfefac2fcd61_5" [label="5: DeclStmt \n n$6=_fun_std::shared_ptr_shared_ptr(&x:int**) [line 21, column 24]\n n$5=*&x:int* [line 21, column 24]\n " shape="box"] +"main.fad58de7366495db4650cfefac2fcd61_5" [label="5: DeclStmt \n n$7=_fun_std::shared_ptr_shared_ptr(&x:int**) [line 21, column 24]\n n$6=*&x:int* [line 21, column 24]\n " shape="box"] "main.fad58de7366495db4650cfefac2fcd61_5" -> "main.fad58de7366495db4650cfefac2fcd61_4" ; -"main.fad58de7366495db4650cfefac2fcd61_6" [label="6: Call _fun_external::fun \n n$7=_fun_external::fun(1:int) [line 20, column 3]\n " shape="box"] +"main.fad58de7366495db4650cfefac2fcd61_6" [label="6: Call _fun_external::fun \n n$8=_fun_external::fun(1:int) [line 20, column 3]\n " shape="box"] "main.fad58de7366495db4650cfefac2fcd61_6" -> "main.fad58de7366495db4650cfefac2fcd61_5" ; -"main.fad58de7366495db4650cfefac2fcd61_7" [label="7: Call _fun_internal_exclude::fun \n n$8=_fun_internal_exclude::fun(1:int) [line 19, column 3]\n " shape="box"] +"main.fad58de7366495db4650cfefac2fcd61_7" [label="7: Call _fun_internal_exclude::fun \n n$9=_fun_internal_exclude::fun(1:int) [line 19, column 3]\n " shape="box"] "main.fad58de7366495db4650cfefac2fcd61_7" -> "main.fad58de7366495db4650cfefac2fcd61_6" ; -"main.fad58de7366495db4650cfefac2fcd61_8" [label="8: Call _fun_internal::fun \n n$9=_fun_internal::fun(1:int) [line 18, column 3]\n " shape="box"] +"main.fad58de7366495db4650cfefac2fcd61_8" [label="8: Call _fun_internal::fun \n n$10=_fun_internal::fun(1:int) [line 18, column 3]\n " shape="box"] "main.fad58de7366495db4650cfefac2fcd61_8" -> "main.fad58de7366495db4650cfefac2fcd61_7" ; @@ -155,7 +155,7 @@ digraph cfg { "unused_deref_in_header#15260603227785084028.ec2f844a26989dc35e9856ba0d7a485b_3" -> "unused_deref_in_header#15260603227785084028.ec2f844a26989dc35e9856ba0d7a485b_2" ; -"unused_deref_in_header#15260603227785084028.ec2f844a26989dc35e9856ba0d7a485b_4" [label="4: DeclStmt \n n$2=_fun_internal::used_in_main_header(0:int) [line 17, column 11]\n *&x:int=n$2 [line 17, column 3]\n " shape="box"] +"unused_deref_in_header#15260603227785084028.ec2f844a26989dc35e9856ba0d7a485b_4" [label="4: DeclStmt \n n$3=_fun_internal::used_in_main_header(0:int) [line 17, column 11]\n *&x:int=n$3 [line 17, column 3]\n " shape="box"] "unused_deref_in_header#15260603227785084028.ec2f844a26989dc35e9856ba0d7a485b_4" -> "unused_deref_in_header#15260603227785084028.ec2f844a26989dc35e9856ba0d7a485b_3" ; @@ -177,7 +177,7 @@ digraph cfg { "__infer_atomic_base#__infer_atomic_base#std#{13775723528237147754|constexpr}.1a6095f0713eed47cffb337d5bd470ba_2" [label="2: Exit std::__infer_atomic_base___infer_atomic_base \n " color=yellow style=filled] -"__infer_atomic_base#__infer_atomic_base#std#{13775723528237147754|constexpr}.1a6095f0713eed47cffb337d5bd470ba_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$1=*&desired:long [line 167, column 61]\n *n$0._wrapped_value:long=n$1 [line 167, column 46]\n " shape="box"] +"__infer_atomic_base#__infer_atomic_base#std#{13775723528237147754|constexpr}.1a6095f0713eed47cffb337d5bd470ba_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$3=*&desired:long [line 167, column 61]\n *n$2._wrapped_value:long=n$3 [line 167, column 46]\n " shape="box"] "__infer_atomic_base#__infer_atomic_base#std#{13775723528237147754|constexpr}.1a6095f0713eed47cffb337d5bd470ba_3" -> "__infer_atomic_base#__infer_atomic_base#std#{13775723528237147754|constexpr}.1a6095f0713eed47cffb337d5bd470ba_2" ; @@ -188,7 +188,7 @@ digraph cfg { "__infer_atomic_base#__infer_atomic_base#std#{7791849041241637472|constexpr}.44bc6742f53642a5ddb7e71e80b34b68_2" [label="2: Exit std::__infer_atomic_base___infer_atomic_base \n " color=yellow style=filled] -"__infer_atomic_base#__infer_atomic_base#std#{7791849041241637472|constexpr}.44bc6742f53642a5ddb7e71e80b34b68_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$1=*&desired:unsigned long [line 167, column 61]\n *n$0._wrapped_value:unsigned long=n$1 [line 167, column 46]\n " shape="box"] +"__infer_atomic_base#__infer_atomic_base#std#{7791849041241637472|constexpr}.44bc6742f53642a5ddb7e71e80b34b68_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$3=*&desired:unsigned long [line 167, column 61]\n *n$2._wrapped_value:unsigned long=n$3 [line 167, column 46]\n " shape="box"] "__infer_atomic_base#__infer_atomic_base#std#{7791849041241637472|constexpr}.44bc6742f53642a5ddb7e71e80b34b68_3" -> "__infer_atomic_base#__infer_atomic_base#std#{7791849041241637472|constexpr}.44bc6742f53642a5ddb7e71e80b34b68_2" ; @@ -199,7 +199,7 @@ digraph cfg { "__infer_atomic_base#__infer_atomic_base#std#{11319810518798892734|constexpr}.74d2c2ce173fcccf9cf8bc068d35c1fb_2" [label="2: Exit std::__infer_atomic_base___infer_atomic_base \n " color=yellow style=filled] -"__infer_atomic_base#__infer_atomic_base#std#{11319810518798892734|constexpr}.74d2c2ce173fcccf9cf8bc068d35c1fb_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$1=*&desired:char [line 167, column 61]\n *n$0._wrapped_value:char=n$1 [line 167, column 46]\n " shape="box"] +"__infer_atomic_base#__infer_atomic_base#std#{11319810518798892734|constexpr}.74d2c2ce173fcccf9cf8bc068d35c1fb_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$3=*&desired:char [line 167, column 61]\n *n$2._wrapped_value:char=n$3 [line 167, column 46]\n " shape="box"] "__infer_atomic_base#__infer_atomic_base#std#{11319810518798892734|constexpr}.74d2c2ce173fcccf9cf8bc068d35c1fb_3" -> "__infer_atomic_base#__infer_atomic_base#std#{11319810518798892734|constexpr}.74d2c2ce173fcccf9cf8bc068d35c1fb_2" ; @@ -210,7 +210,7 @@ digraph cfg { "__infer_atomic_base#__infer_atomic_base#std#{18234009817680553112|constexpr}.7a1f00575eae64e359678097638ddc12_2" [label="2: Exit std::__infer_atomic_base___infer_atomic_base \n " color=yellow style=filled] -"__infer_atomic_base#__infer_atomic_base#std#{18234009817680553112|constexpr}.7a1f00575eae64e359678097638ddc12_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$1=*&desired:short [line 167, column 61]\n *n$0._wrapped_value:short=n$1 [line 167, column 46]\n " shape="box"] +"__infer_atomic_base#__infer_atomic_base#std#{18234009817680553112|constexpr}.7a1f00575eae64e359678097638ddc12_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$3=*&desired:short [line 167, column 61]\n *n$2._wrapped_value:short=n$3 [line 167, column 46]\n " shape="box"] "__infer_atomic_base#__infer_atomic_base#std#{18234009817680553112|constexpr}.7a1f00575eae64e359678097638ddc12_3" -> "__infer_atomic_base#__infer_atomic_base#std#{18234009817680553112|constexpr}.7a1f00575eae64e359678097638ddc12_2" ; @@ -221,7 +221,7 @@ digraph cfg { "__infer_atomic_base#__infer_atomic_base#std#{16073524453317401930|constexpr}.d3f224e2d1fe7b0ad7e4e07024b91c5d_2" [label="2: Exit std::__infer_atomic_base___infer_atomic_base \n " color=yellow style=filled] -"__infer_atomic_base#__infer_atomic_base#std#{16073524453317401930|constexpr}.d3f224e2d1fe7b0ad7e4e07024b91c5d_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$1=*&desired:unsigned short [line 167, column 61]\n *n$0._wrapped_value:unsigned short=n$1 [line 167, column 46]\n " shape="box"] +"__infer_atomic_base#__infer_atomic_base#std#{16073524453317401930|constexpr}.d3f224e2d1fe7b0ad7e4e07024b91c5d_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$3=*&desired:unsigned short [line 167, column 61]\n *n$2._wrapped_value:unsigned short=n$3 [line 167, column 46]\n " shape="box"] "__infer_atomic_base#__infer_atomic_base#std#{16073524453317401930|constexpr}.d3f224e2d1fe7b0ad7e4e07024b91c5d_3" -> "__infer_atomic_base#__infer_atomic_base#std#{16073524453317401930|constexpr}.d3f224e2d1fe7b0ad7e4e07024b91c5d_2" ; @@ -232,7 +232,7 @@ digraph cfg { "__infer_atomic_base#__infer_atomic_base#std#{9938535674916741600|constexpr}.b3505ad067544b42cd3d24960993f2d2_2" [label="2: Exit std::__infer_atomic_base___infer_atomic_base \n " color=yellow style=filled] -"__infer_atomic_base#__infer_atomic_base#std#{9938535674916741600|constexpr}.b3505ad067544b42cd3d24960993f2d2_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$1=*&desired:char [line 167, column 61]\n *n$0._wrapped_value:char=n$1 [line 167, column 46]\n " shape="box"] +"__infer_atomic_base#__infer_atomic_base#std#{9938535674916741600|constexpr}.b3505ad067544b42cd3d24960993f2d2_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$3=*&desired:char [line 167, column 61]\n *n$2._wrapped_value:char=n$3 [line 167, column 46]\n " shape="box"] "__infer_atomic_base#__infer_atomic_base#std#{9938535674916741600|constexpr}.b3505ad067544b42cd3d24960993f2d2_3" -> "__infer_atomic_base#__infer_atomic_base#std#{9938535674916741600|constexpr}.b3505ad067544b42cd3d24960993f2d2_2" ; @@ -243,7 +243,7 @@ digraph cfg { "__infer_atomic_base#__infer_atomic_base#std#{8782788136688727146|constexpr}.3f103dad2faa43c9afacd724927e0000_2" [label="2: Exit std::__infer_atomic_base___infer_atomic_base \n " color=yellow style=filled] -"__infer_atomic_base#__infer_atomic_base#std#{8782788136688727146|constexpr}.3f103dad2faa43c9afacd724927e0000_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$1=*&desired:long long [line 167, column 61]\n *n$0._wrapped_value:long long=n$1 [line 167, column 46]\n " shape="box"] +"__infer_atomic_base#__infer_atomic_base#std#{8782788136688727146|constexpr}.3f103dad2faa43c9afacd724927e0000_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$3=*&desired:long long [line 167, column 61]\n *n$2._wrapped_value:long long=n$3 [line 167, column 46]\n " shape="box"] "__infer_atomic_base#__infer_atomic_base#std#{8782788136688727146|constexpr}.3f103dad2faa43c9afacd724927e0000_3" -> "__infer_atomic_base#__infer_atomic_base#std#{8782788136688727146|constexpr}.3f103dad2faa43c9afacd724927e0000_2" ; @@ -254,7 +254,7 @@ digraph cfg { "__infer_atomic_base#__infer_atomic_base#std#{7365870495610955464|constexpr}.7e9c5ad29861b93350b8ee38f6d0df14_2" [label="2: Exit std::__infer_atomic_base___infer_atomic_base \n " color=yellow style=filled] -"__infer_atomic_base#__infer_atomic_base#std#{7365870495610955464|constexpr}.7e9c5ad29861b93350b8ee38f6d0df14_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$1=*&desired:signed char [line 167, column 61]\n *n$0._wrapped_value:signed char=n$1 [line 167, column 46]\n " shape="box"] +"__infer_atomic_base#__infer_atomic_base#std#{7365870495610955464|constexpr}.7e9c5ad29861b93350b8ee38f6d0df14_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$3=*&desired:signed char [line 167, column 61]\n *n$2._wrapped_value:signed char=n$3 [line 167, column 46]\n " shape="box"] "__infer_atomic_base#__infer_atomic_base#std#{7365870495610955464|constexpr}.7e9c5ad29861b93350b8ee38f6d0df14_3" -> "__infer_atomic_base#__infer_atomic_base#std#{7365870495610955464|constexpr}.7e9c5ad29861b93350b8ee38f6d0df14_2" ; @@ -265,7 +265,7 @@ digraph cfg { "__infer_atomic_base#__infer_atomic_base#std#{14341025698771447512|constexpr}.a4ea01d510cd8d527bb600a45ccd1b98_2" [label="2: Exit std::__infer_atomic_base___infer_atomic_base \n " color=yellow style=filled] -"__infer_atomic_base#__infer_atomic_base#std#{14341025698771447512|constexpr}.a4ea01d510cd8d527bb600a45ccd1b98_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$1=*&desired:char [line 167, column 61]\n *n$0._wrapped_value:char=n$1 [line 167, column 46]\n " shape="box"] +"__infer_atomic_base#__infer_atomic_base#std#{14341025698771447512|constexpr}.a4ea01d510cd8d527bb600a45ccd1b98_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$3=*&desired:char [line 167, column 61]\n *n$2._wrapped_value:char=n$3 [line 167, column 46]\n " shape="box"] "__infer_atomic_base#__infer_atomic_base#std#{14341025698771447512|constexpr}.a4ea01d510cd8d527bb600a45ccd1b98_3" -> "__infer_atomic_base#__infer_atomic_base#std#{14341025698771447512|constexpr}.a4ea01d510cd8d527bb600a45ccd1b98_2" ; @@ -276,7 +276,7 @@ digraph cfg { "__infer_atomic_base#__infer_atomic_base#std#{7573412317894445992|constexpr}.ff0e487372c722b860a1cd876aa6c750_2" [label="2: Exit std::__infer_atomic_base___infer_atomic_base \n " color=yellow style=filled] -"__infer_atomic_base#__infer_atomic_base#std#{7573412317894445992|constexpr}.ff0e487372c722b860a1cd876aa6c750_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$1=*&desired:unsigned long long [line 167, column 61]\n *n$0._wrapped_value:unsigned long long=n$1 [line 167, column 46]\n " shape="box"] +"__infer_atomic_base#__infer_atomic_base#std#{7573412317894445992|constexpr}.ff0e487372c722b860a1cd876aa6c750_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$3=*&desired:unsigned long long [line 167, column 61]\n *n$2._wrapped_value:unsigned long long=n$3 [line 167, column 46]\n " shape="box"] "__infer_atomic_base#__infer_atomic_base#std#{7573412317894445992|constexpr}.ff0e487372c722b860a1cd876aa6c750_3" -> "__infer_atomic_base#__infer_atomic_base#std#{7573412317894445992|constexpr}.ff0e487372c722b860a1cd876aa6c750_2" ; @@ -287,7 +287,7 @@ digraph cfg { "__infer_atomic_base#__infer_atomic_base#std#{10995699960611463466|constexpr}.b47fc7b50b63c00d13a29883101bbf91_2" [label="2: Exit std::__infer_atomic_base___infer_atomic_base \n " color=yellow style=filled] -"__infer_atomic_base#__infer_atomic_base#std#{10995699960611463466|constexpr}.b47fc7b50b63c00d13a29883101bbf91_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$1=*&desired:unsigned char [line 167, column 61]\n *n$0._wrapped_value:unsigned char=n$1 [line 167, column 46]\n " shape="box"] +"__infer_atomic_base#__infer_atomic_base#std#{10995699960611463466|constexpr}.b47fc7b50b63c00d13a29883101bbf91_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$3=*&desired:unsigned char [line 167, column 61]\n *n$2._wrapped_value:unsigned char=n$3 [line 167, column 46]\n " shape="box"] "__infer_atomic_base#__infer_atomic_base#std#{10995699960611463466|constexpr}.b47fc7b50b63c00d13a29883101bbf91_3" -> "__infer_atomic_base#__infer_atomic_base#std#{10995699960611463466|constexpr}.b47fc7b50b63c00d13a29883101bbf91_2" ; @@ -298,7 +298,7 @@ digraph cfg { "__infer_atomic_base#__infer_atomic_base#std#{16209782391084856520|constexpr}.c8b589ca28905ccc5291f33d793e0ce1_2" [label="2: Exit std::__infer_atomic_base___infer_atomic_base \n " color=yellow style=filled] -"__infer_atomic_base#__infer_atomic_base#std#{16209782391084856520|constexpr}.c8b589ca28905ccc5291f33d793e0ce1_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$1=*&desired:int [line 167, column 61]\n *n$0._wrapped_value:int=n$1 [line 167, column 46]\n " shape="box"] +"__infer_atomic_base#__infer_atomic_base#std#{16209782391084856520|constexpr}.c8b589ca28905ccc5291f33d793e0ce1_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$3=*&desired:int [line 167, column 61]\n *n$2._wrapped_value:int=n$3 [line 167, column 46]\n " shape="box"] "__infer_atomic_base#__infer_atomic_base#std#{16209782391084856520|constexpr}.c8b589ca28905ccc5291f33d793e0ce1_3" -> "__infer_atomic_base#__infer_atomic_base#std#{16209782391084856520|constexpr}.c8b589ca28905ccc5291f33d793e0ce1_2" ; @@ -309,7 +309,7 @@ digraph cfg { "__infer_atomic_base#__infer_atomic_base#std#{10976553734406539054|constexpr}.c08c69d90dff28bd294937b5d0343af8_2" [label="2: Exit std::__infer_atomic_base___infer_atomic_base \n " color=yellow style=filled] -"__infer_atomic_base#__infer_atomic_base#std#{10976553734406539054|constexpr}.c08c69d90dff28bd294937b5d0343af8_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$1=*&desired:unsigned int [line 167, column 61]\n *n$0._wrapped_value:unsigned int=n$1 [line 167, column 46]\n " shape="box"] +"__infer_atomic_base#__infer_atomic_base#std#{10976553734406539054|constexpr}.c08c69d90dff28bd294937b5d0343af8_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$3=*&desired:unsigned int [line 167, column 61]\n *n$2._wrapped_value:unsigned int=n$3 [line 167, column 46]\n " shape="box"] "__infer_atomic_base#__infer_atomic_base#std#{10976553734406539054|constexpr}.c08c69d90dff28bd294937b5d0343af8_3" -> "__infer_atomic_base#__infer_atomic_base#std#{10976553734406539054|constexpr}.c08c69d90dff28bd294937b5d0343af8_2" ; @@ -320,7 +320,7 @@ digraph cfg { "__infer_atomic_base#__infer_atomic_base#std#{8630701096989804934|constexpr}.85076a22c8a2e53a3f2fc540f31359c7_2" [label="2: Exit std::__infer_atomic_base___infer_atomic_base \n " color=yellow style=filled] -"__infer_atomic_base#__infer_atomic_base#std#{8630701096989804934|constexpr}.85076a22c8a2e53a3f2fc540f31359c7_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$1=*&desired:char [line 167, column 61]\n *n$0._wrapped_value:char=n$1 [line 167, column 46]\n " shape="box"] +"__infer_atomic_base#__infer_atomic_base#std#{8630701096989804934|constexpr}.85076a22c8a2e53a3f2fc540f31359c7_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$3=*&desired:char [line 167, column 61]\n *n$2._wrapped_value:char=n$3 [line 167, column 46]\n " shape="box"] "__infer_atomic_base#__infer_atomic_base#std#{8630701096989804934|constexpr}.85076a22c8a2e53a3f2fc540f31359c7_3" -> "__infer_atomic_base#__infer_atomic_base#std#{8630701096989804934|constexpr}.85076a22c8a2e53a3f2fc540f31359c7_2" ; @@ -331,7 +331,7 @@ digraph cfg { "__infer_atomic_integral#__infer_atomic_integral#std#{2317220937806306842|constexpr}.d393fae7aac1307d35b11f21691789e9_2" [label="2: Exit std::__infer_atomic_integral___infer_atomic_integral \n " color=yellow style=filled] -"__infer_atomic_integral#__infer_atomic_integral#std#{2317220937806306842|constexpr}.d393fae7aac1307d35b11f21691789e9_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$1=*&d:char [line 187, column 60]\n n$2=_fun_std::__infer_atomic_base___infer_atomic_base(n$0:std::__infer_atomic_integral*,n$1:char) [line 187, column 53]\n " shape="box"] +"__infer_atomic_integral#__infer_atomic_integral#std#{2317220937806306842|constexpr}.d393fae7aac1307d35b11f21691789e9_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$3=*&d:char [line 187, column 60]\n n$4=_fun_std::__infer_atomic_base___infer_atomic_base(n$2:std::__infer_atomic_integral*,n$3:char) [line 187, column 53]\n " shape="box"] "__infer_atomic_integral#__infer_atomic_integral#std#{2317220937806306842|constexpr}.d393fae7aac1307d35b11f21691789e9_3" -> "__infer_atomic_integral#__infer_atomic_integral#std#{2317220937806306842|constexpr}.d393fae7aac1307d35b11f21691789e9_2" ; @@ -342,7 +342,7 @@ digraph cfg { "__infer_atomic_integral#__infer_atomic_integral#std#{4789001703898296148|constexpr}.e708f3dd8e07f928f0136c58ce71aa77_2" [label="2: Exit std::__infer_atomic_integral___infer_atomic_integral \n " color=yellow style=filled] -"__infer_atomic_integral#__infer_atomic_integral#std#{4789001703898296148|constexpr}.e708f3dd8e07f928f0136c58ce71aa77_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$1=*&d:unsigned short [line 187, column 60]\n n$2=_fun_std::__infer_atomic_base___infer_atomic_base(n$0:std::__infer_atomic_integral*,n$1:unsigned short) [line 187, column 53]\n " shape="box"] +"__infer_atomic_integral#__infer_atomic_integral#std#{4789001703898296148|constexpr}.e708f3dd8e07f928f0136c58ce71aa77_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$3=*&d:unsigned short [line 187, column 60]\n n$4=_fun_std::__infer_atomic_base___infer_atomic_base(n$2:std::__infer_atomic_integral*,n$3:unsigned short) [line 187, column 53]\n " shape="box"] "__infer_atomic_integral#__infer_atomic_integral#std#{4789001703898296148|constexpr}.e708f3dd8e07f928f0136c58ce71aa77_3" -> "__infer_atomic_integral#__infer_atomic_integral#std#{4789001703898296148|constexpr}.e708f3dd8e07f928f0136c58ce71aa77_2" ; @@ -353,7 +353,7 @@ digraph cfg { "__infer_atomic_integral#__infer_atomic_integral#std#{14753850656660515810|conste.316dccad2dcde8efca58b19fda679f20_2" [label="2: Exit std::__infer_atomic_integral___infer_atomic_integral \n " color=yellow style=filled] -"__infer_atomic_integral#__infer_atomic_integral#std#{14753850656660515810|conste.316dccad2dcde8efca58b19fda679f20_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$1=*&d:unsigned long long [line 187, column 60]\n n$2=_fun_std::__infer_atomic_base___infer_atomic_base(n$0:std::__infer_atomic_integral*,n$1:unsigned long long) [line 187, column 53]\n " shape="box"] +"__infer_atomic_integral#__infer_atomic_integral#std#{14753850656660515810|conste.316dccad2dcde8efca58b19fda679f20_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$3=*&d:unsigned long long [line 187, column 60]\n n$4=_fun_std::__infer_atomic_base___infer_atomic_base(n$2:std::__infer_atomic_integral*,n$3:unsigned long long) [line 187, column 53]\n " shape="box"] "__infer_atomic_integral#__infer_atomic_integral#std#{14753850656660515810|conste.316dccad2dcde8efca58b19fda679f20_3" -> "__infer_atomic_integral#__infer_atomic_integral#std#{14753850656660515810|conste.316dccad2dcde8efca58b19fda679f20_2" ; @@ -364,7 +364,7 @@ digraph cfg { "__infer_atomic_integral#__infer_atomic_integral#std#{12484722408092055522|constexpr}.886571206f544c99c3746129fd658bc9_2" [label="2: Exit std::__infer_atomic_integral___infer_atomic_integral \n " color=yellow style=filled] -"__infer_atomic_integral#__infer_atomic_integral#std#{12484722408092055522|constexpr}.886571206f544c99c3746129fd658bc9_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$1=*&d:short [line 187, column 60]\n n$2=_fun_std::__infer_atomic_base___infer_atomic_base(n$0:std::__infer_atomic_integral*,n$1:short) [line 187, column 53]\n " shape="box"] +"__infer_atomic_integral#__infer_atomic_integral#std#{12484722408092055522|constexpr}.886571206f544c99c3746129fd658bc9_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$3=*&d:short [line 187, column 60]\n n$4=_fun_std::__infer_atomic_base___infer_atomic_base(n$2:std::__infer_atomic_integral*,n$3:short) [line 187, column 53]\n " shape="box"] "__infer_atomic_integral#__infer_atomic_integral#std#{12484722408092055522|constexpr}.886571206f544c99c3746129fd658bc9_3" -> "__infer_atomic_integral#__infer_atomic_integral#std#{12484722408092055522|constexpr}.886571206f544c99c3746129fd658bc9_2" ; @@ -375,7 +375,7 @@ digraph cfg { "__infer_atomic_integral#__infer_atomic_integral#std#{8591773473555052674|constexpr}.726ea5334f7395b295f6ac7cd555d392_2" [label="2: Exit std::__infer_atomic_integral___infer_atomic_integral \n " color=yellow style=filled] -"__infer_atomic_integral#__infer_atomic_integral#std#{8591773473555052674|constexpr}.726ea5334f7395b295f6ac7cd555d392_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$1=*&d:char [line 187, column 60]\n n$2=_fun_std::__infer_atomic_base___infer_atomic_base(n$0:std::__infer_atomic_integral*,n$1:char) [line 187, column 53]\n " shape="box"] +"__infer_atomic_integral#__infer_atomic_integral#std#{8591773473555052674|constexpr}.726ea5334f7395b295f6ac7cd555d392_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$3=*&d:char [line 187, column 60]\n n$4=_fun_std::__infer_atomic_base___infer_atomic_base(n$2:std::__infer_atomic_integral*,n$3:char) [line 187, column 53]\n " shape="box"] "__infer_atomic_integral#__infer_atomic_integral#std#{8591773473555052674|constexpr}.726ea5334f7395b295f6ac7cd555d392_3" -> "__infer_atomic_integral#__infer_atomic_integral#std#{8591773473555052674|constexpr}.726ea5334f7395b295f6ac7cd555d392_2" ; @@ -386,7 +386,7 @@ digraph cfg { "__infer_atomic_integral#__infer_atomic_integral#std#{9844392485801633554|constexpr}.6f8ca55944a0f4edf0c3180d150032cf_2" [label="2: Exit std::__infer_atomic_integral___infer_atomic_integral \n " color=yellow style=filled] -"__infer_atomic_integral#__infer_atomic_integral#std#{9844392485801633554|constexpr}.6f8ca55944a0f4edf0c3180d150032cf_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$1=*&d:signed char [line 187, column 60]\n n$2=_fun_std::__infer_atomic_base___infer_atomic_base(n$0:std::__infer_atomic_integral*,n$1:signed char) [line 187, column 53]\n " shape="box"] +"__infer_atomic_integral#__infer_atomic_integral#std#{9844392485801633554|constexpr}.6f8ca55944a0f4edf0c3180d150032cf_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$3=*&d:signed char [line 187, column 60]\n n$4=_fun_std::__infer_atomic_base___infer_atomic_base(n$2:std::__infer_atomic_integral*,n$3:signed char) [line 187, column 53]\n " shape="box"] "__infer_atomic_integral#__infer_atomic_integral#std#{9844392485801633554|constexpr}.6f8ca55944a0f4edf0c3180d150032cf_3" -> "__infer_atomic_integral#__infer_atomic_integral#std#{9844392485801633554|constexpr}.6f8ca55944a0f4edf0c3180d150032cf_2" ; @@ -397,7 +397,7 @@ digraph cfg { "__infer_atomic_integral#__infer_atomic_integral#std#{16522029776639505920|constexpr}.39982a6970fd6e76224956305a5d7c79_2" [label="2: Exit std::__infer_atomic_integral___infer_atomic_integral \n " color=yellow style=filled] -"__infer_atomic_integral#__infer_atomic_integral#std#{16522029776639505920|constexpr}.39982a6970fd6e76224956305a5d7c79_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$1=*&d:char [line 187, column 60]\n n$2=_fun_std::__infer_atomic_base___infer_atomic_base(n$0:std::__infer_atomic_integral*,n$1:char) [line 187, column 53]\n " shape="box"] +"__infer_atomic_integral#__infer_atomic_integral#std#{16522029776639505920|constexpr}.39982a6970fd6e76224956305a5d7c79_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$3=*&d:char [line 187, column 60]\n n$4=_fun_std::__infer_atomic_base___infer_atomic_base(n$2:std::__infer_atomic_integral*,n$3:char) [line 187, column 53]\n " shape="box"] "__infer_atomic_integral#__infer_atomic_integral#std#{16522029776639505920|constexpr}.39982a6970fd6e76224956305a5d7c79_3" -> "__infer_atomic_integral#__infer_atomic_integral#std#{16522029776639505920|constexpr}.39982a6970fd6e76224956305a5d7c79_2" ; @@ -408,7 +408,7 @@ digraph cfg { "__infer_atomic_integral#__infer_atomic_integral#std#{16659147243517555676|constexpr}.63a0b0e30efb12599ce5b737bbb89996_2" [label="2: Exit std::__infer_atomic_integral___infer_atomic_integral \n " color=yellow style=filled] -"__infer_atomic_integral#__infer_atomic_integral#std#{16659147243517555676|constexpr}.63a0b0e30efb12599ce5b737bbb89996_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$1=*&d:long long [line 187, column 60]\n n$2=_fun_std::__infer_atomic_base___infer_atomic_base(n$0:std::__infer_atomic_integral*,n$1:long long) [line 187, column 53]\n " shape="box"] +"__infer_atomic_integral#__infer_atomic_integral#std#{16659147243517555676|constexpr}.63a0b0e30efb12599ce5b737bbb89996_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$3=*&d:long long [line 187, column 60]\n n$4=_fun_std::__infer_atomic_base___infer_atomic_base(n$2:std::__infer_atomic_integral*,n$3:long long) [line 187, column 53]\n " shape="box"] "__infer_atomic_integral#__infer_atomic_integral#std#{16659147243517555676|constexpr}.63a0b0e30efb12599ce5b737bbb89996_3" -> "__infer_atomic_integral#__infer_atomic_integral#std#{16659147243517555676|constexpr}.63a0b0e30efb12599ce5b737bbb89996_2" ; @@ -419,7 +419,7 @@ digraph cfg { "__infer_atomic_integral#__infer_atomic_integral#std#{2173708841126415188|constexpr}.18d3a9ecf5789e4e4e382f28729807c8_2" [label="2: Exit std::__infer_atomic_integral___infer_atomic_integral \n " color=yellow style=filled] -"__infer_atomic_integral#__infer_atomic_integral#std#{2173708841126415188|constexpr}.18d3a9ecf5789e4e4e382f28729807c8_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$1=*&d:long [line 187, column 60]\n n$2=_fun_std::__infer_atomic_base___infer_atomic_base(n$0:std::__infer_atomic_integral*,n$1:long) [line 187, column 53]\n " shape="box"] +"__infer_atomic_integral#__infer_atomic_integral#std#{2173708841126415188|constexpr}.18d3a9ecf5789e4e4e382f28729807c8_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$3=*&d:long [line 187, column 60]\n n$4=_fun_std::__infer_atomic_base___infer_atomic_base(n$2:std::__infer_atomic_integral*,n$3:long) [line 187, column 53]\n " shape="box"] "__infer_atomic_integral#__infer_atomic_integral#std#{2173708841126415188|constexpr}.18d3a9ecf5789e4e4e382f28729807c8_3" -> "__infer_atomic_integral#__infer_atomic_integral#std#{2173708841126415188|constexpr}.18d3a9ecf5789e4e4e382f28729807c8_2" ; @@ -430,7 +430,7 @@ digraph cfg { "__infer_atomic_integral#__infer_atomic_integral#std#{14576619656228466890|constexpr}.f782c04753c7831667ca63ed4883ec25_2" [label="2: Exit std::__infer_atomic_integral___infer_atomic_integral \n " color=yellow style=filled] -"__infer_atomic_integral#__infer_atomic_integral#std#{14576619656228466890|constexpr}.f782c04753c7831667ca63ed4883ec25_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$1=*&d:unsigned long [line 187, column 60]\n n$2=_fun_std::__infer_atomic_base___infer_atomic_base(n$0:std::__infer_atomic_integral*,n$1:unsigned long) [line 187, column 53]\n " shape="box"] +"__infer_atomic_integral#__infer_atomic_integral#std#{14576619656228466890|constexpr}.f782c04753c7831667ca63ed4883ec25_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$3=*&d:unsigned long [line 187, column 60]\n n$4=_fun_std::__infer_atomic_base___infer_atomic_base(n$2:std::__infer_atomic_integral*,n$3:unsigned long) [line 187, column 53]\n " shape="box"] "__infer_atomic_integral#__infer_atomic_integral#std#{14576619656228466890|constexpr}.f782c04753c7831667ca63ed4883ec25_3" -> "__infer_atomic_integral#__infer_atomic_integral#std#{14576619656228466890|constexpr}.f782c04753c7831667ca63ed4883ec25_2" ; @@ -441,7 +441,7 @@ digraph cfg { "__infer_atomic_integral#__infer_atomic_integral#std#{4588665662015601400|constexpr}.d5e8f3087b4e601b5439130cb84493b0_2" [label="2: Exit std::__infer_atomic_integral___infer_atomic_integral \n " color=yellow style=filled] -"__infer_atomic_integral#__infer_atomic_integral#std#{4588665662015601400|constexpr}.d5e8f3087b4e601b5439130cb84493b0_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$1=*&d:unsigned int [line 187, column 60]\n n$2=_fun_std::__infer_atomic_base___infer_atomic_base(n$0:std::__infer_atomic_integral*,n$1:unsigned int) [line 187, column 53]\n " shape="box"] +"__infer_atomic_integral#__infer_atomic_integral#std#{4588665662015601400|constexpr}.d5e8f3087b4e601b5439130cb84493b0_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$3=*&d:unsigned int [line 187, column 60]\n n$4=_fun_std::__infer_atomic_base___infer_atomic_base(n$2:std::__infer_atomic_integral*,n$3:unsigned int) [line 187, column 53]\n " shape="box"] "__infer_atomic_integral#__infer_atomic_integral#std#{4588665662015601400|constexpr}.d5e8f3087b4e601b5439130cb84493b0_3" -> "__infer_atomic_integral#__infer_atomic_integral#std#{4588665662015601400|constexpr}.d5e8f3087b4e601b5439130cb84493b0_2" ; @@ -452,7 +452,7 @@ digraph cfg { "__infer_atomic_integral#__infer_atomic_integral#std#{812115561232181884|constexpr}.549c03fc14bf4fd6639150c4ad1efe18_2" [label="2: Exit std::__infer_atomic_integral___infer_atomic_integral \n " color=yellow style=filled] -"__infer_atomic_integral#__infer_atomic_integral#std#{812115561232181884|constexpr}.549c03fc14bf4fd6639150c4ad1efe18_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$1=*&d:unsigned char [line 187, column 60]\n n$2=_fun_std::__infer_atomic_base___infer_atomic_base(n$0:std::__infer_atomic_integral*,n$1:unsigned char) [line 187, column 53]\n " shape="box"] +"__infer_atomic_integral#__infer_atomic_integral#std#{812115561232181884|constexpr}.549c03fc14bf4fd6639150c4ad1efe18_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$3=*&d:unsigned char [line 187, column 60]\n n$4=_fun_std::__infer_atomic_base___infer_atomic_base(n$2:std::__infer_atomic_integral*,n$3:unsigned char) [line 187, column 53]\n " shape="box"] "__infer_atomic_integral#__infer_atomic_integral#std#{812115561232181884|constexpr}.549c03fc14bf4fd6639150c4ad1efe18_3" -> "__infer_atomic_integral#__infer_atomic_integral#std#{812115561232181884|constexpr}.549c03fc14bf4fd6639150c4ad1efe18_2" ; @@ -463,7 +463,7 @@ digraph cfg { "__infer_atomic_integral#__infer_atomic_integral#std#{15428870764710756536|constexpr}.d0b34811c384e20ccfd3c64a11df4e0a_2" [label="2: Exit std::__infer_atomic_integral___infer_atomic_integral \n " color=yellow style=filled] -"__infer_atomic_integral#__infer_atomic_integral#std#{15428870764710756536|constexpr}.d0b34811c384e20ccfd3c64a11df4e0a_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$1=*&d:char [line 187, column 60]\n n$2=_fun_std::__infer_atomic_base___infer_atomic_base(n$0:std::__infer_atomic_integral*,n$1:char) [line 187, column 53]\n " shape="box"] +"__infer_atomic_integral#__infer_atomic_integral#std#{15428870764710756536|constexpr}.d0b34811c384e20ccfd3c64a11df4e0a_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$3=*&d:char [line 187, column 60]\n n$4=_fun_std::__infer_atomic_base___infer_atomic_base(n$2:std::__infer_atomic_integral*,n$3:char) [line 187, column 53]\n " shape="box"] "__infer_atomic_integral#__infer_atomic_integral#std#{15428870764710756536|constexpr}.d0b34811c384e20ccfd3c64a11df4e0a_3" -> "__infer_atomic_integral#__infer_atomic_integral#std#{15428870764710756536|constexpr}.d0b34811c384e20ccfd3c64a11df4e0a_2" ; @@ -474,7 +474,7 @@ digraph cfg { "__infer_atomic_integral#__infer_atomic_integral#std#{10860901722123512962|constexpr}.f85ea1dfc790b10c2617a4d4f5cafd29_2" [label="2: Exit std::__infer_atomic_integral___infer_atomic_integral \n " color=yellow style=filled] -"__infer_atomic_integral#__infer_atomic_integral#std#{10860901722123512962|constexpr}.f85ea1dfc790b10c2617a4d4f5cafd29_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$1=*&d:int [line 187, column 60]\n n$2=_fun_std::__infer_atomic_base___infer_atomic_base(n$0:std::__infer_atomic_integral*,n$1:int) [line 187, column 53]\n " shape="box"] +"__infer_atomic_integral#__infer_atomic_integral#std#{10860901722123512962|constexpr}.f85ea1dfc790b10c2617a4d4f5cafd29_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$3=*&d:int [line 187, column 60]\n n$4=_fun_std::__infer_atomic_base___infer_atomic_base(n$2:std::__infer_atomic_integral*,n$3:int) [line 187, column 53]\n " shape="box"] "__infer_atomic_integral#__infer_atomic_integral#std#{10860901722123512962|constexpr}.f85ea1dfc790b10c2617a4d4f5cafd29_3" -> "__infer_atomic_integral#__infer_atomic_integral#std#{10860901722123512962|constexpr}.f85ea1dfc790b10c2617a4d4f5cafd29_2" ; @@ -489,7 +489,7 @@ digraph cfg { "__infer_inner_destructor_~shared_ptr#shared_ptr#std#(11841665744792554656).9277443e4e3f26d7cc1cd9ee0f2e3637_3" -> "__infer_inner_destructor_~shared_ptr#shared_ptr#std#(11841665744792554656).9277443e4e3f26d7cc1cd9ee0f2e3637_2" ; -"__infer_inner_destructor_~shared_ptr#shared_ptr#std#(11841665744792554656).9277443e4e3f26d7cc1cd9ee0f2e3637_4" [label="4: Call _fun_std::shared_ptr_reset \n n$3=*&this:int** [line 180, column 19]\n _=*n$3:int* [line 180, column 19]\n n$5=_fun_std::shared_ptr_reset(n$3:int**,null:int*) [line 180, column 19]\n " shape="box"] +"__infer_inner_destructor_~shared_ptr#shared_ptr#std#(11841665744792554656).9277443e4e3f26d7cc1cd9ee0f2e3637_4" [label="4: Call _fun_std::shared_ptr_reset \n n$5=*&this:int** [line 180, column 19]\n _=*n$5:int* [line 180, column 19]\n n$7=_fun_std::shared_ptr_reset(n$5:int**,null:int*) [line 180, column 19]\n " shape="box"] "__infer_inner_destructor_~shared_ptr#shared_ptr#std#(11841665744792554656).9277443e4e3f26d7cc1cd9ee0f2e3637_4" -> "__infer_inner_destructor_~shared_ptr#shared_ptr#std#(11841665744792554656).9277443e4e3f26d7cc1cd9ee0f2e3637_3" ; @@ -500,7 +500,7 @@ digraph cfg { "atomic#atomic#std#{18219637643674479567|constexpr}.a4a5467727100ba5642b3dca850c391b_2" [label="2: Exit std::atomic_atomic \n " color=yellow style=filled] -"atomic#atomic#std#{18219637643674479567|constexpr}.a4a5467727100ba5642b3dca850c391b_3" [label="3: Constructor Init \n n$0=*&this:std::atomic* [line 408, column 50]\n n$1=*&d:unsigned short [line 408, column 57]\n n$2=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$0:std::atomic*,n$1:unsigned short) [line 408, column 50]\n " shape="box"] +"atomic#atomic#std#{18219637643674479567|constexpr}.a4a5467727100ba5642b3dca850c391b_3" [label="3: Constructor Init \n n$2=*&this:std::atomic* [line 408, column 50]\n n$3=*&d:unsigned short [line 408, column 57]\n n$4=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$2:std::atomic*,n$3:unsigned short) [line 408, column 50]\n " shape="box"] "atomic#atomic#std#{18219637643674479567|constexpr}.a4a5467727100ba5642b3dca850c391b_3" -> "atomic#atomic#std#{18219637643674479567|constexpr}.a4a5467727100ba5642b3dca850c391b_2" ; @@ -511,7 +511,7 @@ digraph cfg { "atomic#atomic#std#{6824382166204133557|constexpr}.be44521bf079e2cb888037b21858e8e6_2" [label="2: Exit std::atomic_atomic \n " color=yellow style=filled] -"atomic#atomic#std#{6824382166204133557|constexpr}.be44521bf079e2cb888037b21858e8e6_3" [label="3: Constructor Init \n n$0=*&this:std::atomic* [line 472, column 50]\n n$1=*&d:char [line 472, column 57]\n n$2=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$0:std::atomic*,n$1:char) [line 472, column 50]\n " shape="box"] +"atomic#atomic#std#{6824382166204133557|constexpr}.be44521bf079e2cb888037b21858e8e6_3" [label="3: Constructor Init \n n$2=*&this:std::atomic* [line 472, column 50]\n n$3=*&d:char [line 472, column 57]\n n$4=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$2:std::atomic*,n$3:char) [line 472, column 50]\n " shape="box"] "atomic#atomic#std#{6824382166204133557|constexpr}.be44521bf079e2cb888037b21858e8e6_3" -> "atomic#atomic#std#{6824382166204133557|constexpr}.be44521bf079e2cb888037b21858e8e6_2" ; @@ -522,7 +522,7 @@ digraph cfg { "atomic#atomic#std#{12678320818314302393|constexpr}.5cd3aac69014d4e49ff04061ee1f1526_2" [label="2: Exit std::atomic_atomic \n " color=yellow style=filled] -"atomic#atomic#std#{12678320818314302393|constexpr}.5cd3aac69014d4e49ff04061ee1f1526_3" [label="3: Constructor Init \n n$0=*&this:std::atomic* [line 444, column 50]\n n$1=*&d:unsigned long [line 444, column 57]\n n$2=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$0:std::atomic*,n$1:unsigned long) [line 444, column 50]\n " shape="box"] +"atomic#atomic#std#{12678320818314302393|constexpr}.5cd3aac69014d4e49ff04061ee1f1526_3" [label="3: Constructor Init \n n$2=*&this:std::atomic* [line 444, column 50]\n n$3=*&d:unsigned long [line 444, column 57]\n n$4=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$2:std::atomic*,n$3:unsigned long) [line 444, column 50]\n " shape="box"] "atomic#atomic#std#{12678320818314302393|constexpr}.5cd3aac69014d4e49ff04061ee1f1526_3" -> "atomic#atomic#std#{12678320818314302393|constexpr}.5cd3aac69014d4e49ff04061ee1f1526_2" ; @@ -533,7 +533,7 @@ digraph cfg { "atomic#atomic#std#{17416607751267500557|constexpr}.44c96da43702ebbe4de34f6c26176ccb_2" [label="2: Exit std::atomic_atomic \n " color=yellow style=filled] -"atomic#atomic#std#{17416607751267500557|constexpr}.44c96da43702ebbe4de34f6c26176ccb_3" [label="3: Constructor Init \n n$0=*&this:std::atomic* [line 399, column 50]\n n$1=*&d:short [line 399, column 57]\n n$2=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$0:std::atomic*,n$1:short) [line 399, column 50]\n " shape="box"] +"atomic#atomic#std#{17416607751267500557|constexpr}.44c96da43702ebbe4de34f6c26176ccb_3" [label="3: Constructor Init \n n$2=*&this:std::atomic* [line 399, column 50]\n n$3=*&d:short [line 399, column 57]\n n$4=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$2:std::atomic*,n$3:short) [line 399, column 50]\n " shape="box"] "atomic#atomic#std#{17416607751267500557|constexpr}.44c96da43702ebbe4de34f6c26176ccb_3" -> "atomic#atomic#std#{17416607751267500557|constexpr}.44c96da43702ebbe4de34f6c26176ccb_2" ; @@ -544,7 +544,7 @@ digraph cfg { "atomic#atomic#std#{11783391945814293231|constexpr}.22775463bf145a69731b3305dffc4bb3_2" [label="2: Exit std::atomic_atomic \n " color=yellow style=filled] -"atomic#atomic#std#{11783391945814293231|constexpr}.22775463bf145a69731b3305dffc4bb3_3" [label="3: Constructor Init \n n$0=*&this:std::atomic* [line 435, column 50]\n n$1=*&d:long [line 435, column 57]\n n$2=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$0:std::atomic*,n$1:long) [line 435, column 50]\n " shape="box"] +"atomic#atomic#std#{11783391945814293231|constexpr}.22775463bf145a69731b3305dffc4bb3_3" [label="3: Constructor Init \n n$2=*&this:std::atomic* [line 435, column 50]\n n$3=*&d:long [line 435, column 57]\n n$4=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$2:std::atomic*,n$3:long) [line 435, column 50]\n " shape="box"] "atomic#atomic#std#{11783391945814293231|constexpr}.22775463bf145a69731b3305dffc4bb3_3" -> "atomic#atomic#std#{11783391945814293231|constexpr}.22775463bf145a69731b3305dffc4bb3_2" ; @@ -555,7 +555,7 @@ digraph cfg { "atomic#atomic#std#{10680712765411145881|constexpr}.b59b8272bcd92eac36f759f9bac15ee8_2" [label="2: Exit std::atomic_atomic \n " color=yellow style=filled] -"atomic#atomic#std#{10680712765411145881|constexpr}.b59b8272bcd92eac36f759f9bac15ee8_3" [label="3: Constructor Init \n n$0=*&this:std::atomic* [line 417, column 50]\n n$1=*&d:int [line 417, column 57]\n n$2=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$0:std::atomic*,n$1:int) [line 417, column 50]\n " shape="box"] +"atomic#atomic#std#{10680712765411145881|constexpr}.b59b8272bcd92eac36f759f9bac15ee8_3" [label="3: Constructor Init \n n$2=*&this:std::atomic* [line 417, column 50]\n n$3=*&d:int [line 417, column 57]\n n$4=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$2:std::atomic*,n$3:int) [line 417, column 50]\n " shape="box"] "atomic#atomic#std#{10680712765411145881|constexpr}.b59b8272bcd92eac36f759f9bac15ee8_3" -> "atomic#atomic#std#{10680712765411145881|constexpr}.b59b8272bcd92eac36f759f9bac15ee8_2" ; @@ -566,7 +566,7 @@ digraph cfg { "atomic#atomic#std#{9349229583258484711|constexpr}.9cbc6c1bc35116267ee41b36d8d25cb8_2" [label="2: Exit std::atomic_atomic \n " color=yellow style=filled] -"atomic#atomic#std#{9349229583258484711|constexpr}.9cbc6c1bc35116267ee41b36d8d25cb8_3" [label="3: Constructor Init \n n$0=*&this:std::atomic* [line 390, column 50]\n n$1=*&d:unsigned char [line 390, column 57]\n n$2=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$0:std::atomic*,n$1:unsigned char) [line 390, column 50]\n " shape="box"] +"atomic#atomic#std#{9349229583258484711|constexpr}.9cbc6c1bc35116267ee41b36d8d25cb8_3" [label="3: Constructor Init \n n$2=*&this:std::atomic* [line 390, column 50]\n n$3=*&d:unsigned char [line 390, column 57]\n n$4=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$2:std::atomic*,n$3:unsigned char) [line 390, column 50]\n " shape="box"] "atomic#atomic#std#{9349229583258484711|constexpr}.9cbc6c1bc35116267ee41b36d8d25cb8_3" -> "atomic#atomic#std#{9349229583258484711|constexpr}.9cbc6c1bc35116267ee41b36d8d25cb8_2" ; @@ -577,7 +577,7 @@ digraph cfg { "atomic#atomic#std#{8082860668582714463|constexpr}.dd2e5ecabe54fdef20aa889bb6f6f2e6_2" [label="2: Exit std::atomic_atomic \n " color=yellow style=filled] -"atomic#atomic#std#{8082860668582714463|constexpr}.dd2e5ecabe54fdef20aa889bb6f6f2e6_3" [label="3: Constructor Init \n n$0=*&this:std::atomic* [line 481, column 50]\n n$1=*&d:char [line 481, column 57]\n n$2=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$0:std::atomic*,n$1:char) [line 481, column 50]\n " shape="box"] +"atomic#atomic#std#{8082860668582714463|constexpr}.dd2e5ecabe54fdef20aa889bb6f6f2e6_3" [label="3: Constructor Init \n n$2=*&this:std::atomic* [line 481, column 50]\n n$3=*&d:char [line 481, column 57]\n n$4=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$2:std::atomic*,n$3:char) [line 481, column 50]\n " shape="box"] "atomic#atomic#std#{8082860668582714463|constexpr}.dd2e5ecabe54fdef20aa889bb6f6f2e6_3" -> "atomic#atomic#std#{8082860668582714463|constexpr}.dd2e5ecabe54fdef20aa889bb6f6f2e6_2" ; @@ -588,7 +588,7 @@ digraph cfg { "atomic#atomic#std#{5346108577579494905|constexpr}.c15dd9aaf90a685e2a7f542bd251c605_2" [label="2: Exit std::atomic_atomic \n " color=yellow style=filled] -"atomic#atomic#std#{5346108577579494905|constexpr}.c15dd9aaf90a685e2a7f542bd251c605_3" [label="3: Constructor Init \n n$0=*&this:std::atomic* [line 381, column 50]\n n$1=*&d:signed char [line 381, column 57]\n n$2=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$0:std::atomic*,n$1:signed char) [line 381, column 50]\n " shape="box"] +"atomic#atomic#std#{5346108577579494905|constexpr}.c15dd9aaf90a685e2a7f542bd251c605_3" [label="3: Constructor Init \n n$2=*&this:std::atomic* [line 381, column 50]\n n$3=*&d:signed char [line 381, column 57]\n n$4=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$2:std::atomic*,n$3:signed char) [line 381, column 50]\n " shape="box"] "atomic#atomic#std#{5346108577579494905|constexpr}.c15dd9aaf90a685e2a7f542bd251c605_3" -> "atomic#atomic#std#{5346108577579494905|constexpr}.c15dd9aaf90a685e2a7f542bd251c605_2" ; @@ -599,7 +599,7 @@ digraph cfg { "atomic#atomic#std#{1569576068982126765|constexpr}.65635696899f54c5a6d6629c8a6ecb24_2" [label="2: Exit std::atomic_atomic \n " color=yellow style=filled] -"atomic#atomic#std#{1569576068982126765|constexpr}.65635696899f54c5a6d6629c8a6ecb24_3" [label="3: Constructor Init \n n$0=*&this:std::atomic* [line 372, column 50]\n n$1=*&d:char [line 372, column 57]\n n$2=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$0:std::atomic*,n$1:char) [line 372, column 50]\n " shape="box"] +"atomic#atomic#std#{1569576068982126765|constexpr}.65635696899f54c5a6d6629c8a6ecb24_3" [label="3: Constructor Init \n n$2=*&this:std::atomic* [line 372, column 50]\n n$3=*&d:char [line 372, column 57]\n n$4=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$2:std::atomic*,n$3:char) [line 372, column 50]\n " shape="box"] "atomic#atomic#std#{1569576068982126765|constexpr}.65635696899f54c5a6d6629c8a6ecb24_3" -> "atomic#atomic#std#{1569576068982126765|constexpr}.65635696899f54c5a6d6629c8a6ecb24_2" ; @@ -610,7 +610,7 @@ digraph cfg { "atomic#atomic#std#{2209937568484024999|constexpr}.6cdd85274a8b59daa2beabef472c513a_2" [label="2: Exit std::atomic_atomic \n " color=yellow style=filled] -"atomic#atomic#std#{2209937568484024999|constexpr}.6cdd85274a8b59daa2beabef472c513a_3" [label="3: Constructor Init \n n$0=*&this:std::atomic* [line 490, column 50]\n n$1=*&d:char [line 490, column 57]\n n$2=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$0:std::atomic*,n$1:char) [line 490, column 50]\n " shape="box"] +"atomic#atomic#std#{2209937568484024999|constexpr}.6cdd85274a8b59daa2beabef472c513a_3" [label="3: Constructor Init \n n$2=*&this:std::atomic* [line 490, column 50]\n n$3=*&d:char [line 490, column 57]\n n$4=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$2:std::atomic*,n$3:char) [line 490, column 50]\n " shape="box"] "atomic#atomic#std#{2209937568484024999|constexpr}.6cdd85274a8b59daa2beabef472c513a_3" -> "atomic#atomic#std#{2209937568484024999|constexpr}.6cdd85274a8b59daa2beabef472c513a_2" ; @@ -621,7 +621,7 @@ digraph cfg { "atomic#atomic#std#{10601848595505065591|constexpr}.a5e478d8ee519cb53e4dcde645e4dbe4_2" [label="2: Exit std::atomic_atomic \n " color=yellow style=filled] -"atomic#atomic#std#{10601848595505065591|constexpr}.a5e478d8ee519cb53e4dcde645e4dbe4_3" [label="3: Constructor Init \n n$0=*&this:std::atomic* [line 426, column 50]\n n$1=*&d:unsigned int [line 426, column 57]\n n$2=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$0:std::atomic*,n$1:unsigned int) [line 426, column 50]\n " shape="box"] +"atomic#atomic#std#{10601848595505065591|constexpr}.a5e478d8ee519cb53e4dcde645e4dbe4_3" [label="3: Constructor Init \n n$2=*&this:std::atomic* [line 426, column 50]\n n$3=*&d:unsigned int [line 426, column 57]\n n$4=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$2:std::atomic*,n$3:unsigned int) [line 426, column 50]\n " shape="box"] "atomic#atomic#std#{10601848595505065591|constexpr}.a5e478d8ee519cb53e4dcde645e4dbe4_3" -> "atomic#atomic#std#{10601848595505065591|constexpr}.a5e478d8ee519cb53e4dcde645e4dbe4_2" ; @@ -632,7 +632,7 @@ digraph cfg { "atomic#atomic#std#{8272996909294858201|constexpr}.4af18384f1b00a3d9942312d16de12f0_2" [label="2: Exit std::atomic_atomic \n " color=yellow style=filled] -"atomic#atomic#std#{8272996909294858201|constexpr}.4af18384f1b00a3d9942312d16de12f0_3" [label="3: Constructor Init \n n$0=*&this:std::atomic* [line 463, column 50]\n n$1=*&d:unsigned long long [line 463, column 57]\n n$2=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$0:std::atomic*,n$1:unsigned long long) [line 463, column 50]\n " shape="box"] +"atomic#atomic#std#{8272996909294858201|constexpr}.4af18384f1b00a3d9942312d16de12f0_3" [label="3: Constructor Init \n n$2=*&this:std::atomic* [line 463, column 50]\n n$3=*&d:unsigned long long [line 463, column 57]\n n$4=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$2:std::atomic*,n$3:unsigned long long) [line 463, column 50]\n " shape="box"] "atomic#atomic#std#{8272996909294858201|constexpr}.4af18384f1b00a3d9942312d16de12f0_3" -> "atomic#atomic#std#{8272996909294858201|constexpr}.4af18384f1b00a3d9942312d16de12f0_2" ; @@ -643,7 +643,7 @@ digraph cfg { "atomic#atomic#std#{13242178517795487559|constexpr}.b120a6c4bb0f1e110121c7888150bd59_2" [label="2: Exit std::atomic_atomic \n " color=yellow style=filled] -"atomic#atomic#std#{13242178517795487559|constexpr}.b120a6c4bb0f1e110121c7888150bd59_3" [label="3: Constructor Init \n n$0=*&this:std::atomic* [line 453, column 50]\n n$1=*&d:long long [line 453, column 57]\n n$2=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$0:std::atomic*,n$1:long long) [line 453, column 50]\n " shape="box"] +"atomic#atomic#std#{13242178517795487559|constexpr}.b120a6c4bb0f1e110121c7888150bd59_3" [label="3: Constructor Init \n n$2=*&this:std::atomic* [line 453, column 50]\n n$3=*&d:long long [line 453, column 57]\n n$4=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$2:std::atomic*,n$3:long long) [line 453, column 50]\n " shape="box"] "atomic#atomic#std#{13242178517795487559|constexpr}.b120a6c4bb0f1e110121c7888150bd59_3" -> "atomic#atomic#std#{13242178517795487559|constexpr}.b120a6c4bb0f1e110121c7888150bd59_2" ; @@ -654,7 +654,7 @@ digraph cfg { "atomic_flag#atomic_flag#std#{10931176997288531904|constexpr}.57d7555f5addc9691c180d812b1aad13_2" [label="2: Exit std::atomic_flag_atomic_flag \n " color=yellow style=filled] -"atomic_flag#atomic_flag#std#{10931176997288531904|constexpr}.57d7555f5addc9691c180d812b1aad13_3" [label="3: Constructor Init \n n$0=*&this:std::atomic_flag* [line 929, column 44]\n n$1=*&i:_Bool [line 929, column 46]\n *n$0.a:_Bool=n$1 [line 929, column 44]\n " shape="box"] +"atomic_flag#atomic_flag#std#{10931176997288531904|constexpr}.57d7555f5addc9691c180d812b1aad13_3" [label="3: Constructor Init \n n$2=*&this:std::atomic_flag* [line 929, column 44]\n n$3=*&i:_Bool [line 929, column 46]\n *n$2.a:_Bool=n$3 [line 929, column 44]\n " shape="box"] "atomic_flag#atomic_flag#std#{10931176997288531904|constexpr}.57d7555f5addc9691c180d812b1aad13_3" -> "atomic_flag#atomic_flag#std#{10931176997288531904|constexpr}.57d7555f5addc9691c180d812b1aad13_2" ; @@ -665,7 +665,7 @@ digraph cfg { "clear#atomic_flag#std#(3684357514402407574).b0b9e53b3e4cf6978b960d4491c0af6d_2" [label="2: Exit std::atomic_flag_clear \n " color=yellow style=filled] -"clear#atomic_flag#std#(3684357514402407574).b0b9e53b3e4cf6978b960d4491c0af6d_3" [label="3: BinaryOperatorStmt: Assign \n n$0=*&this:std::atomic_flag* [line 946, column 5]\n *n$0.a:_Bool=0 [line 946, column 5]\n " shape="box"] +"clear#atomic_flag#std#(3684357514402407574).b0b9e53b3e4cf6978b960d4491c0af6d_3" [label="3: BinaryOperatorStmt: Assign \n n$1=*&this:std::atomic_flag* [line 946, column 5]\n *n$1.a:_Bool=0 [line 946, column 5]\n " shape="box"] "clear#atomic_flag#std#(3684357514402407574).b0b9e53b3e4cf6978b960d4491c0af6d_3" -> "clear#atomic_flag#std#(3684357514402407574).b0b9e53b3e4cf6978b960d4491c0af6d_2" ; @@ -676,7 +676,7 @@ digraph cfg { "clear#atomic_flag#std#(4757429354090136896).a3ca4a9a64ba2fa439a627057e253cfc_2" [label="2: Exit std::atomic_flag_clear \n " color=yellow style=filled] -"clear#atomic_flag#std#(4757429354090136896).a3ca4a9a64ba2fa439a627057e253cfc_3" [label="3: BinaryOperatorStmt: Assign \n n$0=*&this:std::atomic_flag* [line 948, column 65]\n *n$0.a:_Bool=0 [line 948, column 65]\n " shape="box"] +"clear#atomic_flag#std#(4757429354090136896).a3ca4a9a64ba2fa439a627057e253cfc_3" [label="3: BinaryOperatorStmt: Assign \n n$1=*&this:std::atomic_flag* [line 948, column 65]\n *n$1.a:_Bool=0 [line 948, column 65]\n " shape="box"] "clear#atomic_flag#std#(4757429354090136896).a3ca4a9a64ba2fa439a627057e253cfc_3" -> "clear#atomic_flag#std#(4757429354090136896).a3ca4a9a64ba2fa439a627057e253cfc_2" ; @@ -687,7 +687,7 @@ digraph cfg { "model_set#shared_ptr#std#(4823396094259928824).b93622435d16d4672bfaf2944380f1be_2" [label="2: Exit std::shared_ptr_model_set \n " color=yellow style=filled] -"model_set#shared_ptr#std#(4823396094259928824).b93622435d16d4672bfaf2944380f1be_3" [label="3: BinaryOperatorStmt: Assign \n n$0=*&self:void const ** [line 67, column 6]\n n$1=*&value:void* [line 67, column 37]\n *n$0:void const *=n$1 [line 67, column 5]\n " shape="box"] +"model_set#shared_ptr#std#(4823396094259928824).b93622435d16d4672bfaf2944380f1be_3" [label="3: BinaryOperatorStmt: Assign \n n$1=*&self:void const ** [line 67, column 6]\n n$2=*&value:void* [line 67, column 37]\n *n$1:void const *=n$2 [line 67, column 5]\n " shape="box"] "model_set#shared_ptr#std#(4823396094259928824).b93622435d16d4672bfaf2944380f1be_3" -> "model_set#shared_ptr#std#(4823396094259928824).b93622435d16d4672bfaf2944380f1be_2" ; @@ -698,7 +698,7 @@ digraph cfg { "model_set#shared_ptr#std#(4842545188773067100).667f44fdf24815c87b171dd5a05fce4a_2" [label="2: Exit std::shared_ptr_model_set \n " color=yellow style=filled] -"model_set#shared_ptr#std#(4842545188773067100).667f44fdf24815c87b171dd5a05fce4a_3" [label="3: BinaryOperatorStmt: Assign \n n$0=*&self:void const ** [line 55, column 6]\n n$1=*&value:int [line 55, column 13]\n *n$0:void const *=n$1 [line 55, column 5]\n " shape="box"] +"model_set#shared_ptr#std#(4842545188773067100).667f44fdf24815c87b171dd5a05fce4a_3" [label="3: BinaryOperatorStmt: Assign \n n$1=*&self:void const ** [line 55, column 6]\n n$2=*&value:int [line 55, column 13]\n *n$1:void const *=n$2 [line 55, column 5]\n " shape="box"] "model_set#shared_ptr#std#(4842545188773067100).667f44fdf24815c87b171dd5a05fce4a_3" -> "model_set#shared_ptr#std#(4842545188773067100).667f44fdf24815c87b171dd5a05fce4a_2" ; @@ -709,7 +709,7 @@ digraph cfg { "reset#shared_ptr#std#(5124141554651620350).9719d311878ee7b168751a9cb4fd4371_2" [label="2: Exit std::shared_ptr_reset \n " color=yellow style=filled] -"reset#shared_ptr#std#(5124141554651620350).9719d311878ee7b168751a9cb4fd4371_3" [label="3: Call _fun_std::shared_ptr_model_set \n n$0=*&this:int** [line 238, column 15]\n n$1=*&p:int* [line 238, column 42]\n n$2=_fun_std::shared_ptr_model_set(n$0:void const **,n$1:void*) [line 238, column 5]\n " shape="box"] +"reset#shared_ptr#std#(5124141554651620350).9719d311878ee7b168751a9cb4fd4371_3" [label="3: Call _fun_std::shared_ptr_model_set \n n$2=*&this:int** [line 238, column 15]\n n$3=*&p:int* [line 238, column 42]\n n$4=_fun_std::shared_ptr_model_set(n$2:void const **,n$3:void*) [line 238, column 5]\n " shape="box"] "reset#shared_ptr#std#(5124141554651620350).9719d311878ee7b168751a9cb4fd4371_3" -> "reset#shared_ptr#std#(5124141554651620350).9719d311878ee7b168751a9cb4fd4371_2" ; @@ -720,11 +720,11 @@ digraph cfg { "shared_ptr#shared_ptr#std#{8741815665871862164|constexpr}.f88ab7f65e0cffeda975c68f431824d1_2" [label="2: Exit std::shared_ptr_shared_ptr \n " color=yellow style=filled] -"shared_ptr#shared_ptr#std#{8741815665871862164|constexpr}.f88ab7f65e0cffeda975c68f431824d1_3" [label="3: Call _fun_std::shared_ptr_model_set \n n$0=*&this:int** [line 99, column 15]\n n$1=_fun_std::shared_ptr_model_set(n$0:void const **,null:int) [line 99, column 5]\n " shape="box"] +"shared_ptr#shared_ptr#std#{8741815665871862164|constexpr}.f88ab7f65e0cffeda975c68f431824d1_3" [label="3: Call _fun_std::shared_ptr_model_set \n n$2=*&this:int** [line 99, column 15]\n n$3=_fun_std::shared_ptr_model_set(n$2:void const **,null:int) [line 99, column 5]\n " shape="box"] "shared_ptr#shared_ptr#std#{8741815665871862164|constexpr}.f88ab7f65e0cffeda975c68f431824d1_3" -> "shared_ptr#shared_ptr#std#{8741815665871862164|constexpr}.f88ab7f65e0cffeda975c68f431824d1_2" ; -"shared_ptr#shared_ptr#std#{8741815665871862164|constexpr}.f88ab7f65e0cffeda975c68f431824d1_4" [label="4: Constructor Init \n n$2=*&this:int** [line 99, column 42]\n n$4=_fun_std::std__shared_ptr_std__shared_ptr(n$2:int**) [line 98, column 13]\n n$3=*n$2:int* [line 98, column 13]\n " shape="box"] +"shared_ptr#shared_ptr#std#{8741815665871862164|constexpr}.f88ab7f65e0cffeda975c68f431824d1_4" [label="4: Constructor Init \n n$4=*&this:int** [line 99, column 42]\n n$6=_fun_std::std__shared_ptr_std__shared_ptr(n$4:int**) [line 98, column 13]\n n$5=*n$4:int* [line 98, column 13]\n " shape="box"] "shared_ptr#shared_ptr#std#{8741815665871862164|constexpr}.f88ab7f65e0cffeda975c68f431824d1_4" -> "shared_ptr#shared_ptr#std#{8741815665871862164|constexpr}.f88ab7f65e0cffeda975c68f431824d1_3" ; @@ -739,11 +739,11 @@ digraph cfg { "test_and_set#atomic_flag#std#(6342589292624928640).e1a95571862fb026e9cf3fed47e15f71_3" -> "test_and_set#atomic_flag#std#(6342589292624928640).e1a95571862fb026e9cf3fed47e15f71_2" ; -"test_and_set#atomic_flag#std#(6342589292624928640).e1a95571862fb026e9cf3fed47e15f71_4" [label="4: BinaryOperatorStmt: Assign \n n$1=*&this:std::atomic_flag* [line 936, column 5]\n *n$1.a:_Bool=1 [line 936, column 5]\n " shape="box"] +"test_and_set#atomic_flag#std#(6342589292624928640).e1a95571862fb026e9cf3fed47e15f71_4" [label="4: BinaryOperatorStmt: Assign \n n$2=*&this:std::atomic_flag* [line 936, column 5]\n *n$2.a:_Bool=1 [line 936, column 5]\n " shape="box"] "test_and_set#atomic_flag#std#(6342589292624928640).e1a95571862fb026e9cf3fed47e15f71_4" -> "test_and_set#atomic_flag#std#(6342589292624928640).e1a95571862fb026e9cf3fed47e15f71_3" ; -"test_and_set#atomic_flag#std#(6342589292624928640).e1a95571862fb026e9cf3fed47e15f71_5" [label="5: DeclStmt \n n$2=*&this:std::atomic_flag* [line 935, column 16]\n n$3=*n$2.a:_Bool [line 935, column 16]\n *&ret:_Bool=n$3 [line 935, column 5]\n " shape="box"] +"test_and_set#atomic_flag#std#(6342589292624928640).e1a95571862fb026e9cf3fed47e15f71_5" [label="5: DeclStmt \n n$3=*&this:std::atomic_flag* [line 935, column 16]\n n$4=*n$3.a:_Bool [line 935, column 16]\n *&ret:_Bool=n$4 [line 935, column 5]\n " shape="box"] "test_and_set#atomic_flag#std#(6342589292624928640).e1a95571862fb026e9cf3fed47e15f71_5" -> "test_and_set#atomic_flag#std#(6342589292624928640).e1a95571862fb026e9cf3fed47e15f71_4" ; @@ -758,11 +758,11 @@ digraph cfg { "test_and_set#atomic_flag#std#(6471561702066990866).1f32ee5584df8a2cd5807312ee98cdb7_3" -> "test_and_set#atomic_flag#std#(6471561702066990866).1f32ee5584df8a2cd5807312ee98cdb7_2" ; -"test_and_set#atomic_flag#std#(6471561702066990866).1f32ee5584df8a2cd5807312ee98cdb7_4" [label="4: BinaryOperatorStmt: Assign \n n$1=*&this:std::atomic_flag* [line 941, column 5]\n *n$1.a:_Bool=1 [line 941, column 5]\n " shape="box"] +"test_and_set#atomic_flag#std#(6471561702066990866).1f32ee5584df8a2cd5807312ee98cdb7_4" [label="4: BinaryOperatorStmt: Assign \n n$2=*&this:std::atomic_flag* [line 941, column 5]\n *n$2.a:_Bool=1 [line 941, column 5]\n " shape="box"] "test_and_set#atomic_flag#std#(6471561702066990866).1f32ee5584df8a2cd5807312ee98cdb7_4" -> "test_and_set#atomic_flag#std#(6471561702066990866).1f32ee5584df8a2cd5807312ee98cdb7_3" ; -"test_and_set#atomic_flag#std#(6471561702066990866).1f32ee5584df8a2cd5807312ee98cdb7_5" [label="5: DeclStmt \n n$2=*&this:std::atomic_flag* [line 940, column 16]\n n$3=*n$2.a:_Bool [line 940, column 16]\n *&ret:_Bool=n$3 [line 940, column 5]\n " shape="box"] +"test_and_set#atomic_flag#std#(6471561702066990866).1f32ee5584df8a2cd5807312ee98cdb7_5" [label="5: DeclStmt \n n$3=*&this:std::atomic_flag* [line 940, column 16]\n n$4=*n$3.a:_Bool [line 940, column 16]\n *&ret:_Bool=n$4 [line 940, column 5]\n " shape="box"] "test_and_set#atomic_flag#std#(6471561702066990866).1f32ee5584df8a2cd5807312ee98cdb7_5" -> "test_and_set#atomic_flag#std#(6471561702066990866).1f32ee5584df8a2cd5807312ee98cdb7_4" ; diff --git a/infer/tests/build_systems/codetoanalyze/clang_translation/src/main_default_root.cpp.dot b/infer/tests/build_systems/codetoanalyze/clang_translation/src/main_default_root.cpp.dot index 2263c6e12..e01b818e1 100644 --- a/infer/tests/build_systems/codetoanalyze/clang_translation/src/main_default_root.cpp.dot +++ b/infer/tests/build_systems/codetoanalyze/clang_translation/src/main_default_root.cpp.dot @@ -7,7 +7,7 @@ digraph cfg { "atomic_flag_clear#std#17550914922100779771.d1fb16da8327178ccc23af6843a8ea0b_2" [label="2: Exit std::atomic_flag_clear \n " color=yellow style=filled] -"atomic_flag_clear#std#17550914922100779771.d1fb16da8327178ccc23af6843a8ea0b_3" [label="3: Call _fun_std::atomic_flag_clear \n n$0=*&f:std::atomic_flag* [line 967, column 51]\n _=*n$0:std::atomic_flag [line 967, column 51]\n n$2=_fun_std::atomic_flag_clear(n$0:std::atomic_flag*,5:int) [line 967, column 51]\n " shape="box"] +"atomic_flag_clear#std#17550914922100779771.d1fb16da8327178ccc23af6843a8ea0b_3" [label="3: Call _fun_std::atomic_flag_clear \n n$1=*&f:std::atomic_flag* [line 967, column 51]\n _=*n$1:std::atomic_flag [line 967, column 51]\n n$3=_fun_std::atomic_flag_clear(n$1:std::atomic_flag*,5:int) [line 967, column 51]\n " shape="box"] "atomic_flag_clear#std#17550914922100779771.d1fb16da8327178ccc23af6843a8ea0b_3" -> "atomic_flag_clear#std#17550914922100779771.d1fb16da8327178ccc23af6843a8ea0b_2" ; @@ -18,7 +18,7 @@ digraph cfg { "atomic_flag_clear#std#8417018393663174481.295be794cdae89c82fc079ad828db14c_2" [label="2: Exit std::atomic_flag_clear \n " color=yellow style=filled] -"atomic_flag_clear#std#8417018393663174481.295be794cdae89c82fc079ad828db14c_3" [label="3: Call _fun_std::atomic_flag_clear \n n$0=*&f:std::atomic_flag* [line 966, column 60]\n _=*n$0:std::atomic_flag [line 966, column 60]\n n$2=_fun_std::atomic_flag_clear(n$0:std::atomic_flag*,5:int) [line 966, column 60]\n " shape="box"] +"atomic_flag_clear#std#8417018393663174481.295be794cdae89c82fc079ad828db14c_3" [label="3: Call _fun_std::atomic_flag_clear \n n$1=*&f:std::atomic_flag* [line 966, column 60]\n _=*n$1:std::atomic_flag [line 966, column 60]\n n$3=_fun_std::atomic_flag_clear(n$1:std::atomic_flag*,5:int) [line 966, column 60]\n " shape="box"] "atomic_flag_clear#std#8417018393663174481.295be794cdae89c82fc079ad828db14c_3" -> "atomic_flag_clear#std#8417018393663174481.295be794cdae89c82fc079ad828db14c_2" ; @@ -29,7 +29,7 @@ digraph cfg { "atomic_flag_clear_explicit#std#13508243229460098920.9096df62446733c75716182054ac50b0_2" [label="2: Exit std::atomic_flag_clear_explicit \n " color=yellow style=filled] -"atomic_flag_clear_explicit#std#13508243229460098920.9096df62446733c75716182054ac50b0_3" [label="3: Call _fun_std::atomic_flag_clear \n n$0=*&f:std::atomic_flag* [line 973, column 3]\n _=*n$0:std::atomic_flag [line 973, column 3]\n n$2=*&mo:int [line 973, column 12]\n n$3=_fun_std::atomic_flag_clear(n$0:std::atomic_flag*,n$2:int) [line 973, column 3]\n " shape="box"] +"atomic_flag_clear_explicit#std#13508243229460098920.9096df62446733c75716182054ac50b0_3" [label="3: Call _fun_std::atomic_flag_clear \n n$1=*&f:std::atomic_flag* [line 973, column 3]\n _=*n$1:std::atomic_flag [line 973, column 3]\n n$3=*&mo:int [line 973, column 12]\n n$4=_fun_std::atomic_flag_clear(n$1:std::atomic_flag*,n$3:int) [line 973, column 3]\n " shape="box"] "atomic_flag_clear_explicit#std#13508243229460098920.9096df62446733c75716182054ac50b0_3" -> "atomic_flag_clear_explicit#std#13508243229460098920.9096df62446733c75716182054ac50b0_2" ; @@ -40,7 +40,7 @@ digraph cfg { "atomic_flag_clear_explicit#std#17643441563504553916.f821a0b7a94ce430273c34c2a0bc2777_2" [label="2: Exit std::atomic_flag_clear_explicit \n " color=yellow style=filled] -"atomic_flag_clear_explicit#std#17643441563504553916.f821a0b7a94ce430273c34c2a0bc2777_3" [label="3: Call _fun_std::atomic_flag_clear \n n$0=*&f:std::atomic_flag* [line 970, column 3]\n _=*n$0:std::atomic_flag [line 970, column 3]\n n$2=*&mo:int [line 970, column 12]\n n$3=_fun_std::atomic_flag_clear(n$0:std::atomic_flag*,n$2:int) [line 970, column 3]\n " shape="box"] +"atomic_flag_clear_explicit#std#17643441563504553916.f821a0b7a94ce430273c34c2a0bc2777_3" [label="3: Call _fun_std::atomic_flag_clear \n n$1=*&f:std::atomic_flag* [line 970, column 3]\n _=*n$1:std::atomic_flag [line 970, column 3]\n n$3=*&mo:int [line 970, column 12]\n n$4=_fun_std::atomic_flag_clear(n$1:std::atomic_flag*,n$3:int) [line 970, column 3]\n " shape="box"] "atomic_flag_clear_explicit#std#17643441563504553916.f821a0b7a94ce430273c34c2a0bc2777_3" -> "atomic_flag_clear_explicit#std#17643441563504553916.f821a0b7a94ce430273c34c2a0bc2777_2" ; @@ -124,23 +124,23 @@ digraph cfg { "main.fad58de7366495db4650cfefac2fcd61_3" -> "main.fad58de7366495db4650cfefac2fcd61_2" ; -"main.fad58de7366495db4650cfefac2fcd61_4" [label="4: DeclStmt \n n$4=_fun_std::basic_string,std::allocator>_basic_string(&s:std::basic_string,std::allocator>*,\"1234\":char const *) [line 22, column 15]\n " shape="box"] +"main.fad58de7366495db4650cfefac2fcd61_4" [label="4: DeclStmt \n n$5=_fun_std::basic_string,std::allocator>_basic_string(&s:std::basic_string,std::allocator>*,\"1234\":char const *) [line 22, column 15]\n " shape="box"] "main.fad58de7366495db4650cfefac2fcd61_4" -> "main.fad58de7366495db4650cfefac2fcd61_3" ; -"main.fad58de7366495db4650cfefac2fcd61_5" [label="5: DeclStmt \n n$6=_fun_std::shared_ptr_shared_ptr(&x:int**) [line 21, column 24]\n n$5=*&x:int* [line 21, column 24]\n " shape="box"] +"main.fad58de7366495db4650cfefac2fcd61_5" [label="5: DeclStmt \n n$7=_fun_std::shared_ptr_shared_ptr(&x:int**) [line 21, column 24]\n n$6=*&x:int* [line 21, column 24]\n " shape="box"] "main.fad58de7366495db4650cfefac2fcd61_5" -> "main.fad58de7366495db4650cfefac2fcd61_4" ; -"main.fad58de7366495db4650cfefac2fcd61_6" [label="6: Call _fun_external::fun \n n$7=_fun_external::fun(1:int) [line 20, column 3]\n " shape="box"] +"main.fad58de7366495db4650cfefac2fcd61_6" [label="6: Call _fun_external::fun \n n$8=_fun_external::fun(1:int) [line 20, column 3]\n " shape="box"] "main.fad58de7366495db4650cfefac2fcd61_6" -> "main.fad58de7366495db4650cfefac2fcd61_5" ; -"main.fad58de7366495db4650cfefac2fcd61_7" [label="7: Call _fun_internal_exclude::fun \n n$8=_fun_internal_exclude::fun(1:int) [line 19, column 3]\n " shape="box"] +"main.fad58de7366495db4650cfefac2fcd61_7" [label="7: Call _fun_internal_exclude::fun \n n$9=_fun_internal_exclude::fun(1:int) [line 19, column 3]\n " shape="box"] "main.fad58de7366495db4650cfefac2fcd61_7" -> "main.fad58de7366495db4650cfefac2fcd61_6" ; -"main.fad58de7366495db4650cfefac2fcd61_8" [label="8: Call _fun_internal::fun \n n$9=_fun_internal::fun(1:int) [line 18, column 3]\n " shape="box"] +"main.fad58de7366495db4650cfefac2fcd61_8" [label="8: Call _fun_internal::fun \n n$10=_fun_internal::fun(1:int) [line 18, column 3]\n " shape="box"] "main.fad58de7366495db4650cfefac2fcd61_8" -> "main.fad58de7366495db4650cfefac2fcd61_7" ; @@ -155,7 +155,7 @@ digraph cfg { "unused_deref_in_header#15260603227785084028.ec2f844a26989dc35e9856ba0d7a485b_3" -> "unused_deref_in_header#15260603227785084028.ec2f844a26989dc35e9856ba0d7a485b_2" ; -"unused_deref_in_header#15260603227785084028.ec2f844a26989dc35e9856ba0d7a485b_4" [label="4: DeclStmt \n n$2=_fun_internal::used_in_main_header(0:int) [line 17, column 11]\n *&x:int=n$2 [line 17, column 3]\n " shape="box"] +"unused_deref_in_header#15260603227785084028.ec2f844a26989dc35e9856ba0d7a485b_4" [label="4: DeclStmt \n n$3=_fun_internal::used_in_main_header(0:int) [line 17, column 11]\n *&x:int=n$3 [line 17, column 3]\n " shape="box"] "unused_deref_in_header#15260603227785084028.ec2f844a26989dc35e9856ba0d7a485b_4" -> "unused_deref_in_header#15260603227785084028.ec2f844a26989dc35e9856ba0d7a485b_3" ; @@ -177,7 +177,7 @@ digraph cfg { "__infer_atomic_base#__infer_atomic_base#std#{13775723528237147754|constexpr}.1a6095f0713eed47cffb337d5bd470ba_2" [label="2: Exit std::__infer_atomic_base___infer_atomic_base \n " color=yellow style=filled] -"__infer_atomic_base#__infer_atomic_base#std#{13775723528237147754|constexpr}.1a6095f0713eed47cffb337d5bd470ba_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$1=*&desired:long [line 167, column 61]\n *n$0._wrapped_value:long=n$1 [line 167, column 46]\n " shape="box"] +"__infer_atomic_base#__infer_atomic_base#std#{13775723528237147754|constexpr}.1a6095f0713eed47cffb337d5bd470ba_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$3=*&desired:long [line 167, column 61]\n *n$2._wrapped_value:long=n$3 [line 167, column 46]\n " shape="box"] "__infer_atomic_base#__infer_atomic_base#std#{13775723528237147754|constexpr}.1a6095f0713eed47cffb337d5bd470ba_3" -> "__infer_atomic_base#__infer_atomic_base#std#{13775723528237147754|constexpr}.1a6095f0713eed47cffb337d5bd470ba_2" ; @@ -188,7 +188,7 @@ digraph cfg { "__infer_atomic_base#__infer_atomic_base#std#{7791849041241637472|constexpr}.44bc6742f53642a5ddb7e71e80b34b68_2" [label="2: Exit std::__infer_atomic_base___infer_atomic_base \n " color=yellow style=filled] -"__infer_atomic_base#__infer_atomic_base#std#{7791849041241637472|constexpr}.44bc6742f53642a5ddb7e71e80b34b68_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$1=*&desired:unsigned long [line 167, column 61]\n *n$0._wrapped_value:unsigned long=n$1 [line 167, column 46]\n " shape="box"] +"__infer_atomic_base#__infer_atomic_base#std#{7791849041241637472|constexpr}.44bc6742f53642a5ddb7e71e80b34b68_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$3=*&desired:unsigned long [line 167, column 61]\n *n$2._wrapped_value:unsigned long=n$3 [line 167, column 46]\n " shape="box"] "__infer_atomic_base#__infer_atomic_base#std#{7791849041241637472|constexpr}.44bc6742f53642a5ddb7e71e80b34b68_3" -> "__infer_atomic_base#__infer_atomic_base#std#{7791849041241637472|constexpr}.44bc6742f53642a5ddb7e71e80b34b68_2" ; @@ -199,7 +199,7 @@ digraph cfg { "__infer_atomic_base#__infer_atomic_base#std#{11319810518798892734|constexpr}.74d2c2ce173fcccf9cf8bc068d35c1fb_2" [label="2: Exit std::__infer_atomic_base___infer_atomic_base \n " color=yellow style=filled] -"__infer_atomic_base#__infer_atomic_base#std#{11319810518798892734|constexpr}.74d2c2ce173fcccf9cf8bc068d35c1fb_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$1=*&desired:char [line 167, column 61]\n *n$0._wrapped_value:char=n$1 [line 167, column 46]\n " shape="box"] +"__infer_atomic_base#__infer_atomic_base#std#{11319810518798892734|constexpr}.74d2c2ce173fcccf9cf8bc068d35c1fb_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$3=*&desired:char [line 167, column 61]\n *n$2._wrapped_value:char=n$3 [line 167, column 46]\n " shape="box"] "__infer_atomic_base#__infer_atomic_base#std#{11319810518798892734|constexpr}.74d2c2ce173fcccf9cf8bc068d35c1fb_3" -> "__infer_atomic_base#__infer_atomic_base#std#{11319810518798892734|constexpr}.74d2c2ce173fcccf9cf8bc068d35c1fb_2" ; @@ -210,7 +210,7 @@ digraph cfg { "__infer_atomic_base#__infer_atomic_base#std#{18234009817680553112|constexpr}.7a1f00575eae64e359678097638ddc12_2" [label="2: Exit std::__infer_atomic_base___infer_atomic_base \n " color=yellow style=filled] -"__infer_atomic_base#__infer_atomic_base#std#{18234009817680553112|constexpr}.7a1f00575eae64e359678097638ddc12_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$1=*&desired:short [line 167, column 61]\n *n$0._wrapped_value:short=n$1 [line 167, column 46]\n " shape="box"] +"__infer_atomic_base#__infer_atomic_base#std#{18234009817680553112|constexpr}.7a1f00575eae64e359678097638ddc12_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$3=*&desired:short [line 167, column 61]\n *n$2._wrapped_value:short=n$3 [line 167, column 46]\n " shape="box"] "__infer_atomic_base#__infer_atomic_base#std#{18234009817680553112|constexpr}.7a1f00575eae64e359678097638ddc12_3" -> "__infer_atomic_base#__infer_atomic_base#std#{18234009817680553112|constexpr}.7a1f00575eae64e359678097638ddc12_2" ; @@ -221,7 +221,7 @@ digraph cfg { "__infer_atomic_base#__infer_atomic_base#std#{16073524453317401930|constexpr}.d3f224e2d1fe7b0ad7e4e07024b91c5d_2" [label="2: Exit std::__infer_atomic_base___infer_atomic_base \n " color=yellow style=filled] -"__infer_atomic_base#__infer_atomic_base#std#{16073524453317401930|constexpr}.d3f224e2d1fe7b0ad7e4e07024b91c5d_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$1=*&desired:unsigned short [line 167, column 61]\n *n$0._wrapped_value:unsigned short=n$1 [line 167, column 46]\n " shape="box"] +"__infer_atomic_base#__infer_atomic_base#std#{16073524453317401930|constexpr}.d3f224e2d1fe7b0ad7e4e07024b91c5d_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$3=*&desired:unsigned short [line 167, column 61]\n *n$2._wrapped_value:unsigned short=n$3 [line 167, column 46]\n " shape="box"] "__infer_atomic_base#__infer_atomic_base#std#{16073524453317401930|constexpr}.d3f224e2d1fe7b0ad7e4e07024b91c5d_3" -> "__infer_atomic_base#__infer_atomic_base#std#{16073524453317401930|constexpr}.d3f224e2d1fe7b0ad7e4e07024b91c5d_2" ; @@ -232,7 +232,7 @@ digraph cfg { "__infer_atomic_base#__infer_atomic_base#std#{9938535674916741600|constexpr}.b3505ad067544b42cd3d24960993f2d2_2" [label="2: Exit std::__infer_atomic_base___infer_atomic_base \n " color=yellow style=filled] -"__infer_atomic_base#__infer_atomic_base#std#{9938535674916741600|constexpr}.b3505ad067544b42cd3d24960993f2d2_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$1=*&desired:char [line 167, column 61]\n *n$0._wrapped_value:char=n$1 [line 167, column 46]\n " shape="box"] +"__infer_atomic_base#__infer_atomic_base#std#{9938535674916741600|constexpr}.b3505ad067544b42cd3d24960993f2d2_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$3=*&desired:char [line 167, column 61]\n *n$2._wrapped_value:char=n$3 [line 167, column 46]\n " shape="box"] "__infer_atomic_base#__infer_atomic_base#std#{9938535674916741600|constexpr}.b3505ad067544b42cd3d24960993f2d2_3" -> "__infer_atomic_base#__infer_atomic_base#std#{9938535674916741600|constexpr}.b3505ad067544b42cd3d24960993f2d2_2" ; @@ -243,7 +243,7 @@ digraph cfg { "__infer_atomic_base#__infer_atomic_base#std#{8782788136688727146|constexpr}.3f103dad2faa43c9afacd724927e0000_2" [label="2: Exit std::__infer_atomic_base___infer_atomic_base \n " color=yellow style=filled] -"__infer_atomic_base#__infer_atomic_base#std#{8782788136688727146|constexpr}.3f103dad2faa43c9afacd724927e0000_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$1=*&desired:long long [line 167, column 61]\n *n$0._wrapped_value:long long=n$1 [line 167, column 46]\n " shape="box"] +"__infer_atomic_base#__infer_atomic_base#std#{8782788136688727146|constexpr}.3f103dad2faa43c9afacd724927e0000_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$3=*&desired:long long [line 167, column 61]\n *n$2._wrapped_value:long long=n$3 [line 167, column 46]\n " shape="box"] "__infer_atomic_base#__infer_atomic_base#std#{8782788136688727146|constexpr}.3f103dad2faa43c9afacd724927e0000_3" -> "__infer_atomic_base#__infer_atomic_base#std#{8782788136688727146|constexpr}.3f103dad2faa43c9afacd724927e0000_2" ; @@ -254,7 +254,7 @@ digraph cfg { "__infer_atomic_base#__infer_atomic_base#std#{7365870495610955464|constexpr}.7e9c5ad29861b93350b8ee38f6d0df14_2" [label="2: Exit std::__infer_atomic_base___infer_atomic_base \n " color=yellow style=filled] -"__infer_atomic_base#__infer_atomic_base#std#{7365870495610955464|constexpr}.7e9c5ad29861b93350b8ee38f6d0df14_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$1=*&desired:signed char [line 167, column 61]\n *n$0._wrapped_value:signed char=n$1 [line 167, column 46]\n " shape="box"] +"__infer_atomic_base#__infer_atomic_base#std#{7365870495610955464|constexpr}.7e9c5ad29861b93350b8ee38f6d0df14_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$3=*&desired:signed char [line 167, column 61]\n *n$2._wrapped_value:signed char=n$3 [line 167, column 46]\n " shape="box"] "__infer_atomic_base#__infer_atomic_base#std#{7365870495610955464|constexpr}.7e9c5ad29861b93350b8ee38f6d0df14_3" -> "__infer_atomic_base#__infer_atomic_base#std#{7365870495610955464|constexpr}.7e9c5ad29861b93350b8ee38f6d0df14_2" ; @@ -265,7 +265,7 @@ digraph cfg { "__infer_atomic_base#__infer_atomic_base#std#{14341025698771447512|constexpr}.a4ea01d510cd8d527bb600a45ccd1b98_2" [label="2: Exit std::__infer_atomic_base___infer_atomic_base \n " color=yellow style=filled] -"__infer_atomic_base#__infer_atomic_base#std#{14341025698771447512|constexpr}.a4ea01d510cd8d527bb600a45ccd1b98_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$1=*&desired:char [line 167, column 61]\n *n$0._wrapped_value:char=n$1 [line 167, column 46]\n " shape="box"] +"__infer_atomic_base#__infer_atomic_base#std#{14341025698771447512|constexpr}.a4ea01d510cd8d527bb600a45ccd1b98_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$3=*&desired:char [line 167, column 61]\n *n$2._wrapped_value:char=n$3 [line 167, column 46]\n " shape="box"] "__infer_atomic_base#__infer_atomic_base#std#{14341025698771447512|constexpr}.a4ea01d510cd8d527bb600a45ccd1b98_3" -> "__infer_atomic_base#__infer_atomic_base#std#{14341025698771447512|constexpr}.a4ea01d510cd8d527bb600a45ccd1b98_2" ; @@ -276,7 +276,7 @@ digraph cfg { "__infer_atomic_base#__infer_atomic_base#std#{7573412317894445992|constexpr}.ff0e487372c722b860a1cd876aa6c750_2" [label="2: Exit std::__infer_atomic_base___infer_atomic_base \n " color=yellow style=filled] -"__infer_atomic_base#__infer_atomic_base#std#{7573412317894445992|constexpr}.ff0e487372c722b860a1cd876aa6c750_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$1=*&desired:unsigned long long [line 167, column 61]\n *n$0._wrapped_value:unsigned long long=n$1 [line 167, column 46]\n " shape="box"] +"__infer_atomic_base#__infer_atomic_base#std#{7573412317894445992|constexpr}.ff0e487372c722b860a1cd876aa6c750_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$3=*&desired:unsigned long long [line 167, column 61]\n *n$2._wrapped_value:unsigned long long=n$3 [line 167, column 46]\n " shape="box"] "__infer_atomic_base#__infer_atomic_base#std#{7573412317894445992|constexpr}.ff0e487372c722b860a1cd876aa6c750_3" -> "__infer_atomic_base#__infer_atomic_base#std#{7573412317894445992|constexpr}.ff0e487372c722b860a1cd876aa6c750_2" ; @@ -287,7 +287,7 @@ digraph cfg { "__infer_atomic_base#__infer_atomic_base#std#{10995699960611463466|constexpr}.b47fc7b50b63c00d13a29883101bbf91_2" [label="2: Exit std::__infer_atomic_base___infer_atomic_base \n " color=yellow style=filled] -"__infer_atomic_base#__infer_atomic_base#std#{10995699960611463466|constexpr}.b47fc7b50b63c00d13a29883101bbf91_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$1=*&desired:unsigned char [line 167, column 61]\n *n$0._wrapped_value:unsigned char=n$1 [line 167, column 46]\n " shape="box"] +"__infer_atomic_base#__infer_atomic_base#std#{10995699960611463466|constexpr}.b47fc7b50b63c00d13a29883101bbf91_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$3=*&desired:unsigned char [line 167, column 61]\n *n$2._wrapped_value:unsigned char=n$3 [line 167, column 46]\n " shape="box"] "__infer_atomic_base#__infer_atomic_base#std#{10995699960611463466|constexpr}.b47fc7b50b63c00d13a29883101bbf91_3" -> "__infer_atomic_base#__infer_atomic_base#std#{10995699960611463466|constexpr}.b47fc7b50b63c00d13a29883101bbf91_2" ; @@ -298,7 +298,7 @@ digraph cfg { "__infer_atomic_base#__infer_atomic_base#std#{16209782391084856520|constexpr}.c8b589ca28905ccc5291f33d793e0ce1_2" [label="2: Exit std::__infer_atomic_base___infer_atomic_base \n " color=yellow style=filled] -"__infer_atomic_base#__infer_atomic_base#std#{16209782391084856520|constexpr}.c8b589ca28905ccc5291f33d793e0ce1_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$1=*&desired:int [line 167, column 61]\n *n$0._wrapped_value:int=n$1 [line 167, column 46]\n " shape="box"] +"__infer_atomic_base#__infer_atomic_base#std#{16209782391084856520|constexpr}.c8b589ca28905ccc5291f33d793e0ce1_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$3=*&desired:int [line 167, column 61]\n *n$2._wrapped_value:int=n$3 [line 167, column 46]\n " shape="box"] "__infer_atomic_base#__infer_atomic_base#std#{16209782391084856520|constexpr}.c8b589ca28905ccc5291f33d793e0ce1_3" -> "__infer_atomic_base#__infer_atomic_base#std#{16209782391084856520|constexpr}.c8b589ca28905ccc5291f33d793e0ce1_2" ; @@ -309,7 +309,7 @@ digraph cfg { "__infer_atomic_base#__infer_atomic_base#std#{10976553734406539054|constexpr}.c08c69d90dff28bd294937b5d0343af8_2" [label="2: Exit std::__infer_atomic_base___infer_atomic_base \n " color=yellow style=filled] -"__infer_atomic_base#__infer_atomic_base#std#{10976553734406539054|constexpr}.c08c69d90dff28bd294937b5d0343af8_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$1=*&desired:unsigned int [line 167, column 61]\n *n$0._wrapped_value:unsigned int=n$1 [line 167, column 46]\n " shape="box"] +"__infer_atomic_base#__infer_atomic_base#std#{10976553734406539054|constexpr}.c08c69d90dff28bd294937b5d0343af8_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$3=*&desired:unsigned int [line 167, column 61]\n *n$2._wrapped_value:unsigned int=n$3 [line 167, column 46]\n " shape="box"] "__infer_atomic_base#__infer_atomic_base#std#{10976553734406539054|constexpr}.c08c69d90dff28bd294937b5d0343af8_3" -> "__infer_atomic_base#__infer_atomic_base#std#{10976553734406539054|constexpr}.c08c69d90dff28bd294937b5d0343af8_2" ; @@ -320,7 +320,7 @@ digraph cfg { "__infer_atomic_base#__infer_atomic_base#std#{8630701096989804934|constexpr}.85076a22c8a2e53a3f2fc540f31359c7_2" [label="2: Exit std::__infer_atomic_base___infer_atomic_base \n " color=yellow style=filled] -"__infer_atomic_base#__infer_atomic_base#std#{8630701096989804934|constexpr}.85076a22c8a2e53a3f2fc540f31359c7_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$1=*&desired:char [line 167, column 61]\n *n$0._wrapped_value:char=n$1 [line 167, column 46]\n " shape="box"] +"__infer_atomic_base#__infer_atomic_base#std#{8630701096989804934|constexpr}.85076a22c8a2e53a3f2fc540f31359c7_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$3=*&desired:char [line 167, column 61]\n *n$2._wrapped_value:char=n$3 [line 167, column 46]\n " shape="box"] "__infer_atomic_base#__infer_atomic_base#std#{8630701096989804934|constexpr}.85076a22c8a2e53a3f2fc540f31359c7_3" -> "__infer_atomic_base#__infer_atomic_base#std#{8630701096989804934|constexpr}.85076a22c8a2e53a3f2fc540f31359c7_2" ; @@ -331,7 +331,7 @@ digraph cfg { "__infer_atomic_integral#__infer_atomic_integral#std#{2317220937806306842|constexpr}.d393fae7aac1307d35b11f21691789e9_2" [label="2: Exit std::__infer_atomic_integral___infer_atomic_integral \n " color=yellow style=filled] -"__infer_atomic_integral#__infer_atomic_integral#std#{2317220937806306842|constexpr}.d393fae7aac1307d35b11f21691789e9_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$1=*&d:char [line 187, column 60]\n n$2=_fun_std::__infer_atomic_base___infer_atomic_base(n$0:std::__infer_atomic_integral*,n$1:char) [line 187, column 53]\n " shape="box"] +"__infer_atomic_integral#__infer_atomic_integral#std#{2317220937806306842|constexpr}.d393fae7aac1307d35b11f21691789e9_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$3=*&d:char [line 187, column 60]\n n$4=_fun_std::__infer_atomic_base___infer_atomic_base(n$2:std::__infer_atomic_integral*,n$3:char) [line 187, column 53]\n " shape="box"] "__infer_atomic_integral#__infer_atomic_integral#std#{2317220937806306842|constexpr}.d393fae7aac1307d35b11f21691789e9_3" -> "__infer_atomic_integral#__infer_atomic_integral#std#{2317220937806306842|constexpr}.d393fae7aac1307d35b11f21691789e9_2" ; @@ -342,7 +342,7 @@ digraph cfg { "__infer_atomic_integral#__infer_atomic_integral#std#{4789001703898296148|constexpr}.e708f3dd8e07f928f0136c58ce71aa77_2" [label="2: Exit std::__infer_atomic_integral___infer_atomic_integral \n " color=yellow style=filled] -"__infer_atomic_integral#__infer_atomic_integral#std#{4789001703898296148|constexpr}.e708f3dd8e07f928f0136c58ce71aa77_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$1=*&d:unsigned short [line 187, column 60]\n n$2=_fun_std::__infer_atomic_base___infer_atomic_base(n$0:std::__infer_atomic_integral*,n$1:unsigned short) [line 187, column 53]\n " shape="box"] +"__infer_atomic_integral#__infer_atomic_integral#std#{4789001703898296148|constexpr}.e708f3dd8e07f928f0136c58ce71aa77_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$3=*&d:unsigned short [line 187, column 60]\n n$4=_fun_std::__infer_atomic_base___infer_atomic_base(n$2:std::__infer_atomic_integral*,n$3:unsigned short) [line 187, column 53]\n " shape="box"] "__infer_atomic_integral#__infer_atomic_integral#std#{4789001703898296148|constexpr}.e708f3dd8e07f928f0136c58ce71aa77_3" -> "__infer_atomic_integral#__infer_atomic_integral#std#{4789001703898296148|constexpr}.e708f3dd8e07f928f0136c58ce71aa77_2" ; @@ -353,7 +353,7 @@ digraph cfg { "__infer_atomic_integral#__infer_atomic_integral#std#{14753850656660515810|conste.316dccad2dcde8efca58b19fda679f20_2" [label="2: Exit std::__infer_atomic_integral___infer_atomic_integral \n " color=yellow style=filled] -"__infer_atomic_integral#__infer_atomic_integral#std#{14753850656660515810|conste.316dccad2dcde8efca58b19fda679f20_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$1=*&d:unsigned long long [line 187, column 60]\n n$2=_fun_std::__infer_atomic_base___infer_atomic_base(n$0:std::__infer_atomic_integral*,n$1:unsigned long long) [line 187, column 53]\n " shape="box"] +"__infer_atomic_integral#__infer_atomic_integral#std#{14753850656660515810|conste.316dccad2dcde8efca58b19fda679f20_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$3=*&d:unsigned long long [line 187, column 60]\n n$4=_fun_std::__infer_atomic_base___infer_atomic_base(n$2:std::__infer_atomic_integral*,n$3:unsigned long long) [line 187, column 53]\n " shape="box"] "__infer_atomic_integral#__infer_atomic_integral#std#{14753850656660515810|conste.316dccad2dcde8efca58b19fda679f20_3" -> "__infer_atomic_integral#__infer_atomic_integral#std#{14753850656660515810|conste.316dccad2dcde8efca58b19fda679f20_2" ; @@ -364,7 +364,7 @@ digraph cfg { "__infer_atomic_integral#__infer_atomic_integral#std#{12484722408092055522|constexpr}.886571206f544c99c3746129fd658bc9_2" [label="2: Exit std::__infer_atomic_integral___infer_atomic_integral \n " color=yellow style=filled] -"__infer_atomic_integral#__infer_atomic_integral#std#{12484722408092055522|constexpr}.886571206f544c99c3746129fd658bc9_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$1=*&d:short [line 187, column 60]\n n$2=_fun_std::__infer_atomic_base___infer_atomic_base(n$0:std::__infer_atomic_integral*,n$1:short) [line 187, column 53]\n " shape="box"] +"__infer_atomic_integral#__infer_atomic_integral#std#{12484722408092055522|constexpr}.886571206f544c99c3746129fd658bc9_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$3=*&d:short [line 187, column 60]\n n$4=_fun_std::__infer_atomic_base___infer_atomic_base(n$2:std::__infer_atomic_integral*,n$3:short) [line 187, column 53]\n " shape="box"] "__infer_atomic_integral#__infer_atomic_integral#std#{12484722408092055522|constexpr}.886571206f544c99c3746129fd658bc9_3" -> "__infer_atomic_integral#__infer_atomic_integral#std#{12484722408092055522|constexpr}.886571206f544c99c3746129fd658bc9_2" ; @@ -375,7 +375,7 @@ digraph cfg { "__infer_atomic_integral#__infer_atomic_integral#std#{8591773473555052674|constexpr}.726ea5334f7395b295f6ac7cd555d392_2" [label="2: Exit std::__infer_atomic_integral___infer_atomic_integral \n " color=yellow style=filled] -"__infer_atomic_integral#__infer_atomic_integral#std#{8591773473555052674|constexpr}.726ea5334f7395b295f6ac7cd555d392_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$1=*&d:char [line 187, column 60]\n n$2=_fun_std::__infer_atomic_base___infer_atomic_base(n$0:std::__infer_atomic_integral*,n$1:char) [line 187, column 53]\n " shape="box"] +"__infer_atomic_integral#__infer_atomic_integral#std#{8591773473555052674|constexpr}.726ea5334f7395b295f6ac7cd555d392_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$3=*&d:char [line 187, column 60]\n n$4=_fun_std::__infer_atomic_base___infer_atomic_base(n$2:std::__infer_atomic_integral*,n$3:char) [line 187, column 53]\n " shape="box"] "__infer_atomic_integral#__infer_atomic_integral#std#{8591773473555052674|constexpr}.726ea5334f7395b295f6ac7cd555d392_3" -> "__infer_atomic_integral#__infer_atomic_integral#std#{8591773473555052674|constexpr}.726ea5334f7395b295f6ac7cd555d392_2" ; @@ -386,7 +386,7 @@ digraph cfg { "__infer_atomic_integral#__infer_atomic_integral#std#{9844392485801633554|constexpr}.6f8ca55944a0f4edf0c3180d150032cf_2" [label="2: Exit std::__infer_atomic_integral___infer_atomic_integral \n " color=yellow style=filled] -"__infer_atomic_integral#__infer_atomic_integral#std#{9844392485801633554|constexpr}.6f8ca55944a0f4edf0c3180d150032cf_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$1=*&d:signed char [line 187, column 60]\n n$2=_fun_std::__infer_atomic_base___infer_atomic_base(n$0:std::__infer_atomic_integral*,n$1:signed char) [line 187, column 53]\n " shape="box"] +"__infer_atomic_integral#__infer_atomic_integral#std#{9844392485801633554|constexpr}.6f8ca55944a0f4edf0c3180d150032cf_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$3=*&d:signed char [line 187, column 60]\n n$4=_fun_std::__infer_atomic_base___infer_atomic_base(n$2:std::__infer_atomic_integral*,n$3:signed char) [line 187, column 53]\n " shape="box"] "__infer_atomic_integral#__infer_atomic_integral#std#{9844392485801633554|constexpr}.6f8ca55944a0f4edf0c3180d150032cf_3" -> "__infer_atomic_integral#__infer_atomic_integral#std#{9844392485801633554|constexpr}.6f8ca55944a0f4edf0c3180d150032cf_2" ; @@ -397,7 +397,7 @@ digraph cfg { "__infer_atomic_integral#__infer_atomic_integral#std#{16522029776639505920|constexpr}.39982a6970fd6e76224956305a5d7c79_2" [label="2: Exit std::__infer_atomic_integral___infer_atomic_integral \n " color=yellow style=filled] -"__infer_atomic_integral#__infer_atomic_integral#std#{16522029776639505920|constexpr}.39982a6970fd6e76224956305a5d7c79_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$1=*&d:char [line 187, column 60]\n n$2=_fun_std::__infer_atomic_base___infer_atomic_base(n$0:std::__infer_atomic_integral*,n$1:char) [line 187, column 53]\n " shape="box"] +"__infer_atomic_integral#__infer_atomic_integral#std#{16522029776639505920|constexpr}.39982a6970fd6e76224956305a5d7c79_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$3=*&d:char [line 187, column 60]\n n$4=_fun_std::__infer_atomic_base___infer_atomic_base(n$2:std::__infer_atomic_integral*,n$3:char) [line 187, column 53]\n " shape="box"] "__infer_atomic_integral#__infer_atomic_integral#std#{16522029776639505920|constexpr}.39982a6970fd6e76224956305a5d7c79_3" -> "__infer_atomic_integral#__infer_atomic_integral#std#{16522029776639505920|constexpr}.39982a6970fd6e76224956305a5d7c79_2" ; @@ -408,7 +408,7 @@ digraph cfg { "__infer_atomic_integral#__infer_atomic_integral#std#{16659147243517555676|constexpr}.63a0b0e30efb12599ce5b737bbb89996_2" [label="2: Exit std::__infer_atomic_integral___infer_atomic_integral \n " color=yellow style=filled] -"__infer_atomic_integral#__infer_atomic_integral#std#{16659147243517555676|constexpr}.63a0b0e30efb12599ce5b737bbb89996_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$1=*&d:long long [line 187, column 60]\n n$2=_fun_std::__infer_atomic_base___infer_atomic_base(n$0:std::__infer_atomic_integral*,n$1:long long) [line 187, column 53]\n " shape="box"] +"__infer_atomic_integral#__infer_atomic_integral#std#{16659147243517555676|constexpr}.63a0b0e30efb12599ce5b737bbb89996_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$3=*&d:long long [line 187, column 60]\n n$4=_fun_std::__infer_atomic_base___infer_atomic_base(n$2:std::__infer_atomic_integral*,n$3:long long) [line 187, column 53]\n " shape="box"] "__infer_atomic_integral#__infer_atomic_integral#std#{16659147243517555676|constexpr}.63a0b0e30efb12599ce5b737bbb89996_3" -> "__infer_atomic_integral#__infer_atomic_integral#std#{16659147243517555676|constexpr}.63a0b0e30efb12599ce5b737bbb89996_2" ; @@ -419,7 +419,7 @@ digraph cfg { "__infer_atomic_integral#__infer_atomic_integral#std#{2173708841126415188|constexpr}.18d3a9ecf5789e4e4e382f28729807c8_2" [label="2: Exit std::__infer_atomic_integral___infer_atomic_integral \n " color=yellow style=filled] -"__infer_atomic_integral#__infer_atomic_integral#std#{2173708841126415188|constexpr}.18d3a9ecf5789e4e4e382f28729807c8_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$1=*&d:long [line 187, column 60]\n n$2=_fun_std::__infer_atomic_base___infer_atomic_base(n$0:std::__infer_atomic_integral*,n$1:long) [line 187, column 53]\n " shape="box"] +"__infer_atomic_integral#__infer_atomic_integral#std#{2173708841126415188|constexpr}.18d3a9ecf5789e4e4e382f28729807c8_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$3=*&d:long [line 187, column 60]\n n$4=_fun_std::__infer_atomic_base___infer_atomic_base(n$2:std::__infer_atomic_integral*,n$3:long) [line 187, column 53]\n " shape="box"] "__infer_atomic_integral#__infer_atomic_integral#std#{2173708841126415188|constexpr}.18d3a9ecf5789e4e4e382f28729807c8_3" -> "__infer_atomic_integral#__infer_atomic_integral#std#{2173708841126415188|constexpr}.18d3a9ecf5789e4e4e382f28729807c8_2" ; @@ -430,7 +430,7 @@ digraph cfg { "__infer_atomic_integral#__infer_atomic_integral#std#{14576619656228466890|constexpr}.f782c04753c7831667ca63ed4883ec25_2" [label="2: Exit std::__infer_atomic_integral___infer_atomic_integral \n " color=yellow style=filled] -"__infer_atomic_integral#__infer_atomic_integral#std#{14576619656228466890|constexpr}.f782c04753c7831667ca63ed4883ec25_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$1=*&d:unsigned long [line 187, column 60]\n n$2=_fun_std::__infer_atomic_base___infer_atomic_base(n$0:std::__infer_atomic_integral*,n$1:unsigned long) [line 187, column 53]\n " shape="box"] +"__infer_atomic_integral#__infer_atomic_integral#std#{14576619656228466890|constexpr}.f782c04753c7831667ca63ed4883ec25_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$3=*&d:unsigned long [line 187, column 60]\n n$4=_fun_std::__infer_atomic_base___infer_atomic_base(n$2:std::__infer_atomic_integral*,n$3:unsigned long) [line 187, column 53]\n " shape="box"] "__infer_atomic_integral#__infer_atomic_integral#std#{14576619656228466890|constexpr}.f782c04753c7831667ca63ed4883ec25_3" -> "__infer_atomic_integral#__infer_atomic_integral#std#{14576619656228466890|constexpr}.f782c04753c7831667ca63ed4883ec25_2" ; @@ -441,7 +441,7 @@ digraph cfg { "__infer_atomic_integral#__infer_atomic_integral#std#{4588665662015601400|constexpr}.d5e8f3087b4e601b5439130cb84493b0_2" [label="2: Exit std::__infer_atomic_integral___infer_atomic_integral \n " color=yellow style=filled] -"__infer_atomic_integral#__infer_atomic_integral#std#{4588665662015601400|constexpr}.d5e8f3087b4e601b5439130cb84493b0_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$1=*&d:unsigned int [line 187, column 60]\n n$2=_fun_std::__infer_atomic_base___infer_atomic_base(n$0:std::__infer_atomic_integral*,n$1:unsigned int) [line 187, column 53]\n " shape="box"] +"__infer_atomic_integral#__infer_atomic_integral#std#{4588665662015601400|constexpr}.d5e8f3087b4e601b5439130cb84493b0_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$3=*&d:unsigned int [line 187, column 60]\n n$4=_fun_std::__infer_atomic_base___infer_atomic_base(n$2:std::__infer_atomic_integral*,n$3:unsigned int) [line 187, column 53]\n " shape="box"] "__infer_atomic_integral#__infer_atomic_integral#std#{4588665662015601400|constexpr}.d5e8f3087b4e601b5439130cb84493b0_3" -> "__infer_atomic_integral#__infer_atomic_integral#std#{4588665662015601400|constexpr}.d5e8f3087b4e601b5439130cb84493b0_2" ; @@ -452,7 +452,7 @@ digraph cfg { "__infer_atomic_integral#__infer_atomic_integral#std#{812115561232181884|constexpr}.549c03fc14bf4fd6639150c4ad1efe18_2" [label="2: Exit std::__infer_atomic_integral___infer_atomic_integral \n " color=yellow style=filled] -"__infer_atomic_integral#__infer_atomic_integral#std#{812115561232181884|constexpr}.549c03fc14bf4fd6639150c4ad1efe18_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$1=*&d:unsigned char [line 187, column 60]\n n$2=_fun_std::__infer_atomic_base___infer_atomic_base(n$0:std::__infer_atomic_integral*,n$1:unsigned char) [line 187, column 53]\n " shape="box"] +"__infer_atomic_integral#__infer_atomic_integral#std#{812115561232181884|constexpr}.549c03fc14bf4fd6639150c4ad1efe18_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$3=*&d:unsigned char [line 187, column 60]\n n$4=_fun_std::__infer_atomic_base___infer_atomic_base(n$2:std::__infer_atomic_integral*,n$3:unsigned char) [line 187, column 53]\n " shape="box"] "__infer_atomic_integral#__infer_atomic_integral#std#{812115561232181884|constexpr}.549c03fc14bf4fd6639150c4ad1efe18_3" -> "__infer_atomic_integral#__infer_atomic_integral#std#{812115561232181884|constexpr}.549c03fc14bf4fd6639150c4ad1efe18_2" ; @@ -463,7 +463,7 @@ digraph cfg { "__infer_atomic_integral#__infer_atomic_integral#std#{15428870764710756536|constexpr}.d0b34811c384e20ccfd3c64a11df4e0a_2" [label="2: Exit std::__infer_atomic_integral___infer_atomic_integral \n " color=yellow style=filled] -"__infer_atomic_integral#__infer_atomic_integral#std#{15428870764710756536|constexpr}.d0b34811c384e20ccfd3c64a11df4e0a_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$1=*&d:char [line 187, column 60]\n n$2=_fun_std::__infer_atomic_base___infer_atomic_base(n$0:std::__infer_atomic_integral*,n$1:char) [line 187, column 53]\n " shape="box"] +"__infer_atomic_integral#__infer_atomic_integral#std#{15428870764710756536|constexpr}.d0b34811c384e20ccfd3c64a11df4e0a_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$3=*&d:char [line 187, column 60]\n n$4=_fun_std::__infer_atomic_base___infer_atomic_base(n$2:std::__infer_atomic_integral*,n$3:char) [line 187, column 53]\n " shape="box"] "__infer_atomic_integral#__infer_atomic_integral#std#{15428870764710756536|constexpr}.d0b34811c384e20ccfd3c64a11df4e0a_3" -> "__infer_atomic_integral#__infer_atomic_integral#std#{15428870764710756536|constexpr}.d0b34811c384e20ccfd3c64a11df4e0a_2" ; @@ -474,7 +474,7 @@ digraph cfg { "__infer_atomic_integral#__infer_atomic_integral#std#{10860901722123512962|constexpr}.f85ea1dfc790b10c2617a4d4f5cafd29_2" [label="2: Exit std::__infer_atomic_integral___infer_atomic_integral \n " color=yellow style=filled] -"__infer_atomic_integral#__infer_atomic_integral#std#{10860901722123512962|constexpr}.f85ea1dfc790b10c2617a4d4f5cafd29_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$1=*&d:int [line 187, column 60]\n n$2=_fun_std::__infer_atomic_base___infer_atomic_base(n$0:std::__infer_atomic_integral*,n$1:int) [line 187, column 53]\n " shape="box"] +"__infer_atomic_integral#__infer_atomic_integral#std#{10860901722123512962|constexpr}.f85ea1dfc790b10c2617a4d4f5cafd29_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$3=*&d:int [line 187, column 60]\n n$4=_fun_std::__infer_atomic_base___infer_atomic_base(n$2:std::__infer_atomic_integral*,n$3:int) [line 187, column 53]\n " shape="box"] "__infer_atomic_integral#__infer_atomic_integral#std#{10860901722123512962|constexpr}.f85ea1dfc790b10c2617a4d4f5cafd29_3" -> "__infer_atomic_integral#__infer_atomic_integral#std#{10860901722123512962|constexpr}.f85ea1dfc790b10c2617a4d4f5cafd29_2" ; @@ -489,7 +489,7 @@ digraph cfg { "__infer_inner_destructor_~shared_ptr#shared_ptr#std#(11841665744792554656).9277443e4e3f26d7cc1cd9ee0f2e3637_3" -> "__infer_inner_destructor_~shared_ptr#shared_ptr#std#(11841665744792554656).9277443e4e3f26d7cc1cd9ee0f2e3637_2" ; -"__infer_inner_destructor_~shared_ptr#shared_ptr#std#(11841665744792554656).9277443e4e3f26d7cc1cd9ee0f2e3637_4" [label="4: Call _fun_std::shared_ptr_reset \n n$3=*&this:int** [line 180, column 19]\n _=*n$3:int* [line 180, column 19]\n n$5=_fun_std::shared_ptr_reset(n$3:int**,null:int*) [line 180, column 19]\n " shape="box"] +"__infer_inner_destructor_~shared_ptr#shared_ptr#std#(11841665744792554656).9277443e4e3f26d7cc1cd9ee0f2e3637_4" [label="4: Call _fun_std::shared_ptr_reset \n n$5=*&this:int** [line 180, column 19]\n _=*n$5:int* [line 180, column 19]\n n$7=_fun_std::shared_ptr_reset(n$5:int**,null:int*) [line 180, column 19]\n " shape="box"] "__infer_inner_destructor_~shared_ptr#shared_ptr#std#(11841665744792554656).9277443e4e3f26d7cc1cd9ee0f2e3637_4" -> "__infer_inner_destructor_~shared_ptr#shared_ptr#std#(11841665744792554656).9277443e4e3f26d7cc1cd9ee0f2e3637_3" ; @@ -500,7 +500,7 @@ digraph cfg { "atomic#atomic#std#{18219637643674479567|constexpr}.a4a5467727100ba5642b3dca850c391b_2" [label="2: Exit std::atomic_atomic \n " color=yellow style=filled] -"atomic#atomic#std#{18219637643674479567|constexpr}.a4a5467727100ba5642b3dca850c391b_3" [label="3: Constructor Init \n n$0=*&this:std::atomic* [line 408, column 50]\n n$1=*&d:unsigned short [line 408, column 57]\n n$2=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$0:std::atomic*,n$1:unsigned short) [line 408, column 50]\n " shape="box"] +"atomic#atomic#std#{18219637643674479567|constexpr}.a4a5467727100ba5642b3dca850c391b_3" [label="3: Constructor Init \n n$2=*&this:std::atomic* [line 408, column 50]\n n$3=*&d:unsigned short [line 408, column 57]\n n$4=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$2:std::atomic*,n$3:unsigned short) [line 408, column 50]\n " shape="box"] "atomic#atomic#std#{18219637643674479567|constexpr}.a4a5467727100ba5642b3dca850c391b_3" -> "atomic#atomic#std#{18219637643674479567|constexpr}.a4a5467727100ba5642b3dca850c391b_2" ; @@ -511,7 +511,7 @@ digraph cfg { "atomic#atomic#std#{6824382166204133557|constexpr}.be44521bf079e2cb888037b21858e8e6_2" [label="2: Exit std::atomic_atomic \n " color=yellow style=filled] -"atomic#atomic#std#{6824382166204133557|constexpr}.be44521bf079e2cb888037b21858e8e6_3" [label="3: Constructor Init \n n$0=*&this:std::atomic* [line 472, column 50]\n n$1=*&d:char [line 472, column 57]\n n$2=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$0:std::atomic*,n$1:char) [line 472, column 50]\n " shape="box"] +"atomic#atomic#std#{6824382166204133557|constexpr}.be44521bf079e2cb888037b21858e8e6_3" [label="3: Constructor Init \n n$2=*&this:std::atomic* [line 472, column 50]\n n$3=*&d:char [line 472, column 57]\n n$4=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$2:std::atomic*,n$3:char) [line 472, column 50]\n " shape="box"] "atomic#atomic#std#{6824382166204133557|constexpr}.be44521bf079e2cb888037b21858e8e6_3" -> "atomic#atomic#std#{6824382166204133557|constexpr}.be44521bf079e2cb888037b21858e8e6_2" ; @@ -522,7 +522,7 @@ digraph cfg { "atomic#atomic#std#{12678320818314302393|constexpr}.5cd3aac69014d4e49ff04061ee1f1526_2" [label="2: Exit std::atomic_atomic \n " color=yellow style=filled] -"atomic#atomic#std#{12678320818314302393|constexpr}.5cd3aac69014d4e49ff04061ee1f1526_3" [label="3: Constructor Init \n n$0=*&this:std::atomic* [line 444, column 50]\n n$1=*&d:unsigned long [line 444, column 57]\n n$2=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$0:std::atomic*,n$1:unsigned long) [line 444, column 50]\n " shape="box"] +"atomic#atomic#std#{12678320818314302393|constexpr}.5cd3aac69014d4e49ff04061ee1f1526_3" [label="3: Constructor Init \n n$2=*&this:std::atomic* [line 444, column 50]\n n$3=*&d:unsigned long [line 444, column 57]\n n$4=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$2:std::atomic*,n$3:unsigned long) [line 444, column 50]\n " shape="box"] "atomic#atomic#std#{12678320818314302393|constexpr}.5cd3aac69014d4e49ff04061ee1f1526_3" -> "atomic#atomic#std#{12678320818314302393|constexpr}.5cd3aac69014d4e49ff04061ee1f1526_2" ; @@ -533,7 +533,7 @@ digraph cfg { "atomic#atomic#std#{17416607751267500557|constexpr}.44c96da43702ebbe4de34f6c26176ccb_2" [label="2: Exit std::atomic_atomic \n " color=yellow style=filled] -"atomic#atomic#std#{17416607751267500557|constexpr}.44c96da43702ebbe4de34f6c26176ccb_3" [label="3: Constructor Init \n n$0=*&this:std::atomic* [line 399, column 50]\n n$1=*&d:short [line 399, column 57]\n n$2=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$0:std::atomic*,n$1:short) [line 399, column 50]\n " shape="box"] +"atomic#atomic#std#{17416607751267500557|constexpr}.44c96da43702ebbe4de34f6c26176ccb_3" [label="3: Constructor Init \n n$2=*&this:std::atomic* [line 399, column 50]\n n$3=*&d:short [line 399, column 57]\n n$4=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$2:std::atomic*,n$3:short) [line 399, column 50]\n " shape="box"] "atomic#atomic#std#{17416607751267500557|constexpr}.44c96da43702ebbe4de34f6c26176ccb_3" -> "atomic#atomic#std#{17416607751267500557|constexpr}.44c96da43702ebbe4de34f6c26176ccb_2" ; @@ -544,7 +544,7 @@ digraph cfg { "atomic#atomic#std#{11783391945814293231|constexpr}.22775463bf145a69731b3305dffc4bb3_2" [label="2: Exit std::atomic_atomic \n " color=yellow style=filled] -"atomic#atomic#std#{11783391945814293231|constexpr}.22775463bf145a69731b3305dffc4bb3_3" [label="3: Constructor Init \n n$0=*&this:std::atomic* [line 435, column 50]\n n$1=*&d:long [line 435, column 57]\n n$2=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$0:std::atomic*,n$1:long) [line 435, column 50]\n " shape="box"] +"atomic#atomic#std#{11783391945814293231|constexpr}.22775463bf145a69731b3305dffc4bb3_3" [label="3: Constructor Init \n n$2=*&this:std::atomic* [line 435, column 50]\n n$3=*&d:long [line 435, column 57]\n n$4=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$2:std::atomic*,n$3:long) [line 435, column 50]\n " shape="box"] "atomic#atomic#std#{11783391945814293231|constexpr}.22775463bf145a69731b3305dffc4bb3_3" -> "atomic#atomic#std#{11783391945814293231|constexpr}.22775463bf145a69731b3305dffc4bb3_2" ; @@ -555,7 +555,7 @@ digraph cfg { "atomic#atomic#std#{10680712765411145881|constexpr}.b59b8272bcd92eac36f759f9bac15ee8_2" [label="2: Exit std::atomic_atomic \n " color=yellow style=filled] -"atomic#atomic#std#{10680712765411145881|constexpr}.b59b8272bcd92eac36f759f9bac15ee8_3" [label="3: Constructor Init \n n$0=*&this:std::atomic* [line 417, column 50]\n n$1=*&d:int [line 417, column 57]\n n$2=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$0:std::atomic*,n$1:int) [line 417, column 50]\n " shape="box"] +"atomic#atomic#std#{10680712765411145881|constexpr}.b59b8272bcd92eac36f759f9bac15ee8_3" [label="3: Constructor Init \n n$2=*&this:std::atomic* [line 417, column 50]\n n$3=*&d:int [line 417, column 57]\n n$4=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$2:std::atomic*,n$3:int) [line 417, column 50]\n " shape="box"] "atomic#atomic#std#{10680712765411145881|constexpr}.b59b8272bcd92eac36f759f9bac15ee8_3" -> "atomic#atomic#std#{10680712765411145881|constexpr}.b59b8272bcd92eac36f759f9bac15ee8_2" ; @@ -566,7 +566,7 @@ digraph cfg { "atomic#atomic#std#{9349229583258484711|constexpr}.9cbc6c1bc35116267ee41b36d8d25cb8_2" [label="2: Exit std::atomic_atomic \n " color=yellow style=filled] -"atomic#atomic#std#{9349229583258484711|constexpr}.9cbc6c1bc35116267ee41b36d8d25cb8_3" [label="3: Constructor Init \n n$0=*&this:std::atomic* [line 390, column 50]\n n$1=*&d:unsigned char [line 390, column 57]\n n$2=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$0:std::atomic*,n$1:unsigned char) [line 390, column 50]\n " shape="box"] +"atomic#atomic#std#{9349229583258484711|constexpr}.9cbc6c1bc35116267ee41b36d8d25cb8_3" [label="3: Constructor Init \n n$2=*&this:std::atomic* [line 390, column 50]\n n$3=*&d:unsigned char [line 390, column 57]\n n$4=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$2:std::atomic*,n$3:unsigned char) [line 390, column 50]\n " shape="box"] "atomic#atomic#std#{9349229583258484711|constexpr}.9cbc6c1bc35116267ee41b36d8d25cb8_3" -> "atomic#atomic#std#{9349229583258484711|constexpr}.9cbc6c1bc35116267ee41b36d8d25cb8_2" ; @@ -577,7 +577,7 @@ digraph cfg { "atomic#atomic#std#{8082860668582714463|constexpr}.dd2e5ecabe54fdef20aa889bb6f6f2e6_2" [label="2: Exit std::atomic_atomic \n " color=yellow style=filled] -"atomic#atomic#std#{8082860668582714463|constexpr}.dd2e5ecabe54fdef20aa889bb6f6f2e6_3" [label="3: Constructor Init \n n$0=*&this:std::atomic* [line 481, column 50]\n n$1=*&d:char [line 481, column 57]\n n$2=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$0:std::atomic*,n$1:char) [line 481, column 50]\n " shape="box"] +"atomic#atomic#std#{8082860668582714463|constexpr}.dd2e5ecabe54fdef20aa889bb6f6f2e6_3" [label="3: Constructor Init \n n$2=*&this:std::atomic* [line 481, column 50]\n n$3=*&d:char [line 481, column 57]\n n$4=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$2:std::atomic*,n$3:char) [line 481, column 50]\n " shape="box"] "atomic#atomic#std#{8082860668582714463|constexpr}.dd2e5ecabe54fdef20aa889bb6f6f2e6_3" -> "atomic#atomic#std#{8082860668582714463|constexpr}.dd2e5ecabe54fdef20aa889bb6f6f2e6_2" ; @@ -588,7 +588,7 @@ digraph cfg { "atomic#atomic#std#{5346108577579494905|constexpr}.c15dd9aaf90a685e2a7f542bd251c605_2" [label="2: Exit std::atomic_atomic \n " color=yellow style=filled] -"atomic#atomic#std#{5346108577579494905|constexpr}.c15dd9aaf90a685e2a7f542bd251c605_3" [label="3: Constructor Init \n n$0=*&this:std::atomic* [line 381, column 50]\n n$1=*&d:signed char [line 381, column 57]\n n$2=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$0:std::atomic*,n$1:signed char) [line 381, column 50]\n " shape="box"] +"atomic#atomic#std#{5346108577579494905|constexpr}.c15dd9aaf90a685e2a7f542bd251c605_3" [label="3: Constructor Init \n n$2=*&this:std::atomic* [line 381, column 50]\n n$3=*&d:signed char [line 381, column 57]\n n$4=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$2:std::atomic*,n$3:signed char) [line 381, column 50]\n " shape="box"] "atomic#atomic#std#{5346108577579494905|constexpr}.c15dd9aaf90a685e2a7f542bd251c605_3" -> "atomic#atomic#std#{5346108577579494905|constexpr}.c15dd9aaf90a685e2a7f542bd251c605_2" ; @@ -599,7 +599,7 @@ digraph cfg { "atomic#atomic#std#{1569576068982126765|constexpr}.65635696899f54c5a6d6629c8a6ecb24_2" [label="2: Exit std::atomic_atomic \n " color=yellow style=filled] -"atomic#atomic#std#{1569576068982126765|constexpr}.65635696899f54c5a6d6629c8a6ecb24_3" [label="3: Constructor Init \n n$0=*&this:std::atomic* [line 372, column 50]\n n$1=*&d:char [line 372, column 57]\n n$2=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$0:std::atomic*,n$1:char) [line 372, column 50]\n " shape="box"] +"atomic#atomic#std#{1569576068982126765|constexpr}.65635696899f54c5a6d6629c8a6ecb24_3" [label="3: Constructor Init \n n$2=*&this:std::atomic* [line 372, column 50]\n n$3=*&d:char [line 372, column 57]\n n$4=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$2:std::atomic*,n$3:char) [line 372, column 50]\n " shape="box"] "atomic#atomic#std#{1569576068982126765|constexpr}.65635696899f54c5a6d6629c8a6ecb24_3" -> "atomic#atomic#std#{1569576068982126765|constexpr}.65635696899f54c5a6d6629c8a6ecb24_2" ; @@ -610,7 +610,7 @@ digraph cfg { "atomic#atomic#std#{2209937568484024999|constexpr}.6cdd85274a8b59daa2beabef472c513a_2" [label="2: Exit std::atomic_atomic \n " color=yellow style=filled] -"atomic#atomic#std#{2209937568484024999|constexpr}.6cdd85274a8b59daa2beabef472c513a_3" [label="3: Constructor Init \n n$0=*&this:std::atomic* [line 490, column 50]\n n$1=*&d:char [line 490, column 57]\n n$2=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$0:std::atomic*,n$1:char) [line 490, column 50]\n " shape="box"] +"atomic#atomic#std#{2209937568484024999|constexpr}.6cdd85274a8b59daa2beabef472c513a_3" [label="3: Constructor Init \n n$2=*&this:std::atomic* [line 490, column 50]\n n$3=*&d:char [line 490, column 57]\n n$4=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$2:std::atomic*,n$3:char) [line 490, column 50]\n " shape="box"] "atomic#atomic#std#{2209937568484024999|constexpr}.6cdd85274a8b59daa2beabef472c513a_3" -> "atomic#atomic#std#{2209937568484024999|constexpr}.6cdd85274a8b59daa2beabef472c513a_2" ; @@ -621,7 +621,7 @@ digraph cfg { "atomic#atomic#std#{10601848595505065591|constexpr}.a5e478d8ee519cb53e4dcde645e4dbe4_2" [label="2: Exit std::atomic_atomic \n " color=yellow style=filled] -"atomic#atomic#std#{10601848595505065591|constexpr}.a5e478d8ee519cb53e4dcde645e4dbe4_3" [label="3: Constructor Init \n n$0=*&this:std::atomic* [line 426, column 50]\n n$1=*&d:unsigned int [line 426, column 57]\n n$2=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$0:std::atomic*,n$1:unsigned int) [line 426, column 50]\n " shape="box"] +"atomic#atomic#std#{10601848595505065591|constexpr}.a5e478d8ee519cb53e4dcde645e4dbe4_3" [label="3: Constructor Init \n n$2=*&this:std::atomic* [line 426, column 50]\n n$3=*&d:unsigned int [line 426, column 57]\n n$4=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$2:std::atomic*,n$3:unsigned int) [line 426, column 50]\n " shape="box"] "atomic#atomic#std#{10601848595505065591|constexpr}.a5e478d8ee519cb53e4dcde645e4dbe4_3" -> "atomic#atomic#std#{10601848595505065591|constexpr}.a5e478d8ee519cb53e4dcde645e4dbe4_2" ; @@ -632,7 +632,7 @@ digraph cfg { "atomic#atomic#std#{8272996909294858201|constexpr}.4af18384f1b00a3d9942312d16de12f0_2" [label="2: Exit std::atomic_atomic \n " color=yellow style=filled] -"atomic#atomic#std#{8272996909294858201|constexpr}.4af18384f1b00a3d9942312d16de12f0_3" [label="3: Constructor Init \n n$0=*&this:std::atomic* [line 463, column 50]\n n$1=*&d:unsigned long long [line 463, column 57]\n n$2=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$0:std::atomic*,n$1:unsigned long long) [line 463, column 50]\n " shape="box"] +"atomic#atomic#std#{8272996909294858201|constexpr}.4af18384f1b00a3d9942312d16de12f0_3" [label="3: Constructor Init \n n$2=*&this:std::atomic* [line 463, column 50]\n n$3=*&d:unsigned long long [line 463, column 57]\n n$4=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$2:std::atomic*,n$3:unsigned long long) [line 463, column 50]\n " shape="box"] "atomic#atomic#std#{8272996909294858201|constexpr}.4af18384f1b00a3d9942312d16de12f0_3" -> "atomic#atomic#std#{8272996909294858201|constexpr}.4af18384f1b00a3d9942312d16de12f0_2" ; @@ -643,7 +643,7 @@ digraph cfg { "atomic#atomic#std#{13242178517795487559|constexpr}.b120a6c4bb0f1e110121c7888150bd59_2" [label="2: Exit std::atomic_atomic \n " color=yellow style=filled] -"atomic#atomic#std#{13242178517795487559|constexpr}.b120a6c4bb0f1e110121c7888150bd59_3" [label="3: Constructor Init \n n$0=*&this:std::atomic* [line 453, column 50]\n n$1=*&d:long long [line 453, column 57]\n n$2=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$0:std::atomic*,n$1:long long) [line 453, column 50]\n " shape="box"] +"atomic#atomic#std#{13242178517795487559|constexpr}.b120a6c4bb0f1e110121c7888150bd59_3" [label="3: Constructor Init \n n$2=*&this:std::atomic* [line 453, column 50]\n n$3=*&d:long long [line 453, column 57]\n n$4=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$2:std::atomic*,n$3:long long) [line 453, column 50]\n " shape="box"] "atomic#atomic#std#{13242178517795487559|constexpr}.b120a6c4bb0f1e110121c7888150bd59_3" -> "atomic#atomic#std#{13242178517795487559|constexpr}.b120a6c4bb0f1e110121c7888150bd59_2" ; @@ -654,7 +654,7 @@ digraph cfg { "atomic_flag#atomic_flag#std#{10931176997288531904|constexpr}.57d7555f5addc9691c180d812b1aad13_2" [label="2: Exit std::atomic_flag_atomic_flag \n " color=yellow style=filled] -"atomic_flag#atomic_flag#std#{10931176997288531904|constexpr}.57d7555f5addc9691c180d812b1aad13_3" [label="3: Constructor Init \n n$0=*&this:std::atomic_flag* [line 929, column 44]\n n$1=*&i:_Bool [line 929, column 46]\n *n$0.a:_Bool=n$1 [line 929, column 44]\n " shape="box"] +"atomic_flag#atomic_flag#std#{10931176997288531904|constexpr}.57d7555f5addc9691c180d812b1aad13_3" [label="3: Constructor Init \n n$2=*&this:std::atomic_flag* [line 929, column 44]\n n$3=*&i:_Bool [line 929, column 46]\n *n$2.a:_Bool=n$3 [line 929, column 44]\n " shape="box"] "atomic_flag#atomic_flag#std#{10931176997288531904|constexpr}.57d7555f5addc9691c180d812b1aad13_3" -> "atomic_flag#atomic_flag#std#{10931176997288531904|constexpr}.57d7555f5addc9691c180d812b1aad13_2" ; @@ -665,7 +665,7 @@ digraph cfg { "clear#atomic_flag#std#(3684357514402407574).b0b9e53b3e4cf6978b960d4491c0af6d_2" [label="2: Exit std::atomic_flag_clear \n " color=yellow style=filled] -"clear#atomic_flag#std#(3684357514402407574).b0b9e53b3e4cf6978b960d4491c0af6d_3" [label="3: BinaryOperatorStmt: Assign \n n$0=*&this:std::atomic_flag* [line 946, column 5]\n *n$0.a:_Bool=0 [line 946, column 5]\n " shape="box"] +"clear#atomic_flag#std#(3684357514402407574).b0b9e53b3e4cf6978b960d4491c0af6d_3" [label="3: BinaryOperatorStmt: Assign \n n$1=*&this:std::atomic_flag* [line 946, column 5]\n *n$1.a:_Bool=0 [line 946, column 5]\n " shape="box"] "clear#atomic_flag#std#(3684357514402407574).b0b9e53b3e4cf6978b960d4491c0af6d_3" -> "clear#atomic_flag#std#(3684357514402407574).b0b9e53b3e4cf6978b960d4491c0af6d_2" ; @@ -676,7 +676,7 @@ digraph cfg { "clear#atomic_flag#std#(4757429354090136896).a3ca4a9a64ba2fa439a627057e253cfc_2" [label="2: Exit std::atomic_flag_clear \n " color=yellow style=filled] -"clear#atomic_flag#std#(4757429354090136896).a3ca4a9a64ba2fa439a627057e253cfc_3" [label="3: BinaryOperatorStmt: Assign \n n$0=*&this:std::atomic_flag* [line 948, column 65]\n *n$0.a:_Bool=0 [line 948, column 65]\n " shape="box"] +"clear#atomic_flag#std#(4757429354090136896).a3ca4a9a64ba2fa439a627057e253cfc_3" [label="3: BinaryOperatorStmt: Assign \n n$1=*&this:std::atomic_flag* [line 948, column 65]\n *n$1.a:_Bool=0 [line 948, column 65]\n " shape="box"] "clear#atomic_flag#std#(4757429354090136896).a3ca4a9a64ba2fa439a627057e253cfc_3" -> "clear#atomic_flag#std#(4757429354090136896).a3ca4a9a64ba2fa439a627057e253cfc_2" ; @@ -687,7 +687,7 @@ digraph cfg { "model_set#shared_ptr#std#(4823396094259928824).b93622435d16d4672bfaf2944380f1be_2" [label="2: Exit std::shared_ptr_model_set \n " color=yellow style=filled] -"model_set#shared_ptr#std#(4823396094259928824).b93622435d16d4672bfaf2944380f1be_3" [label="3: BinaryOperatorStmt: Assign \n n$0=*&self:void const ** [line 67, column 6]\n n$1=*&value:void* [line 67, column 37]\n *n$0:void const *=n$1 [line 67, column 5]\n " shape="box"] +"model_set#shared_ptr#std#(4823396094259928824).b93622435d16d4672bfaf2944380f1be_3" [label="3: BinaryOperatorStmt: Assign \n n$1=*&self:void const ** [line 67, column 6]\n n$2=*&value:void* [line 67, column 37]\n *n$1:void const *=n$2 [line 67, column 5]\n " shape="box"] "model_set#shared_ptr#std#(4823396094259928824).b93622435d16d4672bfaf2944380f1be_3" -> "model_set#shared_ptr#std#(4823396094259928824).b93622435d16d4672bfaf2944380f1be_2" ; @@ -698,7 +698,7 @@ digraph cfg { "model_set#shared_ptr#std#(4842545188773067100).667f44fdf24815c87b171dd5a05fce4a_2" [label="2: Exit std::shared_ptr_model_set \n " color=yellow style=filled] -"model_set#shared_ptr#std#(4842545188773067100).667f44fdf24815c87b171dd5a05fce4a_3" [label="3: BinaryOperatorStmt: Assign \n n$0=*&self:void const ** [line 55, column 6]\n n$1=*&value:int [line 55, column 13]\n *n$0:void const *=n$1 [line 55, column 5]\n " shape="box"] +"model_set#shared_ptr#std#(4842545188773067100).667f44fdf24815c87b171dd5a05fce4a_3" [label="3: BinaryOperatorStmt: Assign \n n$1=*&self:void const ** [line 55, column 6]\n n$2=*&value:int [line 55, column 13]\n *n$1:void const *=n$2 [line 55, column 5]\n " shape="box"] "model_set#shared_ptr#std#(4842545188773067100).667f44fdf24815c87b171dd5a05fce4a_3" -> "model_set#shared_ptr#std#(4842545188773067100).667f44fdf24815c87b171dd5a05fce4a_2" ; @@ -709,7 +709,7 @@ digraph cfg { "reset#shared_ptr#std#(5124141554651620350).9719d311878ee7b168751a9cb4fd4371_2" [label="2: Exit std::shared_ptr_reset \n " color=yellow style=filled] -"reset#shared_ptr#std#(5124141554651620350).9719d311878ee7b168751a9cb4fd4371_3" [label="3: Call _fun_std::shared_ptr_model_set \n n$0=*&this:int** [line 238, column 15]\n n$1=*&p:int* [line 238, column 42]\n n$2=_fun_std::shared_ptr_model_set(n$0:void const **,n$1:void*) [line 238, column 5]\n " shape="box"] +"reset#shared_ptr#std#(5124141554651620350).9719d311878ee7b168751a9cb4fd4371_3" [label="3: Call _fun_std::shared_ptr_model_set \n n$2=*&this:int** [line 238, column 15]\n n$3=*&p:int* [line 238, column 42]\n n$4=_fun_std::shared_ptr_model_set(n$2:void const **,n$3:void*) [line 238, column 5]\n " shape="box"] "reset#shared_ptr#std#(5124141554651620350).9719d311878ee7b168751a9cb4fd4371_3" -> "reset#shared_ptr#std#(5124141554651620350).9719d311878ee7b168751a9cb4fd4371_2" ; @@ -720,11 +720,11 @@ digraph cfg { "shared_ptr#shared_ptr#std#{8741815665871862164|constexpr}.f88ab7f65e0cffeda975c68f431824d1_2" [label="2: Exit std::shared_ptr_shared_ptr \n " color=yellow style=filled] -"shared_ptr#shared_ptr#std#{8741815665871862164|constexpr}.f88ab7f65e0cffeda975c68f431824d1_3" [label="3: Call _fun_std::shared_ptr_model_set \n n$0=*&this:int** [line 99, column 15]\n n$1=_fun_std::shared_ptr_model_set(n$0:void const **,null:int) [line 99, column 5]\n " shape="box"] +"shared_ptr#shared_ptr#std#{8741815665871862164|constexpr}.f88ab7f65e0cffeda975c68f431824d1_3" [label="3: Call _fun_std::shared_ptr_model_set \n n$2=*&this:int** [line 99, column 15]\n n$3=_fun_std::shared_ptr_model_set(n$2:void const **,null:int) [line 99, column 5]\n " shape="box"] "shared_ptr#shared_ptr#std#{8741815665871862164|constexpr}.f88ab7f65e0cffeda975c68f431824d1_3" -> "shared_ptr#shared_ptr#std#{8741815665871862164|constexpr}.f88ab7f65e0cffeda975c68f431824d1_2" ; -"shared_ptr#shared_ptr#std#{8741815665871862164|constexpr}.f88ab7f65e0cffeda975c68f431824d1_4" [label="4: Constructor Init \n n$2=*&this:int** [line 99, column 42]\n n$4=_fun_std::std__shared_ptr_std__shared_ptr(n$2:int**) [line 98, column 13]\n n$3=*n$2:int* [line 98, column 13]\n " shape="box"] +"shared_ptr#shared_ptr#std#{8741815665871862164|constexpr}.f88ab7f65e0cffeda975c68f431824d1_4" [label="4: Constructor Init \n n$4=*&this:int** [line 99, column 42]\n n$6=_fun_std::std__shared_ptr_std__shared_ptr(n$4:int**) [line 98, column 13]\n n$5=*n$4:int* [line 98, column 13]\n " shape="box"] "shared_ptr#shared_ptr#std#{8741815665871862164|constexpr}.f88ab7f65e0cffeda975c68f431824d1_4" -> "shared_ptr#shared_ptr#std#{8741815665871862164|constexpr}.f88ab7f65e0cffeda975c68f431824d1_3" ; @@ -739,11 +739,11 @@ digraph cfg { "test_and_set#atomic_flag#std#(6342589292624928640).e1a95571862fb026e9cf3fed47e15f71_3" -> "test_and_set#atomic_flag#std#(6342589292624928640).e1a95571862fb026e9cf3fed47e15f71_2" ; -"test_and_set#atomic_flag#std#(6342589292624928640).e1a95571862fb026e9cf3fed47e15f71_4" [label="4: BinaryOperatorStmt: Assign \n n$1=*&this:std::atomic_flag* [line 936, column 5]\n *n$1.a:_Bool=1 [line 936, column 5]\n " shape="box"] +"test_and_set#atomic_flag#std#(6342589292624928640).e1a95571862fb026e9cf3fed47e15f71_4" [label="4: BinaryOperatorStmt: Assign \n n$2=*&this:std::atomic_flag* [line 936, column 5]\n *n$2.a:_Bool=1 [line 936, column 5]\n " shape="box"] "test_and_set#atomic_flag#std#(6342589292624928640).e1a95571862fb026e9cf3fed47e15f71_4" -> "test_and_set#atomic_flag#std#(6342589292624928640).e1a95571862fb026e9cf3fed47e15f71_3" ; -"test_and_set#atomic_flag#std#(6342589292624928640).e1a95571862fb026e9cf3fed47e15f71_5" [label="5: DeclStmt \n n$2=*&this:std::atomic_flag* [line 935, column 16]\n n$3=*n$2.a:_Bool [line 935, column 16]\n *&ret:_Bool=n$3 [line 935, column 5]\n " shape="box"] +"test_and_set#atomic_flag#std#(6342589292624928640).e1a95571862fb026e9cf3fed47e15f71_5" [label="5: DeclStmt \n n$3=*&this:std::atomic_flag* [line 935, column 16]\n n$4=*n$3.a:_Bool [line 935, column 16]\n *&ret:_Bool=n$4 [line 935, column 5]\n " shape="box"] "test_and_set#atomic_flag#std#(6342589292624928640).e1a95571862fb026e9cf3fed47e15f71_5" -> "test_and_set#atomic_flag#std#(6342589292624928640).e1a95571862fb026e9cf3fed47e15f71_4" ; @@ -758,11 +758,11 @@ digraph cfg { "test_and_set#atomic_flag#std#(6471561702066990866).1f32ee5584df8a2cd5807312ee98cdb7_3" -> "test_and_set#atomic_flag#std#(6471561702066990866).1f32ee5584df8a2cd5807312ee98cdb7_2" ; -"test_and_set#atomic_flag#std#(6471561702066990866).1f32ee5584df8a2cd5807312ee98cdb7_4" [label="4: BinaryOperatorStmt: Assign \n n$1=*&this:std::atomic_flag* [line 941, column 5]\n *n$1.a:_Bool=1 [line 941, column 5]\n " shape="box"] +"test_and_set#atomic_flag#std#(6471561702066990866).1f32ee5584df8a2cd5807312ee98cdb7_4" [label="4: BinaryOperatorStmt: Assign \n n$2=*&this:std::atomic_flag* [line 941, column 5]\n *n$2.a:_Bool=1 [line 941, column 5]\n " shape="box"] "test_and_set#atomic_flag#std#(6471561702066990866).1f32ee5584df8a2cd5807312ee98cdb7_4" -> "test_and_set#atomic_flag#std#(6471561702066990866).1f32ee5584df8a2cd5807312ee98cdb7_3" ; -"test_and_set#atomic_flag#std#(6471561702066990866).1f32ee5584df8a2cd5807312ee98cdb7_5" [label="5: DeclStmt \n n$2=*&this:std::atomic_flag* [line 940, column 16]\n n$3=*n$2.a:_Bool [line 940, column 16]\n *&ret:_Bool=n$3 [line 940, column 5]\n " shape="box"] +"test_and_set#atomic_flag#std#(6471561702066990866).1f32ee5584df8a2cd5807312ee98cdb7_5" [label="5: DeclStmt \n n$3=*&this:std::atomic_flag* [line 940, column 16]\n n$4=*n$3.a:_Bool [line 940, column 16]\n *&ret:_Bool=n$4 [line 940, column 5]\n " shape="box"] "test_and_set#atomic_flag#std#(6471561702066990866).1f32ee5584df8a2cd5807312ee98cdb7_5" -> "test_and_set#atomic_flag#std#(6471561702066990866).1f32ee5584df8a2cd5807312ee98cdb7_4" ; diff --git a/infer/tests/build_systems/codetoanalyze/clang_translation/src/main_default_symlink.cpp.dot b/infer/tests/build_systems/codetoanalyze/clang_translation/src/main_default_symlink.cpp.dot index 2263c6e12..e01b818e1 100644 --- a/infer/tests/build_systems/codetoanalyze/clang_translation/src/main_default_symlink.cpp.dot +++ b/infer/tests/build_systems/codetoanalyze/clang_translation/src/main_default_symlink.cpp.dot @@ -7,7 +7,7 @@ digraph cfg { "atomic_flag_clear#std#17550914922100779771.d1fb16da8327178ccc23af6843a8ea0b_2" [label="2: Exit std::atomic_flag_clear \n " color=yellow style=filled] -"atomic_flag_clear#std#17550914922100779771.d1fb16da8327178ccc23af6843a8ea0b_3" [label="3: Call _fun_std::atomic_flag_clear \n n$0=*&f:std::atomic_flag* [line 967, column 51]\n _=*n$0:std::atomic_flag [line 967, column 51]\n n$2=_fun_std::atomic_flag_clear(n$0:std::atomic_flag*,5:int) [line 967, column 51]\n " shape="box"] +"atomic_flag_clear#std#17550914922100779771.d1fb16da8327178ccc23af6843a8ea0b_3" [label="3: Call _fun_std::atomic_flag_clear \n n$1=*&f:std::atomic_flag* [line 967, column 51]\n _=*n$1:std::atomic_flag [line 967, column 51]\n n$3=_fun_std::atomic_flag_clear(n$1:std::atomic_flag*,5:int) [line 967, column 51]\n " shape="box"] "atomic_flag_clear#std#17550914922100779771.d1fb16da8327178ccc23af6843a8ea0b_3" -> "atomic_flag_clear#std#17550914922100779771.d1fb16da8327178ccc23af6843a8ea0b_2" ; @@ -18,7 +18,7 @@ digraph cfg { "atomic_flag_clear#std#8417018393663174481.295be794cdae89c82fc079ad828db14c_2" [label="2: Exit std::atomic_flag_clear \n " color=yellow style=filled] -"atomic_flag_clear#std#8417018393663174481.295be794cdae89c82fc079ad828db14c_3" [label="3: Call _fun_std::atomic_flag_clear \n n$0=*&f:std::atomic_flag* [line 966, column 60]\n _=*n$0:std::atomic_flag [line 966, column 60]\n n$2=_fun_std::atomic_flag_clear(n$0:std::atomic_flag*,5:int) [line 966, column 60]\n " shape="box"] +"atomic_flag_clear#std#8417018393663174481.295be794cdae89c82fc079ad828db14c_3" [label="3: Call _fun_std::atomic_flag_clear \n n$1=*&f:std::atomic_flag* [line 966, column 60]\n _=*n$1:std::atomic_flag [line 966, column 60]\n n$3=_fun_std::atomic_flag_clear(n$1:std::atomic_flag*,5:int) [line 966, column 60]\n " shape="box"] "atomic_flag_clear#std#8417018393663174481.295be794cdae89c82fc079ad828db14c_3" -> "atomic_flag_clear#std#8417018393663174481.295be794cdae89c82fc079ad828db14c_2" ; @@ -29,7 +29,7 @@ digraph cfg { "atomic_flag_clear_explicit#std#13508243229460098920.9096df62446733c75716182054ac50b0_2" [label="2: Exit std::atomic_flag_clear_explicit \n " color=yellow style=filled] -"atomic_flag_clear_explicit#std#13508243229460098920.9096df62446733c75716182054ac50b0_3" [label="3: Call _fun_std::atomic_flag_clear \n n$0=*&f:std::atomic_flag* [line 973, column 3]\n _=*n$0:std::atomic_flag [line 973, column 3]\n n$2=*&mo:int [line 973, column 12]\n n$3=_fun_std::atomic_flag_clear(n$0:std::atomic_flag*,n$2:int) [line 973, column 3]\n " shape="box"] +"atomic_flag_clear_explicit#std#13508243229460098920.9096df62446733c75716182054ac50b0_3" [label="3: Call _fun_std::atomic_flag_clear \n n$1=*&f:std::atomic_flag* [line 973, column 3]\n _=*n$1:std::atomic_flag [line 973, column 3]\n n$3=*&mo:int [line 973, column 12]\n n$4=_fun_std::atomic_flag_clear(n$1:std::atomic_flag*,n$3:int) [line 973, column 3]\n " shape="box"] "atomic_flag_clear_explicit#std#13508243229460098920.9096df62446733c75716182054ac50b0_3" -> "atomic_flag_clear_explicit#std#13508243229460098920.9096df62446733c75716182054ac50b0_2" ; @@ -40,7 +40,7 @@ digraph cfg { "atomic_flag_clear_explicit#std#17643441563504553916.f821a0b7a94ce430273c34c2a0bc2777_2" [label="2: Exit std::atomic_flag_clear_explicit \n " color=yellow style=filled] -"atomic_flag_clear_explicit#std#17643441563504553916.f821a0b7a94ce430273c34c2a0bc2777_3" [label="3: Call _fun_std::atomic_flag_clear \n n$0=*&f:std::atomic_flag* [line 970, column 3]\n _=*n$0:std::atomic_flag [line 970, column 3]\n n$2=*&mo:int [line 970, column 12]\n n$3=_fun_std::atomic_flag_clear(n$0:std::atomic_flag*,n$2:int) [line 970, column 3]\n " shape="box"] +"atomic_flag_clear_explicit#std#17643441563504553916.f821a0b7a94ce430273c34c2a0bc2777_3" [label="3: Call _fun_std::atomic_flag_clear \n n$1=*&f:std::atomic_flag* [line 970, column 3]\n _=*n$1:std::atomic_flag [line 970, column 3]\n n$3=*&mo:int [line 970, column 12]\n n$4=_fun_std::atomic_flag_clear(n$1:std::atomic_flag*,n$3:int) [line 970, column 3]\n " shape="box"] "atomic_flag_clear_explicit#std#17643441563504553916.f821a0b7a94ce430273c34c2a0bc2777_3" -> "atomic_flag_clear_explicit#std#17643441563504553916.f821a0b7a94ce430273c34c2a0bc2777_2" ; @@ -124,23 +124,23 @@ digraph cfg { "main.fad58de7366495db4650cfefac2fcd61_3" -> "main.fad58de7366495db4650cfefac2fcd61_2" ; -"main.fad58de7366495db4650cfefac2fcd61_4" [label="4: DeclStmt \n n$4=_fun_std::basic_string,std::allocator>_basic_string(&s:std::basic_string,std::allocator>*,\"1234\":char const *) [line 22, column 15]\n " shape="box"] +"main.fad58de7366495db4650cfefac2fcd61_4" [label="4: DeclStmt \n n$5=_fun_std::basic_string,std::allocator>_basic_string(&s:std::basic_string,std::allocator>*,\"1234\":char const *) [line 22, column 15]\n " shape="box"] "main.fad58de7366495db4650cfefac2fcd61_4" -> "main.fad58de7366495db4650cfefac2fcd61_3" ; -"main.fad58de7366495db4650cfefac2fcd61_5" [label="5: DeclStmt \n n$6=_fun_std::shared_ptr_shared_ptr(&x:int**) [line 21, column 24]\n n$5=*&x:int* [line 21, column 24]\n " shape="box"] +"main.fad58de7366495db4650cfefac2fcd61_5" [label="5: DeclStmt \n n$7=_fun_std::shared_ptr_shared_ptr(&x:int**) [line 21, column 24]\n n$6=*&x:int* [line 21, column 24]\n " shape="box"] "main.fad58de7366495db4650cfefac2fcd61_5" -> "main.fad58de7366495db4650cfefac2fcd61_4" ; -"main.fad58de7366495db4650cfefac2fcd61_6" [label="6: Call _fun_external::fun \n n$7=_fun_external::fun(1:int) [line 20, column 3]\n " shape="box"] +"main.fad58de7366495db4650cfefac2fcd61_6" [label="6: Call _fun_external::fun \n n$8=_fun_external::fun(1:int) [line 20, column 3]\n " shape="box"] "main.fad58de7366495db4650cfefac2fcd61_6" -> "main.fad58de7366495db4650cfefac2fcd61_5" ; -"main.fad58de7366495db4650cfefac2fcd61_7" [label="7: Call _fun_internal_exclude::fun \n n$8=_fun_internal_exclude::fun(1:int) [line 19, column 3]\n " shape="box"] +"main.fad58de7366495db4650cfefac2fcd61_7" [label="7: Call _fun_internal_exclude::fun \n n$9=_fun_internal_exclude::fun(1:int) [line 19, column 3]\n " shape="box"] "main.fad58de7366495db4650cfefac2fcd61_7" -> "main.fad58de7366495db4650cfefac2fcd61_6" ; -"main.fad58de7366495db4650cfefac2fcd61_8" [label="8: Call _fun_internal::fun \n n$9=_fun_internal::fun(1:int) [line 18, column 3]\n " shape="box"] +"main.fad58de7366495db4650cfefac2fcd61_8" [label="8: Call _fun_internal::fun \n n$10=_fun_internal::fun(1:int) [line 18, column 3]\n " shape="box"] "main.fad58de7366495db4650cfefac2fcd61_8" -> "main.fad58de7366495db4650cfefac2fcd61_7" ; @@ -155,7 +155,7 @@ digraph cfg { "unused_deref_in_header#15260603227785084028.ec2f844a26989dc35e9856ba0d7a485b_3" -> "unused_deref_in_header#15260603227785084028.ec2f844a26989dc35e9856ba0d7a485b_2" ; -"unused_deref_in_header#15260603227785084028.ec2f844a26989dc35e9856ba0d7a485b_4" [label="4: DeclStmt \n n$2=_fun_internal::used_in_main_header(0:int) [line 17, column 11]\n *&x:int=n$2 [line 17, column 3]\n " shape="box"] +"unused_deref_in_header#15260603227785084028.ec2f844a26989dc35e9856ba0d7a485b_4" [label="4: DeclStmt \n n$3=_fun_internal::used_in_main_header(0:int) [line 17, column 11]\n *&x:int=n$3 [line 17, column 3]\n " shape="box"] "unused_deref_in_header#15260603227785084028.ec2f844a26989dc35e9856ba0d7a485b_4" -> "unused_deref_in_header#15260603227785084028.ec2f844a26989dc35e9856ba0d7a485b_3" ; @@ -177,7 +177,7 @@ digraph cfg { "__infer_atomic_base#__infer_atomic_base#std#{13775723528237147754|constexpr}.1a6095f0713eed47cffb337d5bd470ba_2" [label="2: Exit std::__infer_atomic_base___infer_atomic_base \n " color=yellow style=filled] -"__infer_atomic_base#__infer_atomic_base#std#{13775723528237147754|constexpr}.1a6095f0713eed47cffb337d5bd470ba_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$1=*&desired:long [line 167, column 61]\n *n$0._wrapped_value:long=n$1 [line 167, column 46]\n " shape="box"] +"__infer_atomic_base#__infer_atomic_base#std#{13775723528237147754|constexpr}.1a6095f0713eed47cffb337d5bd470ba_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$3=*&desired:long [line 167, column 61]\n *n$2._wrapped_value:long=n$3 [line 167, column 46]\n " shape="box"] "__infer_atomic_base#__infer_atomic_base#std#{13775723528237147754|constexpr}.1a6095f0713eed47cffb337d5bd470ba_3" -> "__infer_atomic_base#__infer_atomic_base#std#{13775723528237147754|constexpr}.1a6095f0713eed47cffb337d5bd470ba_2" ; @@ -188,7 +188,7 @@ digraph cfg { "__infer_atomic_base#__infer_atomic_base#std#{7791849041241637472|constexpr}.44bc6742f53642a5ddb7e71e80b34b68_2" [label="2: Exit std::__infer_atomic_base___infer_atomic_base \n " color=yellow style=filled] -"__infer_atomic_base#__infer_atomic_base#std#{7791849041241637472|constexpr}.44bc6742f53642a5ddb7e71e80b34b68_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$1=*&desired:unsigned long [line 167, column 61]\n *n$0._wrapped_value:unsigned long=n$1 [line 167, column 46]\n " shape="box"] +"__infer_atomic_base#__infer_atomic_base#std#{7791849041241637472|constexpr}.44bc6742f53642a5ddb7e71e80b34b68_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$3=*&desired:unsigned long [line 167, column 61]\n *n$2._wrapped_value:unsigned long=n$3 [line 167, column 46]\n " shape="box"] "__infer_atomic_base#__infer_atomic_base#std#{7791849041241637472|constexpr}.44bc6742f53642a5ddb7e71e80b34b68_3" -> "__infer_atomic_base#__infer_atomic_base#std#{7791849041241637472|constexpr}.44bc6742f53642a5ddb7e71e80b34b68_2" ; @@ -199,7 +199,7 @@ digraph cfg { "__infer_atomic_base#__infer_atomic_base#std#{11319810518798892734|constexpr}.74d2c2ce173fcccf9cf8bc068d35c1fb_2" [label="2: Exit std::__infer_atomic_base___infer_atomic_base \n " color=yellow style=filled] -"__infer_atomic_base#__infer_atomic_base#std#{11319810518798892734|constexpr}.74d2c2ce173fcccf9cf8bc068d35c1fb_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$1=*&desired:char [line 167, column 61]\n *n$0._wrapped_value:char=n$1 [line 167, column 46]\n " shape="box"] +"__infer_atomic_base#__infer_atomic_base#std#{11319810518798892734|constexpr}.74d2c2ce173fcccf9cf8bc068d35c1fb_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$3=*&desired:char [line 167, column 61]\n *n$2._wrapped_value:char=n$3 [line 167, column 46]\n " shape="box"] "__infer_atomic_base#__infer_atomic_base#std#{11319810518798892734|constexpr}.74d2c2ce173fcccf9cf8bc068d35c1fb_3" -> "__infer_atomic_base#__infer_atomic_base#std#{11319810518798892734|constexpr}.74d2c2ce173fcccf9cf8bc068d35c1fb_2" ; @@ -210,7 +210,7 @@ digraph cfg { "__infer_atomic_base#__infer_atomic_base#std#{18234009817680553112|constexpr}.7a1f00575eae64e359678097638ddc12_2" [label="2: Exit std::__infer_atomic_base___infer_atomic_base \n " color=yellow style=filled] -"__infer_atomic_base#__infer_atomic_base#std#{18234009817680553112|constexpr}.7a1f00575eae64e359678097638ddc12_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$1=*&desired:short [line 167, column 61]\n *n$0._wrapped_value:short=n$1 [line 167, column 46]\n " shape="box"] +"__infer_atomic_base#__infer_atomic_base#std#{18234009817680553112|constexpr}.7a1f00575eae64e359678097638ddc12_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$3=*&desired:short [line 167, column 61]\n *n$2._wrapped_value:short=n$3 [line 167, column 46]\n " shape="box"] "__infer_atomic_base#__infer_atomic_base#std#{18234009817680553112|constexpr}.7a1f00575eae64e359678097638ddc12_3" -> "__infer_atomic_base#__infer_atomic_base#std#{18234009817680553112|constexpr}.7a1f00575eae64e359678097638ddc12_2" ; @@ -221,7 +221,7 @@ digraph cfg { "__infer_atomic_base#__infer_atomic_base#std#{16073524453317401930|constexpr}.d3f224e2d1fe7b0ad7e4e07024b91c5d_2" [label="2: Exit std::__infer_atomic_base___infer_atomic_base \n " color=yellow style=filled] -"__infer_atomic_base#__infer_atomic_base#std#{16073524453317401930|constexpr}.d3f224e2d1fe7b0ad7e4e07024b91c5d_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$1=*&desired:unsigned short [line 167, column 61]\n *n$0._wrapped_value:unsigned short=n$1 [line 167, column 46]\n " shape="box"] +"__infer_atomic_base#__infer_atomic_base#std#{16073524453317401930|constexpr}.d3f224e2d1fe7b0ad7e4e07024b91c5d_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$3=*&desired:unsigned short [line 167, column 61]\n *n$2._wrapped_value:unsigned short=n$3 [line 167, column 46]\n " shape="box"] "__infer_atomic_base#__infer_atomic_base#std#{16073524453317401930|constexpr}.d3f224e2d1fe7b0ad7e4e07024b91c5d_3" -> "__infer_atomic_base#__infer_atomic_base#std#{16073524453317401930|constexpr}.d3f224e2d1fe7b0ad7e4e07024b91c5d_2" ; @@ -232,7 +232,7 @@ digraph cfg { "__infer_atomic_base#__infer_atomic_base#std#{9938535674916741600|constexpr}.b3505ad067544b42cd3d24960993f2d2_2" [label="2: Exit std::__infer_atomic_base___infer_atomic_base \n " color=yellow style=filled] -"__infer_atomic_base#__infer_atomic_base#std#{9938535674916741600|constexpr}.b3505ad067544b42cd3d24960993f2d2_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$1=*&desired:char [line 167, column 61]\n *n$0._wrapped_value:char=n$1 [line 167, column 46]\n " shape="box"] +"__infer_atomic_base#__infer_atomic_base#std#{9938535674916741600|constexpr}.b3505ad067544b42cd3d24960993f2d2_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$3=*&desired:char [line 167, column 61]\n *n$2._wrapped_value:char=n$3 [line 167, column 46]\n " shape="box"] "__infer_atomic_base#__infer_atomic_base#std#{9938535674916741600|constexpr}.b3505ad067544b42cd3d24960993f2d2_3" -> "__infer_atomic_base#__infer_atomic_base#std#{9938535674916741600|constexpr}.b3505ad067544b42cd3d24960993f2d2_2" ; @@ -243,7 +243,7 @@ digraph cfg { "__infer_atomic_base#__infer_atomic_base#std#{8782788136688727146|constexpr}.3f103dad2faa43c9afacd724927e0000_2" [label="2: Exit std::__infer_atomic_base___infer_atomic_base \n " color=yellow style=filled] -"__infer_atomic_base#__infer_atomic_base#std#{8782788136688727146|constexpr}.3f103dad2faa43c9afacd724927e0000_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$1=*&desired:long long [line 167, column 61]\n *n$0._wrapped_value:long long=n$1 [line 167, column 46]\n " shape="box"] +"__infer_atomic_base#__infer_atomic_base#std#{8782788136688727146|constexpr}.3f103dad2faa43c9afacd724927e0000_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$3=*&desired:long long [line 167, column 61]\n *n$2._wrapped_value:long long=n$3 [line 167, column 46]\n " shape="box"] "__infer_atomic_base#__infer_atomic_base#std#{8782788136688727146|constexpr}.3f103dad2faa43c9afacd724927e0000_3" -> "__infer_atomic_base#__infer_atomic_base#std#{8782788136688727146|constexpr}.3f103dad2faa43c9afacd724927e0000_2" ; @@ -254,7 +254,7 @@ digraph cfg { "__infer_atomic_base#__infer_atomic_base#std#{7365870495610955464|constexpr}.7e9c5ad29861b93350b8ee38f6d0df14_2" [label="2: Exit std::__infer_atomic_base___infer_atomic_base \n " color=yellow style=filled] -"__infer_atomic_base#__infer_atomic_base#std#{7365870495610955464|constexpr}.7e9c5ad29861b93350b8ee38f6d0df14_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$1=*&desired:signed char [line 167, column 61]\n *n$0._wrapped_value:signed char=n$1 [line 167, column 46]\n " shape="box"] +"__infer_atomic_base#__infer_atomic_base#std#{7365870495610955464|constexpr}.7e9c5ad29861b93350b8ee38f6d0df14_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$3=*&desired:signed char [line 167, column 61]\n *n$2._wrapped_value:signed char=n$3 [line 167, column 46]\n " shape="box"] "__infer_atomic_base#__infer_atomic_base#std#{7365870495610955464|constexpr}.7e9c5ad29861b93350b8ee38f6d0df14_3" -> "__infer_atomic_base#__infer_atomic_base#std#{7365870495610955464|constexpr}.7e9c5ad29861b93350b8ee38f6d0df14_2" ; @@ -265,7 +265,7 @@ digraph cfg { "__infer_atomic_base#__infer_atomic_base#std#{14341025698771447512|constexpr}.a4ea01d510cd8d527bb600a45ccd1b98_2" [label="2: Exit std::__infer_atomic_base___infer_atomic_base \n " color=yellow style=filled] -"__infer_atomic_base#__infer_atomic_base#std#{14341025698771447512|constexpr}.a4ea01d510cd8d527bb600a45ccd1b98_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$1=*&desired:char [line 167, column 61]\n *n$0._wrapped_value:char=n$1 [line 167, column 46]\n " shape="box"] +"__infer_atomic_base#__infer_atomic_base#std#{14341025698771447512|constexpr}.a4ea01d510cd8d527bb600a45ccd1b98_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$3=*&desired:char [line 167, column 61]\n *n$2._wrapped_value:char=n$3 [line 167, column 46]\n " shape="box"] "__infer_atomic_base#__infer_atomic_base#std#{14341025698771447512|constexpr}.a4ea01d510cd8d527bb600a45ccd1b98_3" -> "__infer_atomic_base#__infer_atomic_base#std#{14341025698771447512|constexpr}.a4ea01d510cd8d527bb600a45ccd1b98_2" ; @@ -276,7 +276,7 @@ digraph cfg { "__infer_atomic_base#__infer_atomic_base#std#{7573412317894445992|constexpr}.ff0e487372c722b860a1cd876aa6c750_2" [label="2: Exit std::__infer_atomic_base___infer_atomic_base \n " color=yellow style=filled] -"__infer_atomic_base#__infer_atomic_base#std#{7573412317894445992|constexpr}.ff0e487372c722b860a1cd876aa6c750_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$1=*&desired:unsigned long long [line 167, column 61]\n *n$0._wrapped_value:unsigned long long=n$1 [line 167, column 46]\n " shape="box"] +"__infer_atomic_base#__infer_atomic_base#std#{7573412317894445992|constexpr}.ff0e487372c722b860a1cd876aa6c750_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$3=*&desired:unsigned long long [line 167, column 61]\n *n$2._wrapped_value:unsigned long long=n$3 [line 167, column 46]\n " shape="box"] "__infer_atomic_base#__infer_atomic_base#std#{7573412317894445992|constexpr}.ff0e487372c722b860a1cd876aa6c750_3" -> "__infer_atomic_base#__infer_atomic_base#std#{7573412317894445992|constexpr}.ff0e487372c722b860a1cd876aa6c750_2" ; @@ -287,7 +287,7 @@ digraph cfg { "__infer_atomic_base#__infer_atomic_base#std#{10995699960611463466|constexpr}.b47fc7b50b63c00d13a29883101bbf91_2" [label="2: Exit std::__infer_atomic_base___infer_atomic_base \n " color=yellow style=filled] -"__infer_atomic_base#__infer_atomic_base#std#{10995699960611463466|constexpr}.b47fc7b50b63c00d13a29883101bbf91_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$1=*&desired:unsigned char [line 167, column 61]\n *n$0._wrapped_value:unsigned char=n$1 [line 167, column 46]\n " shape="box"] +"__infer_atomic_base#__infer_atomic_base#std#{10995699960611463466|constexpr}.b47fc7b50b63c00d13a29883101bbf91_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$3=*&desired:unsigned char [line 167, column 61]\n *n$2._wrapped_value:unsigned char=n$3 [line 167, column 46]\n " shape="box"] "__infer_atomic_base#__infer_atomic_base#std#{10995699960611463466|constexpr}.b47fc7b50b63c00d13a29883101bbf91_3" -> "__infer_atomic_base#__infer_atomic_base#std#{10995699960611463466|constexpr}.b47fc7b50b63c00d13a29883101bbf91_2" ; @@ -298,7 +298,7 @@ digraph cfg { "__infer_atomic_base#__infer_atomic_base#std#{16209782391084856520|constexpr}.c8b589ca28905ccc5291f33d793e0ce1_2" [label="2: Exit std::__infer_atomic_base___infer_atomic_base \n " color=yellow style=filled] -"__infer_atomic_base#__infer_atomic_base#std#{16209782391084856520|constexpr}.c8b589ca28905ccc5291f33d793e0ce1_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$1=*&desired:int [line 167, column 61]\n *n$0._wrapped_value:int=n$1 [line 167, column 46]\n " shape="box"] +"__infer_atomic_base#__infer_atomic_base#std#{16209782391084856520|constexpr}.c8b589ca28905ccc5291f33d793e0ce1_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$3=*&desired:int [line 167, column 61]\n *n$2._wrapped_value:int=n$3 [line 167, column 46]\n " shape="box"] "__infer_atomic_base#__infer_atomic_base#std#{16209782391084856520|constexpr}.c8b589ca28905ccc5291f33d793e0ce1_3" -> "__infer_atomic_base#__infer_atomic_base#std#{16209782391084856520|constexpr}.c8b589ca28905ccc5291f33d793e0ce1_2" ; @@ -309,7 +309,7 @@ digraph cfg { "__infer_atomic_base#__infer_atomic_base#std#{10976553734406539054|constexpr}.c08c69d90dff28bd294937b5d0343af8_2" [label="2: Exit std::__infer_atomic_base___infer_atomic_base \n " color=yellow style=filled] -"__infer_atomic_base#__infer_atomic_base#std#{10976553734406539054|constexpr}.c08c69d90dff28bd294937b5d0343af8_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$1=*&desired:unsigned int [line 167, column 61]\n *n$0._wrapped_value:unsigned int=n$1 [line 167, column 46]\n " shape="box"] +"__infer_atomic_base#__infer_atomic_base#std#{10976553734406539054|constexpr}.c08c69d90dff28bd294937b5d0343af8_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$3=*&desired:unsigned int [line 167, column 61]\n *n$2._wrapped_value:unsigned int=n$3 [line 167, column 46]\n " shape="box"] "__infer_atomic_base#__infer_atomic_base#std#{10976553734406539054|constexpr}.c08c69d90dff28bd294937b5d0343af8_3" -> "__infer_atomic_base#__infer_atomic_base#std#{10976553734406539054|constexpr}.c08c69d90dff28bd294937b5d0343af8_2" ; @@ -320,7 +320,7 @@ digraph cfg { "__infer_atomic_base#__infer_atomic_base#std#{8630701096989804934|constexpr}.85076a22c8a2e53a3f2fc540f31359c7_2" [label="2: Exit std::__infer_atomic_base___infer_atomic_base \n " color=yellow style=filled] -"__infer_atomic_base#__infer_atomic_base#std#{8630701096989804934|constexpr}.85076a22c8a2e53a3f2fc540f31359c7_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$1=*&desired:char [line 167, column 61]\n *n$0._wrapped_value:char=n$1 [line 167, column 46]\n " shape="box"] +"__infer_atomic_base#__infer_atomic_base#std#{8630701096989804934|constexpr}.85076a22c8a2e53a3f2fc540f31359c7_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$3=*&desired:char [line 167, column 61]\n *n$2._wrapped_value:char=n$3 [line 167, column 46]\n " shape="box"] "__infer_atomic_base#__infer_atomic_base#std#{8630701096989804934|constexpr}.85076a22c8a2e53a3f2fc540f31359c7_3" -> "__infer_atomic_base#__infer_atomic_base#std#{8630701096989804934|constexpr}.85076a22c8a2e53a3f2fc540f31359c7_2" ; @@ -331,7 +331,7 @@ digraph cfg { "__infer_atomic_integral#__infer_atomic_integral#std#{2317220937806306842|constexpr}.d393fae7aac1307d35b11f21691789e9_2" [label="2: Exit std::__infer_atomic_integral___infer_atomic_integral \n " color=yellow style=filled] -"__infer_atomic_integral#__infer_atomic_integral#std#{2317220937806306842|constexpr}.d393fae7aac1307d35b11f21691789e9_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$1=*&d:char [line 187, column 60]\n n$2=_fun_std::__infer_atomic_base___infer_atomic_base(n$0:std::__infer_atomic_integral*,n$1:char) [line 187, column 53]\n " shape="box"] +"__infer_atomic_integral#__infer_atomic_integral#std#{2317220937806306842|constexpr}.d393fae7aac1307d35b11f21691789e9_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$3=*&d:char [line 187, column 60]\n n$4=_fun_std::__infer_atomic_base___infer_atomic_base(n$2:std::__infer_atomic_integral*,n$3:char) [line 187, column 53]\n " shape="box"] "__infer_atomic_integral#__infer_atomic_integral#std#{2317220937806306842|constexpr}.d393fae7aac1307d35b11f21691789e9_3" -> "__infer_atomic_integral#__infer_atomic_integral#std#{2317220937806306842|constexpr}.d393fae7aac1307d35b11f21691789e9_2" ; @@ -342,7 +342,7 @@ digraph cfg { "__infer_atomic_integral#__infer_atomic_integral#std#{4789001703898296148|constexpr}.e708f3dd8e07f928f0136c58ce71aa77_2" [label="2: Exit std::__infer_atomic_integral___infer_atomic_integral \n " color=yellow style=filled] -"__infer_atomic_integral#__infer_atomic_integral#std#{4789001703898296148|constexpr}.e708f3dd8e07f928f0136c58ce71aa77_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$1=*&d:unsigned short [line 187, column 60]\n n$2=_fun_std::__infer_atomic_base___infer_atomic_base(n$0:std::__infer_atomic_integral*,n$1:unsigned short) [line 187, column 53]\n " shape="box"] +"__infer_atomic_integral#__infer_atomic_integral#std#{4789001703898296148|constexpr}.e708f3dd8e07f928f0136c58ce71aa77_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$3=*&d:unsigned short [line 187, column 60]\n n$4=_fun_std::__infer_atomic_base___infer_atomic_base(n$2:std::__infer_atomic_integral*,n$3:unsigned short) [line 187, column 53]\n " shape="box"] "__infer_atomic_integral#__infer_atomic_integral#std#{4789001703898296148|constexpr}.e708f3dd8e07f928f0136c58ce71aa77_3" -> "__infer_atomic_integral#__infer_atomic_integral#std#{4789001703898296148|constexpr}.e708f3dd8e07f928f0136c58ce71aa77_2" ; @@ -353,7 +353,7 @@ digraph cfg { "__infer_atomic_integral#__infer_atomic_integral#std#{14753850656660515810|conste.316dccad2dcde8efca58b19fda679f20_2" [label="2: Exit std::__infer_atomic_integral___infer_atomic_integral \n " color=yellow style=filled] -"__infer_atomic_integral#__infer_atomic_integral#std#{14753850656660515810|conste.316dccad2dcde8efca58b19fda679f20_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$1=*&d:unsigned long long [line 187, column 60]\n n$2=_fun_std::__infer_atomic_base___infer_atomic_base(n$0:std::__infer_atomic_integral*,n$1:unsigned long long) [line 187, column 53]\n " shape="box"] +"__infer_atomic_integral#__infer_atomic_integral#std#{14753850656660515810|conste.316dccad2dcde8efca58b19fda679f20_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$3=*&d:unsigned long long [line 187, column 60]\n n$4=_fun_std::__infer_atomic_base___infer_atomic_base(n$2:std::__infer_atomic_integral*,n$3:unsigned long long) [line 187, column 53]\n " shape="box"] "__infer_atomic_integral#__infer_atomic_integral#std#{14753850656660515810|conste.316dccad2dcde8efca58b19fda679f20_3" -> "__infer_atomic_integral#__infer_atomic_integral#std#{14753850656660515810|conste.316dccad2dcde8efca58b19fda679f20_2" ; @@ -364,7 +364,7 @@ digraph cfg { "__infer_atomic_integral#__infer_atomic_integral#std#{12484722408092055522|constexpr}.886571206f544c99c3746129fd658bc9_2" [label="2: Exit std::__infer_atomic_integral___infer_atomic_integral \n " color=yellow style=filled] -"__infer_atomic_integral#__infer_atomic_integral#std#{12484722408092055522|constexpr}.886571206f544c99c3746129fd658bc9_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$1=*&d:short [line 187, column 60]\n n$2=_fun_std::__infer_atomic_base___infer_atomic_base(n$0:std::__infer_atomic_integral*,n$1:short) [line 187, column 53]\n " shape="box"] +"__infer_atomic_integral#__infer_atomic_integral#std#{12484722408092055522|constexpr}.886571206f544c99c3746129fd658bc9_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$3=*&d:short [line 187, column 60]\n n$4=_fun_std::__infer_atomic_base___infer_atomic_base(n$2:std::__infer_atomic_integral*,n$3:short) [line 187, column 53]\n " shape="box"] "__infer_atomic_integral#__infer_atomic_integral#std#{12484722408092055522|constexpr}.886571206f544c99c3746129fd658bc9_3" -> "__infer_atomic_integral#__infer_atomic_integral#std#{12484722408092055522|constexpr}.886571206f544c99c3746129fd658bc9_2" ; @@ -375,7 +375,7 @@ digraph cfg { "__infer_atomic_integral#__infer_atomic_integral#std#{8591773473555052674|constexpr}.726ea5334f7395b295f6ac7cd555d392_2" [label="2: Exit std::__infer_atomic_integral___infer_atomic_integral \n " color=yellow style=filled] -"__infer_atomic_integral#__infer_atomic_integral#std#{8591773473555052674|constexpr}.726ea5334f7395b295f6ac7cd555d392_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$1=*&d:char [line 187, column 60]\n n$2=_fun_std::__infer_atomic_base___infer_atomic_base(n$0:std::__infer_atomic_integral*,n$1:char) [line 187, column 53]\n " shape="box"] +"__infer_atomic_integral#__infer_atomic_integral#std#{8591773473555052674|constexpr}.726ea5334f7395b295f6ac7cd555d392_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$3=*&d:char [line 187, column 60]\n n$4=_fun_std::__infer_atomic_base___infer_atomic_base(n$2:std::__infer_atomic_integral*,n$3:char) [line 187, column 53]\n " shape="box"] "__infer_atomic_integral#__infer_atomic_integral#std#{8591773473555052674|constexpr}.726ea5334f7395b295f6ac7cd555d392_3" -> "__infer_atomic_integral#__infer_atomic_integral#std#{8591773473555052674|constexpr}.726ea5334f7395b295f6ac7cd555d392_2" ; @@ -386,7 +386,7 @@ digraph cfg { "__infer_atomic_integral#__infer_atomic_integral#std#{9844392485801633554|constexpr}.6f8ca55944a0f4edf0c3180d150032cf_2" [label="2: Exit std::__infer_atomic_integral___infer_atomic_integral \n " color=yellow style=filled] -"__infer_atomic_integral#__infer_atomic_integral#std#{9844392485801633554|constexpr}.6f8ca55944a0f4edf0c3180d150032cf_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$1=*&d:signed char [line 187, column 60]\n n$2=_fun_std::__infer_atomic_base___infer_atomic_base(n$0:std::__infer_atomic_integral*,n$1:signed char) [line 187, column 53]\n " shape="box"] +"__infer_atomic_integral#__infer_atomic_integral#std#{9844392485801633554|constexpr}.6f8ca55944a0f4edf0c3180d150032cf_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$3=*&d:signed char [line 187, column 60]\n n$4=_fun_std::__infer_atomic_base___infer_atomic_base(n$2:std::__infer_atomic_integral*,n$3:signed char) [line 187, column 53]\n " shape="box"] "__infer_atomic_integral#__infer_atomic_integral#std#{9844392485801633554|constexpr}.6f8ca55944a0f4edf0c3180d150032cf_3" -> "__infer_atomic_integral#__infer_atomic_integral#std#{9844392485801633554|constexpr}.6f8ca55944a0f4edf0c3180d150032cf_2" ; @@ -397,7 +397,7 @@ digraph cfg { "__infer_atomic_integral#__infer_atomic_integral#std#{16522029776639505920|constexpr}.39982a6970fd6e76224956305a5d7c79_2" [label="2: Exit std::__infer_atomic_integral___infer_atomic_integral \n " color=yellow style=filled] -"__infer_atomic_integral#__infer_atomic_integral#std#{16522029776639505920|constexpr}.39982a6970fd6e76224956305a5d7c79_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$1=*&d:char [line 187, column 60]\n n$2=_fun_std::__infer_atomic_base___infer_atomic_base(n$0:std::__infer_atomic_integral*,n$1:char) [line 187, column 53]\n " shape="box"] +"__infer_atomic_integral#__infer_atomic_integral#std#{16522029776639505920|constexpr}.39982a6970fd6e76224956305a5d7c79_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$3=*&d:char [line 187, column 60]\n n$4=_fun_std::__infer_atomic_base___infer_atomic_base(n$2:std::__infer_atomic_integral*,n$3:char) [line 187, column 53]\n " shape="box"] "__infer_atomic_integral#__infer_atomic_integral#std#{16522029776639505920|constexpr}.39982a6970fd6e76224956305a5d7c79_3" -> "__infer_atomic_integral#__infer_atomic_integral#std#{16522029776639505920|constexpr}.39982a6970fd6e76224956305a5d7c79_2" ; @@ -408,7 +408,7 @@ digraph cfg { "__infer_atomic_integral#__infer_atomic_integral#std#{16659147243517555676|constexpr}.63a0b0e30efb12599ce5b737bbb89996_2" [label="2: Exit std::__infer_atomic_integral___infer_atomic_integral \n " color=yellow style=filled] -"__infer_atomic_integral#__infer_atomic_integral#std#{16659147243517555676|constexpr}.63a0b0e30efb12599ce5b737bbb89996_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$1=*&d:long long [line 187, column 60]\n n$2=_fun_std::__infer_atomic_base___infer_atomic_base(n$0:std::__infer_atomic_integral*,n$1:long long) [line 187, column 53]\n " shape="box"] +"__infer_atomic_integral#__infer_atomic_integral#std#{16659147243517555676|constexpr}.63a0b0e30efb12599ce5b737bbb89996_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$3=*&d:long long [line 187, column 60]\n n$4=_fun_std::__infer_atomic_base___infer_atomic_base(n$2:std::__infer_atomic_integral*,n$3:long long) [line 187, column 53]\n " shape="box"] "__infer_atomic_integral#__infer_atomic_integral#std#{16659147243517555676|constexpr}.63a0b0e30efb12599ce5b737bbb89996_3" -> "__infer_atomic_integral#__infer_atomic_integral#std#{16659147243517555676|constexpr}.63a0b0e30efb12599ce5b737bbb89996_2" ; @@ -419,7 +419,7 @@ digraph cfg { "__infer_atomic_integral#__infer_atomic_integral#std#{2173708841126415188|constexpr}.18d3a9ecf5789e4e4e382f28729807c8_2" [label="2: Exit std::__infer_atomic_integral___infer_atomic_integral \n " color=yellow style=filled] -"__infer_atomic_integral#__infer_atomic_integral#std#{2173708841126415188|constexpr}.18d3a9ecf5789e4e4e382f28729807c8_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$1=*&d:long [line 187, column 60]\n n$2=_fun_std::__infer_atomic_base___infer_atomic_base(n$0:std::__infer_atomic_integral*,n$1:long) [line 187, column 53]\n " shape="box"] +"__infer_atomic_integral#__infer_atomic_integral#std#{2173708841126415188|constexpr}.18d3a9ecf5789e4e4e382f28729807c8_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$3=*&d:long [line 187, column 60]\n n$4=_fun_std::__infer_atomic_base___infer_atomic_base(n$2:std::__infer_atomic_integral*,n$3:long) [line 187, column 53]\n " shape="box"] "__infer_atomic_integral#__infer_atomic_integral#std#{2173708841126415188|constexpr}.18d3a9ecf5789e4e4e382f28729807c8_3" -> "__infer_atomic_integral#__infer_atomic_integral#std#{2173708841126415188|constexpr}.18d3a9ecf5789e4e4e382f28729807c8_2" ; @@ -430,7 +430,7 @@ digraph cfg { "__infer_atomic_integral#__infer_atomic_integral#std#{14576619656228466890|constexpr}.f782c04753c7831667ca63ed4883ec25_2" [label="2: Exit std::__infer_atomic_integral___infer_atomic_integral \n " color=yellow style=filled] -"__infer_atomic_integral#__infer_atomic_integral#std#{14576619656228466890|constexpr}.f782c04753c7831667ca63ed4883ec25_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$1=*&d:unsigned long [line 187, column 60]\n n$2=_fun_std::__infer_atomic_base___infer_atomic_base(n$0:std::__infer_atomic_integral*,n$1:unsigned long) [line 187, column 53]\n " shape="box"] +"__infer_atomic_integral#__infer_atomic_integral#std#{14576619656228466890|constexpr}.f782c04753c7831667ca63ed4883ec25_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$3=*&d:unsigned long [line 187, column 60]\n n$4=_fun_std::__infer_atomic_base___infer_atomic_base(n$2:std::__infer_atomic_integral*,n$3:unsigned long) [line 187, column 53]\n " shape="box"] "__infer_atomic_integral#__infer_atomic_integral#std#{14576619656228466890|constexpr}.f782c04753c7831667ca63ed4883ec25_3" -> "__infer_atomic_integral#__infer_atomic_integral#std#{14576619656228466890|constexpr}.f782c04753c7831667ca63ed4883ec25_2" ; @@ -441,7 +441,7 @@ digraph cfg { "__infer_atomic_integral#__infer_atomic_integral#std#{4588665662015601400|constexpr}.d5e8f3087b4e601b5439130cb84493b0_2" [label="2: Exit std::__infer_atomic_integral___infer_atomic_integral \n " color=yellow style=filled] -"__infer_atomic_integral#__infer_atomic_integral#std#{4588665662015601400|constexpr}.d5e8f3087b4e601b5439130cb84493b0_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$1=*&d:unsigned int [line 187, column 60]\n n$2=_fun_std::__infer_atomic_base___infer_atomic_base(n$0:std::__infer_atomic_integral*,n$1:unsigned int) [line 187, column 53]\n " shape="box"] +"__infer_atomic_integral#__infer_atomic_integral#std#{4588665662015601400|constexpr}.d5e8f3087b4e601b5439130cb84493b0_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$3=*&d:unsigned int [line 187, column 60]\n n$4=_fun_std::__infer_atomic_base___infer_atomic_base(n$2:std::__infer_atomic_integral*,n$3:unsigned int) [line 187, column 53]\n " shape="box"] "__infer_atomic_integral#__infer_atomic_integral#std#{4588665662015601400|constexpr}.d5e8f3087b4e601b5439130cb84493b0_3" -> "__infer_atomic_integral#__infer_atomic_integral#std#{4588665662015601400|constexpr}.d5e8f3087b4e601b5439130cb84493b0_2" ; @@ -452,7 +452,7 @@ digraph cfg { "__infer_atomic_integral#__infer_atomic_integral#std#{812115561232181884|constexpr}.549c03fc14bf4fd6639150c4ad1efe18_2" [label="2: Exit std::__infer_atomic_integral___infer_atomic_integral \n " color=yellow style=filled] -"__infer_atomic_integral#__infer_atomic_integral#std#{812115561232181884|constexpr}.549c03fc14bf4fd6639150c4ad1efe18_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$1=*&d:unsigned char [line 187, column 60]\n n$2=_fun_std::__infer_atomic_base___infer_atomic_base(n$0:std::__infer_atomic_integral*,n$1:unsigned char) [line 187, column 53]\n " shape="box"] +"__infer_atomic_integral#__infer_atomic_integral#std#{812115561232181884|constexpr}.549c03fc14bf4fd6639150c4ad1efe18_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$3=*&d:unsigned char [line 187, column 60]\n n$4=_fun_std::__infer_atomic_base___infer_atomic_base(n$2:std::__infer_atomic_integral*,n$3:unsigned char) [line 187, column 53]\n " shape="box"] "__infer_atomic_integral#__infer_atomic_integral#std#{812115561232181884|constexpr}.549c03fc14bf4fd6639150c4ad1efe18_3" -> "__infer_atomic_integral#__infer_atomic_integral#std#{812115561232181884|constexpr}.549c03fc14bf4fd6639150c4ad1efe18_2" ; @@ -463,7 +463,7 @@ digraph cfg { "__infer_atomic_integral#__infer_atomic_integral#std#{15428870764710756536|constexpr}.d0b34811c384e20ccfd3c64a11df4e0a_2" [label="2: Exit std::__infer_atomic_integral___infer_atomic_integral \n " color=yellow style=filled] -"__infer_atomic_integral#__infer_atomic_integral#std#{15428870764710756536|constexpr}.d0b34811c384e20ccfd3c64a11df4e0a_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$1=*&d:char [line 187, column 60]\n n$2=_fun_std::__infer_atomic_base___infer_atomic_base(n$0:std::__infer_atomic_integral*,n$1:char) [line 187, column 53]\n " shape="box"] +"__infer_atomic_integral#__infer_atomic_integral#std#{15428870764710756536|constexpr}.d0b34811c384e20ccfd3c64a11df4e0a_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$3=*&d:char [line 187, column 60]\n n$4=_fun_std::__infer_atomic_base___infer_atomic_base(n$2:std::__infer_atomic_integral*,n$3:char) [line 187, column 53]\n " shape="box"] "__infer_atomic_integral#__infer_atomic_integral#std#{15428870764710756536|constexpr}.d0b34811c384e20ccfd3c64a11df4e0a_3" -> "__infer_atomic_integral#__infer_atomic_integral#std#{15428870764710756536|constexpr}.d0b34811c384e20ccfd3c64a11df4e0a_2" ; @@ -474,7 +474,7 @@ digraph cfg { "__infer_atomic_integral#__infer_atomic_integral#std#{10860901722123512962|constexpr}.f85ea1dfc790b10c2617a4d4f5cafd29_2" [label="2: Exit std::__infer_atomic_integral___infer_atomic_integral \n " color=yellow style=filled] -"__infer_atomic_integral#__infer_atomic_integral#std#{10860901722123512962|constexpr}.f85ea1dfc790b10c2617a4d4f5cafd29_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$1=*&d:int [line 187, column 60]\n n$2=_fun_std::__infer_atomic_base___infer_atomic_base(n$0:std::__infer_atomic_integral*,n$1:int) [line 187, column 53]\n " shape="box"] +"__infer_atomic_integral#__infer_atomic_integral#std#{10860901722123512962|constexpr}.f85ea1dfc790b10c2617a4d4f5cafd29_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$3=*&d:int [line 187, column 60]\n n$4=_fun_std::__infer_atomic_base___infer_atomic_base(n$2:std::__infer_atomic_integral*,n$3:int) [line 187, column 53]\n " shape="box"] "__infer_atomic_integral#__infer_atomic_integral#std#{10860901722123512962|constexpr}.f85ea1dfc790b10c2617a4d4f5cafd29_3" -> "__infer_atomic_integral#__infer_atomic_integral#std#{10860901722123512962|constexpr}.f85ea1dfc790b10c2617a4d4f5cafd29_2" ; @@ -489,7 +489,7 @@ digraph cfg { "__infer_inner_destructor_~shared_ptr#shared_ptr#std#(11841665744792554656).9277443e4e3f26d7cc1cd9ee0f2e3637_3" -> "__infer_inner_destructor_~shared_ptr#shared_ptr#std#(11841665744792554656).9277443e4e3f26d7cc1cd9ee0f2e3637_2" ; -"__infer_inner_destructor_~shared_ptr#shared_ptr#std#(11841665744792554656).9277443e4e3f26d7cc1cd9ee0f2e3637_4" [label="4: Call _fun_std::shared_ptr_reset \n n$3=*&this:int** [line 180, column 19]\n _=*n$3:int* [line 180, column 19]\n n$5=_fun_std::shared_ptr_reset(n$3:int**,null:int*) [line 180, column 19]\n " shape="box"] +"__infer_inner_destructor_~shared_ptr#shared_ptr#std#(11841665744792554656).9277443e4e3f26d7cc1cd9ee0f2e3637_4" [label="4: Call _fun_std::shared_ptr_reset \n n$5=*&this:int** [line 180, column 19]\n _=*n$5:int* [line 180, column 19]\n n$7=_fun_std::shared_ptr_reset(n$5:int**,null:int*) [line 180, column 19]\n " shape="box"] "__infer_inner_destructor_~shared_ptr#shared_ptr#std#(11841665744792554656).9277443e4e3f26d7cc1cd9ee0f2e3637_4" -> "__infer_inner_destructor_~shared_ptr#shared_ptr#std#(11841665744792554656).9277443e4e3f26d7cc1cd9ee0f2e3637_3" ; @@ -500,7 +500,7 @@ digraph cfg { "atomic#atomic#std#{18219637643674479567|constexpr}.a4a5467727100ba5642b3dca850c391b_2" [label="2: Exit std::atomic_atomic \n " color=yellow style=filled] -"atomic#atomic#std#{18219637643674479567|constexpr}.a4a5467727100ba5642b3dca850c391b_3" [label="3: Constructor Init \n n$0=*&this:std::atomic* [line 408, column 50]\n n$1=*&d:unsigned short [line 408, column 57]\n n$2=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$0:std::atomic*,n$1:unsigned short) [line 408, column 50]\n " shape="box"] +"atomic#atomic#std#{18219637643674479567|constexpr}.a4a5467727100ba5642b3dca850c391b_3" [label="3: Constructor Init \n n$2=*&this:std::atomic* [line 408, column 50]\n n$3=*&d:unsigned short [line 408, column 57]\n n$4=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$2:std::atomic*,n$3:unsigned short) [line 408, column 50]\n " shape="box"] "atomic#atomic#std#{18219637643674479567|constexpr}.a4a5467727100ba5642b3dca850c391b_3" -> "atomic#atomic#std#{18219637643674479567|constexpr}.a4a5467727100ba5642b3dca850c391b_2" ; @@ -511,7 +511,7 @@ digraph cfg { "atomic#atomic#std#{6824382166204133557|constexpr}.be44521bf079e2cb888037b21858e8e6_2" [label="2: Exit std::atomic_atomic \n " color=yellow style=filled] -"atomic#atomic#std#{6824382166204133557|constexpr}.be44521bf079e2cb888037b21858e8e6_3" [label="3: Constructor Init \n n$0=*&this:std::atomic* [line 472, column 50]\n n$1=*&d:char [line 472, column 57]\n n$2=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$0:std::atomic*,n$1:char) [line 472, column 50]\n " shape="box"] +"atomic#atomic#std#{6824382166204133557|constexpr}.be44521bf079e2cb888037b21858e8e6_3" [label="3: Constructor Init \n n$2=*&this:std::atomic* [line 472, column 50]\n n$3=*&d:char [line 472, column 57]\n n$4=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$2:std::atomic*,n$3:char) [line 472, column 50]\n " shape="box"] "atomic#atomic#std#{6824382166204133557|constexpr}.be44521bf079e2cb888037b21858e8e6_3" -> "atomic#atomic#std#{6824382166204133557|constexpr}.be44521bf079e2cb888037b21858e8e6_2" ; @@ -522,7 +522,7 @@ digraph cfg { "atomic#atomic#std#{12678320818314302393|constexpr}.5cd3aac69014d4e49ff04061ee1f1526_2" [label="2: Exit std::atomic_atomic \n " color=yellow style=filled] -"atomic#atomic#std#{12678320818314302393|constexpr}.5cd3aac69014d4e49ff04061ee1f1526_3" [label="3: Constructor Init \n n$0=*&this:std::atomic* [line 444, column 50]\n n$1=*&d:unsigned long [line 444, column 57]\n n$2=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$0:std::atomic*,n$1:unsigned long) [line 444, column 50]\n " shape="box"] +"atomic#atomic#std#{12678320818314302393|constexpr}.5cd3aac69014d4e49ff04061ee1f1526_3" [label="3: Constructor Init \n n$2=*&this:std::atomic* [line 444, column 50]\n n$3=*&d:unsigned long [line 444, column 57]\n n$4=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$2:std::atomic*,n$3:unsigned long) [line 444, column 50]\n " shape="box"] "atomic#atomic#std#{12678320818314302393|constexpr}.5cd3aac69014d4e49ff04061ee1f1526_3" -> "atomic#atomic#std#{12678320818314302393|constexpr}.5cd3aac69014d4e49ff04061ee1f1526_2" ; @@ -533,7 +533,7 @@ digraph cfg { "atomic#atomic#std#{17416607751267500557|constexpr}.44c96da43702ebbe4de34f6c26176ccb_2" [label="2: Exit std::atomic_atomic \n " color=yellow style=filled] -"atomic#atomic#std#{17416607751267500557|constexpr}.44c96da43702ebbe4de34f6c26176ccb_3" [label="3: Constructor Init \n n$0=*&this:std::atomic* [line 399, column 50]\n n$1=*&d:short [line 399, column 57]\n n$2=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$0:std::atomic*,n$1:short) [line 399, column 50]\n " shape="box"] +"atomic#atomic#std#{17416607751267500557|constexpr}.44c96da43702ebbe4de34f6c26176ccb_3" [label="3: Constructor Init \n n$2=*&this:std::atomic* [line 399, column 50]\n n$3=*&d:short [line 399, column 57]\n n$4=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$2:std::atomic*,n$3:short) [line 399, column 50]\n " shape="box"] "atomic#atomic#std#{17416607751267500557|constexpr}.44c96da43702ebbe4de34f6c26176ccb_3" -> "atomic#atomic#std#{17416607751267500557|constexpr}.44c96da43702ebbe4de34f6c26176ccb_2" ; @@ -544,7 +544,7 @@ digraph cfg { "atomic#atomic#std#{11783391945814293231|constexpr}.22775463bf145a69731b3305dffc4bb3_2" [label="2: Exit std::atomic_atomic \n " color=yellow style=filled] -"atomic#atomic#std#{11783391945814293231|constexpr}.22775463bf145a69731b3305dffc4bb3_3" [label="3: Constructor Init \n n$0=*&this:std::atomic* [line 435, column 50]\n n$1=*&d:long [line 435, column 57]\n n$2=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$0:std::atomic*,n$1:long) [line 435, column 50]\n " shape="box"] +"atomic#atomic#std#{11783391945814293231|constexpr}.22775463bf145a69731b3305dffc4bb3_3" [label="3: Constructor Init \n n$2=*&this:std::atomic* [line 435, column 50]\n n$3=*&d:long [line 435, column 57]\n n$4=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$2:std::atomic*,n$3:long) [line 435, column 50]\n " shape="box"] "atomic#atomic#std#{11783391945814293231|constexpr}.22775463bf145a69731b3305dffc4bb3_3" -> "atomic#atomic#std#{11783391945814293231|constexpr}.22775463bf145a69731b3305dffc4bb3_2" ; @@ -555,7 +555,7 @@ digraph cfg { "atomic#atomic#std#{10680712765411145881|constexpr}.b59b8272bcd92eac36f759f9bac15ee8_2" [label="2: Exit std::atomic_atomic \n " color=yellow style=filled] -"atomic#atomic#std#{10680712765411145881|constexpr}.b59b8272bcd92eac36f759f9bac15ee8_3" [label="3: Constructor Init \n n$0=*&this:std::atomic* [line 417, column 50]\n n$1=*&d:int [line 417, column 57]\n n$2=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$0:std::atomic*,n$1:int) [line 417, column 50]\n " shape="box"] +"atomic#atomic#std#{10680712765411145881|constexpr}.b59b8272bcd92eac36f759f9bac15ee8_3" [label="3: Constructor Init \n n$2=*&this:std::atomic* [line 417, column 50]\n n$3=*&d:int [line 417, column 57]\n n$4=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$2:std::atomic*,n$3:int) [line 417, column 50]\n " shape="box"] "atomic#atomic#std#{10680712765411145881|constexpr}.b59b8272bcd92eac36f759f9bac15ee8_3" -> "atomic#atomic#std#{10680712765411145881|constexpr}.b59b8272bcd92eac36f759f9bac15ee8_2" ; @@ -566,7 +566,7 @@ digraph cfg { "atomic#atomic#std#{9349229583258484711|constexpr}.9cbc6c1bc35116267ee41b36d8d25cb8_2" [label="2: Exit std::atomic_atomic \n " color=yellow style=filled] -"atomic#atomic#std#{9349229583258484711|constexpr}.9cbc6c1bc35116267ee41b36d8d25cb8_3" [label="3: Constructor Init \n n$0=*&this:std::atomic* [line 390, column 50]\n n$1=*&d:unsigned char [line 390, column 57]\n n$2=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$0:std::atomic*,n$1:unsigned char) [line 390, column 50]\n " shape="box"] +"atomic#atomic#std#{9349229583258484711|constexpr}.9cbc6c1bc35116267ee41b36d8d25cb8_3" [label="3: Constructor Init \n n$2=*&this:std::atomic* [line 390, column 50]\n n$3=*&d:unsigned char [line 390, column 57]\n n$4=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$2:std::atomic*,n$3:unsigned char) [line 390, column 50]\n " shape="box"] "atomic#atomic#std#{9349229583258484711|constexpr}.9cbc6c1bc35116267ee41b36d8d25cb8_3" -> "atomic#atomic#std#{9349229583258484711|constexpr}.9cbc6c1bc35116267ee41b36d8d25cb8_2" ; @@ -577,7 +577,7 @@ digraph cfg { "atomic#atomic#std#{8082860668582714463|constexpr}.dd2e5ecabe54fdef20aa889bb6f6f2e6_2" [label="2: Exit std::atomic_atomic \n " color=yellow style=filled] -"atomic#atomic#std#{8082860668582714463|constexpr}.dd2e5ecabe54fdef20aa889bb6f6f2e6_3" [label="3: Constructor Init \n n$0=*&this:std::atomic* [line 481, column 50]\n n$1=*&d:char [line 481, column 57]\n n$2=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$0:std::atomic*,n$1:char) [line 481, column 50]\n " shape="box"] +"atomic#atomic#std#{8082860668582714463|constexpr}.dd2e5ecabe54fdef20aa889bb6f6f2e6_3" [label="3: Constructor Init \n n$2=*&this:std::atomic* [line 481, column 50]\n n$3=*&d:char [line 481, column 57]\n n$4=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$2:std::atomic*,n$3:char) [line 481, column 50]\n " shape="box"] "atomic#atomic#std#{8082860668582714463|constexpr}.dd2e5ecabe54fdef20aa889bb6f6f2e6_3" -> "atomic#atomic#std#{8082860668582714463|constexpr}.dd2e5ecabe54fdef20aa889bb6f6f2e6_2" ; @@ -588,7 +588,7 @@ digraph cfg { "atomic#atomic#std#{5346108577579494905|constexpr}.c15dd9aaf90a685e2a7f542bd251c605_2" [label="2: Exit std::atomic_atomic \n " color=yellow style=filled] -"atomic#atomic#std#{5346108577579494905|constexpr}.c15dd9aaf90a685e2a7f542bd251c605_3" [label="3: Constructor Init \n n$0=*&this:std::atomic* [line 381, column 50]\n n$1=*&d:signed char [line 381, column 57]\n n$2=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$0:std::atomic*,n$1:signed char) [line 381, column 50]\n " shape="box"] +"atomic#atomic#std#{5346108577579494905|constexpr}.c15dd9aaf90a685e2a7f542bd251c605_3" [label="3: Constructor Init \n n$2=*&this:std::atomic* [line 381, column 50]\n n$3=*&d:signed char [line 381, column 57]\n n$4=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$2:std::atomic*,n$3:signed char) [line 381, column 50]\n " shape="box"] "atomic#atomic#std#{5346108577579494905|constexpr}.c15dd9aaf90a685e2a7f542bd251c605_3" -> "atomic#atomic#std#{5346108577579494905|constexpr}.c15dd9aaf90a685e2a7f542bd251c605_2" ; @@ -599,7 +599,7 @@ digraph cfg { "atomic#atomic#std#{1569576068982126765|constexpr}.65635696899f54c5a6d6629c8a6ecb24_2" [label="2: Exit std::atomic_atomic \n " color=yellow style=filled] -"atomic#atomic#std#{1569576068982126765|constexpr}.65635696899f54c5a6d6629c8a6ecb24_3" [label="3: Constructor Init \n n$0=*&this:std::atomic* [line 372, column 50]\n n$1=*&d:char [line 372, column 57]\n n$2=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$0:std::atomic*,n$1:char) [line 372, column 50]\n " shape="box"] +"atomic#atomic#std#{1569576068982126765|constexpr}.65635696899f54c5a6d6629c8a6ecb24_3" [label="3: Constructor Init \n n$2=*&this:std::atomic* [line 372, column 50]\n n$3=*&d:char [line 372, column 57]\n n$4=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$2:std::atomic*,n$3:char) [line 372, column 50]\n " shape="box"] "atomic#atomic#std#{1569576068982126765|constexpr}.65635696899f54c5a6d6629c8a6ecb24_3" -> "atomic#atomic#std#{1569576068982126765|constexpr}.65635696899f54c5a6d6629c8a6ecb24_2" ; @@ -610,7 +610,7 @@ digraph cfg { "atomic#atomic#std#{2209937568484024999|constexpr}.6cdd85274a8b59daa2beabef472c513a_2" [label="2: Exit std::atomic_atomic \n " color=yellow style=filled] -"atomic#atomic#std#{2209937568484024999|constexpr}.6cdd85274a8b59daa2beabef472c513a_3" [label="3: Constructor Init \n n$0=*&this:std::atomic* [line 490, column 50]\n n$1=*&d:char [line 490, column 57]\n n$2=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$0:std::atomic*,n$1:char) [line 490, column 50]\n " shape="box"] +"atomic#atomic#std#{2209937568484024999|constexpr}.6cdd85274a8b59daa2beabef472c513a_3" [label="3: Constructor Init \n n$2=*&this:std::atomic* [line 490, column 50]\n n$3=*&d:char [line 490, column 57]\n n$4=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$2:std::atomic*,n$3:char) [line 490, column 50]\n " shape="box"] "atomic#atomic#std#{2209937568484024999|constexpr}.6cdd85274a8b59daa2beabef472c513a_3" -> "atomic#atomic#std#{2209937568484024999|constexpr}.6cdd85274a8b59daa2beabef472c513a_2" ; @@ -621,7 +621,7 @@ digraph cfg { "atomic#atomic#std#{10601848595505065591|constexpr}.a5e478d8ee519cb53e4dcde645e4dbe4_2" [label="2: Exit std::atomic_atomic \n " color=yellow style=filled] -"atomic#atomic#std#{10601848595505065591|constexpr}.a5e478d8ee519cb53e4dcde645e4dbe4_3" [label="3: Constructor Init \n n$0=*&this:std::atomic* [line 426, column 50]\n n$1=*&d:unsigned int [line 426, column 57]\n n$2=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$0:std::atomic*,n$1:unsigned int) [line 426, column 50]\n " shape="box"] +"atomic#atomic#std#{10601848595505065591|constexpr}.a5e478d8ee519cb53e4dcde645e4dbe4_3" [label="3: Constructor Init \n n$2=*&this:std::atomic* [line 426, column 50]\n n$3=*&d:unsigned int [line 426, column 57]\n n$4=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$2:std::atomic*,n$3:unsigned int) [line 426, column 50]\n " shape="box"] "atomic#atomic#std#{10601848595505065591|constexpr}.a5e478d8ee519cb53e4dcde645e4dbe4_3" -> "atomic#atomic#std#{10601848595505065591|constexpr}.a5e478d8ee519cb53e4dcde645e4dbe4_2" ; @@ -632,7 +632,7 @@ digraph cfg { "atomic#atomic#std#{8272996909294858201|constexpr}.4af18384f1b00a3d9942312d16de12f0_2" [label="2: Exit std::atomic_atomic \n " color=yellow style=filled] -"atomic#atomic#std#{8272996909294858201|constexpr}.4af18384f1b00a3d9942312d16de12f0_3" [label="3: Constructor Init \n n$0=*&this:std::atomic* [line 463, column 50]\n n$1=*&d:unsigned long long [line 463, column 57]\n n$2=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$0:std::atomic*,n$1:unsigned long long) [line 463, column 50]\n " shape="box"] +"atomic#atomic#std#{8272996909294858201|constexpr}.4af18384f1b00a3d9942312d16de12f0_3" [label="3: Constructor Init \n n$2=*&this:std::atomic* [line 463, column 50]\n n$3=*&d:unsigned long long [line 463, column 57]\n n$4=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$2:std::atomic*,n$3:unsigned long long) [line 463, column 50]\n " shape="box"] "atomic#atomic#std#{8272996909294858201|constexpr}.4af18384f1b00a3d9942312d16de12f0_3" -> "atomic#atomic#std#{8272996909294858201|constexpr}.4af18384f1b00a3d9942312d16de12f0_2" ; @@ -643,7 +643,7 @@ digraph cfg { "atomic#atomic#std#{13242178517795487559|constexpr}.b120a6c4bb0f1e110121c7888150bd59_2" [label="2: Exit std::atomic_atomic \n " color=yellow style=filled] -"atomic#atomic#std#{13242178517795487559|constexpr}.b120a6c4bb0f1e110121c7888150bd59_3" [label="3: Constructor Init \n n$0=*&this:std::atomic* [line 453, column 50]\n n$1=*&d:long long [line 453, column 57]\n n$2=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$0:std::atomic*,n$1:long long) [line 453, column 50]\n " shape="box"] +"atomic#atomic#std#{13242178517795487559|constexpr}.b120a6c4bb0f1e110121c7888150bd59_3" [label="3: Constructor Init \n n$2=*&this:std::atomic* [line 453, column 50]\n n$3=*&d:long long [line 453, column 57]\n n$4=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$2:std::atomic*,n$3:long long) [line 453, column 50]\n " shape="box"] "atomic#atomic#std#{13242178517795487559|constexpr}.b120a6c4bb0f1e110121c7888150bd59_3" -> "atomic#atomic#std#{13242178517795487559|constexpr}.b120a6c4bb0f1e110121c7888150bd59_2" ; @@ -654,7 +654,7 @@ digraph cfg { "atomic_flag#atomic_flag#std#{10931176997288531904|constexpr}.57d7555f5addc9691c180d812b1aad13_2" [label="2: Exit std::atomic_flag_atomic_flag \n " color=yellow style=filled] -"atomic_flag#atomic_flag#std#{10931176997288531904|constexpr}.57d7555f5addc9691c180d812b1aad13_3" [label="3: Constructor Init \n n$0=*&this:std::atomic_flag* [line 929, column 44]\n n$1=*&i:_Bool [line 929, column 46]\n *n$0.a:_Bool=n$1 [line 929, column 44]\n " shape="box"] +"atomic_flag#atomic_flag#std#{10931176997288531904|constexpr}.57d7555f5addc9691c180d812b1aad13_3" [label="3: Constructor Init \n n$2=*&this:std::atomic_flag* [line 929, column 44]\n n$3=*&i:_Bool [line 929, column 46]\n *n$2.a:_Bool=n$3 [line 929, column 44]\n " shape="box"] "atomic_flag#atomic_flag#std#{10931176997288531904|constexpr}.57d7555f5addc9691c180d812b1aad13_3" -> "atomic_flag#atomic_flag#std#{10931176997288531904|constexpr}.57d7555f5addc9691c180d812b1aad13_2" ; @@ -665,7 +665,7 @@ digraph cfg { "clear#atomic_flag#std#(3684357514402407574).b0b9e53b3e4cf6978b960d4491c0af6d_2" [label="2: Exit std::atomic_flag_clear \n " color=yellow style=filled] -"clear#atomic_flag#std#(3684357514402407574).b0b9e53b3e4cf6978b960d4491c0af6d_3" [label="3: BinaryOperatorStmt: Assign \n n$0=*&this:std::atomic_flag* [line 946, column 5]\n *n$0.a:_Bool=0 [line 946, column 5]\n " shape="box"] +"clear#atomic_flag#std#(3684357514402407574).b0b9e53b3e4cf6978b960d4491c0af6d_3" [label="3: BinaryOperatorStmt: Assign \n n$1=*&this:std::atomic_flag* [line 946, column 5]\n *n$1.a:_Bool=0 [line 946, column 5]\n " shape="box"] "clear#atomic_flag#std#(3684357514402407574).b0b9e53b3e4cf6978b960d4491c0af6d_3" -> "clear#atomic_flag#std#(3684357514402407574).b0b9e53b3e4cf6978b960d4491c0af6d_2" ; @@ -676,7 +676,7 @@ digraph cfg { "clear#atomic_flag#std#(4757429354090136896).a3ca4a9a64ba2fa439a627057e253cfc_2" [label="2: Exit std::atomic_flag_clear \n " color=yellow style=filled] -"clear#atomic_flag#std#(4757429354090136896).a3ca4a9a64ba2fa439a627057e253cfc_3" [label="3: BinaryOperatorStmt: Assign \n n$0=*&this:std::atomic_flag* [line 948, column 65]\n *n$0.a:_Bool=0 [line 948, column 65]\n " shape="box"] +"clear#atomic_flag#std#(4757429354090136896).a3ca4a9a64ba2fa439a627057e253cfc_3" [label="3: BinaryOperatorStmt: Assign \n n$1=*&this:std::atomic_flag* [line 948, column 65]\n *n$1.a:_Bool=0 [line 948, column 65]\n " shape="box"] "clear#atomic_flag#std#(4757429354090136896).a3ca4a9a64ba2fa439a627057e253cfc_3" -> "clear#atomic_flag#std#(4757429354090136896).a3ca4a9a64ba2fa439a627057e253cfc_2" ; @@ -687,7 +687,7 @@ digraph cfg { "model_set#shared_ptr#std#(4823396094259928824).b93622435d16d4672bfaf2944380f1be_2" [label="2: Exit std::shared_ptr_model_set \n " color=yellow style=filled] -"model_set#shared_ptr#std#(4823396094259928824).b93622435d16d4672bfaf2944380f1be_3" [label="3: BinaryOperatorStmt: Assign \n n$0=*&self:void const ** [line 67, column 6]\n n$1=*&value:void* [line 67, column 37]\n *n$0:void const *=n$1 [line 67, column 5]\n " shape="box"] +"model_set#shared_ptr#std#(4823396094259928824).b93622435d16d4672bfaf2944380f1be_3" [label="3: BinaryOperatorStmt: Assign \n n$1=*&self:void const ** [line 67, column 6]\n n$2=*&value:void* [line 67, column 37]\n *n$1:void const *=n$2 [line 67, column 5]\n " shape="box"] "model_set#shared_ptr#std#(4823396094259928824).b93622435d16d4672bfaf2944380f1be_3" -> "model_set#shared_ptr#std#(4823396094259928824).b93622435d16d4672bfaf2944380f1be_2" ; @@ -698,7 +698,7 @@ digraph cfg { "model_set#shared_ptr#std#(4842545188773067100).667f44fdf24815c87b171dd5a05fce4a_2" [label="2: Exit std::shared_ptr_model_set \n " color=yellow style=filled] -"model_set#shared_ptr#std#(4842545188773067100).667f44fdf24815c87b171dd5a05fce4a_3" [label="3: BinaryOperatorStmt: Assign \n n$0=*&self:void const ** [line 55, column 6]\n n$1=*&value:int [line 55, column 13]\n *n$0:void const *=n$1 [line 55, column 5]\n " shape="box"] +"model_set#shared_ptr#std#(4842545188773067100).667f44fdf24815c87b171dd5a05fce4a_3" [label="3: BinaryOperatorStmt: Assign \n n$1=*&self:void const ** [line 55, column 6]\n n$2=*&value:int [line 55, column 13]\n *n$1:void const *=n$2 [line 55, column 5]\n " shape="box"] "model_set#shared_ptr#std#(4842545188773067100).667f44fdf24815c87b171dd5a05fce4a_3" -> "model_set#shared_ptr#std#(4842545188773067100).667f44fdf24815c87b171dd5a05fce4a_2" ; @@ -709,7 +709,7 @@ digraph cfg { "reset#shared_ptr#std#(5124141554651620350).9719d311878ee7b168751a9cb4fd4371_2" [label="2: Exit std::shared_ptr_reset \n " color=yellow style=filled] -"reset#shared_ptr#std#(5124141554651620350).9719d311878ee7b168751a9cb4fd4371_3" [label="3: Call _fun_std::shared_ptr_model_set \n n$0=*&this:int** [line 238, column 15]\n n$1=*&p:int* [line 238, column 42]\n n$2=_fun_std::shared_ptr_model_set(n$0:void const **,n$1:void*) [line 238, column 5]\n " shape="box"] +"reset#shared_ptr#std#(5124141554651620350).9719d311878ee7b168751a9cb4fd4371_3" [label="3: Call _fun_std::shared_ptr_model_set \n n$2=*&this:int** [line 238, column 15]\n n$3=*&p:int* [line 238, column 42]\n n$4=_fun_std::shared_ptr_model_set(n$2:void const **,n$3:void*) [line 238, column 5]\n " shape="box"] "reset#shared_ptr#std#(5124141554651620350).9719d311878ee7b168751a9cb4fd4371_3" -> "reset#shared_ptr#std#(5124141554651620350).9719d311878ee7b168751a9cb4fd4371_2" ; @@ -720,11 +720,11 @@ digraph cfg { "shared_ptr#shared_ptr#std#{8741815665871862164|constexpr}.f88ab7f65e0cffeda975c68f431824d1_2" [label="2: Exit std::shared_ptr_shared_ptr \n " color=yellow style=filled] -"shared_ptr#shared_ptr#std#{8741815665871862164|constexpr}.f88ab7f65e0cffeda975c68f431824d1_3" [label="3: Call _fun_std::shared_ptr_model_set \n n$0=*&this:int** [line 99, column 15]\n n$1=_fun_std::shared_ptr_model_set(n$0:void const **,null:int) [line 99, column 5]\n " shape="box"] +"shared_ptr#shared_ptr#std#{8741815665871862164|constexpr}.f88ab7f65e0cffeda975c68f431824d1_3" [label="3: Call _fun_std::shared_ptr_model_set \n n$2=*&this:int** [line 99, column 15]\n n$3=_fun_std::shared_ptr_model_set(n$2:void const **,null:int) [line 99, column 5]\n " shape="box"] "shared_ptr#shared_ptr#std#{8741815665871862164|constexpr}.f88ab7f65e0cffeda975c68f431824d1_3" -> "shared_ptr#shared_ptr#std#{8741815665871862164|constexpr}.f88ab7f65e0cffeda975c68f431824d1_2" ; -"shared_ptr#shared_ptr#std#{8741815665871862164|constexpr}.f88ab7f65e0cffeda975c68f431824d1_4" [label="4: Constructor Init \n n$2=*&this:int** [line 99, column 42]\n n$4=_fun_std::std__shared_ptr_std__shared_ptr(n$2:int**) [line 98, column 13]\n n$3=*n$2:int* [line 98, column 13]\n " shape="box"] +"shared_ptr#shared_ptr#std#{8741815665871862164|constexpr}.f88ab7f65e0cffeda975c68f431824d1_4" [label="4: Constructor Init \n n$4=*&this:int** [line 99, column 42]\n n$6=_fun_std::std__shared_ptr_std__shared_ptr(n$4:int**) [line 98, column 13]\n n$5=*n$4:int* [line 98, column 13]\n " shape="box"] "shared_ptr#shared_ptr#std#{8741815665871862164|constexpr}.f88ab7f65e0cffeda975c68f431824d1_4" -> "shared_ptr#shared_ptr#std#{8741815665871862164|constexpr}.f88ab7f65e0cffeda975c68f431824d1_3" ; @@ -739,11 +739,11 @@ digraph cfg { "test_and_set#atomic_flag#std#(6342589292624928640).e1a95571862fb026e9cf3fed47e15f71_3" -> "test_and_set#atomic_flag#std#(6342589292624928640).e1a95571862fb026e9cf3fed47e15f71_2" ; -"test_and_set#atomic_flag#std#(6342589292624928640).e1a95571862fb026e9cf3fed47e15f71_4" [label="4: BinaryOperatorStmt: Assign \n n$1=*&this:std::atomic_flag* [line 936, column 5]\n *n$1.a:_Bool=1 [line 936, column 5]\n " shape="box"] +"test_and_set#atomic_flag#std#(6342589292624928640).e1a95571862fb026e9cf3fed47e15f71_4" [label="4: BinaryOperatorStmt: Assign \n n$2=*&this:std::atomic_flag* [line 936, column 5]\n *n$2.a:_Bool=1 [line 936, column 5]\n " shape="box"] "test_and_set#atomic_flag#std#(6342589292624928640).e1a95571862fb026e9cf3fed47e15f71_4" -> "test_and_set#atomic_flag#std#(6342589292624928640).e1a95571862fb026e9cf3fed47e15f71_3" ; -"test_and_set#atomic_flag#std#(6342589292624928640).e1a95571862fb026e9cf3fed47e15f71_5" [label="5: DeclStmt \n n$2=*&this:std::atomic_flag* [line 935, column 16]\n n$3=*n$2.a:_Bool [line 935, column 16]\n *&ret:_Bool=n$3 [line 935, column 5]\n " shape="box"] +"test_and_set#atomic_flag#std#(6342589292624928640).e1a95571862fb026e9cf3fed47e15f71_5" [label="5: DeclStmt \n n$3=*&this:std::atomic_flag* [line 935, column 16]\n n$4=*n$3.a:_Bool [line 935, column 16]\n *&ret:_Bool=n$4 [line 935, column 5]\n " shape="box"] "test_and_set#atomic_flag#std#(6342589292624928640).e1a95571862fb026e9cf3fed47e15f71_5" -> "test_and_set#atomic_flag#std#(6342589292624928640).e1a95571862fb026e9cf3fed47e15f71_4" ; @@ -758,11 +758,11 @@ digraph cfg { "test_and_set#atomic_flag#std#(6471561702066990866).1f32ee5584df8a2cd5807312ee98cdb7_3" -> "test_and_set#atomic_flag#std#(6471561702066990866).1f32ee5584df8a2cd5807312ee98cdb7_2" ; -"test_and_set#atomic_flag#std#(6471561702066990866).1f32ee5584df8a2cd5807312ee98cdb7_4" [label="4: BinaryOperatorStmt: Assign \n n$1=*&this:std::atomic_flag* [line 941, column 5]\n *n$1.a:_Bool=1 [line 941, column 5]\n " shape="box"] +"test_and_set#atomic_flag#std#(6471561702066990866).1f32ee5584df8a2cd5807312ee98cdb7_4" [label="4: BinaryOperatorStmt: Assign \n n$2=*&this:std::atomic_flag* [line 941, column 5]\n *n$2.a:_Bool=1 [line 941, column 5]\n " shape="box"] "test_and_set#atomic_flag#std#(6471561702066990866).1f32ee5584df8a2cd5807312ee98cdb7_4" -> "test_and_set#atomic_flag#std#(6471561702066990866).1f32ee5584df8a2cd5807312ee98cdb7_3" ; -"test_and_set#atomic_flag#std#(6471561702066990866).1f32ee5584df8a2cd5807312ee98cdb7_5" [label="5: DeclStmt \n n$2=*&this:std::atomic_flag* [line 940, column 16]\n n$3=*n$2.a:_Bool [line 940, column 16]\n *&ret:_Bool=n$3 [line 940, column 5]\n " shape="box"] +"test_and_set#atomic_flag#std#(6471561702066990866).1f32ee5584df8a2cd5807312ee98cdb7_5" [label="5: DeclStmt \n n$3=*&this:std::atomic_flag* [line 940, column 16]\n n$4=*n$3.a:_Bool [line 940, column 16]\n *&ret:_Bool=n$4 [line 940, column 5]\n " shape="box"] "test_and_set#atomic_flag#std#(6471561702066990866).1f32ee5584df8a2cd5807312ee98cdb7_5" -> "test_and_set#atomic_flag#std#(6471561702066990866).1f32ee5584df8a2cd5807312ee98cdb7_4" ; diff --git a/infer/tests/build_systems/codetoanalyze/clang_translation/src/main_symlink.cpp.dot b/infer/tests/build_systems/codetoanalyze/clang_translation/src/main_symlink.cpp.dot index 2263c6e12..e01b818e1 100644 --- a/infer/tests/build_systems/codetoanalyze/clang_translation/src/main_symlink.cpp.dot +++ b/infer/tests/build_systems/codetoanalyze/clang_translation/src/main_symlink.cpp.dot @@ -7,7 +7,7 @@ digraph cfg { "atomic_flag_clear#std#17550914922100779771.d1fb16da8327178ccc23af6843a8ea0b_2" [label="2: Exit std::atomic_flag_clear \n " color=yellow style=filled] -"atomic_flag_clear#std#17550914922100779771.d1fb16da8327178ccc23af6843a8ea0b_3" [label="3: Call _fun_std::atomic_flag_clear \n n$0=*&f:std::atomic_flag* [line 967, column 51]\n _=*n$0:std::atomic_flag [line 967, column 51]\n n$2=_fun_std::atomic_flag_clear(n$0:std::atomic_flag*,5:int) [line 967, column 51]\n " shape="box"] +"atomic_flag_clear#std#17550914922100779771.d1fb16da8327178ccc23af6843a8ea0b_3" [label="3: Call _fun_std::atomic_flag_clear \n n$1=*&f:std::atomic_flag* [line 967, column 51]\n _=*n$1:std::atomic_flag [line 967, column 51]\n n$3=_fun_std::atomic_flag_clear(n$1:std::atomic_flag*,5:int) [line 967, column 51]\n " shape="box"] "atomic_flag_clear#std#17550914922100779771.d1fb16da8327178ccc23af6843a8ea0b_3" -> "atomic_flag_clear#std#17550914922100779771.d1fb16da8327178ccc23af6843a8ea0b_2" ; @@ -18,7 +18,7 @@ digraph cfg { "atomic_flag_clear#std#8417018393663174481.295be794cdae89c82fc079ad828db14c_2" [label="2: Exit std::atomic_flag_clear \n " color=yellow style=filled] -"atomic_flag_clear#std#8417018393663174481.295be794cdae89c82fc079ad828db14c_3" [label="3: Call _fun_std::atomic_flag_clear \n n$0=*&f:std::atomic_flag* [line 966, column 60]\n _=*n$0:std::atomic_flag [line 966, column 60]\n n$2=_fun_std::atomic_flag_clear(n$0:std::atomic_flag*,5:int) [line 966, column 60]\n " shape="box"] +"atomic_flag_clear#std#8417018393663174481.295be794cdae89c82fc079ad828db14c_3" [label="3: Call _fun_std::atomic_flag_clear \n n$1=*&f:std::atomic_flag* [line 966, column 60]\n _=*n$1:std::atomic_flag [line 966, column 60]\n n$3=_fun_std::atomic_flag_clear(n$1:std::atomic_flag*,5:int) [line 966, column 60]\n " shape="box"] "atomic_flag_clear#std#8417018393663174481.295be794cdae89c82fc079ad828db14c_3" -> "atomic_flag_clear#std#8417018393663174481.295be794cdae89c82fc079ad828db14c_2" ; @@ -29,7 +29,7 @@ digraph cfg { "atomic_flag_clear_explicit#std#13508243229460098920.9096df62446733c75716182054ac50b0_2" [label="2: Exit std::atomic_flag_clear_explicit \n " color=yellow style=filled] -"atomic_flag_clear_explicit#std#13508243229460098920.9096df62446733c75716182054ac50b0_3" [label="3: Call _fun_std::atomic_flag_clear \n n$0=*&f:std::atomic_flag* [line 973, column 3]\n _=*n$0:std::atomic_flag [line 973, column 3]\n n$2=*&mo:int [line 973, column 12]\n n$3=_fun_std::atomic_flag_clear(n$0:std::atomic_flag*,n$2:int) [line 973, column 3]\n " shape="box"] +"atomic_flag_clear_explicit#std#13508243229460098920.9096df62446733c75716182054ac50b0_3" [label="3: Call _fun_std::atomic_flag_clear \n n$1=*&f:std::atomic_flag* [line 973, column 3]\n _=*n$1:std::atomic_flag [line 973, column 3]\n n$3=*&mo:int [line 973, column 12]\n n$4=_fun_std::atomic_flag_clear(n$1:std::atomic_flag*,n$3:int) [line 973, column 3]\n " shape="box"] "atomic_flag_clear_explicit#std#13508243229460098920.9096df62446733c75716182054ac50b0_3" -> "atomic_flag_clear_explicit#std#13508243229460098920.9096df62446733c75716182054ac50b0_2" ; @@ -40,7 +40,7 @@ digraph cfg { "atomic_flag_clear_explicit#std#17643441563504553916.f821a0b7a94ce430273c34c2a0bc2777_2" [label="2: Exit std::atomic_flag_clear_explicit \n " color=yellow style=filled] -"atomic_flag_clear_explicit#std#17643441563504553916.f821a0b7a94ce430273c34c2a0bc2777_3" [label="3: Call _fun_std::atomic_flag_clear \n n$0=*&f:std::atomic_flag* [line 970, column 3]\n _=*n$0:std::atomic_flag [line 970, column 3]\n n$2=*&mo:int [line 970, column 12]\n n$3=_fun_std::atomic_flag_clear(n$0:std::atomic_flag*,n$2:int) [line 970, column 3]\n " shape="box"] +"atomic_flag_clear_explicit#std#17643441563504553916.f821a0b7a94ce430273c34c2a0bc2777_3" [label="3: Call _fun_std::atomic_flag_clear \n n$1=*&f:std::atomic_flag* [line 970, column 3]\n _=*n$1:std::atomic_flag [line 970, column 3]\n n$3=*&mo:int [line 970, column 12]\n n$4=_fun_std::atomic_flag_clear(n$1:std::atomic_flag*,n$3:int) [line 970, column 3]\n " shape="box"] "atomic_flag_clear_explicit#std#17643441563504553916.f821a0b7a94ce430273c34c2a0bc2777_3" -> "atomic_flag_clear_explicit#std#17643441563504553916.f821a0b7a94ce430273c34c2a0bc2777_2" ; @@ -124,23 +124,23 @@ digraph cfg { "main.fad58de7366495db4650cfefac2fcd61_3" -> "main.fad58de7366495db4650cfefac2fcd61_2" ; -"main.fad58de7366495db4650cfefac2fcd61_4" [label="4: DeclStmt \n n$4=_fun_std::basic_string,std::allocator>_basic_string(&s:std::basic_string,std::allocator>*,\"1234\":char const *) [line 22, column 15]\n " shape="box"] +"main.fad58de7366495db4650cfefac2fcd61_4" [label="4: DeclStmt \n n$5=_fun_std::basic_string,std::allocator>_basic_string(&s:std::basic_string,std::allocator>*,\"1234\":char const *) [line 22, column 15]\n " shape="box"] "main.fad58de7366495db4650cfefac2fcd61_4" -> "main.fad58de7366495db4650cfefac2fcd61_3" ; -"main.fad58de7366495db4650cfefac2fcd61_5" [label="5: DeclStmt \n n$6=_fun_std::shared_ptr_shared_ptr(&x:int**) [line 21, column 24]\n n$5=*&x:int* [line 21, column 24]\n " shape="box"] +"main.fad58de7366495db4650cfefac2fcd61_5" [label="5: DeclStmt \n n$7=_fun_std::shared_ptr_shared_ptr(&x:int**) [line 21, column 24]\n n$6=*&x:int* [line 21, column 24]\n " shape="box"] "main.fad58de7366495db4650cfefac2fcd61_5" -> "main.fad58de7366495db4650cfefac2fcd61_4" ; -"main.fad58de7366495db4650cfefac2fcd61_6" [label="6: Call _fun_external::fun \n n$7=_fun_external::fun(1:int) [line 20, column 3]\n " shape="box"] +"main.fad58de7366495db4650cfefac2fcd61_6" [label="6: Call _fun_external::fun \n n$8=_fun_external::fun(1:int) [line 20, column 3]\n " shape="box"] "main.fad58de7366495db4650cfefac2fcd61_6" -> "main.fad58de7366495db4650cfefac2fcd61_5" ; -"main.fad58de7366495db4650cfefac2fcd61_7" [label="7: Call _fun_internal_exclude::fun \n n$8=_fun_internal_exclude::fun(1:int) [line 19, column 3]\n " shape="box"] +"main.fad58de7366495db4650cfefac2fcd61_7" [label="7: Call _fun_internal_exclude::fun \n n$9=_fun_internal_exclude::fun(1:int) [line 19, column 3]\n " shape="box"] "main.fad58de7366495db4650cfefac2fcd61_7" -> "main.fad58de7366495db4650cfefac2fcd61_6" ; -"main.fad58de7366495db4650cfefac2fcd61_8" [label="8: Call _fun_internal::fun \n n$9=_fun_internal::fun(1:int) [line 18, column 3]\n " shape="box"] +"main.fad58de7366495db4650cfefac2fcd61_8" [label="8: Call _fun_internal::fun \n n$10=_fun_internal::fun(1:int) [line 18, column 3]\n " shape="box"] "main.fad58de7366495db4650cfefac2fcd61_8" -> "main.fad58de7366495db4650cfefac2fcd61_7" ; @@ -155,7 +155,7 @@ digraph cfg { "unused_deref_in_header#15260603227785084028.ec2f844a26989dc35e9856ba0d7a485b_3" -> "unused_deref_in_header#15260603227785084028.ec2f844a26989dc35e9856ba0d7a485b_2" ; -"unused_deref_in_header#15260603227785084028.ec2f844a26989dc35e9856ba0d7a485b_4" [label="4: DeclStmt \n n$2=_fun_internal::used_in_main_header(0:int) [line 17, column 11]\n *&x:int=n$2 [line 17, column 3]\n " shape="box"] +"unused_deref_in_header#15260603227785084028.ec2f844a26989dc35e9856ba0d7a485b_4" [label="4: DeclStmt \n n$3=_fun_internal::used_in_main_header(0:int) [line 17, column 11]\n *&x:int=n$3 [line 17, column 3]\n " shape="box"] "unused_deref_in_header#15260603227785084028.ec2f844a26989dc35e9856ba0d7a485b_4" -> "unused_deref_in_header#15260603227785084028.ec2f844a26989dc35e9856ba0d7a485b_3" ; @@ -177,7 +177,7 @@ digraph cfg { "__infer_atomic_base#__infer_atomic_base#std#{13775723528237147754|constexpr}.1a6095f0713eed47cffb337d5bd470ba_2" [label="2: Exit std::__infer_atomic_base___infer_atomic_base \n " color=yellow style=filled] -"__infer_atomic_base#__infer_atomic_base#std#{13775723528237147754|constexpr}.1a6095f0713eed47cffb337d5bd470ba_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$1=*&desired:long [line 167, column 61]\n *n$0._wrapped_value:long=n$1 [line 167, column 46]\n " shape="box"] +"__infer_atomic_base#__infer_atomic_base#std#{13775723528237147754|constexpr}.1a6095f0713eed47cffb337d5bd470ba_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$3=*&desired:long [line 167, column 61]\n *n$2._wrapped_value:long=n$3 [line 167, column 46]\n " shape="box"] "__infer_atomic_base#__infer_atomic_base#std#{13775723528237147754|constexpr}.1a6095f0713eed47cffb337d5bd470ba_3" -> "__infer_atomic_base#__infer_atomic_base#std#{13775723528237147754|constexpr}.1a6095f0713eed47cffb337d5bd470ba_2" ; @@ -188,7 +188,7 @@ digraph cfg { "__infer_atomic_base#__infer_atomic_base#std#{7791849041241637472|constexpr}.44bc6742f53642a5ddb7e71e80b34b68_2" [label="2: Exit std::__infer_atomic_base___infer_atomic_base \n " color=yellow style=filled] -"__infer_atomic_base#__infer_atomic_base#std#{7791849041241637472|constexpr}.44bc6742f53642a5ddb7e71e80b34b68_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$1=*&desired:unsigned long [line 167, column 61]\n *n$0._wrapped_value:unsigned long=n$1 [line 167, column 46]\n " shape="box"] +"__infer_atomic_base#__infer_atomic_base#std#{7791849041241637472|constexpr}.44bc6742f53642a5ddb7e71e80b34b68_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$3=*&desired:unsigned long [line 167, column 61]\n *n$2._wrapped_value:unsigned long=n$3 [line 167, column 46]\n " shape="box"] "__infer_atomic_base#__infer_atomic_base#std#{7791849041241637472|constexpr}.44bc6742f53642a5ddb7e71e80b34b68_3" -> "__infer_atomic_base#__infer_atomic_base#std#{7791849041241637472|constexpr}.44bc6742f53642a5ddb7e71e80b34b68_2" ; @@ -199,7 +199,7 @@ digraph cfg { "__infer_atomic_base#__infer_atomic_base#std#{11319810518798892734|constexpr}.74d2c2ce173fcccf9cf8bc068d35c1fb_2" [label="2: Exit std::__infer_atomic_base___infer_atomic_base \n " color=yellow style=filled] -"__infer_atomic_base#__infer_atomic_base#std#{11319810518798892734|constexpr}.74d2c2ce173fcccf9cf8bc068d35c1fb_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$1=*&desired:char [line 167, column 61]\n *n$0._wrapped_value:char=n$1 [line 167, column 46]\n " shape="box"] +"__infer_atomic_base#__infer_atomic_base#std#{11319810518798892734|constexpr}.74d2c2ce173fcccf9cf8bc068d35c1fb_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$3=*&desired:char [line 167, column 61]\n *n$2._wrapped_value:char=n$3 [line 167, column 46]\n " shape="box"] "__infer_atomic_base#__infer_atomic_base#std#{11319810518798892734|constexpr}.74d2c2ce173fcccf9cf8bc068d35c1fb_3" -> "__infer_atomic_base#__infer_atomic_base#std#{11319810518798892734|constexpr}.74d2c2ce173fcccf9cf8bc068d35c1fb_2" ; @@ -210,7 +210,7 @@ digraph cfg { "__infer_atomic_base#__infer_atomic_base#std#{18234009817680553112|constexpr}.7a1f00575eae64e359678097638ddc12_2" [label="2: Exit std::__infer_atomic_base___infer_atomic_base \n " color=yellow style=filled] -"__infer_atomic_base#__infer_atomic_base#std#{18234009817680553112|constexpr}.7a1f00575eae64e359678097638ddc12_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$1=*&desired:short [line 167, column 61]\n *n$0._wrapped_value:short=n$1 [line 167, column 46]\n " shape="box"] +"__infer_atomic_base#__infer_atomic_base#std#{18234009817680553112|constexpr}.7a1f00575eae64e359678097638ddc12_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$3=*&desired:short [line 167, column 61]\n *n$2._wrapped_value:short=n$3 [line 167, column 46]\n " shape="box"] "__infer_atomic_base#__infer_atomic_base#std#{18234009817680553112|constexpr}.7a1f00575eae64e359678097638ddc12_3" -> "__infer_atomic_base#__infer_atomic_base#std#{18234009817680553112|constexpr}.7a1f00575eae64e359678097638ddc12_2" ; @@ -221,7 +221,7 @@ digraph cfg { "__infer_atomic_base#__infer_atomic_base#std#{16073524453317401930|constexpr}.d3f224e2d1fe7b0ad7e4e07024b91c5d_2" [label="2: Exit std::__infer_atomic_base___infer_atomic_base \n " color=yellow style=filled] -"__infer_atomic_base#__infer_atomic_base#std#{16073524453317401930|constexpr}.d3f224e2d1fe7b0ad7e4e07024b91c5d_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$1=*&desired:unsigned short [line 167, column 61]\n *n$0._wrapped_value:unsigned short=n$1 [line 167, column 46]\n " shape="box"] +"__infer_atomic_base#__infer_atomic_base#std#{16073524453317401930|constexpr}.d3f224e2d1fe7b0ad7e4e07024b91c5d_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$3=*&desired:unsigned short [line 167, column 61]\n *n$2._wrapped_value:unsigned short=n$3 [line 167, column 46]\n " shape="box"] "__infer_atomic_base#__infer_atomic_base#std#{16073524453317401930|constexpr}.d3f224e2d1fe7b0ad7e4e07024b91c5d_3" -> "__infer_atomic_base#__infer_atomic_base#std#{16073524453317401930|constexpr}.d3f224e2d1fe7b0ad7e4e07024b91c5d_2" ; @@ -232,7 +232,7 @@ digraph cfg { "__infer_atomic_base#__infer_atomic_base#std#{9938535674916741600|constexpr}.b3505ad067544b42cd3d24960993f2d2_2" [label="2: Exit std::__infer_atomic_base___infer_atomic_base \n " color=yellow style=filled] -"__infer_atomic_base#__infer_atomic_base#std#{9938535674916741600|constexpr}.b3505ad067544b42cd3d24960993f2d2_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$1=*&desired:char [line 167, column 61]\n *n$0._wrapped_value:char=n$1 [line 167, column 46]\n " shape="box"] +"__infer_atomic_base#__infer_atomic_base#std#{9938535674916741600|constexpr}.b3505ad067544b42cd3d24960993f2d2_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$3=*&desired:char [line 167, column 61]\n *n$2._wrapped_value:char=n$3 [line 167, column 46]\n " shape="box"] "__infer_atomic_base#__infer_atomic_base#std#{9938535674916741600|constexpr}.b3505ad067544b42cd3d24960993f2d2_3" -> "__infer_atomic_base#__infer_atomic_base#std#{9938535674916741600|constexpr}.b3505ad067544b42cd3d24960993f2d2_2" ; @@ -243,7 +243,7 @@ digraph cfg { "__infer_atomic_base#__infer_atomic_base#std#{8782788136688727146|constexpr}.3f103dad2faa43c9afacd724927e0000_2" [label="2: Exit std::__infer_atomic_base___infer_atomic_base \n " color=yellow style=filled] -"__infer_atomic_base#__infer_atomic_base#std#{8782788136688727146|constexpr}.3f103dad2faa43c9afacd724927e0000_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$1=*&desired:long long [line 167, column 61]\n *n$0._wrapped_value:long long=n$1 [line 167, column 46]\n " shape="box"] +"__infer_atomic_base#__infer_atomic_base#std#{8782788136688727146|constexpr}.3f103dad2faa43c9afacd724927e0000_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$3=*&desired:long long [line 167, column 61]\n *n$2._wrapped_value:long long=n$3 [line 167, column 46]\n " shape="box"] "__infer_atomic_base#__infer_atomic_base#std#{8782788136688727146|constexpr}.3f103dad2faa43c9afacd724927e0000_3" -> "__infer_atomic_base#__infer_atomic_base#std#{8782788136688727146|constexpr}.3f103dad2faa43c9afacd724927e0000_2" ; @@ -254,7 +254,7 @@ digraph cfg { "__infer_atomic_base#__infer_atomic_base#std#{7365870495610955464|constexpr}.7e9c5ad29861b93350b8ee38f6d0df14_2" [label="2: Exit std::__infer_atomic_base___infer_atomic_base \n " color=yellow style=filled] -"__infer_atomic_base#__infer_atomic_base#std#{7365870495610955464|constexpr}.7e9c5ad29861b93350b8ee38f6d0df14_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$1=*&desired:signed char [line 167, column 61]\n *n$0._wrapped_value:signed char=n$1 [line 167, column 46]\n " shape="box"] +"__infer_atomic_base#__infer_atomic_base#std#{7365870495610955464|constexpr}.7e9c5ad29861b93350b8ee38f6d0df14_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$3=*&desired:signed char [line 167, column 61]\n *n$2._wrapped_value:signed char=n$3 [line 167, column 46]\n " shape="box"] "__infer_atomic_base#__infer_atomic_base#std#{7365870495610955464|constexpr}.7e9c5ad29861b93350b8ee38f6d0df14_3" -> "__infer_atomic_base#__infer_atomic_base#std#{7365870495610955464|constexpr}.7e9c5ad29861b93350b8ee38f6d0df14_2" ; @@ -265,7 +265,7 @@ digraph cfg { "__infer_atomic_base#__infer_atomic_base#std#{14341025698771447512|constexpr}.a4ea01d510cd8d527bb600a45ccd1b98_2" [label="2: Exit std::__infer_atomic_base___infer_atomic_base \n " color=yellow style=filled] -"__infer_atomic_base#__infer_atomic_base#std#{14341025698771447512|constexpr}.a4ea01d510cd8d527bb600a45ccd1b98_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$1=*&desired:char [line 167, column 61]\n *n$0._wrapped_value:char=n$1 [line 167, column 46]\n " shape="box"] +"__infer_atomic_base#__infer_atomic_base#std#{14341025698771447512|constexpr}.a4ea01d510cd8d527bb600a45ccd1b98_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$3=*&desired:char [line 167, column 61]\n *n$2._wrapped_value:char=n$3 [line 167, column 46]\n " shape="box"] "__infer_atomic_base#__infer_atomic_base#std#{14341025698771447512|constexpr}.a4ea01d510cd8d527bb600a45ccd1b98_3" -> "__infer_atomic_base#__infer_atomic_base#std#{14341025698771447512|constexpr}.a4ea01d510cd8d527bb600a45ccd1b98_2" ; @@ -276,7 +276,7 @@ digraph cfg { "__infer_atomic_base#__infer_atomic_base#std#{7573412317894445992|constexpr}.ff0e487372c722b860a1cd876aa6c750_2" [label="2: Exit std::__infer_atomic_base___infer_atomic_base \n " color=yellow style=filled] -"__infer_atomic_base#__infer_atomic_base#std#{7573412317894445992|constexpr}.ff0e487372c722b860a1cd876aa6c750_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$1=*&desired:unsigned long long [line 167, column 61]\n *n$0._wrapped_value:unsigned long long=n$1 [line 167, column 46]\n " shape="box"] +"__infer_atomic_base#__infer_atomic_base#std#{7573412317894445992|constexpr}.ff0e487372c722b860a1cd876aa6c750_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$3=*&desired:unsigned long long [line 167, column 61]\n *n$2._wrapped_value:unsigned long long=n$3 [line 167, column 46]\n " shape="box"] "__infer_atomic_base#__infer_atomic_base#std#{7573412317894445992|constexpr}.ff0e487372c722b860a1cd876aa6c750_3" -> "__infer_atomic_base#__infer_atomic_base#std#{7573412317894445992|constexpr}.ff0e487372c722b860a1cd876aa6c750_2" ; @@ -287,7 +287,7 @@ digraph cfg { "__infer_atomic_base#__infer_atomic_base#std#{10995699960611463466|constexpr}.b47fc7b50b63c00d13a29883101bbf91_2" [label="2: Exit std::__infer_atomic_base___infer_atomic_base \n " color=yellow style=filled] -"__infer_atomic_base#__infer_atomic_base#std#{10995699960611463466|constexpr}.b47fc7b50b63c00d13a29883101bbf91_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$1=*&desired:unsigned char [line 167, column 61]\n *n$0._wrapped_value:unsigned char=n$1 [line 167, column 46]\n " shape="box"] +"__infer_atomic_base#__infer_atomic_base#std#{10995699960611463466|constexpr}.b47fc7b50b63c00d13a29883101bbf91_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$3=*&desired:unsigned char [line 167, column 61]\n *n$2._wrapped_value:unsigned char=n$3 [line 167, column 46]\n " shape="box"] "__infer_atomic_base#__infer_atomic_base#std#{10995699960611463466|constexpr}.b47fc7b50b63c00d13a29883101bbf91_3" -> "__infer_atomic_base#__infer_atomic_base#std#{10995699960611463466|constexpr}.b47fc7b50b63c00d13a29883101bbf91_2" ; @@ -298,7 +298,7 @@ digraph cfg { "__infer_atomic_base#__infer_atomic_base#std#{16209782391084856520|constexpr}.c8b589ca28905ccc5291f33d793e0ce1_2" [label="2: Exit std::__infer_atomic_base___infer_atomic_base \n " color=yellow style=filled] -"__infer_atomic_base#__infer_atomic_base#std#{16209782391084856520|constexpr}.c8b589ca28905ccc5291f33d793e0ce1_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$1=*&desired:int [line 167, column 61]\n *n$0._wrapped_value:int=n$1 [line 167, column 46]\n " shape="box"] +"__infer_atomic_base#__infer_atomic_base#std#{16209782391084856520|constexpr}.c8b589ca28905ccc5291f33d793e0ce1_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$3=*&desired:int [line 167, column 61]\n *n$2._wrapped_value:int=n$3 [line 167, column 46]\n " shape="box"] "__infer_atomic_base#__infer_atomic_base#std#{16209782391084856520|constexpr}.c8b589ca28905ccc5291f33d793e0ce1_3" -> "__infer_atomic_base#__infer_atomic_base#std#{16209782391084856520|constexpr}.c8b589ca28905ccc5291f33d793e0ce1_2" ; @@ -309,7 +309,7 @@ digraph cfg { "__infer_atomic_base#__infer_atomic_base#std#{10976553734406539054|constexpr}.c08c69d90dff28bd294937b5d0343af8_2" [label="2: Exit std::__infer_atomic_base___infer_atomic_base \n " color=yellow style=filled] -"__infer_atomic_base#__infer_atomic_base#std#{10976553734406539054|constexpr}.c08c69d90dff28bd294937b5d0343af8_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$1=*&desired:unsigned int [line 167, column 61]\n *n$0._wrapped_value:unsigned int=n$1 [line 167, column 46]\n " shape="box"] +"__infer_atomic_base#__infer_atomic_base#std#{10976553734406539054|constexpr}.c08c69d90dff28bd294937b5d0343af8_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$3=*&desired:unsigned int [line 167, column 61]\n *n$2._wrapped_value:unsigned int=n$3 [line 167, column 46]\n " shape="box"] "__infer_atomic_base#__infer_atomic_base#std#{10976553734406539054|constexpr}.c08c69d90dff28bd294937b5d0343af8_3" -> "__infer_atomic_base#__infer_atomic_base#std#{10976553734406539054|constexpr}.c08c69d90dff28bd294937b5d0343af8_2" ; @@ -320,7 +320,7 @@ digraph cfg { "__infer_atomic_base#__infer_atomic_base#std#{8630701096989804934|constexpr}.85076a22c8a2e53a3f2fc540f31359c7_2" [label="2: Exit std::__infer_atomic_base___infer_atomic_base \n " color=yellow style=filled] -"__infer_atomic_base#__infer_atomic_base#std#{8630701096989804934|constexpr}.85076a22c8a2e53a3f2fc540f31359c7_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$1=*&desired:char [line 167, column 61]\n *n$0._wrapped_value:char=n$1 [line 167, column 46]\n " shape="box"] +"__infer_atomic_base#__infer_atomic_base#std#{8630701096989804934|constexpr}.85076a22c8a2e53a3f2fc540f31359c7_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_base* [line 167, column 46]\n n$3=*&desired:char [line 167, column 61]\n *n$2._wrapped_value:char=n$3 [line 167, column 46]\n " shape="box"] "__infer_atomic_base#__infer_atomic_base#std#{8630701096989804934|constexpr}.85076a22c8a2e53a3f2fc540f31359c7_3" -> "__infer_atomic_base#__infer_atomic_base#std#{8630701096989804934|constexpr}.85076a22c8a2e53a3f2fc540f31359c7_2" ; @@ -331,7 +331,7 @@ digraph cfg { "__infer_atomic_integral#__infer_atomic_integral#std#{2317220937806306842|constexpr}.d393fae7aac1307d35b11f21691789e9_2" [label="2: Exit std::__infer_atomic_integral___infer_atomic_integral \n " color=yellow style=filled] -"__infer_atomic_integral#__infer_atomic_integral#std#{2317220937806306842|constexpr}.d393fae7aac1307d35b11f21691789e9_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$1=*&d:char [line 187, column 60]\n n$2=_fun_std::__infer_atomic_base___infer_atomic_base(n$0:std::__infer_atomic_integral*,n$1:char) [line 187, column 53]\n " shape="box"] +"__infer_atomic_integral#__infer_atomic_integral#std#{2317220937806306842|constexpr}.d393fae7aac1307d35b11f21691789e9_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$3=*&d:char [line 187, column 60]\n n$4=_fun_std::__infer_atomic_base___infer_atomic_base(n$2:std::__infer_atomic_integral*,n$3:char) [line 187, column 53]\n " shape="box"] "__infer_atomic_integral#__infer_atomic_integral#std#{2317220937806306842|constexpr}.d393fae7aac1307d35b11f21691789e9_3" -> "__infer_atomic_integral#__infer_atomic_integral#std#{2317220937806306842|constexpr}.d393fae7aac1307d35b11f21691789e9_2" ; @@ -342,7 +342,7 @@ digraph cfg { "__infer_atomic_integral#__infer_atomic_integral#std#{4789001703898296148|constexpr}.e708f3dd8e07f928f0136c58ce71aa77_2" [label="2: Exit std::__infer_atomic_integral___infer_atomic_integral \n " color=yellow style=filled] -"__infer_atomic_integral#__infer_atomic_integral#std#{4789001703898296148|constexpr}.e708f3dd8e07f928f0136c58ce71aa77_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$1=*&d:unsigned short [line 187, column 60]\n n$2=_fun_std::__infer_atomic_base___infer_atomic_base(n$0:std::__infer_atomic_integral*,n$1:unsigned short) [line 187, column 53]\n " shape="box"] +"__infer_atomic_integral#__infer_atomic_integral#std#{4789001703898296148|constexpr}.e708f3dd8e07f928f0136c58ce71aa77_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$3=*&d:unsigned short [line 187, column 60]\n n$4=_fun_std::__infer_atomic_base___infer_atomic_base(n$2:std::__infer_atomic_integral*,n$3:unsigned short) [line 187, column 53]\n " shape="box"] "__infer_atomic_integral#__infer_atomic_integral#std#{4789001703898296148|constexpr}.e708f3dd8e07f928f0136c58ce71aa77_3" -> "__infer_atomic_integral#__infer_atomic_integral#std#{4789001703898296148|constexpr}.e708f3dd8e07f928f0136c58ce71aa77_2" ; @@ -353,7 +353,7 @@ digraph cfg { "__infer_atomic_integral#__infer_atomic_integral#std#{14753850656660515810|conste.316dccad2dcde8efca58b19fda679f20_2" [label="2: Exit std::__infer_atomic_integral___infer_atomic_integral \n " color=yellow style=filled] -"__infer_atomic_integral#__infer_atomic_integral#std#{14753850656660515810|conste.316dccad2dcde8efca58b19fda679f20_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$1=*&d:unsigned long long [line 187, column 60]\n n$2=_fun_std::__infer_atomic_base___infer_atomic_base(n$0:std::__infer_atomic_integral*,n$1:unsigned long long) [line 187, column 53]\n " shape="box"] +"__infer_atomic_integral#__infer_atomic_integral#std#{14753850656660515810|conste.316dccad2dcde8efca58b19fda679f20_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$3=*&d:unsigned long long [line 187, column 60]\n n$4=_fun_std::__infer_atomic_base___infer_atomic_base(n$2:std::__infer_atomic_integral*,n$3:unsigned long long) [line 187, column 53]\n " shape="box"] "__infer_atomic_integral#__infer_atomic_integral#std#{14753850656660515810|conste.316dccad2dcde8efca58b19fda679f20_3" -> "__infer_atomic_integral#__infer_atomic_integral#std#{14753850656660515810|conste.316dccad2dcde8efca58b19fda679f20_2" ; @@ -364,7 +364,7 @@ digraph cfg { "__infer_atomic_integral#__infer_atomic_integral#std#{12484722408092055522|constexpr}.886571206f544c99c3746129fd658bc9_2" [label="2: Exit std::__infer_atomic_integral___infer_atomic_integral \n " color=yellow style=filled] -"__infer_atomic_integral#__infer_atomic_integral#std#{12484722408092055522|constexpr}.886571206f544c99c3746129fd658bc9_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$1=*&d:short [line 187, column 60]\n n$2=_fun_std::__infer_atomic_base___infer_atomic_base(n$0:std::__infer_atomic_integral*,n$1:short) [line 187, column 53]\n " shape="box"] +"__infer_atomic_integral#__infer_atomic_integral#std#{12484722408092055522|constexpr}.886571206f544c99c3746129fd658bc9_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$3=*&d:short [line 187, column 60]\n n$4=_fun_std::__infer_atomic_base___infer_atomic_base(n$2:std::__infer_atomic_integral*,n$3:short) [line 187, column 53]\n " shape="box"] "__infer_atomic_integral#__infer_atomic_integral#std#{12484722408092055522|constexpr}.886571206f544c99c3746129fd658bc9_3" -> "__infer_atomic_integral#__infer_atomic_integral#std#{12484722408092055522|constexpr}.886571206f544c99c3746129fd658bc9_2" ; @@ -375,7 +375,7 @@ digraph cfg { "__infer_atomic_integral#__infer_atomic_integral#std#{8591773473555052674|constexpr}.726ea5334f7395b295f6ac7cd555d392_2" [label="2: Exit std::__infer_atomic_integral___infer_atomic_integral \n " color=yellow style=filled] -"__infer_atomic_integral#__infer_atomic_integral#std#{8591773473555052674|constexpr}.726ea5334f7395b295f6ac7cd555d392_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$1=*&d:char [line 187, column 60]\n n$2=_fun_std::__infer_atomic_base___infer_atomic_base(n$0:std::__infer_atomic_integral*,n$1:char) [line 187, column 53]\n " shape="box"] +"__infer_atomic_integral#__infer_atomic_integral#std#{8591773473555052674|constexpr}.726ea5334f7395b295f6ac7cd555d392_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$3=*&d:char [line 187, column 60]\n n$4=_fun_std::__infer_atomic_base___infer_atomic_base(n$2:std::__infer_atomic_integral*,n$3:char) [line 187, column 53]\n " shape="box"] "__infer_atomic_integral#__infer_atomic_integral#std#{8591773473555052674|constexpr}.726ea5334f7395b295f6ac7cd555d392_3" -> "__infer_atomic_integral#__infer_atomic_integral#std#{8591773473555052674|constexpr}.726ea5334f7395b295f6ac7cd555d392_2" ; @@ -386,7 +386,7 @@ digraph cfg { "__infer_atomic_integral#__infer_atomic_integral#std#{9844392485801633554|constexpr}.6f8ca55944a0f4edf0c3180d150032cf_2" [label="2: Exit std::__infer_atomic_integral___infer_atomic_integral \n " color=yellow style=filled] -"__infer_atomic_integral#__infer_atomic_integral#std#{9844392485801633554|constexpr}.6f8ca55944a0f4edf0c3180d150032cf_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$1=*&d:signed char [line 187, column 60]\n n$2=_fun_std::__infer_atomic_base___infer_atomic_base(n$0:std::__infer_atomic_integral*,n$1:signed char) [line 187, column 53]\n " shape="box"] +"__infer_atomic_integral#__infer_atomic_integral#std#{9844392485801633554|constexpr}.6f8ca55944a0f4edf0c3180d150032cf_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$3=*&d:signed char [line 187, column 60]\n n$4=_fun_std::__infer_atomic_base___infer_atomic_base(n$2:std::__infer_atomic_integral*,n$3:signed char) [line 187, column 53]\n " shape="box"] "__infer_atomic_integral#__infer_atomic_integral#std#{9844392485801633554|constexpr}.6f8ca55944a0f4edf0c3180d150032cf_3" -> "__infer_atomic_integral#__infer_atomic_integral#std#{9844392485801633554|constexpr}.6f8ca55944a0f4edf0c3180d150032cf_2" ; @@ -397,7 +397,7 @@ digraph cfg { "__infer_atomic_integral#__infer_atomic_integral#std#{16522029776639505920|constexpr}.39982a6970fd6e76224956305a5d7c79_2" [label="2: Exit std::__infer_atomic_integral___infer_atomic_integral \n " color=yellow style=filled] -"__infer_atomic_integral#__infer_atomic_integral#std#{16522029776639505920|constexpr}.39982a6970fd6e76224956305a5d7c79_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$1=*&d:char [line 187, column 60]\n n$2=_fun_std::__infer_atomic_base___infer_atomic_base(n$0:std::__infer_atomic_integral*,n$1:char) [line 187, column 53]\n " shape="box"] +"__infer_atomic_integral#__infer_atomic_integral#std#{16522029776639505920|constexpr}.39982a6970fd6e76224956305a5d7c79_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$3=*&d:char [line 187, column 60]\n n$4=_fun_std::__infer_atomic_base___infer_atomic_base(n$2:std::__infer_atomic_integral*,n$3:char) [line 187, column 53]\n " shape="box"] "__infer_atomic_integral#__infer_atomic_integral#std#{16522029776639505920|constexpr}.39982a6970fd6e76224956305a5d7c79_3" -> "__infer_atomic_integral#__infer_atomic_integral#std#{16522029776639505920|constexpr}.39982a6970fd6e76224956305a5d7c79_2" ; @@ -408,7 +408,7 @@ digraph cfg { "__infer_atomic_integral#__infer_atomic_integral#std#{16659147243517555676|constexpr}.63a0b0e30efb12599ce5b737bbb89996_2" [label="2: Exit std::__infer_atomic_integral___infer_atomic_integral \n " color=yellow style=filled] -"__infer_atomic_integral#__infer_atomic_integral#std#{16659147243517555676|constexpr}.63a0b0e30efb12599ce5b737bbb89996_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$1=*&d:long long [line 187, column 60]\n n$2=_fun_std::__infer_atomic_base___infer_atomic_base(n$0:std::__infer_atomic_integral*,n$1:long long) [line 187, column 53]\n " shape="box"] +"__infer_atomic_integral#__infer_atomic_integral#std#{16659147243517555676|constexpr}.63a0b0e30efb12599ce5b737bbb89996_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$3=*&d:long long [line 187, column 60]\n n$4=_fun_std::__infer_atomic_base___infer_atomic_base(n$2:std::__infer_atomic_integral*,n$3:long long) [line 187, column 53]\n " shape="box"] "__infer_atomic_integral#__infer_atomic_integral#std#{16659147243517555676|constexpr}.63a0b0e30efb12599ce5b737bbb89996_3" -> "__infer_atomic_integral#__infer_atomic_integral#std#{16659147243517555676|constexpr}.63a0b0e30efb12599ce5b737bbb89996_2" ; @@ -419,7 +419,7 @@ digraph cfg { "__infer_atomic_integral#__infer_atomic_integral#std#{2173708841126415188|constexpr}.18d3a9ecf5789e4e4e382f28729807c8_2" [label="2: Exit std::__infer_atomic_integral___infer_atomic_integral \n " color=yellow style=filled] -"__infer_atomic_integral#__infer_atomic_integral#std#{2173708841126415188|constexpr}.18d3a9ecf5789e4e4e382f28729807c8_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$1=*&d:long [line 187, column 60]\n n$2=_fun_std::__infer_atomic_base___infer_atomic_base(n$0:std::__infer_atomic_integral*,n$1:long) [line 187, column 53]\n " shape="box"] +"__infer_atomic_integral#__infer_atomic_integral#std#{2173708841126415188|constexpr}.18d3a9ecf5789e4e4e382f28729807c8_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$3=*&d:long [line 187, column 60]\n n$4=_fun_std::__infer_atomic_base___infer_atomic_base(n$2:std::__infer_atomic_integral*,n$3:long) [line 187, column 53]\n " shape="box"] "__infer_atomic_integral#__infer_atomic_integral#std#{2173708841126415188|constexpr}.18d3a9ecf5789e4e4e382f28729807c8_3" -> "__infer_atomic_integral#__infer_atomic_integral#std#{2173708841126415188|constexpr}.18d3a9ecf5789e4e4e382f28729807c8_2" ; @@ -430,7 +430,7 @@ digraph cfg { "__infer_atomic_integral#__infer_atomic_integral#std#{14576619656228466890|constexpr}.f782c04753c7831667ca63ed4883ec25_2" [label="2: Exit std::__infer_atomic_integral___infer_atomic_integral \n " color=yellow style=filled] -"__infer_atomic_integral#__infer_atomic_integral#std#{14576619656228466890|constexpr}.f782c04753c7831667ca63ed4883ec25_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$1=*&d:unsigned long [line 187, column 60]\n n$2=_fun_std::__infer_atomic_base___infer_atomic_base(n$0:std::__infer_atomic_integral*,n$1:unsigned long) [line 187, column 53]\n " shape="box"] +"__infer_atomic_integral#__infer_atomic_integral#std#{14576619656228466890|constexpr}.f782c04753c7831667ca63ed4883ec25_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$3=*&d:unsigned long [line 187, column 60]\n n$4=_fun_std::__infer_atomic_base___infer_atomic_base(n$2:std::__infer_atomic_integral*,n$3:unsigned long) [line 187, column 53]\n " shape="box"] "__infer_atomic_integral#__infer_atomic_integral#std#{14576619656228466890|constexpr}.f782c04753c7831667ca63ed4883ec25_3" -> "__infer_atomic_integral#__infer_atomic_integral#std#{14576619656228466890|constexpr}.f782c04753c7831667ca63ed4883ec25_2" ; @@ -441,7 +441,7 @@ digraph cfg { "__infer_atomic_integral#__infer_atomic_integral#std#{4588665662015601400|constexpr}.d5e8f3087b4e601b5439130cb84493b0_2" [label="2: Exit std::__infer_atomic_integral___infer_atomic_integral \n " color=yellow style=filled] -"__infer_atomic_integral#__infer_atomic_integral#std#{4588665662015601400|constexpr}.d5e8f3087b4e601b5439130cb84493b0_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$1=*&d:unsigned int [line 187, column 60]\n n$2=_fun_std::__infer_atomic_base___infer_atomic_base(n$0:std::__infer_atomic_integral*,n$1:unsigned int) [line 187, column 53]\n " shape="box"] +"__infer_atomic_integral#__infer_atomic_integral#std#{4588665662015601400|constexpr}.d5e8f3087b4e601b5439130cb84493b0_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$3=*&d:unsigned int [line 187, column 60]\n n$4=_fun_std::__infer_atomic_base___infer_atomic_base(n$2:std::__infer_atomic_integral*,n$3:unsigned int) [line 187, column 53]\n " shape="box"] "__infer_atomic_integral#__infer_atomic_integral#std#{4588665662015601400|constexpr}.d5e8f3087b4e601b5439130cb84493b0_3" -> "__infer_atomic_integral#__infer_atomic_integral#std#{4588665662015601400|constexpr}.d5e8f3087b4e601b5439130cb84493b0_2" ; @@ -452,7 +452,7 @@ digraph cfg { "__infer_atomic_integral#__infer_atomic_integral#std#{812115561232181884|constexpr}.549c03fc14bf4fd6639150c4ad1efe18_2" [label="2: Exit std::__infer_atomic_integral___infer_atomic_integral \n " color=yellow style=filled] -"__infer_atomic_integral#__infer_atomic_integral#std#{812115561232181884|constexpr}.549c03fc14bf4fd6639150c4ad1efe18_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$1=*&d:unsigned char [line 187, column 60]\n n$2=_fun_std::__infer_atomic_base___infer_atomic_base(n$0:std::__infer_atomic_integral*,n$1:unsigned char) [line 187, column 53]\n " shape="box"] +"__infer_atomic_integral#__infer_atomic_integral#std#{812115561232181884|constexpr}.549c03fc14bf4fd6639150c4ad1efe18_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$3=*&d:unsigned char [line 187, column 60]\n n$4=_fun_std::__infer_atomic_base___infer_atomic_base(n$2:std::__infer_atomic_integral*,n$3:unsigned char) [line 187, column 53]\n " shape="box"] "__infer_atomic_integral#__infer_atomic_integral#std#{812115561232181884|constexpr}.549c03fc14bf4fd6639150c4ad1efe18_3" -> "__infer_atomic_integral#__infer_atomic_integral#std#{812115561232181884|constexpr}.549c03fc14bf4fd6639150c4ad1efe18_2" ; @@ -463,7 +463,7 @@ digraph cfg { "__infer_atomic_integral#__infer_atomic_integral#std#{15428870764710756536|constexpr}.d0b34811c384e20ccfd3c64a11df4e0a_2" [label="2: Exit std::__infer_atomic_integral___infer_atomic_integral \n " color=yellow style=filled] -"__infer_atomic_integral#__infer_atomic_integral#std#{15428870764710756536|constexpr}.d0b34811c384e20ccfd3c64a11df4e0a_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$1=*&d:char [line 187, column 60]\n n$2=_fun_std::__infer_atomic_base___infer_atomic_base(n$0:std::__infer_atomic_integral*,n$1:char) [line 187, column 53]\n " shape="box"] +"__infer_atomic_integral#__infer_atomic_integral#std#{15428870764710756536|constexpr}.d0b34811c384e20ccfd3c64a11df4e0a_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$3=*&d:char [line 187, column 60]\n n$4=_fun_std::__infer_atomic_base___infer_atomic_base(n$2:std::__infer_atomic_integral*,n$3:char) [line 187, column 53]\n " shape="box"] "__infer_atomic_integral#__infer_atomic_integral#std#{15428870764710756536|constexpr}.d0b34811c384e20ccfd3c64a11df4e0a_3" -> "__infer_atomic_integral#__infer_atomic_integral#std#{15428870764710756536|constexpr}.d0b34811c384e20ccfd3c64a11df4e0a_2" ; @@ -474,7 +474,7 @@ digraph cfg { "__infer_atomic_integral#__infer_atomic_integral#std#{10860901722123512962|constexpr}.f85ea1dfc790b10c2617a4d4f5cafd29_2" [label="2: Exit std::__infer_atomic_integral___infer_atomic_integral \n " color=yellow style=filled] -"__infer_atomic_integral#__infer_atomic_integral#std#{10860901722123512962|constexpr}.f85ea1dfc790b10c2617a4d4f5cafd29_3" [label="3: Constructor Init \n n$0=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$1=*&d:int [line 187, column 60]\n n$2=_fun_std::__infer_atomic_base___infer_atomic_base(n$0:std::__infer_atomic_integral*,n$1:int) [line 187, column 53]\n " shape="box"] +"__infer_atomic_integral#__infer_atomic_integral#std#{10860901722123512962|constexpr}.f85ea1dfc790b10c2617a4d4f5cafd29_3" [label="3: Constructor Init \n n$2=*&this:std::__infer_atomic_integral* [line 187, column 53]\n n$3=*&d:int [line 187, column 60]\n n$4=_fun_std::__infer_atomic_base___infer_atomic_base(n$2:std::__infer_atomic_integral*,n$3:int) [line 187, column 53]\n " shape="box"] "__infer_atomic_integral#__infer_atomic_integral#std#{10860901722123512962|constexpr}.f85ea1dfc790b10c2617a4d4f5cafd29_3" -> "__infer_atomic_integral#__infer_atomic_integral#std#{10860901722123512962|constexpr}.f85ea1dfc790b10c2617a4d4f5cafd29_2" ; @@ -489,7 +489,7 @@ digraph cfg { "__infer_inner_destructor_~shared_ptr#shared_ptr#std#(11841665744792554656).9277443e4e3f26d7cc1cd9ee0f2e3637_3" -> "__infer_inner_destructor_~shared_ptr#shared_ptr#std#(11841665744792554656).9277443e4e3f26d7cc1cd9ee0f2e3637_2" ; -"__infer_inner_destructor_~shared_ptr#shared_ptr#std#(11841665744792554656).9277443e4e3f26d7cc1cd9ee0f2e3637_4" [label="4: Call _fun_std::shared_ptr_reset \n n$3=*&this:int** [line 180, column 19]\n _=*n$3:int* [line 180, column 19]\n n$5=_fun_std::shared_ptr_reset(n$3:int**,null:int*) [line 180, column 19]\n " shape="box"] +"__infer_inner_destructor_~shared_ptr#shared_ptr#std#(11841665744792554656).9277443e4e3f26d7cc1cd9ee0f2e3637_4" [label="4: Call _fun_std::shared_ptr_reset \n n$5=*&this:int** [line 180, column 19]\n _=*n$5:int* [line 180, column 19]\n n$7=_fun_std::shared_ptr_reset(n$5:int**,null:int*) [line 180, column 19]\n " shape="box"] "__infer_inner_destructor_~shared_ptr#shared_ptr#std#(11841665744792554656).9277443e4e3f26d7cc1cd9ee0f2e3637_4" -> "__infer_inner_destructor_~shared_ptr#shared_ptr#std#(11841665744792554656).9277443e4e3f26d7cc1cd9ee0f2e3637_3" ; @@ -500,7 +500,7 @@ digraph cfg { "atomic#atomic#std#{18219637643674479567|constexpr}.a4a5467727100ba5642b3dca850c391b_2" [label="2: Exit std::atomic_atomic \n " color=yellow style=filled] -"atomic#atomic#std#{18219637643674479567|constexpr}.a4a5467727100ba5642b3dca850c391b_3" [label="3: Constructor Init \n n$0=*&this:std::atomic* [line 408, column 50]\n n$1=*&d:unsigned short [line 408, column 57]\n n$2=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$0:std::atomic*,n$1:unsigned short) [line 408, column 50]\n " shape="box"] +"atomic#atomic#std#{18219637643674479567|constexpr}.a4a5467727100ba5642b3dca850c391b_3" [label="3: Constructor Init \n n$2=*&this:std::atomic* [line 408, column 50]\n n$3=*&d:unsigned short [line 408, column 57]\n n$4=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$2:std::atomic*,n$3:unsigned short) [line 408, column 50]\n " shape="box"] "atomic#atomic#std#{18219637643674479567|constexpr}.a4a5467727100ba5642b3dca850c391b_3" -> "atomic#atomic#std#{18219637643674479567|constexpr}.a4a5467727100ba5642b3dca850c391b_2" ; @@ -511,7 +511,7 @@ digraph cfg { "atomic#atomic#std#{6824382166204133557|constexpr}.be44521bf079e2cb888037b21858e8e6_2" [label="2: Exit std::atomic_atomic \n " color=yellow style=filled] -"atomic#atomic#std#{6824382166204133557|constexpr}.be44521bf079e2cb888037b21858e8e6_3" [label="3: Constructor Init \n n$0=*&this:std::atomic* [line 472, column 50]\n n$1=*&d:char [line 472, column 57]\n n$2=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$0:std::atomic*,n$1:char) [line 472, column 50]\n " shape="box"] +"atomic#atomic#std#{6824382166204133557|constexpr}.be44521bf079e2cb888037b21858e8e6_3" [label="3: Constructor Init \n n$2=*&this:std::atomic* [line 472, column 50]\n n$3=*&d:char [line 472, column 57]\n n$4=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$2:std::atomic*,n$3:char) [line 472, column 50]\n " shape="box"] "atomic#atomic#std#{6824382166204133557|constexpr}.be44521bf079e2cb888037b21858e8e6_3" -> "atomic#atomic#std#{6824382166204133557|constexpr}.be44521bf079e2cb888037b21858e8e6_2" ; @@ -522,7 +522,7 @@ digraph cfg { "atomic#atomic#std#{12678320818314302393|constexpr}.5cd3aac69014d4e49ff04061ee1f1526_2" [label="2: Exit std::atomic_atomic \n " color=yellow style=filled] -"atomic#atomic#std#{12678320818314302393|constexpr}.5cd3aac69014d4e49ff04061ee1f1526_3" [label="3: Constructor Init \n n$0=*&this:std::atomic* [line 444, column 50]\n n$1=*&d:unsigned long [line 444, column 57]\n n$2=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$0:std::atomic*,n$1:unsigned long) [line 444, column 50]\n " shape="box"] +"atomic#atomic#std#{12678320818314302393|constexpr}.5cd3aac69014d4e49ff04061ee1f1526_3" [label="3: Constructor Init \n n$2=*&this:std::atomic* [line 444, column 50]\n n$3=*&d:unsigned long [line 444, column 57]\n n$4=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$2:std::atomic*,n$3:unsigned long) [line 444, column 50]\n " shape="box"] "atomic#atomic#std#{12678320818314302393|constexpr}.5cd3aac69014d4e49ff04061ee1f1526_3" -> "atomic#atomic#std#{12678320818314302393|constexpr}.5cd3aac69014d4e49ff04061ee1f1526_2" ; @@ -533,7 +533,7 @@ digraph cfg { "atomic#atomic#std#{17416607751267500557|constexpr}.44c96da43702ebbe4de34f6c26176ccb_2" [label="2: Exit std::atomic_atomic \n " color=yellow style=filled] -"atomic#atomic#std#{17416607751267500557|constexpr}.44c96da43702ebbe4de34f6c26176ccb_3" [label="3: Constructor Init \n n$0=*&this:std::atomic* [line 399, column 50]\n n$1=*&d:short [line 399, column 57]\n n$2=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$0:std::atomic*,n$1:short) [line 399, column 50]\n " shape="box"] +"atomic#atomic#std#{17416607751267500557|constexpr}.44c96da43702ebbe4de34f6c26176ccb_3" [label="3: Constructor Init \n n$2=*&this:std::atomic* [line 399, column 50]\n n$3=*&d:short [line 399, column 57]\n n$4=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$2:std::atomic*,n$3:short) [line 399, column 50]\n " shape="box"] "atomic#atomic#std#{17416607751267500557|constexpr}.44c96da43702ebbe4de34f6c26176ccb_3" -> "atomic#atomic#std#{17416607751267500557|constexpr}.44c96da43702ebbe4de34f6c26176ccb_2" ; @@ -544,7 +544,7 @@ digraph cfg { "atomic#atomic#std#{11783391945814293231|constexpr}.22775463bf145a69731b3305dffc4bb3_2" [label="2: Exit std::atomic_atomic \n " color=yellow style=filled] -"atomic#atomic#std#{11783391945814293231|constexpr}.22775463bf145a69731b3305dffc4bb3_3" [label="3: Constructor Init \n n$0=*&this:std::atomic* [line 435, column 50]\n n$1=*&d:long [line 435, column 57]\n n$2=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$0:std::atomic*,n$1:long) [line 435, column 50]\n " shape="box"] +"atomic#atomic#std#{11783391945814293231|constexpr}.22775463bf145a69731b3305dffc4bb3_3" [label="3: Constructor Init \n n$2=*&this:std::atomic* [line 435, column 50]\n n$3=*&d:long [line 435, column 57]\n n$4=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$2:std::atomic*,n$3:long) [line 435, column 50]\n " shape="box"] "atomic#atomic#std#{11783391945814293231|constexpr}.22775463bf145a69731b3305dffc4bb3_3" -> "atomic#atomic#std#{11783391945814293231|constexpr}.22775463bf145a69731b3305dffc4bb3_2" ; @@ -555,7 +555,7 @@ digraph cfg { "atomic#atomic#std#{10680712765411145881|constexpr}.b59b8272bcd92eac36f759f9bac15ee8_2" [label="2: Exit std::atomic_atomic \n " color=yellow style=filled] -"atomic#atomic#std#{10680712765411145881|constexpr}.b59b8272bcd92eac36f759f9bac15ee8_3" [label="3: Constructor Init \n n$0=*&this:std::atomic* [line 417, column 50]\n n$1=*&d:int [line 417, column 57]\n n$2=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$0:std::atomic*,n$1:int) [line 417, column 50]\n " shape="box"] +"atomic#atomic#std#{10680712765411145881|constexpr}.b59b8272bcd92eac36f759f9bac15ee8_3" [label="3: Constructor Init \n n$2=*&this:std::atomic* [line 417, column 50]\n n$3=*&d:int [line 417, column 57]\n n$4=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$2:std::atomic*,n$3:int) [line 417, column 50]\n " shape="box"] "atomic#atomic#std#{10680712765411145881|constexpr}.b59b8272bcd92eac36f759f9bac15ee8_3" -> "atomic#atomic#std#{10680712765411145881|constexpr}.b59b8272bcd92eac36f759f9bac15ee8_2" ; @@ -566,7 +566,7 @@ digraph cfg { "atomic#atomic#std#{9349229583258484711|constexpr}.9cbc6c1bc35116267ee41b36d8d25cb8_2" [label="2: Exit std::atomic_atomic \n " color=yellow style=filled] -"atomic#atomic#std#{9349229583258484711|constexpr}.9cbc6c1bc35116267ee41b36d8d25cb8_3" [label="3: Constructor Init \n n$0=*&this:std::atomic* [line 390, column 50]\n n$1=*&d:unsigned char [line 390, column 57]\n n$2=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$0:std::atomic*,n$1:unsigned char) [line 390, column 50]\n " shape="box"] +"atomic#atomic#std#{9349229583258484711|constexpr}.9cbc6c1bc35116267ee41b36d8d25cb8_3" [label="3: Constructor Init \n n$2=*&this:std::atomic* [line 390, column 50]\n n$3=*&d:unsigned char [line 390, column 57]\n n$4=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$2:std::atomic*,n$3:unsigned char) [line 390, column 50]\n " shape="box"] "atomic#atomic#std#{9349229583258484711|constexpr}.9cbc6c1bc35116267ee41b36d8d25cb8_3" -> "atomic#atomic#std#{9349229583258484711|constexpr}.9cbc6c1bc35116267ee41b36d8d25cb8_2" ; @@ -577,7 +577,7 @@ digraph cfg { "atomic#atomic#std#{8082860668582714463|constexpr}.dd2e5ecabe54fdef20aa889bb6f6f2e6_2" [label="2: Exit std::atomic_atomic \n " color=yellow style=filled] -"atomic#atomic#std#{8082860668582714463|constexpr}.dd2e5ecabe54fdef20aa889bb6f6f2e6_3" [label="3: Constructor Init \n n$0=*&this:std::atomic* [line 481, column 50]\n n$1=*&d:char [line 481, column 57]\n n$2=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$0:std::atomic*,n$1:char) [line 481, column 50]\n " shape="box"] +"atomic#atomic#std#{8082860668582714463|constexpr}.dd2e5ecabe54fdef20aa889bb6f6f2e6_3" [label="3: Constructor Init \n n$2=*&this:std::atomic* [line 481, column 50]\n n$3=*&d:char [line 481, column 57]\n n$4=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$2:std::atomic*,n$3:char) [line 481, column 50]\n " shape="box"] "atomic#atomic#std#{8082860668582714463|constexpr}.dd2e5ecabe54fdef20aa889bb6f6f2e6_3" -> "atomic#atomic#std#{8082860668582714463|constexpr}.dd2e5ecabe54fdef20aa889bb6f6f2e6_2" ; @@ -588,7 +588,7 @@ digraph cfg { "atomic#atomic#std#{5346108577579494905|constexpr}.c15dd9aaf90a685e2a7f542bd251c605_2" [label="2: Exit std::atomic_atomic \n " color=yellow style=filled] -"atomic#atomic#std#{5346108577579494905|constexpr}.c15dd9aaf90a685e2a7f542bd251c605_3" [label="3: Constructor Init \n n$0=*&this:std::atomic* [line 381, column 50]\n n$1=*&d:signed char [line 381, column 57]\n n$2=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$0:std::atomic*,n$1:signed char) [line 381, column 50]\n " shape="box"] +"atomic#atomic#std#{5346108577579494905|constexpr}.c15dd9aaf90a685e2a7f542bd251c605_3" [label="3: Constructor Init \n n$2=*&this:std::atomic* [line 381, column 50]\n n$3=*&d:signed char [line 381, column 57]\n n$4=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$2:std::atomic*,n$3:signed char) [line 381, column 50]\n " shape="box"] "atomic#atomic#std#{5346108577579494905|constexpr}.c15dd9aaf90a685e2a7f542bd251c605_3" -> "atomic#atomic#std#{5346108577579494905|constexpr}.c15dd9aaf90a685e2a7f542bd251c605_2" ; @@ -599,7 +599,7 @@ digraph cfg { "atomic#atomic#std#{1569576068982126765|constexpr}.65635696899f54c5a6d6629c8a6ecb24_2" [label="2: Exit std::atomic_atomic \n " color=yellow style=filled] -"atomic#atomic#std#{1569576068982126765|constexpr}.65635696899f54c5a6d6629c8a6ecb24_3" [label="3: Constructor Init \n n$0=*&this:std::atomic* [line 372, column 50]\n n$1=*&d:char [line 372, column 57]\n n$2=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$0:std::atomic*,n$1:char) [line 372, column 50]\n " shape="box"] +"atomic#atomic#std#{1569576068982126765|constexpr}.65635696899f54c5a6d6629c8a6ecb24_3" [label="3: Constructor Init \n n$2=*&this:std::atomic* [line 372, column 50]\n n$3=*&d:char [line 372, column 57]\n n$4=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$2:std::atomic*,n$3:char) [line 372, column 50]\n " shape="box"] "atomic#atomic#std#{1569576068982126765|constexpr}.65635696899f54c5a6d6629c8a6ecb24_3" -> "atomic#atomic#std#{1569576068982126765|constexpr}.65635696899f54c5a6d6629c8a6ecb24_2" ; @@ -610,7 +610,7 @@ digraph cfg { "atomic#atomic#std#{2209937568484024999|constexpr}.6cdd85274a8b59daa2beabef472c513a_2" [label="2: Exit std::atomic_atomic \n " color=yellow style=filled] -"atomic#atomic#std#{2209937568484024999|constexpr}.6cdd85274a8b59daa2beabef472c513a_3" [label="3: Constructor Init \n n$0=*&this:std::atomic* [line 490, column 50]\n n$1=*&d:char [line 490, column 57]\n n$2=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$0:std::atomic*,n$1:char) [line 490, column 50]\n " shape="box"] +"atomic#atomic#std#{2209937568484024999|constexpr}.6cdd85274a8b59daa2beabef472c513a_3" [label="3: Constructor Init \n n$2=*&this:std::atomic* [line 490, column 50]\n n$3=*&d:char [line 490, column 57]\n n$4=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$2:std::atomic*,n$3:char) [line 490, column 50]\n " shape="box"] "atomic#atomic#std#{2209937568484024999|constexpr}.6cdd85274a8b59daa2beabef472c513a_3" -> "atomic#atomic#std#{2209937568484024999|constexpr}.6cdd85274a8b59daa2beabef472c513a_2" ; @@ -621,7 +621,7 @@ digraph cfg { "atomic#atomic#std#{10601848595505065591|constexpr}.a5e478d8ee519cb53e4dcde645e4dbe4_2" [label="2: Exit std::atomic_atomic \n " color=yellow style=filled] -"atomic#atomic#std#{10601848595505065591|constexpr}.a5e478d8ee519cb53e4dcde645e4dbe4_3" [label="3: Constructor Init \n n$0=*&this:std::atomic* [line 426, column 50]\n n$1=*&d:unsigned int [line 426, column 57]\n n$2=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$0:std::atomic*,n$1:unsigned int) [line 426, column 50]\n " shape="box"] +"atomic#atomic#std#{10601848595505065591|constexpr}.a5e478d8ee519cb53e4dcde645e4dbe4_3" [label="3: Constructor Init \n n$2=*&this:std::atomic* [line 426, column 50]\n n$3=*&d:unsigned int [line 426, column 57]\n n$4=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$2:std::atomic*,n$3:unsigned int) [line 426, column 50]\n " shape="box"] "atomic#atomic#std#{10601848595505065591|constexpr}.a5e478d8ee519cb53e4dcde645e4dbe4_3" -> "atomic#atomic#std#{10601848595505065591|constexpr}.a5e478d8ee519cb53e4dcde645e4dbe4_2" ; @@ -632,7 +632,7 @@ digraph cfg { "atomic#atomic#std#{8272996909294858201|constexpr}.4af18384f1b00a3d9942312d16de12f0_2" [label="2: Exit std::atomic_atomic \n " color=yellow style=filled] -"atomic#atomic#std#{8272996909294858201|constexpr}.4af18384f1b00a3d9942312d16de12f0_3" [label="3: Constructor Init \n n$0=*&this:std::atomic* [line 463, column 50]\n n$1=*&d:unsigned long long [line 463, column 57]\n n$2=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$0:std::atomic*,n$1:unsigned long long) [line 463, column 50]\n " shape="box"] +"atomic#atomic#std#{8272996909294858201|constexpr}.4af18384f1b00a3d9942312d16de12f0_3" [label="3: Constructor Init \n n$2=*&this:std::atomic* [line 463, column 50]\n n$3=*&d:unsigned long long [line 463, column 57]\n n$4=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$2:std::atomic*,n$3:unsigned long long) [line 463, column 50]\n " shape="box"] "atomic#atomic#std#{8272996909294858201|constexpr}.4af18384f1b00a3d9942312d16de12f0_3" -> "atomic#atomic#std#{8272996909294858201|constexpr}.4af18384f1b00a3d9942312d16de12f0_2" ; @@ -643,7 +643,7 @@ digraph cfg { "atomic#atomic#std#{13242178517795487559|constexpr}.b120a6c4bb0f1e110121c7888150bd59_2" [label="2: Exit std::atomic_atomic \n " color=yellow style=filled] -"atomic#atomic#std#{13242178517795487559|constexpr}.b120a6c4bb0f1e110121c7888150bd59_3" [label="3: Constructor Init \n n$0=*&this:std::atomic* [line 453, column 50]\n n$1=*&d:long long [line 453, column 57]\n n$2=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$0:std::atomic*,n$1:long long) [line 453, column 50]\n " shape="box"] +"atomic#atomic#std#{13242178517795487559|constexpr}.b120a6c4bb0f1e110121c7888150bd59_3" [label="3: Constructor Init \n n$2=*&this:std::atomic* [line 453, column 50]\n n$3=*&d:long long [line 453, column 57]\n n$4=_fun_std::__infer_atomic_integral___infer_atomic_integral(n$2:std::atomic*,n$3:long long) [line 453, column 50]\n " shape="box"] "atomic#atomic#std#{13242178517795487559|constexpr}.b120a6c4bb0f1e110121c7888150bd59_3" -> "atomic#atomic#std#{13242178517795487559|constexpr}.b120a6c4bb0f1e110121c7888150bd59_2" ; @@ -654,7 +654,7 @@ digraph cfg { "atomic_flag#atomic_flag#std#{10931176997288531904|constexpr}.57d7555f5addc9691c180d812b1aad13_2" [label="2: Exit std::atomic_flag_atomic_flag \n " color=yellow style=filled] -"atomic_flag#atomic_flag#std#{10931176997288531904|constexpr}.57d7555f5addc9691c180d812b1aad13_3" [label="3: Constructor Init \n n$0=*&this:std::atomic_flag* [line 929, column 44]\n n$1=*&i:_Bool [line 929, column 46]\n *n$0.a:_Bool=n$1 [line 929, column 44]\n " shape="box"] +"atomic_flag#atomic_flag#std#{10931176997288531904|constexpr}.57d7555f5addc9691c180d812b1aad13_3" [label="3: Constructor Init \n n$2=*&this:std::atomic_flag* [line 929, column 44]\n n$3=*&i:_Bool [line 929, column 46]\n *n$2.a:_Bool=n$3 [line 929, column 44]\n " shape="box"] "atomic_flag#atomic_flag#std#{10931176997288531904|constexpr}.57d7555f5addc9691c180d812b1aad13_3" -> "atomic_flag#atomic_flag#std#{10931176997288531904|constexpr}.57d7555f5addc9691c180d812b1aad13_2" ; @@ -665,7 +665,7 @@ digraph cfg { "clear#atomic_flag#std#(3684357514402407574).b0b9e53b3e4cf6978b960d4491c0af6d_2" [label="2: Exit std::atomic_flag_clear \n " color=yellow style=filled] -"clear#atomic_flag#std#(3684357514402407574).b0b9e53b3e4cf6978b960d4491c0af6d_3" [label="3: BinaryOperatorStmt: Assign \n n$0=*&this:std::atomic_flag* [line 946, column 5]\n *n$0.a:_Bool=0 [line 946, column 5]\n " shape="box"] +"clear#atomic_flag#std#(3684357514402407574).b0b9e53b3e4cf6978b960d4491c0af6d_3" [label="3: BinaryOperatorStmt: Assign \n n$1=*&this:std::atomic_flag* [line 946, column 5]\n *n$1.a:_Bool=0 [line 946, column 5]\n " shape="box"] "clear#atomic_flag#std#(3684357514402407574).b0b9e53b3e4cf6978b960d4491c0af6d_3" -> "clear#atomic_flag#std#(3684357514402407574).b0b9e53b3e4cf6978b960d4491c0af6d_2" ; @@ -676,7 +676,7 @@ digraph cfg { "clear#atomic_flag#std#(4757429354090136896).a3ca4a9a64ba2fa439a627057e253cfc_2" [label="2: Exit std::atomic_flag_clear \n " color=yellow style=filled] -"clear#atomic_flag#std#(4757429354090136896).a3ca4a9a64ba2fa439a627057e253cfc_3" [label="3: BinaryOperatorStmt: Assign \n n$0=*&this:std::atomic_flag* [line 948, column 65]\n *n$0.a:_Bool=0 [line 948, column 65]\n " shape="box"] +"clear#atomic_flag#std#(4757429354090136896).a3ca4a9a64ba2fa439a627057e253cfc_3" [label="3: BinaryOperatorStmt: Assign \n n$1=*&this:std::atomic_flag* [line 948, column 65]\n *n$1.a:_Bool=0 [line 948, column 65]\n " shape="box"] "clear#atomic_flag#std#(4757429354090136896).a3ca4a9a64ba2fa439a627057e253cfc_3" -> "clear#atomic_flag#std#(4757429354090136896).a3ca4a9a64ba2fa439a627057e253cfc_2" ; @@ -687,7 +687,7 @@ digraph cfg { "model_set#shared_ptr#std#(4823396094259928824).b93622435d16d4672bfaf2944380f1be_2" [label="2: Exit std::shared_ptr_model_set \n " color=yellow style=filled] -"model_set#shared_ptr#std#(4823396094259928824).b93622435d16d4672bfaf2944380f1be_3" [label="3: BinaryOperatorStmt: Assign \n n$0=*&self:void const ** [line 67, column 6]\n n$1=*&value:void* [line 67, column 37]\n *n$0:void const *=n$1 [line 67, column 5]\n " shape="box"] +"model_set#shared_ptr#std#(4823396094259928824).b93622435d16d4672bfaf2944380f1be_3" [label="3: BinaryOperatorStmt: Assign \n n$1=*&self:void const ** [line 67, column 6]\n n$2=*&value:void* [line 67, column 37]\n *n$1:void const *=n$2 [line 67, column 5]\n " shape="box"] "model_set#shared_ptr#std#(4823396094259928824).b93622435d16d4672bfaf2944380f1be_3" -> "model_set#shared_ptr#std#(4823396094259928824).b93622435d16d4672bfaf2944380f1be_2" ; @@ -698,7 +698,7 @@ digraph cfg { "model_set#shared_ptr#std#(4842545188773067100).667f44fdf24815c87b171dd5a05fce4a_2" [label="2: Exit std::shared_ptr_model_set \n " color=yellow style=filled] -"model_set#shared_ptr#std#(4842545188773067100).667f44fdf24815c87b171dd5a05fce4a_3" [label="3: BinaryOperatorStmt: Assign \n n$0=*&self:void const ** [line 55, column 6]\n n$1=*&value:int [line 55, column 13]\n *n$0:void const *=n$1 [line 55, column 5]\n " shape="box"] +"model_set#shared_ptr#std#(4842545188773067100).667f44fdf24815c87b171dd5a05fce4a_3" [label="3: BinaryOperatorStmt: Assign \n n$1=*&self:void const ** [line 55, column 6]\n n$2=*&value:int [line 55, column 13]\n *n$1:void const *=n$2 [line 55, column 5]\n " shape="box"] "model_set#shared_ptr#std#(4842545188773067100).667f44fdf24815c87b171dd5a05fce4a_3" -> "model_set#shared_ptr#std#(4842545188773067100).667f44fdf24815c87b171dd5a05fce4a_2" ; @@ -709,7 +709,7 @@ digraph cfg { "reset#shared_ptr#std#(5124141554651620350).9719d311878ee7b168751a9cb4fd4371_2" [label="2: Exit std::shared_ptr_reset \n " color=yellow style=filled] -"reset#shared_ptr#std#(5124141554651620350).9719d311878ee7b168751a9cb4fd4371_3" [label="3: Call _fun_std::shared_ptr_model_set \n n$0=*&this:int** [line 238, column 15]\n n$1=*&p:int* [line 238, column 42]\n n$2=_fun_std::shared_ptr_model_set(n$0:void const **,n$1:void*) [line 238, column 5]\n " shape="box"] +"reset#shared_ptr#std#(5124141554651620350).9719d311878ee7b168751a9cb4fd4371_3" [label="3: Call _fun_std::shared_ptr_model_set \n n$2=*&this:int** [line 238, column 15]\n n$3=*&p:int* [line 238, column 42]\n n$4=_fun_std::shared_ptr_model_set(n$2:void const **,n$3:void*) [line 238, column 5]\n " shape="box"] "reset#shared_ptr#std#(5124141554651620350).9719d311878ee7b168751a9cb4fd4371_3" -> "reset#shared_ptr#std#(5124141554651620350).9719d311878ee7b168751a9cb4fd4371_2" ; @@ -720,11 +720,11 @@ digraph cfg { "shared_ptr#shared_ptr#std#{8741815665871862164|constexpr}.f88ab7f65e0cffeda975c68f431824d1_2" [label="2: Exit std::shared_ptr_shared_ptr \n " color=yellow style=filled] -"shared_ptr#shared_ptr#std#{8741815665871862164|constexpr}.f88ab7f65e0cffeda975c68f431824d1_3" [label="3: Call _fun_std::shared_ptr_model_set \n n$0=*&this:int** [line 99, column 15]\n n$1=_fun_std::shared_ptr_model_set(n$0:void const **,null:int) [line 99, column 5]\n " shape="box"] +"shared_ptr#shared_ptr#std#{8741815665871862164|constexpr}.f88ab7f65e0cffeda975c68f431824d1_3" [label="3: Call _fun_std::shared_ptr_model_set \n n$2=*&this:int** [line 99, column 15]\n n$3=_fun_std::shared_ptr_model_set(n$2:void const **,null:int) [line 99, column 5]\n " shape="box"] "shared_ptr#shared_ptr#std#{8741815665871862164|constexpr}.f88ab7f65e0cffeda975c68f431824d1_3" -> "shared_ptr#shared_ptr#std#{8741815665871862164|constexpr}.f88ab7f65e0cffeda975c68f431824d1_2" ; -"shared_ptr#shared_ptr#std#{8741815665871862164|constexpr}.f88ab7f65e0cffeda975c68f431824d1_4" [label="4: Constructor Init \n n$2=*&this:int** [line 99, column 42]\n n$4=_fun_std::std__shared_ptr_std__shared_ptr(n$2:int**) [line 98, column 13]\n n$3=*n$2:int* [line 98, column 13]\n " shape="box"] +"shared_ptr#shared_ptr#std#{8741815665871862164|constexpr}.f88ab7f65e0cffeda975c68f431824d1_4" [label="4: Constructor Init \n n$4=*&this:int** [line 99, column 42]\n n$6=_fun_std::std__shared_ptr_std__shared_ptr(n$4:int**) [line 98, column 13]\n n$5=*n$4:int* [line 98, column 13]\n " shape="box"] "shared_ptr#shared_ptr#std#{8741815665871862164|constexpr}.f88ab7f65e0cffeda975c68f431824d1_4" -> "shared_ptr#shared_ptr#std#{8741815665871862164|constexpr}.f88ab7f65e0cffeda975c68f431824d1_3" ; @@ -739,11 +739,11 @@ digraph cfg { "test_and_set#atomic_flag#std#(6342589292624928640).e1a95571862fb026e9cf3fed47e15f71_3" -> "test_and_set#atomic_flag#std#(6342589292624928640).e1a95571862fb026e9cf3fed47e15f71_2" ; -"test_and_set#atomic_flag#std#(6342589292624928640).e1a95571862fb026e9cf3fed47e15f71_4" [label="4: BinaryOperatorStmt: Assign \n n$1=*&this:std::atomic_flag* [line 936, column 5]\n *n$1.a:_Bool=1 [line 936, column 5]\n " shape="box"] +"test_and_set#atomic_flag#std#(6342589292624928640).e1a95571862fb026e9cf3fed47e15f71_4" [label="4: BinaryOperatorStmt: Assign \n n$2=*&this:std::atomic_flag* [line 936, column 5]\n *n$2.a:_Bool=1 [line 936, column 5]\n " shape="box"] "test_and_set#atomic_flag#std#(6342589292624928640).e1a95571862fb026e9cf3fed47e15f71_4" -> "test_and_set#atomic_flag#std#(6342589292624928640).e1a95571862fb026e9cf3fed47e15f71_3" ; -"test_and_set#atomic_flag#std#(6342589292624928640).e1a95571862fb026e9cf3fed47e15f71_5" [label="5: DeclStmt \n n$2=*&this:std::atomic_flag* [line 935, column 16]\n n$3=*n$2.a:_Bool [line 935, column 16]\n *&ret:_Bool=n$3 [line 935, column 5]\n " shape="box"] +"test_and_set#atomic_flag#std#(6342589292624928640).e1a95571862fb026e9cf3fed47e15f71_5" [label="5: DeclStmt \n n$3=*&this:std::atomic_flag* [line 935, column 16]\n n$4=*n$3.a:_Bool [line 935, column 16]\n *&ret:_Bool=n$4 [line 935, column 5]\n " shape="box"] "test_and_set#atomic_flag#std#(6342589292624928640).e1a95571862fb026e9cf3fed47e15f71_5" -> "test_and_set#atomic_flag#std#(6342589292624928640).e1a95571862fb026e9cf3fed47e15f71_4" ; @@ -758,11 +758,11 @@ digraph cfg { "test_and_set#atomic_flag#std#(6471561702066990866).1f32ee5584df8a2cd5807312ee98cdb7_3" -> "test_and_set#atomic_flag#std#(6471561702066990866).1f32ee5584df8a2cd5807312ee98cdb7_2" ; -"test_and_set#atomic_flag#std#(6471561702066990866).1f32ee5584df8a2cd5807312ee98cdb7_4" [label="4: BinaryOperatorStmt: Assign \n n$1=*&this:std::atomic_flag* [line 941, column 5]\n *n$1.a:_Bool=1 [line 941, column 5]\n " shape="box"] +"test_and_set#atomic_flag#std#(6471561702066990866).1f32ee5584df8a2cd5807312ee98cdb7_4" [label="4: BinaryOperatorStmt: Assign \n n$2=*&this:std::atomic_flag* [line 941, column 5]\n *n$2.a:_Bool=1 [line 941, column 5]\n " shape="box"] "test_and_set#atomic_flag#std#(6471561702066990866).1f32ee5584df8a2cd5807312ee98cdb7_4" -> "test_and_set#atomic_flag#std#(6471561702066990866).1f32ee5584df8a2cd5807312ee98cdb7_3" ; -"test_and_set#atomic_flag#std#(6471561702066990866).1f32ee5584df8a2cd5807312ee98cdb7_5" [label="5: DeclStmt \n n$2=*&this:std::atomic_flag* [line 940, column 16]\n n$3=*n$2.a:_Bool [line 940, column 16]\n *&ret:_Bool=n$3 [line 940, column 5]\n " shape="box"] +"test_and_set#atomic_flag#std#(6471561702066990866).1f32ee5584df8a2cd5807312ee98cdb7_5" [label="5: DeclStmt \n n$3=*&this:std::atomic_flag* [line 940, column 16]\n n$4=*n$3.a:_Bool [line 940, column 16]\n *&ret:_Bool=n$4 [line 940, column 5]\n " shape="box"] "test_and_set#atomic_flag#std#(6471561702066990866).1f32ee5584df8a2cd5807312ee98cdb7_5" -> "test_and_set#atomic_flag#std#(6471561702066990866).1f32ee5584df8a2cd5807312ee98cdb7_4" ; diff --git a/infer/tests/codetoanalyze/c/frontend/arithmetic/negate.c.dot b/infer/tests/codetoanalyze/c/frontend/arithmetic/negate.c.dot index 25fe826c7..e432052a4 100644 --- a/infer/tests/codetoanalyze/c/frontend/arithmetic/negate.c.dot +++ b/infer/tests/codetoanalyze/c/frontend/arithmetic/negate.c.dot @@ -20,11 +20,11 @@ digraph cfg { "neg_bool.e953d6477eaaeafaa430423a26fbaac9_5" -> "neg_bool.e953d6477eaaeafaa430423a26fbaac9_7" ; -"neg_bool.e953d6477eaaeafaa430423a26fbaac9_6" [label="6: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int=0 [line 14, column 32]\n " shape="box"] +"neg_bool.e953d6477eaaeafaa430423a26fbaac9_6" [label="6: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int=0 [line 14, column 32]\n " shape="box"] "neg_bool.e953d6477eaaeafaa430423a26fbaac9_6" -> "neg_bool.e953d6477eaaeafaa430423a26fbaac9_3" ; -"neg_bool.e953d6477eaaeafaa430423a26fbaac9_7" [label="7: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int=1 [line 14, column 32]\n " shape="box"] +"neg_bool.e953d6477eaaeafaa430423a26fbaac9_7" [label="7: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int=1 [line 14, column 32]\n " shape="box"] "neg_bool.e953d6477eaaeafaa430423a26fbaac9_7" -> "neg_bool.e953d6477eaaeafaa430423a26fbaac9_3" ; @@ -52,11 +52,11 @@ digraph cfg { "neg_char.53ef6b31d84386046a4728d1c45b5f7a_5" -> "neg_char.53ef6b31d84386046a4728d1c45b5f7a_7" ; -"neg_char.53ef6b31d84386046a4728d1c45b5f7a_6" [label="6: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int=0 [line 12, column 31]\n " shape="box"] +"neg_char.53ef6b31d84386046a4728d1c45b5f7a_6" [label="6: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int=0 [line 12, column 31]\n " shape="box"] "neg_char.53ef6b31d84386046a4728d1c45b5f7a_6" -> "neg_char.53ef6b31d84386046a4728d1c45b5f7a_3" ; -"neg_char.53ef6b31d84386046a4728d1c45b5f7a_7" [label="7: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int=1 [line 12, column 31]\n " shape="box"] +"neg_char.53ef6b31d84386046a4728d1c45b5f7a_7" [label="7: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int=1 [line 12, column 31]\n " shape="box"] "neg_char.53ef6b31d84386046a4728d1c45b5f7a_7" -> "neg_char.53ef6b31d84386046a4728d1c45b5f7a_3" ; @@ -84,11 +84,11 @@ digraph cfg { "neg_int.2aa25aca565c41dd997912d11504462c_5" -> "neg_int.2aa25aca565c41dd997912d11504462c_7" ; -"neg_int.2aa25aca565c41dd997912d11504462c_6" [label="6: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int=0 [line 10, column 29]\n " shape="box"] +"neg_int.2aa25aca565c41dd997912d11504462c_6" [label="6: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int=0 [line 10, column 29]\n " shape="box"] "neg_int.2aa25aca565c41dd997912d11504462c_6" -> "neg_int.2aa25aca565c41dd997912d11504462c_3" ; -"neg_int.2aa25aca565c41dd997912d11504462c_7" [label="7: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int=1 [line 10, column 29]\n " shape="box"] +"neg_int.2aa25aca565c41dd997912d11504462c_7" [label="7: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int=1 [line 10, column 29]\n " shape="box"] "neg_int.2aa25aca565c41dd997912d11504462c_7" -> "neg_int.2aa25aca565c41dd997912d11504462c_3" ; diff --git a/infer/tests/codetoanalyze/c/frontend/booleans/condition_as_param.c.dot b/infer/tests/codetoanalyze/c/frontend/booleans/condition_as_param.c.dot index ebaf27d7e..4a4fd2cd8 100644 --- a/infer/tests/codetoanalyze/c/frontend/booleans/condition_as_param.c.dot +++ b/infer/tests/codetoanalyze/c/frontend/booleans/condition_as_param.c.dot @@ -31,11 +31,11 @@ digraph cfg { "main.fad58de7366495db4650cfefac2fcd61_6" -> "main.fad58de7366495db4650cfefac2fcd61_8" ; -"main.fad58de7366495db4650cfefac2fcd61_7" [label="7: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int=1 [line 14, column 9]\n " shape="box"] +"main.fad58de7366495db4650cfefac2fcd61_7" [label="7: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int=1 [line 14, column 9]\n " shape="box"] "main.fad58de7366495db4650cfefac2fcd61_7" -> "main.fad58de7366495db4650cfefac2fcd61_3" ; -"main.fad58de7366495db4650cfefac2fcd61_8" [label="8: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int=0 [line 14, column 9]\n " shape="box"] +"main.fad58de7366495db4650cfefac2fcd61_8" [label="8: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int=0 [line 14, column 9]\n " shape="box"] "main.fad58de7366495db4650cfefac2fcd61_8" -> "main.fad58de7366495db4650cfefac2fcd61_3" ; diff --git a/infer/tests/codetoanalyze/c/frontend/conditional_operator/array_access.c.dot b/infer/tests/codetoanalyze/c/frontend/conditional_operator/array_access.c.dot index 98d7bd8f6..003de7a2c 100644 --- a/infer/tests/codetoanalyze/c/frontend/conditional_operator/array_access.c.dot +++ b/infer/tests/codetoanalyze/c/frontend/conditional_operator/array_access.c.dot @@ -37,16 +37,16 @@ digraph cfg { "dereference_in_array_access.d3133bf0c1bc11000c355c50d0fbb3c0_9" -> "dereference_in_array_access.d3133bf0c1bc11000c355c50d0fbb3c0_5" ; -"dereference_in_array_access.d3133bf0c1bc11000c355c50d0fbb3c0_10" [label="10: UnaryOperator \n n$7=*&p:int** [line 15, column 11]\n n$8=*n$7:int* [line 15, column 10]\n " shape="box"] +"dereference_in_array_access.d3133bf0c1bc11000c355c50d0fbb3c0_10" [label="10: UnaryOperator \n n$10=*&p:int** [line 15, column 11]\n n$11=*n$10:int* [line 15, column 10]\n " shape="box"] "dereference_in_array_access.d3133bf0c1bc11000c355c50d0fbb3c0_10" -> "dereference_in_array_access.d3133bf0c1bc11000c355c50d0fbb3c0_11" ; "dereference_in_array_access.d3133bf0c1bc11000c355c50d0fbb3c0_10" -> "dereference_in_array_access.d3133bf0c1bc11000c355c50d0fbb3c0_12" ; -"dereference_in_array_access.d3133bf0c1bc11000c355c50d0fbb3c0_11" [label="11: Prune (true branch, if) \n n$6=*&p:int** [line 15, column 7]\n n$9=*n$8:int [line 15, column 9]\n n$10=*n$6[n$9]:int* [line 15, column 7]\n PRUNE(n$10, true); [line 15, column 7]\n " shape="invhouse"] +"dereference_in_array_access.d3133bf0c1bc11000c355c50d0fbb3c0_11" [label="11: Prune (true branch, if) \n n$9=*&p:int** [line 15, column 7]\n n$12=*n$11:int [line 15, column 9]\n n$13=*n$9[n$12]:int* [line 15, column 7]\n PRUNE(n$13, true); [line 15, column 7]\n " shape="invhouse"] "dereference_in_array_access.d3133bf0c1bc11000c355c50d0fbb3c0_11" -> "dereference_in_array_access.d3133bf0c1bc11000c355c50d0fbb3c0_9" ; -"dereference_in_array_access.d3133bf0c1bc11000c355c50d0fbb3c0_12" [label="12: Prune (false branch, if) \n n$6=*&p:int** [line 15, column 7]\n n$9=*n$8:int [line 15, column 9]\n n$10=*n$6[n$9]:int* [line 15, column 7]\n PRUNE(!n$10, false); [line 15, column 7]\n " shape="invhouse"] +"dereference_in_array_access.d3133bf0c1bc11000c355c50d0fbb3c0_12" [label="12: Prune (false branch, if) \n n$9=*&p:int** [line 15, column 7]\n n$12=*n$11:int [line 15, column 9]\n n$13=*n$9[n$12]:int* [line 15, column 7]\n PRUNE(!n$13, false); [line 15, column 7]\n " shape="invhouse"] "dereference_in_array_access.d3133bf0c1bc11000c355c50d0fbb3c0_12" -> "dereference_in_array_access.d3133bf0c1bc11000c355c50d0fbb3c0_9" ; @@ -54,16 +54,16 @@ digraph cfg { "dereference_in_array_access.d3133bf0c1bc11000c355c50d0fbb3c0_13" -> "dereference_in_array_access.d3133bf0c1bc11000c355c50d0fbb3c0_10" ; -"dereference_in_array_access.d3133bf0c1bc11000c355c50d0fbb3c0_14" [label="14: UnaryOperator \n n$11=*&p:int** [line 13, column 9]\n " shape="box"] +"dereference_in_array_access.d3133bf0c1bc11000c355c50d0fbb3c0_14" [label="14: UnaryOperator \n n$17=*&p:int** [line 13, column 9]\n " shape="box"] "dereference_in_array_access.d3133bf0c1bc11000c355c50d0fbb3c0_14" -> "dereference_in_array_access.d3133bf0c1bc11000c355c50d0fbb3c0_15" ; "dereference_in_array_access.d3133bf0c1bc11000c355c50d0fbb3c0_14" -> "dereference_in_array_access.d3133bf0c1bc11000c355c50d0fbb3c0_16" ; -"dereference_in_array_access.d3133bf0c1bc11000c355c50d0fbb3c0_15" [label="15: Prune (true branch, if) \n n$12=*n$11:int* [line 13, column 7]\n n$13=*n$12[1]:int [line 13, column 7]\n PRUNE(n$13, true); [line 13, column 7]\n " shape="invhouse"] +"dereference_in_array_access.d3133bf0c1bc11000c355c50d0fbb3c0_15" [label="15: Prune (true branch, if) \n n$18=*n$17:int* [line 13, column 7]\n n$19=*n$18[1]:int [line 13, column 7]\n PRUNE(n$19, true); [line 13, column 7]\n " shape="invhouse"] "dereference_in_array_access.d3133bf0c1bc11000c355c50d0fbb3c0_15" -> "dereference_in_array_access.d3133bf0c1bc11000c355c50d0fbb3c0_13" ; -"dereference_in_array_access.d3133bf0c1bc11000c355c50d0fbb3c0_16" [label="16: Prune (false branch, if) \n n$12=*n$11:int* [line 13, column 7]\n n$13=*n$12[1]:int [line 13, column 7]\n PRUNE(!n$13, false); [line 13, column 7]\n " shape="invhouse"] +"dereference_in_array_access.d3133bf0c1bc11000c355c50d0fbb3c0_16" [label="16: Prune (false branch, if) \n n$18=*n$17:int* [line 13, column 7]\n n$19=*n$18[1]:int [line 13, column 7]\n PRUNE(!n$19, false); [line 13, column 7]\n " shape="invhouse"] "dereference_in_array_access.d3133bf0c1bc11000c355c50d0fbb3c0_16" -> "dereference_in_array_access.d3133bf0c1bc11000c355c50d0fbb3c0_13" ; @@ -71,11 +71,11 @@ digraph cfg { "dereference_in_array_access.d3133bf0c1bc11000c355c50d0fbb3c0_17" -> "dereference_in_array_access.d3133bf0c1bc11000c355c50d0fbb3c0_14" ; -"dereference_in_array_access.d3133bf0c1bc11000c355c50d0fbb3c0_18" [label="18: Prune (true branch, if) \n n$14=*&p:int** [line 11, column 7]\n n$15=*n$14[0]:int* [line 11, column 7]\n PRUNE(n$15, true); [line 11, column 7]\n " shape="invhouse"] +"dereference_in_array_access.d3133bf0c1bc11000c355c50d0fbb3c0_18" [label="18: Prune (true branch, if) \n n$23=*&p:int** [line 11, column 7]\n n$24=*n$23[0]:int* [line 11, column 7]\n PRUNE(n$24, true); [line 11, column 7]\n " shape="invhouse"] "dereference_in_array_access.d3133bf0c1bc11000c355c50d0fbb3c0_18" -> "dereference_in_array_access.d3133bf0c1bc11000c355c50d0fbb3c0_17" ; -"dereference_in_array_access.d3133bf0c1bc11000c355c50d0fbb3c0_19" [label="19: Prune (false branch, if) \n n$14=*&p:int** [line 11, column 7]\n n$15=*n$14[0]:int* [line 11, column 7]\n PRUNE(!n$15, false); [line 11, column 7]\n " shape="invhouse"] +"dereference_in_array_access.d3133bf0c1bc11000c355c50d0fbb3c0_19" [label="19: Prune (false branch, if) \n n$23=*&p:int** [line 11, column 7]\n n$24=*n$23[0]:int* [line 11, column 7]\n PRUNE(!n$24, false); [line 11, column 7]\n " shape="invhouse"] "dereference_in_array_access.d3133bf0c1bc11000c355c50d0fbb3c0_19" -> "dereference_in_array_access.d3133bf0c1bc11000c355c50d0fbb3c0_17" ; diff --git a/infer/tests/codetoanalyze/c/frontend/conditional_operator/binary_operator.c.dot b/infer/tests/codetoanalyze/c/frontend/conditional_operator/binary_operator.c.dot index f51abf11e..266e5c244 100644 --- a/infer/tests/codetoanalyze/c/frontend/conditional_operator/binary_operator.c.dot +++ b/infer/tests/codetoanalyze/c/frontend/conditional_operator/binary_operator.c.dot @@ -21,11 +21,11 @@ digraph cfg { "binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_5" -> "binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_7" ; -"binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_6" [label="6: ConditinalStmt Branch \n n$1=*&z:int [line 26, column 17]\n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int=n$1 [line 26, column 13]\n " shape="box"] +"binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_6" [label="6: ConditionalStmt Branch \n n$1=*&z:int [line 26, column 17]\n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int=n$1 [line 26, column 13]\n " shape="box"] "binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_6" -> "binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_3" ; -"binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_7" [label="7: ConditinalStmt Branch \n n$2=*&z:int [line 26, column 21]\n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int=n$2 [line 26, column 13]\n " shape="box"] +"binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_7" [label="7: ConditionalStmt Branch \n n$2=*&z:int [line 26, column 21]\n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int=n$2 [line 26, column 13]\n " shape="box"] "binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_7" -> "binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_3" ; @@ -41,11 +41,11 @@ digraph cfg { "binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_10" -> "binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_12" ; -"binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_11" [label="11: ConditinalStmt Branch \n n$5=*&z:int [line 26, column 31]\n *&0$?%__sil_tmpSIL_temp_conditional___n$4:int=n$5 [line 26, column 27]\n " shape="box"] +"binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_11" [label="11: ConditionalStmt Branch \n n$5=*&z:int [line 26, column 31]\n *&0$?%__sil_tmpSIL_temp_conditional___n$4:int=n$5 [line 26, column 27]\n " shape="box"] "binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_11" -> "binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_8" ; -"binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_12" [label="12: ConditinalStmt Branch \n n$6=*&z:int [line 26, column 35]\n *&0$?%__sil_tmpSIL_temp_conditional___n$4:int=n$6 [line 26, column 27]\n " shape="box"] +"binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_12" [label="12: ConditionalStmt Branch \n n$6=*&z:int [line 26, column 35]\n *&0$?%__sil_tmpSIL_temp_conditional___n$4:int=n$6 [line 26, column 27]\n " shape="box"] "binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_12" -> "binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_8" ; @@ -65,11 +65,11 @@ digraph cfg { "binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_16" -> "binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_18" ; -"binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_17" [label="17: ConditinalStmt Branch \n n$9=*&z:int [line 24, column 22]\n *&0$?%__sil_tmpSIL_temp_conditional___n$8:int=n$9 [line 24, column 18]\n " shape="box"] +"binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_17" [label="17: ConditionalStmt Branch \n n$9=*&z:int [line 24, column 22]\n *&0$?%__sil_tmpSIL_temp_conditional___n$8:int=n$9 [line 24, column 18]\n " shape="box"] "binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_17" -> "binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_14" ; -"binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_18" [label="18: ConditinalStmt Branch \n n$10=*&z:int [line 24, column 26]\n *&0$?%__sil_tmpSIL_temp_conditional___n$8:int=n$10 [line 24, column 18]\n " shape="box"] +"binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_18" [label="18: ConditionalStmt Branch \n n$10=*&z:int [line 24, column 26]\n *&0$?%__sil_tmpSIL_temp_conditional___n$8:int=n$10 [line 24, column 18]\n " shape="box"] "binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_18" -> "binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_14" ; @@ -90,11 +90,11 @@ digraph cfg { "binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_22" -> "binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_24" ; -"binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_23" [label="23: ConditinalStmt Branch \n n$13=*&z:int [line 22, column 17]\n *&0$?%__sil_tmpSIL_temp_conditional___n$12:int=n$13 [line 22, column 13]\n " shape="box"] +"binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_23" [label="23: ConditionalStmt Branch \n n$13=*&z:int [line 22, column 17]\n *&0$?%__sil_tmpSIL_temp_conditional___n$12:int=n$13 [line 22, column 13]\n " shape="box"] "binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_23" -> "binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_20" ; -"binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_24" [label="24: ConditinalStmt Branch \n n$14=*&z:int [line 22, column 21]\n *&0$?%__sil_tmpSIL_temp_conditional___n$12:int=n$14 [line 22, column 13]\n " shape="box"] +"binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_24" [label="24: ConditionalStmt Branch \n n$14=*&z:int [line 22, column 21]\n *&0$?%__sil_tmpSIL_temp_conditional___n$12:int=n$14 [line 22, column 13]\n " shape="box"] "binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_24" -> "binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_20" ; @@ -116,11 +116,11 @@ digraph cfg { "binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_28" -> "binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_30" ; -"binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_29" [label="29: ConditinalStmt Branch \n n$17=*&z:int [line 19, column 13]\n *&0$?%__sil_tmpSIL_temp_conditional___n$16:int=n$17 [line 19, column 9]\n " shape="box"] +"binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_29" [label="29: ConditionalStmt Branch \n n$17=*&z:int [line 19, column 13]\n *&0$?%__sil_tmpSIL_temp_conditional___n$16:int=n$17 [line 19, column 9]\n " shape="box"] "binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_29" -> "binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_26" ; -"binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_30" [label="30: ConditinalStmt Branch \n n$18=*&z:int [line 19, column 17]\n *&0$?%__sil_tmpSIL_temp_conditional___n$16:int=n$18 [line 19, column 9]\n " shape="box"] +"binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_30" [label="30: ConditionalStmt Branch \n n$18=*&z:int [line 19, column 17]\n *&0$?%__sil_tmpSIL_temp_conditional___n$16:int=n$18 [line 19, column 9]\n " shape="box"] "binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_30" -> "binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_26" ; @@ -136,11 +136,11 @@ digraph cfg { "binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_33" -> "binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_35" ; -"binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_34" [label="34: ConditinalStmt Branch \n n$21=*&z:int [line 19, column 27]\n *&0$?%__sil_tmpSIL_temp_conditional___n$20:int=n$21 [line 19, column 23]\n " shape="box"] +"binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_34" [label="34: ConditionalStmt Branch \n n$21=*&z:int [line 19, column 27]\n *&0$?%__sil_tmpSIL_temp_conditional___n$20:int=n$21 [line 19, column 23]\n " shape="box"] "binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_34" -> "binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_31" ; -"binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_35" [label="35: ConditinalStmt Branch \n n$22=*&z:int [line 19, column 31]\n *&0$?%__sil_tmpSIL_temp_conditional___n$20:int=n$22 [line 19, column 23]\n " shape="box"] +"binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_35" [label="35: ConditionalStmt Branch \n n$22=*&z:int [line 19, column 31]\n *&0$?%__sil_tmpSIL_temp_conditional___n$20:int=n$22 [line 19, column 23]\n " shape="box"] "binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_35" -> "binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_31" ; @@ -161,11 +161,11 @@ digraph cfg { "binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_39" -> "binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_41" ; -"binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_40" [label="40: ConditinalStmt Branch \n n$25=*&z:int [line 16, column 18]\n *&0$?%__sil_tmpSIL_temp_conditional___n$24:int=n$25 [line 16, column 14]\n " shape="box"] +"binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_40" [label="40: ConditionalStmt Branch \n n$25=*&z:int [line 16, column 18]\n *&0$?%__sil_tmpSIL_temp_conditional___n$24:int=n$25 [line 16, column 14]\n " shape="box"] "binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_40" -> "binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_37" ; -"binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_41" [label="41: ConditinalStmt Branch \n n$26=*&z:int [line 16, column 22]\n *&0$?%__sil_tmpSIL_temp_conditional___n$24:int=n$26 [line 16, column 14]\n " shape="box"] +"binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_41" [label="41: ConditionalStmt Branch \n n$26=*&z:int [line 16, column 22]\n *&0$?%__sil_tmpSIL_temp_conditional___n$24:int=n$26 [line 16, column 14]\n " shape="box"] "binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_41" -> "binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_37" ; @@ -186,11 +186,11 @@ digraph cfg { "binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_45" -> "binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_47" ; -"binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_46" [label="46: ConditinalStmt Branch \n n$29=*&z:int [line 13, column 13]\n *&0$?%__sil_tmpSIL_temp_conditional___n$28:int=n$29 [line 13, column 9]\n " shape="box"] +"binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_46" [label="46: ConditionalStmt Branch \n n$29=*&z:int [line 13, column 13]\n *&0$?%__sil_tmpSIL_temp_conditional___n$28:int=n$29 [line 13, column 9]\n " shape="box"] "binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_46" -> "binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_43" ; -"binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_47" [label="47: ConditinalStmt Branch \n n$30=*&z:int [line 13, column 17]\n *&0$?%__sil_tmpSIL_temp_conditional___n$28:int=n$30 [line 13, column 9]\n " shape="box"] +"binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_47" [label="47: ConditionalStmt Branch \n n$30=*&z:int [line 13, column 17]\n *&0$?%__sil_tmpSIL_temp_conditional___n$28:int=n$30 [line 13, column 9]\n " shape="box"] "binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_47" -> "binop_with_side_effects.9cbc0255c95bd7e0ccf9d7a826fa2a2d_43" ; diff --git a/infer/tests/codetoanalyze/c/frontend/conditional_operator/cond2.c.dot b/infer/tests/codetoanalyze/c/frontend/conditional_operator/cond2.c.dot index 37a237879..8ca746914 100644 --- a/infer/tests/codetoanalyze/c/frontend/conditional_operator/cond2.c.dot +++ b/infer/tests/codetoanalyze/c/frontend/conditional_operator/cond2.c.dot @@ -23,11 +23,11 @@ digraph cfg { "bar.37b51d194a7513e45b56f6524f2d51f2_6" -> "bar.37b51d194a7513e45b56f6524f2d51f2_8" ; -"bar.37b51d194a7513e45b56f6524f2d51f2_7" [label="7: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$1:int=1 [line 24, column 17]\n " shape="box"] +"bar.37b51d194a7513e45b56f6524f2d51f2_7" [label="7: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$1:int=1 [line 24, column 17]\n " shape="box"] "bar.37b51d194a7513e45b56f6524f2d51f2_7" -> "bar.37b51d194a7513e45b56f6524f2d51f2_4" ; -"bar.37b51d194a7513e45b56f6524f2d51f2_8" [label="8: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$1:int=2 [line 24, column 17]\n " shape="box"] +"bar.37b51d194a7513e45b56f6524f2d51f2_8" [label="8: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$1:int=2 [line 24, column 17]\n " shape="box"] "bar.37b51d194a7513e45b56f6524f2d51f2_8" -> "bar.37b51d194a7513e45b56f6524f2d51f2_4" ; @@ -44,11 +44,11 @@ digraph cfg { "bar.37b51d194a7513e45b56f6524f2d51f2_11" -> "bar.37b51d194a7513e45b56f6524f2d51f2_13" ; -"bar.37b51d194a7513e45b56f6524f2d51f2_12" [label="12: ConditinalStmt Branch \n *&x:int=1 [line 24, column 39]\n n$3=*&x:int [line 24, column 39]\n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int=n$3 [line 24, column 16]\n " shape="box"] +"bar.37b51d194a7513e45b56f6524f2d51f2_12" [label="12: ConditionalStmt Branch \n *&x:int=1 [line 24, column 39]\n n$3=*&x:int [line 24, column 39]\n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int=n$3 [line 24, column 16]\n " shape="box"] "bar.37b51d194a7513e45b56f6524f2d51f2_12" -> "bar.37b51d194a7513e45b56f6524f2d51f2_3" ; -"bar.37b51d194a7513e45b56f6524f2d51f2_13" [label="13: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int=0 [line 24, column 16]\n " shape="box"] +"bar.37b51d194a7513e45b56f6524f2d51f2_13" [label="13: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int=0 [line 24, column 16]\n " shape="box"] "bar.37b51d194a7513e45b56f6524f2d51f2_13" -> "bar.37b51d194a7513e45b56f6524f2d51f2_3" ; @@ -73,11 +73,11 @@ digraph cfg { "bar.37b51d194a7513e45b56f6524f2d51f2_18" -> "bar.37b51d194a7513e45b56f6524f2d51f2_20" ; -"bar.37b51d194a7513e45b56f6524f2d51f2_19" [label="19: ConditinalStmt Branch \n n$7=*&x:int [line 23, column 22]\n *&x:int=(n$7 + 1) [line 23, column 22]\n *&0$?%__sil_tmpSIL_temp_conditional___n$5:int=(n$7 + 1) [line 23, column 7]\n " shape="box"] +"bar.37b51d194a7513e45b56f6524f2d51f2_19" [label="19: ConditionalStmt Branch \n n$7=*&x:int [line 23, column 22]\n *&x:int=(n$7 + 1) [line 23, column 22]\n *&0$?%__sil_tmpSIL_temp_conditional___n$5:int=(n$7 + 1) [line 23, column 7]\n " shape="box"] "bar.37b51d194a7513e45b56f6524f2d51f2_19" -> "bar.37b51d194a7513e45b56f6524f2d51f2_15" ; -"bar.37b51d194a7513e45b56f6524f2d51f2_20" [label="20: ConditinalStmt Branch \n n$8=*&x:int [line 23, column 30]\n *&x:int=(n$8 - 1) [line 23, column 30]\n *&0$?%__sil_tmpSIL_temp_conditional___n$5:int=n$8 [line 23, column 7]\n " shape="box"] +"bar.37b51d194a7513e45b56f6524f2d51f2_20" [label="20: ConditionalStmt Branch \n n$8=*&x:int [line 23, column 30]\n *&x:int=(n$8 - 1) [line 23, column 30]\n *&0$?%__sil_tmpSIL_temp_conditional___n$5:int=n$8 [line 23, column 7]\n " shape="box"] "bar.37b51d194a7513e45b56f6524f2d51f2_20" -> "bar.37b51d194a7513e45b56f6524f2d51f2_15" ; @@ -105,11 +105,11 @@ digraph cfg { "foo.acbd18db4cc2f85cedef654fccc4a4d8_5" -> "foo.acbd18db4cc2f85cedef654fccc4a4d8_7" ; -"foo.acbd18db4cc2f85cedef654fccc4a4d8_6" [label="6: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int=1 [line 18, column 16]\n " shape="box"] +"foo.acbd18db4cc2f85cedef654fccc4a4d8_6" [label="6: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int=1 [line 18, column 16]\n " shape="box"] "foo.acbd18db4cc2f85cedef654fccc4a4d8_6" -> "foo.acbd18db4cc2f85cedef654fccc4a4d8_3" ; -"foo.acbd18db4cc2f85cedef654fccc4a4d8_7" [label="7: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int=0 [line 18, column 16]\n " shape="box"] +"foo.acbd18db4cc2f85cedef654fccc4a4d8_7" [label="7: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int=0 [line 18, column 16]\n " shape="box"] "foo.acbd18db4cc2f85cedef654fccc4a4d8_7" -> "foo.acbd18db4cc2f85cedef654fccc4a4d8_3" ; @@ -130,7 +130,7 @@ digraph cfg { "foo.acbd18db4cc2f85cedef654fccc4a4d8_11" -> "foo.acbd18db4cc2f85cedef654fccc4a4d8_14" ; "foo.acbd18db4cc2f85cedef654fccc4a4d8_11" -> "foo.acbd18db4cc2f85cedef654fccc4a4d8_15" ; -"foo.acbd18db4cc2f85cedef654fccc4a4d8_12" [label="12: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$2:int=1 [line 17, column 8]\n " shape="box"] +"foo.acbd18db4cc2f85cedef654fccc4a4d8_12" [label="12: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$2:int=1 [line 17, column 8]\n " shape="box"] "foo.acbd18db4cc2f85cedef654fccc4a4d8_12" -> "foo.acbd18db4cc2f85cedef654fccc4a4d8_9" ; @@ -146,15 +146,15 @@ digraph cfg { "foo.acbd18db4cc2f85cedef654fccc4a4d8_15" -> "foo.acbd18db4cc2f85cedef654fccc4a4d8_17" ; -"foo.acbd18db4cc2f85cedef654fccc4a4d8_16" [label="16: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$3:int=1 [line 17, column 21]\n " shape="box"] +"foo.acbd18db4cc2f85cedef654fccc4a4d8_16" [label="16: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$3:int=1 [line 17, column 21]\n " shape="box"] "foo.acbd18db4cc2f85cedef654fccc4a4d8_16" -> "foo.acbd18db4cc2f85cedef654fccc4a4d8_13" ; -"foo.acbd18db4cc2f85cedef654fccc4a4d8_17" [label="17: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$3:int=2 [line 17, column 21]\n " shape="box"] +"foo.acbd18db4cc2f85cedef654fccc4a4d8_17" [label="17: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$3:int=2 [line 17, column 21]\n " shape="box"] "foo.acbd18db4cc2f85cedef654fccc4a4d8_17" -> "foo.acbd18db4cc2f85cedef654fccc4a4d8_13" ; -"foo.acbd18db4cc2f85cedef654fccc4a4d8_18" [label="18: ConditinalStmt Branch \n n$4=*&0$?%__sil_tmpSIL_temp_conditional___n$3:int [line 17, column 21]\n *&0$?%__sil_tmpSIL_temp_conditional___n$2:int=n$4 [line 17, column 8]\n " shape="box"] +"foo.acbd18db4cc2f85cedef654fccc4a4d8_18" [label="18: ConditionalStmt Branch \n n$4=*&0$?%__sil_tmpSIL_temp_conditional___n$3:int [line 17, column 21]\n *&0$?%__sil_tmpSIL_temp_conditional___n$2:int=n$4 [line 17, column 8]\n " shape="box"] "foo.acbd18db4cc2f85cedef654fccc4a4d8_18" -> "foo.acbd18db4cc2f85cedef654fccc4a4d8_9" ; @@ -188,11 +188,11 @@ digraph cfg { "foo.acbd18db4cc2f85cedef654fccc4a4d8_25" -> "foo.acbd18db4cc2f85cedef654fccc4a4d8_27" ; -"foo.acbd18db4cc2f85cedef654fccc4a4d8_26" [label="26: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$6:int=1 [line 16, column 12]\n " shape="box"] +"foo.acbd18db4cc2f85cedef654fccc4a4d8_26" [label="26: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$6:int=1 [line 16, column 12]\n " shape="box"] "foo.acbd18db4cc2f85cedef654fccc4a4d8_26" -> "foo.acbd18db4cc2f85cedef654fccc4a4d8_20" ; -"foo.acbd18db4cc2f85cedef654fccc4a4d8_27" [label="27: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$6:int=2 [line 16, column 12]\n " shape="box"] +"foo.acbd18db4cc2f85cedef654fccc4a4d8_27" [label="27: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$6:int=2 [line 16, column 12]\n " shape="box"] "foo.acbd18db4cc2f85cedef654fccc4a4d8_27" -> "foo.acbd18db4cc2f85cedef654fccc4a4d8_20" ; @@ -218,16 +218,16 @@ digraph cfg { "foo.acbd18db4cc2f85cedef654fccc4a4d8_32" -> "foo.acbd18db4cc2f85cedef654fccc4a4d8_33" ; -"foo.acbd18db4cc2f85cedef654fccc4a4d8_33" [label="33: BinaryOperatorStmt: LT \n n$10=*&x:int [line 12, column 21]\n *&x:int=(n$10 + 1) [line 12, column 21]\n " shape="box"] +"foo.acbd18db4cc2f85cedef654fccc4a4d8_33" [label="33: BinaryOperatorStmt: LT \n n$11=*&x:int [line 12, column 21]\n *&x:int=(n$11 + 1) [line 12, column 21]\n " shape="box"] "foo.acbd18db4cc2f85cedef654fccc4a4d8_33" -> "foo.acbd18db4cc2f85cedef654fccc4a4d8_34" ; "foo.acbd18db4cc2f85cedef654fccc4a4d8_33" -> "foo.acbd18db4cc2f85cedef654fccc4a4d8_35" ; -"foo.acbd18db4cc2f85cedef654fccc4a4d8_34" [label="34: Prune (true branch, if) \n PRUNE((7 < n$10), true); [line 12, column 16]\n " shape="invhouse"] +"foo.acbd18db4cc2f85cedef654fccc4a4d8_34" [label="34: Prune (true branch, if) \n PRUNE((7 < n$11), true); [line 12, column 16]\n " shape="invhouse"] "foo.acbd18db4cc2f85cedef654fccc4a4d8_34" -> "foo.acbd18db4cc2f85cedef654fccc4a4d8_36" ; -"foo.acbd18db4cc2f85cedef654fccc4a4d8_35" [label="35: Prune (false branch, if) \n PRUNE(!(7 < n$10), false); [line 12, column 16]\n " shape="invhouse"] +"foo.acbd18db4cc2f85cedef654fccc4a4d8_35" [label="35: Prune (false branch, if) \n PRUNE(!(7 < n$11), false); [line 12, column 16]\n " shape="invhouse"] "foo.acbd18db4cc2f85cedef654fccc4a4d8_35" -> "foo.acbd18db4cc2f85cedef654fccc4a4d8_30" ; diff --git a/infer/tests/codetoanalyze/c/frontend/conditional_operator/conditional_operator.c.dot b/infer/tests/codetoanalyze/c/frontend/conditional_operator/conditional_operator.c.dot index 0fdee54bc..b189637bd 100644 --- a/infer/tests/codetoanalyze/c/frontend/conditional_operator/conditional_operator.c.dot +++ b/infer/tests/codetoanalyze/c/frontend/conditional_operator/conditional_operator.c.dot @@ -20,11 +20,11 @@ digraph cfg { "test.098f6bcd4621d373cade4e832627b4f6_5" -> "test.098f6bcd4621d373cade4e832627b4f6_7" ; -"test.098f6bcd4621d373cade4e832627b4f6_6" [label="6: ConditinalStmt Branch \n n$2=*&b:int [line 14, column 36]\n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int=n$2 [line 14, column 32]\n " shape="box"] +"test.098f6bcd4621d373cade4e832627b4f6_6" [label="6: ConditionalStmt Branch \n n$2=*&b:int [line 14, column 36]\n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int=n$2 [line 14, column 32]\n " shape="box"] "test.098f6bcd4621d373cade4e832627b4f6_6" -> "test.098f6bcd4621d373cade4e832627b4f6_3" ; -"test.098f6bcd4621d373cade4e832627b4f6_7" [label="7: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int=1 [line 14, column 32]\n " shape="box"] +"test.098f6bcd4621d373cade4e832627b4f6_7" [label="7: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int=1 [line 14, column 32]\n " shape="box"] "test.098f6bcd4621d373cade4e832627b4f6_7" -> "test.098f6bcd4621d373cade4e832627b4f6_3" ; @@ -56,11 +56,11 @@ digraph cfg { "test1.5a105e8b9d40e1329780d62ea2265d8a_6" -> "test1.5a105e8b9d40e1329780d62ea2265d8a_8" ; -"test1.5a105e8b9d40e1329780d62ea2265d8a_7" [label="7: ConditinalStmt Branch \n n$3=*&b:int [line 17, column 15]\n *&0$?%__sil_tmpSIL_temp_conditional___n$1:int=n$3 [line 17, column 11]\n " shape="box"] +"test1.5a105e8b9d40e1329780d62ea2265d8a_7" [label="7: ConditionalStmt Branch \n n$3=*&b:int [line 17, column 15]\n *&0$?%__sil_tmpSIL_temp_conditional___n$1:int=n$3 [line 17, column 11]\n " shape="box"] "test1.5a105e8b9d40e1329780d62ea2265d8a_7" -> "test1.5a105e8b9d40e1329780d62ea2265d8a_4" ; -"test1.5a105e8b9d40e1329780d62ea2265d8a_8" [label="8: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$1:int=1 [line 17, column 11]\n " shape="box"] +"test1.5a105e8b9d40e1329780d62ea2265d8a_8" [label="8: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$1:int=1 [line 17, column 11]\n " shape="box"] "test1.5a105e8b9d40e1329780d62ea2265d8a_8" -> "test1.5a105e8b9d40e1329780d62ea2265d8a_4" ; @@ -102,15 +102,15 @@ digraph cfg { "test3.8ad8757baa8564dc136c1e07507f4a98_6" -> "test3.8ad8757baa8564dc136c1e07507f4a98_8" ; -"test3.8ad8757baa8564dc136c1e07507f4a98_7" [label="7: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$2:int=n$1 [line 22, column 11]\n " shape="box"] +"test3.8ad8757baa8564dc136c1e07507f4a98_7" [label="7: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$2:int=n$1 [line 22, column 11]\n " shape="box"] "test3.8ad8757baa8564dc136c1e07507f4a98_7" -> "test3.8ad8757baa8564dc136c1e07507f4a98_4" ; -"test3.8ad8757baa8564dc136c1e07507f4a98_8" [label="8: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$2:int=1 [line 22, column 11]\n " shape="box"] +"test3.8ad8757baa8564dc136c1e07507f4a98_8" [label="8: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$2:int=1 [line 22, column 11]\n " shape="box"] "test3.8ad8757baa8564dc136c1e07507f4a98_8" -> "test3.8ad8757baa8564dc136c1e07507f4a98_4" ; -"test3.8ad8757baa8564dc136c1e07507f4a98_9" [label="9: BinaryConditinalStmt Init \n n$1=*&b:int [line 22, column 11]\n " shape="box"] +"test3.8ad8757baa8564dc136c1e07507f4a98_9" [label="9: BinaryConditionalStmt Init \n n$1=*&b:int [line 22, column 11]\n " shape="box"] "test3.8ad8757baa8564dc136c1e07507f4a98_9" -> "test3.8ad8757baa8564dc136c1e07507f4a98_5" ; @@ -138,15 +138,15 @@ digraph cfg { "test4.86985e105f79b95d6bc918fb45ec7727_5" -> "test4.86985e105f79b95d6bc918fb45ec7727_7" ; -"test4.86985e105f79b95d6bc918fb45ec7727_6" [label="6: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$1:int=n$0 [line 26, column 33]\n " shape="box"] +"test4.86985e105f79b95d6bc918fb45ec7727_6" [label="6: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$1:int=n$0 [line 26, column 33]\n " shape="box"] "test4.86985e105f79b95d6bc918fb45ec7727_6" -> "test4.86985e105f79b95d6bc918fb45ec7727_3" ; -"test4.86985e105f79b95d6bc918fb45ec7727_7" [label="7: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$1:int=1 [line 26, column 33]\n " shape="box"] +"test4.86985e105f79b95d6bc918fb45ec7727_7" [label="7: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$1:int=1 [line 26, column 33]\n " shape="box"] "test4.86985e105f79b95d6bc918fb45ec7727_7" -> "test4.86985e105f79b95d6bc918fb45ec7727_3" ; -"test4.86985e105f79b95d6bc918fb45ec7727_8" [label="8: BinaryConditinalStmt Init \n n$0=*&b:int [line 26, column 33]\n " shape="box"] +"test4.86985e105f79b95d6bc918fb45ec7727_8" [label="8: BinaryConditionalStmt Init \n n$0=*&b:int [line 26, column 33]\n " shape="box"] "test4.86985e105f79b95d6bc918fb45ec7727_8" -> "test4.86985e105f79b95d6bc918fb45ec7727_4" ; @@ -174,15 +174,15 @@ digraph cfg { "test5.e3d704f3542b44a621ebed70dc0efe13_5" -> "test5.e3d704f3542b44a621ebed70dc0efe13_7" ; -"test5.e3d704f3542b44a621ebed70dc0efe13_6" [label="6: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$1:int=n$0 [line 28, column 27]\n " shape="box"] +"test5.e3d704f3542b44a621ebed70dc0efe13_6" [label="6: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$1:int=n$0 [line 28, column 27]\n " shape="box"] "test5.e3d704f3542b44a621ebed70dc0efe13_6" -> "test5.e3d704f3542b44a621ebed70dc0efe13_3" ; -"test5.e3d704f3542b44a621ebed70dc0efe13_7" [label="7: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$1:int=1 [line 28, column 27]\n " shape="box"] +"test5.e3d704f3542b44a621ebed70dc0efe13_7" [label="7: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$1:int=1 [line 28, column 27]\n " shape="box"] "test5.e3d704f3542b44a621ebed70dc0efe13_7" -> "test5.e3d704f3542b44a621ebed70dc0efe13_3" ; -"test5.e3d704f3542b44a621ebed70dc0efe13_8" [label="8: BinaryConditinalStmt Init \n n$0=*&b:int [line 28, column 27]\n " shape="box"] +"test5.e3d704f3542b44a621ebed70dc0efe13_8" [label="8: BinaryConditionalStmt Init \n n$0=*&b:int [line 28, column 27]\n " shape="box"] "test5.e3d704f3542b44a621ebed70dc0efe13_8" -> "test5.e3d704f3542b44a621ebed70dc0efe13_4" ; @@ -215,11 +215,11 @@ digraph cfg { "test6.4cfad7076129962ee70c36839a1e3e15_6" -> "test6.4cfad7076129962ee70c36839a1e3e15_8" ; -"test6.4cfad7076129962ee70c36839a1e3e15_7" [label="7: ConditinalStmt Branch \n n$2=*&p:int* [line 31, column 16]\n n$3=*n$2:int [line 31, column 15]\n *&0$?%__sil_tmpSIL_temp_conditional___n$1:int=n$3 [line 31, column 11]\n " shape="box"] +"test6.4cfad7076129962ee70c36839a1e3e15_7" [label="7: ConditionalStmt Branch \n n$2=*&p:int* [line 31, column 16]\n n$3=*n$2:int [line 31, column 15]\n *&0$?%__sil_tmpSIL_temp_conditional___n$1:int=n$3 [line 31, column 11]\n " shape="box"] "test6.4cfad7076129962ee70c36839a1e3e15_7" -> "test6.4cfad7076129962ee70c36839a1e3e15_4" ; -"test6.4cfad7076129962ee70c36839a1e3e15_8" [label="8: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$1:int=0 [line 31, column 11]\n " shape="box"] +"test6.4cfad7076129962ee70c36839a1e3e15_8" [label="8: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$1:int=0 [line 31, column 11]\n " shape="box"] "test6.4cfad7076129962ee70c36839a1e3e15_8" -> "test6.4cfad7076129962ee70c36839a1e3e15_4" ; @@ -246,15 +246,15 @@ digraph cfg { "test7.b04083e53e242626595e2b8ea327e525_5" -> "test7.b04083e53e242626595e2b8ea327e525_7" ; -"test7.b04083e53e242626595e2b8ea327e525_6" [label="6: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$2:int=n$1 [line 35, column 27]\n " shape="box"] +"test7.b04083e53e242626595e2b8ea327e525_6" [label="6: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$2:int=n$1 [line 35, column 27]\n " shape="box"] "test7.b04083e53e242626595e2b8ea327e525_6" -> "test7.b04083e53e242626595e2b8ea327e525_3" ; -"test7.b04083e53e242626595e2b8ea327e525_7" [label="7: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$2:int=2 [line 35, column 27]\n " shape="box"] +"test7.b04083e53e242626595e2b8ea327e525_7" [label="7: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$2:int=2 [line 35, column 27]\n " shape="box"] "test7.b04083e53e242626595e2b8ea327e525_7" -> "test7.b04083e53e242626595e2b8ea327e525_3" ; -"test7.b04083e53e242626595e2b8ea327e525_8" [label="8: BinaryConditinalStmt Init \n n$0=_fun_test2(2:int) [line 35, column 37]\n n$1=_fun_test2((2 + n$0):int) [line 35, column 27]\n " shape="box"] +"test7.b04083e53e242626595e2b8ea327e525_8" [label="8: BinaryConditionalStmt Init \n n$0=_fun_test2(2:int) [line 35, column 37]\n n$1=_fun_test2((2 + n$0):int) [line 35, column 27]\n " shape="box"] "test7.b04083e53e242626595e2b8ea327e525_8" -> "test7.b04083e53e242626595e2b8ea327e525_4" ; diff --git a/infer/tests/codetoanalyze/c/frontend/conditional_operator/function_call.c.dot b/infer/tests/codetoanalyze/c/frontend/conditional_operator/function_call.c.dot index 7bbb4517b..20780f009 100644 --- a/infer/tests/codetoanalyze/c/frontend/conditional_operator/function_call.c.dot +++ b/infer/tests/codetoanalyze/c/frontend/conditional_operator/function_call.c.dot @@ -20,11 +20,11 @@ digraph cfg { "fun_ifthenelse1.6d810dc9f25b2ded52969d35a73b5fb3_5" -> "fun_ifthenelse1.6d810dc9f25b2ded52969d35a73b5fb3_7" ; -"fun_ifthenelse1.6d810dc9f25b2ded52969d35a73b5fb3_6" [label="6: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:_fn_(*)=_fun_some_f [line 12, column 27]\n " shape="box"] +"fun_ifthenelse1.6d810dc9f25b2ded52969d35a73b5fb3_6" [label="6: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:_fn_(*)=_fun_some_f [line 12, column 27]\n " shape="box"] "fun_ifthenelse1.6d810dc9f25b2ded52969d35a73b5fb3_6" -> "fun_ifthenelse1.6d810dc9f25b2ded52969d35a73b5fb3_3" ; -"fun_ifthenelse1.6d810dc9f25b2ded52969d35a73b5fb3_7" [label="7: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:_fn_(*)=_fun_some_f [line 12, column 27]\n " shape="box"] +"fun_ifthenelse1.6d810dc9f25b2ded52969d35a73b5fb3_7" [label="7: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:_fn_(*)=_fun_some_f [line 12, column 27]\n " shape="box"] "fun_ifthenelse1.6d810dc9f25b2ded52969d35a73b5fb3_7" -> "fun_ifthenelse1.6d810dc9f25b2ded52969d35a73b5fb3_3" ; @@ -53,11 +53,11 @@ digraph cfg { "fun_ifthenelse2.d4d0fea4695ba22ddab12e33d11e81f2_5" -> "fun_ifthenelse2.d4d0fea4695ba22ddab12e33d11e81f2_7" ; -"fun_ifthenelse2.d4d0fea4695ba22ddab12e33d11e81f2_6" [label="6: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:_fn_(*)=_fun_some_f [line 15, column 4]\n " shape="box"] +"fun_ifthenelse2.d4d0fea4695ba22ddab12e33d11e81f2_6" [label="6: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:_fn_(*)=_fun_some_f [line 15, column 4]\n " shape="box"] "fun_ifthenelse2.d4d0fea4695ba22ddab12e33d11e81f2_6" -> "fun_ifthenelse2.d4d0fea4695ba22ddab12e33d11e81f2_3" ; -"fun_ifthenelse2.d4d0fea4695ba22ddab12e33d11e81f2_7" [label="7: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:_fn_(*)=_fun_some_f [line 15, column 4]\n " shape="box"] +"fun_ifthenelse2.d4d0fea4695ba22ddab12e33d11e81f2_7" [label="7: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:_fn_(*)=_fun_some_f [line 15, column 4]\n " shape="box"] "fun_ifthenelse2.d4d0fea4695ba22ddab12e33d11e81f2_7" -> "fun_ifthenelse2.d4d0fea4695ba22ddab12e33d11e81f2_3" ; @@ -74,11 +74,11 @@ digraph cfg { "fun_ifthenelse2.d4d0fea4695ba22ddab12e33d11e81f2_10" -> "fun_ifthenelse2.d4d0fea4695ba22ddab12e33d11e81f2_12" ; -"fun_ifthenelse2.d4d0fea4695ba22ddab12e33d11e81f2_11" [label="11: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$2:int=1 [line 15, column 25]\n " shape="box"] +"fun_ifthenelse2.d4d0fea4695ba22ddab12e33d11e81f2_11" [label="11: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$2:int=1 [line 15, column 25]\n " shape="box"] "fun_ifthenelse2.d4d0fea4695ba22ddab12e33d11e81f2_11" -> "fun_ifthenelse2.d4d0fea4695ba22ddab12e33d11e81f2_8" ; -"fun_ifthenelse2.d4d0fea4695ba22ddab12e33d11e81f2_12" [label="12: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$2:int=1 [line 15, column 25]\n " shape="box"] +"fun_ifthenelse2.d4d0fea4695ba22ddab12e33d11e81f2_12" [label="12: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$2:int=1 [line 15, column 25]\n " shape="box"] "fun_ifthenelse2.d4d0fea4695ba22ddab12e33d11e81f2_12" -> "fun_ifthenelse2.d4d0fea4695ba22ddab12e33d11e81f2_8" ; @@ -95,11 +95,11 @@ digraph cfg { "fun_ifthenelse2.d4d0fea4695ba22ddab12e33d11e81f2_15" -> "fun_ifthenelse2.d4d0fea4695ba22ddab12e33d11e81f2_17" ; -"fun_ifthenelse2.d4d0fea4695ba22ddab12e33d11e81f2_16" [label="16: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$4:int=2 [line 15, column 36]\n " shape="box"] +"fun_ifthenelse2.d4d0fea4695ba22ddab12e33d11e81f2_16" [label="16: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$4:int=2 [line 15, column 36]\n " shape="box"] "fun_ifthenelse2.d4d0fea4695ba22ddab12e33d11e81f2_16" -> "fun_ifthenelse2.d4d0fea4695ba22ddab12e33d11e81f2_13" ; -"fun_ifthenelse2.d4d0fea4695ba22ddab12e33d11e81f2_17" [label="17: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$4:int=2 [line 15, column 36]\n " shape="box"] +"fun_ifthenelse2.d4d0fea4695ba22ddab12e33d11e81f2_17" [label="17: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$4:int=2 [line 15, column 36]\n " shape="box"] "fun_ifthenelse2.d4d0fea4695ba22ddab12e33d11e81f2_17" -> "fun_ifthenelse2.d4d0fea4695ba22ddab12e33d11e81f2_13" ; @@ -115,11 +115,11 @@ digraph cfg { "fun_ifthenelse2.d4d0fea4695ba22ddab12e33d11e81f2_20" -> "fun_ifthenelse2.d4d0fea4695ba22ddab12e33d11e81f2_22" ; -"fun_ifthenelse2.d4d0fea4695ba22ddab12e33d11e81f2_21" [label="21: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$6:int=3 [line 15, column 47]\n " shape="box"] +"fun_ifthenelse2.d4d0fea4695ba22ddab12e33d11e81f2_21" [label="21: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$6:int=3 [line 15, column 47]\n " shape="box"] "fun_ifthenelse2.d4d0fea4695ba22ddab12e33d11e81f2_21" -> "fun_ifthenelse2.d4d0fea4695ba22ddab12e33d11e81f2_18" ; -"fun_ifthenelse2.d4d0fea4695ba22ddab12e33d11e81f2_22" [label="22: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$6:int=3 [line 15, column 47]\n " shape="box"] +"fun_ifthenelse2.d4d0fea4695ba22ddab12e33d11e81f2_22" [label="22: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$6:int=3 [line 15, column 47]\n " shape="box"] "fun_ifthenelse2.d4d0fea4695ba22ddab12e33d11e81f2_22" -> "fun_ifthenelse2.d4d0fea4695ba22ddab12e33d11e81f2_18" ; @@ -148,11 +148,11 @@ digraph cfg { "fun_ifthenelse3.c62f5c24a34473fea151d2d63cdc87c6_5" -> "fun_ifthenelse3.c62f5c24a34473fea151d2d63cdc87c6_7" ; -"fun_ifthenelse3.c62f5c24a34473fea151d2d63cdc87c6_6" [label="6: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int=1 [line 18, column 33]\n " shape="box"] +"fun_ifthenelse3.c62f5c24a34473fea151d2d63cdc87c6_6" [label="6: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int=1 [line 18, column 33]\n " shape="box"] "fun_ifthenelse3.c62f5c24a34473fea151d2d63cdc87c6_6" -> "fun_ifthenelse3.c62f5c24a34473fea151d2d63cdc87c6_3" ; -"fun_ifthenelse3.c62f5c24a34473fea151d2d63cdc87c6_7" [label="7: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int=1 [line 18, column 33]\n " shape="box"] +"fun_ifthenelse3.c62f5c24a34473fea151d2d63cdc87c6_7" [label="7: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int=1 [line 18, column 33]\n " shape="box"] "fun_ifthenelse3.c62f5c24a34473fea151d2d63cdc87c6_7" -> "fun_ifthenelse3.c62f5c24a34473fea151d2d63cdc87c6_3" ; @@ -169,11 +169,11 @@ digraph cfg { "fun_ifthenelse3.c62f5c24a34473fea151d2d63cdc87c6_10" -> "fun_ifthenelse3.c62f5c24a34473fea151d2d63cdc87c6_12" ; -"fun_ifthenelse3.c62f5c24a34473fea151d2d63cdc87c6_11" [label="11: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$2:int=2 [line 18, column 44]\n " shape="box"] +"fun_ifthenelse3.c62f5c24a34473fea151d2d63cdc87c6_11" [label="11: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$2:int=2 [line 18, column 44]\n " shape="box"] "fun_ifthenelse3.c62f5c24a34473fea151d2d63cdc87c6_11" -> "fun_ifthenelse3.c62f5c24a34473fea151d2d63cdc87c6_8" ; -"fun_ifthenelse3.c62f5c24a34473fea151d2d63cdc87c6_12" [label="12: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$2:int=2 [line 18, column 44]\n " shape="box"] +"fun_ifthenelse3.c62f5c24a34473fea151d2d63cdc87c6_12" [label="12: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$2:int=2 [line 18, column 44]\n " shape="box"] "fun_ifthenelse3.c62f5c24a34473fea151d2d63cdc87c6_12" -> "fun_ifthenelse3.c62f5c24a34473fea151d2d63cdc87c6_8" ; @@ -189,11 +189,11 @@ digraph cfg { "fun_ifthenelse3.c62f5c24a34473fea151d2d63cdc87c6_15" -> "fun_ifthenelse3.c62f5c24a34473fea151d2d63cdc87c6_17" ; -"fun_ifthenelse3.c62f5c24a34473fea151d2d63cdc87c6_16" [label="16: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$4:int=3 [line 18, column 55]\n " shape="box"] +"fun_ifthenelse3.c62f5c24a34473fea151d2d63cdc87c6_16" [label="16: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$4:int=3 [line 18, column 55]\n " shape="box"] "fun_ifthenelse3.c62f5c24a34473fea151d2d63cdc87c6_16" -> "fun_ifthenelse3.c62f5c24a34473fea151d2d63cdc87c6_13" ; -"fun_ifthenelse3.c62f5c24a34473fea151d2d63cdc87c6_17" [label="17: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$4:int=3 [line 18, column 55]\n " shape="box"] +"fun_ifthenelse3.c62f5c24a34473fea151d2d63cdc87c6_17" [label="17: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$4:int=3 [line 18, column 55]\n " shape="box"] "fun_ifthenelse3.c62f5c24a34473fea151d2d63cdc87c6_17" -> "fun_ifthenelse3.c62f5c24a34473fea151d2d63cdc87c6_13" ; @@ -222,11 +222,11 @@ digraph cfg { "fun_ifthenelse4.2a63e61081ad44f4f9aca9d47562827d_5" -> "fun_ifthenelse4.2a63e61081ad44f4f9aca9d47562827d_7" ; -"fun_ifthenelse4.2a63e61081ad44f4f9aca9d47562827d_6" [label="6: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:_fn_(*)=_fun_some_f [line 20, column 27]\n " shape="box"] +"fun_ifthenelse4.2a63e61081ad44f4f9aca9d47562827d_6" [label="6: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:_fn_(*)=_fun_some_f [line 20, column 27]\n " shape="box"] "fun_ifthenelse4.2a63e61081ad44f4f9aca9d47562827d_6" -> "fun_ifthenelse4.2a63e61081ad44f4f9aca9d47562827d_3" ; -"fun_ifthenelse4.2a63e61081ad44f4f9aca9d47562827d_7" [label="7: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:_fn_(*)=_fun_some_f [line 20, column 27]\n " shape="box"] +"fun_ifthenelse4.2a63e61081ad44f4f9aca9d47562827d_7" [label="7: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:_fn_(*)=_fun_some_f [line 20, column 27]\n " shape="box"] "fun_ifthenelse4.2a63e61081ad44f4f9aca9d47562827d_7" -> "fun_ifthenelse4.2a63e61081ad44f4f9aca9d47562827d_3" ; @@ -243,11 +243,11 @@ digraph cfg { "fun_ifthenelse4.2a63e61081ad44f4f9aca9d47562827d_10" -> "fun_ifthenelse4.2a63e61081ad44f4f9aca9d47562827d_12" ; -"fun_ifthenelse4.2a63e61081ad44f4f9aca9d47562827d_11" [label="11: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$2:int=1 [line 20, column 48]\n " shape="box"] +"fun_ifthenelse4.2a63e61081ad44f4f9aca9d47562827d_11" [label="11: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$2:int=1 [line 20, column 48]\n " shape="box"] "fun_ifthenelse4.2a63e61081ad44f4f9aca9d47562827d_11" -> "fun_ifthenelse4.2a63e61081ad44f4f9aca9d47562827d_8" ; -"fun_ifthenelse4.2a63e61081ad44f4f9aca9d47562827d_12" [label="12: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$2:int=1 [line 20, column 48]\n " shape="box"] +"fun_ifthenelse4.2a63e61081ad44f4f9aca9d47562827d_12" [label="12: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$2:int=1 [line 20, column 48]\n " shape="box"] "fun_ifthenelse4.2a63e61081ad44f4f9aca9d47562827d_12" -> "fun_ifthenelse4.2a63e61081ad44f4f9aca9d47562827d_8" ; @@ -263,11 +263,11 @@ digraph cfg { "fun_ifthenelse4.2a63e61081ad44f4f9aca9d47562827d_15" -> "fun_ifthenelse4.2a63e61081ad44f4f9aca9d47562827d_17" ; -"fun_ifthenelse4.2a63e61081ad44f4f9aca9d47562827d_16" [label="16: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$4:int=3 [line 20, column 62]\n " shape="box"] +"fun_ifthenelse4.2a63e61081ad44f4f9aca9d47562827d_16" [label="16: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$4:int=3 [line 20, column 62]\n " shape="box"] "fun_ifthenelse4.2a63e61081ad44f4f9aca9d47562827d_16" -> "fun_ifthenelse4.2a63e61081ad44f4f9aca9d47562827d_13" ; -"fun_ifthenelse4.2a63e61081ad44f4f9aca9d47562827d_17" [label="17: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$4:int=3 [line 20, column 62]\n " shape="box"] +"fun_ifthenelse4.2a63e61081ad44f4f9aca9d47562827d_17" [label="17: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$4:int=3 [line 20, column 62]\n " shape="box"] "fun_ifthenelse4.2a63e61081ad44f4f9aca9d47562827d_17" -> "fun_ifthenelse4.2a63e61081ad44f4f9aca9d47562827d_13" ; diff --git a/infer/tests/codetoanalyze/c/frontend/conditional_operator/if_short_circuit.c.dot b/infer/tests/codetoanalyze/c/frontend/conditional_operator/if_short_circuit.c.dot index 6da8537dd..fd68ac52e 100644 --- a/infer/tests/codetoanalyze/c/frontend/conditional_operator/if_short_circuit.c.dot +++ b/infer/tests/codetoanalyze/c/frontend/conditional_operator/if_short_circuit.c.dot @@ -74,7 +74,7 @@ digraph cfg { "main.fad58de7366495db4650cfefac2fcd61_18" -> "main.fad58de7366495db4650cfefac2fcd61_14" ; -"main.fad58de7366495db4650cfefac2fcd61_19" [label="19: BinaryOperatorStmt: Assign \n n$7=_fun_getenv(\"BLOCK\":char const *) [line 47, column 10]\n *&spec:char*=n$7 [line 47, column 3]\n " shape="box"] +"main.fad58de7366495db4650cfefac2fcd61_19" [label="19: BinaryOperatorStmt: Assign \n n$10=_fun_getenv(\"BLOCK\":char const *) [line 47, column 10]\n *&spec:char*=n$10 [line 47, column 3]\n " shape="box"] "main.fad58de7366495db4650cfefac2fcd61_19" -> "main.fad58de7366495db4650cfefac2fcd61_5" ; @@ -95,24 +95,24 @@ digraph cfg { "shortcircuit_and.10f9635d805ff3bd29dfc80b8f8d12da_4" -> "shortcircuit_and.10f9635d805ff3bd29dfc80b8f8d12da_2" ; -"shortcircuit_and.10f9635d805ff3bd29dfc80b8f8d12da_5" [label="5: Prune (true branch, if) \n n$0=*&x:int* [line 22, column 8]\n PRUNE(!n$0, true); [line 22, column 8]\n " shape="invhouse"] +"shortcircuit_and.10f9635d805ff3bd29dfc80b8f8d12da_5" [label="5: Prune (true branch, if) \n n$1=*&x:int* [line 22, column 8]\n PRUNE(!n$1, true); [line 22, column 8]\n " shape="invhouse"] "shortcircuit_and.10f9635d805ff3bd29dfc80b8f8d12da_5" -> "shortcircuit_and.10f9635d805ff3bd29dfc80b8f8d12da_7" ; -"shortcircuit_and.10f9635d805ff3bd29dfc80b8f8d12da_6" [label="6: Prune (false branch, if) \n n$0=*&x:int* [line 22, column 8]\n PRUNE(n$0, false); [line 22, column 8]\n " shape="invhouse"] +"shortcircuit_and.10f9635d805ff3bd29dfc80b8f8d12da_6" [label="6: Prune (false branch, if) \n n$1=*&x:int* [line 22, column 8]\n PRUNE(n$1, false); [line 22, column 8]\n " shape="invhouse"] "shortcircuit_and.10f9635d805ff3bd29dfc80b8f8d12da_6" -> "shortcircuit_and.10f9635d805ff3bd29dfc80b8f8d12da_11" ; -"shortcircuit_and.10f9635d805ff3bd29dfc80b8f8d12da_7" [label="7: BinaryOperatorStmt: Assign \n n$1=_fun_getenv(\"BLOCK\":char const *) [line 22, column 19]\n *&x:int*=n$1 [line 22, column 15]\n n$2=*&x:int* [line 22, column 15]\n " shape="box"] +"shortcircuit_and.10f9635d805ff3bd29dfc80b8f8d12da_7" [label="7: BinaryOperatorStmt: Assign \n n$2=_fun_getenv(\"BLOCK\":char const *) [line 22, column 19]\n *&x:int*=n$2 [line 22, column 15]\n n$3=*&x:int* [line 22, column 15]\n " shape="box"] "shortcircuit_and.10f9635d805ff3bd29dfc80b8f8d12da_7" -> "shortcircuit_and.10f9635d805ff3bd29dfc80b8f8d12da_8" ; "shortcircuit_and.10f9635d805ff3bd29dfc80b8f8d12da_7" -> "shortcircuit_and.10f9635d805ff3bd29dfc80b8f8d12da_9" ; -"shortcircuit_and.10f9635d805ff3bd29dfc80b8f8d12da_8" [label="8: Prune (true branch, if) \n PRUNE(!n$2, true); [line 22, column 15]\n " shape="invhouse"] +"shortcircuit_and.10f9635d805ff3bd29dfc80b8f8d12da_8" [label="8: Prune (true branch, if) \n PRUNE(!n$3, true); [line 22, column 15]\n " shape="invhouse"] "shortcircuit_and.10f9635d805ff3bd29dfc80b8f8d12da_8" -> "shortcircuit_and.10f9635d805ff3bd29dfc80b8f8d12da_10" ; -"shortcircuit_and.10f9635d805ff3bd29dfc80b8f8d12da_9" [label="9: Prune (false branch, if) \n PRUNE(n$2, false); [line 22, column 15]\n " shape="invhouse"] +"shortcircuit_and.10f9635d805ff3bd29dfc80b8f8d12da_9" [label="9: Prune (false branch, if) \n PRUNE(n$3, false); [line 22, column 15]\n " shape="invhouse"] "shortcircuit_and.10f9635d805ff3bd29dfc80b8f8d12da_9" -> "shortcircuit_and.10f9635d805ff3bd29dfc80b8f8d12da_11" ; @@ -120,7 +120,7 @@ digraph cfg { "shortcircuit_and.10f9635d805ff3bd29dfc80b8f8d12da_10" -> "shortcircuit_and.10f9635d805ff3bd29dfc80b8f8d12da_3" ; -"shortcircuit_and.10f9635d805ff3bd29dfc80b8f8d12da_11" [label="11: BinaryOperatorStmt: Assign \n n$3=*&x:int* [line 25, column 6]\n *n$3:int=32 [line 25, column 5]\n " shape="box"] +"shortcircuit_and.10f9635d805ff3bd29dfc80b8f8d12da_11" [label="11: BinaryOperatorStmt: Assign \n n$4=*&x:int* [line 25, column 6]\n *n$4:int=32 [line 25, column 5]\n " shape="box"] "shortcircuit_and.10f9635d805ff3bd29dfc80b8f8d12da_11" -> "shortcircuit_and.10f9635d805ff3bd29dfc80b8f8d12da_3" ; @@ -139,29 +139,29 @@ digraph cfg { "shortcircuit_or.5845fe75b89f8af7ec1944cd207962af_4" -> "shortcircuit_or.5845fe75b89f8af7ec1944cd207962af_2" ; -"shortcircuit_or.5845fe75b89f8af7ec1944cd207962af_5" [label="5: BinaryOperatorStmt: EQ \n n$0=*&x:int* [line 14, column 7]\n " shape="box"] +"shortcircuit_or.5845fe75b89f8af7ec1944cd207962af_5" [label="5: BinaryOperatorStmt: EQ \n n$1=*&x:int* [line 14, column 7]\n " shape="box"] "shortcircuit_or.5845fe75b89f8af7ec1944cd207962af_5" -> "shortcircuit_or.5845fe75b89f8af7ec1944cd207962af_6" ; "shortcircuit_or.5845fe75b89f8af7ec1944cd207962af_5" -> "shortcircuit_or.5845fe75b89f8af7ec1944cd207962af_7" ; -"shortcircuit_or.5845fe75b89f8af7ec1944cd207962af_6" [label="6: Prune (true branch, if) \n PRUNE((n$0 == null), true); [line 14, column 7]\n " shape="invhouse"] +"shortcircuit_or.5845fe75b89f8af7ec1944cd207962af_6" [label="6: Prune (true branch, if) \n PRUNE((n$1 == null), true); [line 14, column 7]\n " shape="invhouse"] "shortcircuit_or.5845fe75b89f8af7ec1944cd207962af_6" -> "shortcircuit_or.5845fe75b89f8af7ec1944cd207962af_11" ; -"shortcircuit_or.5845fe75b89f8af7ec1944cd207962af_7" [label="7: Prune (false branch, if) \n PRUNE(!(n$0 == null), false); [line 14, column 7]\n " shape="invhouse"] +"shortcircuit_or.5845fe75b89f8af7ec1944cd207962af_7" [label="7: Prune (false branch, if) \n PRUNE(!(n$1 == null), false); [line 14, column 7]\n " shape="invhouse"] "shortcircuit_or.5845fe75b89f8af7ec1944cd207962af_7" -> "shortcircuit_or.5845fe75b89f8af7ec1944cd207962af_8" ; -"shortcircuit_or.5845fe75b89f8af7ec1944cd207962af_8" [label="8: BinaryOperatorStmt: EQ \n n$1=*&x:int* [line 14, column 18]\n n$2=*n$1:int [line 14, column 17]\n " shape="box"] +"shortcircuit_or.5845fe75b89f8af7ec1944cd207962af_8" [label="8: BinaryOperatorStmt: EQ \n n$2=*&x:int* [line 14, column 18]\n n$3=*n$2:int [line 14, column 17]\n " shape="box"] "shortcircuit_or.5845fe75b89f8af7ec1944cd207962af_8" -> "shortcircuit_or.5845fe75b89f8af7ec1944cd207962af_9" ; "shortcircuit_or.5845fe75b89f8af7ec1944cd207962af_8" -> "shortcircuit_or.5845fe75b89f8af7ec1944cd207962af_10" ; -"shortcircuit_or.5845fe75b89f8af7ec1944cd207962af_9" [label="9: Prune (true branch, if) \n PRUNE((n$2 == 2), true); [line 14, column 17]\n " shape="invhouse"] +"shortcircuit_or.5845fe75b89f8af7ec1944cd207962af_9" [label="9: Prune (true branch, if) \n PRUNE((n$3 == 2), true); [line 14, column 17]\n " shape="invhouse"] "shortcircuit_or.5845fe75b89f8af7ec1944cd207962af_9" -> "shortcircuit_or.5845fe75b89f8af7ec1944cd207962af_11" ; -"shortcircuit_or.5845fe75b89f8af7ec1944cd207962af_10" [label="10: Prune (false branch, if) \n PRUNE(!(n$2 == 2), false); [line 14, column 17]\n " shape="invhouse"] +"shortcircuit_or.5845fe75b89f8af7ec1944cd207962af_10" [label="10: Prune (false branch, if) \n PRUNE(!(n$3 == 2), false); [line 14, column 17]\n " shape="invhouse"] "shortcircuit_or.5845fe75b89f8af7ec1944cd207962af_10" -> "shortcircuit_or.5845fe75b89f8af7ec1944cd207962af_12" ; @@ -223,7 +223,7 @@ digraph cfg { "test_loop.254a9d372f8f45542e409771135b9322_12" -> "test_loop.254a9d372f8f45542e409771135b9322_3" ; -"test_loop.254a9d372f8f45542e409771135b9322_13" [label="13: BinaryOperatorStmt: Assign \n n$5=_fun_getenv(\"BLOCK\":char const *) [line 34, column 10]\n *&spec:char*=n$5 [line 34, column 3]\n " shape="box"] +"test_loop.254a9d372f8f45542e409771135b9322_13" [label="13: BinaryOperatorStmt: Assign \n n$6=_fun_getenv(\"BLOCK\":char const *) [line 34, column 10]\n *&spec:char*=n$6 [line 34, column 3]\n " shape="box"] "test_loop.254a9d372f8f45542e409771135b9322_13" -> "test_loop.254a9d372f8f45542e409771135b9322_3" ; diff --git a/infer/tests/codetoanalyze/c/frontend/conditional_operator/int_negation.c.dot b/infer/tests/codetoanalyze/c/frontend/conditional_operator/int_negation.c.dot index 42a378d4d..b78395bfa 100644 --- a/infer/tests/codetoanalyze/c/frontend/conditional_operator/int_negation.c.dot +++ b/infer/tests/codetoanalyze/c/frontend/conditional_operator/int_negation.c.dot @@ -64,11 +64,11 @@ digraph cfg { "baz.73feffa4b7f6bb68e44cf984c85f6e88_7" -> "baz.73feffa4b7f6bb68e44cf984c85f6e88_9" ; -"baz.73feffa4b7f6bb68e44cf984c85f6e88_8" [label="8: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int=0 [line 22, column 16]\n " shape="box"] +"baz.73feffa4b7f6bb68e44cf984c85f6e88_8" [label="8: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int=0 [line 22, column 16]\n " shape="box"] "baz.73feffa4b7f6bb68e44cf984c85f6e88_8" -> "baz.73feffa4b7f6bb68e44cf984c85f6e88_5" ; -"baz.73feffa4b7f6bb68e44cf984c85f6e88_9" [label="9: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int=1 [line 22, column 16]\n " shape="box"] +"baz.73feffa4b7f6bb68e44cf984c85f6e88_9" [label="9: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int=1 [line 22, column 16]\n " shape="box"] "baz.73feffa4b7f6bb68e44cf984c85f6e88_9" -> "baz.73feffa4b7f6bb68e44cf984c85f6e88_5" ; @@ -124,11 +124,11 @@ digraph cfg { "neg.f24c2c15b9d03797c6874986a8d19516_5" -> "neg.f24c2c15b9d03797c6874986a8d19516_7" ; -"neg.f24c2c15b9d03797c6874986a8d19516_6" [label="6: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int=0 [line 29, column 25]\n " shape="box"] +"neg.f24c2c15b9d03797c6874986a8d19516_6" [label="6: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int=0 [line 29, column 25]\n " shape="box"] "neg.f24c2c15b9d03797c6874986a8d19516_6" -> "neg.f24c2c15b9d03797c6874986a8d19516_3" ; -"neg.f24c2c15b9d03797c6874986a8d19516_7" [label="7: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int=1 [line 29, column 25]\n " shape="box"] +"neg.f24c2c15b9d03797c6874986a8d19516_7" [label="7: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int=1 [line 29, column 25]\n " shape="box"] "neg.f24c2c15b9d03797c6874986a8d19516_7" -> "neg.f24c2c15b9d03797c6874986a8d19516_3" ; diff --git a/infer/tests/codetoanalyze/c/frontend/conditional_operator/member_access.c.dot b/infer/tests/codetoanalyze/c/frontend/conditional_operator/member_access.c.dot index 4264284a2..552a30feb 100644 --- a/infer/tests/codetoanalyze/c/frontend/conditional_operator/member_access.c.dot +++ b/infer/tests/codetoanalyze/c/frontend/conditional_operator/member_access.c.dot @@ -20,11 +20,11 @@ digraph cfg { "access_field_in_ife_branch.09235b723e846eb21b7cc76cb004f032_5" -> "access_field_in_ife_branch.09235b723e846eb21b7cc76cb004f032_7" ; -"access_field_in_ife_branch.09235b723e846eb21b7cc76cb004f032_6" [label="6: ConditinalStmt Branch \n n$1=_fun_ret_ptr(4:int) [line 22, column 50]\n n$2=*n$1.field:int [line 22, column 49]\n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int=n$2 [line 22, column 45]\n " shape="box"] +"access_field_in_ife_branch.09235b723e846eb21b7cc76cb004f032_6" [label="6: ConditionalStmt Branch \n n$1=_fun_ret_ptr(4:int) [line 22, column 50]\n n$2=*n$1.field:int [line 22, column 49]\n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int=n$2 [line 22, column 45]\n " shape="box"] "access_field_in_ife_branch.09235b723e846eb21b7cc76cb004f032_6" -> "access_field_in_ife_branch.09235b723e846eb21b7cc76cb004f032_3" ; -"access_field_in_ife_branch.09235b723e846eb21b7cc76cb004f032_7" [label="7: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int=0 [line 22, column 45]\n " shape="box"] +"access_field_in_ife_branch.09235b723e846eb21b7cc76cb004f032_7" [label="7: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int=0 [line 22, column 45]\n " shape="box"] "access_field_in_ife_branch.09235b723e846eb21b7cc76cb004f032_7" -> "access_field_in_ife_branch.09235b723e846eb21b7cc76cb004f032_3" ; @@ -52,11 +52,11 @@ digraph cfg { "call_ife_then_access_field.b6f399d1a50b93c2421854974cd226e3_5" -> "call_ife_then_access_field.b6f399d1a50b93c2421854974cd226e3_7" ; -"call_ife_then_access_field.b6f399d1a50b93c2421854974cd226e3_6" [label="6: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int=2 [line 20, column 54]\n " shape="box"] +"call_ife_then_access_field.b6f399d1a50b93c2421854974cd226e3_6" [label="6: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int=2 [line 20, column 54]\n " shape="box"] "call_ife_then_access_field.b6f399d1a50b93c2421854974cd226e3_6" -> "call_ife_then_access_field.b6f399d1a50b93c2421854974cd226e3_3" ; -"call_ife_then_access_field.b6f399d1a50b93c2421854974cd226e3_7" [label="7: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int=3 [line 20, column 54]\n " shape="box"] +"call_ife_then_access_field.b6f399d1a50b93c2421854974cd226e3_7" [label="7: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int=3 [line 20, column 54]\n " shape="box"] "call_ife_then_access_field.b6f399d1a50b93c2421854974cd226e3_7" -> "call_ife_then_access_field.b6f399d1a50b93c2421854974cd226e3_3" ; @@ -84,11 +84,11 @@ digraph cfg { "ife_then_access_field.314daa5b993f0f569c257230f350e2e2_5" -> "ife_then_access_field.314daa5b993f0f569c257230f350e2e2_7" ; -"ife_then_access_field.314daa5b993f0f569c257230f350e2e2_6" [label="6: ConditinalStmt Branch \n n$1=*&p:s* [line 17, column 16]\n *&0$?%__sil_tmpSIL_temp_conditional___n$0:s*=n$1 [line 17, column 12]\n " shape="box"] +"ife_then_access_field.314daa5b993f0f569c257230f350e2e2_6" [label="6: ConditionalStmt Branch \n n$1=*&p:s* [line 17, column 16]\n *&0$?%__sil_tmpSIL_temp_conditional___n$0:s*=n$1 [line 17, column 12]\n " shape="box"] "ife_then_access_field.314daa5b993f0f569c257230f350e2e2_6" -> "ife_then_access_field.314daa5b993f0f569c257230f350e2e2_3" ; -"ife_then_access_field.314daa5b993f0f569c257230f350e2e2_7" [label="7: ConditinalStmt Branch \n n$2=*&q:s* [line 17, column 20]\n *&0$?%__sil_tmpSIL_temp_conditional___n$0:s*=n$2 [line 17, column 12]\n " shape="box"] +"ife_then_access_field.314daa5b993f0f569c257230f350e2e2_7" [label="7: ConditionalStmt Branch \n n$2=*&q:s* [line 17, column 20]\n *&0$?%__sil_tmpSIL_temp_conditional___n$0:s*=n$2 [line 17, column 12]\n " shape="box"] "ife_then_access_field.314daa5b993f0f569c257230f350e2e2_7" -> "ife_then_access_field.314daa5b993f0f569c257230f350e2e2_3" ; diff --git a/infer/tests/codetoanalyze/c/frontend/conditional_operator/preincrement.c.dot b/infer/tests/codetoanalyze/c/frontend/conditional_operator/preincrement.c.dot index 7123f1605..8b92bace6 100644 --- a/infer/tests/codetoanalyze/c/frontend/conditional_operator/preincrement.c.dot +++ b/infer/tests/codetoanalyze/c/frontend/conditional_operator/preincrement.c.dot @@ -20,11 +20,11 @@ digraph cfg { "preincrement.db7c6523f16e1ab3058057cee6614472_5" -> "preincrement.db7c6523f16e1ab3058057cee6614472_7" ; -"preincrement.db7c6523f16e1ab3058057cee6614472_6" [label="6: ConditinalStmt Branch \n n$1=*&p:s* [line 18, column 8]\n *&0$?%__sil_tmpSIL_temp_conditional___n$0:s*=n$1 [line 18, column 4]\n " shape="box"] +"preincrement.db7c6523f16e1ab3058057cee6614472_6" [label="6: ConditionalStmt Branch \n n$1=*&p:s* [line 18, column 8]\n *&0$?%__sil_tmpSIL_temp_conditional___n$0:s*=n$1 [line 18, column 4]\n " shape="box"] "preincrement.db7c6523f16e1ab3058057cee6614472_6" -> "preincrement.db7c6523f16e1ab3058057cee6614472_3" ; -"preincrement.db7c6523f16e1ab3058057cee6614472_7" [label="7: ConditinalStmt Branch \n n$2=*&p:s* [line 18, column 12]\n *&0$?%__sil_tmpSIL_temp_conditional___n$0:s*=n$2 [line 18, column 4]\n " shape="box"] +"preincrement.db7c6523f16e1ab3058057cee6614472_7" [label="7: ConditionalStmt Branch \n n$2=*&p:s* [line 18, column 12]\n *&0$?%__sil_tmpSIL_temp_conditional___n$0:s*=n$2 [line 18, column 4]\n " shape="box"] "preincrement.db7c6523f16e1ab3058057cee6614472_7" -> "preincrement.db7c6523f16e1ab3058057cee6614472_3" ; @@ -40,11 +40,11 @@ digraph cfg { "preincrement.db7c6523f16e1ab3058057cee6614472_10" -> "preincrement.db7c6523f16e1ab3058057cee6614472_12" ; -"preincrement.db7c6523f16e1ab3058057cee6614472_11" [label="11: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$4:int=3 [line 18, column 21]\n " shape="box"] +"preincrement.db7c6523f16e1ab3058057cee6614472_11" [label="11: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$4:int=3 [line 18, column 21]\n " shape="box"] "preincrement.db7c6523f16e1ab3058057cee6614472_11" -> "preincrement.db7c6523f16e1ab3058057cee6614472_8" ; -"preincrement.db7c6523f16e1ab3058057cee6614472_12" [label="12: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$4:int=7 [line 18, column 21]\n " shape="box"] +"preincrement.db7c6523f16e1ab3058057cee6614472_12" [label="12: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$4:int=7 [line 18, column 21]\n " shape="box"] "preincrement.db7c6523f16e1ab3058057cee6614472_12" -> "preincrement.db7c6523f16e1ab3058057cee6614472_8" ; @@ -64,11 +64,11 @@ digraph cfg { "preincrement.db7c6523f16e1ab3058057cee6614472_16" -> "preincrement.db7c6523f16e1ab3058057cee6614472_18" ; -"preincrement.db7c6523f16e1ab3058057cee6614472_17" [label="17: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$8:int=3 [line 17, column 11]\n " shape="box"] +"preincrement.db7c6523f16e1ab3058057cee6614472_17" [label="17: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$8:int=3 [line 17, column 11]\n " shape="box"] "preincrement.db7c6523f16e1ab3058057cee6614472_17" -> "preincrement.db7c6523f16e1ab3058057cee6614472_14" ; -"preincrement.db7c6523f16e1ab3058057cee6614472_18" [label="18: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$8:int=7 [line 17, column 11]\n " shape="box"] +"preincrement.db7c6523f16e1ab3058057cee6614472_18" [label="18: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$8:int=7 [line 17, column 11]\n " shape="box"] "preincrement.db7c6523f16e1ab3058057cee6614472_18" -> "preincrement.db7c6523f16e1ab3058057cee6614472_14" ; @@ -89,11 +89,11 @@ digraph cfg { "preincrement.db7c6523f16e1ab3058057cee6614472_22" -> "preincrement.db7c6523f16e1ab3058057cee6614472_24" ; -"preincrement.db7c6523f16e1ab3058057cee6614472_23" [label="23: ConditinalStmt Branch \n n$12=*&p:s* [line 16, column 8]\n *&0$?%__sil_tmpSIL_temp_conditional___n$11:s*=n$12 [line 16, column 4]\n " shape="box"] +"preincrement.db7c6523f16e1ab3058057cee6614472_23" [label="23: ConditionalStmt Branch \n n$12=*&p:s* [line 16, column 8]\n *&0$?%__sil_tmpSIL_temp_conditional___n$11:s*=n$12 [line 16, column 4]\n " shape="box"] "preincrement.db7c6523f16e1ab3058057cee6614472_23" -> "preincrement.db7c6523f16e1ab3058057cee6614472_20" ; -"preincrement.db7c6523f16e1ab3058057cee6614472_24" [label="24: ConditinalStmt Branch \n n$13=*&p:s* [line 16, column 12]\n *&0$?%__sil_tmpSIL_temp_conditional___n$11:s*=n$13 [line 16, column 4]\n " shape="box"] +"preincrement.db7c6523f16e1ab3058057cee6614472_24" [label="24: ConditionalStmt Branch \n n$13=*&p:s* [line 16, column 12]\n *&0$?%__sil_tmpSIL_temp_conditional___n$11:s*=n$13 [line 16, column 4]\n " shape="box"] "preincrement.db7c6523f16e1ab3058057cee6614472_24" -> "preincrement.db7c6523f16e1ab3058057cee6614472_20" ; diff --git a/infer/tests/codetoanalyze/c/frontend/conditional_operator/unary_operator.c.dot b/infer/tests/codetoanalyze/c/frontend/conditional_operator/unary_operator.c.dot index befb8df45..08a2c3af7 100644 --- a/infer/tests/codetoanalyze/c/frontend/conditional_operator/unary_operator.c.dot +++ b/infer/tests/codetoanalyze/c/frontend/conditional_operator/unary_operator.c.dot @@ -20,11 +20,11 @@ digraph cfg { "dereference_ifthenelse.aa3447116ff03cffc729c06c91821cdc_5" -> "dereference_ifthenelse.aa3447116ff03cffc729c06c91821cdc_7" ; -"dereference_ifthenelse.aa3447116ff03cffc729c06c91821cdc_6" [label="6: ConditinalStmt Branch \n n$1=*&p:int* [line 16, column 9]\n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int*=n$1 [line 16, column 5]\n " shape="box"] +"dereference_ifthenelse.aa3447116ff03cffc729c06c91821cdc_6" [label="6: ConditionalStmt Branch \n n$1=*&p:int* [line 16, column 9]\n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int*=n$1 [line 16, column 5]\n " shape="box"] "dereference_ifthenelse.aa3447116ff03cffc729c06c91821cdc_6" -> "dereference_ifthenelse.aa3447116ff03cffc729c06c91821cdc_3" ; -"dereference_ifthenelse.aa3447116ff03cffc729c06c91821cdc_7" [label="7: ConditinalStmt Branch \n n$2=*&p:int* [line 16, column 13]\n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int*=n$2 [line 16, column 5]\n " shape="box"] +"dereference_ifthenelse.aa3447116ff03cffc729c06c91821cdc_7" [label="7: ConditionalStmt Branch \n n$2=*&p:int* [line 16, column 13]\n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int*=n$2 [line 16, column 5]\n " shape="box"] "dereference_ifthenelse.aa3447116ff03cffc729c06c91821cdc_7" -> "dereference_ifthenelse.aa3447116ff03cffc729c06c91821cdc_3" ; @@ -48,11 +48,11 @@ digraph cfg { "dereference_ifthenelse.aa3447116ff03cffc729c06c91821cdc_12" -> "dereference_ifthenelse.aa3447116ff03cffc729c06c91821cdc_14" ; -"dereference_ifthenelse.aa3447116ff03cffc729c06c91821cdc_13" [label="13: ConditinalStmt Branch \n n$6=*&p:int* [line 14, column 17]\n *&0$?%__sil_tmpSIL_temp_conditional___n$5:int*=n$6 [line 14, column 13]\n " shape="box"] +"dereference_ifthenelse.aa3447116ff03cffc729c06c91821cdc_13" [label="13: ConditionalStmt Branch \n n$6=*&p:int* [line 14, column 17]\n *&0$?%__sil_tmpSIL_temp_conditional___n$5:int*=n$6 [line 14, column 13]\n " shape="box"] "dereference_ifthenelse.aa3447116ff03cffc729c06c91821cdc_13" -> "dereference_ifthenelse.aa3447116ff03cffc729c06c91821cdc_10" ; -"dereference_ifthenelse.aa3447116ff03cffc729c06c91821cdc_14" [label="14: ConditinalStmt Branch \n n$7=*&p:int* [line 14, column 21]\n *&0$?%__sil_tmpSIL_temp_conditional___n$5:int*=n$7 [line 14, column 13]\n " shape="box"] +"dereference_ifthenelse.aa3447116ff03cffc729c06c91821cdc_14" [label="14: ConditionalStmt Branch \n n$7=*&p:int* [line 14, column 21]\n *&0$?%__sil_tmpSIL_temp_conditional___n$5:int*=n$7 [line 14, column 13]\n " shape="box"] "dereference_ifthenelse.aa3447116ff03cffc729c06c91821cdc_14" -> "dereference_ifthenelse.aa3447116ff03cffc729c06c91821cdc_10" ; @@ -73,11 +73,11 @@ digraph cfg { "dereference_ifthenelse.aa3447116ff03cffc729c06c91821cdc_18" -> "dereference_ifthenelse.aa3447116ff03cffc729c06c91821cdc_20" ; -"dereference_ifthenelse.aa3447116ff03cffc729c06c91821cdc_19" [label="19: ConditinalStmt Branch \n n$11=*&p:int* [line 12, column 13]\n *&0$?%__sil_tmpSIL_temp_conditional___n$10:int*=n$11 [line 12, column 9]\n " shape="box"] +"dereference_ifthenelse.aa3447116ff03cffc729c06c91821cdc_19" [label="19: ConditionalStmt Branch \n n$11=*&p:int* [line 12, column 13]\n *&0$?%__sil_tmpSIL_temp_conditional___n$10:int*=n$11 [line 12, column 9]\n " shape="box"] "dereference_ifthenelse.aa3447116ff03cffc729c06c91821cdc_19" -> "dereference_ifthenelse.aa3447116ff03cffc729c06c91821cdc_16" ; -"dereference_ifthenelse.aa3447116ff03cffc729c06c91821cdc_20" [label="20: ConditinalStmt Branch \n n$12=*&p:int* [line 12, column 17]\n *&0$?%__sil_tmpSIL_temp_conditional___n$10:int*=n$12 [line 12, column 9]\n " shape="box"] +"dereference_ifthenelse.aa3447116ff03cffc729c06c91821cdc_20" [label="20: ConditionalStmt Branch \n n$12=*&p:int* [line 12, column 17]\n *&0$?%__sil_tmpSIL_temp_conditional___n$10:int*=n$12 [line 12, column 9]\n " shape="box"] "dereference_ifthenelse.aa3447116ff03cffc729c06c91821cdc_20" -> "dereference_ifthenelse.aa3447116ff03cffc729c06c91821cdc_16" ; diff --git a/infer/tests/codetoanalyze/c/frontend/gotostmt/goto_ex.c.dot b/infer/tests/codetoanalyze/c/frontend/gotostmt/goto_ex.c.dot index 21bde695a..1235bdf1a 100644 --- a/infer/tests/codetoanalyze/c/frontend/gotostmt/goto_ex.c.dot +++ b/infer/tests/codetoanalyze/c/frontend/gotostmt/goto_ex.c.dot @@ -31,16 +31,16 @@ digraph cfg { "g0.8ac829e3bb8338d74cfb45ebe834d8e1_8" -> "g0.8ac829e3bb8338d74cfb45ebe834d8e1_7" ; -"g0.8ac829e3bb8338d74cfb45ebe834d8e1_9" [label="9: BinaryOperatorStmt: GT \n n$0=_fun_getValue() [line 16, column 7]\n " shape="box"] +"g0.8ac829e3bb8338d74cfb45ebe834d8e1_9" [label="9: BinaryOperatorStmt: GT \n n$3=_fun_getValue() [line 16, column 7]\n " shape="box"] "g0.8ac829e3bb8338d74cfb45ebe834d8e1_9" -> "g0.8ac829e3bb8338d74cfb45ebe834d8e1_10" ; "g0.8ac829e3bb8338d74cfb45ebe834d8e1_9" -> "g0.8ac829e3bb8338d74cfb45ebe834d8e1_11" ; -"g0.8ac829e3bb8338d74cfb45ebe834d8e1_10" [label="10: Prune (true branch, if) \n PRUNE((n$0 > 1), true); [line 16, column 7]\n " shape="invhouse"] +"g0.8ac829e3bb8338d74cfb45ebe834d8e1_10" [label="10: Prune (true branch, if) \n PRUNE((n$3 > 1), true); [line 16, column 7]\n " shape="invhouse"] "g0.8ac829e3bb8338d74cfb45ebe834d8e1_10" -> "g0.8ac829e3bb8338d74cfb45ebe834d8e1_6" ; -"g0.8ac829e3bb8338d74cfb45ebe834d8e1_11" [label="11: Prune (false branch, if) \n PRUNE(!(n$0 > 1), false); [line 16, column 7]\n " shape="invhouse"] +"g0.8ac829e3bb8338d74cfb45ebe834d8e1_11" [label="11: Prune (false branch, if) \n PRUNE(!(n$3 > 1), false); [line 16, column 7]\n " shape="invhouse"] "g0.8ac829e3bb8338d74cfb45ebe834d8e1_11" -> "g0.8ac829e3bb8338d74cfb45ebe834d8e1_8" ; @@ -75,16 +75,16 @@ digraph cfg { "g1.0120a4f9196a5f9eb9f523f31f914da7_7" -> "g1.0120a4f9196a5f9eb9f523f31f914da7_6" ; -"g1.0120a4f9196a5f9eb9f523f31f914da7_8" [label="8: BinaryOperatorStmt: GT \n n$0=_fun_getValue() [line 28, column 7]\n " shape="box"] +"g1.0120a4f9196a5f9eb9f523f31f914da7_8" [label="8: BinaryOperatorStmt: GT \n n$1=_fun_getValue() [line 28, column 7]\n " shape="box"] "g1.0120a4f9196a5f9eb9f523f31f914da7_8" -> "g1.0120a4f9196a5f9eb9f523f31f914da7_9" ; "g1.0120a4f9196a5f9eb9f523f31f914da7_8" -> "g1.0120a4f9196a5f9eb9f523f31f914da7_10" ; -"g1.0120a4f9196a5f9eb9f523f31f914da7_9" [label="9: Prune (true branch, if) \n PRUNE((n$0 > 1), true); [line 28, column 7]\n " shape="invhouse"] +"g1.0120a4f9196a5f9eb9f523f31f914da7_9" [label="9: Prune (true branch, if) \n PRUNE((n$1 > 1), true); [line 28, column 7]\n " shape="invhouse"] "g1.0120a4f9196a5f9eb9f523f31f914da7_9" -> "g1.0120a4f9196a5f9eb9f523f31f914da7_5" ; -"g1.0120a4f9196a5f9eb9f523f31f914da7_10" [label="10: Prune (false branch, if) \n PRUNE(!(n$0 > 1), false); [line 28, column 7]\n " shape="invhouse"] +"g1.0120a4f9196a5f9eb9f523f31f914da7_10" [label="10: Prune (false branch, if) \n PRUNE(!(n$1 > 1), false); [line 28, column 7]\n " shape="invhouse"] "g1.0120a4f9196a5f9eb9f523f31f914da7_10" -> "g1.0120a4f9196a5f9eb9f523f31f914da7_7" ; @@ -131,16 +131,16 @@ digraph cfg { "g2.e1c80488853d86ab9d6decfe30d8930f_10" -> "g2.e1c80488853d86ab9d6decfe30d8930f_9" ; -"g2.e1c80488853d86ab9d6decfe30d8930f_11" [label="11: BinaryOperatorStmt: GT \n n$0=_fun_getValue() [line 46, column 7]\n " shape="box"] +"g2.e1c80488853d86ab9d6decfe30d8930f_11" [label="11: BinaryOperatorStmt: GT \n n$2=_fun_getValue() [line 46, column 7]\n " shape="box"] "g2.e1c80488853d86ab9d6decfe30d8930f_11" -> "g2.e1c80488853d86ab9d6decfe30d8930f_12" ; "g2.e1c80488853d86ab9d6decfe30d8930f_11" -> "g2.e1c80488853d86ab9d6decfe30d8930f_13" ; -"g2.e1c80488853d86ab9d6decfe30d8930f_12" [label="12: Prune (true branch, if) \n PRUNE((n$0 > 1), true); [line 46, column 7]\n " shape="invhouse"] +"g2.e1c80488853d86ab9d6decfe30d8930f_12" [label="12: Prune (true branch, if) \n PRUNE((n$2 > 1), true); [line 46, column 7]\n " shape="invhouse"] "g2.e1c80488853d86ab9d6decfe30d8930f_12" -> "g2.e1c80488853d86ab9d6decfe30d8930f_14" ; -"g2.e1c80488853d86ab9d6decfe30d8930f_13" [label="13: Prune (false branch, if) \n PRUNE(!(n$0 > 1), false); [line 46, column 7]\n " shape="invhouse"] +"g2.e1c80488853d86ab9d6decfe30d8930f_13" [label="13: Prune (false branch, if) \n PRUNE(!(n$2 > 1), false); [line 46, column 7]\n " shape="invhouse"] "g2.e1c80488853d86ab9d6decfe30d8930f_13" -> "g2.e1c80488853d86ab9d6decfe30d8930f_10" ; @@ -152,16 +152,16 @@ digraph cfg { "g2.e1c80488853d86ab9d6decfe30d8930f_15" -> "g2.e1c80488853d86ab9d6decfe30d8930f_11" ; -"g2.e1c80488853d86ab9d6decfe30d8930f_16" [label="16: Call _fun_getValue \n n$1=_fun_getValue() [line 44, column 8]\n " shape="box"] +"g2.e1c80488853d86ab9d6decfe30d8930f_16" [label="16: Call _fun_getValue \n n$6=_fun_getValue() [line 44, column 8]\n " shape="box"] "g2.e1c80488853d86ab9d6decfe30d8930f_16" -> "g2.e1c80488853d86ab9d6decfe30d8930f_17" ; "g2.e1c80488853d86ab9d6decfe30d8930f_16" -> "g2.e1c80488853d86ab9d6decfe30d8930f_18" ; -"g2.e1c80488853d86ab9d6decfe30d8930f_17" [label="17: Prune (true branch, if) \n PRUNE(!n$1, true); [line 44, column 8]\n " shape="invhouse"] +"g2.e1c80488853d86ab9d6decfe30d8930f_17" [label="17: Prune (true branch, if) \n PRUNE(!n$6, true); [line 44, column 8]\n " shape="invhouse"] "g2.e1c80488853d86ab9d6decfe30d8930f_17" -> "g2.e1c80488853d86ab9d6decfe30d8930f_8" ; -"g2.e1c80488853d86ab9d6decfe30d8930f_18" [label="18: Prune (false branch, if) \n PRUNE(n$1, false); [line 44, column 8]\n " shape="invhouse"] +"g2.e1c80488853d86ab9d6decfe30d8930f_18" [label="18: Prune (false branch, if) \n PRUNE(n$6, false); [line 44, column 8]\n " shape="invhouse"] "g2.e1c80488853d86ab9d6decfe30d8930f_18" -> "g2.e1c80488853d86ab9d6decfe30d8930f_15" ; @@ -169,16 +169,16 @@ digraph cfg { "g2.e1c80488853d86ab9d6decfe30d8930f_19" -> "g2.e1c80488853d86ab9d6decfe30d8930f_16" ; -"g2.e1c80488853d86ab9d6decfe30d8930f_20" [label="20: Call _fun_getValue \n n$2=_fun_getValue() [line 42, column 8]\n " shape="box"] +"g2.e1c80488853d86ab9d6decfe30d8930f_20" [label="20: Call _fun_getValue \n n$10=_fun_getValue() [line 42, column 8]\n " shape="box"] "g2.e1c80488853d86ab9d6decfe30d8930f_20" -> "g2.e1c80488853d86ab9d6decfe30d8930f_21" ; "g2.e1c80488853d86ab9d6decfe30d8930f_20" -> "g2.e1c80488853d86ab9d6decfe30d8930f_22" ; -"g2.e1c80488853d86ab9d6decfe30d8930f_21" [label="21: Prune (true branch, if) \n PRUNE(!n$2, true); [line 42, column 8]\n " shape="invhouse"] +"g2.e1c80488853d86ab9d6decfe30d8930f_21" [label="21: Prune (true branch, if) \n PRUNE(!n$10, true); [line 42, column 8]\n " shape="invhouse"] "g2.e1c80488853d86ab9d6decfe30d8930f_21" -> "g2.e1c80488853d86ab9d6decfe30d8930f_5" ; -"g2.e1c80488853d86ab9d6decfe30d8930f_22" [label="22: Prune (false branch, if) \n PRUNE(n$2, false); [line 42, column 8]\n " shape="invhouse"] +"g2.e1c80488853d86ab9d6decfe30d8930f_22" [label="22: Prune (false branch, if) \n PRUNE(n$10, false); [line 42, column 8]\n " shape="invhouse"] "g2.e1c80488853d86ab9d6decfe30d8930f_22" -> "g2.e1c80488853d86ab9d6decfe30d8930f_19" ; @@ -209,7 +209,7 @@ digraph cfg { "g3.8a9fd7dfda802921fdc4079f9a528ce8_5" -> "g3.8a9fd7dfda802921fdc4079f9a528ce8_4" ; -"g3.8a9fd7dfda802921fdc4079f9a528ce8_6" [label="6: Call _fun_printf \n n$1=_fun_printf(\"A\\n\":char const *) [line 74, column 3]\n " shape="box"] +"g3.8a9fd7dfda802921fdc4079f9a528ce8_6" [label="6: Call _fun_printf \n n$2=_fun_printf(\"A\\n\":char const *) [line 74, column 3]\n " shape="box"] "g3.8a9fd7dfda802921fdc4079f9a528ce8_6" -> "g3.8a9fd7dfda802921fdc4079f9a528ce8_5" ; @@ -225,7 +225,7 @@ digraph cfg { "g3.8a9fd7dfda802921fdc4079f9a528ce8_9" -> "g3.8a9fd7dfda802921fdc4079f9a528ce8_2" ; -"g3.8a9fd7dfda802921fdc4079f9a528ce8_10" [label="10: Call _fun_printf \n n$2=_fun_printf(\"g3\\n\":char const *) [line 69, column 3]\n " shape="box"] +"g3.8a9fd7dfda802921fdc4079f9a528ce8_10" [label="10: Call _fun_printf \n n$4=_fun_printf(\"g3\\n\":char const *) [line 69, column 3]\n " shape="box"] "g3.8a9fd7dfda802921fdc4079f9a528ce8_10" -> "g3.8a9fd7dfda802921fdc4079f9a528ce8_9" ; @@ -233,16 +233,16 @@ digraph cfg { "g3.8a9fd7dfda802921fdc4079f9a528ce8_11" -> "g3.8a9fd7dfda802921fdc4079f9a528ce8_10" ; -"g3.8a9fd7dfda802921fdc4079f9a528ce8_12" [label="12: BinaryOperatorStmt: GT \n n$3=_fun_getValue() [line 67, column 7]\n " shape="box"] +"g3.8a9fd7dfda802921fdc4079f9a528ce8_12" [label="12: BinaryOperatorStmt: GT \n n$5=_fun_getValue() [line 67, column 7]\n " shape="box"] "g3.8a9fd7dfda802921fdc4079f9a528ce8_12" -> "g3.8a9fd7dfda802921fdc4079f9a528ce8_13" ; "g3.8a9fd7dfda802921fdc4079f9a528ce8_12" -> "g3.8a9fd7dfda802921fdc4079f9a528ce8_14" ; -"g3.8a9fd7dfda802921fdc4079f9a528ce8_13" [label="13: Prune (true branch, if) \n PRUNE((n$3 > 1), true); [line 67, column 7]\n " shape="invhouse"] +"g3.8a9fd7dfda802921fdc4079f9a528ce8_13" [label="13: Prune (true branch, if) \n PRUNE((n$5 > 1), true); [line 67, column 7]\n " shape="invhouse"] "g3.8a9fd7dfda802921fdc4079f9a528ce8_13" -> "g3.8a9fd7dfda802921fdc4079f9a528ce8_15" ; -"g3.8a9fd7dfda802921fdc4079f9a528ce8_14" [label="14: Prune (false branch, if) \n PRUNE(!(n$3 > 1), false); [line 67, column 7]\n " shape="invhouse"] +"g3.8a9fd7dfda802921fdc4079f9a528ce8_14" [label="14: Prune (false branch, if) \n PRUNE(!(n$5 > 1), false); [line 67, column 7]\n " shape="invhouse"] "g3.8a9fd7dfda802921fdc4079f9a528ce8_14" -> "g3.8a9fd7dfda802921fdc4079f9a528ce8_11" ; @@ -254,16 +254,16 @@ digraph cfg { "g3.8a9fd7dfda802921fdc4079f9a528ce8_16" -> "g3.8a9fd7dfda802921fdc4079f9a528ce8_12" ; -"g3.8a9fd7dfda802921fdc4079f9a528ce8_17" [label="17: Call _fun_getValue \n n$4=_fun_getValue() [line 65, column 8]\n " shape="box"] +"g3.8a9fd7dfda802921fdc4079f9a528ce8_17" [label="17: Call _fun_getValue \n n$9=_fun_getValue() [line 65, column 8]\n " shape="box"] "g3.8a9fd7dfda802921fdc4079f9a528ce8_17" -> "g3.8a9fd7dfda802921fdc4079f9a528ce8_18" ; "g3.8a9fd7dfda802921fdc4079f9a528ce8_17" -> "g3.8a9fd7dfda802921fdc4079f9a528ce8_19" ; -"g3.8a9fd7dfda802921fdc4079f9a528ce8_18" [label="18: Prune (true branch, if) \n PRUNE(!n$4, true); [line 65, column 8]\n " shape="invhouse"] +"g3.8a9fd7dfda802921fdc4079f9a528ce8_18" [label="18: Prune (true branch, if) \n PRUNE(!n$9, true); [line 65, column 8]\n " shape="invhouse"] "g3.8a9fd7dfda802921fdc4079f9a528ce8_18" -> "g3.8a9fd7dfda802921fdc4079f9a528ce8_8" ; -"g3.8a9fd7dfda802921fdc4079f9a528ce8_19" [label="19: Prune (false branch, if) \n PRUNE(n$4, false); [line 65, column 8]\n " shape="invhouse"] +"g3.8a9fd7dfda802921fdc4079f9a528ce8_19" [label="19: Prune (false branch, if) \n PRUNE(n$9, false); [line 65, column 8]\n " shape="invhouse"] "g3.8a9fd7dfda802921fdc4079f9a528ce8_19" -> "g3.8a9fd7dfda802921fdc4079f9a528ce8_16" ; @@ -271,20 +271,20 @@ digraph cfg { "g3.8a9fd7dfda802921fdc4079f9a528ce8_20" -> "g3.8a9fd7dfda802921fdc4079f9a528ce8_17" ; -"g3.8a9fd7dfda802921fdc4079f9a528ce8_21" [label="21: Call _fun_getValue \n n$5=_fun_getValue() [line 63, column 8]\n " shape="box"] +"g3.8a9fd7dfda802921fdc4079f9a528ce8_21" [label="21: Call _fun_getValue \n n$13=_fun_getValue() [line 63, column 8]\n " shape="box"] "g3.8a9fd7dfda802921fdc4079f9a528ce8_21" -> "g3.8a9fd7dfda802921fdc4079f9a528ce8_22" ; "g3.8a9fd7dfda802921fdc4079f9a528ce8_21" -> "g3.8a9fd7dfda802921fdc4079f9a528ce8_23" ; -"g3.8a9fd7dfda802921fdc4079f9a528ce8_22" [label="22: Prune (true branch, if) \n PRUNE(!n$5, true); [line 63, column 8]\n " shape="invhouse"] +"g3.8a9fd7dfda802921fdc4079f9a528ce8_22" [label="22: Prune (true branch, if) \n PRUNE(!n$13, true); [line 63, column 8]\n " shape="invhouse"] "g3.8a9fd7dfda802921fdc4079f9a528ce8_22" -> "g3.8a9fd7dfda802921fdc4079f9a528ce8_5" ; -"g3.8a9fd7dfda802921fdc4079f9a528ce8_23" [label="23: Prune (false branch, if) \n PRUNE(n$5, false); [line 63, column 8]\n " shape="invhouse"] +"g3.8a9fd7dfda802921fdc4079f9a528ce8_23" [label="23: Prune (false branch, if) \n PRUNE(n$13, false); [line 63, column 8]\n " shape="invhouse"] "g3.8a9fd7dfda802921fdc4079f9a528ce8_23" -> "g3.8a9fd7dfda802921fdc4079f9a528ce8_20" ; -"g3.8a9fd7dfda802921fdc4079f9a528ce8_24" [label="24: Call _fun_printf \n n$6=_fun_printf(\"B\\n\":char const *) [line 61, column 3]\n " shape="box"] +"g3.8a9fd7dfda802921fdc4079f9a528ce8_24" [label="24: Call _fun_printf \n n$17=_fun_printf(\"B\\n\":char const *) [line 61, column 3]\n " shape="box"] "g3.8a9fd7dfda802921fdc4079f9a528ce8_24" -> "g3.8a9fd7dfda802921fdc4079f9a528ce8_21" ; @@ -307,7 +307,7 @@ digraph cfg { "g4.b0b5c8f28ad7834e70a958a8882fa59a_5" -> "g4.b0b5c8f28ad7834e70a958a8882fa59a_4" ; -"g4.b0b5c8f28ad7834e70a958a8882fa59a_6" [label="6: Call _fun_printf \n n$1=_fun_printf(\"A\\n\":char const *) [line 95, column 3]\n " shape="box"] +"g4.b0b5c8f28ad7834e70a958a8882fa59a_6" [label="6: Call _fun_printf \n n$2=_fun_printf(\"A\\n\":char const *) [line 95, column 3]\n " shape="box"] "g4.b0b5c8f28ad7834e70a958a8882fa59a_6" -> "g4.b0b5c8f28ad7834e70a958a8882fa59a_5" ; @@ -319,7 +319,7 @@ digraph cfg { "g4.b0b5c8f28ad7834e70a958a8882fa59a_8" -> "g4.b0b5c8f28ad7834e70a958a8882fa59a_7" ; -"g4.b0b5c8f28ad7834e70a958a8882fa59a_9" [label="9: Call _fun_printf \n n$2=_fun_printf(\"g4\\n\":char const *) [line 91, column 3]\n " shape="box"] +"g4.b0b5c8f28ad7834e70a958a8882fa59a_9" [label="9: Call _fun_printf \n n$4=_fun_printf(\"g4\\n\":char const *) [line 91, column 3]\n " shape="box"] "g4.b0b5c8f28ad7834e70a958a8882fa59a_9" -> "g4.b0b5c8f28ad7834e70a958a8882fa59a_8" ; @@ -327,16 +327,16 @@ digraph cfg { "g4.b0b5c8f28ad7834e70a958a8882fa59a_10" -> "g4.b0b5c8f28ad7834e70a958a8882fa59a_9" ; -"g4.b0b5c8f28ad7834e70a958a8882fa59a_11" [label="11: BinaryOperatorStmt: GT \n n$3=_fun_getValue() [line 89, column 7]\n " shape="box"] +"g4.b0b5c8f28ad7834e70a958a8882fa59a_11" [label="11: BinaryOperatorStmt: GT \n n$5=_fun_getValue() [line 89, column 7]\n " shape="box"] "g4.b0b5c8f28ad7834e70a958a8882fa59a_11" -> "g4.b0b5c8f28ad7834e70a958a8882fa59a_12" ; "g4.b0b5c8f28ad7834e70a958a8882fa59a_11" -> "g4.b0b5c8f28ad7834e70a958a8882fa59a_13" ; -"g4.b0b5c8f28ad7834e70a958a8882fa59a_12" [label="12: Prune (true branch, if) \n PRUNE((n$3 > 1), true); [line 89, column 7]\n " shape="invhouse"] +"g4.b0b5c8f28ad7834e70a958a8882fa59a_12" [label="12: Prune (true branch, if) \n PRUNE((n$5 > 1), true); [line 89, column 7]\n " shape="invhouse"] "g4.b0b5c8f28ad7834e70a958a8882fa59a_12" -> "g4.b0b5c8f28ad7834e70a958a8882fa59a_14" ; -"g4.b0b5c8f28ad7834e70a958a8882fa59a_13" [label="13: Prune (false branch, if) \n PRUNE(!(n$3 > 1), false); [line 89, column 7]\n " shape="invhouse"] +"g4.b0b5c8f28ad7834e70a958a8882fa59a_13" [label="13: Prune (false branch, if) \n PRUNE(!(n$5 > 1), false); [line 89, column 7]\n " shape="invhouse"] "g4.b0b5c8f28ad7834e70a958a8882fa59a_13" -> "g4.b0b5c8f28ad7834e70a958a8882fa59a_10" ; @@ -348,16 +348,16 @@ digraph cfg { "g4.b0b5c8f28ad7834e70a958a8882fa59a_15" -> "g4.b0b5c8f28ad7834e70a958a8882fa59a_11" ; -"g4.b0b5c8f28ad7834e70a958a8882fa59a_16" [label="16: Call _fun_getValue \n n$4=_fun_getValue() [line 87, column 8]\n " shape="box"] +"g4.b0b5c8f28ad7834e70a958a8882fa59a_16" [label="16: Call _fun_getValue \n n$9=_fun_getValue() [line 87, column 8]\n " shape="box"] "g4.b0b5c8f28ad7834e70a958a8882fa59a_16" -> "g4.b0b5c8f28ad7834e70a958a8882fa59a_17" ; "g4.b0b5c8f28ad7834e70a958a8882fa59a_16" -> "g4.b0b5c8f28ad7834e70a958a8882fa59a_18" ; -"g4.b0b5c8f28ad7834e70a958a8882fa59a_17" [label="17: Prune (true branch, if) \n PRUNE(!n$4, true); [line 87, column 8]\n " shape="invhouse"] +"g4.b0b5c8f28ad7834e70a958a8882fa59a_17" [label="17: Prune (true branch, if) \n PRUNE(!n$9, true); [line 87, column 8]\n " shape="invhouse"] "g4.b0b5c8f28ad7834e70a958a8882fa59a_17" -> "g4.b0b5c8f28ad7834e70a958a8882fa59a_8" ; -"g4.b0b5c8f28ad7834e70a958a8882fa59a_18" [label="18: Prune (false branch, if) \n PRUNE(n$4, false); [line 87, column 8]\n " shape="invhouse"] +"g4.b0b5c8f28ad7834e70a958a8882fa59a_18" [label="18: Prune (false branch, if) \n PRUNE(n$9, false); [line 87, column 8]\n " shape="invhouse"] "g4.b0b5c8f28ad7834e70a958a8882fa59a_18" -> "g4.b0b5c8f28ad7834e70a958a8882fa59a_15" ; @@ -365,20 +365,20 @@ digraph cfg { "g4.b0b5c8f28ad7834e70a958a8882fa59a_19" -> "g4.b0b5c8f28ad7834e70a958a8882fa59a_16" ; -"g4.b0b5c8f28ad7834e70a958a8882fa59a_20" [label="20: Call _fun_getValue \n n$5=_fun_getValue() [line 85, column 8]\n " shape="box"] +"g4.b0b5c8f28ad7834e70a958a8882fa59a_20" [label="20: Call _fun_getValue \n n$13=_fun_getValue() [line 85, column 8]\n " shape="box"] "g4.b0b5c8f28ad7834e70a958a8882fa59a_20" -> "g4.b0b5c8f28ad7834e70a958a8882fa59a_21" ; "g4.b0b5c8f28ad7834e70a958a8882fa59a_20" -> "g4.b0b5c8f28ad7834e70a958a8882fa59a_22" ; -"g4.b0b5c8f28ad7834e70a958a8882fa59a_21" [label="21: Prune (true branch, if) \n PRUNE(!n$5, true); [line 85, column 8]\n " shape="invhouse"] +"g4.b0b5c8f28ad7834e70a958a8882fa59a_21" [label="21: Prune (true branch, if) \n PRUNE(!n$13, true); [line 85, column 8]\n " shape="invhouse"] "g4.b0b5c8f28ad7834e70a958a8882fa59a_21" -> "g4.b0b5c8f28ad7834e70a958a8882fa59a_5" ; -"g4.b0b5c8f28ad7834e70a958a8882fa59a_22" [label="22: Prune (false branch, if) \n PRUNE(n$5, false); [line 85, column 8]\n " shape="invhouse"] +"g4.b0b5c8f28ad7834e70a958a8882fa59a_22" [label="22: Prune (false branch, if) \n PRUNE(n$13, false); [line 85, column 8]\n " shape="invhouse"] "g4.b0b5c8f28ad7834e70a958a8882fa59a_22" -> "g4.b0b5c8f28ad7834e70a958a8882fa59a_19" ; -"g4.b0b5c8f28ad7834e70a958a8882fa59a_23" [label="23: Call _fun_printf \n n$6=_fun_printf(\"B\\n\":char const *) [line 83, column 3]\n " shape="box"] +"g4.b0b5c8f28ad7834e70a958a8882fa59a_23" [label="23: Call _fun_printf \n n$17=_fun_printf(\"B\\n\":char const *) [line 83, column 3]\n " shape="box"] "g4.b0b5c8f28ad7834e70a958a8882fa59a_23" -> "g4.b0b5c8f28ad7834e70a958a8882fa59a_20" ; @@ -393,7 +393,7 @@ digraph cfg { "g5.37c965a8d6d7bec292c7b11ff315d9ea_3" -> "g5.37c965a8d6d7bec292c7b11ff315d9ea_8" ; -"g5.37c965a8d6d7bec292c7b11ff315d9ea_4" [label="4: Call _fun_printf \n n$0=_fun_printf(\"exit\\n\":char const *) [line 120, column 3]\n " shape="box"] +"g5.37c965a8d6d7bec292c7b11ff315d9ea_4" [label="4: Call _fun_printf \n n$1=_fun_printf(\"exit\\n\":char const *) [line 120, column 3]\n " shape="box"] "g5.37c965a8d6d7bec292c7b11ff315d9ea_4" -> "g5.37c965a8d6d7bec292c7b11ff315d9ea_3" ; @@ -405,7 +405,7 @@ digraph cfg { "g5.37c965a8d6d7bec292c7b11ff315d9ea_6" -> "g5.37c965a8d6d7bec292c7b11ff315d9ea_2" ; -"g5.37c965a8d6d7bec292c7b11ff315d9ea_7" [label="7: Call _fun_printf \n n$1=_fun_printf(\"A\\n\":char const *) [line 116, column 3]\n " shape="box"] +"g5.37c965a8d6d7bec292c7b11ff315d9ea_7" [label="7: Call _fun_printf \n n$3=_fun_printf(\"A\\n\":char const *) [line 116, column 3]\n " shape="box"] "g5.37c965a8d6d7bec292c7b11ff315d9ea_7" -> "g5.37c965a8d6d7bec292c7b11ff315d9ea_6" ; @@ -417,16 +417,16 @@ digraph cfg { "g5.37c965a8d6d7bec292c7b11ff315d9ea_9" -> "g5.37c965a8d6d7bec292c7b11ff315d9ea_5" ; -"g5.37c965a8d6d7bec292c7b11ff315d9ea_10" [label="10: BinaryOperatorStmt: GT \n n$2=_fun_getValue() [line 110, column 7]\n " shape="box"] +"g5.37c965a8d6d7bec292c7b11ff315d9ea_10" [label="10: BinaryOperatorStmt: GT \n n$6=_fun_getValue() [line 110, column 7]\n " shape="box"] "g5.37c965a8d6d7bec292c7b11ff315d9ea_10" -> "g5.37c965a8d6d7bec292c7b11ff315d9ea_11" ; "g5.37c965a8d6d7bec292c7b11ff315d9ea_10" -> "g5.37c965a8d6d7bec292c7b11ff315d9ea_12" ; -"g5.37c965a8d6d7bec292c7b11ff315d9ea_11" [label="11: Prune (true branch, if) \n PRUNE((n$2 > 1), true); [line 110, column 7]\n " shape="invhouse"] +"g5.37c965a8d6d7bec292c7b11ff315d9ea_11" [label="11: Prune (true branch, if) \n PRUNE((n$6 > 1), true); [line 110, column 7]\n " shape="invhouse"] "g5.37c965a8d6d7bec292c7b11ff315d9ea_11" -> "g5.37c965a8d6d7bec292c7b11ff315d9ea_13" ; -"g5.37c965a8d6d7bec292c7b11ff315d9ea_12" [label="12: Prune (false branch, if) \n PRUNE(!(n$2 > 1), false); [line 110, column 7]\n " shape="invhouse"] +"g5.37c965a8d6d7bec292c7b11ff315d9ea_12" [label="12: Prune (false branch, if) \n PRUNE(!(n$6 > 1), false); [line 110, column 7]\n " shape="invhouse"] "g5.37c965a8d6d7bec292c7b11ff315d9ea_12" -> "g5.37c965a8d6d7bec292c7b11ff315d9ea_9" ; @@ -438,16 +438,16 @@ digraph cfg { "g5.37c965a8d6d7bec292c7b11ff315d9ea_14" -> "g5.37c965a8d6d7bec292c7b11ff315d9ea_10" ; -"g5.37c965a8d6d7bec292c7b11ff315d9ea_15" [label="15: Call _fun_getValue \n n$3=_fun_getValue() [line 108, column 8]\n " shape="box"] +"g5.37c965a8d6d7bec292c7b11ff315d9ea_15" [label="15: Call _fun_getValue \n n$10=_fun_getValue() [line 108, column 8]\n " shape="box"] "g5.37c965a8d6d7bec292c7b11ff315d9ea_15" -> "g5.37c965a8d6d7bec292c7b11ff315d9ea_16" ; "g5.37c965a8d6d7bec292c7b11ff315d9ea_15" -> "g5.37c965a8d6d7bec292c7b11ff315d9ea_17" ; -"g5.37c965a8d6d7bec292c7b11ff315d9ea_16" [label="16: Prune (true branch, if) \n PRUNE(!n$3, true); [line 108, column 8]\n " shape="invhouse"] +"g5.37c965a8d6d7bec292c7b11ff315d9ea_16" [label="16: Prune (true branch, if) \n PRUNE(!n$10, true); [line 108, column 8]\n " shape="invhouse"] "g5.37c965a8d6d7bec292c7b11ff315d9ea_16" -> "g5.37c965a8d6d7bec292c7b11ff315d9ea_3" ; -"g5.37c965a8d6d7bec292c7b11ff315d9ea_17" [label="17: Prune (false branch, if) \n PRUNE(n$3, false); [line 108, column 8]\n " shape="invhouse"] +"g5.37c965a8d6d7bec292c7b11ff315d9ea_17" [label="17: Prune (false branch, if) \n PRUNE(n$10, false); [line 108, column 8]\n " shape="invhouse"] "g5.37c965a8d6d7bec292c7b11ff315d9ea_17" -> "g5.37c965a8d6d7bec292c7b11ff315d9ea_14" ; @@ -455,20 +455,20 @@ digraph cfg { "g5.37c965a8d6d7bec292c7b11ff315d9ea_18" -> "g5.37c965a8d6d7bec292c7b11ff315d9ea_15" ; -"g5.37c965a8d6d7bec292c7b11ff315d9ea_19" [label="19: Call _fun_getValue \n n$4=_fun_getValue() [line 106, column 8]\n " shape="box"] +"g5.37c965a8d6d7bec292c7b11ff315d9ea_19" [label="19: Call _fun_getValue \n n$14=_fun_getValue() [line 106, column 8]\n " shape="box"] "g5.37c965a8d6d7bec292c7b11ff315d9ea_19" -> "g5.37c965a8d6d7bec292c7b11ff315d9ea_20" ; "g5.37c965a8d6d7bec292c7b11ff315d9ea_19" -> "g5.37c965a8d6d7bec292c7b11ff315d9ea_21" ; -"g5.37c965a8d6d7bec292c7b11ff315d9ea_20" [label="20: Prune (true branch, if) \n PRUNE(!n$4, true); [line 106, column 8]\n " shape="invhouse"] +"g5.37c965a8d6d7bec292c7b11ff315d9ea_20" [label="20: Prune (true branch, if) \n PRUNE(!n$14, true); [line 106, column 8]\n " shape="invhouse"] "g5.37c965a8d6d7bec292c7b11ff315d9ea_20" -> "g5.37c965a8d6d7bec292c7b11ff315d9ea_5" ; -"g5.37c965a8d6d7bec292c7b11ff315d9ea_21" [label="21: Prune (false branch, if) \n PRUNE(n$4, false); [line 106, column 8]\n " shape="invhouse"] +"g5.37c965a8d6d7bec292c7b11ff315d9ea_21" [label="21: Prune (false branch, if) \n PRUNE(n$14, false); [line 106, column 8]\n " shape="invhouse"] "g5.37c965a8d6d7bec292c7b11ff315d9ea_21" -> "g5.37c965a8d6d7bec292c7b11ff315d9ea_18" ; -"g5.37c965a8d6d7bec292c7b11ff315d9ea_22" [label="22: Call _fun_printf \n n$5=_fun_printf(\"B\\n\":char const *) [line 104, column 3]\n " shape="box"] +"g5.37c965a8d6d7bec292c7b11ff315d9ea_22" [label="22: Call _fun_printf \n n$18=_fun_printf(\"B\\n\":char const *) [line 104, column 3]\n " shape="box"] "g5.37c965a8d6d7bec292c7b11ff315d9ea_22" -> "g5.37c965a8d6d7bec292c7b11ff315d9ea_19" ; @@ -483,7 +483,7 @@ digraph cfg { "g6.4a4314ef967aad20a9e7c423bc16e39c_3" -> "g6.4a4314ef967aad20a9e7c423bc16e39c_8" ; -"g6.4a4314ef967aad20a9e7c423bc16e39c_4" [label="4: Call _fun_printf \n n$0=_fun_printf(\"exit\\n\":char const *) [line 142, column 3]\n " shape="box"] +"g6.4a4314ef967aad20a9e7c423bc16e39c_4" [label="4: Call _fun_printf \n n$1=_fun_printf(\"exit\\n\":char const *) [line 142, column 3]\n " shape="box"] "g6.4a4314ef967aad20a9e7c423bc16e39c_4" -> "g6.4a4314ef967aad20a9e7c423bc16e39c_3" ; @@ -495,7 +495,7 @@ digraph cfg { "g6.4a4314ef967aad20a9e7c423bc16e39c_6" -> "g6.4a4314ef967aad20a9e7c423bc16e39c_2" ; -"g6.4a4314ef967aad20a9e7c423bc16e39c_7" [label="7: Call _fun_printf \n n$1=_fun_printf(\"A\\n\":char const *) [line 138, column 3]\n " shape="box"] +"g6.4a4314ef967aad20a9e7c423bc16e39c_7" [label="7: Call _fun_printf \n n$3=_fun_printf(\"A\\n\":char const *) [line 138, column 3]\n " shape="box"] "g6.4a4314ef967aad20a9e7c423bc16e39c_7" -> "g6.4a4314ef967aad20a9e7c423bc16e39c_6" ; @@ -507,16 +507,16 @@ digraph cfg { "g6.4a4314ef967aad20a9e7c423bc16e39c_9" -> "g6.4a4314ef967aad20a9e7c423bc16e39c_5" ; -"g6.4a4314ef967aad20a9e7c423bc16e39c_10" [label="10: BinaryOperatorStmt: GT \n n$2=_fun_getValue() [line 132, column 7]\n " shape="box"] +"g6.4a4314ef967aad20a9e7c423bc16e39c_10" [label="10: BinaryOperatorStmt: GT \n n$6=_fun_getValue() [line 132, column 7]\n " shape="box"] "g6.4a4314ef967aad20a9e7c423bc16e39c_10" -> "g6.4a4314ef967aad20a9e7c423bc16e39c_11" ; "g6.4a4314ef967aad20a9e7c423bc16e39c_10" -> "g6.4a4314ef967aad20a9e7c423bc16e39c_12" ; -"g6.4a4314ef967aad20a9e7c423bc16e39c_11" [label="11: Prune (true branch, if) \n PRUNE((n$2 > 1), true); [line 132, column 7]\n " shape="invhouse"] +"g6.4a4314ef967aad20a9e7c423bc16e39c_11" [label="11: Prune (true branch, if) \n PRUNE((n$6 > 1), true); [line 132, column 7]\n " shape="invhouse"] "g6.4a4314ef967aad20a9e7c423bc16e39c_11" -> "g6.4a4314ef967aad20a9e7c423bc16e39c_13" ; -"g6.4a4314ef967aad20a9e7c423bc16e39c_12" [label="12: Prune (false branch, if) \n PRUNE(!(n$2 > 1), false); [line 132, column 7]\n " shape="invhouse"] +"g6.4a4314ef967aad20a9e7c423bc16e39c_12" [label="12: Prune (false branch, if) \n PRUNE(!(n$6 > 1), false); [line 132, column 7]\n " shape="invhouse"] "g6.4a4314ef967aad20a9e7c423bc16e39c_12" -> "g6.4a4314ef967aad20a9e7c423bc16e39c_9" ; @@ -528,16 +528,16 @@ digraph cfg { "g6.4a4314ef967aad20a9e7c423bc16e39c_14" -> "g6.4a4314ef967aad20a9e7c423bc16e39c_10" ; -"g6.4a4314ef967aad20a9e7c423bc16e39c_15" [label="15: Call _fun_getValue \n n$3=_fun_getValue() [line 130, column 8]\n " shape="box"] +"g6.4a4314ef967aad20a9e7c423bc16e39c_15" [label="15: Call _fun_getValue \n n$10=_fun_getValue() [line 130, column 8]\n " shape="box"] "g6.4a4314ef967aad20a9e7c423bc16e39c_15" -> "g6.4a4314ef967aad20a9e7c423bc16e39c_16" ; "g6.4a4314ef967aad20a9e7c423bc16e39c_15" -> "g6.4a4314ef967aad20a9e7c423bc16e39c_17" ; -"g6.4a4314ef967aad20a9e7c423bc16e39c_16" [label="16: Prune (true branch, if) \n PRUNE(!n$3, true); [line 130, column 8]\n " shape="invhouse"] +"g6.4a4314ef967aad20a9e7c423bc16e39c_16" [label="16: Prune (true branch, if) \n PRUNE(!n$10, true); [line 130, column 8]\n " shape="invhouse"] "g6.4a4314ef967aad20a9e7c423bc16e39c_16" -> "g6.4a4314ef967aad20a9e7c423bc16e39c_3" ; -"g6.4a4314ef967aad20a9e7c423bc16e39c_17" [label="17: Prune (false branch, if) \n PRUNE(n$3, false); [line 130, column 8]\n " shape="invhouse"] +"g6.4a4314ef967aad20a9e7c423bc16e39c_17" [label="17: Prune (false branch, if) \n PRUNE(n$10, false); [line 130, column 8]\n " shape="invhouse"] "g6.4a4314ef967aad20a9e7c423bc16e39c_17" -> "g6.4a4314ef967aad20a9e7c423bc16e39c_14" ; @@ -545,20 +545,20 @@ digraph cfg { "g6.4a4314ef967aad20a9e7c423bc16e39c_18" -> "g6.4a4314ef967aad20a9e7c423bc16e39c_15" ; -"g6.4a4314ef967aad20a9e7c423bc16e39c_19" [label="19: Call _fun_getValue \n n$4=_fun_getValue() [line 128, column 8]\n " shape="box"] +"g6.4a4314ef967aad20a9e7c423bc16e39c_19" [label="19: Call _fun_getValue \n n$14=_fun_getValue() [line 128, column 8]\n " shape="box"] "g6.4a4314ef967aad20a9e7c423bc16e39c_19" -> "g6.4a4314ef967aad20a9e7c423bc16e39c_20" ; "g6.4a4314ef967aad20a9e7c423bc16e39c_19" -> "g6.4a4314ef967aad20a9e7c423bc16e39c_21" ; -"g6.4a4314ef967aad20a9e7c423bc16e39c_20" [label="20: Prune (true branch, if) \n PRUNE(!n$4, true); [line 128, column 8]\n " shape="invhouse"] +"g6.4a4314ef967aad20a9e7c423bc16e39c_20" [label="20: Prune (true branch, if) \n PRUNE(!n$14, true); [line 128, column 8]\n " shape="invhouse"] "g6.4a4314ef967aad20a9e7c423bc16e39c_20" -> "g6.4a4314ef967aad20a9e7c423bc16e39c_5" ; -"g6.4a4314ef967aad20a9e7c423bc16e39c_21" [label="21: Prune (false branch, if) \n PRUNE(n$4, false); [line 128, column 8]\n " shape="invhouse"] +"g6.4a4314ef967aad20a9e7c423bc16e39c_21" [label="21: Prune (false branch, if) \n PRUNE(n$14, false); [line 128, column 8]\n " shape="invhouse"] "g6.4a4314ef967aad20a9e7c423bc16e39c_21" -> "g6.4a4314ef967aad20a9e7c423bc16e39c_18" ; -"g6.4a4314ef967aad20a9e7c423bc16e39c_22" [label="22: Call _fun_printf \n n$5=_fun_printf(\"B\\n\":char const *) [line 126, column 3]\n " shape="box"] +"g6.4a4314ef967aad20a9e7c423bc16e39c_22" [label="22: Call _fun_printf \n n$18=_fun_printf(\"B\\n\":char const *) [line 126, column 3]\n " shape="box"] "g6.4a4314ef967aad20a9e7c423bc16e39c_22" -> "g6.4a4314ef967aad20a9e7c423bc16e39c_19" ; @@ -585,7 +585,7 @@ digraph cfg { "g7.727bb92f57c3951d11695a52c92c2b0c_6" -> "g7.727bb92f57c3951d11695a52c92c2b0c_25" ; -"g7.727bb92f57c3951d11695a52c92c2b0c_7" [label="7: Call _fun_printf \n n$1=_fun_printf(\"out!\\n\":char const *) [line 162, column 3]\n " shape="box"] +"g7.727bb92f57c3951d11695a52c92c2b0c_7" [label="7: Call _fun_printf \n n$3=_fun_printf(\"out!\\n\":char const *) [line 162, column 3]\n " shape="box"] "g7.727bb92f57c3951d11695a52c92c2b0c_7" -> "g7.727bb92f57c3951d11695a52c92c2b0c_6" ; @@ -597,16 +597,16 @@ digraph cfg { "g7.727bb92f57c3951d11695a52c92c2b0c_9" -> "g7.727bb92f57c3951d11695a52c92c2b0c_10" ; -"g7.727bb92f57c3951d11695a52c92c2b0c_10" [label="10: BinaryOperatorStmt: LT \n n$2=*&i:int [line 148, column 10]\n " shape="box"] +"g7.727bb92f57c3951d11695a52c92c2b0c_10" [label="10: BinaryOperatorStmt: LT \n n$5=*&i:int [line 148, column 10]\n " shape="box"] "g7.727bb92f57c3951d11695a52c92c2b0c_10" -> "g7.727bb92f57c3951d11695a52c92c2b0c_11" ; "g7.727bb92f57c3951d11695a52c92c2b0c_10" -> "g7.727bb92f57c3951d11695a52c92c2b0c_12" ; -"g7.727bb92f57c3951d11695a52c92c2b0c_11" [label="11: Prune (true branch, while) \n PRUNE((n$2 < 10), true); [line 148, column 10]\n " shape="invhouse"] +"g7.727bb92f57c3951d11695a52c92c2b0c_11" [label="11: Prune (true branch, while) \n PRUNE((n$5 < 10), true); [line 148, column 10]\n " shape="invhouse"] "g7.727bb92f57c3951d11695a52c92c2b0c_11" -> "g7.727bb92f57c3951d11695a52c92c2b0c_13" ; -"g7.727bb92f57c3951d11695a52c92c2b0c_12" [label="12: Prune (false branch, while) \n PRUNE(!(n$2 < 10), false); [line 148, column 10]\n " shape="invhouse"] +"g7.727bb92f57c3951d11695a52c92c2b0c_12" [label="12: Prune (false branch, while) \n PRUNE(!(n$5 < 10), false); [line 148, column 10]\n " shape="invhouse"] "g7.727bb92f57c3951d11695a52c92c2b0c_12" -> "g7.727bb92f57c3951d11695a52c92c2b0c_8" ; @@ -614,16 +614,16 @@ digraph cfg { "g7.727bb92f57c3951d11695a52c92c2b0c_13" -> "g7.727bb92f57c3951d11695a52c92c2b0c_14" ; -"g7.727bb92f57c3951d11695a52c92c2b0c_14" [label="14: BinaryOperatorStmt: LT \n n$3=*&j:int [line 149, column 12]\n " shape="box"] +"g7.727bb92f57c3951d11695a52c92c2b0c_14" [label="14: BinaryOperatorStmt: LT \n n$6=*&j:int [line 149, column 12]\n " shape="box"] "g7.727bb92f57c3951d11695a52c92c2b0c_14" -> "g7.727bb92f57c3951d11695a52c92c2b0c_15" ; "g7.727bb92f57c3951d11695a52c92c2b0c_14" -> "g7.727bb92f57c3951d11695a52c92c2b0c_16" ; -"g7.727bb92f57c3951d11695a52c92c2b0c_15" [label="15: Prune (true branch, while) \n PRUNE((n$3 < 10), true); [line 149, column 12]\n " shape="invhouse"] +"g7.727bb92f57c3951d11695a52c92c2b0c_15" [label="15: Prune (true branch, while) \n PRUNE((n$6 < 10), true); [line 149, column 12]\n " shape="invhouse"] "g7.727bb92f57c3951d11695a52c92c2b0c_15" -> "g7.727bb92f57c3951d11695a52c92c2b0c_17" ; -"g7.727bb92f57c3951d11695a52c92c2b0c_16" [label="16: Prune (false branch, while) \n PRUNE(!(n$3 < 10), false); [line 149, column 12]\n " shape="invhouse"] +"g7.727bb92f57c3951d11695a52c92c2b0c_16" [label="16: Prune (false branch, while) \n PRUNE(!(n$6 < 10), false); [line 149, column 12]\n " shape="invhouse"] "g7.727bb92f57c3951d11695a52c92c2b0c_16" -> "g7.727bb92f57c3951d11695a52c92c2b0c_9" ; @@ -631,16 +631,16 @@ digraph cfg { "g7.727bb92f57c3951d11695a52c92c2b0c_17" -> "g7.727bb92f57c3951d11695a52c92c2b0c_18" ; -"g7.727bb92f57c3951d11695a52c92c2b0c_18" [label="18: BinaryOperatorStmt: LT \n n$4=*&k:int [line 150, column 14]\n " shape="box"] +"g7.727bb92f57c3951d11695a52c92c2b0c_18" [label="18: BinaryOperatorStmt: LT \n n$7=*&k:int [line 150, column 14]\n " shape="box"] "g7.727bb92f57c3951d11695a52c92c2b0c_18" -> "g7.727bb92f57c3951d11695a52c92c2b0c_19" ; "g7.727bb92f57c3951d11695a52c92c2b0c_18" -> "g7.727bb92f57c3951d11695a52c92c2b0c_20" ; -"g7.727bb92f57c3951d11695a52c92c2b0c_19" [label="19: Prune (true branch, while) \n PRUNE((n$4 < 10), true); [line 150, column 14]\n " shape="invhouse"] +"g7.727bb92f57c3951d11695a52c92c2b0c_19" [label="19: Prune (true branch, while) \n PRUNE((n$7 < 10), true); [line 150, column 14]\n " shape="invhouse"] "g7.727bb92f57c3951d11695a52c92c2b0c_19" -> "g7.727bb92f57c3951d11695a52c92c2b0c_26" ; -"g7.727bb92f57c3951d11695a52c92c2b0c_20" [label="20: Prune (false branch, while) \n PRUNE(!(n$4 < 10), false); [line 150, column 14]\n " shape="invhouse"] +"g7.727bb92f57c3951d11695a52c92c2b0c_20" [label="20: Prune (false branch, while) \n PRUNE(!(n$7 < 10), false); [line 150, column 14]\n " shape="invhouse"] "g7.727bb92f57c3951d11695a52c92c2b0c_20" -> "g7.727bb92f57c3951d11695a52c92c2b0c_13" ; @@ -648,24 +648,24 @@ digraph cfg { "g7.727bb92f57c3951d11695a52c92c2b0c_21" -> "g7.727bb92f57c3951d11695a52c92c2b0c_17" ; -"g7.727bb92f57c3951d11695a52c92c2b0c_22" [label="22: BinaryOperatorStmt: GE \n n$5=*&v:int [line 152, column 13]\n " shape="box"] +"g7.727bb92f57c3951d11695a52c92c2b0c_22" [label="22: BinaryOperatorStmt: GE \n n$8=*&v:int [line 152, column 13]\n " shape="box"] "g7.727bb92f57c3951d11695a52c92c2b0c_22" -> "g7.727bb92f57c3951d11695a52c92c2b0c_23" ; "g7.727bb92f57c3951d11695a52c92c2b0c_22" -> "g7.727bb92f57c3951d11695a52c92c2b0c_24" ; -"g7.727bb92f57c3951d11695a52c92c2b0c_23" [label="23: Prune (true branch, if) \n PRUNE((n$5 >= 15), true); [line 152, column 13]\n " shape="invhouse"] +"g7.727bb92f57c3951d11695a52c92c2b0c_23" [label="23: Prune (true branch, if) \n PRUNE((n$8 >= 15), true); [line 152, column 13]\n " shape="invhouse"] "g7.727bb92f57c3951d11695a52c92c2b0c_23" -> "g7.727bb92f57c3951d11695a52c92c2b0c_8" ; -"g7.727bb92f57c3951d11695a52c92c2b0c_24" [label="24: Prune (false branch, if) \n PRUNE(!(n$5 >= 15), false); [line 152, column 13]\n " shape="invhouse"] +"g7.727bb92f57c3951d11695a52c92c2b0c_24" [label="24: Prune (false branch, if) \n PRUNE(!(n$8 >= 15), false); [line 152, column 13]\n " shape="invhouse"] "g7.727bb92f57c3951d11695a52c92c2b0c_24" -> "g7.727bb92f57c3951d11695a52c92c2b0c_21" ; -"g7.727bb92f57c3951d11695a52c92c2b0c_25" [label="25: Call _fun_printf \n n$6=_fun_printf(\"wow\\n\":char const *) [line 155, column 11]\n " shape="box"] +"g7.727bb92f57c3951d11695a52c92c2b0c_25" [label="25: Call _fun_printf \n n$10=_fun_printf(\"wow\\n\":char const *) [line 155, column 11]\n " shape="box"] "g7.727bb92f57c3951d11695a52c92c2b0c_25" -> "g7.727bb92f57c3951d11695a52c92c2b0c_5" ; -"g7.727bb92f57c3951d11695a52c92c2b0c_26" [label="26: DeclStmt \n n$7=*&i:int [line 151, column 17]\n n$8=*&j:int [line 151, column 21]\n n$9=*&k:int [line 151, column 25]\n *&v:int=((n$7 + n$8) + n$9) [line 151, column 9]\n " shape="box"] +"g7.727bb92f57c3951d11695a52c92c2b0c_26" [label="26: DeclStmt \n n$15=*&i:int [line 151, column 17]\n n$16=*&j:int [line 151, column 21]\n n$17=*&k:int [line 151, column 25]\n *&v:int=((n$15 + n$16) + n$17) [line 151, column 9]\n " shape="box"] "g7.727bb92f57c3951d11695a52c92c2b0c_26" -> "g7.727bb92f57c3951d11695a52c92c2b0c_22" ; @@ -700,7 +700,7 @@ digraph cfg { "g8.c98b82371573afc08575815d90f5eac4_5" -> "g8.c98b82371573afc08575815d90f5eac4_4" ; -"g8.c98b82371573afc08575815d90f5eac4_6" [label="6: Call _fun_printf \n n$1=_fun_printf(\"out!\\n\":char const *) [line 186, column 3]\n " shape="box"] +"g8.c98b82371573afc08575815d90f5eac4_6" [label="6: Call _fun_printf \n n$2=_fun_printf(\"out!\\n\":char const *) [line 186, column 3]\n " shape="box"] "g8.c98b82371573afc08575815d90f5eac4_6" -> "g8.c98b82371573afc08575815d90f5eac4_5" ; @@ -712,16 +712,16 @@ digraph cfg { "g8.c98b82371573afc08575815d90f5eac4_8" -> "g8.c98b82371573afc08575815d90f5eac4_9" ; -"g8.c98b82371573afc08575815d90f5eac4_9" [label="9: BinaryOperatorStmt: LT \n n$2=*&i:int [line 173, column 10]\n " shape="box"] +"g8.c98b82371573afc08575815d90f5eac4_9" [label="9: BinaryOperatorStmt: LT \n n$4=*&i:int [line 173, column 10]\n " shape="box"] "g8.c98b82371573afc08575815d90f5eac4_9" -> "g8.c98b82371573afc08575815d90f5eac4_10" ; "g8.c98b82371573afc08575815d90f5eac4_9" -> "g8.c98b82371573afc08575815d90f5eac4_11" ; -"g8.c98b82371573afc08575815d90f5eac4_10" [label="10: Prune (true branch, while) \n PRUNE((n$2 < 10), true); [line 173, column 10]\n " shape="invhouse"] +"g8.c98b82371573afc08575815d90f5eac4_10" [label="10: Prune (true branch, while) \n PRUNE((n$4 < 10), true); [line 173, column 10]\n " shape="invhouse"] "g8.c98b82371573afc08575815d90f5eac4_10" -> "g8.c98b82371573afc08575815d90f5eac4_12" ; -"g8.c98b82371573afc08575815d90f5eac4_11" [label="11: Prune (false branch, while) \n PRUNE(!(n$2 < 10), false); [line 173, column 10]\n " shape="invhouse"] +"g8.c98b82371573afc08575815d90f5eac4_11" [label="11: Prune (false branch, while) \n PRUNE(!(n$4 < 10), false); [line 173, column 10]\n " shape="invhouse"] "g8.c98b82371573afc08575815d90f5eac4_11" -> "g8.c98b82371573afc08575815d90f5eac4_7" ; @@ -729,16 +729,16 @@ digraph cfg { "g8.c98b82371573afc08575815d90f5eac4_12" -> "g8.c98b82371573afc08575815d90f5eac4_13" ; -"g8.c98b82371573afc08575815d90f5eac4_13" [label="13: BinaryOperatorStmt: LT \n n$3=*&j:int [line 174, column 12]\n " shape="box"] +"g8.c98b82371573afc08575815d90f5eac4_13" [label="13: BinaryOperatorStmt: LT \n n$5=*&j:int [line 174, column 12]\n " shape="box"] "g8.c98b82371573afc08575815d90f5eac4_13" -> "g8.c98b82371573afc08575815d90f5eac4_14" ; "g8.c98b82371573afc08575815d90f5eac4_13" -> "g8.c98b82371573afc08575815d90f5eac4_15" ; -"g8.c98b82371573afc08575815d90f5eac4_14" [label="14: Prune (true branch, while) \n PRUNE((n$3 < 10), true); [line 174, column 12]\n " shape="invhouse"] +"g8.c98b82371573afc08575815d90f5eac4_14" [label="14: Prune (true branch, while) \n PRUNE((n$5 < 10), true); [line 174, column 12]\n " shape="invhouse"] "g8.c98b82371573afc08575815d90f5eac4_14" -> "g8.c98b82371573afc08575815d90f5eac4_16" ; -"g8.c98b82371573afc08575815d90f5eac4_15" [label="15: Prune (false branch, while) \n PRUNE(!(n$3 < 10), false); [line 174, column 12]\n " shape="invhouse"] +"g8.c98b82371573afc08575815d90f5eac4_15" [label="15: Prune (false branch, while) \n PRUNE(!(n$5 < 10), false); [line 174, column 12]\n " shape="invhouse"] "g8.c98b82371573afc08575815d90f5eac4_15" -> "g8.c98b82371573afc08575815d90f5eac4_8" ; @@ -746,16 +746,16 @@ digraph cfg { "g8.c98b82371573afc08575815d90f5eac4_16" -> "g8.c98b82371573afc08575815d90f5eac4_17" ; -"g8.c98b82371573afc08575815d90f5eac4_17" [label="17: BinaryOperatorStmt: LT \n n$4=*&k:int [line 175, column 14]\n " shape="box"] +"g8.c98b82371573afc08575815d90f5eac4_17" [label="17: BinaryOperatorStmt: LT \n n$6=*&k:int [line 175, column 14]\n " shape="box"] "g8.c98b82371573afc08575815d90f5eac4_17" -> "g8.c98b82371573afc08575815d90f5eac4_18" ; "g8.c98b82371573afc08575815d90f5eac4_17" -> "g8.c98b82371573afc08575815d90f5eac4_19" ; -"g8.c98b82371573afc08575815d90f5eac4_18" [label="18: Prune (true branch, while) \n PRUNE((n$4 < 10), true); [line 175, column 14]\n " shape="invhouse"] +"g8.c98b82371573afc08575815d90f5eac4_18" [label="18: Prune (true branch, while) \n PRUNE((n$6 < 10), true); [line 175, column 14]\n " shape="invhouse"] "g8.c98b82371573afc08575815d90f5eac4_18" -> "g8.c98b82371573afc08575815d90f5eac4_26" ; -"g8.c98b82371573afc08575815d90f5eac4_19" [label="19: Prune (false branch, while) \n PRUNE(!(n$4 < 10), false); [line 175, column 14]\n " shape="invhouse"] +"g8.c98b82371573afc08575815d90f5eac4_19" [label="19: Prune (false branch, while) \n PRUNE(!(n$6 < 10), false); [line 175, column 14]\n " shape="invhouse"] "g8.c98b82371573afc08575815d90f5eac4_19" -> "g8.c98b82371573afc08575815d90f5eac4_12" ; @@ -763,20 +763,20 @@ digraph cfg { "g8.c98b82371573afc08575815d90f5eac4_20" -> "g8.c98b82371573afc08575815d90f5eac4_16" ; -"g8.c98b82371573afc08575815d90f5eac4_21" [label="21: BinaryOperatorStmt: GE \n n$5=*&v:int [line 177, column 13]\n " shape="box"] +"g8.c98b82371573afc08575815d90f5eac4_21" [label="21: BinaryOperatorStmt: GE \n n$7=*&v:int [line 177, column 13]\n " shape="box"] "g8.c98b82371573afc08575815d90f5eac4_21" -> "g8.c98b82371573afc08575815d90f5eac4_22" ; "g8.c98b82371573afc08575815d90f5eac4_21" -> "g8.c98b82371573afc08575815d90f5eac4_23" ; -"g8.c98b82371573afc08575815d90f5eac4_22" [label="22: Prune (true branch, if) \n PRUNE((n$5 >= 15), true); [line 177, column 13]\n " shape="invhouse"] +"g8.c98b82371573afc08575815d90f5eac4_22" [label="22: Prune (true branch, if) \n PRUNE((n$7 >= 15), true); [line 177, column 13]\n " shape="invhouse"] "g8.c98b82371573afc08575815d90f5eac4_22" -> "g8.c98b82371573afc08575815d90f5eac4_25" ; -"g8.c98b82371573afc08575815d90f5eac4_23" [label="23: Prune (false branch, if) \n PRUNE(!(n$5 >= 15), false); [line 177, column 13]\n " shape="invhouse"] +"g8.c98b82371573afc08575815d90f5eac4_23" [label="23: Prune (false branch, if) \n PRUNE(!(n$7 >= 15), false); [line 177, column 13]\n " shape="invhouse"] "g8.c98b82371573afc08575815d90f5eac4_23" -> "g8.c98b82371573afc08575815d90f5eac4_20" ; -"g8.c98b82371573afc08575815d90f5eac4_24" [label="24: Call _fun_printf \n n$6=_fun_printf(\"wow\\n\":char const *) [line 179, column 11]\n " shape="box"] +"g8.c98b82371573afc08575815d90f5eac4_24" [label="24: Call _fun_printf \n n$8=_fun_printf(\"wow\\n\":char const *) [line 179, column 11]\n " shape="box"] "g8.c98b82371573afc08575815d90f5eac4_24" -> "g8.c98b82371573afc08575815d90f5eac4_20" ; @@ -784,7 +784,7 @@ digraph cfg { "g8.c98b82371573afc08575815d90f5eac4_25" -> "g8.c98b82371573afc08575815d90f5eac4_24" ; -"g8.c98b82371573afc08575815d90f5eac4_26" [label="26: DeclStmt \n n$7=*&i:int [line 176, column 17]\n n$8=*&j:int [line 176, column 21]\n n$9=*&k:int [line 176, column 25]\n *&v:int=((n$7 + n$8) + n$9) [line 176, column 9]\n " shape="box"] +"g8.c98b82371573afc08575815d90f5eac4_26" [label="26: DeclStmt \n n$12=*&i:int [line 176, column 17]\n n$13=*&j:int [line 176, column 21]\n n$14=*&k:int [line 176, column 25]\n *&v:int=((n$12 + n$13) + n$14) [line 176, column 9]\n " shape="box"] "g8.c98b82371573afc08575815d90f5eac4_26" -> "g8.c98b82371573afc08575815d90f5eac4_21" ; @@ -792,11 +792,11 @@ digraph cfg { "g8.c98b82371573afc08575815d90f5eac4_27" -> "g8.c98b82371573afc08575815d90f5eac4_8" ; -"g8.c98b82371573afc08575815d90f5eac4_28" [label="28: Prune (true branch, if) \n n$10=*&q:int [line 171, column 7]\n PRUNE(n$10, true); [line 171, column 7]\n " shape="invhouse"] +"g8.c98b82371573afc08575815d90f5eac4_28" [label="28: Prune (true branch, if) \n n$18=*&q:int [line 171, column 7]\n PRUNE(n$18, true); [line 171, column 7]\n " shape="invhouse"] "g8.c98b82371573afc08575815d90f5eac4_28" -> "g8.c98b82371573afc08575815d90f5eac4_25" ; -"g8.c98b82371573afc08575815d90f5eac4_29" [label="29: Prune (false branch, if) \n n$10=*&q:int [line 171, column 7]\n PRUNE(!n$10, false); [line 171, column 7]\n " shape="invhouse"] +"g8.c98b82371573afc08575815d90f5eac4_29" [label="29: Prune (false branch, if) \n n$18=*&q:int [line 171, column 7]\n PRUNE(!n$18, false); [line 171, column 7]\n " shape="invhouse"] "g8.c98b82371573afc08575815d90f5eac4_29" -> "g8.c98b82371573afc08575815d90f5eac4_27" ; diff --git a/infer/tests/codetoanalyze/c/frontend/loops/for_no_condition_incr.c.dot b/infer/tests/codetoanalyze/c/frontend/loops/for_no_condition_incr.c.dot index 6f90333e6..1388ee67b 100644 --- a/infer/tests/codetoanalyze/c/frontend/loops/for_no_condition_incr.c.dot +++ b/infer/tests/codetoanalyze/c/frontend/loops/for_no_condition_incr.c.dot @@ -28,7 +28,7 @@ digraph cfg { "main.fad58de7366495db4650cfefac2fcd61_7" -> "main.fad58de7366495db4650cfefac2fcd61_3" ; -"main.fad58de7366495db4650cfefac2fcd61_8" [label="8: BinaryOperatorStmt: AddAssign \n n$0=*&j:int [line 13, column 10]\n n$1=*&j:int [line 13, column 5]\n *&j:int=(n$1 + n$0) [line 13, column 5]\n " shape="box"] +"main.fad58de7366495db4650cfefac2fcd61_8" [label="8: BinaryOperatorStmt: AddAssign \n n$1=*&j:int [line 13, column 10]\n n$2=*&j:int [line 13, column 5]\n *&j:int=(n$2 + n$1) [line 13, column 5]\n " shape="box"] "main.fad58de7366495db4650cfefac2fcd61_8" -> "main.fad58de7366495db4650cfefac2fcd61_4" ; diff --git a/infer/tests/codetoanalyze/c/frontend/loops/for_only_body.c.dot b/infer/tests/codetoanalyze/c/frontend/loops/for_only_body.c.dot index 0c4f15935..be07fe6bc 100644 --- a/infer/tests/codetoanalyze/c/frontend/loops/for_only_body.c.dot +++ b/infer/tests/codetoanalyze/c/frontend/loops/for_only_body.c.dot @@ -24,7 +24,7 @@ digraph cfg { "main.fad58de7366495db4650cfefac2fcd61_6" -> "main.fad58de7366495db4650cfefac2fcd61_3" ; -"main.fad58de7366495db4650cfefac2fcd61_7" [label="7: UnaryOperator \n n$0=*&i:int [line 13, column 5]\n *&i:int=(n$0 + 1) [line 13, column 5]\n " shape="box"] +"main.fad58de7366495db4650cfefac2fcd61_7" [label="7: UnaryOperator \n n$2=*&i:int [line 13, column 5]\n *&i:int=(n$2 + 1) [line 13, column 5]\n " shape="box"] "main.fad58de7366495db4650cfefac2fcd61_7" -> "main.fad58de7366495db4650cfefac2fcd61_4" ; diff --git a/infer/tests/codetoanalyze/c/frontend/loops/while_with_continue_and_break.c.dot b/infer/tests/codetoanalyze/c/frontend/loops/while_with_continue_and_break.c.dot index 635702279..80fed4c00 100644 --- a/infer/tests/codetoanalyze/c/frontend/loops/while_with_continue_and_break.c.dot +++ b/infer/tests/codetoanalyze/c/frontend/loops/while_with_continue_and_break.c.dot @@ -58,20 +58,20 @@ digraph cfg { "main.fad58de7366495db4650cfefac2fcd61_14" -> "main.fad58de7366495db4650cfefac2fcd61_11" ; -"main.fad58de7366495db4650cfefac2fcd61_15" [label="15: BinaryOperatorStmt: GT \n n$1=*&x:int [line 15, column 11]\n " shape="box"] +"main.fad58de7366495db4650cfefac2fcd61_15" [label="15: BinaryOperatorStmt: GT \n n$4=*&x:int [line 15, column 11]\n " shape="box"] "main.fad58de7366495db4650cfefac2fcd61_15" -> "main.fad58de7366495db4650cfefac2fcd61_16" ; "main.fad58de7366495db4650cfefac2fcd61_15" -> "main.fad58de7366495db4650cfefac2fcd61_17" ; -"main.fad58de7366495db4650cfefac2fcd61_16" [label="16: Prune (true branch, if) \n PRUNE((n$1 > 5), true); [line 15, column 11]\n " shape="invhouse"] +"main.fad58de7366495db4650cfefac2fcd61_16" [label="16: Prune (true branch, if) \n PRUNE((n$4 > 5), true); [line 15, column 11]\n " shape="invhouse"] "main.fad58de7366495db4650cfefac2fcd61_16" -> "main.fad58de7366495db4650cfefac2fcd61_8" ; -"main.fad58de7366495db4650cfefac2fcd61_17" [label="17: Prune (false branch, if) \n PRUNE(!(n$1 > 5), false); [line 15, column 11]\n " shape="invhouse"] +"main.fad58de7366495db4650cfefac2fcd61_17" [label="17: Prune (false branch, if) \n PRUNE(!(n$4 > 5), false); [line 15, column 11]\n " shape="invhouse"] "main.fad58de7366495db4650cfefac2fcd61_17" -> "main.fad58de7366495db4650cfefac2fcd61_14" ; -"main.fad58de7366495db4650cfefac2fcd61_18" [label="18: BinaryOperatorStmt: AddAssign \n n$2=*&x:int [line 14, column 7]\n *&x:int=(n$2 + 1) [line 14, column 7]\n " shape="box"] +"main.fad58de7366495db4650cfefac2fcd61_18" [label="18: BinaryOperatorStmt: AddAssign \n n$8=*&x:int [line 14, column 7]\n *&x:int=(n$8 + 1) [line 14, column 7]\n " shape="box"] "main.fad58de7366495db4650cfefac2fcd61_18" -> "main.fad58de7366495db4650cfefac2fcd61_15" ; diff --git a/infer/tests/codetoanalyze/c/frontend/nestedoperators/gnuexpr.c.dot b/infer/tests/codetoanalyze/c/frontend/nestedoperators/gnuexpr.c.dot index fef03a363..913279cc7 100644 --- a/infer/tests/codetoanalyze/c/frontend/nestedoperators/gnuexpr.c.dot +++ b/infer/tests/codetoanalyze/c/frontend/nestedoperators/gnuexpr.c.dot @@ -69,11 +69,11 @@ digraph cfg { "with_conditional.c7f3381cc5bd6cfe19bc60c013ae8f1c_5" -> "with_conditional.c7f3381cc5bd6cfe19bc60c013ae8f1c_7" ; -"with_conditional.c7f3381cc5bd6cfe19bc60c013ae8f1c_6" [label="6: ConditinalStmt Branch \n n$2=*&p:int* [line 31, column 10]\n n$3=*n$2:int [line 31, column 9]\n n$4=*&x:int [line 31, column 14]\n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int=(n$3 + n$4) [line 31, column 5]\n " shape="box"] +"with_conditional.c7f3381cc5bd6cfe19bc60c013ae8f1c_6" [label="6: ConditionalStmt Branch \n n$2=*&p:int* [line 31, column 10]\n n$3=*n$2:int [line 31, column 9]\n n$4=*&x:int [line 31, column 14]\n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int=(n$3 + n$4) [line 31, column 5]\n " shape="box"] "with_conditional.c7f3381cc5bd6cfe19bc60c013ae8f1c_6" -> "with_conditional.c7f3381cc5bd6cfe19bc60c013ae8f1c_3" ; -"with_conditional.c7f3381cc5bd6cfe19bc60c013ae8f1c_7" [label="7: ConditinalStmt Branch \n n$5=*&x:int [line 31, column 18]\n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int=n$5 [line 31, column 5]\n " shape="box"] +"with_conditional.c7f3381cc5bd6cfe19bc60c013ae8f1c_7" [label="7: ConditionalStmt Branch \n n$5=*&x:int [line 31, column 18]\n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int=n$5 [line 31, column 5]\n " shape="box"] "with_conditional.c7f3381cc5bd6cfe19bc60c013ae8f1c_7" -> "with_conditional.c7f3381cc5bd6cfe19bc60c013ae8f1c_3" ; diff --git a/infer/tests/codetoanalyze/c/frontend/offsetof_expr/offsetof_expr.c.dot b/infer/tests/codetoanalyze/c/frontend/offsetof_expr/offsetof_expr.c.dot index 82e8a3e77..d15ab1eed 100644 --- a/infer/tests/codetoanalyze/c/frontend/offsetof_expr/offsetof_expr.c.dot +++ b/infer/tests/codetoanalyze/c/frontend/offsetof_expr/offsetof_expr.c.dot @@ -36,7 +36,7 @@ digraph cfg { "test_offsetof_expr.8f3e634fd0f68dff5e4bfedc8f65a55f_9" -> "test_offsetof_expr.8f3e634fd0f68dff5e4bfedc8f65a55f_2" ; -"test_offsetof_expr.8f3e634fd0f68dff5e4bfedc8f65a55f_10" [label="10: DeclStmt \n *&i:int=n$1 [line 19, column 3]\n " shape="box"] +"test_offsetof_expr.8f3e634fd0f68dff5e4bfedc8f65a55f_10" [label="10: DeclStmt \n *&i:int=n$2 [line 19, column 3]\n " shape="box"] "test_offsetof_expr.8f3e634fd0f68dff5e4bfedc8f65a55f_10" -> "test_offsetof_expr.8f3e634fd0f68dff5e4bfedc8f65a55f_5" ; diff --git a/infer/tests/codetoanalyze/c/frontend/switchstmt/switch.c.dot b/infer/tests/codetoanalyze/c/frontend/switchstmt/switch.c.dot index 9d240abf2..973fc6417 100644 --- a/infer/tests/codetoanalyze/c/frontend/switchstmt/switch.c.dot +++ b/infer/tests/codetoanalyze/c/frontend/switchstmt/switch.c.dot @@ -52,7 +52,7 @@ digraph cfg { "m1.ae7be26cdaa742ca148068d5ac90eaca_10" -> "m1.ae7be26cdaa742ca148068d5ac90eaca_11" ; -"m1.ae7be26cdaa742ca148068d5ac90eaca_11" [label="11: Call _fun_printf \n n$3=_fun_printf(\"(2/def)HELLO WORLD!\":char const *) [line 27, column 9]\n " shape="box"] +"m1.ae7be26cdaa742ca148068d5ac90eaca_11" [label="11: Call _fun_printf \n n$4=_fun_printf(\"(2/def)HELLO WORLD!\":char const *) [line 27, column 9]\n " shape="box"] "m1.ae7be26cdaa742ca148068d5ac90eaca_11" -> "m1.ae7be26cdaa742ca148068d5ac90eaca_4" ; @@ -64,7 +64,7 @@ digraph cfg { "m1.ae7be26cdaa742ca148068d5ac90eaca_13" -> "m1.ae7be26cdaa742ca148068d5ac90eaca_10" ; -"m1.ae7be26cdaa742ca148068d5ac90eaca_14" [label="14: Call _fun_printf \n n$4=_fun_printf(\"(1)HELLO WORLD!\":char const *) [line 23, column 9]\n " shape="box"] +"m1.ae7be26cdaa742ca148068d5ac90eaca_14" [label="14: Call _fun_printf \n n$6=_fun_printf(\"(1)HELLO WORLD!\":char const *) [line 23, column 9]\n " shape="box"] "m1.ae7be26cdaa742ca148068d5ac90eaca_14" -> "m1.ae7be26cdaa742ca148068d5ac90eaca_4" ; @@ -77,7 +77,7 @@ digraph cfg { "m1.ae7be26cdaa742ca148068d5ac90eaca_16" -> "m1.ae7be26cdaa742ca148068d5ac90eaca_12" ; "m1.ae7be26cdaa742ca148068d5ac90eaca_16" -> "m1.ae7be26cdaa742ca148068d5ac90eaca_13" ; -"m1.ae7be26cdaa742ca148068d5ac90eaca_17" [label="17: Call _fun_printf \n n$5=_fun_printf(\"(0)HELLO WORLD!\":char const *) [line 20, column 9]\n " shape="box"] +"m1.ae7be26cdaa742ca148068d5ac90eaca_17" [label="17: Call _fun_printf \n n$8=_fun_printf(\"(0)HELLO WORLD!\":char const *) [line 20, column 9]\n " shape="box"] "m1.ae7be26cdaa742ca148068d5ac90eaca_17" -> "m1.ae7be26cdaa742ca148068d5ac90eaca_8" ; @@ -90,11 +90,11 @@ digraph cfg { "m1.ae7be26cdaa742ca148068d5ac90eaca_19" -> "m1.ae7be26cdaa742ca148068d5ac90eaca_15" ; "m1.ae7be26cdaa742ca148068d5ac90eaca_19" -> "m1.ae7be26cdaa742ca148068d5ac90eaca_16" ; -"m1.ae7be26cdaa742ca148068d5ac90eaca_20" [label="20: BinaryOperatorStmt: Assign \n n$6=*&value:int [line 18, column 11]\n *&x:int=(n$6 + 1) [line 18, column 7]\n " shape="box"] +"m1.ae7be26cdaa742ca148068d5ac90eaca_20" [label="20: BinaryOperatorStmt: Assign \n n$9=*&value:int [line 18, column 11]\n *&x:int=(n$9 + 1) [line 18, column 7]\n " shape="box"] "m1.ae7be26cdaa742ca148068d5ac90eaca_20" -> "m1.ae7be26cdaa742ca148068d5ac90eaca_17" ; -"m1.ae7be26cdaa742ca148068d5ac90eaca_21" [label="21: Call _fun_printf \n n$7=_fun_printf(\"(out)HELLO WORLD!\":char const *) [line 17, column 7]\n " shape="box"] +"m1.ae7be26cdaa742ca148068d5ac90eaca_21" [label="21: Call _fun_printf \n n$10=_fun_printf(\"(out)HELLO WORLD!\":char const *) [line 17, column 7]\n " shape="box"] "m1.ae7be26cdaa742ca148068d5ac90eaca_21" -> "m1.ae7be26cdaa742ca148068d5ac90eaca_20" ; @@ -153,11 +153,11 @@ digraph cfg { "m11.c4534fe0ca256b331e9a3f14fe17229d_7" -> "m11.c4534fe0ca256b331e9a3f14fe17229d_9" ; -"m11.c4534fe0ca256b331e9a3f14fe17229d_8" [label="8: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int=7 [line 193, column 20]\n " shape="box"] +"m11.c4534fe0ca256b331e9a3f14fe17229d_8" [label="8: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int=7 [line 193, column 20]\n " shape="box"] "m11.c4534fe0ca256b331e9a3f14fe17229d_8" -> "m11.c4534fe0ca256b331e9a3f14fe17229d_4" ; -"m11.c4534fe0ca256b331e9a3f14fe17229d_9" [label="9: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int=9 [line 193, column 20]\n " shape="box"] +"m11.c4534fe0ca256b331e9a3f14fe17229d_9" [label="9: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int=9 [line 193, column 20]\n " shape="box"] "m11.c4534fe0ca256b331e9a3f14fe17229d_9" -> "m11.c4534fe0ca256b331e9a3f14fe17229d_4" ; @@ -223,7 +223,7 @@ digraph cfg { "m2.aaf2f89992379705dac844c0a2a1d45f_10" -> "m2.aaf2f89992379705dac844c0a2a1d45f_3" ; -"m2.aaf2f89992379705dac844c0a2a1d45f_11" [label="11: UnaryOperator \n n$1=*&something:int [line 49, column 7]\n *&something:int=(n$1 + 1) [line 49, column 7]\n " shape="box"] +"m2.aaf2f89992379705dac844c0a2a1d45f_11" [label="11: UnaryOperator \n n$3=*&something:int [line 49, column 7]\n *&something:int=(n$3 + 1) [line 49, column 7]\n " shape="box"] "m2.aaf2f89992379705dac844c0a2a1d45f_11" -> "m2.aaf2f89992379705dac844c0a2a1d45f_10" ; @@ -244,7 +244,7 @@ digraph cfg { "m2.aaf2f89992379705dac844c0a2a1d45f_15" -> "m2.aaf2f89992379705dac844c0a2a1d45f_12" ; -"m2.aaf2f89992379705dac844c0a2a1d45f_16" [label="16: Call _fun_printf \n n$2=_fun_printf(\"(0)HELLO WORLD!\":char const *) [line 42, column 7]\n " shape="box"] +"m2.aaf2f89992379705dac844c0a2a1d45f_16" [label="16: Call _fun_printf \n n$5=_fun_printf(\"(0)HELLO WORLD!\":char const *) [line 42, column 7]\n " shape="box"] "m2.aaf2f89992379705dac844c0a2a1d45f_16" -> "m2.aaf2f89992379705dac844c0a2a1d45f_3" ; @@ -257,11 +257,11 @@ digraph cfg { "m2.aaf2f89992379705dac844c0a2a1d45f_18" -> "m2.aaf2f89992379705dac844c0a2a1d45f_13" ; "m2.aaf2f89992379705dac844c0a2a1d45f_18" -> "m2.aaf2f89992379705dac844c0a2a1d45f_14" ; -"m2.aaf2f89992379705dac844c0a2a1d45f_19" [label="19: BinaryOperatorStmt: Assign \n n$3=*&value:int [line 40, column 9]\n *&x:int=(n$3 + 1) [line 40, column 5]\n " shape="box"] +"m2.aaf2f89992379705dac844c0a2a1d45f_19" [label="19: BinaryOperatorStmt: Assign \n n$6=*&value:int [line 40, column 9]\n *&x:int=(n$6 + 1) [line 40, column 5]\n " shape="box"] "m2.aaf2f89992379705dac844c0a2a1d45f_19" -> "m2.aaf2f89992379705dac844c0a2a1d45f_16" ; -"m2.aaf2f89992379705dac844c0a2a1d45f_20" [label="20: Call _fun_printf \n n$4=_fun_printf(\"(out)HELLO WORLD!\":char const *) [line 39, column 5]\n " shape="box"] +"m2.aaf2f89992379705dac844c0a2a1d45f_20" [label="20: Call _fun_printf \n n$7=_fun_printf(\"(out)HELLO WORLD!\":char const *) [line 39, column 5]\n " shape="box"] "m2.aaf2f89992379705dac844c0a2a1d45f_20" -> "m2.aaf2f89992379705dac844c0a2a1d45f_19" ; @@ -310,7 +310,7 @@ digraph cfg { "m3.9678f7a7939f457fa0d9353761e189c7_9" -> "m3.9678f7a7939f457fa0d9353761e189c7_3" ; -"m3.9678f7a7939f457fa0d9353761e189c7_10" [label="10: UnaryOperator \n n$1=*&something:int [line 68, column 7]\n *&something:int=(n$1 + 1) [line 68, column 7]\n " shape="box"] +"m3.9678f7a7939f457fa0d9353761e189c7_10" [label="10: UnaryOperator \n n$3=*&something:int [line 68, column 7]\n *&something:int=(n$3 + 1) [line 68, column 7]\n " shape="box"] "m3.9678f7a7939f457fa0d9353761e189c7_10" -> "m3.9678f7a7939f457fa0d9353761e189c7_3" ; @@ -327,7 +327,7 @@ digraph cfg { "m3.9678f7a7939f457fa0d9353761e189c7_13" -> "m3.9678f7a7939f457fa0d9353761e189c7_7" ; "m3.9678f7a7939f457fa0d9353761e189c7_13" -> "m3.9678f7a7939f457fa0d9353761e189c7_8" ; -"m3.9678f7a7939f457fa0d9353761e189c7_14" [label="14: Call _fun_printf \n n$2=_fun_printf(\"(0)HELLO WORLD!\":char const *) [line 64, column 7]\n " shape="box"] +"m3.9678f7a7939f457fa0d9353761e189c7_14" [label="14: Call _fun_printf \n n$5=_fun_printf(\"(0)HELLO WORLD!\":char const *) [line 64, column 7]\n " shape="box"] "m3.9678f7a7939f457fa0d9353761e189c7_14" -> "m3.9678f7a7939f457fa0d9353761e189c7_3" ; @@ -385,7 +385,7 @@ digraph cfg { "m4.fd6b6fc9220b72d21683ae8e4f50a210_10" -> "m4.fd6b6fc9220b72d21683ae8e4f50a210_3" ; -"m4.fd6b6fc9220b72d21683ae8e4f50a210_11" [label="11: UnaryOperator \n n$1=*&something:int [line 92, column 7]\n *&something:int=(n$1 + 1) [line 92, column 7]\n " shape="box"] +"m4.fd6b6fc9220b72d21683ae8e4f50a210_11" [label="11: UnaryOperator \n n$3=*&something:int [line 92, column 7]\n *&something:int=(n$3 + 1) [line 92, column 7]\n " shape="box"] "m4.fd6b6fc9220b72d21683ae8e4f50a210_11" -> "m4.fd6b6fc9220b72d21683ae8e4f50a210_10" ; @@ -406,7 +406,7 @@ digraph cfg { "m4.fd6b6fc9220b72d21683ae8e4f50a210_15" -> "m4.fd6b6fc9220b72d21683ae8e4f50a210_12" ; -"m4.fd6b6fc9220b72d21683ae8e4f50a210_16" [label="16: Call _fun_printf \n n$2=_fun_printf(\"(0)HELLO WORLD!\":char const *) [line 85, column 7]\n " shape="box"] +"m4.fd6b6fc9220b72d21683ae8e4f50a210_16" [label="16: Call _fun_printf \n n$5=_fun_printf(\"(0)HELLO WORLD!\":char const *) [line 85, column 7]\n " shape="box"] "m4.fd6b6fc9220b72d21683ae8e4f50a210_16" -> "m4.fd6b6fc9220b72d21683ae8e4f50a210_3" ; @@ -419,11 +419,11 @@ digraph cfg { "m4.fd6b6fc9220b72d21683ae8e4f50a210_18" -> "m4.fd6b6fc9220b72d21683ae8e4f50a210_13" ; "m4.fd6b6fc9220b72d21683ae8e4f50a210_18" -> "m4.fd6b6fc9220b72d21683ae8e4f50a210_14" ; -"m4.fd6b6fc9220b72d21683ae8e4f50a210_19" [label="19: BinaryOperatorStmt: Assign \n n$3=*&value:int [line 83, column 9]\n *&x:int=(n$3 + 1) [line 83, column 5]\n " shape="box"] +"m4.fd6b6fc9220b72d21683ae8e4f50a210_19" [label="19: BinaryOperatorStmt: Assign \n n$6=*&value:int [line 83, column 9]\n *&x:int=(n$6 + 1) [line 83, column 5]\n " shape="box"] "m4.fd6b6fc9220b72d21683ae8e4f50a210_19" -> "m4.fd6b6fc9220b72d21683ae8e4f50a210_16" ; -"m4.fd6b6fc9220b72d21683ae8e4f50a210_20" [label="20: Call _fun_printf \n n$4=_fun_printf(\"(out)HELLO WORLD!\":char const *) [line 82, column 5]\n " shape="box"] +"m4.fd6b6fc9220b72d21683ae8e4f50a210_20" [label="20: Call _fun_printf \n n$7=_fun_printf(\"(out)HELLO WORLD!\":char const *) [line 82, column 5]\n " shape="box"] "m4.fd6b6fc9220b72d21683ae8e4f50a210_20" -> "m4.fd6b6fc9220b72d21683ae8e4f50a210_19" ; @@ -468,7 +468,7 @@ digraph cfg { "m5.7b1f6dff14d8c2dfeb7da9487be0612d_8" -> "m5.7b1f6dff14d8c2dfeb7da9487be0612d_10" ; "m5.7b1f6dff14d8c2dfeb7da9487be0612d_8" -> "m5.7b1f6dff14d8c2dfeb7da9487be0612d_11" ; -"m5.7b1f6dff14d8c2dfeb7da9487be0612d_9" [label="9: Call _fun_printf \n n$2=_fun_printf(\"(0)HELLO WORLD!\":char const *) [line 112, column 9]\n " shape="box"] +"m5.7b1f6dff14d8c2dfeb7da9487be0612d_9" [label="9: Call _fun_printf \n n$3=_fun_printf(\"(0)HELLO WORLD!\":char const *) [line 112, column 9]\n " shape="box"] "m5.7b1f6dff14d8c2dfeb7da9487be0612d_9" -> "m5.7b1f6dff14d8c2dfeb7da9487be0612d_4" ; @@ -480,11 +480,11 @@ digraph cfg { "m5.7b1f6dff14d8c2dfeb7da9487be0612d_11" -> "m5.7b1f6dff14d8c2dfeb7da9487be0612d_4" ; -"m5.7b1f6dff14d8c2dfeb7da9487be0612d_12" [label="12: BinaryOperatorStmt: Assign \n n$3=*&value:int [line 109, column 11]\n *&x:int=(n$3 + 1) [line 109, column 7]\n " shape="box"] +"m5.7b1f6dff14d8c2dfeb7da9487be0612d_12" [label="12: BinaryOperatorStmt: Assign \n n$5=*&value:int [line 109, column 11]\n *&x:int=(n$5 + 1) [line 109, column 7]\n " shape="box"] "m5.7b1f6dff14d8c2dfeb7da9487be0612d_12" -> "m5.7b1f6dff14d8c2dfeb7da9487be0612d_4" ; -"m5.7b1f6dff14d8c2dfeb7da9487be0612d_13" [label="13: Call _fun_printf \n n$4=_fun_printf(\"(out)HELLO WORLD!\":char const *) [line 108, column 7]\n " shape="box"] +"m5.7b1f6dff14d8c2dfeb7da9487be0612d_13" [label="13: Call _fun_printf \n n$6=_fun_printf(\"(out)HELLO WORLD!\":char const *) [line 108, column 7]\n " shape="box"] "m5.7b1f6dff14d8c2dfeb7da9487be0612d_13" -> "m5.7b1f6dff14d8c2dfeb7da9487be0612d_12" ; @@ -524,11 +524,11 @@ digraph cfg { "m6.36604411a85db2bd9e97e22bfb5b692d_7" -> "m6.36604411a85db2bd9e97e22bfb5b692d_9" ; -"m6.36604411a85db2bd9e97e22bfb5b692d_8" [label="8: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int=1 [line 121, column 11]\n " shape="box"] +"m6.36604411a85db2bd9e97e22bfb5b692d_8" [label="8: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int=1 [line 121, column 11]\n " shape="box"] "m6.36604411a85db2bd9e97e22bfb5b692d_8" -> "m6.36604411a85db2bd9e97e22bfb5b692d_4" ; -"m6.36604411a85db2bd9e97e22bfb5b692d_9" [label="9: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int=0 [line 121, column 11]\n " shape="box"] +"m6.36604411a85db2bd9e97e22bfb5b692d_9" [label="9: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int=0 [line 121, column 11]\n " shape="box"] "m6.36604411a85db2bd9e97e22bfb5b692d_9" -> "m6.36604411a85db2bd9e97e22bfb5b692d_4" ; @@ -558,7 +558,7 @@ digraph cfg { "m6.36604411a85db2bd9e97e22bfb5b692d_15" -> "m6.36604411a85db2bd9e97e22bfb5b692d_3" ; -"m6.36604411a85db2bd9e97e22bfb5b692d_16" [label="16: UnaryOperator \n n$3=*&something:int [line 127, column 7]\n *&something:int=(n$3 + 1) [line 127, column 7]\n " shape="box"] +"m6.36604411a85db2bd9e97e22bfb5b692d_16" [label="16: UnaryOperator \n n$5=*&something:int [line 127, column 7]\n *&something:int=(n$5 + 1) [line 127, column 7]\n " shape="box"] "m6.36604411a85db2bd9e97e22bfb5b692d_16" -> "m6.36604411a85db2bd9e97e22bfb5b692d_3" ; @@ -575,7 +575,7 @@ digraph cfg { "m6.36604411a85db2bd9e97e22bfb5b692d_19" -> "m6.36604411a85db2bd9e97e22bfb5b692d_13" ; "m6.36604411a85db2bd9e97e22bfb5b692d_19" -> "m6.36604411a85db2bd9e97e22bfb5b692d_14" ; -"m6.36604411a85db2bd9e97e22bfb5b692d_20" [label="20: Call _fun_printf \n n$4=_fun_printf(\"(0)HELLO WORLD!\":char const *) [line 123, column 7]\n " shape="box"] +"m6.36604411a85db2bd9e97e22bfb5b692d_20" [label="20: Call _fun_printf \n n$7=_fun_printf(\"(0)HELLO WORLD!\":char const *) [line 123, column 7]\n " shape="box"] "m6.36604411a85db2bd9e97e22bfb5b692d_20" -> "m6.36604411a85db2bd9e97e22bfb5b692d_3" ; @@ -629,7 +629,7 @@ digraph cfg { "m7.0449904fbf32607bf8ce5c26823dbc29_9" -> "m7.0449904fbf32607bf8ce5c26823dbc29_3" ; -"m7.0449904fbf32607bf8ce5c26823dbc29_10" [label="10: UnaryOperator \n n$1=*&something:int [line 147, column 7]\n *&something:int=(n$1 + 1) [line 147, column 7]\n " shape="box"] +"m7.0449904fbf32607bf8ce5c26823dbc29_10" [label="10: UnaryOperator \n n$3=*&something:int [line 147, column 7]\n *&something:int=(n$3 + 1) [line 147, column 7]\n " shape="box"] "m7.0449904fbf32607bf8ce5c26823dbc29_10" -> "m7.0449904fbf32607bf8ce5c26823dbc29_3" ; @@ -646,7 +646,7 @@ digraph cfg { "m7.0449904fbf32607bf8ce5c26823dbc29_13" -> "m7.0449904fbf32607bf8ce5c26823dbc29_7" ; "m7.0449904fbf32607bf8ce5c26823dbc29_13" -> "m7.0449904fbf32607bf8ce5c26823dbc29_8" ; -"m7.0449904fbf32607bf8ce5c26823dbc29_14" [label="14: Call _fun_printf \n n$2=_fun_printf(\"(0)HELLO WORLD!\":char const *) [line 143, column 7]\n " shape="box"] +"m7.0449904fbf32607bf8ce5c26823dbc29_14" [label="14: Call _fun_printf \n n$5=_fun_printf(\"(0)HELLO WORLD!\":char const *) [line 143, column 7]\n " shape="box"] "m7.0449904fbf32607bf8ce5c26823dbc29_14" -> "m7.0449904fbf32607bf8ce5c26823dbc29_3" ; @@ -712,11 +712,11 @@ digraph cfg { "m8.980b79c2a71b9bcc117e08a990b5b332_12" -> "m8.980b79c2a71b9bcc117e08a990b5b332_14" ; -"m8.980b79c2a71b9bcc117e08a990b5b332_13" [label="13: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$1:int=1 [line 160, column 13]\n " shape="box"] +"m8.980b79c2a71b9bcc117e08a990b5b332_13" [label="13: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$1:int=1 [line 160, column 13]\n " shape="box"] "m8.980b79c2a71b9bcc117e08a990b5b332_13" -> "m8.980b79c2a71b9bcc117e08a990b5b332_9" ; -"m8.980b79c2a71b9bcc117e08a990b5b332_14" [label="14: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$1:int=2 [line 160, column 13]\n " shape="box"] +"m8.980b79c2a71b9bcc117e08a990b5b332_14" [label="14: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$1:int=2 [line 160, column 13]\n " shape="box"] "m8.980b79c2a71b9bcc117e08a990b5b332_14" -> "m8.980b79c2a71b9bcc117e08a990b5b332_9" ; @@ -746,7 +746,7 @@ digraph cfg { "m8.980b79c2a71b9bcc117e08a990b5b332_20" -> "m8.980b79c2a71b9bcc117e08a990b5b332_8" ; -"m8.980b79c2a71b9bcc117e08a990b5b332_21" [label="21: UnaryOperator \n n$4=*&something:int [line 166, column 9]\n *&something:int=(n$4 + 1) [line 166, column 9]\n " shape="box"] +"m8.980b79c2a71b9bcc117e08a990b5b332_21" [label="21: UnaryOperator \n n$7=*&something:int [line 166, column 9]\n *&something:int=(n$7 + 1) [line 166, column 9]\n " shape="box"] "m8.980b79c2a71b9bcc117e08a990b5b332_21" -> "m8.980b79c2a71b9bcc117e08a990b5b332_4" ; @@ -767,7 +767,7 @@ digraph cfg { "m8.980b79c2a71b9bcc117e08a990b5b332_25" -> "m8.980b79c2a71b9bcc117e08a990b5b332_2" ; -"m8.980b79c2a71b9bcc117e08a990b5b332_26" [label="26: Call _fun_printf \n n$5=_fun_printf(\"(0)HELLO WORLD!\":char const *) [line 162, column 9]\n " shape="box"] +"m8.980b79c2a71b9bcc117e08a990b5b332_26" [label="26: Call _fun_printf \n n$8=_fun_printf(\"(0)HELLO WORLD!\":char const *) [line 162, column 9]\n " shape="box"] "m8.980b79c2a71b9bcc117e08a990b5b332_26" -> "m8.980b79c2a71b9bcc117e08a990b5b332_25" ; diff --git a/infer/tests/codetoanalyze/c/frontend/vaarg_expr/vaarg_expr.c.dot b/infer/tests/codetoanalyze/c/frontend/vaarg_expr/vaarg_expr.c.dot index d17e37626..6210065cb 100644 --- a/infer/tests/codetoanalyze/c/frontend/vaarg_expr/vaarg_expr.c.dot +++ b/infer/tests/codetoanalyze/c/frontend/vaarg_expr/vaarg_expr.c.dot @@ -40,11 +40,11 @@ digraph cfg { "vaarg_foo.73af1e8d32c2d09f7488c5fea173b853_10" -> "vaarg_foo.73af1e8d32c2d09f7488c5fea173b853_5" ; -"vaarg_foo.73af1e8d32c2d09f7488c5fea173b853_11" [label="11: DeclStmt \n *&i:int=n$3 [line 15, column 3]\n " shape="box"] +"vaarg_foo.73af1e8d32c2d09f7488c5fea173b853_11" [label="11: DeclStmt \n *&i:int=n$4 [line 15, column 3]\n " shape="box"] "vaarg_foo.73af1e8d32c2d09f7488c5fea173b853_11" -> "vaarg_foo.73af1e8d32c2d09f7488c5fea173b853_6" ; -"vaarg_foo.73af1e8d32c2d09f7488c5fea173b853_12" [label="12: Call _fun___builtin_va_start \n n$4=_fun___builtin_va_start(&valist:void*,&x:int&) [line 14, column 3]\n " shape="box"] +"vaarg_foo.73af1e8d32c2d09f7488c5fea173b853_12" [label="12: Call _fun___builtin_va_start \n n$5=_fun___builtin_va_start(&valist:void*,&x:int&) [line 14, column 3]\n " shape="box"] "vaarg_foo.73af1e8d32c2d09f7488c5fea173b853_12" -> "vaarg_foo.73af1e8d32c2d09f7488c5fea173b853_11" ; diff --git a/infer/tests/codetoanalyze/cpp/frontend/attributes/clang_fallthrough.cpp.dot b/infer/tests/codetoanalyze/cpp/frontend/attributes/clang_fallthrough.cpp.dot index 3a9361d6d..03738c54a 100644 --- a/infer/tests/codetoanalyze/cpp/frontend/attributes/clang_fallthrough.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/frontend/attributes/clang_fallthrough.cpp.dot @@ -22,46 +22,46 @@ digraph cfg { "switch_with_fallthrough#6355028676793350740.9380c19327ea36a0a69b7e115d031492_3" -> "switch_with_fallthrough#6355028676793350740.9380c19327ea36a0a69b7e115d031492_2" ; -"switch_with_fallthrough#6355028676793350740.9380c19327ea36a0a69b7e115d031492_4" [label="4: Switch_stmt \n n$1=*&n:int [line 14, column 11]\n " shape="box"] +"switch_with_fallthrough#6355028676793350740.9380c19327ea36a0a69b7e115d031492_4" [label="4: Switch_stmt \n n$2=*&n:int [line 14, column 11]\n " shape="box"] "switch_with_fallthrough#6355028676793350740.9380c19327ea36a0a69b7e115d031492_4" -> "switch_with_fallthrough#6355028676793350740.9380c19327ea36a0a69b7e115d031492_12" ; "switch_with_fallthrough#6355028676793350740.9380c19327ea36a0a69b7e115d031492_4" -> "switch_with_fallthrough#6355028676793350740.9380c19327ea36a0a69b7e115d031492_13" ; -"switch_with_fallthrough#6355028676793350740.9380c19327ea36a0a69b7e115d031492_5" [label="5: BinaryOperatorStmt: Assign \n n$2=_fun_h() [line 21, column 13]\n *&res:int=n$2 [line 21, column 7]\n " shape="box"] +"switch_with_fallthrough#6355028676793350740.9380c19327ea36a0a69b7e115d031492_5" [label="5: BinaryOperatorStmt: Assign \n n$5=_fun_h() [line 21, column 13]\n *&res:int=n$5 [line 21, column 7]\n " shape="box"] "switch_with_fallthrough#6355028676793350740.9380c19327ea36a0a69b7e115d031492_5" -> "switch_with_fallthrough#6355028676793350740.9380c19327ea36a0a69b7e115d031492_3" ; -"switch_with_fallthrough#6355028676793350740.9380c19327ea36a0a69b7e115d031492_6" [label="6: Prune (true branch, switch) \n PRUNE((n$1 == 77), true); [line 20, column 5]\n " shape="invhouse"] +"switch_with_fallthrough#6355028676793350740.9380c19327ea36a0a69b7e115d031492_6" [label="6: Prune (true branch, switch) \n PRUNE((n$2 == 77), true); [line 20, column 5]\n " shape="invhouse"] "switch_with_fallthrough#6355028676793350740.9380c19327ea36a0a69b7e115d031492_6" -> "switch_with_fallthrough#6355028676793350740.9380c19327ea36a0a69b7e115d031492_5" ; -"switch_with_fallthrough#6355028676793350740.9380c19327ea36a0a69b7e115d031492_7" [label="7: Prune (false branch, switch) \n PRUNE(!(n$1 == 77), false); [line 20, column 5]\n " shape="invhouse"] +"switch_with_fallthrough#6355028676793350740.9380c19327ea36a0a69b7e115d031492_7" [label="7: Prune (false branch, switch) \n PRUNE(!(n$2 == 77), false); [line 20, column 5]\n " shape="invhouse"] "switch_with_fallthrough#6355028676793350740.9380c19327ea36a0a69b7e115d031492_7" -> "switch_with_fallthrough#6355028676793350740.9380c19327ea36a0a69b7e115d031492_3" ; -"switch_with_fallthrough#6355028676793350740.9380c19327ea36a0a69b7e115d031492_8" [label="8: Prune (true branch, switch) \n PRUNE((n$1 == 66), true); [line 18, column 5]\n " shape="invhouse"] +"switch_with_fallthrough#6355028676793350740.9380c19327ea36a0a69b7e115d031492_8" [label="8: Prune (true branch, switch) \n PRUNE((n$2 == 66), true); [line 18, column 5]\n " shape="invhouse"] "switch_with_fallthrough#6355028676793350740.9380c19327ea36a0a69b7e115d031492_8" -> "switch_with_fallthrough#6355028676793350740.9380c19327ea36a0a69b7e115d031492_5" ; -"switch_with_fallthrough#6355028676793350740.9380c19327ea36a0a69b7e115d031492_9" [label="9: Prune (false branch, switch) \n PRUNE(!(n$1 == 66), false); [line 18, column 5]\n " shape="invhouse"] +"switch_with_fallthrough#6355028676793350740.9380c19327ea36a0a69b7e115d031492_9" [label="9: Prune (false branch, switch) \n PRUNE(!(n$2 == 66), false); [line 18, column 5]\n " shape="invhouse"] "switch_with_fallthrough#6355028676793350740.9380c19327ea36a0a69b7e115d031492_9" -> "switch_with_fallthrough#6355028676793350740.9380c19327ea36a0a69b7e115d031492_6" ; "switch_with_fallthrough#6355028676793350740.9380c19327ea36a0a69b7e115d031492_9" -> "switch_with_fallthrough#6355028676793350740.9380c19327ea36a0a69b7e115d031492_7" ; -"switch_with_fallthrough#6355028676793350740.9380c19327ea36a0a69b7e115d031492_10" [label="10: Prune (true branch, switch) \n PRUNE((n$1 == 33), true); [line 16, column 5]\n " shape="invhouse"] +"switch_with_fallthrough#6355028676793350740.9380c19327ea36a0a69b7e115d031492_10" [label="10: Prune (true branch, switch) \n PRUNE((n$2 == 33), true); [line 16, column 5]\n " shape="invhouse"] "switch_with_fallthrough#6355028676793350740.9380c19327ea36a0a69b7e115d031492_10" -> "switch_with_fallthrough#6355028676793350740.9380c19327ea36a0a69b7e115d031492_5" ; -"switch_with_fallthrough#6355028676793350740.9380c19327ea36a0a69b7e115d031492_11" [label="11: Prune (false branch, switch) \n PRUNE(!(n$1 == 33), false); [line 16, column 5]\n " shape="invhouse"] +"switch_with_fallthrough#6355028676793350740.9380c19327ea36a0a69b7e115d031492_11" [label="11: Prune (false branch, switch) \n PRUNE(!(n$2 == 33), false); [line 16, column 5]\n " shape="invhouse"] "switch_with_fallthrough#6355028676793350740.9380c19327ea36a0a69b7e115d031492_11" -> "switch_with_fallthrough#6355028676793350740.9380c19327ea36a0a69b7e115d031492_8" ; "switch_with_fallthrough#6355028676793350740.9380c19327ea36a0a69b7e115d031492_11" -> "switch_with_fallthrough#6355028676793350740.9380c19327ea36a0a69b7e115d031492_9" ; -"switch_with_fallthrough#6355028676793350740.9380c19327ea36a0a69b7e115d031492_12" [label="12: Prune (true branch, switch) \n PRUNE((n$1 == 22), true); [line 15, column 5]\n " shape="invhouse"] +"switch_with_fallthrough#6355028676793350740.9380c19327ea36a0a69b7e115d031492_12" [label="12: Prune (true branch, switch) \n PRUNE((n$2 == 22), true); [line 15, column 5]\n " shape="invhouse"] "switch_with_fallthrough#6355028676793350740.9380c19327ea36a0a69b7e115d031492_12" -> "switch_with_fallthrough#6355028676793350740.9380c19327ea36a0a69b7e115d031492_5" ; -"switch_with_fallthrough#6355028676793350740.9380c19327ea36a0a69b7e115d031492_13" [label="13: Prune (false branch, switch) \n PRUNE(!(n$1 == 22), false); [line 15, column 5]\n " shape="invhouse"] +"switch_with_fallthrough#6355028676793350740.9380c19327ea36a0a69b7e115d031492_13" [label="13: Prune (false branch, switch) \n PRUNE(!(n$2 == 22), false); [line 15, column 5]\n " shape="invhouse"] "switch_with_fallthrough#6355028676793350740.9380c19327ea36a0a69b7e115d031492_13" -> "switch_with_fallthrough#6355028676793350740.9380c19327ea36a0a69b7e115d031492_10" ; diff --git a/infer/tests/codetoanalyze/cpp/frontend/builtin/new.cpp.dot b/infer/tests/codetoanalyze/cpp/frontend/builtin/new.cpp.dot index 906c8366c..76e918d60 100644 --- a/infer/tests/codetoanalyze/cpp/frontend/builtin/new.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/frontend/builtin/new.cpp.dot @@ -18,15 +18,15 @@ digraph cfg { "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_2" [label="2: Exit test \n " color=yellow style=filled] -"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_3" [label="3: Call delete \n n$0=*&i:int* [line 14, column 10]\n n$1=_fun___delete(n$0:int*) [line 14, column 3]\n " shape="box"] +"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_3" [label="3: Call delete \n n$1=*&i:int* [line 14, column 10]\n n$2=_fun___delete(n$1:int*) [line 14, column 3]\n " shape="box"] "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_3" -> "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_2" ; -"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_4" [label="4: CXXNewExpr \n n$2=_fun___new(sizeof(t=int):unsigned long) [line 13, column 3]\n " shape="box"] +"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_4" [label="4: CXXNewExpr \n n$3=_fun___new(sizeof(t=int):unsigned long) [line 13, column 3]\n " shape="box"] "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_4" -> "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_3" ; -"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_5" [label="5: DeclStmt \n n$3=_fun___new(sizeof(t=int):unsigned long) [line 12, column 12]\n *&i:int*=n$3 [line 12, column 3]\n " shape="box"] +"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_5" [label="5: DeclStmt \n n$4=_fun___new(sizeof(t=int):unsigned long) [line 12, column 12]\n *&i:int*=n$4 [line 12, column 3]\n " shape="box"] "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_5" -> "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_4" ; @@ -41,7 +41,7 @@ digraph cfg { "test_placement#7589029240520377616.7f92d4e10c030674dddd1682731c0ba3_2" [label="2: Exit test_placement \n " color=yellow style=filled] -"test_placement#7589029240520377616.7f92d4e10c030674dddd1682731c0ba3_3" [label="3: DeclStmt \n n$2=*&ptr:void* [line 26, column 60]\n n$0=*&ptr2:int* [line 26, column 65]\n *&ptr2:int*=(n$0 + 1) [line 26, column 65]\n n$1=*&ptr2:int* [line 26, column 65]\n n$3=_fun___placement_new(sizeof(t=A):unsigned long,n$2:void*,n$1:void*) [line 26, column 55]\n n$4=_fun_A_A(n$3:A*) [line 26, column 73]\n *&p:A*=n$3 [line 26, column 45]\n " shape="box"] +"test_placement#7589029240520377616.7f92d4e10c030674dddd1682731c0ba3_3" [label="3: DeclStmt \n n$3=*&ptr:void* [line 26, column 60]\n n$1=*&ptr2:int* [line 26, column 65]\n *&ptr2:int*=(n$1 + 1) [line 26, column 65]\n n$2=*&ptr2:int* [line 26, column 65]\n n$4=_fun___placement_new(sizeof(t=A):unsigned long,n$3:void*,n$2:void*) [line 26, column 55]\n n$5=_fun_A_A(n$4:A*) [line 26, column 73]\n *&p:A*=n$4 [line 26, column 45]\n " shape="box"] "test_placement#7589029240520377616.7f92d4e10c030674dddd1682731c0ba3_3" -> "test_placement#7589029240520377616.7f92d4e10c030674dddd1682731c0ba3_2" ; diff --git a/infer/tests/codetoanalyze/cpp/frontend/destructors/break_scope.cpp.dot b/infer/tests/codetoanalyze/cpp/frontend/destructors/break_scope.cpp.dot index 9a502cfe8..0cd0b2fa6 100644 --- a/infer/tests/codetoanalyze/cpp/frontend/destructors/break_scope.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/frontend/destructors/break_scope.cpp.dot @@ -15,15 +15,15 @@ digraph cfg { "test_do_while#break_scope#1068194121698893969.72aceeae2a95e32b3efdbdc08d127420_4" -> "test_do_while#break_scope#1068194121698893969.72aceeae2a95e32b3efdbdc08d127420_16" ; -"test_do_while#break_scope#1068194121698893969.72aceeae2a95e32b3efdbdc08d127420_5" [label="5: Prune (true branch, do while) \n n$2=*&a:_Bool [line 90, column 12]\n PRUNE(n$2, true); [line 90, column 12]\n " shape="invhouse"] +"test_do_while#break_scope#1068194121698893969.72aceeae2a95e32b3efdbdc08d127420_5" [label="5: Prune (true branch, do while) \n n$3=*&a:_Bool [line 90, column 12]\n PRUNE(n$3, true); [line 90, column 12]\n " shape="invhouse"] "test_do_while#break_scope#1068194121698893969.72aceeae2a95e32b3efdbdc08d127420_5" -> "test_do_while#break_scope#1068194121698893969.72aceeae2a95e32b3efdbdc08d127420_4" ; -"test_do_while#break_scope#1068194121698893969.72aceeae2a95e32b3efdbdc08d127420_6" [label="6: Prune (false branch, do while) \n n$2=*&a:_Bool [line 90, column 12]\n PRUNE(!n$2, false); [line 90, column 12]\n " shape="invhouse"] +"test_do_while#break_scope#1068194121698893969.72aceeae2a95e32b3efdbdc08d127420_6" [label="6: Prune (false branch, do while) \n n$3=*&a:_Bool [line 90, column 12]\n PRUNE(!n$3, false); [line 90, column 12]\n " shape="invhouse"] "test_do_while#break_scope#1068194121698893969.72aceeae2a95e32b3efdbdc08d127420_6" -> "test_do_while#break_scope#1068194121698893969.72aceeae2a95e32b3efdbdc08d127420_3" ; -"test_do_while#break_scope#1068194121698893969.72aceeae2a95e32b3efdbdc08d127420_7" [label="7: Destruction \n _=*&x2:break_scope::X [line 90, column 3]\n n$4=_fun_break_scope::X_~X(&x2:break_scope::X*) [line 90, column 3]\n " shape="box"] +"test_do_while#break_scope#1068194121698893969.72aceeae2a95e32b3efdbdc08d127420_7" [label="7: Destruction \n _=*&x2:break_scope::X [line 90, column 3]\n n$5=_fun_break_scope::X_~X(&x2:break_scope::X*) [line 90, column 3]\n " shape="box"] "test_do_while#break_scope#1068194121698893969.72aceeae2a95e32b3efdbdc08d127420_7" -> "test_do_while#break_scope#1068194121698893969.72aceeae2a95e32b3efdbdc08d127420_5" ; @@ -32,44 +32,44 @@ digraph cfg { "test_do_while#break_scope#1068194121698893969.72aceeae2a95e32b3efdbdc08d127420_8" -> "test_do_while#break_scope#1068194121698893969.72aceeae2a95e32b3efdbdc08d127420_7" ; -"test_do_while#break_scope#1068194121698893969.72aceeae2a95e32b3efdbdc08d127420_9" [label="9: Prune (true branch, if) \n n$5=*&b:_Bool [line 84, column 9]\n PRUNE(n$5, true); [line 84, column 9]\n " shape="invhouse"] +"test_do_while#break_scope#1068194121698893969.72aceeae2a95e32b3efdbdc08d127420_9" [label="9: Prune (true branch, if) \n n$7=*&b:_Bool [line 84, column 9]\n PRUNE(n$7, true); [line 84, column 9]\n " shape="invhouse"] "test_do_while#break_scope#1068194121698893969.72aceeae2a95e32b3efdbdc08d127420_9" -> "test_do_while#break_scope#1068194121698893969.72aceeae2a95e32b3efdbdc08d127420_13" ; -"test_do_while#break_scope#1068194121698893969.72aceeae2a95e32b3efdbdc08d127420_10" [label="10: Prune (false branch, if) \n n$5=*&b:_Bool [line 84, column 9]\n PRUNE(!n$5, false); [line 84, column 9]\n " shape="invhouse"] +"test_do_while#break_scope#1068194121698893969.72aceeae2a95e32b3efdbdc08d127420_10" [label="10: Prune (false branch, if) \n n$7=*&b:_Bool [line 84, column 9]\n PRUNE(!n$7, false); [line 84, column 9]\n " shape="invhouse"] "test_do_while#break_scope#1068194121698893969.72aceeae2a95e32b3efdbdc08d127420_10" -> "test_do_while#break_scope#1068194121698893969.72aceeae2a95e32b3efdbdc08d127420_15" ; -"test_do_while#break_scope#1068194121698893969.72aceeae2a95e32b3efdbdc08d127420_11" [label="11: Destruction \n _=*&x3:break_scope::X [line 87, column 5]\n n$7=_fun_break_scope::X_~X(&x3:break_scope::X*) [line 87, column 5]\n " shape="box"] +"test_do_while#break_scope#1068194121698893969.72aceeae2a95e32b3efdbdc08d127420_11" [label="11: Destruction \n _=*&x3:break_scope::X [line 87, column 5]\n n$9=_fun_break_scope::X_~X(&x3:break_scope::X*) [line 87, column 5]\n " shape="box"] "test_do_while#break_scope#1068194121698893969.72aceeae2a95e32b3efdbdc08d127420_11" -> "test_do_while#break_scope#1068194121698893969.72aceeae2a95e32b3efdbdc08d127420_8" ; -"test_do_while#break_scope#1068194121698893969.72aceeae2a95e32b3efdbdc08d127420_12" [label="12: Destruction \n _=*&x3:break_scope::X [line 86, column 7]\n n$9=_fun_break_scope::X_~X(&x3:break_scope::X*) [line 86, column 7]\n _=*&x2:break_scope::X [line 86, column 7]\n n$11=_fun_break_scope::X_~X(&x2:break_scope::X*) [line 86, column 7]\n " shape="box"] +"test_do_while#break_scope#1068194121698893969.72aceeae2a95e32b3efdbdc08d127420_12" [label="12: Destruction \n _=*&x3:break_scope::X [line 86, column 7]\n n$12=_fun_break_scope::X_~X(&x3:break_scope::X*) [line 86, column 7]\n _=*&x2:break_scope::X [line 86, column 7]\n n$14=_fun_break_scope::X_~X(&x2:break_scope::X*) [line 86, column 7]\n " shape="box"] "test_do_while#break_scope#1068194121698893969.72aceeae2a95e32b3efdbdc08d127420_12" -> "test_do_while#break_scope#1068194121698893969.72aceeae2a95e32b3efdbdc08d127420_3" ; -"test_do_while#break_scope#1068194121698893969.72aceeae2a95e32b3efdbdc08d127420_13" [label="13: DeclStmt \n n$12=_fun_break_scope::X_X(&x3:break_scope::X*) [line 85, column 9]\n " shape="box"] +"test_do_while#break_scope#1068194121698893969.72aceeae2a95e32b3efdbdc08d127420_13" [label="13: DeclStmt \n n$16=_fun_break_scope::X_X(&x3:break_scope::X*) [line 85, column 9]\n " shape="box"] "test_do_while#break_scope#1068194121698893969.72aceeae2a95e32b3efdbdc08d127420_13" -> "test_do_while#break_scope#1068194121698893969.72aceeae2a95e32b3efdbdc08d127420_12" ; -"test_do_while#break_scope#1068194121698893969.72aceeae2a95e32b3efdbdc08d127420_14" [label="14: Destruction \n _=*&x4:break_scope::X [line 89, column 5]\n n$14=_fun_break_scope::X_~X(&x4:break_scope::X*) [line 89, column 5]\n " shape="box"] +"test_do_while#break_scope#1068194121698893969.72aceeae2a95e32b3efdbdc08d127420_14" [label="14: Destruction \n _=*&x4:break_scope::X [line 89, column 5]\n n$18=_fun_break_scope::X_~X(&x4:break_scope::X*) [line 89, column 5]\n " shape="box"] "test_do_while#break_scope#1068194121698893969.72aceeae2a95e32b3efdbdc08d127420_14" -> "test_do_while#break_scope#1068194121698893969.72aceeae2a95e32b3efdbdc08d127420_8" ; -"test_do_while#break_scope#1068194121698893969.72aceeae2a95e32b3efdbdc08d127420_15" [label="15: DeclStmt \n n$15=_fun_break_scope::X_X(&x4:break_scope::X*) [line 88, column 9]\n " shape="box"] +"test_do_while#break_scope#1068194121698893969.72aceeae2a95e32b3efdbdc08d127420_15" [label="15: DeclStmt \n n$20=_fun_break_scope::X_X(&x4:break_scope::X*) [line 88, column 9]\n " shape="box"] "test_do_while#break_scope#1068194121698893969.72aceeae2a95e32b3efdbdc08d127420_15" -> "test_do_while#break_scope#1068194121698893969.72aceeae2a95e32b3efdbdc08d127420_14" ; -"test_do_while#break_scope#1068194121698893969.72aceeae2a95e32b3efdbdc08d127420_16" [label="16: DeclStmt \n n$16=_fun_break_scope::X_X(&x2:break_scope::X*) [line 83, column 7]\n " shape="box"] +"test_do_while#break_scope#1068194121698893969.72aceeae2a95e32b3efdbdc08d127420_16" [label="16: DeclStmt \n n$22=_fun_break_scope::X_X(&x2:break_scope::X*) [line 83, column 7]\n " shape="box"] "test_do_while#break_scope#1068194121698893969.72aceeae2a95e32b3efdbdc08d127420_16" -> "test_do_while#break_scope#1068194121698893969.72aceeae2a95e32b3efdbdc08d127420_9" ; "test_do_while#break_scope#1068194121698893969.72aceeae2a95e32b3efdbdc08d127420_16" -> "test_do_while#break_scope#1068194121698893969.72aceeae2a95e32b3efdbdc08d127420_10" ; -"test_do_while#break_scope#1068194121698893969.72aceeae2a95e32b3efdbdc08d127420_17" [label="17: DeclStmt \n n$17=_fun_break_scope::X_X(&x1:break_scope::X*) [line 81, column 5]\n " shape="box"] +"test_do_while#break_scope#1068194121698893969.72aceeae2a95e32b3efdbdc08d127420_17" [label="17: DeclStmt \n n$24=_fun_break_scope::X_X(&x1:break_scope::X*) [line 81, column 5]\n " shape="box"] "test_do_while#break_scope#1068194121698893969.72aceeae2a95e32b3efdbdc08d127420_17" -> "test_do_while#break_scope#1068194121698893969.72aceeae2a95e32b3efdbdc08d127420_4" ; -"test_for#break_scope#12580813866832058675.4c62e98ea10322d216af5dcd2cfbde37_1" [label="1: Start break_scope::test_for\nFormals: b:_Bool\nLocals: x2:break_scope::X it:break_scope::iterator 0$?%__sil_tmpSIL_materialize_temp__n$5:break_scope::iterator 0$?%__sil_tmp__temp_return_n$11:break_scope::iterator 0$?%__sil_tmpSIL_materialize_temp__n$13:break_scope::iterator x1:break_scope::X vector:break_scope::vec \n DECLARE_LOCALS(&return,&x2,&it,&0$?%__sil_tmpSIL_materialize_temp__n$5,&0$?%__sil_tmp__temp_return_n$11,&0$?%__sil_tmpSIL_materialize_temp__n$13,&x1,&vector); [line 57, column 1]\n " color=yellow style=filled] +"test_for#break_scope#12580813866832058675.4c62e98ea10322d216af5dcd2cfbde37_1" [label="1: Start break_scope::test_for\nFormals: b:_Bool\nLocals: x2:break_scope::X it:break_scope::iterator 0$?%__sil_tmpSIL_materialize_temp__n$6:break_scope::iterator 0$?%__sil_tmp__temp_return_n$13:break_scope::iterator 0$?%__sil_tmpSIL_materialize_temp__n$16:break_scope::iterator const x1:break_scope::X vector:break_scope::vec \n DECLARE_LOCALS(&return,&x2,&it,&0$?%__sil_tmpSIL_materialize_temp__n$6,&0$?%__sil_tmp__temp_return_n$13,&0$?%__sil_tmpSIL_materialize_temp__n$16,&x1,&vector); [line 57, column 1]\n " color=yellow style=filled] "test_for#break_scope#12580813866832058675.4c62e98ea10322d216af5dcd2cfbde37_1" -> "test_for#break_scope#12580813866832058675.4c62e98ea10322d216af5dcd2cfbde37_17" ; @@ -80,7 +80,7 @@ digraph cfg { "test_for#break_scope#12580813866832058675.4c62e98ea10322d216af5dcd2cfbde37_3" -> "test_for#break_scope#12580813866832058675.4c62e98ea10322d216af5dcd2cfbde37_2" ; -"test_for#break_scope#12580813866832058675.4c62e98ea10322d216af5dcd2cfbde37_4" [label="4: DeclStmt \n n$4=_fun_break_scope::X_X(&x2:break_scope::X*) [line 65, column 5]\n " shape="box"] +"test_for#break_scope#12580813866832058675.4c62e98ea10322d216af5dcd2cfbde37_4" [label="4: DeclStmt \n n$5=_fun_break_scope::X_X(&x2:break_scope::X*) [line 65, column 5]\n " shape="box"] "test_for#break_scope#12580813866832058675.4c62e98ea10322d216af5dcd2cfbde37_4" -> "test_for#break_scope#12580813866832058675.4c62e98ea10322d216af5dcd2cfbde37_3" ; @@ -88,25 +88,25 @@ digraph cfg { "test_for#break_scope#12580813866832058675.4c62e98ea10322d216af5dcd2cfbde37_5" -> "test_for#break_scope#12580813866832058675.4c62e98ea10322d216af5dcd2cfbde37_8" ; -"test_for#break_scope#12580813866832058675.4c62e98ea10322d216af5dcd2cfbde37_6" [label="6: DeclStmt \n _=*&vector:break_scope::vec [line 59, column 22]\n n$8=_fun_break_scope::vec_begin(&vector:break_scope::vec&,&0$?%__sil_tmpSIL_materialize_temp__n$5:break_scope::iterator*) [line 59, column 22]\n n$9=_fun_break_scope::iterator_iterator(&it:break_scope::iterator*,&0$?%__sil_tmpSIL_materialize_temp__n$5:break_scope::iterator&) [line 59, column 22]\n " shape="box"] +"test_for#break_scope#12580813866832058675.4c62e98ea10322d216af5dcd2cfbde37_6" [label="6: DeclStmt \n _=*&vector:break_scope::vec [line 59, column 22]\n n$9=_fun_break_scope::vec_begin(&vector:break_scope::vec&,&0$?%__sil_tmpSIL_materialize_temp__n$6:break_scope::iterator*) [line 59, column 22]\n n$10=_fun_break_scope::iterator_iterator(&it:break_scope::iterator*,&0$?%__sil_tmpSIL_materialize_temp__n$6:break_scope::iterator&) [line 59, column 22]\n " shape="box"] "test_for#break_scope#12580813866832058675.4c62e98ea10322d216af5dcd2cfbde37_6" -> "test_for#break_scope#12580813866832058675.4c62e98ea10322d216af5dcd2cfbde37_5" ; -"test_for#break_scope#12580813866832058675.4c62e98ea10322d216af5dcd2cfbde37_7" [label="7: Call _fun_break_scope::iterator_operator++ \n n$12=_fun_break_scope::iterator_operator++(&it:break_scope::iterator&,&0$?%__sil_tmp__temp_return_n$11:break_scope::iterator*) [line 59, column 58]\n " shape="box"] +"test_for#break_scope#12580813866832058675.4c62e98ea10322d216af5dcd2cfbde37_7" [label="7: Call _fun_break_scope::iterator_operator++ \n n$14=_fun_break_scope::iterator_operator++(&it:break_scope::iterator&,&0$?%__sil_tmp__temp_return_n$13:break_scope::iterator*) [line 59, column 58]\n " shape="box"] "test_for#break_scope#12580813866832058675.4c62e98ea10322d216af5dcd2cfbde37_7" -> "test_for#break_scope#12580813866832058675.4c62e98ea10322d216af5dcd2cfbde37_5" ; -"test_for#break_scope#12580813866832058675.4c62e98ea10322d216af5dcd2cfbde37_8" [label="8: Call _fun_break_scope::iterator_operator!= \n _=*&vector:break_scope::vec [line 59, column 44]\n n$16=_fun_break_scope::vec_end(&vector:break_scope::vec&,&0$?%__sil_tmpSIL_materialize_temp__n$13:break_scope::iterator*) [line 59, column 44]\n n$17=_fun_break_scope::iterator_operator!=(&it:break_scope::iterator&,&0$?%__sil_tmpSIL_materialize_temp__n$13:break_scope::iterator&) [line 59, column 38]\n " shape="box"] +"test_for#break_scope#12580813866832058675.4c62e98ea10322d216af5dcd2cfbde37_8" [label="8: Call _fun_break_scope::iterator_operator!= \n _=*&vector:break_scope::vec [line 59, column 44]\n n$19=_fun_break_scope::vec_end(&vector:break_scope::vec&,&0$?%__sil_tmpSIL_materialize_temp__n$16:break_scope::iterator*) [line 59, column 44]\n n$20=_fun_break_scope::iterator_operator!=(&it:break_scope::iterator&,&0$?%__sil_tmpSIL_materialize_temp__n$16:break_scope::iterator const &) [line 59, column 38]\n " shape="box"] "test_for#break_scope#12580813866832058675.4c62e98ea10322d216af5dcd2cfbde37_8" -> "test_for#break_scope#12580813866832058675.4c62e98ea10322d216af5dcd2cfbde37_9" ; "test_for#break_scope#12580813866832058675.4c62e98ea10322d216af5dcd2cfbde37_8" -> "test_for#break_scope#12580813866832058675.4c62e98ea10322d216af5dcd2cfbde37_10" ; -"test_for#break_scope#12580813866832058675.4c62e98ea10322d216af5dcd2cfbde37_9" [label="9: Prune (true branch, for loop) \n PRUNE(n$17, true); [line 59, column 38]\n " shape="invhouse"] +"test_for#break_scope#12580813866832058675.4c62e98ea10322d216af5dcd2cfbde37_9" [label="9: Prune (true branch, for loop) \n PRUNE(n$20, true); [line 59, column 38]\n " shape="invhouse"] "test_for#break_scope#12580813866832058675.4c62e98ea10322d216af5dcd2cfbde37_9" -> "test_for#break_scope#12580813866832058675.4c62e98ea10322d216af5dcd2cfbde37_12" ; "test_for#break_scope#12580813866832058675.4c62e98ea10322d216af5dcd2cfbde37_9" -> "test_for#break_scope#12580813866832058675.4c62e98ea10322d216af5dcd2cfbde37_13" ; -"test_for#break_scope#12580813866832058675.4c62e98ea10322d216af5dcd2cfbde37_10" [label="10: Prune (false branch, for loop) \n PRUNE(!n$17, false); [line 59, column 38]\n " shape="invhouse"] +"test_for#break_scope#12580813866832058675.4c62e98ea10322d216af5dcd2cfbde37_10" [label="10: Prune (false branch, for loop) \n PRUNE(!n$20, false); [line 59, column 38]\n " shape="invhouse"] "test_for#break_scope#12580813866832058675.4c62e98ea10322d216af5dcd2cfbde37_10" -> "test_for#break_scope#12580813866832058675.4c62e98ea10322d216af5dcd2cfbde37_4" ; @@ -114,31 +114,31 @@ digraph cfg { "test_for#break_scope#12580813866832058675.4c62e98ea10322d216af5dcd2cfbde37_11" -> "test_for#break_scope#12580813866832058675.4c62e98ea10322d216af5dcd2cfbde37_7" ; -"test_for#break_scope#12580813866832058675.4c62e98ea10322d216af5dcd2cfbde37_12" [label="12: Prune (true branch, if) \n n$18=*&b:_Bool [line 60, column 9]\n PRUNE(n$18, true); [line 60, column 9]\n " shape="invhouse"] +"test_for#break_scope#12580813866832058675.4c62e98ea10322d216af5dcd2cfbde37_12" [label="12: Prune (true branch, if) \n n$22=*&b:_Bool [line 60, column 9]\n PRUNE(n$22, true); [line 60, column 9]\n " shape="invhouse"] "test_for#break_scope#12580813866832058675.4c62e98ea10322d216af5dcd2cfbde37_12" -> "test_for#break_scope#12580813866832058675.4c62e98ea10322d216af5dcd2cfbde37_16" ; -"test_for#break_scope#12580813866832058675.4c62e98ea10322d216af5dcd2cfbde37_13" [label="13: Prune (false branch, if) \n n$18=*&b:_Bool [line 60, column 9]\n PRUNE(!n$18, false); [line 60, column 9]\n " shape="invhouse"] +"test_for#break_scope#12580813866832058675.4c62e98ea10322d216af5dcd2cfbde37_13" [label="13: Prune (false branch, if) \n n$22=*&b:_Bool [line 60, column 9]\n PRUNE(!n$22, false); [line 60, column 9]\n " shape="invhouse"] "test_for#break_scope#12580813866832058675.4c62e98ea10322d216af5dcd2cfbde37_13" -> "test_for#break_scope#12580813866832058675.4c62e98ea10322d216af5dcd2cfbde37_11" ; -"test_for#break_scope#12580813866832058675.4c62e98ea10322d216af5dcd2cfbde37_14" [label="14: Destruction \n _=*&x1:break_scope::X [line 63, column 5]\n n$20=_fun_break_scope::X_~X(&x1:break_scope::X*) [line 63, column 5]\n " shape="box"] +"test_for#break_scope#12580813866832058675.4c62e98ea10322d216af5dcd2cfbde37_14" [label="14: Destruction \n _=*&x1:break_scope::X [line 63, column 5]\n n$24=_fun_break_scope::X_~X(&x1:break_scope::X*) [line 63, column 5]\n " shape="box"] "test_for#break_scope#12580813866832058675.4c62e98ea10322d216af5dcd2cfbde37_14" -> "test_for#break_scope#12580813866832058675.4c62e98ea10322d216af5dcd2cfbde37_11" ; -"test_for#break_scope#12580813866832058675.4c62e98ea10322d216af5dcd2cfbde37_15" [label="15: Destruction \n _=*&x1:break_scope::X [line 62, column 7]\n n$22=_fun_break_scope::X_~X(&x1:break_scope::X*) [line 62, column 7]\n " shape="box"] +"test_for#break_scope#12580813866832058675.4c62e98ea10322d216af5dcd2cfbde37_15" [label="15: Destruction \n _=*&x1:break_scope::X [line 62, column 7]\n n$27=_fun_break_scope::X_~X(&x1:break_scope::X*) [line 62, column 7]\n " shape="box"] "test_for#break_scope#12580813866832058675.4c62e98ea10322d216af5dcd2cfbde37_15" -> "test_for#break_scope#12580813866832058675.4c62e98ea10322d216af5dcd2cfbde37_4" ; -"test_for#break_scope#12580813866832058675.4c62e98ea10322d216af5dcd2cfbde37_16" [label="16: DeclStmt \n n$23=_fun_break_scope::X_X(&x1:break_scope::X*) [line 61, column 9]\n " shape="box"] +"test_for#break_scope#12580813866832058675.4c62e98ea10322d216af5dcd2cfbde37_16" [label="16: DeclStmt \n n$29=_fun_break_scope::X_X(&x1:break_scope::X*) [line 61, column 9]\n " shape="box"] "test_for#break_scope#12580813866832058675.4c62e98ea10322d216af5dcd2cfbde37_16" -> "test_for#break_scope#12580813866832058675.4c62e98ea10322d216af5dcd2cfbde37_15" ; -"test_for#break_scope#12580813866832058675.4c62e98ea10322d216af5dcd2cfbde37_17" [label="17: DeclStmt \n n$24=_fun_break_scope::vec_vec(&vector:break_scope::vec*) [line 58, column 7]\n " shape="box"] +"test_for#break_scope#12580813866832058675.4c62e98ea10322d216af5dcd2cfbde37_17" [label="17: DeclStmt \n n$33=_fun_break_scope::vec_vec(&vector:break_scope::vec*) [line 58, column 7]\n " shape="box"] "test_for#break_scope#12580813866832058675.4c62e98ea10322d216af5dcd2cfbde37_17" -> "test_for#break_scope#12580813866832058675.4c62e98ea10322d216af5dcd2cfbde37_6" ; -"test_for_range#break_scope#2115859683356214080.ad34c277f8d086eb0a22c75fc80fb235_1" [label="1: Start break_scope::test_for_range\nFormals: b:_Bool\nLocals: __end:break_scope::iterator 0$?%__sil_tmpSIL_materialize_temp__n$4:break_scope::iterator __begin:break_scope::iterator 0$?%__sil_tmpSIL_materialize_temp__n$10:break_scope::iterator 0$?%__sil_tmp__temp_return_n$17:break_scope::iterator x2:break_scope::X x:break_scope::X 0$?%__sil_tmpSIL_materialize_temp__n$26:break_scope::X __range:break_scope::vec& x1:break_scope::X vector:break_scope::vec \n DECLARE_LOCALS(&return,&__end,&0$?%__sil_tmpSIL_materialize_temp__n$4,&__begin,&0$?%__sil_tmpSIL_materialize_temp__n$10,&0$?%__sil_tmp__temp_return_n$17,&x2,&x,&0$?%__sil_tmpSIL_materialize_temp__n$26,&__range,&x1,&vector); [line 46, column 1]\n " color=yellow style=filled] +"test_for_range#break_scope#2115859683356214080.ad34c277f8d086eb0a22c75fc80fb235_1" [label="1: Start break_scope::test_for_range\nFormals: b:_Bool\nLocals: __end:break_scope::iterator 0$?%__sil_tmpSIL_materialize_temp__n$7:break_scope::iterator __begin:break_scope::iterator 0$?%__sil_tmpSIL_materialize_temp__n$13:break_scope::iterator 0$?%__sil_tmp__temp_return_n$21:break_scope::iterator x2:break_scope::X x:break_scope::X 0$?%__sil_tmpSIL_materialize_temp__n$37:break_scope::X const __range:break_scope::vec& x1:break_scope::X vector:break_scope::vec \n DECLARE_LOCALS(&return,&__end,&0$?%__sil_tmpSIL_materialize_temp__n$7,&__begin,&0$?%__sil_tmpSIL_materialize_temp__n$13,&0$?%__sil_tmp__temp_return_n$21,&x2,&x,&0$?%__sil_tmpSIL_materialize_temp__n$37,&__range,&x1,&vector); [line 46, column 1]\n " color=yellow style=filled] "test_for_range#break_scope#2115859683356214080.ad34c277f8d086eb0a22c75fc80fb235_1" -> "test_for_range#break_scope#2115859683356214080.ad34c277f8d086eb0a22c75fc80fb235_20" ; @@ -153,28 +153,28 @@ digraph cfg { "test_for_range#break_scope#2115859683356214080.ad34c277f8d086eb0a22c75fc80fb235_4" -> "test_for_range#break_scope#2115859683356214080.ad34c277f8d086eb0a22c75fc80fb235_8" ; -"test_for_range#break_scope#2115859683356214080.ad34c277f8d086eb0a22c75fc80fb235_5" [label="5: DeclStmt \n n$5=*&__range:break_scope::vec& [line 49, column 12]\n _=*n$5:break_scope::vec [line 49, column 12]\n n$8=_fun_break_scope::vec_end(n$5:break_scope::vec&,&0$?%__sil_tmpSIL_materialize_temp__n$4:break_scope::iterator*) [line 49, column 12]\n n$9=_fun_break_scope::iterator_iterator(&__end:break_scope::iterator*,&0$?%__sil_tmpSIL_materialize_temp__n$4:break_scope::iterator&) [line 49, column 12]\n " shape="box"] +"test_for_range#break_scope#2115859683356214080.ad34c277f8d086eb0a22c75fc80fb235_5" [label="5: DeclStmt \n n$8=*&__range:break_scope::vec& [line 49, column 12]\n _=*n$8:break_scope::vec [line 49, column 12]\n n$11=_fun_break_scope::vec_end(n$8:break_scope::vec&,&0$?%__sil_tmpSIL_materialize_temp__n$7:break_scope::iterator*) [line 49, column 12]\n n$12=_fun_break_scope::iterator_iterator(&__end:break_scope::iterator*,&0$?%__sil_tmpSIL_materialize_temp__n$7:break_scope::iterator&) [line 49, column 12]\n " shape="box"] "test_for_range#break_scope#2115859683356214080.ad34c277f8d086eb0a22c75fc80fb235_5" -> "test_for_range#break_scope#2115859683356214080.ad34c277f8d086eb0a22c75fc80fb235_4" ; -"test_for_range#break_scope#2115859683356214080.ad34c277f8d086eb0a22c75fc80fb235_6" [label="6: DeclStmt \n n$11=*&__range:break_scope::vec& [line 49, column 12]\n _=*n$11:break_scope::vec [line 49, column 12]\n n$14=_fun_break_scope::vec_begin(n$11:break_scope::vec&,&0$?%__sil_tmpSIL_materialize_temp__n$10:break_scope::iterator*) [line 49, column 12]\n n$15=_fun_break_scope::iterator_iterator(&__begin:break_scope::iterator*,&0$?%__sil_tmpSIL_materialize_temp__n$10:break_scope::iterator&) [line 49, column 12]\n " shape="box"] +"test_for_range#break_scope#2115859683356214080.ad34c277f8d086eb0a22c75fc80fb235_6" [label="6: DeclStmt \n n$14=*&__range:break_scope::vec& [line 49, column 12]\n _=*n$14:break_scope::vec [line 49, column 12]\n n$17=_fun_break_scope::vec_begin(n$14:break_scope::vec&,&0$?%__sil_tmpSIL_materialize_temp__n$13:break_scope::iterator*) [line 49, column 12]\n n$18=_fun_break_scope::iterator_iterator(&__begin:break_scope::iterator*,&0$?%__sil_tmpSIL_materialize_temp__n$13:break_scope::iterator&) [line 49, column 12]\n " shape="box"] "test_for_range#break_scope#2115859683356214080.ad34c277f8d086eb0a22c75fc80fb235_6" -> "test_for_range#break_scope#2115859683356214080.ad34c277f8d086eb0a22c75fc80fb235_5" ; -"test_for_range#break_scope#2115859683356214080.ad34c277f8d086eb0a22c75fc80fb235_7" [label="7: Call _fun_break_scope::iterator_operator++ \n n$18=_fun_break_scope::iterator_operator++(&__begin:break_scope::iterator&,&0$?%__sil_tmp__temp_return_n$17:break_scope::iterator*) [line 49, column 12]\n " shape="box"] +"test_for_range#break_scope#2115859683356214080.ad34c277f8d086eb0a22c75fc80fb235_7" [label="7: Call _fun_break_scope::iterator_operator++ \n n$22=_fun_break_scope::iterator_operator++(&__begin:break_scope::iterator&,&0$?%__sil_tmp__temp_return_n$21:break_scope::iterator*) [line 49, column 12]\n " shape="box"] "test_for_range#break_scope#2115859683356214080.ad34c277f8d086eb0a22c75fc80fb235_7" -> "test_for_range#break_scope#2115859683356214080.ad34c277f8d086eb0a22c75fc80fb235_4" ; -"test_for_range#break_scope#2115859683356214080.ad34c277f8d086eb0a22c75fc80fb235_8" [label="8: Call _fun_break_scope::iterator_operator!= \n n$19=_fun_break_scope::iterator_operator!=(&__begin:break_scope::iterator&,&__end:break_scope::iterator&) [line 49, column 12]\n " shape="box"] +"test_for_range#break_scope#2115859683356214080.ad34c277f8d086eb0a22c75fc80fb235_8" [label="8: Call _fun_break_scope::iterator_operator!= \n n$24=_fun_break_scope::iterator_operator!=(&__begin:break_scope::iterator&,&__end:break_scope::iterator&) [line 49, column 12]\n " shape="box"] "test_for_range#break_scope#2115859683356214080.ad34c277f8d086eb0a22c75fc80fb235_8" -> "test_for_range#break_scope#2115859683356214080.ad34c277f8d086eb0a22c75fc80fb235_9" ; "test_for_range#break_scope#2115859683356214080.ad34c277f8d086eb0a22c75fc80fb235_8" -> "test_for_range#break_scope#2115859683356214080.ad34c277f8d086eb0a22c75fc80fb235_10" ; -"test_for_range#break_scope#2115859683356214080.ad34c277f8d086eb0a22c75fc80fb235_9" [label="9: Prune (true branch, for loop) \n PRUNE(n$19, true); [line 49, column 12]\n " shape="invhouse"] +"test_for_range#break_scope#2115859683356214080.ad34c277f8d086eb0a22c75fc80fb235_9" [label="9: Prune (true branch, for loop) \n PRUNE(n$24, true); [line 49, column 12]\n " shape="invhouse"] "test_for_range#break_scope#2115859683356214080.ad34c277f8d086eb0a22c75fc80fb235_9" -> "test_for_range#break_scope#2115859683356214080.ad34c277f8d086eb0a22c75fc80fb235_17" ; -"test_for_range#break_scope#2115859683356214080.ad34c277f8d086eb0a22c75fc80fb235_10" [label="10: Prune (false branch, for loop) \n PRUNE(!n$19, false); [line 49, column 12]\n " shape="invhouse"] +"test_for_range#break_scope#2115859683356214080.ad34c277f8d086eb0a22c75fc80fb235_10" [label="10: Prune (false branch, for loop) \n PRUNE(!n$24, false); [line 49, column 12]\n " shape="invhouse"] "test_for_range#break_scope#2115859683356214080.ad34c277f8d086eb0a22c75fc80fb235_10" -> "test_for_range#break_scope#2115859683356214080.ad34c277f8d086eb0a22c75fc80fb235_3" ; @@ -182,27 +182,27 @@ digraph cfg { "test_for_range#break_scope#2115859683356214080.ad34c277f8d086eb0a22c75fc80fb235_11" -> "test_for_range#break_scope#2115859683356214080.ad34c277f8d086eb0a22c75fc80fb235_7" ; -"test_for_range#break_scope#2115859683356214080.ad34c277f8d086eb0a22c75fc80fb235_12" [label="12: Prune (true branch, if) \n n$20=*&b:_Bool [line 50, column 9]\n PRUNE(n$20, true); [line 50, column 9]\n " shape="invhouse"] +"test_for_range#break_scope#2115859683356214080.ad34c277f8d086eb0a22c75fc80fb235_12" [label="12: Prune (true branch, if) \n n$27=*&b:_Bool [line 50, column 9]\n PRUNE(n$27, true); [line 50, column 9]\n " shape="invhouse"] "test_for_range#break_scope#2115859683356214080.ad34c277f8d086eb0a22c75fc80fb235_12" -> "test_for_range#break_scope#2115859683356214080.ad34c277f8d086eb0a22c75fc80fb235_16" ; -"test_for_range#break_scope#2115859683356214080.ad34c277f8d086eb0a22c75fc80fb235_13" [label="13: Prune (false branch, if) \n n$20=*&b:_Bool [line 50, column 9]\n PRUNE(!n$20, false); [line 50, column 9]\n " shape="invhouse"] +"test_for_range#break_scope#2115859683356214080.ad34c277f8d086eb0a22c75fc80fb235_13" [label="13: Prune (false branch, if) \n n$27=*&b:_Bool [line 50, column 9]\n PRUNE(!n$27, false); [line 50, column 9]\n " shape="invhouse"] "test_for_range#break_scope#2115859683356214080.ad34c277f8d086eb0a22c75fc80fb235_13" -> "test_for_range#break_scope#2115859683356214080.ad34c277f8d086eb0a22c75fc80fb235_11" ; -"test_for_range#break_scope#2115859683356214080.ad34c277f8d086eb0a22c75fc80fb235_14" [label="14: Destruction \n _=*&x2:break_scope::X [line 53, column 5]\n n$22=_fun_break_scope::X_~X(&x2:break_scope::X*) [line 53, column 5]\n " shape="box"] +"test_for_range#break_scope#2115859683356214080.ad34c277f8d086eb0a22c75fc80fb235_14" [label="14: Destruction \n _=*&x2:break_scope::X [line 53, column 5]\n n$29=_fun_break_scope::X_~X(&x2:break_scope::X*) [line 53, column 5]\n " shape="box"] "test_for_range#break_scope#2115859683356214080.ad34c277f8d086eb0a22c75fc80fb235_14" -> "test_for_range#break_scope#2115859683356214080.ad34c277f8d086eb0a22c75fc80fb235_11" ; -"test_for_range#break_scope#2115859683356214080.ad34c277f8d086eb0a22c75fc80fb235_15" [label="15: Destruction \n _=*&x2:break_scope::X [line 52, column 7]\n n$24=_fun_break_scope::X_~X(&x2:break_scope::X*) [line 52, column 7]\n " shape="box"] +"test_for_range#break_scope#2115859683356214080.ad34c277f8d086eb0a22c75fc80fb235_15" [label="15: Destruction \n _=*&x2:break_scope::X [line 52, column 7]\n n$32=_fun_break_scope::X_~X(&x2:break_scope::X*) [line 52, column 7]\n " shape="box"] "test_for_range#break_scope#2115859683356214080.ad34c277f8d086eb0a22c75fc80fb235_15" -> "test_for_range#break_scope#2115859683356214080.ad34c277f8d086eb0a22c75fc80fb235_3" ; -"test_for_range#break_scope#2115859683356214080.ad34c277f8d086eb0a22c75fc80fb235_16" [label="16: DeclStmt \n n$25=_fun_break_scope::X_X(&x2:break_scope::X*,&x:break_scope::X&) [line 51, column 14]\n " shape="box"] +"test_for_range#break_scope#2115859683356214080.ad34c277f8d086eb0a22c75fc80fb235_16" [label="16: DeclStmt \n n$34=_fun_break_scope::X_X(&x2:break_scope::X*,&x:break_scope::X&) [line 51, column 14]\n " shape="box"] "test_for_range#break_scope#2115859683356214080.ad34c277f8d086eb0a22c75fc80fb235_16" -> "test_for_range#break_scope#2115859683356214080.ad34c277f8d086eb0a22c75fc80fb235_15" ; -"test_for_range#break_scope#2115859683356214080.ad34c277f8d086eb0a22c75fc80fb235_17" [label="17: DeclStmt \n n$28=_fun_break_scope::iterator_operator*(&__begin:break_scope::iterator&,&0$?%__sil_tmpSIL_materialize_temp__n$26:break_scope::X*) [line 49, column 12]\n n$29=_fun_break_scope::X_X(&x:break_scope::X*,&0$?%__sil_tmpSIL_materialize_temp__n$26:break_scope::X&) [line 49, column 12]\n " shape="box"] +"test_for_range#break_scope#2115859683356214080.ad34c277f8d086eb0a22c75fc80fb235_17" [label="17: DeclStmt \n n$40=_fun_break_scope::iterator_operator*(&__begin:break_scope::iterator&,&0$?%__sil_tmpSIL_materialize_temp__n$37:break_scope::X*) [line 49, column 12]\n n$41=_fun_break_scope::X_X(&x:break_scope::X*,&0$?%__sil_tmpSIL_materialize_temp__n$37:break_scope::X const &) [line 49, column 12]\n " shape="box"] "test_for_range#break_scope#2115859683356214080.ad34c277f8d086eb0a22c75fc80fb235_17" -> "test_for_range#break_scope#2115859683356214080.ad34c277f8d086eb0a22c75fc80fb235_12" ; @@ -211,11 +211,11 @@ digraph cfg { "test_for_range#break_scope#2115859683356214080.ad34c277f8d086eb0a22c75fc80fb235_18" -> "test_for_range#break_scope#2115859683356214080.ad34c277f8d086eb0a22c75fc80fb235_6" ; -"test_for_range#break_scope#2115859683356214080.ad34c277f8d086eb0a22c75fc80fb235_19" [label="19: DeclStmt \n n$30=_fun_break_scope::X_X(&x1:break_scope::X*) [line 48, column 5]\n " shape="box"] +"test_for_range#break_scope#2115859683356214080.ad34c277f8d086eb0a22c75fc80fb235_19" [label="19: DeclStmt \n n$43=_fun_break_scope::X_X(&x1:break_scope::X*) [line 48, column 5]\n " shape="box"] "test_for_range#break_scope#2115859683356214080.ad34c277f8d086eb0a22c75fc80fb235_19" -> "test_for_range#break_scope#2115859683356214080.ad34c277f8d086eb0a22c75fc80fb235_18" ; -"test_for_range#break_scope#2115859683356214080.ad34c277f8d086eb0a22c75fc80fb235_20" [label="20: DeclStmt \n n$31=_fun_break_scope::vec_vec(&vector:break_scope::vec*) [line 47, column 7]\n " shape="box"] +"test_for_range#break_scope#2115859683356214080.ad34c277f8d086eb0a22c75fc80fb235_20" [label="20: DeclStmt \n n$44=_fun_break_scope::vec_vec(&vector:break_scope::vec*) [line 47, column 7]\n " shape="box"] "test_for_range#break_scope#2115859683356214080.ad34c277f8d086eb0a22c75fc80fb235_20" -> "test_for_range#break_scope#2115859683356214080.ad34c277f8d086eb0a22c75fc80fb235_19" ; @@ -230,70 +230,70 @@ digraph cfg { "test_switch#break_scope#5012999682930893305.43ca855443a5fa68fa701447a90f7a1f_3" -> "test_switch#break_scope#5012999682930893305.43ca855443a5fa68fa701447a90f7a1f_2" ; -"test_switch#break_scope#5012999682930893305.43ca855443a5fa68fa701447a90f7a1f_4" [label="4: DeclStmt \n n$4=_fun_break_scope::X_X(&x5:break_scope::X*) [line 129, column 5]\n " shape="box"] +"test_switch#break_scope#5012999682930893305.43ca855443a5fa68fa701447a90f7a1f_4" [label="4: DeclStmt \n n$5=_fun_break_scope::X_X(&x5:break_scope::X*) [line 129, column 5]\n " shape="box"] "test_switch#break_scope#5012999682930893305.43ca855443a5fa68fa701447a90f7a1f_4" -> "test_switch#break_scope#5012999682930893305.43ca855443a5fa68fa701447a90f7a1f_3" ; -"test_switch#break_scope#5012999682930893305.43ca855443a5fa68fa701447a90f7a1f_5" [label="5: Switch_stmt \n n$5=*&n:int [line 117, column 11]\n " shape="box"] +"test_switch#break_scope#5012999682930893305.43ca855443a5fa68fa701447a90f7a1f_5" [label="5: Switch_stmt \n n$6=*&n:int [line 117, column 11]\n " shape="box"] "test_switch#break_scope#5012999682930893305.43ca855443a5fa68fa701447a90f7a1f_5" -> "test_switch#break_scope#5012999682930893305.43ca855443a5fa68fa701447a90f7a1f_17" ; "test_switch#break_scope#5012999682930893305.43ca855443a5fa68fa701447a90f7a1f_5" -> "test_switch#break_scope#5012999682930893305.43ca855443a5fa68fa701447a90f7a1f_18" ; -"test_switch#break_scope#5012999682930893305.43ca855443a5fa68fa701447a90f7a1f_6" [label="6: Destruction \n _=*&x4:break_scope::X [line 127, column 5]\n n$7=_fun_break_scope::X_~X(&x4:break_scope::X*) [line 127, column 5]\n " shape="box"] +"test_switch#break_scope#5012999682930893305.43ca855443a5fa68fa701447a90f7a1f_6" [label="6: Destruction \n _=*&x4:break_scope::X [line 127, column 5]\n n$8=_fun_break_scope::X_~X(&x4:break_scope::X*) [line 127, column 5]\n " shape="box"] "test_switch#break_scope#5012999682930893305.43ca855443a5fa68fa701447a90f7a1f_6" -> "test_switch#break_scope#5012999682930893305.43ca855443a5fa68fa701447a90f7a1f_4" ; -"test_switch#break_scope#5012999682930893305.43ca855443a5fa68fa701447a90f7a1f_7" [label="7: DeclStmt \n n$8=_fun_break_scope::X_X(&x4:break_scope::X*) [line 126, column 9]\n " shape="box"] +"test_switch#break_scope#5012999682930893305.43ca855443a5fa68fa701447a90f7a1f_7" [label="7: DeclStmt \n n$10=_fun_break_scope::X_X(&x4:break_scope::X*) [line 126, column 9]\n " shape="box"] "test_switch#break_scope#5012999682930893305.43ca855443a5fa68fa701447a90f7a1f_7" -> "test_switch#break_scope#5012999682930893305.43ca855443a5fa68fa701447a90f7a1f_6" ; -"test_switch#break_scope#5012999682930893305.43ca855443a5fa68fa701447a90f7a1f_8" [label="8: Prune (true branch, switch) \n PRUNE((n$5 == 3), true); [line 125, column 5]\n " shape="invhouse"] +"test_switch#break_scope#5012999682930893305.43ca855443a5fa68fa701447a90f7a1f_8" [label="8: Prune (true branch, switch) \n PRUNE((n$6 == 3), true); [line 125, column 5]\n " shape="invhouse"] "test_switch#break_scope#5012999682930893305.43ca855443a5fa68fa701447a90f7a1f_8" -> "test_switch#break_scope#5012999682930893305.43ca855443a5fa68fa701447a90f7a1f_7" ; -"test_switch#break_scope#5012999682930893305.43ca855443a5fa68fa701447a90f7a1f_9" [label="9: Prune (false branch, switch) \n PRUNE(!(n$5 == 3), false); [line 125, column 5]\n " shape="invhouse"] +"test_switch#break_scope#5012999682930893305.43ca855443a5fa68fa701447a90f7a1f_9" [label="9: Prune (false branch, switch) \n PRUNE(!(n$6 == 3), false); [line 125, column 5]\n " shape="invhouse"] "test_switch#break_scope#5012999682930893305.43ca855443a5fa68fa701447a90f7a1f_9" -> "test_switch#break_scope#5012999682930893305.43ca855443a5fa68fa701447a90f7a1f_4" ; -"test_switch#break_scope#5012999682930893305.43ca855443a5fa68fa701447a90f7a1f_10" [label="10: Destruction \n _=*&x3:break_scope::X [line 124, column 5]\n n$10=_fun_break_scope::X_~X(&x3:break_scope::X*) [line 124, column 5]\n " shape="box"] +"test_switch#break_scope#5012999682930893305.43ca855443a5fa68fa701447a90f7a1f_10" [label="10: Destruction \n _=*&x3:break_scope::X [line 124, column 5]\n n$12=_fun_break_scope::X_~X(&x3:break_scope::X*) [line 124, column 5]\n " shape="box"] "test_switch#break_scope#5012999682930893305.43ca855443a5fa68fa701447a90f7a1f_10" -> "test_switch#break_scope#5012999682930893305.43ca855443a5fa68fa701447a90f7a1f_7" ; -"test_switch#break_scope#5012999682930893305.43ca855443a5fa68fa701447a90f7a1f_11" [label="11: Destruction \n _=*&x3:break_scope::X [line 123, column 7]\n n$12=_fun_break_scope::X_~X(&x3:break_scope::X*) [line 123, column 7]\n " shape="box"] +"test_switch#break_scope#5012999682930893305.43ca855443a5fa68fa701447a90f7a1f_11" [label="11: Destruction \n _=*&x3:break_scope::X [line 123, column 7]\n n$15=_fun_break_scope::X_~X(&x3:break_scope::X*) [line 123, column 7]\n " shape="box"] "test_switch#break_scope#5012999682930893305.43ca855443a5fa68fa701447a90f7a1f_11" -> "test_switch#break_scope#5012999682930893305.43ca855443a5fa68fa701447a90f7a1f_4" ; -"test_switch#break_scope#5012999682930893305.43ca855443a5fa68fa701447a90f7a1f_12" [label="12: DeclStmt \n n$13=_fun_break_scope::X_X(&x3:break_scope::X*) [line 122, column 9]\n " shape="box"] +"test_switch#break_scope#5012999682930893305.43ca855443a5fa68fa701447a90f7a1f_12" [label="12: DeclStmt \n n$17=_fun_break_scope::X_X(&x3:break_scope::X*) [line 122, column 9]\n " shape="box"] "test_switch#break_scope#5012999682930893305.43ca855443a5fa68fa701447a90f7a1f_12" -> "test_switch#break_scope#5012999682930893305.43ca855443a5fa68fa701447a90f7a1f_11" ; -"test_switch#break_scope#5012999682930893305.43ca855443a5fa68fa701447a90f7a1f_13" [label="13: Prune (true branch, switch) \n PRUNE((n$5 == 2), true); [line 121, column 5]\n " shape="invhouse"] +"test_switch#break_scope#5012999682930893305.43ca855443a5fa68fa701447a90f7a1f_13" [label="13: Prune (true branch, switch) \n PRUNE((n$6 == 2), true); [line 121, column 5]\n " shape="invhouse"] "test_switch#break_scope#5012999682930893305.43ca855443a5fa68fa701447a90f7a1f_13" -> "test_switch#break_scope#5012999682930893305.43ca855443a5fa68fa701447a90f7a1f_12" ; -"test_switch#break_scope#5012999682930893305.43ca855443a5fa68fa701447a90f7a1f_14" [label="14: Prune (false branch, switch) \n PRUNE(!(n$5 == 2), false); [line 121, column 5]\n " shape="invhouse"] +"test_switch#break_scope#5012999682930893305.43ca855443a5fa68fa701447a90f7a1f_14" [label="14: Prune (false branch, switch) \n PRUNE(!(n$6 == 2), false); [line 121, column 5]\n " shape="invhouse"] "test_switch#break_scope#5012999682930893305.43ca855443a5fa68fa701447a90f7a1f_14" -> "test_switch#break_scope#5012999682930893305.43ca855443a5fa68fa701447a90f7a1f_8" ; "test_switch#break_scope#5012999682930893305.43ca855443a5fa68fa701447a90f7a1f_14" -> "test_switch#break_scope#5012999682930893305.43ca855443a5fa68fa701447a90f7a1f_9" ; -"test_switch#break_scope#5012999682930893305.43ca855443a5fa68fa701447a90f7a1f_15" [label="15: Destruction \n _=*&x2:break_scope::X [line 120, column 5]\n n$15=_fun_break_scope::X_~X(&x2:break_scope::X*) [line 120, column 5]\n " shape="box"] +"test_switch#break_scope#5012999682930893305.43ca855443a5fa68fa701447a90f7a1f_15" [label="15: Destruction \n _=*&x2:break_scope::X [line 120, column 5]\n n$19=_fun_break_scope::X_~X(&x2:break_scope::X*) [line 120, column 5]\n " shape="box"] "test_switch#break_scope#5012999682930893305.43ca855443a5fa68fa701447a90f7a1f_15" -> "test_switch#break_scope#5012999682930893305.43ca855443a5fa68fa701447a90f7a1f_12" ; -"test_switch#break_scope#5012999682930893305.43ca855443a5fa68fa701447a90f7a1f_16" [label="16: DeclStmt \n n$16=_fun_break_scope::X_X(&x2:break_scope::X*) [line 119, column 9]\n " shape="box"] +"test_switch#break_scope#5012999682930893305.43ca855443a5fa68fa701447a90f7a1f_16" [label="16: DeclStmt \n n$21=_fun_break_scope::X_X(&x2:break_scope::X*) [line 119, column 9]\n " shape="box"] "test_switch#break_scope#5012999682930893305.43ca855443a5fa68fa701447a90f7a1f_16" -> "test_switch#break_scope#5012999682930893305.43ca855443a5fa68fa701447a90f7a1f_15" ; -"test_switch#break_scope#5012999682930893305.43ca855443a5fa68fa701447a90f7a1f_17" [label="17: Prune (true branch, switch) \n PRUNE((n$5 == 1), true); [line 118, column 5]\n " shape="invhouse"] +"test_switch#break_scope#5012999682930893305.43ca855443a5fa68fa701447a90f7a1f_17" [label="17: Prune (true branch, switch) \n PRUNE((n$6 == 1), true); [line 118, column 5]\n " shape="invhouse"] "test_switch#break_scope#5012999682930893305.43ca855443a5fa68fa701447a90f7a1f_17" -> "test_switch#break_scope#5012999682930893305.43ca855443a5fa68fa701447a90f7a1f_16" ; -"test_switch#break_scope#5012999682930893305.43ca855443a5fa68fa701447a90f7a1f_18" [label="18: Prune (false branch, switch) \n PRUNE(!(n$5 == 1), false); [line 118, column 5]\n " shape="invhouse"] +"test_switch#break_scope#5012999682930893305.43ca855443a5fa68fa701447a90f7a1f_18" [label="18: Prune (false branch, switch) \n PRUNE(!(n$6 == 1), false); [line 118, column 5]\n " shape="invhouse"] "test_switch#break_scope#5012999682930893305.43ca855443a5fa68fa701447a90f7a1f_18" -> "test_switch#break_scope#5012999682930893305.43ca855443a5fa68fa701447a90f7a1f_13" ; "test_switch#break_scope#5012999682930893305.43ca855443a5fa68fa701447a90f7a1f_18" -> "test_switch#break_scope#5012999682930893305.43ca855443a5fa68fa701447a90f7a1f_14" ; -"test_switch#break_scope#5012999682930893305.43ca855443a5fa68fa701447a90f7a1f_19" [label="19: DeclStmt \n n$17=_fun_break_scope::X_X(&x1:break_scope::X*) [line 116, column 5]\n " shape="box"] +"test_switch#break_scope#5012999682930893305.43ca855443a5fa68fa701447a90f7a1f_19" [label="19: DeclStmt \n n$23=_fun_break_scope::X_X(&x1:break_scope::X*) [line 116, column 5]\n " shape="box"] "test_switch#break_scope#5012999682930893305.43ca855443a5fa68fa701447a90f7a1f_19" -> "test_switch#break_scope#5012999682930893305.43ca855443a5fa68fa701447a90f7a1f_5" ; @@ -313,12 +313,12 @@ digraph cfg { "test_while1#break_scope#17740518799763849642.b3409b963f3ece06bd5b04dd968e5c61_4" -> "test_while1#break_scope#17740518799763849642.b3409b963f3ece06bd5b04dd968e5c61_5" ; "test_while1#break_scope#17740518799763849642.b3409b963f3ece06bd5b04dd968e5c61_4" -> "test_while1#break_scope#17740518799763849642.b3409b963f3ece06bd5b04dd968e5c61_6" ; -"test_while1#break_scope#17740518799763849642.b3409b963f3ece06bd5b04dd968e5c61_5" [label="5: Prune (true branch, while) \n n$2=*&a:_Bool [line 70, column 10]\n PRUNE(n$2, true); [line 70, column 10]\n " shape="invhouse"] +"test_while1#break_scope#17740518799763849642.b3409b963f3ece06bd5b04dd968e5c61_5" [label="5: Prune (true branch, while) \n n$3=*&a:_Bool [line 70, column 10]\n PRUNE(n$3, true); [line 70, column 10]\n " shape="invhouse"] "test_while1#break_scope#17740518799763849642.b3409b963f3ece06bd5b04dd968e5c61_5" -> "test_while1#break_scope#17740518799763849642.b3409b963f3ece06bd5b04dd968e5c61_8" ; "test_while1#break_scope#17740518799763849642.b3409b963f3ece06bd5b04dd968e5c61_5" -> "test_while1#break_scope#17740518799763849642.b3409b963f3ece06bd5b04dd968e5c61_9" ; -"test_while1#break_scope#17740518799763849642.b3409b963f3ece06bd5b04dd968e5c61_6" [label="6: Prune (false branch, while) \n n$2=*&a:_Bool [line 70, column 10]\n PRUNE(!n$2, false); [line 70, column 10]\n " shape="invhouse"] +"test_while1#break_scope#17740518799763849642.b3409b963f3ece06bd5b04dd968e5c61_6" [label="6: Prune (false branch, while) \n n$3=*&a:_Bool [line 70, column 10]\n PRUNE(!n$3, false); [line 70, column 10]\n " shape="invhouse"] "test_while1#break_scope#17740518799763849642.b3409b963f3ece06bd5b04dd968e5c61_6" -> "test_while1#break_scope#17740518799763849642.b3409b963f3ece06bd5b04dd968e5c61_3" ; @@ -326,35 +326,35 @@ digraph cfg { "test_while1#break_scope#17740518799763849642.b3409b963f3ece06bd5b04dd968e5c61_7" -> "test_while1#break_scope#17740518799763849642.b3409b963f3ece06bd5b04dd968e5c61_4" ; -"test_while1#break_scope#17740518799763849642.b3409b963f3ece06bd5b04dd968e5c61_8" [label="8: Prune (true branch, if) \n n$3=*&b:_Bool [line 71, column 9]\n PRUNE(n$3, true); [line 71, column 9]\n " shape="invhouse"] +"test_while1#break_scope#17740518799763849642.b3409b963f3ece06bd5b04dd968e5c61_8" [label="8: Prune (true branch, if) \n n$5=*&b:_Bool [line 71, column 9]\n PRUNE(n$5, true); [line 71, column 9]\n " shape="invhouse"] "test_while1#break_scope#17740518799763849642.b3409b963f3ece06bd5b04dd968e5c61_8" -> "test_while1#break_scope#17740518799763849642.b3409b963f3ece06bd5b04dd968e5c61_12" ; -"test_while1#break_scope#17740518799763849642.b3409b963f3ece06bd5b04dd968e5c61_9" [label="9: Prune (false branch, if) \n n$3=*&b:_Bool [line 71, column 9]\n PRUNE(!n$3, false); [line 71, column 9]\n " shape="invhouse"] +"test_while1#break_scope#17740518799763849642.b3409b963f3ece06bd5b04dd968e5c61_9" [label="9: Prune (false branch, if) \n n$5=*&b:_Bool [line 71, column 9]\n PRUNE(!n$5, false); [line 71, column 9]\n " shape="invhouse"] "test_while1#break_scope#17740518799763849642.b3409b963f3ece06bd5b04dd968e5c61_9" -> "test_while1#break_scope#17740518799763849642.b3409b963f3ece06bd5b04dd968e5c61_14" ; -"test_while1#break_scope#17740518799763849642.b3409b963f3ece06bd5b04dd968e5c61_10" [label="10: Destruction \n _=*&x2:break_scope::X [line 74, column 5]\n n$5=_fun_break_scope::X_~X(&x2:break_scope::X*) [line 74, column 5]\n " shape="box"] +"test_while1#break_scope#17740518799763849642.b3409b963f3ece06bd5b04dd968e5c61_10" [label="10: Destruction \n _=*&x2:break_scope::X [line 74, column 5]\n n$7=_fun_break_scope::X_~X(&x2:break_scope::X*) [line 74, column 5]\n " shape="box"] "test_while1#break_scope#17740518799763849642.b3409b963f3ece06bd5b04dd968e5c61_10" -> "test_while1#break_scope#17740518799763849642.b3409b963f3ece06bd5b04dd968e5c61_7" ; -"test_while1#break_scope#17740518799763849642.b3409b963f3ece06bd5b04dd968e5c61_11" [label="11: Destruction \n _=*&x2:break_scope::X [line 73, column 7]\n n$7=_fun_break_scope::X_~X(&x2:break_scope::X*) [line 73, column 7]\n " shape="box"] +"test_while1#break_scope#17740518799763849642.b3409b963f3ece06bd5b04dd968e5c61_11" [label="11: Destruction \n _=*&x2:break_scope::X [line 73, column 7]\n n$10=_fun_break_scope::X_~X(&x2:break_scope::X*) [line 73, column 7]\n " shape="box"] "test_while1#break_scope#17740518799763849642.b3409b963f3ece06bd5b04dd968e5c61_11" -> "test_while1#break_scope#17740518799763849642.b3409b963f3ece06bd5b04dd968e5c61_3" ; -"test_while1#break_scope#17740518799763849642.b3409b963f3ece06bd5b04dd968e5c61_12" [label="12: DeclStmt \n n$8=_fun_break_scope::X_X(&x2:break_scope::X*) [line 72, column 9]\n " shape="box"] +"test_while1#break_scope#17740518799763849642.b3409b963f3ece06bd5b04dd968e5c61_12" [label="12: DeclStmt \n n$12=_fun_break_scope::X_X(&x2:break_scope::X*) [line 72, column 9]\n " shape="box"] "test_while1#break_scope#17740518799763849642.b3409b963f3ece06bd5b04dd968e5c61_12" -> "test_while1#break_scope#17740518799763849642.b3409b963f3ece06bd5b04dd968e5c61_11" ; -"test_while1#break_scope#17740518799763849642.b3409b963f3ece06bd5b04dd968e5c61_13" [label="13: Destruction \n _=*&x4:break_scope::X [line 76, column 5]\n n$10=_fun_break_scope::X_~X(&x4:break_scope::X*) [line 76, column 5]\n " shape="box"] +"test_while1#break_scope#17740518799763849642.b3409b963f3ece06bd5b04dd968e5c61_13" [label="13: Destruction \n _=*&x4:break_scope::X [line 76, column 5]\n n$14=_fun_break_scope::X_~X(&x4:break_scope::X*) [line 76, column 5]\n " shape="box"] "test_while1#break_scope#17740518799763849642.b3409b963f3ece06bd5b04dd968e5c61_13" -> "test_while1#break_scope#17740518799763849642.b3409b963f3ece06bd5b04dd968e5c61_7" ; -"test_while1#break_scope#17740518799763849642.b3409b963f3ece06bd5b04dd968e5c61_14" [label="14: DeclStmt \n n$11=_fun_break_scope::X_X(&x4:break_scope::X*) [line 75, column 9]\n " shape="box"] +"test_while1#break_scope#17740518799763849642.b3409b963f3ece06bd5b04dd968e5c61_14" [label="14: DeclStmt \n n$16=_fun_break_scope::X_X(&x4:break_scope::X*) [line 75, column 9]\n " shape="box"] "test_while1#break_scope#17740518799763849642.b3409b963f3ece06bd5b04dd968e5c61_14" -> "test_while1#break_scope#17740518799763849642.b3409b963f3ece06bd5b04dd968e5c61_13" ; -"test_while1#break_scope#17740518799763849642.b3409b963f3ece06bd5b04dd968e5c61_15" [label="15: DeclStmt \n n$12=_fun_break_scope::X_X(&x1:break_scope::X*) [line 69, column 5]\n " shape="box"] +"test_while1#break_scope#17740518799763849642.b3409b963f3ece06bd5b04dd968e5c61_15" [label="15: DeclStmt \n n$19=_fun_break_scope::X_X(&x1:break_scope::X*) [line 69, column 5]\n " shape="box"] "test_while1#break_scope#17740518799763849642.b3409b963f3ece06bd5b04dd968e5c61_15" -> "test_while1#break_scope#17740518799763849642.b3409b963f3ece06bd5b04dd968e5c61_4" ; @@ -374,15 +374,15 @@ digraph cfg { "test_while2#break_scope#17250772168162981325.38013d039ed950814e06274bca56c75d_4" -> "test_while2#break_scope#17250772168162981325.38013d039ed950814e06274bca56c75d_5" ; "test_while2#break_scope#17250772168162981325.38013d039ed950814e06274bca56c75d_4" -> "test_while2#break_scope#17250772168162981325.38013d039ed950814e06274bca56c75d_6" ; -"test_while2#break_scope#17250772168162981325.38013d039ed950814e06274bca56c75d_5" [label="5: Prune (true branch, while) \n n$2=*&a:_Bool [line 95, column 10]\n PRUNE(n$2, true); [line 95, column 10]\n " shape="invhouse"] +"test_while2#break_scope#17250772168162981325.38013d039ed950814e06274bca56c75d_5" [label="5: Prune (true branch, while) \n n$3=*&a:_Bool [line 95, column 10]\n PRUNE(n$3, true); [line 95, column 10]\n " shape="invhouse"] "test_while2#break_scope#17250772168162981325.38013d039ed950814e06274bca56c75d_5" -> "test_while2#break_scope#17250772168162981325.38013d039ed950814e06274bca56c75d_14" ; -"test_while2#break_scope#17250772168162981325.38013d039ed950814e06274bca56c75d_6" [label="6: Prune (false branch, while) \n n$2=*&a:_Bool [line 95, column 10]\n PRUNE(!n$2, false); [line 95, column 10]\n " shape="invhouse"] +"test_while2#break_scope#17250772168162981325.38013d039ed950814e06274bca56c75d_6" [label="6: Prune (false branch, while) \n n$3=*&a:_Bool [line 95, column 10]\n PRUNE(!n$3, false); [line 95, column 10]\n " shape="invhouse"] "test_while2#break_scope#17250772168162981325.38013d039ed950814e06274bca56c75d_6" -> "test_while2#break_scope#17250772168162981325.38013d039ed950814e06274bca56c75d_3" ; -"test_while2#break_scope#17250772168162981325.38013d039ed950814e06274bca56c75d_7" [label="7: Destruction \n _=*&x2:break_scope::X [line 101, column 3]\n n$4=_fun_break_scope::X_~X(&x2:break_scope::X*) [line 101, column 3]\n " shape="box"] +"test_while2#break_scope#17250772168162981325.38013d039ed950814e06274bca56c75d_7" [label="7: Destruction \n _=*&x2:break_scope::X [line 101, column 3]\n n$5=_fun_break_scope::X_~X(&x2:break_scope::X*) [line 101, column 3]\n " shape="box"] "test_while2#break_scope#17250772168162981325.38013d039ed950814e06274bca56c75d_7" -> "test_while2#break_scope#17250772168162981325.38013d039ed950814e06274bca56c75d_4" ; @@ -391,31 +391,31 @@ digraph cfg { "test_while2#break_scope#17250772168162981325.38013d039ed950814e06274bca56c75d_8" -> "test_while2#break_scope#17250772168162981325.38013d039ed950814e06274bca56c75d_9" ; "test_while2#break_scope#17250772168162981325.38013d039ed950814e06274bca56c75d_8" -> "test_while2#break_scope#17250772168162981325.38013d039ed950814e06274bca56c75d_10" ; -"test_while2#break_scope#17250772168162981325.38013d039ed950814e06274bca56c75d_9" [label="9: Prune (true branch, while) \n n$5=*&b:_Bool [line 97, column 12]\n PRUNE(n$5, true); [line 97, column 12]\n " shape="invhouse"] +"test_while2#break_scope#17250772168162981325.38013d039ed950814e06274bca56c75d_9" [label="9: Prune (true branch, while) \n n$7=*&b:_Bool [line 97, column 12]\n PRUNE(n$7, true); [line 97, column 12]\n " shape="invhouse"] "test_while2#break_scope#17250772168162981325.38013d039ed950814e06274bca56c75d_9" -> "test_while2#break_scope#17250772168162981325.38013d039ed950814e06274bca56c75d_13" ; -"test_while2#break_scope#17250772168162981325.38013d039ed950814e06274bca56c75d_10" [label="10: Prune (false branch, while) \n n$5=*&b:_Bool [line 97, column 12]\n PRUNE(!n$5, false); [line 97, column 12]\n " shape="invhouse"] +"test_while2#break_scope#17250772168162981325.38013d039ed950814e06274bca56c75d_10" [label="10: Prune (false branch, while) \n n$7=*&b:_Bool [line 97, column 12]\n PRUNE(!n$7, false); [line 97, column 12]\n " shape="invhouse"] "test_while2#break_scope#17250772168162981325.38013d039ed950814e06274bca56c75d_10" -> "test_while2#break_scope#17250772168162981325.38013d039ed950814e06274bca56c75d_7" ; -"test_while2#break_scope#17250772168162981325.38013d039ed950814e06274bca56c75d_11" [label="11: Destruction \n _=*&x3:break_scope::X [line 100, column 5]\n n$7=_fun_break_scope::X_~X(&x3:break_scope::X*) [line 100, column 5]\n " shape="box"] +"test_while2#break_scope#17250772168162981325.38013d039ed950814e06274bca56c75d_11" [label="11: Destruction \n _=*&x3:break_scope::X [line 100, column 5]\n n$9=_fun_break_scope::X_~X(&x3:break_scope::X*) [line 100, column 5]\n " shape="box"] "test_while2#break_scope#17250772168162981325.38013d039ed950814e06274bca56c75d_11" -> "test_while2#break_scope#17250772168162981325.38013d039ed950814e06274bca56c75d_8" ; -"test_while2#break_scope#17250772168162981325.38013d039ed950814e06274bca56c75d_12" [label="12: Destruction \n _=*&x3:break_scope::X [line 99, column 7]\n n$9=_fun_break_scope::X_~X(&x3:break_scope::X*) [line 99, column 7]\n " shape="box"] +"test_while2#break_scope#17250772168162981325.38013d039ed950814e06274bca56c75d_12" [label="12: Destruction \n _=*&x3:break_scope::X [line 99, column 7]\n n$12=_fun_break_scope::X_~X(&x3:break_scope::X*) [line 99, column 7]\n " shape="box"] "test_while2#break_scope#17250772168162981325.38013d039ed950814e06274bca56c75d_12" -> "test_while2#break_scope#17250772168162981325.38013d039ed950814e06274bca56c75d_7" ; -"test_while2#break_scope#17250772168162981325.38013d039ed950814e06274bca56c75d_13" [label="13: DeclStmt \n n$10=_fun_break_scope::X_X(&x3:break_scope::X*) [line 98, column 9]\n " shape="box"] +"test_while2#break_scope#17250772168162981325.38013d039ed950814e06274bca56c75d_13" [label="13: DeclStmt \n n$14=_fun_break_scope::X_X(&x3:break_scope::X*) [line 98, column 9]\n " shape="box"] "test_while2#break_scope#17250772168162981325.38013d039ed950814e06274bca56c75d_13" -> "test_while2#break_scope#17250772168162981325.38013d039ed950814e06274bca56c75d_12" ; -"test_while2#break_scope#17250772168162981325.38013d039ed950814e06274bca56c75d_14" [label="14: DeclStmt \n n$11=_fun_break_scope::X_X(&x2:break_scope::X*) [line 96, column 7]\n " shape="box"] +"test_while2#break_scope#17250772168162981325.38013d039ed950814e06274bca56c75d_14" [label="14: DeclStmt \n n$16=_fun_break_scope::X_X(&x2:break_scope::X*) [line 96, column 7]\n " shape="box"] "test_while2#break_scope#17250772168162981325.38013d039ed950814e06274bca56c75d_14" -> "test_while2#break_scope#17250772168162981325.38013d039ed950814e06274bca56c75d_8" ; -"test_while2#break_scope#17250772168162981325.38013d039ed950814e06274bca56c75d_15" [label="15: DeclStmt \n n$12=_fun_break_scope::X_X(&x1:break_scope::X*) [line 94, column 5]\n " shape="box"] +"test_while2#break_scope#17250772168162981325.38013d039ed950814e06274bca56c75d_15" [label="15: DeclStmt \n n$18=_fun_break_scope::X_X(&x1:break_scope::X*) [line 94, column 5]\n " shape="box"] "test_while2#break_scope#17250772168162981325.38013d039ed950814e06274bca56c75d_15" -> "test_while2#break_scope#17250772168162981325.38013d039ed950814e06274bca56c75d_4" ; @@ -430,7 +430,7 @@ digraph cfg { "test_while3#break_scope#10134831914750033380.7cab458a264bff5f98e4df48e17e8d7d_3" -> "test_while3#break_scope#10134831914750033380.7cab458a264bff5f98e4df48e17e8d7d_2" ; -"test_while3#break_scope#10134831914750033380.7cab458a264bff5f98e4df48e17e8d7d_4" [label="4: DeclStmt \n n$4=_fun_break_scope::X_X(&x3:break_scope::X*) [line 112, column 5]\n " shape="box"] +"test_while3#break_scope#10134831914750033380.7cab458a264bff5f98e4df48e17e8d7d_4" [label="4: DeclStmt \n n$5=_fun_break_scope::X_X(&x3:break_scope::X*) [line 112, column 5]\n " shape="box"] "test_while3#break_scope#10134831914750033380.7cab458a264bff5f98e4df48e17e8d7d_4" -> "test_while3#break_scope#10134831914750033380.7cab458a264bff5f98e4df48e17e8d7d_3" ; @@ -439,15 +439,15 @@ digraph cfg { "test_while3#break_scope#10134831914750033380.7cab458a264bff5f98e4df48e17e8d7d_5" -> "test_while3#break_scope#10134831914750033380.7cab458a264bff5f98e4df48e17e8d7d_6" ; "test_while3#break_scope#10134831914750033380.7cab458a264bff5f98e4df48e17e8d7d_5" -> "test_while3#break_scope#10134831914750033380.7cab458a264bff5f98e4df48e17e8d7d_7" ; -"test_while3#break_scope#10134831914750033380.7cab458a264bff5f98e4df48e17e8d7d_6" [label="6: Prune (true branch, while) \n n$5=*&a:_Bool [line 106, column 10]\n PRUNE(n$5, true); [line 106, column 10]\n " shape="invhouse"] +"test_while3#break_scope#10134831914750033380.7cab458a264bff5f98e4df48e17e8d7d_6" [label="6: Prune (true branch, while) \n n$6=*&a:_Bool [line 106, column 10]\n PRUNE(n$6, true); [line 106, column 10]\n " shape="invhouse"] "test_while3#break_scope#10134831914750033380.7cab458a264bff5f98e4df48e17e8d7d_6" -> "test_while3#break_scope#10134831914750033380.7cab458a264bff5f98e4df48e17e8d7d_12" ; -"test_while3#break_scope#10134831914750033380.7cab458a264bff5f98e4df48e17e8d7d_7" [label="7: Prune (false branch, while) \n n$5=*&a:_Bool [line 106, column 10]\n PRUNE(!n$5, false); [line 106, column 10]\n " shape="invhouse"] +"test_while3#break_scope#10134831914750033380.7cab458a264bff5f98e4df48e17e8d7d_7" [label="7: Prune (false branch, while) \n n$6=*&a:_Bool [line 106, column 10]\n PRUNE(!n$6, false); [line 106, column 10]\n " shape="invhouse"] "test_while3#break_scope#10134831914750033380.7cab458a264bff5f98e4df48e17e8d7d_7" -> "test_while3#break_scope#10134831914750033380.7cab458a264bff5f98e4df48e17e8d7d_4" ; -"test_while3#break_scope#10134831914750033380.7cab458a264bff5f98e4df48e17e8d7d_8" [label="8: Destruction \n _=*&x2:break_scope::X [line 111, column 3]\n n$7=_fun_break_scope::X_~X(&x2:break_scope::X*) [line 111, column 3]\n " shape="box"] +"test_while3#break_scope#10134831914750033380.7cab458a264bff5f98e4df48e17e8d7d_8" [label="8: Destruction \n _=*&x2:break_scope::X [line 111, column 3]\n n$8=_fun_break_scope::X_~X(&x2:break_scope::X*) [line 111, column 3]\n " shape="box"] "test_while3#break_scope#10134831914750033380.7cab458a264bff5f98e4df48e17e8d7d_8" -> "test_while3#break_scope#10134831914750033380.7cab458a264bff5f98e4df48e17e8d7d_5" ; @@ -456,19 +456,19 @@ digraph cfg { "test_while3#break_scope#10134831914750033380.7cab458a264bff5f98e4df48e17e8d7d_9" -> "test_while3#break_scope#10134831914750033380.7cab458a264bff5f98e4df48e17e8d7d_10" ; "test_while3#break_scope#10134831914750033380.7cab458a264bff5f98e4df48e17e8d7d_9" -> "test_while3#break_scope#10134831914750033380.7cab458a264bff5f98e4df48e17e8d7d_11" ; -"test_while3#break_scope#10134831914750033380.7cab458a264bff5f98e4df48e17e8d7d_10" [label="10: Prune (true branch, while) \n n$8=*&b:_Bool [line 108, column 12]\n PRUNE(n$8, true); [line 108, column 12]\n " shape="invhouse"] +"test_while3#break_scope#10134831914750033380.7cab458a264bff5f98e4df48e17e8d7d_10" [label="10: Prune (true branch, while) \n n$10=*&b:_Bool [line 108, column 12]\n PRUNE(n$10, true); [line 108, column 12]\n " shape="invhouse"] "test_while3#break_scope#10134831914750033380.7cab458a264bff5f98e4df48e17e8d7d_10" -> "test_while3#break_scope#10134831914750033380.7cab458a264bff5f98e4df48e17e8d7d_8" ; -"test_while3#break_scope#10134831914750033380.7cab458a264bff5f98e4df48e17e8d7d_11" [label="11: Prune (false branch, while) \n n$8=*&b:_Bool [line 108, column 12]\n PRUNE(!n$8, false); [line 108, column 12]\n " shape="invhouse"] +"test_while3#break_scope#10134831914750033380.7cab458a264bff5f98e4df48e17e8d7d_11" [label="11: Prune (false branch, while) \n n$10=*&b:_Bool [line 108, column 12]\n PRUNE(!n$10, false); [line 108, column 12]\n " shape="invhouse"] "test_while3#break_scope#10134831914750033380.7cab458a264bff5f98e4df48e17e8d7d_11" -> "test_while3#break_scope#10134831914750033380.7cab458a264bff5f98e4df48e17e8d7d_8" ; -"test_while3#break_scope#10134831914750033380.7cab458a264bff5f98e4df48e17e8d7d_12" [label="12: DeclStmt \n n$9=_fun_break_scope::X_X(&x2:break_scope::X*) [line 107, column 7]\n " shape="box"] +"test_while3#break_scope#10134831914750033380.7cab458a264bff5f98e4df48e17e8d7d_12" [label="12: DeclStmt \n n$15=_fun_break_scope::X_X(&x2:break_scope::X*) [line 107, column 7]\n " shape="box"] "test_while3#break_scope#10134831914750033380.7cab458a264bff5f98e4df48e17e8d7d_12" -> "test_while3#break_scope#10134831914750033380.7cab458a264bff5f98e4df48e17e8d7d_9" ; -"test_while3#break_scope#10134831914750033380.7cab458a264bff5f98e4df48e17e8d7d_13" [label="13: DeclStmt \n n$10=_fun_break_scope::X_X(&x1:break_scope::X*) [line 105, column 5]\n " shape="box"] +"test_while3#break_scope#10134831914750033380.7cab458a264bff5f98e4df48e17e8d7d_13" [label="13: DeclStmt \n n$17=_fun_break_scope::X_X(&x1:break_scope::X*) [line 105, column 5]\n " shape="box"] "test_while3#break_scope#10134831914750033380.7cab458a264bff5f98e4df48e17e8d7d_13" -> "test_while3#break_scope#10134831914750033380.7cab458a264bff5f98e4df48e17e8d7d_5" ; @@ -540,11 +540,11 @@ digraph cfg { "iterator#iterator#break_scope#{13325232528858742422|constexpr}.df2bdd1dc650d74172db385b1dec541f_2" [label="2: Exit break_scope::iterator_iterator \n " color=yellow style=filled] -"iterator#iterator#break_scope#{13325232528858742422|constexpr}.df2bdd1dc650d74172db385b1dec541f_3" [label="3: Constructor Init \n n$0=*&this:break_scope::iterator* [line 18, column 8]\n n$1=*&__param_0:break_scope::iterator const & [line 18, column 8]\n n$2=*n$1.vector:break_scope::vec const * [line 18, column 8]\n *n$0.vector:break_scope::vec const *=n$2 [line 18, column 8]\n " shape="box"] +"iterator#iterator#break_scope#{13325232528858742422|constexpr}.df2bdd1dc650d74172db385b1dec541f_3" [label="3: Constructor Init \n n$2=*&this:break_scope::iterator* [line 18, column 8]\n n$3=*&__param_0:break_scope::iterator const & [line 18, column 8]\n n$4=*n$3.vector:break_scope::vec const * [line 18, column 8]\n *n$2.vector:break_scope::vec const *=n$4 [line 18, column 8]\n " shape="box"] "iterator#iterator#break_scope#{13325232528858742422|constexpr}.df2bdd1dc650d74172db385b1dec541f_3" -> "iterator#iterator#break_scope#{13325232528858742422|constexpr}.df2bdd1dc650d74172db385b1dec541f_2" ; -"iterator#iterator#break_scope#{13325232528858742422|constexpr}.df2bdd1dc650d74172db385b1dec541f_4" [label="4: Constructor Init \n n$3=*&this:break_scope::iterator* [line 18, column 8]\n n$4=*&__param_0:break_scope::iterator const & [line 18, column 8]\n n$5=*n$4.position:int [line 18, column 8]\n *n$3.position:int=n$5 [line 18, column 8]\n " shape="box"] +"iterator#iterator#break_scope#{13325232528858742422|constexpr}.df2bdd1dc650d74172db385b1dec541f_4" [label="4: Constructor Init \n n$5=*&this:break_scope::iterator* [line 18, column 8]\n n$6=*&__param_0:break_scope::iterator const & [line 18, column 8]\n n$7=*n$6.position:int [line 18, column 8]\n *n$5.position:int=n$7 [line 18, column 8]\n " shape="box"] "iterator#iterator#break_scope#{13325232528858742422|constexpr}.df2bdd1dc650d74172db385b1dec541f_4" -> "iterator#iterator#break_scope#{13325232528858742422|constexpr}.df2bdd1dc650d74172db385b1dec541f_3" ; @@ -555,11 +555,11 @@ digraph cfg { "iterator#iterator#break_scope#{16869174875139255019}.6ab4697f81ed961d5f192c83dffe5de4_2" [label="2: Exit break_scope::iterator_iterator \n " color=yellow style=filled] -"iterator#iterator#break_scope#{16869174875139255019}.6ab4697f81ed961d5f192c83dffe5de4_3" [label="3: Constructor Init \n n$0=*&this:break_scope::iterator* [line 22, column 52]\n n$1=*&v:break_scope::vec const * [line 22, column 59]\n *n$0.vector:break_scope::vec const *=n$1 [line 22, column 52]\n " shape="box"] +"iterator#iterator#break_scope#{16869174875139255019}.6ab4697f81ed961d5f192c83dffe5de4_3" [label="3: Constructor Init \n n$2=*&this:break_scope::iterator* [line 22, column 52]\n n$3=*&v:break_scope::vec const * [line 22, column 59]\n *n$2.vector:break_scope::vec const *=n$3 [line 22, column 52]\n " shape="box"] "iterator#iterator#break_scope#{16869174875139255019}.6ab4697f81ed961d5f192c83dffe5de4_3" -> "iterator#iterator#break_scope#{16869174875139255019}.6ab4697f81ed961d5f192c83dffe5de4_2" ; -"iterator#iterator#break_scope#{16869174875139255019}.6ab4697f81ed961d5f192c83dffe5de4_4" [label="4: Constructor Init \n n$2=*&this:break_scope::iterator* [line 22, column 37]\n n$3=*&pos:int [line 22, column 46]\n *n$2.position:int=n$3 [line 22, column 37]\n " shape="box"] +"iterator#iterator#break_scope#{16869174875139255019}.6ab4697f81ed961d5f192c83dffe5de4_4" [label="4: Constructor Init \n n$4=*&this:break_scope::iterator* [line 22, column 37]\n n$5=*&pos:int [line 22, column 46]\n *n$4.position:int=n$5 [line 22, column 37]\n " shape="box"] "iterator#iterator#break_scope#{16869174875139255019}.6ab4697f81ed961d5f192c83dffe5de4_4" -> "iterator#iterator#break_scope#{16869174875139255019}.6ab4697f81ed961d5f192c83dffe5de4_3" ; @@ -570,11 +570,11 @@ digraph cfg { "iterator#iterator#break_scope#{3654715460407933162|constexpr}.a69cb17d37da9b3963eb407e0dec4509_2" [label="2: Exit break_scope::iterator_iterator \n " color=yellow style=filled] -"iterator#iterator#break_scope#{3654715460407933162|constexpr}.a69cb17d37da9b3963eb407e0dec4509_3" [label="3: Constructor Init \n n$0=*&this:break_scope::iterator* [line 18, column 8]\n n$1=*&__param_0:break_scope::iterator& [line 18, column 8]\n n$2=*n$1.vector:break_scope::vec const * [line 18, column 8]\n *n$0.vector:break_scope::vec const *=n$2 [line 18, column 8]\n " shape="box"] +"iterator#iterator#break_scope#{3654715460407933162|constexpr}.a69cb17d37da9b3963eb407e0dec4509_3" [label="3: Constructor Init \n n$2=*&this:break_scope::iterator* [line 18, column 8]\n n$3=*&__param_0:break_scope::iterator& [line 18, column 8]\n n$4=*n$3.vector:break_scope::vec const * [line 18, column 8]\n *n$2.vector:break_scope::vec const *=n$4 [line 18, column 8]\n " shape="box"] "iterator#iterator#break_scope#{3654715460407933162|constexpr}.a69cb17d37da9b3963eb407e0dec4509_3" -> "iterator#iterator#break_scope#{3654715460407933162|constexpr}.a69cb17d37da9b3963eb407e0dec4509_2" ; -"iterator#iterator#break_scope#{3654715460407933162|constexpr}.a69cb17d37da9b3963eb407e0dec4509_4" [label="4: Constructor Init \n n$3=*&this:break_scope::iterator* [line 18, column 8]\n n$4=*&__param_0:break_scope::iterator& [line 18, column 8]\n n$5=*n$4.position:int [line 18, column 8]\n *n$3.position:int=n$5 [line 18, column 8]\n " shape="box"] +"iterator#iterator#break_scope#{3654715460407933162|constexpr}.a69cb17d37da9b3963eb407e0dec4509_4" [label="4: Constructor Init \n n$5=*&this:break_scope::iterator* [line 18, column 8]\n n$6=*&__param_0:break_scope::iterator& [line 18, column 8]\n n$7=*n$6.position:int [line 18, column 8]\n *n$5.position:int=n$7 [line 18, column 8]\n " shape="box"] "iterator#iterator#break_scope#{3654715460407933162|constexpr}.a69cb17d37da9b3963eb407e0dec4509_4" -> "iterator#iterator#break_scope#{3654715460407933162|constexpr}.a69cb17d37da9b3963eb407e0dec4509_3" ; @@ -602,11 +602,11 @@ digraph cfg { "operator!=#iterator#break_scope#(15861647440981693631).5a328db1c01702ad115b55855603e1eb_6" -> "operator!=#iterator#break_scope#(15861647440981693631).5a328db1c01702ad115b55855603e1eb_8" ; -"operator!=#iterator#break_scope#(15861647440981693631).5a328db1c01702ad115b55855603e1eb_7" [label="7: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:_Bool=1 [line 29, column 48]\n " shape="box"] +"operator!=#iterator#break_scope#(15861647440981693631).5a328db1c01702ad115b55855603e1eb_7" [label="7: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:_Bool=1 [line 29, column 48]\n " shape="box"] "operator!=#iterator#break_scope#(15861647440981693631).5a328db1c01702ad115b55855603e1eb_7" -> "operator!=#iterator#break_scope#(15861647440981693631).5a328db1c01702ad115b55855603e1eb_3" ; -"operator!=#iterator#break_scope#(15861647440981693631).5a328db1c01702ad115b55855603e1eb_8" [label="8: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:_Bool=0 [line 29, column 48]\n " shape="box"] +"operator!=#iterator#break_scope#(15861647440981693631).5a328db1c01702ad115b55855603e1eb_8" [label="8: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:_Bool=0 [line 29, column 48]\n " shape="box"] "operator!=#iterator#break_scope#(15861647440981693631).5a328db1c01702ad115b55855603e1eb_8" -> "operator!=#iterator#break_scope#(15861647440981693631).5a328db1c01702ad115b55855603e1eb_3" ; @@ -614,14 +614,14 @@ digraph cfg { "operator!=#iterator#break_scope#(15861647440981693631).5a328db1c01702ad115b55855603e1eb_9" -> "operator!=#iterator#break_scope#(15861647440981693631).5a328db1c01702ad115b55855603e1eb_2" ; -"operator*#iterator#break_scope#(4328339407583570703).cdad0941eaaed797f70482510d139870_1" [label="1: Start break_scope::iterator_operator*\nFormals: this:break_scope::iterator* __return_param:break_scope::X*\nLocals: 0$?%__sil_tmpSIL_materialize_temp__n$1:break_scope::X \n DECLARE_LOCALS(&return,&0$?%__sil_tmpSIL_materialize_temp__n$1); [line 44, column 1]\n " color=yellow style=filled] +"operator*#iterator#break_scope#(4328339407583570703).cdad0941eaaed797f70482510d139870_1" [label="1: Start break_scope::iterator_operator*\nFormals: this:break_scope::iterator* __return_param:break_scope::X*\nLocals: 0$?%__sil_tmpSIL_materialize_temp__n$1:break_scope::X const \n DECLARE_LOCALS(&return,&0$?%__sil_tmpSIL_materialize_temp__n$1); [line 44, column 1]\n " color=yellow style=filled] "operator*#iterator#break_scope#(4328339407583570703).cdad0941eaaed797f70482510d139870_1" -> "operator*#iterator#break_scope#(4328339407583570703).cdad0941eaaed797f70482510d139870_3" ; "operator*#iterator#break_scope#(4328339407583570703).cdad0941eaaed797f70482510d139870_2" [label="2: Exit break_scope::iterator_operator* \n " color=yellow style=filled] -"operator*#iterator#break_scope#(4328339407583570703).cdad0941eaaed797f70482510d139870_3" [label="3: Return Stmt \n n$0=*&__return_param:break_scope::X* [line 44, column 33]\n n$2=*&this:break_scope::iterator const * [line 44, column 40]\n n$3=*n$2.vector:break_scope::vec const * [line 44, column 40]\n _=*n$3:break_scope::vec const [line 44, column 40]\n n$5=*&this:break_scope::iterator const * [line 44, column 52]\n n$6=*n$5.position:int [line 44, column 52]\n n$8=_fun_break_scope::vec_get(n$3:break_scope::vec const *,n$6:int,&0$?%__sil_tmpSIL_materialize_temp__n$1:break_scope::X*) [line 44, column 40]\n n$9=_fun_break_scope::X_X(n$0:break_scope::X*,&0$?%__sil_tmpSIL_materialize_temp__n$1:break_scope::X&) [line 44, column 40]\n " shape="box"] +"operator*#iterator#break_scope#(4328339407583570703).cdad0941eaaed797f70482510d139870_3" [label="3: Return Stmt \n n$0=*&__return_param:break_scope::X* [line 44, column 33]\n n$2=*&this:break_scope::iterator const * [line 44, column 40]\n n$3=*n$2.vector:break_scope::vec const * [line 44, column 40]\n _=*n$3:break_scope::vec const [line 44, column 40]\n n$5=*&this:break_scope::iterator const * [line 44, column 52]\n n$6=*n$5.position:int [line 44, column 52]\n n$8=_fun_break_scope::vec_get(n$3:break_scope::vec const *,n$6:int,&0$?%__sil_tmpSIL_materialize_temp__n$1:break_scope::X*) [line 44, column 40]\n n$9=_fun_break_scope::X_X(n$0:break_scope::X*,&0$?%__sil_tmpSIL_materialize_temp__n$1:break_scope::X const &) [line 44, column 40]\n " shape="box"] "operator*#iterator#break_scope#(4328339407583570703).cdad0941eaaed797f70482510d139870_3" -> "operator*#iterator#break_scope#(4328339407583570703).cdad0941eaaed797f70482510d139870_2" ; @@ -636,7 +636,7 @@ digraph cfg { "operator++#iterator#break_scope#(2766485846133390801).11d4c93e59bfd59c8af952e0b96f50cf_3" -> "operator++#iterator#break_scope#(2766485846133390801).11d4c93e59bfd59c8af952e0b96f50cf_2" ; -"operator++#iterator#break_scope#(2766485846133390801).11d4c93e59bfd59c8af952e0b96f50cf_4" [label="4: UnaryOperator \n n$3=*&this:break_scope::iterator* [line 25, column 5]\n n$4=*n$3.position:int [line 25, column 5]\n *n$3.position:int=(n$4 + 1) [line 25, column 5]\n " shape="box"] +"operator++#iterator#break_scope#(2766485846133390801).11d4c93e59bfd59c8af952e0b96f50cf_4" [label="4: UnaryOperator \n n$4=*&this:break_scope::iterator* [line 25, column 5]\n n$5=*n$4.position:int [line 25, column 5]\n *n$4.position:int=(n$5 + 1) [line 25, column 5]\n " shape="box"] "operator++#iterator#break_scope#(2766485846133390801).11d4c93e59bfd59c8af952e0b96f50cf_4" -> "operator++#iterator#break_scope#(2766485846133390801).11d4c93e59bfd59c8af952e0b96f50cf_3" ; @@ -647,7 +647,7 @@ digraph cfg { "vec#vec#break_scope#{8713994320815093146}.a7abdfa106915d365eda869e8e136554_2" [label="2: Exit break_scope::vec_vec \n " color=yellow style=filled] -"vec#vec#break_scope#{8713994320815093146}.a7abdfa106915d365eda869e8e136554_3" [label="3: Constructor Init \n n$0=*&this:break_scope::vec* [line 35, column 3]\n n$1=_fun_break_scope::X_X(n$0._data:break_scope::X[10*1](*)) [line 35, column 3]\n " shape="box"] +"vec#vec#break_scope#{8713994320815093146}.a7abdfa106915d365eda869e8e136554_3" [label="3: Constructor Init \n n$2=*&this:break_scope::vec* [line 35, column 3]\n n$3=_fun_break_scope::X_X(n$2._data:break_scope::X[10*1](*)) [line 35, column 3]\n " shape="box"] "vec#vec#break_scope#{8713994320815093146}.a7abdfa106915d365eda869e8e136554_3" -> "vec#vec#break_scope#{8713994320815093146}.a7abdfa106915d365eda869e8e136554_2" ; diff --git a/infer/tests/codetoanalyze/cpp/frontend/destructors/call_destructor.cpp.dot b/infer/tests/codetoanalyze/cpp/frontend/destructors/call_destructor.cpp.dot index 58dbbfb0d..4010fbca0 100644 --- a/infer/tests/codetoanalyze/cpp/frontend/destructors/call_destructor.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/frontend/destructors/call_destructor.cpp.dot @@ -7,7 +7,7 @@ digraph cfg { "f#3072121847520995784.879d673a5bab84df6d2f71ce7f834b14_2" [label="2: Exit f \n " color=yellow style=filled] -"f#3072121847520995784.879d673a5bab84df6d2f71ce7f834b14_3" [label="3: Call _fun_Person_~Person \n n$0=*&p:Person* [line 15, column 21]\n _=*n$0:Person [line 15, column 21]\n n$2=_fun_Person_~Person(n$0:Person*) [line 15, column 21]\n " shape="box"] +"f#3072121847520995784.879d673a5bab84df6d2f71ce7f834b14_3" [label="3: Call _fun_Person_~Person \n n$1=*&p:Person* [line 15, column 21]\n _=*n$1:Person [line 15, column 21]\n n$3=_fun_Person_~Person(n$1:Person*) [line 15, column 21]\n " shape="box"] "f#3072121847520995784.879d673a5bab84df6d2f71ce7f834b14_3" -> "f#3072121847520995784.879d673a5bab84df6d2f71ce7f834b14_2" ; diff --git a/infer/tests/codetoanalyze/cpp/frontend/destructors/call_on_delete.cpp.dot b/infer/tests/codetoanalyze/cpp/frontend/destructors/call_on_delete.cpp.dot index 93bb05f1e..64abd1c3b 100644 --- a/infer/tests/codetoanalyze/cpp/frontend/destructors/call_on_delete.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/frontend/destructors/call_on_delete.cpp.dot @@ -7,7 +7,7 @@ digraph cfg { "deleteInt#11507157942721721842.63c462d9916f225a70cc32ed39aaaf5f_2" [label="2: Exit deleteInt \n " color=yellow style=filled] -"deleteInt#11507157942721721842.63c462d9916f225a70cc32ed39aaaf5f_3" [label="3: Call delete \n n$0=*&x:int* [line 16, column 33]\n n$1=_fun___delete(n$0:int*) [line 16, column 26]\n " shape="box"] +"deleteInt#11507157942721721842.63c462d9916f225a70cc32ed39aaaf5f_3" [label="3: Call delete \n n$1=*&x:int* [line 16, column 33]\n n$2=_fun___delete(n$1:int*) [line 16, column 26]\n " shape="box"] "deleteInt#11507157942721721842.63c462d9916f225a70cc32ed39aaaf5f_3" -> "deleteInt#11507157942721721842.63c462d9916f225a70cc32ed39aaaf5f_2" ; @@ -18,7 +18,7 @@ digraph cfg { "deleteX#8359832236310221055.8e97d527465f9865245eba503777c9c7_2" [label="2: Exit deleteX \n " color=yellow style=filled] -"deleteX#8359832236310221055.8e97d527465f9865245eba503777c9c7_3" [label="3: Call delete \n n$0=*&x:X* [line 14, column 29]\n n$1=_fun___delete(n$0:X*) [line 14, column 22]\n " shape="box"] +"deleteX#8359832236310221055.8e97d527465f9865245eba503777c9c7_3" [label="3: Call delete \n n$1=*&x:X* [line 14, column 29]\n n$2=_fun___delete(n$1:X*) [line 14, column 22]\n " shape="box"] "deleteX#8359832236310221055.8e97d527465f9865245eba503777c9c7_3" -> "deleteX#8359832236310221055.8e97d527465f9865245eba503777c9c7_2" ; diff --git a/infer/tests/codetoanalyze/cpp/frontend/destructors/continue_scope.cpp.dot b/infer/tests/codetoanalyze/cpp/frontend/destructors/continue_scope.cpp.dot index 72b12f10b..dba13860a 100644 --- a/infer/tests/codetoanalyze/cpp/frontend/destructors/continue_scope.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/frontend/destructors/continue_scope.cpp.dot @@ -15,15 +15,15 @@ digraph cfg { "test_do_while#continue_scope#8999676231552324448.9fe455097ef7e757730530e9e7c09864_4" -> "test_do_while#continue_scope#8999676231552324448.9fe455097ef7e757730530e9e7c09864_16" ; -"test_do_while#continue_scope#8999676231552324448.9fe455097ef7e757730530e9e7c09864_5" [label="5: Prune (true branch, do while) \n n$2=*&a:_Bool [line 90, column 12]\n PRUNE(n$2, true); [line 90, column 12]\n " shape="invhouse"] +"test_do_while#continue_scope#8999676231552324448.9fe455097ef7e757730530e9e7c09864_5" [label="5: Prune (true branch, do while) \n n$3=*&a:_Bool [line 90, column 12]\n PRUNE(n$3, true); [line 90, column 12]\n " shape="invhouse"] "test_do_while#continue_scope#8999676231552324448.9fe455097ef7e757730530e9e7c09864_5" -> "test_do_while#continue_scope#8999676231552324448.9fe455097ef7e757730530e9e7c09864_4" ; -"test_do_while#continue_scope#8999676231552324448.9fe455097ef7e757730530e9e7c09864_6" [label="6: Prune (false branch, do while) \n n$2=*&a:_Bool [line 90, column 12]\n PRUNE(!n$2, false); [line 90, column 12]\n " shape="invhouse"] +"test_do_while#continue_scope#8999676231552324448.9fe455097ef7e757730530e9e7c09864_6" [label="6: Prune (false branch, do while) \n n$3=*&a:_Bool [line 90, column 12]\n PRUNE(!n$3, false); [line 90, column 12]\n " shape="invhouse"] "test_do_while#continue_scope#8999676231552324448.9fe455097ef7e757730530e9e7c09864_6" -> "test_do_while#continue_scope#8999676231552324448.9fe455097ef7e757730530e9e7c09864_3" ; -"test_do_while#continue_scope#8999676231552324448.9fe455097ef7e757730530e9e7c09864_7" [label="7: Destruction \n _=*&x2:continue_scope::X [line 90, column 3]\n n$4=_fun_continue_scope::X_~X(&x2:continue_scope::X*) [line 90, column 3]\n " shape="box"] +"test_do_while#continue_scope#8999676231552324448.9fe455097ef7e757730530e9e7c09864_7" [label="7: Destruction \n _=*&x2:continue_scope::X [line 90, column 3]\n n$5=_fun_continue_scope::X_~X(&x2:continue_scope::X*) [line 90, column 3]\n " shape="box"] "test_do_while#continue_scope#8999676231552324448.9fe455097ef7e757730530e9e7c09864_7" -> "test_do_while#continue_scope#8999676231552324448.9fe455097ef7e757730530e9e7c09864_5" ; @@ -32,45 +32,45 @@ digraph cfg { "test_do_while#continue_scope#8999676231552324448.9fe455097ef7e757730530e9e7c09864_8" -> "test_do_while#continue_scope#8999676231552324448.9fe455097ef7e757730530e9e7c09864_7" ; -"test_do_while#continue_scope#8999676231552324448.9fe455097ef7e757730530e9e7c09864_9" [label="9: Prune (true branch, if) \n n$5=*&b:_Bool [line 84, column 9]\n PRUNE(n$5, true); [line 84, column 9]\n " shape="invhouse"] +"test_do_while#continue_scope#8999676231552324448.9fe455097ef7e757730530e9e7c09864_9" [label="9: Prune (true branch, if) \n n$7=*&b:_Bool [line 84, column 9]\n PRUNE(n$7, true); [line 84, column 9]\n " shape="invhouse"] "test_do_while#continue_scope#8999676231552324448.9fe455097ef7e757730530e9e7c09864_9" -> "test_do_while#continue_scope#8999676231552324448.9fe455097ef7e757730530e9e7c09864_13" ; -"test_do_while#continue_scope#8999676231552324448.9fe455097ef7e757730530e9e7c09864_10" [label="10: Prune (false branch, if) \n n$5=*&b:_Bool [line 84, column 9]\n PRUNE(!n$5, false); [line 84, column 9]\n " shape="invhouse"] +"test_do_while#continue_scope#8999676231552324448.9fe455097ef7e757730530e9e7c09864_10" [label="10: Prune (false branch, if) \n n$7=*&b:_Bool [line 84, column 9]\n PRUNE(!n$7, false); [line 84, column 9]\n " shape="invhouse"] "test_do_while#continue_scope#8999676231552324448.9fe455097ef7e757730530e9e7c09864_10" -> "test_do_while#continue_scope#8999676231552324448.9fe455097ef7e757730530e9e7c09864_15" ; -"test_do_while#continue_scope#8999676231552324448.9fe455097ef7e757730530e9e7c09864_11" [label="11: Destruction \n _=*&x3:continue_scope::X [line 87, column 5]\n n$7=_fun_continue_scope::X_~X(&x3:continue_scope::X*) [line 87, column 5]\n " shape="box"] +"test_do_while#continue_scope#8999676231552324448.9fe455097ef7e757730530e9e7c09864_11" [label="11: Destruction \n _=*&x3:continue_scope::X [line 87, column 5]\n n$9=_fun_continue_scope::X_~X(&x3:continue_scope::X*) [line 87, column 5]\n " shape="box"] "test_do_while#continue_scope#8999676231552324448.9fe455097ef7e757730530e9e7c09864_11" -> "test_do_while#continue_scope#8999676231552324448.9fe455097ef7e757730530e9e7c09864_8" ; -"test_do_while#continue_scope#8999676231552324448.9fe455097ef7e757730530e9e7c09864_12" [label="12: Destruction \n _=*&x3:continue_scope::X [line 86, column 7]\n n$9=_fun_continue_scope::X_~X(&x3:continue_scope::X*) [line 86, column 7]\n _=*&x2:continue_scope::X [line 86, column 7]\n n$11=_fun_continue_scope::X_~X(&x2:continue_scope::X*) [line 86, column 7]\n " shape="box"] +"test_do_while#continue_scope#8999676231552324448.9fe455097ef7e757730530e9e7c09864_12" [label="12: Destruction \n _=*&x3:continue_scope::X [line 86, column 7]\n n$12=_fun_continue_scope::X_~X(&x3:continue_scope::X*) [line 86, column 7]\n _=*&x2:continue_scope::X [line 86, column 7]\n n$14=_fun_continue_scope::X_~X(&x2:continue_scope::X*) [line 86, column 7]\n " shape="box"] "test_do_while#continue_scope#8999676231552324448.9fe455097ef7e757730530e9e7c09864_12" -> "test_do_while#continue_scope#8999676231552324448.9fe455097ef7e757730530e9e7c09864_5" ; "test_do_while#continue_scope#8999676231552324448.9fe455097ef7e757730530e9e7c09864_12" -> "test_do_while#continue_scope#8999676231552324448.9fe455097ef7e757730530e9e7c09864_6" ; -"test_do_while#continue_scope#8999676231552324448.9fe455097ef7e757730530e9e7c09864_13" [label="13: DeclStmt \n n$12=_fun_continue_scope::X_X(&x3:continue_scope::X*) [line 85, column 9]\n " shape="box"] +"test_do_while#continue_scope#8999676231552324448.9fe455097ef7e757730530e9e7c09864_13" [label="13: DeclStmt \n n$16=_fun_continue_scope::X_X(&x3:continue_scope::X*) [line 85, column 9]\n " shape="box"] "test_do_while#continue_scope#8999676231552324448.9fe455097ef7e757730530e9e7c09864_13" -> "test_do_while#continue_scope#8999676231552324448.9fe455097ef7e757730530e9e7c09864_12" ; -"test_do_while#continue_scope#8999676231552324448.9fe455097ef7e757730530e9e7c09864_14" [label="14: Destruction \n _=*&x4:continue_scope::X [line 89, column 5]\n n$14=_fun_continue_scope::X_~X(&x4:continue_scope::X*) [line 89, column 5]\n " shape="box"] +"test_do_while#continue_scope#8999676231552324448.9fe455097ef7e757730530e9e7c09864_14" [label="14: Destruction \n _=*&x4:continue_scope::X [line 89, column 5]\n n$18=_fun_continue_scope::X_~X(&x4:continue_scope::X*) [line 89, column 5]\n " shape="box"] "test_do_while#continue_scope#8999676231552324448.9fe455097ef7e757730530e9e7c09864_14" -> "test_do_while#continue_scope#8999676231552324448.9fe455097ef7e757730530e9e7c09864_8" ; -"test_do_while#continue_scope#8999676231552324448.9fe455097ef7e757730530e9e7c09864_15" [label="15: DeclStmt \n n$15=_fun_continue_scope::X_X(&x4:continue_scope::X*) [line 88, column 9]\n " shape="box"] +"test_do_while#continue_scope#8999676231552324448.9fe455097ef7e757730530e9e7c09864_15" [label="15: DeclStmt \n n$20=_fun_continue_scope::X_X(&x4:continue_scope::X*) [line 88, column 9]\n " shape="box"] "test_do_while#continue_scope#8999676231552324448.9fe455097ef7e757730530e9e7c09864_15" -> "test_do_while#continue_scope#8999676231552324448.9fe455097ef7e757730530e9e7c09864_14" ; -"test_do_while#continue_scope#8999676231552324448.9fe455097ef7e757730530e9e7c09864_16" [label="16: DeclStmt \n n$16=_fun_continue_scope::X_X(&x2:continue_scope::X*) [line 83, column 7]\n " shape="box"] +"test_do_while#continue_scope#8999676231552324448.9fe455097ef7e757730530e9e7c09864_16" [label="16: DeclStmt \n n$22=_fun_continue_scope::X_X(&x2:continue_scope::X*) [line 83, column 7]\n " shape="box"] "test_do_while#continue_scope#8999676231552324448.9fe455097ef7e757730530e9e7c09864_16" -> "test_do_while#continue_scope#8999676231552324448.9fe455097ef7e757730530e9e7c09864_9" ; "test_do_while#continue_scope#8999676231552324448.9fe455097ef7e757730530e9e7c09864_16" -> "test_do_while#continue_scope#8999676231552324448.9fe455097ef7e757730530e9e7c09864_10" ; -"test_do_while#continue_scope#8999676231552324448.9fe455097ef7e757730530e9e7c09864_17" [label="17: DeclStmt \n n$17=_fun_continue_scope::X_X(&x1:continue_scope::X*) [line 81, column 5]\n " shape="box"] +"test_do_while#continue_scope#8999676231552324448.9fe455097ef7e757730530e9e7c09864_17" [label="17: DeclStmt \n n$24=_fun_continue_scope::X_X(&x1:continue_scope::X*) [line 81, column 5]\n " shape="box"] "test_do_while#continue_scope#8999676231552324448.9fe455097ef7e757730530e9e7c09864_17" -> "test_do_while#continue_scope#8999676231552324448.9fe455097ef7e757730530e9e7c09864_4" ; -"test_for#continue_scope#10203739842900202560.4cb2db668430574619fdf529fdd4af8c_1" [label="1: Start continue_scope::test_for\nFormals: b:_Bool\nLocals: x2:continue_scope::X it:continue_scope::iterator 0$?%__sil_tmpSIL_materialize_temp__n$5:continue_scope::iterator 0$?%__sil_tmp__temp_return_n$11:continue_scope::iterator 0$?%__sil_tmpSIL_materialize_temp__n$13:continue_scope::iterator x1:continue_scope::X vector:continue_scope::vec \n DECLARE_LOCALS(&return,&x2,&it,&0$?%__sil_tmpSIL_materialize_temp__n$5,&0$?%__sil_tmp__temp_return_n$11,&0$?%__sil_tmpSIL_materialize_temp__n$13,&x1,&vector); [line 57, column 1]\n " color=yellow style=filled] +"test_for#continue_scope#10203739842900202560.4cb2db668430574619fdf529fdd4af8c_1" [label="1: Start continue_scope::test_for\nFormals: b:_Bool\nLocals: x2:continue_scope::X it:continue_scope::iterator 0$?%__sil_tmpSIL_materialize_temp__n$6:continue_scope::iterator 0$?%__sil_tmp__temp_return_n$13:continue_scope::iterator 0$?%__sil_tmpSIL_materialize_temp__n$16:continue_scope::iterator const x1:continue_scope::X vector:continue_scope::vec \n DECLARE_LOCALS(&return,&x2,&it,&0$?%__sil_tmpSIL_materialize_temp__n$6,&0$?%__sil_tmp__temp_return_n$13,&0$?%__sil_tmpSIL_materialize_temp__n$16,&x1,&vector); [line 57, column 1]\n " color=yellow style=filled] "test_for#continue_scope#10203739842900202560.4cb2db668430574619fdf529fdd4af8c_1" -> "test_for#continue_scope#10203739842900202560.4cb2db668430574619fdf529fdd4af8c_17" ; @@ -81,7 +81,7 @@ digraph cfg { "test_for#continue_scope#10203739842900202560.4cb2db668430574619fdf529fdd4af8c_3" -> "test_for#continue_scope#10203739842900202560.4cb2db668430574619fdf529fdd4af8c_2" ; -"test_for#continue_scope#10203739842900202560.4cb2db668430574619fdf529fdd4af8c_4" [label="4: DeclStmt \n n$4=_fun_continue_scope::X_X(&x2:continue_scope::X*) [line 65, column 5]\n " shape="box"] +"test_for#continue_scope#10203739842900202560.4cb2db668430574619fdf529fdd4af8c_4" [label="4: DeclStmt \n n$5=_fun_continue_scope::X_X(&x2:continue_scope::X*) [line 65, column 5]\n " shape="box"] "test_for#continue_scope#10203739842900202560.4cb2db668430574619fdf529fdd4af8c_4" -> "test_for#continue_scope#10203739842900202560.4cb2db668430574619fdf529fdd4af8c_3" ; @@ -89,25 +89,25 @@ digraph cfg { "test_for#continue_scope#10203739842900202560.4cb2db668430574619fdf529fdd4af8c_5" -> "test_for#continue_scope#10203739842900202560.4cb2db668430574619fdf529fdd4af8c_8" ; -"test_for#continue_scope#10203739842900202560.4cb2db668430574619fdf529fdd4af8c_6" [label="6: DeclStmt \n _=*&vector:continue_scope::vec [line 59, column 22]\n n$8=_fun_continue_scope::vec_begin(&vector:continue_scope::vec&,&0$?%__sil_tmpSIL_materialize_temp__n$5:continue_scope::iterator*) [line 59, column 22]\n n$9=_fun_continue_scope::iterator_iterator(&it:continue_scope::iterator*,&0$?%__sil_tmpSIL_materialize_temp__n$5:continue_scope::iterator&) [line 59, column 22]\n " shape="box"] +"test_for#continue_scope#10203739842900202560.4cb2db668430574619fdf529fdd4af8c_6" [label="6: DeclStmt \n _=*&vector:continue_scope::vec [line 59, column 22]\n n$9=_fun_continue_scope::vec_begin(&vector:continue_scope::vec&,&0$?%__sil_tmpSIL_materialize_temp__n$6:continue_scope::iterator*) [line 59, column 22]\n n$10=_fun_continue_scope::iterator_iterator(&it:continue_scope::iterator*,&0$?%__sil_tmpSIL_materialize_temp__n$6:continue_scope::iterator&) [line 59, column 22]\n " shape="box"] "test_for#continue_scope#10203739842900202560.4cb2db668430574619fdf529fdd4af8c_6" -> "test_for#continue_scope#10203739842900202560.4cb2db668430574619fdf529fdd4af8c_5" ; -"test_for#continue_scope#10203739842900202560.4cb2db668430574619fdf529fdd4af8c_7" [label="7: Call _fun_continue_scope::iterator_operator++ \n n$12=_fun_continue_scope::iterator_operator++(&it:continue_scope::iterator&,&0$?%__sil_tmp__temp_return_n$11:continue_scope::iterator*) [line 59, column 58]\n " shape="box"] +"test_for#continue_scope#10203739842900202560.4cb2db668430574619fdf529fdd4af8c_7" [label="7: Call _fun_continue_scope::iterator_operator++ \n n$14=_fun_continue_scope::iterator_operator++(&it:continue_scope::iterator&,&0$?%__sil_tmp__temp_return_n$13:continue_scope::iterator*) [line 59, column 58]\n " shape="box"] "test_for#continue_scope#10203739842900202560.4cb2db668430574619fdf529fdd4af8c_7" -> "test_for#continue_scope#10203739842900202560.4cb2db668430574619fdf529fdd4af8c_5" ; -"test_for#continue_scope#10203739842900202560.4cb2db668430574619fdf529fdd4af8c_8" [label="8: Call _fun_continue_scope::iterator_operator!= \n _=*&vector:continue_scope::vec [line 59, column 44]\n n$16=_fun_continue_scope::vec_end(&vector:continue_scope::vec&,&0$?%__sil_tmpSIL_materialize_temp__n$13:continue_scope::iterator*) [line 59, column 44]\n n$17=_fun_continue_scope::iterator_operator!=(&it:continue_scope::iterator&,&0$?%__sil_tmpSIL_materialize_temp__n$13:continue_scope::iterator&) [line 59, column 38]\n " shape="box"] +"test_for#continue_scope#10203739842900202560.4cb2db668430574619fdf529fdd4af8c_8" [label="8: Call _fun_continue_scope::iterator_operator!= \n _=*&vector:continue_scope::vec [line 59, column 44]\n n$19=_fun_continue_scope::vec_end(&vector:continue_scope::vec&,&0$?%__sil_tmpSIL_materialize_temp__n$16:continue_scope::iterator*) [line 59, column 44]\n n$20=_fun_continue_scope::iterator_operator!=(&it:continue_scope::iterator&,&0$?%__sil_tmpSIL_materialize_temp__n$16:continue_scope::iterator const &) [line 59, column 38]\n " shape="box"] "test_for#continue_scope#10203739842900202560.4cb2db668430574619fdf529fdd4af8c_8" -> "test_for#continue_scope#10203739842900202560.4cb2db668430574619fdf529fdd4af8c_9" ; "test_for#continue_scope#10203739842900202560.4cb2db668430574619fdf529fdd4af8c_8" -> "test_for#continue_scope#10203739842900202560.4cb2db668430574619fdf529fdd4af8c_10" ; -"test_for#continue_scope#10203739842900202560.4cb2db668430574619fdf529fdd4af8c_9" [label="9: Prune (true branch, for loop) \n PRUNE(n$17, true); [line 59, column 38]\n " shape="invhouse"] +"test_for#continue_scope#10203739842900202560.4cb2db668430574619fdf529fdd4af8c_9" [label="9: Prune (true branch, for loop) \n PRUNE(n$20, true); [line 59, column 38]\n " shape="invhouse"] "test_for#continue_scope#10203739842900202560.4cb2db668430574619fdf529fdd4af8c_9" -> "test_for#continue_scope#10203739842900202560.4cb2db668430574619fdf529fdd4af8c_12" ; "test_for#continue_scope#10203739842900202560.4cb2db668430574619fdf529fdd4af8c_9" -> "test_for#continue_scope#10203739842900202560.4cb2db668430574619fdf529fdd4af8c_13" ; -"test_for#continue_scope#10203739842900202560.4cb2db668430574619fdf529fdd4af8c_10" [label="10: Prune (false branch, for loop) \n PRUNE(!n$17, false); [line 59, column 38]\n " shape="invhouse"] +"test_for#continue_scope#10203739842900202560.4cb2db668430574619fdf529fdd4af8c_10" [label="10: Prune (false branch, for loop) \n PRUNE(!n$20, false); [line 59, column 38]\n " shape="invhouse"] "test_for#continue_scope#10203739842900202560.4cb2db668430574619fdf529fdd4af8c_10" -> "test_for#continue_scope#10203739842900202560.4cb2db668430574619fdf529fdd4af8c_4" ; @@ -115,31 +115,31 @@ digraph cfg { "test_for#continue_scope#10203739842900202560.4cb2db668430574619fdf529fdd4af8c_11" -> "test_for#continue_scope#10203739842900202560.4cb2db668430574619fdf529fdd4af8c_7" ; -"test_for#continue_scope#10203739842900202560.4cb2db668430574619fdf529fdd4af8c_12" [label="12: Prune (true branch, if) \n n$18=*&b:_Bool [line 60, column 9]\n PRUNE(n$18, true); [line 60, column 9]\n " shape="invhouse"] +"test_for#continue_scope#10203739842900202560.4cb2db668430574619fdf529fdd4af8c_12" [label="12: Prune (true branch, if) \n n$22=*&b:_Bool [line 60, column 9]\n PRUNE(n$22, true); [line 60, column 9]\n " shape="invhouse"] "test_for#continue_scope#10203739842900202560.4cb2db668430574619fdf529fdd4af8c_12" -> "test_for#continue_scope#10203739842900202560.4cb2db668430574619fdf529fdd4af8c_16" ; -"test_for#continue_scope#10203739842900202560.4cb2db668430574619fdf529fdd4af8c_13" [label="13: Prune (false branch, if) \n n$18=*&b:_Bool [line 60, column 9]\n PRUNE(!n$18, false); [line 60, column 9]\n " shape="invhouse"] +"test_for#continue_scope#10203739842900202560.4cb2db668430574619fdf529fdd4af8c_13" [label="13: Prune (false branch, if) \n n$22=*&b:_Bool [line 60, column 9]\n PRUNE(!n$22, false); [line 60, column 9]\n " shape="invhouse"] "test_for#continue_scope#10203739842900202560.4cb2db668430574619fdf529fdd4af8c_13" -> "test_for#continue_scope#10203739842900202560.4cb2db668430574619fdf529fdd4af8c_11" ; -"test_for#continue_scope#10203739842900202560.4cb2db668430574619fdf529fdd4af8c_14" [label="14: Destruction \n _=*&x1:continue_scope::X [line 63, column 5]\n n$20=_fun_continue_scope::X_~X(&x1:continue_scope::X*) [line 63, column 5]\n " shape="box"] +"test_for#continue_scope#10203739842900202560.4cb2db668430574619fdf529fdd4af8c_14" [label="14: Destruction \n _=*&x1:continue_scope::X [line 63, column 5]\n n$24=_fun_continue_scope::X_~X(&x1:continue_scope::X*) [line 63, column 5]\n " shape="box"] "test_for#continue_scope#10203739842900202560.4cb2db668430574619fdf529fdd4af8c_14" -> "test_for#continue_scope#10203739842900202560.4cb2db668430574619fdf529fdd4af8c_11" ; -"test_for#continue_scope#10203739842900202560.4cb2db668430574619fdf529fdd4af8c_15" [label="15: Destruction \n _=*&x1:continue_scope::X [line 62, column 7]\n n$22=_fun_continue_scope::X_~X(&x1:continue_scope::X*) [line 62, column 7]\n " shape="box"] +"test_for#continue_scope#10203739842900202560.4cb2db668430574619fdf529fdd4af8c_15" [label="15: Destruction \n _=*&x1:continue_scope::X [line 62, column 7]\n n$27=_fun_continue_scope::X_~X(&x1:continue_scope::X*) [line 62, column 7]\n " shape="box"] "test_for#continue_scope#10203739842900202560.4cb2db668430574619fdf529fdd4af8c_15" -> "test_for#continue_scope#10203739842900202560.4cb2db668430574619fdf529fdd4af8c_7" ; -"test_for#continue_scope#10203739842900202560.4cb2db668430574619fdf529fdd4af8c_16" [label="16: DeclStmt \n n$23=_fun_continue_scope::X_X(&x1:continue_scope::X*) [line 61, column 9]\n " shape="box"] +"test_for#continue_scope#10203739842900202560.4cb2db668430574619fdf529fdd4af8c_16" [label="16: DeclStmt \n n$29=_fun_continue_scope::X_X(&x1:continue_scope::X*) [line 61, column 9]\n " shape="box"] "test_for#continue_scope#10203739842900202560.4cb2db668430574619fdf529fdd4af8c_16" -> "test_for#continue_scope#10203739842900202560.4cb2db668430574619fdf529fdd4af8c_15" ; -"test_for#continue_scope#10203739842900202560.4cb2db668430574619fdf529fdd4af8c_17" [label="17: DeclStmt \n n$24=_fun_continue_scope::vec_vec(&vector:continue_scope::vec*) [line 58, column 7]\n " shape="box"] +"test_for#continue_scope#10203739842900202560.4cb2db668430574619fdf529fdd4af8c_17" [label="17: DeclStmt \n n$33=_fun_continue_scope::vec_vec(&vector:continue_scope::vec*) [line 58, column 7]\n " shape="box"] "test_for#continue_scope#10203739842900202560.4cb2db668430574619fdf529fdd4af8c_17" -> "test_for#continue_scope#10203739842900202560.4cb2db668430574619fdf529fdd4af8c_6" ; -"test_for_range#continue_scope#9937708960633325401.fa75d7368d8f711ae7e040a8b2ae1442_1" [label="1: Start continue_scope::test_for_range\nFormals: b:_Bool\nLocals: __end:continue_scope::iterator 0$?%__sil_tmpSIL_materialize_temp__n$4:continue_scope::iterator __begin:continue_scope::iterator 0$?%__sil_tmpSIL_materialize_temp__n$10:continue_scope::iterator 0$?%__sil_tmp__temp_return_n$17:continue_scope::iterator x2:continue_scope::X x:continue_scope::X 0$?%__sil_tmpSIL_materialize_temp__n$26:continue_scope::X __range:continue_scope::vec& x1:continue_scope::X vector:continue_scope::vec \n DECLARE_LOCALS(&return,&__end,&0$?%__sil_tmpSIL_materialize_temp__n$4,&__begin,&0$?%__sil_tmpSIL_materialize_temp__n$10,&0$?%__sil_tmp__temp_return_n$17,&x2,&x,&0$?%__sil_tmpSIL_materialize_temp__n$26,&__range,&x1,&vector); [line 46, column 1]\n " color=yellow style=filled] +"test_for_range#continue_scope#9937708960633325401.fa75d7368d8f711ae7e040a8b2ae1442_1" [label="1: Start continue_scope::test_for_range\nFormals: b:_Bool\nLocals: __end:continue_scope::iterator 0$?%__sil_tmpSIL_materialize_temp__n$7:continue_scope::iterator __begin:continue_scope::iterator 0$?%__sil_tmpSIL_materialize_temp__n$13:continue_scope::iterator 0$?%__sil_tmp__temp_return_n$21:continue_scope::iterator x2:continue_scope::X x:continue_scope::X 0$?%__sil_tmpSIL_materialize_temp__n$37:continue_scope::X const __range:continue_scope::vec& x1:continue_scope::X vector:continue_scope::vec \n DECLARE_LOCALS(&return,&__end,&0$?%__sil_tmpSIL_materialize_temp__n$7,&__begin,&0$?%__sil_tmpSIL_materialize_temp__n$13,&0$?%__sil_tmp__temp_return_n$21,&x2,&x,&0$?%__sil_tmpSIL_materialize_temp__n$37,&__range,&x1,&vector); [line 46, column 1]\n " color=yellow style=filled] "test_for_range#continue_scope#9937708960633325401.fa75d7368d8f711ae7e040a8b2ae1442_1" -> "test_for_range#continue_scope#9937708960633325401.fa75d7368d8f711ae7e040a8b2ae1442_20" ; @@ -154,28 +154,28 @@ digraph cfg { "test_for_range#continue_scope#9937708960633325401.fa75d7368d8f711ae7e040a8b2ae1442_4" -> "test_for_range#continue_scope#9937708960633325401.fa75d7368d8f711ae7e040a8b2ae1442_8" ; -"test_for_range#continue_scope#9937708960633325401.fa75d7368d8f711ae7e040a8b2ae1442_5" [label="5: DeclStmt \n n$5=*&__range:continue_scope::vec& [line 49, column 12]\n _=*n$5:continue_scope::vec [line 49, column 12]\n n$8=_fun_continue_scope::vec_end(n$5:continue_scope::vec&,&0$?%__sil_tmpSIL_materialize_temp__n$4:continue_scope::iterator*) [line 49, column 12]\n n$9=_fun_continue_scope::iterator_iterator(&__end:continue_scope::iterator*,&0$?%__sil_tmpSIL_materialize_temp__n$4:continue_scope::iterator&) [line 49, column 12]\n " shape="box"] +"test_for_range#continue_scope#9937708960633325401.fa75d7368d8f711ae7e040a8b2ae1442_5" [label="5: DeclStmt \n n$8=*&__range:continue_scope::vec& [line 49, column 12]\n _=*n$8:continue_scope::vec [line 49, column 12]\n n$11=_fun_continue_scope::vec_end(n$8:continue_scope::vec&,&0$?%__sil_tmpSIL_materialize_temp__n$7:continue_scope::iterator*) [line 49, column 12]\n n$12=_fun_continue_scope::iterator_iterator(&__end:continue_scope::iterator*,&0$?%__sil_tmpSIL_materialize_temp__n$7:continue_scope::iterator&) [line 49, column 12]\n " shape="box"] "test_for_range#continue_scope#9937708960633325401.fa75d7368d8f711ae7e040a8b2ae1442_5" -> "test_for_range#continue_scope#9937708960633325401.fa75d7368d8f711ae7e040a8b2ae1442_4" ; -"test_for_range#continue_scope#9937708960633325401.fa75d7368d8f711ae7e040a8b2ae1442_6" [label="6: DeclStmt \n n$11=*&__range:continue_scope::vec& [line 49, column 12]\n _=*n$11:continue_scope::vec [line 49, column 12]\n n$14=_fun_continue_scope::vec_begin(n$11:continue_scope::vec&,&0$?%__sil_tmpSIL_materialize_temp__n$10:continue_scope::iterator*) [line 49, column 12]\n n$15=_fun_continue_scope::iterator_iterator(&__begin:continue_scope::iterator*,&0$?%__sil_tmpSIL_materialize_temp__n$10:continue_scope::iterator&) [line 49, column 12]\n " shape="box"] +"test_for_range#continue_scope#9937708960633325401.fa75d7368d8f711ae7e040a8b2ae1442_6" [label="6: DeclStmt \n n$14=*&__range:continue_scope::vec& [line 49, column 12]\n _=*n$14:continue_scope::vec [line 49, column 12]\n n$17=_fun_continue_scope::vec_begin(n$14:continue_scope::vec&,&0$?%__sil_tmpSIL_materialize_temp__n$13:continue_scope::iterator*) [line 49, column 12]\n n$18=_fun_continue_scope::iterator_iterator(&__begin:continue_scope::iterator*,&0$?%__sil_tmpSIL_materialize_temp__n$13:continue_scope::iterator&) [line 49, column 12]\n " shape="box"] "test_for_range#continue_scope#9937708960633325401.fa75d7368d8f711ae7e040a8b2ae1442_6" -> "test_for_range#continue_scope#9937708960633325401.fa75d7368d8f711ae7e040a8b2ae1442_5" ; -"test_for_range#continue_scope#9937708960633325401.fa75d7368d8f711ae7e040a8b2ae1442_7" [label="7: Call _fun_continue_scope::iterator_operator++ \n n$18=_fun_continue_scope::iterator_operator++(&__begin:continue_scope::iterator&,&0$?%__sil_tmp__temp_return_n$17:continue_scope::iterator*) [line 49, column 12]\n " shape="box"] +"test_for_range#continue_scope#9937708960633325401.fa75d7368d8f711ae7e040a8b2ae1442_7" [label="7: Call _fun_continue_scope::iterator_operator++ \n n$22=_fun_continue_scope::iterator_operator++(&__begin:continue_scope::iterator&,&0$?%__sil_tmp__temp_return_n$21:continue_scope::iterator*) [line 49, column 12]\n " shape="box"] "test_for_range#continue_scope#9937708960633325401.fa75d7368d8f711ae7e040a8b2ae1442_7" -> "test_for_range#continue_scope#9937708960633325401.fa75d7368d8f711ae7e040a8b2ae1442_4" ; -"test_for_range#continue_scope#9937708960633325401.fa75d7368d8f711ae7e040a8b2ae1442_8" [label="8: Call _fun_continue_scope::iterator_operator!= \n n$19=_fun_continue_scope::iterator_operator!=(&__begin:continue_scope::iterator&,&__end:continue_scope::iterator&) [line 49, column 12]\n " shape="box"] +"test_for_range#continue_scope#9937708960633325401.fa75d7368d8f711ae7e040a8b2ae1442_8" [label="8: Call _fun_continue_scope::iterator_operator!= \n n$24=_fun_continue_scope::iterator_operator!=(&__begin:continue_scope::iterator&,&__end:continue_scope::iterator&) [line 49, column 12]\n " shape="box"] "test_for_range#continue_scope#9937708960633325401.fa75d7368d8f711ae7e040a8b2ae1442_8" -> "test_for_range#continue_scope#9937708960633325401.fa75d7368d8f711ae7e040a8b2ae1442_9" ; "test_for_range#continue_scope#9937708960633325401.fa75d7368d8f711ae7e040a8b2ae1442_8" -> "test_for_range#continue_scope#9937708960633325401.fa75d7368d8f711ae7e040a8b2ae1442_10" ; -"test_for_range#continue_scope#9937708960633325401.fa75d7368d8f711ae7e040a8b2ae1442_9" [label="9: Prune (true branch, for loop) \n PRUNE(n$19, true); [line 49, column 12]\n " shape="invhouse"] +"test_for_range#continue_scope#9937708960633325401.fa75d7368d8f711ae7e040a8b2ae1442_9" [label="9: Prune (true branch, for loop) \n PRUNE(n$24, true); [line 49, column 12]\n " shape="invhouse"] "test_for_range#continue_scope#9937708960633325401.fa75d7368d8f711ae7e040a8b2ae1442_9" -> "test_for_range#continue_scope#9937708960633325401.fa75d7368d8f711ae7e040a8b2ae1442_17" ; -"test_for_range#continue_scope#9937708960633325401.fa75d7368d8f711ae7e040a8b2ae1442_10" [label="10: Prune (false branch, for loop) \n PRUNE(!n$19, false); [line 49, column 12]\n " shape="invhouse"] +"test_for_range#continue_scope#9937708960633325401.fa75d7368d8f711ae7e040a8b2ae1442_10" [label="10: Prune (false branch, for loop) \n PRUNE(!n$24, false); [line 49, column 12]\n " shape="invhouse"] "test_for_range#continue_scope#9937708960633325401.fa75d7368d8f711ae7e040a8b2ae1442_10" -> "test_for_range#continue_scope#9937708960633325401.fa75d7368d8f711ae7e040a8b2ae1442_3" ; @@ -183,27 +183,27 @@ digraph cfg { "test_for_range#continue_scope#9937708960633325401.fa75d7368d8f711ae7e040a8b2ae1442_11" -> "test_for_range#continue_scope#9937708960633325401.fa75d7368d8f711ae7e040a8b2ae1442_7" ; -"test_for_range#continue_scope#9937708960633325401.fa75d7368d8f711ae7e040a8b2ae1442_12" [label="12: Prune (true branch, if) \n n$20=*&b:_Bool [line 50, column 9]\n PRUNE(n$20, true); [line 50, column 9]\n " shape="invhouse"] +"test_for_range#continue_scope#9937708960633325401.fa75d7368d8f711ae7e040a8b2ae1442_12" [label="12: Prune (true branch, if) \n n$27=*&b:_Bool [line 50, column 9]\n PRUNE(n$27, true); [line 50, column 9]\n " shape="invhouse"] "test_for_range#continue_scope#9937708960633325401.fa75d7368d8f711ae7e040a8b2ae1442_12" -> "test_for_range#continue_scope#9937708960633325401.fa75d7368d8f711ae7e040a8b2ae1442_16" ; -"test_for_range#continue_scope#9937708960633325401.fa75d7368d8f711ae7e040a8b2ae1442_13" [label="13: Prune (false branch, if) \n n$20=*&b:_Bool [line 50, column 9]\n PRUNE(!n$20, false); [line 50, column 9]\n " shape="invhouse"] +"test_for_range#continue_scope#9937708960633325401.fa75d7368d8f711ae7e040a8b2ae1442_13" [label="13: Prune (false branch, if) \n n$27=*&b:_Bool [line 50, column 9]\n PRUNE(!n$27, false); [line 50, column 9]\n " shape="invhouse"] "test_for_range#continue_scope#9937708960633325401.fa75d7368d8f711ae7e040a8b2ae1442_13" -> "test_for_range#continue_scope#9937708960633325401.fa75d7368d8f711ae7e040a8b2ae1442_11" ; -"test_for_range#continue_scope#9937708960633325401.fa75d7368d8f711ae7e040a8b2ae1442_14" [label="14: Destruction \n _=*&x2:continue_scope::X [line 53, column 5]\n n$22=_fun_continue_scope::X_~X(&x2:continue_scope::X*) [line 53, column 5]\n " shape="box"] +"test_for_range#continue_scope#9937708960633325401.fa75d7368d8f711ae7e040a8b2ae1442_14" [label="14: Destruction \n _=*&x2:continue_scope::X [line 53, column 5]\n n$29=_fun_continue_scope::X_~X(&x2:continue_scope::X*) [line 53, column 5]\n " shape="box"] "test_for_range#continue_scope#9937708960633325401.fa75d7368d8f711ae7e040a8b2ae1442_14" -> "test_for_range#continue_scope#9937708960633325401.fa75d7368d8f711ae7e040a8b2ae1442_11" ; -"test_for_range#continue_scope#9937708960633325401.fa75d7368d8f711ae7e040a8b2ae1442_15" [label="15: Destruction \n _=*&x2:continue_scope::X [line 52, column 7]\n n$24=_fun_continue_scope::X_~X(&x2:continue_scope::X*) [line 52, column 7]\n " shape="box"] +"test_for_range#continue_scope#9937708960633325401.fa75d7368d8f711ae7e040a8b2ae1442_15" [label="15: Destruction \n _=*&x2:continue_scope::X [line 52, column 7]\n n$32=_fun_continue_scope::X_~X(&x2:continue_scope::X*) [line 52, column 7]\n " shape="box"] "test_for_range#continue_scope#9937708960633325401.fa75d7368d8f711ae7e040a8b2ae1442_15" -> "test_for_range#continue_scope#9937708960633325401.fa75d7368d8f711ae7e040a8b2ae1442_7" ; -"test_for_range#continue_scope#9937708960633325401.fa75d7368d8f711ae7e040a8b2ae1442_16" [label="16: DeclStmt \n n$25=_fun_continue_scope::X_X(&x2:continue_scope::X*,&x:continue_scope::X&) [line 51, column 14]\n " shape="box"] +"test_for_range#continue_scope#9937708960633325401.fa75d7368d8f711ae7e040a8b2ae1442_16" [label="16: DeclStmt \n n$34=_fun_continue_scope::X_X(&x2:continue_scope::X*,&x:continue_scope::X&) [line 51, column 14]\n " shape="box"] "test_for_range#continue_scope#9937708960633325401.fa75d7368d8f711ae7e040a8b2ae1442_16" -> "test_for_range#continue_scope#9937708960633325401.fa75d7368d8f711ae7e040a8b2ae1442_15" ; -"test_for_range#continue_scope#9937708960633325401.fa75d7368d8f711ae7e040a8b2ae1442_17" [label="17: DeclStmt \n n$28=_fun_continue_scope::iterator_operator*(&__begin:continue_scope::iterator&,&0$?%__sil_tmpSIL_materialize_temp__n$26:continue_scope::X*) [line 49, column 12]\n n$29=_fun_continue_scope::X_X(&x:continue_scope::X*,&0$?%__sil_tmpSIL_materialize_temp__n$26:continue_scope::X&) [line 49, column 12]\n " shape="box"] +"test_for_range#continue_scope#9937708960633325401.fa75d7368d8f711ae7e040a8b2ae1442_17" [label="17: DeclStmt \n n$40=_fun_continue_scope::iterator_operator*(&__begin:continue_scope::iterator&,&0$?%__sil_tmpSIL_materialize_temp__n$37:continue_scope::X*) [line 49, column 12]\n n$41=_fun_continue_scope::X_X(&x:continue_scope::X*,&0$?%__sil_tmpSIL_materialize_temp__n$37:continue_scope::X const &) [line 49, column 12]\n " shape="box"] "test_for_range#continue_scope#9937708960633325401.fa75d7368d8f711ae7e040a8b2ae1442_17" -> "test_for_range#continue_scope#9937708960633325401.fa75d7368d8f711ae7e040a8b2ae1442_12" ; @@ -212,11 +212,11 @@ digraph cfg { "test_for_range#continue_scope#9937708960633325401.fa75d7368d8f711ae7e040a8b2ae1442_18" -> "test_for_range#continue_scope#9937708960633325401.fa75d7368d8f711ae7e040a8b2ae1442_6" ; -"test_for_range#continue_scope#9937708960633325401.fa75d7368d8f711ae7e040a8b2ae1442_19" [label="19: DeclStmt \n n$30=_fun_continue_scope::X_X(&x1:continue_scope::X*) [line 48, column 5]\n " shape="box"] +"test_for_range#continue_scope#9937708960633325401.fa75d7368d8f711ae7e040a8b2ae1442_19" [label="19: DeclStmt \n n$43=_fun_continue_scope::X_X(&x1:continue_scope::X*) [line 48, column 5]\n " shape="box"] "test_for_range#continue_scope#9937708960633325401.fa75d7368d8f711ae7e040a8b2ae1442_19" -> "test_for_range#continue_scope#9937708960633325401.fa75d7368d8f711ae7e040a8b2ae1442_18" ; -"test_for_range#continue_scope#9937708960633325401.fa75d7368d8f711ae7e040a8b2ae1442_20" [label="20: DeclStmt \n n$31=_fun_continue_scope::vec_vec(&vector:continue_scope::vec*) [line 47, column 7]\n " shape="box"] +"test_for_range#continue_scope#9937708960633325401.fa75d7368d8f711ae7e040a8b2ae1442_20" [label="20: DeclStmt \n n$44=_fun_continue_scope::vec_vec(&vector:continue_scope::vec*) [line 47, column 7]\n " shape="box"] "test_for_range#continue_scope#9937708960633325401.fa75d7368d8f711ae7e040a8b2ae1442_20" -> "test_for_range#continue_scope#9937708960633325401.fa75d7368d8f711ae7e040a8b2ae1442_19" ; @@ -236,12 +236,12 @@ digraph cfg { "test_while1#continue_scope#7540876780991944911.b81085ce953e1cd4f035dc0322ac5331_4" -> "test_while1#continue_scope#7540876780991944911.b81085ce953e1cd4f035dc0322ac5331_5" ; "test_while1#continue_scope#7540876780991944911.b81085ce953e1cd4f035dc0322ac5331_4" -> "test_while1#continue_scope#7540876780991944911.b81085ce953e1cd4f035dc0322ac5331_6" ; -"test_while1#continue_scope#7540876780991944911.b81085ce953e1cd4f035dc0322ac5331_5" [label="5: Prune (true branch, while) \n n$2=*&a:_Bool [line 70, column 10]\n PRUNE(n$2, true); [line 70, column 10]\n " shape="invhouse"] +"test_while1#continue_scope#7540876780991944911.b81085ce953e1cd4f035dc0322ac5331_5" [label="5: Prune (true branch, while) \n n$3=*&a:_Bool [line 70, column 10]\n PRUNE(n$3, true); [line 70, column 10]\n " shape="invhouse"] "test_while1#continue_scope#7540876780991944911.b81085ce953e1cd4f035dc0322ac5331_5" -> "test_while1#continue_scope#7540876780991944911.b81085ce953e1cd4f035dc0322ac5331_8" ; "test_while1#continue_scope#7540876780991944911.b81085ce953e1cd4f035dc0322ac5331_5" -> "test_while1#continue_scope#7540876780991944911.b81085ce953e1cd4f035dc0322ac5331_9" ; -"test_while1#continue_scope#7540876780991944911.b81085ce953e1cd4f035dc0322ac5331_6" [label="6: Prune (false branch, while) \n n$2=*&a:_Bool [line 70, column 10]\n PRUNE(!n$2, false); [line 70, column 10]\n " shape="invhouse"] +"test_while1#continue_scope#7540876780991944911.b81085ce953e1cd4f035dc0322ac5331_6" [label="6: Prune (false branch, while) \n n$3=*&a:_Bool [line 70, column 10]\n PRUNE(!n$3, false); [line 70, column 10]\n " shape="invhouse"] "test_while1#continue_scope#7540876780991944911.b81085ce953e1cd4f035dc0322ac5331_6" -> "test_while1#continue_scope#7540876780991944911.b81085ce953e1cd4f035dc0322ac5331_3" ; @@ -249,35 +249,35 @@ digraph cfg { "test_while1#continue_scope#7540876780991944911.b81085ce953e1cd4f035dc0322ac5331_7" -> "test_while1#continue_scope#7540876780991944911.b81085ce953e1cd4f035dc0322ac5331_4" ; -"test_while1#continue_scope#7540876780991944911.b81085ce953e1cd4f035dc0322ac5331_8" [label="8: Prune (true branch, if) \n n$3=*&b:_Bool [line 71, column 9]\n PRUNE(n$3, true); [line 71, column 9]\n " shape="invhouse"] +"test_while1#continue_scope#7540876780991944911.b81085ce953e1cd4f035dc0322ac5331_8" [label="8: Prune (true branch, if) \n n$5=*&b:_Bool [line 71, column 9]\n PRUNE(n$5, true); [line 71, column 9]\n " shape="invhouse"] "test_while1#continue_scope#7540876780991944911.b81085ce953e1cd4f035dc0322ac5331_8" -> "test_while1#continue_scope#7540876780991944911.b81085ce953e1cd4f035dc0322ac5331_12" ; -"test_while1#continue_scope#7540876780991944911.b81085ce953e1cd4f035dc0322ac5331_9" [label="9: Prune (false branch, if) \n n$3=*&b:_Bool [line 71, column 9]\n PRUNE(!n$3, false); [line 71, column 9]\n " shape="invhouse"] +"test_while1#continue_scope#7540876780991944911.b81085ce953e1cd4f035dc0322ac5331_9" [label="9: Prune (false branch, if) \n n$5=*&b:_Bool [line 71, column 9]\n PRUNE(!n$5, false); [line 71, column 9]\n " shape="invhouse"] "test_while1#continue_scope#7540876780991944911.b81085ce953e1cd4f035dc0322ac5331_9" -> "test_while1#continue_scope#7540876780991944911.b81085ce953e1cd4f035dc0322ac5331_14" ; -"test_while1#continue_scope#7540876780991944911.b81085ce953e1cd4f035dc0322ac5331_10" [label="10: Destruction \n _=*&x2:continue_scope::X [line 74, column 5]\n n$5=_fun_continue_scope::X_~X(&x2:continue_scope::X*) [line 74, column 5]\n " shape="box"] +"test_while1#continue_scope#7540876780991944911.b81085ce953e1cd4f035dc0322ac5331_10" [label="10: Destruction \n _=*&x2:continue_scope::X [line 74, column 5]\n n$7=_fun_continue_scope::X_~X(&x2:continue_scope::X*) [line 74, column 5]\n " shape="box"] "test_while1#continue_scope#7540876780991944911.b81085ce953e1cd4f035dc0322ac5331_10" -> "test_while1#continue_scope#7540876780991944911.b81085ce953e1cd4f035dc0322ac5331_7" ; -"test_while1#continue_scope#7540876780991944911.b81085ce953e1cd4f035dc0322ac5331_11" [label="11: Destruction \n _=*&x2:continue_scope::X [line 73, column 7]\n n$7=_fun_continue_scope::X_~X(&x2:continue_scope::X*) [line 73, column 7]\n " shape="box"] +"test_while1#continue_scope#7540876780991944911.b81085ce953e1cd4f035dc0322ac5331_11" [label="11: Destruction \n _=*&x2:continue_scope::X [line 73, column 7]\n n$10=_fun_continue_scope::X_~X(&x2:continue_scope::X*) [line 73, column 7]\n " shape="box"] "test_while1#continue_scope#7540876780991944911.b81085ce953e1cd4f035dc0322ac5331_11" -> "test_while1#continue_scope#7540876780991944911.b81085ce953e1cd4f035dc0322ac5331_4" ; -"test_while1#continue_scope#7540876780991944911.b81085ce953e1cd4f035dc0322ac5331_12" [label="12: DeclStmt \n n$8=_fun_continue_scope::X_X(&x2:continue_scope::X*) [line 72, column 9]\n " shape="box"] +"test_while1#continue_scope#7540876780991944911.b81085ce953e1cd4f035dc0322ac5331_12" [label="12: DeclStmt \n n$12=_fun_continue_scope::X_X(&x2:continue_scope::X*) [line 72, column 9]\n " shape="box"] "test_while1#continue_scope#7540876780991944911.b81085ce953e1cd4f035dc0322ac5331_12" -> "test_while1#continue_scope#7540876780991944911.b81085ce953e1cd4f035dc0322ac5331_11" ; -"test_while1#continue_scope#7540876780991944911.b81085ce953e1cd4f035dc0322ac5331_13" [label="13: Destruction \n _=*&x4:continue_scope::X [line 76, column 5]\n n$10=_fun_continue_scope::X_~X(&x4:continue_scope::X*) [line 76, column 5]\n " shape="box"] +"test_while1#continue_scope#7540876780991944911.b81085ce953e1cd4f035dc0322ac5331_13" [label="13: Destruction \n _=*&x4:continue_scope::X [line 76, column 5]\n n$14=_fun_continue_scope::X_~X(&x4:continue_scope::X*) [line 76, column 5]\n " shape="box"] "test_while1#continue_scope#7540876780991944911.b81085ce953e1cd4f035dc0322ac5331_13" -> "test_while1#continue_scope#7540876780991944911.b81085ce953e1cd4f035dc0322ac5331_7" ; -"test_while1#continue_scope#7540876780991944911.b81085ce953e1cd4f035dc0322ac5331_14" [label="14: DeclStmt \n n$11=_fun_continue_scope::X_X(&x4:continue_scope::X*) [line 75, column 9]\n " shape="box"] +"test_while1#continue_scope#7540876780991944911.b81085ce953e1cd4f035dc0322ac5331_14" [label="14: DeclStmt \n n$16=_fun_continue_scope::X_X(&x4:continue_scope::X*) [line 75, column 9]\n " shape="box"] "test_while1#continue_scope#7540876780991944911.b81085ce953e1cd4f035dc0322ac5331_14" -> "test_while1#continue_scope#7540876780991944911.b81085ce953e1cd4f035dc0322ac5331_13" ; -"test_while1#continue_scope#7540876780991944911.b81085ce953e1cd4f035dc0322ac5331_15" [label="15: DeclStmt \n n$12=_fun_continue_scope::X_X(&x1:continue_scope::X*) [line 69, column 5]\n " shape="box"] +"test_while1#continue_scope#7540876780991944911.b81085ce953e1cd4f035dc0322ac5331_15" [label="15: DeclStmt \n n$19=_fun_continue_scope::X_X(&x1:continue_scope::X*) [line 69, column 5]\n " shape="box"] "test_while1#continue_scope#7540876780991944911.b81085ce953e1cd4f035dc0322ac5331_15" -> "test_while1#continue_scope#7540876780991944911.b81085ce953e1cd4f035dc0322ac5331_4" ; @@ -297,15 +297,15 @@ digraph cfg { "test_while2#continue_scope#4169552136172626704.fb057544ed7a6c8312596f53be6b62dc_4" -> "test_while2#continue_scope#4169552136172626704.fb057544ed7a6c8312596f53be6b62dc_5" ; "test_while2#continue_scope#4169552136172626704.fb057544ed7a6c8312596f53be6b62dc_4" -> "test_while2#continue_scope#4169552136172626704.fb057544ed7a6c8312596f53be6b62dc_6" ; -"test_while2#continue_scope#4169552136172626704.fb057544ed7a6c8312596f53be6b62dc_5" [label="5: Prune (true branch, while) \n n$2=*&a:_Bool [line 95, column 10]\n PRUNE(n$2, true); [line 95, column 10]\n " shape="invhouse"] +"test_while2#continue_scope#4169552136172626704.fb057544ed7a6c8312596f53be6b62dc_5" [label="5: Prune (true branch, while) \n n$3=*&a:_Bool [line 95, column 10]\n PRUNE(n$3, true); [line 95, column 10]\n " shape="invhouse"] "test_while2#continue_scope#4169552136172626704.fb057544ed7a6c8312596f53be6b62dc_5" -> "test_while2#continue_scope#4169552136172626704.fb057544ed7a6c8312596f53be6b62dc_14" ; -"test_while2#continue_scope#4169552136172626704.fb057544ed7a6c8312596f53be6b62dc_6" [label="6: Prune (false branch, while) \n n$2=*&a:_Bool [line 95, column 10]\n PRUNE(!n$2, false); [line 95, column 10]\n " shape="invhouse"] +"test_while2#continue_scope#4169552136172626704.fb057544ed7a6c8312596f53be6b62dc_6" [label="6: Prune (false branch, while) \n n$3=*&a:_Bool [line 95, column 10]\n PRUNE(!n$3, false); [line 95, column 10]\n " shape="invhouse"] "test_while2#continue_scope#4169552136172626704.fb057544ed7a6c8312596f53be6b62dc_6" -> "test_while2#continue_scope#4169552136172626704.fb057544ed7a6c8312596f53be6b62dc_3" ; -"test_while2#continue_scope#4169552136172626704.fb057544ed7a6c8312596f53be6b62dc_7" [label="7: Destruction \n _=*&x2:continue_scope::X [line 101, column 3]\n n$4=_fun_continue_scope::X_~X(&x2:continue_scope::X*) [line 101, column 3]\n " shape="box"] +"test_while2#continue_scope#4169552136172626704.fb057544ed7a6c8312596f53be6b62dc_7" [label="7: Destruction \n _=*&x2:continue_scope::X [line 101, column 3]\n n$5=_fun_continue_scope::X_~X(&x2:continue_scope::X*) [line 101, column 3]\n " shape="box"] "test_while2#continue_scope#4169552136172626704.fb057544ed7a6c8312596f53be6b62dc_7" -> "test_while2#continue_scope#4169552136172626704.fb057544ed7a6c8312596f53be6b62dc_4" ; @@ -314,31 +314,31 @@ digraph cfg { "test_while2#continue_scope#4169552136172626704.fb057544ed7a6c8312596f53be6b62dc_8" -> "test_while2#continue_scope#4169552136172626704.fb057544ed7a6c8312596f53be6b62dc_9" ; "test_while2#continue_scope#4169552136172626704.fb057544ed7a6c8312596f53be6b62dc_8" -> "test_while2#continue_scope#4169552136172626704.fb057544ed7a6c8312596f53be6b62dc_10" ; -"test_while2#continue_scope#4169552136172626704.fb057544ed7a6c8312596f53be6b62dc_9" [label="9: Prune (true branch, while) \n n$5=*&b:_Bool [line 97, column 12]\n PRUNE(n$5, true); [line 97, column 12]\n " shape="invhouse"] +"test_while2#continue_scope#4169552136172626704.fb057544ed7a6c8312596f53be6b62dc_9" [label="9: Prune (true branch, while) \n n$7=*&b:_Bool [line 97, column 12]\n PRUNE(n$7, true); [line 97, column 12]\n " shape="invhouse"] "test_while2#continue_scope#4169552136172626704.fb057544ed7a6c8312596f53be6b62dc_9" -> "test_while2#continue_scope#4169552136172626704.fb057544ed7a6c8312596f53be6b62dc_13" ; -"test_while2#continue_scope#4169552136172626704.fb057544ed7a6c8312596f53be6b62dc_10" [label="10: Prune (false branch, while) \n n$5=*&b:_Bool [line 97, column 12]\n PRUNE(!n$5, false); [line 97, column 12]\n " shape="invhouse"] +"test_while2#continue_scope#4169552136172626704.fb057544ed7a6c8312596f53be6b62dc_10" [label="10: Prune (false branch, while) \n n$7=*&b:_Bool [line 97, column 12]\n PRUNE(!n$7, false); [line 97, column 12]\n " shape="invhouse"] "test_while2#continue_scope#4169552136172626704.fb057544ed7a6c8312596f53be6b62dc_10" -> "test_while2#continue_scope#4169552136172626704.fb057544ed7a6c8312596f53be6b62dc_7" ; -"test_while2#continue_scope#4169552136172626704.fb057544ed7a6c8312596f53be6b62dc_11" [label="11: Destruction \n _=*&x3:continue_scope::X [line 100, column 5]\n n$7=_fun_continue_scope::X_~X(&x3:continue_scope::X*) [line 100, column 5]\n " shape="box"] +"test_while2#continue_scope#4169552136172626704.fb057544ed7a6c8312596f53be6b62dc_11" [label="11: Destruction \n _=*&x3:continue_scope::X [line 100, column 5]\n n$9=_fun_continue_scope::X_~X(&x3:continue_scope::X*) [line 100, column 5]\n " shape="box"] "test_while2#continue_scope#4169552136172626704.fb057544ed7a6c8312596f53be6b62dc_11" -> "test_while2#continue_scope#4169552136172626704.fb057544ed7a6c8312596f53be6b62dc_8" ; -"test_while2#continue_scope#4169552136172626704.fb057544ed7a6c8312596f53be6b62dc_12" [label="12: Destruction \n _=*&x3:continue_scope::X [line 99, column 7]\n n$9=_fun_continue_scope::X_~X(&x3:continue_scope::X*) [line 99, column 7]\n " shape="box"] +"test_while2#continue_scope#4169552136172626704.fb057544ed7a6c8312596f53be6b62dc_12" [label="12: Destruction \n _=*&x3:continue_scope::X [line 99, column 7]\n n$12=_fun_continue_scope::X_~X(&x3:continue_scope::X*) [line 99, column 7]\n " shape="box"] "test_while2#continue_scope#4169552136172626704.fb057544ed7a6c8312596f53be6b62dc_12" -> "test_while2#continue_scope#4169552136172626704.fb057544ed7a6c8312596f53be6b62dc_8" ; -"test_while2#continue_scope#4169552136172626704.fb057544ed7a6c8312596f53be6b62dc_13" [label="13: DeclStmt \n n$10=_fun_continue_scope::X_X(&x3:continue_scope::X*) [line 98, column 9]\n " shape="box"] +"test_while2#continue_scope#4169552136172626704.fb057544ed7a6c8312596f53be6b62dc_13" [label="13: DeclStmt \n n$14=_fun_continue_scope::X_X(&x3:continue_scope::X*) [line 98, column 9]\n " shape="box"] "test_while2#continue_scope#4169552136172626704.fb057544ed7a6c8312596f53be6b62dc_13" -> "test_while2#continue_scope#4169552136172626704.fb057544ed7a6c8312596f53be6b62dc_12" ; -"test_while2#continue_scope#4169552136172626704.fb057544ed7a6c8312596f53be6b62dc_14" [label="14: DeclStmt \n n$11=_fun_continue_scope::X_X(&x2:continue_scope::X*) [line 96, column 7]\n " shape="box"] +"test_while2#continue_scope#4169552136172626704.fb057544ed7a6c8312596f53be6b62dc_14" [label="14: DeclStmt \n n$16=_fun_continue_scope::X_X(&x2:continue_scope::X*) [line 96, column 7]\n " shape="box"] "test_while2#continue_scope#4169552136172626704.fb057544ed7a6c8312596f53be6b62dc_14" -> "test_while2#continue_scope#4169552136172626704.fb057544ed7a6c8312596f53be6b62dc_8" ; -"test_while2#continue_scope#4169552136172626704.fb057544ed7a6c8312596f53be6b62dc_15" [label="15: DeclStmt \n n$12=_fun_continue_scope::X_X(&x1:continue_scope::X*) [line 94, column 5]\n " shape="box"] +"test_while2#continue_scope#4169552136172626704.fb057544ed7a6c8312596f53be6b62dc_15" [label="15: DeclStmt \n n$18=_fun_continue_scope::X_X(&x1:continue_scope::X*) [line 94, column 5]\n " shape="box"] "test_while2#continue_scope#4169552136172626704.fb057544ed7a6c8312596f53be6b62dc_15" -> "test_while2#continue_scope#4169552136172626704.fb057544ed7a6c8312596f53be6b62dc_4" ; @@ -353,7 +353,7 @@ digraph cfg { "test_while3#continue_scope#1176125085634537673.a024bcf519539ef1deac237c06a02a78_3" -> "test_while3#continue_scope#1176125085634537673.a024bcf519539ef1deac237c06a02a78_2" ; -"test_while3#continue_scope#1176125085634537673.a024bcf519539ef1deac237c06a02a78_4" [label="4: DeclStmt \n n$4=_fun_continue_scope::X_X(&x3:continue_scope::X*) [line 112, column 5]\n " shape="box"] +"test_while3#continue_scope#1176125085634537673.a024bcf519539ef1deac237c06a02a78_4" [label="4: DeclStmt \n n$5=_fun_continue_scope::X_X(&x3:continue_scope::X*) [line 112, column 5]\n " shape="box"] "test_while3#continue_scope#1176125085634537673.a024bcf519539ef1deac237c06a02a78_4" -> "test_while3#continue_scope#1176125085634537673.a024bcf519539ef1deac237c06a02a78_3" ; @@ -362,15 +362,15 @@ digraph cfg { "test_while3#continue_scope#1176125085634537673.a024bcf519539ef1deac237c06a02a78_5" -> "test_while3#continue_scope#1176125085634537673.a024bcf519539ef1deac237c06a02a78_6" ; "test_while3#continue_scope#1176125085634537673.a024bcf519539ef1deac237c06a02a78_5" -> "test_while3#continue_scope#1176125085634537673.a024bcf519539ef1deac237c06a02a78_7" ; -"test_while3#continue_scope#1176125085634537673.a024bcf519539ef1deac237c06a02a78_6" [label="6: Prune (true branch, while) \n n$5=*&a:_Bool [line 106, column 10]\n PRUNE(n$5, true); [line 106, column 10]\n " shape="invhouse"] +"test_while3#continue_scope#1176125085634537673.a024bcf519539ef1deac237c06a02a78_6" [label="6: Prune (true branch, while) \n n$6=*&a:_Bool [line 106, column 10]\n PRUNE(n$6, true); [line 106, column 10]\n " shape="invhouse"] "test_while3#continue_scope#1176125085634537673.a024bcf519539ef1deac237c06a02a78_6" -> "test_while3#continue_scope#1176125085634537673.a024bcf519539ef1deac237c06a02a78_12" ; -"test_while3#continue_scope#1176125085634537673.a024bcf519539ef1deac237c06a02a78_7" [label="7: Prune (false branch, while) \n n$5=*&a:_Bool [line 106, column 10]\n PRUNE(!n$5, false); [line 106, column 10]\n " shape="invhouse"] +"test_while3#continue_scope#1176125085634537673.a024bcf519539ef1deac237c06a02a78_7" [label="7: Prune (false branch, while) \n n$6=*&a:_Bool [line 106, column 10]\n PRUNE(!n$6, false); [line 106, column 10]\n " shape="invhouse"] "test_while3#continue_scope#1176125085634537673.a024bcf519539ef1deac237c06a02a78_7" -> "test_while3#continue_scope#1176125085634537673.a024bcf519539ef1deac237c06a02a78_4" ; -"test_while3#continue_scope#1176125085634537673.a024bcf519539ef1deac237c06a02a78_8" [label="8: Destruction \n _=*&x2:continue_scope::X [line 111, column 3]\n n$7=_fun_continue_scope::X_~X(&x2:continue_scope::X*) [line 111, column 3]\n " shape="box"] +"test_while3#continue_scope#1176125085634537673.a024bcf519539ef1deac237c06a02a78_8" [label="8: Destruction \n _=*&x2:continue_scope::X [line 111, column 3]\n n$8=_fun_continue_scope::X_~X(&x2:continue_scope::X*) [line 111, column 3]\n " shape="box"] "test_while3#continue_scope#1176125085634537673.a024bcf519539ef1deac237c06a02a78_8" -> "test_while3#continue_scope#1176125085634537673.a024bcf519539ef1deac237c06a02a78_5" ; @@ -379,19 +379,19 @@ digraph cfg { "test_while3#continue_scope#1176125085634537673.a024bcf519539ef1deac237c06a02a78_9" -> "test_while3#continue_scope#1176125085634537673.a024bcf519539ef1deac237c06a02a78_10" ; "test_while3#continue_scope#1176125085634537673.a024bcf519539ef1deac237c06a02a78_9" -> "test_while3#continue_scope#1176125085634537673.a024bcf519539ef1deac237c06a02a78_11" ; -"test_while3#continue_scope#1176125085634537673.a024bcf519539ef1deac237c06a02a78_10" [label="10: Prune (true branch, while) \n n$8=*&b:_Bool [line 108, column 12]\n PRUNE(n$8, true); [line 108, column 12]\n " shape="invhouse"] +"test_while3#continue_scope#1176125085634537673.a024bcf519539ef1deac237c06a02a78_10" [label="10: Prune (true branch, while) \n n$10=*&b:_Bool [line 108, column 12]\n PRUNE(n$10, true); [line 108, column 12]\n " shape="invhouse"] "test_while3#continue_scope#1176125085634537673.a024bcf519539ef1deac237c06a02a78_10" -> "test_while3#continue_scope#1176125085634537673.a024bcf519539ef1deac237c06a02a78_9" ; -"test_while3#continue_scope#1176125085634537673.a024bcf519539ef1deac237c06a02a78_11" [label="11: Prune (false branch, while) \n n$8=*&b:_Bool [line 108, column 12]\n PRUNE(!n$8, false); [line 108, column 12]\n " shape="invhouse"] +"test_while3#continue_scope#1176125085634537673.a024bcf519539ef1deac237c06a02a78_11" [label="11: Prune (false branch, while) \n n$10=*&b:_Bool [line 108, column 12]\n PRUNE(!n$10, false); [line 108, column 12]\n " shape="invhouse"] "test_while3#continue_scope#1176125085634537673.a024bcf519539ef1deac237c06a02a78_11" -> "test_while3#continue_scope#1176125085634537673.a024bcf519539ef1deac237c06a02a78_8" ; -"test_while3#continue_scope#1176125085634537673.a024bcf519539ef1deac237c06a02a78_12" [label="12: DeclStmt \n n$9=_fun_continue_scope::X_X(&x2:continue_scope::X*) [line 107, column 7]\n " shape="box"] +"test_while3#continue_scope#1176125085634537673.a024bcf519539ef1deac237c06a02a78_12" [label="12: DeclStmt \n n$15=_fun_continue_scope::X_X(&x2:continue_scope::X*) [line 107, column 7]\n " shape="box"] "test_while3#continue_scope#1176125085634537673.a024bcf519539ef1deac237c06a02a78_12" -> "test_while3#continue_scope#1176125085634537673.a024bcf519539ef1deac237c06a02a78_9" ; -"test_while3#continue_scope#1176125085634537673.a024bcf519539ef1deac237c06a02a78_13" [label="13: DeclStmt \n n$10=_fun_continue_scope::X_X(&x1:continue_scope::X*) [line 105, column 5]\n " shape="box"] +"test_while3#continue_scope#1176125085634537673.a024bcf519539ef1deac237c06a02a78_13" [label="13: DeclStmt \n n$17=_fun_continue_scope::X_X(&x1:continue_scope::X*) [line 105, column 5]\n " shape="box"] "test_while3#continue_scope#1176125085634537673.a024bcf519539ef1deac237c06a02a78_13" -> "test_while3#continue_scope#1176125085634537673.a024bcf519539ef1deac237c06a02a78_5" ; @@ -463,11 +463,11 @@ digraph cfg { "iterator#iterator#continue_scope#{10809914205998631191|constexpr}.3824b12e843bd919018b65d60747271f_2" [label="2: Exit continue_scope::iterator_iterator \n " color=yellow style=filled] -"iterator#iterator#continue_scope#{10809914205998631191|constexpr}.3824b12e843bd919018b65d60747271f_3" [label="3: Constructor Init \n n$0=*&this:continue_scope::iterator* [line 18, column 8]\n n$1=*&__param_0:continue_scope::iterator& [line 18, column 8]\n n$2=*n$1.vector:continue_scope::vec const * [line 18, column 8]\n *n$0.vector:continue_scope::vec const *=n$2 [line 18, column 8]\n " shape="box"] +"iterator#iterator#continue_scope#{10809914205998631191|constexpr}.3824b12e843bd919018b65d60747271f_3" [label="3: Constructor Init \n n$2=*&this:continue_scope::iterator* [line 18, column 8]\n n$3=*&__param_0:continue_scope::iterator& [line 18, column 8]\n n$4=*n$3.vector:continue_scope::vec const * [line 18, column 8]\n *n$2.vector:continue_scope::vec const *=n$4 [line 18, column 8]\n " shape="box"] "iterator#iterator#continue_scope#{10809914205998631191|constexpr}.3824b12e843bd919018b65d60747271f_3" -> "iterator#iterator#continue_scope#{10809914205998631191|constexpr}.3824b12e843bd919018b65d60747271f_2" ; -"iterator#iterator#continue_scope#{10809914205998631191|constexpr}.3824b12e843bd919018b65d60747271f_4" [label="4: Constructor Init \n n$3=*&this:continue_scope::iterator* [line 18, column 8]\n n$4=*&__param_0:continue_scope::iterator& [line 18, column 8]\n n$5=*n$4.position:int [line 18, column 8]\n *n$3.position:int=n$5 [line 18, column 8]\n " shape="box"] +"iterator#iterator#continue_scope#{10809914205998631191|constexpr}.3824b12e843bd919018b65d60747271f_4" [label="4: Constructor Init \n n$5=*&this:continue_scope::iterator* [line 18, column 8]\n n$6=*&__param_0:continue_scope::iterator& [line 18, column 8]\n n$7=*n$6.position:int [line 18, column 8]\n *n$5.position:int=n$7 [line 18, column 8]\n " shape="box"] "iterator#iterator#continue_scope#{10809914205998631191|constexpr}.3824b12e843bd919018b65d60747271f_4" -> "iterator#iterator#continue_scope#{10809914205998631191|constexpr}.3824b12e843bd919018b65d60747271f_3" ; @@ -478,11 +478,11 @@ digraph cfg { "iterator#iterator#continue_scope#{17152205201271404012}.6fcfea00eca12936183691c85f57ca37_2" [label="2: Exit continue_scope::iterator_iterator \n " color=yellow style=filled] -"iterator#iterator#continue_scope#{17152205201271404012}.6fcfea00eca12936183691c85f57ca37_3" [label="3: Constructor Init \n n$0=*&this:continue_scope::iterator* [line 22, column 52]\n n$1=*&v:continue_scope::vec const * [line 22, column 59]\n *n$0.vector:continue_scope::vec const *=n$1 [line 22, column 52]\n " shape="box"] +"iterator#iterator#continue_scope#{17152205201271404012}.6fcfea00eca12936183691c85f57ca37_3" [label="3: Constructor Init \n n$2=*&this:continue_scope::iterator* [line 22, column 52]\n n$3=*&v:continue_scope::vec const * [line 22, column 59]\n *n$2.vector:continue_scope::vec const *=n$3 [line 22, column 52]\n " shape="box"] "iterator#iterator#continue_scope#{17152205201271404012}.6fcfea00eca12936183691c85f57ca37_3" -> "iterator#iterator#continue_scope#{17152205201271404012}.6fcfea00eca12936183691c85f57ca37_2" ; -"iterator#iterator#continue_scope#{17152205201271404012}.6fcfea00eca12936183691c85f57ca37_4" [label="4: Constructor Init \n n$2=*&this:continue_scope::iterator* [line 22, column 37]\n n$3=*&pos:int [line 22, column 46]\n *n$2.position:int=n$3 [line 22, column 37]\n " shape="box"] +"iterator#iterator#continue_scope#{17152205201271404012}.6fcfea00eca12936183691c85f57ca37_4" [label="4: Constructor Init \n n$4=*&this:continue_scope::iterator* [line 22, column 37]\n n$5=*&pos:int [line 22, column 46]\n *n$4.position:int=n$5 [line 22, column 37]\n " shape="box"] "iterator#iterator#continue_scope#{17152205201271404012}.6fcfea00eca12936183691c85f57ca37_4" -> "iterator#iterator#continue_scope#{17152205201271404012}.6fcfea00eca12936183691c85f57ca37_3" ; @@ -493,11 +493,11 @@ digraph cfg { "iterator#iterator#continue_scope#{5205818338773724773|constexpr}.befe58b6f79cfdaaec28cf6af78711d5_2" [label="2: Exit continue_scope::iterator_iterator \n " color=yellow style=filled] -"iterator#iterator#continue_scope#{5205818338773724773|constexpr}.befe58b6f79cfdaaec28cf6af78711d5_3" [label="3: Constructor Init \n n$0=*&this:continue_scope::iterator* [line 18, column 8]\n n$1=*&__param_0:continue_scope::iterator const & [line 18, column 8]\n n$2=*n$1.vector:continue_scope::vec const * [line 18, column 8]\n *n$0.vector:continue_scope::vec const *=n$2 [line 18, column 8]\n " shape="box"] +"iterator#iterator#continue_scope#{5205818338773724773|constexpr}.befe58b6f79cfdaaec28cf6af78711d5_3" [label="3: Constructor Init \n n$2=*&this:continue_scope::iterator* [line 18, column 8]\n n$3=*&__param_0:continue_scope::iterator const & [line 18, column 8]\n n$4=*n$3.vector:continue_scope::vec const * [line 18, column 8]\n *n$2.vector:continue_scope::vec const *=n$4 [line 18, column 8]\n " shape="box"] "iterator#iterator#continue_scope#{5205818338773724773|constexpr}.befe58b6f79cfdaaec28cf6af78711d5_3" -> "iterator#iterator#continue_scope#{5205818338773724773|constexpr}.befe58b6f79cfdaaec28cf6af78711d5_2" ; -"iterator#iterator#continue_scope#{5205818338773724773|constexpr}.befe58b6f79cfdaaec28cf6af78711d5_4" [label="4: Constructor Init \n n$3=*&this:continue_scope::iterator* [line 18, column 8]\n n$4=*&__param_0:continue_scope::iterator const & [line 18, column 8]\n n$5=*n$4.position:int [line 18, column 8]\n *n$3.position:int=n$5 [line 18, column 8]\n " shape="box"] +"iterator#iterator#continue_scope#{5205818338773724773|constexpr}.befe58b6f79cfdaaec28cf6af78711d5_4" [label="4: Constructor Init \n n$5=*&this:continue_scope::iterator* [line 18, column 8]\n n$6=*&__param_0:continue_scope::iterator const & [line 18, column 8]\n n$7=*n$6.position:int [line 18, column 8]\n *n$5.position:int=n$7 [line 18, column 8]\n " shape="box"] "iterator#iterator#continue_scope#{5205818338773724773|constexpr}.befe58b6f79cfdaaec28cf6af78711d5_4" -> "iterator#iterator#continue_scope#{5205818338773724773|constexpr}.befe58b6f79cfdaaec28cf6af78711d5_3" ; @@ -525,11 +525,11 @@ digraph cfg { "operator!=#iterator#continue_scope#(11025097396656630732).d1947b35520a12f51156c7fee5f5e4a1_6" -> "operator!=#iterator#continue_scope#(11025097396656630732).d1947b35520a12f51156c7fee5f5e4a1_8" ; -"operator!=#iterator#continue_scope#(11025097396656630732).d1947b35520a12f51156c7fee5f5e4a1_7" [label="7: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:_Bool=1 [line 29, column 48]\n " shape="box"] +"operator!=#iterator#continue_scope#(11025097396656630732).d1947b35520a12f51156c7fee5f5e4a1_7" [label="7: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:_Bool=1 [line 29, column 48]\n " shape="box"] "operator!=#iterator#continue_scope#(11025097396656630732).d1947b35520a12f51156c7fee5f5e4a1_7" -> "operator!=#iterator#continue_scope#(11025097396656630732).d1947b35520a12f51156c7fee5f5e4a1_3" ; -"operator!=#iterator#continue_scope#(11025097396656630732).d1947b35520a12f51156c7fee5f5e4a1_8" [label="8: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:_Bool=0 [line 29, column 48]\n " shape="box"] +"operator!=#iterator#continue_scope#(11025097396656630732).d1947b35520a12f51156c7fee5f5e4a1_8" [label="8: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:_Bool=0 [line 29, column 48]\n " shape="box"] "operator!=#iterator#continue_scope#(11025097396656630732).d1947b35520a12f51156c7fee5f5e4a1_8" -> "operator!=#iterator#continue_scope#(11025097396656630732).d1947b35520a12f51156c7fee5f5e4a1_3" ; @@ -537,14 +537,14 @@ digraph cfg { "operator!=#iterator#continue_scope#(11025097396656630732).d1947b35520a12f51156c7fee5f5e4a1_9" -> "operator!=#iterator#continue_scope#(11025097396656630732).d1947b35520a12f51156c7fee5f5e4a1_2" ; -"operator*#iterator#continue_scope#(10976315504449545146).52feec5517a47e2a4f419770b171de17_1" [label="1: Start continue_scope::iterator_operator*\nFormals: this:continue_scope::iterator* __return_param:continue_scope::X*\nLocals: 0$?%__sil_tmpSIL_materialize_temp__n$1:continue_scope::X \n DECLARE_LOCALS(&return,&0$?%__sil_tmpSIL_materialize_temp__n$1); [line 44, column 1]\n " color=yellow style=filled] +"operator*#iterator#continue_scope#(10976315504449545146).52feec5517a47e2a4f419770b171de17_1" [label="1: Start continue_scope::iterator_operator*\nFormals: this:continue_scope::iterator* __return_param:continue_scope::X*\nLocals: 0$?%__sil_tmpSIL_materialize_temp__n$1:continue_scope::X const \n DECLARE_LOCALS(&return,&0$?%__sil_tmpSIL_materialize_temp__n$1); [line 44, column 1]\n " color=yellow style=filled] "operator*#iterator#continue_scope#(10976315504449545146).52feec5517a47e2a4f419770b171de17_1" -> "operator*#iterator#continue_scope#(10976315504449545146).52feec5517a47e2a4f419770b171de17_3" ; "operator*#iterator#continue_scope#(10976315504449545146).52feec5517a47e2a4f419770b171de17_2" [label="2: Exit continue_scope::iterator_operator* \n " color=yellow style=filled] -"operator*#iterator#continue_scope#(10976315504449545146).52feec5517a47e2a4f419770b171de17_3" [label="3: Return Stmt \n n$0=*&__return_param:continue_scope::X* [line 44, column 33]\n n$2=*&this:continue_scope::iterator const * [line 44, column 40]\n n$3=*n$2.vector:continue_scope::vec const * [line 44, column 40]\n _=*n$3:continue_scope::vec const [line 44, column 40]\n n$5=*&this:continue_scope::iterator const * [line 44, column 52]\n n$6=*n$5.position:int [line 44, column 52]\n n$8=_fun_continue_scope::vec_get(n$3:continue_scope::vec const *,n$6:int,&0$?%__sil_tmpSIL_materialize_temp__n$1:continue_scope::X*) [line 44, column 40]\n n$9=_fun_continue_scope::X_X(n$0:continue_scope::X*,&0$?%__sil_tmpSIL_materialize_temp__n$1:continue_scope::X&) [line 44, column 40]\n " shape="box"] +"operator*#iterator#continue_scope#(10976315504449545146).52feec5517a47e2a4f419770b171de17_3" [label="3: Return Stmt \n n$0=*&__return_param:continue_scope::X* [line 44, column 33]\n n$2=*&this:continue_scope::iterator const * [line 44, column 40]\n n$3=*n$2.vector:continue_scope::vec const * [line 44, column 40]\n _=*n$3:continue_scope::vec const [line 44, column 40]\n n$5=*&this:continue_scope::iterator const * [line 44, column 52]\n n$6=*n$5.position:int [line 44, column 52]\n n$8=_fun_continue_scope::vec_get(n$3:continue_scope::vec const *,n$6:int,&0$?%__sil_tmpSIL_materialize_temp__n$1:continue_scope::X*) [line 44, column 40]\n n$9=_fun_continue_scope::X_X(n$0:continue_scope::X*,&0$?%__sil_tmpSIL_materialize_temp__n$1:continue_scope::X const &) [line 44, column 40]\n " shape="box"] "operator*#iterator#continue_scope#(10976315504449545146).52feec5517a47e2a4f419770b171de17_3" -> "operator*#iterator#continue_scope#(10976315504449545146).52feec5517a47e2a4f419770b171de17_2" ; @@ -559,7 +559,7 @@ digraph cfg { "operator++#iterator#continue_scope#(16434574593791982090).926de445b967c9119c5cf6eecba7a618_3" -> "operator++#iterator#continue_scope#(16434574593791982090).926de445b967c9119c5cf6eecba7a618_2" ; -"operator++#iterator#continue_scope#(16434574593791982090).926de445b967c9119c5cf6eecba7a618_4" [label="4: UnaryOperator \n n$3=*&this:continue_scope::iterator* [line 25, column 5]\n n$4=*n$3.position:int [line 25, column 5]\n *n$3.position:int=(n$4 + 1) [line 25, column 5]\n " shape="box"] +"operator++#iterator#continue_scope#(16434574593791982090).926de445b967c9119c5cf6eecba7a618_4" [label="4: UnaryOperator \n n$4=*&this:continue_scope::iterator* [line 25, column 5]\n n$5=*n$4.position:int [line 25, column 5]\n *n$4.position:int=(n$5 + 1) [line 25, column 5]\n " shape="box"] "operator++#iterator#continue_scope#(16434574593791982090).926de445b967c9119c5cf6eecba7a618_4" -> "operator++#iterator#continue_scope#(16434574593791982090).926de445b967c9119c5cf6eecba7a618_3" ; @@ -570,7 +570,7 @@ digraph cfg { "vec#vec#continue_scope#{15014380772393274563}.0db26bae10e0d7702598e02aede0544b_2" [label="2: Exit continue_scope::vec_vec \n " color=yellow style=filled] -"vec#vec#continue_scope#{15014380772393274563}.0db26bae10e0d7702598e02aede0544b_3" [label="3: Constructor Init \n n$0=*&this:continue_scope::vec* [line 35, column 3]\n n$1=_fun_continue_scope::X_X(n$0._data:continue_scope::X[10*1](*)) [line 35, column 3]\n " shape="box"] +"vec#vec#continue_scope#{15014380772393274563}.0db26bae10e0d7702598e02aede0544b_3" [label="3: Constructor Init \n n$2=*&this:continue_scope::vec* [line 35, column 3]\n n$3=_fun_continue_scope::X_X(n$2._data:continue_scope::X[10*1](*)) [line 35, column 3]\n " shape="box"] "vec#vec#continue_scope#{15014380772393274563}.0db26bae10e0d7702598e02aede0544b_3" -> "vec#vec#continue_scope#{15014380772393274563}.0db26bae10e0d7702598e02aede0544b_2" ; diff --git a/infer/tests/codetoanalyze/cpp/frontend/destructors/destructor_bases.cpp.dot b/infer/tests/codetoanalyze/cpp/frontend/destructors/destructor_bases.cpp.dot index b169b2208..72f577cdc 100644 --- a/infer/tests/codetoanalyze/cpp/frontend/destructors/destructor_bases.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/frontend/destructors/destructor_bases.cpp.dot @@ -7,7 +7,7 @@ digraph cfg { "A#A#{14779025497907219583}.17208581fb4c6bbf4d62e29851fb70ab_2" [label="2: Exit A_A \n " color=yellow style=filled] -"A#A#{14779025497907219583}.17208581fb4c6bbf4d62e29851fb70ab_3" [label="3: Constructor Init \n n$0=*&this:A* [line 16, column 7]\n n$1=_fun_T_T(n$0:A*) [line 16, column 3]\n " shape="box"] +"A#A#{14779025497907219583}.17208581fb4c6bbf4d62e29851fb70ab_3" [label="3: Constructor Init \n n$2=*&this:A* [line 16, column 7]\n n$3=_fun_T_T(n$2:A*) [line 16, column 3]\n " shape="box"] "A#A#{14779025497907219583}.17208581fb4c6bbf4d62e29851fb70ab_3" -> "A#A#{14779025497907219583}.17208581fb4c6bbf4d62e29851fb70ab_2" ; @@ -18,11 +18,11 @@ digraph cfg { "B#B#{10798876524598897542}.3b10fa64f3322f2c8bfbde72c7a0e4a6_2" [label="2: Exit B_B \n " color=yellow style=filled] -"B#B#{10798876524598897542}.3b10fa64f3322f2c8bfbde72c7a0e4a6_3" [label="3: Constructor Init \n n$0=*&this:B* [line 21, column 3]\n n$1=_fun_A_A(n$0:B*) [line 21, column 3]\n " shape="box"] +"B#B#{10798876524598897542}.3b10fa64f3322f2c8bfbde72c7a0e4a6_3" [label="3: Constructor Init \n n$2=*&this:B* [line 21, column 3]\n n$3=_fun_A_A(n$2:B*) [line 21, column 3]\n " shape="box"] "B#B#{10798876524598897542}.3b10fa64f3322f2c8bfbde72c7a0e4a6_3" -> "B#B#{10798876524598897542}.3b10fa64f3322f2c8bfbde72c7a0e4a6_2" ; -"B#B#{10798876524598897542}.3b10fa64f3322f2c8bfbde72c7a0e4a6_4" [label="4: Constructor Init \n n$2=*&this:B* [line 21, column 7]\n n$3=_fun_T_T(n$2:B*) [line 21, column 3]\n " shape="box"] +"B#B#{10798876524598897542}.3b10fa64f3322f2c8bfbde72c7a0e4a6_4" [label="4: Constructor Init \n n$4=*&this:B* [line 21, column 7]\n n$5=_fun_T_T(n$4:B*) [line 21, column 3]\n " shape="box"] "B#B#{10798876524598897542}.3b10fa64f3322f2c8bfbde72c7a0e4a6_4" -> "B#B#{10798876524598897542}.3b10fa64f3322f2c8bfbde72c7a0e4a6_3" ; @@ -40,19 +40,19 @@ digraph cfg { "D#D#{14859184625718510620}.5a45d8adce2fa330a108d14c6d9e7ad2_2" [label="2: Exit D_D \n " color=yellow style=filled] -"D#D#{14859184625718510620}.5a45d8adce2fa330a108d14c6d9e7ad2_3" [label="3: Constructor Init \n n$0=*&this:D* [line 32, column 3]\n n$1=_fun_B_B(n$0.b:B*) [line 32, column 3]\n " shape="box"] +"D#D#{14859184625718510620}.5a45d8adce2fa330a108d14c6d9e7ad2_3" [label="3: Constructor Init \n n$2=*&this:D* [line 32, column 3]\n n$3=_fun_B_B(n$2.b:B*) [line 32, column 3]\n " shape="box"] "D#D#{14859184625718510620}.5a45d8adce2fa330a108d14c6d9e7ad2_3" -> "D#D#{14859184625718510620}.5a45d8adce2fa330a108d14c6d9e7ad2_2" ; -"D#D#{14859184625718510620}.5a45d8adce2fa330a108d14c6d9e7ad2_4" [label="4: Constructor Init \n n$2=*&this:D* [line 32, column 3]\n n$3=_fun_C_C(n$2:D*) [line 32, column 3]\n " shape="box"] +"D#D#{14859184625718510620}.5a45d8adce2fa330a108d14c6d9e7ad2_4" [label="4: Constructor Init \n n$4=*&this:D* [line 32, column 3]\n n$5=_fun_C_C(n$4:D*) [line 32, column 3]\n " shape="box"] "D#D#{14859184625718510620}.5a45d8adce2fa330a108d14c6d9e7ad2_4" -> "D#D#{14859184625718510620}.5a45d8adce2fa330a108d14c6d9e7ad2_3" ; -"D#D#{14859184625718510620}.5a45d8adce2fa330a108d14c6d9e7ad2_5" [label="5: Constructor Init \n n$4=*&this:D* [line 32, column 3]\n n$5=_fun_A_A(n$4:D*) [line 32, column 3]\n " shape="box"] +"D#D#{14859184625718510620}.5a45d8adce2fa330a108d14c6d9e7ad2_5" [label="5: Constructor Init \n n$6=*&this:D* [line 32, column 3]\n n$7=_fun_A_A(n$6:D*) [line 32, column 3]\n " shape="box"] "D#D#{14859184625718510620}.5a45d8adce2fa330a108d14c6d9e7ad2_5" -> "D#D#{14859184625718510620}.5a45d8adce2fa330a108d14c6d9e7ad2_4" ; -"D#D#{14859184625718510620}.5a45d8adce2fa330a108d14c6d9e7ad2_6" [label="6: Constructor Init \n n$6=*&this:D* [line 32, column 7]\n n$7=_fun_T_T(n$6:D*) [line 32, column 3]\n " shape="box"] +"D#D#{14859184625718510620}.5a45d8adce2fa330a108d14c6d9e7ad2_6" [label="6: Constructor Init \n n$8=*&this:D* [line 32, column 7]\n n$9=_fun_T_T(n$8:D*) [line 32, column 3]\n " shape="box"] "D#D#{14859184625718510620}.5a45d8adce2fa330a108d14c6d9e7ad2_6" -> "D#D#{14859184625718510620}.5a45d8adce2fa330a108d14c6d9e7ad2_5" ; @@ -63,23 +63,23 @@ digraph cfg { "E#E#{7886195349376518403}.02845ceb3bc1b2ade1c6ab65150dfc34_2" [label="2: Exit E_E \n " color=yellow style=filled] -"E#E#{7886195349376518403}.02845ceb3bc1b2ade1c6ab65150dfc34_3" [label="3: Constructor Init \n n$0=*&this:E* [line 37, column 3]\n n$1=_fun_D_D(n$0:E*) [line 37, column 3]\n " shape="box"] +"E#E#{7886195349376518403}.02845ceb3bc1b2ade1c6ab65150dfc34_3" [label="3: Constructor Init \n n$2=*&this:E* [line 37, column 3]\n n$3=_fun_D_D(n$2:E*) [line 37, column 3]\n " shape="box"] "E#E#{7886195349376518403}.02845ceb3bc1b2ade1c6ab65150dfc34_3" -> "E#E#{7886195349376518403}.02845ceb3bc1b2ade1c6ab65150dfc34_2" ; -"E#E#{7886195349376518403}.02845ceb3bc1b2ade1c6ab65150dfc34_4" [label="4: Constructor Init \n n$2=*&this:E* [line 37, column 3]\n n$3=_fun_C_C(n$2:E*) [line 37, column 3]\n " shape="box"] +"E#E#{7886195349376518403}.02845ceb3bc1b2ade1c6ab65150dfc34_4" [label="4: Constructor Init \n n$4=*&this:E* [line 37, column 3]\n n$5=_fun_C_C(n$4:E*) [line 37, column 3]\n " shape="box"] "E#E#{7886195349376518403}.02845ceb3bc1b2ade1c6ab65150dfc34_4" -> "E#E#{7886195349376518403}.02845ceb3bc1b2ade1c6ab65150dfc34_3" ; -"E#E#{7886195349376518403}.02845ceb3bc1b2ade1c6ab65150dfc34_5" [label="5: Constructor Init \n n$4=*&this:E* [line 37, column 3]\n n$5=_fun_B_B(n$4:E*) [line 37, column 3]\n " shape="box"] +"E#E#{7886195349376518403}.02845ceb3bc1b2ade1c6ab65150dfc34_5" [label="5: Constructor Init \n n$6=*&this:E* [line 37, column 3]\n n$7=_fun_B_B(n$6:E*) [line 37, column 3]\n " shape="box"] "E#E#{7886195349376518403}.02845ceb3bc1b2ade1c6ab65150dfc34_5" -> "E#E#{7886195349376518403}.02845ceb3bc1b2ade1c6ab65150dfc34_4" ; -"E#E#{7886195349376518403}.02845ceb3bc1b2ade1c6ab65150dfc34_6" [label="6: Constructor Init \n n$6=*&this:E* [line 37, column 3]\n n$7=_fun_A_A(n$6:E*) [line 37, column 3]\n " shape="box"] +"E#E#{7886195349376518403}.02845ceb3bc1b2ade1c6ab65150dfc34_6" [label="6: Constructor Init \n n$8=*&this:E* [line 37, column 3]\n n$9=_fun_A_A(n$8:E*) [line 37, column 3]\n " shape="box"] "E#E#{7886195349376518403}.02845ceb3bc1b2ade1c6ab65150dfc34_6" -> "E#E#{7886195349376518403}.02845ceb3bc1b2ade1c6ab65150dfc34_5" ; -"E#E#{7886195349376518403}.02845ceb3bc1b2ade1c6ab65150dfc34_7" [label="7: Constructor Init \n n$8=*&this:E* [line 37, column 7]\n n$9=_fun_T_T(n$8:E*) [line 37, column 3]\n " shape="box"] +"E#E#{7886195349376518403}.02845ceb3bc1b2ade1c6ab65150dfc34_7" [label="7: Constructor Init \n n$10=*&this:E* [line 37, column 7]\n n$11=_fun_T_T(n$10:E*) [line 37, column 3]\n " shape="box"] "E#E#{7886195349376518403}.02845ceb3bc1b2ade1c6ab65150dfc34_7" -> "E#E#{7886195349376518403}.02845ceb3bc1b2ade1c6ab65150dfc34_6" ; @@ -90,23 +90,23 @@ digraph cfg { "F#F#{11715195598984476266}.884ea102935d653fcf591dff17f31401_2" [label="2: Exit F_F \n " color=yellow style=filled] -"F#F#{11715195598984476266}.884ea102935d653fcf591dff17f31401_3" [label="3: Constructor Init \n n$0=*&this:F* [line 42, column 3]\n n$1=_fun_D_D(n$0:F*) [line 42, column 3]\n " shape="box"] +"F#F#{11715195598984476266}.884ea102935d653fcf591dff17f31401_3" [label="3: Constructor Init \n n$2=*&this:F* [line 42, column 3]\n n$3=_fun_D_D(n$2:F*) [line 42, column 3]\n " shape="box"] "F#F#{11715195598984476266}.884ea102935d653fcf591dff17f31401_3" -> "F#F#{11715195598984476266}.884ea102935d653fcf591dff17f31401_2" ; -"F#F#{11715195598984476266}.884ea102935d653fcf591dff17f31401_4" [label="4: Constructor Init \n n$2=*&this:F* [line 42, column 3]\n n$3=_fun_B_B(n$2:F*) [line 42, column 3]\n " shape="box"] +"F#F#{11715195598984476266}.884ea102935d653fcf591dff17f31401_4" [label="4: Constructor Init \n n$4=*&this:F* [line 42, column 3]\n n$5=_fun_B_B(n$4:F*) [line 42, column 3]\n " shape="box"] "F#F#{11715195598984476266}.884ea102935d653fcf591dff17f31401_4" -> "F#F#{11715195598984476266}.884ea102935d653fcf591dff17f31401_3" ; -"F#F#{11715195598984476266}.884ea102935d653fcf591dff17f31401_5" [label="5: Constructor Init \n n$4=*&this:F* [line 42, column 3]\n n$5=_fun_C_C(n$4:F*) [line 42, column 3]\n " shape="box"] +"F#F#{11715195598984476266}.884ea102935d653fcf591dff17f31401_5" [label="5: Constructor Init \n n$6=*&this:F* [line 42, column 3]\n n$7=_fun_C_C(n$6:F*) [line 42, column 3]\n " shape="box"] "F#F#{11715195598984476266}.884ea102935d653fcf591dff17f31401_5" -> "F#F#{11715195598984476266}.884ea102935d653fcf591dff17f31401_4" ; -"F#F#{11715195598984476266}.884ea102935d653fcf591dff17f31401_6" [label="6: Constructor Init \n n$6=*&this:F* [line 42, column 3]\n n$7=_fun_A_A(n$6:F*) [line 42, column 3]\n " shape="box"] +"F#F#{11715195598984476266}.884ea102935d653fcf591dff17f31401_6" [label="6: Constructor Init \n n$8=*&this:F* [line 42, column 3]\n n$9=_fun_A_A(n$8:F*) [line 42, column 3]\n " shape="box"] "F#F#{11715195598984476266}.884ea102935d653fcf591dff17f31401_6" -> "F#F#{11715195598984476266}.884ea102935d653fcf591dff17f31401_5" ; -"F#F#{11715195598984476266}.884ea102935d653fcf591dff17f31401_7" [label="7: Constructor Init \n n$8=*&this:F* [line 42, column 7]\n n$9=_fun_T_T(n$8:F*) [line 42, column 3]\n " shape="box"] +"F#F#{11715195598984476266}.884ea102935d653fcf591dff17f31401_7" [label="7: Constructor Init \n n$10=*&this:F* [line 42, column 7]\n n$11=_fun_T_T(n$10:F*) [line 42, column 3]\n " shape="box"] "F#F#{11715195598984476266}.884ea102935d653fcf591dff17f31401_7" -> "F#F#{11715195598984476266}.884ea102935d653fcf591dff17f31401_6" ; @@ -149,11 +149,11 @@ digraph cfg { "__infer_inner_destructor_~D#D#(5618221758133596168).bafb8a40b92952d90ec3736fc827de7f_3" -> "__infer_inner_destructor_~D#D#(5618221758133596168).bafb8a40b92952d90ec3736fc827de7f_2" ; -"__infer_inner_destructor_~D#D#(5618221758133596168).bafb8a40b92952d90ec3736fc827de7f_4" [label="4: Destruction \n _=*&a:A [line 33, column 15]\n n$8=_fun_A_~A(&a:A*) [line 33, column 15]\n " shape="box"] +"__infer_inner_destructor_~D#D#(5618221758133596168).bafb8a40b92952d90ec3736fc827de7f_4" [label="4: Destruction \n _=*&a:A [line 33, column 15]\n n$9=_fun_A_~A(&a:A*) [line 33, column 15]\n " shape="box"] "__infer_inner_destructor_~D#D#(5618221758133596168).bafb8a40b92952d90ec3736fc827de7f_4" -> "__infer_inner_destructor_~D#D#(5618221758133596168).bafb8a40b92952d90ec3736fc827de7f_3" ; -"__infer_inner_destructor_~D#D#(5618221758133596168).bafb8a40b92952d90ec3736fc827de7f_5" [label="5: DeclStmt \n n$9=_fun_A_A(&a:A*) [line 33, column 12]\n " shape="box"] +"__infer_inner_destructor_~D#D#(5618221758133596168).bafb8a40b92952d90ec3736fc827de7f_5" [label="5: DeclStmt \n n$11=_fun_A_A(&a:A*) [line 33, column 12]\n " shape="box"] "__infer_inner_destructor_~D#D#(5618221758133596168).bafb8a40b92952d90ec3736fc827de7f_5" -> "__infer_inner_destructor_~D#D#(5618221758133596168).bafb8a40b92952d90ec3736fc827de7f_4" ; diff --git a/infer/tests/codetoanalyze/cpp/frontend/destructors/pseudo_destructor_expr.cpp.dot b/infer/tests/codetoanalyze/cpp/frontend/destructors/pseudo_destructor_expr.cpp.dot index 3fe963a63..44db33bf6 100644 --- a/infer/tests/codetoanalyze/cpp/frontend/destructors/pseudo_destructor_expr.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/frontend/destructors/pseudo_destructor_expr.cpp.dot @@ -11,7 +11,7 @@ digraph cfg { "destroy#14082686937760238422.8268959c48dc929d419568bc99a6b97b_3" -> "destroy#14082686937760238422.8268959c48dc929d419568bc99a6b97b_2" ; -"destroy#14082686937760238422.8268959c48dc929d419568bc99a6b97b_4" [label="4: Call _fun___infer_skip_function \n n$0=_fun___infer_skip_function() [line 19, column 3]\n " shape="box"] +"destroy#14082686937760238422.8268959c48dc929d419568bc99a6b97b_4" [label="4: Call _fun___infer_skip_function \n n$1=_fun___infer_skip_function() [line 19, column 3]\n " shape="box"] "destroy#14082686937760238422.8268959c48dc929d419568bc99a6b97b_4" -> "destroy#14082686937760238422.8268959c48dc929d419568bc99a6b97b_3" ; @@ -26,11 +26,11 @@ digraph cfg { "f#10188173399311638112.8cffce40f5525757e791edeba0985326_3" -> "f#10188173399311638112.8cffce40f5525757e791edeba0985326_2" ; -"f#10188173399311638112.8cffce40f5525757e791edeba0985326_4" [label="4: Call _fun___infer_skip_function \n n$1=_fun___infer_skip_function() [line 13, column 3]\n " shape="box"] +"f#10188173399311638112.8cffce40f5525757e791edeba0985326_4" [label="4: Call _fun___infer_skip_function \n n$2=_fun___infer_skip_function() [line 13, column 3]\n " shape="box"] "f#10188173399311638112.8cffce40f5525757e791edeba0985326_4" -> "f#10188173399311638112.8cffce40f5525757e791edeba0985326_3" ; -"f#10188173399311638112.8cffce40f5525757e791edeba0985326_5" [label="5: DeclStmt \n n$2=*&p:int* [line 12, column 12]\n n$3=*n$2:int [line 12, column 11]\n *&x:int=n$3 [line 12, column 3]\n " shape="box"] +"f#10188173399311638112.8cffce40f5525757e791edeba0985326_5" [label="5: DeclStmt \n n$3=*&p:int* [line 12, column 12]\n n$4=*n$3:int [line 12, column 11]\n *&x:int=n$4 [line 12, column 3]\n " shape="box"] "f#10188173399311638112.8cffce40f5525757e791edeba0985326_5" -> "f#10188173399311638112.8cffce40f5525757e791edeba0985326_4" ; @@ -41,7 +41,7 @@ digraph cfg { "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_2" [label="2: Exit test \n " color=yellow style=filled] -"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_3" [label="3: Call _fun_destroy \n n$0=_fun_destroy(&t:int**) [line 25, column 3]\n " shape="box"] +"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_3" [label="3: Call _fun_destroy \n n$1=_fun_destroy(&t:int**) [line 25, column 3]\n " shape="box"] "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_3" -> "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_2" ; diff --git a/infer/tests/codetoanalyze/cpp/frontend/destructors/scope.cpp.dot b/infer/tests/codetoanalyze/cpp/frontend/destructors/scope.cpp.dot index 143e26cb8..bc0110ba6 100644 --- a/infer/tests/codetoanalyze/cpp/frontend/destructors/scope.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/frontend/destructors/scope.cpp.dot @@ -1,13 +1,13 @@ /* @generated */ digraph cfg { -"callgetZ#destructor_scope#16418724657639342926.f4c0cbb2a5d892ea82496dd2540a9ead_1" [label="1: Start destructor_scope::callgetZ\nFormals: \nLocals: 0$?%__sil_tmp__temp_return_n$1:destructor_scope::Z \n DECLARE_LOCALS(&return,&0$?%__sil_tmp__temp_return_n$1); [line 84, column 1]\n " color=yellow style=filled] +"callgetZ#destructor_scope#16418724657639342926.f4c0cbb2a5d892ea82496dd2540a9ead_1" [label="1: Start destructor_scope::callgetZ\nFormals: \nLocals: 0$?%__sil_tmp__temp_return_n$2:destructor_scope::Z \n DECLARE_LOCALS(&return,&0$?%__sil_tmp__temp_return_n$2); [line 84, column 1]\n " color=yellow style=filled] "callgetZ#destructor_scope#16418724657639342926.f4c0cbb2a5d892ea82496dd2540a9ead_1" -> "callgetZ#destructor_scope#16418724657639342926.f4c0cbb2a5d892ea82496dd2540a9ead_3" ; "callgetZ#destructor_scope#16418724657639342926.f4c0cbb2a5d892ea82496dd2540a9ead_2" [label="2: Exit destructor_scope::callgetZ \n " color=yellow style=filled] -"callgetZ#destructor_scope#16418724657639342926.f4c0cbb2a5d892ea82496dd2540a9ead_3" [label="3: Call _fun_destructor_scope::getZ \n n$2=_fun_destructor_scope::getZ(&0$?%__sil_tmp__temp_return_n$1:destructor_scope::Z*) [line 84, column 19]\n " shape="box"] +"callgetZ#destructor_scope#16418724657639342926.f4c0cbb2a5d892ea82496dd2540a9ead_3" [label="3: Call _fun_destructor_scope::getZ \n n$3=_fun_destructor_scope::getZ(&0$?%__sil_tmp__temp_return_n$2:destructor_scope::Z*) [line 84, column 19]\n " shape="box"] "callgetZ#destructor_scope#16418724657639342926.f4c0cbb2a5d892ea82496dd2540a9ead_3" -> "callgetZ#destructor_scope#16418724657639342926.f4c0cbb2a5d892ea82496dd2540a9ead_2" ; @@ -22,7 +22,7 @@ digraph cfg { "getX#destructor_scope#11739464242911605656.40a1d0621360ad71d65c4cc39bf927eb_3" -> "getX#destructor_scope#11739464242911605656.40a1d0621360ad71d65c4cc39bf927eb_2" ; -"getX#destructor_scope#11739464242911605656.40a1d0621360ad71d65c4cc39bf927eb_4" [label="4: DeclStmt \n n$4=_fun_destructor_scope::X_X(&x:destructor_scope::X*) [line 71, column 5]\n " shape="box"] +"getX#destructor_scope#11739464242911605656.40a1d0621360ad71d65c4cc39bf927eb_4" [label="4: DeclStmt \n n$5=_fun_destructor_scope::X_X(&x:destructor_scope::X*) [line 71, column 5]\n " shape="box"] "getX#destructor_scope#11739464242911605656.40a1d0621360ad71d65c4cc39bf927eb_4" -> "getX#destructor_scope#11739464242911605656.40a1d0621360ad71d65c4cc39bf927eb_3" ; @@ -37,7 +37,7 @@ digraph cfg { "getZ#destructor_scope#13110319947448813202.fe2bc6519a3d7998283b70bbacc3915e_3" -> "getZ#destructor_scope#13110319947448813202.fe2bc6519a3d7998283b70bbacc3915e_2" ; -"getZ#destructor_scope#13110319947448813202.fe2bc6519a3d7998283b70bbacc3915e_4" [label="4: DeclStmt \n n$4=_fun_destructor_scope::Z_Z(&z:destructor_scope::Z*) [line 76, column 5]\n " shape="box"] +"getZ#destructor_scope#13110319947448813202.fe2bc6519a3d7998283b70bbacc3915e_4" [label="4: DeclStmt \n n$5=_fun_destructor_scope::Z_Z(&z:destructor_scope::Z*) [line 76, column 5]\n " shape="box"] "getZ#destructor_scope#13110319947448813202.fe2bc6519a3d7998283b70bbacc3915e_4" -> "getZ#destructor_scope#13110319947448813202.fe2bc6519a3d7998283b70bbacc3915e_3" ; @@ -52,23 +52,23 @@ digraph cfg { "test1#destructor_scope#3167061604758065234.d3af82d2ddb9b80d2c9930cb62bbbffa_3" -> "test1#destructor_scope#3167061604758065234.d3af82d2ddb9b80d2c9930cb62bbbffa_2" ; -"test1#destructor_scope#3167061604758065234.d3af82d2ddb9b80d2c9930cb62bbbffa_4" [label="4: Destruction \n _=*&y3:destructor_scope::Y [line 56, column 11]\n n$7=_fun_destructor_scope::Y_~Y(&y3:destructor_scope::Y*) [line 56, column 11]\n " shape="box"] +"test1#destructor_scope#3167061604758065234.d3af82d2ddb9b80d2c9930cb62bbbffa_4" [label="4: Destruction \n _=*&y3:destructor_scope::Y [line 56, column 11]\n n$8=_fun_destructor_scope::Y_~Y(&y3:destructor_scope::Y*) [line 56, column 11]\n " shape="box"] "test1#destructor_scope#3167061604758065234.d3af82d2ddb9b80d2c9930cb62bbbffa_4" -> "test1#destructor_scope#3167061604758065234.d3af82d2ddb9b80d2c9930cb62bbbffa_3" ; -"test1#destructor_scope#3167061604758065234.d3af82d2ddb9b80d2c9930cb62bbbffa_5" [label="5: DeclStmt \n n$8=_fun_destructor_scope::Y_Y(&y3:destructor_scope::Y*) [line 56, column 7]\n " shape="box"] +"test1#destructor_scope#3167061604758065234.d3af82d2ddb9b80d2c9930cb62bbbffa_5" [label="5: DeclStmt \n n$10=_fun_destructor_scope::Y_Y(&y3:destructor_scope::Y*) [line 56, column 7]\n " shape="box"] "test1#destructor_scope#3167061604758065234.d3af82d2ddb9b80d2c9930cb62bbbffa_5" -> "test1#destructor_scope#3167061604758065234.d3af82d2ddb9b80d2c9930cb62bbbffa_4" ; -"test1#destructor_scope#3167061604758065234.d3af82d2ddb9b80d2c9930cb62bbbffa_6" [label="6: DeclStmt \n n$9=_fun_destructor_scope::Y_Y(&y1:destructor_scope::Y*) [line 55, column 5]\n " shape="box"] +"test1#destructor_scope#3167061604758065234.d3af82d2ddb9b80d2c9930cb62bbbffa_6" [label="6: DeclStmt \n n$11=_fun_destructor_scope::Y_Y(&y1:destructor_scope::Y*) [line 55, column 5]\n " shape="box"] "test1#destructor_scope#3167061604758065234.d3af82d2ddb9b80d2c9930cb62bbbffa_6" -> "test1#destructor_scope#3167061604758065234.d3af82d2ddb9b80d2c9930cb62bbbffa_5" ; -"test1#destructor_scope#3167061604758065234.d3af82d2ddb9b80d2c9930cb62bbbffa_7" [label="7: Destruction \n _=*&y2:destructor_scope::Y [line 54, column 3]\n n$11=_fun_destructor_scope::Y_~Y(&y2:destructor_scope::Y*) [line 54, column 3]\n _=*&x2:destructor_scope::X [line 54, column 3]\n n$13=_fun_destructor_scope::X_~X(&x2:destructor_scope::X*) [line 54, column 3]\n " shape="box"] +"test1#destructor_scope#3167061604758065234.d3af82d2ddb9b80d2c9930cb62bbbffa_7" [label="7: Destruction \n _=*&y2:destructor_scope::Y [line 54, column 3]\n n$13=_fun_destructor_scope::Y_~Y(&y2:destructor_scope::Y*) [line 54, column 3]\n _=*&x2:destructor_scope::X [line 54, column 3]\n n$15=_fun_destructor_scope::X_~X(&x2:destructor_scope::X*) [line 54, column 3]\n " shape="box"] "test1#destructor_scope#3167061604758065234.d3af82d2ddb9b80d2c9930cb62bbbffa_7" -> "test1#destructor_scope#3167061604758065234.d3af82d2ddb9b80d2c9930cb62bbbffa_6" ; -"test1#destructor_scope#3167061604758065234.d3af82d2ddb9b80d2c9930cb62bbbffa_8" [label="8: Destruction \n _=*&x3:destructor_scope::X [line 53, column 5]\n n$15=_fun_destructor_scope::X_~X(&x3:destructor_scope::X*) [line 53, column 5]\n " shape="box"] +"test1#destructor_scope#3167061604758065234.d3af82d2ddb9b80d2c9930cb62bbbffa_8" [label="8: Destruction \n _=*&x3:destructor_scope::X [line 53, column 5]\n n$18=_fun_destructor_scope::X_~X(&x3:destructor_scope::X*) [line 53, column 5]\n " shape="box"] "test1#destructor_scope#3167061604758065234.d3af82d2ddb9b80d2c9930cb62bbbffa_8" -> "test1#destructor_scope#3167061604758065234.d3af82d2ddb9b80d2c9930cb62bbbffa_7" ; @@ -76,19 +76,19 @@ digraph cfg { "test1#destructor_scope#3167061604758065234.d3af82d2ddb9b80d2c9930cb62bbbffa_9" -> "test1#destructor_scope#3167061604758065234.d3af82d2ddb9b80d2c9930cb62bbbffa_8" ; -"test1#destructor_scope#3167061604758065234.d3af82d2ddb9b80d2c9930cb62bbbffa_10" [label="10: Prune (true branch, if) \n n$16=*&b:_Bool [line 50, column 11]\n PRUNE(n$16, true); [line 50, column 11]\n " shape="invhouse"] +"test1#destructor_scope#3167061604758065234.d3af82d2ddb9b80d2c9930cb62bbbffa_10" [label="10: Prune (true branch, if) \n n$20=*&b:_Bool [line 50, column 11]\n PRUNE(n$20, true); [line 50, column 11]\n " shape="invhouse"] "test1#destructor_scope#3167061604758065234.d3af82d2ddb9b80d2c9930cb62bbbffa_10" -> "test1#destructor_scope#3167061604758065234.d3af82d2ddb9b80d2c9930cb62bbbffa_12" ; -"test1#destructor_scope#3167061604758065234.d3af82d2ddb9b80d2c9930cb62bbbffa_11" [label="11: Prune (false branch, if) \n n$16=*&b:_Bool [line 50, column 11]\n PRUNE(!n$16, false); [line 50, column 11]\n " shape="invhouse"] +"test1#destructor_scope#3167061604758065234.d3af82d2ddb9b80d2c9930cb62bbbffa_11" [label="11: Prune (false branch, if) \n n$20=*&b:_Bool [line 50, column 11]\n PRUNE(!n$20, false); [line 50, column 11]\n " shape="invhouse"] "test1#destructor_scope#3167061604758065234.d3af82d2ddb9b80d2c9930cb62bbbffa_11" -> "test1#destructor_scope#3167061604758065234.d3af82d2ddb9b80d2c9930cb62bbbffa_9" ; -"test1#destructor_scope#3167061604758065234.d3af82d2ddb9b80d2c9930cb62bbbffa_12" [label="12: Return Stmt \n _=*&x3:destructor_scope::X [line 51, column 9]\n n$18=_fun_destructor_scope::X_~X(&x3:destructor_scope::X*) [line 51, column 9]\n _=*&y2:destructor_scope::Y [line 51, column 9]\n n$20=_fun_destructor_scope::Y_~Y(&y2:destructor_scope::Y*) [line 51, column 9]\n _=*&x2:destructor_scope::X [line 51, column 9]\n n$22=_fun_destructor_scope::X_~X(&x2:destructor_scope::X*) [line 51, column 9]\n _=*&s:destructor_scope::S [line 51, column 9]\n n$24=_fun_destructor_scope::S_~S(&s:destructor_scope::S*) [line 51, column 9]\n _=*&x1:destructor_scope::X [line 51, column 9]\n n$26=_fun_destructor_scope::X_~X(&x1:destructor_scope::X*) [line 51, column 9]\n " shape="box"] +"test1#destructor_scope#3167061604758065234.d3af82d2ddb9b80d2c9930cb62bbbffa_12" [label="12: Return Stmt \n _=*&x3:destructor_scope::X [line 51, column 9]\n n$22=_fun_destructor_scope::X_~X(&x3:destructor_scope::X*) [line 51, column 9]\n _=*&y2:destructor_scope::Y [line 51, column 9]\n n$24=_fun_destructor_scope::Y_~Y(&y2:destructor_scope::Y*) [line 51, column 9]\n _=*&x2:destructor_scope::X [line 51, column 9]\n n$26=_fun_destructor_scope::X_~X(&x2:destructor_scope::X*) [line 51, column 9]\n _=*&s:destructor_scope::S [line 51, column 9]\n n$28=_fun_destructor_scope::S_~S(&s:destructor_scope::S*) [line 51, column 9]\n _=*&x1:destructor_scope::X [line 51, column 9]\n n$30=_fun_destructor_scope::X_~X(&x1:destructor_scope::X*) [line 51, column 9]\n " shape="box"] "test1#destructor_scope#3167061604758065234.d3af82d2ddb9b80d2c9930cb62bbbffa_12" -> "test1#destructor_scope#3167061604758065234.d3af82d2ddb9b80d2c9930cb62bbbffa_2" ; -"test1#destructor_scope#3167061604758065234.d3af82d2ddb9b80d2c9930cb62bbbffa_13" [label="13: DeclStmt \n n$27=_fun_destructor_scope::X_X(&x3:destructor_scope::X*) [line 49, column 9]\n " shape="box"] +"test1#destructor_scope#3167061604758065234.d3af82d2ddb9b80d2c9930cb62bbbffa_13" [label="13: DeclStmt \n n$35=_fun_destructor_scope::X_X(&x3:destructor_scope::X*) [line 49, column 9]\n " shape="box"] "test1#destructor_scope#3167061604758065234.d3af82d2ddb9b80d2c9930cb62bbbffa_13" -> "test1#destructor_scope#3167061604758065234.d3af82d2ddb9b80d2c9930cb62bbbffa_10" ; @@ -97,32 +97,32 @@ digraph cfg { "test1#destructor_scope#3167061604758065234.d3af82d2ddb9b80d2c9930cb62bbbffa_14" -> "test1#destructor_scope#3167061604758065234.d3af82d2ddb9b80d2c9930cb62bbbffa_13" ; -"test1#destructor_scope#3167061604758065234.d3af82d2ddb9b80d2c9930cb62bbbffa_15" [label="15: Prune (true branch, if) \n n$28=*&a:_Bool [line 45, column 9]\n PRUNE(n$28, true); [line 45, column 9]\n " shape="invhouse"] +"test1#destructor_scope#3167061604758065234.d3af82d2ddb9b80d2c9930cb62bbbffa_15" [label="15: Prune (true branch, if) \n n$36=*&a:_Bool [line 45, column 9]\n PRUNE(n$36, true); [line 45, column 9]\n " shape="invhouse"] "test1#destructor_scope#3167061604758065234.d3af82d2ddb9b80d2c9930cb62bbbffa_15" -> "test1#destructor_scope#3167061604758065234.d3af82d2ddb9b80d2c9930cb62bbbffa_17" ; -"test1#destructor_scope#3167061604758065234.d3af82d2ddb9b80d2c9930cb62bbbffa_16" [label="16: Prune (false branch, if) \n n$28=*&a:_Bool [line 45, column 9]\n PRUNE(!n$28, false); [line 45, column 9]\n " shape="invhouse"] +"test1#destructor_scope#3167061604758065234.d3af82d2ddb9b80d2c9930cb62bbbffa_16" [label="16: Prune (false branch, if) \n n$36=*&a:_Bool [line 45, column 9]\n PRUNE(!n$36, false); [line 45, column 9]\n " shape="invhouse"] "test1#destructor_scope#3167061604758065234.d3af82d2ddb9b80d2c9930cb62bbbffa_16" -> "test1#destructor_scope#3167061604758065234.d3af82d2ddb9b80d2c9930cb62bbbffa_14" ; -"test1#destructor_scope#3167061604758065234.d3af82d2ddb9b80d2c9930cb62bbbffa_17" [label="17: Return Stmt \n _=*&y2:destructor_scope::Y [line 46, column 7]\n n$30=_fun_destructor_scope::Y_~Y(&y2:destructor_scope::Y*) [line 46, column 7]\n _=*&x2:destructor_scope::X [line 46, column 7]\n n$32=_fun_destructor_scope::X_~X(&x2:destructor_scope::X*) [line 46, column 7]\n _=*&s:destructor_scope::S [line 46, column 7]\n n$34=_fun_destructor_scope::S_~S(&s:destructor_scope::S*) [line 46, column 7]\n _=*&x1:destructor_scope::X [line 46, column 7]\n n$36=_fun_destructor_scope::X_~X(&x1:destructor_scope::X*) [line 46, column 7]\n " shape="box"] +"test1#destructor_scope#3167061604758065234.d3af82d2ddb9b80d2c9930cb62bbbffa_17" [label="17: Return Stmt \n _=*&y2:destructor_scope::Y [line 46, column 7]\n n$38=_fun_destructor_scope::Y_~Y(&y2:destructor_scope::Y*) [line 46, column 7]\n _=*&x2:destructor_scope::X [line 46, column 7]\n n$40=_fun_destructor_scope::X_~X(&x2:destructor_scope::X*) [line 46, column 7]\n _=*&s:destructor_scope::S [line 46, column 7]\n n$42=_fun_destructor_scope::S_~S(&s:destructor_scope::S*) [line 46, column 7]\n _=*&x1:destructor_scope::X [line 46, column 7]\n n$44=_fun_destructor_scope::X_~X(&x1:destructor_scope::X*) [line 46, column 7]\n " shape="box"] "test1#destructor_scope#3167061604758065234.d3af82d2ddb9b80d2c9930cb62bbbffa_17" -> "test1#destructor_scope#3167061604758065234.d3af82d2ddb9b80d2c9930cb62bbbffa_2" ; -"test1#destructor_scope#3167061604758065234.d3af82d2ddb9b80d2c9930cb62bbbffa_18" [label="18: DeclStmt \n n$37=_fun_destructor_scope::Y_Y(&y2:destructor_scope::Y*) [line 44, column 7]\n " shape="box"] +"test1#destructor_scope#3167061604758065234.d3af82d2ddb9b80d2c9930cb62bbbffa_18" [label="18: DeclStmt \n n$49=_fun_destructor_scope::Y_Y(&y2:destructor_scope::Y*) [line 44, column 7]\n " shape="box"] "test1#destructor_scope#3167061604758065234.d3af82d2ddb9b80d2c9930cb62bbbffa_18" -> "test1#destructor_scope#3167061604758065234.d3af82d2ddb9b80d2c9930cb62bbbffa_15" ; "test1#destructor_scope#3167061604758065234.d3af82d2ddb9b80d2c9930cb62bbbffa_18" -> "test1#destructor_scope#3167061604758065234.d3af82d2ddb9b80d2c9930cb62bbbffa_16" ; -"test1#destructor_scope#3167061604758065234.d3af82d2ddb9b80d2c9930cb62bbbffa_19" [label="19: DeclStmt \n n$38=_fun_destructor_scope::X_X(&x2:destructor_scope::X*) [line 43, column 7]\n " shape="box"] +"test1#destructor_scope#3167061604758065234.d3af82d2ddb9b80d2c9930cb62bbbffa_19" [label="19: DeclStmt \n n$50=_fun_destructor_scope::X_X(&x2:destructor_scope::X*) [line 43, column 7]\n " shape="box"] "test1#destructor_scope#3167061604758065234.d3af82d2ddb9b80d2c9930cb62bbbffa_19" -> "test1#destructor_scope#3167061604758065234.d3af82d2ddb9b80d2c9930cb62bbbffa_18" ; -"test1#destructor_scope#3167061604758065234.d3af82d2ddb9b80d2c9930cb62bbbffa_20" [label="20: DeclStmt \n n$39=_fun_destructor_scope::S_S(&s:destructor_scope::S*) [line 41, column 5]\n " shape="box"] +"test1#destructor_scope#3167061604758065234.d3af82d2ddb9b80d2c9930cb62bbbffa_20" [label="20: DeclStmt \n n$51=_fun_destructor_scope::S_S(&s:destructor_scope::S*) [line 41, column 5]\n " shape="box"] "test1#destructor_scope#3167061604758065234.d3af82d2ddb9b80d2c9930cb62bbbffa_20" -> "test1#destructor_scope#3167061604758065234.d3af82d2ddb9b80d2c9930cb62bbbffa_19" ; -"test1#destructor_scope#3167061604758065234.d3af82d2ddb9b80d2c9930cb62bbbffa_21" [label="21: DeclStmt \n n$40=_fun_destructor_scope::X_X(&x1:destructor_scope::X*) [line 40, column 5]\n " shape="box"] +"test1#destructor_scope#3167061604758065234.d3af82d2ddb9b80d2c9930cb62bbbffa_21" [label="21: DeclStmt \n n$52=_fun_destructor_scope::X_X(&x1:destructor_scope::X*) [line 40, column 5]\n " shape="box"] "test1#destructor_scope#3167061604758065234.d3af82d2ddb9b80d2c9930cb62bbbffa_21" -> "test1#destructor_scope#3167061604758065234.d3af82d2ddb9b80d2c9930cb62bbbffa_20" ; @@ -141,31 +141,31 @@ digraph cfg { "test2#destructor_scope#2993434300384255445.24bf3f4c27c1719ee94d608a0df996b1_4" -> "test2#destructor_scope#2993434300384255445.24bf3f4c27c1719ee94d608a0df996b1_3" ; -"test2#destructor_scope#2993434300384255445.24bf3f4c27c1719ee94d608a0df996b1_5" [label="5: Prune (true branch, if) \n n$2=*&a:_Bool [line 61, column 7]\n PRUNE(n$2, true); [line 61, column 7]\n " shape="invhouse"] +"test2#destructor_scope#2993434300384255445.24bf3f4c27c1719ee94d608a0df996b1_5" [label="5: Prune (true branch, if) \n n$3=*&a:_Bool [line 61, column 7]\n PRUNE(n$3, true); [line 61, column 7]\n " shape="invhouse"] "test2#destructor_scope#2993434300384255445.24bf3f4c27c1719ee94d608a0df996b1_5" -> "test2#destructor_scope#2993434300384255445.24bf3f4c27c1719ee94d608a0df996b1_8" ; -"test2#destructor_scope#2993434300384255445.24bf3f4c27c1719ee94d608a0df996b1_6" [label="6: Prune (false branch, if) \n n$2=*&a:_Bool [line 61, column 7]\n PRUNE(!n$2, false); [line 61, column 7]\n " shape="invhouse"] +"test2#destructor_scope#2993434300384255445.24bf3f4c27c1719ee94d608a0df996b1_6" [label="6: Prune (false branch, if) \n n$3=*&a:_Bool [line 61, column 7]\n PRUNE(!n$3, false); [line 61, column 7]\n " shape="invhouse"] "test2#destructor_scope#2993434300384255445.24bf3f4c27c1719ee94d608a0df996b1_6" -> "test2#destructor_scope#2993434300384255445.24bf3f4c27c1719ee94d608a0df996b1_10" ; -"test2#destructor_scope#2993434300384255445.24bf3f4c27c1719ee94d608a0df996b1_7" [label="7: Return Stmt \n *&return:int=1 [line 63, column 5]\n _=*&x2:destructor_scope::X [line 63, column 12]\n n$4=_fun_destructor_scope::X_~X(&x2:destructor_scope::X*) [line 63, column 12]\n _=*&x1:destructor_scope::X [line 63, column 12]\n n$6=_fun_destructor_scope::X_~X(&x1:destructor_scope::X*) [line 63, column 12]\n " shape="box"] +"test2#destructor_scope#2993434300384255445.24bf3f4c27c1719ee94d608a0df996b1_7" [label="7: Return Stmt \n *&return:int=1 [line 63, column 5]\n _=*&x2:destructor_scope::X [line 63, column 12]\n n$5=_fun_destructor_scope::X_~X(&x2:destructor_scope::X*) [line 63, column 12]\n _=*&x1:destructor_scope::X [line 63, column 12]\n n$7=_fun_destructor_scope::X_~X(&x1:destructor_scope::X*) [line 63, column 12]\n " shape="box"] "test2#destructor_scope#2993434300384255445.24bf3f4c27c1719ee94d608a0df996b1_7" -> "test2#destructor_scope#2993434300384255445.24bf3f4c27c1719ee94d608a0df996b1_2" ; -"test2#destructor_scope#2993434300384255445.24bf3f4c27c1719ee94d608a0df996b1_8" [label="8: DeclStmt \n n$7=_fun_destructor_scope::X_X(&x2:destructor_scope::X*) [line 62, column 7]\n " shape="box"] +"test2#destructor_scope#2993434300384255445.24bf3f4c27c1719ee94d608a0df996b1_8" [label="8: DeclStmt \n n$9=_fun_destructor_scope::X_X(&x2:destructor_scope::X*) [line 62, column 7]\n " shape="box"] "test2#destructor_scope#2993434300384255445.24bf3f4c27c1719ee94d608a0df996b1_8" -> "test2#destructor_scope#2993434300384255445.24bf3f4c27c1719ee94d608a0df996b1_7" ; -"test2#destructor_scope#2993434300384255445.24bf3f4c27c1719ee94d608a0df996b1_9" [label="9: Return Stmt \n *&return:int=2 [line 66, column 5]\n _=*&x3:destructor_scope::X [line 66, column 12]\n n$9=_fun_destructor_scope::X_~X(&x3:destructor_scope::X*) [line 66, column 12]\n _=*&x1:destructor_scope::X [line 66, column 12]\n n$11=_fun_destructor_scope::X_~X(&x1:destructor_scope::X*) [line 66, column 12]\n " shape="box"] +"test2#destructor_scope#2993434300384255445.24bf3f4c27c1719ee94d608a0df996b1_9" [label="9: Return Stmt \n *&return:int=2 [line 66, column 5]\n _=*&x3:destructor_scope::X [line 66, column 12]\n n$11=_fun_destructor_scope::X_~X(&x3:destructor_scope::X*) [line 66, column 12]\n _=*&x1:destructor_scope::X [line 66, column 12]\n n$13=_fun_destructor_scope::X_~X(&x1:destructor_scope::X*) [line 66, column 12]\n " shape="box"] "test2#destructor_scope#2993434300384255445.24bf3f4c27c1719ee94d608a0df996b1_9" -> "test2#destructor_scope#2993434300384255445.24bf3f4c27c1719ee94d608a0df996b1_2" ; -"test2#destructor_scope#2993434300384255445.24bf3f4c27c1719ee94d608a0df996b1_10" [label="10: DeclStmt \n n$12=_fun_destructor_scope::X_X(&x3:destructor_scope::X*) [line 65, column 7]\n " shape="box"] +"test2#destructor_scope#2993434300384255445.24bf3f4c27c1719ee94d608a0df996b1_10" [label="10: DeclStmt \n n$15=_fun_destructor_scope::X_X(&x3:destructor_scope::X*) [line 65, column 7]\n " shape="box"] "test2#destructor_scope#2993434300384255445.24bf3f4c27c1719ee94d608a0df996b1_10" -> "test2#destructor_scope#2993434300384255445.24bf3f4c27c1719ee94d608a0df996b1_9" ; -"test2#destructor_scope#2993434300384255445.24bf3f4c27c1719ee94d608a0df996b1_11" [label="11: DeclStmt \n n$13=_fun_destructor_scope::X_X(&x1:destructor_scope::X*) [line 60, column 5]\n " shape="box"] +"test2#destructor_scope#2993434300384255445.24bf3f4c27c1719ee94d608a0df996b1_11" [label="11: DeclStmt \n n$17=_fun_destructor_scope::X_X(&x1:destructor_scope::X*) [line 60, column 5]\n " shape="box"] "test2#destructor_scope#2993434300384255445.24bf3f4c27c1719ee94d608a0df996b1_11" -> "test2#destructor_scope#2993434300384255445.24bf3f4c27c1719ee94d608a0df996b1_5" ; @@ -177,7 +177,7 @@ digraph cfg { "S#S#destructor_scope#{12210000843635331998|constexpr}.cb28b79e3a75cf83720c23a83cf5bf01_2" [label="2: Exit destructor_scope::S_S \n " color=yellow style=filled] -"S#S#destructor_scope#{12210000843635331998|constexpr}.cb28b79e3a75cf83720c23a83cf5bf01_3" [label="3: Constructor Init \n n$0=*&this:destructor_scope::S* [line 21, column 8]\n n$1=_fun_destructor_scope::X_X(n$0.x1:destructor_scope::X*) [line 21, column 8]\n " shape="box"] +"S#S#destructor_scope#{12210000843635331998|constexpr}.cb28b79e3a75cf83720c23a83cf5bf01_3" [label="3: Constructor Init \n n$2=*&this:destructor_scope::S* [line 21, column 8]\n n$3=_fun_destructor_scope::X_X(n$2.x1:destructor_scope::X*) [line 21, column 8]\n " shape="box"] "S#S#destructor_scope#{12210000843635331998|constexpr}.cb28b79e3a75cf83720c23a83cf5bf01_3" -> "S#S#destructor_scope#{12210000843635331998|constexpr}.cb28b79e3a75cf83720c23a83cf5bf01_2" ; @@ -238,11 +238,11 @@ digraph cfg { "__infer_inner_destructor_~W#W#destructor_scope#(7330614824551855498).609202c747c70b122a8a5785422f4f26_3" -> "__infer_inner_destructor_~W#W#destructor_scope#(7330614824551855498).609202c747c70b122a8a5785422f4f26_2" ; -"__infer_inner_destructor_~W#W#destructor_scope#(7330614824551855498).609202c747c70b122a8a5785422f4f26_4" [label="4: Destruction \n _=*&y:destructor_scope::Y [line 36, column 3]\n n$8=_fun_destructor_scope::Y_~Y(&y:destructor_scope::Y*) [line 36, column 3]\n _=*&x:destructor_scope::X [line 36, column 3]\n n$10=_fun_destructor_scope::X_~X(&x:destructor_scope::X*) [line 36, column 3]\n " shape="box"] +"__infer_inner_destructor_~W#W#destructor_scope#(7330614824551855498).609202c747c70b122a8a5785422f4f26_4" [label="4: Destruction \n _=*&y:destructor_scope::Y [line 36, column 3]\n n$9=_fun_destructor_scope::Y_~Y(&y:destructor_scope::Y*) [line 36, column 3]\n _=*&x:destructor_scope::X [line 36, column 3]\n n$11=_fun_destructor_scope::X_~X(&x:destructor_scope::X*) [line 36, column 3]\n " shape="box"] "__infer_inner_destructor_~W#W#destructor_scope#(7330614824551855498).609202c747c70b122a8a5785422f4f26_4" -> "__infer_inner_destructor_~W#W#destructor_scope#(7330614824551855498).609202c747c70b122a8a5785422f4f26_3" ; -"__infer_inner_destructor_~W#W#destructor_scope#(7330614824551855498).609202c747c70b122a8a5785422f4f26_5" [label="5: DeclStmt \n n$11=_fun_destructor_scope::Y_Y(&y:destructor_scope::Y*) [line 35, column 7]\n " shape="box"] +"__infer_inner_destructor_~W#W#destructor_scope#(7330614824551855498).609202c747c70b122a8a5785422f4f26_5" [label="5: DeclStmt \n n$13=_fun_destructor_scope::Y_Y(&y:destructor_scope::Y*) [line 35, column 7]\n " shape="box"] "__infer_inner_destructor_~W#W#destructor_scope#(7330614824551855498).609202c747c70b122a8a5785422f4f26_5" -> "__infer_inner_destructor_~W#W#destructor_scope#(7330614824551855498).609202c747c70b122a8a5785422f4f26_4" ; @@ -250,19 +250,19 @@ digraph cfg { "__infer_inner_destructor_~W#W#destructor_scope#(7330614824551855498).609202c747c70b122a8a5785422f4f26_6" -> "__infer_inner_destructor_~W#W#destructor_scope#(7330614824551855498).609202c747c70b122a8a5785422f4f26_5" ; -"__infer_inner_destructor_~W#W#destructor_scope#(7330614824551855498).609202c747c70b122a8a5785422f4f26_7" [label="7: Prune (true branch, if) \n n$12=*&this:destructor_scope::W* [line 33, column 9]\n n$13=*n$12.b:_Bool [line 33, column 9]\n PRUNE(n$13, true); [line 33, column 9]\n " shape="invhouse"] +"__infer_inner_destructor_~W#W#destructor_scope#(7330614824551855498).609202c747c70b122a8a5785422f4f26_7" [label="7: Prune (true branch, if) \n n$14=*&this:destructor_scope::W* [line 33, column 9]\n n$15=*n$14.b:_Bool [line 33, column 9]\n PRUNE(n$15, true); [line 33, column 9]\n " shape="invhouse"] "__infer_inner_destructor_~W#W#destructor_scope#(7330614824551855498).609202c747c70b122a8a5785422f4f26_7" -> "__infer_inner_destructor_~W#W#destructor_scope#(7330614824551855498).609202c747c70b122a8a5785422f4f26_9" ; -"__infer_inner_destructor_~W#W#destructor_scope#(7330614824551855498).609202c747c70b122a8a5785422f4f26_8" [label="8: Prune (false branch, if) \n n$12=*&this:destructor_scope::W* [line 33, column 9]\n n$13=*n$12.b:_Bool [line 33, column 9]\n PRUNE(!n$13, false); [line 33, column 9]\n " shape="invhouse"] +"__infer_inner_destructor_~W#W#destructor_scope#(7330614824551855498).609202c747c70b122a8a5785422f4f26_8" [label="8: Prune (false branch, if) \n n$14=*&this:destructor_scope::W* [line 33, column 9]\n n$15=*n$14.b:_Bool [line 33, column 9]\n PRUNE(!n$15, false); [line 33, column 9]\n " shape="invhouse"] "__infer_inner_destructor_~W#W#destructor_scope#(7330614824551855498).609202c747c70b122a8a5785422f4f26_8" -> "__infer_inner_destructor_~W#W#destructor_scope#(7330614824551855498).609202c747c70b122a8a5785422f4f26_6" ; -"__infer_inner_destructor_~W#W#destructor_scope#(7330614824551855498).609202c747c70b122a8a5785422f4f26_9" [label="9: Return Stmt \n _=*&x:destructor_scope::X [line 34, column 7]\n n$15=_fun_destructor_scope::X_~X(&x:destructor_scope::X*) [line 34, column 7]\n n$16=*&this:destructor_scope::W* [line 34, column 7]\n _=*n$16.s:destructor_scope::S [line 34, column 7]\n n$22=_fun_destructor_scope::S_~S(n$16.s:destructor_scope::S*) [line 34, column 7]\n _=*n$16.y:destructor_scope::Y [line 34, column 7]\n n$20=_fun_destructor_scope::Y_~Y(n$16.y:destructor_scope::Y*) [line 34, column 7]\n _=*n$16.x:destructor_scope::X [line 34, column 7]\n n$18=_fun_destructor_scope::X_~X(n$16.x:destructor_scope::X*) [line 34, column 7]\n " shape="box"] +"__infer_inner_destructor_~W#W#destructor_scope#(7330614824551855498).609202c747c70b122a8a5785422f4f26_9" [label="9: Return Stmt \n _=*&x:destructor_scope::X [line 34, column 7]\n n$17=_fun_destructor_scope::X_~X(&x:destructor_scope::X*) [line 34, column 7]\n n$19=*&this:destructor_scope::W* [line 34, column 7]\n _=*n$19.s:destructor_scope::S [line 34, column 7]\n n$25=_fun_destructor_scope::S_~S(n$19.s:destructor_scope::S*) [line 34, column 7]\n _=*n$19.y:destructor_scope::Y [line 34, column 7]\n n$23=_fun_destructor_scope::Y_~Y(n$19.y:destructor_scope::Y*) [line 34, column 7]\n _=*n$19.x:destructor_scope::X [line 34, column 7]\n n$21=_fun_destructor_scope::X_~X(n$19.x:destructor_scope::X*) [line 34, column 7]\n " shape="box"] "__infer_inner_destructor_~W#W#destructor_scope#(7330614824551855498).609202c747c70b122a8a5785422f4f26_9" -> "__infer_inner_destructor_~W#W#destructor_scope#(7330614824551855498).609202c747c70b122a8a5785422f4f26_2" ; -"__infer_inner_destructor_~W#W#destructor_scope#(7330614824551855498).609202c747c70b122a8a5785422f4f26_10" [label="10: DeclStmt \n n$23=_fun_destructor_scope::X_X(&x:destructor_scope::X*) [line 32, column 7]\n " shape="box"] +"__infer_inner_destructor_~W#W#destructor_scope#(7330614824551855498).609202c747c70b122a8a5785422f4f26_10" [label="10: DeclStmt \n n$30=_fun_destructor_scope::X_X(&x:destructor_scope::X*) [line 32, column 7]\n " shape="box"] "__infer_inner_destructor_~W#W#destructor_scope#(7330614824551855498).609202c747c70b122a8a5785422f4f26_10" -> "__infer_inner_destructor_~W#W#destructor_scope#(7330614824551855498).609202c747c70b122a8a5785422f4f26_7" ; diff --git a/infer/tests/codetoanalyze/cpp/frontend/destructors/simple_decl.cpp.dot b/infer/tests/codetoanalyze/cpp/frontend/destructors/simple_decl.cpp.dot index 5c0470c77..3358d6e51 100644 --- a/infer/tests/codetoanalyze/cpp/frontend/destructors/simple_decl.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/frontend/destructors/simple_decl.cpp.dot @@ -7,7 +7,7 @@ digraph cfg { "__infer_inner_destructor_~A#A#(5328378654181921475).fc82b49c4db05388a691369e292a802b_2" [label="2: Exit A___infer_inner_destructor_~A \n " color=yellow style=filled] -"__infer_inner_destructor_~A#A#(5328378654181921475).fc82b49c4db05388a691369e292a802b_3" [label="3: BinaryOperatorStmt: Assign \n n$1=*&this:A* [line 12, column 10]\n *n$1.f:int=0 [line 12, column 10]\n " shape="box"] +"__infer_inner_destructor_~A#A#(5328378654181921475).fc82b49c4db05388a691369e292a802b_3" [label="3: BinaryOperatorStmt: Assign \n n$3=*&this:A* [line 12, column 10]\n *n$3.f:int=0 [line 12, column 10]\n " shape="box"] "__infer_inner_destructor_~A#A#(5328378654181921475).fc82b49c4db05388a691369e292a802b_3" -> "__infer_inner_destructor_~A#A#(5328378654181921475).fc82b49c4db05388a691369e292a802b_2" ; @@ -18,7 +18,7 @@ digraph cfg { "__infer_inner_destructor_~B#B#(7876366742276079110).fe5e2468da434006eca91d5190796d09_2" [label="2: Exit B___infer_inner_destructor_~B \n " color=yellow style=filled] -"__infer_inner_destructor_~B#B#(7876366742276079110).fe5e2468da434006eca91d5190796d09_3" [label="3: BinaryOperatorStmt: Assign \n n$1=*&this:B* [line 20, column 11]\n *n$1.f:int=1 [line 20, column 11]\n " shape="box"] +"__infer_inner_destructor_~B#B#(7876366742276079110).fe5e2468da434006eca91d5190796d09_3" [label="3: BinaryOperatorStmt: Assign \n n$3=*&this:B* [line 20, column 11]\n *n$3.f:int=1 [line 20, column 11]\n " shape="box"] "__infer_inner_destructor_~B#B#(7876366742276079110).fe5e2468da434006eca91d5190796d09_3" -> "__infer_inner_destructor_~B#B#(7876366742276079110).fe5e2468da434006eca91d5190796d09_2" ; diff --git a/infer/tests/codetoanalyze/cpp/frontend/globals/global_const1.cpp.dot b/infer/tests/codetoanalyze/cpp/frontend/globals/global_const1.cpp.dot index 476c37467..e77457ac8 100644 --- a/infer/tests/codetoanalyze/cpp/frontend/globals/global_const1.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/frontend/globals/global_const1.cpp.dot @@ -44,7 +44,7 @@ digraph cfg { "test2#3587805488049044947.69e45cfdc4e36a6f741ce3985858724b_3" -> "test2#3587805488049044947.69e45cfdc4e36a6f741ce3985858724b_2" ; -"test2#3587805488049044947.69e45cfdc4e36a6f741ce3985858724b_4" [label="4: DeclStmt \n n$1=*&#GB$v:int [line 20, column 15]\n *&local:int=n$1 [line 20, column 3]\n " shape="box"] +"test2#3587805488049044947.69e45cfdc4e36a6f741ce3985858724b_4" [label="4: DeclStmt \n n$2=*&#GB$v:int [line 20, column 15]\n *&local:int=n$2 [line 20, column 3]\n " shape="box"] "test2#3587805488049044947.69e45cfdc4e36a6f741ce3985858724b_4" -> "test2#3587805488049044947.69e45cfdc4e36a6f741ce3985858724b_3" ; diff --git a/infer/tests/codetoanalyze/cpp/frontend/globals/global_const2.cpp.dot b/infer/tests/codetoanalyze/cpp/frontend/globals/global_const2.cpp.dot index 2f1a184e7..640308191 100644 --- a/infer/tests/codetoanalyze/cpp/frontend/globals/global_const2.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/frontend/globals/global_const2.cpp.dot @@ -20,11 +20,11 @@ digraph cfg { "__infer_globals_initializer_global.bdc08c089842ce08b974b22a75daf78e_5" -> "__infer_globals_initializer_global.bdc08c089842ce08b974b22a75daf78e_7" ; -"__infer_globals_initializer_global.bdc08c089842ce08b974b22a75daf78e_6" [label="6: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int=2 [line 10, column 20]\n " shape="box"] +"__infer_globals_initializer_global.bdc08c089842ce08b974b22a75daf78e_6" [label="6: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int=2 [line 10, column 20]\n " shape="box"] "__infer_globals_initializer_global.bdc08c089842ce08b974b22a75daf78e_6" -> "__infer_globals_initializer_global.bdc08c089842ce08b974b22a75daf78e_3" ; -"__infer_globals_initializer_global.bdc08c089842ce08b974b22a75daf78e_7" [label="7: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int=3 [line 10, column 20]\n " shape="box"] +"__infer_globals_initializer_global.bdc08c089842ce08b974b22a75daf78e_7" [label="7: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int=3 [line 10, column 20]\n " shape="box"] "__infer_globals_initializer_global.bdc08c089842ce08b974b22a75daf78e_7" -> "__infer_globals_initializer_global.bdc08c089842ce08b974b22a75daf78e_3" ; diff --git a/infer/tests/codetoanalyze/cpp/frontend/include_header/include_templ.cpp.dot b/infer/tests/codetoanalyze/cpp/frontend/include_header/include_templ.cpp.dot index ba843cb2d..ccd220c96 100644 --- a/infer/tests/codetoanalyze/cpp/frontend/include_header/include_templ.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/frontend/include_header/include_templ.cpp.dot @@ -7,11 +7,11 @@ digraph cfg { "div0_B_A#16868528730428357658.9b8f4e2ce0bf464a2adbe53fb7a34f64_2" [label="2: Exit div0_B_A \n " color=yellow style=filled] -"div0_B_A#16868528730428357658.9b8f4e2ce0bf464a2adbe53fb7a34f64_3" [label="3: Call _fun_B_div0 \n _=*&b:B [line 20, column 3]\n n$1=_fun_B_div0(&b:B&) [line 20, column 3]\n " shape="box"] +"div0_B_A#16868528730428357658.9b8f4e2ce0bf464a2adbe53fb7a34f64_3" [label="3: Call _fun_B_div0 \n _=*&b:B [line 20, column 3]\n n$2=_fun_B_div0(&b:B&) [line 20, column 3]\n " shape="box"] "div0_B_A#16868528730428357658.9b8f4e2ce0bf464a2adbe53fb7a34f64_3" -> "div0_B_A#16868528730428357658.9b8f4e2ce0bf464a2adbe53fb7a34f64_2" ; -"div0_B_A#16868528730428357658.9b8f4e2ce0bf464a2adbe53fb7a34f64_4" [label="4: DeclStmt \n n$2=_fun_B_B(&b:B*) [line 19, column 8]\n " shape="box"] +"div0_B_A#16868528730428357658.9b8f4e2ce0bf464a2adbe53fb7a34f64_4" [label="4: DeclStmt \n n$3=_fun_B_B(&b:B*) [line 19, column 8]\n " shape="box"] "div0_B_A#16868528730428357658.9b8f4e2ce0bf464a2adbe53fb7a34f64_4" -> "div0_B_A#16868528730428357658.9b8f4e2ce0bf464a2adbe53fb7a34f64_3" ; @@ -22,11 +22,11 @@ digraph cfg { "div0_B_int#1022620961131326491.1d61c8d3035b9223f336f2b0e83b1cd8_2" [label="2: Exit div0_B_int \n " color=yellow style=filled] -"div0_B_int#1022620961131326491.1d61c8d3035b9223f336f2b0e83b1cd8_3" [label="3: Call _fun_B_div0 \n _=*&b:B [line 15, column 3]\n n$1=_fun_B_div0(&b:B&) [line 15, column 3]\n " shape="box"] +"div0_B_int#1022620961131326491.1d61c8d3035b9223f336f2b0e83b1cd8_3" [label="3: Call _fun_B_div0 \n _=*&b:B [line 15, column 3]\n n$2=_fun_B_div0(&b:B&) [line 15, column 3]\n " shape="box"] "div0_B_int#1022620961131326491.1d61c8d3035b9223f336f2b0e83b1cd8_3" -> "div0_B_int#1022620961131326491.1d61c8d3035b9223f336f2b0e83b1cd8_2" ; -"div0_B_int#1022620961131326491.1d61c8d3035b9223f336f2b0e83b1cd8_4" [label="4: DeclStmt \n n$2=_fun_B_B(&b:B*) [line 14, column 10]\n " shape="box"] +"div0_B_int#1022620961131326491.1d61c8d3035b9223f336f2b0e83b1cd8_4" [label="4: DeclStmt \n n$3=_fun_B_B(&b:B*) [line 14, column 10]\n " shape="box"] "div0_B_int#1022620961131326491.1d61c8d3035b9223f336f2b0e83b1cd8_4" -> "div0_B_int#1022620961131326491.1d61c8d3035b9223f336f2b0e83b1cd8_3" ; @@ -59,7 +59,7 @@ digraph cfg { "div0_templ_A#15777392272986999827.c3e6f124c5921f718c539c423038b21a_2" [label="2: Exit div0_templ_A \n " color=yellow style=filled] -"div0_templ_A#15777392272986999827.c3e6f124c5921f718c539c423038b21a_3" [label="3: Call _fun_div0_templ \n n$0=_fun_div0_templ() [line 25, column 22]\n " shape="box"] +"div0_templ_A#15777392272986999827.c3e6f124c5921f718c539c423038b21a_3" [label="3: Call _fun_div0_templ \n n$1=_fun_div0_templ() [line 25, column 22]\n " shape="box"] "div0_templ_A#15777392272986999827.c3e6f124c5921f718c539c423038b21a_3" -> "div0_templ_A#15777392272986999827.c3e6f124c5921f718c539c423038b21a_2" ; @@ -70,7 +70,7 @@ digraph cfg { "div0_templ_int#6723189882400805523.156da066b41947aa58ec7afb9551dc47_2" [label="2: Exit div0_templ_int \n " color=yellow style=filled] -"div0_templ_int#6723189882400805523.156da066b41947aa58ec7afb9551dc47_3" [label="3: Call _fun_div0_templ \n n$0=_fun_div0_templ() [line 23, column 25]\n " shape="box"] +"div0_templ_int#6723189882400805523.156da066b41947aa58ec7afb9551dc47_3" [label="3: Call _fun_div0_templ \n n$1=_fun_div0_templ() [line 23, column 25]\n " shape="box"] "div0_templ_int#6723189882400805523.156da066b41947aa58ec7afb9551dc47_3" -> "div0_templ_int#6723189882400805523.156da066b41947aa58ec7afb9551dc47_2" ; diff --git a/infer/tests/codetoanalyze/cpp/frontend/initialization/inheriting_constructor.cpp.dot b/infer/tests/codetoanalyze/cpp/frontend/initialization/inheriting_constructor.cpp.dot index ae01968eb..96351cb51 100644 --- a/infer/tests/codetoanalyze/cpp/frontend/initialization/inheriting_constructor.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/frontend/initialization/inheriting_constructor.cpp.dot @@ -7,7 +7,7 @@ digraph cfg { "main.fad58de7366495db4650cfefac2fcd61_2" [label="2: Exit main \n " color=yellow style=filled] -"main.fad58de7366495db4650cfefac2fcd61_3" [label="3: DeclStmt \n n$0=_fun_B_A(&b:B*,5:int) [line 18, column 16]\n " shape="box"] +"main.fad58de7366495db4650cfefac2fcd61_3" [label="3: DeclStmt \n n$1=_fun_B_A(&b:B*,5:int) [line 18, column 16]\n " shape="box"] "main.fad58de7366495db4650cfefac2fcd61_3" -> "main.fad58de7366495db4650cfefac2fcd61_2" ; @@ -25,7 +25,7 @@ digraph cfg { "A#B#{18258347749069050656}.8db05fedcc195ce779d29dca399277d8_2" [label="2: Exit B_A \n " color=yellow style=filled] -"A#B#{18258347749069050656}.8db05fedcc195ce779d29dca399277d8_3" [label="3: Constructor Init \n n$0=*&this:B* [line 15, column 12]\n n$2=*&__param_0:int [line 15, column 12]\n n$1=_fun_A_A(n$0:B*,n$2:int) [line 15, column 12]\n " shape="box"] +"A#B#{18258347749069050656}.8db05fedcc195ce779d29dca399277d8_3" [label="3: Constructor Init \n n$2=*&this:B* [line 15, column 12]\n n$4=*&__param_0:int [line 15, column 12]\n n$3=_fun_A_A(n$2:B*,n$4:int) [line 15, column 12]\n " shape="box"] "A#B#{18258347749069050656}.8db05fedcc195ce779d29dca399277d8_3" -> "A#B#{18258347749069050656}.8db05fedcc195ce779d29dca399277d8_2" ; diff --git a/infer/tests/codetoanalyze/cpp/frontend/initialization/init_list.cpp.dot b/infer/tests/codetoanalyze/cpp/frontend/initialization/init_list.cpp.dot index 459ef1625..200e8cdf5 100644 --- a/infer/tests/codetoanalyze/cpp/frontend/initialization/init_list.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/frontend/initialization/init_list.cpp.dot @@ -7,7 +7,7 @@ digraph cfg { "list_init#init_list#18348854466346904105.0126b9f1f80f91b73d5fbdbf2bc60754_2" [label="2: Exit init_list::list_init \n " color=yellow style=filled] -"list_init#init_list#18348854466346904105.0126b9f1f80f91b73d5fbdbf2bc60754_3" [label="3: DeclStmt \n *&ty[0].z:int=1 [line 50, column 14]\n *&ty[0].x.a:int=2 [line 50, column 18]\n *&ty[0].x.p:int*=null [line 50, column 18]\n n$0=_fun_init_list::Y_Y(&ty[1]:init_list::Y*,&y:init_list::Y&) [line 50, column 33]\n n$1=*&yref:init_list::Y& [line 50, column 36]\n n$2=_fun_init_list::Y_Y(&ty[2]:init_list::Y*,n$1:init_list::Y&) [line 50, column 36]\n " shape="box"] +"list_init#init_list#18348854466346904105.0126b9f1f80f91b73d5fbdbf2bc60754_3" [label="3: DeclStmt \n *&ty[0].z:int=1 [line 50, column 14]\n *&ty[0].x.a:int=2 [line 50, column 18]\n *&ty[0].x.p:int*=null [line 50, column 18]\n n$1=_fun_init_list::Y_Y(&ty[1]:init_list::Y*,&y:init_list::Y&) [line 50, column 33]\n n$2=*&yref:init_list::Y& [line 50, column 36]\n n$3=_fun_init_list::Y_Y(&ty[2]:init_list::Y*,n$2:init_list::Y&) [line 50, column 36]\n " shape="box"] "list_init#init_list#18348854466346904105.0126b9f1f80f91b73d5fbdbf2bc60754_3" -> "list_init#init_list#18348854466346904105.0126b9f1f80f91b73d5fbdbf2bc60754_2" ; @@ -15,7 +15,7 @@ digraph cfg { "list_init#init_list#18348854466346904105.0126b9f1f80f91b73d5fbdbf2bc60754_4" -> "list_init#init_list#18348854466346904105.0126b9f1f80f91b73d5fbdbf2bc60754_3" ; -"list_init#init_list#18348854466346904105.0126b9f1f80f91b73d5fbdbf2bc60754_5" [label="5: DeclStmt \n n$3=_fun_init_list::Y_Y(&y:init_list::Y*) [line 48, column 5]\n " shape="box"] +"list_init#init_list#18348854466346904105.0126b9f1f80f91b73d5fbdbf2bc60754_5" [label="5: DeclStmt \n n$4=_fun_init_list::Y_Y(&y:init_list::Y*) [line 48, column 5]\n " shape="box"] "list_init#init_list#18348854466346904105.0126b9f1f80f91b73d5fbdbf2bc60754_5" -> "list_init#init_list#18348854466346904105.0126b9f1f80f91b73d5fbdbf2bc60754_4" ; @@ -34,7 +34,7 @@ digraph cfg { "record_init#init_list#9390182661430352809.a0bac2a3cf71c0b7c450ce49d030845f_3" -> "record_init#init_list#9390182661430352809.a0bac2a3cf71c0b7c450ce49d030845f_2" ; -"record_init#init_list#9390182661430352809.a0bac2a3cf71c0b7c450ce49d030845f_4" [label="4: DeclStmt \n n$4=_fun_init_list::C_C(&c:init_list::C*,1:int,2:int,&x:init_list::X&) [line 43, column 5]\n " shape="box"] +"record_init#init_list#9390182661430352809.a0bac2a3cf71c0b7c450ce49d030845f_4" [label="4: DeclStmt \n n$5=_fun_init_list::C_C(&c:init_list::C*,1:int,2:int,&x:init_list::X&) [line 43, column 5]\n " shape="box"] "record_init#init_list#9390182661430352809.a0bac2a3cf71c0b7c450ce49d030845f_4" -> "record_init#init_list#9390182661430352809.a0bac2a3cf71c0b7c450ce49d030845f_3" ; @@ -42,7 +42,7 @@ digraph cfg { "record_init#init_list#9390182661430352809.a0bac2a3cf71c0b7c450ce49d030845f_5" -> "record_init#init_list#9390182661430352809.a0bac2a3cf71c0b7c450ce49d030845f_4" ; -"record_init#init_list#9390182661430352809.a0bac2a3cf71c0b7c450ce49d030845f_6" [label="6: DeclStmt \n *&y1.z:int=1 [line 40, column 7]\n n$5=_fun_init_list::X_X(&y1.x:init_list::X*,&x:init_list::X&) [line 40, column 11]\n " shape="box"] +"record_init#init_list#9390182661430352809.a0bac2a3cf71c0b7c450ce49d030845f_6" [label="6: DeclStmt \n *&y1.z:int=1 [line 40, column 7]\n n$6=_fun_init_list::X_X(&y1.x:init_list::X*,&x:init_list::X&) [line 40, column 11]\n " shape="box"] "record_init#init_list#9390182661430352809.a0bac2a3cf71c0b7c450ce49d030845f_6" -> "record_init#init_list#9390182661430352809.a0bac2a3cf71c0b7c450ce49d030845f_5" ; @@ -80,7 +80,7 @@ digraph cfg { "zero_init_record#init_list#7364160241041626579.8baaea62666796dca7b4a7b11bf4f2bb_3" -> "zero_init_record#init_list#7364160241041626579.8baaea62666796dca7b4a7b11bf4f2bb_2" ; -"zero_init_record#init_list#7364160241041626579.8baaea62666796dca7b4a7b11bf4f2bb_4" [label="4: DeclStmt \n n$2=_fun_init_list::C_C(&c:init_list::C*) [line 35, column 5]\n " shape="box"] +"zero_init_record#init_list#7364160241041626579.8baaea62666796dca7b4a7b11bf4f2bb_4" [label="4: DeclStmt \n n$3=_fun_init_list::C_C(&c:init_list::C*) [line 35, column 5]\n " shape="box"] "zero_init_record#init_list#7364160241041626579.8baaea62666796dca7b4a7b11bf4f2bb_4" -> "zero_init_record#init_list#7364160241041626579.8baaea62666796dca7b4a7b11bf4f2bb_3" ; @@ -95,11 +95,11 @@ digraph cfg { "C#C#init_list#{17260491501636558446}.47559f88c2f7136a0ceafb8b6a3b78ad_2" [label="2: Exit init_list::C_C \n " color=yellow style=filled] -"C#C#init_list#{17260491501636558446}.47559f88c2f7136a0ceafb8b6a3b78ad_3" [label="3: Constructor Init \n n$0=*&this:init_list::C* [line 24, column 43]\n n$1=*&x:init_list::X const & [line 24, column 45]\n n$2=_fun_init_list::X_X(n$0.x:init_list::X*,n$1:init_list::X const &) [line 24, column 43]\n " shape="box"] +"C#C#init_list#{17260491501636558446}.47559f88c2f7136a0ceafb8b6a3b78ad_3" [label="3: Constructor Init \n n$2=*&this:init_list::C* [line 24, column 43]\n n$3=*&x:init_list::X const & [line 24, column 45]\n n$4=_fun_init_list::X_X(n$2.x:init_list::X*,n$3:init_list::X const &) [line 24, column 43]\n " shape="box"] "C#C#init_list#{17260491501636558446}.47559f88c2f7136a0ceafb8b6a3b78ad_3" -> "C#C#init_list#{17260491501636558446}.47559f88c2f7136a0ceafb8b6a3b78ad_2" ; -"C#C#init_list#{17260491501636558446}.47559f88c2f7136a0ceafb8b6a3b78ad_4" [label="4: Constructor Init \n n$3=*&this:init_list::C* [line 24, column 33]\n n$4=*&a:int [line 24, column 35]\n n$5=*&b:int [line 24, column 39]\n *n$3.z:int=(n$4 + n$5) [line 24, column 33]\n " shape="box"] +"C#C#init_list#{17260491501636558446}.47559f88c2f7136a0ceafb8b6a3b78ad_4" [label="4: Constructor Init \n n$5=*&this:init_list::C* [line 24, column 33]\n n$6=*&a:int [line 24, column 35]\n n$7=*&b:int [line 24, column 39]\n *n$5.z:int=(n$6 + n$7) [line 24, column 33]\n " shape="box"] "C#C#init_list#{17260491501636558446}.47559f88c2f7136a0ceafb8b6a3b78ad_4" -> "C#C#init_list#{17260491501636558446}.47559f88c2f7136a0ceafb8b6a3b78ad_3" ; @@ -110,7 +110,7 @@ digraph cfg { "C#C#init_list#{85179409263577607}.c3811ab730f90bddf1eefdc7ec6030b7_2" [label="2: Exit init_list::C_C \n " color=yellow style=filled] -"C#C#init_list#{85179409263577607}.c3811ab730f90bddf1eefdc7ec6030b7_3" [label="3: Constructor Init \n n$0=*&this:init_list::C* [line 21, column 6]\n *n$0.x.a:int=0 [line 21, column 7]\n *n$0.x.p:int*=null [line 21, column 7]\n " shape="box"] +"C#C#init_list#{85179409263577607}.c3811ab730f90bddf1eefdc7ec6030b7_3" [label="3: Constructor Init \n n$2=*&this:init_list::C* [line 21, column 6]\n *n$2.x.a:int=0 [line 21, column 7]\n *n$2.x.p:int*=null [line 21, column 7]\n " shape="box"] "C#C#init_list#{85179409263577607}.c3811ab730f90bddf1eefdc7ec6030b7_3" -> "C#C#init_list#{85179409263577607}.c3811ab730f90bddf1eefdc7ec6030b7_2" ; @@ -121,11 +121,11 @@ digraph cfg { "X#X#init_list#{10362293117207912357|constexpr}.5b774fb6d82792ac0bbbdbe09cdd5093_2" [label="2: Exit init_list::X_X \n " color=yellow style=filled] -"X#X#init_list#{10362293117207912357|constexpr}.5b774fb6d82792ac0bbbdbe09cdd5093_3" [label="3: Constructor Init \n n$0=*&this:init_list::X* [line 10, column 8]\n n$1=*&__param_0:init_list::X const & [line 10, column 8]\n n$2=*n$1.p:int* [line 10, column 8]\n *n$0.p:int*=n$2 [line 10, column 8]\n " shape="box"] +"X#X#init_list#{10362293117207912357|constexpr}.5b774fb6d82792ac0bbbdbe09cdd5093_3" [label="3: Constructor Init \n n$2=*&this:init_list::X* [line 10, column 8]\n n$3=*&__param_0:init_list::X const & [line 10, column 8]\n n$4=*n$3.p:int* [line 10, column 8]\n *n$2.p:int*=n$4 [line 10, column 8]\n " shape="box"] "X#X#init_list#{10362293117207912357|constexpr}.5b774fb6d82792ac0bbbdbe09cdd5093_3" -> "X#X#init_list#{10362293117207912357|constexpr}.5b774fb6d82792ac0bbbdbe09cdd5093_2" ; -"X#X#init_list#{10362293117207912357|constexpr}.5b774fb6d82792ac0bbbdbe09cdd5093_4" [label="4: Constructor Init \n n$3=*&this:init_list::X* [line 10, column 8]\n n$4=*&__param_0:init_list::X const & [line 10, column 8]\n n$5=*n$4.a:int [line 10, column 8]\n *n$3.a:int=n$5 [line 10, column 8]\n " shape="box"] +"X#X#init_list#{10362293117207912357|constexpr}.5b774fb6d82792ac0bbbdbe09cdd5093_4" [label="4: Constructor Init \n n$5=*&this:init_list::X* [line 10, column 8]\n n$6=*&__param_0:init_list::X const & [line 10, column 8]\n n$7=*n$6.a:int [line 10, column 8]\n *n$5.a:int=n$7 [line 10, column 8]\n " shape="box"] "X#X#init_list#{10362293117207912357|constexpr}.5b774fb6d82792ac0bbbdbe09cdd5093_4" -> "X#X#init_list#{10362293117207912357|constexpr}.5b774fb6d82792ac0bbbdbe09cdd5093_3" ; @@ -143,11 +143,11 @@ digraph cfg { "Y#Y#init_list#{7965727998464233870|constexpr}.d9c0a01aa3d67701ff6c6bdd6dd01f2d_2" [label="2: Exit init_list::Y_Y \n " color=yellow style=filled] -"Y#Y#init_list#{7965727998464233870|constexpr}.d9c0a01aa3d67701ff6c6bdd6dd01f2d_3" [label="3: Constructor Init \n n$0=*&this:init_list::Y* [line 14, column 8]\n n$1=*&__param_0:init_list::Y const & [line 14, column 8]\n n$2=_fun_init_list::X_X(n$0.x:init_list::X*,n$1.x:init_list::X&) [line 14, column 8]\n " shape="box"] +"Y#Y#init_list#{7965727998464233870|constexpr}.d9c0a01aa3d67701ff6c6bdd6dd01f2d_3" [label="3: Constructor Init \n n$2=*&this:init_list::Y* [line 14, column 8]\n n$3=*&__param_0:init_list::Y const & [line 14, column 8]\n n$4=_fun_init_list::X_X(n$2.x:init_list::X*,n$3.x:init_list::X&) [line 14, column 8]\n " shape="box"] "Y#Y#init_list#{7965727998464233870|constexpr}.d9c0a01aa3d67701ff6c6bdd6dd01f2d_3" -> "Y#Y#init_list#{7965727998464233870|constexpr}.d9c0a01aa3d67701ff6c6bdd6dd01f2d_2" ; -"Y#Y#init_list#{7965727998464233870|constexpr}.d9c0a01aa3d67701ff6c6bdd6dd01f2d_4" [label="4: Constructor Init \n n$3=*&this:init_list::Y* [line 14, column 8]\n n$4=*&__param_0:init_list::Y const & [line 14, column 8]\n n$5=*n$4.z:int [line 14, column 8]\n *n$3.z:int=n$5 [line 14, column 8]\n " shape="box"] +"Y#Y#init_list#{7965727998464233870|constexpr}.d9c0a01aa3d67701ff6c6bdd6dd01f2d_4" [label="4: Constructor Init \n n$5=*&this:init_list::Y* [line 14, column 8]\n n$6=*&__param_0:init_list::Y const & [line 14, column 8]\n n$7=*n$6.z:int [line 14, column 8]\n *n$5.z:int=n$7 [line 14, column 8]\n " shape="box"] "Y#Y#init_list#{7965727998464233870|constexpr}.d9c0a01aa3d67701ff6c6bdd6dd01f2d_4" -> "Y#Y#init_list#{7965727998464233870|constexpr}.d9c0a01aa3d67701ff6c6bdd6dd01f2d_3" ; @@ -158,7 +158,7 @@ digraph cfg { "Y#Y#init_list#{9181657051811221357}.e663651ceaf28a9c0d59b3f85499f583_2" [label="2: Exit init_list::Y_Y \n " color=yellow style=filled] -"Y#Y#init_list#{9181657051811221357}.e663651ceaf28a9c0d59b3f85499f583_3" [label="3: Constructor Init \n n$0=*&this:init_list::Y* [line 14, column 8]\n n$1=_fun_init_list::X_X(n$0.x:init_list::X*) [line 14, column 8]\n " shape="box"] +"Y#Y#init_list#{9181657051811221357}.e663651ceaf28a9c0d59b3f85499f583_3" [label="3: Constructor Init \n n$2=*&this:init_list::Y* [line 14, column 8]\n n$3=_fun_init_list::X_X(n$2.x:init_list::X*) [line 14, column 8]\n " shape="box"] "Y#Y#init_list#{9181657051811221357}.e663651ceaf28a9c0d59b3f85499f583_3" -> "Y#Y#init_list#{9181657051811221357}.e663651ceaf28a9c0d59b3f85499f583_2" ; diff --git a/infer/tests/codetoanalyze/cpp/frontend/literals/scalar_value_init.cpp.dot b/infer/tests/codetoanalyze/cpp/frontend/literals/scalar_value_init.cpp.dot index b1411781c..962f583fc 100644 --- a/infer/tests/codetoanalyze/cpp/frontend/literals/scalar_value_init.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/frontend/literals/scalar_value_init.cpp.dot @@ -51,7 +51,7 @@ digraph cfg { "get#8296845500290212976.bb4a1c12bef114b00039399debc79878_2" [label="2: Exit get \n " color=yellow style=filled] -"get#8296845500290212976.bb4a1c12bef114b00039399debc79878_3" [label="3: Return Stmt \n *&return:void=-1 [line 14, column 3]\n " shape="box"] +"get#8296845500290212976.bb4a1c12bef114b00039399debc79878_3" [label="3: Return Stmt \n *&return:void=0 [line 14, column 3]\n " shape="box"] "get#8296845500290212976.bb4a1c12bef114b00039399debc79878_3" -> "get#8296845500290212976.bb4a1c12bef114b00039399debc79878_2" ; @@ -66,23 +66,23 @@ digraph cfg { "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_3" -> "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_2" ; -"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_4" [label="4: DeclStmt \n n$0=_fun_get() [line 22, column 12]\n *&x:int=n$0 [line 22, column 3]\n " shape="box"] +"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_4" [label="4: DeclStmt \n n$1=_fun_get() [line 22, column 12]\n *&x:int=n$1 [line 22, column 3]\n " shape="box"] "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_4" -> "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_3" ; -"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_5" [label="5: Call _fun_get \n n$1=_fun_get() [line 21, column 3]\n " shape="box"] +"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_5" [label="5: Call _fun_get \n n$2=_fun_get() [line 21, column 3]\n " shape="box"] "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_5" -> "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_4" ; -"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_6" [label="6: DeclStmt \n n$2=_fun_get() [line 20, column 15]\n *&fp:float*=n$2 [line 20, column 3]\n " shape="box"] +"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_6" [label="6: DeclStmt \n n$3=_fun_get() [line 20, column 15]\n *&fp:float*=n$3 [line 20, column 3]\n " shape="box"] "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_6" -> "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_5" ; -"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_7" [label="7: DeclStmt \n n$3=_fun_get() [line 19, column 13]\n *&f:float=n$3 [line 19, column 3]\n " shape="box"] +"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_7" [label="7: DeclStmt \n n$4=_fun_get() [line 19, column 13]\n *&f:float=n$4 [line 19, column 3]\n " shape="box"] "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_7" -> "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_6" ; -"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_8" [label="8: DeclStmt \n n$4=_fun_get() [line 18, column 11]\n *&i:int=n$4 [line 18, column 3]\n " shape="box"] +"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_8" [label="8: DeclStmt \n n$5=_fun_get() [line 18, column 11]\n *&i:int=n$5 [line 18, column 3]\n " shape="box"] "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_8" -> "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_7" ; diff --git a/infer/tests/codetoanalyze/cpp/frontend/loops/do_while.cpp.dot b/infer/tests/codetoanalyze/cpp/frontend/loops/do_while.cpp.dot index b37f7bf56..3038f2d8e 100644 --- a/infer/tests/codetoanalyze/cpp/frontend/loops/do_while.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/frontend/loops/do_while.cpp.dot @@ -15,15 +15,15 @@ digraph cfg { "test1#18336337528475129646.aabe036d545fef7e4b4a130ea21a585c_4" -> "test1#18336337528475129646.aabe036d545fef7e4b4a130ea21a585c_13" ; -"test1#18336337528475129646.aabe036d545fef7e4b4a130ea21a585c_5" [label="5: Prune (true branch, do while) \n n$1=*&b:_Bool [line 21, column 12]\n PRUNE(n$1, true); [line 21, column 12]\n " shape="invhouse"] +"test1#18336337528475129646.aabe036d545fef7e4b4a130ea21a585c_5" [label="5: Prune (true branch, do while) \n n$2=*&b:_Bool [line 21, column 12]\n PRUNE(n$2, true); [line 21, column 12]\n " shape="invhouse"] "test1#18336337528475129646.aabe036d545fef7e4b4a130ea21a585c_5" -> "test1#18336337528475129646.aabe036d545fef7e4b4a130ea21a585c_4" ; -"test1#18336337528475129646.aabe036d545fef7e4b4a130ea21a585c_6" [label="6: Prune (false branch, do while) \n n$1=*&b:_Bool [line 21, column 12]\n PRUNE(!n$1, false); [line 21, column 12]\n " shape="invhouse"] +"test1#18336337528475129646.aabe036d545fef7e4b4a130ea21a585c_6" [label="6: Prune (false branch, do while) \n n$2=*&b:_Bool [line 21, column 12]\n PRUNE(!n$2, false); [line 21, column 12]\n " shape="invhouse"] "test1#18336337528475129646.aabe036d545fef7e4b4a130ea21a585c_6" -> "test1#18336337528475129646.aabe036d545fef7e4b4a130ea21a585c_3" ; -"test1#18336337528475129646.aabe036d545fef7e4b4a130ea21a585c_7" [label="7: BinaryOperatorStmt: Assign \n n$2=*&x:int [line 20, column 9]\n *&x:int=(n$2 + 4) [line 20, column 5]\n " shape="box"] +"test1#18336337528475129646.aabe036d545fef7e4b4a130ea21a585c_7" [label="7: BinaryOperatorStmt: Assign \n n$4=*&x:int [line 20, column 9]\n *&x:int=(n$4 + 4) [line 20, column 5]\n " shape="box"] "test1#18336337528475129646.aabe036d545fef7e4b4a130ea21a585c_7" -> "test1#18336337528475129646.aabe036d545fef7e4b4a130ea21a585c_5" ; @@ -32,24 +32,24 @@ digraph cfg { "test1#18336337528475129646.aabe036d545fef7e4b4a130ea21a585c_8" -> "test1#18336337528475129646.aabe036d545fef7e4b4a130ea21a585c_7" ; -"test1#18336337528475129646.aabe036d545fef7e4b4a130ea21a585c_9" [label="9: Prune (true branch, if) \n n$3=*&a:_Bool [line 14, column 9]\n PRUNE(n$3, true); [line 14, column 9]\n " shape="invhouse"] +"test1#18336337528475129646.aabe036d545fef7e4b4a130ea21a585c_9" [label="9: Prune (true branch, if) \n n$5=*&a:_Bool [line 14, column 9]\n PRUNE(n$5, true); [line 14, column 9]\n " shape="invhouse"] "test1#18336337528475129646.aabe036d545fef7e4b4a130ea21a585c_9" -> "test1#18336337528475129646.aabe036d545fef7e4b4a130ea21a585c_11" ; -"test1#18336337528475129646.aabe036d545fef7e4b4a130ea21a585c_10" [label="10: Prune (false branch, if) \n n$3=*&a:_Bool [line 14, column 9]\n PRUNE(!n$3, false); [line 14, column 9]\n " shape="invhouse"] +"test1#18336337528475129646.aabe036d545fef7e4b4a130ea21a585c_10" [label="10: Prune (false branch, if) \n n$5=*&a:_Bool [line 14, column 9]\n PRUNE(!n$5, false); [line 14, column 9]\n " shape="invhouse"] "test1#18336337528475129646.aabe036d545fef7e4b4a130ea21a585c_10" -> "test1#18336337528475129646.aabe036d545fef7e4b4a130ea21a585c_12" ; -"test1#18336337528475129646.aabe036d545fef7e4b4a130ea21a585c_11" [label="11: BinaryOperatorStmt: Assign \n n$4=*&x:int [line 15, column 11]\n *&x:int=(n$4 + 2) [line 15, column 7]\n " shape="box"] +"test1#18336337528475129646.aabe036d545fef7e4b4a130ea21a585c_11" [label="11: BinaryOperatorStmt: Assign \n n$9=*&x:int [line 15, column 11]\n *&x:int=(n$9 + 2) [line 15, column 7]\n " shape="box"] "test1#18336337528475129646.aabe036d545fef7e4b4a130ea21a585c_11" -> "test1#18336337528475129646.aabe036d545fef7e4b4a130ea21a585c_5" ; "test1#18336337528475129646.aabe036d545fef7e4b4a130ea21a585c_11" -> "test1#18336337528475129646.aabe036d545fef7e4b4a130ea21a585c_6" ; -"test1#18336337528475129646.aabe036d545fef7e4b4a130ea21a585c_12" [label="12: BinaryOperatorStmt: Assign \n n$5=*&x:int [line 18, column 11]\n *&x:int=(n$5 + 3) [line 18, column 7]\n " shape="box"] +"test1#18336337528475129646.aabe036d545fef7e4b4a130ea21a585c_12" [label="12: BinaryOperatorStmt: Assign \n n$11=*&x:int [line 18, column 11]\n *&x:int=(n$11 + 3) [line 18, column 7]\n " shape="box"] "test1#18336337528475129646.aabe036d545fef7e4b4a130ea21a585c_12" -> "test1#18336337528475129646.aabe036d545fef7e4b4a130ea21a585c_8" ; -"test1#18336337528475129646.aabe036d545fef7e4b4a130ea21a585c_13" [label="13: BinaryOperatorStmt: Assign \n n$6=*&x:int [line 13, column 9]\n *&x:int=(n$6 + 1) [line 13, column 5]\n " shape="box"] +"test1#18336337528475129646.aabe036d545fef7e4b4a130ea21a585c_13" [label="13: BinaryOperatorStmt: Assign \n n$13=*&x:int [line 13, column 9]\n *&x:int=(n$13 + 1) [line 13, column 5]\n " shape="box"] "test1#18336337528475129646.aabe036d545fef7e4b4a130ea21a585c_13" -> "test1#18336337528475129646.aabe036d545fef7e4b4a130ea21a585c_9" ; diff --git a/infer/tests/codetoanalyze/cpp/frontend/loops/foreach1.cpp.dot b/infer/tests/codetoanalyze/cpp/frontend/loops/foreach1.cpp.dot index 33d0cb894..fbd702d3d 100644 --- a/infer/tests/codetoanalyze/cpp/frontend/loops/foreach1.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/frontend/loops/foreach1.cpp.dot @@ -24,11 +24,11 @@ digraph cfg { "operator!=#4715710375716659667.eb4126b3edd381f3092a9e38275754d4_6" -> "operator!=#4715710375716659667.eb4126b3edd381f3092a9e38275754d4_8" ; -"operator!=#4715710375716659667.eb4126b3edd381f3092a9e38275754d4_7" [label="7: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:_Bool=1 [line 21, column 52]\n " shape="box"] +"operator!=#4715710375716659667.eb4126b3edd381f3092a9e38275754d4_7" [label="7: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:_Bool=1 [line 21, column 52]\n " shape="box"] "operator!=#4715710375716659667.eb4126b3edd381f3092a9e38275754d4_7" -> "operator!=#4715710375716659667.eb4126b3edd381f3092a9e38275754d4_3" ; -"operator!=#4715710375716659667.eb4126b3edd381f3092a9e38275754d4_8" [label="8: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:_Bool=0 [line 21, column 52]\n " shape="box"] +"operator!=#4715710375716659667.eb4126b3edd381f3092a9e38275754d4_8" [label="8: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:_Bool=0 [line 21, column 52]\n " shape="box"] "operator!=#4715710375716659667.eb4126b3edd381f3092a9e38275754d4_8" -> "operator!=#4715710375716659667.eb4126b3edd381f3092a9e38275754d4_3" ; @@ -36,7 +36,7 @@ digraph cfg { "operator!=#4715710375716659667.eb4126b3edd381f3092a9e38275754d4_9" -> "operator!=#4715710375716659667.eb4126b3edd381f3092a9e38275754d4_2" ; -"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_1" [label="1: Start test\nFormals: \nLocals: __end:iterator 0$?%__sil_tmpSIL_materialize_temp__n$0:iterator __begin:iterator 0$?%__sil_tmpSIL_materialize_temp__n$6:iterator 0$?%__sil_tmp__temp_return_n$13:iterator 0$?%__sil_tmp__temp_construct_n$15:iterator 0$?%__sil_tmp__temp_construct_n$17:iterator temp:int value:int __range:vec& vector:vec \n DECLARE_LOCALS(&return,&__end,&0$?%__sil_tmpSIL_materialize_temp__n$0,&__begin,&0$?%__sil_tmpSIL_materialize_temp__n$6,&0$?%__sil_tmp__temp_return_n$13,&0$?%__sil_tmp__temp_construct_n$15,&0$?%__sil_tmp__temp_construct_n$17,&temp,&value,&__range,&vector); [line 35, column 1]\n " color=yellow style=filled] +"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_1" [label="1: Start test\nFormals: \nLocals: __end:iterator 0$?%__sil_tmpSIL_materialize_temp__n$3:iterator __begin:iterator 0$?%__sil_tmpSIL_materialize_temp__n$9:iterator 0$?%__sil_tmp__temp_return_n$17:iterator 0$?%__sil_tmp__temp_construct_n$19:iterator 0$?%__sil_tmp__temp_construct_n$21:iterator temp:int value:int __range:vec& vector:vec \n DECLARE_LOCALS(&return,&__end,&0$?%__sil_tmpSIL_materialize_temp__n$3,&__begin,&0$?%__sil_tmpSIL_materialize_temp__n$9,&0$?%__sil_tmp__temp_return_n$17,&0$?%__sil_tmp__temp_construct_n$19,&0$?%__sil_tmp__temp_construct_n$21,&temp,&value,&__range,&vector); [line 35, column 1]\n " color=yellow style=filled] "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_1" -> "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_13" ; @@ -47,36 +47,36 @@ digraph cfg { "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_3" -> "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_7" ; -"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_4" [label="4: DeclStmt \n n$1=*&__range:vec& [line 37, column 18]\n _=*n$1:vec [line 37, column 18]\n n$4=_fun_vec_end(n$1:vec&,&0$?%__sil_tmpSIL_materialize_temp__n$0:iterator*) [line 37, column 18]\n n$5=_fun_iterator_iterator(&__end:iterator*,&0$?%__sil_tmpSIL_materialize_temp__n$0:iterator&) [line 37, column 18]\n " shape="box"] +"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_4" [label="4: DeclStmt \n n$4=*&__range:vec& [line 37, column 18]\n _=*n$4:vec [line 37, column 18]\n n$7=_fun_vec_end(n$4:vec&,&0$?%__sil_tmpSIL_materialize_temp__n$3:iterator*) [line 37, column 18]\n n$8=_fun_iterator_iterator(&__end:iterator*,&0$?%__sil_tmpSIL_materialize_temp__n$3:iterator&) [line 37, column 18]\n " shape="box"] "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_4" -> "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_3" ; -"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_5" [label="5: DeclStmt \n n$7=*&__range:vec& [line 37, column 18]\n _=*n$7:vec [line 37, column 18]\n n$10=_fun_vec_begin(n$7:vec&,&0$?%__sil_tmpSIL_materialize_temp__n$6:iterator*) [line 37, column 18]\n n$11=_fun_iterator_iterator(&__begin:iterator*,&0$?%__sil_tmpSIL_materialize_temp__n$6:iterator&) [line 37, column 18]\n " shape="box"] +"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_5" [label="5: DeclStmt \n n$10=*&__range:vec& [line 37, column 18]\n _=*n$10:vec [line 37, column 18]\n n$13=_fun_vec_begin(n$10:vec&,&0$?%__sil_tmpSIL_materialize_temp__n$9:iterator*) [line 37, column 18]\n n$14=_fun_iterator_iterator(&__begin:iterator*,&0$?%__sil_tmpSIL_materialize_temp__n$9:iterator&) [line 37, column 18]\n " shape="box"] "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_5" -> "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_4" ; -"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_6" [label="6: Call _fun_iterator_operator++ \n n$14=_fun_iterator_operator++(&__begin:iterator&,&0$?%__sil_tmp__temp_return_n$13:iterator*) [line 37, column 18]\n " shape="box"] +"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_6" [label="6: Call _fun_iterator_operator++ \n n$18=_fun_iterator_operator++(&__begin:iterator&,&0$?%__sil_tmp__temp_return_n$17:iterator*) [line 37, column 18]\n " shape="box"] "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_6" -> "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_3" ; -"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_7" [label="7: Call _fun_operator!= \n n$16=_fun_iterator_iterator(&0$?%__sil_tmp__temp_construct_n$15:iterator*,&__begin:iterator&) [line 37, column 18]\n n$18=_fun_iterator_iterator(&0$?%__sil_tmp__temp_construct_n$17:iterator*,&__end:iterator&) [line 37, column 18]\n n$19=_fun_operator!=(&0$?%__sil_tmp__temp_construct_n$15:iterator,&0$?%__sil_tmp__temp_construct_n$17:iterator) [line 37, column 18]\n " shape="box"] +"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_7" [label="7: Call _fun_operator!= \n n$20=_fun_iterator_iterator(&0$?%__sil_tmp__temp_construct_n$19:iterator*,&__begin:iterator&) [line 37, column 18]\n n$22=_fun_iterator_iterator(&0$?%__sil_tmp__temp_construct_n$21:iterator*,&__end:iterator&) [line 37, column 18]\n n$23=_fun_operator!=(&0$?%__sil_tmp__temp_construct_n$19:iterator,&0$?%__sil_tmp__temp_construct_n$21:iterator) [line 37, column 18]\n " shape="box"] "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_7" -> "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_8" ; "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_7" -> "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_9" ; -"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_8" [label="8: Prune (true branch, for loop) \n PRUNE(n$19, true); [line 37, column 18]\n " shape="invhouse"] +"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_8" [label="8: Prune (true branch, for loop) \n PRUNE(n$23, true); [line 37, column 18]\n " shape="invhouse"] "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_8" -> "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_11" ; -"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_9" [label="9: Prune (false branch, for loop) \n PRUNE(!n$19, false); [line 37, column 18]\n " shape="invhouse"] +"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_9" [label="9: Prune (false branch, for loop) \n PRUNE(!n$23, false); [line 37, column 18]\n " shape="invhouse"] "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_9" -> "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_2" ; -"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_10" [label="10: DeclStmt \n n$20=*&value:int [line 38, column 16]\n n$21=*&value:int [line 38, column 24]\n *&temp:int=((n$20 * n$21) + 10) [line 38, column 5]\n " shape="box"] +"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_10" [label="10: DeclStmt \n n$26=*&value:int [line 38, column 16]\n n$27=*&value:int [line 38, column 24]\n *&temp:int=((n$26 * n$27) + 10) [line 38, column 5]\n " shape="box"] "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_10" -> "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_6" ; -"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_11" [label="11: DeclStmt \n n$22=_fun_iterator_operator*(&__begin:iterator&) [line 37, column 18]\n *&value:int=n$22 [line 37, column 8]\n " shape="box"] +"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_11" [label="11: DeclStmt \n n$29=_fun_iterator_operator*(&__begin:iterator&) [line 37, column 18]\n *&value:int=n$29 [line 37, column 8]\n " shape="box"] "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_11" -> "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_10" ; @@ -84,7 +84,7 @@ digraph cfg { "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_12" -> "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_5" ; -"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_13" [label="13: DeclStmt \n n$23=_fun_vec_vec(&vector:vec*,10:int) [line 36, column 7]\n " shape="box"] +"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_13" [label="13: DeclStmt \n n$31=_fun_vec_vec(&vector:vec*,10:int) [line 36, column 7]\n " shape="box"] "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_13" -> "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_12" ; @@ -117,7 +117,7 @@ digraph cfg { "iterator#iterator#{11413353760466671846|constexpr}.a278508d3bccc69caf1a1db6246cf788_2" [label="2: Exit iterator_iterator \n " color=yellow style=filled] -"iterator#iterator#{11413353760466671846|constexpr}.a278508d3bccc69caf1a1db6246cf788_3" [label="3: Constructor Init \n n$0=*&this:iterator* [line 11, column 8]\n n$1=*&__param_0:iterator const & [line 11, column 8]\n n$2=*n$1.val:int [line 11, column 8]\n *n$0.val:int=n$2 [line 11, column 8]\n " shape="box"] +"iterator#iterator#{11413353760466671846|constexpr}.a278508d3bccc69caf1a1db6246cf788_3" [label="3: Constructor Init \n n$2=*&this:iterator* [line 11, column 8]\n n$3=*&__param_0:iterator const & [line 11, column 8]\n n$4=*n$3.val:int [line 11, column 8]\n *n$2.val:int=n$4 [line 11, column 8]\n " shape="box"] "iterator#iterator#{11413353760466671846|constexpr}.a278508d3bccc69caf1a1db6246cf788_3" -> "iterator#iterator#{11413353760466671846|constexpr}.a278508d3bccc69caf1a1db6246cf788_2" ; @@ -135,7 +135,7 @@ digraph cfg { "iterator#iterator#{3083368405611515834|constexpr}.86fcbefb2af88c097bfa7e085c4b4f40_2" [label="2: Exit iterator_iterator \n " color=yellow style=filled] -"iterator#iterator#{3083368405611515834|constexpr}.86fcbefb2af88c097bfa7e085c4b4f40_3" [label="3: Constructor Init \n n$0=*&this:iterator* [line 11, column 8]\n n$1=*&__param_0:iterator& [line 11, column 8]\n n$2=*n$1.val:int [line 11, column 8]\n *n$0.val:int=n$2 [line 11, column 8]\n " shape="box"] +"iterator#iterator#{3083368405611515834|constexpr}.86fcbefb2af88c097bfa7e085c4b4f40_3" [label="3: Constructor Init \n n$2=*&this:iterator* [line 11, column 8]\n n$3=*&__param_0:iterator& [line 11, column 8]\n n$4=*n$3.val:int [line 11, column 8]\n *n$2.val:int=n$4 [line 11, column 8]\n " shape="box"] "iterator#iterator#{3083368405611515834|constexpr}.86fcbefb2af88c097bfa7e085c4b4f40_3" -> "iterator#iterator#{3083368405611515834|constexpr}.86fcbefb2af88c097bfa7e085c4b4f40_2" ; @@ -161,7 +161,7 @@ digraph cfg { "operator++#iterator#(14034081864165661659).8f8d47641e87add0a7463df1d1fa7b15_3" -> "operator++#iterator#(14034081864165661659).8f8d47641e87add0a7463df1d1fa7b15_2" ; -"operator++#iterator#(14034081864165661659).8f8d47641e87add0a7463df1d1fa7b15_4" [label="4: BinaryOperatorStmt: AddAssign \n n$3=*&this:iterator* [line 14, column 5]\n n$4=*n$3.val:int [line 14, column 5]\n *n$3.val:int=(n$4 + 1) [line 14, column 5]\n " shape="box"] +"operator++#iterator#(14034081864165661659).8f8d47641e87add0a7463df1d1fa7b15_4" [label="4: BinaryOperatorStmt: AddAssign \n n$4=*&this:iterator* [line 14, column 5]\n n$5=*n$4.val:int [line 14, column 5]\n *n$4.val:int=(n$5 + 1) [line 14, column 5]\n " shape="box"] "operator++#iterator#(14034081864165661659).8f8d47641e87add0a7463df1d1fa7b15_4" -> "operator++#iterator#(14034081864165661659).8f8d47641e87add0a7463df1d1fa7b15_3" ; @@ -172,19 +172,19 @@ digraph cfg { "vec#vec#{13876720186060950809}.c3c9a518fcec87e97d6b52a59f13d428_2" [label="2: Exit vec_vec \n " color=yellow style=filled] -"vec#vec#{13876720186060950809}.c3c9a518fcec87e97d6b52a59f13d428_3" [label="3: BinaryOperatorStmt: Assign \n n$0=*&this:vec* [line 26, column 5]\n n$1=*&size:int [line 26, column 16]\n *n$0.end_.val:int=n$1 [line 26, column 5]\n " shape="box"] +"vec#vec#{13876720186060950809}.c3c9a518fcec87e97d6b52a59f13d428_3" [label="3: BinaryOperatorStmt: Assign \n n$1=*&this:vec* [line 26, column 5]\n n$2=*&size:int [line 26, column 16]\n *n$1.end_.val:int=n$2 [line 26, column 5]\n " shape="box"] "vec#vec#{13876720186060950809}.c3c9a518fcec87e97d6b52a59f13d428_3" -> "vec#vec#{13876720186060950809}.c3c9a518fcec87e97d6b52a59f13d428_2" ; -"vec#vec#{13876720186060950809}.c3c9a518fcec87e97d6b52a59f13d428_4" [label="4: BinaryOperatorStmt: Assign \n n$2=*&this:vec* [line 25, column 5]\n *n$2.begin_.val:int=0 [line 25, column 5]\n " shape="box"] +"vec#vec#{13876720186060950809}.c3c9a518fcec87e97d6b52a59f13d428_4" [label="4: BinaryOperatorStmt: Assign \n n$3=*&this:vec* [line 25, column 5]\n *n$3.begin_.val:int=0 [line 25, column 5]\n " shape="box"] "vec#vec#{13876720186060950809}.c3c9a518fcec87e97d6b52a59f13d428_4" -> "vec#vec#{13876720186060950809}.c3c9a518fcec87e97d6b52a59f13d428_3" ; -"vec#vec#{13876720186060950809}.c3c9a518fcec87e97d6b52a59f13d428_5" [label="5: Constructor Init \n n$3=*&this:vec* [line 24, column 3]\n n$4=_fun_iterator_iterator(n$3.end_:iterator*) [line 24, column 3]\n " shape="box"] +"vec#vec#{13876720186060950809}.c3c9a518fcec87e97d6b52a59f13d428_5" [label="5: Constructor Init \n n$4=*&this:vec* [line 24, column 3]\n n$5=_fun_iterator_iterator(n$4.end_:iterator*) [line 24, column 3]\n " shape="box"] "vec#vec#{13876720186060950809}.c3c9a518fcec87e97d6b52a59f13d428_5" -> "vec#vec#{13876720186060950809}.c3c9a518fcec87e97d6b52a59f13d428_4" ; -"vec#vec#{13876720186060950809}.c3c9a518fcec87e97d6b52a59f13d428_6" [label="6: Constructor Init \n n$5=*&this:vec* [line 24, column 3]\n n$6=_fun_iterator_iterator(n$5.begin_:iterator*) [line 24, column 3]\n " shape="box"] +"vec#vec#{13876720186060950809}.c3c9a518fcec87e97d6b52a59f13d428_6" [label="6: Constructor Init \n n$6=*&this:vec* [line 24, column 3]\n n$7=_fun_iterator_iterator(n$6.begin_:iterator*) [line 24, column 3]\n " shape="box"] "vec#vec#{13876720186060950809}.c3c9a518fcec87e97d6b52a59f13d428_6" -> "vec#vec#{13876720186060950809}.c3c9a518fcec87e97d6b52a59f13d428_5" ; diff --git a/infer/tests/codetoanalyze/cpp/frontend/nestedoperators/assign_in_condition.cpp.dot b/infer/tests/codetoanalyze/cpp/frontend/nestedoperators/assign_in_condition.cpp.dot index a5b2a4065..dbead7e04 100644 --- a/infer/tests/codetoanalyze/cpp/frontend/nestedoperators/assign_in_condition.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/frontend/nestedoperators/assign_in_condition.cpp.dot @@ -15,16 +15,16 @@ digraph cfg { "foo#2836494104225061820.259bb50e98efa97b98306a2c09f474f8_4" -> "foo#2836494104225061820.259bb50e98efa97b98306a2c09f474f8_3" ; -"foo#2836494104225061820.259bb50e98efa97b98306a2c09f474f8_5" [label="5: BinaryOperatorStmt: Assign \n n$0=*&p:int* [line 11, column 9]\n *n$0:int=0 [line 11, column 8]\n " shape="box"] +"foo#2836494104225061820.259bb50e98efa97b98306a2c09f474f8_5" [label="5: BinaryOperatorStmt: Assign \n n$1=*&p:int* [line 11, column 9]\n *n$1:int=0 [line 11, column 8]\n " shape="box"] "foo#2836494104225061820.259bb50e98efa97b98306a2c09f474f8_5" -> "foo#2836494104225061820.259bb50e98efa97b98306a2c09f474f8_6" ; "foo#2836494104225061820.259bb50e98efa97b98306a2c09f474f8_5" -> "foo#2836494104225061820.259bb50e98efa97b98306a2c09f474f8_7" ; -"foo#2836494104225061820.259bb50e98efa97b98306a2c09f474f8_6" [label="6: Prune (true branch, if) \n n$1=*n$0:int [line 11, column 7]\n PRUNE(n$1, true); [line 11, column 7]\n " shape="invhouse"] +"foo#2836494104225061820.259bb50e98efa97b98306a2c09f474f8_6" [label="6: Prune (true branch, if) \n n$2=*n$1:int [line 11, column 7]\n PRUNE(n$2, true); [line 11, column 7]\n " shape="invhouse"] "foo#2836494104225061820.259bb50e98efa97b98306a2c09f474f8_6" -> "foo#2836494104225061820.259bb50e98efa97b98306a2c09f474f8_8" ; -"foo#2836494104225061820.259bb50e98efa97b98306a2c09f474f8_7" [label="7: Prune (false branch, if) \n n$1=*n$0:int [line 11, column 7]\n PRUNE(!n$1, false); [line 11, column 7]\n " shape="invhouse"] +"foo#2836494104225061820.259bb50e98efa97b98306a2c09f474f8_7" [label="7: Prune (false branch, if) \n n$2=*n$1:int [line 11, column 7]\n PRUNE(!n$2, false); [line 11, column 7]\n " shape="invhouse"] "foo#2836494104225061820.259bb50e98efa97b98306a2c09f474f8_7" -> "foo#2836494104225061820.259bb50e98efa97b98306a2c09f474f8_4" ; diff --git a/infer/tests/codetoanalyze/cpp/frontend/nestedoperators/assign_with_increment.cpp.dot b/infer/tests/codetoanalyze/cpp/frontend/nestedoperators/assign_with_increment.cpp.dot index 9139de060..b9113c435 100644 --- a/infer/tests/codetoanalyze/cpp/frontend/nestedoperators/assign_with_increment.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/frontend/nestedoperators/assign_with_increment.cpp.dot @@ -7,19 +7,19 @@ digraph cfg { "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_2" [label="2: Exit test \n " color=yellow style=filled] -"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_3" [label="3: DeclStmt \n n$0=*&a:int [line 15, column 11]\n *&a:int=(n$0 - 1) [line 15, column 11]\n *&e:int=n$0 [line 15, column 3]\n " shape="box"] +"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_3" [label="3: DeclStmt \n n$1=*&a:int [line 15, column 11]\n *&a:int=(n$1 - 1) [line 15, column 11]\n *&e:int=n$1 [line 15, column 3]\n " shape="box"] "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_3" -> "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_2" ; -"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_4" [label="4: DeclStmt \n n$1=*&a:int [line 14, column 11]\n *&a:int=(n$1 - 1) [line 14, column 11]\n n$2=*&a:int [line 14, column 11]\n *&d:int=n$2 [line 14, column 3]\n " shape="box"] +"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_4" [label="4: DeclStmt \n n$2=*&a:int [line 14, column 11]\n *&a:int=(n$2 - 1) [line 14, column 11]\n n$3=*&a:int [line 14, column 11]\n *&d:int=n$3 [line 14, column 3]\n " shape="box"] "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_4" -> "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_3" ; -"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_5" [label="5: DeclStmt \n n$3=*&a:int [line 13, column 11]\n *&a:int=(n$3 + 1) [line 13, column 11]\n *&c:int=n$3 [line 13, column 3]\n " shape="box"] +"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_5" [label="5: DeclStmt \n n$4=*&a:int [line 13, column 11]\n *&a:int=(n$4 + 1) [line 13, column 11]\n *&c:int=n$4 [line 13, column 3]\n " shape="box"] "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_5" -> "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_4" ; -"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_6" [label="6: DeclStmt \n n$4=*&a:int [line 12, column 11]\n *&a:int=(n$4 + 1) [line 12, column 11]\n n$5=*&a:int [line 12, column 11]\n *&b:int=n$5 [line 12, column 3]\n " shape="box"] +"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_6" [label="6: DeclStmt \n n$5=*&a:int [line 12, column 11]\n *&a:int=(n$5 + 1) [line 12, column 11]\n n$6=*&a:int [line 12, column 11]\n *&b:int=n$6 [line 12, column 3]\n " shape="box"] "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_6" -> "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_5" ; diff --git a/infer/tests/codetoanalyze/cpp/frontend/nestedoperators/union.cpp.dot b/infer/tests/codetoanalyze/cpp/frontend/nestedoperators/union.cpp.dot index a72aafb32..888a7be27 100644 --- a/infer/tests/codetoanalyze/cpp/frontend/nestedoperators/union.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/frontend/nestedoperators/union.cpp.dot @@ -22,11 +22,11 @@ digraph cfg { "main.fad58de7366495db4650cfefac2fcd61_3" -> "main.fad58de7366495db4650cfefac2fcd61_2" ; -"main.fad58de7366495db4650cfefac2fcd61_4" [label="4: BinaryOperatorStmt: Assign \n n$0=*&#GB$x:anonymous_struct_nestedoperators_union.cpp:10:1* [line 34, column 11]\n n$1=*n$0.b:int [line 34, column 11]\n *&#GB$y.g.w:int=n$1 [line 34, column 3]\n " shape="box"] +"main.fad58de7366495db4650cfefac2fcd61_4" [label="4: BinaryOperatorStmt: Assign \n n$1=*&#GB$x:anonymous_struct_nestedoperators_union.cpp:10:1* [line 34, column 11]\n n$2=*n$1.b:int [line 34, column 11]\n *&#GB$y.g.w:int=n$2 [line 34, column 3]\n " shape="box"] "main.fad58de7366495db4650cfefac2fcd61_4" -> "main.fad58de7366495db4650cfefac2fcd61_3" ; -"main.fad58de7366495db4650cfefac2fcd61_5" [label="5: BinaryOperatorStmt: Assign \n n$2=*&#GB$y.f:int [line 32, column 11]\n *&#GB$y.g.u:int=n$2 [line 32, column 3]\n " shape="box"] +"main.fad58de7366495db4650cfefac2fcd61_5" [label="5: BinaryOperatorStmt: Assign \n n$3=*&#GB$y.f:int [line 32, column 11]\n *&#GB$y.g.u:int=n$3 [line 32, column 3]\n " shape="box"] "main.fad58de7366495db4650cfefac2fcd61_5" -> "main.fad58de7366495db4650cfefac2fcd61_4" ; @@ -34,7 +34,7 @@ digraph cfg { "main.fad58de7366495db4650cfefac2fcd61_6" -> "main.fad58de7366495db4650cfefac2fcd61_5" ; -"main.fad58de7366495db4650cfefac2fcd61_7" [label="7: BinaryOperatorStmt: Assign \n n$3=*&#GB$x:anonymous_struct_nestedoperators_union.cpp:10:1* [line 30, column 3]\n *n$3.a:int=1 [line 30, column 3]\n " shape="box"] +"main.fad58de7366495db4650cfefac2fcd61_7" [label="7: BinaryOperatorStmt: Assign \n n$4=*&#GB$x:anonymous_struct_nestedoperators_union.cpp:10:1* [line 30, column 3]\n *n$4.a:int=1 [line 30, column 3]\n " shape="box"] "main.fad58de7366495db4650cfefac2fcd61_7" -> "main.fad58de7366495db4650cfefac2fcd61_6" ; diff --git a/infer/tests/codetoanalyze/cpp/frontend/vectors/shuffle_vector.cpp b/infer/tests/codetoanalyze/cpp/frontend/vectors/shuffle_vector.cpp index 474780290..8f52452a7 100644 --- a/infer/tests/codetoanalyze/cpp/frontend/vectors/shuffle_vector.cpp +++ b/infer/tests/codetoanalyze/cpp/frontend/vectors/shuffle_vector.cpp @@ -1,5 +1,5 @@ /* -1;95;0c * Copyright (c) 2017 - present Facebook, Inc. + * Copyright (c) 2017 - present Facebook, Inc. * All rights reserved. * * This source code is licensed under the BSD style license found in the diff --git a/infer/tests/codetoanalyze/cpp/frontend/vectors/shuffle_vector.cpp.dot b/infer/tests/codetoanalyze/cpp/frontend/vectors/shuffle_vector.cpp.dot index dc247e4c0..131e82e2c 100644 --- a/infer/tests/codetoanalyze/cpp/frontend/vectors/shuffle_vector.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/frontend/vectors/shuffle_vector.cpp.dot @@ -7,7 +7,7 @@ digraph cfg { "simple#17639603251097432993.e5c9feb95ecff69f23df6ce422f34819_2" [label="2: Exit simple \n " color=yellow style=filled] -"simple#17639603251097432993.e5c9feb95ecff69f23df6ce422f34819_3" [label="3: Return Stmt \n n$0=_fun___infer_skip(&vec:void&) [line 12, column 44]\n n$1=*-1:void [line 12, column 44]\n *&return:void=n$1 [line 12, column 37]\n " shape="box"] +"simple#17639603251097432993.e5c9feb95ecff69f23df6ce422f34819_3" [label="3: Return Stmt \n n$0=_fun___infer_skip(&vec:void&) [line 12, column 44]\n n$1=*n$0:void [line 12, column 44]\n *&return:void=n$1 [line 12, column 37]\n " shape="box"] "simple#17639603251097432993.e5c9feb95ecff69f23df6ce422f34819_3" -> "simple#17639603251097432993.e5c9feb95ecff69f23df6ce422f34819_2" ; diff --git a/infer/tests/codetoanalyze/cpp/shared/attributes/annotate.cpp.dot b/infer/tests/codetoanalyze/cpp/shared/attributes/annotate.cpp.dot index f1dbdfe1a..dcd11d6f9 100644 --- a/infer/tests/codetoanalyze/cpp/shared/attributes/annotate.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/shared/attributes/annotate.cpp.dot @@ -130,11 +130,11 @@ digraph cfg { "getPtr_null_deref1#10685326586135592861.d05a7735c36f759fec001951cdc51035_3" -> "getPtr_null_deref1#10685326586135592861.d05a7735c36f759fec001951cdc51035_2" ; -"getPtr_null_deref1#10685326586135592861.d05a7735c36f759fec001951cdc51035_4" [label="4: Call _fun_TranslateAsPtr_setPtr \n _=*&t:int* [line 91, column 3]\n n$4=_fun_TranslateAsPtr_setPtr(&t:int*&,null:int*) [line 91, column 3]\n " shape="box"] +"getPtr_null_deref1#10685326586135592861.d05a7735c36f759fec001951cdc51035_4" [label="4: Call _fun_TranslateAsPtr_setPtr \n _=*&t:int* [line 91, column 3]\n n$5=_fun_TranslateAsPtr_setPtr(&t:int*&,null:int*) [line 91, column 3]\n " shape="box"] "getPtr_null_deref1#10685326586135592861.d05a7735c36f759fec001951cdc51035_4" -> "getPtr_null_deref1#10685326586135592861.d05a7735c36f759fec001951cdc51035_3" ; -"getPtr_null_deref1#10685326586135592861.d05a7735c36f759fec001951cdc51035_5" [label="5: DeclStmt \n n$6=_fun_TranslateAsPtr_TranslateAsPtr(&t:int**,null:int*) [line 90, column 23]\n n$5=*&t:int* [line 90, column 23]\n " shape="box"] +"getPtr_null_deref1#10685326586135592861.d05a7735c36f759fec001951cdc51035_5" [label="5: DeclStmt \n n$7=_fun_TranslateAsPtr_TranslateAsPtr(&t:int**,null:int*) [line 90, column 23]\n n$6=*&t:int* [line 90, column 23]\n " shape="box"] "getPtr_null_deref1#10685326586135592861.d05a7735c36f759fec001951cdc51035_5" -> "getPtr_null_deref1#10685326586135592861.d05a7735c36f759fec001951cdc51035_4" ; @@ -149,11 +149,11 @@ digraph cfg { "getPtr_null_deref2#10682492045158632578.de31216813faa493761802feb6f997f2_3" -> "getPtr_null_deref2#10682492045158632578.de31216813faa493761802feb6f997f2_2" ; -"getPtr_null_deref2#10682492045158632578.de31216813faa493761802feb6f997f2_4" [label="4: Call _fun_TranslateAsPtr_setPtr \n _=*&t:int* [line 97, column 3]\n n$4=_fun_TranslateAsPtr_setPtr(&t:int*&,null:int*) [line 97, column 3]\n " shape="box"] +"getPtr_null_deref2#10682492045158632578.de31216813faa493761802feb6f997f2_4" [label="4: Call _fun_TranslateAsPtr_setPtr \n _=*&t:int* [line 97, column 3]\n n$5=_fun_TranslateAsPtr_setPtr(&t:int*&,null:int*) [line 97, column 3]\n " shape="box"] "getPtr_null_deref2#10682492045158632578.de31216813faa493761802feb6f997f2_4" -> "getPtr_null_deref2#10682492045158632578.de31216813faa493761802feb6f997f2_3" ; -"getPtr_null_deref2#10682492045158632578.de31216813faa493761802feb6f997f2_5" [label="5: DeclStmt \n n$6=_fun_TranslateAsPtr_TranslateAsPtr(&t:int**,null:int*) [line 96, column 23]\n n$5=*&t:int* [line 96, column 23]\n " shape="box"] +"getPtr_null_deref2#10682492045158632578.de31216813faa493761802feb6f997f2_5" [label="5: DeclStmt \n n$7=_fun_TranslateAsPtr_TranslateAsPtr(&t:int**,null:int*) [line 96, column 23]\n n$6=*&t:int* [line 96, column 23]\n " shape="box"] "getPtr_null_deref2#10682492045158632578.de31216813faa493761802feb6f997f2_5" -> "getPtr_null_deref2#10682492045158632578.de31216813faa493761802feb6f997f2_4" ; @@ -168,11 +168,11 @@ digraph cfg { "getPtr_ok_deref#15608473391071478730.49e56fac5bd82269c2093a9c1e438200_3" -> "getPtr_ok_deref#15608473391071478730.49e56fac5bd82269c2093a9c1e438200_2" ; -"getPtr_ok_deref#15608473391071478730.49e56fac5bd82269c2093a9c1e438200_4" [label="4: Call _fun_TranslateAsPtr_setPtr \n _=*&t:int* [line 104, column 3]\n n$4=_fun_TranslateAsPtr_setPtr(&t:int*&,&a:int*) [line 104, column 3]\n " shape="box"] +"getPtr_ok_deref#15608473391071478730.49e56fac5bd82269c2093a9c1e438200_4" [label="4: Call _fun_TranslateAsPtr_setPtr \n _=*&t:int* [line 104, column 3]\n n$5=_fun_TranslateAsPtr_setPtr(&t:int*&,&a:int*) [line 104, column 3]\n " shape="box"] "getPtr_ok_deref#15608473391071478730.49e56fac5bd82269c2093a9c1e438200_4" -> "getPtr_ok_deref#15608473391071478730.49e56fac5bd82269c2093a9c1e438200_3" ; -"getPtr_ok_deref#15608473391071478730.49e56fac5bd82269c2093a9c1e438200_5" [label="5: DeclStmt \n n$6=_fun_TranslateAsPtr_TranslateAsPtr(&t:int**,null:int*) [line 103, column 23]\n n$5=*&t:int* [line 103, column 23]\n " shape="box"] +"getPtr_ok_deref#15608473391071478730.49e56fac5bd82269c2093a9c1e438200_5" [label="5: DeclStmt \n n$7=_fun_TranslateAsPtr_TranslateAsPtr(&t:int**,null:int*) [line 103, column 23]\n n$6=*&t:int* [line 103, column 23]\n " shape="box"] "getPtr_ok_deref#15608473391071478730.49e56fac5bd82269c2093a9c1e438200_5" -> "getPtr_ok_deref#15608473391071478730.49e56fac5bd82269c2093a9c1e438200_4" ; @@ -191,11 +191,11 @@ digraph cfg { "getRef_null_deref1#4264296374417396044.654d24b6c4af017d90a5ceff83c121c2_3" -> "getRef_null_deref1#4264296374417396044.654d24b6c4af017d90a5ceff83c121c2_2" ; -"getRef_null_deref1#4264296374417396044.654d24b6c4af017d90a5ceff83c121c2_4" [label="4: Call _fun_TranslateAsPtr_setPtr \n _=*&t:int* [line 129, column 3]\n n$4=_fun_TranslateAsPtr_setPtr(&t:int*&,null:int*) [line 129, column 3]\n " shape="box"] +"getRef_null_deref1#4264296374417396044.654d24b6c4af017d90a5ceff83c121c2_4" [label="4: Call _fun_TranslateAsPtr_setPtr \n _=*&t:int* [line 129, column 3]\n n$5=_fun_TranslateAsPtr_setPtr(&t:int*&,null:int*) [line 129, column 3]\n " shape="box"] "getRef_null_deref1#4264296374417396044.654d24b6c4af017d90a5ceff83c121c2_4" -> "getRef_null_deref1#4264296374417396044.654d24b6c4af017d90a5ceff83c121c2_3" ; -"getRef_null_deref1#4264296374417396044.654d24b6c4af017d90a5ceff83c121c2_5" [label="5: DeclStmt \n n$6=_fun_TranslateAsPtr_TranslateAsPtr(&t:int**,null:int*) [line 128, column 23]\n n$5=*&t:int* [line 128, column 23]\n " shape="box"] +"getRef_null_deref1#4264296374417396044.654d24b6c4af017d90a5ceff83c121c2_5" [label="5: DeclStmt \n n$7=_fun_TranslateAsPtr_TranslateAsPtr(&t:int**,null:int*) [line 128, column 23]\n n$6=*&t:int* [line 128, column 23]\n " shape="box"] "getRef_null_deref1#4264296374417396044.654d24b6c4af017d90a5ceff83c121c2_5" -> "getRef_null_deref1#4264296374417396044.654d24b6c4af017d90a5ceff83c121c2_4" ; @@ -210,11 +210,11 @@ digraph cfg { "getRef_null_deref2#4263471740696427019.45bed1239309132cabf29f4cdd81f3cc_3" -> "getRef_null_deref2#4263471740696427019.45bed1239309132cabf29f4cdd81f3cc_2" ; -"getRef_null_deref2#4263471740696427019.45bed1239309132cabf29f4cdd81f3cc_4" [label="4: Call _fun_TranslateAsPtr_setPtr \n _=*&t:int* [line 135, column 3]\n n$4=_fun_TranslateAsPtr_setPtr(&t:int*&,null:int*) [line 135, column 3]\n " shape="box"] +"getRef_null_deref2#4263471740696427019.45bed1239309132cabf29f4cdd81f3cc_4" [label="4: Call _fun_TranslateAsPtr_setPtr \n _=*&t:int* [line 135, column 3]\n n$5=_fun_TranslateAsPtr_setPtr(&t:int*&,null:int*) [line 135, column 3]\n " shape="box"] "getRef_null_deref2#4263471740696427019.45bed1239309132cabf29f4cdd81f3cc_4" -> "getRef_null_deref2#4263471740696427019.45bed1239309132cabf29f4cdd81f3cc_3" ; -"getRef_null_deref2#4263471740696427019.45bed1239309132cabf29f4cdd81f3cc_5" [label="5: DeclStmt \n n$6=_fun_TranslateAsPtr_TranslateAsPtr(&t:int**,null:int*) [line 134, column 23]\n n$5=*&t:int* [line 134, column 23]\n " shape="box"] +"getRef_null_deref2#4263471740696427019.45bed1239309132cabf29f4cdd81f3cc_5" [label="5: DeclStmt \n n$7=_fun_TranslateAsPtr_TranslateAsPtr(&t:int**,null:int*) [line 134, column 23]\n n$6=*&t:int* [line 134, column 23]\n " shape="box"] "getRef_null_deref2#4263471740696427019.45bed1239309132cabf29f4cdd81f3cc_5" -> "getRef_null_deref2#4263471740696427019.45bed1239309132cabf29f4cdd81f3cc_4" ; @@ -229,11 +229,11 @@ digraph cfg { "getRef_ok_deref#10111201054364386601.e514c65ac6978a31376e6032d81b3d16_3" -> "getRef_ok_deref#10111201054364386601.e514c65ac6978a31376e6032d81b3d16_2" ; -"getRef_ok_deref#10111201054364386601.e514c65ac6978a31376e6032d81b3d16_4" [label="4: Call _fun_TranslateAsPtr_setPtr \n _=*&t:int* [line 142, column 3]\n n$4=_fun_TranslateAsPtr_setPtr(&t:int*&,&a:int*) [line 142, column 3]\n " shape="box"] +"getRef_ok_deref#10111201054364386601.e514c65ac6978a31376e6032d81b3d16_4" [label="4: Call _fun_TranslateAsPtr_setPtr \n _=*&t:int* [line 142, column 3]\n n$5=_fun_TranslateAsPtr_setPtr(&t:int*&,&a:int*) [line 142, column 3]\n " shape="box"] "getRef_ok_deref#10111201054364386601.e514c65ac6978a31376e6032d81b3d16_4" -> "getRef_ok_deref#10111201054364386601.e514c65ac6978a31376e6032d81b3d16_3" ; -"getRef_ok_deref#10111201054364386601.e514c65ac6978a31376e6032d81b3d16_5" [label="5: DeclStmt \n n$6=_fun_TranslateAsPtr_TranslateAsPtr(&t:int**,null:int*) [line 141, column 23]\n n$5=*&t:int* [line 141, column 23]\n " shape="box"] +"getRef_ok_deref#10111201054364386601.e514c65ac6978a31376e6032d81b3d16_5" [label="5: DeclStmt \n n$7=_fun_TranslateAsPtr_TranslateAsPtr(&t:int**,null:int*) [line 141, column 23]\n n$6=*&t:int* [line 141, column 23]\n " shape="box"] "getRef_ok_deref#10111201054364386601.e514c65ac6978a31376e6032d81b3d16_5" -> "getRef_ok_deref#10111201054364386601.e514c65ac6978a31376e6032d81b3d16_4" ; @@ -248,15 +248,15 @@ digraph cfg { "operator_star_null_deref1#14187169119337849630.74372e24230903d2d4cacecae74f498d_2" [label="2: Exit operator_star_null_deref1 \n " color=yellow style=filled] -"operator_star_null_deref1#14187169119337849630.74372e24230903d2d4cacecae74f498d_3" [label="3: Return Stmt \n n$0=*&t:int* [line 111, column 10]\n n$1=*n$0:int [line 111, column 10]\n *&return:int=n$1 [line 111, column 3]\n " shape="box"] +"operator_star_null_deref1#14187169119337849630.74372e24230903d2d4cacecae74f498d_3" [label="3: Return Stmt \n n$1=*&t:int* [line 111, column 10]\n n$2=*n$1:int [line 111, column 10]\n *&return:int=n$2 [line 111, column 3]\n " shape="box"] "operator_star_null_deref1#14187169119337849630.74372e24230903d2d4cacecae74f498d_3" -> "operator_star_null_deref1#14187169119337849630.74372e24230903d2d4cacecae74f498d_2" ; -"operator_star_null_deref1#14187169119337849630.74372e24230903d2d4cacecae74f498d_4" [label="4: Call _fun_TranslateAsPtr_setPtr \n _=*&t:int* [line 110, column 3]\n n$3=_fun_TranslateAsPtr_setPtr(&t:int*&,null:int*) [line 110, column 3]\n " shape="box"] +"operator_star_null_deref1#14187169119337849630.74372e24230903d2d4cacecae74f498d_4" [label="4: Call _fun_TranslateAsPtr_setPtr \n _=*&t:int* [line 110, column 3]\n n$5=_fun_TranslateAsPtr_setPtr(&t:int*&,null:int*) [line 110, column 3]\n " shape="box"] "operator_star_null_deref1#14187169119337849630.74372e24230903d2d4cacecae74f498d_4" -> "operator_star_null_deref1#14187169119337849630.74372e24230903d2d4cacecae74f498d_3" ; -"operator_star_null_deref1#14187169119337849630.74372e24230903d2d4cacecae74f498d_5" [label="5: DeclStmt \n n$5=_fun_TranslateAsPtr_TranslateAsPtr(&t:int**,null:int*) [line 109, column 23]\n n$4=*&t:int* [line 109, column 23]\n " shape="box"] +"operator_star_null_deref1#14187169119337849630.74372e24230903d2d4cacecae74f498d_5" [label="5: DeclStmt \n n$7=_fun_TranslateAsPtr_TranslateAsPtr(&t:int**,null:int*) [line 109, column 23]\n n$6=*&t:int* [line 109, column 23]\n " shape="box"] "operator_star_null_deref1#14187169119337849630.74372e24230903d2d4cacecae74f498d_5" -> "operator_star_null_deref1#14187169119337849630.74372e24230903d2d4cacecae74f498d_4" ; @@ -271,11 +271,11 @@ digraph cfg { "operator_star_null_deref2#14189968475942707161.6f6b808f2059b0f1bd8edd63f3e0c27b_3" -> "operator_star_null_deref2#14189968475942707161.6f6b808f2059b0f1bd8edd63f3e0c27b_2" ; -"operator_star_null_deref2#14189968475942707161.6f6b808f2059b0f1bd8edd63f3e0c27b_4" [label="4: Call _fun_TranslateAsPtr_setPtr \n _=*&t:int* [line 116, column 3]\n n$4=_fun_TranslateAsPtr_setPtr(&t:int*&,null:int*) [line 116, column 3]\n " shape="box"] +"operator_star_null_deref2#14189968475942707161.6f6b808f2059b0f1bd8edd63f3e0c27b_4" [label="4: Call _fun_TranslateAsPtr_setPtr \n _=*&t:int* [line 116, column 3]\n n$5=_fun_TranslateAsPtr_setPtr(&t:int*&,null:int*) [line 116, column 3]\n " shape="box"] "operator_star_null_deref2#14189968475942707161.6f6b808f2059b0f1bd8edd63f3e0c27b_4" -> "operator_star_null_deref2#14189968475942707161.6f6b808f2059b0f1bd8edd63f3e0c27b_3" ; -"operator_star_null_deref2#14189968475942707161.6f6b808f2059b0f1bd8edd63f3e0c27b_5" [label="5: DeclStmt \n n$6=_fun_TranslateAsPtr_TranslateAsPtr(&t:int**,null:int*) [line 115, column 23]\n n$5=*&t:int* [line 115, column 23]\n " shape="box"] +"operator_star_null_deref2#14189968475942707161.6f6b808f2059b0f1bd8edd63f3e0c27b_5" [label="5: DeclStmt \n n$7=_fun_TranslateAsPtr_TranslateAsPtr(&t:int**,null:int*) [line 115, column 23]\n n$6=*&t:int* [line 115, column 23]\n " shape="box"] "operator_star_null_deref2#14189968475942707161.6f6b808f2059b0f1bd8edd63f3e0c27b_5" -> "operator_star_null_deref2#14189968475942707161.6f6b808f2059b0f1bd8edd63f3e0c27b_4" ; @@ -290,11 +290,11 @@ digraph cfg { "operator_star_ok_deref#11345277927099423171.138b78e88dab5887cd2f20f2590c779f_3" -> "operator_star_ok_deref#11345277927099423171.138b78e88dab5887cd2f20f2590c779f_2" ; -"operator_star_ok_deref#11345277927099423171.138b78e88dab5887cd2f20f2590c779f_4" [label="4: Call _fun_TranslateAsPtr_setPtr \n _=*&t:int* [line 123, column 3]\n n$4=_fun_TranslateAsPtr_setPtr(&t:int*&,&a:int*) [line 123, column 3]\n " shape="box"] +"operator_star_ok_deref#11345277927099423171.138b78e88dab5887cd2f20f2590c779f_4" [label="4: Call _fun_TranslateAsPtr_setPtr \n _=*&t:int* [line 123, column 3]\n n$5=_fun_TranslateAsPtr_setPtr(&t:int*&,&a:int*) [line 123, column 3]\n " shape="box"] "operator_star_ok_deref#11345277927099423171.138b78e88dab5887cd2f20f2590c779f_4" -> "operator_star_ok_deref#11345277927099423171.138b78e88dab5887cd2f20f2590c779f_3" ; -"operator_star_ok_deref#11345277927099423171.138b78e88dab5887cd2f20f2590c779f_5" [label="5: DeclStmt \n n$6=_fun_TranslateAsPtr_TranslateAsPtr(&t:int**,null:int*) [line 122, column 23]\n n$5=*&t:int* [line 122, column 23]\n " shape="box"] +"operator_star_ok_deref#11345277927099423171.138b78e88dab5887cd2f20f2590c779f_5" [label="5: DeclStmt \n n$7=_fun_TranslateAsPtr_TranslateAsPtr(&t:int**,null:int*) [line 122, column 23]\n n$6=*&t:int* [line 122, column 23]\n " shape="box"] "operator_star_ok_deref#11345277927099423171.138b78e88dab5887cd2f20f2590c779f_5" -> "operator_star_ok_deref#11345277927099423171.138b78e88dab5887cd2f20f2590c779f_4" ; @@ -305,7 +305,7 @@ digraph cfg { "TranslateAsPtr#TranslateAsPtr#{16989717360382977660}.33ce04b76efc158540bbe4b4b3c6897f_2" [label="2: Exit TranslateAsPtr_TranslateAsPtr \n " color=yellow style=filled] -"TranslateAsPtr#TranslateAsPtr#{16989717360382977660}.33ce04b76efc158540bbe4b4b3c6897f_3" [label="3: Call _fun_TranslateAsPtr_setPtr \n n$0=*&this:int** [line 76, column 36]\n _=*n$0:int* [line 76, column 36]\n n$2=*&t:int* [line 76, column 43]\n n$3=_fun_TranslateAsPtr_setPtr(n$0:int**,n$2:int*) [line 76, column 36]\n " shape="box"] +"TranslateAsPtr#TranslateAsPtr#{16989717360382977660}.33ce04b76efc158540bbe4b4b3c6897f_3" [label="3: Call _fun_TranslateAsPtr_setPtr \n n$1=*&this:int** [line 76, column 36]\n _=*n$1:int* [line 76, column 36]\n n$3=*&t:int* [line 76, column 43]\n n$4=_fun_TranslateAsPtr_setPtr(n$1:int**,n$3:int*) [line 76, column 36]\n " shape="box"] "TranslateAsPtr#TranslateAsPtr#{16989717360382977660}.33ce04b76efc158540bbe4b4b3c6897f_3" -> "TranslateAsPtr#TranslateAsPtr#{16989717360382977660}.33ce04b76efc158540bbe4b4b3c6897f_2" ; @@ -351,7 +351,7 @@ digraph cfg { "setPtr#TranslateAsPtr#(11427652750021041520).3f4d983a0a5cf5a43b2e4fd66c30c6a9_2" [label="2: Exit TranslateAsPtr_setPtr \n " color=yellow style=filled] -"setPtr#TranslateAsPtr#(11427652750021041520).3f4d983a0a5cf5a43b2e4fd66c30c6a9_3" [label="3: BinaryOperatorStmt: Assign \n n$0=*&this:int** [line 86, column 34]\n n$1=*&v:int* [line 86, column 43]\n *n$0:void*=n$1 [line 86, column 23]\n " shape="box"] +"setPtr#TranslateAsPtr#(11427652750021041520).3f4d983a0a5cf5a43b2e4fd66c30c6a9_3" [label="3: BinaryOperatorStmt: Assign \n n$1=*&this:int** [line 86, column 34]\n n$2=*&v:int* [line 86, column 43]\n *n$1:void*=n$2 [line 86, column 23]\n " shape="box"] "setPtr#TranslateAsPtr#(11427652750021041520).3f4d983a0a5cf5a43b2e4fd66c30c6a9_3" -> "setPtr#TranslateAsPtr#(11427652750021041520).3f4d983a0a5cf5a43b2e4fd66c30c6a9_2" ; diff --git a/infer/tests/codetoanalyze/cpp/shared/conditional/binary_conditional.cpp.dot b/infer/tests/codetoanalyze/cpp/shared/conditional/binary_conditional.cpp.dot index 0449dc7f2..a07de15fb 100644 --- a/infer/tests/codetoanalyze/cpp/shared/conditional/binary_conditional.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/shared/conditional/binary_conditional.cpp.dot @@ -1,6 +1,6 @@ /* @generated */ digraph cfg { -"binaryConditional#binary_conditional#15641211300815748363.a0f7e256e24b7117cb94c66e5aa27a30_1" [label="1: Start binary_conditional::binaryConditional\nFormals: \nLocals: x:binary_conditional::X 0$?%__sil_tmpSIL_materialize_temp__n$5:binary_conditional::X 0$?%__sil_tmpSIL_temp_conditional___n$8:binary_conditional::X 0$?%__sil_tmpSIL_materialize_temp__n$4:binary_conditional::X a:binary_conditional::X \n DECLARE_LOCALS(&return,&x,&0$?%__sil_tmpSIL_materialize_temp__n$5,&0$?%__sil_tmpSIL_temp_conditional___n$8,&0$?%__sil_tmpSIL_materialize_temp__n$4,&a); [line 22, column 1]\n " color=yellow style=filled] +"binaryConditional#binary_conditional#15641211300815748363.a0f7e256e24b7117cb94c66e5aa27a30_1" [label="1: Start binary_conditional::binaryConditional\nFormals: \nLocals: x:binary_conditional::X 0$?%__sil_tmpSIL_materialize_temp__n$6:binary_conditional::X 0$?%__sil_tmpSIL_temp_conditional___n$9:binary_conditional::X 0$?%__sil_tmpSIL_materialize_temp__n$5:binary_conditional::X a:binary_conditional::X \n DECLARE_LOCALS(&return,&x,&0$?%__sil_tmpSIL_materialize_temp__n$6,&0$?%__sil_tmpSIL_temp_conditional___n$9,&0$?%__sil_tmpSIL_materialize_temp__n$5,&a); [line 22, column 1]\n " color=yellow style=filled] "binaryConditional#binary_conditional#15641211300815748363.a0f7e256e24b7117cb94c66e5aa27a30_1" -> "binaryConditional#binary_conditional#15641211300815748363.a0f7e256e24b7117cb94c66e5aa27a30_12" ; @@ -15,40 +15,40 @@ digraph cfg { "binaryConditional#binary_conditional#15641211300815748363.a0f7e256e24b7117cb94c66e5aa27a30_4" -> "binaryConditional#binary_conditional#15641211300815748363.a0f7e256e24b7117cb94c66e5aa27a30_11" ; -"binaryConditional#binary_conditional#15641211300815748363.a0f7e256e24b7117cb94c66e5aa27a30_5" [label="5: Call _fun_binary_conditional::X_operator_bool \n _=*&0$?%__sil_tmpSIL_materialize_temp__n$5:binary_conditional::X [line 24, column 9]\n n$10=_fun_binary_conditional::X_operator_bool(&0$?%__sil_tmpSIL_materialize_temp__n$5:binary_conditional::X&) [line 24, column 9]\n " shape="box"] +"binaryConditional#binary_conditional#15641211300815748363.a0f7e256e24b7117cb94c66e5aa27a30_5" [label="5: Call _fun_binary_conditional::X_operator_bool \n _=*&0$?%__sil_tmpSIL_materialize_temp__n$6:binary_conditional::X [line 24, column 9]\n n$11=_fun_binary_conditional::X_operator_bool(&0$?%__sil_tmpSIL_materialize_temp__n$6:binary_conditional::X&) [line 24, column 9]\n " shape="box"] "binaryConditional#binary_conditional#15641211300815748363.a0f7e256e24b7117cb94c66e5aa27a30_5" -> "binaryConditional#binary_conditional#15641211300815748363.a0f7e256e24b7117cb94c66e5aa27a30_6" ; "binaryConditional#binary_conditional#15641211300815748363.a0f7e256e24b7117cb94c66e5aa27a30_5" -> "binaryConditional#binary_conditional#15641211300815748363.a0f7e256e24b7117cb94c66e5aa27a30_7" ; -"binaryConditional#binary_conditional#15641211300815748363.a0f7e256e24b7117cb94c66e5aa27a30_6" [label="6: Prune (true branch, boolean exp) \n PRUNE(n$10, true); [line 24, column 9]\n " shape="invhouse"] +"binaryConditional#binary_conditional#15641211300815748363.a0f7e256e24b7117cb94c66e5aa27a30_6" [label="6: Prune (true branch, boolean exp) \n PRUNE(n$11, true); [line 24, column 9]\n " shape="invhouse"] "binaryConditional#binary_conditional#15641211300815748363.a0f7e256e24b7117cb94c66e5aa27a30_6" -> "binaryConditional#binary_conditional#15641211300815748363.a0f7e256e24b7117cb94c66e5aa27a30_8" ; -"binaryConditional#binary_conditional#15641211300815748363.a0f7e256e24b7117cb94c66e5aa27a30_7" [label="7: Prune (false branch, boolean exp) \n PRUNE(!n$10, false); [line 24, column 9]\n " shape="invhouse"] +"binaryConditional#binary_conditional#15641211300815748363.a0f7e256e24b7117cb94c66e5aa27a30_7" [label="7: Prune (false branch, boolean exp) \n PRUNE(!n$11, false); [line 24, column 9]\n " shape="invhouse"] "binaryConditional#binary_conditional#15641211300815748363.a0f7e256e24b7117cb94c66e5aa27a30_7" -> "binaryConditional#binary_conditional#15641211300815748363.a0f7e256e24b7117cb94c66e5aa27a30_9" ; -"binaryConditional#binary_conditional#15641211300815748363.a0f7e256e24b7117cb94c66e5aa27a30_8" [label="8: ConditinalStmt Branch \n n$11=_fun_binary_conditional::X_X(&0$?%__sil_tmpSIL_materialize_temp__n$4:binary_conditional::X*,&0$?%__sil_tmpSIL_materialize_temp__n$5:binary_conditional::X&) [line 24, column 9]\n *&0$?%__sil_tmpSIL_temp_conditional___n$8:binary_conditional::X=&0$?%__sil_tmpSIL_materialize_temp__n$4 [line 24, column 9]\n " shape="box"] +"binaryConditional#binary_conditional#15641211300815748363.a0f7e256e24b7117cb94c66e5aa27a30_8" [label="8: ConditionalStmt Branch \n n$12=_fun_binary_conditional::X_X(&0$?%__sil_tmpSIL_materialize_temp__n$5:binary_conditional::X*,&0$?%__sil_tmpSIL_materialize_temp__n$6:binary_conditional::X&) [line 24, column 9]\n *&0$?%__sil_tmpSIL_temp_conditional___n$9:binary_conditional::X=&0$?%__sil_tmpSIL_materialize_temp__n$5 [line 24, column 9]\n " shape="box"] "binaryConditional#binary_conditional#15641211300815748363.a0f7e256e24b7117cb94c66e5aa27a30_8" -> "binaryConditional#binary_conditional#15641211300815748363.a0f7e256e24b7117cb94c66e5aa27a30_4" ; -"binaryConditional#binary_conditional#15641211300815748363.a0f7e256e24b7117cb94c66e5aa27a30_9" [label="9: ConditinalStmt Branch \n n$12=_fun_binary_conditional::X_X(&0$?%__sil_tmpSIL_materialize_temp__n$4:binary_conditional::X*,&a:binary_conditional::X&) [line 24, column 19]\n *&0$?%__sil_tmpSIL_temp_conditional___n$8:binary_conditional::X=&0$?%__sil_tmpSIL_materialize_temp__n$4 [line 24, column 9]\n " shape="box"] +"binaryConditional#binary_conditional#15641211300815748363.a0f7e256e24b7117cb94c66e5aa27a30_9" [label="9: ConditionalStmt Branch \n n$13=_fun_binary_conditional::X_X(&0$?%__sil_tmpSIL_materialize_temp__n$5:binary_conditional::X*,&a:binary_conditional::X&) [line 24, column 19]\n *&0$?%__sil_tmpSIL_temp_conditional___n$9:binary_conditional::X=&0$?%__sil_tmpSIL_materialize_temp__n$5 [line 24, column 9]\n " shape="box"] "binaryConditional#binary_conditional#15641211300815748363.a0f7e256e24b7117cb94c66e5aa27a30_9" -> "binaryConditional#binary_conditional#15641211300815748363.a0f7e256e24b7117cb94c66e5aa27a30_4" ; -"binaryConditional#binary_conditional#15641211300815748363.a0f7e256e24b7117cb94c66e5aa27a30_10" [label="10: BinaryConditinalStmt Init \n n$7=_fun_binary_conditional::getX(&0$?%__sil_tmpSIL_materialize_temp__n$5:binary_conditional::X*) [line 24, column 9]\n " shape="box"] +"binaryConditional#binary_conditional#15641211300815748363.a0f7e256e24b7117cb94c66e5aa27a30_10" [label="10: BinaryConditionalStmt Init \n n$8=_fun_binary_conditional::getX(&0$?%__sil_tmpSIL_materialize_temp__n$6:binary_conditional::X*) [line 24, column 9]\n " shape="box"] "binaryConditional#binary_conditional#15641211300815748363.a0f7e256e24b7117cb94c66e5aa27a30_10" -> "binaryConditional#binary_conditional#15641211300815748363.a0f7e256e24b7117cb94c66e5aa27a30_5" ; -"binaryConditional#binary_conditional#15641211300815748363.a0f7e256e24b7117cb94c66e5aa27a30_11" [label="11: DeclStmt \n n$13=*&0$?%__sil_tmpSIL_temp_conditional___n$8:binary_conditional::X [line 24, column 9]\n *&0$?%__sil_tmpSIL_materialize_temp__n$4:binary_conditional::X=n$13 [line 24, column 9]\n n$14=_fun_binary_conditional::X_X(&x:binary_conditional::X*,&0$?%__sil_tmpSIL_materialize_temp__n$4:binary_conditional::X&) [line 24, column 9]\n " shape="box"] +"binaryConditional#binary_conditional#15641211300815748363.a0f7e256e24b7117cb94c66e5aa27a30_11" [label="11: DeclStmt \n n$14=*&0$?%__sil_tmpSIL_temp_conditional___n$9:binary_conditional::X [line 24, column 9]\n *&0$?%__sil_tmpSIL_materialize_temp__n$5:binary_conditional::X=n$14 [line 24, column 9]\n n$15=_fun_binary_conditional::X_X(&x:binary_conditional::X*,&0$?%__sil_tmpSIL_materialize_temp__n$5:binary_conditional::X&) [line 24, column 9]\n " shape="box"] "binaryConditional#binary_conditional#15641211300815748363.a0f7e256e24b7117cb94c66e5aa27a30_11" -> "binaryConditional#binary_conditional#15641211300815748363.a0f7e256e24b7117cb94c66e5aa27a30_3" ; -"binaryConditional#binary_conditional#15641211300815748363.a0f7e256e24b7117cb94c66e5aa27a30_12" [label="12: DeclStmt \n n$15=_fun_binary_conditional::X_X(&a:binary_conditional::X*) [line 23, column 5]\n " shape="box"] +"binaryConditional#binary_conditional#15641211300815748363.a0f7e256e24b7117cb94c66e5aa27a30_12" [label="12: DeclStmt \n n$16=_fun_binary_conditional::X_X(&a:binary_conditional::X*) [line 23, column 5]\n " shape="box"] "binaryConditional#binary_conditional#15641211300815748363.a0f7e256e24b7117cb94c66e5aa27a30_12" -> "binaryConditional#binary_conditional#15641211300815748363.a0f7e256e24b7117cb94c66e5aa27a30_10" ; -"conditional#binary_conditional#4777209206611953450.41decaebdce6325bd31c1d47d4647c45_1" [label="1: Start binary_conditional::conditional\nFormals: \nLocals: x:binary_conditional::X 0$?%__sil_tmpSIL_temp_conditional___n$5:binary_conditional::X 0$?%__sil_tmp__temp_return_n$7:binary_conditional::X 0$?%__sil_tmpSIL_materialize_temp__n$10:binary_conditional::X 0$?%__sil_tmpSIL_materialize_temp__n$4:binary_conditional::X a:binary_conditional::X \n DECLARE_LOCALS(&return,&x,&0$?%__sil_tmpSIL_temp_conditional___n$5,&0$?%__sil_tmp__temp_return_n$7,&0$?%__sil_tmpSIL_materialize_temp__n$10,&0$?%__sil_tmpSIL_materialize_temp__n$4,&a); [line 27, column 1]\n " color=yellow style=filled] +"conditional#binary_conditional#4777209206611953450.41decaebdce6325bd31c1d47d4647c45_1" [label="1: Start binary_conditional::conditional\nFormals: \nLocals: x:binary_conditional::X 0$?%__sil_tmpSIL_temp_conditional___n$6:binary_conditional::X 0$?%__sil_tmp__temp_return_n$8:binary_conditional::X 0$?%__sil_tmpSIL_materialize_temp__n$11:binary_conditional::X 0$?%__sil_tmpSIL_materialize_temp__n$5:binary_conditional::X a:binary_conditional::X \n DECLARE_LOCALS(&return,&x,&0$?%__sil_tmpSIL_temp_conditional___n$6,&0$?%__sil_tmp__temp_return_n$8,&0$?%__sil_tmpSIL_materialize_temp__n$11,&0$?%__sil_tmpSIL_materialize_temp__n$5,&a); [line 27, column 1]\n " color=yellow style=filled] "conditional#binary_conditional#4777209206611953450.41decaebdce6325bd31c1d47d4647c45_1" -> "conditional#binary_conditional#4777209206611953450.41decaebdce6325bd31c1d47d4647c45_11" ; @@ -63,32 +63,32 @@ digraph cfg { "conditional#binary_conditional#4777209206611953450.41decaebdce6325bd31c1d47d4647c45_4" -> "conditional#binary_conditional#4777209206611953450.41decaebdce6325bd31c1d47d4647c45_10" ; -"conditional#binary_conditional#4777209206611953450.41decaebdce6325bd31c1d47d4647c45_5" [label="5: Call _fun_binary_conditional::X_operator_bool \n n$8=_fun_binary_conditional::getX(&0$?%__sil_tmp__temp_return_n$7:binary_conditional::X*) [line 29, column 9]\n n$9=_fun_binary_conditional::X_operator_bool(&0$?%__sil_tmp__temp_return_n$7:binary_conditional::X&) [line 29, column 9]\n " shape="box"] +"conditional#binary_conditional#4777209206611953450.41decaebdce6325bd31c1d47d4647c45_5" [label="5: Call _fun_binary_conditional::X_operator_bool \n n$9=_fun_binary_conditional::getX(&0$?%__sil_tmp__temp_return_n$8:binary_conditional::X*) [line 29, column 9]\n n$10=_fun_binary_conditional::X_operator_bool(&0$?%__sil_tmp__temp_return_n$8:binary_conditional::X&) [line 29, column 9]\n " shape="box"] "conditional#binary_conditional#4777209206611953450.41decaebdce6325bd31c1d47d4647c45_5" -> "conditional#binary_conditional#4777209206611953450.41decaebdce6325bd31c1d47d4647c45_6" ; "conditional#binary_conditional#4777209206611953450.41decaebdce6325bd31c1d47d4647c45_5" -> "conditional#binary_conditional#4777209206611953450.41decaebdce6325bd31c1d47d4647c45_7" ; -"conditional#binary_conditional#4777209206611953450.41decaebdce6325bd31c1d47d4647c45_6" [label="6: Prune (true branch, boolean exp) \n PRUNE(n$9, true); [line 29, column 9]\n " shape="invhouse"] +"conditional#binary_conditional#4777209206611953450.41decaebdce6325bd31c1d47d4647c45_6" [label="6: Prune (true branch, boolean exp) \n PRUNE(n$10, true); [line 29, column 9]\n " shape="invhouse"] "conditional#binary_conditional#4777209206611953450.41decaebdce6325bd31c1d47d4647c45_6" -> "conditional#binary_conditional#4777209206611953450.41decaebdce6325bd31c1d47d4647c45_8" ; -"conditional#binary_conditional#4777209206611953450.41decaebdce6325bd31c1d47d4647c45_7" [label="7: Prune (false branch, boolean exp) \n PRUNE(!n$9, false); [line 29, column 9]\n " shape="invhouse"] +"conditional#binary_conditional#4777209206611953450.41decaebdce6325bd31c1d47d4647c45_7" [label="7: Prune (false branch, boolean exp) \n PRUNE(!n$10, false); [line 29, column 9]\n " shape="invhouse"] "conditional#binary_conditional#4777209206611953450.41decaebdce6325bd31c1d47d4647c45_7" -> "conditional#binary_conditional#4777209206611953450.41decaebdce6325bd31c1d47d4647c45_9" ; -"conditional#binary_conditional#4777209206611953450.41decaebdce6325bd31c1d47d4647c45_8" [label="8: ConditinalStmt Branch \n n$12=_fun_binary_conditional::getX(&0$?%__sil_tmpSIL_materialize_temp__n$10:binary_conditional::X*) [line 29, column 18]\n n$13=_fun_binary_conditional::X_X(&0$?%__sil_tmpSIL_materialize_temp__n$4:binary_conditional::X*,&0$?%__sil_tmpSIL_materialize_temp__n$10:binary_conditional::X&) [line 29, column 18]\n *&0$?%__sil_tmpSIL_temp_conditional___n$5:binary_conditional::X=&0$?%__sil_tmpSIL_materialize_temp__n$4 [line 29, column 9]\n " shape="box"] +"conditional#binary_conditional#4777209206611953450.41decaebdce6325bd31c1d47d4647c45_8" [label="8: ConditionalStmt Branch \n n$13=_fun_binary_conditional::getX(&0$?%__sil_tmpSIL_materialize_temp__n$11:binary_conditional::X*) [line 29, column 18]\n n$14=_fun_binary_conditional::X_X(&0$?%__sil_tmpSIL_materialize_temp__n$5:binary_conditional::X*,&0$?%__sil_tmpSIL_materialize_temp__n$11:binary_conditional::X&) [line 29, column 18]\n *&0$?%__sil_tmpSIL_temp_conditional___n$6:binary_conditional::X=&0$?%__sil_tmpSIL_materialize_temp__n$5 [line 29, column 9]\n " shape="box"] "conditional#binary_conditional#4777209206611953450.41decaebdce6325bd31c1d47d4647c45_8" -> "conditional#binary_conditional#4777209206611953450.41decaebdce6325bd31c1d47d4647c45_4" ; -"conditional#binary_conditional#4777209206611953450.41decaebdce6325bd31c1d47d4647c45_9" [label="9: ConditinalStmt Branch \n n$14=_fun_binary_conditional::X_X(&0$?%__sil_tmpSIL_materialize_temp__n$4:binary_conditional::X*,&a:binary_conditional::X&) [line 29, column 27]\n *&0$?%__sil_tmpSIL_temp_conditional___n$5:binary_conditional::X=&0$?%__sil_tmpSIL_materialize_temp__n$4 [line 29, column 9]\n " shape="box"] +"conditional#binary_conditional#4777209206611953450.41decaebdce6325bd31c1d47d4647c45_9" [label="9: ConditionalStmt Branch \n n$15=_fun_binary_conditional::X_X(&0$?%__sil_tmpSIL_materialize_temp__n$5:binary_conditional::X*,&a:binary_conditional::X&) [line 29, column 27]\n *&0$?%__sil_tmpSIL_temp_conditional___n$6:binary_conditional::X=&0$?%__sil_tmpSIL_materialize_temp__n$5 [line 29, column 9]\n " shape="box"] "conditional#binary_conditional#4777209206611953450.41decaebdce6325bd31c1d47d4647c45_9" -> "conditional#binary_conditional#4777209206611953450.41decaebdce6325bd31c1d47d4647c45_4" ; -"conditional#binary_conditional#4777209206611953450.41decaebdce6325bd31c1d47d4647c45_10" [label="10: DeclStmt \n n$15=*&0$?%__sil_tmpSIL_temp_conditional___n$5:binary_conditional::X [line 29, column 9]\n *&0$?%__sil_tmpSIL_materialize_temp__n$4:binary_conditional::X=n$15 [line 29, column 9]\n n$16=_fun_binary_conditional::X_X(&x:binary_conditional::X*,&0$?%__sil_tmpSIL_materialize_temp__n$4:binary_conditional::X&) [line 29, column 9]\n " shape="box"] +"conditional#binary_conditional#4777209206611953450.41decaebdce6325bd31c1d47d4647c45_10" [label="10: DeclStmt \n n$16=*&0$?%__sil_tmpSIL_temp_conditional___n$6:binary_conditional::X [line 29, column 9]\n *&0$?%__sil_tmpSIL_materialize_temp__n$5:binary_conditional::X=n$16 [line 29, column 9]\n n$17=_fun_binary_conditional::X_X(&x:binary_conditional::X*,&0$?%__sil_tmpSIL_materialize_temp__n$5:binary_conditional::X&) [line 29, column 9]\n " shape="box"] "conditional#binary_conditional#4777209206611953450.41decaebdce6325bd31c1d47d4647c45_10" -> "conditional#binary_conditional#4777209206611953450.41decaebdce6325bd31c1d47d4647c45_3" ; -"conditional#binary_conditional#4777209206611953450.41decaebdce6325bd31c1d47d4647c45_11" [label="11: DeclStmt \n n$17=_fun_binary_conditional::X_X(&a:binary_conditional::X*) [line 28, column 5]\n " shape="box"] +"conditional#binary_conditional#4777209206611953450.41decaebdce6325bd31c1d47d4647c45_11" [label="11: DeclStmt \n n$18=_fun_binary_conditional::X_X(&a:binary_conditional::X*) [line 28, column 5]\n " shape="box"] "conditional#binary_conditional#4777209206611953450.41decaebdce6325bd31c1d47d4647c45_11" -> "conditional#binary_conditional#4777209206611953450.41decaebdce6325bd31c1d47d4647c45_5" ; @@ -103,7 +103,7 @@ digraph cfg { "getX#binary_conditional#7708042186122353096.ec6c66051810049a5e5688caadbf0f96_3" -> "getX#binary_conditional#7708042186122353096.ec6c66051810049a5e5688caadbf0f96_2" ; -"getX#binary_conditional#7708042186122353096.ec6c66051810049a5e5688caadbf0f96_4" [label="4: DeclStmt \n n$4=_fun_binary_conditional::X_X(&x:binary_conditional::X*) [line 17, column 5]\n " shape="box"] +"getX#binary_conditional#7708042186122353096.ec6c66051810049a5e5688caadbf0f96_4" [label="4: DeclStmt \n n$5=_fun_binary_conditional::X_X(&x:binary_conditional::X*) [line 17, column 5]\n " shape="box"] "getX#binary_conditional#7708042186122353096.ec6c66051810049a5e5688caadbf0f96_4" -> "getX#binary_conditional#7708042186122353096.ec6c66051810049a5e5688caadbf0f96_3" ; diff --git a/infer/tests/codetoanalyze/cpp/shared/conditional/lvalue_conditional.cpp.dot b/infer/tests/codetoanalyze/cpp/shared/conditional/lvalue_conditional.cpp.dot index 483c26fe5..ff257e47d 100644 --- a/infer/tests/codetoanalyze/cpp/shared/conditional/lvalue_conditional.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/shared/conditional/lvalue_conditional.cpp.dot @@ -1,6 +1,6 @@ /* @generated */ digraph cfg { -"assign_conditional#6602154438630029026.d4adbdaf8d08f61e93de4faf3d45d8ab_1" [label="1: Start assign_conditional\nFormals: a:int\nLocals: 0$?%__sil_tmpSIL_temp_conditional___n$1:int& v2:int v1:int \n DECLARE_LOCALS(&return,&0$?%__sil_tmpSIL_temp_conditional___n$1,&v2,&v1); [line 22, column 1]\n " color=yellow style=filled] +"assign_conditional#6602154438630029026.d4adbdaf8d08f61e93de4faf3d45d8ab_1" [label="1: Start assign_conditional\nFormals: a:int\nLocals: 0$?%__sil_tmpSIL_temp_conditional___n$2:int& v2:int v1:int \n DECLARE_LOCALS(&return,&0$?%__sil_tmpSIL_temp_conditional___n$2,&v2,&v1); [line 22, column 1]\n " color=yellow style=filled] "assign_conditional#6602154438630029026.d4adbdaf8d08f61e93de4faf3d45d8ab_1" -> "assign_conditional#6602154438630029026.d4adbdaf8d08f61e93de4faf3d45d8ab_11" ; @@ -15,23 +15,23 @@ digraph cfg { "assign_conditional#6602154438630029026.d4adbdaf8d08f61e93de4faf3d45d8ab_4" -> "assign_conditional#6602154438630029026.d4adbdaf8d08f61e93de4faf3d45d8ab_9" ; -"assign_conditional#6602154438630029026.d4adbdaf8d08f61e93de4faf3d45d8ab_5" [label="5: Prune (true branch, boolean exp) \n n$2=*&a:int [line 24, column 4]\n PRUNE(n$2, true); [line 24, column 4]\n " shape="invhouse"] +"assign_conditional#6602154438630029026.d4adbdaf8d08f61e93de4faf3d45d8ab_5" [label="5: Prune (true branch, boolean exp) \n n$3=*&a:int [line 24, column 4]\n PRUNE(n$3, true); [line 24, column 4]\n " shape="invhouse"] "assign_conditional#6602154438630029026.d4adbdaf8d08f61e93de4faf3d45d8ab_5" -> "assign_conditional#6602154438630029026.d4adbdaf8d08f61e93de4faf3d45d8ab_7" ; -"assign_conditional#6602154438630029026.d4adbdaf8d08f61e93de4faf3d45d8ab_6" [label="6: Prune (false branch, boolean exp) \n n$2=*&a:int [line 24, column 4]\n PRUNE(!n$2, false); [line 24, column 4]\n " shape="invhouse"] +"assign_conditional#6602154438630029026.d4adbdaf8d08f61e93de4faf3d45d8ab_6" [label="6: Prune (false branch, boolean exp) \n n$3=*&a:int [line 24, column 4]\n PRUNE(!n$3, false); [line 24, column 4]\n " shape="invhouse"] "assign_conditional#6602154438630029026.d4adbdaf8d08f61e93de4faf3d45d8ab_6" -> "assign_conditional#6602154438630029026.d4adbdaf8d08f61e93de4faf3d45d8ab_8" ; -"assign_conditional#6602154438630029026.d4adbdaf8d08f61e93de4faf3d45d8ab_7" [label="7: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$1:int&=&v1 [line 24, column 4]\n " shape="box"] +"assign_conditional#6602154438630029026.d4adbdaf8d08f61e93de4faf3d45d8ab_7" [label="7: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$2:int&=&v1 [line 24, column 4]\n " shape="box"] "assign_conditional#6602154438630029026.d4adbdaf8d08f61e93de4faf3d45d8ab_7" -> "assign_conditional#6602154438630029026.d4adbdaf8d08f61e93de4faf3d45d8ab_4" ; -"assign_conditional#6602154438630029026.d4adbdaf8d08f61e93de4faf3d45d8ab_8" [label="8: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$1:int&=&v2 [line 24, column 4]\n " shape="box"] +"assign_conditional#6602154438630029026.d4adbdaf8d08f61e93de4faf3d45d8ab_8" [label="8: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$2:int&=&v2 [line 24, column 4]\n " shape="box"] "assign_conditional#6602154438630029026.d4adbdaf8d08f61e93de4faf3d45d8ab_8" -> "assign_conditional#6602154438630029026.d4adbdaf8d08f61e93de4faf3d45d8ab_4" ; -"assign_conditional#6602154438630029026.d4adbdaf8d08f61e93de4faf3d45d8ab_9" [label="9: BinaryOperatorStmt: Assign \n n$3=*&0$?%__sil_tmpSIL_temp_conditional___n$1:int& [line 24, column 4]\n *n$3:int=1 [line 24, column 3]\n " shape="box"] +"assign_conditional#6602154438630029026.d4adbdaf8d08f61e93de4faf3d45d8ab_9" [label="9: BinaryOperatorStmt: Assign \n n$4=*&0$?%__sil_tmpSIL_temp_conditional___n$2:int& [line 24, column 4]\n *n$4:int=1 [line 24, column 3]\n " shape="box"] "assign_conditional#6602154438630029026.d4adbdaf8d08f61e93de4faf3d45d8ab_9" -> "assign_conditional#6602154438630029026.d4adbdaf8d08f61e93de4faf3d45d8ab_3" ; @@ -44,7 +44,7 @@ digraph cfg { "assign_conditional#6602154438630029026.d4adbdaf8d08f61e93de4faf3d45d8ab_11" -> "assign_conditional#6602154438630029026.d4adbdaf8d08f61e93de4faf3d45d8ab_10" ; -"choose_lvalue#6868643882447178722.7e0e06006a6e1baaef3aab18bce2b8d2_1" [label="1: Start choose_lvalue\nFormals: a:int\nLocals: v3:int 0$?%__sil_tmpSIL_temp_conditional___n$1:int& v2:int v1:int \n DECLARE_LOCALS(&return,&v3,&0$?%__sil_tmpSIL_temp_conditional___n$1,&v2,&v1); [line 10, column 1]\n " color=yellow style=filled] +"choose_lvalue#6868643882447178722.7e0e06006a6e1baaef3aab18bce2b8d2_1" [label="1: Start choose_lvalue\nFormals: a:int\nLocals: v3:int 0$?%__sil_tmpSIL_temp_conditional___n$2:int& v2:int v1:int \n DECLARE_LOCALS(&return,&v3,&0$?%__sil_tmpSIL_temp_conditional___n$2,&v2,&v1); [line 10, column 1]\n " color=yellow style=filled] "choose_lvalue#6868643882447178722.7e0e06006a6e1baaef3aab18bce2b8d2_1" -> "choose_lvalue#6868643882447178722.7e0e06006a6e1baaef3aab18bce2b8d2_11" ; @@ -59,23 +59,23 @@ digraph cfg { "choose_lvalue#6868643882447178722.7e0e06006a6e1baaef3aab18bce2b8d2_4" -> "choose_lvalue#6868643882447178722.7e0e06006a6e1baaef3aab18bce2b8d2_9" ; -"choose_lvalue#6868643882447178722.7e0e06006a6e1baaef3aab18bce2b8d2_5" [label="5: Prune (true branch, boolean exp) \n n$2=*&a:int [line 12, column 12]\n PRUNE(n$2, true); [line 12, column 12]\n " shape="invhouse"] +"choose_lvalue#6868643882447178722.7e0e06006a6e1baaef3aab18bce2b8d2_5" [label="5: Prune (true branch, boolean exp) \n n$3=*&a:int [line 12, column 12]\n PRUNE(n$3, true); [line 12, column 12]\n " shape="invhouse"] "choose_lvalue#6868643882447178722.7e0e06006a6e1baaef3aab18bce2b8d2_5" -> "choose_lvalue#6868643882447178722.7e0e06006a6e1baaef3aab18bce2b8d2_7" ; -"choose_lvalue#6868643882447178722.7e0e06006a6e1baaef3aab18bce2b8d2_6" [label="6: Prune (false branch, boolean exp) \n n$2=*&a:int [line 12, column 12]\n PRUNE(!n$2, false); [line 12, column 12]\n " shape="invhouse"] +"choose_lvalue#6868643882447178722.7e0e06006a6e1baaef3aab18bce2b8d2_6" [label="6: Prune (false branch, boolean exp) \n n$3=*&a:int [line 12, column 12]\n PRUNE(!n$3, false); [line 12, column 12]\n " shape="invhouse"] "choose_lvalue#6868643882447178722.7e0e06006a6e1baaef3aab18bce2b8d2_6" -> "choose_lvalue#6868643882447178722.7e0e06006a6e1baaef3aab18bce2b8d2_8" ; -"choose_lvalue#6868643882447178722.7e0e06006a6e1baaef3aab18bce2b8d2_7" [label="7: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$1:int&=&v1 [line 12, column 12]\n " shape="box"] +"choose_lvalue#6868643882447178722.7e0e06006a6e1baaef3aab18bce2b8d2_7" [label="7: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$2:int&=&v1 [line 12, column 12]\n " shape="box"] "choose_lvalue#6868643882447178722.7e0e06006a6e1baaef3aab18bce2b8d2_7" -> "choose_lvalue#6868643882447178722.7e0e06006a6e1baaef3aab18bce2b8d2_4" ; -"choose_lvalue#6868643882447178722.7e0e06006a6e1baaef3aab18bce2b8d2_8" [label="8: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$1:int&=&v2 [line 12, column 12]\n " shape="box"] +"choose_lvalue#6868643882447178722.7e0e06006a6e1baaef3aab18bce2b8d2_8" [label="8: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$2:int&=&v2 [line 12, column 12]\n " shape="box"] "choose_lvalue#6868643882447178722.7e0e06006a6e1baaef3aab18bce2b8d2_8" -> "choose_lvalue#6868643882447178722.7e0e06006a6e1baaef3aab18bce2b8d2_4" ; -"choose_lvalue#6868643882447178722.7e0e06006a6e1baaef3aab18bce2b8d2_9" [label="9: DeclStmt \n n$3=*&0$?%__sil_tmpSIL_temp_conditional___n$1:int& [line 12, column 12]\n n$4=*n$3:int [line 12, column 12]\n *&v3:int=n$4 [line 12, column 3]\n " shape="box"] +"choose_lvalue#6868643882447178722.7e0e06006a6e1baaef3aab18bce2b8d2_9" [label="9: DeclStmt \n n$4=*&0$?%__sil_tmpSIL_temp_conditional___n$2:int& [line 12, column 12]\n n$5=*n$4:int [line 12, column 12]\n *&v3:int=n$5 [line 12, column 3]\n " shape="box"] "choose_lvalue#6868643882447178722.7e0e06006a6e1baaef3aab18bce2b8d2_9" -> "choose_lvalue#6868643882447178722.7e0e06006a6e1baaef3aab18bce2b8d2_3" ; @@ -88,7 +88,7 @@ digraph cfg { "choose_lvalue#6868643882447178722.7e0e06006a6e1baaef3aab18bce2b8d2_11" -> "choose_lvalue#6868643882447178722.7e0e06006a6e1baaef3aab18bce2b8d2_10" ; -"choose_rvalue#5692558402038768020.7de6e1902b5c331a5715ba3f0f51e47e_1" [label="1: Start choose_rvalue\nFormals: a:int\nLocals: v3:int 0$?%__sil_tmpSIL_temp_conditional___n$1:int v1:int \n DECLARE_LOCALS(&return,&v3,&0$?%__sil_tmpSIL_temp_conditional___n$1,&v1); [line 16, column 1]\n " color=yellow style=filled] +"choose_rvalue#5692558402038768020.7de6e1902b5c331a5715ba3f0f51e47e_1" [label="1: Start choose_rvalue\nFormals: a:int\nLocals: v3:int 0$?%__sil_tmpSIL_temp_conditional___n$2:int v1:int \n DECLARE_LOCALS(&return,&v3,&0$?%__sil_tmpSIL_temp_conditional___n$2,&v1); [line 16, column 1]\n " color=yellow style=filled] "choose_rvalue#5692558402038768020.7de6e1902b5c331a5715ba3f0f51e47e_1" -> "choose_rvalue#5692558402038768020.7de6e1902b5c331a5715ba3f0f51e47e_10" ; @@ -103,23 +103,23 @@ digraph cfg { "choose_rvalue#5692558402038768020.7de6e1902b5c331a5715ba3f0f51e47e_4" -> "choose_rvalue#5692558402038768020.7de6e1902b5c331a5715ba3f0f51e47e_9" ; -"choose_rvalue#5692558402038768020.7de6e1902b5c331a5715ba3f0f51e47e_5" [label="5: Prune (true branch, boolean exp) \n n$2=*&a:int [line 18, column 12]\n PRUNE(n$2, true); [line 18, column 12]\n " shape="invhouse"] +"choose_rvalue#5692558402038768020.7de6e1902b5c331a5715ba3f0f51e47e_5" [label="5: Prune (true branch, boolean exp) \n n$3=*&a:int [line 18, column 12]\n PRUNE(n$3, true); [line 18, column 12]\n " shape="invhouse"] "choose_rvalue#5692558402038768020.7de6e1902b5c331a5715ba3f0f51e47e_5" -> "choose_rvalue#5692558402038768020.7de6e1902b5c331a5715ba3f0f51e47e_7" ; -"choose_rvalue#5692558402038768020.7de6e1902b5c331a5715ba3f0f51e47e_6" [label="6: Prune (false branch, boolean exp) \n n$2=*&a:int [line 18, column 12]\n PRUNE(!n$2, false); [line 18, column 12]\n " shape="invhouse"] +"choose_rvalue#5692558402038768020.7de6e1902b5c331a5715ba3f0f51e47e_6" [label="6: Prune (false branch, boolean exp) \n n$3=*&a:int [line 18, column 12]\n PRUNE(!n$3, false); [line 18, column 12]\n " shape="invhouse"] "choose_rvalue#5692558402038768020.7de6e1902b5c331a5715ba3f0f51e47e_6" -> "choose_rvalue#5692558402038768020.7de6e1902b5c331a5715ba3f0f51e47e_8" ; -"choose_rvalue#5692558402038768020.7de6e1902b5c331a5715ba3f0f51e47e_7" [label="7: ConditinalStmt Branch \n n$3=*&v1:int [line 18, column 16]\n *&0$?%__sil_tmpSIL_temp_conditional___n$1:int=n$3 [line 18, column 12]\n " shape="box"] +"choose_rvalue#5692558402038768020.7de6e1902b5c331a5715ba3f0f51e47e_7" [label="7: ConditionalStmt Branch \n n$4=*&v1:int [line 18, column 16]\n *&0$?%__sil_tmpSIL_temp_conditional___n$2:int=n$4 [line 18, column 12]\n " shape="box"] "choose_rvalue#5692558402038768020.7de6e1902b5c331a5715ba3f0f51e47e_7" -> "choose_rvalue#5692558402038768020.7de6e1902b5c331a5715ba3f0f51e47e_4" ; -"choose_rvalue#5692558402038768020.7de6e1902b5c331a5715ba3f0f51e47e_8" [label="8: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$1:int=1 [line 18, column 12]\n " shape="box"] +"choose_rvalue#5692558402038768020.7de6e1902b5c331a5715ba3f0f51e47e_8" [label="8: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$2:int=1 [line 18, column 12]\n " shape="box"] "choose_rvalue#5692558402038768020.7de6e1902b5c331a5715ba3f0f51e47e_8" -> "choose_rvalue#5692558402038768020.7de6e1902b5c331a5715ba3f0f51e47e_4" ; -"choose_rvalue#5692558402038768020.7de6e1902b5c331a5715ba3f0f51e47e_9" [label="9: DeclStmt \n n$4=*&0$?%__sil_tmpSIL_temp_conditional___n$1:int [line 18, column 12]\n *&v3:int=n$4 [line 18, column 3]\n " shape="box"] +"choose_rvalue#5692558402038768020.7de6e1902b5c331a5715ba3f0f51e47e_9" [label="9: DeclStmt \n n$5=*&0$?%__sil_tmpSIL_temp_conditional___n$2:int [line 18, column 12]\n *&v3:int=n$5 [line 18, column 3]\n " shape="box"] "choose_rvalue#5692558402038768020.7de6e1902b5c331a5715ba3f0f51e47e_9" -> "choose_rvalue#5692558402038768020.7de6e1902b5c331a5715ba3f0f51e47e_3" ; @@ -216,7 +216,7 @@ digraph cfg { "div1_temp_lvalue#14722162998333319062.760b52102ce508c3244378cf1bf06b6d_3" -> "div1_temp_lvalue#14722162998333319062.760b52102ce508c3244378cf1bf06b6d_2" ; -"div_temp_lvalue#2433393879580018854.ddda47c9e217adc2189e8c150a553f53_1" [label="1: Start div_temp_lvalue\nFormals: a:int b:int\nLocals: r:int const & 0$?%__sil_tmpSIL_temp_conditional___n$3:int 0$?%__sil_tmpSIL_materialize_temp__n$2:int \n DECLARE_LOCALS(&return,&r,&0$?%__sil_tmpSIL_temp_conditional___n$3,&0$?%__sil_tmpSIL_materialize_temp__n$2); [line 28, column 1]\n " color=yellow style=filled] +"div_temp_lvalue#2433393879580018854.ddda47c9e217adc2189e8c150a553f53_1" [label="1: Start div_temp_lvalue\nFormals: a:int b:int\nLocals: r:int const & 0$?%__sil_tmpSIL_temp_conditional___n$4:int 0$?%__sil_tmpSIL_materialize_temp__n$3:int const \n DECLARE_LOCALS(&return,&r,&0$?%__sil_tmpSIL_temp_conditional___n$4,&0$?%__sil_tmpSIL_materialize_temp__n$3); [line 28, column 1]\n " color=yellow style=filled] "div_temp_lvalue#2433393879580018854.ddda47c9e217adc2189e8c150a553f53_1" -> "div_temp_lvalue#2433393879580018854.ddda47c9e217adc2189e8c150a553f53_5" ; @@ -232,23 +232,23 @@ digraph cfg { "div_temp_lvalue#2433393879580018854.ddda47c9e217adc2189e8c150a553f53_4" -> "div_temp_lvalue#2433393879580018854.ddda47c9e217adc2189e8c150a553f53_9" ; -"div_temp_lvalue#2433393879580018854.ddda47c9e217adc2189e8c150a553f53_5" [label="5: Prune (true branch, boolean exp) \n n$4=*&a:int [line 29, column 18]\n PRUNE(n$4, true); [line 29, column 18]\n " shape="invhouse"] +"div_temp_lvalue#2433393879580018854.ddda47c9e217adc2189e8c150a553f53_5" [label="5: Prune (true branch, boolean exp) \n n$5=*&a:int [line 29, column 18]\n PRUNE(n$5, true); [line 29, column 18]\n " shape="invhouse"] "div_temp_lvalue#2433393879580018854.ddda47c9e217adc2189e8c150a553f53_5" -> "div_temp_lvalue#2433393879580018854.ddda47c9e217adc2189e8c150a553f53_7" ; -"div_temp_lvalue#2433393879580018854.ddda47c9e217adc2189e8c150a553f53_6" [label="6: Prune (false branch, boolean exp) \n n$4=*&a:int [line 29, column 18]\n PRUNE(!n$4, false); [line 29, column 18]\n " shape="invhouse"] +"div_temp_lvalue#2433393879580018854.ddda47c9e217adc2189e8c150a553f53_6" [label="6: Prune (false branch, boolean exp) \n n$5=*&a:int [line 29, column 18]\n PRUNE(!n$5, false); [line 29, column 18]\n " shape="invhouse"] "div_temp_lvalue#2433393879580018854.ddda47c9e217adc2189e8c150a553f53_6" -> "div_temp_lvalue#2433393879580018854.ddda47c9e217adc2189e8c150a553f53_8" ; -"div_temp_lvalue#2433393879580018854.ddda47c9e217adc2189e8c150a553f53_7" [label="7: ConditinalStmt Branch \n n$5=*&b:int [line 29, column 22]\n *&0$?%__sil_tmpSIL_temp_conditional___n$3:int=n$5 [line 29, column 18]\n " shape="box"] +"div_temp_lvalue#2433393879580018854.ddda47c9e217adc2189e8c150a553f53_7" [label="7: ConditionalStmt Branch \n n$6=*&b:int [line 29, column 22]\n *&0$?%__sil_tmpSIL_temp_conditional___n$4:int=n$6 [line 29, column 18]\n " shape="box"] "div_temp_lvalue#2433393879580018854.ddda47c9e217adc2189e8c150a553f53_7" -> "div_temp_lvalue#2433393879580018854.ddda47c9e217adc2189e8c150a553f53_4" ; -"div_temp_lvalue#2433393879580018854.ddda47c9e217adc2189e8c150a553f53_8" [label="8: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$3:int=1 [line 29, column 18]\n " shape="box"] +"div_temp_lvalue#2433393879580018854.ddda47c9e217adc2189e8c150a553f53_8" [label="8: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$4:int=1 [line 29, column 18]\n " shape="box"] "div_temp_lvalue#2433393879580018854.ddda47c9e217adc2189e8c150a553f53_8" -> "div_temp_lvalue#2433393879580018854.ddda47c9e217adc2189e8c150a553f53_4" ; -"div_temp_lvalue#2433393879580018854.ddda47c9e217adc2189e8c150a553f53_9" [label="9: DeclStmt \n n$6=*&0$?%__sil_tmpSIL_temp_conditional___n$3:int [line 29, column 18]\n *&0$?%__sil_tmpSIL_materialize_temp__n$2:int=n$6 [line 29, column 18]\n *&r:int&=&0$?%__sil_tmpSIL_materialize_temp__n$2 [line 29, column 3]\n " shape="box"] +"div_temp_lvalue#2433393879580018854.ddda47c9e217adc2189e8c150a553f53_9" [label="9: DeclStmt \n n$7=*&0$?%__sil_tmpSIL_temp_conditional___n$4:int [line 29, column 18]\n *&0$?%__sil_tmpSIL_materialize_temp__n$3:int=n$7 [line 29, column 18]\n *&r:int const &=&0$?%__sil_tmpSIL_materialize_temp__n$3 [line 29, column 3]\n " shape="box"] "div_temp_lvalue#2433393879580018854.ddda47c9e217adc2189e8c150a553f53_9" -> "div_temp_lvalue#2433393879580018854.ddda47c9e217adc2189e8c150a553f53_3" ; diff --git a/infer/tests/codetoanalyze/cpp/shared/constructors/constructor_array.cpp.dot b/infer/tests/codetoanalyze/cpp/shared/constructors/constructor_array.cpp.dot index e49c16908..3b508a544 100644 --- a/infer/tests/codetoanalyze/cpp/shared/constructors/constructor_array.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/shared/constructors/constructor_array.cpp.dot @@ -1,6 +1,6 @@ /* @generated */ digraph cfg { -"array_of_person#7945672701495610995.0fecf6778237d47d15191cac7fab514c_1" [label="1: Start array_of_person\nFormals: \nLocals: arr:Person[10*4] 0$?%__sil_tmpSIL_materialize_temp__n$1:Person 0$?%__sil_tmpSIL_materialize_temp__n$4:Person 0$?%__sil_tmpSIL_materialize_temp__n$7:Person \n DECLARE_LOCALS(&return,&arr,&0$?%__sil_tmpSIL_materialize_temp__n$1,&0$?%__sil_tmpSIL_materialize_temp__n$4,&0$?%__sil_tmpSIL_materialize_temp__n$7); [line 17, column 1]\n " color=yellow style=filled] +"array_of_person#7945672701495610995.0fecf6778237d47d15191cac7fab514c_1" [label="1: Start array_of_person\nFormals: \nLocals: arr:Person[10*4] 0$?%__sil_tmpSIL_materialize_temp__n$2:Person 0$?%__sil_tmpSIL_materialize_temp__n$5:Person 0$?%__sil_tmpSIL_materialize_temp__n$8:Person \n DECLARE_LOCALS(&return,&arr,&0$?%__sil_tmpSIL_materialize_temp__n$2,&0$?%__sil_tmpSIL_materialize_temp__n$5,&0$?%__sil_tmpSIL_materialize_temp__n$8); [line 17, column 1]\n " color=yellow style=filled] "array_of_person#7945672701495610995.0fecf6778237d47d15191cac7fab514c_1" -> "array_of_person#7945672701495610995.0fecf6778237d47d15191cac7fab514c_4" ; @@ -11,7 +11,7 @@ digraph cfg { "array_of_person#7945672701495610995.0fecf6778237d47d15191cac7fab514c_3" -> "array_of_person#7945672701495610995.0fecf6778237d47d15191cac7fab514c_2" ; -"array_of_person#7945672701495610995.0fecf6778237d47d15191cac7fab514c_4" [label="4: DeclStmt \n n$2=_fun_Person_Person(&0$?%__sil_tmpSIL_materialize_temp__n$1:Person*) [line 18, column 21]\n n$3=_fun_Person_Person(&arr[0]:Person*,&0$?%__sil_tmpSIL_materialize_temp__n$1:Person&) [line 18, column 21]\n n$5=_fun_Person_Person(&0$?%__sil_tmpSIL_materialize_temp__n$4:Person*) [line 18, column 31]\n n$6=_fun_Person_Person(&arr[1]:Person*,&0$?%__sil_tmpSIL_materialize_temp__n$4:Person&) [line 18, column 31]\n n$8=_fun_Person_Person(&0$?%__sil_tmpSIL_materialize_temp__n$7:Person*) [line 18, column 41]\n n$9=_fun_Person_Person(&arr[2]:Person*,&0$?%__sil_tmpSIL_materialize_temp__n$7:Person&) [line 18, column 41]\n " shape="box"] +"array_of_person#7945672701495610995.0fecf6778237d47d15191cac7fab514c_4" [label="4: DeclStmt \n n$3=_fun_Person_Person(&0$?%__sil_tmpSIL_materialize_temp__n$2:Person*) [line 18, column 21]\n n$4=_fun_Person_Person(&arr[0]:Person*,&0$?%__sil_tmpSIL_materialize_temp__n$2:Person&) [line 18, column 21]\n n$6=_fun_Person_Person(&0$?%__sil_tmpSIL_materialize_temp__n$5:Person*) [line 18, column 31]\n n$7=_fun_Person_Person(&arr[1]:Person*,&0$?%__sil_tmpSIL_materialize_temp__n$5:Person&) [line 18, column 31]\n n$9=_fun_Person_Person(&0$?%__sil_tmpSIL_materialize_temp__n$8:Person*) [line 18, column 41]\n n$10=_fun_Person_Person(&arr[2]:Person*,&0$?%__sil_tmpSIL_materialize_temp__n$8:Person&) [line 18, column 41]\n " shape="box"] "array_of_person#7945672701495610995.0fecf6778237d47d15191cac7fab514c_4" -> "array_of_person#7945672701495610995.0fecf6778237d47d15191cac7fab514c_3" ; @@ -22,7 +22,7 @@ digraph cfg { "initialization_c_style#16495589501342328206.0d90448020e72c05f693b9221dac03f8_2" [label="2: Exit initialization_c_style \n " color=yellow style=filled] -"initialization_c_style#16495589501342328206.0d90448020e72c05f693b9221dac03f8_3" [label="3: DeclStmt \n n$0=_fun_Z_Z(&z2:Z*) [line 34, column 12]\n " shape="box"] +"initialization_c_style#16495589501342328206.0d90448020e72c05f693b9221dac03f8_3" [label="3: DeclStmt \n n$1=_fun_Z_Z(&z2:Z*) [line 34, column 12]\n " shape="box"] "initialization_c_style#16495589501342328206.0d90448020e72c05f693b9221dac03f8_3" -> "initialization_c_style#16495589501342328206.0d90448020e72c05f693b9221dac03f8_2" ; @@ -37,19 +37,19 @@ digraph cfg { "initialization_mixed_styles_not_handled_correctly#5603413470418470631.422782850043f1b48105fbbb47efe379_2" [label="2: Exit initialization_mixed_styles_not_handled_correctly \n " color=yellow style=filled] -"initialization_mixed_styles_not_handled_correctly#5603413470418470631.422782850043f1b48105fbbb47efe379_3" [label="3: DeclStmt \n n$0=_fun_Z_Z(&z2:Z*) [line 42, column 12]\n " shape="box"] +"initialization_mixed_styles_not_handled_correctly#5603413470418470631.422782850043f1b48105fbbb47efe379_3" [label="3: DeclStmt \n n$1=_fun_Z_Z(&z2:Z*) [line 42, column 12]\n " shape="box"] "initialization_mixed_styles_not_handled_correctly#5603413470418470631.422782850043f1b48105fbbb47efe379_3" -> "initialization_mixed_styles_not_handled_correctly#5603413470418470631.422782850043f1b48105fbbb47efe379_2" ; -"initialization_mixed_styles_not_handled_correctly#5603413470418470631.422782850043f1b48105fbbb47efe379_4" [label="4: DeclStmt \n *&z[0].a:int=1 [line 41, column 20]\n *&z[0].b:int=2 [line 41, column 20]\n n$1=_fun_Z_Z(&z[1]:Z*,&old:Z&) [line 41, column 28]\n " shape="box"] +"initialization_mixed_styles_not_handled_correctly#5603413470418470631.422782850043f1b48105fbbb47efe379_4" [label="4: DeclStmt \n *&z[0].a:int=1 [line 41, column 20]\n *&z[0].b:int=2 [line 41, column 20]\n n$2=_fun_Z_Z(&z[1]:Z*,&old:Z&) [line 41, column 28]\n " shape="box"] "initialization_mixed_styles_not_handled_correctly#5603413470418470631.422782850043f1b48105fbbb47efe379_4" -> "initialization_mixed_styles_not_handled_correctly#5603413470418470631.422782850043f1b48105fbbb47efe379_3" ; -"initialization_mixed_styles_not_handled_correctly#5603413470418470631.422782850043f1b48105fbbb47efe379_5" [label="5: DeclStmt \n n$2=_fun_Z_Z(&old:Z*) [line 40, column 12]\n " shape="box"] +"initialization_mixed_styles_not_handled_correctly#5603413470418470631.422782850043f1b48105fbbb47efe379_5" [label="5: DeclStmt \n n$3=_fun_Z_Z(&old:Z*) [line 40, column 12]\n " shape="box"] "initialization_mixed_styles_not_handled_correctly#5603413470418470631.422782850043f1b48105fbbb47efe379_5" -> "initialization_mixed_styles_not_handled_correctly#5603413470418470631.422782850043f1b48105fbbb47efe379_4" ; -"matrix_of_person#2881910427017022824.27f7f148c4911c13b3061cef6fe2673d_1" [label="1: Start matrix_of_person\nFormals: \nLocals: arr:Person[2*4][2*8] 0$?%__sil_tmpSIL_materialize_temp__n$1:Person 0$?%__sil_tmpSIL_materialize_temp__n$4:Person 0$?%__sil_tmpSIL_materialize_temp__n$7:Person 0$?%__sil_tmpSIL_materialize_temp__n$10:Person \n DECLARE_LOCALS(&return,&arr,&0$?%__sil_tmpSIL_materialize_temp__n$1,&0$?%__sil_tmpSIL_materialize_temp__n$4,&0$?%__sil_tmpSIL_materialize_temp__n$7,&0$?%__sil_tmpSIL_materialize_temp__n$10); [line 22, column 1]\n " color=yellow style=filled] +"matrix_of_person#2881910427017022824.27f7f148c4911c13b3061cef6fe2673d_1" [label="1: Start matrix_of_person\nFormals: \nLocals: arr:Person[2*4][2*8] 0$?%__sil_tmpSIL_materialize_temp__n$2:Person 0$?%__sil_tmpSIL_materialize_temp__n$5:Person 0$?%__sil_tmpSIL_materialize_temp__n$8:Person 0$?%__sil_tmpSIL_materialize_temp__n$11:Person \n DECLARE_LOCALS(&return,&arr,&0$?%__sil_tmpSIL_materialize_temp__n$2,&0$?%__sil_tmpSIL_materialize_temp__n$5,&0$?%__sil_tmpSIL_materialize_temp__n$8,&0$?%__sil_tmpSIL_materialize_temp__n$11); [line 22, column 1]\n " color=yellow style=filled] "matrix_of_person#2881910427017022824.27f7f148c4911c13b3061cef6fe2673d_1" -> "matrix_of_person#2881910427017022824.27f7f148c4911c13b3061cef6fe2673d_4" ; @@ -60,7 +60,7 @@ digraph cfg { "matrix_of_person#2881910427017022824.27f7f148c4911c13b3061cef6fe2673d_3" -> "matrix_of_person#2881910427017022824.27f7f148c4911c13b3061cef6fe2673d_2" ; -"matrix_of_person#2881910427017022824.27f7f148c4911c13b3061cef6fe2673d_4" [label="4: DeclStmt \n n$2=_fun_Person_Person(&0$?%__sil_tmpSIL_materialize_temp__n$1:Person*) [line 23, column 23]\n n$3=_fun_Person_Person(&arr[0][0]:Person*,&0$?%__sil_tmpSIL_materialize_temp__n$1:Person&) [line 23, column 23]\n n$5=_fun_Person_Person(&0$?%__sil_tmpSIL_materialize_temp__n$4:Person*) [line 23, column 33]\n n$6=_fun_Person_Person(&arr[0][1]:Person*,&0$?%__sil_tmpSIL_materialize_temp__n$4:Person&) [line 23, column 33]\n n$8=_fun_Person_Person(&0$?%__sil_tmpSIL_materialize_temp__n$7:Person*) [line 23, column 43]\n n$9=_fun_Person_Person(&arr[1][0]:Person*,&0$?%__sil_tmpSIL_materialize_temp__n$7:Person&) [line 23, column 43]\n n$11=_fun_Person_Person(&0$?%__sil_tmpSIL_materialize_temp__n$10:Person*) [line 23, column 53]\n n$12=_fun_Person_Person(&arr[1][1]:Person*,&0$?%__sil_tmpSIL_materialize_temp__n$10:Person&) [line 23, column 53]\n " shape="box"] +"matrix_of_person#2881910427017022824.27f7f148c4911c13b3061cef6fe2673d_4" [label="4: DeclStmt \n n$3=_fun_Person_Person(&0$?%__sil_tmpSIL_materialize_temp__n$2:Person*) [line 23, column 23]\n n$4=_fun_Person_Person(&arr[0][0]:Person*,&0$?%__sil_tmpSIL_materialize_temp__n$2:Person&) [line 23, column 23]\n n$6=_fun_Person_Person(&0$?%__sil_tmpSIL_materialize_temp__n$5:Person*) [line 23, column 33]\n n$7=_fun_Person_Person(&arr[0][1]:Person*,&0$?%__sil_tmpSIL_materialize_temp__n$5:Person&) [line 23, column 33]\n n$9=_fun_Person_Person(&0$?%__sil_tmpSIL_materialize_temp__n$8:Person*) [line 23, column 43]\n n$10=_fun_Person_Person(&arr[1][0]:Person*,&0$?%__sil_tmpSIL_materialize_temp__n$8:Person&) [line 23, column 43]\n n$12=_fun_Person_Person(&0$?%__sil_tmpSIL_materialize_temp__n$11:Person*) [line 23, column 53]\n n$13=_fun_Person_Person(&arr[1][1]:Person*,&0$?%__sil_tmpSIL_materialize_temp__n$11:Person&) [line 23, column 53]\n " shape="box"] "matrix_of_person#2881910427017022824.27f7f148c4911c13b3061cef6fe2673d_4" -> "matrix_of_person#2881910427017022824.27f7f148c4911c13b3061cef6fe2673d_3" ; @@ -78,7 +78,7 @@ digraph cfg { "Person#Person#{13294170998561185799}.33e91269ce59e5b361de941ed03c6643_2" [label="2: Exit Person_Person \n " color=yellow style=filled] -"Person#Person#{13294170998561185799}.33e91269ce59e5b361de941ed03c6643_3" [label="3: BinaryOperatorStmt: Assign \n n$0=*&this:Person* [line 12, column 19]\n n$1=*&i:int [line 12, column 23]\n *n$0.x:int=n$1 [line 12, column 19]\n " shape="box"] +"Person#Person#{13294170998561185799}.33e91269ce59e5b361de941ed03c6643_3" [label="3: BinaryOperatorStmt: Assign \n n$1=*&this:Person* [line 12, column 19]\n n$2=*&i:int [line 12, column 23]\n *n$1.x:int=n$2 [line 12, column 19]\n " shape="box"] "Person#Person#{13294170998561185799}.33e91269ce59e5b361de941ed03c6643_3" -> "Person#Person#{13294170998561185799}.33e91269ce59e5b361de941ed03c6643_2" ; @@ -89,7 +89,7 @@ digraph cfg { "Person#Person#{14928211719836437323|constexpr}.702b3fbc6c128973c192111cbb802edd_2" [label="2: Exit Person_Person \n " color=yellow style=filled] -"Person#Person#{14928211719836437323|constexpr}.702b3fbc6c128973c192111cbb802edd_3" [label="3: Constructor Init \n n$0=*&this:Person* [line 10, column 7]\n n$1=*&__param_0:Person& [line 10, column 7]\n n$2=*n$1.x:int [line 10, column 7]\n *n$0.x:int=n$2 [line 10, column 7]\n " shape="box"] +"Person#Person#{14928211719836437323|constexpr}.702b3fbc6c128973c192111cbb802edd_3" [label="3: Constructor Init \n n$2=*&this:Person* [line 10, column 7]\n n$3=*&__param_0:Person& [line 10, column 7]\n n$4=*n$3.x:int [line 10, column 7]\n *n$2.x:int=n$4 [line 10, column 7]\n " shape="box"] "Person#Person#{14928211719836437323|constexpr}.702b3fbc6c128973c192111cbb802edd_3" -> "Person#Person#{14928211719836437323|constexpr}.702b3fbc6c128973c192111cbb802edd_2" ; @@ -107,11 +107,11 @@ digraph cfg { "Z#Z#{9563152316573688029|constexpr}.befec20c7675cc0f4c49f58f88b8946e_2" [label="2: Exit Z_Z \n " color=yellow style=filled] -"Z#Z#{9563152316573688029|constexpr}.befec20c7675cc0f4c49f58f88b8946e_3" [label="3: Constructor Init \n n$0=*&this:Z* [line 27, column 8]\n n$1=*&__param_0:Z const & [line 27, column 8]\n n$2=*n$1.b:int [line 27, column 8]\n *n$0.b:int=n$2 [line 27, column 8]\n " shape="box"] +"Z#Z#{9563152316573688029|constexpr}.befec20c7675cc0f4c49f58f88b8946e_3" [label="3: Constructor Init \n n$2=*&this:Z* [line 27, column 8]\n n$3=*&__param_0:Z const & [line 27, column 8]\n n$4=*n$3.b:int [line 27, column 8]\n *n$2.b:int=n$4 [line 27, column 8]\n " shape="box"] "Z#Z#{9563152316573688029|constexpr}.befec20c7675cc0f4c49f58f88b8946e_3" -> "Z#Z#{9563152316573688029|constexpr}.befec20c7675cc0f4c49f58f88b8946e_2" ; -"Z#Z#{9563152316573688029|constexpr}.befec20c7675cc0f4c49f58f88b8946e_4" [label="4: Constructor Init \n n$3=*&this:Z* [line 27, column 8]\n n$4=*&__param_0:Z const & [line 27, column 8]\n n$5=*n$4.a:int [line 27, column 8]\n *n$3.a:int=n$5 [line 27, column 8]\n " shape="box"] +"Z#Z#{9563152316573688029|constexpr}.befec20c7675cc0f4c49f58f88b8946e_4" [label="4: Constructor Init \n n$5=*&this:Z* [line 27, column 8]\n n$6=*&__param_0:Z const & [line 27, column 8]\n n$7=*n$6.a:int [line 27, column 8]\n *n$5.a:int=n$7 [line 27, column 8]\n " shape="box"] "Z#Z#{9563152316573688029|constexpr}.befec20c7675cc0f4c49f58f88b8946e_4" -> "Z#Z#{9563152316573688029|constexpr}.befec20c7675cc0f4c49f58f88b8946e_3" ; diff --git a/infer/tests/codetoanalyze/cpp/shared/constructors/constructor_default_arg.cpp.dot b/infer/tests/codetoanalyze/cpp/shared/constructors/constructor_default_arg.cpp.dot index 2d12a5b45..32ecaed14 100644 --- a/infer/tests/codetoanalyze/cpp/shared/constructors/constructor_default_arg.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/shared/constructors/constructor_default_arg.cpp.dot @@ -7,15 +7,15 @@ digraph cfg { "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_2" [label="2: Exit test \n " color=yellow style=filled] -"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_3" [label="3: DeclStmt \n n$0=_fun_X_X(&x3:X*,0:int,1:int) [line 23, column 5]\n " shape="box"] +"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_3" [label="3: DeclStmt \n n$1=_fun_X_X(&x3:X*,0:int,1:int) [line 23, column 5]\n " shape="box"] "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_3" -> "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_2" ; -"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_4" [label="4: DeclStmt \n n$1=_fun_X_X(&x2:X*,1:int,0:int) [line 22, column 5]\n " shape="box"] +"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_4" [label="4: DeclStmt \n n$2=_fun_X_X(&x2:X*,1:int,0:int) [line 22, column 5]\n " shape="box"] "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_4" -> "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_3" ; -"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_5" [label="5: DeclStmt \n n$2=_fun_X_X(&x1:X*,0:int,0:int) [line 21, column 5]\n " shape="box"] +"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_5" [label="5: DeclStmt \n n$3=_fun_X_X(&x1:X*,0:int,0:int) [line 21, column 5]\n " shape="box"] "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_5" -> "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_4" ; @@ -26,7 +26,7 @@ digraph cfg { "X#X#{14939599560045044604}.b28c8e2a1dd7783932fc838d8413f387_2" [label="2: Exit X_X \n " color=yellow style=filled] -"X#X#{14939599560045044604}.b28c8e2a1dd7783932fc838d8413f387_3" [label="3: BinaryOperatorStmt: Assign \n n$0=*&this:X* [line 18, column 22]\n n$1=*&a:int [line 18, column 26]\n n$2=*&b:int [line 18, column 30]\n *n$0.f:int=(n$1 + n$2) [line 18, column 22]\n " shape="box"] +"X#X#{14939599560045044604}.b28c8e2a1dd7783932fc838d8413f387_3" [label="3: BinaryOperatorStmt: Assign \n n$1=*&this:X* [line 18, column 22]\n n$2=*&a:int [line 18, column 26]\n n$3=*&b:int [line 18, column 30]\n *n$1.f:int=(n$2 + n$3) [line 18, column 22]\n " shape="box"] "X#X#{14939599560045044604}.b28c8e2a1dd7783932fc838d8413f387_3" -> "X#X#{14939599560045044604}.b28c8e2a1dd7783932fc838d8413f387_2" ; diff --git a/infer/tests/codetoanalyze/cpp/shared/constructors/constructor_init.cpp.dot b/infer/tests/codetoanalyze/cpp/shared/constructors/constructor_init.cpp.dot index dfb079d8d..96fd178f1 100644 --- a/infer/tests/codetoanalyze/cpp/shared/constructors/constructor_init.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/shared/constructors/constructor_init.cpp.dot @@ -11,11 +11,11 @@ digraph cfg { "delegate_constr_f2_div0#13553474688240246893.0ce7e6b119d9277f847a079378cf30a1_3" -> "delegate_constr_f2_div0#13553474688240246893.0ce7e6b119d9277f847a079378cf30a1_2" ; -"delegate_constr_f2_div0#13553474688240246893.0ce7e6b119d9277f847a079378cf30a1_4" [label="4: DeclStmt \n n$3=*&b.f:int [line 50, column 15]\n *&v:int=(1 / n$3) [line 50, column 3]\n " shape="box"] +"delegate_constr_f2_div0#13553474688240246893.0ce7e6b119d9277f847a079378cf30a1_4" [label="4: DeclStmt \n n$4=*&b.f:int [line 50, column 15]\n *&v:int=(1 / n$4) [line 50, column 3]\n " shape="box"] "delegate_constr_f2_div0#13553474688240246893.0ce7e6b119d9277f847a079378cf30a1_4" -> "delegate_constr_f2_div0#13553474688240246893.0ce7e6b119d9277f847a079378cf30a1_3" ; -"delegate_constr_f2_div0#13553474688240246893.0ce7e6b119d9277f847a079378cf30a1_5" [label="5: DeclStmt \n n$4=_fun_B_B(&b:B*,-1:int,0:int) [line 49, column 5]\n " shape="box"] +"delegate_constr_f2_div0#13553474688240246893.0ce7e6b119d9277f847a079378cf30a1_5" [label="5: DeclStmt \n n$5=_fun_B_B(&b:B*,-1:int,0:int) [line 49, column 5]\n " shape="box"] "delegate_constr_f2_div0#13553474688240246893.0ce7e6b119d9277f847a079378cf30a1_5" -> "delegate_constr_f2_div0#13553474688240246893.0ce7e6b119d9277f847a079378cf30a1_4" ; @@ -30,11 +30,11 @@ digraph cfg { "delegate_constr_f_div0#5612932889167727636.f7eff0d7a58a3e6a6faddf562531b7f4_3" -> "delegate_constr_f_div0#5612932889167727636.f7eff0d7a58a3e6a6faddf562531b7f4_2" ; -"delegate_constr_f_div0#5612932889167727636.f7eff0d7a58a3e6a6faddf562531b7f4_4" [label="4: DeclStmt \n n$3=*&b.f2:int [line 44, column 15]\n *&v:int=(1 / n$3) [line 44, column 3]\n " shape="box"] +"delegate_constr_f_div0#5612932889167727636.f7eff0d7a58a3e6a6faddf562531b7f4_4" [label="4: DeclStmt \n n$4=*&b.f2:int [line 44, column 15]\n *&v:int=(1 / n$4) [line 44, column 3]\n " shape="box"] "delegate_constr_f_div0#5612932889167727636.f7eff0d7a58a3e6a6faddf562531b7f4_4" -> "delegate_constr_f_div0#5612932889167727636.f7eff0d7a58a3e6a6faddf562531b7f4_3" ; -"delegate_constr_f_div0#5612932889167727636.f7eff0d7a58a3e6a6faddf562531b7f4_5" [label="5: DeclStmt \n n$4=_fun_B_B(&b:B*,-1:int,1:int) [line 43, column 5]\n " shape="box"] +"delegate_constr_f_div0#5612932889167727636.f7eff0d7a58a3e6a6faddf562531b7f4_5" [label="5: DeclStmt \n n$5=_fun_B_B(&b:B*,-1:int,1:int) [line 43, column 5]\n " shape="box"] "delegate_constr_f_div0#5612932889167727636.f7eff0d7a58a3e6a6faddf562531b7f4_5" -> "delegate_constr_f_div0#5612932889167727636.f7eff0d7a58a3e6a6faddf562531b7f4_4" ; @@ -49,7 +49,7 @@ digraph cfg { "f2_div0#7534053771484990951.dd0b0233a011b5600e68aef2c840bcef_3" -> "f2_div0#7534053771484990951.dd0b0233a011b5600e68aef2c840bcef_2" ; -"f2_div0#7534053771484990951.dd0b0233a011b5600e68aef2c840bcef_4" [label="4: DeclStmt \n n$3=_fun_B_B(&b:B*,0:int) [line 28, column 5]\n " shape="box"] +"f2_div0#7534053771484990951.dd0b0233a011b5600e68aef2c840bcef_4" [label="4: DeclStmt \n n$4=_fun_B_B(&b:B*,0:int) [line 28, column 5]\n " shape="box"] "f2_div0#7534053771484990951.dd0b0233a011b5600e68aef2c840bcef_4" -> "f2_div0#7534053771484990951.dd0b0233a011b5600e68aef2c840bcef_3" ; @@ -64,7 +64,7 @@ digraph cfg { "f_div0#425664895438337450.ac4424ba5cea731e26a9fe2fb1b0b687_3" -> "f_div0#425664895438337450.ac4424ba5cea731e26a9fe2fb1b0b687_2" ; -"f_div0#425664895438337450.ac4424ba5cea731e26a9fe2fb1b0b687_4" [label="4: DeclStmt \n n$3=_fun_B_B(&b:B*,0:int) [line 33, column 5]\n " shape="box"] +"f_div0#425664895438337450.ac4424ba5cea731e26a9fe2fb1b0b687_4" [label="4: DeclStmt \n n$4=_fun_B_B(&b:B*,0:int) [line 33, column 5]\n " shape="box"] "f_div0#425664895438337450.ac4424ba5cea731e26a9fe2fb1b0b687_4" -> "f_div0#425664895438337450.ac4424ba5cea731e26a9fe2fb1b0b687_3" ; @@ -79,19 +79,19 @@ digraph cfg { "f_f2_div1#1916649103065485619.7e2fb5eeaa415affd6bdd86573d188de_3" -> "f_f2_div1#1916649103065485619.7e2fb5eeaa415affd6bdd86573d188de_2" ; -"f_f2_div1#1916649103065485619.7e2fb5eeaa415affd6bdd86573d188de_4" [label="4: DeclStmt \n n$4=*&b.t.v:int [line 58, column 16]\n *&v3:int=(1 / n$4) [line 58, column 3]\n " shape="box"] +"f_f2_div1#1916649103065485619.7e2fb5eeaa415affd6bdd86573d188de_4" [label="4: DeclStmt \n n$5=*&b.t.v:int [line 58, column 16]\n *&v3:int=(1 / n$5) [line 58, column 3]\n " shape="box"] "f_f2_div1#1916649103065485619.7e2fb5eeaa415affd6bdd86573d188de_4" -> "f_f2_div1#1916649103065485619.7e2fb5eeaa415affd6bdd86573d188de_3" ; -"f_f2_div1#1916649103065485619.7e2fb5eeaa415affd6bdd86573d188de_5" [label="5: DeclStmt \n n$5=*&b.f2:int [line 57, column 16]\n *&v2:int=(1 / n$5) [line 57, column 3]\n " shape="box"] +"f_f2_div1#1916649103065485619.7e2fb5eeaa415affd6bdd86573d188de_5" [label="5: DeclStmt \n n$6=*&b.f2:int [line 57, column 16]\n *&v2:int=(1 / n$6) [line 57, column 3]\n " shape="box"] "f_f2_div1#1916649103065485619.7e2fb5eeaa415affd6bdd86573d188de_5" -> "f_f2_div1#1916649103065485619.7e2fb5eeaa415affd6bdd86573d188de_4" ; -"f_f2_div1#1916649103065485619.7e2fb5eeaa415affd6bdd86573d188de_6" [label="6: DeclStmt \n n$6=*&b.f:int [line 56, column 15]\n *&v:int=(1 / n$6) [line 56, column 3]\n " shape="box"] +"f_f2_div1#1916649103065485619.7e2fb5eeaa415affd6bdd86573d188de_6" [label="6: DeclStmt \n n$7=*&b.f:int [line 56, column 15]\n *&v:int=(1 / n$7) [line 56, column 3]\n " shape="box"] "f_f2_div1#1916649103065485619.7e2fb5eeaa415affd6bdd86573d188de_6" -> "f_f2_div1#1916649103065485619.7e2fb5eeaa415affd6bdd86573d188de_5" ; -"f_f2_div1#1916649103065485619.7e2fb5eeaa415affd6bdd86573d188de_7" [label="7: DeclStmt \n n$7=_fun_B_B(&b:B*,1:int) [line 55, column 5]\n " shape="box"] +"f_f2_div1#1916649103065485619.7e2fb5eeaa415affd6bdd86573d188de_7" [label="7: DeclStmt \n n$8=_fun_B_B(&b:B*,1:int) [line 55, column 5]\n " shape="box"] "f_f2_div1#1916649103065485619.7e2fb5eeaa415affd6bdd86573d188de_7" -> "f_f2_div1#1916649103065485619.7e2fb5eeaa415affd6bdd86573d188de_6" ; @@ -106,7 +106,7 @@ digraph cfg { "t_div0#3531430030893775324.a762c245df414e083e61674c93898055_3" -> "t_div0#3531430030893775324.a762c245df414e083e61674c93898055_2" ; -"t_div0#3531430030893775324.a762c245df414e083e61674c93898055_4" [label="4: DeclStmt \n n$3=_fun_B_B(&b:B*,0:int) [line 38, column 5]\n " shape="box"] +"t_div0#3531430030893775324.a762c245df414e083e61674c93898055_4" [label="4: DeclStmt \n n$4=_fun_B_B(&b:B*,0:int) [line 38, column 5]\n " shape="box"] "t_div0#3531430030893775324.a762c245df414e083e61674c93898055_4" -> "t_div0#3531430030893775324.a762c245df414e083e61674c93898055_3" ; @@ -117,7 +117,7 @@ digraph cfg { "A#A#{14779048587651412014}.4ba2c6594c8960564bedc7b6cbdf6ae0_2" [label="2: Exit A_A \n " color=yellow style=filled] -"A#A#{14779048587651412014}.4ba2c6594c8960564bedc7b6cbdf6ae0_3" [label="3: Constructor Init \n n$0=*&this:A* [line 12, column 14]\n n$1=*&f:int [line 12, column 16]\n *n$0.f:int=n$1 [line 12, column 14]\n " shape="box"] +"A#A#{14779048587651412014}.4ba2c6594c8960564bedc7b6cbdf6ae0_3" [label="3: Constructor Init \n n$2=*&this:A* [line 12, column 14]\n n$3=*&f:int [line 12, column 16]\n *n$2.f:int=n$3 [line 12, column 14]\n " shape="box"] "A#A#{14779048587651412014}.4ba2c6594c8960564bedc7b6cbdf6ae0_3" -> "A#A#{14779048587651412014}.4ba2c6594c8960564bedc7b6cbdf6ae0_2" ; @@ -128,15 +128,15 @@ digraph cfg { "B#B#{10798906211412859239}.a51813e44ba191ffaf76fde9e0b33185_2" [label="2: Exit B_B \n " color=yellow style=filled] -"B#B#{10798906211412859239}.a51813e44ba191ffaf76fde9e0b33185_3" [label="3: Constructor Init \n n$0=*&this:B* [line 22, column 27]\n n$1=*&a:int [line 22, column 29]\n n$2=_fun_B::T_T(n$0.t:B::T*,n$1:int) [line 22, column 27]\n " shape="box"] +"B#B#{10798906211412859239}.a51813e44ba191ffaf76fde9e0b33185_3" [label="3: Constructor Init \n n$2=*&this:B* [line 22, column 27]\n n$3=*&a:int [line 22, column 29]\n n$4=_fun_B::T_T(n$2.t:B::T*,n$3:int) [line 22, column 27]\n " shape="box"] "B#B#{10798906211412859239}.a51813e44ba191ffaf76fde9e0b33185_3" -> "B#B#{10798906211412859239}.a51813e44ba191ffaf76fde9e0b33185_2" ; -"B#B#{10798906211412859239}.a51813e44ba191ffaf76fde9e0b33185_4" [label="4: Constructor Init \n n$3=*&this:B* [line 22, column 20]\n n$4=*&a:int [line 22, column 23]\n *n$3.f2:int=n$4 [line 22, column 20]\n " shape="box"] +"B#B#{10798906211412859239}.a51813e44ba191ffaf76fde9e0b33185_4" [label="4: Constructor Init \n n$5=*&this:B* [line 22, column 20]\n n$6=*&a:int [line 22, column 23]\n *n$5.f2:int=n$6 [line 22, column 20]\n " shape="box"] "B#B#{10798906211412859239}.a51813e44ba191ffaf76fde9e0b33185_4" -> "B#B#{10798906211412859239}.a51813e44ba191ffaf76fde9e0b33185_3" ; -"B#B#{10798906211412859239}.a51813e44ba191ffaf76fde9e0b33185_5" [label="5: Constructor Init \n n$5=*&this:B* [line 22, column 14]\n n$6=*&a:int [line 22, column 16]\n n$7=_fun_A_A(n$5:B*,n$6:int) [line 22, column 14]\n " shape="box"] +"B#B#{10798906211412859239}.a51813e44ba191ffaf76fde9e0b33185_5" [label="5: Constructor Init \n n$7=*&this:B* [line 22, column 14]\n n$8=*&a:int [line 22, column 16]\n n$9=_fun_A_A(n$7:B*,n$8:int) [line 22, column 14]\n " shape="box"] "B#B#{10798906211412859239}.a51813e44ba191ffaf76fde9e0b33185_5" -> "B#B#{10798906211412859239}.a51813e44ba191ffaf76fde9e0b33185_4" ; @@ -147,11 +147,11 @@ digraph cfg { "B#B#{12472590675666260682}.da2bf46e3a176d218006b99f6059cb97_2" [label="2: Exit B_B \n " color=yellow style=filled] -"B#B#{12472590675666260682}.da2bf46e3a176d218006b99f6059cb97_3" [label="3: BinaryOperatorStmt: Assign \n n$0=*&this:B* [line 24, column 32]\n n$1=*&b:int [line 24, column 37]\n *n$0.f2:int=n$1 [line 24, column 32]\n " shape="box"] +"B#B#{12472590675666260682}.da2bf46e3a176d218006b99f6059cb97_3" [label="3: BinaryOperatorStmt: Assign \n n$1=*&this:B* [line 24, column 32]\n n$2=*&b:int [line 24, column 37]\n *n$1.f2:int=n$2 [line 24, column 32]\n " shape="box"] "B#B#{12472590675666260682}.da2bf46e3a176d218006b99f6059cb97_3" -> "B#B#{12472590675666260682}.da2bf46e3a176d218006b99f6059cb97_2" ; -"B#B#{12472590675666260682}.da2bf46e3a176d218006b99f6059cb97_4" [label="4: Constructor Init \n n$2=*&this:B* [line 24, column 21]\n n$3=*&a:int [line 24, column 23]\n n$4=*&b:int [line 24, column 27]\n n$5=_fun_B_B(n$2:B*,(n$3 + n$4):int) [line 24, column 21]\n " shape="box"] +"B#B#{12472590675666260682}.da2bf46e3a176d218006b99f6059cb97_4" [label="4: Constructor Init \n n$3=*&this:B* [line 24, column 21]\n n$4=*&a:int [line 24, column 23]\n n$5=*&b:int [line 24, column 27]\n n$6=_fun_B_B(n$3:B*,(n$4 + n$5):int) [line 24, column 21]\n " shape="box"] "B#B#{12472590675666260682}.da2bf46e3a176d218006b99f6059cb97_4" -> "B#B#{12472590675666260682}.da2bf46e3a176d218006b99f6059cb97_3" ; @@ -162,7 +162,7 @@ digraph cfg { "T#T#B#{10782891829941482898}.2f080fd8e7f17199a0e7ff14c49d6dba_2" [label="2: Exit B::T_T \n " color=yellow style=filled] -"T#T#B#{10782891829941482898}.2f080fd8e7f17199a0e7ff14c49d6dba_3" [label="3: Constructor Init \n n$0=*&this:B::T* [line 18, column 16]\n n$1=*&v:int [line 18, column 18]\n *n$0.v:int=n$1 [line 18, column 16]\n " shape="box"] +"T#T#B#{10782891829941482898}.2f080fd8e7f17199a0e7ff14c49d6dba_3" [label="3: Constructor Init \n n$2=*&this:B::T* [line 18, column 16]\n n$3=*&v:int [line 18, column 18]\n *n$2.v:int=n$3 [line 18, column 16]\n " shape="box"] "T#T#B#{10782891829941482898}.2f080fd8e7f17199a0e7ff14c49d6dba_3" -> "T#T#B#{10782891829941482898}.2f080fd8e7f17199a0e7ff14c49d6dba_2" ; diff --git a/infer/tests/codetoanalyze/cpp/shared/constructors/constructor_new.cpp.dot b/infer/tests/codetoanalyze/cpp/shared/constructors/constructor_new.cpp.dot index e6f1b9ebb..777e0c151 100644 --- a/infer/tests/codetoanalyze/cpp/shared/constructors/constructor_new.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/shared/constructors/constructor_new.cpp.dot @@ -1,6 +1,6 @@ /* @generated */ digraph cfg { -"array_of_class_with_not_constant_size#constructor_new#9810665286379016302.453a7058d5d4d9a1fa36084713fcfc7d_1" [label="1: Start constructor_new::array_of_class_with_not_constant_size\nFormals: \nLocals: tarray:constructor_new::Person* 0$?%__sil_tmpSIL_temp_conditional___n$0:int \n DECLARE_LOCALS(&return,&tarray,&0$?%__sil_tmpSIL_temp_conditional___n$0); [line 90, column 1]\n " color=yellow style=filled] +"array_of_class_with_not_constant_size#constructor_new#9810665286379016302.453a7058d5d4d9a1fa36084713fcfc7d_1" [label="1: Start constructor_new::array_of_class_with_not_constant_size\nFormals: \nLocals: tarray:constructor_new::Person* 0$?%__sil_tmpSIL_temp_conditional___n$1:int \n DECLARE_LOCALS(&return,&tarray,&0$?%__sil_tmpSIL_temp_conditional___n$1); [line 90, column 1]\n " color=yellow style=filled] "array_of_class_with_not_constant_size#constructor_new#9810665286379016302.453a7058d5d4d9a1fa36084713fcfc7d_1" -> "array_of_class_with_not_constant_size#constructor_new#9810665286379016302.453a7058d5d4d9a1fa36084713fcfc7d_4" ; @@ -11,28 +11,28 @@ digraph cfg { "array_of_class_with_not_constant_size#constructor_new#9810665286379016302.453a7058d5d4d9a1fa36084713fcfc7d_3" -> "array_of_class_with_not_constant_size#constructor_new#9810665286379016302.453a7058d5d4d9a1fa36084713fcfc7d_9" ; -"array_of_class_with_not_constant_size#constructor_new#9810665286379016302.453a7058d5d4d9a1fa36084713fcfc7d_4" [label="4: BinaryOperatorStmt: EQ \n n$1=_fun_constructor_new::getValue(5:int) [line 91, column 31]\n " shape="box"] +"array_of_class_with_not_constant_size#constructor_new#9810665286379016302.453a7058d5d4d9a1fa36084713fcfc7d_4" [label="4: BinaryOperatorStmt: EQ \n n$2=_fun_constructor_new::getValue(5:int) [line 91, column 31]\n " shape="box"] "array_of_class_with_not_constant_size#constructor_new#9810665286379016302.453a7058d5d4d9a1fa36084713fcfc7d_4" -> "array_of_class_with_not_constant_size#constructor_new#9810665286379016302.453a7058d5d4d9a1fa36084713fcfc7d_5" ; "array_of_class_with_not_constant_size#constructor_new#9810665286379016302.453a7058d5d4d9a1fa36084713fcfc7d_4" -> "array_of_class_with_not_constant_size#constructor_new#9810665286379016302.453a7058d5d4d9a1fa36084713fcfc7d_6" ; -"array_of_class_with_not_constant_size#constructor_new#9810665286379016302.453a7058d5d4d9a1fa36084713fcfc7d_5" [label="5: Prune (true branch, boolean exp) \n PRUNE((n$1 == 5), true); [line 91, column 31]\n " shape="invhouse"] +"array_of_class_with_not_constant_size#constructor_new#9810665286379016302.453a7058d5d4d9a1fa36084713fcfc7d_5" [label="5: Prune (true branch, boolean exp) \n PRUNE((n$2 == 5), true); [line 91, column 31]\n " shape="invhouse"] "array_of_class_with_not_constant_size#constructor_new#9810665286379016302.453a7058d5d4d9a1fa36084713fcfc7d_5" -> "array_of_class_with_not_constant_size#constructor_new#9810665286379016302.453a7058d5d4d9a1fa36084713fcfc7d_7" ; -"array_of_class_with_not_constant_size#constructor_new#9810665286379016302.453a7058d5d4d9a1fa36084713fcfc7d_6" [label="6: Prune (false branch, boolean exp) \n PRUNE(!(n$1 == 5), false); [line 91, column 31]\n " shape="invhouse"] +"array_of_class_with_not_constant_size#constructor_new#9810665286379016302.453a7058d5d4d9a1fa36084713fcfc7d_6" [label="6: Prune (false branch, boolean exp) \n PRUNE(!(n$2 == 5), false); [line 91, column 31]\n " shape="invhouse"] "array_of_class_with_not_constant_size#constructor_new#9810665286379016302.453a7058d5d4d9a1fa36084713fcfc7d_6" -> "array_of_class_with_not_constant_size#constructor_new#9810665286379016302.453a7058d5d4d9a1fa36084713fcfc7d_8" ; -"array_of_class_with_not_constant_size#constructor_new#9810665286379016302.453a7058d5d4d9a1fa36084713fcfc7d_7" [label="7: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int=5 [line 91, column 31]\n " shape="box"] +"array_of_class_with_not_constant_size#constructor_new#9810665286379016302.453a7058d5d4d9a1fa36084713fcfc7d_7" [label="7: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$1:int=5 [line 91, column 31]\n " shape="box"] "array_of_class_with_not_constant_size#constructor_new#9810665286379016302.453a7058d5d4d9a1fa36084713fcfc7d_7" -> "array_of_class_with_not_constant_size#constructor_new#9810665286379016302.453a7058d5d4d9a1fa36084713fcfc7d_3" ; -"array_of_class_with_not_constant_size#constructor_new#9810665286379016302.453a7058d5d4d9a1fa36084713fcfc7d_8" [label="8: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$0:int=3 [line 91, column 31]\n " shape="box"] +"array_of_class_with_not_constant_size#constructor_new#9810665286379016302.453a7058d5d4d9a1fa36084713fcfc7d_8" [label="8: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$1:int=3 [line 91, column 31]\n " shape="box"] "array_of_class_with_not_constant_size#constructor_new#9810665286379016302.453a7058d5d4d9a1fa36084713fcfc7d_8" -> "array_of_class_with_not_constant_size#constructor_new#9810665286379016302.453a7058d5d4d9a1fa36084713fcfc7d_3" ; -"array_of_class_with_not_constant_size#constructor_new#9810665286379016302.453a7058d5d4d9a1fa36084713fcfc7d_9" [label="9: DeclStmt \n n$2=*&0$?%__sil_tmpSIL_temp_conditional___n$0:int [line 91, column 31]\n n$3=_fun___new_array((sizeof(t=constructor_new::Person) * n$2):unsigned long) [line 91, column 20]\n *&tarray:constructor_new::Person*=n$3 [line 91, column 3]\n " shape="box"] +"array_of_class_with_not_constant_size#constructor_new#9810665286379016302.453a7058d5d4d9a1fa36084713fcfc7d_9" [label="9: DeclStmt \n n$3=*&0$?%__sil_tmpSIL_temp_conditional___n$1:int [line 91, column 31]\n n$4=_fun___new_array((sizeof(t=constructor_new::Person) * n$3):unsigned long) [line 91, column 20]\n *&tarray:constructor_new::Person*=n$4 [line 91, column 3]\n " shape="box"] "array_of_class_with_not_constant_size#constructor_new#9810665286379016302.453a7058d5d4d9a1fa36084713fcfc7d_9" -> "array_of_class_with_not_constant_size#constructor_new#9810665286379016302.453a7058d5d4d9a1fa36084713fcfc7d_2" ; @@ -43,7 +43,7 @@ digraph cfg { "array_of_person_with_constant_size#constructor_new#10198805942353567956.2cf0ba8d0780ec60bbcca4089ec2aee6_2" [label="2: Exit constructor_new::array_of_person_with_constant_size \n " color=yellow style=filled] -"array_of_person_with_constant_size#constructor_new#10198805942353567956.2cf0ba8d0780ec60bbcca4089ec2aee6_3" [label="3: DeclStmt \n n$0=_fun___new_array((sizeof(t=constructor_new::Person) * 10):unsigned long) [line 95, column 62]\n n$1=_fun_constructor_new::Person_Person(n$0[0]:constructor_new::Person[_*_](*)) [line 95, column 66]\n n$2=_fun_constructor_new::Person_Person(n$0[1]:constructor_new::Person[_*_](*)) [line 95, column 66]\n n$3=_fun_constructor_new::Person_Person(n$0[2]:constructor_new::Person[_*_](*)) [line 95, column 66]\n n$4=_fun_constructor_new::Person_Person(n$0[3]:constructor_new::Person[_*_](*)) [line 95, column 66]\n n$5=_fun_constructor_new::Person_Person(n$0[4]:constructor_new::Person[_*_](*)) [line 95, column 66]\n n$6=_fun_constructor_new::Person_Person(n$0[5]:constructor_new::Person[_*_](*)) [line 95, column 66]\n n$7=_fun_constructor_new::Person_Person(n$0[6]:constructor_new::Person[_*_](*)) [line 95, column 66]\n n$8=_fun_constructor_new::Person_Person(n$0[7]:constructor_new::Person[_*_](*)) [line 95, column 66]\n n$9=_fun_constructor_new::Person_Person(n$0[8]:constructor_new::Person[_*_](*)) [line 95, column 66]\n n$10=_fun_constructor_new::Person_Person(n$0[9]:constructor_new::Person[_*_](*)) [line 95, column 66]\n *&tarray:constructor_new::Person*=n$0 [line 95, column 45]\n " shape="box"] +"array_of_person_with_constant_size#constructor_new#10198805942353567956.2cf0ba8d0780ec60bbcca4089ec2aee6_3" [label="3: DeclStmt \n n$1=_fun___new_array((sizeof(t=constructor_new::Person) * 10):unsigned long) [line 95, column 62]\n n$2=_fun_constructor_new::Person_Person(n$1[0]:constructor_new::Person[_*_](*)) [line 95, column 66]\n n$3=_fun_constructor_new::Person_Person(n$1[1]:constructor_new::Person[_*_](*)) [line 95, column 66]\n n$4=_fun_constructor_new::Person_Person(n$1[2]:constructor_new::Person[_*_](*)) [line 95, column 66]\n n$5=_fun_constructor_new::Person_Person(n$1[3]:constructor_new::Person[_*_](*)) [line 95, column 66]\n n$6=_fun_constructor_new::Person_Person(n$1[4]:constructor_new::Person[_*_](*)) [line 95, column 66]\n n$7=_fun_constructor_new::Person_Person(n$1[5]:constructor_new::Person[_*_](*)) [line 95, column 66]\n n$8=_fun_constructor_new::Person_Person(n$1[6]:constructor_new::Person[_*_](*)) [line 95, column 66]\n n$9=_fun_constructor_new::Person_Person(n$1[7]:constructor_new::Person[_*_](*)) [line 95, column 66]\n n$10=_fun_constructor_new::Person_Person(n$1[8]:constructor_new::Person[_*_](*)) [line 95, column 66]\n n$11=_fun_constructor_new::Person_Person(n$1[9]:constructor_new::Person[_*_](*)) [line 95, column 66]\n *&tarray:constructor_new::Person*=n$1 [line 95, column 45]\n " shape="box"] "array_of_person_with_constant_size#constructor_new#10198805942353567956.2cf0ba8d0780ec60bbcca4089ec2aee6_3" -> "array_of_person_with_constant_size#constructor_new#10198805942353567956.2cf0ba8d0780ec60bbcca4089ec2aee6_2" ; @@ -58,7 +58,7 @@ digraph cfg { "constructor_1_arg_new_div0#constructor_new#798841234716809588.2c010a7c7293e961b9ed8149c3f3debe_3" -> "constructor_1_arg_new_div0#constructor_new#798841234716809588.2c010a7c7293e961b9ed8149c3f3debe_2" ; -"constructor_1_arg_new_div0#constructor_new#798841234716809588.2c010a7c7293e961b9ed8149c3f3debe_4" [label="4: DeclStmt \n n$2=_fun___new(sizeof(t=constructor_new::Person):unsigned long) [line 30, column 15]\n n$3=_fun_constructor_new::Person_Person(n$2:constructor_new::Person*,5:int) [line 30, column 19]\n *&p:constructor_new::Person*=n$2 [line 30, column 3]\n " shape="box"] +"constructor_1_arg_new_div0#constructor_new#798841234716809588.2c010a7c7293e961b9ed8149c3f3debe_4" [label="4: DeclStmt \n n$3=_fun___new(sizeof(t=constructor_new::Person):unsigned long) [line 30, column 15]\n n$4=_fun_constructor_new::Person_Person(n$3:constructor_new::Person*,5:int) [line 30, column 19]\n *&p:constructor_new::Person*=n$3 [line 30, column 3]\n " shape="box"] "constructor_1_arg_new_div0#constructor_new#798841234716809588.2c010a7c7293e961b9ed8149c3f3debe_4" -> "constructor_1_arg_new_div0#constructor_new#798841234716809588.2c010a7c7293e961b9ed8149c3f3debe_3" ; @@ -73,11 +73,11 @@ digraph cfg { "constructor_3_args_new_div0#constructor_new#13438839859480315932.2122014ebac449e6fb981ba75ba0617e_3" -> "constructor_3_args_new_div0#constructor_new#13438839859480315932.2122014ebac449e6fb981ba75ba0617e_2" ; -"constructor_3_args_new_div0#constructor_new#13438839859480315932.2122014ebac449e6fb981ba75ba0617e_4" [label="4: DeclStmt \n n$2=_fun___new(sizeof(t=constructor_new::Person):unsigned long) [line 35, column 15]\n n$3=_fun_constructor_new::Person_Person(n$2:constructor_new::Person*,5:int,6:int,7:int) [line 35, column 19]\n *&p:constructor_new::Person*=n$2 [line 35, column 3]\n " shape="box"] +"constructor_3_args_new_div0#constructor_new#13438839859480315932.2122014ebac449e6fb981ba75ba0617e_4" [label="4: DeclStmt \n n$3=_fun___new(sizeof(t=constructor_new::Person):unsigned long) [line 35, column 15]\n n$4=_fun_constructor_new::Person_Person(n$3:constructor_new::Person*,5:int,6:int,7:int) [line 35, column 19]\n *&p:constructor_new::Person*=n$3 [line 35, column 3]\n " shape="box"] "constructor_3_args_new_div0#constructor_new#13438839859480315932.2122014ebac449e6fb981ba75ba0617e_4" -> "constructor_3_args_new_div0#constructor_new#13438839859480315932.2122014ebac449e6fb981ba75ba0617e_3" ; -"constructor_nodes#constructor_new#2199504594298711726.73e416487288cbd4adea79b64a17dbe2_1" [label="1: Start constructor_new::constructor_nodes\nFormals: \nLocals: p:constructor_new::Person* 0$?%__sil_tmpSIL_temp_conditional___n$3:int z:int \n DECLARE_LOCALS(&return,&p,&0$?%__sil_tmpSIL_temp_conditional___n$3,&z); [line 71, column 1]\n " color=yellow style=filled] +"constructor_nodes#constructor_new#2199504594298711726.73e416487288cbd4adea79b64a17dbe2_1" [label="1: Start constructor_new::constructor_nodes\nFormals: \nLocals: p:constructor_new::Person* 0$?%__sil_tmpSIL_temp_conditional___n$4:int z:int \n DECLARE_LOCALS(&return,&p,&0$?%__sil_tmpSIL_temp_conditional___n$4,&z); [line 71, column 1]\n " color=yellow style=filled] "constructor_nodes#constructor_new#2199504594298711726.73e416487288cbd4adea79b64a17dbe2_1" -> "constructor_nodes#constructor_new#2199504594298711726.73e416487288cbd4adea79b64a17dbe2_11" ; @@ -92,28 +92,28 @@ digraph cfg { "constructor_nodes#constructor_new#2199504594298711726.73e416487288cbd4adea79b64a17dbe2_4" -> "constructor_nodes#constructor_new#2199504594298711726.73e416487288cbd4adea79b64a17dbe2_10" ; -"constructor_nodes#constructor_new#2199504594298711726.73e416487288cbd4adea79b64a17dbe2_5" [label="5: Call _fun_constructor_new::getValue \n n$4=_fun_constructor_new::getValue(0:int) [line 73, column 26]\n " shape="box"] +"constructor_nodes#constructor_new#2199504594298711726.73e416487288cbd4adea79b64a17dbe2_5" [label="5: Call _fun_constructor_new::getValue \n n$5=_fun_constructor_new::getValue(0:int) [line 73, column 26]\n " shape="box"] "constructor_nodes#constructor_new#2199504594298711726.73e416487288cbd4adea79b64a17dbe2_5" -> "constructor_nodes#constructor_new#2199504594298711726.73e416487288cbd4adea79b64a17dbe2_6" ; "constructor_nodes#constructor_new#2199504594298711726.73e416487288cbd4adea79b64a17dbe2_5" -> "constructor_nodes#constructor_new#2199504594298711726.73e416487288cbd4adea79b64a17dbe2_7" ; -"constructor_nodes#constructor_new#2199504594298711726.73e416487288cbd4adea79b64a17dbe2_6" [label="6: Prune (true branch, boolean exp) \n PRUNE(n$4, true); [line 73, column 26]\n " shape="invhouse"] +"constructor_nodes#constructor_new#2199504594298711726.73e416487288cbd4adea79b64a17dbe2_6" [label="6: Prune (true branch, boolean exp) \n PRUNE(n$5, true); [line 73, column 26]\n " shape="invhouse"] "constructor_nodes#constructor_new#2199504594298711726.73e416487288cbd4adea79b64a17dbe2_6" -> "constructor_nodes#constructor_new#2199504594298711726.73e416487288cbd4adea79b64a17dbe2_8" ; -"constructor_nodes#constructor_new#2199504594298711726.73e416487288cbd4adea79b64a17dbe2_7" [label="7: Prune (false branch, boolean exp) \n PRUNE(!n$4, false); [line 73, column 26]\n " shape="invhouse"] +"constructor_nodes#constructor_new#2199504594298711726.73e416487288cbd4adea79b64a17dbe2_7" [label="7: Prune (false branch, boolean exp) \n PRUNE(!n$5, false); [line 73, column 26]\n " shape="invhouse"] "constructor_nodes#constructor_new#2199504594298711726.73e416487288cbd4adea79b64a17dbe2_7" -> "constructor_nodes#constructor_new#2199504594298711726.73e416487288cbd4adea79b64a17dbe2_9" ; -"constructor_nodes#constructor_new#2199504594298711726.73e416487288cbd4adea79b64a17dbe2_8" [label="8: ConditinalStmt Branch \n n$5=_fun_constructor_new::getValue(1:int) [line 73, column 40]\n *&0$?%__sil_tmpSIL_temp_conditional___n$3:int=n$5 [line 73, column 26]\n " shape="box"] +"constructor_nodes#constructor_new#2199504594298711726.73e416487288cbd4adea79b64a17dbe2_8" [label="8: ConditionalStmt Branch \n n$6=_fun_constructor_new::getValue(1:int) [line 73, column 40]\n *&0$?%__sil_tmpSIL_temp_conditional___n$4:int=n$6 [line 73, column 26]\n " shape="box"] "constructor_nodes#constructor_new#2199504594298711726.73e416487288cbd4adea79b64a17dbe2_8" -> "constructor_nodes#constructor_new#2199504594298711726.73e416487288cbd4adea79b64a17dbe2_4" ; -"constructor_nodes#constructor_new#2199504594298711726.73e416487288cbd4adea79b64a17dbe2_9" [label="9: ConditinalStmt Branch \n n$6=*&z:int [line 73, column 58]\n *&0$?%__sil_tmpSIL_temp_conditional___n$3:int=(1 + n$6) [line 73, column 26]\n " shape="box"] +"constructor_nodes#constructor_new#2199504594298711726.73e416487288cbd4adea79b64a17dbe2_9" [label="9: ConditionalStmt Branch \n n$7=*&z:int [line 73, column 58]\n *&0$?%__sil_tmpSIL_temp_conditional___n$4:int=(1 + n$7) [line 73, column 26]\n " shape="box"] "constructor_nodes#constructor_new#2199504594298711726.73e416487288cbd4adea79b64a17dbe2_9" -> "constructor_nodes#constructor_new#2199504594298711726.73e416487288cbd4adea79b64a17dbe2_4" ; -"constructor_nodes#constructor_new#2199504594298711726.73e416487288cbd4adea79b64a17dbe2_10" [label="10: DeclStmt \n n$2=_fun___new(sizeof(t=constructor_new::Person):unsigned long) [line 73, column 15]\n n$7=*&0$?%__sil_tmpSIL_temp_conditional___n$3:int [line 73, column 26]\n n$8=_fun_constructor_new::Person_Person(n$2:constructor_new::Person*,n$7:int) [line 73, column 19]\n *&p:constructor_new::Person*=n$2 [line 73, column 3]\n " shape="box"] +"constructor_nodes#constructor_new#2199504594298711726.73e416487288cbd4adea79b64a17dbe2_10" [label="10: DeclStmt \n n$3=_fun___new(sizeof(t=constructor_new::Person):unsigned long) [line 73, column 15]\n n$8=*&0$?%__sil_tmpSIL_temp_conditional___n$4:int [line 73, column 26]\n n$9=_fun_constructor_new::Person_Person(n$3:constructor_new::Person*,n$8:int) [line 73, column 19]\n *&p:constructor_new::Person*=n$3 [line 73, column 3]\n " shape="box"] "constructor_nodes#constructor_new#2199504594298711726.73e416487288cbd4adea79b64a17dbe2_10" -> "constructor_nodes#constructor_new#2199504594298711726.73e416487288cbd4adea79b64a17dbe2_3" ; @@ -132,7 +132,7 @@ digraph cfg { "float_init_number#constructor_new#3988440966025503299.b1d13528d0a983c1943c8fdd13e58be6_3" -> "float_init_number#constructor_new#3988440966025503299.b1d13528d0a983c1943c8fdd13e58be6_2" ; -"float_init_number#constructor_new#3988440966025503299.b1d13528d0a983c1943c8fdd13e58be6_4" [label="4: DeclStmt \n n$2=_fun___new(sizeof(t=float):unsigned long) [line 45, column 15]\n *n$2:float=5.4 [line 45, column 15]\n *&x1:float*=n$2 [line 45, column 3]\n " shape="box"] +"float_init_number#constructor_new#3988440966025503299.b1d13528d0a983c1943c8fdd13e58be6_4" [label="4: DeclStmt \n n$3=_fun___new(sizeof(t=float):unsigned long) [line 45, column 15]\n *n$3:float=5.4 [line 45, column 15]\n *&x1:float*=n$3 [line 45, column 3]\n " shape="box"] "float_init_number#constructor_new#3988440966025503299.b1d13528d0a983c1943c8fdd13e58be6_4" -> "float_init_number#constructor_new#3988440966025503299.b1d13528d0a983c1943c8fdd13e58be6_3" ; @@ -147,7 +147,7 @@ digraph cfg { "getValue#constructor_new#15577065010748217440.6aa0942189125cc8fd36b278b0742cd2_3" -> "getValue#constructor_new#15577065010748217440.6aa0942189125cc8fd36b278b0742cd2_2" ; -"int_array#constructor_new#17288301834361373856.f0e67f3600c928968ac2559eafa09ba2_1" [label="1: Start constructor_new::int_array\nFormals: \nLocals: x2:int* 0$?%__sil_tmpSIL_temp_conditional___n$6:int \n DECLARE_LOCALS(&return,&x2,&0$?%__sil_tmpSIL_temp_conditional___n$6); [line 77, column 1]\n " color=yellow style=filled] +"int_array#constructor_new#17288301834361373856.f0e67f3600c928968ac2559eafa09ba2_1" [label="1: Start constructor_new::int_array\nFormals: \nLocals: x2:int* 0$?%__sil_tmpSIL_temp_conditional___n$7:int \n DECLARE_LOCALS(&return,&x2,&0$?%__sil_tmpSIL_temp_conditional___n$7); [line 77, column 1]\n " color=yellow style=filled] "int_array#constructor_new#17288301834361373856.f0e67f3600c928968ac2559eafa09ba2_1" -> "int_array#constructor_new#17288301834361373856.f0e67f3600c928968ac2559eafa09ba2_7" ; @@ -158,11 +158,11 @@ digraph cfg { "int_array#constructor_new#17288301834361373856.f0e67f3600c928968ac2559eafa09ba2_3" -> "int_array#constructor_new#17288301834361373856.f0e67f3600c928968ac2559eafa09ba2_2" ; -"int_array#constructor_new#17288301834361373856.f0e67f3600c928968ac2559eafa09ba2_4" [label="4: BinaryOperatorStmt: Assign \n n$4=*&x2:int* [line 80, column 3]\n *n$4[1]:int=2 [line 80, column 3]\n " shape="box"] +"int_array#constructor_new#17288301834361373856.f0e67f3600c928968ac2559eafa09ba2_4" [label="4: BinaryOperatorStmt: Assign \n n$5=*&x2:int* [line 80, column 3]\n *n$5[1]:int=2 [line 80, column 3]\n " shape="box"] "int_array#constructor_new#17288301834361373856.f0e67f3600c928968ac2559eafa09ba2_4" -> "int_array#constructor_new#17288301834361373856.f0e67f3600c928968ac2559eafa09ba2_3" ; -"int_array#constructor_new#17288301834361373856.f0e67f3600c928968ac2559eafa09ba2_5" [label="5: BinaryOperatorStmt: Assign \n n$5=*&x2:int* [line 79, column 3]\n *n$5[0]:int=1 [line 79, column 3]\n " shape="box"] +"int_array#constructor_new#17288301834361373856.f0e67f3600c928968ac2559eafa09ba2_5" [label="5: BinaryOperatorStmt: Assign \n n$6=*&x2:int* [line 79, column 3]\n *n$6[0]:int=1 [line 79, column 3]\n " shape="box"] "int_array#constructor_new#17288301834361373856.f0e67f3600c928968ac2559eafa09ba2_5" -> "int_array#constructor_new#17288301834361373856.f0e67f3600c928968ac2559eafa09ba2_4" ; @@ -170,28 +170,28 @@ digraph cfg { "int_array#constructor_new#17288301834361373856.f0e67f3600c928968ac2559eafa09ba2_6" -> "int_array#constructor_new#17288301834361373856.f0e67f3600c928968ac2559eafa09ba2_12" ; -"int_array#constructor_new#17288301834361373856.f0e67f3600c928968ac2559eafa09ba2_7" [label="7: Call _fun_constructor_new::getValue \n n$7=_fun_constructor_new::getValue(5:int) [line 78, column 21]\n " shape="box"] +"int_array#constructor_new#17288301834361373856.f0e67f3600c928968ac2559eafa09ba2_7" [label="7: Call _fun_constructor_new::getValue \n n$8=_fun_constructor_new::getValue(5:int) [line 78, column 21]\n " shape="box"] "int_array#constructor_new#17288301834361373856.f0e67f3600c928968ac2559eafa09ba2_7" -> "int_array#constructor_new#17288301834361373856.f0e67f3600c928968ac2559eafa09ba2_8" ; "int_array#constructor_new#17288301834361373856.f0e67f3600c928968ac2559eafa09ba2_7" -> "int_array#constructor_new#17288301834361373856.f0e67f3600c928968ac2559eafa09ba2_9" ; -"int_array#constructor_new#17288301834361373856.f0e67f3600c928968ac2559eafa09ba2_8" [label="8: Prune (true branch, boolean exp) \n PRUNE(n$7, true); [line 78, column 21]\n " shape="invhouse"] +"int_array#constructor_new#17288301834361373856.f0e67f3600c928968ac2559eafa09ba2_8" [label="8: Prune (true branch, boolean exp) \n PRUNE(n$8, true); [line 78, column 21]\n " shape="invhouse"] "int_array#constructor_new#17288301834361373856.f0e67f3600c928968ac2559eafa09ba2_8" -> "int_array#constructor_new#17288301834361373856.f0e67f3600c928968ac2559eafa09ba2_10" ; -"int_array#constructor_new#17288301834361373856.f0e67f3600c928968ac2559eafa09ba2_9" [label="9: Prune (false branch, boolean exp) \n PRUNE(!n$7, false); [line 78, column 21]\n " shape="invhouse"] +"int_array#constructor_new#17288301834361373856.f0e67f3600c928968ac2559eafa09ba2_9" [label="9: Prune (false branch, boolean exp) \n PRUNE(!n$8, false); [line 78, column 21]\n " shape="invhouse"] "int_array#constructor_new#17288301834361373856.f0e67f3600c928968ac2559eafa09ba2_9" -> "int_array#constructor_new#17288301834361373856.f0e67f3600c928968ac2559eafa09ba2_11" ; -"int_array#constructor_new#17288301834361373856.f0e67f3600c928968ac2559eafa09ba2_10" [label="10: ConditinalStmt Branch \n n$8=_fun_constructor_new::getValue(5:int) [line 78, column 35]\n *&0$?%__sil_tmpSIL_temp_conditional___n$6:int=n$8 [line 78, column 21]\n " shape="box"] +"int_array#constructor_new#17288301834361373856.f0e67f3600c928968ac2559eafa09ba2_10" [label="10: ConditionalStmt Branch \n n$9=_fun_constructor_new::getValue(5:int) [line 78, column 35]\n *&0$?%__sil_tmpSIL_temp_conditional___n$7:int=n$9 [line 78, column 21]\n " shape="box"] "int_array#constructor_new#17288301834361373856.f0e67f3600c928968ac2559eafa09ba2_10" -> "int_array#constructor_new#17288301834361373856.f0e67f3600c928968ac2559eafa09ba2_6" ; -"int_array#constructor_new#17288301834361373856.f0e67f3600c928968ac2559eafa09ba2_11" [label="11: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$6:int=3 [line 78, column 21]\n " shape="box"] +"int_array#constructor_new#17288301834361373856.f0e67f3600c928968ac2559eafa09ba2_11" [label="11: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$7:int=3 [line 78, column 21]\n " shape="box"] "int_array#constructor_new#17288301834361373856.f0e67f3600c928968ac2559eafa09ba2_11" -> "int_array#constructor_new#17288301834361373856.f0e67f3600c928968ac2559eafa09ba2_6" ; -"int_array#constructor_new#17288301834361373856.f0e67f3600c928968ac2559eafa09ba2_12" [label="12: DeclStmt \n n$9=*&0$?%__sil_tmpSIL_temp_conditional___n$6:int [line 78, column 21]\n n$10=_fun___new_array((sizeof(t=int) * n$9):unsigned long) [line 78, column 13]\n *&x2:int*=n$10 [line 78, column 3]\n " shape="box"] +"int_array#constructor_new#17288301834361373856.f0e67f3600c928968ac2559eafa09ba2_12" [label="12: DeclStmt \n n$10=*&0$?%__sil_tmpSIL_temp_conditional___n$7:int [line 78, column 21]\n n$11=_fun___new_array((sizeof(t=int) * n$10):unsigned long) [line 78, column 13]\n *&x2:int*=n$11 [line 78, column 3]\n " shape="box"] "int_array#constructor_new#17288301834361373856.f0e67f3600c928968ac2559eafa09ba2_12" -> "int_array#constructor_new#17288301834361373856.f0e67f3600c928968ac2559eafa09ba2_5" ; @@ -206,7 +206,7 @@ digraph cfg { "int_array_init#constructor_new#14099932616230884357.69a63438c3aee293029f068d373c29c3_3" -> "int_array_init#constructor_new#14099932616230884357.69a63438c3aee293029f068d373c29c3_2" ; -"int_array_init#constructor_new#14099932616230884357.69a63438c3aee293029f068d373c29c3_4" [label="4: DeclStmt \n n$10=_fun___new_array((sizeof(t=int) * 100):unsigned long) [line 85, column 14]\n *n$10[0]:int=1 [line 85, column 26]\n *n$10[1]:int=2 [line 85, column 26]\n *n$10[2]:int=3 [line 85, column 26]\n *n$10[3]:int=4 [line 85, column 26]\n *n$10[4]:int=5 [line 85, column 26]\n *n$10[5]:int=6 [line 85, column 26]\n *n$10[6]:int=7 [line 85, column 26]\n *n$10[7]:int=8 [line 85, column 26]\n *n$10[8]:int=9 [line 85, column 26]\n *n$10[9]:int=10 [line 85, column 26]\n *&arr:int*=n$10 [line 85, column 3]\n " shape="box"] +"int_array_init#constructor_new#14099932616230884357.69a63438c3aee293029f068d373c29c3_4" [label="4: DeclStmt \n n$11=_fun___new_array((sizeof(t=int) * 100):unsigned long) [line 85, column 14]\n *n$11[0]:int=1 [line 85, column 26]\n *n$11[1]:int=2 [line 85, column 26]\n *n$11[2]:int=3 [line 85, column 26]\n *n$11[3]:int=4 [line 85, column 26]\n *n$11[4]:int=5 [line 85, column 26]\n *n$11[5]:int=6 [line 85, column 26]\n *n$11[6]:int=7 [line 85, column 26]\n *n$11[7]:int=8 [line 85, column 26]\n *n$11[8]:int=9 [line 85, column 26]\n *n$11[9]:int=10 [line 85, column 26]\n *&arr:int*=n$11 [line 85, column 3]\n " shape="box"] "int_array_init#constructor_new#14099932616230884357.69a63438c3aee293029f068d373c29c3_4" -> "int_array_init#constructor_new#14099932616230884357.69a63438c3aee293029f068d373c29c3_3" ; @@ -221,7 +221,7 @@ digraph cfg { "int_init_empty#constructor_new#15413029864213743197.d5b807871fe4ea10e898a381f0edef4d_3" -> "int_init_empty#constructor_new#15413029864213743197.d5b807871fe4ea10e898a381f0edef4d_2" ; -"int_init_empty#constructor_new#15413029864213743197.d5b807871fe4ea10e898a381f0edef4d_4" [label="4: DeclStmt \n n$2=_fun___new(sizeof(t=int):unsigned long) [line 50, column 13]\n *n$2:int=0 [line 50, column 21]\n *&x1:int*=n$2 [line 50, column 3]\n " shape="box"] +"int_init_empty#constructor_new#15413029864213743197.d5b807871fe4ea10e898a381f0edef4d_4" [label="4: DeclStmt \n n$3=_fun___new(sizeof(t=int):unsigned long) [line 50, column 13]\n *n$3:int=0 [line 50, column 21]\n *&x1:int*=n$3 [line 50, column 3]\n " shape="box"] "int_init_empty#constructor_new#15413029864213743197.d5b807871fe4ea10e898a381f0edef4d_4" -> "int_init_empty#constructor_new#15413029864213743197.d5b807871fe4ea10e898a381f0edef4d_3" ; @@ -251,11 +251,11 @@ digraph cfg { "int_init_empty_list_new#constructor_new#18093274870234850959.e77c2840901e6e789e52d55ac81db88f_3" -> "int_init_empty_list_new#constructor_new#18093274870234850959.e77c2840901e6e789e52d55ac81db88f_2" ; -"int_init_empty_list_new#constructor_new#18093274870234850959.e77c2840901e6e789e52d55ac81db88f_4" [label="4: DeclStmt \n n$2=_fun___new(sizeof(t=int):unsigned long) [line 60, column 13]\n *n$2:int=0 [line 60, column 13]\n *&x1:int*=n$2 [line 60, column 3]\n " shape="box"] +"int_init_empty_list_new#constructor_new#18093274870234850959.e77c2840901e6e789e52d55ac81db88f_4" [label="4: DeclStmt \n n$3=_fun___new(sizeof(t=int):unsigned long) [line 60, column 13]\n *n$3:int=0 [line 60, column 13]\n *&x1:int*=n$3 [line 60, column 3]\n " shape="box"] "int_init_empty_list_new#constructor_new#18093274870234850959.e77c2840901e6e789e52d55ac81db88f_4" -> "int_init_empty_list_new#constructor_new#18093274870234850959.e77c2840901e6e789e52d55ac81db88f_3" ; -"int_init_nodes#constructor_new#3816193909145311065.e18f1e2417086b4c8d20246eeee5dd01_1" [label="1: Start constructor_new::int_init_nodes\nFormals: \nLocals: x:int* 0$?%__sil_tmpSIL_temp_conditional___n$3:int y:int* z:int \n DECLARE_LOCALS(&return,&x,&0$?%__sil_tmpSIL_temp_conditional___n$3,&y,&z); [line 64, column 1]\n " color=yellow style=filled] +"int_init_nodes#constructor_new#3816193909145311065.e18f1e2417086b4c8d20246eeee5dd01_1" [label="1: Start constructor_new::int_init_nodes\nFormals: \nLocals: x:int* 0$?%__sil_tmpSIL_temp_conditional___n$4:int y:int* z:int \n DECLARE_LOCALS(&return,&x,&0$?%__sil_tmpSIL_temp_conditional___n$4,&y,&z); [line 64, column 1]\n " color=yellow style=filled] "int_init_nodes#constructor_new#3816193909145311065.e18f1e2417086b4c8d20246eeee5dd01_1" -> "int_init_nodes#constructor_new#3816193909145311065.e18f1e2417086b4c8d20246eeee5dd01_12" ; @@ -270,32 +270,32 @@ digraph cfg { "int_init_nodes#constructor_new#3816193909145311065.e18f1e2417086b4c8d20246eeee5dd01_4" -> "int_init_nodes#constructor_new#3816193909145311065.e18f1e2417086b4c8d20246eeee5dd01_10" ; -"int_init_nodes#constructor_new#3816193909145311065.e18f1e2417086b4c8d20246eeee5dd01_5" [label="5: Call _fun_constructor_new::getValue \n n$4=_fun_constructor_new::getValue(0:int) [line 67, column 20]\n " shape="box"] +"int_init_nodes#constructor_new#3816193909145311065.e18f1e2417086b4c8d20246eeee5dd01_5" [label="5: Call _fun_constructor_new::getValue \n n$5=_fun_constructor_new::getValue(0:int) [line 67, column 20]\n " shape="box"] "int_init_nodes#constructor_new#3816193909145311065.e18f1e2417086b4c8d20246eeee5dd01_5" -> "int_init_nodes#constructor_new#3816193909145311065.e18f1e2417086b4c8d20246eeee5dd01_6" ; "int_init_nodes#constructor_new#3816193909145311065.e18f1e2417086b4c8d20246eeee5dd01_5" -> "int_init_nodes#constructor_new#3816193909145311065.e18f1e2417086b4c8d20246eeee5dd01_7" ; -"int_init_nodes#constructor_new#3816193909145311065.e18f1e2417086b4c8d20246eeee5dd01_6" [label="6: Prune (true branch, boolean exp) \n PRUNE(n$4, true); [line 67, column 20]\n " shape="invhouse"] +"int_init_nodes#constructor_new#3816193909145311065.e18f1e2417086b4c8d20246eeee5dd01_6" [label="6: Prune (true branch, boolean exp) \n PRUNE(n$5, true); [line 67, column 20]\n " shape="invhouse"] "int_init_nodes#constructor_new#3816193909145311065.e18f1e2417086b4c8d20246eeee5dd01_6" -> "int_init_nodes#constructor_new#3816193909145311065.e18f1e2417086b4c8d20246eeee5dd01_8" ; -"int_init_nodes#constructor_new#3816193909145311065.e18f1e2417086b4c8d20246eeee5dd01_7" [label="7: Prune (false branch, boolean exp) \n PRUNE(!n$4, false); [line 67, column 20]\n " shape="invhouse"] +"int_init_nodes#constructor_new#3816193909145311065.e18f1e2417086b4c8d20246eeee5dd01_7" [label="7: Prune (false branch, boolean exp) \n PRUNE(!n$5, false); [line 67, column 20]\n " shape="invhouse"] "int_init_nodes#constructor_new#3816193909145311065.e18f1e2417086b4c8d20246eeee5dd01_7" -> "int_init_nodes#constructor_new#3816193909145311065.e18f1e2417086b4c8d20246eeee5dd01_9" ; -"int_init_nodes#constructor_new#3816193909145311065.e18f1e2417086b4c8d20246eeee5dd01_8" [label="8: ConditinalStmt Branch \n n$5=_fun_constructor_new::getValue(1:int) [line 67, column 34]\n *&0$?%__sil_tmpSIL_temp_conditional___n$3:int=n$5 [line 67, column 20]\n " shape="box"] +"int_init_nodes#constructor_new#3816193909145311065.e18f1e2417086b4c8d20246eeee5dd01_8" [label="8: ConditionalStmt Branch \n n$6=_fun_constructor_new::getValue(1:int) [line 67, column 34]\n *&0$?%__sil_tmpSIL_temp_conditional___n$4:int=n$6 [line 67, column 20]\n " shape="box"] "int_init_nodes#constructor_new#3816193909145311065.e18f1e2417086b4c8d20246eeee5dd01_8" -> "int_init_nodes#constructor_new#3816193909145311065.e18f1e2417086b4c8d20246eeee5dd01_4" ; -"int_init_nodes#constructor_new#3816193909145311065.e18f1e2417086b4c8d20246eeee5dd01_9" [label="9: ConditinalStmt Branch \n n$6=*&y:int* [line 67, column 53]\n n$7=*n$6:int [line 67, column 52]\n *&0$?%__sil_tmpSIL_temp_conditional___n$3:int=(1 + n$7) [line 67, column 20]\n " shape="box"] +"int_init_nodes#constructor_new#3816193909145311065.e18f1e2417086b4c8d20246eeee5dd01_9" [label="9: ConditionalStmt Branch \n n$7=*&y:int* [line 67, column 53]\n n$8=*n$7:int [line 67, column 52]\n *&0$?%__sil_tmpSIL_temp_conditional___n$4:int=(1 + n$8) [line 67, column 20]\n " shape="box"] "int_init_nodes#constructor_new#3816193909145311065.e18f1e2417086b4c8d20246eeee5dd01_9" -> "int_init_nodes#constructor_new#3816193909145311065.e18f1e2417086b4c8d20246eeee5dd01_4" ; -"int_init_nodes#constructor_new#3816193909145311065.e18f1e2417086b4c8d20246eeee5dd01_10" [label="10: DeclStmt \n n$2=_fun___new(sizeof(t=int):unsigned long) [line 67, column 12]\n n$8=*&0$?%__sil_tmpSIL_temp_conditional___n$3:int [line 67, column 20]\n *n$2:int=n$8 [line 67, column 12]\n *&x:int*=n$2 [line 67, column 3]\n " shape="box"] +"int_init_nodes#constructor_new#3816193909145311065.e18f1e2417086b4c8d20246eeee5dd01_10" [label="10: DeclStmt \n n$3=_fun___new(sizeof(t=int):unsigned long) [line 67, column 12]\n n$9=*&0$?%__sil_tmpSIL_temp_conditional___n$4:int [line 67, column 20]\n *n$3:int=n$9 [line 67, column 12]\n *&x:int*=n$3 [line 67, column 3]\n " shape="box"] "int_init_nodes#constructor_new#3816193909145311065.e18f1e2417086b4c8d20246eeee5dd01_10" -> "int_init_nodes#constructor_new#3816193909145311065.e18f1e2417086b4c8d20246eeee5dd01_3" ; -"int_init_nodes#constructor_new#3816193909145311065.e18f1e2417086b4c8d20246eeee5dd01_11" [label="11: DeclStmt \n n$9=_fun___new(sizeof(t=int):unsigned long) [line 66, column 12]\n n$10=_fun_constructor_new::getValue(4:int) [line 66, column 20]\n *n$9:int=n$10 [line 66, column 12]\n *&y:int*=n$9 [line 66, column 3]\n " shape="box"] +"int_init_nodes#constructor_new#3816193909145311065.e18f1e2417086b4c8d20246eeee5dd01_11" [label="11: DeclStmt \n n$10=_fun___new(sizeof(t=int):unsigned long) [line 66, column 12]\n n$11=_fun_constructor_new::getValue(4:int) [line 66, column 20]\n *n$10:int=n$11 [line 66, column 12]\n *&y:int*=n$10 [line 66, column 3]\n " shape="box"] "int_init_nodes#constructor_new#3816193909145311065.e18f1e2417086b4c8d20246eeee5dd01_11" -> "int_init_nodes#constructor_new#3816193909145311065.e18f1e2417086b4c8d20246eeee5dd01_5" ; @@ -314,7 +314,7 @@ digraph cfg { "int_init_number#constructor_new#16564762083428359974.2a1c04c2e924068dd02b097712efe518_3" -> "int_init_number#constructor_new#16564762083428359974.2a1c04c2e924068dd02b097712efe518_2" ; -"int_init_number#constructor_new#16564762083428359974.2a1c04c2e924068dd02b097712efe518_4" [label="4: DeclStmt \n n$2=_fun___new(sizeof(t=int):unsigned long) [line 40, column 13]\n *n$2:int=5 [line 40, column 13]\n *&x1:int*=n$2 [line 40, column 3]\n " shape="box"] +"int_init_number#constructor_new#16564762083428359974.2a1c04c2e924068dd02b097712efe518_4" [label="4: DeclStmt \n n$3=_fun___new(sizeof(t=int):unsigned long) [line 40, column 13]\n *n$3:int=5 [line 40, column 13]\n *&x1:int*=n$3 [line 40, column 3]\n " shape="box"] "int_init_number#constructor_new#16564762083428359974.2a1c04c2e924068dd02b097712efe518_4" -> "int_init_number#constructor_new#16564762083428359974.2a1c04c2e924068dd02b097712efe518_3" ; @@ -325,11 +325,11 @@ digraph cfg { "matrix_of_person#constructor_new#930045482638918044.730172056e08027af32de0bd9a490291_2" [label="2: Exit constructor_new::matrix_of_person \n " color=yellow style=filled] -"matrix_of_person#constructor_new#930045482638918044.730172056e08027af32de0bd9a490291_3" [label="3: BinaryOperatorStmt: Assign \n n$0=*&tarray:constructor_new::Person** [line 100, column 3]\n n$1=_fun___new_array((sizeof(t=constructor_new::Person) * 10):unsigned long) [line 100, column 15]\n n$2=_fun_constructor_new::Person_Person(n$1[0]:constructor_new::Person[_*_](*)) [line 100, column 19]\n n$3=_fun_constructor_new::Person_Person(n$1[1]:constructor_new::Person[_*_](*)) [line 100, column 19]\n n$4=_fun_constructor_new::Person_Person(n$1[2]:constructor_new::Person[_*_](*)) [line 100, column 19]\n n$5=_fun_constructor_new::Person_Person(n$1[3]:constructor_new::Person[_*_](*)) [line 100, column 19]\n n$6=_fun_constructor_new::Person_Person(n$1[4]:constructor_new::Person[_*_](*)) [line 100, column 19]\n n$7=_fun_constructor_new::Person_Person(n$1[5]:constructor_new::Person[_*_](*)) [line 100, column 19]\n n$8=_fun_constructor_new::Person_Person(n$1[6]:constructor_new::Person[_*_](*)) [line 100, column 19]\n n$9=_fun_constructor_new::Person_Person(n$1[7]:constructor_new::Person[_*_](*)) [line 100, column 19]\n n$10=_fun_constructor_new::Person_Person(n$1[8]:constructor_new::Person[_*_](*)) [line 100, column 19]\n n$11=_fun_constructor_new::Person_Person(n$1[9]:constructor_new::Person[_*_](*)) [line 100, column 19]\n *n$0[0]:constructor_new::Person*=n$1 [line 100, column 3]\n " shape="box"] +"matrix_of_person#constructor_new#930045482638918044.730172056e08027af32de0bd9a490291_3" [label="3: BinaryOperatorStmt: Assign \n n$1=*&tarray:constructor_new::Person** [line 100, column 3]\n n$2=_fun___new_array((sizeof(t=constructor_new::Person) * 10):unsigned long) [line 100, column 15]\n n$3=_fun_constructor_new::Person_Person(n$2[0]:constructor_new::Person[_*_](*)) [line 100, column 19]\n n$4=_fun_constructor_new::Person_Person(n$2[1]:constructor_new::Person[_*_](*)) [line 100, column 19]\n n$5=_fun_constructor_new::Person_Person(n$2[2]:constructor_new::Person[_*_](*)) [line 100, column 19]\n n$6=_fun_constructor_new::Person_Person(n$2[3]:constructor_new::Person[_*_](*)) [line 100, column 19]\n n$7=_fun_constructor_new::Person_Person(n$2[4]:constructor_new::Person[_*_](*)) [line 100, column 19]\n n$8=_fun_constructor_new::Person_Person(n$2[5]:constructor_new::Person[_*_](*)) [line 100, column 19]\n n$9=_fun_constructor_new::Person_Person(n$2[6]:constructor_new::Person[_*_](*)) [line 100, column 19]\n n$10=_fun_constructor_new::Person_Person(n$2[7]:constructor_new::Person[_*_](*)) [line 100, column 19]\n n$11=_fun_constructor_new::Person_Person(n$2[8]:constructor_new::Person[_*_](*)) [line 100, column 19]\n n$12=_fun_constructor_new::Person_Person(n$2[9]:constructor_new::Person[_*_](*)) [line 100, column 19]\n *n$1[0]:constructor_new::Person*=n$2 [line 100, column 3]\n " shape="box"] "matrix_of_person#constructor_new#930045482638918044.730172056e08027af32de0bd9a490291_3" -> "matrix_of_person#constructor_new#930045482638918044.730172056e08027af32de0bd9a490291_2" ; -"matrix_of_person#constructor_new#930045482638918044.730172056e08027af32de0bd9a490291_4" [label="4: DeclStmt \n n$12=_fun___new_array((sizeof(t=constructor_new::Person*) * 10):unsigned long) [line 99, column 21]\n *&tarray:constructor_new::Person**=n$12 [line 99, column 3]\n " shape="box"] +"matrix_of_person#constructor_new#930045482638918044.730172056e08027af32de0bd9a490291_4" [label="4: DeclStmt \n n$13=_fun___new_array((sizeof(t=constructor_new::Person*) * 10):unsigned long) [line 99, column 21]\n *&tarray:constructor_new::Person**=n$13 [line 99, column 3]\n " shape="box"] "matrix_of_person#constructor_new#930045482638918044.730172056e08027af32de0bd9a490291_4" -> "matrix_of_person#constructor_new#930045482638918044.730172056e08027af32de0bd9a490291_3" ; @@ -340,15 +340,15 @@ digraph cfg { "Person#Person#constructor_new#{426040185711945372}.912ffb8f00635c43cd7277cb4f7bd8a3_2" [label="2: Exit constructor_new::Person_Person \n " color=yellow style=filled] -"Person#Person#constructor_new#{426040185711945372}.912ffb8f00635c43cd7277cb4f7bd8a3_3" [label="3: BinaryOperatorStmt: Assign \n n$0=*&this:constructor_new::Person* [line 20, column 5]\n n$1=*&k:int [line 20, column 9]\n *n$0.z:int=n$1 [line 20, column 5]\n " shape="box"] +"Person#Person#constructor_new#{426040185711945372}.912ffb8f00635c43cd7277cb4f7bd8a3_3" [label="3: BinaryOperatorStmt: Assign \n n$1=*&this:constructor_new::Person* [line 20, column 5]\n n$2=*&k:int [line 20, column 9]\n *n$1.z:int=n$2 [line 20, column 5]\n " shape="box"] "Person#Person#constructor_new#{426040185711945372}.912ffb8f00635c43cd7277cb4f7bd8a3_3" -> "Person#Person#constructor_new#{426040185711945372}.912ffb8f00635c43cd7277cb4f7bd8a3_2" ; -"Person#Person#constructor_new#{426040185711945372}.912ffb8f00635c43cd7277cb4f7bd8a3_4" [label="4: BinaryOperatorStmt: Assign \n n$2=*&this:constructor_new::Person* [line 19, column 5]\n n$3=*&j:int [line 19, column 9]\n *n$2.y:int=n$3 [line 19, column 5]\n " shape="box"] +"Person#Person#constructor_new#{426040185711945372}.912ffb8f00635c43cd7277cb4f7bd8a3_4" [label="4: BinaryOperatorStmt: Assign \n n$3=*&this:constructor_new::Person* [line 19, column 5]\n n$4=*&j:int [line 19, column 9]\n *n$3.y:int=n$4 [line 19, column 5]\n " shape="box"] "Person#Person#constructor_new#{426040185711945372}.912ffb8f00635c43cd7277cb4f7bd8a3_4" -> "Person#Person#constructor_new#{426040185711945372}.912ffb8f00635c43cd7277cb4f7bd8a3_3" ; -"Person#Person#constructor_new#{426040185711945372}.912ffb8f00635c43cd7277cb4f7bd8a3_5" [label="5: BinaryOperatorStmt: Assign \n n$4=*&this:constructor_new::Person* [line 18, column 5]\n n$5=*&i:int [line 18, column 9]\n *n$4.x:int=n$5 [line 18, column 5]\n " shape="box"] +"Person#Person#constructor_new#{426040185711945372}.912ffb8f00635c43cd7277cb4f7bd8a3_5" [label="5: BinaryOperatorStmt: Assign \n n$5=*&this:constructor_new::Person* [line 18, column 5]\n n$6=*&i:int [line 18, column 9]\n *n$5.x:int=n$6 [line 18, column 5]\n " shape="box"] "Person#Person#constructor_new#{426040185711945372}.912ffb8f00635c43cd7277cb4f7bd8a3_5" -> "Person#Person#constructor_new#{426040185711945372}.912ffb8f00635c43cd7277cb4f7bd8a3_4" ; @@ -359,7 +359,7 @@ digraph cfg { "Person#Person#constructor_new#{6016517870629270534}.75bb70b834543e18977cd4fa8f8022a7_2" [label="2: Exit constructor_new::Person_Person \n " color=yellow style=filled] -"Person#Person#constructor_new#{6016517870629270534}.75bb70b834543e18977cd4fa8f8022a7_3" [label="3: BinaryOperatorStmt: Assign \n n$0=*&this:constructor_new::Person* [line 15, column 19]\n n$1=*&i:int [line 15, column 23]\n *n$0.x:int=n$1 [line 15, column 19]\n " shape="box"] +"Person#Person#constructor_new#{6016517870629270534}.75bb70b834543e18977cd4fa8f8022a7_3" [label="3: BinaryOperatorStmt: Assign \n n$1=*&this:constructor_new::Person* [line 15, column 19]\n n$2=*&i:int [line 15, column 23]\n *n$1.x:int=n$2 [line 15, column 19]\n " shape="box"] "Person#Person#constructor_new#{6016517870629270534}.75bb70b834543e18977cd4fa8f8022a7_3" -> "Person#Person#constructor_new#{6016517870629270534}.75bb70b834543e18977cd4fa8f8022a7_2" ; @@ -370,7 +370,7 @@ digraph cfg { "Person#Person#constructor_new#{6016547557443232231}.129098d47d79a7d06a2d6927fa32f467_2" [label="2: Exit constructor_new::Person_Person \n " color=yellow style=filled] -"Person#Person#constructor_new#{6016547557443232231}.129098d47d79a7d06a2d6927fa32f467_3" [label="3: BinaryOperatorStmt: Assign \n n$0=*&this:constructor_new::Person* [line 14, column 14]\n *n$0.x:int=0 [line 14, column 14]\n " shape="box"] +"Person#Person#constructor_new#{6016547557443232231}.129098d47d79a7d06a2d6927fa32f467_3" [label="3: BinaryOperatorStmt: Assign \n n$1=*&this:constructor_new::Person* [line 14, column 14]\n *n$1.x:int=0 [line 14, column 14]\n " shape="box"] "Person#Person#constructor_new#{6016547557443232231}.129098d47d79a7d06a2d6927fa32f467_3" -> "Person#Person#constructor_new#{6016547557443232231}.129098d47d79a7d06a2d6927fa32f467_2" ; diff --git a/infer/tests/codetoanalyze/cpp/shared/constructors/constructor_struct_init_list.cpp.dot b/infer/tests/codetoanalyze/cpp/shared/constructors/constructor_struct_init_list.cpp.dot index 0708fd9ac..f1b4a9338 100644 --- a/infer/tests/codetoanalyze/cpp/shared/constructors/constructor_struct_init_list.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/shared/constructors/constructor_struct_init_list.cpp.dot @@ -1,13 +1,13 @@ /* @generated */ digraph cfg { -"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_1" [label="1: Start test\nFormals: \nLocals: p:Person 0$?%__sil_tmpSIL_init_list__n$0:Insets \n DECLARE_LOCALS(&return,&p,&0$?%__sil_tmpSIL_init_list__n$0); [line 17, column 1]\n " color=yellow style=filled] +"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_1" [label="1: Start test\nFormals: \nLocals: p:Person 0$?%__sil_tmpSIL_init_list__n$1:Insets \n DECLARE_LOCALS(&return,&p,&0$?%__sil_tmpSIL_init_list__n$1); [line 17, column 1]\n " color=yellow style=filled] "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_1" -> "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_3" ; "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_2" [label="2: Exit test \n " color=yellow style=filled] -"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_3" [label="3: DeclStmt \n *&0$?%__sil_tmpSIL_init_list__n$0.top:int=0 [line 17, column 25]\n *&0$?%__sil_tmpSIL_init_list__n$0.left:int=0 [line 17, column 25]\n *&0$?%__sil_tmpSIL_init_list__n$0.bottom:int=0 [line 17, column 25]\n *&0$?%__sil_tmpSIL_init_list__n$0.right:int=0 [line 17, column 25]\n n$1=_fun_Person_Person(&p:Person*,&0$?%__sil_tmpSIL_init_list__n$0:Insets) [line 17, column 22]\n " shape="box"] +"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_3" [label="3: DeclStmt \n *&0$?%__sil_tmpSIL_init_list__n$1.top:int=0 [line 17, column 25]\n *&0$?%__sil_tmpSIL_init_list__n$1.left:int=0 [line 17, column 25]\n *&0$?%__sil_tmpSIL_init_list__n$1.bottom:int=0 [line 17, column 25]\n *&0$?%__sil_tmpSIL_init_list__n$1.right:int=0 [line 17, column 25]\n n$2=_fun_Person_Person(&p:Person*,&0$?%__sil_tmpSIL_init_list__n$1:Insets) [line 17, column 22]\n " shape="box"] "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_3" -> "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_2" ; @@ -18,7 +18,7 @@ digraph cfg { "Person#Person#{5857402560744521252}.6ef0efc697f825c2030746b71de7fd56_2" [label="2: Exit Person_Person \n " color=yellow style=filled] -"Person#Person#{5857402560744521252}.6ef0efc697f825c2030746b71de7fd56_3" [label="3: Constructor Init \n n$0=*&this:Person* [line 14, column 28]\n n$1=*&l:Insets const & [line 14, column 32]\n n$2=*n$1.top:int [line 14, column 32]\n *n$0.age:int=n$2 [line 14, column 28]\n " shape="box"] +"Person#Person#{5857402560744521252}.6ef0efc697f825c2030746b71de7fd56_3" [label="3: Constructor Init \n n$2=*&this:Person* [line 14, column 28]\n n$3=*&l:Insets const & [line 14, column 32]\n n$4=*n$3.top:int [line 14, column 32]\n *n$2.age:int=n$4 [line 14, column 28]\n " shape="box"] "Person#Person#{5857402560744521252}.6ef0efc697f825c2030746b71de7fd56_3" -> "Person#Person#{5857402560744521252}.6ef0efc697f825c2030746b71de7fd56_2" ; diff --git a/infer/tests/codetoanalyze/cpp/shared/constructors/constructor_with_body.cpp.dot b/infer/tests/codetoanalyze/cpp/shared/constructors/constructor_with_body.cpp.dot index b41c9824f..8d933f8ce 100644 --- a/infer/tests/codetoanalyze/cpp/shared/constructors/constructor_with_body.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/shared/constructors/constructor_with_body.cpp.dot @@ -7,11 +7,11 @@ digraph cfg { "test_div0#constructor_with_body#14177342253516869661.07f5b28b5e0b5cf0bd1b639da4232d5e_2" [label="2: Exit constructor_with_body::test_div0 \n " color=yellow style=filled] -"test_div0#constructor_with_body#14177342253516869661.07f5b28b5e0b5cf0bd1b639da4232d5e_3" [label="3: Call _fun_constructor_with_body::X_div \n _=*&x:constructor_with_body::X [line 32, column 3]\n n$1=_fun_constructor_with_body::X_div(&x:constructor_with_body::X&) [line 32, column 3]\n " shape="box"] +"test_div0#constructor_with_body#14177342253516869661.07f5b28b5e0b5cf0bd1b639da4232d5e_3" [label="3: Call _fun_constructor_with_body::X_div \n _=*&x:constructor_with_body::X [line 32, column 3]\n n$2=_fun_constructor_with_body::X_div(&x:constructor_with_body::X&) [line 32, column 3]\n " shape="box"] "test_div0#constructor_with_body#14177342253516869661.07f5b28b5e0b5cf0bd1b639da4232d5e_3" -> "test_div0#constructor_with_body#14177342253516869661.07f5b28b5e0b5cf0bd1b639da4232d5e_2" ; -"test_div0#constructor_with_body#14177342253516869661.07f5b28b5e0b5cf0bd1b639da4232d5e_4" [label="4: DeclStmt \n n$2=_fun_constructor_with_body::X_X(&x:constructor_with_body::X*,-2:int,2:int) [line 31, column 5]\n " shape="box"] +"test_div0#constructor_with_body#14177342253516869661.07f5b28b5e0b5cf0bd1b639da4232d5e_4" [label="4: DeclStmt \n n$3=_fun_constructor_with_body::X_X(&x:constructor_with_body::X*,-2:int,2:int) [line 31, column 5]\n " shape="box"] "test_div0#constructor_with_body#14177342253516869661.07f5b28b5e0b5cf0bd1b639da4232d5e_4" -> "test_div0#constructor_with_body#14177342253516869661.07f5b28b5e0b5cf0bd1b639da4232d5e_3" ; @@ -22,11 +22,11 @@ digraph cfg { "test_div0_default_constructor#constructor_with_body#13388399293672727772.2d6a8a159f30a2a66b86eb8aec3b9543_2" [label="2: Exit constructor_with_body::test_div0_default_constructor \n " color=yellow style=filled] -"test_div0_default_constructor#constructor_with_body#13388399293672727772.2d6a8a159f30a2a66b86eb8aec3b9543_3" [label="3: Call _fun_constructor_with_body::X_div \n _=*&x:constructor_with_body::X [line 37, column 3]\n n$1=_fun_constructor_with_body::X_div(&x:constructor_with_body::X&) [line 37, column 3]\n " shape="box"] +"test_div0_default_constructor#constructor_with_body#13388399293672727772.2d6a8a159f30a2a66b86eb8aec3b9543_3" [label="3: Call _fun_constructor_with_body::X_div \n _=*&x:constructor_with_body::X [line 37, column 3]\n n$2=_fun_constructor_with_body::X_div(&x:constructor_with_body::X&) [line 37, column 3]\n " shape="box"] "test_div0_default_constructor#constructor_with_body#13388399293672727772.2d6a8a159f30a2a66b86eb8aec3b9543_3" -> "test_div0_default_constructor#constructor_with_body#13388399293672727772.2d6a8a159f30a2a66b86eb8aec3b9543_2" ; -"test_div0_default_constructor#constructor_with_body#13388399293672727772.2d6a8a159f30a2a66b86eb8aec3b9543_4" [label="4: DeclStmt \n n$2=_fun_constructor_with_body::X_X(&x:constructor_with_body::X*) [line 36, column 5]\n " shape="box"] +"test_div0_default_constructor#constructor_with_body#13388399293672727772.2d6a8a159f30a2a66b86eb8aec3b9543_4" [label="4: DeclStmt \n n$3=_fun_constructor_with_body::X_X(&x:constructor_with_body::X*) [line 36, column 5]\n " shape="box"] "test_div0_default_constructor#constructor_with_body#13388399293672727772.2d6a8a159f30a2a66b86eb8aec3b9543_4" -> "test_div0_default_constructor#constructor_with_body#13388399293672727772.2d6a8a159f30a2a66b86eb8aec3b9543_3" ; @@ -37,11 +37,11 @@ digraph cfg { "test_div1#constructor_with_body#14807027065269407206.e5673561e7edf9eb35b296211ab8d37d_2" [label="2: Exit constructor_with_body::test_div1 \n " color=yellow style=filled] -"test_div1#constructor_with_body#14807027065269407206.e5673561e7edf9eb35b296211ab8d37d_3" [label="3: Call _fun_constructor_with_body::X_div \n _=*&x:constructor_with_body::X [line 42, column 3]\n n$1=_fun_constructor_with_body::X_div(&x:constructor_with_body::X&) [line 42, column 3]\n " shape="box"] +"test_div1#constructor_with_body#14807027065269407206.e5673561e7edf9eb35b296211ab8d37d_3" [label="3: Call _fun_constructor_with_body::X_div \n _=*&x:constructor_with_body::X [line 42, column 3]\n n$2=_fun_constructor_with_body::X_div(&x:constructor_with_body::X&) [line 42, column 3]\n " shape="box"] "test_div1#constructor_with_body#14807027065269407206.e5673561e7edf9eb35b296211ab8d37d_3" -> "test_div1#constructor_with_body#14807027065269407206.e5673561e7edf9eb35b296211ab8d37d_2" ; -"test_div1#constructor_with_body#14807027065269407206.e5673561e7edf9eb35b296211ab8d37d_4" [label="4: DeclStmt \n n$2=_fun_constructor_with_body::X_X(&x:constructor_with_body::X*,0:int,1:int) [line 41, column 5]\n " shape="box"] +"test_div1#constructor_with_body#14807027065269407206.e5673561e7edf9eb35b296211ab8d37d_4" [label="4: DeclStmt \n n$3=_fun_constructor_with_body::X_X(&x:constructor_with_body::X*,0:int,1:int) [line 41, column 5]\n " shape="box"] "test_div1#constructor_with_body#14807027065269407206.e5673561e7edf9eb35b296211ab8d37d_4" -> "test_div1#constructor_with_body#14807027065269407206.e5673561e7edf9eb35b296211ab8d37d_3" ; @@ -52,7 +52,7 @@ digraph cfg { "X#X#constructor_with_body#{16871729092574880817}.54f479ca84639d148c4b988a7530253a_2" [label="2: Exit constructor_with_body::X_X \n " color=yellow style=filled] -"X#X#constructor_with_body#{16871729092574880817}.54f479ca84639d148c4b988a7530253a_3" [label="3: Call _fun_constructor_with_body::X_init \n n$0=*&this:constructor_with_body::X* [line 17, column 9]\n _=*n$0:constructor_with_body::X [line 17, column 9]\n n$2=_fun_constructor_with_body::X_init(n$0:constructor_with_body::X*) [line 17, column 9]\n " shape="box"] +"X#X#constructor_with_body#{16871729092574880817}.54f479ca84639d148c4b988a7530253a_3" [label="3: Call _fun_constructor_with_body::X_init \n n$1=*&this:constructor_with_body::X* [line 17, column 9]\n _=*n$1:constructor_with_body::X [line 17, column 9]\n n$3=_fun_constructor_with_body::X_init(n$1:constructor_with_body::X*) [line 17, column 9]\n " shape="box"] "X#X#constructor_with_body#{16871729092574880817}.54f479ca84639d148c4b988a7530253a_3" -> "X#X#constructor_with_body#{16871729092574880817}.54f479ca84639d148c4b988a7530253a_2" ; @@ -63,15 +63,15 @@ digraph cfg { "X#X#constructor_with_body#{7540788797581315247}.c8826e9323020557160f8002c0b802f2_2" [label="2: Exit constructor_with_body::X_X \n " color=yellow style=filled] -"X#X#constructor_with_body#{7540788797581315247}.c8826e9323020557160f8002c0b802f2_3" [label="3: BinaryOperatorStmt: Assign \n n$0=*&this:constructor_with_body::X* [line 27, column 3]\n n$1=*&c:int [line 27, column 7]\n *n$0.f:int=n$1 [line 27, column 3]\n " shape="box"] +"X#X#constructor_with_body#{7540788797581315247}.c8826e9323020557160f8002c0b802f2_3" [label="3: BinaryOperatorStmt: Assign \n n$1=*&this:constructor_with_body::X* [line 27, column 3]\n n$2=*&c:int [line 27, column 7]\n *n$1.f:int=n$2 [line 27, column 3]\n " shape="box"] "X#X#constructor_with_body#{7540788797581315247}.c8826e9323020557160f8002c0b802f2_3" -> "X#X#constructor_with_body#{7540788797581315247}.c8826e9323020557160f8002c0b802f2_2" ; -"X#X#constructor_with_body#{7540788797581315247}.c8826e9323020557160f8002c0b802f2_4" [label="4: Call _fun_constructor_with_body::X_init \n n$2=*&this:constructor_with_body::X* [line 26, column 3]\n _=*n$2:constructor_with_body::X [line 26, column 3]\n n$4=_fun_constructor_with_body::X_init(n$2:constructor_with_body::X*) [line 26, column 3]\n " shape="box"] +"X#X#constructor_with_body#{7540788797581315247}.c8826e9323020557160f8002c0b802f2_4" [label="4: Call _fun_constructor_with_body::X_init \n n$3=*&this:constructor_with_body::X* [line 26, column 3]\n _=*n$3:constructor_with_body::X [line 26, column 3]\n n$5=_fun_constructor_with_body::X_init(n$3:constructor_with_body::X*) [line 26, column 3]\n " shape="box"] "X#X#constructor_with_body#{7540788797581315247}.c8826e9323020557160f8002c0b802f2_4" -> "X#X#constructor_with_body#{7540788797581315247}.c8826e9323020557160f8002c0b802f2_3" ; -"X#X#constructor_with_body#{7540788797581315247}.c8826e9323020557160f8002c0b802f2_5" [label="5: DeclStmt \n n$5=*&a:int [line 25, column 11]\n n$6=*&b:int [line 25, column 15]\n *&c:int=(n$5 + n$6) [line 25, column 3]\n " shape="box"] +"X#X#constructor_with_body#{7540788797581315247}.c8826e9323020557160f8002c0b802f2_5" [label="5: DeclStmt \n n$6=*&a:int [line 25, column 11]\n n$7=*&b:int [line 25, column 15]\n *&c:int=(n$6 + n$7) [line 25, column 3]\n " shape="box"] "X#X#constructor_with_body#{7540788797581315247}.c8826e9323020557160f8002c0b802f2_5" -> "X#X#constructor_with_body#{7540788797581315247}.c8826e9323020557160f8002c0b802f2_4" ; @@ -93,7 +93,7 @@ digraph cfg { "init#X#constructor_with_body#(11920920673411078151).40e39840a696bef95297e1afb2f57392_2" [label="2: Exit constructor_with_body::X_init \n " color=yellow style=filled] -"init#X#constructor_with_body#(11920920673411078151).40e39840a696bef95297e1afb2f57392_3" [label="3: BinaryOperatorStmt: Assign \n n$0=*&this:constructor_with_body::X* [line 14, column 17]\n *n$0.f:int=0 [line 14, column 17]\n " shape="box"] +"init#X#constructor_with_body#(11920920673411078151).40e39840a696bef95297e1afb2f57392_3" [label="3: BinaryOperatorStmt: Assign \n n$1=*&this:constructor_with_body::X* [line 14, column 17]\n *n$1.f:int=0 [line 14, column 17]\n " shape="box"] "init#X#constructor_with_body#(11920920673411078151).40e39840a696bef95297e1afb2f57392_3" -> "init#X#constructor_with_body#(11920920673411078151).40e39840a696bef95297e1afb2f57392_2" ; diff --git a/infer/tests/codetoanalyze/cpp/shared/constructors/copy_array_field.cpp.dot b/infer/tests/codetoanalyze/cpp/shared/constructors/copy_array_field.cpp.dot index a7416a3bb..113f68d02 100644 --- a/infer/tests/codetoanalyze/cpp/shared/constructors/copy_array_field.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/shared/constructors/copy_array_field.cpp.dot @@ -11,7 +11,7 @@ digraph cfg { "no_npe#copy_array_field#15879390968573954131.8ea76552f08038187f112d283020a67e_3" -> "no_npe#copy_array_field#15879390968573954131.8ea76552f08038187f112d283020a67e_2" ; -"no_npe#copy_array_field#15879390968573954131.8ea76552f08038187f112d283020a67e_4" [label="4: DeclStmt \n n$2=_fun_copy_array_field::X_X(&x2:copy_array_field::X*,&x1:copy_array_field::X&) [line 26, column 10]\n " shape="box"] +"no_npe#copy_array_field#15879390968573954131.8ea76552f08038187f112d283020a67e_4" [label="4: DeclStmt \n n$3=_fun_copy_array_field::X_X(&x2:copy_array_field::X*,&x1:copy_array_field::X&) [line 26, column 10]\n " shape="box"] "no_npe#copy_array_field#15879390968573954131.8ea76552f08038187f112d283020a67e_4" -> "no_npe#copy_array_field#15879390968573954131.8ea76552f08038187f112d283020a67e_3" ; @@ -19,7 +19,7 @@ digraph cfg { "no_npe#copy_array_field#15879390968573954131.8ea76552f08038187f112d283020a67e_5" -> "no_npe#copy_array_field#15879390968573954131.8ea76552f08038187f112d283020a67e_4" ; -"no_npe#copy_array_field#15879390968573954131.8ea76552f08038187f112d283020a67e_6" [label="6: DeclStmt \n n$3=_fun_copy_array_field::X_X(&x1:copy_array_field::X*) [line 24, column 5]\n " shape="box"] +"no_npe#copy_array_field#15879390968573954131.8ea76552f08038187f112d283020a67e_6" [label="6: DeclStmt \n n$4=_fun_copy_array_field::X_X(&x1:copy_array_field::X*) [line 24, column 5]\n " shape="box"] "no_npe#copy_array_field#15879390968573954131.8ea76552f08038187f112d283020a67e_6" -> "no_npe#copy_array_field#15879390968573954131.8ea76552f08038187f112d283020a67e_5" ; @@ -38,7 +38,7 @@ digraph cfg { "npe#copy_array_field#77301322902488828.946ed5a43ad43585633fa030996f9ad5_3" -> "npe#copy_array_field#77301322902488828.946ed5a43ad43585633fa030996f9ad5_2" ; -"npe#copy_array_field#77301322902488828.946ed5a43ad43585633fa030996f9ad5_4" [label="4: DeclStmt \n n$2=_fun_copy_array_field::X_X(&x2:copy_array_field::X*,&x1:copy_array_field::X&) [line 18, column 10]\n " shape="box"] +"npe#copy_array_field#77301322902488828.946ed5a43ad43585633fa030996f9ad5_4" [label="4: DeclStmt \n n$3=_fun_copy_array_field::X_X(&x2:copy_array_field::X*,&x1:copy_array_field::X&) [line 18, column 10]\n " shape="box"] "npe#copy_array_field#77301322902488828.946ed5a43ad43585633fa030996f9ad5_4" -> "npe#copy_array_field#77301322902488828.946ed5a43ad43585633fa030996f9ad5_3" ; @@ -46,7 +46,7 @@ digraph cfg { "npe#copy_array_field#77301322902488828.946ed5a43ad43585633fa030996f9ad5_5" -> "npe#copy_array_field#77301322902488828.946ed5a43ad43585633fa030996f9ad5_4" ; -"npe#copy_array_field#77301322902488828.946ed5a43ad43585633fa030996f9ad5_6" [label="6: DeclStmt \n n$3=_fun_copy_array_field::X_X(&x1:copy_array_field::X*) [line 16, column 5]\n " shape="box"] +"npe#copy_array_field#77301322902488828.946ed5a43ad43585633fa030996f9ad5_6" [label="6: DeclStmt \n n$4=_fun_copy_array_field::X_X(&x1:copy_array_field::X*) [line 16, column 5]\n " shape="box"] "npe#copy_array_field#77301322902488828.946ed5a43ad43585633fa030996f9ad5_6" -> "npe#copy_array_field#77301322902488828.946ed5a43ad43585633fa030996f9ad5_5" ; @@ -64,11 +64,11 @@ digraph cfg { "X#X#copy_array_field#{17703731918757231564|constexpr}.ab45982a069b7b3a582b1d4796205cce_2" [label="2: Exit copy_array_field::X_X \n " color=yellow style=filled] -"X#X#copy_array_field#{17703731918757231564|constexpr}.ab45982a069b7b3a582b1d4796205cce_3" [label="3: Constructor Init \n n$0=*&this:copy_array_field::X* [line 10, column 8]\n *n$0.x:int=-1 [line 10, column 8]\n " shape="box"] +"X#X#copy_array_field#{17703731918757231564|constexpr}.ab45982a069b7b3a582b1d4796205cce_3" [label="3: Constructor Init \n n$2=*&this:copy_array_field::X* [line 10, column 8]\n *n$2.x:void=n$3 [line 10, column 8]\n " shape="box"] "X#X#copy_array_field#{17703731918757231564|constexpr}.ab45982a069b7b3a582b1d4796205cce_3" -> "X#X#copy_array_field#{17703731918757231564|constexpr}.ab45982a069b7b3a582b1d4796205cce_2" ; -"X#X#copy_array_field#{17703731918757231564|constexpr}.ab45982a069b7b3a582b1d4796205cce_4" [label="4: Constructor Init \n n$1=*&this:copy_array_field::X* [line 10, column 8]\n n$2=*&__param_0:copy_array_field::X const & [line 10, column 8]\n n$3=*n$2.p:int* [line 10, column 8]\n *n$1.p:int*=n$3 [line 10, column 8]\n " shape="box"] +"X#X#copy_array_field#{17703731918757231564|constexpr}.ab45982a069b7b3a582b1d4796205cce_4" [label="4: Constructor Init \n n$4=*&this:copy_array_field::X* [line 10, column 8]\n n$5=*&__param_0:copy_array_field::X const & [line 10, column 8]\n n$6=*n$5.p:int* [line 10, column 8]\n *n$4.p:int*=n$6 [line 10, column 8]\n " shape="box"] "X#X#copy_array_field#{17703731918757231564|constexpr}.ab45982a069b7b3a582b1d4796205cce_4" -> "X#X#copy_array_field#{17703731918757231564|constexpr}.ab45982a069b7b3a582b1d4796205cce_3" ; diff --git a/infer/tests/codetoanalyze/cpp/shared/constructors/copy_move_constructor.cpp.dot b/infer/tests/codetoanalyze/cpp/shared/constructors/copy_move_constructor.cpp.dot index 290a31c79..5575392ec 100644 --- a/infer/tests/codetoanalyze/cpp/shared/constructors/copy_move_constructor.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/shared/constructors/copy_move_constructor.cpp.dot @@ -11,7 +11,7 @@ digraph cfg { "copyX_div0#copy_move_constructor#7555826423954612298.1fd45599e2fc3ce471d7d474aa615bcb_3" -> "copyX_div0#copy_move_constructor#7555826423954612298.1fd45599e2fc3ce471d7d474aa615bcb_2" ; -"copyX_div0#copy_move_constructor#7555826423954612298.1fd45599e2fc3ce471d7d474aa615bcb_4" [label="4: DeclStmt \n n$5=_fun_copy_move_constructor::X_X(&x2:copy_move_constructor::X*,&x1:copy_move_constructor::X&) [line 44, column 10]\n " shape="box"] +"copyX_div0#copy_move_constructor#7555826423954612298.1fd45599e2fc3ce471d7d474aa615bcb_4" [label="4: DeclStmt \n n$6=_fun_copy_move_constructor::X_X(&x2:copy_move_constructor::X*,&x1:copy_move_constructor::X&) [line 44, column 10]\n " shape="box"] "copyX_div0#copy_move_constructor#7555826423954612298.1fd45599e2fc3ce471d7d474aa615bcb_4" -> "copyX_div0#copy_move_constructor#7555826423954612298.1fd45599e2fc3ce471d7d474aa615bcb_3" ; @@ -19,11 +19,11 @@ digraph cfg { "copyX_div0#copy_move_constructor#7555826423954612298.1fd45599e2fc3ce471d7d474aa615bcb_5" -> "copyX_div0#copy_move_constructor#7555826423954612298.1fd45599e2fc3ce471d7d474aa615bcb_4" ; -"copyX_div0#copy_move_constructor#7555826423954612298.1fd45599e2fc3ce471d7d474aa615bcb_6" [label="6: DeclStmt \n n$6=_fun_copy_move_constructor::X_X(&x1:copy_move_constructor::X*) [line 42, column 5]\n " shape="box"] +"copyX_div0#copy_move_constructor#7555826423954612298.1fd45599e2fc3ce471d7d474aa615bcb_6" [label="6: DeclStmt \n n$7=_fun_copy_move_constructor::X_X(&x1:copy_move_constructor::X*) [line 42, column 5]\n " shape="box"] "copyX_div0#copy_move_constructor#7555826423954612298.1fd45599e2fc3ce471d7d474aa615bcb_6" -> "copyX_div0#copy_move_constructor#7555826423954612298.1fd45599e2fc3ce471d7d474aa615bcb_5" ; -"copyX_moveX_div1#copy_move_constructor#6853813819184662211.00e91897e7d9fcfa93de911bba9a1399_1" [label="1: Start copy_move_constructor::copyX_moveX_div1\nFormals: \nLocals: d2:int 0$?%__sil_tmpSIL_materialize_temp__n$6:copy_move_constructor::X d1:int x2:copy_move_constructor::X x1:copy_move_constructor::X \n DECLARE_LOCALS(&return,&d2,&0$?%__sil_tmpSIL_materialize_temp__n$6,&d1,&x2,&x1); [line 65, column 1]\n " color=yellow style=filled] +"copyX_moveX_div1#copy_move_constructor#6853813819184662211.00e91897e7d9fcfa93de911bba9a1399_1" [label="1: Start copy_move_constructor::copyX_moveX_div1\nFormals: \nLocals: d2:int 0$?%__sil_tmpSIL_materialize_temp__n$7:copy_move_constructor::X d1:int x2:copy_move_constructor::X x1:copy_move_constructor::X \n DECLARE_LOCALS(&return,&d2,&0$?%__sil_tmpSIL_materialize_temp__n$7,&d1,&x2,&x1); [line 65, column 1]\n " color=yellow style=filled] "copyX_moveX_div1#copy_move_constructor#6853813819184662211.00e91897e7d9fcfa93de911bba9a1399_1" -> "copyX_moveX_div1#copy_move_constructor#6853813819184662211.00e91897e7d9fcfa93de911bba9a1399_8" ; @@ -34,15 +34,15 @@ digraph cfg { "copyX_moveX_div1#copy_move_constructor#6853813819184662211.00e91897e7d9fcfa93de911bba9a1399_3" -> "copyX_moveX_div1#copy_move_constructor#6853813819184662211.00e91897e7d9fcfa93de911bba9a1399_2" ; -"copyX_moveX_div1#copy_move_constructor#6853813819184662211.00e91897e7d9fcfa93de911bba9a1399_4" [label="4: DeclStmt \n n$8=_fun_copy_move_constructor::getX(1:int,&0$?%__sil_tmpSIL_materialize_temp__n$6:copy_move_constructor::X*) [line 70, column 16]\n n$9=*&0$?%__sil_tmpSIL_materialize_temp__n$6.f:int [line 70, column 16]\n *&d2:int=(1 / n$9) [line 70, column 3]\n " shape="box"] +"copyX_moveX_div1#copy_move_constructor#6853813819184662211.00e91897e7d9fcfa93de911bba9a1399_4" [label="4: DeclStmt \n n$9=_fun_copy_move_constructor::getX(1:int,&0$?%__sil_tmpSIL_materialize_temp__n$7:copy_move_constructor::X*) [line 70, column 16]\n n$10=*&0$?%__sil_tmpSIL_materialize_temp__n$7.f:int [line 70, column 16]\n *&d2:int=(1 / n$10) [line 70, column 3]\n " shape="box"] "copyX_moveX_div1#copy_move_constructor#6853813819184662211.00e91897e7d9fcfa93de911bba9a1399_4" -> "copyX_moveX_div1#copy_move_constructor#6853813819184662211.00e91897e7d9fcfa93de911bba9a1399_3" ; -"copyX_moveX_div1#copy_move_constructor#6853813819184662211.00e91897e7d9fcfa93de911bba9a1399_5" [label="5: DeclStmt \n n$10=*&x2.f:int [line 69, column 16]\n *&d1:int=(1 / n$10) [line 69, column 3]\n " shape="box"] +"copyX_moveX_div1#copy_move_constructor#6853813819184662211.00e91897e7d9fcfa93de911bba9a1399_5" [label="5: DeclStmt \n n$11=*&x2.f:int [line 69, column 16]\n *&d1:int=(1 / n$11) [line 69, column 3]\n " shape="box"] "copyX_moveX_div1#copy_move_constructor#6853813819184662211.00e91897e7d9fcfa93de911bba9a1399_5" -> "copyX_moveX_div1#copy_move_constructor#6853813819184662211.00e91897e7d9fcfa93de911bba9a1399_4" ; -"copyX_moveX_div1#copy_move_constructor#6853813819184662211.00e91897e7d9fcfa93de911bba9a1399_6" [label="6: DeclStmt \n n$11=_fun_copy_move_constructor::X_X(&x2:copy_move_constructor::X*,&x1:copy_move_constructor::X&) [line 68, column 10]\n " shape="box"] +"copyX_moveX_div1#copy_move_constructor#6853813819184662211.00e91897e7d9fcfa93de911bba9a1399_6" [label="6: DeclStmt \n n$12=_fun_copy_move_constructor::X_X(&x2:copy_move_constructor::X*,&x1:copy_move_constructor::X&) [line 68, column 10]\n " shape="box"] "copyX_moveX_div1#copy_move_constructor#6853813819184662211.00e91897e7d9fcfa93de911bba9a1399_6" -> "copyX_moveX_div1#copy_move_constructor#6853813819184662211.00e91897e7d9fcfa93de911bba9a1399_5" ; @@ -50,7 +50,7 @@ digraph cfg { "copyX_moveX_div1#copy_move_constructor#6853813819184662211.00e91897e7d9fcfa93de911bba9a1399_7" -> "copyX_moveX_div1#copy_move_constructor#6853813819184662211.00e91897e7d9fcfa93de911bba9a1399_6" ; -"copyX_moveX_div1#copy_move_constructor#6853813819184662211.00e91897e7d9fcfa93de911bba9a1399_8" [label="8: DeclStmt \n n$12=_fun_copy_move_constructor::X_X(&x1:copy_move_constructor::X*) [line 66, column 5]\n " shape="box"] +"copyX_moveX_div1#copy_move_constructor#6853813819184662211.00e91897e7d9fcfa93de911bba9a1399_8" [label="8: DeclStmt \n n$13=_fun_copy_move_constructor::X_X(&x1:copy_move_constructor::X*) [line 66, column 5]\n " shape="box"] "copyX_moveX_div1#copy_move_constructor#6853813819184662211.00e91897e7d9fcfa93de911bba9a1399_8" -> "copyX_moveX_div1#copy_move_constructor#6853813819184662211.00e91897e7d9fcfa93de911bba9a1399_7" ; @@ -65,7 +65,7 @@ digraph cfg { "copyY_div0#copy_move_constructor#17079397845524781987.61211209ec1f961073f3adafcd080bfb_3" -> "copyY_div0#copy_move_constructor#17079397845524781987.61211209ec1f961073f3adafcd080bfb_2" ; -"copyY_div0#copy_move_constructor#17079397845524781987.61211209ec1f961073f3adafcd080bfb_4" [label="4: DeclStmt \n n$5=_fun_copy_move_constructor::Y_Y(&y2:copy_move_constructor::Y*,&y1:copy_move_constructor::Y&) [line 53, column 10]\n " shape="box"] +"copyY_div0#copy_move_constructor#17079397845524781987.61211209ec1f961073f3adafcd080bfb_4" [label="4: DeclStmt \n n$6=_fun_copy_move_constructor::Y_Y(&y2:copy_move_constructor::Y*,&y1:copy_move_constructor::Y&) [line 53, column 10]\n " shape="box"] "copyY_div0#copy_move_constructor#17079397845524781987.61211209ec1f961073f3adafcd080bfb_4" -> "copyY_div0#copy_move_constructor#17079397845524781987.61211209ec1f961073f3adafcd080bfb_3" ; @@ -73,11 +73,11 @@ digraph cfg { "copyY_div0#copy_move_constructor#17079397845524781987.61211209ec1f961073f3adafcd080bfb_5" -> "copyY_div0#copy_move_constructor#17079397845524781987.61211209ec1f961073f3adafcd080bfb_4" ; -"copyY_div0#copy_move_constructor#17079397845524781987.61211209ec1f961073f3adafcd080bfb_6" [label="6: DeclStmt \n n$6=_fun_copy_move_constructor::Y_Y(&y1:copy_move_constructor::Y*) [line 51, column 5]\n " shape="box"] +"copyY_div0#copy_move_constructor#17079397845524781987.61211209ec1f961073f3adafcd080bfb_6" [label="6: DeclStmt \n n$7=_fun_copy_move_constructor::Y_Y(&y1:copy_move_constructor::Y*) [line 51, column 5]\n " shape="box"] "copyY_div0#copy_move_constructor#17079397845524781987.61211209ec1f961073f3adafcd080bfb_6" -> "copyY_div0#copy_move_constructor#17079397845524781987.61211209ec1f961073f3adafcd080bfb_5" ; -"copyY_moveY_div1#copy_move_constructor#5827233588222911615.5716e8b7acbd3ff43f18c7c5954c6565_1" [label="1: Start copy_move_constructor::copyY_moveY_div1\nFormals: \nLocals: d2:int 0$?%__sil_tmpSIL_materialize_temp__n$6:copy_move_constructor::Y d1:int y2:copy_move_constructor::Y y1:copy_move_constructor::Y \n DECLARE_LOCALS(&return,&d2,&0$?%__sil_tmpSIL_materialize_temp__n$6,&d1,&y2,&y1); [line 74, column 1]\n " color=yellow style=filled] +"copyY_moveY_div1#copy_move_constructor#5827233588222911615.5716e8b7acbd3ff43f18c7c5954c6565_1" [label="1: Start copy_move_constructor::copyY_moveY_div1\nFormals: \nLocals: d2:int 0$?%__sil_tmpSIL_materialize_temp__n$7:copy_move_constructor::Y d1:int y2:copy_move_constructor::Y y1:copy_move_constructor::Y \n DECLARE_LOCALS(&return,&d2,&0$?%__sil_tmpSIL_materialize_temp__n$7,&d1,&y2,&y1); [line 74, column 1]\n " color=yellow style=filled] "copyY_moveY_div1#copy_move_constructor#5827233588222911615.5716e8b7acbd3ff43f18c7c5954c6565_1" -> "copyY_moveY_div1#copy_move_constructor#5827233588222911615.5716e8b7acbd3ff43f18c7c5954c6565_8" ; @@ -88,15 +88,15 @@ digraph cfg { "copyY_moveY_div1#copy_move_constructor#5827233588222911615.5716e8b7acbd3ff43f18c7c5954c6565_3" -> "copyY_moveY_div1#copy_move_constructor#5827233588222911615.5716e8b7acbd3ff43f18c7c5954c6565_2" ; -"copyY_moveY_div1#copy_move_constructor#5827233588222911615.5716e8b7acbd3ff43f18c7c5954c6565_4" [label="4: DeclStmt \n n$8=_fun_copy_move_constructor::getY(2:int,&0$?%__sil_tmpSIL_materialize_temp__n$6:copy_move_constructor::Y*) [line 79, column 16]\n n$9=*&0$?%__sil_tmpSIL_materialize_temp__n$6.f:int [line 79, column 16]\n *&d2:int=(1 / n$9) [line 79, column 3]\n " shape="box"] +"copyY_moveY_div1#copy_move_constructor#5827233588222911615.5716e8b7acbd3ff43f18c7c5954c6565_4" [label="4: DeclStmt \n n$9=_fun_copy_move_constructor::getY(2:int,&0$?%__sil_tmpSIL_materialize_temp__n$7:copy_move_constructor::Y*) [line 79, column 16]\n n$10=*&0$?%__sil_tmpSIL_materialize_temp__n$7.f:int [line 79, column 16]\n *&d2:int=(1 / n$10) [line 79, column 3]\n " shape="box"] "copyY_moveY_div1#copy_move_constructor#5827233588222911615.5716e8b7acbd3ff43f18c7c5954c6565_4" -> "copyY_moveY_div1#copy_move_constructor#5827233588222911615.5716e8b7acbd3ff43f18c7c5954c6565_3" ; -"copyY_moveY_div1#copy_move_constructor#5827233588222911615.5716e8b7acbd3ff43f18c7c5954c6565_5" [label="5: DeclStmt \n n$10=*&y2.f:int [line 78, column 16]\n *&d1:int=(1 / n$10) [line 78, column 3]\n " shape="box"] +"copyY_moveY_div1#copy_move_constructor#5827233588222911615.5716e8b7acbd3ff43f18c7c5954c6565_5" [label="5: DeclStmt \n n$11=*&y2.f:int [line 78, column 16]\n *&d1:int=(1 / n$11) [line 78, column 3]\n " shape="box"] "copyY_moveY_div1#copy_move_constructor#5827233588222911615.5716e8b7acbd3ff43f18c7c5954c6565_5" -> "copyY_moveY_div1#copy_move_constructor#5827233588222911615.5716e8b7acbd3ff43f18c7c5954c6565_4" ; -"copyY_moveY_div1#copy_move_constructor#5827233588222911615.5716e8b7acbd3ff43f18c7c5954c6565_6" [label="6: DeclStmt \n n$11=_fun_copy_move_constructor::Y_Y(&y2:copy_move_constructor::Y*,&y1:copy_move_constructor::Y&) [line 77, column 10]\n " shape="box"] +"copyY_moveY_div1#copy_move_constructor#5827233588222911615.5716e8b7acbd3ff43f18c7c5954c6565_6" [label="6: DeclStmt \n n$12=_fun_copy_move_constructor::Y_Y(&y2:copy_move_constructor::Y*,&y1:copy_move_constructor::Y&) [line 77, column 10]\n " shape="box"] "copyY_moveY_div1#copy_move_constructor#5827233588222911615.5716e8b7acbd3ff43f18c7c5954c6565_6" -> "copyY_moveY_div1#copy_move_constructor#5827233588222911615.5716e8b7acbd3ff43f18c7c5954c6565_5" ; @@ -104,7 +104,7 @@ digraph cfg { "copyY_moveY_div1#copy_move_constructor#5827233588222911615.5716e8b7acbd3ff43f18c7c5954c6565_7" -> "copyY_moveY_div1#copy_move_constructor#5827233588222911615.5716e8b7acbd3ff43f18c7c5954c6565_6" ; -"copyY_moveY_div1#copy_move_constructor#5827233588222911615.5716e8b7acbd3ff43f18c7c5954c6565_8" [label="8: DeclStmt \n n$12=_fun_copy_move_constructor::Y_Y(&y1:copy_move_constructor::Y*) [line 75, column 5]\n " shape="box"] +"copyY_moveY_div1#copy_move_constructor#5827233588222911615.5716e8b7acbd3ff43f18c7c5954c6565_8" [label="8: DeclStmt \n n$13=_fun_copy_move_constructor::Y_Y(&y1:copy_move_constructor::Y*) [line 75, column 5]\n " shape="box"] "copyY_moveY_div1#copy_move_constructor#5827233588222911615.5716e8b7acbd3ff43f18c7c5954c6565_8" -> "copyY_moveY_div1#copy_move_constructor#5827233588222911615.5716e8b7acbd3ff43f18c7c5954c6565_7" ; @@ -119,11 +119,11 @@ digraph cfg { "getX#copy_move_constructor#2211685783611424509.876b259ed079b8b199249e0c38ad55df_3" -> "getX#copy_move_constructor#2211685783611424509.876b259ed079b8b199249e0c38ad55df_2" ; -"getX#copy_move_constructor#2211685783611424509.876b259ed079b8b199249e0c38ad55df_4" [label="4: BinaryOperatorStmt: Assign \n n$4=*&f:int [line 31, column 9]\n *&x.f:int=n$4 [line 31, column 3]\n " shape="box"] +"getX#copy_move_constructor#2211685783611424509.876b259ed079b8b199249e0c38ad55df_4" [label="4: BinaryOperatorStmt: Assign \n n$5=*&f:int [line 31, column 9]\n *&x.f:int=n$5 [line 31, column 3]\n " shape="box"] "getX#copy_move_constructor#2211685783611424509.876b259ed079b8b199249e0c38ad55df_4" -> "getX#copy_move_constructor#2211685783611424509.876b259ed079b8b199249e0c38ad55df_3" ; -"getX#copy_move_constructor#2211685783611424509.876b259ed079b8b199249e0c38ad55df_5" [label="5: DeclStmt \n n$5=_fun_copy_move_constructor::X_X(&x:copy_move_constructor::X*) [line 30, column 5]\n " shape="box"] +"getX#copy_move_constructor#2211685783611424509.876b259ed079b8b199249e0c38ad55df_5" [label="5: DeclStmt \n n$6=_fun_copy_move_constructor::X_X(&x:copy_move_constructor::X*) [line 30, column 5]\n " shape="box"] "getX#copy_move_constructor#2211685783611424509.876b259ed079b8b199249e0c38ad55df_5" -> "getX#copy_move_constructor#2211685783611424509.876b259ed079b8b199249e0c38ad55df_4" ; @@ -138,11 +138,11 @@ digraph cfg { "getY#copy_move_constructor#1712013823822590270.2c171bbad2707d6170d0b7974ac3c196_3" -> "getY#copy_move_constructor#1712013823822590270.2c171bbad2707d6170d0b7974ac3c196_2" ; -"getY#copy_move_constructor#1712013823822590270.2c171bbad2707d6170d0b7974ac3c196_4" [label="4: BinaryOperatorStmt: Assign \n n$4=*&f:int [line 37, column 9]\n *&y.f:int=n$4 [line 37, column 3]\n " shape="box"] +"getY#copy_move_constructor#1712013823822590270.2c171bbad2707d6170d0b7974ac3c196_4" [label="4: BinaryOperatorStmt: Assign \n n$5=*&f:int [line 37, column 9]\n *&y.f:int=n$5 [line 37, column 3]\n " shape="box"] "getY#copy_move_constructor#1712013823822590270.2c171bbad2707d6170d0b7974ac3c196_4" -> "getY#copy_move_constructor#1712013823822590270.2c171bbad2707d6170d0b7974ac3c196_3" ; -"getY#copy_move_constructor#1712013823822590270.2c171bbad2707d6170d0b7974ac3c196_5" [label="5: DeclStmt \n n$5=_fun_copy_move_constructor::Y_Y(&y:copy_move_constructor::Y*) [line 36, column 5]\n " shape="box"] +"getY#copy_move_constructor#1712013823822590270.2c171bbad2707d6170d0b7974ac3c196_5" [label="5: DeclStmt \n n$6=_fun_copy_move_constructor::Y_Y(&y:copy_move_constructor::Y*) [line 36, column 5]\n " shape="box"] "getY#copy_move_constructor#1712013823822590270.2c171bbad2707d6170d0b7974ac3c196_5" -> "getY#copy_move_constructor#1712013823822590270.2c171bbad2707d6170d0b7974ac3c196_4" ; @@ -168,7 +168,7 @@ digraph cfg { "moveY_div0#copy_move_constructor#15307842160732522395.eee7693240d3ce27d5c30f34d771cb57_3" -> "moveY_div0#copy_move_constructor#15307842160732522395.eee7693240d3ce27d5c30f34d771cb57_2" ; -"moveY_moveY_copyY_div0#copy_move_constructor#11319351724516006746.d5d5d96d98dcf1c634b647be30001d2e_1" [label="1: Start copy_move_constructor::moveY_moveY_copyY_div0\nFormals: \nLocals: y2:copy_move_constructor::Y y1:copy_move_constructor::Y 0$?%__sil_tmpSIL_materialize_temp__n$6:copy_move_constructor::Y \n DECLARE_LOCALS(&return,&y2,&y1,&0$?%__sil_tmpSIL_materialize_temp__n$6); [line 59, column 1]\n " color=yellow style=filled] +"moveY_moveY_copyY_div0#copy_move_constructor#11319351724516006746.d5d5d96d98dcf1c634b647be30001d2e_1" [label="1: Start copy_move_constructor::moveY_moveY_copyY_div0\nFormals: \nLocals: y2:copy_move_constructor::Y y1:copy_move_constructor::Y 0$?%__sil_tmpSIL_materialize_temp__n$7:copy_move_constructor::Y const \n DECLARE_LOCALS(&return,&y2,&y1,&0$?%__sil_tmpSIL_materialize_temp__n$7); [line 59, column 1]\n " color=yellow style=filled] "moveY_moveY_copyY_div0#copy_move_constructor#11319351724516006746.d5d5d96d98dcf1c634b647be30001d2e_1" -> "moveY_moveY_copyY_div0#copy_move_constructor#11319351724516006746.d5d5d96d98dcf1c634b647be30001d2e_5" ; @@ -179,11 +179,11 @@ digraph cfg { "moveY_moveY_copyY_div0#copy_move_constructor#11319351724516006746.d5d5d96d98dcf1c634b647be30001d2e_3" -> "moveY_moveY_copyY_div0#copy_move_constructor#11319351724516006746.d5d5d96d98dcf1c634b647be30001d2e_2" ; -"moveY_moveY_copyY_div0#copy_move_constructor#11319351724516006746.d5d5d96d98dcf1c634b647be30001d2e_4" [label="4: DeclStmt \n n$5=_fun_copy_move_constructor::Y_Y(&y2:copy_move_constructor::Y*,&y1:copy_move_constructor::Y&) [line 61, column 10]\n " shape="box"] +"moveY_moveY_copyY_div0#copy_move_constructor#11319351724516006746.d5d5d96d98dcf1c634b647be30001d2e_4" [label="4: DeclStmt \n n$6=_fun_copy_move_constructor::Y_Y(&y2:copy_move_constructor::Y*,&y1:copy_move_constructor::Y&) [line 61, column 10]\n " shape="box"] "moveY_moveY_copyY_div0#copy_move_constructor#11319351724516006746.d5d5d96d98dcf1c634b647be30001d2e_4" -> "moveY_moveY_copyY_div0#copy_move_constructor#11319351724516006746.d5d5d96d98dcf1c634b647be30001d2e_3" ; -"moveY_moveY_copyY_div0#copy_move_constructor#11319351724516006746.d5d5d96d98dcf1c634b647be30001d2e_5" [label="5: DeclStmt \n n$8=_fun_copy_move_constructor::getY(2:int,&0$?%__sil_tmpSIL_materialize_temp__n$6:copy_move_constructor::Y*) [line 60, column 10]\n n$9=_fun_copy_move_constructor::Y_Y(&y1:copy_move_constructor::Y*,&0$?%__sil_tmpSIL_materialize_temp__n$6:copy_move_constructor::Y&) [line 60, column 10]\n " shape="box"] +"moveY_moveY_copyY_div0#copy_move_constructor#11319351724516006746.d5d5d96d98dcf1c634b647be30001d2e_5" [label="5: DeclStmt \n n$9=_fun_copy_move_constructor::getY(2:int,&0$?%__sil_tmpSIL_materialize_temp__n$7:copy_move_constructor::Y*) [line 60, column 10]\n n$10=_fun_copy_move_constructor::Y_Y(&y1:copy_move_constructor::Y*,&0$?%__sil_tmpSIL_materialize_temp__n$7:copy_move_constructor::Y const &) [line 60, column 10]\n " shape="box"] "moveY_moveY_copyY_div0#copy_move_constructor#11319351724516006746.d5d5d96d98dcf1c634b647be30001d2e_5" -> "moveY_moveY_copyY_div0#copy_move_constructor#11319351724516006746.d5d5d96d98dcf1c634b647be30001d2e_4" ; @@ -194,7 +194,7 @@ digraph cfg { "X#X#copy_move_constructor#{10174102600918728520|constexpr}.7f1f4443383b6eabdf400de956c7f6af_2" [label="2: Exit copy_move_constructor::X_X \n " color=yellow style=filled] -"X#X#copy_move_constructor#{10174102600918728520|constexpr}.7f1f4443383b6eabdf400de956c7f6af_3" [label="3: Constructor Init \n n$0=*&this:copy_move_constructor::X* [line 15, column 8]\n n$1=*&__param_0:copy_move_constructor::X& [line 15, column 8]\n n$2=*n$1.f:int [line 15, column 8]\n *n$0.f:int=n$2 [line 15, column 8]\n " shape="box"] +"X#X#copy_move_constructor#{10174102600918728520|constexpr}.7f1f4443383b6eabdf400de956c7f6af_3" [label="3: Constructor Init \n n$2=*&this:copy_move_constructor::X* [line 15, column 8]\n n$3=*&__param_0:copy_move_constructor::X& [line 15, column 8]\n n$4=*n$3.f:int [line 15, column 8]\n *n$2.f:int=n$4 [line 15, column 8]\n " shape="box"] "X#X#copy_move_constructor#{10174102600918728520|constexpr}.7f1f4443383b6eabdf400de956c7f6af_3" -> "X#X#copy_move_constructor#{10174102600918728520|constexpr}.7f1f4443383b6eabdf400de956c7f6af_2" ; @@ -212,7 +212,7 @@ digraph cfg { "X#X#copy_move_constructor#{11461885598838954204|constexpr}.8b245330f9990df6f1e3d0622b3e7433_2" [label="2: Exit copy_move_constructor::X_X \n " color=yellow style=filled] -"X#X#copy_move_constructor#{11461885598838954204|constexpr}.8b245330f9990df6f1e3d0622b3e7433_3" [label="3: Constructor Init \n n$0=*&this:copy_move_constructor::X* [line 15, column 8]\n n$1=*&__param_0:copy_move_constructor::X const & [line 15, column 8]\n n$2=*n$1.f:int [line 15, column 8]\n *n$0.f:int=n$2 [line 15, column 8]\n " shape="box"] +"X#X#copy_move_constructor#{11461885598838954204|constexpr}.8b245330f9990df6f1e3d0622b3e7433_3" [label="3: Constructor Init \n n$2=*&this:copy_move_constructor::X* [line 15, column 8]\n n$3=*&__param_0:copy_move_constructor::X const & [line 15, column 8]\n n$4=*n$3.f:int [line 15, column 8]\n *n$2.f:int=n$4 [line 15, column 8]\n " shape="box"] "X#X#copy_move_constructor#{11461885598838954204|constexpr}.8b245330f9990df6f1e3d0622b3e7433_3" -> "X#X#copy_move_constructor#{11461885598838954204|constexpr}.8b245330f9990df6f1e3d0622b3e7433_2" ; @@ -230,7 +230,7 @@ digraph cfg { "Y#Y#copy_move_constructor#{18272181401462210540}.6215678d929da0a4d67ea5f3b952308e_2" [label="2: Exit copy_move_constructor::Y_Y \n " color=yellow style=filled] -"Y#Y#copy_move_constructor#{18272181401462210540}.6215678d929da0a4d67ea5f3b952308e_3" [label="3: Constructor Init \n n$0=*&this:copy_move_constructor::Y* [line 26, column 20]\n n$1=*&y:copy_move_constructor::Y const & [line 26, column 22]\n n$2=*n$1.f:int [line 26, column 22]\n *n$0.f:int=(n$2 - 1) [line 26, column 20]\n " shape="box"] +"Y#Y#copy_move_constructor#{18272181401462210540}.6215678d929da0a4d67ea5f3b952308e_3" [label="3: Constructor Init \n n$2=*&this:copy_move_constructor::Y* [line 26, column 20]\n n$3=*&y:copy_move_constructor::Y const & [line 26, column 22]\n n$4=*n$3.f:int [line 26, column 22]\n *n$2.f:int=(n$4 - 1) [line 26, column 20]\n " shape="box"] "Y#Y#copy_move_constructor#{18272181401462210540}.6215678d929da0a4d67ea5f3b952308e_3" -> "Y#Y#copy_move_constructor#{18272181401462210540}.6215678d929da0a4d67ea5f3b952308e_2" ; @@ -241,7 +241,7 @@ digraph cfg { "Y#Y#copy_move_constructor#{2644368372854768795|constexpr}.992ebae8b36e68c2e1b5e338a4c29705_2" [label="2: Exit copy_move_constructor::Y_Y \n " color=yellow style=filled] -"Y#Y#copy_move_constructor#{2644368372854768795|constexpr}.992ebae8b36e68c2e1b5e338a4c29705_3" [label="3: Constructor Init \n n$0=*&this:copy_move_constructor::Y* [line 24, column 3]\n n$1=*&y:copy_move_constructor::Y const & [line 24, column 3]\n n$2=*n$1.f:int [line 24, column 3]\n *n$0.f:int=n$2 [line 24, column 3]\n " shape="box"] +"Y#Y#copy_move_constructor#{2644368372854768795|constexpr}.992ebae8b36e68c2e1b5e338a4c29705_3" [label="3: Constructor Init \n n$2=*&this:copy_move_constructor::Y* [line 24, column 3]\n n$3=*&y:copy_move_constructor::Y const & [line 24, column 3]\n n$4=*n$3.f:int [line 24, column 3]\n *n$2.f:int=n$4 [line 24, column 3]\n " shape="box"] "Y#Y#copy_move_constructor#{2644368372854768795|constexpr}.992ebae8b36e68c2e1b5e338a4c29705_3" -> "Y#Y#copy_move_constructor#{2644368372854768795|constexpr}.992ebae8b36e68c2e1b5e338a4c29705_2" ; diff --git a/infer/tests/codetoanalyze/cpp/shared/constructors/default_field_init.cpp.dot b/infer/tests/codetoanalyze/cpp/shared/constructors/default_field_init.cpp.dot index 292f145f1..2cbdbfdce 100644 --- a/infer/tests/codetoanalyze/cpp/shared/constructors/default_field_init.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/shared/constructors/default_field_init.cpp.dot @@ -7,7 +7,7 @@ digraph cfg { "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_2" [label="2: Exit test \n " color=yellow style=filled] -"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_3" [label="3: DeclStmt \n n$0=_fun_Y_Y(&y:Y*) [line 25, column 17]\n " shape="box"] +"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_3" [label="3: DeclStmt \n n$1=_fun_Y_Y(&y:Y*) [line 25, column 17]\n " shape="box"] "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_3" -> "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_2" ; @@ -18,15 +18,15 @@ digraph cfg { "X#X#{14939599560045044604}.b28c8e2a1dd7783932fc838d8413f387_2" [label="2: Exit X_X \n " color=yellow style=filled] -"X#X#{14939599560045044604}.b28c8e2a1dd7783932fc838d8413f387_3" [label="3: Constructor Init \n n$0=*&this:X* [line 13, column 8]\n *n$0.c:int=0 [line 13, column 8]\n " shape="box"] +"X#X#{14939599560045044604}.b28c8e2a1dd7783932fc838d8413f387_3" [label="3: Constructor Init \n n$2=*&this:X* [line 13, column 8]\n *n$2.c:int=0 [line 13, column 8]\n " shape="box"] "X#X#{14939599560045044604}.b28c8e2a1dd7783932fc838d8413f387_3" -> "X#X#{14939599560045044604}.b28c8e2a1dd7783932fc838d8413f387_2" ; -"X#X#{14939599560045044604}.b28c8e2a1dd7783932fc838d8413f387_4" [label="4: Constructor Init \n n$1=*&this:X* [line 12, column 8]\n *n$1.b:int=-2 [line 12, column 8]\n " shape="box"] +"X#X#{14939599560045044604}.b28c8e2a1dd7783932fc838d8413f387_4" [label="4: Constructor Init \n n$3=*&this:X* [line 12, column 8]\n *n$3.b:int=-2 [line 12, column 8]\n " shape="box"] "X#X#{14939599560045044604}.b28c8e2a1dd7783932fc838d8413f387_4" -> "X#X#{14939599560045044604}.b28c8e2a1dd7783932fc838d8413f387_3" ; -"X#X#{14939599560045044604}.b28c8e2a1dd7783932fc838d8413f387_5" [label="5: Constructor Init \n n$2=*&this:X* [line 16, column 21]\n n$3=*&a:int [line 16, column 23]\n n$4=*&b:int [line 16, column 27]\n *n$2.a:int=(n$3 + n$4) [line 16, column 21]\n " shape="box"] +"X#X#{14939599560045044604}.b28c8e2a1dd7783932fc838d8413f387_5" [label="5: Constructor Init \n n$4=*&this:X* [line 16, column 21]\n n$5=*&a:int [line 16, column 23]\n n$6=*&b:int [line 16, column 27]\n *n$4.a:int=(n$5 + n$6) [line 16, column 21]\n " shape="box"] "X#X#{14939599560045044604}.b28c8e2a1dd7783932fc838d8413f387_5" -> "X#X#{14939599560045044604}.b28c8e2a1dd7783932fc838d8413f387_4" ; @@ -37,15 +37,15 @@ digraph cfg { "X#X#{4951618003533511344}.a6c75b361b5e04dddb518f7e116a9ca2_2" [label="2: Exit X_X \n " color=yellow style=filled] -"X#X#{4951618003533511344}.a6c75b361b5e04dddb518f7e116a9ca2_3" [label="3: Constructor Init \n n$0=*&this:X* [line 13, column 8]\n *n$0.c:int=0 [line 13, column 8]\n " shape="box"] +"X#X#{4951618003533511344}.a6c75b361b5e04dddb518f7e116a9ca2_3" [label="3: Constructor Init \n n$2=*&this:X* [line 13, column 8]\n *n$2.c:int=0 [line 13, column 8]\n " shape="box"] "X#X#{4951618003533511344}.a6c75b361b5e04dddb518f7e116a9ca2_3" -> "X#X#{4951618003533511344}.a6c75b361b5e04dddb518f7e116a9ca2_2" ; -"X#X#{4951618003533511344}.a6c75b361b5e04dddb518f7e116a9ca2_4" [label="4: Constructor Init \n n$1=*&this:X* [line 12, column 8]\n *n$1.b:int=-2 [line 12, column 8]\n " shape="box"] +"X#X#{4951618003533511344}.a6c75b361b5e04dddb518f7e116a9ca2_4" [label="4: Constructor Init \n n$3=*&this:X* [line 12, column 8]\n *n$3.b:int=-2 [line 12, column 8]\n " shape="box"] "X#X#{4951618003533511344}.a6c75b361b5e04dddb518f7e116a9ca2_4" -> "X#X#{4951618003533511344}.a6c75b361b5e04dddb518f7e116a9ca2_3" ; -"X#X#{4951618003533511344}.a6c75b361b5e04dddb518f7e116a9ca2_5" [label="5: Constructor Init \n n$2=*&this:X* [line 11, column 11]\n *n$2.a:int=-1 [line 11, column 11]\n " shape="box"] +"X#X#{4951618003533511344}.a6c75b361b5e04dddb518f7e116a9ca2_5" [label="5: Constructor Init \n n$4=*&this:X* [line 11, column 11]\n *n$4.a:int=-1 [line 11, column 11]\n " shape="box"] "X#X#{4951618003533511344}.a6c75b361b5e04dddb518f7e116a9ca2_5" -> "X#X#{4951618003533511344}.a6c75b361b5e04dddb518f7e116a9ca2_4" ; @@ -56,15 +56,15 @@ digraph cfg { "Y#Y#{14898916407379161639}.007f922d3b4cc65335a37959ae6b89f8_2" [label="2: Exit Y_Y \n " color=yellow style=filled] -"Y#Y#{14898916407379161639}.007f922d3b4cc65335a37959ae6b89f8_3" [label="3: Constructor Init \n n$0=*&this:Y* [line 19, column 8]\n n$1=_fun_X_X(n$0.x3:X*) [line 19, column 8]\n " shape="box"] +"Y#Y#{14898916407379161639}.007f922d3b4cc65335a37959ae6b89f8_3" [label="3: Constructor Init \n n$2=*&this:Y* [line 19, column 8]\n n$3=_fun_X_X(n$2.x3:X*) [line 19, column 8]\n " shape="box"] "Y#Y#{14898916407379161639}.007f922d3b4cc65335a37959ae6b89f8_3" -> "Y#Y#{14898916407379161639}.007f922d3b4cc65335a37959ae6b89f8_2" ; -"Y#Y#{14898916407379161639}.007f922d3b4cc65335a37959ae6b89f8_4" [label="4: Constructor Init \n n$2=*&this:Y* [line 21, column 7]\n n$3=_fun_X_X(n$2.x2:X*) [line 21, column 7]\n " shape="box"] +"Y#Y#{14898916407379161639}.007f922d3b4cc65335a37959ae6b89f8_4" [label="4: Constructor Init \n n$4=*&this:Y* [line 21, column 7]\n n$5=_fun_X_X(n$4.x2:X*) [line 21, column 7]\n " shape="box"] "Y#Y#{14898916407379161639}.007f922d3b4cc65335a37959ae6b89f8_4" -> "Y#Y#{14898916407379161639}.007f922d3b4cc65335a37959ae6b89f8_3" ; -"Y#Y#{14898916407379161639}.007f922d3b4cc65335a37959ae6b89f8_5" [label="5: Constructor Init \n n$4=*&this:Y* [line 20, column 7]\n n$5=_fun_X_X(n$4.x1:X*,1:int,2:int) [line 20, column 7]\n " shape="box"] +"Y#Y#{14898916407379161639}.007f922d3b4cc65335a37959ae6b89f8_5" [label="5: Constructor Init \n n$6=*&this:Y* [line 20, column 7]\n n$7=_fun_X_X(n$6.x1:X*,1:int,2:int) [line 20, column 7]\n " shape="box"] "Y#Y#{14898916407379161639}.007f922d3b4cc65335a37959ae6b89f8_5" -> "Y#Y#{14898916407379161639}.007f922d3b4cc65335a37959ae6b89f8_4" ; diff --git a/infer/tests/codetoanalyze/cpp/shared/constructors/std_init_list.cpp.dot b/infer/tests/codetoanalyze/cpp/shared/constructors/std_init_list.cpp.dot index 545c6f83c..8862300b9 100644 --- a/infer/tests/codetoanalyze/cpp/shared/constructors/std_init_list.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/shared/constructors/std_init_list.cpp.dot @@ -1,13 +1,13 @@ /* @generated */ digraph cfg { -"main.fad58de7366495db4650cfefac2fcd61_1" [label="1: Start main\nFormals: \nLocals: x:X 0$?%__sil_tmpSIL_materialize_temp__n$0:int const [5*4] const \n DECLARE_LOCALS(&return,&x,&0$?%__sil_tmpSIL_materialize_temp__n$0); [line 24, column 1]\n " color=yellow style=filled] +"main.fad58de7366495db4650cfefac2fcd61_1" [label="1: Start main\nFormals: \nLocals: x:X 0$?%__sil_tmpSIL_materialize_temp__n$1:int const [5*4] const \n DECLARE_LOCALS(&return,&x,&0$?%__sil_tmpSIL_materialize_temp__n$1); [line 24, column 1]\n " color=yellow style=filled] "main.fad58de7366495db4650cfefac2fcd61_1" -> "main.fad58de7366495db4650cfefac2fcd61_3" ; "main.fad58de7366495db4650cfefac2fcd61_2" [label="2: Exit main \n " color=yellow style=filled] -"main.fad58de7366495db4650cfefac2fcd61_3" [label="3: DeclStmt \n *&0$?%__sil_tmpSIL_materialize_temp__n$0[0]:int=1 [line 24, column 20]\n *&0$?%__sil_tmpSIL_materialize_temp__n$0[1]:int=2 [line 24, column 20]\n *&0$?%__sil_tmpSIL_materialize_temp__n$0[2]:int=3 [line 24, column 20]\n *&0$?%__sil_tmpSIL_materialize_temp__n$0[3]:int=4 [line 24, column 20]\n *&0$?%__sil_tmpSIL_materialize_temp__n$0[4]:int=5 [line 24, column 20]\n n$1=_fun___infer_skip_function(&0$?%__sil_tmpSIL_materialize_temp__n$0:int const [5*4] const ) [line 24, column 20]\n n$2=_fun_X_X(&x:X*,n$1:std::initializer_list) [line 24, column 20]\n " shape="box"] +"main.fad58de7366495db4650cfefac2fcd61_3" [label="3: DeclStmt \n *&0$?%__sil_tmpSIL_materialize_temp__n$1[0]:int=1 [line 24, column 20]\n *&0$?%__sil_tmpSIL_materialize_temp__n$1[1]:int=2 [line 24, column 20]\n *&0$?%__sil_tmpSIL_materialize_temp__n$1[2]:int=3 [line 24, column 20]\n *&0$?%__sil_tmpSIL_materialize_temp__n$1[3]:int=4 [line 24, column 20]\n *&0$?%__sil_tmpSIL_materialize_temp__n$1[4]:int=5 [line 24, column 20]\n n$2=_fun___infer_skip_function(&0$?%__sil_tmpSIL_materialize_temp__n$1:int const [5*4] const ) [line 24, column 20]\n n$3=_fun_X_X(&x:X*,n$2:std::initializer_list) [line 24, column 20]\n " shape="box"] "main.fad58de7366495db4650cfefac2fcd61_3" -> "main.fad58de7366495db4650cfefac2fcd61_2" ; @@ -22,28 +22,28 @@ digraph cfg { "X#X#{15236476731743367432}.ce83f097b510e48ce3d42aa5df1bb3be_3" -> "X#X#{15236476731743367432}.ce83f097b510e48ce3d42aa5df1bb3be_6" ; -"X#X#{15236476731743367432}.ce83f097b510e48ce3d42aa5df1bb3be_4" [label="4: DeclStmt \n n$0=*&list:std::initializer_list& [line 15, column 19]\n _=*n$0:std::initializer_list [line 15, column 19]\n n$2=_fun_std::initializer_list_begin(n$0:std::initializer_list&) [line 15, column 19]\n *&i:int const *=n$2 [line 15, column 10]\n " shape="box"] +"X#X#{15236476731743367432}.ce83f097b510e48ce3d42aa5df1bb3be_4" [label="4: DeclStmt \n n$1=*&list:std::initializer_list& [line 15, column 19]\n _=*n$1:std::initializer_list [line 15, column 19]\n n$3=_fun_std::initializer_list_begin(n$1:std::initializer_list&) [line 15, column 19]\n *&i:int const *=n$3 [line 15, column 10]\n " shape="box"] "X#X#{15236476731743367432}.ce83f097b510e48ce3d42aa5df1bb3be_4" -> "X#X#{15236476731743367432}.ce83f097b510e48ce3d42aa5df1bb3be_3" ; -"X#X#{15236476731743367432}.ce83f097b510e48ce3d42aa5df1bb3be_5" [label="5: UnaryOperator \n n$3=*&i:int const * [line 15, column 50]\n *&i:int const *=(n$3 + 1) [line 15, column 50]\n " shape="box"] +"X#X#{15236476731743367432}.ce83f097b510e48ce3d42aa5df1bb3be_5" [label="5: UnaryOperator \n n$4=*&i:int const * [line 15, column 50]\n *&i:int const *=(n$4 + 1) [line 15, column 50]\n " shape="box"] "X#X#{15236476731743367432}.ce83f097b510e48ce3d42aa5df1bb3be_5" -> "X#X#{15236476731743367432}.ce83f097b510e48ce3d42aa5df1bb3be_3" ; -"X#X#{15236476731743367432}.ce83f097b510e48ce3d42aa5df1bb3be_6" [label="6: BinaryOperatorStmt: NE \n n$4=*&i:int const * [line 15, column 33]\n n$5=*&list:std::initializer_list& [line 15, column 38]\n _=*n$5:std::initializer_list [line 15, column 38]\n n$7=_fun_std::initializer_list_end(n$5:std::initializer_list&) [line 15, column 38]\n " shape="box"] +"X#X#{15236476731743367432}.ce83f097b510e48ce3d42aa5df1bb3be_6" [label="6: BinaryOperatorStmt: NE \n n$5=*&i:int const * [line 15, column 33]\n n$6=*&list:std::initializer_list& [line 15, column 38]\n _=*n$6:std::initializer_list [line 15, column 38]\n n$8=_fun_std::initializer_list_end(n$6:std::initializer_list&) [line 15, column 38]\n " shape="box"] "X#X#{15236476731743367432}.ce83f097b510e48ce3d42aa5df1bb3be_6" -> "X#X#{15236476731743367432}.ce83f097b510e48ce3d42aa5df1bb3be_7" ; "X#X#{15236476731743367432}.ce83f097b510e48ce3d42aa5df1bb3be_6" -> "X#X#{15236476731743367432}.ce83f097b510e48ce3d42aa5df1bb3be_8" ; -"X#X#{15236476731743367432}.ce83f097b510e48ce3d42aa5df1bb3be_7" [label="7: Prune (true branch, for loop) \n PRUNE((n$4 != n$7), true); [line 15, column 33]\n " shape="invhouse"] +"X#X#{15236476731743367432}.ce83f097b510e48ce3d42aa5df1bb3be_7" [label="7: Prune (true branch, for loop) \n PRUNE((n$5 != n$8), true); [line 15, column 33]\n " shape="invhouse"] "X#X#{15236476731743367432}.ce83f097b510e48ce3d42aa5df1bb3be_7" -> "X#X#{15236476731743367432}.ce83f097b510e48ce3d42aa5df1bb3be_9" ; -"X#X#{15236476731743367432}.ce83f097b510e48ce3d42aa5df1bb3be_8" [label="8: Prune (false branch, for loop) \n PRUNE(!(n$4 != n$7), false); [line 15, column 33]\n " shape="invhouse"] +"X#X#{15236476731743367432}.ce83f097b510e48ce3d42aa5df1bb3be_8" [label="8: Prune (false branch, for loop) \n PRUNE(!(n$5 != n$8), false); [line 15, column 33]\n " shape="invhouse"] "X#X#{15236476731743367432}.ce83f097b510e48ce3d42aa5df1bb3be_8" -> "X#X#{15236476731743367432}.ce83f097b510e48ce3d42aa5df1bb3be_2" ; -"X#X#{15236476731743367432}.ce83f097b510e48ce3d42aa5df1bb3be_9" [label="9: BinaryOperatorStmt: Assign \n n$8=*&this:X* [line 16, column 7]\n n$9=*&this:X* [line 16, column 13]\n n$10=*n$9.sum:int [line 16, column 13]\n n$11=*&i:int const * [line 16, column 20]\n n$12=*n$11:int [line 16, column 19]\n *n$8.sum:int=(n$10 + n$12) [line 16, column 7]\n " shape="box"] +"X#X#{15236476731743367432}.ce83f097b510e48ce3d42aa5df1bb3be_9" [label="9: BinaryOperatorStmt: Assign \n n$10=*&this:X* [line 16, column 7]\n n$11=*&this:X* [line 16, column 13]\n n$12=*n$11.sum:int [line 16, column 13]\n n$13=*&i:int const * [line 16, column 20]\n n$14=*n$13:int [line 16, column 19]\n *n$10.sum:int=(n$12 + n$14) [line 16, column 7]\n " shape="box"] "X#X#{15236476731743367432}.ce83f097b510e48ce3d42aa5df1bb3be_9" -> "X#X#{15236476731743367432}.ce83f097b510e48ce3d42aa5df1bb3be_5" ; diff --git a/infer/tests/codetoanalyze/cpp/shared/constructors/temp_object.cpp.dot b/infer/tests/codetoanalyze/cpp/shared/constructors/temp_object.cpp.dot index bbb3ef511..7048312e5 100644 --- a/infer/tests/codetoanalyze/cpp/shared/constructors/temp_object.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/shared/constructors/temp_object.cpp.dot @@ -1,6 +1,6 @@ /* @generated */ digraph cfg { -"assign_temp_div0#temp_object#6618523570396537240.fa2055065ca23850cee50c855993cd3a_1" [label="1: Start temp_object::assign_temp_div0\nFormals: \nLocals: x:temp_object::X 0$?%__sil_tmpSIL_materialize_temp__n$4:temp_object::X const \n DECLARE_LOCALS(&return,&x,&0$?%__sil_tmpSIL_materialize_temp__n$4); [line 28, column 1]\n " color=yellow style=filled] +"assign_temp_div0#temp_object#6618523570396537240.fa2055065ca23850cee50c855993cd3a_1" [label="1: Start temp_object::assign_temp_div0\nFormals: \nLocals: x:temp_object::X 0$?%__sil_tmpSIL_materialize_temp__n$5:temp_object::X const \n DECLARE_LOCALS(&return,&x,&0$?%__sil_tmpSIL_materialize_temp__n$5); [line 28, column 1]\n " color=yellow style=filled] "assign_temp_div0#temp_object#6618523570396537240.fa2055065ca23850cee50c855993cd3a_1" -> "assign_temp_div0#temp_object#6618523570396537240.fa2055065ca23850cee50c855993cd3a_4" ; @@ -11,7 +11,7 @@ digraph cfg { "assign_temp_div0#temp_object#6618523570396537240.fa2055065ca23850cee50c855993cd3a_3" -> "assign_temp_div0#temp_object#6618523570396537240.fa2055065ca23850cee50c855993cd3a_2" ; -"assign_temp_div0#temp_object#6618523570396537240.fa2055065ca23850cee50c855993cd3a_4" [label="4: DeclStmt \n n$5=_fun_temp_object::X_X(&0$?%__sil_tmpSIL_materialize_temp__n$4:temp_object::X const *,0:int,1:int) [line 29, column 9]\n n$6=_fun_temp_object::X_X(&x:temp_object::X*,&0$?%__sil_tmpSIL_materialize_temp__n$4:temp_object::X const &) [line 29, column 9]\n " shape="box"] +"assign_temp_div0#temp_object#6618523570396537240.fa2055065ca23850cee50c855993cd3a_4" [label="4: DeclStmt \n n$6=_fun_temp_object::X_X(&0$?%__sil_tmpSIL_materialize_temp__n$5:temp_object::X const *,0:int,1:int) [line 29, column 9]\n n$7=_fun_temp_object::X_X(&x:temp_object::X*,&0$?%__sil_tmpSIL_materialize_temp__n$5:temp_object::X const &) [line 29, column 9]\n " shape="box"] "assign_temp_div0#temp_object#6618523570396537240.fa2055065ca23850cee50c855993cd3a_4" -> "assign_temp_div0#temp_object#6618523570396537240.fa2055065ca23850cee50c855993cd3a_3" ; @@ -121,7 +121,7 @@ digraph cfg { "X#X#temp_object#{5376484276992466061}.a1cfaf9ee9d8c713d3d1751acbb77f32_2" [label="2: Exit temp_object::X_X \n " color=yellow style=filled] -"X#X#temp_object#{5376484276992466061}.a1cfaf9ee9d8c713d3d1751acbb77f32_3" [label="3: BinaryOperatorStmt: Assign \n n$0=*&this:temp_object::X* [line 16, column 19]\n n$1=*&x:temp_object::X const & [line 16, column 23]\n n$2=*n$1.f:int [line 16, column 23]\n *n$0.f:int=n$2 [line 16, column 19]\n " shape="box"] +"X#X#temp_object#{5376484276992466061}.a1cfaf9ee9d8c713d3d1751acbb77f32_3" [label="3: BinaryOperatorStmt: Assign \n n$1=*&this:temp_object::X* [line 16, column 19]\n n$2=*&x:temp_object::X const & [line 16, column 23]\n n$3=*n$2.f:int [line 16, column 23]\n *n$1.f:int=n$3 [line 16, column 19]\n " shape="box"] "X#X#temp_object#{5376484276992466061}.a1cfaf9ee9d8c713d3d1751acbb77f32_3" -> "X#X#temp_object#{5376484276992466061}.a1cfaf9ee9d8c713d3d1751acbb77f32_2" ; @@ -132,7 +132,7 @@ digraph cfg { "X#X#temp_object#{8598480124712426466}.7071c692af425a15518693ebe50ba781_2" [label="2: Exit temp_object::X_X \n " color=yellow style=filled] -"X#X#temp_object#{8598480124712426466}.7071c692af425a15518693ebe50ba781_3" [label="3: BinaryOperatorStmt: Assign \n n$0=*&this:temp_object::X* [line 14, column 21]\n n$1=*&a:int [line 14, column 25]\n *n$0.f:int=n$1 [line 14, column 21]\n " shape="box"] +"X#X#temp_object#{8598480124712426466}.7071c692af425a15518693ebe50ba781_3" [label="3: BinaryOperatorStmt: Assign \n n$1=*&this:temp_object::X* [line 14, column 21]\n n$2=*&a:int [line 14, column 25]\n *n$1.f:int=n$2 [line 14, column 21]\n " shape="box"] "X#X#temp_object#{8598480124712426466}.7071c692af425a15518693ebe50ba781_3" -> "X#X#temp_object#{8598480124712426466}.7071c692af425a15518693ebe50ba781_2" ; @@ -143,7 +143,7 @@ digraph cfg { "X#X#temp_object#{9561113765655638015}.59d66724d587fdb6aca1a26e1f705f23_2" [label="2: Exit temp_object::X_X \n " color=yellow style=filled] -"X#X#temp_object#{9561113765655638015}.59d66724d587fdb6aca1a26e1f705f23_3" [label="3: BinaryOperatorStmt: Assign \n n$0=*&this:temp_object::X* [line 13, column 14]\n n$1=*&a:int [line 13, column 18]\n *n$0.f:int=n$1 [line 13, column 14]\n " shape="box"] +"X#X#temp_object#{9561113765655638015}.59d66724d587fdb6aca1a26e1f705f23_3" [label="3: BinaryOperatorStmt: Assign \n n$1=*&this:temp_object::X* [line 13, column 14]\n n$2=*&a:int [line 13, column 18]\n *n$1.f:int=n$2 [line 13, column 14]\n " shape="box"] "X#X#temp_object#{9561113765655638015}.59d66724d587fdb6aca1a26e1f705f23_3" -> "X#X#temp_object#{9561113765655638015}.59d66724d587fdb6aca1a26e1f705f23_2" ; diff --git a/infer/tests/codetoanalyze/cpp/shared/exceptions/Exceptions.cpp.dot b/infer/tests/codetoanalyze/cpp/shared/exceptions/Exceptions.cpp.dot index d9ecc6eb9..faba2686b 100644 --- a/infer/tests/codetoanalyze/cpp/shared/exceptions/Exceptions.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/shared/exceptions/Exceptions.cpp.dot @@ -7,7 +7,7 @@ digraph cfg { "call_deref_with_null#4611966425999531792.6346543307e9a799421a89e451b917c2_2" [label="2: Exit call_deref_with_null \n " color=yellow style=filled] -"call_deref_with_null#4611966425999531792.6346543307e9a799421a89e451b917c2_3" [label="3: Call _fun_deref_null \n n$0=_fun_deref_null(null:int*) [line 24, column 30]\n " shape="box"] +"call_deref_with_null#4611966425999531792.6346543307e9a799421a89e451b917c2_3" [label="3: Call _fun_deref_null \n n$1=_fun_deref_null(null:int*) [line 24, column 30]\n " shape="box"] "call_deref_with_null#4611966425999531792.6346543307e9a799421a89e451b917c2_3" -> "call_deref_with_null#4611966425999531792.6346543307e9a799421a89e451b917c2_2" ; @@ -26,20 +26,20 @@ digraph cfg { "deref#13506892413034678690.824465c4193ad2288eb512b1083edab3_4" -> "deref#13506892413034678690.824465c4193ad2288eb512b1083edab3_3" ; -"deref#13506892413034678690.824465c4193ad2288eb512b1083edab3_5" [label="5: BinaryOperatorStmt: EQ \n n$2=*&p:int* [line 11, column 7]\n " shape="box"] +"deref#13506892413034678690.824465c4193ad2288eb512b1083edab3_5" [label="5: BinaryOperatorStmt: EQ \n n$3=*&p:int* [line 11, column 7]\n " shape="box"] "deref#13506892413034678690.824465c4193ad2288eb512b1083edab3_5" -> "deref#13506892413034678690.824465c4193ad2288eb512b1083edab3_6" ; "deref#13506892413034678690.824465c4193ad2288eb512b1083edab3_5" -> "deref#13506892413034678690.824465c4193ad2288eb512b1083edab3_7" ; -"deref#13506892413034678690.824465c4193ad2288eb512b1083edab3_6" [label="6: Prune (true branch, if) \n PRUNE((n$2 == null), true); [line 11, column 7]\n " shape="invhouse"] +"deref#13506892413034678690.824465c4193ad2288eb512b1083edab3_6" [label="6: Prune (true branch, if) \n PRUNE((n$3 == null), true); [line 11, column 7]\n " shape="invhouse"] "deref#13506892413034678690.824465c4193ad2288eb512b1083edab3_6" -> "deref#13506892413034678690.824465c4193ad2288eb512b1083edab3_8" ; -"deref#13506892413034678690.824465c4193ad2288eb512b1083edab3_7" [label="7: Prune (false branch, if) \n PRUNE(!(n$2 == null), false); [line 11, column 7]\n " shape="invhouse"] +"deref#13506892413034678690.824465c4193ad2288eb512b1083edab3_7" [label="7: Prune (false branch, if) \n PRUNE(!(n$3 == null), false); [line 11, column 7]\n " shape="invhouse"] "deref#13506892413034678690.824465c4193ad2288eb512b1083edab3_7" -> "deref#13506892413034678690.824465c4193ad2288eb512b1083edab3_4" ; -"deref#13506892413034678690.824465c4193ad2288eb512b1083edab3_8" [label="8: ObjCCPPThrow \n n$3=_fun___infer_objc_cpp_throw(\"Null pointer!\":char const *) [line 12, column 5]\n " shape="box"] +"deref#13506892413034678690.824465c4193ad2288eb512b1083edab3_8" [label="8: ObjCCPPThrow \n n$5=_fun___infer_objc_cpp_throw(\"Null pointer!\":char const *) [line 12, column 5]\n " shape="box"] "deref#13506892413034678690.824465c4193ad2288eb512b1083edab3_8" -> "deref#13506892413034678690.824465c4193ad2288eb512b1083edab3_4" ; @@ -50,7 +50,7 @@ digraph cfg { "deref_null#11536394632240553702.ea4eed042da22ab7ceb619ec1b7f73bb_2" [label="2: Exit deref_null \n " color=yellow style=filled] -"deref_null#11536394632240553702.ea4eed042da22ab7ceb619ec1b7f73bb_3" [label="3: Return Stmt \n n$0=*&p:int* [line 19, column 13]\n n$1=*n$0:int [line 19, column 12]\n *&return:int=n$1 [line 19, column 5]\n " shape="box"] +"deref_null#11536394632240553702.ea4eed042da22ab7ceb619ec1b7f73bb_3" [label="3: Return Stmt \n n$4=*&p:int* [line 19, column 13]\n n$5=*n$4:int [line 19, column 12]\n *&return:int=n$5 [line 19, column 5]\n " shape="box"] "deref_null#11536394632240553702.ea4eed042da22ab7ceb619ec1b7f73bb_3" -> "deref_null#11536394632240553702.ea4eed042da22ab7ceb619ec1b7f73bb_2" ; @@ -61,7 +61,7 @@ digraph cfg { "main.fad58de7366495db4650cfefac2fcd61_2" [label="2: Exit main \n " color=yellow style=filled] -"main.fad58de7366495db4650cfefac2fcd61_3" [label="3: Return Stmt \n n$0=_fun_deref(null:int*) [line 28, column 12]\n *&return:int=n$0 [line 28, column 5]\n " shape="box"] +"main.fad58de7366495db4650cfefac2fcd61_3" [label="3: Return Stmt \n n$4=_fun_deref(null:int*) [line 28, column 12]\n *&return:int=n$4 [line 28, column 5]\n " shape="box"] "main.fad58de7366495db4650cfefac2fcd61_3" -> "main.fad58de7366495db4650cfefac2fcd61_2" ; diff --git a/infer/tests/codetoanalyze/cpp/shared/lambda/lambda1.cpp.dot b/infer/tests/codetoanalyze/cpp/shared/lambda/lambda1.cpp.dot index d652db7fa..47f4654b2 100644 --- a/infer/tests/codetoanalyze/cpp/shared/lambda/lambda1.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/shared/lambda/lambda1.cpp.dot @@ -1,17 +1,17 @@ /* @generated */ digraph cfg { -"bar#13629960763458822780.27859d4aca4c920a20241f1b78082005_1" [label="1: Start bar\nFormals: \nLocals: func:bar::lambda_shared_lambda_lambda1.cpp:11:15 0$?%__sil_tmpSIL_materialize_temp__n$3:bar::lambda_shared_lambda_lambda1.cpp:11:15 \n DECLARE_LOCALS(&return,&func,&0$?%__sil_tmpSIL_materialize_temp__n$3); [line 10, column 1]\n " color=yellow style=filled] +"bar#13629960763458822780.27859d4aca4c920a20241f1b78082005_1" [label="1: Start bar\nFormals: \nLocals: func:bar::lambda_shared_lambda_lambda1.cpp:11:15 0$?%__sil_tmpSIL_materialize_temp__n$5:bar::lambda_shared_lambda_lambda1.cpp:11:15 \n DECLARE_LOCALS(&return,&func,&0$?%__sil_tmpSIL_materialize_temp__n$5); [line 10, column 1]\n " color=yellow style=filled] "bar#13629960763458822780.27859d4aca4c920a20241f1b78082005_1" -> "bar#13629960763458822780.27859d4aca4c920a20241f1b78082005_4" ; "bar#13629960763458822780.27859d4aca4c920a20241f1b78082005_2" [label="2: Exit bar \n " color=yellow style=filled] -"bar#13629960763458822780.27859d4aca4c920a20241f1b78082005_3" [label="3: Return Stmt \n n$0=_fun_bar::lambda_shared_lambda_lambda1.cpp:11:15_operator()(&func:bar::lambda_shared_lambda_lambda1.cpp:11:15&) [line 15, column 14]\n *&return:int=(7 / n$0) [line 15, column 3]\n _=*&func:bar::lambda_shared_lambda_lambda1.cpp:11:15 [line 15, column 19]\n n$2=_fun_bar::lambda_shared_lambda_lambda1.cpp:11:15_~(&func:bar::lambda_shared_lambda_lambda1.cpp:11:15*) [line 15, column 19]\n " shape="box"] +"bar#13629960763458822780.27859d4aca4c920a20241f1b78082005_3" [label="3: Return Stmt \n n$1=_fun_bar::lambda_shared_lambda_lambda1.cpp:11:15_operator()(&func:bar::lambda_shared_lambda_lambda1.cpp:11:15&) [line 15, column 14]\n *&return:int=(7 / n$1) [line 15, column 3]\n _=*&func:bar::lambda_shared_lambda_lambda1.cpp:11:15 [line 15, column 19]\n n$3=_fun_bar::lambda_shared_lambda_lambda1.cpp:11:15_~(&func:bar::lambda_shared_lambda_lambda1.cpp:11:15*) [line 15, column 19]\n " shape="box"] "bar#13629960763458822780.27859d4aca4c920a20241f1b78082005_3" -> "bar#13629960763458822780.27859d4aca4c920a20241f1b78082005_2" ; -"bar#13629960763458822780.27859d4aca4c920a20241f1b78082005_4" [label="4: DeclStmt \n *&0$?%__sil_tmpSIL_materialize_temp__n$3:bar::lambda_shared_lambda_lambda1.cpp:11:15=(_fun_bar::lambda_shared_lambda_lambda1.cpp:11:15_operator()) [line 11, column 15]\n n$4=_fun_bar::lambda_shared_lambda_lambda1.cpp:11:15_(&func:bar::lambda_shared_lambda_lambda1.cpp:11:15*,&0$?%__sil_tmpSIL_materialize_temp__n$3:bar::lambda_shared_lambda_lambda1.cpp:11:15&) [line 11, column 15]\n " shape="box"] +"bar#13629960763458822780.27859d4aca4c920a20241f1b78082005_4" [label="4: DeclStmt \n *&0$?%__sil_tmpSIL_materialize_temp__n$5:bar::lambda_shared_lambda_lambda1.cpp:11:15=(_fun_bar::lambda_shared_lambda_lambda1.cpp:11:15_operator()) [line 11, column 15]\n n$6=_fun_bar::lambda_shared_lambda_lambda1.cpp:11:15_(&func:bar::lambda_shared_lambda_lambda1.cpp:11:15*,&0$?%__sil_tmpSIL_materialize_temp__n$5:bar::lambda_shared_lambda_lambda1.cpp:11:15&) [line 11, column 15]\n " shape="box"] "bar#13629960763458822780.27859d4aca4c920a20241f1b78082005_4" -> "bar#13629960763458822780.27859d4aca4c920a20241f1b78082005_3" ; @@ -26,7 +26,7 @@ digraph cfg { "capture_by_ref#4375601249296069049.1d794578c048d96b25fb1e90dbaa8225_3" -> "capture_by_ref#4375601249296069049.1d794578c048d96b25fb1e90dbaa8225_2" ; -"capture_by_ref#4375601249296069049.1d794578c048d96b25fb1e90dbaa8225_4" [label="4: Call _fun_capture_by_ref::lambda_shared_lambda_lambda1.cpp:38:3_operator() \n n$1=_fun_capture_by_ref::lambda_shared_lambda_lambda1.cpp:38:3_operator()((_fun_capture_by_ref::lambda_shared_lambda_lambda1.cpp:38:3_operator(),&x):capture_by_ref::lambda_shared_lambda_lambda1.cpp:38:3) [line 38, column 3]\n " shape="box"] +"capture_by_ref#4375601249296069049.1d794578c048d96b25fb1e90dbaa8225_4" [label="4: Call _fun_capture_by_ref::lambda_shared_lambda_lambda1.cpp:38:3_operator() \n n$3=_fun_capture_by_ref::lambda_shared_lambda_lambda1.cpp:38:3_operator()((_fun_capture_by_ref::lambda_shared_lambda_lambda1.cpp:38:3_operator(),&x):capture_by_ref::lambda_shared_lambda_lambda1.cpp:38:3) [line 38, column 3]\n " shape="box"] "capture_by_ref#4375601249296069049.1d794578c048d96b25fb1e90dbaa8225_4" -> "capture_by_ref#4375601249296069049.1d794578c048d96b25fb1e90dbaa8225_3" ; @@ -34,37 +34,37 @@ digraph cfg { "capture_by_ref#4375601249296069049.1d794578c048d96b25fb1e90dbaa8225_5" -> "capture_by_ref#4375601249296069049.1d794578c048d96b25fb1e90dbaa8225_4" ; -"foo#972162870672026475.86d7db357d6a36081d09067fb38ce85e_1" [label="1: Start foo\nFormals: \nLocals: y:foo::lambda_shared_lambda_lambda1.cpp:20:12 0$?%__sil_tmpSIL_materialize_temp__n$5:foo::lambda_shared_lambda_lambda1.cpp:20:12 unused:foo::lambda_shared_lambda_lambda1.cpp:19:17 0$?%__sil_tmpSIL_materialize_temp__n$7:foo::lambda_shared_lambda_lambda1.cpp:19:17 \n DECLARE_LOCALS(&return,&y,&0$?%__sil_tmpSIL_materialize_temp__n$5,&unused,&0$?%__sil_tmpSIL_materialize_temp__n$7); [line 18, column 1]\n " color=yellow style=filled] +"foo#972162870672026475.86d7db357d6a36081d09067fb38ce85e_1" [label="1: Start foo\nFormals: \nLocals: y:foo::lambda_shared_lambda_lambda1.cpp:20:12 0$?%__sil_tmpSIL_materialize_temp__n$7:foo::lambda_shared_lambda_lambda1.cpp:20:12 unused:foo::lambda_shared_lambda_lambda1.cpp:19:17 0$?%__sil_tmpSIL_materialize_temp__n$9:foo::lambda_shared_lambda_lambda1.cpp:19:17 \n DECLARE_LOCALS(&return,&y,&0$?%__sil_tmpSIL_materialize_temp__n$7,&unused,&0$?%__sil_tmpSIL_materialize_temp__n$9); [line 18, column 1]\n " color=yellow style=filled] "foo#972162870672026475.86d7db357d6a36081d09067fb38ce85e_1" -> "foo#972162870672026475.86d7db357d6a36081d09067fb38ce85e_5" ; "foo#972162870672026475.86d7db357d6a36081d09067fb38ce85e_2" [label="2: Exit foo \n " color=yellow style=filled] -"foo#972162870672026475.86d7db357d6a36081d09067fb38ce85e_3" [label="3: Return Stmt \n n$0=_fun_foo::lambda_shared_lambda_lambda1.cpp:20:12_operator()(&y:foo::lambda_shared_lambda_lambda1.cpp:20:12&,3:int) [line 21, column 19]\n *&return:int=(5 / (4 - n$0)) [line 21, column 3]\n _=*&y:foo::lambda_shared_lambda_lambda1.cpp:20:12 [line 21, column 23]\n n$2=_fun_foo::lambda_shared_lambda_lambda1.cpp:20:12_~(&y:foo::lambda_shared_lambda_lambda1.cpp:20:12*) [line 21, column 23]\n _=*&unused:foo::lambda_shared_lambda_lambda1.cpp:19:17 [line 21, column 23]\n n$4=_fun_foo::lambda_shared_lambda_lambda1.cpp:19:17_~(&unused:foo::lambda_shared_lambda_lambda1.cpp:19:17*) [line 21, column 23]\n " shape="box"] +"foo#972162870672026475.86d7db357d6a36081d09067fb38ce85e_3" [label="3: Return Stmt \n n$1=_fun_foo::lambda_shared_lambda_lambda1.cpp:20:12_operator()(&y:foo::lambda_shared_lambda_lambda1.cpp:20:12&,3:int) [line 21, column 19]\n *&return:int=(5 / (4 - n$1)) [line 21, column 3]\n _=*&y:foo::lambda_shared_lambda_lambda1.cpp:20:12 [line 21, column 23]\n n$3=_fun_foo::lambda_shared_lambda_lambda1.cpp:20:12_~(&y:foo::lambda_shared_lambda_lambda1.cpp:20:12*) [line 21, column 23]\n _=*&unused:foo::lambda_shared_lambda_lambda1.cpp:19:17 [line 21, column 23]\n n$5=_fun_foo::lambda_shared_lambda_lambda1.cpp:19:17_~(&unused:foo::lambda_shared_lambda_lambda1.cpp:19:17*) [line 21, column 23]\n " shape="box"] "foo#972162870672026475.86d7db357d6a36081d09067fb38ce85e_3" -> "foo#972162870672026475.86d7db357d6a36081d09067fb38ce85e_2" ; -"foo#972162870672026475.86d7db357d6a36081d09067fb38ce85e_4" [label="4: DeclStmt \n *&0$?%__sil_tmpSIL_materialize_temp__n$5:foo::lambda_shared_lambda_lambda1.cpp:20:12=(_fun_foo::lambda_shared_lambda_lambda1.cpp:20:12_operator()) [line 20, column 12]\n n$6=_fun_foo::lambda_shared_lambda_lambda1.cpp:20:12_(&y:foo::lambda_shared_lambda_lambda1.cpp:20:12*,&0$?%__sil_tmpSIL_materialize_temp__n$5:foo::lambda_shared_lambda_lambda1.cpp:20:12&) [line 20, column 12]\n " shape="box"] +"foo#972162870672026475.86d7db357d6a36081d09067fb38ce85e_4" [label="4: DeclStmt \n *&0$?%__sil_tmpSIL_materialize_temp__n$7:foo::lambda_shared_lambda_lambda1.cpp:20:12=(_fun_foo::lambda_shared_lambda_lambda1.cpp:20:12_operator()) [line 20, column 12]\n n$8=_fun_foo::lambda_shared_lambda_lambda1.cpp:20:12_(&y:foo::lambda_shared_lambda_lambda1.cpp:20:12*,&0$?%__sil_tmpSIL_materialize_temp__n$7:foo::lambda_shared_lambda_lambda1.cpp:20:12&) [line 20, column 12]\n " shape="box"] "foo#972162870672026475.86d7db357d6a36081d09067fb38ce85e_4" -> "foo#972162870672026475.86d7db357d6a36081d09067fb38ce85e_3" ; -"foo#972162870672026475.86d7db357d6a36081d09067fb38ce85e_5" [label="5: DeclStmt \n *&0$?%__sil_tmpSIL_materialize_temp__n$7:foo::lambda_shared_lambda_lambda1.cpp:19:17=(_fun_foo::lambda_shared_lambda_lambda1.cpp:19:17_operator()) [line 19, column 17]\n n$8=_fun_foo::lambda_shared_lambda_lambda1.cpp:19:17_(&unused:foo::lambda_shared_lambda_lambda1.cpp:19:17*,&0$?%__sil_tmpSIL_materialize_temp__n$7:foo::lambda_shared_lambda_lambda1.cpp:19:17&) [line 19, column 17]\n " shape="box"] +"foo#972162870672026475.86d7db357d6a36081d09067fb38ce85e_5" [label="5: DeclStmt \n *&0$?%__sil_tmpSIL_materialize_temp__n$9:foo::lambda_shared_lambda_lambda1.cpp:19:17=(_fun_foo::lambda_shared_lambda_lambda1.cpp:19:17_operator()) [line 19, column 17]\n n$10=_fun_foo::lambda_shared_lambda_lambda1.cpp:19:17_(&unused:foo::lambda_shared_lambda_lambda1.cpp:19:17*,&0$?%__sil_tmpSIL_materialize_temp__n$9:foo::lambda_shared_lambda_lambda1.cpp:19:17&) [line 19, column 17]\n " shape="box"] "foo#972162870672026475.86d7db357d6a36081d09067fb38ce85e_5" -> "foo#972162870672026475.86d7db357d6a36081d09067fb38ce85e_4" ; -"fooOK#5521302935427608539.9c36ec052efdd50972817d895666852a_1" [label="1: Start fooOK\nFormals: \nLocals: y:fooOK::lambda_shared_lambda_lambda1.cpp:26:12 0$?%__sil_tmpSIL_materialize_temp__n$3:fooOK::lambda_shared_lambda_lambda1.cpp:26:12 \n DECLARE_LOCALS(&return,&y,&0$?%__sil_tmpSIL_materialize_temp__n$3); [line 24, column 1]\n " color=yellow style=filled] +"fooOK#5521302935427608539.9c36ec052efdd50972817d895666852a_1" [label="1: Start fooOK\nFormals: \nLocals: y:fooOK::lambda_shared_lambda_lambda1.cpp:26:12 0$?%__sil_tmpSIL_materialize_temp__n$5:fooOK::lambda_shared_lambda_lambda1.cpp:26:12 \n DECLARE_LOCALS(&return,&y,&0$?%__sil_tmpSIL_materialize_temp__n$5); [line 24, column 1]\n " color=yellow style=filled] "fooOK#5521302935427608539.9c36ec052efdd50972817d895666852a_1" -> "fooOK#5521302935427608539.9c36ec052efdd50972817d895666852a_4" ; "fooOK#5521302935427608539.9c36ec052efdd50972817d895666852a_2" [label="2: Exit fooOK \n " color=yellow style=filled] -"fooOK#5521302935427608539.9c36ec052efdd50972817d895666852a_3" [label="3: Return Stmt \n n$0=_fun_fooOK::lambda_shared_lambda_lambda1.cpp:26:12_operator()(&y:fooOK::lambda_shared_lambda_lambda1.cpp:26:12&,3:int) [line 27, column 19]\n *&return:int=(5 / (4 - n$0)) [line 27, column 3]\n _=*&y:fooOK::lambda_shared_lambda_lambda1.cpp:26:12 [line 27, column 23]\n n$2=_fun_fooOK::lambda_shared_lambda_lambda1.cpp:26:12_~(&y:fooOK::lambda_shared_lambda_lambda1.cpp:26:12*) [line 27, column 23]\n " shape="box"] +"fooOK#5521302935427608539.9c36ec052efdd50972817d895666852a_3" [label="3: Return Stmt \n n$1=_fun_fooOK::lambda_shared_lambda_lambda1.cpp:26:12_operator()(&y:fooOK::lambda_shared_lambda_lambda1.cpp:26:12&,3:int) [line 27, column 19]\n *&return:int=(5 / (4 - n$1)) [line 27, column 3]\n _=*&y:fooOK::lambda_shared_lambda_lambda1.cpp:26:12 [line 27, column 23]\n n$3=_fun_fooOK::lambda_shared_lambda_lambda1.cpp:26:12_~(&y:fooOK::lambda_shared_lambda_lambda1.cpp:26:12*) [line 27, column 23]\n " shape="box"] "fooOK#5521302935427608539.9c36ec052efdd50972817d895666852a_3" -> "fooOK#5521302935427608539.9c36ec052efdd50972817d895666852a_2" ; -"fooOK#5521302935427608539.9c36ec052efdd50972817d895666852a_4" [label="4: DeclStmt \n *&0$?%__sil_tmpSIL_materialize_temp__n$3:fooOK::lambda_shared_lambda_lambda1.cpp:26:12=(_fun_fooOK::lambda_shared_lambda_lambda1.cpp:26:12_operator()) [line 26, column 12]\n n$4=_fun_fooOK::lambda_shared_lambda_lambda1.cpp:26:12_(&y:fooOK::lambda_shared_lambda_lambda1.cpp:26:12*,&0$?%__sil_tmpSIL_materialize_temp__n$3:fooOK::lambda_shared_lambda_lambda1.cpp:26:12&) [line 26, column 12]\n " shape="box"] +"fooOK#5521302935427608539.9c36ec052efdd50972817d895666852a_4" [label="4: DeclStmt \n *&0$?%__sil_tmpSIL_materialize_temp__n$5:fooOK::lambda_shared_lambda_lambda1.cpp:26:12=(_fun_fooOK::lambda_shared_lambda_lambda1.cpp:26:12_operator()) [line 26, column 12]\n n$6=_fun_fooOK::lambda_shared_lambda_lambda1.cpp:26:12_(&y:fooOK::lambda_shared_lambda_lambda1.cpp:26:12*,&0$?%__sil_tmpSIL_materialize_temp__n$5:fooOK::lambda_shared_lambda_lambda1.cpp:26:12&) [line 26, column 12]\n " shape="box"] "fooOK#5521302935427608539.9c36ec052efdd50972817d895666852a_4" -> "fooOK#5521302935427608539.9c36ec052efdd50972817d895666852a_3" ; @@ -79,7 +79,7 @@ digraph cfg { "init_capture1#11582985675627962568.58b9ce334267f411dc5e1c70bd53eb81_3" -> "init_capture1#11582985675627962568.58b9ce334267f411dc5e1c70bd53eb81_4" ; -"init_capture1#11582985675627962568.58b9ce334267f411dc5e1c70bd53eb81_4" [label="4: Return Stmt \n n$0=_fun_init_capture1::lambda_shared_lambda_lambda1.cpp:43:10_operator()((_fun_init_capture1::lambda_shared_lambda_lambda1.cpp:43:10_operator(),&i):init_capture1::lambda_shared_lambda_lambda1.cpp:43:10) [line 43, column 10]\n *&return:int=n$0 [line 43, column 3]\n " shape="box"] +"init_capture1#11582985675627962568.58b9ce334267f411dc5e1c70bd53eb81_4" [label="4: Return Stmt \n n$1=_fun_init_capture1::lambda_shared_lambda_lambda1.cpp:43:10_operator()((_fun_init_capture1::lambda_shared_lambda_lambda1.cpp:43:10_operator(),&i):init_capture1::lambda_shared_lambda_lambda1.cpp:43:10) [line 43, column 10]\n *&return:int=n$1 [line 43, column 3]\n " shape="box"] "init_capture1#11582985675627962568.58b9ce334267f411dc5e1c70bd53eb81_4" -> "init_capture1#11582985675627962568.58b9ce334267f411dc5e1c70bd53eb81_2" ; @@ -98,11 +98,11 @@ digraph cfg { "init_capture2#11582143449720942167.039b5039af3b7807e4b00950523a9f3a_4" -> "init_capture2#11582143449720942167.039b5039af3b7807e4b00950523a9f3a_3" ; -"init_capture2#11582143449720942167.039b5039af3b7807e4b00950523a9f3a_5" [label="5: DeclStmt \n n$0=*&i:int [line 49, column 16]\n *&a:int=n$0 [line 49, column 10]\n " shape="box"] +"init_capture2#11582143449720942167.039b5039af3b7807e4b00950523a9f3a_5" [label="5: DeclStmt \n n$1=*&i:int [line 49, column 16]\n *&a:int=n$1 [line 49, column 10]\n " shape="box"] "init_capture2#11582143449720942167.039b5039af3b7807e4b00950523a9f3a_5" -> "init_capture2#11582143449720942167.039b5039af3b7807e4b00950523a9f3a_4" ; -"init_capture2#11582143449720942167.039b5039af3b7807e4b00950523a9f3a_6" [label="6: Return Stmt \n n$1=_fun_init_capture2::lambda_shared_lambda_lambda1.cpp:49:10_operator()((_fun_init_capture2::lambda_shared_lambda_lambda1.cpp:49:10_operator(),&a,&b,&c):init_capture2::lambda_shared_lambda_lambda1.cpp:49:10) [line 49, column 10]\n *&return:int=n$1 [line 49, column 3]\n " shape="box"] +"init_capture2#11582143449720942167.039b5039af3b7807e4b00950523a9f3a_6" [label="6: Return Stmt \n n$2=_fun_init_capture2::lambda_shared_lambda_lambda1.cpp:49:10_operator()((_fun_init_capture2::lambda_shared_lambda_lambda1.cpp:49:10_operator(),&a,&b,&c):init_capture2::lambda_shared_lambda_lambda1.cpp:49:10) [line 49, column 10]\n *&return:int=n$2 [line 49, column 3]\n " shape="box"] "init_capture2#11582143449720942167.039b5039af3b7807e4b00950523a9f3a_6" -> "init_capture2#11582143449720942167.039b5039af3b7807e4b00950523a9f3a_2" ; @@ -117,7 +117,7 @@ digraph cfg { "normal_capture#5533029764254319855.11493b249dddd657790695e287170b84_2" [label="2: Exit normal_capture \n " color=yellow style=filled] -"normal_capture#5533029764254319855.11493b249dddd657790695e287170b84_3" [label="3: Return Stmt \n n$1=*&x:int [line 33, column 10]\n n$0=*&y:int [line 33, column 10]\n n$2=_fun_normal_capture::lambda_shared_lambda_lambda1.cpp:33:10_operator()((_fun_normal_capture::lambda_shared_lambda_lambda1.cpp:33:10_operator(),(n$1 &x:int),(n$0 &y:int)):normal_capture::lambda_shared_lambda_lambda1.cpp:33:10) [line 33, column 10]\n *&return:int=n$2 [line 33, column 3]\n " shape="box"] +"normal_capture#5533029764254319855.11493b249dddd657790695e287170b84_3" [label="3: Return Stmt \n n$2=*&x:int [line 33, column 10]\n n$1=*&y:int [line 33, column 10]\n n$3=_fun_normal_capture::lambda_shared_lambda_lambda1.cpp:33:10_operator()((_fun_normal_capture::lambda_shared_lambda_lambda1.cpp:33:10_operator(),(n$2 &x:int),(n$1 &y:int)):normal_capture::lambda_shared_lambda_lambda1.cpp:33:10) [line 33, column 10]\n *&return:int=n$3 [line 33, column 3]\n " shape="box"] "normal_capture#5533029764254319855.11493b249dddd657790695e287170b84_3" -> "normal_capture#5533029764254319855.11493b249dddd657790695e287170b84_2" ; @@ -164,7 +164,7 @@ digraph cfg { "#lambda_shared_lambda_lambda1.cpp:55:19#capture_this_explicit#Capture#{15581681824770184595|constexp.ec00a7d90451e0c7680026716c904b92_2" [label="2: Exit Capture::capture_this_explicit::lambda_shared_lambda_lambda1.cpp:55:19_ \n " color=yellow style=filled] -"#lambda_shared_lambda_lambda1.cpp:55:19#capture_this_explicit#Capture#{15581681824770184595|constexp.ec00a7d90451e0c7680026716c904b92_3" [label="3: Constructor Init \n n$0=*&this:Capture::capture_this_explicit::lambda_shared_lambda_lambda1.cpp:55:19* [line 55, column 19]\n n$1=*&__param_0:Capture::capture_this_explicit::lambda_shared_lambda_lambda1.cpp:55:19& [line 55, column 19]\n n$2=*n$1.:Capture* [line 55, column 19]\n *n$0.:Capture*=n$2 [line 55, column 19]\n " shape="box"] +"#lambda_shared_lambda_lambda1.cpp:55:19#capture_this_explicit#Capture#{15581681824770184595|constexp.ec00a7d90451e0c7680026716c904b92_3" [label="3: Constructor Init \n n$2=*&this:Capture::capture_this_explicit::lambda_shared_lambda_lambda1.cpp:55:19* [line 55, column 19]\n n$3=*&__param_0:Capture::capture_this_explicit::lambda_shared_lambda_lambda1.cpp:55:19& [line 55, column 19]\n n$4=*n$3.:Capture* [line 55, column 19]\n *n$2.:Capture*=n$4 [line 55, column 19]\n " shape="box"] "#lambda_shared_lambda_lambda1.cpp:55:19#capture_this_explicit#Capture#{15581681824770184595|constexp.ec00a7d90451e0c7680026716c904b92_3" -> "#lambda_shared_lambda_lambda1.cpp:55:19#capture_this_explicit#Capture#{15581681824770184595|constexp.ec00a7d90451e0c7680026716c904b92_2" ; @@ -175,7 +175,7 @@ digraph cfg { "#lambda_shared_lambda_lambda1.cpp:59:19#capture_star_this#Capture#{9456129203468966420|constexpr}.4865d22cd69692723766b951221a21d1_2" [label="2: Exit Capture::capture_star_this::lambda_shared_lambda_lambda1.cpp:59:19_ \n " color=yellow style=filled] -"#lambda_shared_lambda_lambda1.cpp:59:19#capture_star_this#Capture#{9456129203468966420|constexpr}.4865d22cd69692723766b951221a21d1_3" [label="3: Constructor Init \n n$0=*&this:Capture::capture_star_this::lambda_shared_lambda_lambda1.cpp:59:19* [line 59, column 19]\n n$1=*&__param_0:Capture::capture_star_this::lambda_shared_lambda_lambda1.cpp:59:19& [line 59, column 19]\n n$2=_fun_Capture_Capture(n$0.:Capture*,n$1.:Capture&) [line 59, column 19]\n " shape="box"] +"#lambda_shared_lambda_lambda1.cpp:59:19#capture_star_this#Capture#{9456129203468966420|constexpr}.4865d22cd69692723766b951221a21d1_3" [label="3: Constructor Init \n n$2=*&this:Capture::capture_star_this::lambda_shared_lambda_lambda1.cpp:59:19* [line 59, column 19]\n n$3=*&__param_0:Capture::capture_star_this::lambda_shared_lambda_lambda1.cpp:59:19& [line 59, column 19]\n n$4=_fun_Capture_Capture(n$2.:Capture*,n$3.:Capture&) [line 59, column 19]\n " shape="box"] "#lambda_shared_lambda_lambda1.cpp:59:19#capture_star_this#Capture#{9456129203468966420|constexpr}.4865d22cd69692723766b951221a21d1_3" -> "#lambda_shared_lambda_lambda1.cpp:59:19#capture_star_this#Capture#{9456129203468966420|constexpr}.4865d22cd69692723766b951221a21d1_2" ; @@ -186,7 +186,7 @@ digraph cfg { "#lambda_shared_lambda_lambda1.cpp:65:19#capture_this_with_equal#Capture#{16013381636753347826|conste.6afb74b89c25ee911bcc35939b7dddc6_2" [label="2: Exit Capture::capture_this_with_equal::lambda_shared_lambda_lambda1.cpp:65:19_ \n " color=yellow style=filled] -"#lambda_shared_lambda_lambda1.cpp:65:19#capture_this_with_equal#Capture#{16013381636753347826|conste.6afb74b89c25ee911bcc35939b7dddc6_3" [label="3: Constructor Init \n n$0=*&this:Capture::capture_this_with_equal::lambda_shared_lambda_lambda1.cpp:65:19* [line 65, column 19]\n n$1=*&__param_0:Capture::capture_this_with_equal::lambda_shared_lambda_lambda1.cpp:65:19& [line 65, column 19]\n n$2=*n$1.:Capture* [line 65, column 19]\n *n$0.:Capture*=n$2 [line 65, column 19]\n " shape="box"] +"#lambda_shared_lambda_lambda1.cpp:65:19#capture_this_with_equal#Capture#{16013381636753347826|conste.6afb74b89c25ee911bcc35939b7dddc6_3" [label="3: Constructor Init \n n$2=*&this:Capture::capture_this_with_equal::lambda_shared_lambda_lambda1.cpp:65:19* [line 65, column 19]\n n$3=*&__param_0:Capture::capture_this_with_equal::lambda_shared_lambda_lambda1.cpp:65:19& [line 65, column 19]\n n$4=*n$3.:Capture* [line 65, column 19]\n *n$2.:Capture*=n$4 [line 65, column 19]\n " shape="box"] "#lambda_shared_lambda_lambda1.cpp:65:19#capture_this_with_equal#Capture#{16013381636753347826|conste.6afb74b89c25ee911bcc35939b7dddc6_3" -> "#lambda_shared_lambda_lambda1.cpp:65:19#capture_this_with_equal#Capture#{16013381636753347826|conste.6afb74b89c25ee911bcc35939b7dddc6_2" ; @@ -197,7 +197,7 @@ digraph cfg { "#lambda_shared_lambda_lambda1.cpp:69:19#capture_this_with_auto#Capture#{10854495330849287568|constex.8d1ac582b7a23cd3c32a1a4b8e266cf3_2" [label="2: Exit Capture::capture_this_with_auto::lambda_shared_lambda_lambda1.cpp:69:19_ \n " color=yellow style=filled] -"#lambda_shared_lambda_lambda1.cpp:69:19#capture_this_with_auto#Capture#{10854495330849287568|constex.8d1ac582b7a23cd3c32a1a4b8e266cf3_3" [label="3: Constructor Init \n n$0=*&this:Capture::capture_this_with_auto::lambda_shared_lambda_lambda1.cpp:69:19* [line 69, column 19]\n n$1=*&__param_0:Capture::capture_this_with_auto::lambda_shared_lambda_lambda1.cpp:69:19& [line 69, column 19]\n n$2=*n$1.:Capture* [line 69, column 19]\n *n$0.:Capture*=n$2 [line 69, column 19]\n " shape="box"] +"#lambda_shared_lambda_lambda1.cpp:69:19#capture_this_with_auto#Capture#{10854495330849287568|constex.8d1ac582b7a23cd3c32a1a4b8e266cf3_3" [label="3: Constructor Init \n n$2=*&this:Capture::capture_this_with_auto::lambda_shared_lambda_lambda1.cpp:69:19* [line 69, column 19]\n n$3=*&__param_0:Capture::capture_this_with_auto::lambda_shared_lambda_lambda1.cpp:69:19& [line 69, column 19]\n n$4=*n$3.:Capture* [line 69, column 19]\n *n$2.:Capture*=n$4 [line 69, column 19]\n " shape="box"] "#lambda_shared_lambda_lambda1.cpp:69:19#capture_this_with_auto#Capture#{10854495330849287568|constex.8d1ac582b7a23cd3c32a1a4b8e266cf3_3" -> "#lambda_shared_lambda_lambda1.cpp:69:19#capture_this_with_auto#Capture#{10854495330849287568|constex.8d1ac582b7a23cd3c32a1a4b8e266cf3_2" ; @@ -215,7 +215,7 @@ digraph cfg { "Capture#Capture#{15371931494294124755|constexpr}.9ede96f2e081983279c43accbd64cbd2_2" [label="2: Exit Capture_Capture \n " color=yellow style=filled] -"capture_star_this#Capture#(2506493005619132138).63fd6aa2a7efbd48dc1a62c0c2bd2161_1" [label="1: Start Capture_capture_star_this\nFormals: this:Capture*\nLocals: lambda:Capture::capture_star_this::lambda_shared_lambda_lambda1.cpp:59:19 0$?%__sil_tmpSIL_materialize_temp__n$2:Capture::capture_star_this::lambda_shared_lambda_lambda1.cpp:59:19 \n DECLARE_LOCALS(&return,&lambda,&0$?%__sil_tmpSIL_materialize_temp__n$2); [line 58, column 3]\n " color=yellow style=filled] +"capture_star_this#Capture#(2506493005619132138).63fd6aa2a7efbd48dc1a62c0c2bd2161_1" [label="1: Start Capture_capture_star_this\nFormals: this:Capture*\nLocals: lambda:Capture::capture_star_this::lambda_shared_lambda_lambda1.cpp:59:19 0$?%__sil_tmpSIL_materialize_temp__n$3:Capture::capture_star_this::lambda_shared_lambda_lambda1.cpp:59:19 \n DECLARE_LOCALS(&return,&lambda,&0$?%__sil_tmpSIL_materialize_temp__n$3); [line 58, column 3]\n " color=yellow style=filled] "capture_star_this#Capture#(2506493005619132138).63fd6aa2a7efbd48dc1a62c0c2bd2161_1" -> "capture_star_this#Capture#(2506493005619132138).63fd6aa2a7efbd48dc1a62c0c2bd2161_4" ; @@ -226,11 +226,11 @@ digraph cfg { "capture_star_this#Capture#(2506493005619132138).63fd6aa2a7efbd48dc1a62c0c2bd2161_3" -> "capture_star_this#Capture#(2506493005619132138).63fd6aa2a7efbd48dc1a62c0c2bd2161_2" ; -"capture_star_this#Capture#(2506493005619132138).63fd6aa2a7efbd48dc1a62c0c2bd2161_4" [label="4: DeclStmt \n n$3=*&this:Capture* [line 59, column 19]\n *&0$?%__sil_tmpSIL_materialize_temp__n$2:Capture::capture_star_this::lambda_shared_lambda_lambda1.cpp:59:19=(_fun_Capture::capture_star_this::lambda_shared_lambda_lambda1.cpp:59:19_operator(),(n$3 &this:Capture*)) [line 59, column 19]\n n$4=_fun_Capture::capture_star_this::lambda_shared_lambda_lambda1.cpp:59:19_(&lambda:Capture::capture_star_this::lambda_shared_lambda_lambda1.cpp:59:19*,&0$?%__sil_tmpSIL_materialize_temp__n$2:Capture::capture_star_this::lambda_shared_lambda_lambda1.cpp:59:19&) [line 59, column 19]\n " shape="box"] +"capture_star_this#Capture#(2506493005619132138).63fd6aa2a7efbd48dc1a62c0c2bd2161_4" [label="4: DeclStmt \n n$4=*&this:Capture* [line 59, column 19]\n *&0$?%__sil_tmpSIL_materialize_temp__n$3:Capture::capture_star_this::lambda_shared_lambda_lambda1.cpp:59:19=(_fun_Capture::capture_star_this::lambda_shared_lambda_lambda1.cpp:59:19_operator(),(n$4 &this:Capture*)) [line 59, column 19]\n n$5=_fun_Capture::capture_star_this::lambda_shared_lambda_lambda1.cpp:59:19_(&lambda:Capture::capture_star_this::lambda_shared_lambda_lambda1.cpp:59:19*,&0$?%__sil_tmpSIL_materialize_temp__n$3:Capture::capture_star_this::lambda_shared_lambda_lambda1.cpp:59:19&) [line 59, column 19]\n " shape="box"] "capture_star_this#Capture#(2506493005619132138).63fd6aa2a7efbd48dc1a62c0c2bd2161_4" -> "capture_star_this#Capture#(2506493005619132138).63fd6aa2a7efbd48dc1a62c0c2bd2161_3" ; -"capture_this_explicit#Capture#(13194085360619722149).2dba35a78268b10ad413414cc832a8f0_1" [label="1: Start Capture_capture_this_explicit\nFormals: this:Capture*\nLocals: lambda:Capture::capture_this_explicit::lambda_shared_lambda_lambda1.cpp:55:19 0$?%__sil_tmpSIL_materialize_temp__n$2:Capture::capture_this_explicit::lambda_shared_lambda_lambda1.cpp:55:19 \n DECLARE_LOCALS(&return,&lambda,&0$?%__sil_tmpSIL_materialize_temp__n$2); [line 54, column 3]\n " color=yellow style=filled] +"capture_this_explicit#Capture#(13194085360619722149).2dba35a78268b10ad413414cc832a8f0_1" [label="1: Start Capture_capture_this_explicit\nFormals: this:Capture*\nLocals: lambda:Capture::capture_this_explicit::lambda_shared_lambda_lambda1.cpp:55:19 0$?%__sil_tmpSIL_materialize_temp__n$3:Capture::capture_this_explicit::lambda_shared_lambda_lambda1.cpp:55:19 \n DECLARE_LOCALS(&return,&lambda,&0$?%__sil_tmpSIL_materialize_temp__n$3); [line 54, column 3]\n " color=yellow style=filled] "capture_this_explicit#Capture#(13194085360619722149).2dba35a78268b10ad413414cc832a8f0_1" -> "capture_this_explicit#Capture#(13194085360619722149).2dba35a78268b10ad413414cc832a8f0_4" ; @@ -241,11 +241,11 @@ digraph cfg { "capture_this_explicit#Capture#(13194085360619722149).2dba35a78268b10ad413414cc832a8f0_3" -> "capture_this_explicit#Capture#(13194085360619722149).2dba35a78268b10ad413414cc832a8f0_2" ; -"capture_this_explicit#Capture#(13194085360619722149).2dba35a78268b10ad413414cc832a8f0_4" [label="4: DeclStmt \n *&0$?%__sil_tmpSIL_materialize_temp__n$2:Capture::capture_this_explicit::lambda_shared_lambda_lambda1.cpp:55:19=(_fun_Capture::capture_this_explicit::lambda_shared_lambda_lambda1.cpp:55:19_operator(),&this) [line 55, column 19]\n n$3=_fun_Capture::capture_this_explicit::lambda_shared_lambda_lambda1.cpp:55:19_(&lambda:Capture::capture_this_explicit::lambda_shared_lambda_lambda1.cpp:55:19*,&0$?%__sil_tmpSIL_materialize_temp__n$2:Capture::capture_this_explicit::lambda_shared_lambda_lambda1.cpp:55:19&) [line 55, column 19]\n " shape="box"] +"capture_this_explicit#Capture#(13194085360619722149).2dba35a78268b10ad413414cc832a8f0_4" [label="4: DeclStmt \n *&0$?%__sil_tmpSIL_materialize_temp__n$3:Capture::capture_this_explicit::lambda_shared_lambda_lambda1.cpp:55:19=(_fun_Capture::capture_this_explicit::lambda_shared_lambda_lambda1.cpp:55:19_operator(),&this) [line 55, column 19]\n n$4=_fun_Capture::capture_this_explicit::lambda_shared_lambda_lambda1.cpp:55:19_(&lambda:Capture::capture_this_explicit::lambda_shared_lambda_lambda1.cpp:55:19*,&0$?%__sil_tmpSIL_materialize_temp__n$3:Capture::capture_this_explicit::lambda_shared_lambda_lambda1.cpp:55:19&) [line 55, column 19]\n " shape="box"] "capture_this_explicit#Capture#(13194085360619722149).2dba35a78268b10ad413414cc832a8f0_4" -> "capture_this_explicit#Capture#(13194085360619722149).2dba35a78268b10ad413414cc832a8f0_3" ; -"capture_this_with_auto#Capture#(15696525048884093218).38be242109186a45cc282c38962c68e2_1" [label="1: Start Capture_capture_this_with_auto\nFormals: this:Capture*\nLocals: lambda:Capture::capture_this_with_auto::lambda_shared_lambda_lambda1.cpp:69:19 0$?%__sil_tmpSIL_materialize_temp__n$2:Capture::capture_this_with_auto::lambda_shared_lambda_lambda1.cpp:69:19 \n DECLARE_LOCALS(&return,&lambda,&0$?%__sil_tmpSIL_materialize_temp__n$2); [line 68, column 3]\n " color=yellow style=filled] +"capture_this_with_auto#Capture#(15696525048884093218).38be242109186a45cc282c38962c68e2_1" [label="1: Start Capture_capture_this_with_auto\nFormals: this:Capture*\nLocals: lambda:Capture::capture_this_with_auto::lambda_shared_lambda_lambda1.cpp:69:19 0$?%__sil_tmpSIL_materialize_temp__n$3:Capture::capture_this_with_auto::lambda_shared_lambda_lambda1.cpp:69:19 \n DECLARE_LOCALS(&return,&lambda,&0$?%__sil_tmpSIL_materialize_temp__n$3); [line 68, column 3]\n " color=yellow style=filled] "capture_this_with_auto#Capture#(15696525048884093218).38be242109186a45cc282c38962c68e2_1" -> "capture_this_with_auto#Capture#(15696525048884093218).38be242109186a45cc282c38962c68e2_4" ; @@ -256,11 +256,11 @@ digraph cfg { "capture_this_with_auto#Capture#(15696525048884093218).38be242109186a45cc282c38962c68e2_3" -> "capture_this_with_auto#Capture#(15696525048884093218).38be242109186a45cc282c38962c68e2_2" ; -"capture_this_with_auto#Capture#(15696525048884093218).38be242109186a45cc282c38962c68e2_4" [label="4: DeclStmt \n *&0$?%__sil_tmpSIL_materialize_temp__n$2:Capture::capture_this_with_auto::lambda_shared_lambda_lambda1.cpp:69:19=(_fun_Capture::capture_this_with_auto::lambda_shared_lambda_lambda1.cpp:69:19_operator(),&this) [line 69, column 19]\n n$3=_fun_Capture::capture_this_with_auto::lambda_shared_lambda_lambda1.cpp:69:19_(&lambda:Capture::capture_this_with_auto::lambda_shared_lambda_lambda1.cpp:69:19*,&0$?%__sil_tmpSIL_materialize_temp__n$2:Capture::capture_this_with_auto::lambda_shared_lambda_lambda1.cpp:69:19&) [line 69, column 19]\n " shape="box"] +"capture_this_with_auto#Capture#(15696525048884093218).38be242109186a45cc282c38962c68e2_4" [label="4: DeclStmt \n *&0$?%__sil_tmpSIL_materialize_temp__n$3:Capture::capture_this_with_auto::lambda_shared_lambda_lambda1.cpp:69:19=(_fun_Capture::capture_this_with_auto::lambda_shared_lambda_lambda1.cpp:69:19_operator(),&this) [line 69, column 19]\n n$4=_fun_Capture::capture_this_with_auto::lambda_shared_lambda_lambda1.cpp:69:19_(&lambda:Capture::capture_this_with_auto::lambda_shared_lambda_lambda1.cpp:69:19*,&0$?%__sil_tmpSIL_materialize_temp__n$3:Capture::capture_this_with_auto::lambda_shared_lambda_lambda1.cpp:69:19&) [line 69, column 19]\n " shape="box"] "capture_this_with_auto#Capture#(15696525048884093218).38be242109186a45cc282c38962c68e2_4" -> "capture_this_with_auto#Capture#(15696525048884093218).38be242109186a45cc282c38962c68e2_3" ; -"capture_this_with_equal#Capture#(805776379555510952).ecd73e9a4e2bef0d060a242b61508f10_1" [label="1: Start Capture_capture_this_with_equal\nFormals: this:Capture*\nLocals: lambda:Capture::capture_this_with_equal::lambda_shared_lambda_lambda1.cpp:65:19 0$?%__sil_tmpSIL_materialize_temp__n$2:Capture::capture_this_with_equal::lambda_shared_lambda_lambda1.cpp:65:19 \n DECLARE_LOCALS(&return,&lambda,&0$?%__sil_tmpSIL_materialize_temp__n$2); [line 64, column 3]\n " color=yellow style=filled] +"capture_this_with_equal#Capture#(805776379555510952).ecd73e9a4e2bef0d060a242b61508f10_1" [label="1: Start Capture_capture_this_with_equal\nFormals: this:Capture*\nLocals: lambda:Capture::capture_this_with_equal::lambda_shared_lambda_lambda1.cpp:65:19 0$?%__sil_tmpSIL_materialize_temp__n$3:Capture::capture_this_with_equal::lambda_shared_lambda_lambda1.cpp:65:19 \n DECLARE_LOCALS(&return,&lambda,&0$?%__sil_tmpSIL_materialize_temp__n$3); [line 64, column 3]\n " color=yellow style=filled] "capture_this_with_equal#Capture#(805776379555510952).ecd73e9a4e2bef0d060a242b61508f10_1" -> "capture_this_with_equal#Capture#(805776379555510952).ecd73e9a4e2bef0d060a242b61508f10_4" ; @@ -271,7 +271,7 @@ digraph cfg { "capture_this_with_equal#Capture#(805776379555510952).ecd73e9a4e2bef0d060a242b61508f10_3" -> "capture_this_with_equal#Capture#(805776379555510952).ecd73e9a4e2bef0d060a242b61508f10_2" ; -"capture_this_with_equal#Capture#(805776379555510952).ecd73e9a4e2bef0d060a242b61508f10_4" [label="4: DeclStmt \n *&0$?%__sil_tmpSIL_materialize_temp__n$2:Capture::capture_this_with_equal::lambda_shared_lambda_lambda1.cpp:65:19=(_fun_Capture::capture_this_with_equal::lambda_shared_lambda_lambda1.cpp:65:19_operator(),&this) [line 65, column 19]\n n$3=_fun_Capture::capture_this_with_equal::lambda_shared_lambda_lambda1.cpp:65:19_(&lambda:Capture::capture_this_with_equal::lambda_shared_lambda_lambda1.cpp:65:19*,&0$?%__sil_tmpSIL_materialize_temp__n$2:Capture::capture_this_with_equal::lambda_shared_lambda_lambda1.cpp:65:19&) [line 65, column 19]\n " shape="box"] +"capture_this_with_equal#Capture#(805776379555510952).ecd73e9a4e2bef0d060a242b61508f10_4" [label="4: DeclStmt \n *&0$?%__sil_tmpSIL_materialize_temp__n$3:Capture::capture_this_with_equal::lambda_shared_lambda_lambda1.cpp:65:19=(_fun_Capture::capture_this_with_equal::lambda_shared_lambda_lambda1.cpp:65:19_operator(),&this) [line 65, column 19]\n n$4=_fun_Capture::capture_this_with_equal::lambda_shared_lambda_lambda1.cpp:65:19_(&lambda:Capture::capture_this_with_equal::lambda_shared_lambda_lambda1.cpp:65:19*,&0$?%__sil_tmpSIL_materialize_temp__n$3:Capture::capture_this_with_equal::lambda_shared_lambda_lambda1.cpp:65:19&) [line 65, column 19]\n " shape="box"] "capture_this_with_equal#Capture#(805776379555510952).ecd73e9a4e2bef0d060a242b61508f10_4" -> "capture_this_with_equal#Capture#(805776379555510952).ecd73e9a4e2bef0d060a242b61508f10_3" ; @@ -341,7 +341,7 @@ digraph cfg { "operator()#lambda_shared_lambda_lambda1.cpp:38:3#capture_by_ref#(17277454583786497390).c47500379c80a95b2ce7b5f569b32788_2" [label="2: Exit capture_by_ref::lambda_shared_lambda_lambda1.cpp:38:3_operator() \n " color=yellow style=filled] -"operator()#lambda_shared_lambda_lambda1.cpp:38:3#capture_by_ref#(17277454583786497390).c47500379c80a95b2ce7b5f569b32788_3" [label="3: UnaryOperator \n n$0=*&x:int [line 38, column 12]\n *&x:int=(n$0 + 1) [line 38, column 12]\n " shape="box"] +"operator()#lambda_shared_lambda_lambda1.cpp:38:3#capture_by_ref#(17277454583786497390).c47500379c80a95b2ce7b5f569b32788_3" [label="3: UnaryOperator \n n$1=*&x:int [line 38, column 12]\n *&x:int=(n$1 + 1) [line 38, column 12]\n " shape="box"] "operator()#lambda_shared_lambda_lambda1.cpp:38:3#capture_by_ref#(17277454583786497390).c47500379c80a95b2ce7b5f569b32788_3" -> "operator()#lambda_shared_lambda_lambda1.cpp:38:3#capture_by_ref#(17277454583786497390).c47500379c80a95b2ce7b5f569b32788_2" ; diff --git a/infer/tests/codetoanalyze/cpp/shared/methods/byvals.cpp.dot b/infer/tests/codetoanalyze/cpp/shared/methods/byvals.cpp.dot index 3bcbc99c1..076b95667 100644 --- a/infer/tests/codetoanalyze/cpp/shared/methods/byvals.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/shared/methods/byvals.cpp.dot @@ -194,11 +194,11 @@ digraph cfg { "PlainStruct#PlainStruct#pass_by_val#{2553093086388184854|constexpr}.e295b1e7e1c5b638011ce60f4cd77a28_2" [label="2: Exit pass_by_val::PlainStruct_PlainStruct \n " color=yellow style=filled] -"PlainStruct#PlainStruct#pass_by_val#{2553093086388184854|constexpr}.e295b1e7e1c5b638011ce60f4cd77a28_3" [label="3: Constructor Init \n n$0=*&this:pass_by_val::PlainStruct* [line 13, column 8]\n n$1=*&__param_0:pass_by_val::PlainStruct const & [line 13, column 8]\n n$2=*n$1.y:int* [line 13, column 8]\n *n$0.y:int*=n$2 [line 13, column 8]\n " shape="box"] +"PlainStruct#PlainStruct#pass_by_val#{2553093086388184854|constexpr}.e295b1e7e1c5b638011ce60f4cd77a28_3" [label="3: Constructor Init \n n$2=*&this:pass_by_val::PlainStruct* [line 13, column 8]\n n$3=*&__param_0:pass_by_val::PlainStruct const & [line 13, column 8]\n n$4=*n$3.y:int* [line 13, column 8]\n *n$2.y:int*=n$4 [line 13, column 8]\n " shape="box"] "PlainStruct#PlainStruct#pass_by_val#{2553093086388184854|constexpr}.e295b1e7e1c5b638011ce60f4cd77a28_3" -> "PlainStruct#PlainStruct#pass_by_val#{2553093086388184854|constexpr}.e295b1e7e1c5b638011ce60f4cd77a28_2" ; -"PlainStruct#PlainStruct#pass_by_val#{2553093086388184854|constexpr}.e295b1e7e1c5b638011ce60f4cd77a28_4" [label="4: Constructor Init \n n$3=*&this:pass_by_val::PlainStruct* [line 13, column 8]\n n$4=*&__param_0:pass_by_val::PlainStruct const & [line 13, column 8]\n n$5=*n$4.x:int [line 13, column 8]\n *n$3.x:int=n$5 [line 13, column 8]\n " shape="box"] +"PlainStruct#PlainStruct#pass_by_val#{2553093086388184854|constexpr}.e295b1e7e1c5b638011ce60f4cd77a28_4" [label="4: Constructor Init \n n$5=*&this:pass_by_val::PlainStruct* [line 13, column 8]\n n$6=*&__param_0:pass_by_val::PlainStruct const & [line 13, column 8]\n n$7=*n$6.x:int [line 13, column 8]\n *n$5.x:int=n$7 [line 13, column 8]\n " shape="box"] "PlainStruct#PlainStruct#pass_by_val#{2553093086388184854|constexpr}.e295b1e7e1c5b638011ce60f4cd77a28_4" -> "PlainStruct#PlainStruct#pass_by_val#{2553093086388184854|constexpr}.e295b1e7e1c5b638011ce60f4cd77a28_3" ; diff --git a/infer/tests/codetoanalyze/cpp/shared/methods/conversion_operator.cpp.dot b/infer/tests/codetoanalyze/cpp/shared/methods/conversion_operator.cpp.dot index c09f0d1e2..5cb05f79f 100644 --- a/infer/tests/codetoanalyze/cpp/shared/methods/conversion_operator.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/shared/methods/conversion_operator.cpp.dot @@ -15,28 +15,28 @@ digraph cfg { "branch_div0#conversion_operator#6762751670974669482.0ad6ec49c1dc8988836c6e44e9d2b402_4" -> "branch_div0#conversion_operator#6762751670974669482.0ad6ec49c1dc8988836c6e44e9d2b402_3" ; -"branch_div0#conversion_operator#6762751670974669482.0ad6ec49c1dc8988836c6e44e9d2b402_5" [label="5: Call _fun_conversion_operator::X_operator_bool \n _=*&x:conversion_operator::X [line 36, column 7]\n n$5=_fun_conversion_operator::X_operator_bool(&x:conversion_operator::X&) [line 36, column 7]\n " shape="box"] +"branch_div0#conversion_operator#6762751670974669482.0ad6ec49c1dc8988836c6e44e9d2b402_5" [label="5: Call _fun_conversion_operator::X_operator_bool \n _=*&x:conversion_operator::X [line 36, column 7]\n n$6=_fun_conversion_operator::X_operator_bool(&x:conversion_operator::X&) [line 36, column 7]\n " shape="box"] "branch_div0#conversion_operator#6762751670974669482.0ad6ec49c1dc8988836c6e44e9d2b402_5" -> "branch_div0#conversion_operator#6762751670974669482.0ad6ec49c1dc8988836c6e44e9d2b402_6" ; "branch_div0#conversion_operator#6762751670974669482.0ad6ec49c1dc8988836c6e44e9d2b402_5" -> "branch_div0#conversion_operator#6762751670974669482.0ad6ec49c1dc8988836c6e44e9d2b402_7" ; -"branch_div0#conversion_operator#6762751670974669482.0ad6ec49c1dc8988836c6e44e9d2b402_6" [label="6: Prune (true branch, if) \n PRUNE(n$5, true); [line 36, column 7]\n " shape="invhouse"] +"branch_div0#conversion_operator#6762751670974669482.0ad6ec49c1dc8988836c6e44e9d2b402_6" [label="6: Prune (true branch, if) \n PRUNE(n$6, true); [line 36, column 7]\n " shape="invhouse"] "branch_div0#conversion_operator#6762751670974669482.0ad6ec49c1dc8988836c6e44e9d2b402_6" -> "branch_div0#conversion_operator#6762751670974669482.0ad6ec49c1dc8988836c6e44e9d2b402_9" ; -"branch_div0#conversion_operator#6762751670974669482.0ad6ec49c1dc8988836c6e44e9d2b402_7" [label="7: Prune (false branch, if) \n PRUNE(!n$5, false); [line 36, column 7]\n " shape="invhouse"] +"branch_div0#conversion_operator#6762751670974669482.0ad6ec49c1dc8988836c6e44e9d2b402_7" [label="7: Prune (false branch, if) \n PRUNE(!n$6, false); [line 36, column 7]\n " shape="invhouse"] "branch_div0#conversion_operator#6762751670974669482.0ad6ec49c1dc8988836c6e44e9d2b402_7" -> "branch_div0#conversion_operator#6762751670974669482.0ad6ec49c1dc8988836c6e44e9d2b402_4" ; -"branch_div0#conversion_operator#6762751670974669482.0ad6ec49c1dc8988836c6e44e9d2b402_8" [label="8: Return Stmt \n n$6=*&v:int [line 38, column 16]\n *&return:int=(1 / n$6) [line 38, column 5]\n _=*&x:conversion_operator::X [line 38, column 16]\n n$8=_fun_conversion_operator::X_~X(&x:conversion_operator::X*) [line 38, column 16]\n " shape="box"] +"branch_div0#conversion_operator#6762751670974669482.0ad6ec49c1dc8988836c6e44e9d2b402_8" [label="8: Return Stmt \n n$7=*&v:int [line 38, column 16]\n *&return:int=(1 / n$7) [line 38, column 5]\n _=*&x:conversion_operator::X [line 38, column 16]\n n$9=_fun_conversion_operator::X_~X(&x:conversion_operator::X*) [line 38, column 16]\n " shape="box"] "branch_div0#conversion_operator#6762751670974669482.0ad6ec49c1dc8988836c6e44e9d2b402_8" -> "branch_div0#conversion_operator#6762751670974669482.0ad6ec49c1dc8988836c6e44e9d2b402_2" ; -"branch_div0#conversion_operator#6762751670974669482.0ad6ec49c1dc8988836c6e44e9d2b402_9" [label="9: DeclStmt \n _=*&x:conversion_operator::X [line 37, column 13]\n n$10=_fun_conversion_operator::X_operator_int(&x:conversion_operator::X&) [line 37, column 13]\n *&v:int=n$10 [line 37, column 5]\n " shape="box"] +"branch_div0#conversion_operator#6762751670974669482.0ad6ec49c1dc8988836c6e44e9d2b402_9" [label="9: DeclStmt \n _=*&x:conversion_operator::X [line 37, column 13]\n n$12=_fun_conversion_operator::X_operator_int(&x:conversion_operator::X&) [line 37, column 13]\n *&v:int=n$12 [line 37, column 5]\n " shape="box"] "branch_div0#conversion_operator#6762751670974669482.0ad6ec49c1dc8988836c6e44e9d2b402_9" -> "branch_div0#conversion_operator#6762751670974669482.0ad6ec49c1dc8988836c6e44e9d2b402_8" ; -"branch_div0#conversion_operator#6762751670974669482.0ad6ec49c1dc8988836c6e44e9d2b402_10" [label="10: DeclStmt \n n$11=_fun_conversion_operator::X_X(&x:conversion_operator::X*,0:int,1:_Bool) [line 35, column 5]\n " shape="box"] +"branch_div0#conversion_operator#6762751670974669482.0ad6ec49c1dc8988836c6e44e9d2b402_10" [label="10: DeclStmt \n n$15=_fun_conversion_operator::X_X(&x:conversion_operator::X*,0:int,1:_Bool) [line 35, column 5]\n " shape="box"] "branch_div0#conversion_operator#6762751670974669482.0ad6ec49c1dc8988836c6e44e9d2b402_10" -> "branch_div0#conversion_operator#6762751670974669482.0ad6ec49c1dc8988836c6e44e9d2b402_5" ; @@ -55,28 +55,28 @@ digraph cfg { "branch_div1#conversion_operator#6025807300888085665.f3ee34cea9ff5d10407119d4b377adc2_4" -> "branch_div1#conversion_operator#6025807300888085665.f3ee34cea9ff5d10407119d4b377adc2_3" ; -"branch_div1#conversion_operator#6025807300888085665.f3ee34cea9ff5d10407119d4b377adc2_5" [label="5: Call _fun_conversion_operator::X_operator_bool \n _=*&x:conversion_operator::X [line 65, column 7]\n n$5=_fun_conversion_operator::X_operator_bool(&x:conversion_operator::X&) [line 65, column 7]\n " shape="box"] +"branch_div1#conversion_operator#6025807300888085665.f3ee34cea9ff5d10407119d4b377adc2_5" [label="5: Call _fun_conversion_operator::X_operator_bool \n _=*&x:conversion_operator::X [line 65, column 7]\n n$6=_fun_conversion_operator::X_operator_bool(&x:conversion_operator::X&) [line 65, column 7]\n " shape="box"] "branch_div1#conversion_operator#6025807300888085665.f3ee34cea9ff5d10407119d4b377adc2_5" -> "branch_div1#conversion_operator#6025807300888085665.f3ee34cea9ff5d10407119d4b377adc2_6" ; "branch_div1#conversion_operator#6025807300888085665.f3ee34cea9ff5d10407119d4b377adc2_5" -> "branch_div1#conversion_operator#6025807300888085665.f3ee34cea9ff5d10407119d4b377adc2_7" ; -"branch_div1#conversion_operator#6025807300888085665.f3ee34cea9ff5d10407119d4b377adc2_6" [label="6: Prune (true branch, if) \n PRUNE(n$5, true); [line 65, column 7]\n " shape="invhouse"] +"branch_div1#conversion_operator#6025807300888085665.f3ee34cea9ff5d10407119d4b377adc2_6" [label="6: Prune (true branch, if) \n PRUNE(n$6, true); [line 65, column 7]\n " shape="invhouse"] "branch_div1#conversion_operator#6025807300888085665.f3ee34cea9ff5d10407119d4b377adc2_6" -> "branch_div1#conversion_operator#6025807300888085665.f3ee34cea9ff5d10407119d4b377adc2_9" ; -"branch_div1#conversion_operator#6025807300888085665.f3ee34cea9ff5d10407119d4b377adc2_7" [label="7: Prune (false branch, if) \n PRUNE(!n$5, false); [line 65, column 7]\n " shape="invhouse"] +"branch_div1#conversion_operator#6025807300888085665.f3ee34cea9ff5d10407119d4b377adc2_7" [label="7: Prune (false branch, if) \n PRUNE(!n$6, false); [line 65, column 7]\n " shape="invhouse"] "branch_div1#conversion_operator#6025807300888085665.f3ee34cea9ff5d10407119d4b377adc2_7" -> "branch_div1#conversion_operator#6025807300888085665.f3ee34cea9ff5d10407119d4b377adc2_4" ; -"branch_div1#conversion_operator#6025807300888085665.f3ee34cea9ff5d10407119d4b377adc2_8" [label="8: Return Stmt \n n$6=*&v:int [line 67, column 16]\n *&return:int=(1 / n$6) [line 67, column 5]\n _=*&x:conversion_operator::X [line 67, column 16]\n n$8=_fun_conversion_operator::X_~X(&x:conversion_operator::X*) [line 67, column 16]\n " shape="box"] +"branch_div1#conversion_operator#6025807300888085665.f3ee34cea9ff5d10407119d4b377adc2_8" [label="8: Return Stmt \n n$7=*&v:int [line 67, column 16]\n *&return:int=(1 / n$7) [line 67, column 5]\n _=*&x:conversion_operator::X [line 67, column 16]\n n$9=_fun_conversion_operator::X_~X(&x:conversion_operator::X*) [line 67, column 16]\n " shape="box"] "branch_div1#conversion_operator#6025807300888085665.f3ee34cea9ff5d10407119d4b377adc2_8" -> "branch_div1#conversion_operator#6025807300888085665.f3ee34cea9ff5d10407119d4b377adc2_2" ; -"branch_div1#conversion_operator#6025807300888085665.f3ee34cea9ff5d10407119d4b377adc2_9" [label="9: DeclStmt \n _=*&x:conversion_operator::X [line 66, column 13]\n n$10=_fun_conversion_operator::X_operator_int(&x:conversion_operator::X&) [line 66, column 13]\n *&v:int=n$10 [line 66, column 5]\n " shape="box"] +"branch_div1#conversion_operator#6025807300888085665.f3ee34cea9ff5d10407119d4b377adc2_9" [label="9: DeclStmt \n _=*&x:conversion_operator::X [line 66, column 13]\n n$12=_fun_conversion_operator::X_operator_int(&x:conversion_operator::X&) [line 66, column 13]\n *&v:int=n$12 [line 66, column 5]\n " shape="box"] "branch_div1#conversion_operator#6025807300888085665.f3ee34cea9ff5d10407119d4b377adc2_9" -> "branch_div1#conversion_operator#6025807300888085665.f3ee34cea9ff5d10407119d4b377adc2_8" ; -"branch_div1#conversion_operator#6025807300888085665.f3ee34cea9ff5d10407119d4b377adc2_10" [label="10: DeclStmt \n n$11=_fun_conversion_operator::X_X(&x:conversion_operator::X*,1:int,1:_Bool) [line 64, column 5]\n " shape="box"] +"branch_div1#conversion_operator#6025807300888085665.f3ee34cea9ff5d10407119d4b377adc2_10" [label="10: DeclStmt \n n$15=_fun_conversion_operator::X_X(&x:conversion_operator::X*,1:int,1:_Bool) [line 64, column 5]\n " shape="box"] "branch_div1#conversion_operator#6025807300888085665.f3ee34cea9ff5d10407119d4b377adc2_10" -> "branch_div1#conversion_operator#6025807300888085665.f3ee34cea9ff5d10407119d4b377adc2_5" ; @@ -95,39 +95,39 @@ digraph cfg { "branch_no_div#conversion_operator#18429458682592639842.4c7cf0cc20989fd2ea431840e11b2521_4" -> "branch_no_div#conversion_operator#18429458682592639842.4c7cf0cc20989fd2ea431840e11b2521_3" ; -"branch_no_div#conversion_operator#18429458682592639842.4c7cf0cc20989fd2ea431840e11b2521_5" [label="5: Call _fun_conversion_operator::X_operator_bool \n _=*&x:conversion_operator::X [line 56, column 7]\n n$5=_fun_conversion_operator::X_operator_bool(&x:conversion_operator::X&) [line 56, column 7]\n " shape="box"] +"branch_no_div#conversion_operator#18429458682592639842.4c7cf0cc20989fd2ea431840e11b2521_5" [label="5: Call _fun_conversion_operator::X_operator_bool \n _=*&x:conversion_operator::X [line 56, column 7]\n n$6=_fun_conversion_operator::X_operator_bool(&x:conversion_operator::X&) [line 56, column 7]\n " shape="box"] "branch_no_div#conversion_operator#18429458682592639842.4c7cf0cc20989fd2ea431840e11b2521_5" -> "branch_no_div#conversion_operator#18429458682592639842.4c7cf0cc20989fd2ea431840e11b2521_6" ; "branch_no_div#conversion_operator#18429458682592639842.4c7cf0cc20989fd2ea431840e11b2521_5" -> "branch_no_div#conversion_operator#18429458682592639842.4c7cf0cc20989fd2ea431840e11b2521_7" ; -"branch_no_div#conversion_operator#18429458682592639842.4c7cf0cc20989fd2ea431840e11b2521_6" [label="6: Prune (true branch, if) \n PRUNE(n$5, true); [line 56, column 7]\n " shape="invhouse"] +"branch_no_div#conversion_operator#18429458682592639842.4c7cf0cc20989fd2ea431840e11b2521_6" [label="6: Prune (true branch, if) \n PRUNE(n$6, true); [line 56, column 7]\n " shape="invhouse"] "branch_no_div#conversion_operator#18429458682592639842.4c7cf0cc20989fd2ea431840e11b2521_6" -> "branch_no_div#conversion_operator#18429458682592639842.4c7cf0cc20989fd2ea431840e11b2521_9" ; -"branch_no_div#conversion_operator#18429458682592639842.4c7cf0cc20989fd2ea431840e11b2521_7" [label="7: Prune (false branch, if) \n PRUNE(!n$5, false); [line 56, column 7]\n " shape="invhouse"] +"branch_no_div#conversion_operator#18429458682592639842.4c7cf0cc20989fd2ea431840e11b2521_7" [label="7: Prune (false branch, if) \n PRUNE(!n$6, false); [line 56, column 7]\n " shape="invhouse"] "branch_no_div#conversion_operator#18429458682592639842.4c7cf0cc20989fd2ea431840e11b2521_7" -> "branch_no_div#conversion_operator#18429458682592639842.4c7cf0cc20989fd2ea431840e11b2521_4" ; -"branch_no_div#conversion_operator#18429458682592639842.4c7cf0cc20989fd2ea431840e11b2521_8" [label="8: Return Stmt \n n$6=*&v:int [line 58, column 16]\n *&return:int=(1 / n$6) [line 58, column 5]\n _=*&x:conversion_operator::X [line 58, column 16]\n n$8=_fun_conversion_operator::X_~X(&x:conversion_operator::X*) [line 58, column 16]\n " shape="box"] +"branch_no_div#conversion_operator#18429458682592639842.4c7cf0cc20989fd2ea431840e11b2521_8" [label="8: Return Stmt \n n$7=*&v:int [line 58, column 16]\n *&return:int=(1 / n$7) [line 58, column 5]\n _=*&x:conversion_operator::X [line 58, column 16]\n n$9=_fun_conversion_operator::X_~X(&x:conversion_operator::X*) [line 58, column 16]\n " shape="box"] "branch_no_div#conversion_operator#18429458682592639842.4c7cf0cc20989fd2ea431840e11b2521_8" -> "branch_no_div#conversion_operator#18429458682592639842.4c7cf0cc20989fd2ea431840e11b2521_2" ; -"branch_no_div#conversion_operator#18429458682592639842.4c7cf0cc20989fd2ea431840e11b2521_9" [label="9: DeclStmt \n _=*&x:conversion_operator::X [line 57, column 13]\n n$10=_fun_conversion_operator::X_operator_int(&x:conversion_operator::X&) [line 57, column 13]\n *&v:int=n$10 [line 57, column 5]\n " shape="box"] +"branch_no_div#conversion_operator#18429458682592639842.4c7cf0cc20989fd2ea431840e11b2521_9" [label="9: DeclStmt \n _=*&x:conversion_operator::X [line 57, column 13]\n n$12=_fun_conversion_operator::X_operator_int(&x:conversion_operator::X&) [line 57, column 13]\n *&v:int=n$12 [line 57, column 5]\n " shape="box"] "branch_no_div#conversion_operator#18429458682592639842.4c7cf0cc20989fd2ea431840e11b2521_9" -> "branch_no_div#conversion_operator#18429458682592639842.4c7cf0cc20989fd2ea431840e11b2521_8" ; -"branch_no_div#conversion_operator#18429458682592639842.4c7cf0cc20989fd2ea431840e11b2521_10" [label="10: DeclStmt \n n$11=_fun_conversion_operator::X_X(&x:conversion_operator::X*,0:int,0:_Bool) [line 55, column 5]\n " shape="box"] +"branch_no_div#conversion_operator#18429458682592639842.4c7cf0cc20989fd2ea431840e11b2521_10" [label="10: DeclStmt \n n$15=_fun_conversion_operator::X_X(&x:conversion_operator::X*,0:int,0:_Bool) [line 55, column 5]\n " shape="box"] "branch_no_div#conversion_operator#18429458682592639842.4c7cf0cc20989fd2ea431840e11b2521_10" -> "branch_no_div#conversion_operator#18429458682592639842.4c7cf0cc20989fd2ea431840e11b2521_5" ; -"y_branch_div0#conversion_operator#7606471872775172252.4a93f184f35976e9e7dc6663bc4d47a2_1" [label="1: Start conversion_operator::y_branch_div0\nFormals: \nLocals: 0$?%__sil_tmp__temp_construct_n$0:conversion_operator::X 0$?%__sil_tmpSIL_materialize_temp__n$1:conversion_operator::X 0$?%__sil_tmp__temp_construct_n$7:conversion_operator::X 0$?%__sil_tmpSIL_materialize_temp__n$8:conversion_operator::X v:int 0$?%__sil_tmp__temp_construct_n$15:conversion_operator::X 0$?%__sil_tmpSIL_materialize_temp__n$16:conversion_operator::X y:conversion_operator::Y \n DECLARE_LOCALS(&return,&0$?%__sil_tmp__temp_construct_n$0,&0$?%__sil_tmpSIL_materialize_temp__n$1,&0$?%__sil_tmp__temp_construct_n$7,&0$?%__sil_tmpSIL_materialize_temp__n$8,&v,&0$?%__sil_tmp__temp_construct_n$15,&0$?%__sil_tmpSIL_materialize_temp__n$16,&y); [line 43, column 1]\n " color=yellow style=filled] +"y_branch_div0#conversion_operator#7606471872775172252.4a93f184f35976e9e7dc6663bc4d47a2_1" [label="1: Start conversion_operator::y_branch_div0\nFormals: \nLocals: 0$?%__sil_tmp__temp_construct_n$0:conversion_operator::X 0$?%__sil_tmpSIL_materialize_temp__n$1:conversion_operator::X const 0$?%__sil_tmp__temp_construct_n$8:conversion_operator::X 0$?%__sil_tmpSIL_materialize_temp__n$9:conversion_operator::X const v:int 0$?%__sil_tmp__temp_construct_n$17:conversion_operator::X 0$?%__sil_tmpSIL_materialize_temp__n$18:conversion_operator::X const y:conversion_operator::Y \n DECLARE_LOCALS(&return,&0$?%__sil_tmp__temp_construct_n$0,&0$?%__sil_tmpSIL_materialize_temp__n$1,&0$?%__sil_tmp__temp_construct_n$8,&0$?%__sil_tmpSIL_materialize_temp__n$9,&v,&0$?%__sil_tmp__temp_construct_n$17,&0$?%__sil_tmpSIL_materialize_temp__n$18,&y); [line 43, column 1]\n " color=yellow style=filled] "y_branch_div0#conversion_operator#7606471872775172252.4a93f184f35976e9e7dc6663bc4d47a2_1" -> "y_branch_div0#conversion_operator#7606471872775172252.4a93f184f35976e9e7dc6663bc4d47a2_12" ; "y_branch_div0#conversion_operator#7606471872775172252.4a93f184f35976e9e7dc6663bc4d47a2_2" [label="2: Exit conversion_operator::y_branch_div0 \n " color=yellow style=filled] -"y_branch_div0#conversion_operator#7606471872775172252.4a93f184f35976e9e7dc6663bc4d47a2_3" [label="3: Return Stmt \n _=*&y:conversion_operator::Y [line 51, column 13]\n n$4=_fun_conversion_operator::Y_operator_X(&y:conversion_operator::Y&,&0$?%__sil_tmpSIL_materialize_temp__n$1:conversion_operator::X*) [line 51, column 13]\n n$5=_fun_conversion_operator::X_X(&0$?%__sil_tmp__temp_construct_n$0:conversion_operator::X*,&0$?%__sil_tmpSIL_materialize_temp__n$1:conversion_operator::X&) [line 51, column 10]\n n$6=_fun_conversion_operator::X_operator_int(&0$?%__sil_tmp__temp_construct_n$0:conversion_operator::X&) [line 51, column 10]\n *&return:int=n$6 [line 51, column 3]\n " shape="box"] +"y_branch_div0#conversion_operator#7606471872775172252.4a93f184f35976e9e7dc6663bc4d47a2_3" [label="3: Return Stmt \n _=*&y:conversion_operator::Y [line 51, column 13]\n n$4=_fun_conversion_operator::Y_operator_X(&y:conversion_operator::Y&,&0$?%__sil_tmpSIL_materialize_temp__n$1:conversion_operator::X*) [line 51, column 13]\n n$5=_fun_conversion_operator::X_X(&0$?%__sil_tmp__temp_construct_n$0:conversion_operator::X*,&0$?%__sil_tmpSIL_materialize_temp__n$1:conversion_operator::X const &) [line 51, column 10]\n n$6=_fun_conversion_operator::X_operator_int(&0$?%__sil_tmp__temp_construct_n$0:conversion_operator::X&) [line 51, column 10]\n *&return:int=n$6 [line 51, column 3]\n " shape="box"] "y_branch_div0#conversion_operator#7606471872775172252.4a93f184f35976e9e7dc6663bc4d47a2_3" -> "y_branch_div0#conversion_operator#7606471872775172252.4a93f184f35976e9e7dc6663bc4d47a2_2" ; @@ -135,24 +135,24 @@ digraph cfg { "y_branch_div0#conversion_operator#7606471872775172252.4a93f184f35976e9e7dc6663bc4d47a2_4" -> "y_branch_div0#conversion_operator#7606471872775172252.4a93f184f35976e9e7dc6663bc4d47a2_3" ; -"y_branch_div0#conversion_operator#7606471872775172252.4a93f184f35976e9e7dc6663bc4d47a2_5" [label="5: Call _fun_conversion_operator::X_operator_bool \n _=*&y:conversion_operator::Y [line 47, column 10]\n n$11=_fun_conversion_operator::Y_operator_X(&y:conversion_operator::Y&,&0$?%__sil_tmpSIL_materialize_temp__n$8:conversion_operator::X*) [line 47, column 10]\n n$12=_fun_conversion_operator::X_X(&0$?%__sil_tmp__temp_construct_n$7:conversion_operator::X*,&0$?%__sil_tmpSIL_materialize_temp__n$8:conversion_operator::X&) [line 47, column 7]\n n$13=_fun_conversion_operator::X_operator_bool(&0$?%__sil_tmp__temp_construct_n$7:conversion_operator::X&) [line 47, column 7]\n " shape="box"] +"y_branch_div0#conversion_operator#7606471872775172252.4a93f184f35976e9e7dc6663bc4d47a2_5" [label="5: Call _fun_conversion_operator::X_operator_bool \n _=*&y:conversion_operator::Y [line 47, column 10]\n n$12=_fun_conversion_operator::Y_operator_X(&y:conversion_operator::Y&,&0$?%__sil_tmpSIL_materialize_temp__n$9:conversion_operator::X*) [line 47, column 10]\n n$13=_fun_conversion_operator::X_X(&0$?%__sil_tmp__temp_construct_n$8:conversion_operator::X*,&0$?%__sil_tmpSIL_materialize_temp__n$9:conversion_operator::X const &) [line 47, column 7]\n n$14=_fun_conversion_operator::X_operator_bool(&0$?%__sil_tmp__temp_construct_n$8:conversion_operator::X&) [line 47, column 7]\n " shape="box"] "y_branch_div0#conversion_operator#7606471872775172252.4a93f184f35976e9e7dc6663bc4d47a2_5" -> "y_branch_div0#conversion_operator#7606471872775172252.4a93f184f35976e9e7dc6663bc4d47a2_6" ; "y_branch_div0#conversion_operator#7606471872775172252.4a93f184f35976e9e7dc6663bc4d47a2_5" -> "y_branch_div0#conversion_operator#7606471872775172252.4a93f184f35976e9e7dc6663bc4d47a2_7" ; -"y_branch_div0#conversion_operator#7606471872775172252.4a93f184f35976e9e7dc6663bc4d47a2_6" [label="6: Prune (true branch, if) \n PRUNE(n$13, true); [line 47, column 7]\n " shape="invhouse"] +"y_branch_div0#conversion_operator#7606471872775172252.4a93f184f35976e9e7dc6663bc4d47a2_6" [label="6: Prune (true branch, if) \n PRUNE(n$14, true); [line 47, column 7]\n " shape="invhouse"] "y_branch_div0#conversion_operator#7606471872775172252.4a93f184f35976e9e7dc6663bc4d47a2_6" -> "y_branch_div0#conversion_operator#7606471872775172252.4a93f184f35976e9e7dc6663bc4d47a2_9" ; -"y_branch_div0#conversion_operator#7606471872775172252.4a93f184f35976e9e7dc6663bc4d47a2_7" [label="7: Prune (false branch, if) \n PRUNE(!n$13, false); [line 47, column 7]\n " shape="invhouse"] +"y_branch_div0#conversion_operator#7606471872775172252.4a93f184f35976e9e7dc6663bc4d47a2_7" [label="7: Prune (false branch, if) \n PRUNE(!n$14, false); [line 47, column 7]\n " shape="invhouse"] "y_branch_div0#conversion_operator#7606471872775172252.4a93f184f35976e9e7dc6663bc4d47a2_7" -> "y_branch_div0#conversion_operator#7606471872775172252.4a93f184f35976e9e7dc6663bc4d47a2_4" ; -"y_branch_div0#conversion_operator#7606471872775172252.4a93f184f35976e9e7dc6663bc4d47a2_8" [label="8: Return Stmt \n n$14=*&v:int [line 49, column 16]\n *&return:int=(1 / n$14) [line 49, column 5]\n " shape="box"] +"y_branch_div0#conversion_operator#7606471872775172252.4a93f184f35976e9e7dc6663bc4d47a2_8" [label="8: Return Stmt \n n$15=*&v:int [line 49, column 16]\n *&return:int=(1 / n$15) [line 49, column 5]\n " shape="box"] "y_branch_div0#conversion_operator#7606471872775172252.4a93f184f35976e9e7dc6663bc4d47a2_8" -> "y_branch_div0#conversion_operator#7606471872775172252.4a93f184f35976e9e7dc6663bc4d47a2_2" ; -"y_branch_div0#conversion_operator#7606471872775172252.4a93f184f35976e9e7dc6663bc4d47a2_9" [label="9: DeclStmt \n _=*&y:conversion_operator::Y [line 48, column 16]\n n$19=_fun_conversion_operator::Y_operator_X(&y:conversion_operator::Y&,&0$?%__sil_tmpSIL_materialize_temp__n$16:conversion_operator::X*) [line 48, column 16]\n n$20=_fun_conversion_operator::X_X(&0$?%__sil_tmp__temp_construct_n$15:conversion_operator::X*,&0$?%__sil_tmpSIL_materialize_temp__n$16:conversion_operator::X&) [line 48, column 13]\n n$21=_fun_conversion_operator::X_operator_int(&0$?%__sil_tmp__temp_construct_n$15:conversion_operator::X&) [line 48, column 13]\n *&v:int=n$21 [line 48, column 5]\n " shape="box"] +"y_branch_div0#conversion_operator#7606471872775172252.4a93f184f35976e9e7dc6663bc4d47a2_9" [label="9: DeclStmt \n _=*&y:conversion_operator::Y [line 48, column 16]\n n$21=_fun_conversion_operator::Y_operator_X(&y:conversion_operator::Y&,&0$?%__sil_tmpSIL_materialize_temp__n$18:conversion_operator::X*) [line 48, column 16]\n n$22=_fun_conversion_operator::X_X(&0$?%__sil_tmp__temp_construct_n$17:conversion_operator::X*,&0$?%__sil_tmpSIL_materialize_temp__n$18:conversion_operator::X const &) [line 48, column 13]\n n$23=_fun_conversion_operator::X_operator_int(&0$?%__sil_tmp__temp_construct_n$17:conversion_operator::X&) [line 48, column 13]\n *&v:int=n$23 [line 48, column 5]\n " shape="box"] "y_branch_div0#conversion_operator#7606471872775172252.4a93f184f35976e9e7dc6663bc4d47a2_9" -> "y_branch_div0#conversion_operator#7606471872775172252.4a93f184f35976e9e7dc6663bc4d47a2_8" ; @@ -164,7 +164,7 @@ digraph cfg { "y_branch_div0#conversion_operator#7606471872775172252.4a93f184f35976e9e7dc6663bc4d47a2_11" -> "y_branch_div0#conversion_operator#7606471872775172252.4a93f184f35976e9e7dc6663bc4d47a2_10" ; -"y_branch_div0#conversion_operator#7606471872775172252.4a93f184f35976e9e7dc6663bc4d47a2_12" [label="12: DeclStmt \n n$22=_fun_conversion_operator::Y_Y(&y:conversion_operator::Y*) [line 44, column 5]\n " shape="box"] +"y_branch_div0#conversion_operator#7606471872775172252.4a93f184f35976e9e7dc6663bc4d47a2_12" [label="12: DeclStmt \n n$26=_fun_conversion_operator::Y_Y(&y:conversion_operator::Y*) [line 44, column 5]\n " shape="box"] "y_branch_div0#conversion_operator#7606471872775172252.4a93f184f35976e9e7dc6663bc4d47a2_12" -> "y_branch_div0#conversion_operator#7606471872775172252.4a93f184f35976e9e7dc6663bc4d47a2_11" ; @@ -175,11 +175,11 @@ digraph cfg { "X#X#conversion_operator#{10042806963993343440}.3443e3517905e53c0b3c27c57963d3c9_2" [label="2: Exit conversion_operator::X_X \n " color=yellow style=filled] -"X#X#conversion_operator#{10042806963993343440}.3443e3517905e53c0b3c27c57963d3c9_3" [label="3: BinaryOperatorStmt: Assign \n n$0=*&this:conversion_operator::X* [line 23, column 5]\n n$1=*&x:conversion_operator::X const & [line 23, column 10]\n n$2=*n$1.b_:_Bool [line 23, column 10]\n *n$0.b_:_Bool=n$2 [line 23, column 5]\n " shape="box"] +"X#X#conversion_operator#{10042806963993343440}.3443e3517905e53c0b3c27c57963d3c9_3" [label="3: BinaryOperatorStmt: Assign \n n$1=*&this:conversion_operator::X* [line 23, column 5]\n n$2=*&x:conversion_operator::X const & [line 23, column 10]\n n$3=*n$2.b_:_Bool [line 23, column 10]\n *n$1.b_:_Bool=n$3 [line 23, column 5]\n " shape="box"] "X#X#conversion_operator#{10042806963993343440}.3443e3517905e53c0b3c27c57963d3c9_3" -> "X#X#conversion_operator#{10042806963993343440}.3443e3517905e53c0b3c27c57963d3c9_2" ; -"X#X#conversion_operator#{10042806963993343440}.3443e3517905e53c0b3c27c57963d3c9_4" [label="4: BinaryOperatorStmt: Assign \n n$3=*&this:conversion_operator::X* [line 22, column 5]\n n$4=*&x:conversion_operator::X const & [line 22, column 10]\n n$5=*n$4.f_:int [line 22, column 10]\n *n$3.f_:int=n$5 [line 22, column 5]\n " shape="box"] +"X#X#conversion_operator#{10042806963993343440}.3443e3517905e53c0b3c27c57963d3c9_4" [label="4: BinaryOperatorStmt: Assign \n n$4=*&this:conversion_operator::X* [line 22, column 5]\n n$5=*&x:conversion_operator::X const & [line 22, column 10]\n n$6=*n$5.f_:int [line 22, column 10]\n *n$4.f_:int=n$6 [line 22, column 5]\n " shape="box"] "X#X#conversion_operator#{10042806963993343440}.3443e3517905e53c0b3c27c57963d3c9_4" -> "X#X#conversion_operator#{10042806963993343440}.3443e3517905e53c0b3c27c57963d3c9_3" ; @@ -190,11 +190,11 @@ digraph cfg { "X#X#conversion_operator#{3369558305026158368}.bef059c92c6377f62516e101c1177cad_2" [label="2: Exit conversion_operator::X_X \n " color=yellow style=filled] -"X#X#conversion_operator#{3369558305026158368}.bef059c92c6377f62516e101c1177cad_3" [label="3: BinaryOperatorStmt: Assign \n n$0=*&this:conversion_operator::X* [line 19, column 5]\n n$1=*&b:_Bool [line 19, column 10]\n *n$0.b_:_Bool=n$1 [line 19, column 5]\n " shape="box"] +"X#X#conversion_operator#{3369558305026158368}.bef059c92c6377f62516e101c1177cad_3" [label="3: BinaryOperatorStmt: Assign \n n$1=*&this:conversion_operator::X* [line 19, column 5]\n n$2=*&b:_Bool [line 19, column 10]\n *n$1.b_:_Bool=n$2 [line 19, column 5]\n " shape="box"] "X#X#conversion_operator#{3369558305026158368}.bef059c92c6377f62516e101c1177cad_3" -> "X#X#conversion_operator#{3369558305026158368}.bef059c92c6377f62516e101c1177cad_2" ; -"X#X#conversion_operator#{3369558305026158368}.bef059c92c6377f62516e101c1177cad_4" [label="4: BinaryOperatorStmt: Assign \n n$2=*&this:conversion_operator::X* [line 18, column 5]\n n$3=*&f:int [line 18, column 10]\n *n$2.f_:int=n$3 [line 18, column 5]\n " shape="box"] +"X#X#conversion_operator#{3369558305026158368}.bef059c92c6377f62516e101c1177cad_4" [label="4: BinaryOperatorStmt: Assign \n n$3=*&this:conversion_operator::X* [line 18, column 5]\n n$4=*&f:int [line 18, column 10]\n *n$3.f_:int=n$4 [line 18, column 5]\n " shape="box"] "X#X#conversion_operator#{3369558305026158368}.bef059c92c6377f62516e101c1177cad_4" -> "X#X#conversion_operator#{3369558305026158368}.bef059c92c6377f62516e101c1177cad_3" ; diff --git a/infer/tests/codetoanalyze/cpp/shared/methods/default_parameters.cpp.dot b/infer/tests/codetoanalyze/cpp/shared/methods/default_parameters.cpp.dot index 558a4bf68..50a83ef22 100644 --- a/infer/tests/codetoanalyze/cpp/shared/methods/default_parameters.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/shared/methods/default_parameters.cpp.dot @@ -7,15 +7,15 @@ digraph cfg { "call_method_with_default_parameters#7436997991634263214.eaaed1a0020d12e677ebd0f9049f2e4a_2" [label="2: Exit call_method_with_default_parameters \n " color=yellow style=filled] -"call_method_with_default_parameters#7436997991634263214.eaaed1a0020d12e677ebd0f9049f2e4a_3" [label="3: Call _fun_A_fun_default \n n$0=*&a_ptr:A* [line 20, column 3]\n _=*n$0:A [line 20, column 3]\n n$2=_fun_A_fun_default(n$0:A*,1:int,10:int,20:int) [line 20, column 3]\n " shape="box"] +"call_method_with_default_parameters#7436997991634263214.eaaed1a0020d12e677ebd0f9049f2e4a_3" [label="3: Call _fun_A_fun_default \n n$1=*&a_ptr:A* [line 20, column 3]\n _=*n$1:A [line 20, column 3]\n n$3=_fun_A_fun_default(n$1:A*,1:int,10:int,20:int) [line 20, column 3]\n " shape="box"] "call_method_with_default_parameters#7436997991634263214.eaaed1a0020d12e677ebd0f9049f2e4a_3" -> "call_method_with_default_parameters#7436997991634263214.eaaed1a0020d12e677ebd0f9049f2e4a_2" ; -"call_method_with_default_parameters#7436997991634263214.eaaed1a0020d12e677ebd0f9049f2e4a_4" [label="4: Call _fun_A_fun_default \n n$3=*&a_ptr:A* [line 19, column 3]\n _=*n$3:A [line 19, column 3]\n n$5=_fun_A_fun_default(n$3:A*,1:int,2:int,20:int) [line 19, column 3]\n " shape="box"] +"call_method_with_default_parameters#7436997991634263214.eaaed1a0020d12e677ebd0f9049f2e4a_4" [label="4: Call _fun_A_fun_default \n n$4=*&a_ptr:A* [line 19, column 3]\n _=*n$4:A [line 19, column 3]\n n$6=_fun_A_fun_default(n$4:A*,1:int,2:int,20:int) [line 19, column 3]\n " shape="box"] "call_method_with_default_parameters#7436997991634263214.eaaed1a0020d12e677ebd0f9049f2e4a_4" -> "call_method_with_default_parameters#7436997991634263214.eaaed1a0020d12e677ebd0f9049f2e4a_3" ; -"call_method_with_default_parameters#7436997991634263214.eaaed1a0020d12e677ebd0f9049f2e4a_5" [label="5: Call _fun_A_fun_default \n n$6=*&a_ptr:A* [line 18, column 3]\n _=*n$6:A [line 18, column 3]\n n$8=_fun_A_fun_default(n$6:A*,1:int,2:int,3:int) [line 18, column 3]\n " shape="box"] +"call_method_with_default_parameters#7436997991634263214.eaaed1a0020d12e677ebd0f9049f2e4a_5" [label="5: Call _fun_A_fun_default \n n$7=*&a_ptr:A* [line 18, column 3]\n _=*n$7:A [line 18, column 3]\n n$9=_fun_A_fun_default(n$7:A*,1:int,2:int,3:int) [line 18, column 3]\n " shape="box"] "call_method_with_default_parameters#7436997991634263214.eaaed1a0020d12e677ebd0f9049f2e4a_5" -> "call_method_with_default_parameters#7436997991634263214.eaaed1a0020d12e677ebd0f9049f2e4a_4" ; diff --git a/infer/tests/codetoanalyze/cpp/shared/methods/dereference_this.cpp.dot b/infer/tests/codetoanalyze/cpp/shared/methods/dereference_this.cpp.dot index 7cfa77d22..34c5e2909 100644 --- a/infer/tests/codetoanalyze/cpp/shared/methods/dereference_this.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/shared/methods/dereference_this.cpp.dot @@ -7,7 +7,7 @@ digraph cfg { "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_2" [label="2: Exit test \n " color=yellow style=filled] -"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_3" [label="3: Call _fun_A_method \n n$0=*&a_ptr:A* [line 25, column 3]\n _=*n$0:A [line 25, column 3]\n n$2=_fun_A_method(n$0:A*) [line 25, column 3]\n " shape="box"] +"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_3" [label="3: Call _fun_A_method \n n$1=*&a_ptr:A* [line 25, column 3]\n _=*n$1:A [line 25, column 3]\n n$3=_fun_A_method(n$1:A*) [line 25, column 3]\n " shape="box"] "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_3" -> "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_2" ; @@ -18,7 +18,7 @@ digraph cfg { "init#A#(11888841587519675340).79bf6a1702f6a90708acc2d560532750_2" [label="2: Exit A_init \n " color=yellow style=filled] -"init#A#(11888841587519675340).79bf6a1702f6a90708acc2d560532750_3" [label="3: BinaryOperatorStmt: Assign \n n$0=*&this:A* [line 14, column 24]\n n$1=*&val:int [line 14, column 32]\n *n$0.field:int=n$1 [line 14, column 24]\n " shape="box"] +"init#A#(11888841587519675340).79bf6a1702f6a90708acc2d560532750_3" [label="3: BinaryOperatorStmt: Assign \n n$1=*&this:A* [line 14, column 24]\n n$2=*&val:int [line 14, column 32]\n *n$1.field:int=n$2 [line 14, column 24]\n " shape="box"] "init#A#(11888841587519675340).79bf6a1702f6a90708acc2d560532750_3" -> "init#A#(11888841587519675340).79bf6a1702f6a90708acc2d560532750_2" ; @@ -33,7 +33,7 @@ digraph cfg { "method#A#(5340410962252776012).be8cb65bc6e38d687825fbc80265a66c_3" -> "method#A#(5340410962252776012).be8cb65bc6e38d687825fbc80265a66c_2" ; -"method#A#(5340410962252776012).be8cb65bc6e38d687825fbc80265a66c_4" [label="4: Call _fun_A_init \n n$2=*&this:A* [line 19, column 3]\n _=*n$2:A [line 19, column 3]\n n$4=_fun_A_init(n$2:A*,10:int) [line 19, column 3]\n " shape="box"] +"method#A#(5340410962252776012).be8cb65bc6e38d687825fbc80265a66c_4" [label="4: Call _fun_A_init \n n$3=*&this:A* [line 19, column 3]\n _=*n$3:A [line 19, column 3]\n n$5=_fun_A_init(n$3:A*,10:int) [line 19, column 3]\n " shape="box"] "method#A#(5340410962252776012).be8cb65bc6e38d687825fbc80265a66c_4" -> "method#A#(5340410962252776012).be8cb65bc6e38d687825fbc80265a66c_3" ; diff --git a/infer/tests/codetoanalyze/cpp/shared/methods/inline_method.cpp.dot b/infer/tests/codetoanalyze/cpp/shared/methods/inline_method.cpp.dot index 570c2f140..a0125f4d5 100644 --- a/infer/tests/codetoanalyze/cpp/shared/methods/inline_method.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/shared/methods/inline_method.cpp.dot @@ -7,11 +7,11 @@ digraph cfg { "test_call#15378839304774239070.15b3496769d2a65d506975ce94efc03a_2" [label="2: Exit test_call \n " color=yellow style=filled] -"test_call#15378839304774239070.15b3496769d2a65d506975ce94efc03a_3" [label="3: Call _fun_A::AIn_fun \n n$0=*&a_ptr:A* [line 26, column 3]\n n$1=*n$0.in:A::AIn* [line 26, column 3]\n _=*n$1:A::AIn [line 26, column 3]\n n$3=_fun_A::AIn_fun(n$1:A::AIn*) [line 26, column 3]\n " shape="box"] +"test_call#15378839304774239070.15b3496769d2a65d506975ce94efc03a_3" [label="3: Call _fun_A::AIn_fun \n n$1=*&a_ptr:A* [line 26, column 3]\n n$2=*n$1.in:A::AIn* [line 26, column 3]\n _=*n$2:A::AIn [line 26, column 3]\n n$4=_fun_A::AIn_fun(n$2:A::AIn*) [line 26, column 3]\n " shape="box"] "test_call#15378839304774239070.15b3496769d2a65d506975ce94efc03a_3" -> "test_call#15378839304774239070.15b3496769d2a65d506975ce94efc03a_2" ; -"test_call#15378839304774239070.15b3496769d2a65d506975ce94efc03a_4" [label="4: Call _fun_A_fun \n n$4=*&a_ptr:A* [line 25, column 3]\n _=*n$4:A [line 25, column 3]\n n$6=_fun_A_fun(n$4:A*) [line 25, column 3]\n " shape="box"] +"test_call#15378839304774239070.15b3496769d2a65d506975ce94efc03a_4" [label="4: Call _fun_A_fun \n n$5=*&a_ptr:A* [line 25, column 3]\n _=*n$5:A [line 25, column 3]\n n$7=_fun_A_fun(n$5:A*) [line 25, column 3]\n " shape="box"] "test_call#15378839304774239070.15b3496769d2a65d506975ce94efc03a_4" -> "test_call#15378839304774239070.15b3496769d2a65d506975ce94efc03a_3" ; diff --git a/infer/tests/codetoanalyze/cpp/shared/methods/overloading.cpp.dot b/infer/tests/codetoanalyze/cpp/shared/methods/overloading.cpp.dot index d49a9fc41..dd0ad1f43 100644 --- a/infer/tests/codetoanalyze/cpp/shared/methods/overloading.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/shared/methods/overloading.cpp.dot @@ -7,11 +7,11 @@ digraph cfg { "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_2" [label="2: Exit test \n " color=yellow style=filled] -"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_3" [label="3: Call _fun_A_fun \n n$0=*&a_ptr:A* [line 24, column 3]\n _=*n$0:A [line 24, column 3]\n n$2=_fun_A_fun(n$0:A*,1:int,2:int,3:int) [line 24, column 3]\n " shape="box"] +"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_3" [label="3: Call _fun_A_fun \n n$1=*&a_ptr:A* [line 24, column 3]\n _=*n$1:A [line 24, column 3]\n n$3=_fun_A_fun(n$1:A*,1:int,2:int,3:int) [line 24, column 3]\n " shape="box"] "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_3" -> "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_2" ; -"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_4" [label="4: Call _fun_A_fun \n n$3=*&a_ptr:A* [line 23, column 3]\n _=*n$3:A [line 23, column 3]\n n$5=_fun_A_fun(n$3:A*,1:int,2:int) [line 23, column 3]\n " shape="box"] +"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_4" [label="4: Call _fun_A_fun \n n$4=*&a_ptr:A* [line 23, column 3]\n _=*n$4:A [line 23, column 3]\n n$6=_fun_A_fun(n$4:A*,1:int,2:int) [line 23, column 3]\n " shape="box"] "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_4" -> "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_3" ; diff --git a/infer/tests/codetoanalyze/cpp/shared/methods/return_struct.cpp.dot b/infer/tests/codetoanalyze/cpp/shared/methods/return_struct.cpp.dot index ca248c9b6..23b967fdb 100644 --- a/infer/tests/codetoanalyze/cpp/shared/methods/return_struct.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/shared/methods/return_struct.cpp.dot @@ -1,6 +1,6 @@ /* @generated */ digraph cfg { -"test#14183353284361723530.9ab958283f2da536d334b673bc9197cb_1" [label="1: Start test\nFormals: a:A*\nLocals: x:X 0$?%__sil_tmpSIL_materialize_temp__n$3:X \n DECLARE_LOCALS(&return,&x,&0$?%__sil_tmpSIL_materialize_temp__n$3); [line 21, column 1]\n " color=yellow style=filled] +"test#14183353284361723530.9ab958283f2da536d334b673bc9197cb_1" [label="1: Start test\nFormals: a:A*\nLocals: x:X 0$?%__sil_tmpSIL_materialize_temp__n$4:X \n DECLARE_LOCALS(&return,&x,&0$?%__sil_tmpSIL_materialize_temp__n$4); [line 21, column 1]\n " color=yellow style=filled] "test#14183353284361723530.9ab958283f2da536d334b673bc9197cb_1" -> "test#14183353284361723530.9ab958283f2da536d334b673bc9197cb_4" ; @@ -11,7 +11,7 @@ digraph cfg { "test#14183353284361723530.9ab958283f2da536d334b673bc9197cb_3" -> "test#14183353284361723530.9ab958283f2da536d334b673bc9197cb_2" ; -"test#14183353284361723530.9ab958283f2da536d334b673bc9197cb_4" [label="4: DeclStmt \n n$4=*&a:A* [line 22, column 9]\n _=*n$4:A [line 22, column 9]\n n$7=_fun_A_get(n$4:A*,1:int,&0$?%__sil_tmpSIL_materialize_temp__n$3:X*) [line 22, column 9]\n n$8=_fun_X_X(&x:X*,&0$?%__sil_tmpSIL_materialize_temp__n$3:X&) [line 22, column 9]\n " shape="box"] +"test#14183353284361723530.9ab958283f2da536d334b673bc9197cb_4" [label="4: DeclStmt \n n$5=*&a:A* [line 22, column 9]\n _=*n$5:A [line 22, column 9]\n n$8=_fun_A_get(n$5:A*,1:int,&0$?%__sil_tmpSIL_materialize_temp__n$4:X*) [line 22, column 9]\n n$9=_fun_X_X(&x:X*,&0$?%__sil_tmpSIL_materialize_temp__n$4:X&) [line 22, column 9]\n " shape="box"] "test#14183353284361723530.9ab958283f2da536d334b673bc9197cb_4" -> "test#14183353284361723530.9ab958283f2da536d334b673bc9197cb_3" ; @@ -22,7 +22,7 @@ digraph cfg { "X#X#{4662457305382278389|constexpr}.7a0af4be288b205dc1c04f6801938150_2" [label="2: Exit X_X \n " color=yellow style=filled] -"X#X#{4662457305382278389|constexpr}.7a0af4be288b205dc1c04f6801938150_3" [label="3: Constructor Init \n n$0=*&this:X* [line 10, column 8]\n n$1=*&__param_0:X& [line 10, column 8]\n n$2=*n$1.f:int [line 10, column 8]\n *n$0.f:int=n$2 [line 10, column 8]\n " shape="box"] +"X#X#{4662457305382278389|constexpr}.7a0af4be288b205dc1c04f6801938150_3" [label="3: Constructor Init \n n$2=*&this:X* [line 10, column 8]\n n$3=*&__param_0:X& [line 10, column 8]\n n$4=*n$3.f:int [line 10, column 8]\n *n$2.f:int=n$4 [line 10, column 8]\n " shape="box"] "X#X#{4662457305382278389|constexpr}.7a0af4be288b205dc1c04f6801938150_3" -> "X#X#{4662457305382278389|constexpr}.7a0af4be288b205dc1c04f6801938150_2" ; @@ -44,7 +44,7 @@ digraph cfg { "get#A#(1761444600576643509).c838940fa5c6fe767006cf7dd748d7f6_3" -> "get#A#(1761444600576643509).c838940fa5c6fe767006cf7dd748d7f6_2" ; -"get#A#(1761444600576643509).c838940fa5c6fe767006cf7dd748d7f6_4" [label="4: DeclStmt \n n$4=_fun_X_X(&x:X*) [line 16, column 7]\n " shape="box"] +"get#A#(1761444600576643509).c838940fa5c6fe767006cf7dd748d7f6_4" [label="4: DeclStmt \n n$5=_fun_X_X(&x:X*) [line 16, column 7]\n " shape="box"] "get#A#(1761444600576643509).c838940fa5c6fe767006cf7dd748d7f6_4" -> "get#A#(1761444600576643509).c838940fa5c6fe767006cf7dd748d7f6_3" ; diff --git a/infer/tests/codetoanalyze/cpp/shared/methods/static.cpp.dot b/infer/tests/codetoanalyze/cpp/shared/methods/static.cpp.dot index 1dfdd7ccb..4b692051f 100644 --- a/infer/tests/codetoanalyze/cpp/shared/methods/static.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/shared/methods/static.cpp.dot @@ -7,7 +7,7 @@ digraph cfg { "div0_class#4984704850372216251.260ce38d809793fc3e38787f8d1eb4d6_2" [label="2: Exit div0_class \n " color=yellow style=filled] -"div0_class#4984704850372216251.260ce38d809793fc3e38787f8d1eb4d6_3" [label="3: Call _fun_A_fun \n n$0=_fun_A_fun(0:int) [line 17, column 21]\n " shape="box"] +"div0_class#4984704850372216251.260ce38d809793fc3e38787f8d1eb4d6_3" [label="3: Call _fun_A_fun \n n$2=_fun_A_fun(0:int) [line 17, column 21]\n " shape="box"] "div0_class#4984704850372216251.260ce38d809793fc3e38787f8d1eb4d6_3" -> "div0_class#4984704850372216251.260ce38d809793fc3e38787f8d1eb4d6_2" ; @@ -18,7 +18,7 @@ digraph cfg { "div0_instance#13376949534750090437.51640b59fd921707822fcc45f2fde64d_2" [label="2: Exit div0_instance \n " color=yellow style=filled] -"div0_instance#13376949534750090437.51640b59fd921707822fcc45f2fde64d_3" [label="3: Call _fun_A_fun \n n$0=*&a:A* [line 21, column 3]\n n$1=_fun_A_fun(0:int) [line 21, column 3]\n " shape="box"] +"div0_instance#13376949534750090437.51640b59fd921707822fcc45f2fde64d_3" [label="3: Call _fun_A_fun \n n$1=*&a:A* [line 21, column 3]\n n$3=_fun_A_fun(0:int) [line 21, column 3]\n " shape="box"] "div0_instance#13376949534750090437.51640b59fd921707822fcc45f2fde64d_3" -> "div0_instance#13376949534750090437.51640b59fd921707822fcc45f2fde64d_2" ; diff --git a/infer/tests/codetoanalyze/cpp/shared/methods/virtual_methods.cpp.dot b/infer/tests/codetoanalyze/cpp/shared/methods/virtual_methods.cpp.dot index 5814827b4..4a2acde49 100644 --- a/infer/tests/codetoanalyze/cpp/shared/methods/virtual_methods.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/shared/methods/virtual_methods.cpp.dot @@ -7,11 +7,11 @@ digraph cfg { "call_virtual_destructor#6847397116347440235.d267757a410b72cac399f5e3d0ee0f45_2" [label="2: Exit call_virtual_destructor \n " color=yellow style=filled] -"call_virtual_destructor#6847397116347440235.d267757a410b72cac399f5e3d0ee0f45_3" [label="3: Call delete \n n$0=*&trgl:Polygon* [line 72, column 10]\n n$1=_fun___delete(n$0:Polygon*) [line 72, column 3]\n " shape="box"] +"call_virtual_destructor#6847397116347440235.d267757a410b72cac399f5e3d0ee0f45_3" [label="3: Call delete \n n$1=*&trgl:Polygon* [line 72, column 10]\n n$2=_fun___delete(n$1:Polygon*) [line 72, column 3]\n " shape="box"] "call_virtual_destructor#6847397116347440235.d267757a410b72cac399f5e3d0ee0f45_3" -> "call_virtual_destructor#6847397116347440235.d267757a410b72cac399f5e3d0ee0f45_2" ; -"call_virtual_destructor#6847397116347440235.d267757a410b72cac399f5e3d0ee0f45_4" [label="4: DeclStmt \n n$2=_fun___new(sizeof(t=Triangle):unsigned long) [line 71, column 19]\n n$3=_fun_Triangle_Triangle(n$2:Triangle*) [line 71, column 23]\n *&trgl:Triangle*=n$2 [line 71, column 3]\n " shape="box"] +"call_virtual_destructor#6847397116347440235.d267757a410b72cac399f5e3d0ee0f45_4" [label="4: DeclStmt \n n$3=_fun___new(sizeof(t=Triangle):unsigned long) [line 71, column 19]\n n$4=_fun_Triangle_Triangle(n$3:Triangle*) [line 71, column 23]\n *&trgl:Triangle*=n$3 [line 71, column 3]\n " shape="box"] "call_virtual_destructor#6847397116347440235.d267757a410b72cac399f5e3d0ee0f45_4" -> "call_virtual_destructor#6847397116347440235.d267757a410b72cac399f5e3d0ee0f45_3" ; @@ -30,7 +30,7 @@ digraph cfg { "poly_area#4209622570361008343.816833144841084a7fd6071bbff4c354_4" -> "poly_area#4209622570361008343.816833144841084a7fd6071bbff4c354_3" ; -"poly_area#4209622570361008343.816833144841084a7fd6071bbff4c354_5" [label="5: DeclStmt \n n$5=_fun_Polygon_Polygon(&poly:Polygon*) [line 54, column 11]\n " shape="box"] +"poly_area#4209622570361008343.816833144841084a7fd6071bbff4c354_5" [label="5: DeclStmt \n n$6=_fun_Polygon_Polygon(&poly:Polygon*) [line 54, column 11]\n " shape="box"] "poly_area#4209622570361008343.816833144841084a7fd6071bbff4c354_5" -> "poly_area#4209622570361008343.816833144841084a7fd6071bbff4c354_4" ; @@ -45,7 +45,7 @@ digraph cfg { "rect_area#9087317270636867019.dedb17c23e2d96ddd6e1087003e78815_3" -> "rect_area#9087317270636867019.dedb17c23e2d96ddd6e1087003e78815_2" ; -"rect_area#9087317270636867019.dedb17c23e2d96ddd6e1087003e78815_4" [label="4: Call _fun_Polygon_set_values \n n$5=*&ppoly1:Polygon* [line 41, column 3]\n _=*n$5:Polygon [line 41, column 3]\n n$7=_fun_Polygon_set_values(n$5:Polygon*,4:int,5:int) [line 41, column 3]\n " shape="box"] +"rect_area#9087317270636867019.dedb17c23e2d96ddd6e1087003e78815_4" [label="4: Call _fun_Polygon_set_values \n n$6=*&ppoly1:Polygon* [line 41, column 3]\n _=*n$6:Polygon [line 41, column 3]\n n$8=_fun_Polygon_set_values(n$6:Polygon*,4:int,5:int) [line 41, column 3]\n " shape="box"] "rect_area#9087317270636867019.dedb17c23e2d96ddd6e1087003e78815_4" -> "rect_area#9087317270636867019.dedb17c23e2d96ddd6e1087003e78815_3" ; @@ -53,7 +53,7 @@ digraph cfg { "rect_area#9087317270636867019.dedb17c23e2d96ddd6e1087003e78815_5" -> "rect_area#9087317270636867019.dedb17c23e2d96ddd6e1087003e78815_4" ; -"rect_area#9087317270636867019.dedb17c23e2d96ddd6e1087003e78815_6" [label="6: DeclStmt \n n$8=_fun_Rectangle_Rectangle(&rect:Rectangle*) [line 39, column 13]\n " shape="box"] +"rect_area#9087317270636867019.dedb17c23e2d96ddd6e1087003e78815_6" [label="6: DeclStmt \n n$9=_fun_Rectangle_Rectangle(&rect:Rectangle*) [line 39, column 13]\n " shape="box"] "rect_area#9087317270636867019.dedb17c23e2d96ddd6e1087003e78815_6" -> "rect_area#9087317270636867019.dedb17c23e2d96ddd6e1087003e78815_5" ; @@ -68,7 +68,7 @@ digraph cfg { "tri_area#1215149030941579879.cc7663ab4ea89457778545059b70bc38_3" -> "tri_area#1215149030941579879.cc7663ab4ea89457778545059b70bc38_2" ; -"tri_area#1215149030941579879.cc7663ab4ea89457778545059b70bc38_4" [label="4: Call _fun_Polygon_set_values \n n$7=*&ppoly2:Polygon* [line 49, column 3]\n _=*n$7:Polygon [line 49, column 3]\n n$9=_fun_Polygon_set_values(n$7:Polygon*,4:int,5:int) [line 49, column 3]\n " shape="box"] +"tri_area#1215149030941579879.cc7663ab4ea89457778545059b70bc38_4" [label="4: Call _fun_Polygon_set_values \n n$8=*&ppoly2:Polygon* [line 49, column 3]\n _=*n$8:Polygon [line 49, column 3]\n n$10=_fun_Polygon_set_values(n$8:Polygon*,4:int,5:int) [line 49, column 3]\n " shape="box"] "tri_area#1215149030941579879.cc7663ab4ea89457778545059b70bc38_4" -> "tri_area#1215149030941579879.cc7663ab4ea89457778545059b70bc38_3" ; @@ -76,11 +76,11 @@ digraph cfg { "tri_area#1215149030941579879.cc7663ab4ea89457778545059b70bc38_5" -> "tri_area#1215149030941579879.cc7663ab4ea89457778545059b70bc38_4" ; -"tri_area#1215149030941579879.cc7663ab4ea89457778545059b70bc38_6" [label="6: DeclStmt \n n$10=_fun_Polygon_Polygon(&poly:Polygon*) [line 47, column 11]\n " shape="box"] +"tri_area#1215149030941579879.cc7663ab4ea89457778545059b70bc38_6" [label="6: DeclStmt \n n$11=_fun_Polygon_Polygon(&poly:Polygon*) [line 47, column 11]\n " shape="box"] "tri_area#1215149030941579879.cc7663ab4ea89457778545059b70bc38_6" -> "tri_area#1215149030941579879.cc7663ab4ea89457778545059b70bc38_5" ; -"tri_area#1215149030941579879.cc7663ab4ea89457778545059b70bc38_7" [label="7: DeclStmt \n n$11=_fun_Triangle_Triangle(&trgl:Triangle*) [line 46, column 12]\n " shape="box"] +"tri_area#1215149030941579879.cc7663ab4ea89457778545059b70bc38_7" [label="7: DeclStmt \n n$12=_fun_Triangle_Triangle(&trgl:Triangle*) [line 46, column 12]\n " shape="box"] "tri_area#1215149030941579879.cc7663ab4ea89457778545059b70bc38_7" -> "tri_area#1215149030941579879.cc7663ab4ea89457778545059b70bc38_6" ; @@ -95,7 +95,7 @@ digraph cfg { "tri_not_virtual_area#9435562296359660595.88e7106fc7dcfd34401502a9deb415ac_3" -> "tri_not_virtual_area#9435562296359660595.88e7106fc7dcfd34401502a9deb415ac_2" ; -"tri_not_virtual_area#9435562296359660595.88e7106fc7dcfd34401502a9deb415ac_4" [label="4: Call _fun_Polygon_set_values \n n$7=*&ppoly2:Polygon* [line 63, column 3]\n _=*n$7:Polygon [line 63, column 3]\n n$9=_fun_Polygon_set_values(n$7:Polygon*,4:int,5:int) [line 63, column 3]\n " shape="box"] +"tri_not_virtual_area#9435562296359660595.88e7106fc7dcfd34401502a9deb415ac_4" [label="4: Call _fun_Polygon_set_values \n n$8=*&ppoly2:Polygon* [line 63, column 3]\n _=*n$8:Polygon [line 63, column 3]\n n$10=_fun_Polygon_set_values(n$8:Polygon*,4:int,5:int) [line 63, column 3]\n " shape="box"] "tri_not_virtual_area#9435562296359660595.88e7106fc7dcfd34401502a9deb415ac_4" -> "tri_not_virtual_area#9435562296359660595.88e7106fc7dcfd34401502a9deb415ac_3" ; @@ -103,11 +103,11 @@ digraph cfg { "tri_not_virtual_area#9435562296359660595.88e7106fc7dcfd34401502a9deb415ac_5" -> "tri_not_virtual_area#9435562296359660595.88e7106fc7dcfd34401502a9deb415ac_4" ; -"tri_not_virtual_area#9435562296359660595.88e7106fc7dcfd34401502a9deb415ac_6" [label="6: DeclStmt \n n$10=_fun_Polygon_Polygon(&poly:Polygon*) [line 61, column 11]\n " shape="box"] +"tri_not_virtual_area#9435562296359660595.88e7106fc7dcfd34401502a9deb415ac_6" [label="6: DeclStmt \n n$11=_fun_Polygon_Polygon(&poly:Polygon*) [line 61, column 11]\n " shape="box"] "tri_not_virtual_area#9435562296359660595.88e7106fc7dcfd34401502a9deb415ac_6" -> "tri_not_virtual_area#9435562296359660595.88e7106fc7dcfd34401502a9deb415ac_5" ; -"tri_not_virtual_area#9435562296359660595.88e7106fc7dcfd34401502a9deb415ac_7" [label="7: DeclStmt \n n$11=_fun_Triangle_Triangle(&trgl:Triangle*) [line 60, column 12]\n " shape="box"] +"tri_not_virtual_area#9435562296359660595.88e7106fc7dcfd34401502a9deb415ac_7" [label="7: DeclStmt \n n$12=_fun_Triangle_Triangle(&trgl:Triangle*) [line 60, column 12]\n " shape="box"] "tri_not_virtual_area#9435562296359660595.88e7106fc7dcfd34401502a9deb415ac_7" -> "tri_not_virtual_area#9435562296359660595.88e7106fc7dcfd34401502a9deb415ac_6" ; @@ -125,7 +125,7 @@ digraph cfg { "Rectangle#Rectangle#{548993796743293985}.386f89cceb4c14e4fc014bcc1ec86f4b_2" [label="2: Exit Rectangle_Rectangle \n " color=yellow style=filled] -"Rectangle#Rectangle#{548993796743293985}.386f89cceb4c14e4fc014bcc1ec86f4b_3" [label="3: Constructor Init \n n$0=*&this:Rectangle* [line 23, column 7]\n n$1=_fun_Polygon_Polygon(n$0:Rectangle*) [line 23, column 7]\n " shape="box"] +"Rectangle#Rectangle#{548993796743293985}.386f89cceb4c14e4fc014bcc1ec86f4b_3" [label="3: Constructor Init \n n$2=*&this:Rectangle* [line 23, column 7]\n n$3=_fun_Polygon_Polygon(n$2:Rectangle*) [line 23, column 7]\n " shape="box"] "Rectangle#Rectangle#{548993796743293985}.386f89cceb4c14e4fc014bcc1ec86f4b_3" -> "Rectangle#Rectangle#{548993796743293985}.386f89cceb4c14e4fc014bcc1ec86f4b_2" ; @@ -136,7 +136,7 @@ digraph cfg { "Triangle#Triangle#{15421032765127472541}.26bfd28d102273793a62fe013a50a7d1_2" [label="2: Exit Triangle_Triangle \n " color=yellow style=filled] -"Triangle#Triangle#{15421032765127472541}.26bfd28d102273793a62fe013a50a7d1_3" [label="3: Constructor Init \n n$0=*&this:Triangle* [line 29, column 7]\n n$1=_fun_Polygon_Polygon(n$0:Triangle*) [line 29, column 7]\n " shape="box"] +"Triangle#Triangle#{15421032765127472541}.26bfd28d102273793a62fe013a50a7d1_3" [label="3: Constructor Init \n n$2=*&this:Triangle* [line 29, column 7]\n n$3=_fun_Polygon_Polygon(n$2:Triangle*) [line 29, column 7]\n " shape="box"] "Triangle#Triangle#{15421032765127472541}.26bfd28d102273793a62fe013a50a7d1_3" -> "Triangle#Triangle#{15421032765127472541}.26bfd28d102273793a62fe013a50a7d1_2" ; @@ -184,7 +184,7 @@ digraph cfg { "area#Triangle#(14534668876010564879).b2c96bbb8f170e9d12180637dc0d6da3_3" -> "area#Triangle#(14534668876010564879).b2c96bbb8f170e9d12180637dc0d6da3_2" ; -"area#Triangle#(14534668876010564879).b2c96bbb8f170e9d12180637dc0d6da3_4" [label="4: DeclStmt \n n$1=*&this:Triangle* [line 33, column 13]\n n$2=*n$1.width:int [line 33, column 13]\n n$3=*&this:Triangle* [line 33, column 21]\n n$4=*n$3.height:int [line 33, column 21]\n *&x:int=(n$2 * n$4) [line 33, column 5]\n " shape="box"] +"area#Triangle#(14534668876010564879).b2c96bbb8f170e9d12180637dc0d6da3_4" [label="4: DeclStmt \n n$2=*&this:Triangle* [line 33, column 13]\n n$3=*n$2.width:int [line 33, column 13]\n n$4=*&this:Triangle* [line 33, column 21]\n n$5=*n$4.height:int [line 33, column 21]\n *&x:int=(n$3 * n$5) [line 33, column 5]\n " shape="box"] "area#Triangle#(14534668876010564879).b2c96bbb8f170e9d12180637dc0d6da3_4" -> "area#Triangle#(14534668876010564879).b2c96bbb8f170e9d12180637dc0d6da3_3" ; @@ -195,11 +195,11 @@ digraph cfg { "set_values#Polygon#(2698446688876490094).f9216ba6d3085c8bce59aeddec27f348_2" [label="2: Exit Polygon_set_values \n " color=yellow style=filled] -"set_values#Polygon#(2698446688876490094).f9216ba6d3085c8bce59aeddec27f348_3" [label="3: BinaryOperatorStmt: Assign \n n$0=*&this:Polygon* [line 18, column 5]\n n$1=*&b:int [line 18, column 14]\n *n$0.height:int=n$1 [line 18, column 5]\n " shape="box"] +"set_values#Polygon#(2698446688876490094).f9216ba6d3085c8bce59aeddec27f348_3" [label="3: BinaryOperatorStmt: Assign \n n$1=*&this:Polygon* [line 18, column 5]\n n$2=*&b:int [line 18, column 14]\n *n$1.height:int=n$2 [line 18, column 5]\n " shape="box"] "set_values#Polygon#(2698446688876490094).f9216ba6d3085c8bce59aeddec27f348_3" -> "set_values#Polygon#(2698446688876490094).f9216ba6d3085c8bce59aeddec27f348_2" ; -"set_values#Polygon#(2698446688876490094).f9216ba6d3085c8bce59aeddec27f348_4" [label="4: BinaryOperatorStmt: Assign \n n$2=*&this:Polygon* [line 17, column 5]\n n$3=*&a:int [line 17, column 13]\n *n$2.width:int=n$3 [line 17, column 5]\n " shape="box"] +"set_values#Polygon#(2698446688876490094).f9216ba6d3085c8bce59aeddec27f348_4" [label="4: BinaryOperatorStmt: Assign \n n$3=*&this:Polygon* [line 17, column 5]\n n$4=*&a:int [line 17, column 13]\n *n$3.width:int=n$4 [line 17, column 5]\n " shape="box"] "set_values#Polygon#(2698446688876490094).f9216ba6d3085c8bce59aeddec27f348_4" -> "set_values#Polygon#(2698446688876490094).f9216ba6d3085c8bce59aeddec27f348_3" ; diff --git a/infer/tests/codetoanalyze/cpp/shared/namespace/function.cpp.dot b/infer/tests/codetoanalyze/cpp/shared/namespace/function.cpp.dot index 56cf3276b..ef54726fc 100644 --- a/infer/tests/codetoanalyze/cpp/shared/namespace/function.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/shared/namespace/function.cpp.dot @@ -77,7 +77,7 @@ digraph cfg { "using_div0#15267107907897398237.0f32134dc9668df527885e12e16348fe_2" [label="2: Exit using_div0 \n " color=yellow style=filled] -"using_div0#15267107907897398237.0f32134dc9668df527885e12e16348fe_3" [label="3: Return Stmt \n n$0=_fun_f3::C_ret_zero() [line 35, column 14]\n *&return:int=(1 / n$0) [line 35, column 3]\n " shape="box"] +"using_div0#15267107907897398237.0f32134dc9668df527885e12e16348fe_3" [label="3: Return Stmt \n n$1=_fun_f3::C_ret_zero() [line 35, column 14]\n *&return:int=(1 / n$1) [line 35, column 3]\n " shape="box"] "using_div0#15267107907897398237.0f32134dc9668df527885e12e16348fe_3" -> "using_div0#15267107907897398237.0f32134dc9668df527885e12e16348fe_2" ; diff --git a/infer/tests/codetoanalyze/cpp/shared/namespace/namespace.cpp.dot b/infer/tests/codetoanalyze/cpp/shared/namespace/namespace.cpp.dot index 44fc351f4..08143e130 100644 --- a/infer/tests/codetoanalyze/cpp/shared/namespace/namespace.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/shared/namespace/namespace.cpp.dot @@ -11,15 +11,15 @@ digraph cfg { "main.fad58de7366495db4650cfefac2fcd61_3" -> "main.fad58de7366495db4650cfefac2fcd61_2" ; -"main.fad58de7366495db4650cfefac2fcd61_4" [label="4: BinaryOperatorStmt: Assign \n n$0=*&#GB$bar::pi:double [line 57, column 7]\n *&j:double=n$0 [line 57, column 3]\n " shape="box"] +"main.fad58de7366495db4650cfefac2fcd61_4" [label="4: BinaryOperatorStmt: Assign \n n$1=*&#GB$bar::pi:double [line 57, column 7]\n *&j:double=n$1 [line 57, column 3]\n " shape="box"] "main.fad58de7366495db4650cfefac2fcd61_4" -> "main.fad58de7366495db4650cfefac2fcd61_3" ; -"main.fad58de7366495db4650cfefac2fcd61_5" [label="5: BinaryOperatorStmt: Assign \n n$1=_fun_bar::value() [line 56, column 7]\n *&i:int=n$1 [line 56, column 3]\n " shape="box"] +"main.fad58de7366495db4650cfefac2fcd61_5" [label="5: BinaryOperatorStmt: Assign \n n$2=_fun_bar::value() [line 56, column 7]\n *&i:int=n$2 [line 56, column 3]\n " shape="box"] "main.fad58de7366495db4650cfefac2fcd61_5" -> "main.fad58de7366495db4650cfefac2fcd61_4" ; -"main.fad58de7366495db4650cfefac2fcd61_6" [label="6: BinaryOperatorStmt: Assign \n n$2=_fun_foo::value() [line 55, column 7]\n *&i:int=n$2 [line 55, column 3]\n " shape="box"] +"main.fad58de7366495db4650cfefac2fcd61_6" [label="6: BinaryOperatorStmt: Assign \n n$3=_fun_foo::value() [line 55, column 7]\n *&i:int=n$3 [line 55, column 3]\n " shape="box"] "main.fad58de7366495db4650cfefac2fcd61_6" -> "main.fad58de7366495db4650cfefac2fcd61_5" ; @@ -27,23 +27,23 @@ digraph cfg { "main.fad58de7366495db4650cfefac2fcd61_7" -> "main.fad58de7366495db4650cfefac2fcd61_6" ; -"main.fad58de7366495db4650cfefac2fcd61_8" [label="8: Call _fun_foo::Rectangle_set_values \n _=*&rect2:foo::Rectangle [line 52, column 3]\n n$4=_fun_foo::Rectangle_set_values(&rect2:foo::Rectangle&,7:int,10:int) [line 52, column 3]\n " shape="box"] +"main.fad58de7366495db4650cfefac2fcd61_8" [label="8: Call _fun_foo::Rectangle_set_values \n _=*&rect2:foo::Rectangle [line 52, column 3]\n n$5=_fun_foo::Rectangle_set_values(&rect2:foo::Rectangle&,7:int,10:int) [line 52, column 3]\n " shape="box"] "main.fad58de7366495db4650cfefac2fcd61_8" -> "main.fad58de7366495db4650cfefac2fcd61_7" ; -"main.fad58de7366495db4650cfefac2fcd61_9" [label="9: DeclStmt \n n$5=_fun_foo::Rectangle_Rectangle(&rect2:foo::Rectangle*) [line 51, column 18]\n " shape="box"] +"main.fad58de7366495db4650cfefac2fcd61_9" [label="9: DeclStmt \n n$6=_fun_foo::Rectangle_Rectangle(&rect2:foo::Rectangle*) [line 51, column 18]\n " shape="box"] "main.fad58de7366495db4650cfefac2fcd61_9" -> "main.fad58de7366495db4650cfefac2fcd61_8" ; -"main.fad58de7366495db4650cfefac2fcd61_10" [label="10: Call _fun_bar::Rectangle_set_values \n _=*&rect1:bar::Rectangle [line 49, column 3]\n n$7=_fun_bar::Rectangle_set_values(&rect1:bar::Rectangle&,3:int,4:int) [line 49, column 3]\n " shape="box"] +"main.fad58de7366495db4650cfefac2fcd61_10" [label="10: Call _fun_bar::Rectangle_set_values \n _=*&rect1:bar::Rectangle [line 49, column 3]\n n$8=_fun_bar::Rectangle_set_values(&rect1:bar::Rectangle&,3:int,4:int) [line 49, column 3]\n " shape="box"] "main.fad58de7366495db4650cfefac2fcd61_10" -> "main.fad58de7366495db4650cfefac2fcd61_9" ; -"main.fad58de7366495db4650cfefac2fcd61_11" [label="11: DeclStmt \n n$8=_fun_bar::Rectangle_Rectangle(&rect1:bar::Rectangle*) [line 48, column 18]\n " shape="box"] +"main.fad58de7366495db4650cfefac2fcd61_11" [label="11: DeclStmt \n n$9=_fun_bar::Rectangle_Rectangle(&rect1:bar::Rectangle*) [line 48, column 18]\n " shape="box"] "main.fad58de7366495db4650cfefac2fcd61_11" -> "main.fad58de7366495db4650cfefac2fcd61_10" ; -"main.fad58de7366495db4650cfefac2fcd61_12" [label="12: DeclStmt \n n$9=_fun_foo::my_record_(&x:foo::my_record*) [line 46, column 18]\n " shape="box"] +"main.fad58de7366495db4650cfefac2fcd61_12" [label="12: DeclStmt \n n$10=_fun_foo::my_record_(&x:foo::my_record*) [line 46, column 18]\n " shape="box"] "main.fad58de7366495db4650cfefac2fcd61_12" -> "main.fad58de7366495db4650cfefac2fcd61_11" ; diff --git a/infer/tests/codetoanalyze/cpp/shared/nestedoperators/var_decl_inside_for.cpp.dot b/infer/tests/codetoanalyze/cpp/shared/nestedoperators/var_decl_inside_for.cpp.dot index 91ded48db..75f0d15ad 100644 --- a/infer/tests/codetoanalyze/cpp/shared/nestedoperators/var_decl_inside_for.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/shared/nestedoperators/var_decl_inside_for.cpp.dot @@ -15,24 +15,24 @@ digraph cfg { "init_with_scoped_var#8128013931289981830.1ee58ae56eeb1744bf4b3cc5c8cf5d42_4" -> "init_with_scoped_var#8128013931289981830.1ee58ae56eeb1744bf4b3cc5c8cf5d42_3" ; -"init_with_scoped_var#8128013931289981830.1ee58ae56eeb1744bf4b3cc5c8cf5d42_5" [label="5: UnaryOperator \n n$0=*&i:int [line 19, column 31]\n *&i:int=(n$0 - 1) [line 19, column 31]\n " shape="box"] +"init_with_scoped_var#8128013931289981830.1ee58ae56eeb1744bf4b3cc5c8cf5d42_5" [label="5: UnaryOperator \n n$1=*&i:int [line 19, column 31]\n *&i:int=(n$1 - 1) [line 19, column 31]\n " shape="box"] "init_with_scoped_var#8128013931289981830.1ee58ae56eeb1744bf4b3cc5c8cf5d42_5" -> "init_with_scoped_var#8128013931289981830.1ee58ae56eeb1744bf4b3cc5c8cf5d42_3" ; -"init_with_scoped_var#8128013931289981830.1ee58ae56eeb1744bf4b3cc5c8cf5d42_6" [label="6: Prune (true branch, for loop) \n n$1=*&x:int [line 19, column 24]\n PRUNE(n$1, true); [line 19, column 24]\n " shape="invhouse"] +"init_with_scoped_var#8128013931289981830.1ee58ae56eeb1744bf4b3cc5c8cf5d42_6" [label="6: Prune (true branch, for loop) \n n$2=*&x:int [line 19, column 24]\n PRUNE(n$2, true); [line 19, column 24]\n " shape="invhouse"] "init_with_scoped_var#8128013931289981830.1ee58ae56eeb1744bf4b3cc5c8cf5d42_6" -> "init_with_scoped_var#8128013931289981830.1ee58ae56eeb1744bf4b3cc5c8cf5d42_9" ; -"init_with_scoped_var#8128013931289981830.1ee58ae56eeb1744bf4b3cc5c8cf5d42_7" [label="7: Prune (false branch, for loop) \n n$1=*&x:int [line 19, column 24]\n PRUNE(!n$1, false); [line 19, column 24]\n " shape="invhouse"] +"init_with_scoped_var#8128013931289981830.1ee58ae56eeb1744bf4b3cc5c8cf5d42_7" [label="7: Prune (false branch, for loop) \n n$2=*&x:int [line 19, column 24]\n PRUNE(!n$2, false); [line 19, column 24]\n " shape="invhouse"] "init_with_scoped_var#8128013931289981830.1ee58ae56eeb1744bf4b3cc5c8cf5d42_7" -> "init_with_scoped_var#8128013931289981830.1ee58ae56eeb1744bf4b3cc5c8cf5d42_2" ; -"init_with_scoped_var#8128013931289981830.1ee58ae56eeb1744bf4b3cc5c8cf5d42_8" [label="8: DeclStmt \n n$2=*&i:int [line 19, column 28]\n *&x:int=n$2 [line 19, column 20]\n " shape="box"] +"init_with_scoped_var#8128013931289981830.1ee58ae56eeb1744bf4b3cc5c8cf5d42_8" [label="8: DeclStmt \n n$3=*&i:int [line 19, column 28]\n *&x:int=n$3 [line 19, column 20]\n " shape="box"] "init_with_scoped_var#8128013931289981830.1ee58ae56eeb1744bf4b3cc5c8cf5d42_8" -> "init_with_scoped_var#8128013931289981830.1ee58ae56eeb1744bf4b3cc5c8cf5d42_6" ; "init_with_scoped_var#8128013931289981830.1ee58ae56eeb1744bf4b3cc5c8cf5d42_8" -> "init_with_scoped_var#8128013931289981830.1ee58ae56eeb1744bf4b3cc5c8cf5d42_7" ; -"init_with_scoped_var#8128013931289981830.1ee58ae56eeb1744bf4b3cc5c8cf5d42_9" [label="9: BinaryOperatorStmt: AddAssign \n n$3=*&x:int [line 20, column 15]\n n$4=*&result:int [line 20, column 5]\n *&result:int=(n$4 + n$3) [line 20, column 5]\n " shape="box"] +"init_with_scoped_var#8128013931289981830.1ee58ae56eeb1744bf4b3cc5c8cf5d42_9" [label="9: BinaryOperatorStmt: AddAssign \n n$5=*&x:int [line 20, column 15]\n n$6=*&result:int [line 20, column 5]\n *&result:int=(n$6 + n$5) [line 20, column 5]\n " shape="box"] "init_with_scoped_var#8128013931289981830.1ee58ae56eeb1744bf4b3cc5c8cf5d42_9" -> "init_with_scoped_var#8128013931289981830.1ee58ae56eeb1744bf4b3cc5c8cf5d42_5" ; @@ -55,15 +55,15 @@ digraph cfg { "simple_init#1527365342003611175.8f75bf8cf2aefccd4d47ab9274e1f9af_4" -> "simple_init#1527365342003611175.8f75bf8cf2aefccd4d47ab9274e1f9af_3" ; -"simple_init#1527365342003611175.8f75bf8cf2aefccd4d47ab9274e1f9af_5" [label="5: UnaryOperator \n n$0=*&i:int [line 12, column 30]\n *&i:int=(n$0 + 1) [line 12, column 30]\n " shape="box"] +"simple_init#1527365342003611175.8f75bf8cf2aefccd4d47ab9274e1f9af_5" [label="5: UnaryOperator \n n$1=*&i:int [line 12, column 30]\n *&i:int=(n$1 + 1) [line 12, column 30]\n " shape="box"] "simple_init#1527365342003611175.8f75bf8cf2aefccd4d47ab9274e1f9af_5" -> "simple_init#1527365342003611175.8f75bf8cf2aefccd4d47ab9274e1f9af_3" ; -"simple_init#1527365342003611175.8f75bf8cf2aefccd4d47ab9274e1f9af_6" [label="6: Prune (true branch, for loop) \n n$1=*&x:int [line 12, column 23]\n PRUNE(n$1, true); [line 12, column 23]\n " shape="invhouse"] +"simple_init#1527365342003611175.8f75bf8cf2aefccd4d47ab9274e1f9af_6" [label="6: Prune (true branch, for loop) \n n$2=*&x:int [line 12, column 23]\n PRUNE(n$2, true); [line 12, column 23]\n " shape="invhouse"] "simple_init#1527365342003611175.8f75bf8cf2aefccd4d47ab9274e1f9af_6" -> "simple_init#1527365342003611175.8f75bf8cf2aefccd4d47ab9274e1f9af_9" ; -"simple_init#1527365342003611175.8f75bf8cf2aefccd4d47ab9274e1f9af_7" [label="7: Prune (false branch, for loop) \n n$1=*&x:int [line 12, column 23]\n PRUNE(!n$1, false); [line 12, column 23]\n " shape="invhouse"] +"simple_init#1527365342003611175.8f75bf8cf2aefccd4d47ab9274e1f9af_7" [label="7: Prune (false branch, for loop) \n n$2=*&x:int [line 12, column 23]\n PRUNE(!n$2, false); [line 12, column 23]\n " shape="invhouse"] "simple_init#1527365342003611175.8f75bf8cf2aefccd4d47ab9274e1f9af_7" -> "simple_init#1527365342003611175.8f75bf8cf2aefccd4d47ab9274e1f9af_2" ; @@ -72,7 +72,7 @@ digraph cfg { "simple_init#1527365342003611175.8f75bf8cf2aefccd4d47ab9274e1f9af_8" -> "simple_init#1527365342003611175.8f75bf8cf2aefccd4d47ab9274e1f9af_6" ; "simple_init#1527365342003611175.8f75bf8cf2aefccd4d47ab9274e1f9af_8" -> "simple_init#1527365342003611175.8f75bf8cf2aefccd4d47ab9274e1f9af_7" ; -"simple_init#1527365342003611175.8f75bf8cf2aefccd4d47ab9274e1f9af_9" [label="9: BinaryOperatorStmt: AddAssign \n n$2=*&x:int [line 13, column 15]\n n$3=*&result:int [line 13, column 5]\n *&result:int=(n$3 + n$2) [line 13, column 5]\n " shape="box"] +"simple_init#1527365342003611175.8f75bf8cf2aefccd4d47ab9274e1f9af_9" [label="9: BinaryOperatorStmt: AddAssign \n n$4=*&x:int [line 13, column 15]\n n$5=*&result:int [line 13, column 5]\n *&result:int=(n$5 + n$4) [line 13, column 5]\n " shape="box"] "simple_init#1527365342003611175.8f75bf8cf2aefccd4d47ab9274e1f9af_9" -> "simple_init#1527365342003611175.8f75bf8cf2aefccd4d47ab9274e1f9af_5" ; diff --git a/infer/tests/codetoanalyze/cpp/shared/nestedoperators/var_decl_inside_if.cpp.dot b/infer/tests/codetoanalyze/cpp/shared/nestedoperators/var_decl_inside_if.cpp.dot index 2e628fc6c..dbbb58ac0 100644 --- a/infer/tests/codetoanalyze/cpp/shared/nestedoperators/var_decl_inside_if.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/shared/nestedoperators/var_decl_inside_if.cpp.dot @@ -1,6 +1,6 @@ /* @generated */ digraph cfg { -"conditional_init_div0#15409862859031639280.1a402395676f14cae9f26917a820e9ed_1" [label="1: Start conditional_init_div0\nFormals: \nLocals: a:int 0$?%__sil_tmpSIL_temp_conditional___n$1:int \n DECLARE_LOCALS(&return,&a,&0$?%__sil_tmpSIL_temp_conditional___n$1); [line 42, column 1]\n " color=yellow style=filled] +"conditional_init_div0#15409862859031639280.1a402395676f14cae9f26917a820e9ed_1" [label="1: Start conditional_init_div0\nFormals: \nLocals: a:int 0$?%__sil_tmpSIL_temp_conditional___n$2:int \n DECLARE_LOCALS(&return,&a,&0$?%__sil_tmpSIL_temp_conditional___n$2); [line 42, column 1]\n " color=yellow style=filled] "conditional_init_div0#15409862859031639280.1a402395676f14cae9f26917a820e9ed_1" -> "conditional_init_div0#15409862859031639280.1a402395676f14cae9f26917a820e9ed_8" ; @@ -16,11 +16,11 @@ digraph cfg { "conditional_init_div0#15409862859031639280.1a402395676f14cae9f26917a820e9ed_4" -> "conditional_init_div0#15409862859031639280.1a402395676f14cae9f26917a820e9ed_2" ; -"conditional_init_div0#15409862859031639280.1a402395676f14cae9f26917a820e9ed_5" [label="5: Prune (true branch, if) \n n$0=*&a:int [line 43, column 11]\n PRUNE(n$0, true); [line 43, column 11]\n " shape="invhouse"] +"conditional_init_div0#15409862859031639280.1a402395676f14cae9f26917a820e9ed_5" [label="5: Prune (true branch, if) \n n$1=*&a:int [line 43, column 11]\n PRUNE(n$1, true); [line 43, column 11]\n " shape="invhouse"] "conditional_init_div0#15409862859031639280.1a402395676f14cae9f26917a820e9ed_5" -> "conditional_init_div0#15409862859031639280.1a402395676f14cae9f26917a820e9ed_13" ; -"conditional_init_div0#15409862859031639280.1a402395676f14cae9f26917a820e9ed_6" [label="6: Prune (false branch, if) \n n$0=*&a:int [line 43, column 11]\n PRUNE(!n$0, false); [line 43, column 11]\n " shape="invhouse"] +"conditional_init_div0#15409862859031639280.1a402395676f14cae9f26917a820e9ed_6" [label="6: Prune (false branch, if) \n n$1=*&a:int [line 43, column 11]\n PRUNE(!n$1, false); [line 43, column 11]\n " shape="invhouse"] "conditional_init_div0#15409862859031639280.1a402395676f14cae9f26917a820e9ed_6" -> "conditional_init_div0#15409862859031639280.1a402395676f14cae9f26917a820e9ed_3" ; @@ -36,20 +36,20 @@ digraph cfg { "conditional_init_div0#15409862859031639280.1a402395676f14cae9f26917a820e9ed_9" -> "conditional_init_div0#15409862859031639280.1a402395676f14cae9f26917a820e9ed_11" ; -"conditional_init_div0#15409862859031639280.1a402395676f14cae9f26917a820e9ed_10" [label="10: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$1:int=1 [line 43, column 15]\n " shape="box"] +"conditional_init_div0#15409862859031639280.1a402395676f14cae9f26917a820e9ed_10" [label="10: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$2:int=1 [line 43, column 15]\n " shape="box"] "conditional_init_div0#15409862859031639280.1a402395676f14cae9f26917a820e9ed_10" -> "conditional_init_div0#15409862859031639280.1a402395676f14cae9f26917a820e9ed_7" ; -"conditional_init_div0#15409862859031639280.1a402395676f14cae9f26917a820e9ed_11" [label="11: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$1:int=0 [line 43, column 15]\n " shape="box"] +"conditional_init_div0#15409862859031639280.1a402395676f14cae9f26917a820e9ed_11" [label="11: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$2:int=0 [line 43, column 15]\n " shape="box"] "conditional_init_div0#15409862859031639280.1a402395676f14cae9f26917a820e9ed_11" -> "conditional_init_div0#15409862859031639280.1a402395676f14cae9f26917a820e9ed_7" ; -"conditional_init_div0#15409862859031639280.1a402395676f14cae9f26917a820e9ed_12" [label="12: DeclStmt \n n$2=*&0$?%__sil_tmpSIL_temp_conditional___n$1:int [line 43, column 15]\n *&a:int=n$2 [line 43, column 7]\n " shape="box"] +"conditional_init_div0#15409862859031639280.1a402395676f14cae9f26917a820e9ed_12" [label="12: DeclStmt \n n$3=*&0$?%__sil_tmpSIL_temp_conditional___n$2:int [line 43, column 15]\n *&a:int=n$3 [line 43, column 7]\n " shape="box"] "conditional_init_div0#15409862859031639280.1a402395676f14cae9f26917a820e9ed_12" -> "conditional_init_div0#15409862859031639280.1a402395676f14cae9f26917a820e9ed_5" ; "conditional_init_div0#15409862859031639280.1a402395676f14cae9f26917a820e9ed_12" -> "conditional_init_div0#15409862859031639280.1a402395676f14cae9f26917a820e9ed_6" ; -"conditional_init_div0#15409862859031639280.1a402395676f14cae9f26917a820e9ed_13" [label="13: Return Stmt \n n$3=*&a:int [line 44, column 17]\n *&return:int=(1 / (n$3 - 1)) [line 44, column 5]\n " shape="box"] +"conditional_init_div0#15409862859031639280.1a402395676f14cae9f26917a820e9ed_13" [label="13: Return Stmt \n n$4=*&a:int [line 44, column 17]\n *&return:int=(1 / (n$4 - 1)) [line 44, column 5]\n " shape="box"] "conditional_init_div0#15409862859031639280.1a402395676f14cae9f26917a820e9ed_13" -> "conditional_init_div0#15409862859031639280.1a402395676f14cae9f26917a820e9ed_2" ; @@ -68,20 +68,20 @@ digraph cfg { "function_call_init_div0#7458225874916439501.0ec340f42ffbe340a808e1b8bee4f555_4" -> "function_call_init_div0#7458225874916439501.0ec340f42ffbe340a808e1b8bee4f555_2" ; -"function_call_init_div0#7458225874916439501.0ec340f42ffbe340a808e1b8bee4f555_5" [label="5: Prune (true branch, if) \n n$0=*&a:int [line 37, column 11]\n PRUNE(n$0, true); [line 37, column 11]\n " shape="invhouse"] +"function_call_init_div0#7458225874916439501.0ec340f42ffbe340a808e1b8bee4f555_5" [label="5: Prune (true branch, if) \n n$1=*&a:int [line 37, column 11]\n PRUNE(n$1, true); [line 37, column 11]\n " shape="invhouse"] "function_call_init_div0#7458225874916439501.0ec340f42ffbe340a808e1b8bee4f555_5" -> "function_call_init_div0#7458225874916439501.0ec340f42ffbe340a808e1b8bee4f555_8" ; -"function_call_init_div0#7458225874916439501.0ec340f42ffbe340a808e1b8bee4f555_6" [label="6: Prune (false branch, if) \n n$0=*&a:int [line 37, column 11]\n PRUNE(!n$0, false); [line 37, column 11]\n " shape="invhouse"] +"function_call_init_div0#7458225874916439501.0ec340f42ffbe340a808e1b8bee4f555_6" [label="6: Prune (false branch, if) \n n$1=*&a:int [line 37, column 11]\n PRUNE(!n$1, false); [line 37, column 11]\n " shape="invhouse"] "function_call_init_div0#7458225874916439501.0ec340f42ffbe340a808e1b8bee4f555_6" -> "function_call_init_div0#7458225874916439501.0ec340f42ffbe340a808e1b8bee4f555_3" ; -"function_call_init_div0#7458225874916439501.0ec340f42ffbe340a808e1b8bee4f555_7" [label="7: DeclStmt \n n$1=_fun_get1() [line 37, column 15]\n *&a:int=n$1 [line 37, column 7]\n " shape="box"] +"function_call_init_div0#7458225874916439501.0ec340f42ffbe340a808e1b8bee4f555_7" [label="7: DeclStmt \n n$2=_fun_get1() [line 37, column 15]\n *&a:int=n$2 [line 37, column 7]\n " shape="box"] "function_call_init_div0#7458225874916439501.0ec340f42ffbe340a808e1b8bee4f555_7" -> "function_call_init_div0#7458225874916439501.0ec340f42ffbe340a808e1b8bee4f555_5" ; "function_call_init_div0#7458225874916439501.0ec340f42ffbe340a808e1b8bee4f555_7" -> "function_call_init_div0#7458225874916439501.0ec340f42ffbe340a808e1b8bee4f555_6" ; -"function_call_init_div0#7458225874916439501.0ec340f42ffbe340a808e1b8bee4f555_8" [label="8: Return Stmt \n n$2=*&a:int [line 38, column 17]\n *&return:int=(1 / (n$2 - 1)) [line 38, column 5]\n " shape="box"] +"function_call_init_div0#7458225874916439501.0ec340f42ffbe340a808e1b8bee4f555_8" [label="8: Return Stmt \n n$3=*&a:int [line 38, column 17]\n *&return:int=(1 / (n$3 - 1)) [line 38, column 5]\n " shape="box"] "function_call_init_div0#7458225874916439501.0ec340f42ffbe340a808e1b8bee4f555_8" -> "function_call_init_div0#7458225874916439501.0ec340f42ffbe340a808e1b8bee4f555_2" ; @@ -111,11 +111,11 @@ digraph cfg { "reference_init_div0#8765531464226376816.66e8a6545ef6e4641561744b4125ae49_4" -> "reference_init_div0#8765531464226376816.66e8a6545ef6e4641561744b4125ae49_3" ; -"reference_init_div0#8765531464226376816.66e8a6545ef6e4641561744b4125ae49_5" [label="5: Prune (true branch, if) \n n$1=*&a:int& [line 50, column 12]\n n$2=*n$1:int [line 50, column 12]\n PRUNE(n$2, true); [line 50, column 12]\n " shape="invhouse"] +"reference_init_div0#8765531464226376816.66e8a6545ef6e4641561744b4125ae49_5" [label="5: Prune (true branch, if) \n n$2=*&a:int& [line 50, column 12]\n n$3=*n$2:int [line 50, column 12]\n PRUNE(n$3, true); [line 50, column 12]\n " shape="invhouse"] "reference_init_div0#8765531464226376816.66e8a6545ef6e4641561744b4125ae49_5" -> "reference_init_div0#8765531464226376816.66e8a6545ef6e4641561744b4125ae49_8" ; -"reference_init_div0#8765531464226376816.66e8a6545ef6e4641561744b4125ae49_6" [label="6: Prune (false branch, if) \n n$1=*&a:int& [line 50, column 12]\n n$2=*n$1:int [line 50, column 12]\n PRUNE(!n$2, false); [line 50, column 12]\n " shape="invhouse"] +"reference_init_div0#8765531464226376816.66e8a6545ef6e4641561744b4125ae49_6" [label="6: Prune (false branch, if) \n n$2=*&a:int& [line 50, column 12]\n n$3=*n$2:int [line 50, column 12]\n PRUNE(!n$3, false); [line 50, column 12]\n " shape="invhouse"] "reference_init_div0#8765531464226376816.66e8a6545ef6e4641561744b4125ae49_6" -> "reference_init_div0#8765531464226376816.66e8a6545ef6e4641561744b4125ae49_4" ; @@ -124,7 +124,7 @@ digraph cfg { "reference_init_div0#8765531464226376816.66e8a6545ef6e4641561744b4125ae49_7" -> "reference_init_div0#8765531464226376816.66e8a6545ef6e4641561744b4125ae49_5" ; "reference_init_div0#8765531464226376816.66e8a6545ef6e4641561744b4125ae49_7" -> "reference_init_div0#8765531464226376816.66e8a6545ef6e4641561744b4125ae49_6" ; -"reference_init_div0#8765531464226376816.66e8a6545ef6e4641561744b4125ae49_8" [label="8: BinaryOperatorStmt: Assign \n n$3=*&a:int& [line 51, column 5]\n *n$3:int=0 [line 51, column 5]\n " shape="box"] +"reference_init_div0#8765531464226376816.66e8a6545ef6e4641561744b4125ae49_8" [label="8: BinaryOperatorStmt: Assign \n n$5=*&a:int& [line 51, column 5]\n *n$5:int=0 [line 51, column 5]\n " shape="box"] "reference_init_div0#8765531464226376816.66e8a6545ef6e4641561744b4125ae49_8" -> "reference_init_div0#8765531464226376816.66e8a6545ef6e4641561744b4125ae49_4" ; @@ -147,11 +147,11 @@ digraph cfg { "simple_inif_elseif_div0#1757541495273878703.c8ccefe72cee28b41298deb3c0060bd6_4" -> "simple_inif_elseif_div0#1757541495273878703.c8ccefe72cee28b41298deb3c0060bd6_2" ; -"simple_inif_elseif_div0#1757541495273878703.c8ccefe72cee28b41298deb3c0060bd6_5" [label="5: Prune (true branch, if) \n n$0=*&a:int [line 25, column 11]\n PRUNE(n$0, true); [line 25, column 11]\n " shape="invhouse"] +"simple_inif_elseif_div0#1757541495273878703.c8ccefe72cee28b41298deb3c0060bd6_5" [label="5: Prune (true branch, if) \n n$1=*&a:int [line 25, column 11]\n PRUNE(n$1, true); [line 25, column 11]\n " shape="invhouse"] "simple_inif_elseif_div0#1757541495273878703.c8ccefe72cee28b41298deb3c0060bd6_5" -> "simple_inif_elseif_div0#1757541495273878703.c8ccefe72cee28b41298deb3c0060bd6_8" ; -"simple_inif_elseif_div0#1757541495273878703.c8ccefe72cee28b41298deb3c0060bd6_6" [label="6: Prune (false branch, if) \n n$0=*&a:int [line 25, column 11]\n PRUNE(!n$0, false); [line 25, column 11]\n " shape="invhouse"] +"simple_inif_elseif_div0#1757541495273878703.c8ccefe72cee28b41298deb3c0060bd6_6" [label="6: Prune (false branch, if) \n n$1=*&a:int [line 25, column 11]\n PRUNE(!n$1, false); [line 25, column 11]\n " shape="invhouse"] "simple_inif_elseif_div0#1757541495273878703.c8ccefe72cee28b41298deb3c0060bd6_6" -> "simple_inif_elseif_div0#1757541495273878703.c8ccefe72cee28b41298deb3c0060bd6_12" ; @@ -168,11 +168,11 @@ digraph cfg { "simple_inif_elseif_div0#1757541495273878703.c8ccefe72cee28b41298deb3c0060bd6_9" -> "simple_inif_elseif_div0#1757541495273878703.c8ccefe72cee28b41298deb3c0060bd6_3" ; -"simple_inif_elseif_div0#1757541495273878703.c8ccefe72cee28b41298deb3c0060bd6_10" [label="10: Prune (true branch, if) \n n$1=*&b:int [line 27, column 18]\n PRUNE(n$1, true); [line 27, column 18]\n " shape="invhouse"] +"simple_inif_elseif_div0#1757541495273878703.c8ccefe72cee28b41298deb3c0060bd6_10" [label="10: Prune (true branch, if) \n n$3=*&b:int [line 27, column 18]\n PRUNE(n$3, true); [line 27, column 18]\n " shape="invhouse"] "simple_inif_elseif_div0#1757541495273878703.c8ccefe72cee28b41298deb3c0060bd6_10" -> "simple_inif_elseif_div0#1757541495273878703.c8ccefe72cee28b41298deb3c0060bd6_13" ; -"simple_inif_elseif_div0#1757541495273878703.c8ccefe72cee28b41298deb3c0060bd6_11" [label="11: Prune (false branch, if) \n n$1=*&b:int [line 27, column 18]\n PRUNE(!n$1, false); [line 27, column 18]\n " shape="invhouse"] +"simple_inif_elseif_div0#1757541495273878703.c8ccefe72cee28b41298deb3c0060bd6_11" [label="11: Prune (false branch, if) \n n$3=*&b:int [line 27, column 18]\n PRUNE(!n$3, false); [line 27, column 18]\n " shape="invhouse"] "simple_inif_elseif_div0#1757541495273878703.c8ccefe72cee28b41298deb3c0060bd6_11" -> "simple_inif_elseif_div0#1757541495273878703.c8ccefe72cee28b41298deb3c0060bd6_14" ; @@ -185,7 +185,7 @@ digraph cfg { "simple_inif_elseif_div0#1757541495273878703.c8ccefe72cee28b41298deb3c0060bd6_13" -> "simple_inif_elseif_div0#1757541495273878703.c8ccefe72cee28b41298deb3c0060bd6_2" ; -"simple_inif_elseif_div0#1757541495273878703.c8ccefe72cee28b41298deb3c0060bd6_14" [label="14: Return Stmt \n n$2=*&a:int [line 30, column 17]\n n$3=*&b:int [line 30, column 21]\n *&return:int=(1 / (n$2 + n$3)) [line 30, column 5]\n " shape="box"] +"simple_inif_elseif_div0#1757541495273878703.c8ccefe72cee28b41298deb3c0060bd6_14" [label="14: Return Stmt \n n$5=*&a:int [line 30, column 17]\n n$6=*&b:int [line 30, column 21]\n *&return:int=(1 / (n$5 + n$6)) [line 30, column 5]\n " shape="box"] "simple_inif_elseif_div0#1757541495273878703.c8ccefe72cee28b41298deb3c0060bd6_14" -> "simple_inif_elseif_div0#1757541495273878703.c8ccefe72cee28b41298deb3c0060bd6_2" ; @@ -204,11 +204,11 @@ digraph cfg { "simple_init_div0#11745425529376514034.212fa73086397a0d668498a9c8eff99e_4" -> "simple_init_div0#11745425529376514034.212fa73086397a0d668498a9c8eff99e_2" ; -"simple_init_div0#11745425529376514034.212fa73086397a0d668498a9c8eff99e_5" [label="5: Prune (true branch, if) \n n$0=*&a:int [line 17, column 11]\n PRUNE(n$0, true); [line 17, column 11]\n " shape="invhouse"] +"simple_init_div0#11745425529376514034.212fa73086397a0d668498a9c8eff99e_5" [label="5: Prune (true branch, if) \n n$1=*&a:int [line 17, column 11]\n PRUNE(n$1, true); [line 17, column 11]\n " shape="invhouse"] "simple_init_div0#11745425529376514034.212fa73086397a0d668498a9c8eff99e_5" -> "simple_init_div0#11745425529376514034.212fa73086397a0d668498a9c8eff99e_8" ; -"simple_init_div0#11745425529376514034.212fa73086397a0d668498a9c8eff99e_6" [label="6: Prune (false branch, if) \n n$0=*&a:int [line 17, column 11]\n PRUNE(!n$0, false); [line 17, column 11]\n " shape="invhouse"] +"simple_init_div0#11745425529376514034.212fa73086397a0d668498a9c8eff99e_6" [label="6: Prune (false branch, if) \n n$1=*&a:int [line 17, column 11]\n PRUNE(!n$1, false); [line 17, column 11]\n " shape="invhouse"] "simple_init_div0#11745425529376514034.212fa73086397a0d668498a9c8eff99e_6" -> "simple_init_div0#11745425529376514034.212fa73086397a0d668498a9c8eff99e_9" ; @@ -217,11 +217,11 @@ digraph cfg { "simple_init_div0#11745425529376514034.212fa73086397a0d668498a9c8eff99e_7" -> "simple_init_div0#11745425529376514034.212fa73086397a0d668498a9c8eff99e_5" ; "simple_init_div0#11745425529376514034.212fa73086397a0d668498a9c8eff99e_7" -> "simple_init_div0#11745425529376514034.212fa73086397a0d668498a9c8eff99e_6" ; -"simple_init_div0#11745425529376514034.212fa73086397a0d668498a9c8eff99e_8" [label="8: Return Stmt \n n$1=*&a:int [line 18, column 12]\n *&return:int=n$1 [line 18, column 5]\n " shape="box"] +"simple_init_div0#11745425529376514034.212fa73086397a0d668498a9c8eff99e_8" [label="8: Return Stmt \n n$2=*&a:int [line 18, column 12]\n *&return:int=n$2 [line 18, column 5]\n " shape="box"] "simple_init_div0#11745425529376514034.212fa73086397a0d668498a9c8eff99e_8" -> "simple_init_div0#11745425529376514034.212fa73086397a0d668498a9c8eff99e_2" ; -"simple_init_div0#11745425529376514034.212fa73086397a0d668498a9c8eff99e_9" [label="9: Return Stmt \n n$2=*&a:int [line 20, column 16]\n *&return:int=(1 / n$2) [line 20, column 5]\n " shape="box"] +"simple_init_div0#11745425529376514034.212fa73086397a0d668498a9c8eff99e_9" [label="9: Return Stmt \n n$4=*&a:int [line 20, column 16]\n *&return:int=(1 / n$4) [line 20, column 5]\n " shape="box"] "simple_init_div0#11745425529376514034.212fa73086397a0d668498a9c8eff99e_9" -> "simple_init_div0#11745425529376514034.212fa73086397a0d668498a9c8eff99e_2" ; @@ -240,11 +240,11 @@ digraph cfg { "simple_init_div1#11746272153330047279.0563640869475a4683e824c15c85a68a_4" -> "simple_init_div1#11746272153330047279.0563640869475a4683e824c15c85a68a_2" ; -"simple_init_div1#11746272153330047279.0563640869475a4683e824c15c85a68a_5" [label="5: Prune (true branch, if) \n n$0=*&a:int [line 11, column 11]\n PRUNE(n$0, true); [line 11, column 11]\n " shape="invhouse"] +"simple_init_div1#11746272153330047279.0563640869475a4683e824c15c85a68a_5" [label="5: Prune (true branch, if) \n n$1=*&a:int [line 11, column 11]\n PRUNE(n$1, true); [line 11, column 11]\n " shape="invhouse"] "simple_init_div1#11746272153330047279.0563640869475a4683e824c15c85a68a_5" -> "simple_init_div1#11746272153330047279.0563640869475a4683e824c15c85a68a_8" ; -"simple_init_div1#11746272153330047279.0563640869475a4683e824c15c85a68a_6" [label="6: Prune (false branch, if) \n n$0=*&a:int [line 11, column 11]\n PRUNE(!n$0, false); [line 11, column 11]\n " shape="invhouse"] +"simple_init_div1#11746272153330047279.0563640869475a4683e824c15c85a68a_6" [label="6: Prune (false branch, if) \n n$1=*&a:int [line 11, column 11]\n PRUNE(!n$1, false); [line 11, column 11]\n " shape="invhouse"] "simple_init_div1#11746272153330047279.0563640869475a4683e824c15c85a68a_6" -> "simple_init_div1#11746272153330047279.0563640869475a4683e824c15c85a68a_3" ; @@ -253,7 +253,7 @@ digraph cfg { "simple_init_div1#11746272153330047279.0563640869475a4683e824c15c85a68a_7" -> "simple_init_div1#11746272153330047279.0563640869475a4683e824c15c85a68a_5" ; "simple_init_div1#11746272153330047279.0563640869475a4683e824c15c85a68a_7" -> "simple_init_div1#11746272153330047279.0563640869475a4683e824c15c85a68a_6" ; -"simple_init_div1#11746272153330047279.0563640869475a4683e824c15c85a68a_8" [label="8: Return Stmt \n n$1=*&a:int [line 12, column 16]\n *&return:int=(1 / n$1) [line 12, column 5]\n " shape="box"] +"simple_init_div1#11746272153330047279.0563640869475a4683e824c15c85a68a_8" [label="8: Return Stmt \n n$2=*&a:int [line 12, column 16]\n *&return:int=(1 / n$2) [line 12, column 5]\n " shape="box"] "simple_init_div1#11746272153330047279.0563640869475a4683e824c15c85a68a_8" -> "simple_init_div1#11746272153330047279.0563640869475a4683e824c15c85a68a_2" ; @@ -272,11 +272,11 @@ digraph cfg { "simple_init_null_deref#4388790903269166010.3931bff4c48c8b02a470a54ec37db174_4" -> "simple_init_null_deref#4388790903269166010.3931bff4c48c8b02a470a54ec37db174_2" ; -"simple_init_null_deref#4388790903269166010.3931bff4c48c8b02a470a54ec37db174_5" [label="5: Prune (true branch, if) \n n$0=*&p:int* [line 57, column 12]\n PRUNE(n$0, true); [line 57, column 12]\n " shape="invhouse"] +"simple_init_null_deref#4388790903269166010.3931bff4c48c8b02a470a54ec37db174_5" [label="5: Prune (true branch, if) \n n$1=*&p:int* [line 57, column 12]\n PRUNE(n$1, true); [line 57, column 12]\n " shape="invhouse"] "simple_init_null_deref#4388790903269166010.3931bff4c48c8b02a470a54ec37db174_5" -> "simple_init_null_deref#4388790903269166010.3931bff4c48c8b02a470a54ec37db174_8" ; -"simple_init_null_deref#4388790903269166010.3931bff4c48c8b02a470a54ec37db174_6" [label="6: Prune (false branch, if) \n n$0=*&p:int* [line 57, column 12]\n PRUNE(!n$0, false); [line 57, column 12]\n " shape="invhouse"] +"simple_init_null_deref#4388790903269166010.3931bff4c48c8b02a470a54ec37db174_6" [label="6: Prune (false branch, if) \n n$1=*&p:int* [line 57, column 12]\n PRUNE(!n$1, false); [line 57, column 12]\n " shape="invhouse"] "simple_init_null_deref#4388790903269166010.3931bff4c48c8b02a470a54ec37db174_6" -> "simple_init_null_deref#4388790903269166010.3931bff4c48c8b02a470a54ec37db174_9" ; @@ -289,7 +289,7 @@ digraph cfg { "simple_init_null_deref#4388790903269166010.3931bff4c48c8b02a470a54ec37db174_8" -> "simple_init_null_deref#4388790903269166010.3931bff4c48c8b02a470a54ec37db174_2" ; -"simple_init_null_deref#4388790903269166010.3931bff4c48c8b02a470a54ec37db174_9" [label="9: Return Stmt \n n$1=*&p:int* [line 60, column 13]\n n$2=*n$1:int [line 60, column 12]\n *&return:int=n$2 [line 60, column 5]\n " shape="box"] +"simple_init_null_deref#4388790903269166010.3931bff4c48c8b02a470a54ec37db174_9" [label="9: Return Stmt \n n$3=*&p:int* [line 60, column 13]\n n$4=*n$3:int [line 60, column 12]\n *&return:int=n$4 [line 60, column 5]\n " shape="box"] "simple_init_null_deref#4388790903269166010.3931bff4c48c8b02a470a54ec37db174_9" -> "simple_init_null_deref#4388790903269166010.3931bff4c48c8b02a470a54ec37db174_2" ; diff --git a/infer/tests/codetoanalyze/cpp/shared/nestedoperators/var_decl_inside_switch.cpp.dot b/infer/tests/codetoanalyze/cpp/shared/nestedoperators/var_decl_inside_switch.cpp.dot index 2efd898e7..a56f8b528 100644 --- a/infer/tests/codetoanalyze/cpp/shared/nestedoperators/var_decl_inside_switch.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/shared/nestedoperators/var_decl_inside_switch.cpp.dot @@ -7,12 +7,12 @@ digraph cfg { "get#10177141129833125794.403aae26476e3a02c544075e122228e0_2" [label="2: Exit get \n " color=yellow style=filled] -"get#10177141129833125794.403aae26476e3a02c544075e122228e0_3" [label="3: Switch_stmt \n n$0=*&x:int [line 11, column 15]\n " shape="box"] +"get#10177141129833125794.403aae26476e3a02c544075e122228e0_3" [label="3: Switch_stmt \n n$1=*&x:int [line 11, column 15]\n " shape="box"] "get#10177141129833125794.403aae26476e3a02c544075e122228e0_3" -> "get#10177141129833125794.403aae26476e3a02c544075e122228e0_13" ; "get#10177141129833125794.403aae26476e3a02c544075e122228e0_3" -> "get#10177141129833125794.403aae26476e3a02c544075e122228e0_14" ; -"get#10177141129833125794.403aae26476e3a02c544075e122228e0_4" [label="4: DeclStmt \n n$1=*&a:int [line 11, column 19]\n *&x:int=n$1 [line 11, column 11]\n " shape="box"] +"get#10177141129833125794.403aae26476e3a02c544075e122228e0_4" [label="4: DeclStmt \n n$2=*&a:int [line 11, column 19]\n *&x:int=n$2 [line 11, column 11]\n " shape="box"] "get#10177141129833125794.403aae26476e3a02c544075e122228e0_4" -> "get#10177141129833125794.403aae26476e3a02c544075e122228e0_3" ; @@ -20,7 +20,7 @@ digraph cfg { "get#10177141129833125794.403aae26476e3a02c544075e122228e0_5" -> "get#10177141129833125794.403aae26476e3a02c544075e122228e0_6" ; -"get#10177141129833125794.403aae26476e3a02c544075e122228e0_6" [label="6: Return Stmt \n n$2=*&x:int [line 18, column 14]\n *&return:int=n$2 [line 18, column 7]\n " shape="box"] +"get#10177141129833125794.403aae26476e3a02c544075e122228e0_6" [label="6: Return Stmt \n n$3=*&x:int [line 18, column 14]\n *&return:int=n$3 [line 18, column 7]\n " shape="box"] "get#10177141129833125794.403aae26476e3a02c544075e122228e0_6" -> "get#10177141129833125794.403aae26476e3a02c544075e122228e0_2" ; @@ -28,11 +28,11 @@ digraph cfg { "get#10177141129833125794.403aae26476e3a02c544075e122228e0_7" -> "get#10177141129833125794.403aae26476e3a02c544075e122228e0_2" ; -"get#10177141129833125794.403aae26476e3a02c544075e122228e0_8" [label="8: Prune (true branch, switch) \n PRUNE((n$0 == 2), true); [line 15, column 5]\n " shape="invhouse"] +"get#10177141129833125794.403aae26476e3a02c544075e122228e0_8" [label="8: Prune (true branch, switch) \n PRUNE((n$1 == 2), true); [line 15, column 5]\n " shape="invhouse"] "get#10177141129833125794.403aae26476e3a02c544075e122228e0_8" -> "get#10177141129833125794.403aae26476e3a02c544075e122228e0_7" ; -"get#10177141129833125794.403aae26476e3a02c544075e122228e0_9" [label="9: Prune (false branch, switch) \n PRUNE(!(n$0 == 2), false); [line 15, column 5]\n " shape="invhouse"] +"get#10177141129833125794.403aae26476e3a02c544075e122228e0_9" [label="9: Prune (false branch, switch) \n PRUNE(!(n$1 == 2), false); [line 15, column 5]\n " shape="invhouse"] "get#10177141129833125794.403aae26476e3a02c544075e122228e0_9" -> "get#10177141129833125794.403aae26476e3a02c544075e122228e0_5" ; @@ -40,20 +40,20 @@ digraph cfg { "get#10177141129833125794.403aae26476e3a02c544075e122228e0_10" -> "get#10177141129833125794.403aae26476e3a02c544075e122228e0_2" ; -"get#10177141129833125794.403aae26476e3a02c544075e122228e0_11" [label="11: Prune (true branch, switch) \n PRUNE((n$0 == 1), true); [line 13, column 5]\n " shape="invhouse"] +"get#10177141129833125794.403aae26476e3a02c544075e122228e0_11" [label="11: Prune (true branch, switch) \n PRUNE((n$1 == 1), true); [line 13, column 5]\n " shape="invhouse"] "get#10177141129833125794.403aae26476e3a02c544075e122228e0_11" -> "get#10177141129833125794.403aae26476e3a02c544075e122228e0_10" ; -"get#10177141129833125794.403aae26476e3a02c544075e122228e0_12" [label="12: Prune (false branch, switch) \n PRUNE(!(n$0 == 1), false); [line 13, column 5]\n " shape="invhouse"] +"get#10177141129833125794.403aae26476e3a02c544075e122228e0_12" [label="12: Prune (false branch, switch) \n PRUNE(!(n$1 == 1), false); [line 13, column 5]\n " shape="invhouse"] "get#10177141129833125794.403aae26476e3a02c544075e122228e0_12" -> "get#10177141129833125794.403aae26476e3a02c544075e122228e0_8" ; "get#10177141129833125794.403aae26476e3a02c544075e122228e0_12" -> "get#10177141129833125794.403aae26476e3a02c544075e122228e0_9" ; -"get#10177141129833125794.403aae26476e3a02c544075e122228e0_13" [label="13: Prune (true branch, switch) \n PRUNE((n$0 == 0), true); [line 12, column 5]\n " shape="invhouse"] +"get#10177141129833125794.403aae26476e3a02c544075e122228e0_13" [label="13: Prune (true branch, switch) \n PRUNE((n$1 == 0), true); [line 12, column 5]\n " shape="invhouse"] "get#10177141129833125794.403aae26476e3a02c544075e122228e0_13" -> "get#10177141129833125794.403aae26476e3a02c544075e122228e0_10" ; -"get#10177141129833125794.403aae26476e3a02c544075e122228e0_14" [label="14: Prune (false branch, switch) \n PRUNE(!(n$0 == 0), false); [line 12, column 5]\n " shape="invhouse"] +"get#10177141129833125794.403aae26476e3a02c544075e122228e0_14" [label="14: Prune (false branch, switch) \n PRUNE(!(n$1 == 0), false); [line 12, column 5]\n " shape="invhouse"] "get#10177141129833125794.403aae26476e3a02c544075e122228e0_14" -> "get#10177141129833125794.403aae26476e3a02c544075e122228e0_11" ; diff --git a/infer/tests/codetoanalyze/cpp/shared/nestedoperators/var_decl_inside_while.cpp.dot b/infer/tests/codetoanalyze/cpp/shared/nestedoperators/var_decl_inside_while.cpp.dot index 673845d60..1f67acd75 100644 --- a/infer/tests/codetoanalyze/cpp/shared/nestedoperators/var_decl_inside_while.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/shared/nestedoperators/var_decl_inside_while.cpp.dot @@ -1,6 +1,6 @@ /* @generated */ digraph cfg { -"conditional_assignment#8950169167588471442.be2d62cec5392b85b8d4d274664d86c5_1" [label="1: Start conditional_assignment\nFormals: \nLocals: a:int 0$?%__sil_tmpSIL_temp_conditional___n$1:int result:int x:int \n DECLARE_LOCALS(&return,&a,&0$?%__sil_tmpSIL_temp_conditional___n$1,&result,&x); [line 20, column 1]\n " color=yellow style=filled] +"conditional_assignment#8950169167588471442.be2d62cec5392b85b8d4d274664d86c5_1" [label="1: Start conditional_assignment\nFormals: \nLocals: a:int 0$?%__sil_tmpSIL_temp_conditional___n$2:int result:int x:int \n DECLARE_LOCALS(&return,&a,&0$?%__sil_tmpSIL_temp_conditional___n$2,&result,&x); [line 20, column 1]\n " color=yellow style=filled] "conditional_assignment#8950169167588471442.be2d62cec5392b85b8d4d274664d86c5_1" -> "conditional_assignment#8950169167588471442.be2d62cec5392b85b8d4d274664d86c5_17" ; @@ -15,11 +15,11 @@ digraph cfg { "conditional_assignment#8950169167588471442.be2d62cec5392b85b8d4d274664d86c5_4" -> "conditional_assignment#8950169167588471442.be2d62cec5392b85b8d4d274664d86c5_8" ; -"conditional_assignment#8950169167588471442.be2d62cec5392b85b8d4d274664d86c5_5" [label="5: Prune (true branch, while) \n n$0=*&a:int [line 23, column 14]\n PRUNE(n$0, true); [line 23, column 14]\n " shape="invhouse"] +"conditional_assignment#8950169167588471442.be2d62cec5392b85b8d4d274664d86c5_5" [label="5: Prune (true branch, while) \n n$1=*&a:int [line 23, column 14]\n PRUNE(n$1, true); [line 23, column 14]\n " shape="invhouse"] "conditional_assignment#8950169167588471442.be2d62cec5392b85b8d4d274664d86c5_5" -> "conditional_assignment#8950169167588471442.be2d62cec5392b85b8d4d274664d86c5_15" ; -"conditional_assignment#8950169167588471442.be2d62cec5392b85b8d4d274664d86c5_6" [label="6: Prune (false branch, while) \n n$0=*&a:int [line 23, column 14]\n PRUNE(!n$0, false); [line 23, column 14]\n " shape="invhouse"] +"conditional_assignment#8950169167588471442.be2d62cec5392b85b8d4d274664d86c5_6" [label="6: Prune (false branch, while) \n n$1=*&a:int [line 23, column 14]\n PRUNE(!n$1, false); [line 23, column 14]\n " shape="invhouse"] "conditional_assignment#8950169167588471442.be2d62cec5392b85b8d4d274664d86c5_6" -> "conditional_assignment#8950169167588471442.be2d62cec5392b85b8d4d274664d86c5_3" ; @@ -27,37 +27,37 @@ digraph cfg { "conditional_assignment#8950169167588471442.be2d62cec5392b85b8d4d274664d86c5_7" -> "conditional_assignment#8950169167588471442.be2d62cec5392b85b8d4d274664d86c5_13" ; -"conditional_assignment#8950169167588471442.be2d62cec5392b85b8d4d274664d86c5_8" [label="8: BinaryOperatorStmt: GT \n n$2=*&x:int [line 23, column 18]\n " shape="box"] +"conditional_assignment#8950169167588471442.be2d62cec5392b85b8d4d274664d86c5_8" [label="8: BinaryOperatorStmt: GT \n n$3=*&x:int [line 23, column 18]\n " shape="box"] "conditional_assignment#8950169167588471442.be2d62cec5392b85b8d4d274664d86c5_8" -> "conditional_assignment#8950169167588471442.be2d62cec5392b85b8d4d274664d86c5_9" ; "conditional_assignment#8950169167588471442.be2d62cec5392b85b8d4d274664d86c5_8" -> "conditional_assignment#8950169167588471442.be2d62cec5392b85b8d4d274664d86c5_10" ; -"conditional_assignment#8950169167588471442.be2d62cec5392b85b8d4d274664d86c5_9" [label="9: Prune (true branch, boolean exp) \n PRUNE((n$2 > 0), true); [line 23, column 18]\n " shape="invhouse"] +"conditional_assignment#8950169167588471442.be2d62cec5392b85b8d4d274664d86c5_9" [label="9: Prune (true branch, boolean exp) \n PRUNE((n$3 > 0), true); [line 23, column 18]\n " shape="invhouse"] "conditional_assignment#8950169167588471442.be2d62cec5392b85b8d4d274664d86c5_9" -> "conditional_assignment#8950169167588471442.be2d62cec5392b85b8d4d274664d86c5_11" ; -"conditional_assignment#8950169167588471442.be2d62cec5392b85b8d4d274664d86c5_10" [label="10: Prune (false branch, boolean exp) \n PRUNE(!(n$2 > 0), false); [line 23, column 18]\n " shape="invhouse"] +"conditional_assignment#8950169167588471442.be2d62cec5392b85b8d4d274664d86c5_10" [label="10: Prune (false branch, boolean exp) \n PRUNE(!(n$3 > 0), false); [line 23, column 18]\n " shape="invhouse"] "conditional_assignment#8950169167588471442.be2d62cec5392b85b8d4d274664d86c5_10" -> "conditional_assignment#8950169167588471442.be2d62cec5392b85b8d4d274664d86c5_12" ; -"conditional_assignment#8950169167588471442.be2d62cec5392b85b8d4d274664d86c5_11" [label="11: ConditinalStmt Branch \n n$3=*&x:int [line 23, column 26]\n *&0$?%__sil_tmpSIL_temp_conditional___n$1:int=n$3 [line 23, column 18]\n " shape="box"] +"conditional_assignment#8950169167588471442.be2d62cec5392b85b8d4d274664d86c5_11" [label="11: ConditionalStmt Branch \n n$4=*&x:int [line 23, column 26]\n *&0$?%__sil_tmpSIL_temp_conditional___n$2:int=n$4 [line 23, column 18]\n " shape="box"] "conditional_assignment#8950169167588471442.be2d62cec5392b85b8d4d274664d86c5_11" -> "conditional_assignment#8950169167588471442.be2d62cec5392b85b8d4d274664d86c5_7" ; -"conditional_assignment#8950169167588471442.be2d62cec5392b85b8d4d274664d86c5_12" [label="12: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$1:int=0 [line 23, column 18]\n " shape="box"] +"conditional_assignment#8950169167588471442.be2d62cec5392b85b8d4d274664d86c5_12" [label="12: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$2:int=0 [line 23, column 18]\n " shape="box"] "conditional_assignment#8950169167588471442.be2d62cec5392b85b8d4d274664d86c5_12" -> "conditional_assignment#8950169167588471442.be2d62cec5392b85b8d4d274664d86c5_7" ; -"conditional_assignment#8950169167588471442.be2d62cec5392b85b8d4d274664d86c5_13" [label="13: DeclStmt \n n$4=*&0$?%__sil_tmpSIL_temp_conditional___n$1:int [line 23, column 18]\n *&a:int=n$4 [line 23, column 10]\n " shape="box"] +"conditional_assignment#8950169167588471442.be2d62cec5392b85b8d4d274664d86c5_13" [label="13: DeclStmt \n n$5=*&0$?%__sil_tmpSIL_temp_conditional___n$2:int [line 23, column 18]\n *&a:int=n$5 [line 23, column 10]\n " shape="box"] "conditional_assignment#8950169167588471442.be2d62cec5392b85b8d4d274664d86c5_13" -> "conditional_assignment#8950169167588471442.be2d62cec5392b85b8d4d274664d86c5_5" ; "conditional_assignment#8950169167588471442.be2d62cec5392b85b8d4d274664d86c5_13" -> "conditional_assignment#8950169167588471442.be2d62cec5392b85b8d4d274664d86c5_6" ; -"conditional_assignment#8950169167588471442.be2d62cec5392b85b8d4d274664d86c5_14" [label="14: BinaryOperatorStmt: SubAssign \n n$5=*&x:int [line 25, column 5]\n *&x:int=(n$5 - 1) [line 25, column 5]\n " shape="box"] +"conditional_assignment#8950169167588471442.be2d62cec5392b85b8d4d274664d86c5_14" [label="14: BinaryOperatorStmt: SubAssign \n n$7=*&x:int [line 25, column 5]\n *&x:int=(n$7 - 1) [line 25, column 5]\n " shape="box"] "conditional_assignment#8950169167588471442.be2d62cec5392b85b8d4d274664d86c5_14" -> "conditional_assignment#8950169167588471442.be2d62cec5392b85b8d4d274664d86c5_4" ; -"conditional_assignment#8950169167588471442.be2d62cec5392b85b8d4d274664d86c5_15" [label="15: BinaryOperatorStmt: AddAssign \n n$6=*&a:int [line 24, column 15]\n n$7=*&result:int [line 24, column 5]\n *&result:int=(n$7 + n$6) [line 24, column 5]\n " shape="box"] +"conditional_assignment#8950169167588471442.be2d62cec5392b85b8d4d274664d86c5_15" [label="15: BinaryOperatorStmt: AddAssign \n n$8=*&a:int [line 24, column 15]\n n$9=*&result:int [line 24, column 5]\n *&result:int=(n$9 + n$8) [line 24, column 5]\n " shape="box"] "conditional_assignment#8950169167588471442.be2d62cec5392b85b8d4d274664d86c5_15" -> "conditional_assignment#8950169167588471442.be2d62cec5392b85b8d4d274664d86c5_14" ; @@ -84,24 +84,24 @@ digraph cfg { "simple_assignment#6454162814810356464.3b57619dd6c2d612798bc9ac9e7cf8ee_4" -> "simple_assignment#6454162814810356464.3b57619dd6c2d612798bc9ac9e7cf8ee_7" ; -"simple_assignment#6454162814810356464.3b57619dd6c2d612798bc9ac9e7cf8ee_5" [label="5: Prune (true branch, while) \n n$0=*&a:int [line 13, column 14]\n PRUNE(n$0, true); [line 13, column 14]\n " shape="invhouse"] +"simple_assignment#6454162814810356464.3b57619dd6c2d612798bc9ac9e7cf8ee_5" [label="5: Prune (true branch, while) \n n$1=*&a:int [line 13, column 14]\n PRUNE(n$1, true); [line 13, column 14]\n " shape="invhouse"] "simple_assignment#6454162814810356464.3b57619dd6c2d612798bc9ac9e7cf8ee_5" -> "simple_assignment#6454162814810356464.3b57619dd6c2d612798bc9ac9e7cf8ee_9" ; -"simple_assignment#6454162814810356464.3b57619dd6c2d612798bc9ac9e7cf8ee_6" [label="6: Prune (false branch, while) \n n$0=*&a:int [line 13, column 14]\n PRUNE(!n$0, false); [line 13, column 14]\n " shape="invhouse"] +"simple_assignment#6454162814810356464.3b57619dd6c2d612798bc9ac9e7cf8ee_6" [label="6: Prune (false branch, while) \n n$1=*&a:int [line 13, column 14]\n PRUNE(!n$1, false); [line 13, column 14]\n " shape="invhouse"] "simple_assignment#6454162814810356464.3b57619dd6c2d612798bc9ac9e7cf8ee_6" -> "simple_assignment#6454162814810356464.3b57619dd6c2d612798bc9ac9e7cf8ee_3" ; -"simple_assignment#6454162814810356464.3b57619dd6c2d612798bc9ac9e7cf8ee_7" [label="7: DeclStmt \n n$1=*&x:int [line 13, column 18]\n *&a:int=n$1 [line 13, column 10]\n " shape="box"] +"simple_assignment#6454162814810356464.3b57619dd6c2d612798bc9ac9e7cf8ee_7" [label="7: DeclStmt \n n$2=*&x:int [line 13, column 18]\n *&a:int=n$2 [line 13, column 10]\n " shape="box"] "simple_assignment#6454162814810356464.3b57619dd6c2d612798bc9ac9e7cf8ee_7" -> "simple_assignment#6454162814810356464.3b57619dd6c2d612798bc9ac9e7cf8ee_5" ; "simple_assignment#6454162814810356464.3b57619dd6c2d612798bc9ac9e7cf8ee_7" -> "simple_assignment#6454162814810356464.3b57619dd6c2d612798bc9ac9e7cf8ee_6" ; -"simple_assignment#6454162814810356464.3b57619dd6c2d612798bc9ac9e7cf8ee_8" [label="8: BinaryOperatorStmt: SubAssign \n n$2=*&x:int [line 15, column 5]\n *&x:int=(n$2 - 1) [line 15, column 5]\n " shape="box"] +"simple_assignment#6454162814810356464.3b57619dd6c2d612798bc9ac9e7cf8ee_8" [label="8: BinaryOperatorStmt: SubAssign \n n$4=*&x:int [line 15, column 5]\n *&x:int=(n$4 - 1) [line 15, column 5]\n " shape="box"] "simple_assignment#6454162814810356464.3b57619dd6c2d612798bc9ac9e7cf8ee_8" -> "simple_assignment#6454162814810356464.3b57619dd6c2d612798bc9ac9e7cf8ee_4" ; -"simple_assignment#6454162814810356464.3b57619dd6c2d612798bc9ac9e7cf8ee_9" [label="9: BinaryOperatorStmt: AddAssign \n n$3=*&a:int [line 14, column 15]\n n$4=*&result:int [line 14, column 5]\n *&result:int=(n$4 + n$3) [line 14, column 5]\n " shape="box"] +"simple_assignment#6454162814810356464.3b57619dd6c2d612798bc9ac9e7cf8ee_9" [label="9: BinaryOperatorStmt: AddAssign \n n$5=*&a:int [line 14, column 15]\n n$6=*&result:int [line 14, column 5]\n *&result:int=(n$6 + n$5) [line 14, column 5]\n " shape="box"] "simple_assignment#6454162814810356464.3b57619dd6c2d612798bc9ac9e7cf8ee_9" -> "simple_assignment#6454162814810356464.3b57619dd6c2d612798bc9ac9e7cf8ee_8" ; diff --git a/infer/tests/codetoanalyze/cpp/shared/npe/method_call.cpp.dot b/infer/tests/codetoanalyze/cpp/shared/npe/method_call.cpp.dot index ae8d63d83..817f12d69 100644 --- a/infer/tests/codetoanalyze/cpp/shared/npe/method_call.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/shared/npe/method_call.cpp.dot @@ -7,7 +7,7 @@ digraph cfg { "call_with_forward_declaration#16178135517860387666.7dab8d0b16e63b8b27f5ae7c5c45a070_2" [label="2: Exit call_with_forward_declaration \n " color=yellow style=filled] -"call_with_forward_declaration#16178135517860387666.7dab8d0b16e63b8b27f5ae7c5c45a070_3" [label="3: Call _fun_XForward_call \n n$0=*&x:XForward* [line 35, column 51]\n _=*n$0:XForward [line 35, column 51]\n n$2=_fun_XForward_call(n$0:XForward*) [line 35, column 51]\n " shape="box"] +"call_with_forward_declaration#16178135517860387666.7dab8d0b16e63b8b27f5ae7c5c45a070_3" [label="3: Call _fun_XForward_call \n n$1=*&x:XForward* [line 35, column 51]\n _=*n$1:XForward [line 35, column 51]\n n$3=_fun_XForward_call(n$1:XForward*) [line 35, column 51]\n " shape="box"] "call_with_forward_declaration#16178135517860387666.7dab8d0b16e63b8b27f5ae7c5c45a070_3" -> "call_with_forward_declaration#16178135517860387666.7dab8d0b16e63b8b27f5ae7c5c45a070_2" ; @@ -44,7 +44,7 @@ digraph cfg { "npe_call_after_call#8140813350794705532.fd3a6d06275def8a130284a430f22a3d_2" [label="2: Exit npe_call_after_call \n " color=yellow style=filled] -"npe_call_after_call#8140813350794705532.fd3a6d06275def8a130284a430f22a3d_3" [label="3: Call _fun_X_call \n n$0=_fun_getX() [line 22, column 30]\n _=*n$0:X [line 22, column 30]\n n$2=_fun_X_call(n$0:X*) [line 22, column 30]\n " shape="box"] +"npe_call_after_call#8140813350794705532.fd3a6d06275def8a130284a430f22a3d_3" [label="3: Call _fun_X_call \n n$1=_fun_getX() [line 22, column 30]\n _=*n$1:X [line 22, column 30]\n n$3=_fun_X_call(n$1:X*) [line 22, column 30]\n " shape="box"] "npe_call_after_call#8140813350794705532.fd3a6d06275def8a130284a430f22a3d_3" -> "npe_call_after_call#8140813350794705532.fd3a6d06275def8a130284a430f22a3d_2" ; @@ -55,7 +55,7 @@ digraph cfg { "npe_call_with_forward_declaration#12046983290123510130.5e902eb9a8f96f74e83d527b422bd861_2" [label="2: Exit npe_call_with_forward_declaration \n " color=yellow style=filled] -"npe_call_with_forward_declaration#12046983290123510130.5e902eb9a8f96f74e83d527b422bd861_3" [label="3: Call _fun_call_with_forward_declaration \n n$0=_fun_call_with_forward_declaration(null:XForward*) [line 38, column 3]\n " shape="box"] +"npe_call_with_forward_declaration#12046983290123510130.5e902eb9a8f96f74e83d527b422bd861_3" [label="3: Call _fun_call_with_forward_declaration \n n$1=_fun_call_with_forward_declaration(null:XForward*) [line 38, column 3]\n " shape="box"] "npe_call_with_forward_declaration#12046983290123510130.5e902eb9a8f96f74e83d527b422bd861_3" -> "npe_call_with_forward_declaration#12046983290123510130.5e902eb9a8f96f74e83d527b422bd861_2" ; diff --git a/infer/tests/codetoanalyze/cpp/shared/reference/increment.cpp.dot b/infer/tests/codetoanalyze/cpp/shared/reference/increment.cpp.dot index adf8bbc5f..d59832904 100644 --- a/infer/tests/codetoanalyze/cpp/shared/reference/increment.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/shared/reference/increment.cpp.dot @@ -7,11 +7,11 @@ digraph cfg { "using_ref#11585308534136333375.096010b8466cdacb12ca24c30d2a7334_2" [label="2: Exit using_ref \n " color=yellow style=filled] -"using_ref#11585308534136333375.096010b8466cdacb12ca24c30d2a7334_3" [label="3: DeclStmt \n n$0=*&vr:int& [line 20, column 14]\n n$1=*n$0:int [line 20, column 12]\n *n$0:int=(n$1 - 1) [line 20, column 12]\n *&q:int&=n$0 [line 20, column 3]\n " shape="box"] +"using_ref#11585308534136333375.096010b8466cdacb12ca24c30d2a7334_3" [label="3: DeclStmt \n n$1=*&vr:int& [line 20, column 14]\n n$2=*n$1:int [line 20, column 12]\n *n$1:int=(n$2 - 1) [line 20, column 12]\n *&q:int&=n$1 [line 20, column 3]\n " shape="box"] "using_ref#11585308534136333375.096010b8466cdacb12ca24c30d2a7334_3" -> "using_ref#11585308534136333375.096010b8466cdacb12ca24c30d2a7334_2" ; -"using_ref#11585308534136333375.096010b8466cdacb12ca24c30d2a7334_4" [label="4: DeclStmt \n n$2=*&vr:int& [line 19, column 14]\n n$3=*n$2:int [line 19, column 12]\n *n$2:int=(n$3 + 1) [line 19, column 12]\n *&r:int&=n$2 [line 19, column 3]\n " shape="box"] +"using_ref#11585308534136333375.096010b8466cdacb12ca24c30d2a7334_4" [label="4: DeclStmt \n n$3=*&vr:int& [line 19, column 14]\n n$4=*n$3:int [line 19, column 12]\n *n$3:int=(n$4 + 1) [line 19, column 12]\n *&r:int&=n$3 [line 19, column 3]\n " shape="box"] "using_ref#11585308534136333375.096010b8466cdacb12ca24c30d2a7334_4" -> "using_ref#11585308534136333375.096010b8466cdacb12ca24c30d2a7334_3" ; @@ -30,11 +30,11 @@ digraph cfg { "using_value#13692921440907975250.fad67099f85ea68eb3281c85bd0ca170_2" [label="2: Exit using_value \n " color=yellow style=filled] -"using_value#13692921440907975250.fad67099f85ea68eb3281c85bd0ca170_3" [label="3: DeclStmt \n n$0=*&v:int [line 13, column 12]\n *&v:int=(n$0 - 1) [line 13, column 12]\n *&q:int&=&v [line 13, column 3]\n " shape="box"] +"using_value#13692921440907975250.fad67099f85ea68eb3281c85bd0ca170_3" [label="3: DeclStmt \n n$1=*&v:int [line 13, column 12]\n *&v:int=(n$1 - 1) [line 13, column 12]\n *&q:int&=&v [line 13, column 3]\n " shape="box"] "using_value#13692921440907975250.fad67099f85ea68eb3281c85bd0ca170_3" -> "using_value#13692921440907975250.fad67099f85ea68eb3281c85bd0ca170_2" ; -"using_value#13692921440907975250.fad67099f85ea68eb3281c85bd0ca170_4" [label="4: DeclStmt \n n$1=*&v:int [line 12, column 12]\n *&v:int=(n$1 + 1) [line 12, column 12]\n *&r:int&=&v [line 12, column 3]\n " shape="box"] +"using_value#13692921440907975250.fad67099f85ea68eb3281c85bd0ca170_4" [label="4: DeclStmt \n n$2=*&v:int [line 12, column 12]\n *&v:int=(n$2 + 1) [line 12, column 12]\n *&r:int&=&v [line 12, column 3]\n " shape="box"] "using_value#13692921440907975250.fad67099f85ea68eb3281c85bd0ca170_4" -> "using_value#13692921440907975250.fad67099f85ea68eb3281c85bd0ca170_3" ; diff --git a/infer/tests/codetoanalyze/cpp/shared/reference/init.cpp.dot b/infer/tests/codetoanalyze/cpp/shared/reference/init.cpp.dot index 13594fa7b..12a233f20 100644 --- a/infer/tests/codetoanalyze/cpp/shared/reference/init.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/shared/reference/init.cpp.dot @@ -7,15 +7,15 @@ digraph cfg { "init_from_ptr#9521990274512470149.d27094f3cfd0d42c143fba9593870578_2" [label="2: Exit init_from_ptr \n " color=yellow style=filled] -"init_from_ptr#9521990274512470149.d27094f3cfd0d42c143fba9593870578_3" [label="3: DeclStmt \n n$0=*&par:int* [line 25, column 12]\n *&p:int*=n$0 [line 25, column 3]\n " shape="box"] +"init_from_ptr#9521990274512470149.d27094f3cfd0d42c143fba9593870578_3" [label="3: DeclStmt \n n$1=*&par:int* [line 25, column 12]\n *&p:int*=n$1 [line 25, column 3]\n " shape="box"] "init_from_ptr#9521990274512470149.d27094f3cfd0d42c143fba9593870578_3" -> "init_from_ptr#9521990274512470149.d27094f3cfd0d42c143fba9593870578_2" ; -"init_from_ptr#9521990274512470149.d27094f3cfd0d42c143fba9593870578_4" [label="4: DeclStmt \n n$1=*&par:int* [line 24, column 13]\n *&d:int&=n$1 [line 24, column 3]\n " shape="box"] +"init_from_ptr#9521990274512470149.d27094f3cfd0d42c143fba9593870578_4" [label="4: DeclStmt \n n$2=*&par:int* [line 24, column 13]\n *&d:int&=n$2 [line 24, column 3]\n " shape="box"] "init_from_ptr#9521990274512470149.d27094f3cfd0d42c143fba9593870578_4" -> "init_from_ptr#9521990274512470149.d27094f3cfd0d42c143fba9593870578_3" ; -"init_from_ptr#9521990274512470149.d27094f3cfd0d42c143fba9593870578_5" [label="5: DeclStmt \n n$2=*&par:int* [line 23, column 12]\n n$3=*n$2:int [line 23, column 11]\n *&v:int=n$3 [line 23, column 3]\n " shape="box"] +"init_from_ptr#9521990274512470149.d27094f3cfd0d42c143fba9593870578_5" [label="5: DeclStmt \n n$3=*&par:int* [line 23, column 12]\n n$4=*n$3:int [line 23, column 11]\n *&v:int=n$4 [line 23, column 3]\n " shape="box"] "init_from_ptr#9521990274512470149.d27094f3cfd0d42c143fba9593870578_5" -> "init_from_ptr#9521990274512470149.d27094f3cfd0d42c143fba9593870578_4" ; @@ -26,15 +26,15 @@ digraph cfg { "init_from_ref#17239877270654219020.166550b98b7cafba1c908639121bced8_2" [label="2: Exit init_from_ref \n " color=yellow style=filled] -"init_from_ref#17239877270654219020.166550b98b7cafba1c908639121bced8_3" [label="3: DeclStmt \n n$0=*&par:int& [line 13, column 13]\n *&p:int*=n$0 [line 13, column 3]\n " shape="box"] +"init_from_ref#17239877270654219020.166550b98b7cafba1c908639121bced8_3" [label="3: DeclStmt \n n$1=*&par:int& [line 13, column 13]\n *&p:int*=n$1 [line 13, column 3]\n " shape="box"] "init_from_ref#17239877270654219020.166550b98b7cafba1c908639121bced8_3" -> "init_from_ref#17239877270654219020.166550b98b7cafba1c908639121bced8_2" ; -"init_from_ref#17239877270654219020.166550b98b7cafba1c908639121bced8_4" [label="4: DeclStmt \n n$1=*&par:int& [line 12, column 12]\n *&d:int&=n$1 [line 12, column 3]\n " shape="box"] +"init_from_ref#17239877270654219020.166550b98b7cafba1c908639121bced8_4" [label="4: DeclStmt \n n$2=*&par:int& [line 12, column 12]\n *&d:int&=n$2 [line 12, column 3]\n " shape="box"] "init_from_ref#17239877270654219020.166550b98b7cafba1c908639121bced8_4" -> "init_from_ref#17239877270654219020.166550b98b7cafba1c908639121bced8_3" ; -"init_from_ref#17239877270654219020.166550b98b7cafba1c908639121bced8_5" [label="5: DeclStmt \n n$2=*&par:int& [line 11, column 11]\n n$3=*n$2:int [line 11, column 11]\n *&v:int=n$3 [line 11, column 3]\n " shape="box"] +"init_from_ref#17239877270654219020.166550b98b7cafba1c908639121bced8_5" [label="5: DeclStmt \n n$3=*&par:int& [line 11, column 11]\n n$4=*n$3:int [line 11, column 11]\n *&v:int=n$4 [line 11, column 3]\n " shape="box"] "init_from_ref#17239877270654219020.166550b98b7cafba1c908639121bced8_5" -> "init_from_ref#17239877270654219020.166550b98b7cafba1c908639121bced8_4" ; @@ -53,7 +53,7 @@ digraph cfg { "init_from_val#14538961741925123970.e5e29991fa3b6aa0a341c0c9f54754a7_4" -> "init_from_val#14538961741925123970.e5e29991fa3b6aa0a341c0c9f54754a7_3" ; -"init_from_val#14538961741925123970.e5e29991fa3b6aa0a341c0c9f54754a7_5" [label="5: DeclStmt \n n$0=*&par:int [line 17, column 11]\n *&v:int=n$0 [line 17, column 3]\n " shape="box"] +"init_from_val#14538961741925123970.e5e29991fa3b6aa0a341c0c9f54754a7_5" [label="5: DeclStmt \n n$1=*&par:int [line 17, column 11]\n *&v:int=n$1 [line 17, column 3]\n " shape="box"] "init_from_val#14538961741925123970.e5e29991fa3b6aa0a341c0c9f54754a7_5" -> "init_from_val#14538961741925123970.e5e29991fa3b6aa0a341c0c9f54754a7_4" ; diff --git a/infer/tests/codetoanalyze/cpp/shared/reference/member_access.cpp.dot b/infer/tests/codetoanalyze/cpp/shared/reference/member_access.cpp.dot index ff529affb..e94b3101d 100644 --- a/infer/tests/codetoanalyze/cpp/shared/reference/member_access.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/shared/reference/member_access.cpp.dot @@ -7,11 +7,11 @@ digraph cfg { "access_ptr#15321479508398739907.c982e7d4bf02ada6326387e65b321af4_2" [label="2: Exit access_ptr \n " color=yellow style=filled] -"access_ptr#15321479508398739907.c982e7d4bf02ada6326387e65b321af4_3" [label="3: DeclStmt \n n$0=*&x:X* [line 22, column 11]\n _=*n$0:X [line 22, column 11]\n n$2=_fun_X_call(n$0:X*) [line 22, column 11]\n *&c:int=n$2 [line 22, column 3]\n " shape="box"] +"access_ptr#15321479508398739907.c982e7d4bf02ada6326387e65b321af4_3" [label="3: DeclStmt \n n$1=*&x:X* [line 22, column 11]\n _=*n$1:X [line 22, column 11]\n n$3=_fun_X_call(n$1:X*) [line 22, column 11]\n *&c:int=n$3 [line 22, column 3]\n " shape="box"] "access_ptr#15321479508398739907.c982e7d4bf02ada6326387e65b321af4_3" -> "access_ptr#15321479508398739907.c982e7d4bf02ada6326387e65b321af4_2" ; -"access_ptr#15321479508398739907.c982e7d4bf02ada6326387e65b321af4_4" [label="4: DeclStmt \n n$3=*&x:X* [line 21, column 11]\n n$4=*n$3.f:int [line 21, column 11]\n *&f:int=n$4 [line 21, column 3]\n " shape="box"] +"access_ptr#15321479508398739907.c982e7d4bf02ada6326387e65b321af4_4" [label="4: DeclStmt \n n$4=*&x:X* [line 21, column 11]\n n$5=*n$4.f:int [line 21, column 11]\n *&f:int=n$5 [line 21, column 3]\n " shape="box"] "access_ptr#15321479508398739907.c982e7d4bf02ada6326387e65b321af4_4" -> "access_ptr#15321479508398739907.c982e7d4bf02ada6326387e65b321af4_3" ; @@ -22,11 +22,11 @@ digraph cfg { "access_ref#4794488565171451856.2c0cb1f039897d6498c9fea4cbfec99e_2" [label="2: Exit access_ref \n " color=yellow style=filled] -"access_ref#4794488565171451856.2c0cb1f039897d6498c9fea4cbfec99e_3" [label="3: DeclStmt \n n$0=*&x:X& [line 17, column 11]\n _=*n$0:X [line 17, column 11]\n n$2=_fun_X_call(n$0:X&) [line 17, column 11]\n *&c:int=n$2 [line 17, column 3]\n " shape="box"] +"access_ref#4794488565171451856.2c0cb1f039897d6498c9fea4cbfec99e_3" [label="3: DeclStmt \n n$1=*&x:X& [line 17, column 11]\n _=*n$1:X [line 17, column 11]\n n$3=_fun_X_call(n$1:X&) [line 17, column 11]\n *&c:int=n$3 [line 17, column 3]\n " shape="box"] "access_ref#4794488565171451856.2c0cb1f039897d6498c9fea4cbfec99e_3" -> "access_ref#4794488565171451856.2c0cb1f039897d6498c9fea4cbfec99e_2" ; -"access_ref#4794488565171451856.2c0cb1f039897d6498c9fea4cbfec99e_4" [label="4: DeclStmt \n n$3=*&x:X& [line 16, column 11]\n n$4=*n$3.f:int [line 16, column 11]\n *&f:int=n$4 [line 16, column 3]\n " shape="box"] +"access_ref#4794488565171451856.2c0cb1f039897d6498c9fea4cbfec99e_4" [label="4: DeclStmt \n n$4=*&x:X& [line 16, column 11]\n n$5=*n$4.f:int [line 16, column 11]\n *&f:int=n$5 [line 16, column 3]\n " shape="box"] "access_ref#4794488565171451856.2c0cb1f039897d6498c9fea4cbfec99e_4" -> "access_ref#4794488565171451856.2c0cb1f039897d6498c9fea4cbfec99e_3" ; diff --git a/infer/tests/codetoanalyze/cpp/shared/reference/member_access_from_return.cpp.dot b/infer/tests/codetoanalyze/cpp/shared/reference/member_access_from_return.cpp.dot index 8e902c57a..8b2043bf5 100644 --- a/infer/tests/codetoanalyze/cpp/shared/reference/member_access_from_return.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/shared/reference/member_access_from_return.cpp.dot @@ -40,11 +40,11 @@ digraph cfg { "test_ptr#11416786403465510397.fe356f46dccde5545eadf0c661f4974d_2" [label="2: Exit test_ptr \n " color=yellow style=filled] -"test_ptr#11416786403465510397.fe356f46dccde5545eadf0c661f4974d_3" [label="3: DeclStmt \n n$0=_fun_get_ptr() [line 26, column 11]\n _=*n$0:X [line 26, column 11]\n n$2=_fun_X_call(n$0:X*) [line 26, column 11]\n *&c:int=n$2 [line 26, column 3]\n " shape="box"] +"test_ptr#11416786403465510397.fe356f46dccde5545eadf0c661f4974d_3" [label="3: DeclStmt \n n$1=_fun_get_ptr() [line 26, column 11]\n _=*n$1:X [line 26, column 11]\n n$3=_fun_X_call(n$1:X*) [line 26, column 11]\n *&c:int=n$3 [line 26, column 3]\n " shape="box"] "test_ptr#11416786403465510397.fe356f46dccde5545eadf0c661f4974d_3" -> "test_ptr#11416786403465510397.fe356f46dccde5545eadf0c661f4974d_2" ; -"test_ptr#11416786403465510397.fe356f46dccde5545eadf0c661f4974d_4" [label="4: DeclStmt \n n$3=_fun_get_ptr() [line 25, column 11]\n n$4=*n$3.f:int [line 25, column 11]\n *&f:int=n$4 [line 25, column 3]\n " shape="box"] +"test_ptr#11416786403465510397.fe356f46dccde5545eadf0c661f4974d_4" [label="4: DeclStmt \n n$4=_fun_get_ptr() [line 25, column 11]\n n$5=*n$4.f:int [line 25, column 11]\n *&f:int=n$5 [line 25, column 3]\n " shape="box"] "test_ptr#11416786403465510397.fe356f46dccde5545eadf0c661f4974d_4" -> "test_ptr#11416786403465510397.fe356f46dccde5545eadf0c661f4974d_3" ; @@ -55,11 +55,11 @@ digraph cfg { "test_ref#7021555814503032268.9c735d5eedd26e3009ec35c4af427db4_2" [label="2: Exit test_ref \n " color=yellow style=filled] -"test_ref#7021555814503032268.9c735d5eedd26e3009ec35c4af427db4_3" [label="3: DeclStmt \n n$0=_fun_get_ref() [line 21, column 11]\n _=*n$0:X [line 21, column 11]\n n$2=_fun_X_call(n$0:X&) [line 21, column 11]\n *&c:int=n$2 [line 21, column 3]\n " shape="box"] +"test_ref#7021555814503032268.9c735d5eedd26e3009ec35c4af427db4_3" [label="3: DeclStmt \n n$1=_fun_get_ref() [line 21, column 11]\n _=*n$1:X [line 21, column 11]\n n$3=_fun_X_call(n$1:X&) [line 21, column 11]\n *&c:int=n$3 [line 21, column 3]\n " shape="box"] "test_ref#7021555814503032268.9c735d5eedd26e3009ec35c4af427db4_3" -> "test_ref#7021555814503032268.9c735d5eedd26e3009ec35c4af427db4_2" ; -"test_ref#7021555814503032268.9c735d5eedd26e3009ec35c4af427db4_4" [label="4: DeclStmt \n n$3=_fun_get_ref() [line 20, column 11]\n n$4=*n$3.f:int [line 20, column 11]\n *&f:int=n$4 [line 20, column 3]\n " shape="box"] +"test_ref#7021555814503032268.9c735d5eedd26e3009ec35c4af427db4_4" [label="4: DeclStmt \n n$4=_fun_get_ref() [line 20, column 11]\n n$5=*n$4.f:int [line 20, column 11]\n *&f:int=n$5 [line 20, column 3]\n " shape="box"] "test_ref#7021555814503032268.9c735d5eedd26e3009ec35c4af427db4_4" -> "test_ref#7021555814503032268.9c735d5eedd26e3009ec35c4af427db4_3" ; diff --git a/infer/tests/codetoanalyze/cpp/shared/reference/nested_assignment.cpp.dot b/infer/tests/codetoanalyze/cpp/shared/reference/nested_assignment.cpp.dot index ed8e8ff8f..5860b2116 100644 --- a/infer/tests/codetoanalyze/cpp/shared/reference/nested_assignment.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/shared/reference/nested_assignment.cpp.dot @@ -7,15 +7,15 @@ digraph cfg { "crazy_nested#10001276026471322284.a3162fff8adcb89d9e3fa84dea455e7f_2" [label="2: Exit crazy_nested \n " color=yellow style=filled] -"crazy_nested#10001276026471322284.a3162fff8adcb89d9e3fa84dea455e7f_3" [label="3: DeclStmt \n n$0=*&ref_from_val:int& [line 29, column 23]\n *&b:int=5 [line 29, column 38]\n n$1=*&b:int [line 29, column 38]\n *n$0:int=n$1 [line 29, column 23]\n *&ref_from_ref:int&=n$0 [line 29, column 3]\n " shape="box"] +"crazy_nested#10001276026471322284.a3162fff8adcb89d9e3fa84dea455e7f_3" [label="3: DeclStmt \n n$1=*&ref_from_val:int& [line 29, column 23]\n *&b:int=5 [line 29, column 38]\n n$2=*&b:int [line 29, column 38]\n *n$1:int=n$2 [line 29, column 23]\n *&ref_from_ref:int&=n$1 [line 29, column 3]\n " shape="box"] "crazy_nested#10001276026471322284.a3162fff8adcb89d9e3fa84dea455e7f_3" -> "crazy_nested#10001276026471322284.a3162fff8adcb89d9e3fa84dea455e7f_2" ; -"crazy_nested#10001276026471322284.a3162fff8adcb89d9e3fa84dea455e7f_4" [label="4: DeclStmt \n *&b:int=4 [line 28, column 27]\n n$2=*&b:int [line 28, column 27]\n *&a:int=n$2 [line 28, column 23]\n *&ref_from_val:int&=&a [line 28, column 3]\n " shape="box"] +"crazy_nested#10001276026471322284.a3162fff8adcb89d9e3fa84dea455e7f_4" [label="4: DeclStmt \n *&b:int=4 [line 28, column 27]\n n$3=*&b:int [line 28, column 27]\n *&a:int=n$3 [line 28, column 23]\n *&ref_from_val:int&=&a [line 28, column 3]\n " shape="box"] "crazy_nested#10001276026471322284.a3162fff8adcb89d9e3fa84dea455e7f_4" -> "crazy_nested#10001276026471322284.a3162fff8adcb89d9e3fa84dea455e7f_3" ; -"crazy_nested#10001276026471322284.a3162fff8adcb89d9e3fa84dea455e7f_5" [label="5: DeclStmt \n n$3=*&a:int [line 24, column 11]\n *&b:int=n$3 [line 24, column 3]\n " shape="box"] +"crazy_nested#10001276026471322284.a3162fff8adcb89d9e3fa84dea455e7f_5" [label="5: DeclStmt \n n$4=*&a:int [line 24, column 11]\n *&b:int=n$4 [line 24, column 3]\n " shape="box"] "crazy_nested#10001276026471322284.a3162fff8adcb89d9e3fa84dea455e7f_5" -> "crazy_nested#10001276026471322284.a3162fff8adcb89d9e3fa84dea455e7f_4" ; @@ -30,7 +30,7 @@ digraph cfg { "nested#4768179933025409429.17c34afcb279e8ad08f7f8afaad41585_2" [label="2: Exit nested \n " color=yellow style=filled] -"nested#4768179933025409429.17c34afcb279e8ad08f7f8afaad41585_3" [label="3: DeclStmt \n n$0=*&ref_from_val:int& [line 19, column 23]\n *n$0:int=6 [line 19, column 23]\n *&ref_from_ref:int&=n$0 [line 19, column 3]\n " shape="box"] +"nested#4768179933025409429.17c34afcb279e8ad08f7f8afaad41585_3" [label="3: DeclStmt \n n$1=*&ref_from_val:int& [line 19, column 23]\n *n$1:int=6 [line 19, column 23]\n *&ref_from_ref:int&=n$1 [line 19, column 3]\n " shape="box"] "nested#4768179933025409429.17c34afcb279e8ad08f7f8afaad41585_3" -> "nested#4768179933025409429.17c34afcb279e8ad08f7f8afaad41585_2" ; @@ -49,7 +49,7 @@ digraph cfg { "normal#16009437256715545217.c7cd9ebbb6d7cc9f4987cf90ce12a044_2" [label="2: Exit normal \n " color=yellow style=filled] -"normal#16009437256715545217.c7cd9ebbb6d7cc9f4987cf90ce12a044_3" [label="3: DeclStmt \n n$0=*&ref_from_val:int& [line 13, column 23]\n *&ref_from_ref:int&=n$0 [line 13, column 3]\n " shape="box"] +"normal#16009437256715545217.c7cd9ebbb6d7cc9f4987cf90ce12a044_3" [label="3: DeclStmt \n n$1=*&ref_from_val:int& [line 13, column 23]\n *&ref_from_ref:int&=n$1 [line 13, column 3]\n " shape="box"] "normal#16009437256715545217.c7cd9ebbb6d7cc9f4987cf90ce12a044_3" -> "normal#16009437256715545217.c7cd9ebbb6d7cc9f4987cf90ce12a044_2" ; diff --git a/infer/tests/codetoanalyze/cpp/shared/reference/ptr_mem.cpp.dot b/infer/tests/codetoanalyze/cpp/shared/reference/ptr_mem.cpp.dot index 6b9d3ed79..22bc5718a 100644 --- a/infer/tests/codetoanalyze/cpp/shared/reference/ptr_mem.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/shared/reference/ptr_mem.cpp.dot @@ -7,15 +7,15 @@ digraph cfg { "noskip#6149941428299352091.c0e56085ae3c9567084b0f9e4211cfc0_2" [label="2: Exit noskip \n " color=yellow style=filled] -"noskip#6149941428299352091.c0e56085ae3c9567084b0f9e4211cfc0_3" [label="3: Call _fun_List_add_byref \n n$0=*&l:List& [line 37, column 3]\n _=*n$0:List [line 37, column 3]\n n$2=_fun_List_add_byref(n$0:List&,&i:item&) [line 37, column 3]\n " shape="box"] +"noskip#6149941428299352091.c0e56085ae3c9567084b0f9e4211cfc0_3" [label="3: Call _fun_List_add_byref \n n$1=*&l:List& [line 37, column 3]\n _=*n$1:List [line 37, column 3]\n n$3=_fun_List_add_byref(n$1:List&,&i:item&) [line 37, column 3]\n " shape="box"] "noskip#6149941428299352091.c0e56085ae3c9567084b0f9e4211cfc0_3" -> "noskip#6149941428299352091.c0e56085ae3c9567084b0f9e4211cfc0_2" ; -"noskip#6149941428299352091.c0e56085ae3c9567084b0f9e4211cfc0_4" [label="4: Call _fun_List_add \n n$3=*&l:List& [line 36, column 3]\n _=*n$3:List [line 36, column 3]\n n$5=_fun_List_add(n$3:List&,&i:item*) [line 36, column 3]\n " shape="box"] +"noskip#6149941428299352091.c0e56085ae3c9567084b0f9e4211cfc0_4" [label="4: Call _fun_List_add \n n$4=*&l:List& [line 36, column 3]\n _=*n$4:List [line 36, column 3]\n n$6=_fun_List_add(n$4:List&,&i:item*) [line 36, column 3]\n " shape="box"] "noskip#6149941428299352091.c0e56085ae3c9567084b0f9e4211cfc0_4" -> "noskip#6149941428299352091.c0e56085ae3c9567084b0f9e4211cfc0_3" ; -"noskip#6149941428299352091.c0e56085ae3c9567084b0f9e4211cfc0_5" [label="5: DeclStmt \n n$6=_fun_item_item(&i:item*) [line 35, column 8]\n " shape="box"] +"noskip#6149941428299352091.c0e56085ae3c9567084b0f9e4211cfc0_5" [label="5: DeclStmt \n n$7=_fun_item_item(&i:item*) [line 35, column 8]\n " shape="box"] "noskip#6149941428299352091.c0e56085ae3c9567084b0f9e4211cfc0_5" -> "noskip#6149941428299352091.c0e56085ae3c9567084b0f9e4211cfc0_4" ; @@ -26,11 +26,11 @@ digraph cfg { "List#List#{15914538297308632075}.3434f5c53e6f70f530bf6d3beb27430e_2" [label="2: Exit List_List \n " color=yellow style=filled] -"List#List#{15914538297308632075}.3434f5c53e6f70f530bf6d3beb27430e_3" [label="3: Constructor Init \n n$0=*&this:List* [line 16, column 42]\n n$1=*&next_ptr:void [line 16, column 51]\n *n$0.next_ptr:void=n$1 [line 16, column 42]\n " shape="box"] +"List#List#{15914538297308632075}.3434f5c53e6f70f530bf6d3beb27430e_3" [label="3: Constructor Init \n n$2=*&this:List* [line 16, column 42]\n n$3=*&next_ptr:void [line 16, column 51]\n *n$2.next_ptr:void=n$3 [line 16, column 42]\n " shape="box"] "List#List#{15914538297308632075}.3434f5c53e6f70f530bf6d3beb27430e_3" -> "List#List#{15914538297308632075}.3434f5c53e6f70f530bf6d3beb27430e_2" ; -"List#List#{15914538297308632075}.3434f5c53e6f70f530bf6d3beb27430e_4" [label="4: Constructor Init \n n$2=*&this:List* [line 16, column 27]\n *n$2.head:item*=null [line 16, column 27]\n " shape="box"] +"List#List#{15914538297308632075}.3434f5c53e6f70f530bf6d3beb27430e_4" [label="4: Constructor Init \n n$4=*&this:List* [line 16, column 27]\n *n$4.head:item*=null [line 16, column 27]\n " shape="box"] "List#List#{15914538297308632075}.3434f5c53e6f70f530bf6d3beb27430e_4" -> "List#List#{15914538297308632075}.3434f5c53e6f70f530bf6d3beb27430e_3" ; diff --git a/infer/tests/codetoanalyze/cpp/shared/reference/reference_field.cpp.dot b/infer/tests/codetoanalyze/cpp/shared/reference/reference_field.cpp.dot index 1c687f257..345de35ac 100644 --- a/infer/tests/codetoanalyze/cpp/shared/reference/reference_field.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/shared/reference/reference_field.cpp.dot @@ -15,7 +15,7 @@ digraph cfg { "ptr_F_div0#reference_field#14005768761742554773.fa7bac24d70ab0b747e7fb5360157c5f_4" -> "ptr_F_div0#reference_field#14005768761742554773.fa7bac24d70ab0b747e7fb5360157c5f_3" ; -"ptr_F_div0#reference_field#14005768761742554773.fa7bac24d70ab0b747e7fb5360157c5f_5" [label="5: DeclStmt \n n$4=_fun_reference_field::Ptr_Ptr(&r:reference_field::Ptr*,&x:reference_field::X&) [line 84, column 7]\n " shape="box"] +"ptr_F_div0#reference_field#14005768761742554773.fa7bac24d70ab0b747e7fb5360157c5f_5" [label="5: DeclStmt \n n$5=_fun_reference_field::Ptr_Ptr(&r:reference_field::Ptr*,&x:reference_field::X&) [line 84, column 7]\n " shape="box"] "ptr_F_div0#reference_field#14005768761742554773.fa7bac24d70ab0b747e7fb5360157c5f_5" -> "ptr_F_div0#reference_field#14005768761742554773.fa7bac24d70ab0b747e7fb5360157c5f_4" ; @@ -23,7 +23,7 @@ digraph cfg { "ptr_F_div0#reference_field#14005768761742554773.fa7bac24d70ab0b747e7fb5360157c5f_6" -> "ptr_F_div0#reference_field#14005768761742554773.fa7bac24d70ab0b747e7fb5360157c5f_5" ; -"ptr_F_div0#reference_field#14005768761742554773.fa7bac24d70ab0b747e7fb5360157c5f_7" [label="7: DeclStmt \n n$5=_fun_reference_field::X_X(&x:reference_field::X*) [line 82, column 5]\n " shape="box"] +"ptr_F_div0#reference_field#14005768761742554773.fa7bac24d70ab0b747e7fb5360157c5f_7" [label="7: DeclStmt \n n$6=_fun_reference_field::X_X(&x:reference_field::X*) [line 82, column 5]\n " shape="box"] "ptr_F_div0#reference_field#14005768761742554773.fa7bac24d70ab0b747e7fb5360157c5f_7" -> "ptr_F_div0#reference_field#14005768761742554773.fa7bac24d70ab0b747e7fb5360157c5f_6" ; @@ -42,7 +42,7 @@ digraph cfg { "ptr_I_div0#reference_field#18255668366877010738.5b1f39b2d5e2810cbdbf96621d88c2d0_4" -> "ptr_I_div0#reference_field#18255668366877010738.5b1f39b2d5e2810cbdbf96621d88c2d0_3" ; -"ptr_I_div0#reference_field#18255668366877010738.5b1f39b2d5e2810cbdbf96621d88c2d0_5" [label="5: DeclStmt \n n$4=_fun_reference_field::Ptr_Ptr(&r:reference_field::Ptr*,&x:reference_field::X&) [line 92, column 7]\n " shape="box"] +"ptr_I_div0#reference_field#18255668366877010738.5b1f39b2d5e2810cbdbf96621d88c2d0_5" [label="5: DeclStmt \n n$5=_fun_reference_field::Ptr_Ptr(&r:reference_field::Ptr*,&x:reference_field::X&) [line 92, column 7]\n " shape="box"] "ptr_I_div0#reference_field#18255668366877010738.5b1f39b2d5e2810cbdbf96621d88c2d0_5" -> "ptr_I_div0#reference_field#18255668366877010738.5b1f39b2d5e2810cbdbf96621d88c2d0_4" ; @@ -50,7 +50,7 @@ digraph cfg { "ptr_I_div0#reference_field#18255668366877010738.5b1f39b2d5e2810cbdbf96621d88c2d0_6" -> "ptr_I_div0#reference_field#18255668366877010738.5b1f39b2d5e2810cbdbf96621d88c2d0_5" ; -"ptr_I_div0#reference_field#18255668366877010738.5b1f39b2d5e2810cbdbf96621d88c2d0_7" [label="7: DeclStmt \n n$5=_fun_reference_field::X_X(&x:reference_field::X*) [line 90, column 5]\n " shape="box"] +"ptr_I_div0#reference_field#18255668366877010738.5b1f39b2d5e2810cbdbf96621d88c2d0_7" [label="7: DeclStmt \n n$6=_fun_reference_field::X_X(&x:reference_field::X*) [line 90, column 5]\n " shape="box"] "ptr_I_div0#reference_field#18255668366877010738.5b1f39b2d5e2810cbdbf96621d88c2d0_7" -> "ptr_I_div0#reference_field#18255668366877010738.5b1f39b2d5e2810cbdbf96621d88c2d0_6" ; @@ -69,7 +69,7 @@ digraph cfg { "ptr_getF_div0#reference_field#3337646019334387234.41e241b3e1d6a6f7c629a1c6ca69cf07_4" -> "ptr_getF_div0#reference_field#3337646019334387234.41e241b3e1d6a6f7c629a1c6ca69cf07_3" ; -"ptr_getF_div0#reference_field#3337646019334387234.41e241b3e1d6a6f7c629a1c6ca69cf07_5" [label="5: DeclStmt \n n$4=_fun_reference_field::Ptr_Ptr(&r:reference_field::Ptr*,&x:reference_field::X&) [line 100, column 7]\n " shape="box"] +"ptr_getF_div0#reference_field#3337646019334387234.41e241b3e1d6a6f7c629a1c6ca69cf07_5" [label="5: DeclStmt \n n$5=_fun_reference_field::Ptr_Ptr(&r:reference_field::Ptr*,&x:reference_field::X&) [line 100, column 7]\n " shape="box"] "ptr_getF_div0#reference_field#3337646019334387234.41e241b3e1d6a6f7c629a1c6ca69cf07_5" -> "ptr_getF_div0#reference_field#3337646019334387234.41e241b3e1d6a6f7c629a1c6ca69cf07_4" ; @@ -77,7 +77,7 @@ digraph cfg { "ptr_getF_div0#reference_field#3337646019334387234.41e241b3e1d6a6f7c629a1c6ca69cf07_6" -> "ptr_getF_div0#reference_field#3337646019334387234.41e241b3e1d6a6f7c629a1c6ca69cf07_5" ; -"ptr_getF_div0#reference_field#3337646019334387234.41e241b3e1d6a6f7c629a1c6ca69cf07_7" [label="7: DeclStmt \n n$5=_fun_reference_field::X_X(&x:reference_field::X*) [line 98, column 5]\n " shape="box"] +"ptr_getF_div0#reference_field#3337646019334387234.41e241b3e1d6a6f7c629a1c6ca69cf07_7" [label="7: DeclStmt \n n$6=_fun_reference_field::X_X(&x:reference_field::X*) [line 98, column 5]\n " shape="box"] "ptr_getF_div0#reference_field#3337646019334387234.41e241b3e1d6a6f7c629a1c6ca69cf07_7" -> "ptr_getF_div0#reference_field#3337646019334387234.41e241b3e1d6a6f7c629a1c6ca69cf07_6" ; @@ -96,7 +96,7 @@ digraph cfg { "ptr_getI_div0#reference_field#2818660867908728453.99667cea541002986498839338031f13_4" -> "ptr_getI_div0#reference_field#2818660867908728453.99667cea541002986498839338031f13_3" ; -"ptr_getI_div0#reference_field#2818660867908728453.99667cea541002986498839338031f13_5" [label="5: DeclStmt \n n$4=_fun_reference_field::Ptr_Ptr(&r:reference_field::Ptr*,&x:reference_field::X&) [line 108, column 7]\n " shape="box"] +"ptr_getI_div0#reference_field#2818660867908728453.99667cea541002986498839338031f13_5" [label="5: DeclStmt \n n$5=_fun_reference_field::Ptr_Ptr(&r:reference_field::Ptr*,&x:reference_field::X&) [line 108, column 7]\n " shape="box"] "ptr_getI_div0#reference_field#2818660867908728453.99667cea541002986498839338031f13_5" -> "ptr_getI_div0#reference_field#2818660867908728453.99667cea541002986498839338031f13_4" ; @@ -104,7 +104,7 @@ digraph cfg { "ptr_getI_div0#reference_field#2818660867908728453.99667cea541002986498839338031f13_6" -> "ptr_getI_div0#reference_field#2818660867908728453.99667cea541002986498839338031f13_5" ; -"ptr_getI_div0#reference_field#2818660867908728453.99667cea541002986498839338031f13_7" [label="7: DeclStmt \n n$5=_fun_reference_field::X_X(&x:reference_field::X*) [line 106, column 5]\n " shape="box"] +"ptr_getI_div0#reference_field#2818660867908728453.99667cea541002986498839338031f13_7" [label="7: DeclStmt \n n$6=_fun_reference_field::X_X(&x:reference_field::X*) [line 106, column 5]\n " shape="box"] "ptr_getI_div0#reference_field#2818660867908728453.99667cea541002986498839338031f13_7" -> "ptr_getI_div0#reference_field#2818660867908728453.99667cea541002986498839338031f13_6" ; @@ -123,7 +123,7 @@ digraph cfg { "ref_F_div0#reference_field#11041134718140208132.6e58f8c7050613499e915a7d12b0f081_4" -> "ref_F_div0#reference_field#11041134718140208132.6e58f8c7050613499e915a7d12b0f081_3" ; -"ref_F_div0#reference_field#11041134718140208132.6e58f8c7050613499e915a7d12b0f081_5" [label="5: DeclStmt \n n$4=_fun_reference_field::Ref_Ref(&r:reference_field::Ref*,&x:reference_field::X&) [line 51, column 7]\n " shape="box"] +"ref_F_div0#reference_field#11041134718140208132.6e58f8c7050613499e915a7d12b0f081_5" [label="5: DeclStmt \n n$5=_fun_reference_field::Ref_Ref(&r:reference_field::Ref*,&x:reference_field::X&) [line 51, column 7]\n " shape="box"] "ref_F_div0#reference_field#11041134718140208132.6e58f8c7050613499e915a7d12b0f081_5" -> "ref_F_div0#reference_field#11041134718140208132.6e58f8c7050613499e915a7d12b0f081_4" ; @@ -131,7 +131,7 @@ digraph cfg { "ref_F_div0#reference_field#11041134718140208132.6e58f8c7050613499e915a7d12b0f081_6" -> "ref_F_div0#reference_field#11041134718140208132.6e58f8c7050613499e915a7d12b0f081_5" ; -"ref_F_div0#reference_field#11041134718140208132.6e58f8c7050613499e915a7d12b0f081_7" [label="7: DeclStmt \n n$5=_fun_reference_field::X_X(&x:reference_field::X*) [line 49, column 5]\n " shape="box"] +"ref_F_div0#reference_field#11041134718140208132.6e58f8c7050613499e915a7d12b0f081_7" [label="7: DeclStmt \n n$6=_fun_reference_field::X_X(&x:reference_field::X*) [line 49, column 5]\n " shape="box"] "ref_F_div0#reference_field#11041134718140208132.6e58f8c7050613499e915a7d12b0f081_7" -> "ref_F_div0#reference_field#11041134718140208132.6e58f8c7050613499e915a7d12b0f081_6" ; @@ -150,7 +150,7 @@ digraph cfg { "ref_I_div0#reference_field#12578013844532400739.b911fdef1ca9c73b658bff3d5d964b9b_4" -> "ref_I_div0#reference_field#12578013844532400739.b911fdef1ca9c73b658bff3d5d964b9b_3" ; -"ref_I_div0#reference_field#12578013844532400739.b911fdef1ca9c73b658bff3d5d964b9b_5" [label="5: DeclStmt \n n$4=_fun_reference_field::Ref_Ref(&r:reference_field::Ref*,&x:reference_field::X&) [line 59, column 7]\n " shape="box"] +"ref_I_div0#reference_field#12578013844532400739.b911fdef1ca9c73b658bff3d5d964b9b_5" [label="5: DeclStmt \n n$5=_fun_reference_field::Ref_Ref(&r:reference_field::Ref*,&x:reference_field::X&) [line 59, column 7]\n " shape="box"] "ref_I_div0#reference_field#12578013844532400739.b911fdef1ca9c73b658bff3d5d964b9b_5" -> "ref_I_div0#reference_field#12578013844532400739.b911fdef1ca9c73b658bff3d5d964b9b_4" ; @@ -158,7 +158,7 @@ digraph cfg { "ref_I_div0#reference_field#12578013844532400739.b911fdef1ca9c73b658bff3d5d964b9b_6" -> "ref_I_div0#reference_field#12578013844532400739.b911fdef1ca9c73b658bff3d5d964b9b_5" ; -"ref_I_div0#reference_field#12578013844532400739.b911fdef1ca9c73b658bff3d5d964b9b_7" [label="7: DeclStmt \n n$5=_fun_reference_field::X_X(&x:reference_field::X*) [line 57, column 5]\n " shape="box"] +"ref_I_div0#reference_field#12578013844532400739.b911fdef1ca9c73b658bff3d5d964b9b_7" [label="7: DeclStmt \n n$6=_fun_reference_field::X_X(&x:reference_field::X*) [line 57, column 5]\n " shape="box"] "ref_I_div0#reference_field#12578013844532400739.b911fdef1ca9c73b658bff3d5d964b9b_7" -> "ref_I_div0#reference_field#12578013844532400739.b911fdef1ca9c73b658bff3d5d964b9b_6" ; @@ -177,7 +177,7 @@ digraph cfg { "ref_getF_div0#reference_field#2481930918988851369.2dc7181f26bf9bad7c2f06846f4d7ec4_4" -> "ref_getF_div0#reference_field#2481930918988851369.2dc7181f26bf9bad7c2f06846f4d7ec4_3" ; -"ref_getF_div0#reference_field#2481930918988851369.2dc7181f26bf9bad7c2f06846f4d7ec4_5" [label="5: DeclStmt \n n$4=_fun_reference_field::Ref_Ref(&r:reference_field::Ref*,&x:reference_field::X&) [line 67, column 7]\n " shape="box"] +"ref_getF_div0#reference_field#2481930918988851369.2dc7181f26bf9bad7c2f06846f4d7ec4_5" [label="5: DeclStmt \n n$5=_fun_reference_field::Ref_Ref(&r:reference_field::Ref*,&x:reference_field::X&) [line 67, column 7]\n " shape="box"] "ref_getF_div0#reference_field#2481930918988851369.2dc7181f26bf9bad7c2f06846f4d7ec4_5" -> "ref_getF_div0#reference_field#2481930918988851369.2dc7181f26bf9bad7c2f06846f4d7ec4_4" ; @@ -185,7 +185,7 @@ digraph cfg { "ref_getF_div0#reference_field#2481930918988851369.2dc7181f26bf9bad7c2f06846f4d7ec4_6" -> "ref_getF_div0#reference_field#2481930918988851369.2dc7181f26bf9bad7c2f06846f4d7ec4_5" ; -"ref_getF_div0#reference_field#2481930918988851369.2dc7181f26bf9bad7c2f06846f4d7ec4_7" [label="7: DeclStmt \n n$5=_fun_reference_field::X_X(&x:reference_field::X*) [line 65, column 5]\n " shape="box"] +"ref_getF_div0#reference_field#2481930918988851369.2dc7181f26bf9bad7c2f06846f4d7ec4_7" [label="7: DeclStmt \n n$6=_fun_reference_field::X_X(&x:reference_field::X*) [line 65, column 5]\n " shape="box"] "ref_getF_div0#reference_field#2481930918988851369.2dc7181f26bf9bad7c2f06846f4d7ec4_7" -> "ref_getF_div0#reference_field#2481930918988851369.2dc7181f26bf9bad7c2f06846f4d7ec4_6" ; @@ -204,7 +204,7 @@ digraph cfg { "ref_getI_div0#reference_field#17267881158640772750.8919328183561d84930ec2a40da70667_4" -> "ref_getI_div0#reference_field#17267881158640772750.8919328183561d84930ec2a40da70667_3" ; -"ref_getI_div0#reference_field#17267881158640772750.8919328183561d84930ec2a40da70667_5" [label="5: DeclStmt \n n$4=_fun_reference_field::Ref_Ref(&r:reference_field::Ref*,&x:reference_field::X&) [line 75, column 7]\n " shape="box"] +"ref_getI_div0#reference_field#17267881158640772750.8919328183561d84930ec2a40da70667_5" [label="5: DeclStmt \n n$5=_fun_reference_field::Ref_Ref(&r:reference_field::Ref*,&x:reference_field::X&) [line 75, column 7]\n " shape="box"] "ref_getI_div0#reference_field#17267881158640772750.8919328183561d84930ec2a40da70667_5" -> "ref_getI_div0#reference_field#17267881158640772750.8919328183561d84930ec2a40da70667_4" ; @@ -212,7 +212,7 @@ digraph cfg { "ref_getI_div0#reference_field#17267881158640772750.8919328183561d84930ec2a40da70667_6" -> "ref_getI_div0#reference_field#17267881158640772750.8919328183561d84930ec2a40da70667_5" ; -"ref_getI_div0#reference_field#17267881158640772750.8919328183561d84930ec2a40da70667_7" [label="7: DeclStmt \n n$5=_fun_reference_field::X_X(&x:reference_field::X*) [line 73, column 5]\n " shape="box"] +"ref_getI_div0#reference_field#17267881158640772750.8919328183561d84930ec2a40da70667_7" [label="7: DeclStmt \n n$6=_fun_reference_field::X_X(&x:reference_field::X*) [line 73, column 5]\n " shape="box"] "ref_getI_div0#reference_field#17267881158640772750.8919328183561d84930ec2a40da70667_7" -> "ref_getI_div0#reference_field#17267881158640772750.8919328183561d84930ec2a40da70667_6" ; @@ -231,7 +231,7 @@ digraph cfg { "val_F_div0#reference_field#8428286850923379914.8fdee85eabf77b0016437fa0006d373c_4" -> "val_F_div0#reference_field#8428286850923379914.8fdee85eabf77b0016437fa0006d373c_3" ; -"val_F_div0#reference_field#8428286850923379914.8fdee85eabf77b0016437fa0006d373c_5" [label="5: DeclStmt \n n$3=_fun_reference_field::Val_Val(&r:reference_field::Val*,&x:reference_field::X&) [line 117, column 7]\n " shape="box"] +"val_F_div0#reference_field#8428286850923379914.8fdee85eabf77b0016437fa0006d373c_5" [label="5: DeclStmt \n n$4=_fun_reference_field::Val_Val(&r:reference_field::Val*,&x:reference_field::X&) [line 117, column 7]\n " shape="box"] "val_F_div0#reference_field#8428286850923379914.8fdee85eabf77b0016437fa0006d373c_5" -> "val_F_div0#reference_field#8428286850923379914.8fdee85eabf77b0016437fa0006d373c_4" ; @@ -239,7 +239,7 @@ digraph cfg { "val_F_div0#reference_field#8428286850923379914.8fdee85eabf77b0016437fa0006d373c_6" -> "val_F_div0#reference_field#8428286850923379914.8fdee85eabf77b0016437fa0006d373c_5" ; -"val_F_div0#reference_field#8428286850923379914.8fdee85eabf77b0016437fa0006d373c_7" [label="7: DeclStmt \n n$4=_fun_reference_field::X_X(&x:reference_field::X*) [line 115, column 5]\n " shape="box"] +"val_F_div0#reference_field#8428286850923379914.8fdee85eabf77b0016437fa0006d373c_7" [label="7: DeclStmt \n n$5=_fun_reference_field::X_X(&x:reference_field::X*) [line 115, column 5]\n " shape="box"] "val_F_div0#reference_field#8428286850923379914.8fdee85eabf77b0016437fa0006d373c_7" -> "val_F_div0#reference_field#8428286850923379914.8fdee85eabf77b0016437fa0006d373c_6" ; @@ -258,7 +258,7 @@ digraph cfg { "val_I_div0#reference_field#17788064844610257149.11b45a3e82e229e7a7714480217c1af3_4" -> "val_I_div0#reference_field#17788064844610257149.11b45a3e82e229e7a7714480217c1af3_3" ; -"val_I_div0#reference_field#17788064844610257149.11b45a3e82e229e7a7714480217c1af3_5" [label="5: DeclStmt \n n$3=_fun_reference_field::Val_Val(&r:reference_field::Val*,&x:reference_field::X&) [line 125, column 7]\n " shape="box"] +"val_I_div0#reference_field#17788064844610257149.11b45a3e82e229e7a7714480217c1af3_5" [label="5: DeclStmt \n n$4=_fun_reference_field::Val_Val(&r:reference_field::Val*,&x:reference_field::X&) [line 125, column 7]\n " shape="box"] "val_I_div0#reference_field#17788064844610257149.11b45a3e82e229e7a7714480217c1af3_5" -> "val_I_div0#reference_field#17788064844610257149.11b45a3e82e229e7a7714480217c1af3_4" ; @@ -266,7 +266,7 @@ digraph cfg { "val_I_div0#reference_field#17788064844610257149.11b45a3e82e229e7a7714480217c1af3_6" -> "val_I_div0#reference_field#17788064844610257149.11b45a3e82e229e7a7714480217c1af3_5" ; -"val_I_div0#reference_field#17788064844610257149.11b45a3e82e229e7a7714480217c1af3_7" [label="7: DeclStmt \n n$4=_fun_reference_field::X_X(&x:reference_field::X*) [line 123, column 5]\n " shape="box"] +"val_I_div0#reference_field#17788064844610257149.11b45a3e82e229e7a7714480217c1af3_7" [label="7: DeclStmt \n n$5=_fun_reference_field::X_X(&x:reference_field::X*) [line 123, column 5]\n " shape="box"] "val_I_div0#reference_field#17788064844610257149.11b45a3e82e229e7a7714480217c1af3_7" -> "val_I_div0#reference_field#17788064844610257149.11b45a3e82e229e7a7714480217c1af3_6" ; @@ -285,7 +285,7 @@ digraph cfg { "val_getF_div0#reference_field#16910887455441500799.24fc3c9591435f1b92c06c5c7da4bd2e_4" -> "val_getF_div0#reference_field#16910887455441500799.24fc3c9591435f1b92c06c5c7da4bd2e_3" ; -"val_getF_div0#reference_field#16910887455441500799.24fc3c9591435f1b92c06c5c7da4bd2e_5" [label="5: DeclStmt \n n$4=_fun_reference_field::Val_Val(&r:reference_field::Val*,&x:reference_field::X&) [line 133, column 7]\n " shape="box"] +"val_getF_div0#reference_field#16910887455441500799.24fc3c9591435f1b92c06c5c7da4bd2e_5" [label="5: DeclStmt \n n$5=_fun_reference_field::Val_Val(&r:reference_field::Val*,&x:reference_field::X&) [line 133, column 7]\n " shape="box"] "val_getF_div0#reference_field#16910887455441500799.24fc3c9591435f1b92c06c5c7da4bd2e_5" -> "val_getF_div0#reference_field#16910887455441500799.24fc3c9591435f1b92c06c5c7da4bd2e_4" ; @@ -293,7 +293,7 @@ digraph cfg { "val_getF_div0#reference_field#16910887455441500799.24fc3c9591435f1b92c06c5c7da4bd2e_6" -> "val_getF_div0#reference_field#16910887455441500799.24fc3c9591435f1b92c06c5c7da4bd2e_5" ; -"val_getF_div0#reference_field#16910887455441500799.24fc3c9591435f1b92c06c5c7da4bd2e_7" [label="7: DeclStmt \n n$5=_fun_reference_field::X_X(&x:reference_field::X*) [line 131, column 5]\n " shape="box"] +"val_getF_div0#reference_field#16910887455441500799.24fc3c9591435f1b92c06c5c7da4bd2e_7" [label="7: DeclStmt \n n$6=_fun_reference_field::X_X(&x:reference_field::X*) [line 131, column 5]\n " shape="box"] "val_getF_div0#reference_field#16910887455441500799.24fc3c9591435f1b92c06c5c7da4bd2e_7" -> "val_getF_div0#reference_field#16910887455441500799.24fc3c9591435f1b92c06c5c7da4bd2e_6" ; @@ -312,7 +312,7 @@ digraph cfg { "val_getI_div0#reference_field#1916539470996695608.683d462cf87abbc81874a14e4872564a_4" -> "val_getI_div0#reference_field#1916539470996695608.683d462cf87abbc81874a14e4872564a_3" ; -"val_getI_div0#reference_field#1916539470996695608.683d462cf87abbc81874a14e4872564a_5" [label="5: DeclStmt \n n$4=_fun_reference_field::Val_Val(&r:reference_field::Val*,&x:reference_field::X&) [line 141, column 7]\n " shape="box"] +"val_getI_div0#reference_field#1916539470996695608.683d462cf87abbc81874a14e4872564a_5" [label="5: DeclStmt \n n$5=_fun_reference_field::Val_Val(&r:reference_field::Val*,&x:reference_field::X&) [line 141, column 7]\n " shape="box"] "val_getI_div0#reference_field#1916539470996695608.683d462cf87abbc81874a14e4872564a_5" -> "val_getI_div0#reference_field#1916539470996695608.683d462cf87abbc81874a14e4872564a_4" ; @@ -320,7 +320,7 @@ digraph cfg { "val_getI_div0#reference_field#1916539470996695608.683d462cf87abbc81874a14e4872564a_6" -> "val_getI_div0#reference_field#1916539470996695608.683d462cf87abbc81874a14e4872564a_5" ; -"val_getI_div0#reference_field#1916539470996695608.683d462cf87abbc81874a14e4872564a_7" [label="7: DeclStmt \n n$5=_fun_reference_field::X_X(&x:reference_field::X*) [line 139, column 5]\n " shape="box"] +"val_getI_div0#reference_field#1916539470996695608.683d462cf87abbc81874a14e4872564a_7" [label="7: DeclStmt \n n$6=_fun_reference_field::X_X(&x:reference_field::X*) [line 139, column 5]\n " shape="box"] "val_getI_div0#reference_field#1916539470996695608.683d462cf87abbc81874a14e4872564a_7" -> "val_getI_div0#reference_field#1916539470996695608.683d462cf87abbc81874a14e4872564a_6" ; @@ -331,11 +331,11 @@ digraph cfg { "Ptr#Ptr#reference_field#{6088279996118893652}.360bbf008525cb3c23d8ada20f2a72af_2" [label="2: Exit reference_field::Ptr_Ptr \n " color=yellow style=filled] -"Ptr#Ptr#reference_field#{6088279996118893652}.360bbf008525cb3c23d8ada20f2a72af_3" [label="3: Constructor Init \n n$0=*&this:reference_field::Ptr* [line 34, column 24]\n n$1=*&this:reference_field::Ptr* [line 34, column 27]\n n$2=*n$1.x:reference_field::X* [line 34, column 27]\n *n$0.i:int*=n$2.f [line 34, column 24]\n " shape="box"] +"Ptr#Ptr#reference_field#{6088279996118893652}.360bbf008525cb3c23d8ada20f2a72af_3" [label="3: Constructor Init \n n$2=*&this:reference_field::Ptr* [line 34, column 24]\n n$3=*&this:reference_field::Ptr* [line 34, column 27]\n n$4=*n$3.x:reference_field::X* [line 34, column 27]\n *n$2.i:int*=n$4.f [line 34, column 24]\n " shape="box"] "Ptr#Ptr#reference_field#{6088279996118893652}.360bbf008525cb3c23d8ada20f2a72af_3" -> "Ptr#Ptr#reference_field#{6088279996118893652}.360bbf008525cb3c23d8ada20f2a72af_2" ; -"Ptr#Ptr#reference_field#{6088279996118893652}.360bbf008525cb3c23d8ada20f2a72af_4" [label="4: Constructor Init \n n$3=*&this:reference_field::Ptr* [line 34, column 16]\n n$4=*&r_:reference_field::X& [line 34, column 19]\n *n$3.x:reference_field::X*=n$4 [line 34, column 16]\n " shape="box"] +"Ptr#Ptr#reference_field#{6088279996118893652}.360bbf008525cb3c23d8ada20f2a72af_4" [label="4: Constructor Init \n n$5=*&this:reference_field::Ptr* [line 34, column 16]\n n$6=*&r_:reference_field::X& [line 34, column 19]\n *n$5.x:reference_field::X*=n$6 [line 34, column 16]\n " shape="box"] "Ptr#Ptr#reference_field#{6088279996118893652}.360bbf008525cb3c23d8ada20f2a72af_4" -> "Ptr#Ptr#reference_field#{6088279996118893652}.360bbf008525cb3c23d8ada20f2a72af_3" ; @@ -346,11 +346,11 @@ digraph cfg { "Ref#Ref#reference_field#{1778104277749367423}.02a281ecc4e6bde89182d1ef952810a2_2" [label="2: Exit reference_field::Ref_Ref \n " color=yellow style=filled] -"Ref#Ref#reference_field#{1778104277749367423}.02a281ecc4e6bde89182d1ef952810a2_3" [label="3: Constructor Init \n n$0=*&this:reference_field::Ref* [line 26, column 23]\n n$1=*&this:reference_field::Ref* [line 26, column 25]\n n$2=*n$1.x:reference_field::X& [line 26, column 25]\n *n$0.i:int&=n$2.f [line 26, column 23]\n " shape="box"] +"Ref#Ref#reference_field#{1778104277749367423}.02a281ecc4e6bde89182d1ef952810a2_3" [label="3: Constructor Init \n n$2=*&this:reference_field::Ref* [line 26, column 23]\n n$3=*&this:reference_field::Ref* [line 26, column 25]\n n$4=*n$3.x:reference_field::X& [line 26, column 25]\n *n$2.i:int&=n$4.f [line 26, column 23]\n " shape="box"] "Ref#Ref#reference_field#{1778104277749367423}.02a281ecc4e6bde89182d1ef952810a2_3" -> "Ref#Ref#reference_field#{1778104277749367423}.02a281ecc4e6bde89182d1ef952810a2_2" ; -"Ref#Ref#reference_field#{1778104277749367423}.02a281ecc4e6bde89182d1ef952810a2_4" [label="4: Constructor Init \n n$3=*&this:reference_field::Ref* [line 26, column 16]\n n$4=*&r_:reference_field::X& [line 26, column 18]\n *n$3.x:reference_field::X&=n$4 [line 26, column 16]\n " shape="box"] +"Ref#Ref#reference_field#{1778104277749367423}.02a281ecc4e6bde89182d1ef952810a2_4" [label="4: Constructor Init \n n$5=*&this:reference_field::Ref* [line 26, column 16]\n n$6=*&r_:reference_field::X& [line 26, column 18]\n *n$5.x:reference_field::X&=n$6 [line 26, column 16]\n " shape="box"] "Ref#Ref#reference_field#{1778104277749367423}.02a281ecc4e6bde89182d1ef952810a2_4" -> "Ref#Ref#reference_field#{1778104277749367423}.02a281ecc4e6bde89182d1ef952810a2_3" ; @@ -361,11 +361,11 @@ digraph cfg { "Val#Val#reference_field#{10086609758499948489}.3f0d77ba0039a38103c912b5065ccdaa_2" [label="2: Exit reference_field::Val_Val \n " color=yellow style=filled] -"Val#Val#reference_field#{10086609758499948489}.3f0d77ba0039a38103c912b5065ccdaa_3" [label="3: Constructor Init \n n$0=*&this:reference_field::Val* [line 42, column 23]\n n$1=*&this:reference_field::Val* [line 42, column 25]\n n$2=*n$1.x.f:int [line 42, column 25]\n *n$0.i:int=n$2 [line 42, column 23]\n " shape="box"] +"Val#Val#reference_field#{10086609758499948489}.3f0d77ba0039a38103c912b5065ccdaa_3" [label="3: Constructor Init \n n$2=*&this:reference_field::Val* [line 42, column 23]\n n$3=*&this:reference_field::Val* [line 42, column 25]\n n$4=*n$3.x.f:int [line 42, column 25]\n *n$2.i:int=n$4 [line 42, column 23]\n " shape="box"] "Val#Val#reference_field#{10086609758499948489}.3f0d77ba0039a38103c912b5065ccdaa_3" -> "Val#Val#reference_field#{10086609758499948489}.3f0d77ba0039a38103c912b5065ccdaa_2" ; -"Val#Val#reference_field#{10086609758499948489}.3f0d77ba0039a38103c912b5065ccdaa_4" [label="4: Constructor Init \n n$3=*&this:reference_field::Val* [line 42, column 16]\n n$4=*&r_:reference_field::X& [line 42, column 18]\n n$5=_fun_reference_field::X_X(n$3.x:reference_field::X*,n$4:reference_field::X&) [line 42, column 16]\n " shape="box"] +"Val#Val#reference_field#{10086609758499948489}.3f0d77ba0039a38103c912b5065ccdaa_4" [label="4: Constructor Init \n n$5=*&this:reference_field::Val* [line 42, column 16]\n n$6=*&r_:reference_field::X& [line 42, column 18]\n n$7=_fun_reference_field::X_X(n$5.x:reference_field::X*,n$6:reference_field::X&) [line 42, column 16]\n " shape="box"] "Val#Val#reference_field#{10086609758499948489}.3f0d77ba0039a38103c912b5065ccdaa_4" -> "Val#Val#reference_field#{10086609758499948489}.3f0d77ba0039a38103c912b5065ccdaa_3" ; @@ -376,7 +376,7 @@ digraph cfg { "X#X#reference_field#{16892162000533972663|constexpr}.d3ad2332bde2031935fecc6685296b44_2" [label="2: Exit reference_field::X_X \n " color=yellow style=filled] -"X#X#reference_field#{16892162000533972663|constexpr}.d3ad2332bde2031935fecc6685296b44_3" [label="3: Constructor Init \n n$0=*&this:reference_field::X* [line 12, column 8]\n n$1=*&__param_0:reference_field::X const & [line 12, column 8]\n n$2=*n$1.f:int [line 12, column 8]\n *n$0.f:int=n$2 [line 12, column 8]\n " shape="box"] +"X#X#reference_field#{16892162000533972663|constexpr}.d3ad2332bde2031935fecc6685296b44_3" [label="3: Constructor Init \n n$2=*&this:reference_field::X* [line 12, column 8]\n n$3=*&__param_0:reference_field::X const & [line 12, column 8]\n n$4=*n$3.f:int [line 12, column 8]\n *n$2.f:int=n$4 [line 12, column 8]\n " shape="box"] "X#X#reference_field#{16892162000533972663|constexpr}.d3ad2332bde2031935fecc6685296b44_3" -> "X#X#reference_field#{16892162000533972663|constexpr}.d3ad2332bde2031935fecc6685296b44_2" ; diff --git a/infer/tests/codetoanalyze/cpp/shared/reference/reference_struct_e2e.cpp.dot b/infer/tests/codetoanalyze/cpp/shared/reference/reference_struct_e2e.cpp.dot index c7b49e5d9..d35567d99 100644 --- a/infer/tests/codetoanalyze/cpp/shared/reference/reference_struct_e2e.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/shared/reference/reference_struct_e2e.cpp.dot @@ -27,19 +27,19 @@ digraph cfg { "field_div0_ptr#2555781581744357321.4ee118b9c5178d1d4e02dcf5eed47814_4" -> "field_div0_ptr#2555781581744357321.4ee118b9c5178d1d4e02dcf5eed47814_2" ; -"field_div0_ptr#2555781581744357321.4ee118b9c5178d1d4e02dcf5eed47814_5" [label="5: Prune (true branch, if) \n n$0=*&x:X* [line 48, column 7]\n PRUNE(n$0, true); [line 48, column 7]\n " shape="invhouse"] +"field_div0_ptr#2555781581744357321.4ee118b9c5178d1d4e02dcf5eed47814_5" [label="5: Prune (true branch, if) \n n$1=*&x:X* [line 48, column 7]\n PRUNE(n$1, true); [line 48, column 7]\n " shape="invhouse"] "field_div0_ptr#2555781581744357321.4ee118b9c5178d1d4e02dcf5eed47814_5" -> "field_div0_ptr#2555781581744357321.4ee118b9c5178d1d4e02dcf5eed47814_8" ; -"field_div0_ptr#2555781581744357321.4ee118b9c5178d1d4e02dcf5eed47814_6" [label="6: Prune (false branch, if) \n n$0=*&x:X* [line 48, column 7]\n PRUNE(!n$0, false); [line 48, column 7]\n " shape="invhouse"] +"field_div0_ptr#2555781581744357321.4ee118b9c5178d1d4e02dcf5eed47814_6" [label="6: Prune (false branch, if) \n n$1=*&x:X* [line 48, column 7]\n PRUNE(!n$1, false); [line 48, column 7]\n " shape="invhouse"] "field_div0_ptr#2555781581744357321.4ee118b9c5178d1d4e02dcf5eed47814_6" -> "field_div0_ptr#2555781581744357321.4ee118b9c5178d1d4e02dcf5eed47814_3" ; -"field_div0_ptr#2555781581744357321.4ee118b9c5178d1d4e02dcf5eed47814_7" [label="7: Return Stmt \n n$1=*&x:X* [line 50, column 12]\n _=*n$1:X [line 50, column 12]\n n$3=_fun_X_div(n$1:X*) [line 50, column 12]\n *&return:int=n$3 [line 50, column 5]\n " shape="box"] +"field_div0_ptr#2555781581744357321.4ee118b9c5178d1d4e02dcf5eed47814_7" [label="7: Return Stmt \n n$2=*&x:X* [line 50, column 12]\n _=*n$2:X [line 50, column 12]\n n$4=_fun_X_div(n$2:X*) [line 50, column 12]\n *&return:int=n$4 [line 50, column 5]\n " shape="box"] "field_div0_ptr#2555781581744357321.4ee118b9c5178d1d4e02dcf5eed47814_7" -> "field_div0_ptr#2555781581744357321.4ee118b9c5178d1d4e02dcf5eed47814_2" ; -"field_div0_ptr#2555781581744357321.4ee118b9c5178d1d4e02dcf5eed47814_8" [label="8: Call _fun_set_field_ptr \n n$4=*&x:X* [line 49, column 19]\n n$5=_fun_set_field_ptr(n$4:X*,0:int) [line 49, column 5]\n " shape="box"] +"field_div0_ptr#2555781581744357321.4ee118b9c5178d1d4e02dcf5eed47814_8" [label="8: Call _fun_set_field_ptr \n n$6=*&x:X* [line 49, column 19]\n n$7=_fun_set_field_ptr(n$6:X*,0:int) [line 49, column 5]\n " shape="box"] "field_div0_ptr#2555781581744357321.4ee118b9c5178d1d4e02dcf5eed47814_8" -> "field_div0_ptr#2555781581744357321.4ee118b9c5178d1d4e02dcf5eed47814_7" ; @@ -54,7 +54,7 @@ digraph cfg { "field_div0_ref#11723804822630548942.b7eb5245bed0a75cdc2d181e5af92008_3" -> "field_div0_ref#11723804822630548942.b7eb5245bed0a75cdc2d181e5af92008_2" ; -"field_div0_ref#11723804822630548942.b7eb5245bed0a75cdc2d181e5af92008_4" [label="4: Call _fun_set_field_ref \n n$3=*&x:X& [line 96, column 17]\n n$4=_fun_set_field_ref(n$3:X&,0:int) [line 96, column 3]\n " shape="box"] +"field_div0_ref#11723804822630548942.b7eb5245bed0a75cdc2d181e5af92008_4" [label="4: Call _fun_set_field_ref \n n$4=*&x:X& [line 96, column 17]\n n$5=_fun_set_field_ref(n$4:X&,0:int) [line 96, column 3]\n " shape="box"] "field_div0_ref#11723804822630548942.b7eb5245bed0a75cdc2d181e5af92008_4" -> "field_div0_ref#11723804822630548942.b7eb5245bed0a75cdc2d181e5af92008_3" ; @@ -74,19 +74,19 @@ digraph cfg { "field_div1_ptr#10491775926176760544.af54450738e6dc8210ec4a97e984707b_4" -> "field_div1_ptr#10491775926176760544.af54450738e6dc8210ec4a97e984707b_2" ; -"field_div1_ptr#10491775926176760544.af54450738e6dc8210ec4a97e984707b_5" [label="5: Prune (true branch, if) \n n$0=*&x:X* [line 55, column 7]\n PRUNE(n$0, true); [line 55, column 7]\n " shape="invhouse"] +"field_div1_ptr#10491775926176760544.af54450738e6dc8210ec4a97e984707b_5" [label="5: Prune (true branch, if) \n n$1=*&x:X* [line 55, column 7]\n PRUNE(n$1, true); [line 55, column 7]\n " shape="invhouse"] "field_div1_ptr#10491775926176760544.af54450738e6dc8210ec4a97e984707b_5" -> "field_div1_ptr#10491775926176760544.af54450738e6dc8210ec4a97e984707b_8" ; -"field_div1_ptr#10491775926176760544.af54450738e6dc8210ec4a97e984707b_6" [label="6: Prune (false branch, if) \n n$0=*&x:X* [line 55, column 7]\n PRUNE(!n$0, false); [line 55, column 7]\n " shape="invhouse"] +"field_div1_ptr#10491775926176760544.af54450738e6dc8210ec4a97e984707b_6" [label="6: Prune (false branch, if) \n n$1=*&x:X* [line 55, column 7]\n PRUNE(!n$1, false); [line 55, column 7]\n " shape="invhouse"] "field_div1_ptr#10491775926176760544.af54450738e6dc8210ec4a97e984707b_6" -> "field_div1_ptr#10491775926176760544.af54450738e6dc8210ec4a97e984707b_3" ; -"field_div1_ptr#10491775926176760544.af54450738e6dc8210ec4a97e984707b_7" [label="7: Return Stmt \n n$1=*&x:X* [line 57, column 12]\n _=*n$1:X [line 57, column 12]\n n$3=_fun_X_div(n$1:X*) [line 57, column 12]\n *&return:int=n$3 [line 57, column 5]\n " shape="box"] +"field_div1_ptr#10491775926176760544.af54450738e6dc8210ec4a97e984707b_7" [label="7: Return Stmt \n n$2=*&x:X* [line 57, column 12]\n _=*n$2:X [line 57, column 12]\n n$4=_fun_X_div(n$2:X*) [line 57, column 12]\n *&return:int=n$4 [line 57, column 5]\n " shape="box"] "field_div1_ptr#10491775926176760544.af54450738e6dc8210ec4a97e984707b_7" -> "field_div1_ptr#10491775926176760544.af54450738e6dc8210ec4a97e984707b_2" ; -"field_div1_ptr#10491775926176760544.af54450738e6dc8210ec4a97e984707b_8" [label="8: Call _fun_set_field_ptr \n n$4=*&x:X* [line 56, column 19]\n n$5=_fun_set_field_ptr(n$4:X*,1:int) [line 56, column 5]\n " shape="box"] +"field_div1_ptr#10491775926176760544.af54450738e6dc8210ec4a97e984707b_8" [label="8: Call _fun_set_field_ptr \n n$6=*&x:X* [line 56, column 19]\n n$7=_fun_set_field_ptr(n$6:X*,1:int) [line 56, column 5]\n " shape="box"] "field_div1_ptr#10491775926176760544.af54450738e6dc8210ec4a97e984707b_8" -> "field_div1_ptr#10491775926176760544.af54450738e6dc8210ec4a97e984707b_7" ; @@ -101,7 +101,7 @@ digraph cfg { "field_div1_ref#1499715418357335887.5b6e5f87301df1903e4a04faae98d6d5_3" -> "field_div1_ref#1499715418357335887.5b6e5f87301df1903e4a04faae98d6d5_2" ; -"field_div1_ref#1499715418357335887.5b6e5f87301df1903e4a04faae98d6d5_4" [label="4: Call _fun_set_field_ref \n n$3=*&x:X& [line 101, column 17]\n n$4=_fun_set_field_ref(n$3:X&,1:int) [line 101, column 3]\n " shape="box"] +"field_div1_ref#1499715418357335887.5b6e5f87301df1903e4a04faae98d6d5_4" [label="4: Call _fun_set_field_ref \n n$4=*&x:X& [line 101, column 17]\n n$5=_fun_set_field_ref(n$4:X&,1:int) [line 101, column 3]\n " shape="box"] "field_div1_ref#1499715418357335887.5b6e5f87301df1903e4a04faae98d6d5_4" -> "field_div1_ref#1499715418357335887.5b6e5f87301df1903e4a04faae98d6d5_3" ; @@ -123,15 +123,15 @@ digraph cfg { "get_global_ptr_div0_field#8708891951617234281.85a5d13d32b9177abaa3c8c98323c45e_2" [label="2: Exit get_global_ptr_div0_field \n " color=yellow style=filled] -"get_global_ptr_div0_field#8708891951617234281.85a5d13d32b9177abaa3c8c98323c45e_3" [label="3: Call _fun_X_div \n n$0=_fun_get_global_ptr() [line 76, column 3]\n _=*n$0:X [line 76, column 3]\n n$2=_fun_X_div(n$0:X*) [line 76, column 3]\n " shape="box"] +"get_global_ptr_div0_field#8708891951617234281.85a5d13d32b9177abaa3c8c98323c45e_3" [label="3: Call _fun_X_div \n n$1=_fun_get_global_ptr() [line 76, column 3]\n _=*n$1:X [line 76, column 3]\n n$3=_fun_X_div(n$1:X*) [line 76, column 3]\n " shape="box"] "get_global_ptr_div0_field#8708891951617234281.85a5d13d32b9177abaa3c8c98323c45e_3" -> "get_global_ptr_div0_field#8708891951617234281.85a5d13d32b9177abaa3c8c98323c45e_2" ; -"get_global_ptr_div0_field#8708891951617234281.85a5d13d32b9177abaa3c8c98323c45e_4" [label="4: BinaryOperatorStmt: Assign \n n$3=_fun_get_global_ptr() [line 75, column 3]\n *n$3.f:int=0 [line 75, column 3]\n " shape="box"] +"get_global_ptr_div0_field#8708891951617234281.85a5d13d32b9177abaa3c8c98323c45e_4" [label="4: BinaryOperatorStmt: Assign \n n$4=_fun_get_global_ptr() [line 75, column 3]\n *n$4.f:int=0 [line 75, column 3]\n " shape="box"] "get_global_ptr_div0_field#8708891951617234281.85a5d13d32b9177abaa3c8c98323c45e_4" -> "get_global_ptr_div0_field#8708891951617234281.85a5d13d32b9177abaa3c8c98323c45e_3" ; -"get_global_ptr_div0_field#8708891951617234281.85a5d13d32b9177abaa3c8c98323c45e_5" [label="5: Call _fun_X_nonzero \n n$4=_fun_get_global_ptr() [line 74, column 3]\n _=*n$4:X [line 74, column 3]\n n$6=_fun_X_nonzero(n$4:X*) [line 74, column 3]\n " shape="box"] +"get_global_ptr_div0_field#8708891951617234281.85a5d13d32b9177abaa3c8c98323c45e_5" [label="5: Call _fun_X_nonzero \n n$5=_fun_get_global_ptr() [line 74, column 3]\n _=*n$5:X [line 74, column 3]\n n$7=_fun_X_nonzero(n$5:X*) [line 74, column 3]\n " shape="box"] "get_global_ptr_div0_field#8708891951617234281.85a5d13d32b9177abaa3c8c98323c45e_5" -> "get_global_ptr_div0_field#8708891951617234281.85a5d13d32b9177abaa3c8c98323c45e_4" ; @@ -142,15 +142,15 @@ digraph cfg { "get_global_ptr_div0_method#6868600075123047675.d796dd8227b55f7d5d2ba2c1a06183dd_2" [label="2: Exit get_global_ptr_div0_method \n " color=yellow style=filled] -"get_global_ptr_div0_method#6868600075123047675.d796dd8227b55f7d5d2ba2c1a06183dd_3" [label="3: Call _fun_X_div \n n$0=_fun_get_global_ptr() [line 64, column 3]\n _=*n$0:X [line 64, column 3]\n n$2=_fun_X_div(n$0:X*) [line 64, column 3]\n " shape="box"] +"get_global_ptr_div0_method#6868600075123047675.d796dd8227b55f7d5d2ba2c1a06183dd_3" [label="3: Call _fun_X_div \n n$1=_fun_get_global_ptr() [line 64, column 3]\n _=*n$1:X [line 64, column 3]\n n$3=_fun_X_div(n$1:X*) [line 64, column 3]\n " shape="box"] "get_global_ptr_div0_method#6868600075123047675.d796dd8227b55f7d5d2ba2c1a06183dd_3" -> "get_global_ptr_div0_method#6868600075123047675.d796dd8227b55f7d5d2ba2c1a06183dd_2" ; -"get_global_ptr_div0_method#6868600075123047675.d796dd8227b55f7d5d2ba2c1a06183dd_4" [label="4: Call _fun_X_zero \n n$3=_fun_get_global_ptr() [line 63, column 3]\n _=*n$3:X [line 63, column 3]\n n$5=_fun_X_zero(n$3:X*) [line 63, column 3]\n " shape="box"] +"get_global_ptr_div0_method#6868600075123047675.d796dd8227b55f7d5d2ba2c1a06183dd_4" [label="4: Call _fun_X_zero \n n$4=_fun_get_global_ptr() [line 63, column 3]\n _=*n$4:X [line 63, column 3]\n n$6=_fun_X_zero(n$4:X*) [line 63, column 3]\n " shape="box"] "get_global_ptr_div0_method#6868600075123047675.d796dd8227b55f7d5d2ba2c1a06183dd_4" -> "get_global_ptr_div0_method#6868600075123047675.d796dd8227b55f7d5d2ba2c1a06183dd_3" ; -"get_global_ptr_div0_method#6868600075123047675.d796dd8227b55f7d5d2ba2c1a06183dd_5" [label="5: BinaryOperatorStmt: Assign \n n$6=_fun_get_global_ptr() [line 62, column 3]\n *n$6.f:int=1 [line 62, column 3]\n " shape="box"] +"get_global_ptr_div0_method#6868600075123047675.d796dd8227b55f7d5d2ba2c1a06183dd_5" [label="5: BinaryOperatorStmt: Assign \n n$7=_fun_get_global_ptr() [line 62, column 3]\n *n$7.f:int=1 [line 62, column 3]\n " shape="box"] "get_global_ptr_div0_method#6868600075123047675.d796dd8227b55f7d5d2ba2c1a06183dd_5" -> "get_global_ptr_div0_method#6868600075123047675.d796dd8227b55f7d5d2ba2c1a06183dd_4" ; @@ -161,15 +161,15 @@ digraph cfg { "get_global_ptr_div1_field#6744083307199058304.94ebaff789d09fecbd24e3f8bfd75e70_2" [label="2: Exit get_global_ptr_div1_field \n " color=yellow style=filled] -"get_global_ptr_div1_field#6744083307199058304.94ebaff789d09fecbd24e3f8bfd75e70_3" [label="3: Call _fun_X_div \n n$0=_fun_get_global_ptr() [line 82, column 3]\n _=*n$0:X [line 82, column 3]\n n$2=_fun_X_div(n$0:X*) [line 82, column 3]\n " shape="box"] +"get_global_ptr_div1_field#6744083307199058304.94ebaff789d09fecbd24e3f8bfd75e70_3" [label="3: Call _fun_X_div \n n$1=_fun_get_global_ptr() [line 82, column 3]\n _=*n$1:X [line 82, column 3]\n n$3=_fun_X_div(n$1:X*) [line 82, column 3]\n " shape="box"] "get_global_ptr_div1_field#6744083307199058304.94ebaff789d09fecbd24e3f8bfd75e70_3" -> "get_global_ptr_div1_field#6744083307199058304.94ebaff789d09fecbd24e3f8bfd75e70_2" ; -"get_global_ptr_div1_field#6744083307199058304.94ebaff789d09fecbd24e3f8bfd75e70_4" [label="4: BinaryOperatorStmt: Assign \n n$3=_fun_get_global_ptr() [line 81, column 3]\n *n$3.f:int=1 [line 81, column 3]\n " shape="box"] +"get_global_ptr_div1_field#6744083307199058304.94ebaff789d09fecbd24e3f8bfd75e70_4" [label="4: BinaryOperatorStmt: Assign \n n$4=_fun_get_global_ptr() [line 81, column 3]\n *n$4.f:int=1 [line 81, column 3]\n " shape="box"] "get_global_ptr_div1_field#6744083307199058304.94ebaff789d09fecbd24e3f8bfd75e70_4" -> "get_global_ptr_div1_field#6744083307199058304.94ebaff789d09fecbd24e3f8bfd75e70_3" ; -"get_global_ptr_div1_field#6744083307199058304.94ebaff789d09fecbd24e3f8bfd75e70_5" [label="5: Call _fun_X_zero \n n$4=_fun_get_global_ptr() [line 80, column 3]\n _=*n$4:X [line 80, column 3]\n n$6=_fun_X_zero(n$4:X*) [line 80, column 3]\n " shape="box"] +"get_global_ptr_div1_field#6744083307199058304.94ebaff789d09fecbd24e3f8bfd75e70_5" [label="5: Call _fun_X_zero \n n$5=_fun_get_global_ptr() [line 80, column 3]\n _=*n$5:X [line 80, column 3]\n n$7=_fun_X_zero(n$5:X*) [line 80, column 3]\n " shape="box"] "get_global_ptr_div1_field#6744083307199058304.94ebaff789d09fecbd24e3f8bfd75e70_5" -> "get_global_ptr_div1_field#6744083307199058304.94ebaff789d09fecbd24e3f8bfd75e70_4" ; @@ -180,15 +180,15 @@ digraph cfg { "get_global_ptr_div1_method#13320237176965265316.b7b17bcc9c036a753453d67e3683d764_2" [label="2: Exit get_global_ptr_div1_method \n " color=yellow style=filled] -"get_global_ptr_div1_method#13320237176965265316.b7b17bcc9c036a753453d67e3683d764_3" [label="3: Call _fun_X_div \n n$0=_fun_get_global_ptr() [line 70, column 3]\n _=*n$0:X [line 70, column 3]\n n$2=_fun_X_div(n$0:X*) [line 70, column 3]\n " shape="box"] +"get_global_ptr_div1_method#13320237176965265316.b7b17bcc9c036a753453d67e3683d764_3" [label="3: Call _fun_X_div \n n$1=_fun_get_global_ptr() [line 70, column 3]\n _=*n$1:X [line 70, column 3]\n n$3=_fun_X_div(n$1:X*) [line 70, column 3]\n " shape="box"] "get_global_ptr_div1_method#13320237176965265316.b7b17bcc9c036a753453d67e3683d764_3" -> "get_global_ptr_div1_method#13320237176965265316.b7b17bcc9c036a753453d67e3683d764_2" ; -"get_global_ptr_div1_method#13320237176965265316.b7b17bcc9c036a753453d67e3683d764_4" [label="4: Call _fun_X_nonzero \n n$3=_fun_get_global_ptr() [line 69, column 3]\n _=*n$3:X [line 69, column 3]\n n$5=_fun_X_nonzero(n$3:X*) [line 69, column 3]\n " shape="box"] +"get_global_ptr_div1_method#13320237176965265316.b7b17bcc9c036a753453d67e3683d764_4" [label="4: Call _fun_X_nonzero \n n$4=_fun_get_global_ptr() [line 69, column 3]\n _=*n$4:X [line 69, column 3]\n n$6=_fun_X_nonzero(n$4:X*) [line 69, column 3]\n " shape="box"] "get_global_ptr_div1_method#13320237176965265316.b7b17bcc9c036a753453d67e3683d764_4" -> "get_global_ptr_div1_method#13320237176965265316.b7b17bcc9c036a753453d67e3683d764_3" ; -"get_global_ptr_div1_method#13320237176965265316.b7b17bcc9c036a753453d67e3683d764_5" [label="5: BinaryOperatorStmt: Assign \n n$6=_fun_get_global_ptr() [line 68, column 3]\n *n$6.f:int=0 [line 68, column 3]\n " shape="box"] +"get_global_ptr_div1_method#13320237176965265316.b7b17bcc9c036a753453d67e3683d764_5" [label="5: BinaryOperatorStmt: Assign \n n$7=_fun_get_global_ptr() [line 68, column 3]\n *n$7.f:int=0 [line 68, column 3]\n " shape="box"] "get_global_ptr_div1_method#13320237176965265316.b7b17bcc9c036a753453d67e3683d764_5" -> "get_global_ptr_div1_method#13320237176965265316.b7b17bcc9c036a753453d67e3683d764_4" ; @@ -210,15 +210,15 @@ digraph cfg { "get_global_ref_div0_field#9894336115642083138.99dfafa929e6446e06064af81022e228_2" [label="2: Exit get_global_ref_div0_field \n " color=yellow style=filled] -"get_global_ref_div0_field#9894336115642083138.99dfafa929e6446e06064af81022e228_3" [label="3: Call _fun_X_div \n n$0=_fun_get_global_ref() [line 120, column 3]\n _=*n$0:X [line 120, column 3]\n n$2=_fun_X_div(n$0:X&) [line 120, column 3]\n " shape="box"] +"get_global_ref_div0_field#9894336115642083138.99dfafa929e6446e06064af81022e228_3" [label="3: Call _fun_X_div \n n$1=_fun_get_global_ref() [line 120, column 3]\n _=*n$1:X [line 120, column 3]\n n$3=_fun_X_div(n$1:X&) [line 120, column 3]\n " shape="box"] "get_global_ref_div0_field#9894336115642083138.99dfafa929e6446e06064af81022e228_3" -> "get_global_ref_div0_field#9894336115642083138.99dfafa929e6446e06064af81022e228_2" ; -"get_global_ref_div0_field#9894336115642083138.99dfafa929e6446e06064af81022e228_4" [label="4: BinaryOperatorStmt: Assign \n n$3=_fun_get_global_ref() [line 119, column 3]\n *n$3.f:int=0 [line 119, column 3]\n " shape="box"] +"get_global_ref_div0_field#9894336115642083138.99dfafa929e6446e06064af81022e228_4" [label="4: BinaryOperatorStmt: Assign \n n$4=_fun_get_global_ref() [line 119, column 3]\n *n$4.f:int=0 [line 119, column 3]\n " shape="box"] "get_global_ref_div0_field#9894336115642083138.99dfafa929e6446e06064af81022e228_4" -> "get_global_ref_div0_field#9894336115642083138.99dfafa929e6446e06064af81022e228_3" ; -"get_global_ref_div0_field#9894336115642083138.99dfafa929e6446e06064af81022e228_5" [label="5: Call _fun_X_nonzero \n n$4=_fun_get_global_ref() [line 118, column 3]\n _=*n$4:X [line 118, column 3]\n n$6=_fun_X_nonzero(n$4:X&) [line 118, column 3]\n " shape="box"] +"get_global_ref_div0_field#9894336115642083138.99dfafa929e6446e06064af81022e228_5" [label="5: Call _fun_X_nonzero \n n$5=_fun_get_global_ref() [line 118, column 3]\n _=*n$5:X [line 118, column 3]\n n$7=_fun_X_nonzero(n$5:X&) [line 118, column 3]\n " shape="box"] "get_global_ref_div0_field#9894336115642083138.99dfafa929e6446e06064af81022e228_5" -> "get_global_ref_div0_field#9894336115642083138.99dfafa929e6446e06064af81022e228_4" ; @@ -229,15 +229,15 @@ digraph cfg { "get_global_ref_div0_method#4500024601676141702.703eacc20d3ff2ec6f40a78b62656e3a_2" [label="2: Exit get_global_ref_div0_method \n " color=yellow style=filled] -"get_global_ref_div0_method#4500024601676141702.703eacc20d3ff2ec6f40a78b62656e3a_3" [label="3: Call _fun_X_div \n n$0=_fun_get_global_ref() [line 108, column 3]\n _=*n$0:X [line 108, column 3]\n n$2=_fun_X_div(n$0:X&) [line 108, column 3]\n " shape="box"] +"get_global_ref_div0_method#4500024601676141702.703eacc20d3ff2ec6f40a78b62656e3a_3" [label="3: Call _fun_X_div \n n$1=_fun_get_global_ref() [line 108, column 3]\n _=*n$1:X [line 108, column 3]\n n$3=_fun_X_div(n$1:X&) [line 108, column 3]\n " shape="box"] "get_global_ref_div0_method#4500024601676141702.703eacc20d3ff2ec6f40a78b62656e3a_3" -> "get_global_ref_div0_method#4500024601676141702.703eacc20d3ff2ec6f40a78b62656e3a_2" ; -"get_global_ref_div0_method#4500024601676141702.703eacc20d3ff2ec6f40a78b62656e3a_4" [label="4: Call _fun_X_zero \n n$3=_fun_get_global_ref() [line 107, column 3]\n _=*n$3:X [line 107, column 3]\n n$5=_fun_X_zero(n$3:X&) [line 107, column 3]\n " shape="box"] +"get_global_ref_div0_method#4500024601676141702.703eacc20d3ff2ec6f40a78b62656e3a_4" [label="4: Call _fun_X_zero \n n$4=_fun_get_global_ref() [line 107, column 3]\n _=*n$4:X [line 107, column 3]\n n$6=_fun_X_zero(n$4:X&) [line 107, column 3]\n " shape="box"] "get_global_ref_div0_method#4500024601676141702.703eacc20d3ff2ec6f40a78b62656e3a_4" -> "get_global_ref_div0_method#4500024601676141702.703eacc20d3ff2ec6f40a78b62656e3a_3" ; -"get_global_ref_div0_method#4500024601676141702.703eacc20d3ff2ec6f40a78b62656e3a_5" [label="5: BinaryOperatorStmt: Assign \n n$6=_fun_get_global_ref() [line 106, column 3]\n *n$6.f:int=1 [line 106, column 3]\n " shape="box"] +"get_global_ref_div0_method#4500024601676141702.703eacc20d3ff2ec6f40a78b62656e3a_5" [label="5: BinaryOperatorStmt: Assign \n n$7=_fun_get_global_ref() [line 106, column 3]\n *n$7.f:int=1 [line 106, column 3]\n " shape="box"] "get_global_ref_div0_method#4500024601676141702.703eacc20d3ff2ec6f40a78b62656e3a_5" -> "get_global_ref_div0_method#4500024601676141702.703eacc20d3ff2ec6f40a78b62656e3a_4" ; @@ -248,15 +248,15 @@ digraph cfg { "get_global_ref_div1_field#9400638526174087075.f2be9db8a45f6acda1c8ab83ffea2ce8_2" [label="2: Exit get_global_ref_div1_field \n " color=yellow style=filled] -"get_global_ref_div1_field#9400638526174087075.f2be9db8a45f6acda1c8ab83ffea2ce8_3" [label="3: Call _fun_X_div \n n$0=_fun_get_global_ref() [line 126, column 3]\n _=*n$0:X [line 126, column 3]\n n$2=_fun_X_div(n$0:X&) [line 126, column 3]\n " shape="box"] +"get_global_ref_div1_field#9400638526174087075.f2be9db8a45f6acda1c8ab83ffea2ce8_3" [label="3: Call _fun_X_div \n n$1=_fun_get_global_ref() [line 126, column 3]\n _=*n$1:X [line 126, column 3]\n n$3=_fun_X_div(n$1:X&) [line 126, column 3]\n " shape="box"] "get_global_ref_div1_field#9400638526174087075.f2be9db8a45f6acda1c8ab83ffea2ce8_3" -> "get_global_ref_div1_field#9400638526174087075.f2be9db8a45f6acda1c8ab83ffea2ce8_2" ; -"get_global_ref_div1_field#9400638526174087075.f2be9db8a45f6acda1c8ab83ffea2ce8_4" [label="4: BinaryOperatorStmt: Assign \n n$3=_fun_get_global_ref() [line 125, column 3]\n *n$3.f:int=1 [line 125, column 3]\n " shape="box"] +"get_global_ref_div1_field#9400638526174087075.f2be9db8a45f6acda1c8ab83ffea2ce8_4" [label="4: BinaryOperatorStmt: Assign \n n$4=_fun_get_global_ref() [line 125, column 3]\n *n$4.f:int=1 [line 125, column 3]\n " shape="box"] "get_global_ref_div1_field#9400638526174087075.f2be9db8a45f6acda1c8ab83ffea2ce8_4" -> "get_global_ref_div1_field#9400638526174087075.f2be9db8a45f6acda1c8ab83ffea2ce8_3" ; -"get_global_ref_div1_field#9400638526174087075.f2be9db8a45f6acda1c8ab83ffea2ce8_5" [label="5: Call _fun_X_zero \n n$4=_fun_get_global_ref() [line 124, column 3]\n _=*n$4:X [line 124, column 3]\n n$6=_fun_X_zero(n$4:X&) [line 124, column 3]\n " shape="box"] +"get_global_ref_div1_field#9400638526174087075.f2be9db8a45f6acda1c8ab83ffea2ce8_5" [label="5: Call _fun_X_zero \n n$5=_fun_get_global_ref() [line 124, column 3]\n _=*n$5:X [line 124, column 3]\n n$7=_fun_X_zero(n$5:X&) [line 124, column 3]\n " shape="box"] "get_global_ref_div1_field#9400638526174087075.f2be9db8a45f6acda1c8ab83ffea2ce8_5" -> "get_global_ref_div1_field#9400638526174087075.f2be9db8a45f6acda1c8ab83ffea2ce8_4" ; @@ -267,15 +267,15 @@ digraph cfg { "get_global_ref_div1_method#9218905628510589917.1d66d8c44e8582bb6fcdcb7df79e3215_2" [label="2: Exit get_global_ref_div1_method \n " color=yellow style=filled] -"get_global_ref_div1_method#9218905628510589917.1d66d8c44e8582bb6fcdcb7df79e3215_3" [label="3: Call _fun_X_div \n n$0=_fun_get_global_ref() [line 114, column 3]\n _=*n$0:X [line 114, column 3]\n n$2=_fun_X_div(n$0:X&) [line 114, column 3]\n " shape="box"] +"get_global_ref_div1_method#9218905628510589917.1d66d8c44e8582bb6fcdcb7df79e3215_3" [label="3: Call _fun_X_div \n n$1=_fun_get_global_ref() [line 114, column 3]\n _=*n$1:X [line 114, column 3]\n n$3=_fun_X_div(n$1:X&) [line 114, column 3]\n " shape="box"] "get_global_ref_div1_method#9218905628510589917.1d66d8c44e8582bb6fcdcb7df79e3215_3" -> "get_global_ref_div1_method#9218905628510589917.1d66d8c44e8582bb6fcdcb7df79e3215_2" ; -"get_global_ref_div1_method#9218905628510589917.1d66d8c44e8582bb6fcdcb7df79e3215_4" [label="4: Call _fun_X_nonzero \n n$3=_fun_get_global_ref() [line 113, column 3]\n _=*n$3:X [line 113, column 3]\n n$5=_fun_X_nonzero(n$3:X&) [line 113, column 3]\n " shape="box"] +"get_global_ref_div1_method#9218905628510589917.1d66d8c44e8582bb6fcdcb7df79e3215_4" [label="4: Call _fun_X_nonzero \n n$4=_fun_get_global_ref() [line 113, column 3]\n _=*n$4:X [line 113, column 3]\n n$6=_fun_X_nonzero(n$4:X&) [line 113, column 3]\n " shape="box"] "get_global_ref_div1_method#9218905628510589917.1d66d8c44e8582bb6fcdcb7df79e3215_4" -> "get_global_ref_div1_method#9218905628510589917.1d66d8c44e8582bb6fcdcb7df79e3215_3" ; -"get_global_ref_div1_method#9218905628510589917.1d66d8c44e8582bb6fcdcb7df79e3215_5" [label="5: BinaryOperatorStmt: Assign \n n$6=_fun_get_global_ref() [line 112, column 3]\n *n$6.f:int=0 [line 112, column 3]\n " shape="box"] +"get_global_ref_div1_method#9218905628510589917.1d66d8c44e8582bb6fcdcb7df79e3215_5" [label="5: BinaryOperatorStmt: Assign \n n$7=_fun_get_global_ref() [line 112, column 3]\n *n$7.f:int=0 [line 112, column 3]\n " shape="box"] "get_global_ref_div1_method#9218905628510589917.1d66d8c44e8582bb6fcdcb7df79e3215_5" -> "get_global_ref_div1_method#9218905628510589917.1d66d8c44e8582bb6fcdcb7df79e3215_4" ; @@ -295,19 +295,19 @@ digraph cfg { "method_div0_ptr#6106785648087401281.a4bd2a817d503af4e1865afa4416bdb5_4" -> "method_div0_ptr#6106785648087401281.a4bd2a817d503af4e1865afa4416bdb5_2" ; -"method_div0_ptr#6106785648087401281.a4bd2a817d503af4e1865afa4416bdb5_5" [label="5: Prune (true branch, if) \n n$0=*&x:X* [line 34, column 7]\n PRUNE(n$0, true); [line 34, column 7]\n " shape="invhouse"] +"method_div0_ptr#6106785648087401281.a4bd2a817d503af4e1865afa4416bdb5_5" [label="5: Prune (true branch, if) \n n$1=*&x:X* [line 34, column 7]\n PRUNE(n$1, true); [line 34, column 7]\n " shape="invhouse"] "method_div0_ptr#6106785648087401281.a4bd2a817d503af4e1865afa4416bdb5_5" -> "method_div0_ptr#6106785648087401281.a4bd2a817d503af4e1865afa4416bdb5_8" ; -"method_div0_ptr#6106785648087401281.a4bd2a817d503af4e1865afa4416bdb5_6" [label="6: Prune (false branch, if) \n n$0=*&x:X* [line 34, column 7]\n PRUNE(!n$0, false); [line 34, column 7]\n " shape="invhouse"] +"method_div0_ptr#6106785648087401281.a4bd2a817d503af4e1865afa4416bdb5_6" [label="6: Prune (false branch, if) \n n$1=*&x:X* [line 34, column 7]\n PRUNE(!n$1, false); [line 34, column 7]\n " shape="invhouse"] "method_div0_ptr#6106785648087401281.a4bd2a817d503af4e1865afa4416bdb5_6" -> "method_div0_ptr#6106785648087401281.a4bd2a817d503af4e1865afa4416bdb5_3" ; -"method_div0_ptr#6106785648087401281.a4bd2a817d503af4e1865afa4416bdb5_7" [label="7: Return Stmt \n n$1=*&x:X* [line 36, column 12]\n _=*n$1:X [line 36, column 12]\n n$3=_fun_X_div(n$1:X*) [line 36, column 12]\n *&return:int=n$3 [line 36, column 5]\n " shape="box"] +"method_div0_ptr#6106785648087401281.a4bd2a817d503af4e1865afa4416bdb5_7" [label="7: Return Stmt \n n$2=*&x:X* [line 36, column 12]\n _=*n$2:X [line 36, column 12]\n n$4=_fun_X_div(n$2:X*) [line 36, column 12]\n *&return:int=n$4 [line 36, column 5]\n " shape="box"] "method_div0_ptr#6106785648087401281.a4bd2a817d503af4e1865afa4416bdb5_7" -> "method_div0_ptr#6106785648087401281.a4bd2a817d503af4e1865afa4416bdb5_2" ; -"method_div0_ptr#6106785648087401281.a4bd2a817d503af4e1865afa4416bdb5_8" [label="8: Call _fun_zero_ptr \n n$4=*&x:X* [line 35, column 14]\n n$5=_fun_zero_ptr(n$4:X*) [line 35, column 5]\n " shape="box"] +"method_div0_ptr#6106785648087401281.a4bd2a817d503af4e1865afa4416bdb5_8" [label="8: Call _fun_zero_ptr \n n$6=*&x:X* [line 35, column 14]\n n$7=_fun_zero_ptr(n$6:X*) [line 35, column 5]\n " shape="box"] "method_div0_ptr#6106785648087401281.a4bd2a817d503af4e1865afa4416bdb5_8" -> "method_div0_ptr#6106785648087401281.a4bd2a817d503af4e1865afa4416bdb5_7" ; @@ -322,7 +322,7 @@ digraph cfg { "method_div0_ref#12048348997540346822.5280d482da62ad0e098e3e6ad4e7915e_3" -> "method_div0_ref#12048348997540346822.5280d482da62ad0e098e3e6ad4e7915e_2" ; -"method_div0_ref#12048348997540346822.5280d482da62ad0e098e3e6ad4e7915e_4" [label="4: Call _fun_zero_ref \n n$3=*&x:X& [line 86, column 12]\n n$4=_fun_zero_ref(n$3:X&) [line 86, column 3]\n " shape="box"] +"method_div0_ref#12048348997540346822.5280d482da62ad0e098e3e6ad4e7915e_4" [label="4: Call _fun_zero_ref \n n$4=*&x:X& [line 86, column 12]\n n$5=_fun_zero_ref(n$4:X&) [line 86, column 3]\n " shape="box"] "method_div0_ref#12048348997540346822.5280d482da62ad0e098e3e6ad4e7915e_4" -> "method_div0_ref#12048348997540346822.5280d482da62ad0e098e3e6ad4e7915e_3" ; @@ -342,19 +342,19 @@ digraph cfg { "method_div1_ptr#3061685040798671000.94d1209c17222ffe12cc388ae1ff112d_4" -> "method_div1_ptr#3061685040798671000.94d1209c17222ffe12cc388ae1ff112d_2" ; -"method_div1_ptr#3061685040798671000.94d1209c17222ffe12cc388ae1ff112d_5" [label="5: Prune (true branch, if) \n n$0=*&x:X* [line 41, column 7]\n PRUNE(n$0, true); [line 41, column 7]\n " shape="invhouse"] +"method_div1_ptr#3061685040798671000.94d1209c17222ffe12cc388ae1ff112d_5" [label="5: Prune (true branch, if) \n n$1=*&x:X* [line 41, column 7]\n PRUNE(n$1, true); [line 41, column 7]\n " shape="invhouse"] "method_div1_ptr#3061685040798671000.94d1209c17222ffe12cc388ae1ff112d_5" -> "method_div1_ptr#3061685040798671000.94d1209c17222ffe12cc388ae1ff112d_8" ; -"method_div1_ptr#3061685040798671000.94d1209c17222ffe12cc388ae1ff112d_6" [label="6: Prune (false branch, if) \n n$0=*&x:X* [line 41, column 7]\n PRUNE(!n$0, false); [line 41, column 7]\n " shape="invhouse"] +"method_div1_ptr#3061685040798671000.94d1209c17222ffe12cc388ae1ff112d_6" [label="6: Prune (false branch, if) \n n$1=*&x:X* [line 41, column 7]\n PRUNE(!n$1, false); [line 41, column 7]\n " shape="invhouse"] "method_div1_ptr#3061685040798671000.94d1209c17222ffe12cc388ae1ff112d_6" -> "method_div1_ptr#3061685040798671000.94d1209c17222ffe12cc388ae1ff112d_3" ; -"method_div1_ptr#3061685040798671000.94d1209c17222ffe12cc388ae1ff112d_7" [label="7: Return Stmt \n n$1=*&x:X* [line 43, column 12]\n _=*n$1:X [line 43, column 12]\n n$3=_fun_X_div(n$1:X*) [line 43, column 12]\n *&return:int=n$3 [line 43, column 5]\n " shape="box"] +"method_div1_ptr#3061685040798671000.94d1209c17222ffe12cc388ae1ff112d_7" [label="7: Return Stmt \n n$2=*&x:X* [line 43, column 12]\n _=*n$2:X [line 43, column 12]\n n$4=_fun_X_div(n$2:X*) [line 43, column 12]\n *&return:int=n$4 [line 43, column 5]\n " shape="box"] "method_div1_ptr#3061685040798671000.94d1209c17222ffe12cc388ae1ff112d_7" -> "method_div1_ptr#3061685040798671000.94d1209c17222ffe12cc388ae1ff112d_2" ; -"method_div1_ptr#3061685040798671000.94d1209c17222ffe12cc388ae1ff112d_8" [label="8: Call _fun_nonzero_ptr \n n$4=*&x:X* [line 42, column 17]\n n$5=_fun_nonzero_ptr(n$4:X*) [line 42, column 5]\n " shape="box"] +"method_div1_ptr#3061685040798671000.94d1209c17222ffe12cc388ae1ff112d_8" [label="8: Call _fun_nonzero_ptr \n n$6=*&x:X* [line 42, column 17]\n n$7=_fun_nonzero_ptr(n$6:X*) [line 42, column 5]\n " shape="box"] "method_div1_ptr#3061685040798671000.94d1209c17222ffe12cc388ae1ff112d_8" -> "method_div1_ptr#3061685040798671000.94d1209c17222ffe12cc388ae1ff112d_7" ; @@ -369,7 +369,7 @@ digraph cfg { "method_div1_ref#18445848838166655559.1ecfa9c02aff37ba12fb556cb038f32c_3" -> "method_div1_ref#18445848838166655559.1ecfa9c02aff37ba12fb556cb038f32c_2" ; -"method_div1_ref#18445848838166655559.1ecfa9c02aff37ba12fb556cb038f32c_4" [label="4: Call _fun_nonzero_ref \n n$3=*&x:X& [line 91, column 15]\n n$4=_fun_nonzero_ref(n$3:X&) [line 91, column 3]\n " shape="box"] +"method_div1_ref#18445848838166655559.1ecfa9c02aff37ba12fb556cb038f32c_4" [label="4: Call _fun_nonzero_ref \n n$4=*&x:X& [line 91, column 15]\n n$5=_fun_nonzero_ref(n$4:X&) [line 91, column 3]\n " shape="box"] "method_div1_ref#18445848838166655559.1ecfa9c02aff37ba12fb556cb038f32c_4" -> "method_div1_ref#18445848838166655559.1ecfa9c02aff37ba12fb556cb038f32c_3" ; @@ -380,7 +380,7 @@ digraph cfg { "nonzero_ptr#1716920554390102131.73cd383c8a42e9a8d0f617a226ea9df9_2" [label="2: Exit nonzero_ptr \n " color=yellow style=filled] -"nonzero_ptr#1716920554390102131.73cd383c8a42e9a8d0f617a226ea9df9_3" [label="3: Call _fun_X_nonzero \n n$0=*&x:X* [line 19, column 26]\n _=*n$0:X [line 19, column 26]\n n$2=_fun_X_nonzero(n$0:X*) [line 19, column 26]\n " shape="box"] +"nonzero_ptr#1716920554390102131.73cd383c8a42e9a8d0f617a226ea9df9_3" [label="3: Call _fun_X_nonzero \n n$1=*&x:X* [line 19, column 26]\n _=*n$1:X [line 19, column 26]\n n$3=_fun_X_nonzero(n$1:X*) [line 19, column 26]\n " shape="box"] "nonzero_ptr#1716920554390102131.73cd383c8a42e9a8d0f617a226ea9df9_3" -> "nonzero_ptr#1716920554390102131.73cd383c8a42e9a8d0f617a226ea9df9_2" ; @@ -391,7 +391,7 @@ digraph cfg { "nonzero_ref#2062801655575406720.e5794366c34a5ecd10e2fd062a659f30_2" [label="2: Exit nonzero_ref \n " color=yellow style=filled] -"nonzero_ref#2062801655575406720.e5794366c34a5ecd10e2fd062a659f30_3" [label="3: Call _fun_X_nonzero \n n$0=*&x:X& [line 25, column 26]\n _=*n$0:X [line 25, column 26]\n n$2=_fun_X_nonzero(n$0:X&) [line 25, column 26]\n " shape="box"] +"nonzero_ref#2062801655575406720.e5794366c34a5ecd10e2fd062a659f30_3" [label="3: Call _fun_X_nonzero \n n$1=*&x:X& [line 25, column 26]\n _=*n$1:X [line 25, column 26]\n n$3=_fun_X_nonzero(n$1:X&) [line 25, column 26]\n " shape="box"] "nonzero_ref#2062801655575406720.e5794366c34a5ecd10e2fd062a659f30_3" -> "nonzero_ref#2062801655575406720.e5794366c34a5ecd10e2fd062a659f30_2" ; @@ -402,7 +402,7 @@ digraph cfg { "set_field_ptr#10262801862810946974.0df004d43278f4c67506fb9e7451494c_2" [label="2: Exit set_field_ptr \n " color=yellow style=filled] -"set_field_ptr#10262801862810946974.0df004d43278f4c67506fb9e7451494c_3" [label="3: BinaryOperatorStmt: Assign \n n$0=*&x:X* [line 21, column 37]\n n$1=*&val:int [line 21, column 44]\n *n$0.f:int=n$1 [line 21, column 37]\n " shape="box"] +"set_field_ptr#10262801862810946974.0df004d43278f4c67506fb9e7451494c_3" [label="3: BinaryOperatorStmt: Assign \n n$1=*&x:X* [line 21, column 37]\n n$2=*&val:int [line 21, column 44]\n *n$1.f:int=n$2 [line 21, column 37]\n " shape="box"] "set_field_ptr#10262801862810946974.0df004d43278f4c67506fb9e7451494c_3" -> "set_field_ptr#10262801862810946974.0df004d43278f4c67506fb9e7451494c_2" ; @@ -413,7 +413,7 @@ digraph cfg { "set_field_ref#15177497547761982491.aa4620ee8933c900acc4164344e57432_2" [label="2: Exit set_field_ref \n " color=yellow style=filled] -"set_field_ref#15177497547761982491.aa4620ee8933c900acc4164344e57432_3" [label="3: BinaryOperatorStmt: Assign \n n$0=*&x:X& [line 27, column 37]\n n$1=*&val:int [line 27, column 43]\n *n$0.f:int=n$1 [line 27, column 37]\n " shape="box"] +"set_field_ref#15177497547761982491.aa4620ee8933c900acc4164344e57432_3" [label="3: BinaryOperatorStmt: Assign \n n$1=*&x:X& [line 27, column 37]\n n$2=*&val:int [line 27, column 43]\n *n$1.f:int=n$2 [line 27, column 37]\n " shape="box"] "set_field_ref#15177497547761982491.aa4620ee8933c900acc4164344e57432_3" -> "set_field_ref#15177497547761982491.aa4620ee8933c900acc4164344e57432_2" ; @@ -424,7 +424,7 @@ digraph cfg { "zero_ptr#12528709853087384868.d5a909d971ab439311f13a14aded5aa9_2" [label="2: Exit zero_ptr \n " color=yellow style=filled] -"zero_ptr#12528709853087384868.d5a909d971ab439311f13a14aded5aa9_3" [label="3: Call _fun_X_zero \n n$0=*&x:X* [line 17, column 23]\n _=*n$0:X [line 17, column 23]\n n$2=_fun_X_zero(n$0:X*) [line 17, column 23]\n " shape="box"] +"zero_ptr#12528709853087384868.d5a909d971ab439311f13a14aded5aa9_3" [label="3: Call _fun_X_zero \n n$1=*&x:X* [line 17, column 23]\n _=*n$1:X [line 17, column 23]\n n$3=_fun_X_zero(n$1:X*) [line 17, column 23]\n " shape="box"] "zero_ptr#12528709853087384868.d5a909d971ab439311f13a14aded5aa9_3" -> "zero_ptr#12528709853087384868.d5a909d971ab439311f13a14aded5aa9_2" ; @@ -435,7 +435,7 @@ digraph cfg { "zero_ref#14077465191616488315.9f868765c76672369ef06a4d03ded4f3_2" [label="2: Exit zero_ref \n " color=yellow style=filled] -"zero_ref#14077465191616488315.9f868765c76672369ef06a4d03ded4f3_3" [label="3: Call _fun_X_zero \n n$0=*&x:X& [line 23, column 23]\n _=*n$0:X [line 23, column 23]\n n$2=_fun_X_zero(n$0:X&) [line 23, column 23]\n " shape="box"] +"zero_ref#14077465191616488315.9f868765c76672369ef06a4d03ded4f3_3" [label="3: Call _fun_X_zero \n n$1=*&x:X& [line 23, column 23]\n _=*n$1:X [line 23, column 23]\n n$3=_fun_X_zero(n$1:X&) [line 23, column 23]\n " shape="box"] "zero_ref#14077465191616488315.9f868765c76672369ef06a4d03ded4f3_3" -> "zero_ref#14077465191616488315.9f868765c76672369ef06a4d03ded4f3_2" ; @@ -464,7 +464,7 @@ digraph cfg { "nonzero#X#(11619218627491700674).1d7c44c6589f4c816f501055b35038bc_2" [label="2: Exit X_nonzero \n " color=yellow style=filled] -"nonzero#X#(11619218627491700674).1d7c44c6589f4c816f501055b35038bc_3" [label="3: BinaryOperatorStmt: Assign \n n$0=*&this:X* [line 12, column 20]\n *n$0.f:int=1 [line 12, column 20]\n " shape="box"] +"nonzero#X#(11619218627491700674).1d7c44c6589f4c816f501055b35038bc_3" [label="3: BinaryOperatorStmt: Assign \n n$1=*&this:X* [line 12, column 20]\n *n$1.f:int=1 [line 12, column 20]\n " shape="box"] "nonzero#X#(11619218627491700674).1d7c44c6589f4c816f501055b35038bc_3" -> "nonzero#X#(11619218627491700674).1d7c44c6589f4c816f501055b35038bc_2" ; @@ -475,7 +475,7 @@ digraph cfg { "zero#X#(16299302305861440992).e13842f7b98f126e5d2188644c16a995_2" [label="2: Exit X_zero \n " color=yellow style=filled] -"zero#X#(16299302305861440992).e13842f7b98f126e5d2188644c16a995_3" [label="3: BinaryOperatorStmt: Assign \n n$0=*&this:X* [line 13, column 17]\n *n$0.f:int=0 [line 13, column 17]\n " shape="box"] +"zero#X#(16299302305861440992).e13842f7b98f126e5d2188644c16a995_3" [label="3: BinaryOperatorStmt: Assign \n n$1=*&this:X* [line 13, column 17]\n *n$1.f:int=0 [line 13, column 17]\n " shape="box"] "zero#X#(16299302305861440992).e13842f7b98f126e5d2188644c16a995_3" -> "zero#X#(16299302305861440992).e13842f7b98f126e5d2188644c16a995_2" ; diff --git a/infer/tests/codetoanalyze/cpp/shared/reference/reference_type_e2e.cpp.dot b/infer/tests/codetoanalyze/cpp/shared/reference/reference_type_e2e.cpp.dot index fcf2e0630..34dfd231b 100644 --- a/infer/tests/codetoanalyze/cpp/shared/reference/reference_type_e2e.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/shared/reference/reference_type_e2e.cpp.dot @@ -11,7 +11,7 @@ digraph cfg { "ptr_div0#14193575060740497524.6928690623c7c21a5a52547c8cdd4310_3" -> "ptr_div0#14193575060740497524.6928690623c7c21a5a52547c8cdd4310_2" ; -"ptr_div0#14193575060740497524.6928690623c7c21a5a52547c8cdd4310_4" [label="4: BinaryOperatorStmt: Assign \n n$1=*&p:int* [line 16, column 4]\n *n$1:int=0 [line 16, column 3]\n " shape="box"] +"ptr_div0#14193575060740497524.6928690623c7c21a5a52547c8cdd4310_4" [label="4: BinaryOperatorStmt: Assign \n n$2=*&p:int* [line 16, column 4]\n *n$2:int=0 [line 16, column 3]\n " shape="box"] "ptr_div0#14193575060740497524.6928690623c7c21a5a52547c8cdd4310_4" -> "ptr_div0#14193575060740497524.6928690623c7c21a5a52547c8cdd4310_3" ; @@ -34,7 +34,7 @@ digraph cfg { "ptr_div0_function#15472019236267517423.0a3eb7529edaa487d598988d34f0b091_3" -> "ptr_div0_function#15472019236267517423.0a3eb7529edaa487d598988d34f0b091_2" ; -"ptr_div0_function#15472019236267517423.0a3eb7529edaa487d598988d34f0b091_4" [label="4: Call _fun_zero_ptr \n n$1=_fun_zero_ptr(&a:int*) [line 22, column 3]\n " shape="box"] +"ptr_div0_function#15472019236267517423.0a3eb7529edaa487d598988d34f0b091_4" [label="4: Call _fun_zero_ptr \n n$2=_fun_zero_ptr(&a:int*) [line 22, column 3]\n " shape="box"] "ptr_div0_function#15472019236267517423.0a3eb7529edaa487d598988d34f0b091_4" -> "ptr_div0_function#15472019236267517423.0a3eb7529edaa487d598988d34f0b091_3" ; @@ -53,7 +53,7 @@ digraph cfg { "ptr_div0_function_temp_var#5150281836928396778.6b88ca0a7e844195f8de319fd04a3139_3" -> "ptr_div0_function_temp_var#5150281836928396778.6b88ca0a7e844195f8de319fd04a3139_2" ; -"ptr_div0_function_temp_var#5150281836928396778.6b88ca0a7e844195f8de319fd04a3139_4" [label="4: Call _fun_zero_ptr \n n$1=*&r:int* [line 29, column 12]\n n$2=_fun_zero_ptr(n$1:int*) [line 29, column 3]\n " shape="box"] +"ptr_div0_function_temp_var#5150281836928396778.6b88ca0a7e844195f8de319fd04a3139_4" [label="4: Call _fun_zero_ptr \n n$2=*&r:int* [line 29, column 12]\n n$3=_fun_zero_ptr(n$2:int*) [line 29, column 3]\n " shape="box"] "ptr_div0_function_temp_var#5150281836928396778.6b88ca0a7e844195f8de319fd04a3139_4" -> "ptr_div0_function_temp_var#5150281836928396778.6b88ca0a7e844195f8de319fd04a3139_3" ; @@ -76,7 +76,7 @@ digraph cfg { "ref_div0#1043072996947162803.d8e5fefe42038c8549979f6316354144_3" -> "ref_div0#1043072996947162803.d8e5fefe42038c8549979f6316354144_2" ; -"ref_div0#1043072996947162803.d8e5fefe42038c8549979f6316354144_4" [label="4: BinaryOperatorStmt: Assign \n n$1=*&r:int& [line 36, column 3]\n *n$1:int=0 [line 36, column 3]\n " shape="box"] +"ref_div0#1043072996947162803.d8e5fefe42038c8549979f6316354144_4" [label="4: BinaryOperatorStmt: Assign \n n$2=*&r:int& [line 36, column 3]\n *n$2:int=0 [line 36, column 3]\n " shape="box"] "ref_div0#1043072996947162803.d8e5fefe42038c8549979f6316354144_4" -> "ref_div0#1043072996947162803.d8e5fefe42038c8549979f6316354144_3" ; @@ -99,7 +99,7 @@ digraph cfg { "ref_div0_function#15446684317306379342.095fd29aa2a7d2024ec0380b2c42aad4_3" -> "ref_div0_function#15446684317306379342.095fd29aa2a7d2024ec0380b2c42aad4_2" ; -"ref_div0_function#15446684317306379342.095fd29aa2a7d2024ec0380b2c42aad4_4" [label="4: Call _fun_zero_ref \n n$1=_fun_zero_ref(&a:int&) [line 42, column 3]\n " shape="box"] +"ref_div0_function#15446684317306379342.095fd29aa2a7d2024ec0380b2c42aad4_4" [label="4: Call _fun_zero_ref \n n$2=_fun_zero_ref(&a:int&) [line 42, column 3]\n " shape="box"] "ref_div0_function#15446684317306379342.095fd29aa2a7d2024ec0380b2c42aad4_4" -> "ref_div0_function#15446684317306379342.095fd29aa2a7d2024ec0380b2c42aad4_3" ; @@ -118,7 +118,7 @@ digraph cfg { "ref_div0_function_temp_var#14207866842047996477.a899517f09b367d539ea5f04365fd46e_3" -> "ref_div0_function_temp_var#14207866842047996477.a899517f09b367d539ea5f04365fd46e_2" ; -"ref_div0_function_temp_var#14207866842047996477.a899517f09b367d539ea5f04365fd46e_4" [label="4: Call _fun_zero_ref \n n$1=*&r:int& [line 49, column 12]\n n$2=_fun_zero_ref(n$1:int&) [line 49, column 3]\n " shape="box"] +"ref_div0_function_temp_var#14207866842047996477.a899517f09b367d539ea5f04365fd46e_4" [label="4: Call _fun_zero_ref \n n$2=*&r:int& [line 49, column 12]\n n$3=_fun_zero_ref(n$2:int&) [line 49, column 3]\n " shape="box"] "ref_div0_function_temp_var#14207866842047996477.a899517f09b367d539ea5f04365fd46e_4" -> "ref_div0_function_temp_var#14207866842047996477.a899517f09b367d539ea5f04365fd46e_3" ; @@ -141,11 +141,11 @@ digraph cfg { "ref_div0_nested_assignment#17126972420420854569.bd6abb3056f6689fbac92af920ec6879_3" -> "ref_div0_nested_assignment#17126972420420854569.bd6abb3056f6689fbac92af920ec6879_2" ; -"ref_div0_nested_assignment#17126972420420854569.bd6abb3056f6689fbac92af920ec6879_4" [label="4: BinaryOperatorStmt: Assign \n n$1=*&r2:int& [line 58, column 3]\n *n$1:int=0 [line 58, column 3]\n " shape="box"] +"ref_div0_nested_assignment#17126972420420854569.bd6abb3056f6689fbac92af920ec6879_4" [label="4: BinaryOperatorStmt: Assign \n n$2=*&r2:int& [line 58, column 3]\n *n$2:int=0 [line 58, column 3]\n " shape="box"] "ref_div0_nested_assignment#17126972420420854569.bd6abb3056f6689fbac92af920ec6879_4" -> "ref_div0_nested_assignment#17126972420420854569.bd6abb3056f6689fbac92af920ec6879_3" ; -"ref_div0_nested_assignment#17126972420420854569.bd6abb3056f6689fbac92af920ec6879_5" [label="5: DeclStmt \n n$2=*&r1:int& [line 57, column 13]\n *&b:int=1 [line 57, column 18]\n n$3=*&b:int [line 57, column 18]\n *n$2:int=n$3 [line 57, column 13]\n *&r2:int&=n$2 [line 57, column 3]\n " shape="box"] +"ref_div0_nested_assignment#17126972420420854569.bd6abb3056f6689fbac92af920ec6879_5" [label="5: DeclStmt \n n$3=*&r1:int& [line 57, column 13]\n *&b:int=1 [line 57, column 18]\n n$4=*&b:int [line 57, column 18]\n *n$3:int=n$4 [line 57, column 13]\n *&r2:int&=n$3 [line 57, column 3]\n " shape="box"] "ref_div0_nested_assignment#17126972420420854569.bd6abb3056f6689fbac92af920ec6879_5" -> "ref_div0_nested_assignment#17126972420420854569.bd6abb3056f6689fbac92af920ec6879_4" ; @@ -172,11 +172,11 @@ digraph cfg { "ref_div1_nested_assignment#5121576951592231820.a9f8511d9ff791c44569fd8a8eb9d3cf_3" -> "ref_div1_nested_assignment#5121576951592231820.a9f8511d9ff791c44569fd8a8eb9d3cf_2" ; -"ref_div1_nested_assignment#5121576951592231820.a9f8511d9ff791c44569fd8a8eb9d3cf_4" [label="4: BinaryOperatorStmt: Assign \n n$1=*&r2:int& [line 67, column 3]\n *n$1:int=0 [line 67, column 3]\n " shape="box"] +"ref_div1_nested_assignment#5121576951592231820.a9f8511d9ff791c44569fd8a8eb9d3cf_4" [label="4: BinaryOperatorStmt: Assign \n n$2=*&r2:int& [line 67, column 3]\n *n$2:int=0 [line 67, column 3]\n " shape="box"] "ref_div1_nested_assignment#5121576951592231820.a9f8511d9ff791c44569fd8a8eb9d3cf_4" -> "ref_div1_nested_assignment#5121576951592231820.a9f8511d9ff791c44569fd8a8eb9d3cf_3" ; -"ref_div1_nested_assignment#5121576951592231820.a9f8511d9ff791c44569fd8a8eb9d3cf_5" [label="5: DeclStmt \n n$2=*&r1:int& [line 66, column 13]\n *&b:int=1 [line 66, column 18]\n n$3=*&b:int [line 66, column 18]\n *n$2:int=n$3 [line 66, column 13]\n *&r2:int&=n$2 [line 66, column 3]\n " shape="box"] +"ref_div1_nested_assignment#5121576951592231820.a9f8511d9ff791c44569fd8a8eb9d3cf_5" [label="5: DeclStmt \n n$3=*&r1:int& [line 66, column 13]\n *&b:int=1 [line 66, column 18]\n n$4=*&b:int [line 66, column 18]\n *n$3:int=n$4 [line 66, column 13]\n *&r2:int&=n$3 [line 66, column 3]\n " shape="box"] "ref_div1_nested_assignment#5121576951592231820.a9f8511d9ff791c44569fd8a8eb9d3cf_5" -> "ref_div1_nested_assignment#5121576951592231820.a9f8511d9ff791c44569fd8a8eb9d3cf_4" ; @@ -199,7 +199,7 @@ digraph cfg { "zero_ptr#10962438709356261388.c1a1091e7e1d49bd9bd5d8cac96703e9_2" [label="2: Exit zero_ptr \n " color=yellow style=filled] -"zero_ptr#10962438709356261388.c1a1091e7e1d49bd9bd5d8cac96703e9_3" [label="3: BinaryOperatorStmt: Assign \n n$0=*&p:int* [line 10, column 26]\n *n$0:int=0 [line 10, column 25]\n " shape="box"] +"zero_ptr#10962438709356261388.c1a1091e7e1d49bd9bd5d8cac96703e9_3" [label="3: BinaryOperatorStmt: Assign \n n$1=*&p:int* [line 10, column 26]\n *n$1:int=0 [line 10, column 25]\n " shape="box"] "zero_ptr#10962438709356261388.c1a1091e7e1d49bd9bd5d8cac96703e9_3" -> "zero_ptr#10962438709356261388.c1a1091e7e1d49bd9bd5d8cac96703e9_2" ; @@ -210,7 +210,7 @@ digraph cfg { "zero_ref#8777441955929384761.2247f2b8d396eabba21c20ef967ac6ec_2" [label="2: Exit zero_ref \n " color=yellow style=filled] -"zero_ref#8777441955929384761.2247f2b8d396eabba21c20ef967ac6ec_3" [label="3: BinaryOperatorStmt: Assign \n n$0=*&p:int& [line 11, column 25]\n *n$0:int=0 [line 11, column 25]\n " shape="box"] +"zero_ref#8777441955929384761.2247f2b8d396eabba21c20ef967ac6ec_3" [label="3: BinaryOperatorStmt: Assign \n n$1=*&p:int& [line 11, column 25]\n *n$1:int=0 [line 11, column 25]\n " shape="box"] "zero_ref#8777441955929384761.2247f2b8d396eabba21c20ef967ac6ec_3" -> "zero_ref#8777441955929384761.2247f2b8d396eabba21c20ef967ac6ec_2" ; diff --git a/infer/tests/codetoanalyze/cpp/shared/reference/temporary_lvalue.cpp.dot b/infer/tests/codetoanalyze/cpp/shared/reference/temporary_lvalue.cpp.dot index e9bda5522..fbb91d8d9 100644 --- a/infer/tests/codetoanalyze/cpp/shared/reference/temporary_lvalue.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/shared/reference/temporary_lvalue.cpp.dot @@ -11,18 +11,18 @@ digraph cfg { "div#1879538779647861770.84b17ea73594d098fb69bd947fc358c0_3" -> "div#1879538779647861770.84b17ea73594d098fb69bd947fc358c0_2" ; -"div0_function_param_cast#10492767400319523474.071b9a9b757a9140938b53a95e971def_1" [label="1: Start div0_function_param_cast\nFormals: \nLocals: 0$?%__sil_tmpSIL_materialize_temp__n$0:int \n DECLARE_LOCALS(&return,&0$?%__sil_tmpSIL_materialize_temp__n$0); [line 17, column 1]\n " color=yellow style=filled] +"div0_function_param_cast#10492767400319523474.071b9a9b757a9140938b53a95e971def_1" [label="1: Start div0_function_param_cast\nFormals: \nLocals: 0$?%__sil_tmpSIL_materialize_temp__n$0:int const \n DECLARE_LOCALS(&return,&0$?%__sil_tmpSIL_materialize_temp__n$0); [line 17, column 1]\n " color=yellow style=filled] "div0_function_param_cast#10492767400319523474.071b9a9b757a9140938b53a95e971def_1" -> "div0_function_param_cast#10492767400319523474.071b9a9b757a9140938b53a95e971def_3" ; "div0_function_param_cast#10492767400319523474.071b9a9b757a9140938b53a95e971def_2" [label="2: Exit div0_function_param_cast \n " color=yellow style=filled] -"div0_function_param_cast#10492767400319523474.071b9a9b757a9140938b53a95e971def_3" [label="3: Return Stmt \n *&0$?%__sil_tmpSIL_materialize_temp__n$0:int=0 [line 17, column 45]\n n$1=_fun_div(&0$?%__sil_tmpSIL_materialize_temp__n$0:int&) [line 17, column 41]\n *&return:int=n$1 [line 17, column 34]\n " shape="box"] +"div0_function_param_cast#10492767400319523474.071b9a9b757a9140938b53a95e971def_3" [label="3: Return Stmt \n *&0$?%__sil_tmpSIL_materialize_temp__n$0:int=0 [line 17, column 45]\n n$1=_fun_div(&0$?%__sil_tmpSIL_materialize_temp__n$0:int const &) [line 17, column 41]\n *&return:int=n$1 [line 17, column 34]\n " shape="box"] "div0_function_param_cast#10492767400319523474.071b9a9b757a9140938b53a95e971def_3" -> "div0_function_param_cast#10492767400319523474.071b9a9b757a9140938b53a95e971def_2" ; -"div0_init_expr#16429869714979266683.46e79db6a434bbf3e121689869095925_1" [label="1: Start div0_init_expr\nFormals: \nLocals: a:int const & 0$?%__sil_tmpSIL_materialize_temp__n$2:int \n DECLARE_LOCALS(&return,&a,&0$?%__sil_tmpSIL_materialize_temp__n$2); [line 12, column 1]\n " color=yellow style=filled] +"div0_init_expr#16429869714979266683.46e79db6a434bbf3e121689869095925_1" [label="1: Start div0_init_expr\nFormals: \nLocals: a:int const & 0$?%__sil_tmpSIL_materialize_temp__n$3:int const \n DECLARE_LOCALS(&return,&a,&0$?%__sil_tmpSIL_materialize_temp__n$3); [line 12, column 1]\n " color=yellow style=filled] "div0_init_expr#16429869714979266683.46e79db6a434bbf3e121689869095925_1" -> "div0_init_expr#16429869714979266683.46e79db6a434bbf3e121689869095925_4" ; @@ -33,7 +33,7 @@ digraph cfg { "div0_init_expr#16429869714979266683.46e79db6a434bbf3e121689869095925_3" -> "div0_init_expr#16429869714979266683.46e79db6a434bbf3e121689869095925_2" ; -"div0_init_expr#16429869714979266683.46e79db6a434bbf3e121689869095925_4" [label="4: DeclStmt \n *&0$?%__sil_tmpSIL_materialize_temp__n$2:int=0 [line 13, column 18]\n *&a:int&=&0$?%__sil_tmpSIL_materialize_temp__n$2 [line 13, column 3]\n " shape="box"] +"div0_init_expr#16429869714979266683.46e79db6a434bbf3e121689869095925_4" [label="4: DeclStmt \n *&0$?%__sil_tmpSIL_materialize_temp__n$3:int=0 [line 13, column 18]\n *&a:int const &=&0$?%__sil_tmpSIL_materialize_temp__n$3 [line 13, column 3]\n " shape="box"] "div0_init_expr#16429869714979266683.46e79db6a434bbf3e121689869095925_4" -> "div0_init_expr#16429869714979266683.46e79db6a434bbf3e121689869095925_3" ; diff --git a/infer/tests/codetoanalyze/cpp/shared/reference/unbox.cpp.dot b/infer/tests/codetoanalyze/cpp/shared/reference/unbox.cpp.dot index 24c39102e..835137b31 100644 --- a/infer/tests/codetoanalyze/cpp/shared/reference/unbox.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/shared/reference/unbox.cpp.dot @@ -40,15 +40,15 @@ digraph cfg { "unbox_ptr#3550280956167916174.75d50cc2e2dfffd1cc23613b01fc878b_2" [label="2: Exit unbox_ptr \n " color=yellow style=filled] -"unbox_ptr#3550280956167916174.75d50cc2e2dfffd1cc23613b01fc878b_3" [label="3: Call _fun_fun_r \n n$0=*&p:int* [line 33, column 10]\n n$1=_fun_fun_r(n$0:int&) [line 33, column 3]\n " shape="box"] +"unbox_ptr#3550280956167916174.75d50cc2e2dfffd1cc23613b01fc878b_3" [label="3: Call _fun_fun_r \n n$1=*&p:int* [line 33, column 10]\n n$2=_fun_fun_r(n$1:int&) [line 33, column 3]\n " shape="box"] "unbox_ptr#3550280956167916174.75d50cc2e2dfffd1cc23613b01fc878b_3" -> "unbox_ptr#3550280956167916174.75d50cc2e2dfffd1cc23613b01fc878b_2" ; -"unbox_ptr#3550280956167916174.75d50cc2e2dfffd1cc23613b01fc878b_4" [label="4: Call _fun_fun_v \n n$2=*&p:int* [line 32, column 10]\n n$3=*n$2:int [line 32, column 9]\n n$4=_fun_fun_v(n$3:int) [line 32, column 3]\n " shape="box"] +"unbox_ptr#3550280956167916174.75d50cc2e2dfffd1cc23613b01fc878b_4" [label="4: Call _fun_fun_v \n n$3=*&p:int* [line 32, column 10]\n n$4=*n$3:int [line 32, column 9]\n n$5=_fun_fun_v(n$4:int) [line 32, column 3]\n " shape="box"] "unbox_ptr#3550280956167916174.75d50cc2e2dfffd1cc23613b01fc878b_4" -> "unbox_ptr#3550280956167916174.75d50cc2e2dfffd1cc23613b01fc878b_3" ; -"unbox_ptr#3550280956167916174.75d50cc2e2dfffd1cc23613b01fc878b_5" [label="5: Call _fun_fun_p \n n$5=*&p:int* [line 31, column 9]\n n$6=_fun_fun_p(n$5:int*) [line 31, column 3]\n " shape="box"] +"unbox_ptr#3550280956167916174.75d50cc2e2dfffd1cc23613b01fc878b_5" [label="5: Call _fun_fun_p \n n$6=*&p:int* [line 31, column 9]\n n$7=_fun_fun_p(n$6:int*) [line 31, column 3]\n " shape="box"] "unbox_ptr#3550280956167916174.75d50cc2e2dfffd1cc23613b01fc878b_5" -> "unbox_ptr#3550280956167916174.75d50cc2e2dfffd1cc23613b01fc878b_4" ; @@ -67,15 +67,15 @@ digraph cfg { "unbox_ref#9977470601320200599.91094dce9e5b43dc4c89abcbc69b2c70_2" [label="2: Exit unbox_ref \n " color=yellow style=filled] -"unbox_ref#9977470601320200599.91094dce9e5b43dc4c89abcbc69b2c70_3" [label="3: Call _fun_fun_r \n n$0=*&r:int& [line 23, column 9]\n n$1=_fun_fun_r(n$0:int&) [line 23, column 3]\n " shape="box"] +"unbox_ref#9977470601320200599.91094dce9e5b43dc4c89abcbc69b2c70_3" [label="3: Call _fun_fun_r \n n$1=*&r:int& [line 23, column 9]\n n$2=_fun_fun_r(n$1:int&) [line 23, column 3]\n " shape="box"] "unbox_ref#9977470601320200599.91094dce9e5b43dc4c89abcbc69b2c70_3" -> "unbox_ref#9977470601320200599.91094dce9e5b43dc4c89abcbc69b2c70_2" ; -"unbox_ref#9977470601320200599.91094dce9e5b43dc4c89abcbc69b2c70_4" [label="4: Call _fun_fun_v \n n$2=*&r:int& [line 22, column 9]\n n$3=*n$2:int [line 22, column 9]\n n$4=_fun_fun_v(n$3:int) [line 22, column 3]\n " shape="box"] +"unbox_ref#9977470601320200599.91094dce9e5b43dc4c89abcbc69b2c70_4" [label="4: Call _fun_fun_v \n n$3=*&r:int& [line 22, column 9]\n n$4=*n$3:int [line 22, column 9]\n n$5=_fun_fun_v(n$4:int) [line 22, column 3]\n " shape="box"] "unbox_ref#9977470601320200599.91094dce9e5b43dc4c89abcbc69b2c70_4" -> "unbox_ref#9977470601320200599.91094dce9e5b43dc4c89abcbc69b2c70_3" ; -"unbox_ref#9977470601320200599.91094dce9e5b43dc4c89abcbc69b2c70_5" [label="5: Call _fun_fun_p \n n$5=*&r:int& [line 21, column 10]\n n$6=_fun_fun_p(n$5:int*) [line 21, column 3]\n " shape="box"] +"unbox_ref#9977470601320200599.91094dce9e5b43dc4c89abcbc69b2c70_5" [label="5: Call _fun_fun_p \n n$6=*&r:int& [line 21, column 10]\n n$7=_fun_fun_p(n$6:int*) [line 21, column 3]\n " shape="box"] "unbox_ref#9977470601320200599.91094dce9e5b43dc4c89abcbc69b2c70_5" -> "unbox_ref#9977470601320200599.91094dce9e5b43dc4c89abcbc69b2c70_4" ; diff --git a/infer/tests/codetoanalyze/cpp/shared/templates/class_specialization.cpp.dot b/infer/tests/codetoanalyze/cpp/shared/templates/class_specialization.cpp.dot index d7cb05306..a2d151e9c 100644 --- a/infer/tests/codetoanalyze/cpp/shared/templates/class_specialization.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/shared/templates/class_specialization.cpp.dot @@ -7,15 +7,15 @@ digraph cfg { "foo_int#class_specialization#18011277194514159170.29412bbb7345cd5150bdd3239c145d19_2" [label="2: Exit class_specialization::foo_int \n " color=yellow style=filled] -"foo_int#class_specialization#18011277194514159170.29412bbb7345cd5150bdd3239c145d19_3" [label="3: DeclStmt \n n$0=*&b.x:int [line 35, column 15]\n *&z:int=(1 / n$0) [line 35, column 3]\n " shape="box"] +"foo_int#class_specialization#18011277194514159170.29412bbb7345cd5150bdd3239c145d19_3" [label="3: DeclStmt \n n$1=*&b.x:int [line 35, column 15]\n *&z:int=(1 / n$1) [line 35, column 3]\n " shape="box"] "foo_int#class_specialization#18011277194514159170.29412bbb7345cd5150bdd3239c145d19_3" -> "foo_int#class_specialization#18011277194514159170.29412bbb7345cd5150bdd3239c145d19_2" ; -"foo_int#class_specialization#18011277194514159170.29412bbb7345cd5150bdd3239c145d19_4" [label="4: Call _fun_class_specialization::Derived_foo \n _=*&b:class_specialization::Derived [line 34, column 3]\n n$2=_fun_class_specialization::Derived_foo(&b:class_specialization::Derived&,0:int) [line 34, column 3]\n " shape="box"] +"foo_int#class_specialization#18011277194514159170.29412bbb7345cd5150bdd3239c145d19_4" [label="4: Call _fun_class_specialization::Derived_foo \n _=*&b:class_specialization::Derived [line 34, column 3]\n n$3=_fun_class_specialization::Derived_foo(&b:class_specialization::Derived&,0:int) [line 34, column 3]\n " shape="box"] "foo_int#class_specialization#18011277194514159170.29412bbb7345cd5150bdd3239c145d19_4" -> "foo_int#class_specialization#18011277194514159170.29412bbb7345cd5150bdd3239c145d19_3" ; -"foo_int#class_specialization#18011277194514159170.29412bbb7345cd5150bdd3239c145d19_5" [label="5: DeclStmt \n n$3=_fun_class_specialization::Derived_Derived(&b:class_specialization::Derived*) [line 33, column 16]\n " shape="box"] +"foo_int#class_specialization#18011277194514159170.29412bbb7345cd5150bdd3239c145d19_5" [label="5: DeclStmt \n n$4=_fun_class_specialization::Derived_Derived(&b:class_specialization::Derived*) [line 33, column 16]\n " shape="box"] "foo_int#class_specialization#18011277194514159170.29412bbb7345cd5150bdd3239c145d19_5" -> "foo_int#class_specialization#18011277194514159170.29412bbb7345cd5150bdd3239c145d19_4" ; @@ -26,15 +26,15 @@ digraph cfg { "foo_intptr#class_specialization#3914514069521239538.096096ddd8eb9462872f535952d6e0a5_2" [label="2: Exit class_specialization::foo_intptr \n " color=yellow style=filled] -"foo_intptr#class_specialization#3914514069521239538.096096ddd8eb9462872f535952d6e0a5_3" [label="3: DeclStmt \n n$0=*&b.x:int* [line 29, column 12]\n n$1=*n$0:int [line 29, column 11]\n *&x:int=n$1 [line 29, column 3]\n " shape="box"] +"foo_intptr#class_specialization#3914514069521239538.096096ddd8eb9462872f535952d6e0a5_3" [label="3: DeclStmt \n n$1=*&b.x:int* [line 29, column 12]\n n$2=*n$1:int [line 29, column 11]\n *&x:int=n$2 [line 29, column 3]\n " shape="box"] "foo_intptr#class_specialization#3914514069521239538.096096ddd8eb9462872f535952d6e0a5_3" -> "foo_intptr#class_specialization#3914514069521239538.096096ddd8eb9462872f535952d6e0a5_2" ; -"foo_intptr#class_specialization#3914514069521239538.096096ddd8eb9462872f535952d6e0a5_4" [label="4: Call _fun_class_specialization::Derived_foo2 \n _=*&b:class_specialization::Derived [line 28, column 3]\n n$3=_fun_class_specialization::Derived_foo2(&b:class_specialization::Derived&,null:int*) [line 28, column 3]\n " shape="box"] +"foo_intptr#class_specialization#3914514069521239538.096096ddd8eb9462872f535952d6e0a5_4" [label="4: Call _fun_class_specialization::Derived_foo2 \n _=*&b:class_specialization::Derived [line 28, column 3]\n n$4=_fun_class_specialization::Derived_foo2(&b:class_specialization::Derived&,null:int*) [line 28, column 3]\n " shape="box"] "foo_intptr#class_specialization#3914514069521239538.096096ddd8eb9462872f535952d6e0a5_4" -> "foo_intptr#class_specialization#3914514069521239538.096096ddd8eb9462872f535952d6e0a5_3" ; -"foo_intptr#class_specialization#3914514069521239538.096096ddd8eb9462872f535952d6e0a5_5" [label="5: DeclStmt \n n$4=_fun_class_specialization::Derived_Derived(&b:class_specialization::Derived*) [line 27, column 17]\n " shape="box"] +"foo_intptr#class_specialization#3914514069521239538.096096ddd8eb9462872f535952d6e0a5_5" [label="5: DeclStmt \n n$5=_fun_class_specialization::Derived_Derived(&b:class_specialization::Derived*) [line 27, column 17]\n " shape="box"] "foo_intptr#class_specialization#3914514069521239538.096096ddd8eb9462872f535952d6e0a5_5" -> "foo_intptr#class_specialization#3914514069521239538.096096ddd8eb9462872f535952d6e0a5_4" ; @@ -59,7 +59,7 @@ digraph cfg { "Derived#Derived#class_specialization#{6947111178756325946}.2484a8b63b0d0003a390b6e57428fee2_2" [label="2: Exit class_specialization::Derived_Derived \n " color=yellow style=filled] -"Derived#Derived#class_specialization#{6947111178756325946}.2484a8b63b0d0003a390b6e57428fee2_3" [label="3: Constructor Init \n n$0=*&this:class_specialization::Derived* [line 22, column 8]\n n$1=_fun_class_specialization::Base_Base(n$0:class_specialization::Derived*) [line 22, column 8]\n " shape="box"] +"Derived#Derived#class_specialization#{6947111178756325946}.2484a8b63b0d0003a390b6e57428fee2_3" [label="3: Constructor Init \n n$2=*&this:class_specialization::Derived* [line 22, column 8]\n n$3=_fun_class_specialization::Base_Base(n$2:class_specialization::Derived*) [line 22, column 8]\n " shape="box"] "Derived#Derived#class_specialization#{6947111178756325946}.2484a8b63b0d0003a390b6e57428fee2_3" -> "Derived#Derived#class_specialization#{6947111178756325946}.2484a8b63b0d0003a390b6e57428fee2_2" ; @@ -70,7 +70,7 @@ digraph cfg { "Derived#Derived#class_specialization#{14157761386473130888}.40e79d469e516a33fdff720996ff80ab_2" [label="2: Exit class_specialization::Derived_Derived \n " color=yellow style=filled] -"Derived#Derived#class_specialization#{14157761386473130888}.40e79d469e516a33fdff720996ff80ab_3" [label="3: Constructor Init \n n$0=*&this:class_specialization::Derived* [line 17, column 8]\n n$1=_fun_class_specialization::Base_Base(n$0:class_specialization::Derived*) [line 17, column 8]\n " shape="box"] +"Derived#Derived#class_specialization#{14157761386473130888}.40e79d469e516a33fdff720996ff80ab_3" [label="3: Constructor Init \n n$2=*&this:class_specialization::Derived* [line 17, column 8]\n n$3=_fun_class_specialization::Base_Base(n$2:class_specialization::Derived*) [line 17, column 8]\n " shape="box"] "Derived#Derived#class_specialization#{14157761386473130888}.40e79d469e516a33fdff720996ff80ab_3" -> "Derived#Derived#class_specialization#{14157761386473130888}.40e79d469e516a33fdff720996ff80ab_2" ; @@ -81,7 +81,7 @@ digraph cfg { "foo#Derived#class_specialization#(3691368771332090182).157c4cba925bdfdc131986d2b52af05d_2" [label="2: Exit class_specialization::Derived_foo \n " color=yellow style=filled] -"foo#Derived#class_specialization#(3691368771332090182).157c4cba925bdfdc131986d2b52af05d_3" [label="3: BinaryOperatorStmt: Assign \n n$0=*&this:class_specialization::Derived* [line 18, column 19]\n n$1=*&t:int [line 18, column 29]\n *n$0.x:int=n$1 [line 18, column 19]\n " shape="box"] +"foo#Derived#class_specialization#(3691368771332090182).157c4cba925bdfdc131986d2b52af05d_3" [label="3: BinaryOperatorStmt: Assign \n n$1=*&this:class_specialization::Derived* [line 18, column 19]\n n$2=*&t:int [line 18, column 29]\n *n$1.x:int=n$2 [line 18, column 19]\n " shape="box"] "foo#Derived#class_specialization#(3691368771332090182).157c4cba925bdfdc131986d2b52af05d_3" -> "foo#Derived#class_specialization#(3691368771332090182).157c4cba925bdfdc131986d2b52af05d_2" ; @@ -92,7 +92,7 @@ digraph cfg { "foo2#Derived#class_specialization#(12167928122938213289).9c7a2e679a7d7dcf0338960c56f01bd4_2" [label="2: Exit class_specialization::Derived_foo2 \n " color=yellow style=filled] -"foo2#Derived#class_specialization#(12167928122938213289).9c7a2e679a7d7dcf0338960c56f01bd4_3" [label="3: BinaryOperatorStmt: Assign \n n$0=*&this:class_specialization::Derived* [line 23, column 21]\n n$1=*&t:int* [line 23, column 31]\n *n$0.x:int*=n$1 [line 23, column 21]\n " shape="box"] +"foo2#Derived#class_specialization#(12167928122938213289).9c7a2e679a7d7dcf0338960c56f01bd4_3" [label="3: BinaryOperatorStmt: Assign \n n$1=*&this:class_specialization::Derived* [line 23, column 21]\n n$2=*&t:int* [line 23, column 31]\n *n$1.x:int*=n$2 [line 23, column 21]\n " shape="box"] "foo2#Derived#class_specialization#(12167928122938213289).9c7a2e679a7d7dcf0338960c56f01bd4_3" -> "foo2#Derived#class_specialization#(12167928122938213289).9c7a2e679a7d7dcf0338960c56f01bd4_2" ; diff --git a/infer/tests/codetoanalyze/cpp/shared/templates/function.cpp.dot b/infer/tests/codetoanalyze/cpp/shared/templates/function.cpp.dot index ec29e8336..3bfe0b353 100644 --- a/infer/tests/codetoanalyze/cpp/shared/templates/function.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/shared/templates/function.cpp.dot @@ -33,7 +33,7 @@ digraph cfg { "createAndGetVal#function#6914861794749950810.03576380bf9ba7f93eef05bd79193575_3" -> "createAndGetVal#function#6914861794749950810.03576380bf9ba7f93eef05bd79193575_2" ; -"createAndGetVal#function#6914861794749950810.03576380bf9ba7f93eef05bd79193575_4" [label="4: DeclStmt \n n$1=_fun_function::X1_X1(&x:function::X1*) [line 37, column 5]\n " shape="box"] +"createAndGetVal#function#6914861794749950810.03576380bf9ba7f93eef05bd79193575_4" [label="4: DeclStmt \n n$2=_fun_function::X1_X1(&x:function::X1*) [line 37, column 5]\n " shape="box"] "createAndGetVal#function#6914861794749950810.03576380bf9ba7f93eef05bd79193575_4" -> "createAndGetVal#function#6914861794749950810.03576380bf9ba7f93eef05bd79193575_3" ; @@ -48,7 +48,7 @@ digraph cfg { "createAndGetVal#function#780814784522236088.525e889c7c5ef92e178075392a6961a4_3" -> "createAndGetVal#function#780814784522236088.525e889c7c5ef92e178075392a6961a4_2" ; -"createAndGetVal#function#780814784522236088.525e889c7c5ef92e178075392a6961a4_4" [label="4: DeclStmt \n n$1=_fun_function::X3_X3(&x:function::X3*) [line 37, column 5]\n " shape="box"] +"createAndGetVal#function#780814784522236088.525e889c7c5ef92e178075392a6961a4_4" [label="4: DeclStmt \n n$2=_fun_function::X3_X3(&x:function::X3*) [line 37, column 5]\n " shape="box"] "createAndGetVal#function#780814784522236088.525e889c7c5ef92e178075392a6961a4_4" -> "createAndGetVal#function#780814784522236088.525e889c7c5ef92e178075392a6961a4_3" ; @@ -74,11 +74,11 @@ digraph cfg { "div0_get_val#function#10798510201986830040.b077944b4022150f57aec37a5ffc164a_3" -> "div0_get_val#function#10798510201986830040.b077944b4022150f57aec37a5ffc164a_2" ; -"div0_get_val#function#10798510201986830040.b077944b4022150f57aec37a5ffc164a_4" [label="4: DeclStmt \n n$2=_fun_function::X3_X3(&x3:function::X3*) [line 59, column 6]\n " shape="box"] +"div0_get_val#function#10798510201986830040.b077944b4022150f57aec37a5ffc164a_4" [label="4: DeclStmt \n n$3=_fun_function::X3_X3(&x3:function::X3*) [line 59, column 6]\n " shape="box"] "div0_get_val#function#10798510201986830040.b077944b4022150f57aec37a5ffc164a_4" -> "div0_get_val#function#10798510201986830040.b077944b4022150f57aec37a5ffc164a_3" ; -"div0_get_val#function#10798510201986830040.b077944b4022150f57aec37a5ffc164a_5" [label="5: DeclStmt \n n$3=_fun_function::X1_X1(&x1:function::X1*) [line 58, column 6]\n " shape="box"] +"div0_get_val#function#10798510201986830040.b077944b4022150f57aec37a5ffc164a_5" [label="5: DeclStmt \n n$4=_fun_function::X1_X1(&x1:function::X1*) [line 58, column 6]\n " shape="box"] "div0_get_val#function#10798510201986830040.b077944b4022150f57aec37a5ffc164a_5" -> "div0_get_val#function#10798510201986830040.b077944b4022150f57aec37a5ffc164a_4" ; @@ -104,11 +104,11 @@ digraph cfg { "div1_get_val#function#3554411408849091151.45cb38d8fc35a6b2cdc1f63de85d2e51_3" -> "div1_get_val#function#3554411408849091151.45cb38d8fc35a6b2cdc1f63de85d2e51_2" ; -"div1_get_val#function#3554411408849091151.45cb38d8fc35a6b2cdc1f63de85d2e51_4" [label="4: DeclStmt \n n$2=_fun_function::X3_X3(&x3:function::X3*) [line 65, column 6]\n " shape="box"] +"div1_get_val#function#3554411408849091151.45cb38d8fc35a6b2cdc1f63de85d2e51_4" [label="4: DeclStmt \n n$3=_fun_function::X3_X3(&x3:function::X3*) [line 65, column 6]\n " shape="box"] "div1_get_val#function#3554411408849091151.45cb38d8fc35a6b2cdc1f63de85d2e51_4" -> "div1_get_val#function#3554411408849091151.45cb38d8fc35a6b2cdc1f63de85d2e51_3" ; -"div1_get_val#function#3554411408849091151.45cb38d8fc35a6b2cdc1f63de85d2e51_5" [label="5: DeclStmt \n n$3=_fun_function::X1_X1(&x1:function::X1*) [line 64, column 6]\n " shape="box"] +"div1_get_val#function#3554411408849091151.45cb38d8fc35a6b2cdc1f63de85d2e51_5" [label="5: DeclStmt \n n$4=_fun_function::X1_X1(&x1:function::X1*) [line 64, column 6]\n " shape="box"] "div1_get_val#function#3554411408849091151.45cb38d8fc35a6b2cdc1f63de85d2e51_5" -> "div1_get_val#function#3554411408849091151.45cb38d8fc35a6b2cdc1f63de85d2e51_4" ; diff --git a/infer/tests/codetoanalyze/cpp/shared/templates/method.cpp.dot b/infer/tests/codetoanalyze/cpp/shared/templates/method.cpp.dot index ad4d5d9e3..e133d8cdf 100644 --- a/infer/tests/codetoanalyze/cpp/shared/templates/method.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/shared/templates/method.cpp.dot @@ -11,11 +11,11 @@ digraph cfg { "div0_getter#method#14570248362286164751.5f9f1e67fd1ac95f6c38eb7d407ea9ec_3" -> "div0_getter#method#14570248362286164751.5f9f1e67fd1ac95f6c38eb7d407ea9ec_2" ; -"div0_getter#method#14570248362286164751.5f9f1e67fd1ac95f6c38eb7d407ea9ec_4" [label="4: DeclStmt \n n$2=_fun_method::Getter_Getter(&g:method::Getter*) [line 41, column 10]\n " shape="box"] +"div0_getter#method#14570248362286164751.5f9f1e67fd1ac95f6c38eb7d407ea9ec_4" [label="4: DeclStmt \n n$3=_fun_method::Getter_Getter(&g:method::Getter*) [line 41, column 10]\n " shape="box"] "div0_getter#method#14570248362286164751.5f9f1e67fd1ac95f6c38eb7d407ea9ec_4" -> "div0_getter#method#14570248362286164751.5f9f1e67fd1ac95f6c38eb7d407ea9ec_3" ; -"div0_getter#method#14570248362286164751.5f9f1e67fd1ac95f6c38eb7d407ea9ec_5" [label="5: DeclStmt \n n$3=_fun_method::X2_X2(&x2:method::X2*) [line 40, column 6]\n " shape="box"] +"div0_getter#method#14570248362286164751.5f9f1e67fd1ac95f6c38eb7d407ea9ec_5" [label="5: DeclStmt \n n$4=_fun_method::X2_X2(&x2:method::X2*) [line 40, column 6]\n " shape="box"] "div0_getter#method#14570248362286164751.5f9f1e67fd1ac95f6c38eb7d407ea9ec_5" -> "div0_getter#method#14570248362286164751.5f9f1e67fd1ac95f6c38eb7d407ea9ec_4" ; @@ -30,15 +30,15 @@ digraph cfg { "div0_getter_templ#method#6375326311998023520.359f49fd177ddd10abb56481c8c0c0e0_3" -> "div0_getter_templ#method#6375326311998023520.359f49fd177ddd10abb56481c8c0c0e0_2" ; -"div0_getter_templ#method#6375326311998023520.359f49fd177ddd10abb56481c8c0c0e0_4" [label="4: DeclStmt \n n$2=_fun_method::GetterTempl_GetterTempl(&g:method::GetterTempl*) [line 54, column 19]\n " shape="box"] +"div0_getter_templ#method#6375326311998023520.359f49fd177ddd10abb56481c8c0c0e0_4" [label="4: DeclStmt \n n$3=_fun_method::GetterTempl_GetterTempl(&g:method::GetterTempl*) [line 54, column 19]\n " shape="box"] "div0_getter_templ#method#6375326311998023520.359f49fd177ddd10abb56481c8c0c0e0_4" -> "div0_getter_templ#method#6375326311998023520.359f49fd177ddd10abb56481c8c0c0e0_3" ; -"div0_getter_templ#method#6375326311998023520.359f49fd177ddd10abb56481c8c0c0e0_5" [label="5: DeclStmt \n n$3=_fun_method::X3_X3(&x3:method::X3*) [line 53, column 6]\n " shape="box"] +"div0_getter_templ#method#6375326311998023520.359f49fd177ddd10abb56481c8c0c0e0_5" [label="5: DeclStmt \n n$4=_fun_method::X3_X3(&x3:method::X3*) [line 53, column 6]\n " shape="box"] "div0_getter_templ#method#6375326311998023520.359f49fd177ddd10abb56481c8c0c0e0_5" -> "div0_getter_templ#method#6375326311998023520.359f49fd177ddd10abb56481c8c0c0e0_4" ; -"div0_getter_templ#method#6375326311998023520.359f49fd177ddd10abb56481c8c0c0e0_6" [label="6: DeclStmt \n n$4=_fun_method::X2_X2(&x2:method::X2*) [line 52, column 6]\n " shape="box"] +"div0_getter_templ#method#6375326311998023520.359f49fd177ddd10abb56481c8c0c0e0_6" [label="6: DeclStmt \n n$5=_fun_method::X2_X2(&x2:method::X2*) [line 52, column 6]\n " shape="box"] "div0_getter_templ#method#6375326311998023520.359f49fd177ddd10abb56481c8c0c0e0_6" -> "div0_getter_templ#method#6375326311998023520.359f49fd177ddd10abb56481c8c0c0e0_5" ; @@ -53,15 +53,15 @@ digraph cfg { "div0_getter_templ2#method#6451937884879872417.49c23913cff8a0a59e8e2158ec845f0c_3" -> "div0_getter_templ2#method#6451937884879872417.49c23913cff8a0a59e8e2158ec845f0c_2" ; -"div0_getter_templ2#method#6451937884879872417.49c23913cff8a0a59e8e2158ec845f0c_4" [label="4: DeclStmt \n n$2=_fun_method::GetterTempl_GetterTempl(&g:method::GetterTempl*) [line 61, column 19]\n " shape="box"] +"div0_getter_templ2#method#6451937884879872417.49c23913cff8a0a59e8e2158ec845f0c_4" [label="4: DeclStmt \n n$3=_fun_method::GetterTempl_GetterTempl(&g:method::GetterTempl*) [line 61, column 19]\n " shape="box"] "div0_getter_templ2#method#6451937884879872417.49c23913cff8a0a59e8e2158ec845f0c_4" -> "div0_getter_templ2#method#6451937884879872417.49c23913cff8a0a59e8e2158ec845f0c_3" ; -"div0_getter_templ2#method#6451937884879872417.49c23913cff8a0a59e8e2158ec845f0c_5" [label="5: DeclStmt \n n$3=_fun_method::X2_X2(&x2_2:method::X2*) [line 60, column 6]\n " shape="box"] +"div0_getter_templ2#method#6451937884879872417.49c23913cff8a0a59e8e2158ec845f0c_5" [label="5: DeclStmt \n n$4=_fun_method::X2_X2(&x2_2:method::X2*) [line 60, column 6]\n " shape="box"] "div0_getter_templ2#method#6451937884879872417.49c23913cff8a0a59e8e2158ec845f0c_5" -> "div0_getter_templ2#method#6451937884879872417.49c23913cff8a0a59e8e2158ec845f0c_4" ; -"div0_getter_templ2#method#6451937884879872417.49c23913cff8a0a59e8e2158ec845f0c_6" [label="6: DeclStmt \n n$4=_fun_method::X2_X2(&x2_1:method::X2*) [line 59, column 6]\n " shape="box"] +"div0_getter_templ2#method#6451937884879872417.49c23913cff8a0a59e8e2158ec845f0c_6" [label="6: DeclStmt \n n$5=_fun_method::X2_X2(&x2_1:method::X2*) [line 59, column 6]\n " shape="box"] "div0_getter_templ2#method#6451937884879872417.49c23913cff8a0a59e8e2158ec845f0c_6" -> "div0_getter_templ2#method#6451937884879872417.49c23913cff8a0a59e8e2158ec845f0c_5" ; @@ -76,11 +76,11 @@ digraph cfg { "div1_getter#method#14010655706182645930.dfb00d82a62eb9bd9507d251472215d9_3" -> "div1_getter#method#14010655706182645930.dfb00d82a62eb9bd9507d251472215d9_2" ; -"div1_getter#method#14010655706182645930.dfb00d82a62eb9bd9507d251472215d9_4" [label="4: DeclStmt \n n$2=_fun_method::Getter_Getter(&g:method::Getter*) [line 47, column 10]\n " shape="box"] +"div1_getter#method#14010655706182645930.dfb00d82a62eb9bd9507d251472215d9_4" [label="4: DeclStmt \n n$3=_fun_method::Getter_Getter(&g:method::Getter*) [line 47, column 10]\n " shape="box"] "div1_getter#method#14010655706182645930.dfb00d82a62eb9bd9507d251472215d9_4" -> "div1_getter#method#14010655706182645930.dfb00d82a62eb9bd9507d251472215d9_3" ; -"div1_getter#method#14010655706182645930.dfb00d82a62eb9bd9507d251472215d9_5" [label="5: DeclStmt \n n$3=_fun_method::X1_X1(&x1:method::X1*) [line 46, column 6]\n " shape="box"] +"div1_getter#method#14010655706182645930.dfb00d82a62eb9bd9507d251472215d9_5" [label="5: DeclStmt \n n$4=_fun_method::X1_X1(&x1:method::X1*) [line 46, column 6]\n " shape="box"] "div1_getter#method#14010655706182645930.dfb00d82a62eb9bd9507d251472215d9_5" -> "div1_getter#method#14010655706182645930.dfb00d82a62eb9bd9507d251472215d9_4" ; @@ -95,15 +95,15 @@ digraph cfg { "div1_getter_templ#method#11958064193628013457.8a8112afb18681951fdb43c93893e0c5_3" -> "div1_getter_templ#method#11958064193628013457.8a8112afb18681951fdb43c93893e0c5_2" ; -"div1_getter_templ#method#11958064193628013457.8a8112afb18681951fdb43c93893e0c5_4" [label="4: DeclStmt \n n$2=_fun_method::GetterTempl_GetterTempl(&g:method::GetterTempl*) [line 68, column 19]\n " shape="box"] +"div1_getter_templ#method#11958064193628013457.8a8112afb18681951fdb43c93893e0c5_4" [label="4: DeclStmt \n n$3=_fun_method::GetterTempl_GetterTempl(&g:method::GetterTempl*) [line 68, column 19]\n " shape="box"] "div1_getter_templ#method#11958064193628013457.8a8112afb18681951fdb43c93893e0c5_4" -> "div1_getter_templ#method#11958064193628013457.8a8112afb18681951fdb43c93893e0c5_3" ; -"div1_getter_templ#method#11958064193628013457.8a8112afb18681951fdb43c93893e0c5_5" [label="5: DeclStmt \n n$3=_fun_method::X2_X2(&x2:method::X2*) [line 67, column 6]\n " shape="box"] +"div1_getter_templ#method#11958064193628013457.8a8112afb18681951fdb43c93893e0c5_5" [label="5: DeclStmt \n n$4=_fun_method::X2_X2(&x2:method::X2*) [line 67, column 6]\n " shape="box"] "div1_getter_templ#method#11958064193628013457.8a8112afb18681951fdb43c93893e0c5_5" -> "div1_getter_templ#method#11958064193628013457.8a8112afb18681951fdb43c93893e0c5_4" ; -"div1_getter_templ#method#11958064193628013457.8a8112afb18681951fdb43c93893e0c5_6" [label="6: DeclStmt \n n$4=_fun_method::X1_X1(&x1:method::X1*) [line 66, column 6]\n " shape="box"] +"div1_getter_templ#method#11958064193628013457.8a8112afb18681951fdb43c93893e0c5_6" [label="6: DeclStmt \n n$5=_fun_method::X1_X1(&x1:method::X1*) [line 66, column 6]\n " shape="box"] "div1_getter_templ#method#11958064193628013457.8a8112afb18681951fdb43c93893e0c5_6" -> "div1_getter_templ#method#11958064193628013457.8a8112afb18681951fdb43c93893e0c5_5" ; @@ -118,15 +118,15 @@ digraph cfg { "div1_getter_templ2#method#7327429174804405806.fe61550d5271fa95726c7580c68f9015_3" -> "div1_getter_templ2#method#7327429174804405806.fe61550d5271fa95726c7580c68f9015_2" ; -"div1_getter_templ2#method#7327429174804405806.fe61550d5271fa95726c7580c68f9015_4" [label="4: DeclStmt \n n$2=_fun_method::GetterTempl_GetterTempl(&g:method::GetterTempl*) [line 75, column 19]\n " shape="box"] +"div1_getter_templ2#method#7327429174804405806.fe61550d5271fa95726c7580c68f9015_4" [label="4: DeclStmt \n n$3=_fun_method::GetterTempl_GetterTempl(&g:method::GetterTempl*) [line 75, column 19]\n " shape="box"] "div1_getter_templ2#method#7327429174804405806.fe61550d5271fa95726c7580c68f9015_4" -> "div1_getter_templ2#method#7327429174804405806.fe61550d5271fa95726c7580c68f9015_3" ; -"div1_getter_templ2#method#7327429174804405806.fe61550d5271fa95726c7580c68f9015_5" [label="5: DeclStmt \n n$3=_fun_method::X1_X1(&x1_2:method::X1*) [line 74, column 6]\n " shape="box"] +"div1_getter_templ2#method#7327429174804405806.fe61550d5271fa95726c7580c68f9015_5" [label="5: DeclStmt \n n$4=_fun_method::X1_X1(&x1_2:method::X1*) [line 74, column 6]\n " shape="box"] "div1_getter_templ2#method#7327429174804405806.fe61550d5271fa95726c7580c68f9015_5" -> "div1_getter_templ2#method#7327429174804405806.fe61550d5271fa95726c7580c68f9015_4" ; -"div1_getter_templ2#method#7327429174804405806.fe61550d5271fa95726c7580c68f9015_6" [label="6: DeclStmt \n n$4=_fun_method::X1_X1(&x1_1:method::X1*) [line 73, column 6]\n " shape="box"] +"div1_getter_templ2#method#7327429174804405806.fe61550d5271fa95726c7580c68f9015_6" [label="6: DeclStmt \n n$5=_fun_method::X1_X1(&x1_1:method::X1*) [line 73, column 6]\n " shape="box"] "div1_getter_templ2#method#7327429174804405806.fe61550d5271fa95726c7580c68f9015_6" -> "div1_getter_templ2#method#7327429174804405806.fe61550d5271fa95726c7580c68f9015_5" ; diff --git a/infer/tests/codetoanalyze/cpp/shared/templates/simple.cpp.dot b/infer/tests/codetoanalyze/cpp/shared/templates/simple.cpp.dot index 8188ab25a..1d8559107 100644 --- a/infer/tests/codetoanalyze/cpp/shared/templates/simple.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/shared/templates/simple.cpp.dot @@ -11,7 +11,7 @@ digraph cfg { "div0_struct_field#9739930445713322699.789b28ce09db76d69bc6373aefeacf6a_3" -> "div0_struct_field#9739930445713322699.789b28ce09db76d69bc6373aefeacf6a_2" ; -"div0_struct_field#9739930445713322699.789b28ce09db76d69bc6373aefeacf6a_4" [label="4: BinaryOperatorStmt: Assign \n n$2=*&v:X& [line 25, column 3]\n *n$2.field:int=0 [line 25, column 3]\n " shape="box"] +"div0_struct_field#9739930445713322699.789b28ce09db76d69bc6373aefeacf6a_4" [label="4: BinaryOperatorStmt: Assign \n n$3=*&v:X& [line 25, column 3]\n *n$3.field:int=0 [line 25, column 3]\n " shape="box"] "div0_struct_field#9739930445713322699.789b28ce09db76d69bc6373aefeacf6a_4" -> "div0_struct_field#9739930445713322699.789b28ce09db76d69bc6373aefeacf6a_3" ; @@ -26,7 +26,7 @@ digraph cfg { "div0_template_field#16893301392201012428.8e63a0ece60a1b5e4e7b3cfa5d3dddd8_3" -> "div0_template_field#16893301392201012428.8e63a0ece60a1b5e4e7b3cfa5d3dddd8_2" ; -"div0_template_field#16893301392201012428.8e63a0ece60a1b5e4e7b3cfa5d3dddd8_4" [label="4: BinaryOperatorStmt: Assign \n n$2=*&v:Container& [line 20, column 3]\n *n$2.field:int=0 [line 20, column 3]\n " shape="box"] +"div0_template_field#16893301392201012428.8e63a0ece60a1b5e4e7b3cfa5d3dddd8_4" [label="4: BinaryOperatorStmt: Assign \n n$3=*&v:Container& [line 20, column 3]\n *n$3.field:int=0 [line 20, column 3]\n " shape="box"] "div0_template_field#16893301392201012428.8e63a0ece60a1b5e4e7b3cfa5d3dddd8_4" -> "div0_template_field#16893301392201012428.8e63a0ece60a1b5e4e7b3cfa5d3dddd8_3" ; diff --git a/infer/tests/codetoanalyze/cpp/shared/templates/sizeof_pack.cpp.dot b/infer/tests/codetoanalyze/cpp/shared/templates/sizeof_pack.cpp.dot index ede25a981..fab4855ec 100644 --- a/infer/tests/codetoanalyze/cpp/shared/templates/sizeof_pack.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/shared/templates/sizeof_pack.cpp.dot @@ -1,13 +1,13 @@ /* @generated */ digraph cfg { -"__infer_globals_initializer_test.19c6153ea70b713d8d2a1a0fd4ae91e3_1" [label="1: Start __infer_globals_initializer_test\nFormals: \nLocals: 0$?%__sil_tmpSIL_materialize_temp__n$0:int 0$?%__sil_tmpSIL_materialize_temp__n$1:int 0$?%__sil_tmpSIL_materialize_temp__n$2:int \n DECLARE_LOCALS(&return,&0$?%__sil_tmpSIL_materialize_temp__n$0,&0$?%__sil_tmpSIL_materialize_temp__n$1,&0$?%__sil_tmpSIL_materialize_temp__n$2); [line 23, column 1]\n " color=yellow style=filled] +"__infer_globals_initializer_test.19c6153ea70b713d8d2a1a0fd4ae91e3_1" [label="1: Start __infer_globals_initializer_test\nFormals: \nLocals: 0$?%__sil_tmpSIL_materialize_temp__n$0:int const 0$?%__sil_tmpSIL_materialize_temp__n$1:int const 0$?%__sil_tmpSIL_materialize_temp__n$2:int const \n DECLARE_LOCALS(&return,&0$?%__sil_tmpSIL_materialize_temp__n$0,&0$?%__sil_tmpSIL_materialize_temp__n$1,&0$?%__sil_tmpSIL_materialize_temp__n$2); [line 23, column 1]\n " color=yellow style=filled] "__infer_globals_initializer_test.19c6153ea70b713d8d2a1a0fd4ae91e3_1" -> "__infer_globals_initializer_test.19c6153ea70b713d8d2a1a0fd4ae91e3_3" ; "__infer_globals_initializer_test.19c6153ea70b713d8d2a1a0fd4ae91e3_2" [label="2: Exit __infer_globals_initializer_test \n " color=yellow style=filled] -"__infer_globals_initializer_test.19c6153ea70b713d8d2a1a0fd4ae91e3_3" [label="3: DeclStmt \n *&0$?%__sil_tmpSIL_materialize_temp__n$0:int=0 [line 23, column 43]\n *&0$?%__sil_tmpSIL_materialize_temp__n$1:int=0 [line 23, column 46]\n *&0$?%__sil_tmpSIL_materialize_temp__n$2:int=0 [line 23, column 49]\n n$3=_fun_hash_combine_generic(&0$?%__sil_tmpSIL_materialize_temp__n$0:int&,&0$?%__sil_tmpSIL_materialize_temp__n$1:int&,&0$?%__sil_tmpSIL_materialize_temp__n$2:int&) [line 23, column 12]\n *&#GB$test:int=n$3 [line 23, column 1]\n " shape="box"] +"__infer_globals_initializer_test.19c6153ea70b713d8d2a1a0fd4ae91e3_3" [label="3: DeclStmt \n *&0$?%__sil_tmpSIL_materialize_temp__n$0:int=0 [line 23, column 43]\n *&0$?%__sil_tmpSIL_materialize_temp__n$1:int=0 [line 23, column 46]\n *&0$?%__sil_tmpSIL_materialize_temp__n$2:int=0 [line 23, column 49]\n n$3=_fun_hash_combine_generic(&0$?%__sil_tmpSIL_materialize_temp__n$0:int const &,&0$?%__sil_tmpSIL_materialize_temp__n$1:int const &,&0$?%__sil_tmpSIL_materialize_temp__n$2:int const &) [line 23, column 12]\n *&#GB$test:int=n$3 [line 23, column 1]\n " shape="box"] "__infer_globals_initializer_test.19c6153ea70b713d8d2a1a0fd4ae91e3_3" -> "__infer_globals_initializer_test.19c6153ea70b713d8d2a1a0fd4ae91e3_2" ; @@ -34,11 +34,11 @@ digraph cfg { "hash_combine_generic#343026119801841589.3016efe6a900b985af0e18a37325385b_6" -> "hash_combine_generic#343026119801841589.3016efe6a900b985af0e18a37325385b_4" ; -"hash_combine_generic#343026119801841589.3016efe6a900b985af0e18a37325385b_7" [label="7: Return Stmt \n n$0=*&seed:int [line 18, column 12]\n *&return:int=n$0 [line 18, column 5]\n " shape="box"] +"hash_combine_generic#343026119801841589.3016efe6a900b985af0e18a37325385b_7" [label="7: Return Stmt \n n$1=*&seed:int [line 18, column 12]\n *&return:int=n$1 [line 18, column 5]\n " shape="box"] "hash_combine_generic#343026119801841589.3016efe6a900b985af0e18a37325385b_7" -> "hash_combine_generic#343026119801841589.3016efe6a900b985af0e18a37325385b_2" ; -"hash_combine_generic#343026119801841589.3016efe6a900b985af0e18a37325385b_8" [label="8: DeclStmt \n n$1=*&t:int const & [line 16, column 27]\n n$2=*n$1:int [line 16, column 27]\n n$3=_fun_MyHasher_hash(n$2:int) [line 16, column 14]\n *&seed:int=n$3 [line 16, column 3]\n " shape="box"] +"hash_combine_generic#343026119801841589.3016efe6a900b985af0e18a37325385b_8" [label="8: DeclStmt \n n$6=*&t:int const & [line 16, column 27]\n n$7=*n$6:int [line 16, column 27]\n n$8=_fun_MyHasher_hash(n$7:int) [line 16, column 14]\n *&seed:int=n$8 [line 16, column 3]\n " shape="box"] "hash_combine_generic#343026119801841589.3016efe6a900b985af0e18a37325385b_8" -> "hash_combine_generic#343026119801841589.3016efe6a900b985af0e18a37325385b_5" ; diff --git a/infer/tests/codetoanalyze/cpp/shared/types/casts.cpp.dot b/infer/tests/codetoanalyze/cpp/shared/types/casts.cpp.dot index e7015f77e..83b423fb5 100644 --- a/infer/tests/codetoanalyze/cpp/shared/types/casts.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/shared/types/casts.cpp.dot @@ -18,7 +18,7 @@ digraph cfg { "stat_cast#12446126613472042601.03b0c783caaf8ed84eb6e909b7645c57_2" [label="2: Exit stat_cast \n " color=yellow style=filled] -"stat_cast#12446126613472042601.03b0c783caaf8ed84eb6e909b7645c57_3" [label="3: DeclStmt \n n$0=*&a:int [line 12, column 41]\n *&la:long long=n$0 [line 12, column 3]\n " shape="box"] +"stat_cast#12446126613472042601.03b0c783caaf8ed84eb6e909b7645c57_3" [label="3: DeclStmt \n n$1=*&a:int [line 12, column 41]\n *&la:long long=n$1 [line 12, column 3]\n " shape="box"] "stat_cast#12446126613472042601.03b0c783caaf8ed84eb6e909b7645c57_3" -> "stat_cast#12446126613472042601.03b0c783caaf8ed84eb6e909b7645c57_2" ; diff --git a/infer/tests/codetoanalyze/cpp/shared/types/const.cpp.dot b/infer/tests/codetoanalyze/cpp/shared/types/const.cpp.dot index 8f3121393..93576b10c 100644 --- a/infer/tests/codetoanalyze/cpp/shared/types/const.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/shared/types/const.cpp.dot @@ -7,11 +7,11 @@ digraph cfg { "call_const_params_with_address#9224946220162093338.ede5d9916aae78a9bdce4ac18328cdb4_2" [label="2: Exit call_const_params_with_address \n " color=yellow style=filled] -"call_const_params_with_address#9224946220162093338.ede5d9916aae78a9bdce4ac18328cdb4_3" [label="3: Call _fun_const_in_param2 \n n$0=_fun_const_in_param2(&cx:int const *) [line 21, column 3]\n " shape="box"] +"call_const_params_with_address#9224946220162093338.ede5d9916aae78a9bdce4ac18328cdb4_3" [label="3: Call _fun_const_in_param2 \n n$1=_fun_const_in_param2(&cx:int const *) [line 21, column 3]\n " shape="box"] "call_const_params_with_address#9224946220162093338.ede5d9916aae78a9bdce4ac18328cdb4_3" -> "call_const_params_with_address#9224946220162093338.ede5d9916aae78a9bdce4ac18328cdb4_2" ; -"call_const_params_with_address#9224946220162093338.ede5d9916aae78a9bdce4ac18328cdb4_4" [label="4: Call _fun_const_in_param1 \n n$1=_fun_const_in_param1(&cx:int const *) [line 20, column 3]\n " shape="box"] +"call_const_params_with_address#9224946220162093338.ede5d9916aae78a9bdce4ac18328cdb4_4" [label="4: Call _fun_const_in_param1 \n n$2=_fun_const_in_param1(&cx:int const *) [line 20, column 3]\n " shape="box"] "call_const_params_with_address#9224946220162093338.ede5d9916aae78a9bdce4ac18328cdb4_4" -> "call_const_params_with_address#9224946220162093338.ede5d9916aae78a9bdce4ac18328cdb4_3" ; @@ -19,11 +19,11 @@ digraph cfg { "call_const_params_with_address#9224946220162093338.ede5d9916aae78a9bdce4ac18328cdb4_5" -> "call_const_params_with_address#9224946220162093338.ede5d9916aae78a9bdce4ac18328cdb4_4" ; -"call_const_params_with_address#9224946220162093338.ede5d9916aae78a9bdce4ac18328cdb4_6" [label="6: Call _fun_const_in_param2 \n n$2=_fun_const_in_param2(&x:int*) [line 16, column 3]\n " shape="box"] +"call_const_params_with_address#9224946220162093338.ede5d9916aae78a9bdce4ac18328cdb4_6" [label="6: Call _fun_const_in_param2 \n n$3=_fun_const_in_param2(&x:int*) [line 16, column 3]\n " shape="box"] "call_const_params_with_address#9224946220162093338.ede5d9916aae78a9bdce4ac18328cdb4_6" -> "call_const_params_with_address#9224946220162093338.ede5d9916aae78a9bdce4ac18328cdb4_5" ; -"call_const_params_with_address#9224946220162093338.ede5d9916aae78a9bdce4ac18328cdb4_7" [label="7: Call _fun_const_in_param1 \n n$3=_fun_const_in_param1(&x:int*) [line 15, column 3]\n " shape="box"] +"call_const_params_with_address#9224946220162093338.ede5d9916aae78a9bdce4ac18328cdb4_7" [label="7: Call _fun_const_in_param1 \n n$4=_fun_const_in_param1(&x:int*) [line 15, column 3]\n " shape="box"] "call_const_params_with_address#9224946220162093338.ede5d9916aae78a9bdce4ac18328cdb4_7" -> "call_const_params_with_address#9224946220162093338.ede5d9916aae78a9bdce4ac18328cdb4_6" ; @@ -38,7 +38,7 @@ digraph cfg { "call_const_params_with_pointer1#3193967915651281089.e26879dad7f44305c11fcc69c90dba86_2" [label="2: Exit call_const_params_with_pointer1 \n " color=yellow style=filled] -"call_const_params_with_pointer1#3193967915651281089.e26879dad7f44305c11fcc69c90dba86_3" [label="3: Call _fun_const_in_param1 \n n$0=*&p:int* [line 26, column 19]\n n$1=_fun_const_in_param1(n$0:int*) [line 26, column 3]\n " shape="box"] +"call_const_params_with_pointer1#3193967915651281089.e26879dad7f44305c11fcc69c90dba86_3" [label="3: Call _fun_const_in_param1 \n n$1=*&p:int* [line 26, column 19]\n n$2=_fun_const_in_param1(n$1:int*) [line 26, column 3]\n " shape="box"] "call_const_params_with_pointer1#3193967915651281089.e26879dad7f44305c11fcc69c90dba86_3" -> "call_const_params_with_pointer1#3193967915651281089.e26879dad7f44305c11fcc69c90dba86_2" ; @@ -53,7 +53,7 @@ digraph cfg { "call_const_params_with_pointer2#3191133374674320806.7e564aa4edfd75304391a38942d7e07f_2" [label="2: Exit call_const_params_with_pointer2 \n " color=yellow style=filled] -"call_const_params_with_pointer2#3191133374674320806.7e564aa4edfd75304391a38942d7e07f_3" [label="3: Call _fun_const_in_param2 \n n$0=*&p:int* [line 30, column 19]\n n$1=_fun_const_in_param2(n$0:int*) [line 30, column 3]\n " shape="box"] +"call_const_params_with_pointer2#3191133374674320806.7e564aa4edfd75304391a38942d7e07f_3" [label="3: Call _fun_const_in_param2 \n n$1=*&p:int* [line 30, column 19]\n n$2=_fun_const_in_param2(n$1:int*) [line 30, column 3]\n " shape="box"] "call_const_params_with_pointer2#3191133374674320806.7e564aa4edfd75304391a38942d7e07f_3" -> "call_const_params_with_pointer2#3191133374674320806.7e564aa4edfd75304391a38942d7e07f_2" ; @@ -68,7 +68,7 @@ digraph cfg { "call_const_params_with_pointer3#3191979998627854051.cb64d3f1c70e7ecb4d702fb494a6ddf9_2" [label="2: Exit call_const_params_with_pointer3 \n " color=yellow style=filled] -"call_const_params_with_pointer3#3191979998627854051.cb64d3f1c70e7ecb4d702fb494a6ddf9_3" [label="3: Call _fun_const_in_param2 \n n$0=*&cp:int* [line 35, column 19]\n n$1=_fun_const_in_param2(n$0:int*) [line 35, column 3]\n " shape="box"] +"call_const_params_with_pointer3#3191979998627854051.cb64d3f1c70e7ecb4d702fb494a6ddf9_3" [label="3: Call _fun_const_in_param2 \n n$1=*&cp:int* [line 35, column 19]\n n$2=_fun_const_in_param2(n$1:int*) [line 35, column 3]\n " shape="box"] "call_const_params_with_pointer3#3191979998627854051.cb64d3f1c70e7ecb4d702fb494a6ddf9_3" -> "call_const_params_with_pointer3#3191979998627854051.cb64d3f1c70e7ecb4d702fb494a6ddf9_2" ; diff --git a/infer/tests/codetoanalyze/cpp/shared/types/functions.cpp.dot b/infer/tests/codetoanalyze/cpp/shared/types/functions.cpp.dot index 927683efd..8ac215e14 100644 --- a/infer/tests/codetoanalyze/cpp/shared/types/functions.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/shared/types/functions.cpp.dot @@ -40,23 +40,23 @@ digraph cfg { "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_2" [label="2: Exit test \n " color=yellow style=filled] -"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_3" [label="3: Call _fun_fun_default_decl \n n$0=_fun_fun_default_decl(6:int,6:int) [line 24, column 3]\n " shape="box"] +"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_3" [label="3: Call _fun_fun_default_decl \n n$1=_fun_fun_default_decl(6:int,6:int) [line 24, column 3]\n " shape="box"] "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_3" -> "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_2" ; -"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_4" [label="4: Call _fun_fun_default_decl \n n$1=_fun_fun_default_decl(6:int,5:int) [line 23, column 3]\n " shape="box"] +"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_4" [label="4: Call _fun_fun_default_decl \n n$2=_fun_fun_default_decl(6:int,5:int) [line 23, column 3]\n " shape="box"] "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_4" -> "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_3" ; -"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_5" [label="5: Call _fun_fun_default \n n$2=_fun_fun_default(3:int,5:int) [line 21, column 3]\n " shape="box"] +"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_5" [label="5: Call _fun_fun_default \n n$3=_fun_fun_default(3:int,5:int) [line 21, column 3]\n " shape="box"] "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_5" -> "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_4" ; -"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_6" [label="6: Call _fun_fun_default \n n$3=_fun_fun_default(1:int,5:int) [line 20, column 3]\n " shape="box"] +"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_6" [label="6: Call _fun_fun_default \n n$4=_fun_fun_default(1:int,5:int) [line 20, column 3]\n " shape="box"] "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_6" -> "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_5" ; -"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_7" [label="7: Call _fun_fun_default \n n$4=_fun_fun_default(1:int,2:int) [line 19, column 3]\n " shape="box"] +"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_7" [label="7: Call _fun_fun_default \n n$5=_fun_fun_default(1:int,2:int) [line 19, column 3]\n " shape="box"] "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_7" -> "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_6" ; @@ -67,7 +67,7 @@ digraph cfg { "test2#3587805488049044947.69e45cfdc4e36a6f741ce3985858724b_2" [label="2: Exit test2 \n " color=yellow style=filled] -"test2#3587805488049044947.69e45cfdc4e36a6f741ce3985858724b_3" [label="3: Call _fun_fun_ignore_param \n n$0=_fun_fun_ignore_param(1:int,1:int,1:int) [line 27, column 16]\n " shape="box"] +"test2#3587805488049044947.69e45cfdc4e36a6f741ce3985858724b_3" [label="3: Call _fun_fun_ignore_param \n n$1=_fun_fun_ignore_param(1:int,1:int,1:int) [line 27, column 16]\n " shape="box"] "test2#3587805488049044947.69e45cfdc4e36a6f741ce3985858724b_3" -> "test2#3587805488049044947.69e45cfdc4e36a6f741ce3985858724b_2" ; diff --git a/infer/tests/codetoanalyze/cpp/shared/types/inheritance.cpp.dot b/infer/tests/codetoanalyze/cpp/shared/types/inheritance.cpp.dot index 449dfdeb1..b0926f8a0 100644 --- a/infer/tests/codetoanalyze/cpp/shared/types/inheritance.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/shared/types/inheritance.cpp.dot @@ -7,39 +7,39 @@ digraph cfg { "call_static_methods#2229162425019005814.6b8ed680875ca5e183f8fa3b51ea6718_2" [label="2: Exit call_static_methods \n " color=yellow style=filled] -"call_static_methods#2229162425019005814.6b8ed680875ca5e183f8fa3b51ea6718_3" [label="3: Call _fun_Sub_fun_redefine \n n$0=*&s2:Sub* [line 32, column 3]\n _=*n$0:Sub [line 32, column 3]\n n$2=_fun_Sub_fun_redefine(n$0:Sub*) [line 32, column 3]\n " shape="box"] +"call_static_methods#2229162425019005814.6b8ed680875ca5e183f8fa3b51ea6718_3" [label="3: Call _fun_Sub_fun_redefine \n n$1=*&s2:Sub* [line 32, column 3]\n _=*n$1:Sub [line 32, column 3]\n n$3=_fun_Sub_fun_redefine(n$1:Sub*) [line 32, column 3]\n " shape="box"] "call_static_methods#2229162425019005814.6b8ed680875ca5e183f8fa3b51ea6718_3" -> "call_static_methods#2229162425019005814.6b8ed680875ca5e183f8fa3b51ea6718_2" ; -"call_static_methods#2229162425019005814.6b8ed680875ca5e183f8fa3b51ea6718_4" [label="4: Call _fun_Base_fun_redefine \n n$3=*&s1:Base* [line 31, column 3]\n _=*n$3:Base [line 31, column 3]\n n$5=_fun_Base_fun_redefine(n$3:Base*) [line 31, column 3]\n " shape="box"] +"call_static_methods#2229162425019005814.6b8ed680875ca5e183f8fa3b51ea6718_4" [label="4: Call _fun_Base_fun_redefine \n n$4=*&s1:Base* [line 31, column 3]\n _=*n$4:Base [line 31, column 3]\n n$6=_fun_Base_fun_redefine(n$4:Base*) [line 31, column 3]\n " shape="box"] "call_static_methods#2229162425019005814.6b8ed680875ca5e183f8fa3b51ea6718_4" -> "call_static_methods#2229162425019005814.6b8ed680875ca5e183f8fa3b51ea6718_3" ; -"call_static_methods#2229162425019005814.6b8ed680875ca5e183f8fa3b51ea6718_5" [label="5: Call _fun_Base_fun_redefine \n n$6=*&b:Base* [line 30, column 3]\n _=*n$6:Base [line 30, column 3]\n n$8=_fun_Base_fun_redefine(n$6:Base*) [line 30, column 3]\n " shape="box"] +"call_static_methods#2229162425019005814.6b8ed680875ca5e183f8fa3b51ea6718_5" [label="5: Call _fun_Base_fun_redefine \n n$7=*&b:Base* [line 30, column 3]\n _=*n$7:Base [line 30, column 3]\n n$9=_fun_Base_fun_redefine(n$7:Base*) [line 30, column 3]\n " shape="box"] "call_static_methods#2229162425019005814.6b8ed680875ca5e183f8fa3b51ea6718_5" -> "call_static_methods#2229162425019005814.6b8ed680875ca5e183f8fa3b51ea6718_4" ; -"call_static_methods#2229162425019005814.6b8ed680875ca5e183f8fa3b51ea6718_6" [label="6: Call _fun_Base_fun \n n$9=*&s2:Sub* [line 28, column 3]\n _=*n$9:Sub [line 28, column 3]\n n$11=_fun_Base_fun(n$9:Sub*) [line 28, column 3]\n " shape="box"] +"call_static_methods#2229162425019005814.6b8ed680875ca5e183f8fa3b51ea6718_6" [label="6: Call _fun_Base_fun \n n$10=*&s2:Sub* [line 28, column 3]\n _=*n$10:Sub [line 28, column 3]\n n$12=_fun_Base_fun(n$10:Sub*) [line 28, column 3]\n " shape="box"] "call_static_methods#2229162425019005814.6b8ed680875ca5e183f8fa3b51ea6718_6" -> "call_static_methods#2229162425019005814.6b8ed680875ca5e183f8fa3b51ea6718_5" ; -"call_static_methods#2229162425019005814.6b8ed680875ca5e183f8fa3b51ea6718_7" [label="7: Call _fun_Base_fun \n n$12=*&s1:Base* [line 27, column 3]\n _=*n$12:Base [line 27, column 3]\n n$14=_fun_Base_fun(n$12:Base*) [line 27, column 3]\n " shape="box"] +"call_static_methods#2229162425019005814.6b8ed680875ca5e183f8fa3b51ea6718_7" [label="7: Call _fun_Base_fun \n n$13=*&s1:Base* [line 27, column 3]\n _=*n$13:Base [line 27, column 3]\n n$15=_fun_Base_fun(n$13:Base*) [line 27, column 3]\n " shape="box"] "call_static_methods#2229162425019005814.6b8ed680875ca5e183f8fa3b51ea6718_7" -> "call_static_methods#2229162425019005814.6b8ed680875ca5e183f8fa3b51ea6718_6" ; -"call_static_methods#2229162425019005814.6b8ed680875ca5e183f8fa3b51ea6718_8" [label="8: Call _fun_Base_fun \n n$15=*&b:Base* [line 26, column 3]\n _=*n$15:Base [line 26, column 3]\n n$17=_fun_Base_fun(n$15:Base*) [line 26, column 3]\n " shape="box"] +"call_static_methods#2229162425019005814.6b8ed680875ca5e183f8fa3b51ea6718_8" [label="8: Call _fun_Base_fun \n n$16=*&b:Base* [line 26, column 3]\n _=*n$16:Base [line 26, column 3]\n n$18=_fun_Base_fun(n$16:Base*) [line 26, column 3]\n " shape="box"] "call_static_methods#2229162425019005814.6b8ed680875ca5e183f8fa3b51ea6718_8" -> "call_static_methods#2229162425019005814.6b8ed680875ca5e183f8fa3b51ea6718_7" ; -"call_static_methods#2229162425019005814.6b8ed680875ca5e183f8fa3b51ea6718_9" [label="9: DeclStmt \n n$18=_fun___new(sizeof(t=Sub):unsigned long) [line 24, column 13]\n n$19=_fun_Sub_Sub(n$18:Sub*) [line 24, column 17]\n *&s2:Sub*=n$18 [line 24, column 3]\n " shape="box"] +"call_static_methods#2229162425019005814.6b8ed680875ca5e183f8fa3b51ea6718_9" [label="9: DeclStmt \n n$19=_fun___new(sizeof(t=Sub):unsigned long) [line 24, column 13]\n n$20=_fun_Sub_Sub(n$19:Sub*) [line 24, column 17]\n *&s2:Sub*=n$19 [line 24, column 3]\n " shape="box"] "call_static_methods#2229162425019005814.6b8ed680875ca5e183f8fa3b51ea6718_9" -> "call_static_methods#2229162425019005814.6b8ed680875ca5e183f8fa3b51ea6718_8" ; -"call_static_methods#2229162425019005814.6b8ed680875ca5e183f8fa3b51ea6718_10" [label="10: DeclStmt \n n$20=_fun___new(sizeof(t=Sub):unsigned long) [line 23, column 14]\n n$21=_fun_Sub_Sub(n$20:Sub*) [line 23, column 18]\n *&s1:Sub*=n$20 [line 23, column 3]\n " shape="box"] +"call_static_methods#2229162425019005814.6b8ed680875ca5e183f8fa3b51ea6718_10" [label="10: DeclStmt \n n$21=_fun___new(sizeof(t=Sub):unsigned long) [line 23, column 14]\n n$22=_fun_Sub_Sub(n$21:Sub*) [line 23, column 18]\n *&s1:Sub*=n$21 [line 23, column 3]\n " shape="box"] "call_static_methods#2229162425019005814.6b8ed680875ca5e183f8fa3b51ea6718_10" -> "call_static_methods#2229162425019005814.6b8ed680875ca5e183f8fa3b51ea6718_9" ; -"call_static_methods#2229162425019005814.6b8ed680875ca5e183f8fa3b51ea6718_11" [label="11: DeclStmt \n n$22=_fun___new(sizeof(t=Base):unsigned long) [line 22, column 13]\n n$23=_fun_Base_Base(n$22:Base*) [line 22, column 17]\n *&b:Base*=n$22 [line 22, column 3]\n " shape="box"] +"call_static_methods#2229162425019005814.6b8ed680875ca5e183f8fa3b51ea6718_11" [label="11: DeclStmt \n n$23=_fun___new(sizeof(t=Base):unsigned long) [line 22, column 13]\n n$24=_fun_Base_Base(n$23:Base*) [line 22, column 17]\n *&b:Base*=n$23 [line 22, column 3]\n " shape="box"] "call_static_methods#2229162425019005814.6b8ed680875ca5e183f8fa3b51ea6718_11" -> "call_static_methods#2229162425019005814.6b8ed680875ca5e183f8fa3b51ea6718_10" ; @@ -57,7 +57,7 @@ digraph cfg { "Sub#Sub#{11878357359117042972|constexpr}.886e3a99a94b49e456c4d39277ccc93b_2" [label="2: Exit Sub_Sub \n " color=yellow style=filled] -"Sub#Sub#{11878357359117042972|constexpr}.886e3a99a94b49e456c4d39277ccc93b_3" [label="3: Constructor Init \n n$0=*&this:Sub* [line 16, column 7]\n n$1=_fun_Base_Base(n$0:Sub*) [line 16, column 7]\n " shape="box"] +"Sub#Sub#{11878357359117042972|constexpr}.886e3a99a94b49e456c4d39277ccc93b_3" [label="3: Constructor Init \n n$2=*&this:Sub* [line 16, column 7]\n n$3=_fun_Base_Base(n$2:Sub*) [line 16, column 7]\n " shape="box"] "Sub#Sub#{11878357359117042972|constexpr}.886e3a99a94b49e456c4d39277ccc93b_3" -> "Sub#Sub#{11878357359117042972|constexpr}.886e3a99a94b49e456c4d39277ccc93b_2" ; diff --git a/infer/tests/codetoanalyze/cpp/shared/types/inheritance_casts.cpp.dot b/infer/tests/codetoanalyze/cpp/shared/types/inheritance_casts.cpp.dot index 1effa7999..1ceba5846 100644 --- a/infer/tests/codetoanalyze/cpp/shared/types/inheritance_casts.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/shared/types/inheritance_casts.cpp.dot @@ -11,47 +11,47 @@ digraph cfg { "div#inheritance_casts#6922777222181710886.49c2c177ef4708a5a378ab243af3c697_3" -> "div#inheritance_casts#6922777222181710886.49c2c177ef4708a5a378ab243af3c697_2" ; -"div0_A#inheritance_casts#7658516495554603699.e5c3e3413f6eac12dda7dd76db597c34_1" [label="1: Start inheritance_casts::div0_A\nFormals: \nLocals: 0$?%__sil_tmpSIL_materialize_temp__n$0:inheritance_casts::A \n DECLARE_LOCALS(&return,&0$?%__sil_tmpSIL_materialize_temp__n$0); [line 28, column 1]\n " color=yellow style=filled] +"div0_A#inheritance_casts#7658516495554603699.e5c3e3413f6eac12dda7dd76db597c34_1" [label="1: Start inheritance_casts::div0_A\nFormals: \nLocals: 0$?%__sil_tmpSIL_materialize_temp__n$0:inheritance_casts::A const \n DECLARE_LOCALS(&return,&0$?%__sil_tmpSIL_materialize_temp__n$0); [line 28, column 1]\n " color=yellow style=filled] "div0_A#inheritance_casts#7658516495554603699.e5c3e3413f6eac12dda7dd76db597c34_1" -> "div0_A#inheritance_casts#7658516495554603699.e5c3e3413f6eac12dda7dd76db597c34_3" ; "div0_A#inheritance_casts#7658516495554603699.e5c3e3413f6eac12dda7dd76db597c34_2" [label="2: Exit inheritance_casts::div0_A \n " color=yellow style=filled] -"div0_A#inheritance_casts#7658516495554603699.e5c3e3413f6eac12dda7dd76db597c34_3" [label="3: Return Stmt \n n$2=_fun_inheritance_casts::getA(0:int,&0$?%__sil_tmpSIL_materialize_temp__n$0:inheritance_casts::A*) [line 28, column 27]\n n$3=_fun_inheritance_casts::div(&0$?%__sil_tmpSIL_materialize_temp__n$0:inheritance_casts::A&) [line 28, column 23]\n *&return:int=n$3 [line 28, column 16]\n " shape="box"] +"div0_A#inheritance_casts#7658516495554603699.e5c3e3413f6eac12dda7dd76db597c34_3" [label="3: Return Stmt \n n$2=_fun_inheritance_casts::getA(0:int,&0$?%__sil_tmpSIL_materialize_temp__n$0:inheritance_casts::A*) [line 28, column 27]\n n$3=_fun_inheritance_casts::div(&0$?%__sil_tmpSIL_materialize_temp__n$0:inheritance_casts::A const &) [line 28, column 23]\n *&return:int=n$3 [line 28, column 16]\n " shape="box"] "div0_A#inheritance_casts#7658516495554603699.e5c3e3413f6eac12dda7dd76db597c34_3" -> "div0_A#inheritance_casts#7658516495554603699.e5c3e3413f6eac12dda7dd76db597c34_2" ; -"div0_B#inheritance_casts#9651791439006644302.4d2c177357a796fa9b436df4f92f3de8_1" [label="1: Start inheritance_casts::div0_B\nFormals: \nLocals: 0$?%__sil_tmpSIL_materialize_temp__n$0:inheritance_casts::B \n DECLARE_LOCALS(&return,&0$?%__sil_tmpSIL_materialize_temp__n$0); [line 32, column 1]\n " color=yellow style=filled] +"div0_B#inheritance_casts#9651791439006644302.4d2c177357a796fa9b436df4f92f3de8_1" [label="1: Start inheritance_casts::div0_B\nFormals: \nLocals: 0$?%__sil_tmpSIL_materialize_temp__n$0:inheritance_casts::B const \n DECLARE_LOCALS(&return,&0$?%__sil_tmpSIL_materialize_temp__n$0); [line 32, column 1]\n " color=yellow style=filled] "div0_B#inheritance_casts#9651791439006644302.4d2c177357a796fa9b436df4f92f3de8_1" -> "div0_B#inheritance_casts#9651791439006644302.4d2c177357a796fa9b436df4f92f3de8_3" ; "div0_B#inheritance_casts#9651791439006644302.4d2c177357a796fa9b436df4f92f3de8_2" [label="2: Exit inheritance_casts::div0_B \n " color=yellow style=filled] -"div0_B#inheritance_casts#9651791439006644302.4d2c177357a796fa9b436df4f92f3de8_3" [label="3: Return Stmt \n n$2=_fun_inheritance_casts::getB(0:int,&0$?%__sil_tmpSIL_materialize_temp__n$0:inheritance_casts::B*) [line 32, column 27]\n n$3=_fun_inheritance_casts::div(&0$?%__sil_tmpSIL_materialize_temp__n$0:inheritance_casts::B&) [line 32, column 23]\n *&return:int=n$3 [line 32, column 16]\n " shape="box"] +"div0_B#inheritance_casts#9651791439006644302.4d2c177357a796fa9b436df4f92f3de8_3" [label="3: Return Stmt \n n$2=_fun_inheritance_casts::getB(0:int,&0$?%__sil_tmpSIL_materialize_temp__n$0:inheritance_casts::B*) [line 32, column 27]\n n$3=_fun_inheritance_casts::div(&0$?%__sil_tmpSIL_materialize_temp__n$0:inheritance_casts::B const &) [line 32, column 23]\n *&return:int=n$3 [line 32, column 16]\n " shape="box"] "div0_B#inheritance_casts#9651791439006644302.4d2c177357a796fa9b436df4f92f3de8_3" -> "div0_B#inheritance_casts#9651791439006644302.4d2c177357a796fa9b436df4f92f3de8_2" ; -"div1_A#inheritance_casts#14706027417800210732.96d94ec773e2890c763d57de8a52982b_1" [label="1: Start inheritance_casts::div1_A\nFormals: \nLocals: 0$?%__sil_tmpSIL_materialize_temp__n$0:inheritance_casts::A \n DECLARE_LOCALS(&return,&0$?%__sil_tmpSIL_materialize_temp__n$0); [line 30, column 1]\n " color=yellow style=filled] +"div1_A#inheritance_casts#14706027417800210732.96d94ec773e2890c763d57de8a52982b_1" [label="1: Start inheritance_casts::div1_A\nFormals: \nLocals: 0$?%__sil_tmpSIL_materialize_temp__n$0:inheritance_casts::A const \n DECLARE_LOCALS(&return,&0$?%__sil_tmpSIL_materialize_temp__n$0); [line 30, column 1]\n " color=yellow style=filled] "div1_A#inheritance_casts#14706027417800210732.96d94ec773e2890c763d57de8a52982b_1" -> "div1_A#inheritance_casts#14706027417800210732.96d94ec773e2890c763d57de8a52982b_3" ; "div1_A#inheritance_casts#14706027417800210732.96d94ec773e2890c763d57de8a52982b_2" [label="2: Exit inheritance_casts::div1_A \n " color=yellow style=filled] -"div1_A#inheritance_casts#14706027417800210732.96d94ec773e2890c763d57de8a52982b_3" [label="3: Return Stmt \n n$2=_fun_inheritance_casts::getA(1:int,&0$?%__sil_tmpSIL_materialize_temp__n$0:inheritance_casts::A*) [line 30, column 27]\n n$3=_fun_inheritance_casts::div(&0$?%__sil_tmpSIL_materialize_temp__n$0:inheritance_casts::A&) [line 30, column 23]\n *&return:int=n$3 [line 30, column 16]\n " shape="box"] +"div1_A#inheritance_casts#14706027417800210732.96d94ec773e2890c763d57de8a52982b_3" [label="3: Return Stmt \n n$2=_fun_inheritance_casts::getA(1:int,&0$?%__sil_tmpSIL_materialize_temp__n$0:inheritance_casts::A*) [line 30, column 27]\n n$3=_fun_inheritance_casts::div(&0$?%__sil_tmpSIL_materialize_temp__n$0:inheritance_casts::A const &) [line 30, column 23]\n *&return:int=n$3 [line 30, column 16]\n " shape="box"] "div1_A#inheritance_casts#14706027417800210732.96d94ec773e2890c763d57de8a52982b_3" -> "div1_A#inheritance_casts#14706027417800210732.96d94ec773e2890c763d57de8a52982b_2" ; -"div1_B#inheritance_casts#15202051198007397773.6fa30ed113dcaca42095f52f33fb0c86_1" [label="1: Start inheritance_casts::div1_B\nFormals: \nLocals: 0$?%__sil_tmpSIL_materialize_temp__n$0:inheritance_casts::B \n DECLARE_LOCALS(&return,&0$?%__sil_tmpSIL_materialize_temp__n$0); [line 34, column 1]\n " color=yellow style=filled] +"div1_B#inheritance_casts#15202051198007397773.6fa30ed113dcaca42095f52f33fb0c86_1" [label="1: Start inheritance_casts::div1_B\nFormals: \nLocals: 0$?%__sil_tmpSIL_materialize_temp__n$0:inheritance_casts::B const \n DECLARE_LOCALS(&return,&0$?%__sil_tmpSIL_materialize_temp__n$0); [line 34, column 1]\n " color=yellow style=filled] "div1_B#inheritance_casts#15202051198007397773.6fa30ed113dcaca42095f52f33fb0c86_1" -> "div1_B#inheritance_casts#15202051198007397773.6fa30ed113dcaca42095f52f33fb0c86_3" ; "div1_B#inheritance_casts#15202051198007397773.6fa30ed113dcaca42095f52f33fb0c86_2" [label="2: Exit inheritance_casts::div1_B \n " color=yellow style=filled] -"div1_B#inheritance_casts#15202051198007397773.6fa30ed113dcaca42095f52f33fb0c86_3" [label="3: Return Stmt \n n$2=_fun_inheritance_casts::getB(1:int,&0$?%__sil_tmpSIL_materialize_temp__n$0:inheritance_casts::B*) [line 34, column 27]\n n$3=_fun_inheritance_casts::div(&0$?%__sil_tmpSIL_materialize_temp__n$0:inheritance_casts::B&) [line 34, column 23]\n *&return:int=n$3 [line 34, column 16]\n " shape="box"] +"div1_B#inheritance_casts#15202051198007397773.6fa30ed113dcaca42095f52f33fb0c86_3" [label="3: Return Stmt \n n$2=_fun_inheritance_casts::getB(1:int,&0$?%__sil_tmpSIL_materialize_temp__n$0:inheritance_casts::B*) [line 34, column 27]\n n$3=_fun_inheritance_casts::div(&0$?%__sil_tmpSIL_materialize_temp__n$0:inheritance_casts::B const &) [line 34, column 23]\n *&return:int=n$3 [line 34, column 16]\n " shape="box"] "div1_B#inheritance_casts#15202051198007397773.6fa30ed113dcaca42095f52f33fb0c86_3" -> "div1_B#inheritance_casts#15202051198007397773.6fa30ed113dcaca42095f52f33fb0c86_2" ; @@ -66,11 +66,11 @@ digraph cfg { "getA#inheritance_casts#5702196550029280494.a31441c26ae3c842bca5b13c0e4f700e_3" -> "getA#inheritance_casts#5702196550029280494.a31441c26ae3c842bca5b13c0e4f700e_2" ; -"getA#inheritance_casts#5702196550029280494.a31441c26ae3c842bca5b13c0e4f700e_4" [label="4: BinaryOperatorStmt: Assign \n n$4=*&f:int [line 22, column 9]\n *&x.f:int=n$4 [line 22, column 3]\n " shape="box"] +"getA#inheritance_casts#5702196550029280494.a31441c26ae3c842bca5b13c0e4f700e_4" [label="4: BinaryOperatorStmt: Assign \n n$5=*&f:int [line 22, column 9]\n *&x.f:int=n$5 [line 22, column 3]\n " shape="box"] "getA#inheritance_casts#5702196550029280494.a31441c26ae3c842bca5b13c0e4f700e_4" -> "getA#inheritance_casts#5702196550029280494.a31441c26ae3c842bca5b13c0e4f700e_3" ; -"getA#inheritance_casts#5702196550029280494.a31441c26ae3c842bca5b13c0e4f700e_5" [label="5: DeclStmt \n n$5=_fun_inheritance_casts::A_A(&x:inheritance_casts::A*) [line 21, column 5]\n " shape="box"] +"getA#inheritance_casts#5702196550029280494.a31441c26ae3c842bca5b13c0e4f700e_5" [label="5: DeclStmt \n n$6=_fun_inheritance_casts::A_A(&x:inheritance_casts::A*) [line 21, column 5]\n " shape="box"] "getA#inheritance_casts#5702196550029280494.a31441c26ae3c842bca5b13c0e4f700e_5" -> "getA#inheritance_casts#5702196550029280494.a31441c26ae3c842bca5b13c0e4f700e_4" ; @@ -85,11 +85,11 @@ digraph cfg { "getB#inheritance_casts#7572693428029732371.2a52889292973e0a59e81bc3aa93b9cd_3" -> "getB#inheritance_casts#7572693428029732371.2a52889292973e0a59e81bc3aa93b9cd_2" ; -"getB#inheritance_casts#7572693428029732371.2a52889292973e0a59e81bc3aa93b9cd_4" [label="4: BinaryOperatorStmt: Assign \n n$4=*&f:int [line 17, column 9]\n *&x.f:int=n$4 [line 17, column 3]\n " shape="box"] +"getB#inheritance_casts#7572693428029732371.2a52889292973e0a59e81bc3aa93b9cd_4" [label="4: BinaryOperatorStmt: Assign \n n$5=*&f:int [line 17, column 9]\n *&x.f:int=n$5 [line 17, column 3]\n " shape="box"] "getB#inheritance_casts#7572693428029732371.2a52889292973e0a59e81bc3aa93b9cd_4" -> "getB#inheritance_casts#7572693428029732371.2a52889292973e0a59e81bc3aa93b9cd_3" ; -"getB#inheritance_casts#7572693428029732371.2a52889292973e0a59e81bc3aa93b9cd_5" [label="5: DeclStmt \n n$5=_fun_inheritance_casts::B_B(&x:inheritance_casts::B*) [line 16, column 5]\n " shape="box"] +"getB#inheritance_casts#7572693428029732371.2a52889292973e0a59e81bc3aa93b9cd_5" [label="5: DeclStmt \n n$6=_fun_inheritance_casts::B_B(&x:inheritance_casts::B*) [line 16, column 5]\n " shape="box"] "getB#inheritance_casts#7572693428029732371.2a52889292973e0a59e81bc3aa93b9cd_5" -> "getB#inheritance_casts#7572693428029732371.2a52889292973e0a59e81bc3aa93b9cd_4" ; @@ -100,7 +100,7 @@ digraph cfg { "A#A#inheritance_casts#{10902709585585133973|constexpr}.68880ef701101d56bd12eca3d63ad60a_2" [label="2: Exit inheritance_casts::A_A \n " color=yellow style=filled] -"A#A#inheritance_casts#{10902709585585133973|constexpr}.68880ef701101d56bd12eca3d63ad60a_3" [label="3: Constructor Init \n n$0=*&this:inheritance_casts::A* [line 10, column 8]\n n$1=*&__param_0:inheritance_casts::A& [line 10, column 8]\n n$2=*n$1.f:int [line 10, column 8]\n *n$0.f:int=n$2 [line 10, column 8]\n " shape="box"] +"A#A#inheritance_casts#{10902709585585133973|constexpr}.68880ef701101d56bd12eca3d63ad60a_3" [label="3: Constructor Init \n n$2=*&this:inheritance_casts::A* [line 10, column 8]\n n$3=*&__param_0:inheritance_casts::A& [line 10, column 8]\n n$4=*n$3.f:int [line 10, column 8]\n *n$2.f:int=n$4 [line 10, column 8]\n " shape="box"] "A#A#inheritance_casts#{10902709585585133973|constexpr}.68880ef701101d56bd12eca3d63ad60a_3" -> "A#A#inheritance_casts#{10902709585585133973|constexpr}.68880ef701101d56bd12eca3d63ad60a_2" ; @@ -118,7 +118,7 @@ digraph cfg { "B#B#inheritance_casts#{757591507791864682|constexpr}.5bcf15d1bf21f1370c2f899ddef4b1c9_2" [label="2: Exit inheritance_casts::B_B \n " color=yellow style=filled] -"B#B#inheritance_casts#{757591507791864682|constexpr}.5bcf15d1bf21f1370c2f899ddef4b1c9_3" [label="3: Constructor Init \n n$0=*&this:inheritance_casts::B* [line 13, column 8]\n n$1=*&__param_0:inheritance_casts::B& [line 13, column 8]\n n$2=_fun_inheritance_casts::A_A(n$0:inheritance_casts::B*,n$1:inheritance_casts::B&) [line 13, column 8]\n " shape="box"] +"B#B#inheritance_casts#{757591507791864682|constexpr}.5bcf15d1bf21f1370c2f899ddef4b1c9_3" [label="3: Constructor Init \n n$2=*&this:inheritance_casts::B* [line 13, column 8]\n n$3=*&__param_0:inheritance_casts::B& [line 13, column 8]\n n$4=_fun_inheritance_casts::A_A(n$2:inheritance_casts::B*,n$3:inheritance_casts::B&) [line 13, column 8]\n " shape="box"] "B#B#inheritance_casts#{757591507791864682|constexpr}.5bcf15d1bf21f1370c2f899ddef4b1c9_3" -> "B#B#inheritance_casts#{757591507791864682|constexpr}.5bcf15d1bf21f1370c2f899ddef4b1c9_2" ; @@ -129,7 +129,7 @@ digraph cfg { "B#B#inheritance_casts#{9678838365339542453}.8b569e08272bb08f8843c357c8546f65_2" [label="2: Exit inheritance_casts::B_B \n " color=yellow style=filled] -"B#B#inheritance_casts#{9678838365339542453}.8b569e08272bb08f8843c357c8546f65_3" [label="3: Constructor Init \n n$0=*&this:inheritance_casts::B* [line 13, column 8]\n n$1=_fun_inheritance_casts::A_A(n$0:inheritance_casts::B*) [line 13, column 8]\n " shape="box"] +"B#B#inheritance_casts#{9678838365339542453}.8b569e08272bb08f8843c357c8546f65_3" [label="3: Constructor Init \n n$2=*&this:inheritance_casts::B* [line 13, column 8]\n n$3=_fun_inheritance_casts::A_A(n$2:inheritance_casts::B*) [line 13, column 8]\n " shape="box"] "B#B#inheritance_casts#{9678838365339542453}.8b569e08272bb08f8843c357c8546f65_3" -> "B#B#inheritance_casts#{9678838365339542453}.8b569e08272bb08f8843c357c8546f65_2" ; diff --git a/infer/tests/codetoanalyze/cpp/shared/types/inheritance_field.cpp.dot b/infer/tests/codetoanalyze/cpp/shared/types/inheritance_field.cpp.dot index 91f84f14c..0078e997a 100644 --- a/infer/tests/codetoanalyze/cpp/shared/types/inheritance_field.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/shared/types/inheritance_field.cpp.dot @@ -11,7 +11,7 @@ digraph cfg { "div0_b1#17650173920024552929.38acfc238efbf35c1ac5da7290b49422_3" -> "div0_b1#17650173920024552929.38acfc238efbf35c1ac5da7290b49422_2" ; -"div0_b1#17650173920024552929.38acfc238efbf35c1ac5da7290b49422_4" [label="4: BinaryOperatorStmt: Assign \n n$2=*&s:Sub& [line 23, column 3]\n *n$2.b1:int=0 [line 23, column 3]\n " shape="box"] +"div0_b1#17650173920024552929.38acfc238efbf35c1ac5da7290b49422_4" [label="4: BinaryOperatorStmt: Assign \n n$3=*&s:Sub& [line 23, column 3]\n *n$3.b1:int=0 [line 23, column 3]\n " shape="box"] "div0_b1#17650173920024552929.38acfc238efbf35c1ac5da7290b49422_4" -> "div0_b1#17650173920024552929.38acfc238efbf35c1ac5da7290b49422_3" ; @@ -26,11 +26,11 @@ digraph cfg { "div0_b1_s#4574535260514480977.c132b3496cd22a9bc4817c577b65da9e_3" -> "div0_b1_s#4574535260514480977.c132b3496cd22a9bc4817c577b65da9e_2" ; -"div0_b1_s#4574535260514480977.c132b3496cd22a9bc4817c577b65da9e_4" [label="4: BinaryOperatorStmt: Assign \n n$4=*&s:Sub* [line 51, column 3]\n *n$4.s:int=1 [line 51, column 3]\n " shape="box"] +"div0_b1_s#4574535260514480977.c132b3496cd22a9bc4817c577b65da9e_4" [label="4: BinaryOperatorStmt: Assign \n n$5=*&s:Sub* [line 51, column 3]\n *n$5.s:int=1 [line 51, column 3]\n " shape="box"] "div0_b1_s#4574535260514480977.c132b3496cd22a9bc4817c577b65da9e_4" -> "div0_b1_s#4574535260514480977.c132b3496cd22a9bc4817c577b65da9e_3" ; -"div0_b1_s#4574535260514480977.c132b3496cd22a9bc4817c577b65da9e_5" [label="5: BinaryOperatorStmt: Assign \n n$5=*&s:Sub* [line 50, column 3]\n *n$5.b1:int=1 [line 50, column 3]\n " shape="box"] +"div0_b1_s#4574535260514480977.c132b3496cd22a9bc4817c577b65da9e_5" [label="5: BinaryOperatorStmt: Assign \n n$6=*&s:Sub* [line 50, column 3]\n *n$6.b1:int=1 [line 50, column 3]\n " shape="box"] "div0_b1_s#4574535260514480977.c132b3496cd22a9bc4817c577b65da9e_5" -> "div0_b1_s#4574535260514480977.c132b3496cd22a9bc4817c577b65da9e_4" ; @@ -45,7 +45,7 @@ digraph cfg { "div0_b2#6935029956526426132.ef88e6d1eac891cdde3f345b9b55439c_3" -> "div0_b2#6935029956526426132.ef88e6d1eac891cdde3f345b9b55439c_2" ; -"div0_b2#6935029956526426132.ef88e6d1eac891cdde3f345b9b55439c_4" [label="4: BinaryOperatorStmt: Assign \n n$2=*&s:Sub& [line 28, column 3]\n *n$2.b2:int=0 [line 28, column 3]\n " shape="box"] +"div0_b2#6935029956526426132.ef88e6d1eac891cdde3f345b9b55439c_4" [label="4: BinaryOperatorStmt: Assign \n n$3=*&s:Sub& [line 28, column 3]\n *n$3.b2:int=0 [line 28, column 3]\n " shape="box"] "div0_b2#6935029956526426132.ef88e6d1eac891cdde3f345b9b55439c_4" -> "div0_b2#6935029956526426132.ef88e6d1eac891cdde3f345b9b55439c_3" ; @@ -60,11 +60,11 @@ digraph cfg { "div0_cast#5945090778893539301.687c05d84c9555932644bbb5c32ec8a3_3" -> "div0_cast#5945090778893539301.687c05d84c9555932644bbb5c32ec8a3_2" ; -"div0_cast#5945090778893539301.687c05d84c9555932644bbb5c32ec8a3_4" [label="4: DeclStmt \n n$2=*&s:Sub* [line 39, column 14]\n *&b:Sub*=n$2 [line 39, column 3]\n " shape="box"] +"div0_cast#5945090778893539301.687c05d84c9555932644bbb5c32ec8a3_4" [label="4: DeclStmt \n n$3=*&s:Sub* [line 39, column 14]\n *&b:Sub*=n$3 [line 39, column 3]\n " shape="box"] "div0_cast#5945090778893539301.687c05d84c9555932644bbb5c32ec8a3_4" -> "div0_cast#5945090778893539301.687c05d84c9555932644bbb5c32ec8a3_3" ; -"div0_cast#5945090778893539301.687c05d84c9555932644bbb5c32ec8a3_5" [label="5: BinaryOperatorStmt: Assign \n n$3=*&s:Sub* [line 38, column 3]\n *n$3.b1:int=0 [line 38, column 3]\n " shape="box"] +"div0_cast#5945090778893539301.687c05d84c9555932644bbb5c32ec8a3_5" [label="5: BinaryOperatorStmt: Assign \n n$4=*&s:Sub* [line 38, column 3]\n *n$4.b1:int=0 [line 38, column 3]\n " shape="box"] "div0_cast#5945090778893539301.687c05d84c9555932644bbb5c32ec8a3_5" -> "div0_cast#5945090778893539301.687c05d84c9555932644bbb5c32ec8a3_4" ; @@ -79,11 +79,11 @@ digraph cfg { "div0_cast_ref#11427648331886451822.4f535c7752ac1b6e5f35ab1a83dc2bd8_3" -> "div0_cast_ref#11427648331886451822.4f535c7752ac1b6e5f35ab1a83dc2bd8_2" ; -"div0_cast_ref#11427648331886451822.4f535c7752ac1b6e5f35ab1a83dc2bd8_4" [label="4: DeclStmt \n n$2=*&s:Sub& [line 45, column 14]\n *&b:Sub&=n$2 [line 45, column 3]\n " shape="box"] +"div0_cast_ref#11427648331886451822.4f535c7752ac1b6e5f35ab1a83dc2bd8_4" [label="4: DeclStmt \n n$3=*&s:Sub& [line 45, column 14]\n *&b:Sub&=n$3 [line 45, column 3]\n " shape="box"] "div0_cast_ref#11427648331886451822.4f535c7752ac1b6e5f35ab1a83dc2bd8_4" -> "div0_cast_ref#11427648331886451822.4f535c7752ac1b6e5f35ab1a83dc2bd8_3" ; -"div0_cast_ref#11427648331886451822.4f535c7752ac1b6e5f35ab1a83dc2bd8_5" [label="5: BinaryOperatorStmt: Assign \n n$3=*&s:Sub& [line 44, column 3]\n *n$3.b1:int=0 [line 44, column 3]\n " shape="box"] +"div0_cast_ref#11427648331886451822.4f535c7752ac1b6e5f35ab1a83dc2bd8_5" [label="5: BinaryOperatorStmt: Assign \n n$4=*&s:Sub& [line 44, column 3]\n *n$4.b1:int=0 [line 44, column 3]\n " shape="box"] "div0_cast_ref#11427648331886451822.4f535c7752ac1b6e5f35ab1a83dc2bd8_5" -> "div0_cast_ref#11427648331886451822.4f535c7752ac1b6e5f35ab1a83dc2bd8_4" ; @@ -98,7 +98,7 @@ digraph cfg { "div0_s#16566672704220882536.127f1e4fb94cf0b77844a4e153e0f991_3" -> "div0_s#16566672704220882536.127f1e4fb94cf0b77844a4e153e0f991_2" ; -"div0_s#16566672704220882536.127f1e4fb94cf0b77844a4e153e0f991_4" [label="4: BinaryOperatorStmt: Assign \n n$2=*&s:Sub& [line 33, column 3]\n *n$2.s:int=0 [line 33, column 3]\n " shape="box"] +"div0_s#16566672704220882536.127f1e4fb94cf0b77844a4e153e0f991_4" [label="4: BinaryOperatorStmt: Assign \n n$3=*&s:Sub& [line 33, column 3]\n *n$3.s:int=0 [line 33, column 3]\n " shape="box"] "div0_s#16566672704220882536.127f1e4fb94cf0b77844a4e153e0f991_4" -> "div0_s#16566672704220882536.127f1e4fb94cf0b77844a4e153e0f991_3" ; @@ -113,11 +113,11 @@ digraph cfg { "div0_s_b1#6365361903134380141.385a354053ffb314ee7bfcec6dee0475_3" -> "div0_s_b1#6365361903134380141.385a354053ffb314ee7bfcec6dee0475_2" ; -"div0_s_b1#6365361903134380141.385a354053ffb314ee7bfcec6dee0475_4" [label="4: BinaryOperatorStmt: Assign \n n$4=*&s:Sub* [line 57, column 3]\n *n$4.s:int=1 [line 57, column 3]\n " shape="box"] +"div0_s_b1#6365361903134380141.385a354053ffb314ee7bfcec6dee0475_4" [label="4: BinaryOperatorStmt: Assign \n n$5=*&s:Sub* [line 57, column 3]\n *n$5.s:int=1 [line 57, column 3]\n " shape="box"] "div0_s_b1#6365361903134380141.385a354053ffb314ee7bfcec6dee0475_4" -> "div0_s_b1#6365361903134380141.385a354053ffb314ee7bfcec6dee0475_3" ; -"div0_s_b1#6365361903134380141.385a354053ffb314ee7bfcec6dee0475_5" [label="5: BinaryOperatorStmt: Assign \n n$5=*&s:Sub* [line 56, column 3]\n *n$5.b1:int=1 [line 56, column 3]\n " shape="box"] +"div0_s_b1#6365361903134380141.385a354053ffb314ee7bfcec6dee0475_5" [label="5: BinaryOperatorStmt: Assign \n n$6=*&s:Sub* [line 56, column 3]\n *n$6.b1:int=1 [line 56, column 3]\n " shape="box"] "div0_s_b1#6365361903134380141.385a354053ffb314ee7bfcec6dee0475_5" -> "div0_s_b1#6365361903134380141.385a354053ffb314ee7bfcec6dee0475_4" ; @@ -132,7 +132,7 @@ digraph cfg { "div1_b1#14974413951234929464.2d37fbc87faf449081172c1e2711163f_3" -> "div1_b1#14974413951234929464.2d37fbc87faf449081172c1e2711163f_2" ; -"div1_b1#14974413951234929464.2d37fbc87faf449081172c1e2711163f_4" [label="4: BinaryOperatorStmt: Assign \n n$2=*&s:Sub& [line 62, column 3]\n *n$2.b1:int=1 [line 62, column 3]\n " shape="box"] +"div1_b1#14974413951234929464.2d37fbc87faf449081172c1e2711163f_4" [label="4: BinaryOperatorStmt: Assign \n n$3=*&s:Sub& [line 62, column 3]\n *n$3.b1:int=1 [line 62, column 3]\n " shape="box"] "div1_b1#14974413951234929464.2d37fbc87faf449081172c1e2711163f_4" -> "div1_b1#14974413951234929464.2d37fbc87faf449081172c1e2711163f_3" ; @@ -147,11 +147,11 @@ digraph cfg { "div1_cast#4700794712628779370.bf330282d3921dae44676e58f54575fe_3" -> "div1_cast#4700794712628779370.bf330282d3921dae44676e58f54575fe_2" ; -"div1_cast#4700794712628779370.bf330282d3921dae44676e58f54575fe_4" [label="4: DeclStmt \n n$2=*&s:Sub* [line 68, column 14]\n *&b:Sub*=n$2 [line 68, column 3]\n " shape="box"] +"div1_cast#4700794712628779370.bf330282d3921dae44676e58f54575fe_4" [label="4: DeclStmt \n n$3=*&s:Sub* [line 68, column 14]\n *&b:Sub*=n$3 [line 68, column 3]\n " shape="box"] "div1_cast#4700794712628779370.bf330282d3921dae44676e58f54575fe_4" -> "div1_cast#4700794712628779370.bf330282d3921dae44676e58f54575fe_3" ; -"div1_cast#4700794712628779370.bf330282d3921dae44676e58f54575fe_5" [label="5: BinaryOperatorStmt: Assign \n n$3=*&s:Sub* [line 67, column 3]\n *n$3.b1:int=1 [line 67, column 3]\n " shape="box"] +"div1_cast#4700794712628779370.bf330282d3921dae44676e58f54575fe_5" [label="5: BinaryOperatorStmt: Assign \n n$4=*&s:Sub* [line 67, column 3]\n *n$4.b1:int=1 [line 67, column 3]\n " shape="box"] "div1_cast#4700794712628779370.bf330282d3921dae44676e58f54575fe_5" -> "div1_cast#4700794712628779370.bf330282d3921dae44676e58f54575fe_4" ; diff --git a/infer/tests/codetoanalyze/cpp/shared/types/operator_overload.cpp.dot b/infer/tests/codetoanalyze/cpp/shared/types/operator_overload.cpp.dot index 3ffd24689..9333dcd05 100644 --- a/infer/tests/codetoanalyze/cpp/shared/types/operator_overload.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/shared/types/operator_overload.cpp.dot @@ -11,7 +11,7 @@ digraph cfg { "div0_function_op#6873855268879531342.84fad54736dded19eef101141599a76d_3" -> "div0_function_op#6873855268879531342.84fad54736dded19eef101141599a76d_2" ; -"div0_function_op#6873855268879531342.84fad54736dded19eef101141599a76d_4" [label="4: DeclStmt \n n$1=*&x:X& [line 30, column 11]\n n$2=_fun_operator*(n$1:X&,0:int) [line 30, column 11]\n *&v:int=n$2 [line 30, column 3]\n " shape="box"] +"div0_function_op#6873855268879531342.84fad54736dded19eef101141599a76d_4" [label="4: DeclStmt \n n$2=*&x:X& [line 30, column 11]\n n$3=_fun_operator*(n$2:X&,0:int) [line 30, column 11]\n *&v:int=n$3 [line 30, column 3]\n " shape="box"] "div0_function_op#6873855268879531342.84fad54736dded19eef101141599a76d_4" -> "div0_function_op#6873855268879531342.84fad54736dded19eef101141599a76d_3" ; @@ -22,7 +22,7 @@ digraph cfg { "div0_inheritted_op#3897716987010755035.349c69d7e8317217b8bcc1ac60f4e8bb_2" [label="2: Exit div0_inheritted_op \n " color=yellow style=filled] -"div0_inheritted_op#3897716987010755035.349c69d7e8317217b8bcc1ac60f4e8bb_3" [label="3: Return Stmt \n n$0=*&y:Y& [line 42, column 14]\n n$1=_fun_X_operator[](n$0:Y&,0:int) [line 42, column 14]\n *&return:int=(1 / n$1) [line 42, column 3]\n " shape="box"] +"div0_inheritted_op#3897716987010755035.349c69d7e8317217b8bcc1ac60f4e8bb_3" [label="3: Return Stmt \n n$1=*&y:Y& [line 42, column 14]\n n$2=_fun_X_operator[](n$1:Y&,0:int) [line 42, column 14]\n *&return:int=(1 / n$2) [line 42, column 3]\n " shape="box"] "div0_inheritted_op#3897716987010755035.349c69d7e8317217b8bcc1ac60f4e8bb_3" -> "div0_inheritted_op#3897716987010755035.349c69d7e8317217b8bcc1ac60f4e8bb_2" ; @@ -37,7 +37,7 @@ digraph cfg { "div0_method#3394285867487200768.d62d68147390fdf119b5094668c7a05c_3" -> "div0_method#3394285867487200768.d62d68147390fdf119b5094668c7a05c_2" ; -"div0_method#3394285867487200768.d62d68147390fdf119b5094668c7a05c_4" [label="4: DeclStmt \n n$1=*&x:X& [line 36, column 11]\n _=*n$1:X [line 36, column 11]\n n$3=_fun_X_operator[](n$1:X&,0:int) [line 36, column 11]\n *&v:int=n$3 [line 36, column 3]\n " shape="box"] +"div0_method#3394285867487200768.d62d68147390fdf119b5094668c7a05c_4" [label="4: DeclStmt \n n$2=*&x:X& [line 36, column 11]\n _=*n$2:X [line 36, column 11]\n n$4=_fun_X_operator[](n$2:X&,0:int) [line 36, column 11]\n *&v:int=n$4 [line 36, column 3]\n " shape="box"] "div0_method#3394285867487200768.d62d68147390fdf119b5094668c7a05c_4" -> "div0_method#3394285867487200768.d62d68147390fdf119b5094668c7a05c_3" ; @@ -52,7 +52,7 @@ digraph cfg { "div0_method_op#16458634010327501325.9f8c8af0fef3459b668ce9bd6f32558b_3" -> "div0_method_op#16458634010327501325.9f8c8af0fef3459b668ce9bd6f32558b_2" ; -"div0_method_op#16458634010327501325.9f8c8af0fef3459b668ce9bd6f32558b_4" [label="4: DeclStmt \n n$1=*&x:X& [line 22, column 11]\n n$2=_fun_X_operator[](n$1:X&,0:int) [line 22, column 11]\n *&v:int=n$2 [line 22, column 3]\n " shape="box"] +"div0_method_op#16458634010327501325.9f8c8af0fef3459b668ce9bd6f32558b_4" [label="4: DeclStmt \n n$3=*&x:X& [line 22, column 11]\n n$4=_fun_X_operator[](n$3:X&,0:int) [line 22, column 11]\n *&v:int=n$4 [line 22, column 3]\n " shape="box"] "div0_method_op#16458634010327501325.9f8c8af0fef3459b668ce9bd6f32558b_4" -> "div0_method_op#16458634010327501325.9f8c8af0fef3459b668ce9bd6f32558b_3" ; @@ -63,7 +63,7 @@ digraph cfg { "div0_method_op_ptr#10912550985860444792.096d01aa199facb5a8d76aa262f16057_2" [label="2: Exit div0_method_op_ptr \n " color=yellow style=filled] -"div0_method_op_ptr#10912550985860444792.096d01aa199facb5a8d76aa262f16057_3" [label="3: Return Stmt \n n$0=*&x:X* [line 26, column 45]\n n$1=_fun_X_operator[](n$0:X&,0:int) [line 26, column 43]\n *&return:int=(1 / n$1) [line 26, column 32]\n " shape="box"] +"div0_method_op_ptr#10912550985860444792.096d01aa199facb5a8d76aa262f16057_3" [label="3: Return Stmt \n n$1=*&x:X* [line 26, column 45]\n n$2=_fun_X_operator[](n$1:X&,0:int) [line 26, column 43]\n *&return:int=(1 / n$2) [line 26, column 32]\n " shape="box"] "div0_method_op_ptr#10912550985860444792.096d01aa199facb5a8d76aa262f16057_3" -> "div0_method_op_ptr#10912550985860444792.096d01aa199facb5a8d76aa262f16057_2" ; @@ -74,7 +74,7 @@ digraph cfg { "div1_method_op#5439663249593761892.a2cc6fb171f5c009c72f5f33927b41f0_2" [label="2: Exit div1_method_op \n " color=yellow style=filled] -"div1_method_op#5439663249593761892.a2cc6fb171f5c009c72f5f33927b41f0_3" [label="3: Return Stmt \n n$0=*&x:X& [line 45, column 39]\n n$1=_fun_X_operator[](n$0:X&,1:int) [line 45, column 39]\n *&return:int=(1 / n$1) [line 45, column 28]\n " shape="box"] +"div1_method_op#5439663249593761892.a2cc6fb171f5c009c72f5f33927b41f0_3" [label="3: Return Stmt \n n$1=*&x:X& [line 45, column 39]\n n$2=_fun_X_operator[](n$1:X&,1:int) [line 45, column 39]\n *&return:int=(1 / n$2) [line 45, column 28]\n " shape="box"] "div1_method_op#5439663249593761892.a2cc6fb171f5c009c72f5f33927b41f0_3" -> "div1_method_op#5439663249593761892.a2cc6fb171f5c009c72f5f33927b41f0_2" ; diff --git a/infer/tests/codetoanalyze/cpp/shared/types/return_struct.cpp.dot b/infer/tests/codetoanalyze/cpp/shared/types/return_struct.cpp.dot index 112cc533f..90ffe5073 100644 --- a/infer/tests/codetoanalyze/cpp/shared/types/return_struct.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/shared/types/return_struct.cpp.dot @@ -11,15 +11,15 @@ digraph cfg { "get#return_struct#15206943163581446197.ccfaa809d6b1c936572851236a9ccb10_3" -> "get#return_struct#15206943163581446197.ccfaa809d6b1c936572851236a9ccb10_2" ; -"get#return_struct#15206943163581446197.ccfaa809d6b1c936572851236a9ccb10_4" [label="4: BinaryOperatorStmt: Assign \n n$4=*&a:int [line 23, column 9]\n *&x.f:int=n$4 [line 23, column 3]\n " shape="box"] +"get#return_struct#15206943163581446197.ccfaa809d6b1c936572851236a9ccb10_4" [label="4: BinaryOperatorStmt: Assign \n n$5=*&a:int [line 23, column 9]\n *&x.f:int=n$5 [line 23, column 3]\n " shape="box"] "get#return_struct#15206943163581446197.ccfaa809d6b1c936572851236a9ccb10_4" -> "get#return_struct#15206943163581446197.ccfaa809d6b1c936572851236a9ccb10_3" ; -"get#return_struct#15206943163581446197.ccfaa809d6b1c936572851236a9ccb10_5" [label="5: DeclStmt \n n$5=_fun_return_struct::X_X(&x:return_struct::X*) [line 22, column 5]\n " shape="box"] +"get#return_struct#15206943163581446197.ccfaa809d6b1c936572851236a9ccb10_5" [label="5: DeclStmt \n n$6=_fun_return_struct::X_X(&x:return_struct::X*) [line 22, column 5]\n " shape="box"] "get#return_struct#15206943163581446197.ccfaa809d6b1c936572851236a9ccb10_5" -> "get#return_struct#15206943163581446197.ccfaa809d6b1c936572851236a9ccb10_4" ; -"get_div0#return_struct#3543093399648500387.0c3db3a444952aefeee44e54da50327a_1" [label="1: Start return_struct::get_div0\nFormals: \nLocals: x:return_struct::X 0$?%__sil_tmpSIL_materialize_temp__n$3:return_struct::X \n DECLARE_LOCALS(&return,&x,&0$?%__sil_tmpSIL_materialize_temp__n$3); [line 27, column 1]\n " color=yellow style=filled] +"get_div0#return_struct#3543093399648500387.0c3db3a444952aefeee44e54da50327a_1" [label="1: Start return_struct::get_div0\nFormals: \nLocals: x:return_struct::X 0$?%__sil_tmpSIL_materialize_temp__n$4:return_struct::X const \n DECLARE_LOCALS(&return,&x,&0$?%__sil_tmpSIL_materialize_temp__n$4); [line 27, column 1]\n " color=yellow style=filled] "get_div0#return_struct#3543093399648500387.0c3db3a444952aefeee44e54da50327a_1" -> "get_div0#return_struct#3543093399648500387.0c3db3a444952aefeee44e54da50327a_4" ; @@ -30,11 +30,11 @@ digraph cfg { "get_div0#return_struct#3543093399648500387.0c3db3a444952aefeee44e54da50327a_3" -> "get_div0#return_struct#3543093399648500387.0c3db3a444952aefeee44e54da50327a_2" ; -"get_div0#return_struct#3543093399648500387.0c3db3a444952aefeee44e54da50327a_4" [label="4: DeclStmt \n n$5=_fun_return_struct::get(0:int,&0$?%__sil_tmpSIL_materialize_temp__n$3:return_struct::X*) [line 28, column 9]\n n$6=_fun_return_struct::X_X(&x:return_struct::X*,&0$?%__sil_tmpSIL_materialize_temp__n$3:return_struct::X&) [line 28, column 9]\n " shape="box"] +"get_div0#return_struct#3543093399648500387.0c3db3a444952aefeee44e54da50327a_4" [label="4: DeclStmt \n n$6=_fun_return_struct::get(0:int,&0$?%__sil_tmpSIL_materialize_temp__n$4:return_struct::X*) [line 28, column 9]\n n$7=_fun_return_struct::X_X(&x:return_struct::X*,&0$?%__sil_tmpSIL_materialize_temp__n$4:return_struct::X const &) [line 28, column 9]\n " shape="box"] "get_div0#return_struct#3543093399648500387.0c3db3a444952aefeee44e54da50327a_4" -> "get_div0#return_struct#3543093399648500387.0c3db3a444952aefeee44e54da50327a_3" ; -"get_div1#return_struct#4287655186293816212.dabfacf04a7d838f8bdc3ef21786303d_1" [label="1: Start return_struct::get_div1\nFormals: \nLocals: x:return_struct::X 0$?%__sil_tmpSIL_materialize_temp__n$3:return_struct::X \n DECLARE_LOCALS(&return,&x,&0$?%__sil_tmpSIL_materialize_temp__n$3); [line 39, column 1]\n " color=yellow style=filled] +"get_div1#return_struct#4287655186293816212.dabfacf04a7d838f8bdc3ef21786303d_1" [label="1: Start return_struct::get_div1\nFormals: \nLocals: x:return_struct::X 0$?%__sil_tmpSIL_materialize_temp__n$4:return_struct::X const \n DECLARE_LOCALS(&return,&x,&0$?%__sil_tmpSIL_materialize_temp__n$4); [line 39, column 1]\n " color=yellow style=filled] "get_div1#return_struct#4287655186293816212.dabfacf04a7d838f8bdc3ef21786303d_1" -> "get_div1#return_struct#4287655186293816212.dabfacf04a7d838f8bdc3ef21786303d_4" ; @@ -45,11 +45,11 @@ digraph cfg { "get_div1#return_struct#4287655186293816212.dabfacf04a7d838f8bdc3ef21786303d_3" -> "get_div1#return_struct#4287655186293816212.dabfacf04a7d838f8bdc3ef21786303d_2" ; -"get_div1#return_struct#4287655186293816212.dabfacf04a7d838f8bdc3ef21786303d_4" [label="4: DeclStmt \n n$5=_fun_return_struct::get(1:int,&0$?%__sil_tmpSIL_materialize_temp__n$3:return_struct::X*) [line 40, column 9]\n n$6=_fun_return_struct::X_X(&x:return_struct::X*,&0$?%__sil_tmpSIL_materialize_temp__n$3:return_struct::X&) [line 40, column 9]\n " shape="box"] +"get_div1#return_struct#4287655186293816212.dabfacf04a7d838f8bdc3ef21786303d_4" [label="4: DeclStmt \n n$6=_fun_return_struct::get(1:int,&0$?%__sil_tmpSIL_materialize_temp__n$4:return_struct::X*) [line 40, column 9]\n n$7=_fun_return_struct::X_X(&x:return_struct::X*,&0$?%__sil_tmpSIL_materialize_temp__n$4:return_struct::X const &) [line 40, column 9]\n " shape="box"] "get_div1#return_struct#4287655186293816212.dabfacf04a7d838f8bdc3ef21786303d_4" -> "get_div1#return_struct#4287655186293816212.dabfacf04a7d838f8bdc3ef21786303d_3" ; -"get_field_div0#return_struct#5765383981880135147.23dc82d8c29aaec22d9b9a68808820c3_1" [label="1: Start return_struct::get_field_div0\nFormals: \nLocals: 0$?%__sil_tmpSIL_materialize_temp__n$0:return_struct::X 0$?%__sil_tmpSIL_materialize_temp__n$4:return_struct::X \n DECLARE_LOCALS(&return,&0$?%__sil_tmpSIL_materialize_temp__n$0,&0$?%__sil_tmpSIL_materialize_temp__n$4); [line 32, column 1]\n " color=yellow style=filled] +"get_field_div0#return_struct#5765383981880135147.23dc82d8c29aaec22d9b9a68808820c3_1" [label="1: Start return_struct::get_field_div0\nFormals: \nLocals: 0$?%__sil_tmpSIL_materialize_temp__n$0:return_struct::X 0$?%__sil_tmpSIL_materialize_temp__n$5:return_struct::X \n DECLARE_LOCALS(&return,&0$?%__sil_tmpSIL_materialize_temp__n$0,&0$?%__sil_tmpSIL_materialize_temp__n$5); [line 32, column 1]\n " color=yellow style=filled] "get_field_div0#return_struct#5765383981880135147.23dc82d8c29aaec22d9b9a68808820c3_1" -> "get_field_div0#return_struct#5765383981880135147.23dc82d8c29aaec22d9b9a68808820c3_4" ; @@ -60,7 +60,7 @@ digraph cfg { "get_field_div0#return_struct#5765383981880135147.23dc82d8c29aaec22d9b9a68808820c3_3" -> "get_field_div0#return_struct#5765383981880135147.23dc82d8c29aaec22d9b9a68808820c3_2" ; -"get_field_div0#return_struct#5765383981880135147.23dc82d8c29aaec22d9b9a68808820c3_4" [label="4: Call _fun_return_struct::X_skip \n n$6=_fun_return_struct::get(0:int,&0$?%__sil_tmpSIL_materialize_temp__n$4:return_struct::X*) [line 33, column 3]\n _=*&0$?%__sil_tmpSIL_materialize_temp__n$4:return_struct::X [line 33, column 3]\n n$8=_fun_return_struct::X_skip(&0$?%__sil_tmpSIL_materialize_temp__n$4:return_struct::X&) [line 33, column 3]\n " shape="box"] +"get_field_div0#return_struct#5765383981880135147.23dc82d8c29aaec22d9b9a68808820c3_4" [label="4: Call _fun_return_struct::X_skip \n n$7=_fun_return_struct::get(0:int,&0$?%__sil_tmpSIL_materialize_temp__n$5:return_struct::X*) [line 33, column 3]\n _=*&0$?%__sil_tmpSIL_materialize_temp__n$5:return_struct::X [line 33, column 3]\n n$9=_fun_return_struct::X_skip(&0$?%__sil_tmpSIL_materialize_temp__n$5:return_struct::X&) [line 33, column 3]\n " shape="box"] "get_field_div0#return_struct#5765383981880135147.23dc82d8c29aaec22d9b9a68808820c3_4" -> "get_field_div0#return_struct#5765383981880135147.23dc82d8c29aaec22d9b9a68808820c3_3" ; @@ -104,7 +104,7 @@ digraph cfg { "X#X#return_struct#{16980707005325791470}.5cc7c757bfe221e617030d485a90aa08_2" [label="2: Exit return_struct::X_X \n " color=yellow style=filled] -"X#X#return_struct#{16980707005325791470}.5cc7c757bfe221e617030d485a90aa08_3" [label="3: BinaryOperatorStmt: Assign \n n$0=*&this:return_struct::X* [line 16, column 9]\n *n$0.f:int=1 [line 16, column 9]\n " shape="box"] +"X#X#return_struct#{16980707005325791470}.5cc7c757bfe221e617030d485a90aa08_3" [label="3: BinaryOperatorStmt: Assign \n n$1=*&this:return_struct::X* [line 16, column 9]\n *n$1.f:int=1 [line 16, column 9]\n " shape="box"] "X#X#return_struct#{16980707005325791470}.5cc7c757bfe221e617030d485a90aa08_3" -> "X#X#return_struct#{16980707005325791470}.5cc7c757bfe221e617030d485a90aa08_2" ; @@ -115,7 +115,7 @@ digraph cfg { "X#X#return_struct#{2874542973664462157}.c7820661c77babcd49c610d7742e613f_2" [label="2: Exit return_struct::X_X \n " color=yellow style=filled] -"X#X#return_struct#{2874542973664462157}.c7820661c77babcd49c610d7742e613f_3" [label="3: BinaryOperatorStmt: Assign \n n$0=*&this:return_struct::X* [line 15, column 19]\n n$1=*&x:return_struct::X const & [line 15, column 23]\n n$2=*n$1.f:int [line 15, column 23]\n *n$0.f:int=n$2 [line 15, column 19]\n " shape="box"] +"X#X#return_struct#{2874542973664462157}.c7820661c77babcd49c610d7742e613f_3" [label="3: BinaryOperatorStmt: Assign \n n$1=*&this:return_struct::X* [line 15, column 19]\n n$2=*&x:return_struct::X const & [line 15, column 23]\n n$3=*n$2.f:int [line 15, column 23]\n *n$1.f:int=n$3 [line 15, column 19]\n " shape="box"] "X#X#return_struct#{2874542973664462157}.c7820661c77babcd49c610d7742e613f_3" -> "X#X#return_struct#{2874542973664462157}.c7820661c77babcd49c610d7742e613f_2" ; diff --git a/infer/tests/codetoanalyze/cpp/shared/types/struct.cpp.dot b/infer/tests/codetoanalyze/cpp/shared/types/struct.cpp.dot index 7affb25f0..39daf990b 100644 --- a/infer/tests/codetoanalyze/cpp/shared/types/struct.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/shared/types/struct.cpp.dot @@ -7,19 +7,19 @@ digraph cfg { "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_2" [label="2: Exit test \n " color=yellow style=filled] -"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_3" [label="3: BinaryOperatorStmt: Assign \n n$0=*&xc:X_class* [line 29, column 3]\n *n$0.b:int=20 [line 29, column 3]\n " shape="box"] +"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_3" [label="3: BinaryOperatorStmt: Assign \n n$1=*&xc:X_class* [line 29, column 3]\n *n$1.b:int=20 [line 29, column 3]\n " shape="box"] "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_3" -> "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_2" ; -"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_4" [label="4: BinaryOperatorStmt: Assign \n n$1=*&xc:X_class* [line 28, column 3]\n *n$1.a:int=10 [line 28, column 3]\n " shape="box"] +"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_4" [label="4: BinaryOperatorStmt: Assign \n n$2=*&xc:X_class* [line 28, column 3]\n *n$2.a:int=10 [line 28, column 3]\n " shape="box"] "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_4" -> "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_3" ; -"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_5" [label="5: BinaryOperatorStmt: Assign \n n$2=*&xs:X_struct* [line 25, column 3]\n *n$2.b:int=20 [line 25, column 3]\n " shape="box"] +"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_5" [label="5: BinaryOperatorStmt: Assign \n n$3=*&xs:X_struct* [line 25, column 3]\n *n$3.b:int=20 [line 25, column 3]\n " shape="box"] "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_5" -> "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_4" ; -"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_6" [label="6: BinaryOperatorStmt: Assign \n n$3=*&xs:X_struct* [line 24, column 3]\n *n$3.a:int=10 [line 24, column 3]\n " shape="box"] +"test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_6" [label="6: BinaryOperatorStmt: Assign \n n$4=*&xs:X_struct* [line 24, column 3]\n *n$4.a:int=10 [line 24, column 3]\n " shape="box"] "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_6" -> "test#18241244337164948030.afc14f193ad97442f67ac7183be789bc_5" ; diff --git a/infer/tests/codetoanalyze/cpp/shared/types/struct_forward_declare.cpp.dot b/infer/tests/codetoanalyze/cpp/shared/types/struct_forward_declare.cpp.dot index 50e50be40..1449f55f9 100644 --- a/infer/tests/codetoanalyze/cpp/shared/types/struct_forward_declare.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/shared/types/struct_forward_declare.cpp.dot @@ -15,11 +15,11 @@ digraph cfg { "X_Y_div0#struct_forward_declare#18042232259689408087.5a34dbeba09cf8550874dbfc508af917_4" -> "X_Y_div0#struct_forward_declare#18042232259689408087.5a34dbeba09cf8550874dbfc508af917_3" ; -"X_Y_div0#struct_forward_declare#18042232259689408087.5a34dbeba09cf8550874dbfc508af917_5" [label="5: Prune (true branch, if) \n n$2=*&x.y:struct_forward_declare::Y* [line 51, column 7]\n PRUNE(n$2, true); [line 51, column 7]\n " shape="invhouse"] +"X_Y_div0#struct_forward_declare#18042232259689408087.5a34dbeba09cf8550874dbfc508af917_5" [label="5: Prune (true branch, if) \n n$3=*&x.y:struct_forward_declare::Y* [line 51, column 7]\n PRUNE(n$3, true); [line 51, column 7]\n " shape="invhouse"] "X_Y_div0#struct_forward_declare#18042232259689408087.5a34dbeba09cf8550874dbfc508af917_5" -> "X_Y_div0#struct_forward_declare#18042232259689408087.5a34dbeba09cf8550874dbfc508af917_7" ; -"X_Y_div0#struct_forward_declare#18042232259689408087.5a34dbeba09cf8550874dbfc508af917_6" [label="6: Prune (false branch, if) \n n$2=*&x.y:struct_forward_declare::Y* [line 51, column 7]\n PRUNE(!n$2, false); [line 51, column 7]\n " shape="invhouse"] +"X_Y_div0#struct_forward_declare#18042232259689408087.5a34dbeba09cf8550874dbfc508af917_6" [label="6: Prune (false branch, if) \n n$3=*&x.y:struct_forward_declare::Y* [line 51, column 7]\n PRUNE(!n$3, false); [line 51, column 7]\n " shape="invhouse"] "X_Y_div0#struct_forward_declare#18042232259689408087.5a34dbeba09cf8550874dbfc508af917_6" -> "X_Y_div0#struct_forward_declare#18042232259689408087.5a34dbeba09cf8550874dbfc508af917_4" ; @@ -36,7 +36,7 @@ digraph cfg { "X_Y_div0#struct_forward_declare#18042232259689408087.5a34dbeba09cf8550874dbfc508af917_9" -> "X_Y_div0#struct_forward_declare#18042232259689408087.5a34dbeba09cf8550874dbfc508af917_8" ; -"X_Y_div0#struct_forward_declare#18042232259689408087.5a34dbeba09cf8550874dbfc508af917_10" [label="10: DeclStmt \n n$3=_fun_struct_forward_declare::X_X(&x:struct_forward_declare::X*) [line 48, column 5]\n " shape="box"] +"X_Y_div0#struct_forward_declare#18042232259689408087.5a34dbeba09cf8550874dbfc508af917_10" [label="10: DeclStmt \n n$7=_fun_struct_forward_declare::X_X(&x:struct_forward_declare::X*) [line 48, column 5]\n " shape="box"] "X_Y_div0#struct_forward_declare#18042232259689408087.5a34dbeba09cf8550874dbfc508af917_10" -> "X_Y_div0#struct_forward_declare#18042232259689408087.5a34dbeba09cf8550874dbfc508af917_9" ; @@ -55,7 +55,7 @@ digraph cfg { "X_div0#struct_forward_declare#14943490796844086809.e860fd7462df24ba7720802867a02ac2_4" -> "X_div0#struct_forward_declare#14943490796844086809.e860fd7462df24ba7720802867a02ac2_3" ; -"X_div0#struct_forward_declare#14943490796844086809.e860fd7462df24ba7720802867a02ac2_5" [label="5: DeclStmt \n n$2=_fun_struct_forward_declare::X_X(&x:struct_forward_declare::X*) [line 37, column 5]\n " shape="box"] +"X_div0#struct_forward_declare#14943490796844086809.e860fd7462df24ba7720802867a02ac2_5" [label="5: DeclStmt \n n$3=_fun_struct_forward_declare::X_X(&x:struct_forward_declare::X*) [line 37, column 5]\n " shape="box"] "X_div0#struct_forward_declare#14943490796844086809.e860fd7462df24ba7720802867a02ac2_5" -> "X_div0#struct_forward_declare#14943490796844086809.e860fd7462df24ba7720802867a02ac2_4" ; @@ -70,7 +70,7 @@ digraph cfg { "X_ptr_div0#struct_forward_declare#16748991602723853091.556e298a3b72ac8fb2b17fe94b42ea70_3" -> "X_ptr_div0#struct_forward_declare#16748991602723853091.556e298a3b72ac8fb2b17fe94b42ea70_2" ; -"X_ptr_div0#struct_forward_declare#16748991602723853091.556e298a3b72ac8fb2b17fe94b42ea70_4" [label="4: BinaryOperatorStmt: Assign \n n$3=*&x:struct_forward_declare::X* [line 43, column 3]\n *n$3.f:int=0 [line 43, column 3]\n " shape="box"] +"X_ptr_div0#struct_forward_declare#16748991602723853091.556e298a3b72ac8fb2b17fe94b42ea70_4" [label="4: BinaryOperatorStmt: Assign \n n$4=*&x:struct_forward_declare::X* [line 43, column 3]\n *n$4.f:int=0 [line 43, column 3]\n " shape="box"] "X_ptr_div0#struct_forward_declare#16748991602723853091.556e298a3b72ac8fb2b17fe94b42ea70_4" -> "X_ptr_div0#struct_forward_declare#16748991602723853091.556e298a3b72ac8fb2b17fe94b42ea70_3" ; @@ -89,7 +89,7 @@ digraph cfg { "Z_div0#struct_forward_declare#1627203008264837059.744970cb2a0863ceafbc26504cb09faf_4" -> "Z_div0#struct_forward_declare#1627203008264837059.744970cb2a0863ceafbc26504cb09faf_3" ; -"Z_div0#struct_forward_declare#1627203008264837059.744970cb2a0863ceafbc26504cb09faf_5" [label="5: DeclStmt \n n$2=_fun_struct_forward_declare::Z_Z(&z:struct_forward_declare::Z*) [line 58, column 5]\n " shape="box"] +"Z_div0#struct_forward_declare#1627203008264837059.744970cb2a0863ceafbc26504cb09faf_5" [label="5: DeclStmt \n n$3=_fun_struct_forward_declare::Z_Z(&z:struct_forward_declare::Z*) [line 58, column 5]\n " shape="box"] "Z_div0#struct_forward_declare#1627203008264837059.744970cb2a0863ceafbc26504cb09faf_5" -> "Z_div0#struct_forward_declare#1627203008264837059.744970cb2a0863ceafbc26504cb09faf_4" ; @@ -104,7 +104,7 @@ digraph cfg { "Z_ptr_div0#struct_forward_declare#18058661690516691263.44cb0d131c1ef6157feb3014da966171_3" -> "Z_ptr_div0#struct_forward_declare#18058661690516691263.44cb0d131c1ef6157feb3014da966171_2" ; -"Z_ptr_div0#struct_forward_declare#18058661690516691263.44cb0d131c1ef6157feb3014da966171_4" [label="4: BinaryOperatorStmt: Assign \n n$3=*&z:struct_forward_declare::Z* [line 67, column 3]\n *n$3.f:int=0 [line 67, column 3]\n " shape="box"] +"Z_ptr_div0#struct_forward_declare#18058661690516691263.44cb0d131c1ef6157feb3014da966171_4" [label="4: BinaryOperatorStmt: Assign \n n$4=*&z:struct_forward_declare::Z* [line 67, column 3]\n *n$4.f:int=0 [line 67, column 3]\n " shape="box"] "Z_ptr_div0#struct_forward_declare#18058661690516691263.44cb0d131c1ef6157feb3014da966171_4" -> "Z_ptr_div0#struct_forward_declare#18058661690516691263.44cb0d131c1ef6157feb3014da966171_3" ; @@ -115,7 +115,7 @@ digraph cfg { "fun_with_Z#struct_forward_declare#10740368644462176169.5b35208973ee3067771f8ce79f1cde31_2" [label="2: Exit struct_forward_declare::fun_with_Z \n " color=yellow style=filled] -"fun_with_Z#struct_forward_declare#10740368644462176169.5b35208973ee3067771f8ce79f1cde31_3" [label="3: DeclStmt \n n$0=*&z1:struct_forward_declare::Z* [line 26, column 34]\n *&z2:struct_forward_declare::Z*=n$0 [line 26, column 26]\n " shape="box"] +"fun_with_Z#struct_forward_declare#10740368644462176169.5b35208973ee3067771f8ce79f1cde31_3" [label="3: DeclStmt \n n$1=*&z1:struct_forward_declare::Z* [line 26, column 34]\n *&z2:struct_forward_declare::Z*=n$1 [line 26, column 26]\n " shape="box"] "fun_with_Z#struct_forward_declare#10740368644462176169.5b35208973ee3067771f8ce79f1cde31_3" -> "fun_with_Z#struct_forward_declare#10740368644462176169.5b35208973ee3067771f8ce79f1cde31_2" ; diff --git a/infer/tests/codetoanalyze/cpp/shared/types/struct_pass_by_value.cpp.dot b/infer/tests/codetoanalyze/cpp/shared/types/struct_pass_by_value.cpp.dot index f280cf9a4..6d6041bd1 100644 --- a/infer/tests/codetoanalyze/cpp/shared/types/struct_pass_by_value.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/shared/types/struct_pass_by_value.cpp.dot @@ -11,11 +11,11 @@ digraph cfg { "field_div0#struct_pass_by_value#10739265731582012189.309f906a63458fd1d3c6651d011f1020_3" -> "field_div0#struct_pass_by_value#10739265731582012189.309f906a63458fd1d3c6651d011f1020_2" ; -"field_div0#struct_pass_by_value#10739265731582012189.309f906a63458fd1d3c6651d011f1020_4" [label="4: DeclStmt \n n$5=_fun_struct_pass_by_value::Y_Y(&y:struct_pass_by_value::Y*,&x:struct_pass_by_value::X&) [line 43, column 5]\n " shape="box"] +"field_div0#struct_pass_by_value#10739265731582012189.309f906a63458fd1d3c6651d011f1020_4" [label="4: DeclStmt \n n$6=_fun_struct_pass_by_value::Y_Y(&y:struct_pass_by_value::Y*,&x:struct_pass_by_value::X&) [line 43, column 5]\n " shape="box"] "field_div0#struct_pass_by_value#10739265731582012189.309f906a63458fd1d3c6651d011f1020_4" -> "field_div0#struct_pass_by_value#10739265731582012189.309f906a63458fd1d3c6651d011f1020_3" ; -"field_div0#struct_pass_by_value#10739265731582012189.309f906a63458fd1d3c6651d011f1020_5" [label="5: DeclStmt \n n$6=_fun_struct_pass_by_value::X_X(&x:struct_pass_by_value::X*,0:int) [line 42, column 5]\n " shape="box"] +"field_div0#struct_pass_by_value#10739265731582012189.309f906a63458fd1d3c6651d011f1020_5" [label="5: DeclStmt \n n$7=_fun_struct_pass_by_value::X_X(&x:struct_pass_by_value::X*,0:int) [line 42, column 5]\n " shape="box"] "field_div0#struct_pass_by_value#10739265731582012189.309f906a63458fd1d3c6651d011f1020_5" -> "field_div0#struct_pass_by_value#10739265731582012189.309f906a63458fd1d3c6651d011f1020_4" ; @@ -30,7 +30,7 @@ digraph cfg { "get_f#struct_pass_by_value#16901161791851138670.e181cdd22ed5b9b12bfb0f726d36256b_3" -> "get_f#struct_pass_by_value#16901161791851138670.e181cdd22ed5b9b12bfb0f726d36256b_2" ; -"param_get_copied_div0#struct_pass_by_value#5422600122206315156.a9ecc5bcf15beb35ee10b7d5c038ad8e_1" [label="1: Start struct_pass_by_value::param_get_copied_div0\nFormals: \nLocals: 0$?%__sil_tmp__temp_construct_n$3:struct_pass_by_value::X x:struct_pass_by_value::X \n DECLARE_LOCALS(&return,&0$?%__sil_tmp__temp_construct_n$3,&x); [line 47, column 1]\n " color=yellow style=filled] +"param_get_copied_div0#struct_pass_by_value#5422600122206315156.a9ecc5bcf15beb35ee10b7d5c038ad8e_1" [label="1: Start struct_pass_by_value::param_get_copied_div0\nFormals: \nLocals: 0$?%__sil_tmp__temp_construct_n$4:struct_pass_by_value::X x:struct_pass_by_value::X \n DECLARE_LOCALS(&return,&0$?%__sil_tmp__temp_construct_n$4,&x); [line 47, column 1]\n " color=yellow style=filled] "param_get_copied_div0#struct_pass_by_value#5422600122206315156.a9ecc5bcf15beb35ee10b7d5c038ad8e_1" -> "param_get_copied_div0#struct_pass_by_value#5422600122206315156.a9ecc5bcf15beb35ee10b7d5c038ad8e_5" ; @@ -41,15 +41,15 @@ digraph cfg { "param_get_copied_div0#struct_pass_by_value#5422600122206315156.a9ecc5bcf15beb35ee10b7d5c038ad8e_3" -> "param_get_copied_div0#struct_pass_by_value#5422600122206315156.a9ecc5bcf15beb35ee10b7d5c038ad8e_2" ; -"param_get_copied_div0#struct_pass_by_value#5422600122206315156.a9ecc5bcf15beb35ee10b7d5c038ad8e_4" [label="4: Call _fun_struct_pass_by_value::set_f \n n$4=_fun_struct_pass_by_value::X_X(&0$?%__sil_tmp__temp_construct_n$3:struct_pass_by_value::X*,&x:struct_pass_by_value::X&) [line 49, column 9]\n n$5=_fun_struct_pass_by_value::set_f(&0$?%__sil_tmp__temp_construct_n$3:struct_pass_by_value::X,1:int) [line 49, column 3]\n " shape="box"] +"param_get_copied_div0#struct_pass_by_value#5422600122206315156.a9ecc5bcf15beb35ee10b7d5c038ad8e_4" [label="4: Call _fun_struct_pass_by_value::set_f \n n$5=_fun_struct_pass_by_value::X_X(&0$?%__sil_tmp__temp_construct_n$4:struct_pass_by_value::X*,&x:struct_pass_by_value::X&) [line 49, column 9]\n n$6=_fun_struct_pass_by_value::set_f(&0$?%__sil_tmp__temp_construct_n$4:struct_pass_by_value::X,1:int) [line 49, column 3]\n " shape="box"] "param_get_copied_div0#struct_pass_by_value#5422600122206315156.a9ecc5bcf15beb35ee10b7d5c038ad8e_4" -> "param_get_copied_div0#struct_pass_by_value#5422600122206315156.a9ecc5bcf15beb35ee10b7d5c038ad8e_3" ; -"param_get_copied_div0#struct_pass_by_value#5422600122206315156.a9ecc5bcf15beb35ee10b7d5c038ad8e_5" [label="5: DeclStmt \n n$6=_fun_struct_pass_by_value::X_X(&x:struct_pass_by_value::X*,0:int) [line 48, column 5]\n " shape="box"] +"param_get_copied_div0#struct_pass_by_value#5422600122206315156.a9ecc5bcf15beb35ee10b7d5c038ad8e_5" [label="5: DeclStmt \n n$7=_fun_struct_pass_by_value::X_X(&x:struct_pass_by_value::X*,0:int) [line 48, column 5]\n " shape="box"] "param_get_copied_div0#struct_pass_by_value#5422600122206315156.a9ecc5bcf15beb35ee10b7d5c038ad8e_5" -> "param_get_copied_div0#struct_pass_by_value#5422600122206315156.a9ecc5bcf15beb35ee10b7d5c038ad8e_4" ; -"param_get_copied_div1#struct_pass_by_value#4678038335560999331.58ffd03114defd7dfa2ce1d8e7c84b46_1" [label="1: Start struct_pass_by_value::param_get_copied_div1\nFormals: \nLocals: 0$?%__sil_tmp__temp_construct_n$3:struct_pass_by_value::X x:struct_pass_by_value::X \n DECLARE_LOCALS(&return,&0$?%__sil_tmp__temp_construct_n$3,&x); [line 53, column 1]\n " color=yellow style=filled] +"param_get_copied_div1#struct_pass_by_value#4678038335560999331.58ffd03114defd7dfa2ce1d8e7c84b46_1" [label="1: Start struct_pass_by_value::param_get_copied_div1\nFormals: \nLocals: 0$?%__sil_tmp__temp_construct_n$4:struct_pass_by_value::X x:struct_pass_by_value::X \n DECLARE_LOCALS(&return,&0$?%__sil_tmp__temp_construct_n$4,&x); [line 53, column 1]\n " color=yellow style=filled] "param_get_copied_div1#struct_pass_by_value#4678038335560999331.58ffd03114defd7dfa2ce1d8e7c84b46_1" -> "param_get_copied_div1#struct_pass_by_value#4678038335560999331.58ffd03114defd7dfa2ce1d8e7c84b46_5" ; @@ -60,11 +60,11 @@ digraph cfg { "param_get_copied_div1#struct_pass_by_value#4678038335560999331.58ffd03114defd7dfa2ce1d8e7c84b46_3" -> "param_get_copied_div1#struct_pass_by_value#4678038335560999331.58ffd03114defd7dfa2ce1d8e7c84b46_2" ; -"param_get_copied_div1#struct_pass_by_value#4678038335560999331.58ffd03114defd7dfa2ce1d8e7c84b46_4" [label="4: Call _fun_struct_pass_by_value::set_f \n n$4=_fun_struct_pass_by_value::X_X(&0$?%__sil_tmp__temp_construct_n$3:struct_pass_by_value::X*,&x:struct_pass_by_value::X&) [line 55, column 9]\n n$5=_fun_struct_pass_by_value::set_f(&0$?%__sil_tmp__temp_construct_n$3:struct_pass_by_value::X,0:int) [line 55, column 3]\n " shape="box"] +"param_get_copied_div1#struct_pass_by_value#4678038335560999331.58ffd03114defd7dfa2ce1d8e7c84b46_4" [label="4: Call _fun_struct_pass_by_value::set_f \n n$5=_fun_struct_pass_by_value::X_X(&0$?%__sil_tmp__temp_construct_n$4:struct_pass_by_value::X*,&x:struct_pass_by_value::X&) [line 55, column 9]\n n$6=_fun_struct_pass_by_value::set_f(&0$?%__sil_tmp__temp_construct_n$4:struct_pass_by_value::X,0:int) [line 55, column 3]\n " shape="box"] "param_get_copied_div1#struct_pass_by_value#4678038335560999331.58ffd03114defd7dfa2ce1d8e7c84b46_4" -> "param_get_copied_div1#struct_pass_by_value#4678038335560999331.58ffd03114defd7dfa2ce1d8e7c84b46_3" ; -"param_get_copied_div1#struct_pass_by_value#4678038335560999331.58ffd03114defd7dfa2ce1d8e7c84b46_5" [label="5: DeclStmt \n n$6=_fun_struct_pass_by_value::X_X(&x:struct_pass_by_value::X*,1:int) [line 54, column 5]\n " shape="box"] +"param_get_copied_div1#struct_pass_by_value#4678038335560999331.58ffd03114defd7dfa2ce1d8e7c84b46_5" [label="5: DeclStmt \n n$7=_fun_struct_pass_by_value::X_X(&x:struct_pass_by_value::X*,1:int) [line 54, column 5]\n " shape="box"] "param_get_copied_div1#struct_pass_by_value#4678038335560999331.58ffd03114defd7dfa2ce1d8e7c84b46_5" -> "param_get_copied_div1#struct_pass_by_value#4678038335560999331.58ffd03114defd7dfa2ce1d8e7c84b46_4" ; @@ -75,7 +75,7 @@ digraph cfg { "set_f#struct_pass_by_value#449985082730240817.3244dc0de9a72d4ec2d03e236d94d06e_2" [label="2: Exit struct_pass_by_value::set_f \n " color=yellow style=filled] -"set_f#struct_pass_by_value#449985082730240817.3244dc0de9a72d4ec2d03e236d94d06e_3" [label="3: BinaryOperatorStmt: Assign \n n$0=*&val:struct_pass_by_value::X& [line 25, column 28]\n n$1=*&f:int [line 25, column 36]\n *n$0.f:int=n$1 [line 25, column 28]\n " shape="box"] +"set_f#struct_pass_by_value#449985082730240817.3244dc0de9a72d4ec2d03e236d94d06e_3" [label="3: BinaryOperatorStmt: Assign \n n$1=*&val:struct_pass_by_value::X& [line 25, column 28]\n n$2=*&f:int [line 25, column 36]\n *n$1.f:int=n$2 [line 25, column 28]\n " shape="box"] "set_f#struct_pass_by_value#449985082730240817.3244dc0de9a72d4ec2d03e236d94d06e_3" -> "set_f#struct_pass_by_value#449985082730240817.3244dc0de9a72d4ec2d03e236d94d06e_2" ; @@ -112,7 +112,7 @@ digraph cfg { "var_div0#struct_pass_by_value#10764880494979445665.44da929aedf0cdc1afaea064cb399051_3" -> "var_div0#struct_pass_by_value#10764880494979445665.44da929aedf0cdc1afaea064cb399051_2" ; -"var_div0#struct_pass_by_value#10764880494979445665.44da929aedf0cdc1afaea064cb399051_4" [label="4: DeclStmt \n n$5=_fun_struct_pass_by_value::X_X(&x:struct_pass_by_value::X*,0:int) [line 28, column 5]\n " shape="box"] +"var_div0#struct_pass_by_value#10764880494979445665.44da929aedf0cdc1afaea064cb399051_4" [label="4: DeclStmt \n n$6=_fun_struct_pass_by_value::X_X(&x:struct_pass_by_value::X*,0:int) [line 28, column 5]\n " shape="box"] "var_div0#struct_pass_by_value#10764880494979445665.44da929aedf0cdc1afaea064cb399051_4" -> "var_div0#struct_pass_by_value#10764880494979445665.44da929aedf0cdc1afaea064cb399051_3" ; @@ -127,7 +127,7 @@ digraph cfg { "var_div1#struct_pass_by_value#11501824865066029482.b667f3a6d8153cf4e571282bd064fc22_3" -> "var_div1#struct_pass_by_value#11501824865066029482.b667f3a6d8153cf4e571282bd064fc22_2" ; -"var_div1#struct_pass_by_value#11501824865066029482.b667f3a6d8153cf4e571282bd064fc22_4" [label="4: DeclStmt \n n$5=_fun_struct_pass_by_value::X_X(&x:struct_pass_by_value::X*,1:int) [line 33, column 5]\n " shape="box"] +"var_div1#struct_pass_by_value#11501824865066029482.b667f3a6d8153cf4e571282bd064fc22_4" [label="4: DeclStmt \n n$6=_fun_struct_pass_by_value::X_X(&x:struct_pass_by_value::X*,1:int) [line 33, column 5]\n " shape="box"] "var_div1#struct_pass_by_value#11501824865066029482.b667f3a6d8153cf4e571282bd064fc22_4" -> "var_div1#struct_pass_by_value#11501824865066029482.b667f3a6d8153cf4e571282bd064fc22_3" ; @@ -138,7 +138,7 @@ digraph cfg { "X#X#struct_pass_by_value#{11203369373673859396}.cf8c3ea98f014a538f7f90e4593e75eb_2" [label="2: Exit struct_pass_by_value::X_X \n " color=yellow style=filled] -"X#X#struct_pass_by_value#{11203369373673859396}.cf8c3ea98f014a538f7f90e4593e75eb_3" [label="3: Constructor Init \n n$0=*&this:struct_pass_by_value::X* [line 14, column 14]\n n$1=*&f:int [line 14, column 16]\n *n$0.f:int=n$1 [line 14, column 14]\n " shape="box"] +"X#X#struct_pass_by_value#{11203369373673859396}.cf8c3ea98f014a538f7f90e4593e75eb_3" [label="3: Constructor Init \n n$2=*&this:struct_pass_by_value::X* [line 14, column 14]\n n$3=*&f:int [line 14, column 16]\n *n$2.f:int=n$3 [line 14, column 14]\n " shape="box"] "X#X#struct_pass_by_value#{11203369373673859396}.cf8c3ea98f014a538f7f90e4593e75eb_3" -> "X#X#struct_pass_by_value#{11203369373673859396}.cf8c3ea98f014a538f7f90e4593e75eb_2" ; @@ -149,7 +149,7 @@ digraph cfg { "X#X#struct_pass_by_value#{8495470270182220238|constexpr}.ea3fe0be489de1d7a9283f9ea7d8899f_2" [label="2: Exit struct_pass_by_value::X_X \n " color=yellow style=filled] -"X#X#struct_pass_by_value#{8495470270182220238|constexpr}.ea3fe0be489de1d7a9283f9ea7d8899f_3" [label="3: Constructor Init \n n$0=*&this:struct_pass_by_value::X* [line 12, column 8]\n n$1=*&__param_0:struct_pass_by_value::X& [line 12, column 8]\n n$2=*n$1.f:int [line 12, column 8]\n *n$0.f:int=n$2 [line 12, column 8]\n " shape="box"] +"X#X#struct_pass_by_value#{8495470270182220238|constexpr}.ea3fe0be489de1d7a9283f9ea7d8899f_3" [label="3: Constructor Init \n n$2=*&this:struct_pass_by_value::X* [line 12, column 8]\n n$3=*&__param_0:struct_pass_by_value::X& [line 12, column 8]\n n$4=*n$3.f:int [line 12, column 8]\n *n$2.f:int=n$4 [line 12, column 8]\n " shape="box"] "X#X#struct_pass_by_value#{8495470270182220238|constexpr}.ea3fe0be489de1d7a9283f9ea7d8899f_3" -> "X#X#struct_pass_by_value#{8495470270182220238|constexpr}.ea3fe0be489de1d7a9283f9ea7d8899f_2" ; @@ -160,7 +160,7 @@ digraph cfg { "X#X#struct_pass_by_value#{9755652315089766298|constexpr}.81acc1c263466d84e0cc912cd1d47b28_2" [label="2: Exit struct_pass_by_value::X_X \n " color=yellow style=filled] -"X#X#struct_pass_by_value#{9755652315089766298|constexpr}.81acc1c263466d84e0cc912cd1d47b28_3" [label="3: Constructor Init \n n$0=*&this:struct_pass_by_value::X* [line 12, column 8]\n n$1=*&__param_0:struct_pass_by_value::X const & [line 12, column 8]\n n$2=*n$1.f:int [line 12, column 8]\n *n$0.f:int=n$2 [line 12, column 8]\n " shape="box"] +"X#X#struct_pass_by_value#{9755652315089766298|constexpr}.81acc1c263466d84e0cc912cd1d47b28_3" [label="3: Constructor Init \n n$2=*&this:struct_pass_by_value::X* [line 12, column 8]\n n$3=*&__param_0:struct_pass_by_value::X const & [line 12, column 8]\n n$4=*n$3.f:int [line 12, column 8]\n *n$2.f:int=n$4 [line 12, column 8]\n " shape="box"] "X#X#struct_pass_by_value#{9755652315089766298|constexpr}.81acc1c263466d84e0cc912cd1d47b28_3" -> "X#X#struct_pass_by_value#{9755652315089766298|constexpr}.81acc1c263466d84e0cc912cd1d47b28_2" ; @@ -171,7 +171,7 @@ digraph cfg { "Y#Y#struct_pass_by_value#{2591422873810003675}.4cc6400ed3a8bedc19c95b6ea1876631_2" [label="2: Exit struct_pass_by_value::Y_Y \n " color=yellow style=filled] -"Y#Y#struct_pass_by_value#{2591422873810003675}.4cc6400ed3a8bedc19c95b6ea1876631_3" [label="3: Constructor Init \n n$0=*&this:struct_pass_by_value::Y* [line 18, column 19]\n n$1=*&x:struct_pass_by_value::X const & [line 18, column 21]\n n$2=_fun_struct_pass_by_value::X_X(n$0.x:struct_pass_by_value::X*,n$1:struct_pass_by_value::X const &) [line 18, column 19]\n " shape="box"] +"Y#Y#struct_pass_by_value#{2591422873810003675}.4cc6400ed3a8bedc19c95b6ea1876631_3" [label="3: Constructor Init \n n$2=*&this:struct_pass_by_value::Y* [line 18, column 19]\n n$3=*&x:struct_pass_by_value::X const & [line 18, column 21]\n n$4=_fun_struct_pass_by_value::X_X(n$2.x:struct_pass_by_value::X*,n$3:struct_pass_by_value::X const &) [line 18, column 19]\n " shape="box"] "Y#Y#struct_pass_by_value#{2591422873810003675}.4cc6400ed3a8bedc19c95b6ea1876631_3" -> "Y#Y#struct_pass_by_value#{2591422873810003675}.4cc6400ed3a8bedc19c95b6ea1876631_2" ; diff --git a/infer/tests/codetoanalyze/objc/frontend/block/retain_cycle.m.dot b/infer/tests/codetoanalyze/objc/frontend/block/retain_cycle.m.dot index 346ab77e8..9eefe6a4d 100644 --- a/infer/tests/codetoanalyze/objc/frontend/block/retain_cycle.m.dot +++ b/infer/tests/codetoanalyze/objc/frontend/block/retain_cycle.m.dot @@ -41,7 +41,7 @@ digraph cfg { "objc_blockA_capture_1.6fdcfe58244de8603cec62dad07f2ae4_2" [label="2: Exit objc_blockA_capture_1 \n " color=yellow style=filled] -"objc_blockA_capture_1.6fdcfe58244de8603cec62dad07f2ae4_3" [label="3: BinaryOperatorStmt: Assign \n n$3=*&self:A* [line 48, column 5]\n n$4=*&d:D* [line 48, column 13]\n *n$3._data:D*=n$4 [line 48, column 5]\n " shape="box"] +"objc_blockA_capture_1.6fdcfe58244de8603cec62dad07f2ae4_3" [label="3: BinaryOperatorStmt: Assign \n n$1=*&self:A* [line 48, column 5]\n n$2=*&d:D* [line 48, column 13]\n *n$1._data:D*=n$2 [line 48, column 5]\n " shape="box"] "objc_blockA_capture_1.6fdcfe58244de8603cec62dad07f2ae4_3" -> "objc_blockA_capture_1.6fdcfe58244de8603cec62dad07f2ae4_2" ; @@ -52,7 +52,7 @@ digraph cfg { "capture#A#instance.d411336575e4bf632a1828f5f5979726_2" [label="2: Exit A_capture \n " color=yellow style=filled] -"capture#A#instance.d411336575e4bf632a1828f5f5979726_3" [label="3: Message Call: sHandler: \n n$0=*&self:A* [line 47, column 4]\n n$1=*n$0._b:B* [line 47, column 4]\n n$2=*&self:A* [line 47, column 16]\n n$5=_fun_B_sHandler:(n$1:B*,(_fun_objc_blockA_capture_1,(n$2 &self:A*)):_fn_(*)) virtual block_params [line 47, column 3]\n " shape="box"] +"capture#A#instance.d411336575e4bf632a1828f5f5979726_3" [label="3: Message Call: sHandler: \n n$3=*&self:A* [line 47, column 4]\n n$4=*n$3._b:B* [line 47, column 4]\n n$0=*&self:A* [line 47, column 16]\n n$5=_fun_B_sHandler:(n$4:B*,(_fun_objc_blockA_capture_1,(n$0 &self:A*)):_fn_(*)) virtual block_params [line 47, column 3]\n " shape="box"] "capture#A#instance.d411336575e4bf632a1828f5f5979726_3" -> "capture#A#instance.d411336575e4bf632a1828f5f5979726_2" ; diff --git a/infer/tests/codetoanalyze/objc/frontend/boxing/Boxing.m.dot b/infer/tests/codetoanalyze/objc/frontend/boxing/Boxing.m.dot index adbe4bdbc..4e5ca8d5a 100644 --- a/infer/tests/codetoanalyze/objc/frontend/boxing/Boxing.m.dot +++ b/infer/tests/codetoanalyze/objc/frontend/boxing/Boxing.m.dot @@ -90,11 +90,11 @@ digraph cfg { "getS#Boxing#instance.97ccd331527b54376eb9b2b822cb25a3_2" [label="2: Exit Boxing_getS \n " color=yellow style=filled] -"getS#Boxing#instance.97ccd331527b54376eb9b2b822cb25a3_3" [label="3: Return Stmt \n n$14=_fun_NSString_stringWithUTF8String:(\"hello world\":char const *) [line 43, column 10]\n *&return:NSString*=n$14 [line 43, column 3]\n " shape="box"] +"getS#Boxing#instance.97ccd331527b54376eb9b2b822cb25a3_3" [label="3: Return Stmt \n n$15=_fun_NSString_stringWithUTF8String:(\"hello world\":char const *) [line 43, column 10]\n *&return:NSString*=n$15 [line 43, column 3]\n " shape="box"] "getS#Boxing#instance.97ccd331527b54376eb9b2b822cb25a3_3" -> "getS#Boxing#instance.97ccd331527b54376eb9b2b822cb25a3_2" ; -"getS#Boxing#instance.97ccd331527b54376eb9b2b822cb25a3_4" [label="4: DeclStmt \n n$15=_fun_strdup(\"hello world\":char const *) [line 42, column 19]\n n$16=_fun_NSString_stringWithUTF8String:(n$15:char const *) [line 42, column 17]\n *&s:NSString*=n$16 [line 42, column 3]\n " shape="box"] +"getS#Boxing#instance.97ccd331527b54376eb9b2b822cb25a3_4" [label="4: DeclStmt \n n$16=_fun_strdup(\"hello world\":char const *) [line 42, column 19]\n n$17=_fun_NSString_stringWithUTF8String:(n$16:char const *) [line 42, column 17]\n *&s:NSString*=n$17 [line 42, column 3]\n " shape="box"] "getS#Boxing#instance.97ccd331527b54376eb9b2b822cb25a3_4" -> "getS#Boxing#instance.97ccd331527b54376eb9b2b822cb25a3_3" ; diff --git a/infer/tests/codetoanalyze/objc/frontend/boxing/array.m.dot b/infer/tests/codetoanalyze/objc/frontend/boxing/array.m.dot index 6b605c876..b48f7bcf0 100644 --- a/infer/tests/codetoanalyze/objc/frontend/boxing/array.m.dot +++ b/infer/tests/codetoanalyze/objc/frontend/boxing/array.m.dot @@ -36,15 +36,15 @@ digraph cfg { "main.fad58de7366495db4650cfefac2fcd61_9" -> "main.fad58de7366495db4650cfefac2fcd61_8" ; -"main.fad58de7366495db4650cfefac2fcd61_10" [label="10: BinaryOperatorStmt: Assign \n n$6=*&germanCars:NSArray* [line 26, column 26]\n n$7=_fun_NSArray_nextObject(n$6:NSArray*) virtual [line 26, column 3]\n *&item:NSString*=n$7 [line 26, column 3]\n " shape="box"] +"main.fad58de7366495db4650cfefac2fcd61_10" [label="10: BinaryOperatorStmt: Assign \n n$7=*&germanCars:NSArray* [line 26, column 26]\n n$8=_fun_NSArray_nextObject(n$7:NSArray*) virtual [line 26, column 3]\n *&item:NSString*=n$8 [line 26, column 3]\n " shape="box"] "main.fad58de7366495db4650cfefac2fcd61_10" -> "main.fad58de7366495db4650cfefac2fcd61_4" ; -"main.fad58de7366495db4650cfefac2fcd61_11" [label="11: BinaryOperatorStmt: Assign \n n$8=*&germanCars:NSArray* [line 24, column 7]\n n$9=_fun_NSArray_objectAtIndexedSubscript:(n$8:NSArray*,3:unsigned long) virtual [line 24, column 7]\n *&s:NSString*=n$9 [line 24, column 3]\n " shape="box"] +"main.fad58de7366495db4650cfefac2fcd61_11" [label="11: BinaryOperatorStmt: Assign \n n$9=*&germanCars:NSArray* [line 24, column 7]\n n$10=_fun_NSArray_objectAtIndexedSubscript:(n$9:NSArray*,3:unsigned long) virtual [line 24, column 7]\n *&s:NSString*=n$10 [line 24, column 3]\n " shape="box"] "main.fad58de7366495db4650cfefac2fcd61_11" -> "main.fad58de7366495db4650cfefac2fcd61_10" ; -"main.fad58de7366495db4650cfefac2fcd61_12" [label="12: DeclStmt \n n$10=_fun_NSString_stringWithUTF8String:(\"Mercedes-Benz\":char* const ) [line 17, column 5]\n n$11=_fun_NSString_stringWithUTF8String:(\"BMW\":char* const ) [line 18, column 5]\n n$12=_fun_NSString_stringWithUTF8String:(\"Porsche\":char* const ) [line 19, column 5]\n n$13=_fun_NSString_stringWithUTF8String:(\"Opel\":char* const ) [line 20, column 5]\n n$14=_fun_NSString_stringWithUTF8String:(\"Volkswagen\":char* const ) [line 21, column 5]\n n$15=_fun_NSString_stringWithUTF8String:(\"Audi\":char* const ) [line 22, column 5]\n n$16=_fun_NSArray_arrayWithObjects:count:(n$10:objc_object*,n$11:objc_object*,n$12:objc_object*,n$13:objc_object*,n$14:objc_object*,n$15:objc_object*,null:objc_object*) [line 16, column 25]\n *&germanCars:NSArray*=n$16 [line 16, column 3]\n " shape="box"] +"main.fad58de7366495db4650cfefac2fcd61_12" [label="12: DeclStmt \n n$16=_fun_NSString_stringWithUTF8String:(\"Mercedes-Benz\":char* const ) [line 17, column 5]\n n$11=_fun_NSString_stringWithUTF8String:(\"BMW\":char* const ) [line 18, column 5]\n n$12=_fun_NSString_stringWithUTF8String:(\"Porsche\":char* const ) [line 19, column 5]\n n$13=_fun_NSString_stringWithUTF8String:(\"Opel\":char* const ) [line 20, column 5]\n n$14=_fun_NSString_stringWithUTF8String:(\"Volkswagen\":char* const ) [line 21, column 5]\n n$15=_fun_NSString_stringWithUTF8String:(\"Audi\":char* const ) [line 22, column 5]\n n$17=_fun_NSArray_arrayWithObjects:count:(n$16:objc_object*,n$11:objc_object*,n$12:objc_object*,n$13:objc_object*,n$14:objc_object*,n$15:objc_object*,null:objc_object*) [line 16, column 25]\n *&germanCars:NSArray*=n$17 [line 16, column 3]\n " shape="box"] "main.fad58de7366495db4650cfefac2fcd61_12" -> "main.fad58de7366495db4650cfefac2fcd61_11" ; diff --git a/infer/tests/codetoanalyze/objc/frontend/boxing/array_literal.c.dot b/infer/tests/codetoanalyze/objc/frontend/boxing/array_literal.c.dot index 44342ee87..ad0142a2f 100644 --- a/infer/tests/codetoanalyze/objc/frontend/boxing/array_literal.c.dot +++ b/infer/tests/codetoanalyze/objc/frontend/boxing/array_literal.c.dot @@ -7,11 +7,11 @@ digraph cfg { "get_array.bca6b16c85e5b8ba530f380271b2ec79_2" [label="2: Exit get_array \n " color=yellow style=filled] -"get_array.bca6b16c85e5b8ba530f380271b2ec79_3" [label="3: Return Stmt \n n$0=_fun_NSString_stringWithUTF8String:(\"cat\":char* const ) [line 14, column 13]\n n$1=_fun_NSString_stringWithUTF8String:(\"dog\":char* const ) [line 14, column 21]\n n$2=_fun_NSArray_arrayWithObjects:count:(n$0:objc_object*,n$1:objc_object*,null:objc_object*) [line 14, column 10]\n *&return:NSArray*=n$2 [line 14, column 3]\n " shape="box"] +"get_array.bca6b16c85e5b8ba530f380271b2ec79_3" [label="3: Return Stmt \n n$1=_fun_NSString_stringWithUTF8String:(\"cat\":char* const ) [line 14, column 13]\n n$0=_fun_NSString_stringWithUTF8String:(\"dog\":char* const ) [line 14, column 21]\n n$2=_fun_NSArray_arrayWithObjects:count:(n$1:objc_object*,n$0:objc_object*,null:objc_object*) [line 14, column 10]\n *&return:NSArray*=n$2 [line 14, column 3]\n " shape="box"] "get_array.bca6b16c85e5b8ba530f380271b2ec79_3" -> "get_array.bca6b16c85e5b8ba530f380271b2ec79_2" ; -"get_array.bca6b16c85e5b8ba530f380271b2ec79_4" [label="4: DeclStmt \n n$3=_fun_NSString_stringWithUTF8String:(\"cat\":char* const ) [line 13, column 48]\n n$4=_fun_NSString_stringWithUTF8String:(\"dog\":char* const ) [line 13, column 56]\n n$5=_fun_NSArray_arrayWithObjects:(n$3:objc_object*,n$4:NSString*,null:void*) [line 13, column 22]\n *&animals:NSArray*=n$5 [line 13, column 3]\n " shape="box"] +"get_array.bca6b16c85e5b8ba530f380271b2ec79_4" [label="4: DeclStmt \n n$4=_fun_NSString_stringWithUTF8String:(\"cat\":char* const ) [line 13, column 48]\n n$3=_fun_NSString_stringWithUTF8String:(\"dog\":char* const ) [line 13, column 56]\n n$5=_fun_NSArray_arrayWithObjects:(n$4:objc_object*,n$3:NSString*,null:void*) [line 13, column 22]\n *&animals:NSArray*=n$5 [line 13, column 3]\n " shape="box"] "get_array.bca6b16c85e5b8ba530f380271b2ec79_4" -> "get_array.bca6b16c85e5b8ba530f380271b2ec79_3" ; diff --git a/infer/tests/codetoanalyze/objc/frontend/boxing/dict_literal.c.dot b/infer/tests/codetoanalyze/objc/frontend/boxing/dict_literal.c.dot index 35c86adde..9a7547b4f 100644 --- a/infer/tests/codetoanalyze/objc/frontend/boxing/dict_literal.c.dot +++ b/infer/tests/codetoanalyze/objc/frontend/boxing/dict_literal.c.dot @@ -7,7 +7,7 @@ digraph cfg { "get_array1.5988b7ad8acf5c81cef9a72d072073c1_2" [label="2: Exit get_array1 \n " color=yellow style=filled] -"get_array1.5988b7ad8acf5c81cef9a72d072073c1_3" [label="3: Return Stmt \n n$0=_fun_NSString_stringWithUTF8String:(\"Matt\":char* const ) [line 14, column 53]\n n$1=_fun_NSString_stringWithUTF8String:(\"firstName\":char* const ) [line 15, column 53]\n n$2=_fun_NSString_stringWithUTF8String:(\"Galloway\":char* const ) [line 16, column 53]\n n$3=_fun_NSString_stringWithUTF8String:(\"lastName\":char* const ) [line 17, column 53]\n n$4=_fun_NSNumber_numberWithInt:(28:int) [line 18, column 53]\n n$5=_fun_NSString_stringWithUTF8String:(\"age\":char* const ) [line 19, column 53]\n n$6=_fun_NSDictionary_dictionaryWithObjectsAndKeys:(n$0:objc_object*,n$1:NSString*,n$2:NSString*,n$3:NSString*,n$4:NSNumber*,n$5:NSString*,null:void*) [line 14, column 10]\n *&return:NSDictionary*=n$6 [line 14, column 3]\n " shape="box"] +"get_array1.5988b7ad8acf5c81cef9a72d072073c1_3" [label="3: Return Stmt \n n$5=_fun_NSString_stringWithUTF8String:(\"Matt\":char* const ) [line 14, column 53]\n n$0=_fun_NSString_stringWithUTF8String:(\"firstName\":char* const ) [line 15, column 53]\n n$1=_fun_NSString_stringWithUTF8String:(\"Galloway\":char* const ) [line 16, column 53]\n n$2=_fun_NSString_stringWithUTF8String:(\"lastName\":char* const ) [line 17, column 53]\n n$3=_fun_NSNumber_numberWithInt:(28:int) [line 18, column 53]\n n$4=_fun_NSString_stringWithUTF8String:(\"age\":char* const ) [line 19, column 53]\n n$6=_fun_NSDictionary_dictionaryWithObjectsAndKeys:(n$5:objc_object*,n$0:NSString*,n$1:NSString*,n$2:NSString*,n$3:NSNumber*,n$4:NSString*,null:void*) [line 14, column 10]\n *&return:NSDictionary*=n$6 [line 14, column 3]\n " shape="box"] "get_array1.5988b7ad8acf5c81cef9a72d072073c1_3" -> "get_array1.5988b7ad8acf5c81cef9a72d072073c1_2" ; @@ -18,7 +18,7 @@ digraph cfg { "get_array2.84aa3c70cb20e7edbe4f0b8d0bd6aa3d_2" [label="2: Exit get_array2 \n " color=yellow style=filled] -"get_array2.84aa3c70cb20e7edbe4f0b8d0bd6aa3d_3" [label="3: Return Stmt \n n$0=_fun_NSString_stringWithUTF8String:(\"Matt\":char* const ) [line 25, column 28]\n n$1=_fun_NSString_stringWithUTF8String:(\"firstName\":char* const ) [line 25, column 13]\n n$2=_fun_NSString_stringWithUTF8String:(\"Galloway\":char* const ) [line 25, column 51]\n n$3=_fun_NSString_stringWithUTF8String:(\"lastName\":char* const ) [line 25, column 37]\n n$4=_fun_NSNumber_numberWithInt:(28:int) [line 25, column 73]\n n$5=_fun_NSString_stringWithUTF8String:(\"age\":char* const ) [line 25, column 64]\n n$6=_fun_NSDictionary_dictionaryWithObjects:forKeys:count:(n$0:objc_object*,n$1:objc_object*,n$2:objc_object*,n$3:objc_object*,n$4:objc_object*,n$5:objc_object*,null:objc_object*) [line 25, column 10]\n *&return:NSDictionary*=n$6 [line 25, column 3]\n " shape="box"] +"get_array2.84aa3c70cb20e7edbe4f0b8d0bd6aa3d_3" [label="3: Return Stmt \n n$5=_fun_NSString_stringWithUTF8String:(\"Matt\":char* const ) [line 25, column 28]\n n$0=_fun_NSString_stringWithUTF8String:(\"firstName\":char* const ) [line 25, column 13]\n n$1=_fun_NSString_stringWithUTF8String:(\"Galloway\":char* const ) [line 25, column 51]\n n$2=_fun_NSString_stringWithUTF8String:(\"lastName\":char* const ) [line 25, column 37]\n n$3=_fun_NSNumber_numberWithInt:(28:int) [line 25, column 73]\n n$4=_fun_NSString_stringWithUTF8String:(\"age\":char* const ) [line 25, column 64]\n n$6=_fun_NSDictionary_dictionaryWithObjects:forKeys:count:(n$5:objc_object*,n$0:objc_object*,n$1:objc_object*,n$2:objc_object*,n$3:objc_object*,n$4:objc_object*,null:objc_object*) [line 25, column 10]\n *&return:NSDictionary*=n$6 [line 25, column 3]\n " shape="box"] "get_array2.84aa3c70cb20e7edbe4f0b8d0bd6aa3d_3" -> "get_array2.84aa3c70cb20e7edbe4f0b8d0bd6aa3d_2" ; diff --git a/infer/tests/codetoanalyze/objc/frontend/conditional_operation/ConditionalOperation.m.dot b/infer/tests/codetoanalyze/objc/frontend/conditional_operation/ConditionalOperation.m.dot index b72eac153..a78249313 100644 --- a/infer/tests/codetoanalyze/objc/frontend/conditional_operation/ConditionalOperation.m.dot +++ b/infer/tests/codetoanalyze/objc/frontend/conditional_operation/ConditionalOperation.m.dot @@ -11,7 +11,7 @@ digraph cfg { "test4:#A#instance.718a300d6fa63609a70f22221a548ee5_3" -> "test4:#A#instance.718a300d6fa63609a70f22221a548ee5_2" ; -"test5:#A#instance.4d6ac42705853160b533ab46b444624a_1" [label="1: Start A_test5:\nFormals: self:A* b:_Bool\nLocals: 0$?%__sil_tmpSIL_temp_conditional___n$2:int \n DECLARE_LOCALS(&return,&0$?%__sil_tmpSIL_temp_conditional___n$2); [line 23, column 1]\n " color=yellow style=filled] +"test5:#A#instance.4d6ac42705853160b533ab46b444624a_1" [label="1: Start A_test5:\nFormals: self:A* b:_Bool\nLocals: 0$?%__sil_tmpSIL_temp_conditional___n$1:int \n DECLARE_LOCALS(&return,&0$?%__sil_tmpSIL_temp_conditional___n$1); [line 23, column 1]\n " color=yellow style=filled] "test5:#A#instance.4d6ac42705853160b533ab46b444624a_1" -> "test5:#A#instance.4d6ac42705853160b533ab46b444624a_4" ; @@ -23,23 +23,23 @@ digraph cfg { "test5:#A#instance.4d6ac42705853160b533ab46b444624a_3" -> "test5:#A#instance.4d6ac42705853160b533ab46b444624a_8" ; -"test5:#A#instance.4d6ac42705853160b533ab46b444624a_4" [label="4: Prune (true branch, boolean exp) \n n$3=*&b:_Bool [line 24, column 23]\n PRUNE(n$3, true); [line 24, column 23]\n " shape="invhouse"] +"test5:#A#instance.4d6ac42705853160b533ab46b444624a_4" [label="4: Prune (true branch, boolean exp) \n n$2=*&b:_Bool [line 24, column 23]\n PRUNE(n$2, true); [line 24, column 23]\n " shape="invhouse"] "test5:#A#instance.4d6ac42705853160b533ab46b444624a_4" -> "test5:#A#instance.4d6ac42705853160b533ab46b444624a_6" ; -"test5:#A#instance.4d6ac42705853160b533ab46b444624a_5" [label="5: Prune (false branch, boolean exp) \n n$3=*&b:_Bool [line 24, column 23]\n PRUNE(!n$3, false); [line 24, column 23]\n " shape="invhouse"] +"test5:#A#instance.4d6ac42705853160b533ab46b444624a_5" [label="5: Prune (false branch, boolean exp) \n n$2=*&b:_Bool [line 24, column 23]\n PRUNE(!n$2, false); [line 24, column 23]\n " shape="invhouse"] "test5:#A#instance.4d6ac42705853160b533ab46b444624a_5" -> "test5:#A#instance.4d6ac42705853160b533ab46b444624a_7" ; -"test5:#A#instance.4d6ac42705853160b533ab46b444624a_6" [label="6: ConditinalStmt Branch \n n$4=*&b:_Bool [line 24, column 27]\n *&0$?%__sil_tmpSIL_temp_conditional___n$2:int=n$4 [line 24, column 23]\n " shape="box"] +"test5:#A#instance.4d6ac42705853160b533ab46b444624a_6" [label="6: ConditionalStmt Branch \n n$3=*&b:_Bool [line 24, column 27]\n *&0$?%__sil_tmpSIL_temp_conditional___n$1:int=n$3 [line 24, column 23]\n " shape="box"] "test5:#A#instance.4d6ac42705853160b533ab46b444624a_6" -> "test5:#A#instance.4d6ac42705853160b533ab46b444624a_3" ; -"test5:#A#instance.4d6ac42705853160b533ab46b444624a_7" [label="7: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$2:int=1 [line 24, column 23]\n " shape="box"] +"test5:#A#instance.4d6ac42705853160b533ab46b444624a_7" [label="7: ConditionalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$1:int=1 [line 24, column 23]\n " shape="box"] "test5:#A#instance.4d6ac42705853160b533ab46b444624a_7" -> "test5:#A#instance.4d6ac42705853160b533ab46b444624a_3" ; -"test5:#A#instance.4d6ac42705853160b533ab46b444624a_8" [label="8: Return Stmt \n n$1=*&self:A* [line 24, column 11]\n n$5=*&0$?%__sil_tmpSIL_temp_conditional___n$2:int [line 24, column 23]\n n$6=_fun_A_test4:(n$1:A*,n$5:int) virtual [line 24, column 10]\n *&return:int=n$6 [line 24, column 3]\n " shape="box"] +"test5:#A#instance.4d6ac42705853160b533ab46b444624a_8" [label="8: Return Stmt \n n$5=*&self:A* [line 24, column 11]\n n$4=*&0$?%__sil_tmpSIL_temp_conditional___n$1:int [line 24, column 23]\n n$6=_fun_A_test4:(n$5:A*,n$4:int) virtual [line 24, column 10]\n *&return:int=n$6 [line 24, column 3]\n " shape="box"] "test5:#A#instance.4d6ac42705853160b533ab46b444624a_8" -> "test5:#A#instance.4d6ac42705853160b533ab46b444624a_2" ; diff --git a/infer/tests/codetoanalyze/objc/frontend/exceptions/ExceptionExample.m.dot b/infer/tests/codetoanalyze/objc/frontend/exceptions/ExceptionExample.m.dot index 258e7b95d..0616ff381 100644 --- a/infer/tests/codetoanalyze/objc/frontend/exceptions/ExceptionExample.m.dot +++ b/infer/tests/codetoanalyze/objc/frontend/exceptions/ExceptionExample.m.dot @@ -11,7 +11,7 @@ digraph cfg { "test#ExceptionExample#instance.513cde8d794322493646dbd1821516dd_3" -> "test#ExceptionExample#instance.513cde8d794322493646dbd1821516dd_2" ; -"test#ExceptionExample#instance.513cde8d794322493646dbd1821516dd_4" [label="4: DeclStmt \n n$2=_fun___objc_alloc_no_fail(sizeof(t=NSString):unsigned long) [line 20, column 19]\n *&s:NSString*=n$2 [line 20, column 5]\n " shape="box"] +"test#ExceptionExample#instance.513cde8d794322493646dbd1821516dd_4" [label="4: DeclStmt \n n$3=_fun___objc_alloc_no_fail(sizeof(t=NSString):unsigned long) [line 20, column 19]\n *&s:NSString*=n$3 [line 20, column 5]\n " shape="box"] "test#ExceptionExample#instance.513cde8d794322493646dbd1821516dd_4" -> "test#ExceptionExample#instance.513cde8d794322493646dbd1821516dd_3" ; @@ -30,19 +30,19 @@ digraph cfg { "test1#ExceptionExample#instance.400b3bc567ff814f7f6788584460738f_4" -> "test1#ExceptionExample#instance.400b3bc567ff814f7f6788584460738f_2" ; -"test1#ExceptionExample#instance.400b3bc567ff814f7f6788584460738f_5" [label="5: Prune (true branch, if) \n n$3=*&s:NSString* [line 29, column 7]\n PRUNE(n$3, true); [line 29, column 7]\n " shape="invhouse"] +"test1#ExceptionExample#instance.400b3bc567ff814f7f6788584460738f_5" [label="5: Prune (true branch, if) \n n$4=*&s:NSString* [line 29, column 7]\n PRUNE(n$4, true); [line 29, column 7]\n " shape="invhouse"] "test1#ExceptionExample#instance.400b3bc567ff814f7f6788584460738f_5" -> "test1#ExceptionExample#instance.400b3bc567ff814f7f6788584460738f_7" ; -"test1#ExceptionExample#instance.400b3bc567ff814f7f6788584460738f_6" [label="6: Prune (false branch, if) \n n$3=*&s:NSString* [line 29, column 7]\n PRUNE(!n$3, false); [line 29, column 7]\n " shape="invhouse"] +"test1#ExceptionExample#instance.400b3bc567ff814f7f6788584460738f_6" [label="6: Prune (false branch, if) \n n$4=*&s:NSString* [line 29, column 7]\n PRUNE(!n$4, false); [line 29, column 7]\n " shape="invhouse"] "test1#ExceptionExample#instance.400b3bc567ff814f7f6788584460738f_6" -> "test1#ExceptionExample#instance.400b3bc567ff814f7f6788584460738f_3" ; -"test1#ExceptionExample#instance.400b3bc567ff814f7f6788584460738f_7" [label="7: ObjCCPPThrow \n n$4=_fun_NSString_stringWithUTF8String:(\"Something is not right exception\":char* const ) [line 31, column 27]\n n$5=_fun_NSString_stringWithUTF8String:(\"Can't perform this operation because of this or that\":char* const ) [line 33, column 24]\n n$6=_fun_NSException_exceptionWithName:reason:userInfo:(n$4:NSString*,n$5:NSString*,null:NSDictionary*) [line 30, column 12]\n n$7=_fun___infer_objc_cpp_throw(n$6:NSException*) [line 30, column 5]\n " shape="box"] +"test1#ExceptionExample#instance.400b3bc567ff814f7f6788584460738f_7" [label="7: ObjCCPPThrow \n n$6=_fun_NSString_stringWithUTF8String:(\"Something is not right exception\":char* const ) [line 31, column 27]\n n$5=_fun_NSString_stringWithUTF8String:(\"Can't perform this operation because of this or that\":char* const ) [line 33, column 24]\n n$7=_fun_NSException_exceptionWithName:reason:userInfo:(n$6:NSString*,n$5:NSString*,null:NSDictionary*) [line 30, column 12]\n n$8=_fun___infer_objc_cpp_throw(n$7:NSException*) [line 30, column 5]\n " shape="box"] "test1#ExceptionExample#instance.400b3bc567ff814f7f6788584460738f_7" -> "test1#ExceptionExample#instance.400b3bc567ff814f7f6788584460738f_3" ; -"test1#ExceptionExample#instance.400b3bc567ff814f7f6788584460738f_8" [label="8: DeclStmt \n n$8=_fun___objc_alloc_no_fail(sizeof(t=NSString):unsigned long) [line 28, column 17]\n *&s:NSString*=n$8 [line 28, column 3]\n " shape="box"] +"test1#ExceptionExample#instance.400b3bc567ff814f7f6788584460738f_8" [label="8: DeclStmt \n n$11=_fun___objc_alloc_no_fail(sizeof(t=NSString):unsigned long) [line 28, column 17]\n *&s:NSString*=n$11 [line 28, column 3]\n " shape="box"] "test1#ExceptionExample#instance.400b3bc567ff814f7f6788584460738f_8" -> "test1#ExceptionExample#instance.400b3bc567ff814f7f6788584460738f_5" ; diff --git a/infer/tests/codetoanalyze/objc/frontend/fast_enumeration/Fast_enumeration.m.dot b/infer/tests/codetoanalyze/objc/frontend/fast_enumeration/Fast_enumeration.m.dot index 2eb01cd67..19e5f607a 100644 --- a/infer/tests/codetoanalyze/objc/frontend/fast_enumeration/Fast_enumeration.m.dot +++ b/infer/tests/codetoanalyze/objc/frontend/fast_enumeration/Fast_enumeration.m.dot @@ -36,7 +36,7 @@ digraph cfg { "fast_loop:#A#instance.9cd800cb29c7a698fe4cc371a7448f6e_9" -> "fast_loop:#A#instance.9cd800cb29c7a698fe4cc371a7448f6e_8" ; -"fast_loop:#A#instance.9cd800cb29c7a698fe4cc371a7448f6e_10" [label="10: BinaryOperatorStmt: Assign \n n$7=*&items:NSArray* [line 23, column 25]\n n$8=_fun_NSArray_nextObject(n$7:NSArray*) virtual [line 23, column 3]\n *&item:NSArray*=n$8 [line 23, column 3]\n " shape="box"] +"fast_loop:#A#instance.9cd800cb29c7a698fe4cc371a7448f6e_10" [label="10: BinaryOperatorStmt: Assign \n n$8=*&items:NSArray* [line 23, column 25]\n n$9=_fun_NSArray_nextObject(n$8:NSArray*) virtual [line 23, column 3]\n *&item:NSArray*=n$9 [line 23, column 3]\n " shape="box"] "fast_loop:#A#instance.9cd800cb29c7a698fe4cc371a7448f6e_10" -> "fast_loop:#A#instance.9cd800cb29c7a698fe4cc371a7448f6e_4" ; @@ -55,28 +55,28 @@ digraph cfg { "fast_loop_no_crash#A#instance.eaee56a1051009329a3989c3a10fb432_3" -> "fast_loop_no_crash#A#instance.eaee56a1051009329a3989c3a10fb432_4" ; -"fast_loop_no_crash#A#instance.eaee56a1051009329a3989c3a10fb432_4" [label="4: BinaryOperatorStmt: NE \n n$16=*&obj:objc_object* [line 40, column 3]\n " shape="box"] +"fast_loop_no_crash#A#instance.eaee56a1051009329a3989c3a10fb432_4" [label="4: BinaryOperatorStmt: NE \n n$18=*&obj:objc_object* [line 40, column 3]\n " shape="box"] "fast_loop_no_crash#A#instance.eaee56a1051009329a3989c3a10fb432_4" -> "fast_loop_no_crash#A#instance.eaee56a1051009329a3989c3a10fb432_5" ; "fast_loop_no_crash#A#instance.eaee56a1051009329a3989c3a10fb432_4" -> "fast_loop_no_crash#A#instance.eaee56a1051009329a3989c3a10fb432_6" ; -"fast_loop_no_crash#A#instance.eaee56a1051009329a3989c3a10fb432_5" [label="5: Prune (true branch, while) \n PRUNE((n$16 != null), true); [line 40, column 3]\n " shape="invhouse"] +"fast_loop_no_crash#A#instance.eaee56a1051009329a3989c3a10fb432_5" [label="5: Prune (true branch, while) \n PRUNE((n$18 != null), true); [line 40, column 3]\n " shape="invhouse"] "fast_loop_no_crash#A#instance.eaee56a1051009329a3989c3a10fb432_5" -> "fast_loop_no_crash#A#instance.eaee56a1051009329a3989c3a10fb432_8" ; -"fast_loop_no_crash#A#instance.eaee56a1051009329a3989c3a10fb432_6" [label="6: Prune (false branch, while) \n PRUNE(!(n$16 != null), false); [line 40, column 3]\n " shape="invhouse"] +"fast_loop_no_crash#A#instance.eaee56a1051009329a3989c3a10fb432_6" [label="6: Prune (false branch, while) \n PRUNE(!(n$18 != null), false); [line 40, column 3]\n " shape="invhouse"] "fast_loop_no_crash#A#instance.eaee56a1051009329a3989c3a10fb432_6" -> "fast_loop_no_crash#A#instance.eaee56a1051009329a3989c3a10fb432_2" ; -"fast_loop_no_crash#A#instance.eaee56a1051009329a3989c3a10fb432_7" [label="7: BinaryOperatorStmt: Assign \n n$17=*&self:A* [line 40, column 15]\n n$18=*n$17.reverseObjectEnumerator:NSEnumerator* [line 40, column 15]\n n$19=_fun_NSEnumerator_nextObject(n$18:NSEnumerator*) virtual [line 40, column 3]\n *&obj:objc_object*=n$19 [line 40, column 3]\n " shape="box"] +"fast_loop_no_crash#A#instance.eaee56a1051009329a3989c3a10fb432_7" [label="7: BinaryOperatorStmt: Assign \n n$19=*&self:A* [line 40, column 15]\n n$20=*n$19.reverseObjectEnumerator:NSEnumerator* [line 40, column 15]\n n$21=_fun_NSEnumerator_nextObject(n$20:NSEnumerator*) virtual [line 40, column 3]\n *&obj:objc_object*=n$21 [line 40, column 3]\n " shape="box"] "fast_loop_no_crash#A#instance.eaee56a1051009329a3989c3a10fb432_7" -> "fast_loop_no_crash#A#instance.eaee56a1051009329a3989c3a10fb432_3" ; -"fast_loop_no_crash#A#instance.eaee56a1051009329a3989c3a10fb432_8" [label="8: Message Call: copy \n n$20=*&obj:objc_object* [line 41, column 6]\n n$21=_fun_NSObject_copy(n$20:objc_object*) virtual [line 41, column 5]\n " shape="box"] +"fast_loop_no_crash#A#instance.eaee56a1051009329a3989c3a10fb432_8" [label="8: Message Call: copy \n n$22=*&obj:objc_object* [line 41, column 6]\n n$23=_fun_NSObject_copy(n$22:objc_object*) virtual [line 41, column 5]\n " shape="box"] "fast_loop_no_crash#A#instance.eaee56a1051009329a3989c3a10fb432_8" -> "fast_loop_no_crash#A#instance.eaee56a1051009329a3989c3a10fb432_7" ; -"fast_loop_no_crash#A#instance.eaee56a1051009329a3989c3a10fb432_9" [label="9: BinaryOperatorStmt: Assign \n n$22=*&self:A* [line 40, column 15]\n n$23=*n$22.reverseObjectEnumerator:NSEnumerator* [line 40, column 15]\n n$24=_fun_NSEnumerator_nextObject(n$23:NSEnumerator*) virtual [line 40, column 3]\n *&obj:objc_object*=n$24 [line 40, column 3]\n " shape="box"] +"fast_loop_no_crash#A#instance.eaee56a1051009329a3989c3a10fb432_9" [label="9: BinaryOperatorStmt: Assign \n n$25=*&self:A* [line 40, column 15]\n n$26=*n$25.reverseObjectEnumerator:NSEnumerator* [line 40, column 15]\n n$27=_fun_NSEnumerator_nextObject(n$26:NSEnumerator*) virtual [line 40, column 3]\n *&obj:objc_object*=n$27 [line 40, column 3]\n " shape="box"] "fast_loop_no_crash#A#instance.eaee56a1051009329a3989c3a10fb432_9" -> "fast_loop_no_crash#A#instance.eaee56a1051009329a3989c3a10fb432_3" ; @@ -91,7 +91,7 @@ digraph cfg { "while_loop:#A#instance.30e9692b3abdc47bcb262e353f292a28_2" [label="2: Exit A_while_loop: \n " color=yellow style=filled] -"while_loop:#A#instance.30e9692b3abdc47bcb262e353f292a28_3" [label="3: Return Stmt \n n$9=*&size:int [line 35, column 10]\n *&return:int=n$9 [line 35, column 3]\n " shape="box"] +"while_loop:#A#instance.30e9692b3abdc47bcb262e353f292a28_3" [label="3: Return Stmt \n n$10=*&size:int [line 35, column 10]\n *&return:int=n$10 [line 35, column 3]\n " shape="box"] "while_loop:#A#instance.30e9692b3abdc47bcb262e353f292a28_3" -> "while_loop:#A#instance.30e9692b3abdc47bcb262e353f292a28_2" ; @@ -99,20 +99,20 @@ digraph cfg { "while_loop:#A#instance.30e9692b3abdc47bcb262e353f292a28_4" -> "while_loop:#A#instance.30e9692b3abdc47bcb262e353f292a28_5" ; -"while_loop:#A#instance.30e9692b3abdc47bcb262e353f292a28_5" [label="5: BinaryOperatorStmt: Assign \n n$10=*&items:NSArray* [line 32, column 19]\n n$11=_fun_NSArray_objectAtIndex:(n$10:NSArray*,3:unsigned long) virtual [line 32, column 18]\n *&item:NSArray*=n$11 [line 32, column 11]\n n$12=*&item:NSArray* [line 32, column 11]\n " shape="box"] +"while_loop:#A#instance.30e9692b3abdc47bcb262e353f292a28_5" [label="5: BinaryOperatorStmt: Assign \n n$11=*&items:NSArray* [line 32, column 19]\n n$12=_fun_NSArray_objectAtIndex:(n$11:NSArray*,3:unsigned long) virtual [line 32, column 18]\n *&item:NSArray*=n$12 [line 32, column 11]\n n$13=*&item:NSArray* [line 32, column 11]\n " shape="box"] "while_loop:#A#instance.30e9692b3abdc47bcb262e353f292a28_5" -> "while_loop:#A#instance.30e9692b3abdc47bcb262e353f292a28_6" ; "while_loop:#A#instance.30e9692b3abdc47bcb262e353f292a28_5" -> "while_loop:#A#instance.30e9692b3abdc47bcb262e353f292a28_7" ; -"while_loop:#A#instance.30e9692b3abdc47bcb262e353f292a28_6" [label="6: Prune (true branch, while) \n PRUNE(n$12, true); [line 32, column 11]\n " shape="invhouse"] +"while_loop:#A#instance.30e9692b3abdc47bcb262e353f292a28_6" [label="6: Prune (true branch, while) \n PRUNE(n$13, true); [line 32, column 11]\n " shape="invhouse"] "while_loop:#A#instance.30e9692b3abdc47bcb262e353f292a28_6" -> "while_loop:#A#instance.30e9692b3abdc47bcb262e353f292a28_8" ; -"while_loop:#A#instance.30e9692b3abdc47bcb262e353f292a28_7" [label="7: Prune (false branch, while) \n PRUNE(!n$12, false); [line 32, column 11]\n " shape="invhouse"] +"while_loop:#A#instance.30e9692b3abdc47bcb262e353f292a28_7" [label="7: Prune (false branch, while) \n PRUNE(!n$13, false); [line 32, column 11]\n " shape="invhouse"] "while_loop:#A#instance.30e9692b3abdc47bcb262e353f292a28_7" -> "while_loop:#A#instance.30e9692b3abdc47bcb262e353f292a28_3" ; -"while_loop:#A#instance.30e9692b3abdc47bcb262e353f292a28_8" [label="8: BinaryOperatorStmt: AddAssign \n n$13=*&item:NSArray* [line 33, column 14]\n n$14=_fun_NSArray_count(n$13:NSArray*) [line 33, column 13]\n n$15=*&size:int [line 33, column 5]\n *&size:int=(n$15 + n$14) [line 33, column 5]\n " shape="box"] +"while_loop:#A#instance.30e9692b3abdc47bcb262e353f292a28_8" [label="8: BinaryOperatorStmt: AddAssign \n n$14=*&item:NSArray* [line 33, column 14]\n n$15=_fun_NSArray_count(n$14:NSArray*) [line 33, column 13]\n n$16=*&size:int [line 33, column 5]\n *&size:int=(n$16 + n$15) [line 33, column 5]\n " shape="box"] "while_loop:#A#instance.30e9692b3abdc47bcb262e353f292a28_8" -> "while_loop:#A#instance.30e9692b3abdc47bcb262e353f292a28_4" ; diff --git a/infer/tests/codetoanalyze/objc/frontend/returnstmt/void_return.m.dot b/infer/tests/codetoanalyze/objc/frontend/returnstmt/void_return.m.dot index 5ad728f79..7d1df8529 100644 --- a/infer/tests/codetoanalyze/objc/frontend/returnstmt/void_return.m.dot +++ b/infer/tests/codetoanalyze/objc/frontend/returnstmt/void_return.m.dot @@ -36,16 +36,16 @@ digraph cfg { "aMethod#MyClass#instance.af06019e61fb7341a36c141ed90caaaf_9" -> "aMethod#MyClass#instance.af06019e61fb7341a36c141ed90caaaf_5" ; -"aMethod#MyClass#instance.af06019e61fb7341a36c141ed90caaaf_10" [label="10: BinaryOperatorStmt: EQ \n n$2=*&i:int [line 21, column 7]\n " shape="box"] +"aMethod#MyClass#instance.af06019e61fb7341a36c141ed90caaaf_10" [label="10: BinaryOperatorStmt: EQ \n n$4=*&i:int [line 21, column 7]\n " shape="box"] "aMethod#MyClass#instance.af06019e61fb7341a36c141ed90caaaf_10" -> "aMethod#MyClass#instance.af06019e61fb7341a36c141ed90caaaf_11" ; "aMethod#MyClass#instance.af06019e61fb7341a36c141ed90caaaf_10" -> "aMethod#MyClass#instance.af06019e61fb7341a36c141ed90caaaf_12" ; -"aMethod#MyClass#instance.af06019e61fb7341a36c141ed90caaaf_11" [label="11: Prune (true branch, if) \n PRUNE((n$2 == 0), true); [line 21, column 7]\n " shape="invhouse"] +"aMethod#MyClass#instance.af06019e61fb7341a36c141ed90caaaf_11" [label="11: Prune (true branch, if) \n PRUNE((n$4 == 0), true); [line 21, column 7]\n " shape="invhouse"] "aMethod#MyClass#instance.af06019e61fb7341a36c141ed90caaaf_11" -> "aMethod#MyClass#instance.af06019e61fb7341a36c141ed90caaaf_13" ; -"aMethod#MyClass#instance.af06019e61fb7341a36c141ed90caaaf_12" [label="12: Prune (false branch, if) \n PRUNE(!(n$2 == 0), false); [line 21, column 7]\n " shape="invhouse"] +"aMethod#MyClass#instance.af06019e61fb7341a36c141ed90caaaf_12" [label="12: Prune (false branch, if) \n PRUNE(!(n$4 == 0), false); [line 21, column 7]\n " shape="invhouse"] "aMethod#MyClass#instance.af06019e61fb7341a36c141ed90caaaf_12" -> "aMethod#MyClass#instance.af06019e61fb7341a36c141ed90caaaf_9" ; diff --git a/infer/tests/codetoanalyze/objc/frontend/self_static/Self.m.dot b/infer/tests/codetoanalyze/objc/frontend/self_static/Self.m.dot index f80f7e657..68eb4c5bc 100644 --- a/infer/tests/codetoanalyze/objc/frontend/self_static/Self.m.dot +++ b/infer/tests/codetoanalyze/objc/frontend/self_static/Self.m.dot @@ -27,7 +27,7 @@ digraph cfg { "class_method_in_conditional.2a19b0bd8eafdb3235f52585a49ef84a_7" -> "class_method_in_conditional.2a19b0bd8eafdb3235f52585a49ef84a_2" ; -"class_method_in_conditional.2a19b0bd8eafdb3235f52585a49ef84a_8" [label="8: DeclStmt \n n$1=_fun_foo() [line 104, column 13]\n *&c:objc_class*=n$1 [line 104, column 3]\n " shape="box"] +"class_method_in_conditional.2a19b0bd8eafdb3235f52585a49ef84a_8" [label="8: DeclStmt \n n$3=_fun_foo() [line 104, column 13]\n *&c:objc_class*=n$3 [line 104, column 3]\n " shape="box"] "class_method_in_conditional.2a19b0bd8eafdb3235f52585a49ef84a_8" -> "class_method_in_conditional.2a19b0bd8eafdb3235f52585a49ef84a_5" ; @@ -46,7 +46,7 @@ digraph cfg { "call_alloc_class#A#class.0cef99601cab56333305f5f96f227079_2" [label="2: Exit A_call_alloc_class \n " color=yellow style=filled] -"call_alloc_class#A#class.0cef99601cab56333305f5f96f227079_3" [label="3: Call alloc \n n$3=_fun___objc_alloc_no_fail(sizeof(t=A):unsigned long) [line 58, column 3]\n " shape="box"] +"call_alloc_class#A#class.0cef99601cab56333305f5f96f227079_3" [label="3: Call alloc \n n$5=_fun___objc_alloc_no_fail(sizeof(t=A):unsigned long) [line 58, column 3]\n " shape="box"] "call_alloc_class#A#class.0cef99601cab56333305f5f96f227079_3" -> "call_alloc_class#A#class.0cef99601cab56333305f5f96f227079_2" ; @@ -57,7 +57,7 @@ digraph cfg { "call_alloc_instance#A#instance.70a20314d55f22fb46408deb70d9aabb_2" [label="2: Exit A_call_alloc_instance \n " color=yellow style=filled] -"call_alloc_instance#A#instance.70a20314d55f22fb46408deb70d9aabb_3" [label="3: Call alloc \n n$5=_fun___objc_alloc_no_fail(sizeof(t=A):unsigned long) [line 62, column 3]\n " shape="box"] +"call_alloc_instance#A#instance.70a20314d55f22fb46408deb70d9aabb_3" [label="3: Call alloc \n n$7=_fun___objc_alloc_no_fail(sizeof(t=A):unsigned long) [line 62, column 3]\n " shape="box"] "call_alloc_instance#A#instance.70a20314d55f22fb46408deb70d9aabb_3" -> "call_alloc_instance#A#instance.70a20314d55f22fb46408deb70d9aabb_2" ; @@ -68,7 +68,7 @@ digraph cfg { "call_class_instance#A#instance.eb1ae02cd94582eb1fc7cb426794f9f0_2" [label="2: Exit A_call_class_instance \n " color=yellow style=filled] -"call_class_instance#A#instance.eb1ae02cd94582eb1fc7cb426794f9f0_3" [label="3: Message Call: test_class \n n$7=_fun_C_test_class() [line 66, column 3]\n " shape="box"] +"call_class_instance#A#instance.eb1ae02cd94582eb1fc7cb426794f9f0_3" [label="3: Message Call: test_class \n n$9=_fun_C_test_class() [line 66, column 3]\n " shape="box"] "call_class_instance#A#instance.eb1ae02cd94582eb1fc7cb426794f9f0_3" -> "call_class_instance#A#instance.eb1ae02cd94582eb1fc7cb426794f9f0_2" ; @@ -79,7 +79,7 @@ digraph cfg { "call_class_instance_with_class_name#A#instance.1baf88c0fb5549c04909fab0bed63c39_2" [label="2: Exit A_call_class_instance_with_class_name \n " color=yellow style=filled] -"call_class_instance_with_class_name#A#instance.1baf88c0fb5549c04909fab0bed63c39_3" [label="3: Message Call: test_class \n n$8=_fun_A_test_class() [line 70, column 3]\n " shape="box"] +"call_class_instance_with_class_name#A#instance.1baf88c0fb5549c04909fab0bed63c39_3" [label="3: Message Call: test_class \n n$10=_fun_A_test_class() [line 70, column 3]\n " shape="box"] "call_class_instance_with_class_name#A#instance.1baf88c0fb5549c04909fab0bed63c39_3" -> "call_class_instance_with_class_name#A#instance.1baf88c0fb5549c04909fab0bed63c39_2" ; @@ -90,7 +90,7 @@ digraph cfg { "call_test#A#instance.41031d78ab8c6914ebc9851c442cbd4e_2" [label="2: Exit A_call_test \n " color=yellow style=filled] -"call_test#A#instance.41031d78ab8c6914ebc9851c442cbd4e_3" [label="3: Message Call: test \n n$0=*&self:A* [line 47, column 4]\n n$1=_fun_A_test(n$0:A*) virtual [line 47, column 3]\n " shape="box"] +"call_test#A#instance.41031d78ab8c6914ebc9851c442cbd4e_3" [label="3: Message Call: test \n n$1=*&self:A* [line 47, column 4]\n n$2=_fun_A_test(n$1:A*) virtual [line 47, column 3]\n " shape="box"] "call_test#A#instance.41031d78ab8c6914ebc9851c442cbd4e_3" -> "call_test#A#instance.41031d78ab8c6914ebc9851c442cbd4e_2" ; @@ -101,7 +101,7 @@ digraph cfg { "call_test_class#A#class.cc4e8c6ada1c4f85dad976d179e36c9a_2" [label="2: Exit A_call_test_class \n " color=yellow style=filled] -"call_test_class#A#class.cc4e8c6ada1c4f85dad976d179e36c9a_3" [label="3: Message Call: test_class \n n$2=_fun_C_test_class() [line 54, column 3]\n " shape="box"] +"call_test_class#A#class.cc4e8c6ada1c4f85dad976d179e36c9a_3" [label="3: Message Call: test_class \n n$4=_fun_C_test_class() [line 54, column 3]\n " shape="box"] "call_test_class#A#class.cc4e8c6ada1c4f85dad976d179e36c9a_3" -> "call_test_class#A#class.cc4e8c6ada1c4f85dad976d179e36c9a_2" ; @@ -112,7 +112,7 @@ digraph cfg { "calling_super#A#class.0edc1d1d1c4ade7cd9adaa77e7322ad1_2" [label="2: Exit A_calling_super \n " color=yellow style=filled] -"calling_super#A#class.0edc1d1d1c4ade7cd9adaa77e7322ad1_3" [label="3: Message Call: test_class \n n$16=_fun_C_test_class() [line 83, column 3]\n " shape="box"] +"calling_super#A#class.0edc1d1d1c4ade7cd9adaa77e7322ad1_3" [label="3: Message Call: test_class \n n$18=_fun_C_test_class() [line 83, column 3]\n " shape="box"] "calling_super#A#class.0edc1d1d1c4ade7cd9adaa77e7322ad1_3" -> "calling_super#A#class.0edc1d1d1c4ade7cd9adaa77e7322ad1_2" ; @@ -123,7 +123,7 @@ digraph cfg { "init#A#instance.eee79aaaddd644404e17691a7e7d809a_2" [label="2: Exit A_init \n " color=yellow style=filled] -"init#A#instance.eee79aaaddd644404e17691a7e7d809a_3" [label="3: Message Call: init \n n$17=*&self:A* [line 87, column 3]\n n$18=_fun_NSObject_init(n$17:A*) [line 87, column 3]\n " shape="box"] +"init#A#instance.eee79aaaddd644404e17691a7e7d809a_3" [label="3: Message Call: init \n n$19=*&self:A* [line 87, column 3]\n n$20=_fun_NSObject_init(n$19:A*) [line 87, column 3]\n " shape="box"] "init#A#instance.eee79aaaddd644404e17691a7e7d809a_3" -> "init#A#instance.eee79aaaddd644404e17691a7e7d809a_2" ; @@ -145,7 +145,7 @@ digraph cfg { "loggerName#A#instance.36b9a42412bcf7d8d3f8397eb2bcb555_2" [label="2: Exit A_loggerName \n " color=yellow style=filled] -"loggerName#A#instance.36b9a42412bcf7d8d3f8397eb2bcb555_3" [label="3: Return Stmt \n n$20=_fun_NSStringFromClass(sizeof(t=A):unsigned long) [line 91, column 10]\n *&return:NSString*=n$20 [line 91, column 3]\n " shape="box"] +"loggerName#A#instance.36b9a42412bcf7d8d3f8397eb2bcb555_3" [label="3: Return Stmt \n n$22=_fun_NSStringFromClass(sizeof(t=A):unsigned long) [line 91, column 10]\n *&return:NSString*=n$22 [line 91, column 3]\n " shape="box"] "loggerName#A#instance.36b9a42412bcf7d8d3f8397eb2bcb555_3" -> "loggerName#A#instance.36b9a42412bcf7d8d3f8397eb2bcb555_2" ; @@ -156,11 +156,11 @@ digraph cfg { "t#A#instance.e31b9a7bced712626784e2860af1a31b_2" [label="2: Exit A_t \n " color=yellow style=filled] -"t#A#instance.e31b9a7bced712626784e2860af1a31b_3" [label="3: Message Call: b_m \n n$10=_fun_B_b_m() [line 75, column 3]\n " shape="box"] +"t#A#instance.e31b9a7bced712626784e2860af1a31b_3" [label="3: Message Call: b_m \n n$12=_fun_B_b_m() [line 75, column 3]\n " shape="box"] "t#A#instance.e31b9a7bced712626784e2860af1a31b_3" -> "t#A#instance.e31b9a7bced712626784e2860af1a31b_2" ; -"t#A#instance.e31b9a7bced712626784e2860af1a31b_4" [label="4: DeclStmt \n n$11=_fun___objc_alloc_no_fail(sizeof(t=B):unsigned long) [line 74, column 10]\n n$12=_fun_NSObject_init(n$11:B*) virtual [line 74, column 10]\n *&b:B*=n$12 [line 74, column 3]\n " shape="box"] +"t#A#instance.e31b9a7bced712626784e2860af1a31b_4" [label="4: DeclStmt \n n$13=_fun___objc_alloc_no_fail(sizeof(t=B):unsigned long) [line 74, column 10]\n n$14=_fun_NSObject_init(n$13:B*) virtual [line 74, column 10]\n *&b:B*=n$14 [line 74, column 3]\n " shape="box"] "t#A#instance.e31b9a7bced712626784e2860af1a31b_4" -> "t#A#instance.e31b9a7bced712626784e2860af1a31b_3" ; @@ -185,7 +185,7 @@ digraph cfg { "use_class_in_other_ways:#A#instance.cbf4e00d3f8c81248ee881a47ed7e84f_2" [label="2: Exit A_use_class_in_other_ways: \n " color=yellow style=filled] -"use_class_in_other_ways:#A#instance.cbf4e00d3f8c81248ee881a47ed7e84f_3" [label="3: Return Stmt \n n$13=*&object:B* [line 79, column 11]\n n$15=_fun_B_isC:(n$13:B*,sizeof(t=A):unsigned long) virtual [line 79, column 10]\n *&return:_Bool=n$15 [line 79, column 3]\n " shape="box"] +"use_class_in_other_ways:#A#instance.cbf4e00d3f8c81248ee881a47ed7e84f_3" [label="3: Return Stmt \n n$16=*&object:B* [line 79, column 11]\n n$17=_fun_B_isC:(n$16:B*,sizeof(t=A):unsigned long) virtual [line 79, column 10]\n *&return:_Bool=n$17 [line 79, column 3]\n " shape="box"] "use_class_in_other_ways:#A#instance.cbf4e00d3f8c81248ee881a47ed7e84f_3" -> "use_class_in_other_ways:#A#instance.cbf4e00d3f8c81248ee881a47ed7e84f_2" ; @@ -204,16 +204,16 @@ digraph cfg { "used_in_binary_op:#A#class.9f855a338b344f4b5060d2d4a2a955ed_4" -> "used_in_binary_op:#A#class.9f855a338b344f4b5060d2d4a2a955ed_2" ; -"used_in_binary_op:#A#class.9f855a338b344f4b5060d2d4a2a955ed_5" [label="5: BinaryOperatorStmt: NE \n n$21=*sizeof(t=A):objc_class* [line 95, column 7]\n n$22=*&c:objc_class* [line 95, column 15]\n " shape="box"] +"used_in_binary_op:#A#class.9f855a338b344f4b5060d2d4a2a955ed_5" [label="5: BinaryOperatorStmt: NE \n n$23=*sizeof(t=A):objc_class* [line 95, column 7]\n n$24=*&c:objc_class* [line 95, column 15]\n " shape="box"] "used_in_binary_op:#A#class.9f855a338b344f4b5060d2d4a2a955ed_5" -> "used_in_binary_op:#A#class.9f855a338b344f4b5060d2d4a2a955ed_6" ; "used_in_binary_op:#A#class.9f855a338b344f4b5060d2d4a2a955ed_5" -> "used_in_binary_op:#A#class.9f855a338b344f4b5060d2d4a2a955ed_7" ; -"used_in_binary_op:#A#class.9f855a338b344f4b5060d2d4a2a955ed_6" [label="6: Prune (true branch, if) \n PRUNE((n$21 != n$22), true); [line 95, column 7]\n " shape="invhouse"] +"used_in_binary_op:#A#class.9f855a338b344f4b5060d2d4a2a955ed_6" [label="6: Prune (true branch, if) \n PRUNE((n$23 != n$24), true); [line 95, column 7]\n " shape="invhouse"] "used_in_binary_op:#A#class.9f855a338b344f4b5060d2d4a2a955ed_6" -> "used_in_binary_op:#A#class.9f855a338b344f4b5060d2d4a2a955ed_8" ; -"used_in_binary_op:#A#class.9f855a338b344f4b5060d2d4a2a955ed_7" [label="7: Prune (false branch, if) \n PRUNE(!(n$21 != n$22), false); [line 95, column 7]\n " shape="invhouse"] +"used_in_binary_op:#A#class.9f855a338b344f4b5060d2d4a2a955ed_7" [label="7: Prune (false branch, if) \n PRUNE(!(n$23 != n$24), false); [line 95, column 7]\n " shape="invhouse"] "used_in_binary_op:#A#class.9f855a338b344f4b5060d2d4a2a955ed_7" -> "used_in_binary_op:#A#class.9f855a338b344f4b5060d2d4a2a955ed_9" ; diff --git a/infer/tests/codetoanalyze/objc/frontend/types/void_call.m.dot b/infer/tests/codetoanalyze/objc/frontend/types/void_call.m.dot index 2056d7861..34dd75c76 100644 --- a/infer/tests/codetoanalyze/objc/frontend/types/void_call.m.dot +++ b/infer/tests/codetoanalyze/objc/frontend/types/void_call.m.dot @@ -45,24 +45,24 @@ digraph cfg { "main.fad58de7366495db4650cfefac2fcd61_6" -> "main.fad58de7366495db4650cfefac2fcd61_4" ; -"main.fad58de7366495db4650cfefac2fcd61_7" [label="7: BinaryOperatorStmt: Assign \n n$1=*&o:AClass* [line 45, column 10]\n n$2=*&x:int [line 45, column 16]\n n$3=_fun_AClass_bar:(n$1:AClass*,n$2:int) virtual [line 45, column 9]\n *&x:int=n$3 [line 45, column 5]\n " shape="box"] +"main.fad58de7366495db4650cfefac2fcd61_7" [label="7: BinaryOperatorStmt: Assign \n n$2=*&o:AClass* [line 45, column 10]\n n$1=*&x:int [line 45, column 16]\n n$3=_fun_AClass_bar:(n$2:AClass*,n$1:int) virtual [line 45, column 9]\n *&x:int=n$3 [line 45, column 5]\n " shape="box"] "main.fad58de7366495db4650cfefac2fcd61_7" -> "main.fad58de7366495db4650cfefac2fcd61_4" ; -"main.fad58de7366495db4650cfefac2fcd61_8" [label="8: Message Call: foo: \n n$4=*&o:AClass* [line 44, column 6]\n n$5=*&x:int [line 44, column 12]\n n$6=_fun_AClass_foo:(n$4:AClass*,n$5:int) virtual [line 44, column 5]\n " shape="box"] +"main.fad58de7366495db4650cfefac2fcd61_8" [label="8: Message Call: foo: \n n$5=*&o:AClass* [line 44, column 6]\n n$4=*&x:int [line 44, column 12]\n n$6=_fun_AClass_foo:(n$5:AClass*,n$4:int) virtual [line 44, column 5]\n " shape="box"] "main.fad58de7366495db4650cfefac2fcd61_8" -> "main.fad58de7366495db4650cfefac2fcd61_7" ; -"main.fad58de7366495db4650cfefac2fcd61_9" [label="9: DeclStmt \n n$7=_fun___objc_alloc_no_fail(sizeof(t=AClass):unsigned long) [line 40, column 15]\n *&o:AClass*=n$7 [line 40, column 3]\n " shape="box"] +"main.fad58de7366495db4650cfefac2fcd61_9" [label="9: DeclStmt \n n$9=_fun___objc_alloc_no_fail(sizeof(t=AClass):unsigned long) [line 40, column 15]\n *&o:AClass*=n$9 [line 40, column 3]\n " shape="box"] "main.fad58de7366495db4650cfefac2fcd61_9" -> "main.fad58de7366495db4650cfefac2fcd61_5" ; "main.fad58de7366495db4650cfefac2fcd61_9" -> "main.fad58de7366495db4650cfefac2fcd61_6" ; -"main.fad58de7366495db4650cfefac2fcd61_10" [label="10: BinaryOperatorStmt: Assign \n n$8=*&x:int [line 38, column 12]\n n$9=_fun_bar1(n$8:int) [line 38, column 7]\n *&x:int=n$9 [line 38, column 3]\n " shape="box"] +"main.fad58de7366495db4650cfefac2fcd61_10" [label="10: BinaryOperatorStmt: Assign \n n$10=*&x:int [line 38, column 12]\n n$11=_fun_bar1(n$10:int) [line 38, column 7]\n *&x:int=n$11 [line 38, column 3]\n " shape="box"] "main.fad58de7366495db4650cfefac2fcd61_10" -> "main.fad58de7366495db4650cfefac2fcd61_9" ; -"main.fad58de7366495db4650cfefac2fcd61_11" [label="11: Call _fun_foo1 \n n$10=*&x:int [line 36, column 8]\n n$11=_fun_foo1(n$10:int) [line 36, column 3]\n " shape="box"] +"main.fad58de7366495db4650cfefac2fcd61_11" [label="11: Call _fun_foo1 \n n$12=*&x:int [line 36, column 8]\n n$13=_fun_foo1(n$12:int) [line 36, column 3]\n " shape="box"] "main.fad58de7366495db4650cfefac2fcd61_11" -> "main.fad58de7366495db4650cfefac2fcd61_10" ; diff --git a/infer/tests/codetoanalyze/objc/shared/annotations/nullable_annotations.m.dot b/infer/tests/codetoanalyze/objc/shared/annotations/nullable_annotations.m.dot index dd4987675..19a418784 100644 --- a/infer/tests/codetoanalyze/objc/shared/annotations/nullable_annotations.m.dot +++ b/infer/tests/codetoanalyze/objc/shared/annotations/nullable_annotations.m.dot @@ -7,7 +7,7 @@ digraph cfg { "npe_property_nullable.ba4461b16b55481ab8de5124734d2bf3_2" [label="2: Exit npe_property_nullable \n " color=yellow style=filled] -"npe_property_nullable.ba4461b16b55481ab8de5124734d2bf3_3" [label="3: Return Stmt \n n$0=*&child:Person* [line 58, column 22]\n n$1=_fun_NSString_stringWithUTF8String:(\"key\":char* const ) [line 58, column 13]\n n$2=_fun_NSDictionary_dictionaryWithObjects:forKeys:count:(n$0:objc_object*,n$1:objc_object*,null:objc_object*) [line 58, column 10]\n *&return:NSDictionary*=n$2 [line 58, column 3]\n " shape="box"] +"npe_property_nullable.ba4461b16b55481ab8de5124734d2bf3_3" [label="3: Return Stmt \n n$1=*&child:Person* [line 58, column 22]\n n$0=_fun_NSString_stringWithUTF8String:(\"key\":char* const ) [line 58, column 13]\n n$2=_fun_NSDictionary_dictionaryWithObjects:forKeys:count:(n$1:objc_object*,n$0:objc_object*,null:objc_object*) [line 58, column 10]\n *&return:NSDictionary*=n$2 [line 58, column 3]\n " shape="box"] "npe_property_nullable.ba4461b16b55481ab8de5124734d2bf3_3" -> "npe_property_nullable.ba4461b16b55481ab8de5124734d2bf3_2" ; diff --git a/infer/tests/codetoanalyze/objc/shared/block/BlockVar.m.dot b/infer/tests/codetoanalyze/objc/shared/block/BlockVar.m.dot index 6f7be50af..46bb939c0 100644 --- a/infer/tests/codetoanalyze/objc/shared/block/BlockVar.m.dot +++ b/infer/tests/codetoanalyze/objc/shared/block/BlockVar.m.dot @@ -7,7 +7,7 @@ digraph cfg { "objc_blockBlockVar_blockPostBad_2.bc84c345da03940b9d1bd31f97111684_2" [label="2: Exit objc_blockBlockVar_blockPostBad_2 \n " color=yellow style=filled] -"objc_blockBlockVar_blockPostBad_2.bc84c345da03940b9d1bd31f97111684_3" [label="3: Return Stmt \n n$14=*&x:int* [line 34, column 12]\n *&return:int*=n$14 [line 34, column 5]\n " shape="box"] +"objc_blockBlockVar_blockPostBad_2.bc84c345da03940b9d1bd31f97111684_3" [label="3: Return Stmt \n n$15=*&x:int* [line 34, column 12]\n *&return:int*=n$15 [line 34, column 5]\n " shape="box"] "objc_blockBlockVar_blockPostBad_2.bc84c345da03940b9d1bd31f97111684_3" -> "objc_blockBlockVar_blockPostBad_2.bc84c345da03940b9d1bd31f97111684_2" ; @@ -18,7 +18,7 @@ digraph cfg { "objc_blockBlockVar_blockPostOk_3.3ab7fa6614f426747520e37cb5442862_2" [label="2: Exit objc_blockBlockVar_blockPostOk_3 \n " color=yellow style=filled] -"objc_blockBlockVar_blockPostOk_3.3ab7fa6614f426747520e37cb5442862_3" [label="3: Return Stmt \n n$19=*&x:int* [line 43, column 12]\n *&return:int*=n$19 [line 43, column 5]\n " shape="box"] +"objc_blockBlockVar_blockPostOk_3.3ab7fa6614f426747520e37cb5442862_3" [label="3: Return Stmt \n n$20=*&x:int* [line 43, column 12]\n *&return:int*=n$20 [line 43, column 5]\n " shape="box"] "objc_blockBlockVar_blockPostOk_3.3ab7fa6614f426747520e37cb5442862_3" -> "objc_blockBlockVar_blockPostOk_3.3ab7fa6614f426747520e37cb5442862_2" ; @@ -29,7 +29,7 @@ digraph cfg { "objc_blockBlockVar_capturedNoNullDeref_5.9ca77a5edecb840a7e1b223eb6f09bab_2" [label="2: Exit objc_blockBlockVar_capturedNoNullDeref_5 \n " color=yellow style=filled] -"objc_blockBlockVar_capturedNoNullDeref_5.9ca77a5edecb840a7e1b223eb6f09bab_3" [label="3: Return Stmt \n n$28=*&x:int* [line 60, column 13]\n n$29=*n$28:int [line 60, column 12]\n *&return:int=n$29 [line 60, column 5]\n " shape="box"] +"objc_blockBlockVar_capturedNoNullDeref_5.9ca77a5edecb840a7e1b223eb6f09bab_3" [label="3: Return Stmt \n n$29=*&x:int* [line 60, column 13]\n n$30=*n$29:int [line 60, column 12]\n *&return:int=n$30 [line 60, column 5]\n " shape="box"] "objc_blockBlockVar_capturedNoNullDeref_5.9ca77a5edecb840a7e1b223eb6f09bab_3" -> "objc_blockBlockVar_capturedNoNullDeref_5.9ca77a5edecb840a7e1b223eb6f09bab_2" ; @@ -40,7 +40,7 @@ digraph cfg { "objc_blockBlockVar_capturedNullDeref_4.1bdaeaa4f18868112cc189c7d6e42bf9_2" [label="2: Exit objc_blockBlockVar_capturedNullDeref_4 \n " color=yellow style=filled] -"objc_blockBlockVar_capturedNullDeref_4.1bdaeaa4f18868112cc189c7d6e42bf9_3" [label="3: Return Stmt \n n$23=*&x:int* [line 51, column 13]\n n$24=*n$23:int [line 51, column 12]\n *&return:int=n$24 [line 51, column 5]\n " shape="box"] +"objc_blockBlockVar_capturedNullDeref_4.1bdaeaa4f18868112cc189c7d6e42bf9_3" [label="3: Return Stmt \n n$24=*&x:int* [line 51, column 13]\n n$25=*n$24:int [line 51, column 12]\n *&return:int=n$25 [line 51, column 5]\n " shape="box"] "objc_blockBlockVar_capturedNullDeref_4.1bdaeaa4f18868112cc189c7d6e42bf9_3" -> "objc_blockBlockVar_capturedNullDeref_4.1bdaeaa4f18868112cc189c7d6e42bf9_2" ; @@ -51,11 +51,11 @@ digraph cfg { "objc_blockBlockVar_navigateToURLInBackground_1.3f33ba208d462b81a235e03653494b18_2" [label="2: Exit objc_blockBlockVar_navigateToURLInBackground_1 \n " color=yellow style=filled] -"objc_blockBlockVar_navigateToURLInBackground_1.3f33ba208d462b81a235e03653494b18_3" [label="3: Return Stmt \n n$6=*&a:int [line 21, column 12]\n n$7=*&b:int [line 21, column 16]\n n$8=*&res:int [line 21, column 20]\n *&return:int=((n$6 + n$7) + n$8) [line 21, column 5]\n " shape="box"] +"objc_blockBlockVar_navigateToURLInBackground_1.3f33ba208d462b81a235e03653494b18_3" [label="3: Return Stmt \n n$7=*&a:int [line 21, column 12]\n n$8=*&b:int [line 21, column 16]\n n$9=*&res:int [line 21, column 20]\n *&return:int=((n$7 + n$8) + n$9) [line 21, column 5]\n " shape="box"] "objc_blockBlockVar_navigateToURLInBackground_1.3f33ba208d462b81a235e03653494b18_3" -> "objc_blockBlockVar_navigateToURLInBackground_1.3f33ba208d462b81a235e03653494b18_2" ; -"objc_blockBlockVar_navigateToURLInBackground_1.3f33ba208d462b81a235e03653494b18_4" [label="4: DeclStmt \n n$9=_fun_BlockVar_test() [line 20, column 15]\n *&res:int=n$9 [line 20, column 5]\n " shape="box"] +"objc_blockBlockVar_navigateToURLInBackground_1.3f33ba208d462b81a235e03653494b18_4" [label="4: DeclStmt \n n$10=_fun_BlockVar_test() [line 20, column 15]\n *&res:int=n$10 [line 20, column 5]\n " shape="box"] "objc_blockBlockVar_navigateToURLInBackground_1.3f33ba208d462b81a235e03653494b18_4" -> "objc_blockBlockVar_navigateToURLInBackground_1.3f33ba208d462b81a235e03653494b18_3" ; @@ -66,11 +66,11 @@ digraph cfg { "blockPostBad#BlockVar#instance.60292f870cad8c1a5cefdbfe4194d6f9_2" [label="2: Exit BlockVar_blockPostBad \n " color=yellow style=filled] -"blockPostBad#BlockVar#instance.60292f870cad8c1a5cefdbfe4194d6f9_3" [label="3: Return Stmt \n n$10=*&my_block:_fn_(*) [line 36, column 11]\n n$11=n$10() [line 36, column 11]\n n$12=*n$11:int [line 36, column 10]\n *&return:int=n$12 [line 36, column 3]\n " shape="box"] +"blockPostBad#BlockVar#instance.60292f870cad8c1a5cefdbfe4194d6f9_3" [label="3: Return Stmt \n n$11=*&my_block:_fn_(*) [line 36, column 11]\n n$12=n$11() [line 36, column 11]\n n$13=*n$12:int [line 36, column 10]\n *&return:int=n$13 [line 36, column 3]\n " shape="box"] "blockPostBad#BlockVar#instance.60292f870cad8c1a5cefdbfe4194d6f9_3" -> "blockPostBad#BlockVar#instance.60292f870cad8c1a5cefdbfe4194d6f9_2" ; -"blockPostBad#BlockVar#instance.60292f870cad8c1a5cefdbfe4194d6f9_4" [label="4: DeclStmt \n n$13=*&x:int* [line 33, column 28]\n *&my_block:_fn_(*)=(_fun_objc_blockBlockVar_blockPostBad_2,(n$13 &x:int*)) [line 33, column 3]\n " shape="box"] +"blockPostBad#BlockVar#instance.60292f870cad8c1a5cefdbfe4194d6f9_4" [label="4: DeclStmt \n n$14=*&x:int* [line 33, column 28]\n *&my_block:_fn_(*)=(_fun_objc_blockBlockVar_blockPostBad_2,(n$14 &x:int*)) [line 33, column 3]\n " shape="box"] "blockPostBad#BlockVar#instance.60292f870cad8c1a5cefdbfe4194d6f9_4" -> "blockPostBad#BlockVar#instance.60292f870cad8c1a5cefdbfe4194d6f9_3" ; @@ -85,11 +85,11 @@ digraph cfg { "blockPostOk#BlockVar#instance.1bb64a946f8b169b31996644931ed82d_2" [label="2: Exit BlockVar_blockPostOk \n " color=yellow style=filled] -"blockPostOk#BlockVar#instance.1bb64a946f8b169b31996644931ed82d_3" [label="3: Return Stmt \n n$15=*&my_block:_fn_(*) [line 45, column 11]\n n$16=n$15() [line 45, column 11]\n n$17=*n$16:int [line 45, column 10]\n *&return:int=n$17 [line 45, column 3]\n " shape="box"] +"blockPostOk#BlockVar#instance.1bb64a946f8b169b31996644931ed82d_3" [label="3: Return Stmt \n n$16=*&my_block:_fn_(*) [line 45, column 11]\n n$17=n$16() [line 45, column 11]\n n$18=*n$17:int [line 45, column 10]\n *&return:int=n$18 [line 45, column 3]\n " shape="box"] "blockPostOk#BlockVar#instance.1bb64a946f8b169b31996644931ed82d_3" -> "blockPostOk#BlockVar#instance.1bb64a946f8b169b31996644931ed82d_2" ; -"blockPostOk#BlockVar#instance.1bb64a946f8b169b31996644931ed82d_4" [label="4: DeclStmt \n n$18=*&x:int* [line 42, column 28]\n *&my_block:_fn_(*)=(_fun_objc_blockBlockVar_blockPostOk_3,(n$18 &x:int*)) [line 42, column 3]\n " shape="box"] +"blockPostOk#BlockVar#instance.1bb64a946f8b169b31996644931ed82d_4" [label="4: DeclStmt \n n$19=*&x:int* [line 42, column 28]\n *&my_block:_fn_(*)=(_fun_objc_blockBlockVar_blockPostOk_3,(n$19 &x:int*)) [line 42, column 3]\n " shape="box"] "blockPostOk#BlockVar#instance.1bb64a946f8b169b31996644931ed82d_4" -> "blockPostOk#BlockVar#instance.1bb64a946f8b169b31996644931ed82d_3" ; @@ -108,7 +108,7 @@ digraph cfg { "capturedNoNullDeref#BlockVar#instance.ebe646baaabdc58144a5916780ee8c76_2" [label="2: Exit BlockVar_capturedNoNullDeref \n " color=yellow style=filled] -"capturedNoNullDeref#BlockVar#instance.ebe646baaabdc58144a5916780ee8c76_3" [label="3: Return Stmt \n n$25=*&my_block:_fn_(*) [line 63, column 10]\n n$26=n$25() [line 63, column 10]\n *&return:int=n$26 [line 63, column 3]\n " shape="box"] +"capturedNoNullDeref#BlockVar#instance.ebe646baaabdc58144a5916780ee8c76_3" [label="3: Return Stmt \n n$26=*&my_block:_fn_(*) [line 63, column 10]\n n$27=n$26() [line 63, column 10]\n *&return:int=n$27 [line 63, column 3]\n " shape="box"] "capturedNoNullDeref#BlockVar#instance.ebe646baaabdc58144a5916780ee8c76_3" -> "capturedNoNullDeref#BlockVar#instance.ebe646baaabdc58144a5916780ee8c76_2" ; @@ -116,7 +116,7 @@ digraph cfg { "capturedNoNullDeref#BlockVar#instance.ebe646baaabdc58144a5916780ee8c76_4" -> "capturedNoNullDeref#BlockVar#instance.ebe646baaabdc58144a5916780ee8c76_3" ; -"capturedNoNullDeref#BlockVar#instance.ebe646baaabdc58144a5916780ee8c76_5" [label="5: DeclStmt \n n$27=*&x:int* [line 59, column 27]\n *&my_block:_fn_(*)=(_fun_objc_blockBlockVar_capturedNoNullDeref_5,(n$27 &x:int*)) [line 59, column 3]\n " shape="box"] +"capturedNoNullDeref#BlockVar#instance.ebe646baaabdc58144a5916780ee8c76_5" [label="5: DeclStmt \n n$28=*&x:int* [line 59, column 27]\n *&my_block:_fn_(*)=(_fun_objc_blockBlockVar_capturedNoNullDeref_5,(n$28 &x:int*)) [line 59, column 3]\n " shape="box"] "capturedNoNullDeref#BlockVar#instance.ebe646baaabdc58144a5916780ee8c76_5" -> "capturedNoNullDeref#BlockVar#instance.ebe646baaabdc58144a5916780ee8c76_4" ; @@ -135,11 +135,11 @@ digraph cfg { "capturedNullDeref#BlockVar#instance.48c44f7ae26caf7a1ac522523ebac894_2" [label="2: Exit BlockVar_capturedNullDeref \n " color=yellow style=filled] -"capturedNullDeref#BlockVar#instance.48c44f7ae26caf7a1ac522523ebac894_3" [label="3: Return Stmt \n n$20=*&my_block:_fn_(*) [line 53, column 10]\n n$21=n$20() [line 53, column 10]\n *&return:int=n$21 [line 53, column 3]\n " shape="box"] +"capturedNullDeref#BlockVar#instance.48c44f7ae26caf7a1ac522523ebac894_3" [label="3: Return Stmt \n n$21=*&my_block:_fn_(*) [line 53, column 10]\n n$22=n$21() [line 53, column 10]\n *&return:int=n$22 [line 53, column 3]\n " shape="box"] "capturedNullDeref#BlockVar#instance.48c44f7ae26caf7a1ac522523ebac894_3" -> "capturedNullDeref#BlockVar#instance.48c44f7ae26caf7a1ac522523ebac894_2" ; -"capturedNullDeref#BlockVar#instance.48c44f7ae26caf7a1ac522523ebac894_4" [label="4: DeclStmt \n n$22=*&x:int* [line 50, column 27]\n *&my_block:_fn_(*)=(_fun_objc_blockBlockVar_capturedNullDeref_4,(n$22 &x:int*)) [line 50, column 3]\n " shape="box"] +"capturedNullDeref#BlockVar#instance.48c44f7ae26caf7a1ac522523ebac894_4" [label="4: DeclStmt \n n$23=*&x:int* [line 50, column 27]\n *&my_block:_fn_(*)=(_fun_objc_blockBlockVar_capturedNullDeref_4,(n$23 &x:int*)) [line 50, column 3]\n " shape="box"] "capturedNullDeref#BlockVar#instance.48c44f7ae26caf7a1ac522523ebac894_4" -> "capturedNullDeref#BlockVar#instance.48c44f7ae26caf7a1ac522523ebac894_3" ; @@ -187,7 +187,7 @@ digraph cfg { "navigateToURLInBackground#BlockVar#class.f4e64a7a224e4dae5096c3b731a4233e_10" -> "navigateToURLInBackground#BlockVar#class.f4e64a7a224e4dae5096c3b731a4233e_5" ; -"navigateToURLInBackground#BlockVar#class.f4e64a7a224e4dae5096c3b731a4233e_11" [label="11: DeclStmt \n n$4=*&addBlock:_fn_(*) [line 23, column 11]\n n$5=n$4(1:int,2:int) [line 23, column 11]\n *&x:int=n$5 [line 23, column 3]\n " shape="box"] +"navigateToURLInBackground#BlockVar#class.f4e64a7a224e4dae5096c3b731a4233e_11" [label="11: DeclStmt \n n$5=*&addBlock:_fn_(*) [line 23, column 11]\n n$6=n$5(1:int,2:int) [line 23, column 11]\n *&x:int=n$6 [line 23, column 3]\n " shape="box"] "navigateToURLInBackground#BlockVar#class.f4e64a7a224e4dae5096c3b731a4233e_11" -> "navigateToURLInBackground#BlockVar#class.f4e64a7a224e4dae5096c3b731a4233e_10" ; diff --git a/infer/tests/codetoanalyze/objc/shared/block/Blocks_as_parameters.m.dot b/infer/tests/codetoanalyze/objc/shared/block/Blocks_as_parameters.m.dot index d451d9e95..ddd88eb46 100644 --- a/infer/tests/codetoanalyze/objc/shared/block/Blocks_as_parameters.m.dot +++ b/infer/tests/codetoanalyze/objc/shared/block/Blocks_as_parameters.m.dot @@ -7,7 +7,7 @@ digraph cfg { "objc_blockB_f_1.9ca2cd9875647cc0e2a4803d22445f9c_2" [label="2: Exit objc_blockB_f_1 \n " color=yellow style=filled] -"objc_blockB_f_1.9ca2cd9875647cc0e2a4803d22445f9c_3" [label="3: BinaryOperatorStmt: Assign \n n$5=*&self:B* [line 27, column 9]\n *n$5.x:int=5 [line 27, column 9]\n " shape="box"] +"objc_blockB_f_1.9ca2cd9875647cc0e2a4803d22445f9c_3" [label="3: BinaryOperatorStmt: Assign \n n$3=*&self:B* [line 27, column 9]\n *n$3.x:int=5 [line 27, column 9]\n " shape="box"] "objc_blockB_f_1.9ca2cd9875647cc0e2a4803d22445f9c_3" -> "objc_blockB_f_1.9ca2cd9875647cc0e2a4803d22445f9c_2" ; @@ -22,7 +22,7 @@ digraph cfg { "f#B#instance.f1371ff5e7f410d3df6a2e71ff0a814e_3" -> "f#B#instance.f1371ff5e7f410d3df6a2e71ff0a814e_2" ; -"f#B#instance.f1371ff5e7f410d3df6a2e71ff0a814e_4" [label="4: Message Call: foo:and: \n n$2=*&self:B* [line 25, column 10]\n n$3=*n$2.h:int [line 25, column 10]\n n$4=*&self:B* const [line 26, column 11]\n n$6=_fun_B_foo:and:(n$3:int,(_fun_objc_blockB_f_1,(n$4 &self:B* const )):_fn_(*)) block_params [line 25, column 3]\n " shape="box"] +"f#B#instance.f1371ff5e7f410d3df6a2e71ff0a814e_4" [label="4: Message Call: foo:and: \n n$4=*&self:B* [line 25, column 10]\n n$5=*n$4.h:int [line 25, column 10]\n n$2=*&self:B* const [line 26, column 11]\n n$6=_fun_B_foo:and:(n$5:int,(_fun_objc_blockB_f_1,(n$2 &self:B* const )):_fn_(*)) block_params [line 25, column 3]\n " shape="box"] "f#B#instance.f1371ff5e7f410d3df6a2e71ff0a814e_4" -> "f#B#instance.f1371ff5e7f410d3df6a2e71ff0a814e_3" ; diff --git a/infer/tests/codetoanalyze/objc/shared/block/block-it.m.dot b/infer/tests/codetoanalyze/objc/shared/block/block-it.m.dot index 74ee0587c..f7ef1c05e 100644 --- a/infer/tests/codetoanalyze/objc/shared/block/block-it.m.dot +++ b/infer/tests/codetoanalyze/objc/shared/block/block-it.m.dot @@ -44,15 +44,15 @@ digraph cfg { "objc_blockMyBlock_array_trans_2.5153520a659dce1fe6582bd44cf47e84_4" -> "objc_blockMyBlock_array_trans_2.5153520a659dce1fe6582bd44cf47e84_2" ; -"objc_blockMyBlock_array_trans_2.5153520a659dce1fe6582bd44cf47e84_5" [label="5: Prune (true branch, if) \n n$24=*&ShouldStop:int [line 44, column 13]\n PRUNE(n$24, true); [line 44, column 13]\n " shape="invhouse"] +"objc_blockMyBlock_array_trans_2.5153520a659dce1fe6582bd44cf47e84_5" [label="5: Prune (true branch, if) \n n$32=*&ShouldStop:int [line 44, column 13]\n PRUNE(n$32, true); [line 44, column 13]\n " shape="invhouse"] "objc_blockMyBlock_array_trans_2.5153520a659dce1fe6582bd44cf47e84_5" -> "objc_blockMyBlock_array_trans_2.5153520a659dce1fe6582bd44cf47e84_7" ; -"objc_blockMyBlock_array_trans_2.5153520a659dce1fe6582bd44cf47e84_6" [label="6: Prune (false branch, if) \n n$24=*&ShouldStop:int [line 44, column 13]\n PRUNE(!n$24, false); [line 44, column 13]\n " shape="invhouse"] +"objc_blockMyBlock_array_trans_2.5153520a659dce1fe6582bd44cf47e84_6" [label="6: Prune (false branch, if) \n n$32=*&ShouldStop:int [line 44, column 13]\n PRUNE(!n$32, false); [line 44, column 13]\n " shape="invhouse"] "objc_blockMyBlock_array_trans_2.5153520a659dce1fe6582bd44cf47e84_6" -> "objc_blockMyBlock_array_trans_2.5153520a659dce1fe6582bd44cf47e84_3" ; -"objc_blockMyBlock_array_trans_2.5153520a659dce1fe6582bd44cf47e84_7" [label="7: BinaryOperatorStmt: Assign \n n$25=*&stop:_Bool* [line 45, column 12]\n *n$25:_Bool=1 [line 45, column 11]\n " shape="box"] +"objc_blockMyBlock_array_trans_2.5153520a659dce1fe6582bd44cf47e84_7" [label="7: BinaryOperatorStmt: Assign \n n$33=*&stop:_Bool* [line 45, column 12]\n *n$33:_Bool=1 [line 45, column 11]\n " shape="box"] "objc_blockMyBlock_array_trans_2.5153520a659dce1fe6582bd44cf47e84_7" -> "objc_blockMyBlock_array_trans_2.5153520a659dce1fe6582bd44cf47e84_3" ; @@ -63,11 +63,11 @@ digraph cfg { "array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_2" [label="2: Exit MyBlock_array \n " color=yellow style=filled] -"array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_3" [label="3: Message Call: enumerateObjectsUsingBlock: \n n$0=*&a:NSArray* [line 21, column 4]\n n$3=_fun_NSArray_enumerateObjectsUsingBlock:(n$0:NSArray*,(_fun_objc_blockMyBlock_array_1):_fn_(*)) virtual block_params [line 21, column 3]\n " shape="box"] +"array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_3" [label="3: Message Call: enumerateObjectsUsingBlock: \n n$5=*&a:NSArray* [line 21, column 4]\n n$6=_fun_NSArray_enumerateObjectsUsingBlock:(n$5:NSArray*,(_fun_objc_blockMyBlock_array_1):_fn_(*)) virtual block_params [line 21, column 3]\n " shape="box"] "array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_3" -> "array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_2" ; -"array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_4" [label="4: DeclStmt \n n$4=_fun___objc_alloc_no_fail(sizeof(t=NSArray):unsigned long) [line 20, column 17]\n n$5=_fun_NSArray_init(n$4:NSArray*) virtual [line 20, column 16]\n *&a:NSArray*=n$5 [line 20, column 3]\n " shape="box"] +"array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_4" [label="4: DeclStmt \n n$7=_fun___objc_alloc_no_fail(sizeof(t=NSArray):unsigned long) [line 20, column 17]\n n$8=_fun_NSArray_init(n$7:NSArray*) virtual [line 20, column 16]\n *&a:NSArray*=n$8 [line 20, column 3]\n " shape="box"] "array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_4" -> "array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_3" ; @@ -78,7 +78,7 @@ digraph cfg { "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_2" [label="2: Exit MyBlock_array_trans \n " color=yellow style=filled] -"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_3" [label="3: Call _fun_free \n n$6=*&stop:_Bool* [line 58, column 8]\n n$7=_fun_free(n$6:void*) [line 58, column 3]\n " shape="box"] +"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_3" [label="3: Call _fun_free \n n$9=*&stop:_Bool* [line 58, column 8]\n n$10=_fun_free(n$9:void*) [line 58, column 3]\n " shape="box"] "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_3" -> "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_2" ; @@ -90,20 +90,20 @@ digraph cfg { "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_5" -> "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_4" ; -"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_6" [label="6: UnaryOperator \n n$8=*&idx:unsigned long [line 51, column 49]\n *&idx:unsigned long=(n$8 + 1) [line 51, column 49]\n " shape="box"] +"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_6" [label="6: UnaryOperator \n n$11=*&idx:unsigned long [line 51, column 49]\n *&idx:unsigned long=(n$11 + 1) [line 51, column 49]\n " shape="box"] "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_6" -> "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_4" ; -"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_7" [label="7: BinaryOperatorStmt: LT \n n$9=*&idx:unsigned long [line 51, column 28]\n n$10=*&objects:NSArray* [line 51, column 34]\n n$11=_fun_NSArray_count(n$10:NSArray*) [line 51, column 42]\n " shape="box"] +"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_7" [label="7: BinaryOperatorStmt: LT \n n$12=*&idx:unsigned long [line 51, column 28]\n n$13=*&objects:NSArray* [line 51, column 34]\n n$14=_fun_NSArray_count(n$13:NSArray*) [line 51, column 42]\n " shape="box"] "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_7" -> "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_8" ; "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_7" -> "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_9" ; -"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_8" [label="8: Prune (true branch, for loop) \n PRUNE((n$9 < n$11), true); [line 51, column 28]\n " shape="invhouse"] +"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_8" [label="8: Prune (true branch, for loop) \n PRUNE((n$12 < n$14), true); [line 51, column 28]\n " shape="invhouse"] "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_8" -> "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_15" ; -"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_9" [label="9: Prune (false branch, for loop) \n PRUNE(!(n$9 < n$11), false); [line 51, column 28]\n " shape="invhouse"] +"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_9" [label="9: Prune (false branch, for loop) \n PRUNE(!(n$12 < n$14), false); [line 51, column 28]\n " shape="invhouse"] "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_9" -> "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_3" ; @@ -111,32 +111,32 @@ digraph cfg { "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_10" -> "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_6" ; -"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_11" [label="11: BinaryOperatorStmt: EQ \n n$12=*&stop:_Bool* [line 55, column 10]\n n$13=*n$12:_Bool [line 55, column 9]\n " shape="box"] +"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_11" [label="11: BinaryOperatorStmt: EQ \n n$15=*&stop:_Bool* [line 55, column 10]\n n$16=*n$15:_Bool [line 55, column 9]\n " shape="box"] "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_11" -> "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_12" ; "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_11" -> "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_13" ; -"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_12" [label="12: Prune (true branch, if) \n PRUNE((n$13 == 1), true); [line 55, column 9]\n " shape="invhouse"] +"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_12" [label="12: Prune (true branch, if) \n PRUNE((n$16 == 1), true); [line 55, column 9]\n " shape="invhouse"] "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_12" -> "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_3" ; -"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_13" [label="13: Prune (false branch, if) \n PRUNE(!(n$13 == 1), false); [line 55, column 9]\n " shape="invhouse"] +"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_13" [label="13: Prune (false branch, if) \n PRUNE(!(n$16 == 1), false); [line 55, column 9]\n " shape="invhouse"] "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_13" -> "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_10" ; -"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_14" [label="14: Call n$14 \n n$14=*&enumerateObjectsUsingBlock:_fn_(*) [line 54, column 5]\n n$15=*&object:objc_object* [line 54, column 32]\n n$16=*&idx:unsigned long [line 54, column 40]\n n$17=*&stop:_Bool* [line 54, column 45]\n n$18=n$14(n$15:objc_object*,n$16:unsigned long,n$17:_Bool*) [line 54, column 5]\n " shape="box"] +"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_14" [label="14: Call n$20 \n n$20=*&enumerateObjectsUsingBlock:_fn_(*) [line 54, column 5]\n n$21=*&object:objc_object* [line 54, column 32]\n n$22=*&idx:unsigned long [line 54, column 40]\n n$23=*&stop:_Bool* [line 54, column 45]\n n$24=n$20(n$21:objc_object*,n$22:unsigned long,n$23:_Bool*) [line 54, column 5]\n " shape="box"] "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_14" -> "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_11" ; -"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_15" [label="15: DeclStmt \n n$19=*&objects:NSArray* [line 53, column 17]\n n$20=*&idx:unsigned long [line 53, column 25]\n n$21=_fun_NSArray_objectAtIndexedSubscript:(n$19:NSArray*,n$20:unsigned long) virtual [line 53, column 17]\n *&object:objc_object*=n$21 [line 53, column 5]\n " shape="box"] +"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_15" [label="15: DeclStmt \n n$26=*&objects:NSArray* [line 53, column 17]\n n$25=*&idx:unsigned long [line 53, column 25]\n n$27=_fun_NSArray_objectAtIndexedSubscript:(n$26:NSArray*,n$25:unsigned long) virtual [line 53, column 17]\n *&object:objc_object*=n$27 [line 53, column 5]\n " shape="box"] "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_15" -> "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_14" ; -"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_16" [label="16: BinaryOperatorStmt: Assign \n n$22=*&stop:_Bool* [line 49, column 4]\n *n$22:_Bool=0 [line 49, column 3]\n " shape="box"] +"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_16" [label="16: BinaryOperatorStmt: Assign \n n$29=*&stop:_Bool* [line 49, column 4]\n *n$29:_Bool=0 [line 49, column 3]\n " shape="box"] "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_16" -> "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_5" ; -"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_17" [label="17: DeclStmt \n n$23=_fun_malloc_no_fail(sizeof(t=_Bool;nbytes=1):_Bool) [line 48, column 16]\n *&stop:_Bool*=n$23 [line 48, column 3]\n " shape="box"] +"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_17" [label="17: DeclStmt \n n$30=_fun_malloc_no_fail(sizeof(t=_Bool;nbytes=1):_Bool) [line 48, column 16]\n *&stop:_Bool*=n$30 [line 48, column 3]\n " shape="box"] "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_17" -> "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_16" ; @@ -144,11 +144,11 @@ digraph cfg { "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_18" -> "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_17" ; -"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_19" [label="19: DeclStmt \n n$26=*&a:NSArray* [line 36, column 22]\n *&objects:NSArray*=n$26 [line 36, column 3]\n " shape="box"] +"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_19" [label="19: DeclStmt \n n$36=*&a:NSArray* [line 36, column 22]\n *&objects:NSArray*=n$36 [line 36, column 3]\n " shape="box"] "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_19" -> "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_18" ; -"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_20" [label="20: DeclStmt \n n$27=_fun___objc_alloc_no_fail(sizeof(t=NSArray):unsigned long) [line 34, column 17]\n n$28=_fun_NSArray_init(n$27:NSArray*) virtual [line 34, column 16]\n *&a:NSArray*=n$28 [line 34, column 3]\n " shape="box"] +"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_20" [label="20: DeclStmt \n n$37=_fun___objc_alloc_no_fail(sizeof(t=NSArray):unsigned long) [line 34, column 17]\n n$38=_fun_NSArray_init(n$37:NSArray*) virtual [line 34, column 16]\n *&a:NSArray*=n$38 [line 34, column 3]\n " shape="box"] "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_20" -> "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_19" ; diff --git a/infer/tests/codetoanalyze/objc/shared/block/block_no_args.m.dot b/infer/tests/codetoanalyze/objc/shared/block/block_no_args.m.dot index c3f593d45..e11904f31 100644 --- a/infer/tests/codetoanalyze/objc/shared/block/block_no_args.m.dot +++ b/infer/tests/codetoanalyze/objc/shared/block/block_no_args.m.dot @@ -7,7 +7,7 @@ digraph cfg { "objc_blockMy_manager_m_1.b75c41325ae3c65dcf5321924a57fc38_2" [label="2: Exit objc_blockMy_manager_m_1 \n " color=yellow style=filled] -"objc_blockMy_manager_m_1.b75c41325ae3c65dcf5321924a57fc38_3" [label="3: BinaryOperatorStmt: Assign \n n$7=*&z:int [line 26, column 9]\n *&#GB$g:int=(n$7 + 3) [line 26, column 5]\n " shape="box"] +"objc_blockMy_manager_m_1.b75c41325ae3c65dcf5321924a57fc38_3" [label="3: BinaryOperatorStmt: Assign \n n$8=*&z:int [line 26, column 9]\n *&#GB$g:int=(n$8 + 3) [line 26, column 5]\n " shape="box"] "objc_blockMy_manager_m_1.b75c41325ae3c65dcf5321924a57fc38_3" -> "objc_blockMy_manager_m_1.b75c41325ae3c65dcf5321924a57fc38_2" ; @@ -51,11 +51,11 @@ digraph cfg { "m#My_manager#instance.e773f849d062cb9801497b62f5c98f5e_10" -> "m#My_manager#instance.e773f849d062cb9801497b62f5c98f5e_5" ; -"m#My_manager#instance.e773f849d062cb9801497b62f5c98f5e_11" [label="11: Call n$4 \n n$4=*&b:_fn_(*) [line 28, column 3]\n n$5=n$4() [line 28, column 3]\n " shape="box"] +"m#My_manager#instance.e773f849d062cb9801497b62f5c98f5e_11" [label="11: Call n$5 \n n$5=*&b:_fn_(*) [line 28, column 3]\n n$6=n$5() [line 28, column 3]\n " shape="box"] "m#My_manager#instance.e773f849d062cb9801497b62f5c98f5e_11" -> "m#My_manager#instance.e773f849d062cb9801497b62f5c98f5e_10" ; -"m#My_manager#instance.e773f849d062cb9801497b62f5c98f5e_12" [label="12: BinaryOperatorStmt: Assign \n n$6=*&z:int [line 25, column 7]\n *&b:_fn_(*)=(_fun_objc_blockMy_manager_m_1,(n$6 &z:int)) [line 25, column 3]\n " shape="box"] +"m#My_manager#instance.e773f849d062cb9801497b62f5c98f5e_12" [label="12: BinaryOperatorStmt: Assign \n n$7=*&z:int [line 25, column 7]\n *&b:_fn_(*)=(_fun_objc_blockMy_manager_m_1,(n$7 &z:int)) [line 25, column 3]\n " shape="box"] "m#My_manager#instance.e773f849d062cb9801497b62f5c98f5e_12" -> "m#My_manager#instance.e773f849d062cb9801497b62f5c98f5e_11" ; diff --git a/infer/tests/codetoanalyze/objc/shared/block/block_release.m.dot b/infer/tests/codetoanalyze/objc/shared/block/block_release.m.dot index 9a9b42882..2a681f5f9 100644 --- a/infer/tests/codetoanalyze/objc/shared/block/block_release.m.dot +++ b/infer/tests/codetoanalyze/objc/shared/block/block_release.m.dot @@ -16,15 +16,15 @@ digraph cfg { "objc_blockMy_manager_blockReleaseNoLeak_1.a1f2f2c370e78fee994cf9a9d53a7210_4" -> "objc_blockMy_manager_blockReleaseNoLeak_1.a1f2f2c370e78fee994cf9a9d53a7210_2" ; -"objc_blockMy_manager_blockReleaseNoLeak_1.a1f2f2c370e78fee994cf9a9d53a7210_5" [label="5: Prune (true branch, if) \n n$8=*&newImage:CGImage* [line 26, column 9]\n PRUNE(n$8, true); [line 26, column 9]\n " shape="invhouse"] +"objc_blockMy_manager_blockReleaseNoLeak_1.a1f2f2c370e78fee994cf9a9d53a7210_5" [label="5: Prune (true branch, if) \n n$10=*&newImage:CGImage* [line 26, column 9]\n PRUNE(n$10, true); [line 26, column 9]\n " shape="invhouse"] "objc_blockMy_manager_blockReleaseNoLeak_1.a1f2f2c370e78fee994cf9a9d53a7210_5" -> "objc_blockMy_manager_blockReleaseNoLeak_1.a1f2f2c370e78fee994cf9a9d53a7210_7" ; -"objc_blockMy_manager_blockReleaseNoLeak_1.a1f2f2c370e78fee994cf9a9d53a7210_6" [label="6: Prune (false branch, if) \n n$8=*&newImage:CGImage* [line 26, column 9]\n PRUNE(!n$8, false); [line 26, column 9]\n " shape="invhouse"] +"objc_blockMy_manager_blockReleaseNoLeak_1.a1f2f2c370e78fee994cf9a9d53a7210_6" [label="6: Prune (false branch, if) \n n$10=*&newImage:CGImage* [line 26, column 9]\n PRUNE(!n$10, false); [line 26, column 9]\n " shape="invhouse"] "objc_blockMy_manager_blockReleaseNoLeak_1.a1f2f2c370e78fee994cf9a9d53a7210_6" -> "objc_blockMy_manager_blockReleaseNoLeak_1.a1f2f2c370e78fee994cf9a9d53a7210_3" ; -"objc_blockMy_manager_blockReleaseNoLeak_1.a1f2f2c370e78fee994cf9a9d53a7210_7" [label="7: Call _fun_CGImageRelease \n n$9=*&newImage:CGImage* [line 27, column 22]\n n$10=_fun_CGImageRelease(n$9:CGImage*) [line 27, column 7]\n " shape="box"] +"objc_blockMy_manager_blockReleaseNoLeak_1.a1f2f2c370e78fee994cf9a9d53a7210_7" [label="7: Call _fun_CGImageRelease \n n$11=*&newImage:CGImage* [line 27, column 22]\n n$12=_fun_CGImageRelease(n$11:CGImage*) [line 27, column 7]\n " shape="box"] "objc_blockMy_manager_blockReleaseNoLeak_1.a1f2f2c370e78fee994cf9a9d53a7210_7" -> "objc_blockMy_manager_blockReleaseNoLeak_1.a1f2f2c370e78fee994cf9a9d53a7210_3" ; @@ -55,20 +55,20 @@ digraph cfg { "blockReleaseNoLeak#My_manager#instance.0c48f80f024250b18a529440f1313af6_7" -> "blockReleaseNoLeak#My_manager#instance.0c48f80f024250b18a529440f1313af6_4" ; -"blockReleaseNoLeak#My_manager#instance.0c48f80f024250b18a529440f1313af6_8" [label="8: Call n$4 \n n$4=*&b:_fn_(*) [line 29, column 3]\n n$5=*&z:int [line 29, column 5]\n n$6=n$4(n$5:int) [line 29, column 3]\n " shape="box"] +"blockReleaseNoLeak#My_manager#instance.0c48f80f024250b18a529440f1313af6_8" [label="8: Call n$6 \n n$6=*&b:_fn_(*) [line 29, column 3]\n n$7=*&z:int [line 29, column 5]\n n$8=n$6(n$7:int) [line 29, column 3]\n " shape="box"] "blockReleaseNoLeak#My_manager#instance.0c48f80f024250b18a529440f1313af6_8" -> "blockReleaseNoLeak#My_manager#instance.0c48f80f024250b18a529440f1313af6_5" ; "blockReleaseNoLeak#My_manager#instance.0c48f80f024250b18a529440f1313af6_8" -> "blockReleaseNoLeak#My_manager#instance.0c48f80f024250b18a529440f1313af6_6" ; -"blockReleaseNoLeak#My_manager#instance.0c48f80f024250b18a529440f1313af6_9" [label="9: BinaryOperatorStmt: Assign \n n$7=*&newImage:CGImage* [line 25, column 7]\n *&b:_fn_(*)=(_fun_objc_blockMy_manager_blockReleaseNoLeak_1,(n$7 &newImage:CGImage*)) [line 25, column 3]\n " shape="box"] +"blockReleaseNoLeak#My_manager#instance.0c48f80f024250b18a529440f1313af6_9" [label="9: BinaryOperatorStmt: Assign \n n$9=*&newImage:CGImage* [line 25, column 7]\n *&b:_fn_(*)=(_fun_objc_blockMy_manager_blockReleaseNoLeak_1,(n$9 &newImage:CGImage*)) [line 25, column 3]\n " shape="box"] "blockReleaseNoLeak#My_manager#instance.0c48f80f024250b18a529440f1313af6_9" -> "blockReleaseNoLeak#My_manager#instance.0c48f80f024250b18a529440f1313af6_8" ; -"blockReleaseNoLeak#My_manager#instance.0c48f80f024250b18a529440f1313af6_10" [label="10: DeclStmt \n n$11=*&context:CGContext* [line 24, column 52]\n n$12=_fun_CGBitmapContextCreateImage(n$11:CGContext*) [line 24, column 25]\n *&newImage:CGImage*=n$12 [line 24, column 3]\n " shape="box"] +"blockReleaseNoLeak#My_manager#instance.0c48f80f024250b18a529440f1313af6_10" [label="10: DeclStmt \n n$15=*&context:CGContext* [line 24, column 52]\n n$16=_fun_CGBitmapContextCreateImage(n$15:CGContext*) [line 24, column 25]\n *&newImage:CGImage*=n$16 [line 24, column 3]\n " shape="box"] "blockReleaseNoLeak#My_manager#instance.0c48f80f024250b18a529440f1313af6_10" -> "blockReleaseNoLeak#My_manager#instance.0c48f80f024250b18a529440f1313af6_9" ; -"blockReleaseNoLeak#My_manager#instance.0c48f80f024250b18a529440f1313af6_11" [label="11: DeclStmt \n n$13=_fun_CGBitmapContextCreate(null:void*,0:unsigned long,0:unsigned long,8:unsigned long,0:unsigned long,null:CGColorSpace*,0:unsigned int) [line 23, column 26]\n *&context:CGContext*=n$13 [line 23, column 3]\n " shape="box"] +"blockReleaseNoLeak#My_manager#instance.0c48f80f024250b18a529440f1313af6_11" [label="11: DeclStmt \n n$17=_fun_CGBitmapContextCreate(null:void*,0:unsigned long,0:unsigned long,8:unsigned long,0:unsigned long,null:CGColorSpace*,0:unsigned int) [line 23, column 26]\n *&context:CGContext*=n$17 [line 23, column 3]\n " shape="box"] "blockReleaseNoLeak#My_manager#instance.0c48f80f024250b18a529440f1313af6_11" -> "blockReleaseNoLeak#My_manager#instance.0c48f80f024250b18a529440f1313af6_10" ; diff --git a/infer/tests/codetoanalyze/objc/shared/block/dispatch.m.dot b/infer/tests/codetoanalyze/objc/shared/block/dispatch.m.dot index 6e6d23bba..f962ac150 100644 --- a/infer/tests/codetoanalyze/objc/shared/block/dispatch.m.dot +++ b/infer/tests/codetoanalyze/objc/shared/block/dispatch.m.dot @@ -40,7 +40,7 @@ digraph cfg { "DispatchMain.f6461dbdaeaf9a114cbe40f5f72fbb3f_10" -> "DispatchMain.f6461dbdaeaf9a114cbe40f5f72fbb3f_5" ; -"DispatchMain.f6461dbdaeaf9a114cbe40f5f72fbb3f_11" [label="11: DeclStmt \n n$3=_fun_DispatchA_sharedInstance() [line 85, column 18]\n *&b:DispatchA*=n$3 [line 85, column 3]\n " shape="box"] +"DispatchMain.f6461dbdaeaf9a114cbe40f5f72fbb3f_11" [label="11: DeclStmt \n n$4=_fun_DispatchA_sharedInstance() [line 85, column 18]\n *&b:DispatchA*=n$4 [line 85, column 3]\n " shape="box"] "DispatchMain.f6461dbdaeaf9a114cbe40f5f72fbb3f_11" -> "DispatchMain.f6461dbdaeaf9a114cbe40f5f72fbb3f_10" ; diff --git a/infer/tests/codetoanalyze/objc/shared/memory_leaks_benchmark/MemoryLeakExample.m.dot b/infer/tests/codetoanalyze/objc/shared/memory_leaks_benchmark/MemoryLeakExample.m.dot index 264c5e842..e76ba28b0 100644 --- a/infer/tests/codetoanalyze/objc/shared/memory_leaks_benchmark/MemoryLeakExample.m.dot +++ b/infer/tests/codetoanalyze/objc/shared/memory_leaks_benchmark/MemoryLeakExample.m.dot @@ -185,7 +185,7 @@ digraph cfg { "test#MemoryLeakExample#instance.cbb708bfe735ac5e5777524359299e00_2" [label="2: Exit MemoryLeakExample_test \n " color=yellow style=filled] -"test#MemoryLeakExample#instance.cbb708bfe735ac5e5777524359299e00_3" [label="3: Message Call: setShadowPath: \n n$8=*&self:MemoryLeakExample* [line 31, column 3]\n n$9=_fun_MemoryLeakExample_backgroundCoveringView(n$8:MemoryLeakExample*) [line 31, column 8]\n n$10=_fun_UIView_layer(n$9:UIView*) [line 31, column 31]\n n$11=*&shadowPath:CGPath const * [line 31, column 50]\n n$12=_fun_CALayer_setShadowPath:(n$10:CALayer*,n$11:CGPath const *) [line 31, column 37]\n " shape="box"] +"test#MemoryLeakExample#instance.cbb708bfe735ac5e5777524359299e00_3" [label="3: Message Call: setShadowPath: \n n$9=*&self:MemoryLeakExample* [line 31, column 3]\n n$10=_fun_MemoryLeakExample_backgroundCoveringView(n$9:MemoryLeakExample*) [line 31, column 8]\n n$11=_fun_UIView_layer(n$10:UIView*) [line 31, column 31]\n n$8=*&shadowPath:CGPath const * [line 31, column 50]\n n$12=_fun_CALayer_setShadowPath:(n$11:CALayer*,n$8:CGPath const *) [line 31, column 37]\n " shape="box"] "test#MemoryLeakExample#instance.cbb708bfe735ac5e5777524359299e00_3" -> "test#MemoryLeakExample#instance.cbb708bfe735ac5e5777524359299e00_2" ; diff --git a/infer/tests/codetoanalyze/objc/shared/memory_leaks_benchmark/TollBridgeExample.m.dot b/infer/tests/codetoanalyze/objc/shared/memory_leaks_benchmark/TollBridgeExample.m.dot index 0c4fb6e98..59c254853 100644 --- a/infer/tests/codetoanalyze/objc/shared/memory_leaks_benchmark/TollBridgeExample.m.dot +++ b/infer/tests/codetoanalyze/objc/shared/memory_leaks_benchmark/TollBridgeExample.m.dot @@ -11,7 +11,7 @@ digraph cfg { "bridgeDictionaryNoLeak.a9b55a0c8751bf95138aeb6870d0dec1_3" -> "bridgeDictionaryNoLeak.a9b55a0c8751bf95138aeb6870d0dec1_2" ; -"bridgeDictionaryNoLeak.a9b55a0c8751bf95138aeb6870d0dec1_4" [label="4: DeclStmt \n n$1=_fun_NSDictionary_dictionaryWithObjects:forKeys:count:(null:objc_object*) [line 45, column 58]\n n$2=_fun_NSString_stringWithUTF8String:(\"key\":char* const ) [line 45, column 49]\n n$3=_fun_NSDictionary_dictionaryWithObjects:forKeys:count:(n$1:objc_object*,n$2:objc_object*,null:objc_object*) [line 45, column 36]\n *&bufferAttributes:NSDictionary*=n$3 [line 45, column 3]\n " shape="box"] +"bridgeDictionaryNoLeak.a9b55a0c8751bf95138aeb6870d0dec1_4" [label="4: DeclStmt \n n$2=_fun_NSDictionary_dictionaryWithObjects:forKeys:count:(null:objc_object*) [line 45, column 58]\n n$1=_fun_NSString_stringWithUTF8String:(\"key\":char* const ) [line 45, column 49]\n n$3=_fun_NSDictionary_dictionaryWithObjects:forKeys:count:(n$2:objc_object*,n$1:objc_object*,null:objc_object*) [line 45, column 36]\n *&bufferAttributes:NSDictionary*=n$3 [line 45, column 3]\n " shape="box"] "bridgeDictionaryNoLeak.a9b55a0c8751bf95138aeb6870d0dec1_4" -> "bridgeDictionaryNoLeak.a9b55a0c8751bf95138aeb6870d0dec1_3" ; diff --git a/infer/tests/codetoanalyze/objc/shared/property/PropertyAttributes.m.dot b/infer/tests/codetoanalyze/objc/shared/property/PropertyAttributes.m.dot index 3101306a2..e444c54ad 100644 --- a/infer/tests/codetoanalyze/objc/shared/property/PropertyAttributes.m.dot +++ b/infer/tests/codetoanalyze/objc/shared/property/PropertyAttributes.m.dot @@ -15,7 +15,7 @@ digraph cfg { "test.098f6bcd4621d373cade4e832627b4f6_4" -> "test.098f6bcd4621d373cade4e832627b4f6_3" ; -"test.098f6bcd4621d373cade4e832627b4f6_5" [label="5: Message Call: setLast_name: \n n$2=*&a:PropertyA* [line 44, column 3]\n n$3=*&a2:PropertyA* [line 44, column 17]\n n$4=_fun_PropertyA_setLast_name:(n$2:PropertyA*,n$3:PropertyA*) [line 44, column 5]\n " shape="box"] +"test.098f6bcd4621d373cade4e832627b4f6_5" [label="5: Message Call: setLast_name: \n n$3=*&a:PropertyA* [line 44, column 3]\n n$2=*&a2:PropertyA* [line 44, column 17]\n n$4=_fun_PropertyA_setLast_name:(n$3:PropertyA*,n$2:PropertyA*) [line 44, column 5]\n " shape="box"] "test.098f6bcd4621d373cade4e832627b4f6_5" -> "test.098f6bcd4621d373cade4e832627b4f6_4" ; @@ -58,7 +58,7 @@ digraph cfg { "copy#PropertyA#instance.d5955e11cf35af4b4d602b2971590d5f_9" -> "copy#PropertyA#instance.d5955e11cf35af4b4d602b2971590d5f_8" ; -"copy#PropertyA#instance.d5955e11cf35af4b4d602b2971590d5f_10" [label="10: DeclStmt \n n$12=_fun___objc_alloc_no_fail(sizeof(t=PropertyA):unsigned long) [line 31, column 23]\n n$13=_fun_PropertyA_init(n$12:PropertyA*) virtual [line 31, column 22]\n *&other:PropertyA*=n$13 [line 31, column 3]\n " shape="box"] +"copy#PropertyA#instance.d5955e11cf35af4b4d602b2971590d5f_10" [label="10: DeclStmt \n n$14=_fun___objc_alloc_no_fail(sizeof(t=PropertyA):unsigned long) [line 31, column 23]\n n$15=_fun_PropertyA_init(n$14:PropertyA*) virtual [line 31, column 22]\n *&other:PropertyA*=n$15 [line 31, column 3]\n " shape="box"] "copy#PropertyA#instance.d5955e11cf35af4b4d602b2971590d5f_10" -> "copy#PropertyA#instance.d5955e11cf35af4b4d602b2971590d5f_5" ; diff --git a/infer/tests/codetoanalyze/objcpp/frontend/global_const/global_const.mm.dot b/infer/tests/codetoanalyze/objcpp/frontend/global_const/global_const.mm.dot index d568a978d..505624990 100644 --- a/infer/tests/codetoanalyze/objcpp/frontend/global_const/global_const.mm.dot +++ b/infer/tests/codetoanalyze/objcpp/frontend/global_const/global_const.mm.dot @@ -29,15 +29,15 @@ digraph cfg { "#Fields#{11740702837802970461|constexpr}.35c900b91f77169dcc7579a3ddf4fddf_2" [label="2: Exit Fields_ \n " color=yellow style=filled] -"#Fields#{11740702837802970461|constexpr}.35c900b91f77169dcc7579a3ddf4fddf_3" [label="3: Constructor Init \n n$0=*&this:Fields* [line 10, column 9]\n n$1=*&__param_0:Fields const & [line 10, column 9]\n n$2=*n$1.field3:float [line 10, column 9]\n *n$0.field3:float=n$2 [line 10, column 9]\n " shape="box"] +"#Fields#{11740702837802970461|constexpr}.35c900b91f77169dcc7579a3ddf4fddf_3" [label="3: Constructor Init \n n$2=*&this:Fields* [line 10, column 9]\n n$3=*&__param_0:Fields const & [line 10, column 9]\n n$4=*n$3.field3:float [line 10, column 9]\n *n$2.field3:float=n$4 [line 10, column 9]\n " shape="box"] "#Fields#{11740702837802970461|constexpr}.35c900b91f77169dcc7579a3ddf4fddf_3" -> "#Fields#{11740702837802970461|constexpr}.35c900b91f77169dcc7579a3ddf4fddf_2" ; -"#Fields#{11740702837802970461|constexpr}.35c900b91f77169dcc7579a3ddf4fddf_4" [label="4: Constructor Init \n n$3=*&this:Fields* [line 10, column 9]\n n$4=*&__param_0:Fields const & [line 10, column 9]\n n$5=*n$4.field2:float [line 10, column 9]\n *n$3.field2:float=n$5 [line 10, column 9]\n " shape="box"] +"#Fields#{11740702837802970461|constexpr}.35c900b91f77169dcc7579a3ddf4fddf_4" [label="4: Constructor Init \n n$5=*&this:Fields* [line 10, column 9]\n n$6=*&__param_0:Fields const & [line 10, column 9]\n n$7=*n$6.field2:float [line 10, column 9]\n *n$5.field2:float=n$7 [line 10, column 9]\n " shape="box"] "#Fields#{11740702837802970461|constexpr}.35c900b91f77169dcc7579a3ddf4fddf_4" -> "#Fields#{11740702837802970461|constexpr}.35c900b91f77169dcc7579a3ddf4fddf_3" ; -"#Fields#{11740702837802970461|constexpr}.35c900b91f77169dcc7579a3ddf4fddf_5" [label="5: Constructor Init \n n$6=*&this:Fields* [line 10, column 9]\n n$7=*&__param_0:Fields const & [line 10, column 9]\n n$8=*n$7.field1:float [line 10, column 9]\n *n$6.field1:float=n$8 [line 10, column 9]\n " shape="box"] +"#Fields#{11740702837802970461|constexpr}.35c900b91f77169dcc7579a3ddf4fddf_5" [label="5: Constructor Init \n n$8=*&this:Fields* [line 10, column 9]\n n$9=*&__param_0:Fields const & [line 10, column 9]\n n$10=*n$9.field1:float [line 10, column 9]\n *n$8.field1:float=n$10 [line 10, column 9]\n " shape="box"] "#Fields#{11740702837802970461|constexpr}.35c900b91f77169dcc7579a3ddf4fddf_5" -> "#Fields#{11740702837802970461|constexpr}.35c900b91f77169dcc7579a3ddf4fddf_4" ;