[objc] Better names for the block translation and using temp variables

Reviewed By: sblackshear

Differential Revision: D6125704

fbshipit-source-id: 7b6aefc
master
Dulma Churchill 7 years ago committed by Facebook Github Bot
parent ef556e048e
commit 2f8b749045

@ -149,9 +149,9 @@ let string_of_build_system build_system =
(** Constant configuration values *) (** Constant configuration values *)
let anonymous_block_num_sep = "______" let anonymous_block_num_sep = "_"
let anonymous_block_prefix = "__objc_anonymous_block_" let anonymous_block_prefix = "objc_block"
let assign = "<\"Assign\">" let assign = "<\"Assign\">"

@ -108,10 +108,10 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s
let tenv = trans_state.context.CContext.tenv in let tenv = trans_state.context.CContext.tenv in
let procdesc = trans_state.context.CContext.procdesc in let procdesc = trans_state.context.CContext.procdesc in
let procname = Procdesc.get_proc_name procdesc in let procname = Procdesc.get_proc_name procdesc in
let block_typename = Typ.Name.Objc.from_string (String.capitalize (block_name ^ "Class")) in
let mk_field_from_captured_var (var, typ) = let mk_field_from_captured_var (var, typ) =
let vname = Pvar.get_name var in let vname = Pvar.get_name var in
let tname = Typ.Name.C.from_string block_name in let fname = CGeneral_utils.mk_class_field_name block_typename (Mangled.to_string vname) in
let fname = CGeneral_utils.mk_class_field_name tname (Mangled.to_string vname) in
let item_annot = Annot.Item.empty in let item_annot = Annot.Item.empty in
(fname, typ, item_annot) (fname, typ, item_annot)
in in
@ -121,7 +121,6 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s
~f:(fun (fn, _, _) -> ~f:(fun (fn, _, _) ->
L.(debug Capture Verbose) "-----> field: '%s'@\n" (Typ.Fieldname.to_string fn)) L.(debug Capture Verbose) "-----> field: '%s'@\n" (Typ.Fieldname.to_string fn))
fields ; fields ;
let block_typename = Typ.Name.Objc.from_string block_name in
ignore (Tenv.mk_struct tenv ~fields block_typename) ; ignore (Tenv.mk_struct tenv ~fields block_typename) ;
let block_type = Typ.mk (Typ.Tstruct block_typename) in let block_type = Typ.mk (Typ.Tstruct block_typename) in
let trans_res = let trans_res =
@ -130,8 +129,7 @@ module CTrans_funct (F : CModule_type.CFrontend) : CModule_type.CTranslation = s
block_type block_type
in in
let id_block = match trans_res.exps with [(Exp.Var id, _)] -> id | _ -> assert false in let id_block = match trans_res.exps with [(Exp.Var id, _)] -> id | _ -> assert false in
let mblock = Mangled.from_string block_name in let block_var = Pvar.mk_tmp "_block_heap_var_" procname in
let block_var = Pvar.mk mblock procname in
let declare_block_local = let declare_block_local =
Sil.Declare_locals ([(block_var, CType.add_pointer_to_typ block_type)], loc) Sil.Declare_locals ([(block_var, CType.add_pointer_to_typ block_type)], loc)
in in

@ -1,4 +1,3 @@
codetoanalyze/objc/checkers/Nullable.m, T_DeadStoreFP_testUnnanotatedFieldInClosureBad, 2, DEAD_STORE, [Write of unused value]
codetoanalyze/objc/checkers/Nullable.m, T_FP_dereferenceNonnullFieldAfterTestForNullOkay, 1, FIELD_SHOULD_BE_NULLABLE, [Field nonnullField is compared to null here] codetoanalyze/objc/checkers/Nullable.m, T_FP_dereferenceNonnullFieldAfterTestForNullOkay, 1, FIELD_SHOULD_BE_NULLABLE, [Field nonnullField is compared to null here]
codetoanalyze/objc/checkers/Nullable.m, T_FP_dereferenceNonnullFieldAfterTestForNullOkay, 2, NULL_DEREFERENCE, [start of procedure FP_dereferenceNonnullFieldAfterTestForNullOkay,Condition is true] codetoanalyze/objc/checkers/Nullable.m, T_FP_dereferenceNonnullFieldAfterTestForNullOkay, 2, NULL_DEREFERENCE, [start of procedure FP_dereferenceNonnullFieldAfterTestForNullOkay,Condition is true]
codetoanalyze/objc/checkers/Nullable.m, T_assignNonnullFieldToNullBad, 1, FIELD_SHOULD_BE_NULLABLE, [Field nonnullField is assigned null here] codetoanalyze/objc/checkers/Nullable.m, T_assignNonnullFieldToNullBad, 1, FIELD_SHOULD_BE_NULLABLE, [Field nonnullField is assigned null here]
@ -10,4 +9,4 @@ codetoanalyze/objc/checkers/Nullable.m, T_dereferenceUnnanotatedFieldAfterTestFo
codetoanalyze/objc/checkers/Nullable.m, T_dereferenceUnnanotatedFieldAfterTestForNullBad, 2, NULL_DEREFERENCE, [start of procedure dereferenceUnnanotatedFieldAfterTestForNullBad,Condition is true] codetoanalyze/objc/checkers/Nullable.m, T_dereferenceUnnanotatedFieldAfterTestForNullBad, 2, NULL_DEREFERENCE, [start of procedure dereferenceUnnanotatedFieldAfterTestForNullBad,Condition is true]
codetoanalyze/objc/checkers/Nullable.m, T_testNonnullFieldForNullBad, 1, FIELD_SHOULD_BE_NULLABLE, [Field nonnullField is compared to null here] codetoanalyze/objc/checkers/Nullable.m, T_testNonnullFieldForNullBad, 1, FIELD_SHOULD_BE_NULLABLE, [Field nonnullField is compared to null here]
codetoanalyze/objc/checkers/Nullable.m, T_testUnnanotatedFieldForNullBad, 1, FIELD_SHOULD_BE_NULLABLE, [Field unnanotatedField is compared to null here] codetoanalyze/objc/checkers/Nullable.m, T_testUnnanotatedFieldForNullBad, 1, FIELD_SHOULD_BE_NULLABLE, [Field unnanotatedField is compared to null here]
codetoanalyze/objc/checkers/Nullable.m, __objc_anonymous_block_T_DeadStoreFP_testUnnanotatedFieldInClosureBad______1, 1, FIELD_SHOULD_BE_NULLABLE, [Field unnanotatedField is compared to null here] codetoanalyze/objc/checkers/Nullable.m, objc_blockT_DeadStoreFP_testUnnanotatedFieldInClosureBad_1, 1, FIELD_SHOULD_BE_NULLABLE, [Field unnanotatedField is compared to null here]

@ -3,7 +3,7 @@ codetoanalyze/objc/errors/global_const/global_const.m, SimpleRoot_doSomethingBad
codetoanalyze/objc/errors/global_const/global_const.m, SimpleRoot_doSomethingOkWithDict:andString:, 3, NULL_DEREFERENCE, [start of procedure doSomethingOkWithDict:andString:,Message stringByAppendingString: with receiver nil returns nil.] codetoanalyze/objc/errors/global_const/global_const.m, SimpleRoot_doSomethingOkWithDict:andString:, 3, NULL_DEREFERENCE, [start of procedure doSomethingOkWithDict:andString:,Message stringByAppendingString: with receiver nil returns nil.]
codetoanalyze/objc/errors/initialization/compound_literal.c, init_with_compound_literal, 2, DIVIDE_BY_ZERO, [start of procedure init_with_compound_literal()] codetoanalyze/objc/errors/initialization/compound_literal.c, init_with_compound_literal, 2, DIVIDE_BY_ZERO, [start of procedure init_with_compound_literal()]
codetoanalyze/objc/errors/memory_leaks_benchmark/CADisplayLinkRetainCycle.m, testCycle, 3, RETAIN_CYCLE, [start of procedure testCycle(),start of procedure init,return from a call to CADisplay_init] codetoanalyze/objc/errors/memory_leaks_benchmark/CADisplayLinkRetainCycle.m, testCycle, 3, RETAIN_CYCLE, [start of procedure testCycle(),start of procedure init,return from a call to CADisplay_init]
codetoanalyze/objc/errors/memory_leaks_benchmark/RetainCycleStaticVar.m, RetainCSVycleStaticVar, 2, RETAIN_CYCLE, [start of procedure RetainCSVycleStaticVar(),start of procedure init,return from a call to RetainCSV_init,start of procedure foo,start of procedure block,start of procedure init,return from a call to RetainCSV_init,return from a call to __objc_anonymous_block_RetainCSV_foo______3,start of procedure block,start of procedure init,return from a call to RetainCSV_init,return from a call to __objc_anonymous_block_RetainCSV_foo______2,return from a call to RetainCSV_foo] codetoanalyze/objc/errors/memory_leaks_benchmark/RetainCycleStaticVar.m, RetainCSVycleStaticVar, 2, MEMORY_LEAK, [start of procedure RetainCSVycleStaticVar(),start of procedure init,return from a call to RetainCSV_init,Skipping foo: function or method not found]
codetoanalyze/objc/errors/npe/blockenum.m, BlockEnumA_allResultsList:, 1, MEMORY_LEAK, [start of procedure allResultsList:,Skipping init: function or method not found] codetoanalyze/objc/errors/npe/blockenum.m, BlockEnumA_allResultsList:, 1, MEMORY_LEAK, [start of procedure allResultsList:,Skipping init: function or method not found]
codetoanalyze/objc/errors/npe/blockenum.m, BlockEnumA_foo1:, 2, MEMORY_LEAK, [start of procedure foo1:,Skipping init: function or method not found] codetoanalyze/objc/errors/npe/blockenum.m, BlockEnumA_foo1:, 2, MEMORY_LEAK, [start of procedure foo1:,Skipping init: function or method not found]
codetoanalyze/objc/errors/npe/nil_param.m, NilParamMain, 4, MEMORY_LEAK, [start of procedure NilParamMain(),start of procedure test1:,Message test2 with receiver nil returns nil.,return from a call to NilParamA_test1:,Skipping release: function or method not found] codetoanalyze/objc/errors/npe/nil_param.m, NilParamMain, 4, MEMORY_LEAK, [start of procedure NilParamMain(),start of procedure test1:,Message test2 with receiver nil returns nil.,return from a call to NilParamA_test1:,Skipping release: function or method not found]
@ -26,11 +26,12 @@ codetoanalyze/objc/shared/assertions/NSAssert_example.m, NSAssert_initWithReques
codetoanalyze/objc/shared/assertions/NSAssert_example.m, test1, 1, MEMORY_LEAK, [start of procedure test1(),Condition is false,Condition is true,Condition is true,Condition is true] codetoanalyze/objc/shared/assertions/NSAssert_example.m, test1, 1, MEMORY_LEAK, [start of procedure test1(),Condition is false,Condition is true,Condition is true,Condition is true]
codetoanalyze/objc/shared/assertions/NSAssert_example.m, test1, 1, MEMORY_LEAK, [start of procedure test1(),Condition is false,Condition is true,Condition is true] codetoanalyze/objc/shared/assertions/NSAssert_example.m, test1, 1, MEMORY_LEAK, [start of procedure test1(),Condition is false,Condition is true,Condition is true]
codetoanalyze/objc/shared/assertions/NSAssert_example.m, test2, 1, MEMORY_LEAK, [start of procedure test2(),Condition is false,Condition is true,Condition is true] codetoanalyze/objc/shared/assertions/NSAssert_example.m, test2, 1, MEMORY_LEAK, [start of procedure test2(),Condition is false,Condition is true,Condition is true]
codetoanalyze/objc/shared/block/BlockVar.m, BlockVar_blockPostBad, 5, NULL_DEREFERENCE, [start of procedure blockPostBad,start of procedure block,return from a call to __objc_anonymous_block_BlockVar_blockPostBad______2] codetoanalyze/objc/shared/block/BlockVar.m, BlockVar_blockPostBad, 5, NULL_DEREFERENCE, [start of procedure blockPostBad,start of procedure block,return from a call to objc_blockBlockVar_blockPostBad_2]
codetoanalyze/objc/shared/block/BlockVar.m, BlockVar_capturedNullDeref, 5, NULL_DEREFERENCE, [start of procedure capturedNullDeref,start of procedure block] codetoanalyze/objc/shared/block/BlockVar.m, BlockVar_capturedNullDeref, 5, NULL_DEREFERENCE, [start of procedure capturedNullDeref,start of procedure block]
codetoanalyze/objc/shared/block/BlockVar.m, BlockVar_navigateToURLInBackground, 8, NULL_DEREFERENCE, [start of procedure navigateToURLInBackground,start of procedure block,start of procedure test,return from a call to BlockVar_test,return from a call to __objc_anonymous_block_BlockVar_navigateToURLInBackground______1,Condition is true] codetoanalyze/objc/shared/block/BlockVar.m, BlockVar_navigateToURLInBackground, 8, NULL_DEREFERENCE, [start of procedure navigateToURLInBackground,start of procedure block,start of procedure test,return from a call to BlockVar_test,return from a call to objc_blockBlockVar_navigateToURLInBackground_1,Condition is true]
codetoanalyze/objc/shared/block/block.m, main1, 31, DIVIDE_BY_ZERO, [start of procedure main1(),start of procedure block,start of procedure block,return from a call to __objc_anonymous_block___objc_anonymous_block_main1______2______3,return from a call to __objc_anonymous_block_main1______2,start of procedure block,return from a call to __objc_anonymous_block_main1______1] codetoanalyze/objc/shared/block/block.m, BlockMain, 0, Assert_failure, [start of procedure BlockMain()]
codetoanalyze/objc/shared/block/block_no_args.m, My_manager_m, 10, NULL_DEREFERENCE, [start of procedure m,start of procedure block,return from a call to __objc_anonymous_block_My_manager_m______1,Condition is true] codetoanalyze/objc/shared/block/block.m, main1, 31, DIVIDE_BY_ZERO, [start of procedure main1(),start of procedure block,start of procedure block,return from a call to objc_blockobjc_blockmain1_2_3,return from a call to objc_blockmain1_2,start of procedure block,return from a call to objc_blockmain1_1]
codetoanalyze/objc/shared/block/block_no_args.m, My_manager_m, 10, NULL_DEREFERENCE, [start of procedure m,start of procedure block,return from a call to objc_blockMy_manager_m_1,Condition is true]
codetoanalyze/objc/shared/block/block_release.m, My_manager_blockReleaseTODO, 5, MEMORY_LEAK, [start of procedure blockReleaseTODO] codetoanalyze/objc/shared/block/block_release.m, My_manager_blockReleaseTODO, 5, MEMORY_LEAK, [start of procedure blockReleaseTODO]
codetoanalyze/objc/shared/category_procdesc/main.c, CategoryProcdescMain, 2, MEMORY_LEAK, [start of procedure CategoryProcdescMain(),Skipping performDaysWork: function or method not found] codetoanalyze/objc/shared/category_procdesc/main.c, CategoryProcdescMain, 2, MEMORY_LEAK, [start of procedure CategoryProcdescMain(),Skipping performDaysWork: function or method not found]
codetoanalyze/objc/shared/category_procdesc/main.c, CategoryProcdescMain, 3, MEMORY_LEAK, [start of procedure CategoryProcdescMain(),Skipping performDaysWork: function or method not found] codetoanalyze/objc/shared/category_procdesc/main.c, CategoryProcdescMain, 3, MEMORY_LEAK, [start of procedure CategoryProcdescMain(),Skipping performDaysWork: function or method not found]
@ -52,7 +53,7 @@ codetoanalyze/objc/errors/npe/UpdateDict.m, nullable_NSDictionary_objectForKeyed
codetoanalyze/objc/errors/npe/UpdateDict.m, nullable_NSMapTable_objectForKey, 4, NULL_DEREFERENCE, [start of procedure nullable_NSMapTable_objectForKey(),Condition is true,Condition is true,Condition is true] codetoanalyze/objc/errors/npe/UpdateDict.m, nullable_NSMapTable_objectForKey, 4, NULL_DEREFERENCE, [start of procedure nullable_NSMapTable_objectForKey(),Condition is true,Condition is true,Condition is true]
codetoanalyze/objc/errors/npe/UpdateDict.m, update_array_with_null, 5, NULL_DEREFERENCE, [start of procedure update_array_with_null()] codetoanalyze/objc/errors/npe/UpdateDict.m, update_array_with_null, 5, NULL_DEREFERENCE, [start of procedure update_array_with_null()]
codetoanalyze/objc/errors/npe/UpdateDict.m, update_dict_with_key_null, 10, NULL_DEREFERENCE, [start of procedure update_dict_with_key_null(),Skipping dictionaryWithObjectsAndKeys:: function or method not found] codetoanalyze/objc/errors/npe/UpdateDict.m, update_dict_with_key_null, 10, NULL_DEREFERENCE, [start of procedure update_dict_with_key_null(),Skipping dictionaryWithObjectsAndKeys:: function or method not found]
codetoanalyze/objc/errors/npe/WeakCapturedVarsNPE.m, __objc_anonymous_block_WeakCapturedA_strongSelfNoCheck______2, 2, NULL_DEREFERENCE, [start of procedure block] codetoanalyze/objc/errors/npe/WeakCapturedVarsNPE.m, objc_blockWeakCapturedA_strongSelfNoCheck_2, 2, NULL_DEREFERENCE, [start of procedure block]
codetoanalyze/objc/errors/npe/nil_in_array_literal.m, Arr_nilInArrayLiteral0, 4, NULL_DEREFERENCE, [start of procedure nilInArrayLiteral0] codetoanalyze/objc/errors/npe/nil_in_array_literal.m, Arr_nilInArrayLiteral0, 4, NULL_DEREFERENCE, [start of procedure nilInArrayLiteral0]
codetoanalyze/objc/errors/npe/nil_in_array_literal.m, Arr_nilInArrayLiteral1, 4, NULL_DEREFERENCE, [start of procedure nilInArrayLiteral1] codetoanalyze/objc/errors/npe/nil_in_array_literal.m, Arr_nilInArrayLiteral1, 4, NULL_DEREFERENCE, [start of procedure nilInArrayLiteral1]
codetoanalyze/objc/errors/npe/nil_in_array_literal.m, Arr_nilInArrayLiteral2, 4, NULL_DEREFERENCE, [start of procedure nilInArrayLiteral2] codetoanalyze/objc/errors/npe/nil_in_array_literal.m, Arr_nilInArrayLiteral2, 4, NULL_DEREFERENCE, [start of procedure nilInArrayLiteral2]
@ -100,16 +101,16 @@ codetoanalyze/objc/errors/npe/block.m, BlockA_foo7, 2, IVAR_NOT_NULL_CHECKED, [s
codetoanalyze/objc/errors/npe/ivar_blocks.m, MyClass_ivar_npe, 1, IVAR_NOT_NULL_CHECKED, [start of procedure ivar_npe] codetoanalyze/objc/errors/npe/ivar_blocks.m, MyClass_ivar_npe, 1, IVAR_NOT_NULL_CHECKED, [start of procedure ivar_npe]
codetoanalyze/objc/errors/npe/skip_method_with_nil_object.m, SkipMethodNilA_testBug:, 6, PARAMETER_NOT_NULL_CHECKED, [start of procedure testBug:,Message get_a with receiver nil returns nil.,Message skip_method with receiver nil returns nil.,Condition is false] codetoanalyze/objc/errors/npe/skip_method_with_nil_object.m, SkipMethodNilA_testBug:, 6, PARAMETER_NOT_NULL_CHECKED, [start of procedure testBug:,Message get_a with receiver nil returns nil.,Message skip_method with receiver nil returns nil.,Condition is false]
codetoanalyze/objc/errors/property/main.c, property_main, 3, MEMORY_LEAK, [start of procedure property_main(),Skipping aProperty: function or method not found] codetoanalyze/objc/errors/property/main.c, property_main, 3, MEMORY_LEAK, [start of procedure property_main(),Skipping aProperty: function or method not found]
codetoanalyze/objc/errors/resource_leaks/Dispatch_sources.m, __objc_anonymous_block_ProcessContentsOfFile______2, 6, MEMORY_LEAK, [start of procedure block,Skipping dispatch_source_get_data(): function or method not found,Condition is true,Skipping MyProcessFileData(): function or method not found] codetoanalyze/objc/errors/resource_leaks/Dispatch_sources.m, objc_blockProcessContentsOfFile_2, 6, MEMORY_LEAK, [start of procedure block,Skipping dispatch_source_get_data(): function or method not found,Condition is true,Skipping MyProcessFileData(): function or method not found]
codetoanalyze/objc/errors/resource_leaks/ResourceLeakExample.m, NSFileHandle_fileHandleForLoggingAtPath:mode:, 9, RESOURCE_LEAK, [start of procedure fileHandleForLoggingAtPath:mode:,Condition is true,Skipping fileSystemRepresentation: function or method not found,Condition is false,Condition is true,Skipping autorelease: function or method not found] codetoanalyze/objc/errors/resource_leaks/ResourceLeakExample.m, NSFileHandle_fileHandleForLoggingAtPath:mode:, 9, RESOURCE_LEAK, [start of procedure fileHandleForLoggingAtPath:mode:,Condition is true,Skipping fileSystemRepresentation: function or method not found,Condition is false,Condition is true,Skipping autorelease: function or method not found]
codetoanalyze/objc/shared/annotations/nonnull_annotations.m, A_test1:, 2, PARAMETER_NOT_NULL_CHECKED, [start of procedure test1:,Message child with receiver nil returns nil.] codetoanalyze/objc/shared/annotations/nonnull_annotations.m, A_test1:, 2, PARAMETER_NOT_NULL_CHECKED, [start of procedure test1:,Message child with receiver nil returns nil.]
codetoanalyze/objc/shared/annotations/nonnull_annotations.m, A_test3:, 1, PARAMETER_NOT_NULL_CHECKED, [start of procedure test3:] codetoanalyze/objc/shared/annotations/nonnull_annotations.m, A_test3:, 1, PARAMETER_NOT_NULL_CHECKED, [start of procedure test3:]
codetoanalyze/objc/shared/annotations/nullable_annotations.m, User_otherUserName, 2, NULL_DEREFERENCE, [start of procedure otherUserName,Skipping otherUser: function or method not found] codetoanalyze/objc/shared/annotations/nullable_annotations.m, User_otherUserName, 2, NULL_DEREFERENCE, [start of procedure otherUserName,Skipping otherUser: function or method not found]
codetoanalyze/objc/shared/annotations/nullable_annotations.m, npe_property_nullable, 3, NULL_DEREFERENCE, [start of procedure npe_property_nullable(),Skipping child: function or method not found] codetoanalyze/objc/shared/annotations/nullable_annotations.m, npe_property_nullable, 3, NULL_DEREFERENCE, [start of procedure npe_property_nullable(),Skipping child: function or method not found]
codetoanalyze/objc/shared/annotations/nullable_annotations_fields.m, A_nullable_field, 3, NULL_DEREFERENCE, [start of procedure nullable_field,Skipping getA(): function or method not found] codetoanalyze/objc/shared/annotations/nullable_annotations_fields.m, A_nullable_field, 3, NULL_DEREFERENCE, [start of procedure nullable_field,Skipping getA(): function or method not found]
codetoanalyze/objc/shared/block/block-it.m, __objc_anonymous_block_MyBlock_array______1, 5, UNINITIALIZED_VALUE, [start of procedure block,Condition is false] codetoanalyze/objc/shared/block/block-it.m, objc_blockMyBlock_array_1, 5, UNINITIALIZED_VALUE, [start of procedure block,Condition is false]
codetoanalyze/objc/shared/block/block-it.m, __objc_anonymous_block_MyBlock_array_trans______2, 4, UNINITIALIZED_VALUE, [start of procedure block,Condition is false] codetoanalyze/objc/shared/block/block-it.m, objc_blockMyBlock_array_trans_2, 4, UNINITIALIZED_VALUE, [start of procedure block,Condition is false]
codetoanalyze/objc/shared/block/dispatch.m, DispatchA_dispatch_a_block_variable_from_macro_delivers_initialised_object, 3, DIVIDE_BY_ZERO, [start of procedure dispatch_a_block_variable_from_macro_delivers_initialised_object,start of procedure dispatch_a_block_variable_from_macro,start of procedure block,start of procedure init,return from a call to DispatchA_init,return from a call to __objc_anonymous_block_DispatchA_dispatch_a_block_variable_from_macro______4,return from a call to DispatchA_dispatch_a_block_variable_from_macro] codetoanalyze/objc/shared/block/dispatch.m, DispatchA_dispatch_a_block_variable_from_macro_delivers_initialised_object, 3, DIVIDE_BY_ZERO, [start of procedure dispatch_a_block_variable_from_macro_delivers_initialised_object,start of procedure dispatch_a_block_variable_from_macro,start of procedure block,start of procedure init,return from a call to DispatchA_init,return from a call to objc_blockDispatchA_dispatch_a_block_variable_from_macro_4,return from a call to DispatchA_dispatch_a_block_variable_from_macro]
codetoanalyze/objc/shared/memory_leaks_benchmark/MemoryLeakExample.m, MemoryLeakExample_blockCapturedVarLeak, 3, MEMORY_LEAK, [start of procedure blockCapturedVarLeak] codetoanalyze/objc/shared/memory_leaks_benchmark/MemoryLeakExample.m, MemoryLeakExample_blockCapturedVarLeak, 3, MEMORY_LEAK, [start of procedure blockCapturedVarLeak]
codetoanalyze/objc/shared/memory_leaks_benchmark/MemoryLeakExample.m, MemoryLeakExample_blockFreeNoLeakTODO, 3, MEMORY_LEAK, [start of procedure blockFreeNoLeakTODO] codetoanalyze/objc/shared/memory_leaks_benchmark/MemoryLeakExample.m, MemoryLeakExample_blockFreeNoLeakTODO, 3, MEMORY_LEAK, [start of procedure blockFreeNoLeakTODO]
codetoanalyze/objc/shared/memory_leaks_benchmark/MemoryLeakExample.m, MemoryLeakExample_createCloseCrossGlyph:, 2, MEMORY_LEAK, [start of procedure createCloseCrossGlyph:,Skipping CGRectGetHeight(): function or method not found] codetoanalyze/objc/shared/memory_leaks_benchmark/MemoryLeakExample.m, MemoryLeakExample_createCloseCrossGlyph:, 2, MEMORY_LEAK, [start of procedure createCloseCrossGlyph:,Skipping CGRectGetHeight(): function or method not found]

@ -41,11 +41,11 @@ digraph iCFG {
"capture#A#instance.d411336575e4bf632a1828f5f5979726_2" [label="2: Exit A_capture \n " color=yellow style=filled] "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 DECLARE_LOCALS(&__objc_anonymous_block_A_capture______1); [line 47, column 16]\n n$5=_fun___objc_alloc_no_fail(sizeof(t=__objc_anonymous_block_A_capture______1):unsigned long) [line 47, column 16]\n *&__objc_anonymous_block_A_capture______1:__objc_anonymous_block_A_capture______1=n$5 [line 47, column 16]\n n$6=*&self:A* [line 47, column 16]\n *n$5.self:A*=n$6 [line 47, column 16]\n n$2=*&self:A* [line 47, column 16]\n n$7=*&__objc_anonymous_block_A_capture______1:_fn_(*) [line 47, column 3]\n _fun_B_sHandler:(n$1:B*,n$7:_fn_(*),n$2:_fn_(*)) virtual [line 47, column 3]\n " shape="box"] "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 DECLARE_LOCALS(&0$?%__sil_tmp_block_heap_var_n$6); [line 47, column 16]\n n$5=_fun___objc_alloc_no_fail(sizeof(t=Objc_blockA_capture_1Class):unsigned long) [line 47, column 16]\n *&0$?%__sil_tmp_block_heap_var_n$6:Objc_blockA_capture_1Class=n$5 [line 47, column 16]\n n$7=*&self:A* [line 47, column 16]\n *n$5.self:A*=n$7 [line 47, column 16]\n n$2=*&self:A* [line 47, column 16]\n n$8=*&objc_blockA_capture_1:_fn_(*) [line 47, column 3]\n _fun_B_sHandler:(n$1:B*,n$8:_fn_(*),n$2:_fn_(*)) virtual [line 47, column 3]\n " shape="box"]
"capture#A#instance.d411336575e4bf632a1828f5f5979726_3" -> "capture#A#instance.d411336575e4bf632a1828f5f5979726_2" ; "capture#A#instance.d411336575e4bf632a1828f5f5979726_3" -> "capture#A#instance.d411336575e4bf632a1828f5f5979726_2" ;
"capture#A#instance.d411336575e4bf632a1828f5f5979726_4" [label="4: BinaryOperatorStmt: Assign \n n$8=*&self:A* [line 46, column 3]\n n$9=_fun___objc_alloc_no_fail(sizeof(t=B):unsigned long) [line 46, column 8]\n *n$8._b:B*=n$9 [line 46, column 3]\n " shape="box"] "capture#A#instance.d411336575e4bf632a1828f5f5979726_4" [label="4: BinaryOperatorStmt: Assign \n n$9=*&self:A* [line 46, column 3]\n n$10=_fun___objc_alloc_no_fail(sizeof(t=B):unsigned long) [line 46, column 8]\n *n$9._b:B*=n$10 [line 46, column 3]\n " shape="box"]
"capture#A#instance.d411336575e4bf632a1828f5f5979726_4" -> "capture#A#instance.d411336575e4bf632a1828f5f5979726_3" ; "capture#A#instance.d411336575e4bf632a1828f5f5979726_4" -> "capture#A#instance.d411336575e4bf632a1828f5f5979726_3" ;
@ -60,15 +60,15 @@ digraph iCFG {
"sHandler:#B#instance.590685250eb38eaab242405cd45c572b_3" -> "sHandler:#B#instance.590685250eb38eaab242405cd45c572b_2" ; "sHandler:#B#instance.590685250eb38eaab242405cd45c572b_3" -> "sHandler:#B#instance.590685250eb38eaab242405cd45c572b_2" ;
"__objc_anonymous_block_A_capture______1.d90c81461d9f2b21a67db8a7dea413da_1" [label="1: Start __objc_anonymous_block_A_capture______1\nFormals: self:A* d:D*\nLocals: \nCaptured: self:A* \n DECLARE_LOCALS(&return); [line 47, column 16]\n " color=yellow style=filled] "objc_blockA_capture_1.6fdcfe58244de8603cec62dad07f2ae4_1" [label="1: Start objc_blockA_capture_1\nFormals: self:A* d:D*\nLocals: \nCaptured: self:A* \n DECLARE_LOCALS(&return); [line 47, column 16]\n " color=yellow style=filled]
"__objc_anonymous_block_A_capture______1.d90c81461d9f2b21a67db8a7dea413da_1" -> "__objc_anonymous_block_A_capture______1.d90c81461d9f2b21a67db8a7dea413da_3" ; "objc_blockA_capture_1.6fdcfe58244de8603cec62dad07f2ae4_1" -> "objc_blockA_capture_1.6fdcfe58244de8603cec62dad07f2ae4_3" ;
"__objc_anonymous_block_A_capture______1.d90c81461d9f2b21a67db8a7dea413da_2" [label="2: Exit __objc_anonymous_block_A_capture______1 \n " color=yellow style=filled] "objc_blockA_capture_1.6fdcfe58244de8603cec62dad07f2ae4_2" [label="2: Exit objc_blockA_capture_1 \n " color=yellow style=filled]
"__objc_anonymous_block_A_capture______1.d90c81461d9f2b21a67db8a7dea413da_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$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_anonymous_block_A_capture______1.d90c81461d9f2b21a67db8a7dea413da_3" -> "__objc_anonymous_block_A_capture______1.d90c81461d9f2b21a67db8a7dea413da_2" ; "objc_blockA_capture_1.6fdcfe58244de8603cec62dad07f2ae4_3" -> "objc_blockA_capture_1.6fdcfe58244de8603cec62dad07f2ae4_2" ;
} }

@ -11,21 +11,21 @@ digraph iCFG {
"test#A#class.c69ae9e6be36a2eeb5dcbaa1187c354d_3" -> "test#A#class.c69ae9e6be36a2eeb5dcbaa1187c354d_2" ; "test#A#class.c69ae9e6be36a2eeb5dcbaa1187c354d_3" -> "test#A#class.c69ae9e6be36a2eeb5dcbaa1187c354d_2" ;
"test#A#class.c69ae9e6be36a2eeb5dcbaa1187c354d_4" [label="4: Call (_fun___objc_anonymous_block_A_test______1) \n DECLARE_LOCALS(&__objc_anonymous_block_A_test______1); [line 20, column 3]\n n$3=_fun___objc_alloc_no_fail(sizeof(t=__objc_anonymous_block_A_test______1):unsigned long) [line 20, column 3]\n *&__objc_anonymous_block_A_test______1:__objc_anonymous_block_A_test______1=n$3 [line 20, column 3]\n n$4=*&#GB<codetoanalyze/objc/frontend/block/static.m>$A_test_sharedInstance:objc_object* [line 20, column 3]\n *n$3.A_test_sharedInstance:objc_object*=n$4 [line 20, column 3]\n (_fun___objc_anonymous_block_A_test______1)() [line 20, column 3]\n " shape="box"] "test#A#class.c69ae9e6be36a2eeb5dcbaa1187c354d_4" [label="4: Call (_fun_objc_blockA_test_1) \n DECLARE_LOCALS(&0$?%__sil_tmp_block_heap_var_n$4); [line 20, column 3]\n n$3=_fun___objc_alloc_no_fail(sizeof(t=Objc_blockA_test_1Class):unsigned long) [line 20, column 3]\n *&0$?%__sil_tmp_block_heap_var_n$4:Objc_blockA_test_1Class=n$3 [line 20, column 3]\n n$5=*&#GB<codetoanalyze/objc/frontend/block/static.m>$A_test_sharedInstance:objc_object* [line 20, column 3]\n *n$3.A_test_sharedInstance:objc_object*=n$5 [line 20, column 3]\n (_fun_objc_blockA_test_1)() [line 20, column 3]\n " shape="box"]
"test#A#class.c69ae9e6be36a2eeb5dcbaa1187c354d_4" -> "test#A#class.c69ae9e6be36a2eeb5dcbaa1187c354d_3" ; "test#A#class.c69ae9e6be36a2eeb5dcbaa1187c354d_4" -> "test#A#class.c69ae9e6be36a2eeb5dcbaa1187c354d_3" ;
"__objc_anonymous_block_A_test______1.4b4d782fad0701e8da5729a89669e579_1" [label="1: Start __objc_anonymous_block_A_test______1\nFormals: \nLocals: \n DECLARE_LOCALS(&return); [line 20, column 3]\n " color=yellow style=filled] "objc_blockA_test_1.91b00d7c265c98d7bfda34cc42ad73ed_1" [label="1: Start objc_blockA_test_1\nFormals: \nLocals: \n DECLARE_LOCALS(&return); [line 20, column 3]\n " color=yellow style=filled]
"__objc_anonymous_block_A_test______1.4b4d782fad0701e8da5729a89669e579_1" -> "__objc_anonymous_block_A_test______1.4b4d782fad0701e8da5729a89669e579_3" ; "objc_blockA_test_1.91b00d7c265c98d7bfda34cc42ad73ed_1" -> "objc_blockA_test_1.91b00d7c265c98d7bfda34cc42ad73ed_3" ;
"__objc_anonymous_block_A_test______1.4b4d782fad0701e8da5729a89669e579_2" [label="2: Exit __objc_anonymous_block_A_test______1 \n " color=yellow style=filled] "objc_blockA_test_1.91b00d7c265c98d7bfda34cc42ad73ed_2" [label="2: Exit objc_blockA_test_1 \n " color=yellow style=filled]
"__objc_anonymous_block_A_test______1.4b4d782fad0701e8da5729a89669e579_3" [label="3: BinaryOperatorStmt: Assign \n n$1=_fun___objc_alloc_no_fail(sizeof(t=A):unsigned long) [line 21, column 23]\n n$2=_fun_A_init(n$1:A*) virtual [line 21, column 22]\n *&#GB<codetoanalyze/objc/frontend/block/static.m>$A_test_sharedInstance:objc_object*=n$2 [line 21, column 5]\n " shape="box"] "objc_blockA_test_1.91b00d7c265c98d7bfda34cc42ad73ed_3" [label="3: BinaryOperatorStmt: Assign \n n$1=_fun___objc_alloc_no_fail(sizeof(t=A):unsigned long) [line 21, column 23]\n n$2=_fun_A_init(n$1:A*) virtual [line 21, column 22]\n *&#GB<codetoanalyze/objc/frontend/block/static.m>$A_test_sharedInstance:objc_object*=n$2 [line 21, column 5]\n " shape="box"]
"__objc_anonymous_block_A_test______1.4b4d782fad0701e8da5729a89669e579_3" -> "__objc_anonymous_block_A_test______1.4b4d782fad0701e8da5729a89669e579_2" ; "objc_blockA_test_1.91b00d7c265c98d7bfda34cc42ad73ed_3" -> "objc_blockA_test_1.91b00d7c265c98d7bfda34cc42ad73ed_2" ;
"test_leak#A#class.8240788aa53244827857be0e92d27671_1" [label="1: Start A_test_leak\nFormals: \nLocals: \n DECLARE_LOCALS(&return); [line 28, column 1]\n " color=yellow style=filled] "test_leak#A#class.8240788aa53244827857be0e92d27671_1" [label="1: Start A_test_leak\nFormals: \nLocals: \n DECLARE_LOCALS(&return); [line 28, column 1]\n " color=yellow style=filled]
@ -33,21 +33,21 @@ digraph iCFG {
"test_leak#A#class.8240788aa53244827857be0e92d27671_2" [label="2: Exit A_test_leak \n " color=yellow style=filled] "test_leak#A#class.8240788aa53244827857be0e92d27671_2" [label="2: Exit A_test_leak \n " color=yellow style=filled]
"test_leak#A#class.8240788aa53244827857be0e92d27671_3" [label="3: Call (_fun___objc_anonymous_block_A_test_leak______2) \n DECLARE_LOCALS(&__objc_anonymous_block_A_test_leak______2); [line 30, column 3]\n n$7=_fun___objc_alloc_no_fail(sizeof(t=__objc_anonymous_block_A_test_leak______2):unsigned long) [line 30, column 3]\n *&__objc_anonymous_block_A_test_leak______2:__objc_anonymous_block_A_test_leak______2=n$7 [line 30, column 3]\n n$8=*&#GB<codetoanalyze/objc/frontend/block/static.m>$A_test_leak_sharedInstance:objc_object* [line 30, column 3]\n *n$7.A_test_leak_sharedInstance:objc_object*=n$8 [line 30, column 3]\n (_fun___objc_anonymous_block_A_test_leak______2)() [line 30, column 3]\n " shape="box"] "test_leak#A#class.8240788aa53244827857be0e92d27671_3" [label="3: Call (_fun_objc_blockA_test_leak_2) \n DECLARE_LOCALS(&0$?%__sil_tmp_block_heap_var_n$9); [line 30, column 3]\n n$8=_fun___objc_alloc_no_fail(sizeof(t=Objc_blockA_test_leak_2Class):unsigned long) [line 30, column 3]\n *&0$?%__sil_tmp_block_heap_var_n$9:Objc_blockA_test_leak_2Class=n$8 [line 30, column 3]\n n$10=*&#GB<codetoanalyze/objc/frontend/block/static.m>$A_test_leak_sharedInstance:objc_object* [line 30, column 3]\n *n$8.A_test_leak_sharedInstance:objc_object*=n$10 [line 30, column 3]\n (_fun_objc_blockA_test_leak_2)() [line 30, column 3]\n " shape="box"]
"test_leak#A#class.8240788aa53244827857be0e92d27671_3" -> "test_leak#A#class.8240788aa53244827857be0e92d27671_2" ; "test_leak#A#class.8240788aa53244827857be0e92d27671_3" -> "test_leak#A#class.8240788aa53244827857be0e92d27671_2" ;
"__objc_anonymous_block_A_test_leak______2.c5d678f27e9d82d9f4d1cf0324051fa7_1" [label="1: Start __objc_anonymous_block_A_test_leak______2\nFormals: \nLocals: \n DECLARE_LOCALS(&return); [line 30, column 3]\n " color=yellow style=filled] "objc_blockA_test_leak_2.5b3de3f9ef0695311853bace3ed320b8_1" [label="1: Start objc_blockA_test_leak_2\nFormals: \nLocals: \n DECLARE_LOCALS(&return); [line 30, column 3]\n " color=yellow style=filled]
"__objc_anonymous_block_A_test_leak______2.c5d678f27e9d82d9f4d1cf0324051fa7_1" -> "__objc_anonymous_block_A_test_leak______2.c5d678f27e9d82d9f4d1cf0324051fa7_3" ; "objc_blockA_test_leak_2.5b3de3f9ef0695311853bace3ed320b8_1" -> "objc_blockA_test_leak_2.5b3de3f9ef0695311853bace3ed320b8_3" ;
"__objc_anonymous_block_A_test_leak______2.c5d678f27e9d82d9f4d1cf0324051fa7_2" [label="2: Exit __objc_anonymous_block_A_test_leak______2 \n " color=yellow style=filled] "objc_blockA_test_leak_2.5b3de3f9ef0695311853bace3ed320b8_2" [label="2: Exit objc_blockA_test_leak_2 \n " color=yellow style=filled]
"__objc_anonymous_block_A_test_leak______2.c5d678f27e9d82d9f4d1cf0324051fa7_3" [label="3: BinaryOperatorStmt: Assign \n n$5=_fun___objc_alloc_no_fail(sizeof(t=A):unsigned long) [line 31, column 23]\n n$6=_fun_A_init(n$5:A*) virtual [line 31, column 22]\n *&#GB<codetoanalyze/objc/frontend/block/static.m>$A_test_leak_sharedInstance:objc_object*=n$6 [line 31, column 5]\n " shape="box"] "objc_blockA_test_leak_2.5b3de3f9ef0695311853bace3ed320b8_3" [label="3: BinaryOperatorStmt: Assign \n n$6=_fun___objc_alloc_no_fail(sizeof(t=A):unsigned long) [line 31, column 23]\n n$7=_fun_A_init(n$6:A*) virtual [line 31, column 22]\n *&#GB<codetoanalyze/objc/frontend/block/static.m>$A_test_leak_sharedInstance:objc_object*=n$7 [line 31, column 5]\n " shape="box"]
"__objc_anonymous_block_A_test_leak______2.c5d678f27e9d82d9f4d1cf0324051fa7_3" -> "__objc_anonymous_block_A_test_leak______2.c5d678f27e9d82d9f4d1cf0324051fa7_2" ; "objc_blockA_test_leak_2.5b3de3f9ef0695311853bace3ed320b8_3" -> "objc_blockA_test_leak_2.5b3de3f9ef0695311853bace3ed320b8_2" ;
"test2#A#class.ce50cb13c3345decc567dd4eb6124604_1" [label="1: Start A_test2\nFormals: \nLocals: \n DECLARE_LOCALS(&return); [line 36, column 1]\n " color=yellow style=filled] "test2#A#class.ce50cb13c3345decc567dd4eb6124604_1" [label="1: Start A_test2\nFormals: \nLocals: \n DECLARE_LOCALS(&return); [line 36, column 1]\n " color=yellow style=filled]
@ -55,29 +55,29 @@ digraph iCFG {
"test2#A#class.ce50cb13c3345decc567dd4eb6124604_2" [label="2: Exit A_test2 \n " color=yellow style=filled] "test2#A#class.ce50cb13c3345decc567dd4eb6124604_2" [label="2: Exit A_test2 \n " color=yellow style=filled]
"test2#A#class.ce50cb13c3345decc567dd4eb6124604_3" [label="3: Return Stmt \n n$9=*&#GB<codetoanalyze/objc/frontend/block/static.m>$A_test2_sharedInstance:objc_object* [line 44, column 10]\n *&return:objc_object*=n$9 [line 44, column 3]\n " shape="box"] "test2#A#class.ce50cb13c3345decc567dd4eb6124604_3" [label="3: Return Stmt \n n$11=*&#GB<codetoanalyze/objc/frontend/block/static.m>$A_test2_sharedInstance:objc_object* [line 44, column 10]\n *&return:objc_object*=n$11 [line 44, column 3]\n " shape="box"]
"test2#A#class.ce50cb13c3345decc567dd4eb6124604_3" -> "test2#A#class.ce50cb13c3345decc567dd4eb6124604_2" ; "test2#A#class.ce50cb13c3345decc567dd4eb6124604_3" -> "test2#A#class.ce50cb13c3345decc567dd4eb6124604_2" ;
"test2#A#class.ce50cb13c3345decc567dd4eb6124604_4" [label="4: Call (_fun___objc_anonymous_block_A_test2______3) \n DECLARE_LOCALS(&__objc_anonymous_block_A_test2______3); [line 39, column 3]\n n$11=_fun___objc_alloc_no_fail(sizeof(t=__objc_anonymous_block_A_test2______3):unsigned long) [line 39, column 3]\n *&__objc_anonymous_block_A_test2______3:__objc_anonymous_block_A_test2______3=n$11 [line 39, column 3]\n n$12=*&#GB<codetoanalyze/objc/frontend/block/static.m>$A_test2_sharedInstance:objc_object* [line 39, column 3]\n *n$11.A_test2_sharedInstance:objc_object*=n$12 [line 39, column 3]\n (_fun___objc_anonymous_block_A_test2______3)() [line 39, column 3]\n " shape="box"] "test2#A#class.ce50cb13c3345decc567dd4eb6124604_4" [label="4: Call (_fun_objc_blockA_test2_3) \n DECLARE_LOCALS(&0$?%__sil_tmp_block_heap_var_n$14); [line 39, column 3]\n n$13=_fun___objc_alloc_no_fail(sizeof(t=Objc_blockA_test2_3Class):unsigned long) [line 39, column 3]\n *&0$?%__sil_tmp_block_heap_var_n$14:Objc_blockA_test2_3Class=n$13 [line 39, column 3]\n n$15=*&#GB<codetoanalyze/objc/frontend/block/static.m>$A_test2_sharedInstance:objc_object* [line 39, column 3]\n *n$13.A_test2_sharedInstance:objc_object*=n$15 [line 39, column 3]\n (_fun_objc_blockA_test2_3)() [line 39, column 3]\n " shape="box"]
"test2#A#class.ce50cb13c3345decc567dd4eb6124604_4" -> "test2#A#class.ce50cb13c3345decc567dd4eb6124604_3" ; "test2#A#class.ce50cb13c3345decc567dd4eb6124604_4" -> "test2#A#class.ce50cb13c3345decc567dd4eb6124604_3" ;
"test2#A#class.ce50cb13c3345decc567dd4eb6124604_5" [label="5: BinaryOperatorStmt: Assign \n n$13=_fun___objc_alloc_no_fail(sizeof(t=A):unsigned long) [line 38, column 21]\n n$14=_fun_A_init(n$13:A*) virtual [line 38, column 20]\n *&#GB<codetoanalyze/objc/frontend/block/static.m>$A_test2_sharedInstance:objc_object*=n$14 [line 38, column 3]\n " shape="box"] "test2#A#class.ce50cb13c3345decc567dd4eb6124604_5" [label="5: BinaryOperatorStmt: Assign \n n$16=_fun___objc_alloc_no_fail(sizeof(t=A):unsigned long) [line 38, column 21]\n n$17=_fun_A_init(n$16:A*) virtual [line 38, column 20]\n *&#GB<codetoanalyze/objc/frontend/block/static.m>$A_test2_sharedInstance:objc_object*=n$17 [line 38, column 3]\n " shape="box"]
"test2#A#class.ce50cb13c3345decc567dd4eb6124604_5" -> "test2#A#class.ce50cb13c3345decc567dd4eb6124604_4" ; "test2#A#class.ce50cb13c3345decc567dd4eb6124604_5" -> "test2#A#class.ce50cb13c3345decc567dd4eb6124604_4" ;
"__objc_anonymous_block_A_test2______3.0e953887bdb7a25b2d68b61a14972fb5_1" [label="1: Start __objc_anonymous_block_A_test2______3\nFormals: \nLocals: p:objc_object* \n DECLARE_LOCALS(&return,&p); [line 39, column 3]\n " color=yellow style=filled] "objc_blockA_test2_3.d73da2e84cb701fb03b2fbe656a01a1b_1" [label="1: Start objc_blockA_test2_3\nFormals: \nLocals: p:objc_object* \n DECLARE_LOCALS(&return,&p); [line 39, column 3]\n " color=yellow style=filled]
"__objc_anonymous_block_A_test2______3.0e953887bdb7a25b2d68b61a14972fb5_1" -> "__objc_anonymous_block_A_test2______3.0e953887bdb7a25b2d68b61a14972fb5_3" ; "objc_blockA_test2_3.d73da2e84cb701fb03b2fbe656a01a1b_1" -> "objc_blockA_test2_3.d73da2e84cb701fb03b2fbe656a01a1b_3" ;
"__objc_anonymous_block_A_test2______3.0e953887bdb7a25b2d68b61a14972fb5_2" [label="2: Exit __objc_anonymous_block_A_test2______3 \n " color=yellow style=filled] "objc_blockA_test2_3.d73da2e84cb701fb03b2fbe656a01a1b_2" [label="2: Exit objc_blockA_test2_3 \n " color=yellow style=filled]
"__objc_anonymous_block_A_test2______3.0e953887bdb7a25b2d68b61a14972fb5_3" [label="3: DeclStmt \n n$10=*&#GB<codetoanalyze/objc/frontend/block/static.m>$A_test2_sharedInstance:objc_object* [line 41, column 12]\n *&p:objc_object*=n$10 [line 41, column 5]\n " shape="box"] "objc_blockA_test2_3.d73da2e84cb701fb03b2fbe656a01a1b_3" [label="3: DeclStmt \n n$12=*&#GB<codetoanalyze/objc/frontend/block/static.m>$A_test2_sharedInstance:objc_object* [line 41, column 12]\n *&p:objc_object*=n$12 [line 41, column 5]\n " shape="box"]
"__objc_anonymous_block_A_test2______3.0e953887bdb7a25b2d68b61a14972fb5_3" -> "__objc_anonymous_block_A_test2______3.0e953887bdb7a25b2d68b61a14972fb5_2" ; "objc_blockA_test2_3.d73da2e84cb701fb03b2fbe656a01a1b_3" -> "objc_blockA_test2_3.d73da2e84cb701fb03b2fbe656a01a1b_2" ;
"test3#A#class.041e0eaf033ae8cfa2af48253dfb07ee_1" [label="1: Start A_test3\nFormals: \nLocals: \n DECLARE_LOCALS(&return); [line 47, column 1]\n " color=yellow style=filled] "test3#A#class.041e0eaf033ae8cfa2af48253dfb07ee_1" [label="1: Start A_test3\nFormals: \nLocals: \n DECLARE_LOCALS(&return); [line 47, column 1]\n " color=yellow style=filled]
@ -85,25 +85,25 @@ digraph iCFG {
"test3#A#class.041e0eaf033ae8cfa2af48253dfb07ee_2" [label="2: Exit A_test3 \n " color=yellow style=filled] "test3#A#class.041e0eaf033ae8cfa2af48253dfb07ee_2" [label="2: Exit A_test3 \n " color=yellow style=filled]
"test3#A#class.041e0eaf033ae8cfa2af48253dfb07ee_3" [label="3: Return Stmt \n n$15=*&#GB<codetoanalyze/objc/frontend/block/static.m>$A_test3_i:int [line 55, column 10]\n *&return:int=n$15 [line 55, column 3]\n " shape="box"] "test3#A#class.041e0eaf033ae8cfa2af48253dfb07ee_3" [label="3: Return Stmt \n n$18=*&#GB<codetoanalyze/objc/frontend/block/static.m>$A_test3_i:int [line 55, column 10]\n *&return:int=n$18 [line 55, column 3]\n " shape="box"]
"test3#A#class.041e0eaf033ae8cfa2af48253dfb07ee_3" -> "test3#A#class.041e0eaf033ae8cfa2af48253dfb07ee_2" ; "test3#A#class.041e0eaf033ae8cfa2af48253dfb07ee_3" -> "test3#A#class.041e0eaf033ae8cfa2af48253dfb07ee_2" ;
"test3#A#class.041e0eaf033ae8cfa2af48253dfb07ee_4" [label="4: Call (_fun___objc_anonymous_block_A_test3______4) \n DECLARE_LOCALS(&__objc_anonymous_block_A_test3______4); [line 50, column 3]\n n$17=_fun___objc_alloc_no_fail(sizeof(t=__objc_anonymous_block_A_test3______4):unsigned long) [line 50, column 3]\n *&__objc_anonymous_block_A_test3______4:__objc_anonymous_block_A_test3______4=n$17 [line 50, column 3]\n n$18=*&#GB<codetoanalyze/objc/frontend/block/static.m>$A_test3_i:int [line 50, column 3]\n *n$17.A_test3_i:int=n$18 [line 50, column 3]\n (_fun___objc_anonymous_block_A_test3______4)() [line 50, column 3]\n " shape="box"] "test3#A#class.041e0eaf033ae8cfa2af48253dfb07ee_4" [label="4: Call (_fun_objc_blockA_test3_4) \n DECLARE_LOCALS(&0$?%__sil_tmp_block_heap_var_n$21); [line 50, column 3]\n n$20=_fun___objc_alloc_no_fail(sizeof(t=Objc_blockA_test3_4Class):unsigned long) [line 50, column 3]\n *&0$?%__sil_tmp_block_heap_var_n$21:Objc_blockA_test3_4Class=n$20 [line 50, column 3]\n n$22=*&#GB<codetoanalyze/objc/frontend/block/static.m>$A_test3_i:int [line 50, column 3]\n *n$20.A_test3_i:int=n$22 [line 50, column 3]\n (_fun_objc_blockA_test3_4)() [line 50, column 3]\n " shape="box"]
"test3#A#class.041e0eaf033ae8cfa2af48253dfb07ee_4" -> "test3#A#class.041e0eaf033ae8cfa2af48253dfb07ee_3" ; "test3#A#class.041e0eaf033ae8cfa2af48253dfb07ee_4" -> "test3#A#class.041e0eaf033ae8cfa2af48253dfb07ee_3" ;
"__objc_anonymous_block_A_test3______4.aa5c8617f08575eee528c8138958fcd7_1" [label="1: Start __objc_anonymous_block_A_test3______4\nFormals: \nLocals: \n DECLARE_LOCALS(&return); [line 50, column 3]\n " color=yellow style=filled] "objc_blockA_test3_4.645dc6f18a9ea7bd77a195ea083890a4_1" [label="1: Start objc_blockA_test3_4\nFormals: \nLocals: \n DECLARE_LOCALS(&return); [line 50, column 3]\n " color=yellow style=filled]
"__objc_anonymous_block_A_test3______4.aa5c8617f08575eee528c8138958fcd7_1" -> "__objc_anonymous_block_A_test3______4.aa5c8617f08575eee528c8138958fcd7_3" ; "objc_blockA_test3_4.645dc6f18a9ea7bd77a195ea083890a4_1" -> "objc_blockA_test3_4.645dc6f18a9ea7bd77a195ea083890a4_3" ;
"__objc_anonymous_block_A_test3______4.aa5c8617f08575eee528c8138958fcd7_2" [label="2: Exit __objc_anonymous_block_A_test3______4 \n " color=yellow style=filled] "objc_blockA_test3_4.645dc6f18a9ea7bd77a195ea083890a4_2" [label="2: Exit objc_blockA_test3_4 \n " color=yellow style=filled]
"__objc_anonymous_block_A_test3______4.aa5c8617f08575eee528c8138958fcd7_3" [label="3: UnaryOperator \n n$16=*&#GB<codetoanalyze/objc/frontend/block/static.m>$A_test3_i:int [line 52, column 5]\n *&#GB<codetoanalyze/objc/frontend/block/static.m>$A_test3_i:int=(n$16 + 1) [line 52, column 5]\n " shape="box"] "objc_blockA_test3_4.645dc6f18a9ea7bd77a195ea083890a4_3" [label="3: UnaryOperator \n n$19=*&#GB<codetoanalyze/objc/frontend/block/static.m>$A_test3_i:int [line 52, column 5]\n *&#GB<codetoanalyze/objc/frontend/block/static.m>$A_test3_i:int=(n$19 + 1) [line 52, column 5]\n " shape="box"]
"__objc_anonymous_block_A_test3______4.aa5c8617f08575eee528c8138958fcd7_3" -> "__objc_anonymous_block_A_test3______4.aa5c8617f08575eee528c8138958fcd7_2" ; "objc_blockA_test3_4.645dc6f18a9ea7bd77a195ea083890a4_3" -> "objc_blockA_test3_4.645dc6f18a9ea7bd77a195ea083890a4_2" ;
"main.fad58de7366495db4650cfefac2fcd61_1" [label="1: Start main\nFormals: argc:int argv:char const **\nLocals: \n DECLARE_LOCALS(&return); [line 60, column 1]\n " color=yellow style=filled] "main.fad58de7366495db4650cfefac2fcd61_1" [label="1: Start main\nFormals: argc:int argv:char const **\nLocals: \n DECLARE_LOCALS(&return); [line 60, column 1]\n " color=yellow style=filled]

@ -2,10 +2,10 @@ codetoanalyze/objc/linters-for-test-only/InContextOfMethodsTest.m, InContextOfMe
codetoanalyze/objc/linters-for-test-only/InContextOfMethodsTest.m, InContextOfMethodsTest_method, 16, TEST_IN_METHOD_CONTEXT, [] codetoanalyze/objc/linters-for-test-only/InContextOfMethodsTest.m, InContextOfMethodsTest_method, 16, TEST_IN_METHOD_CONTEXT, []
codetoanalyze/objc/linters-for-test-only/InContextOfMethodsTest.m, InContextOfMethodsTest_method, 16, TEST_VAR_TYPE_CHECK, [] codetoanalyze/objc/linters-for-test-only/InContextOfMethodsTest.m, InContextOfMethodsTest_method, 16, TEST_VAR_TYPE_CHECK, []
codetoanalyze/objc/linters-for-test-only/InContextOfMethodsTest.m, InContextOfMethodsTest_method_with_block, 19, TEST_BUILTIN_TYPE, [] codetoanalyze/objc/linters-for-test-only/InContextOfMethodsTest.m, InContextOfMethodsTest_method_with_block, 19, TEST_BUILTIN_TYPE, []
codetoanalyze/objc/linters-for-test-only/InContextOfMethodsTest.m, __objc_anonymous_block_______1, 21, TEST_VAR_TYPE_CHECK, []
codetoanalyze/objc/linters-for-test-only/InContextOfMethodsTest.m, __objc_anonymous_block_______2, 21, TEST_IN_BLOCK_CONTEXT, []
codetoanalyze/objc/linters-for-test-only/InContextOfMethodsTest.m, function, 27, TEST_IN_FUNCTION_CONTEXT, [] codetoanalyze/objc/linters-for-test-only/InContextOfMethodsTest.m, function, 27, TEST_IN_FUNCTION_CONTEXT, []
codetoanalyze/objc/linters-for-test-only/InContextOfMethodsTest.m, function, 27, TEST_VAR_TYPE_CHECK, [] codetoanalyze/objc/linters-for-test-only/InContextOfMethodsTest.m, function, 27, TEST_VAR_TYPE_CHECK, []
codetoanalyze/objc/linters-for-test-only/InContextOfMethodsTest.m, objc_block_1, 21, TEST_VAR_TYPE_CHECK, []
codetoanalyze/objc/linters-for-test-only/InContextOfMethodsTest.m, objc_block_2, 21, TEST_IN_BLOCK_CONTEXT, []
codetoanalyze/objc/linters-for-test-only/PrivateAPIChecker.m, TestView_methodd, 16, TEST_BUILTIN_TYPE, [] codetoanalyze/objc/linters-for-test-only/PrivateAPIChecker.m, TestView_methodd, 16, TEST_BUILTIN_TYPE, []
codetoanalyze/objc/linters-for-test-only/PrivateAPIChecker.m, TestView_methoddd, 20, TEST_BUILTIN_TYPE, [] codetoanalyze/objc/linters-for-test-only/PrivateAPIChecker.m, TestView_methoddd, 20, TEST_BUILTIN_TYPE, []
codetoanalyze/objc/linters-for-test-only/PrivateAPIChecker.m, TestView_methoddd, 21, TEST_SELECTOR, [] codetoanalyze/objc/linters-for-test-only/PrivateAPIChecker.m, TestView_methoddd, 21, TEST_SELECTOR, []

@ -11,7 +11,7 @@ codetoanalyze/objc/linters/atomic_prop.m, A_readP, 78, POINTER_TO_INTEGRAL_IMPLI
codetoanalyze/objc/linters/atomic_prop.m, A_readQ, 86, DIRECT_ATOMIC_PROPERTY_ACCESS, [] codetoanalyze/objc/linters/atomic_prop.m, A_readQ, 86, DIRECT_ATOMIC_PROPERTY_ACCESS, []
codetoanalyze/objc/linters/atomic_prop.m, A_readQ, 86, POINTER_TO_INTEGRAL_IMPLICIT_CAST, [] codetoanalyze/objc/linters/atomic_prop.m, A_readQ, 86, POINTER_TO_INTEGRAL_IMPLICIT_CAST, []
codetoanalyze/objc/linters/atomic_prop.m, A_writeQ, 82, DIRECT_ATOMIC_PROPERTY_ACCESS, [] codetoanalyze/objc/linters/atomic_prop.m, A_writeQ, 82, DIRECT_ATOMIC_PROPERTY_ACCESS, []
codetoanalyze/objc/linters/atomic_prop.m, __objc_anonymous_block_______1, 114, DIRECT_ATOMIC_PROPERTY_ACCESS, [] codetoanalyze/objc/linters/atomic_prop.m, objc_block_1, 114, DIRECT_ATOMIC_PROPERTY_ACCESS, []
codetoanalyze/objc/linters/badpointer.m, bad1, 17, BAD_POINTER_COMPARISON, [] codetoanalyze/objc/linters/badpointer.m, bad1, 17, BAD_POINTER_COMPARISON, []
codetoanalyze/objc/linters/badpointer.m, bad10, 139, BAD_POINTER_COMPARISON, [] codetoanalyze/objc/linters/badpointer.m, bad10, 139, BAD_POINTER_COMPARISON, []
codetoanalyze/objc/linters/badpointer.m, bad11, 148, BAD_POINTER_COMPARISON, [] codetoanalyze/objc/linters/badpointer.m, bad11, 148, BAD_POINTER_COMPARISON, []

@ -55,25 +55,25 @@ digraph iCFG {
"navigateToURLInBackground#BlockVar#class.f4e64a7a224e4dae5096c3b731a4233e_11" -> "navigateToURLInBackground#BlockVar#class.f4e64a7a224e4dae5096c3b731a4233e_10" ; "navigateToURLInBackground#BlockVar#class.f4e64a7a224e4dae5096c3b731a4233e_11" -> "navigateToURLInBackground#BlockVar#class.f4e64a7a224e4dae5096c3b731a4233e_10" ;
"navigateToURLInBackground#BlockVar#class.f4e64a7a224e4dae5096c3b731a4233e_12" [label="12: DeclStmt \n DECLARE_LOCALS(&__objc_anonymous_block_BlockVar_navigateToURLInBackground______1); [line 19, column 35]\n n$10=_fun___objc_alloc_no_fail(sizeof(t=__objc_anonymous_block_BlockVar_navigateToURLInBackground______1):unsigned long) [line 19, column 35]\n *&__objc_anonymous_block_BlockVar_navigateToURLInBackground______1:__objc_anonymous_block_BlockVar_navigateToURLInBackground______1=n$10 [line 19, column 35]\n *&addBlock:_fn_(*)=(_fun___objc_anonymous_block_BlockVar_navigateToURLInBackground______1) [line 19, column 3]\n " shape="box"] "navigateToURLInBackground#BlockVar#class.f4e64a7a224e4dae5096c3b731a4233e_12" [label="12: DeclStmt \n DECLARE_LOCALS(&0$?%__sil_tmp_block_heap_var_n$11); [line 19, column 35]\n n$10=_fun___objc_alloc_no_fail(sizeof(t=Objc_blockBlockVar_navigateToURLInBackground_1Class):unsigned long) [line 19, column 35]\n *&0$?%__sil_tmp_block_heap_var_n$11:Objc_blockBlockVar_navigateToURLInBackground_1Class=n$10 [line 19, column 35]\n *&addBlock:_fn_(*)=(_fun_objc_blockBlockVar_navigateToURLInBackground_1) [line 19, column 3]\n " shape="box"]
"navigateToURLInBackground#BlockVar#class.f4e64a7a224e4dae5096c3b731a4233e_12" -> "navigateToURLInBackground#BlockVar#class.f4e64a7a224e4dae5096c3b731a4233e_11" ; "navigateToURLInBackground#BlockVar#class.f4e64a7a224e4dae5096c3b731a4233e_12" -> "navigateToURLInBackground#BlockVar#class.f4e64a7a224e4dae5096c3b731a4233e_11" ;
"__objc_anonymous_block_BlockVar_navigateToURLInBackground______1.834bbb8d73aa8453b2bf0ca15a1945f0_1" [label="1: Start __objc_anonymous_block_BlockVar_navigateToURLInBackground______1\nFormals: a:int b:int\nLocals: res:int \n DECLARE_LOCALS(&return,&res); [line 19, column 35]\n " color=yellow style=filled] "objc_blockBlockVar_navigateToURLInBackground_1.3f33ba208d462b81a235e03653494b18_1" [label="1: Start objc_blockBlockVar_navigateToURLInBackground_1\nFormals: a:int b:int\nLocals: res:int \n DECLARE_LOCALS(&return,&res); [line 19, column 35]\n " color=yellow style=filled]
"__objc_anonymous_block_BlockVar_navigateToURLInBackground______1.834bbb8d73aa8453b2bf0ca15a1945f0_1" -> "__objc_anonymous_block_BlockVar_navigateToURLInBackground______1.834bbb8d73aa8453b2bf0ca15a1945f0_4" ; "objc_blockBlockVar_navigateToURLInBackground_1.3f33ba208d462b81a235e03653494b18_1" -> "objc_blockBlockVar_navigateToURLInBackground_1.3f33ba208d462b81a235e03653494b18_4" ;
"__objc_anonymous_block_BlockVar_navigateToURLInBackground______1.834bbb8d73aa8453b2bf0ca15a1945f0_2" [label="2: Exit __objc_anonymous_block_BlockVar_navigateToURLInBackground______1 \n " color=yellow style=filled] "objc_blockBlockVar_navigateToURLInBackground_1.3f33ba208d462b81a235e03653494b18_2" [label="2: Exit objc_blockBlockVar_navigateToURLInBackground_1 \n " color=yellow style=filled]
"__objc_anonymous_block_BlockVar_navigateToURLInBackground______1.834bbb8d73aa8453b2bf0ca15a1945f0_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$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_anonymous_block_BlockVar_navigateToURLInBackground______1.834bbb8d73aa8453b2bf0ca15a1945f0_3" -> "__objc_anonymous_block_BlockVar_navigateToURLInBackground______1.834bbb8d73aa8453b2bf0ca15a1945f0_2" ; "objc_blockBlockVar_navigateToURLInBackground_1.3f33ba208d462b81a235e03653494b18_3" -> "objc_blockBlockVar_navigateToURLInBackground_1.3f33ba208d462b81a235e03653494b18_2" ;
"__objc_anonymous_block_BlockVar_navigateToURLInBackground______1.834bbb8d73aa8453b2bf0ca15a1945f0_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$9=_fun_BlockVar_test() [line 20, column 15]\n *&res:int=n$9 [line 20, column 5]\n " shape="box"]
"__objc_anonymous_block_BlockVar_navigateToURLInBackground______1.834bbb8d73aa8453b2bf0ca15a1945f0_4" -> "__objc_anonymous_block_BlockVar_navigateToURLInBackground______1.834bbb8d73aa8453b2bf0ca15a1945f0_3" ; "objc_blockBlockVar_navigateToURLInBackground_1.3f33ba208d462b81a235e03653494b18_4" -> "objc_blockBlockVar_navigateToURLInBackground_1.3f33ba208d462b81a235e03653494b18_3" ;
"blockPostBad#BlockVar#instance.60292f870cad8c1a5cefdbfe4194d6f9_1" [label="1: Start BlockVar_blockPostBad\nFormals: self:BlockVar*\nLocals: my_block:_fn_(*) x:int* \n DECLARE_LOCALS(&return,&my_block,&x); [line 31, column 1]\n " color=yellow style=filled] "blockPostBad#BlockVar#instance.60292f870cad8c1a5cefdbfe4194d6f9_1" [label="1: Start BlockVar_blockPostBad\nFormals: self:BlockVar*\nLocals: my_block:_fn_(*) x:int* \n DECLARE_LOCALS(&return,&my_block,&x); [line 31, column 1]\n " color=yellow style=filled]
@ -81,11 +81,11 @@ digraph iCFG {
"blockPostBad#BlockVar#instance.60292f870cad8c1a5cefdbfe4194d6f9_2" [label="2: Exit BlockVar_blockPostBad \n " color=yellow style=filled] "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$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" [label="3: Return Stmt \n n$12=*&my_block:_fn_(*) [line 36, column 11]\n n$13=n$12() [line 36, column 11]\n n$14=*n$13:int [line 36, column 10]\n *&return:int=n$14 [line 36, column 3]\n " shape="box"]
"blockPostBad#BlockVar#instance.60292f870cad8c1a5cefdbfe4194d6f9_3" -> "blockPostBad#BlockVar#instance.60292f870cad8c1a5cefdbfe4194d6f9_2" ; "blockPostBad#BlockVar#instance.60292f870cad8c1a5cefdbfe4194d6f9_3" -> "blockPostBad#BlockVar#instance.60292f870cad8c1a5cefdbfe4194d6f9_2" ;
"blockPostBad#BlockVar#instance.60292f870cad8c1a5cefdbfe4194d6f9_4" [label="4: DeclStmt \n DECLARE_LOCALS(&__objc_anonymous_block_BlockVar_blockPostBad______2); [line 33, column 28]\n n$16=_fun___objc_alloc_no_fail(sizeof(t=__objc_anonymous_block_BlockVar_blockPostBad______2):unsigned long) [line 33, column 28]\n *&__objc_anonymous_block_BlockVar_blockPostBad______2:__objc_anonymous_block_BlockVar_blockPostBad______2=n$16 [line 33, column 28]\n n$17=*&x:int* [line 33, column 28]\n *n$16.x:int*=n$17 [line 33, column 28]\n n$14=*&x:int* [line 33, column 28]\n *&my_block:_fn_(*)=(_fun___objc_anonymous_block_BlockVar_blockPostBad______2,n$14) [line 33, column 3]\n " shape="box"] "blockPostBad#BlockVar#instance.60292f870cad8c1a5cefdbfe4194d6f9_4" [label="4: DeclStmt \n DECLARE_LOCALS(&0$?%__sil_tmp_block_heap_var_n$18); [line 33, column 28]\n n$17=_fun___objc_alloc_no_fail(sizeof(t=Objc_blockBlockVar_blockPostBad_2Class):unsigned long) [line 33, column 28]\n *&0$?%__sil_tmp_block_heap_var_n$18:Objc_blockBlockVar_blockPostBad_2Class=n$17 [line 33, column 28]\n n$19=*&x:int* [line 33, column 28]\n *n$17.x:int*=n$19 [line 33, column 28]\n n$15=*&x:int* [line 33, column 28]\n *&my_block:_fn_(*)=(_fun_objc_blockBlockVar_blockPostBad_2,n$15) [line 33, column 3]\n " shape="box"]
"blockPostBad#BlockVar#instance.60292f870cad8c1a5cefdbfe4194d6f9_4" -> "blockPostBad#BlockVar#instance.60292f870cad8c1a5cefdbfe4194d6f9_3" ; "blockPostBad#BlockVar#instance.60292f870cad8c1a5cefdbfe4194d6f9_4" -> "blockPostBad#BlockVar#instance.60292f870cad8c1a5cefdbfe4194d6f9_3" ;
@ -100,11 +100,11 @@ digraph iCFG {
"blockPostOk#BlockVar#instance.1bb64a946f8b169b31996644931ed82d_2" [label="2: Exit BlockVar_blockPostOk \n " color=yellow style=filled] "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$18=*&my_block:_fn_(*) [line 45, column 11]\n n$19=n$18() [line 45, column 11]\n n$20=*n$19:int [line 45, column 10]\n *&return:int=n$20 [line 45, column 3]\n " shape="box"] "blockPostOk#BlockVar#instance.1bb64a946f8b169b31996644931ed82d_3" [label="3: Return Stmt \n n$20=*&my_block:_fn_(*) [line 45, column 11]\n n$21=n$20() [line 45, column 11]\n n$22=*n$21:int [line 45, column 10]\n *&return:int=n$22 [line 45, column 3]\n " shape="box"]
"blockPostOk#BlockVar#instance.1bb64a946f8b169b31996644931ed82d_3" -> "blockPostOk#BlockVar#instance.1bb64a946f8b169b31996644931ed82d_2" ; "blockPostOk#BlockVar#instance.1bb64a946f8b169b31996644931ed82d_3" -> "blockPostOk#BlockVar#instance.1bb64a946f8b169b31996644931ed82d_2" ;
"blockPostOk#BlockVar#instance.1bb64a946f8b169b31996644931ed82d_4" [label="4: DeclStmt \n DECLARE_LOCALS(&__objc_anonymous_block_BlockVar_blockPostOk______3); [line 42, column 28]\n n$23=_fun___objc_alloc_no_fail(sizeof(t=__objc_anonymous_block_BlockVar_blockPostOk______3):unsigned long) [line 42, column 28]\n *&__objc_anonymous_block_BlockVar_blockPostOk______3:__objc_anonymous_block_BlockVar_blockPostOk______3=n$23 [line 42, column 28]\n n$24=*&x:int* [line 42, column 28]\n *n$23.x:int*=n$24 [line 42, column 28]\n n$21=*&x:int* [line 42, column 28]\n *&my_block:_fn_(*)=(_fun___objc_anonymous_block_BlockVar_blockPostOk______3,n$21) [line 42, column 3]\n " shape="box"] "blockPostOk#BlockVar#instance.1bb64a946f8b169b31996644931ed82d_4" [label="4: DeclStmt \n DECLARE_LOCALS(&0$?%__sil_tmp_block_heap_var_n$26); [line 42, column 28]\n n$25=_fun___objc_alloc_no_fail(sizeof(t=Objc_blockBlockVar_blockPostOk_3Class):unsigned long) [line 42, column 28]\n *&0$?%__sil_tmp_block_heap_var_n$26:Objc_blockBlockVar_blockPostOk_3Class=n$25 [line 42, column 28]\n n$27=*&x:int* [line 42, column 28]\n *n$25.x:int*=n$27 [line 42, column 28]\n n$23=*&x:int* [line 42, column 28]\n *&my_block:_fn_(*)=(_fun_objc_blockBlockVar_blockPostOk_3,n$23) [line 42, column 3]\n " shape="box"]
"blockPostOk#BlockVar#instance.1bb64a946f8b169b31996644931ed82d_4" -> "blockPostOk#BlockVar#instance.1bb64a946f8b169b31996644931ed82d_3" ; "blockPostOk#BlockVar#instance.1bb64a946f8b169b31996644931ed82d_4" -> "blockPostOk#BlockVar#instance.1bb64a946f8b169b31996644931ed82d_3" ;
@ -123,11 +123,11 @@ digraph iCFG {
"capturedNullDeref#BlockVar#instance.48c44f7ae26caf7a1ac522523ebac894_2" [label="2: Exit BlockVar_capturedNullDeref \n " color=yellow style=filled] "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$25=*&my_block:_fn_(*) [line 53, column 10]\n n$26=n$25() [line 53, column 10]\n *&return:int=n$26 [line 53, column 3]\n " shape="box"] "capturedNullDeref#BlockVar#instance.48c44f7ae26caf7a1ac522523ebac894_3" [label="3: Return Stmt \n n$28=*&my_block:_fn_(*) [line 53, column 10]\n n$29=n$28() [line 53, column 10]\n *&return:int=n$29 [line 53, column 3]\n " shape="box"]
"capturedNullDeref#BlockVar#instance.48c44f7ae26caf7a1ac522523ebac894_3" -> "capturedNullDeref#BlockVar#instance.48c44f7ae26caf7a1ac522523ebac894_2" ; "capturedNullDeref#BlockVar#instance.48c44f7ae26caf7a1ac522523ebac894_3" -> "capturedNullDeref#BlockVar#instance.48c44f7ae26caf7a1ac522523ebac894_2" ;
"capturedNullDeref#BlockVar#instance.48c44f7ae26caf7a1ac522523ebac894_4" [label="4: DeclStmt \n DECLARE_LOCALS(&__objc_anonymous_block_BlockVar_capturedNullDeref______4); [line 50, column 27]\n n$30=_fun___objc_alloc_no_fail(sizeof(t=__objc_anonymous_block_BlockVar_capturedNullDeref______4):unsigned long) [line 50, column 27]\n *&__objc_anonymous_block_BlockVar_capturedNullDeref______4:__objc_anonymous_block_BlockVar_capturedNullDeref______4=n$30 [line 50, column 27]\n n$31=*&x:int* [line 50, column 27]\n *n$30.x:int*=n$31 [line 50, column 27]\n n$27=*&x:int* [line 50, column 27]\n *&my_block:_fn_(*)=(_fun___objc_anonymous_block_BlockVar_capturedNullDeref______4,n$27) [line 50, column 3]\n " shape="box"] "capturedNullDeref#BlockVar#instance.48c44f7ae26caf7a1ac522523ebac894_4" [label="4: DeclStmt \n DECLARE_LOCALS(&0$?%__sil_tmp_block_heap_var_n$34); [line 50, column 27]\n n$33=_fun___objc_alloc_no_fail(sizeof(t=Objc_blockBlockVar_capturedNullDeref_4Class):unsigned long) [line 50, column 27]\n *&0$?%__sil_tmp_block_heap_var_n$34:Objc_blockBlockVar_capturedNullDeref_4Class=n$33 [line 50, column 27]\n n$35=*&x:int* [line 50, column 27]\n *n$33.x:int*=n$35 [line 50, column 27]\n n$30=*&x:int* [line 50, column 27]\n *&my_block:_fn_(*)=(_fun_objc_blockBlockVar_capturedNullDeref_4,n$30) [line 50, column 3]\n " shape="box"]
"capturedNullDeref#BlockVar#instance.48c44f7ae26caf7a1ac522523ebac894_4" -> "capturedNullDeref#BlockVar#instance.48c44f7ae26caf7a1ac522523ebac894_3" ; "capturedNullDeref#BlockVar#instance.48c44f7ae26caf7a1ac522523ebac894_4" -> "capturedNullDeref#BlockVar#instance.48c44f7ae26caf7a1ac522523ebac894_3" ;
@ -142,7 +142,7 @@ digraph iCFG {
"capturedNoNullDeref#BlockVar#instance.ebe646baaabdc58144a5916780ee8c76_2" [label="2: Exit BlockVar_capturedNoNullDeref \n " color=yellow style=filled] "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$32=*&my_block:_fn_(*) [line 63, column 10]\n n$33=n$32() [line 63, column 10]\n *&return:int=n$33 [line 63, column 3]\n " shape="box"] "capturedNoNullDeref#BlockVar#instance.ebe646baaabdc58144a5916780ee8c76_3" [label="3: Return Stmt \n n$36=*&my_block:_fn_(*) [line 63, column 10]\n n$37=n$36() [line 63, column 10]\n *&return:int=n$37 [line 63, column 3]\n " shape="box"]
"capturedNoNullDeref#BlockVar#instance.ebe646baaabdc58144a5916780ee8c76_3" -> "capturedNoNullDeref#BlockVar#instance.ebe646baaabdc58144a5916780ee8c76_2" ; "capturedNoNullDeref#BlockVar#instance.ebe646baaabdc58144a5916780ee8c76_3" -> "capturedNoNullDeref#BlockVar#instance.ebe646baaabdc58144a5916780ee8c76_2" ;
@ -150,7 +150,7 @@ digraph iCFG {
"capturedNoNullDeref#BlockVar#instance.ebe646baaabdc58144a5916780ee8c76_4" -> "capturedNoNullDeref#BlockVar#instance.ebe646baaabdc58144a5916780ee8c76_3" ; "capturedNoNullDeref#BlockVar#instance.ebe646baaabdc58144a5916780ee8c76_4" -> "capturedNoNullDeref#BlockVar#instance.ebe646baaabdc58144a5916780ee8c76_3" ;
"capturedNoNullDeref#BlockVar#instance.ebe646baaabdc58144a5916780ee8c76_5" [label="5: DeclStmt \n DECLARE_LOCALS(&__objc_anonymous_block_BlockVar_capturedNoNullDeref______5); [line 59, column 27]\n n$37=_fun___objc_alloc_no_fail(sizeof(t=__objc_anonymous_block_BlockVar_capturedNoNullDeref______5):unsigned long) [line 59, column 27]\n *&__objc_anonymous_block_BlockVar_capturedNoNullDeref______5:__objc_anonymous_block_BlockVar_capturedNoNullDeref______5=n$37 [line 59, column 27]\n n$38=*&x:int* [line 59, column 27]\n *n$37.x:int*=n$38 [line 59, column 27]\n n$34=*&x:int* [line 59, column 27]\n *&my_block:_fn_(*)=(_fun___objc_anonymous_block_BlockVar_capturedNoNullDeref______5,n$34) [line 59, column 3]\n " shape="box"] "capturedNoNullDeref#BlockVar#instance.ebe646baaabdc58144a5916780ee8c76_5" [label="5: DeclStmt \n DECLARE_LOCALS(&0$?%__sil_tmp_block_heap_var_n$42); [line 59, column 27]\n n$41=_fun___objc_alloc_no_fail(sizeof(t=Objc_blockBlockVar_capturedNoNullDeref_5Class):unsigned long) [line 59, column 27]\n *&0$?%__sil_tmp_block_heap_var_n$42:Objc_blockBlockVar_capturedNoNullDeref_5Class=n$41 [line 59, column 27]\n n$43=*&x:int* [line 59, column 27]\n *n$41.x:int*=n$43 [line 59, column 27]\n n$38=*&x:int* [line 59, column 27]\n *&my_block:_fn_(*)=(_fun_objc_blockBlockVar_capturedNoNullDeref_5,n$38) [line 59, column 3]\n " shape="box"]
"capturedNoNullDeref#BlockVar#instance.ebe646baaabdc58144a5916780ee8c76_5" -> "capturedNoNullDeref#BlockVar#instance.ebe646baaabdc58144a5916780ee8c76_4" ; "capturedNoNullDeref#BlockVar#instance.ebe646baaabdc58144a5916780ee8c76_5" -> "capturedNoNullDeref#BlockVar#instance.ebe646baaabdc58144a5916780ee8c76_4" ;
@ -162,48 +162,48 @@ digraph iCFG {
"capturedNoNullDeref#BlockVar#instance.ebe646baaabdc58144a5916780ee8c76_7" -> "capturedNoNullDeref#BlockVar#instance.ebe646baaabdc58144a5916780ee8c76_6" ; "capturedNoNullDeref#BlockVar#instance.ebe646baaabdc58144a5916780ee8c76_7" -> "capturedNoNullDeref#BlockVar#instance.ebe646baaabdc58144a5916780ee8c76_6" ;
"__objc_anonymous_block_BlockVar_blockPostOk______3.f2be4667efa44c622733276c7c4d297f_1" [label="1: Start __objc_anonymous_block_BlockVar_blockPostOk______3\nFormals: x:int*\nLocals: \nCaptured: x:int* \n DECLARE_LOCALS(&return); [line 42, column 28]\n " color=yellow style=filled] "objc_blockBlockVar_blockPostOk_3.3ab7fa6614f426747520e37cb5442862_1" [label="1: Start objc_blockBlockVar_blockPostOk_3\nFormals: x:int*\nLocals: \nCaptured: x:int* \n DECLARE_LOCALS(&return); [line 42, column 28]\n " color=yellow style=filled]
"__objc_anonymous_block_BlockVar_blockPostOk______3.f2be4667efa44c622733276c7c4d297f_1" -> "__objc_anonymous_block_BlockVar_blockPostOk______3.f2be4667efa44c622733276c7c4d297f_3" ; "objc_blockBlockVar_blockPostOk_3.3ab7fa6614f426747520e37cb5442862_1" -> "objc_blockBlockVar_blockPostOk_3.3ab7fa6614f426747520e37cb5442862_3" ;
"__objc_anonymous_block_BlockVar_blockPostOk______3.f2be4667efa44c622733276c7c4d297f_2" [label="2: Exit __objc_anonymous_block_BlockVar_blockPostOk______3 \n " color=yellow style=filled] "objc_blockBlockVar_blockPostOk_3.3ab7fa6614f426747520e37cb5442862_2" [label="2: Exit objc_blockBlockVar_blockPostOk_3 \n " color=yellow style=filled]
"__objc_anonymous_block_BlockVar_blockPostOk______3.f2be4667efa44c622733276c7c4d297f_3" [label="3: Return Stmt \n n$22=*&x:int* [line 43, column 12]\n *&return:int*=n$22 [line 43, column 5]\n " shape="box"] "objc_blockBlockVar_blockPostOk_3.3ab7fa6614f426747520e37cb5442862_3" [label="3: Return Stmt \n n$24=*&x:int* [line 43, column 12]\n *&return:int*=n$24 [line 43, column 5]\n " shape="box"]
"__objc_anonymous_block_BlockVar_blockPostOk______3.f2be4667efa44c622733276c7c4d297f_3" -> "__objc_anonymous_block_BlockVar_blockPostOk______3.f2be4667efa44c622733276c7c4d297f_2" ; "objc_blockBlockVar_blockPostOk_3.3ab7fa6614f426747520e37cb5442862_3" -> "objc_blockBlockVar_blockPostOk_3.3ab7fa6614f426747520e37cb5442862_2" ;
"__objc_anonymous_block_BlockVar_blockPostBad______2.2fddd3e23281c5e109f42eca4da2649e_1" [label="1: Start __objc_anonymous_block_BlockVar_blockPostBad______2\nFormals: x:int*\nLocals: \nCaptured: x:int* \n DECLARE_LOCALS(&return); [line 33, column 28]\n " color=yellow style=filled] "objc_blockBlockVar_blockPostBad_2.bc84c345da03940b9d1bd31f97111684_1" [label="1: Start objc_blockBlockVar_blockPostBad_2\nFormals: x:int*\nLocals: \nCaptured: x:int* \n DECLARE_LOCALS(&return); [line 33, column 28]\n " color=yellow style=filled]
"__objc_anonymous_block_BlockVar_blockPostBad______2.2fddd3e23281c5e109f42eca4da2649e_1" -> "__objc_anonymous_block_BlockVar_blockPostBad______2.2fddd3e23281c5e109f42eca4da2649e_3" ; "objc_blockBlockVar_blockPostBad_2.bc84c345da03940b9d1bd31f97111684_1" -> "objc_blockBlockVar_blockPostBad_2.bc84c345da03940b9d1bd31f97111684_3" ;
"__objc_anonymous_block_BlockVar_blockPostBad______2.2fddd3e23281c5e109f42eca4da2649e_2" [label="2: Exit __objc_anonymous_block_BlockVar_blockPostBad______2 \n " color=yellow style=filled] "objc_blockBlockVar_blockPostBad_2.bc84c345da03940b9d1bd31f97111684_2" [label="2: Exit objc_blockBlockVar_blockPostBad_2 \n " color=yellow style=filled]
"__objc_anonymous_block_BlockVar_blockPostBad______2.2fddd3e23281c5e109f42eca4da2649e_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" [label="3: Return Stmt \n n$16=*&x:int* [line 34, column 12]\n *&return:int*=n$16 [line 34, column 5]\n " shape="box"]
"__objc_anonymous_block_BlockVar_blockPostBad______2.2fddd3e23281c5e109f42eca4da2649e_3" -> "__objc_anonymous_block_BlockVar_blockPostBad______2.2fddd3e23281c5e109f42eca4da2649e_2" ; "objc_blockBlockVar_blockPostBad_2.bc84c345da03940b9d1bd31f97111684_3" -> "objc_blockBlockVar_blockPostBad_2.bc84c345da03940b9d1bd31f97111684_2" ;
"__objc_anonymous_block_BlockVar_capturedNoNullDeref______5.a69652ca6dc4ed671ff08f723284fc6f_1" [label="1: Start __objc_anonymous_block_BlockVar_capturedNoNullDeref______5\nFormals: x:int*\nLocals: \nCaptured: x:int* \n DECLARE_LOCALS(&return); [line 59, column 27]\n " color=yellow style=filled] "objc_blockBlockVar_capturedNoNullDeref_5.9ca77a5edecb840a7e1b223eb6f09bab_1" [label="1: Start objc_blockBlockVar_capturedNoNullDeref_5\nFormals: x:int*\nLocals: \nCaptured: x:int* \n DECLARE_LOCALS(&return); [line 59, column 27]\n " color=yellow style=filled]
"__objc_anonymous_block_BlockVar_capturedNoNullDeref______5.a69652ca6dc4ed671ff08f723284fc6f_1" -> "__objc_anonymous_block_BlockVar_capturedNoNullDeref______5.a69652ca6dc4ed671ff08f723284fc6f_3" ; "objc_blockBlockVar_capturedNoNullDeref_5.9ca77a5edecb840a7e1b223eb6f09bab_1" -> "objc_blockBlockVar_capturedNoNullDeref_5.9ca77a5edecb840a7e1b223eb6f09bab_3" ;
"__objc_anonymous_block_BlockVar_capturedNoNullDeref______5.a69652ca6dc4ed671ff08f723284fc6f_2" [label="2: Exit __objc_anonymous_block_BlockVar_capturedNoNullDeref______5 \n " color=yellow style=filled] "objc_blockBlockVar_capturedNoNullDeref_5.9ca77a5edecb840a7e1b223eb6f09bab_2" [label="2: Exit objc_blockBlockVar_capturedNoNullDeref_5 \n " color=yellow style=filled]
"__objc_anonymous_block_BlockVar_capturedNoNullDeref______5.a69652ca6dc4ed671ff08f723284fc6f_3" [label="3: Return Stmt \n n$35=*&x:int* [line 60, column 13]\n n$36=*n$35:int [line 60, column 12]\n *&return:int=n$36 [line 60, column 5]\n " shape="box"] "objc_blockBlockVar_capturedNoNullDeref_5.9ca77a5edecb840a7e1b223eb6f09bab_3" [label="3: Return Stmt \n n$39=*&x:int* [line 60, column 13]\n n$40=*n$39:int [line 60, column 12]\n *&return:int=n$40 [line 60, column 5]\n " shape="box"]
"__objc_anonymous_block_BlockVar_capturedNoNullDeref______5.a69652ca6dc4ed671ff08f723284fc6f_3" -> "__objc_anonymous_block_BlockVar_capturedNoNullDeref______5.a69652ca6dc4ed671ff08f723284fc6f_2" ; "objc_blockBlockVar_capturedNoNullDeref_5.9ca77a5edecb840a7e1b223eb6f09bab_3" -> "objc_blockBlockVar_capturedNoNullDeref_5.9ca77a5edecb840a7e1b223eb6f09bab_2" ;
"__objc_anonymous_block_BlockVar_capturedNullDeref______4.7fcdd542b7a329c127af77d35f03368e_1" [label="1: Start __objc_anonymous_block_BlockVar_capturedNullDeref______4\nFormals: x:int*\nLocals: \nCaptured: x:int* \n DECLARE_LOCALS(&return); [line 50, column 27]\n " color=yellow style=filled] "objc_blockBlockVar_capturedNullDeref_4.1bdaeaa4f18868112cc189c7d6e42bf9_1" [label="1: Start objc_blockBlockVar_capturedNullDeref_4\nFormals: x:int*\nLocals: \nCaptured: x:int* \n DECLARE_LOCALS(&return); [line 50, column 27]\n " color=yellow style=filled]
"__objc_anonymous_block_BlockVar_capturedNullDeref______4.7fcdd542b7a329c127af77d35f03368e_1" -> "__objc_anonymous_block_BlockVar_capturedNullDeref______4.7fcdd542b7a329c127af77d35f03368e_3" ; "objc_blockBlockVar_capturedNullDeref_4.1bdaeaa4f18868112cc189c7d6e42bf9_1" -> "objc_blockBlockVar_capturedNullDeref_4.1bdaeaa4f18868112cc189c7d6e42bf9_3" ;
"__objc_anonymous_block_BlockVar_capturedNullDeref______4.7fcdd542b7a329c127af77d35f03368e_2" [label="2: Exit __objc_anonymous_block_BlockVar_capturedNullDeref______4 \n " color=yellow style=filled] "objc_blockBlockVar_capturedNullDeref_4.1bdaeaa4f18868112cc189c7d6e42bf9_2" [label="2: Exit objc_blockBlockVar_capturedNullDeref_4 \n " color=yellow style=filled]
"__objc_anonymous_block_BlockVar_capturedNullDeref______4.7fcdd542b7a329c127af77d35f03368e_3" [label="3: Return Stmt \n n$28=*&x:int* [line 51, column 13]\n n$29=*n$28:int [line 51, column 12]\n *&return:int=n$29 [line 51, column 5]\n " shape="box"] "objc_blockBlockVar_capturedNullDeref_4.1bdaeaa4f18868112cc189c7d6e42bf9_3" [label="3: Return Stmt \n n$31=*&x:int* [line 51, column 13]\n n$32=*n$31:int [line 51, column 12]\n *&return:int=n$32 [line 51, column 5]\n " shape="box"]
"__objc_anonymous_block_BlockVar_capturedNullDeref______4.7fcdd542b7a329c127af77d35f03368e_3" -> "__objc_anonymous_block_BlockVar_capturedNullDeref______4.7fcdd542b7a329c127af77d35f03368e_2" ; "objc_blockBlockVar_capturedNullDeref_4.1bdaeaa4f18868112cc189c7d6e42bf9_3" -> "objc_blockBlockVar_capturedNullDeref_4.1bdaeaa4f18868112cc189c7d6e42bf9_2" ;
} }

@ -1,62 +1,62 @@
/* @generated */ /* @generated */
digraph iCFG { digraph iCFG {
"__objc_anonymous_block_MyBlock_array______1.bbadc16d5b5c97477e972b47a398046c_1" [label="1: Start __objc_anonymous_block_MyBlock_array______1\nFormals: object:objc_object* idx:unsigned long stop:_Bool*\nLocals: ShouldStop:int \n DECLARE_LOCALS(&return,&ShouldStop); [line 21, column 33]\n " color=yellow style=filled] "objc_blockMyBlock_array_1.876ea7470c254ef92f8b4921d5f810e1_1" [label="1: Start objc_blockMyBlock_array_1\nFormals: object:objc_object* idx:unsigned long stop:_Bool*\nLocals: ShouldStop:int \n DECLARE_LOCALS(&return,&ShouldStop); [line 21, column 33]\n " color=yellow style=filled]
"__objc_anonymous_block_MyBlock_array______1.bbadc16d5b5c97477e972b47a398046c_1" -> "__objc_anonymous_block_MyBlock_array______1.bbadc16d5b5c97477e972b47a398046c_5" ; "objc_blockMyBlock_array_1.876ea7470c254ef92f8b4921d5f810e1_1" -> "objc_blockMyBlock_array_1.876ea7470c254ef92f8b4921d5f810e1_5" ;
"__objc_anonymous_block_MyBlock_array______1.bbadc16d5b5c97477e972b47a398046c_1" -> "__objc_anonymous_block_MyBlock_array______1.bbadc16d5b5c97477e972b47a398046c_6" ; "objc_blockMyBlock_array_1.876ea7470c254ef92f8b4921d5f810e1_1" -> "objc_blockMyBlock_array_1.876ea7470c254ef92f8b4921d5f810e1_6" ;
"__objc_anonymous_block_MyBlock_array______1.bbadc16d5b5c97477e972b47a398046c_2" [label="2: Exit __objc_anonymous_block_MyBlock_array______1 \n " color=yellow style=filled] "objc_blockMyBlock_array_1.876ea7470c254ef92f8b4921d5f810e1_2" [label="2: Exit objc_blockMyBlock_array_1 \n " color=yellow style=filled]
"__objc_anonymous_block_MyBlock_array______1.bbadc16d5b5c97477e972b47a398046c_3" [label="3: + \n " ] "objc_blockMyBlock_array_1.876ea7470c254ef92f8b4921d5f810e1_3" [label="3: + \n " ]
"__objc_anonymous_block_MyBlock_array______1.bbadc16d5b5c97477e972b47a398046c_3" -> "__objc_anonymous_block_MyBlock_array______1.bbadc16d5b5c97477e972b47a398046c_4" ; "objc_blockMyBlock_array_1.876ea7470c254ef92f8b4921d5f810e1_3" -> "objc_blockMyBlock_array_1.876ea7470c254ef92f8b4921d5f810e1_4" ;
"__objc_anonymous_block_MyBlock_array______1.bbadc16d5b5c97477e972b47a398046c_4" [label="4: between_join_and_exit \n " shape="box"] "objc_blockMyBlock_array_1.876ea7470c254ef92f8b4921d5f810e1_4" [label="4: between_join_and_exit \n " shape="box"]
"__objc_anonymous_block_MyBlock_array______1.bbadc16d5b5c97477e972b47a398046c_4" -> "__objc_anonymous_block_MyBlock_array______1.bbadc16d5b5c97477e972b47a398046c_2" ; "objc_blockMyBlock_array_1.876ea7470c254ef92f8b4921d5f810e1_4" -> "objc_blockMyBlock_array_1.876ea7470c254ef92f8b4921d5f810e1_2" ;
"__objc_anonymous_block_MyBlock_array______1.bbadc16d5b5c97477e972b47a398046c_5" [label="5: Prune (true branch) \n n$19=*&ShouldStop:int [line 26, column 9]\n PRUNE(n$19, true); [line 26, column 9]\n " shape="invhouse"] "objc_blockMyBlock_array_1.876ea7470c254ef92f8b4921d5f810e1_5" [label="5: Prune (true branch) \n n$19=*&ShouldStop:int [line 26, column 9]\n PRUNE(n$19, true); [line 26, column 9]\n " shape="invhouse"]
"__objc_anonymous_block_MyBlock_array______1.bbadc16d5b5c97477e972b47a398046c_5" -> "__objc_anonymous_block_MyBlock_array______1.bbadc16d5b5c97477e972b47a398046c_7" ; "objc_blockMyBlock_array_1.876ea7470c254ef92f8b4921d5f810e1_5" -> "objc_blockMyBlock_array_1.876ea7470c254ef92f8b4921d5f810e1_7" ;
"__objc_anonymous_block_MyBlock_array______1.bbadc16d5b5c97477e972b47a398046c_6" [label="6: Prune (false branch) \n n$19=*&ShouldStop:int [line 26, column 9]\n PRUNE(!n$19, false); [line 26, column 9]\n " shape="invhouse"] "objc_blockMyBlock_array_1.876ea7470c254ef92f8b4921d5f810e1_6" [label="6: Prune (false branch) \n n$19=*&ShouldStop:int [line 26, column 9]\n PRUNE(!n$19, false); [line 26, column 9]\n " shape="invhouse"]
"__objc_anonymous_block_MyBlock_array______1.bbadc16d5b5c97477e972b47a398046c_6" -> "__objc_anonymous_block_MyBlock_array______1.bbadc16d5b5c97477e972b47a398046c_3" ; "objc_blockMyBlock_array_1.876ea7470c254ef92f8b4921d5f810e1_6" -> "objc_blockMyBlock_array_1.876ea7470c254ef92f8b4921d5f810e1_3" ;
"__objc_anonymous_block_MyBlock_array______1.bbadc16d5b5c97477e972b47a398046c_7" [label="7: BinaryOperatorStmt: Assign \n n$20=*&stop:_Bool* [line 27, column 8]\n *n$20:_Bool=1 [line 27, column 7]\n " shape="box"] "objc_blockMyBlock_array_1.876ea7470c254ef92f8b4921d5f810e1_7" [label="7: BinaryOperatorStmt: Assign \n n$20=*&stop:_Bool* [line 27, column 8]\n *n$20:_Bool=1 [line 27, column 7]\n " shape="box"]
"__objc_anonymous_block_MyBlock_array______1.bbadc16d5b5c97477e972b47a398046c_7" -> "__objc_anonymous_block_MyBlock_array______1.bbadc16d5b5c97477e972b47a398046c_3" ; "objc_blockMyBlock_array_1.876ea7470c254ef92f8b4921d5f810e1_7" -> "objc_blockMyBlock_array_1.876ea7470c254ef92f8b4921d5f810e1_3" ;
"__objc_anonymous_block_MyBlock_array_trans______2.fea1d428975900396f66cb7e1f340c5f_1" [label="1: Start __objc_anonymous_block_MyBlock_array_trans______2\nFormals: object:objc_object* idx:unsigned long stop:_Bool*\nLocals: ShouldStop:int \n DECLARE_LOCALS(&return,&ShouldStop); [line 40, column 7]\n " color=yellow style=filled] "objc_blockMyBlock_array_trans_2.5153520a659dce1fe6582bd44cf47e84_1" [label="1: Start objc_blockMyBlock_array_trans_2\nFormals: object:objc_object* idx:unsigned long stop:_Bool*\nLocals: ShouldStop:int \n DECLARE_LOCALS(&return,&ShouldStop); [line 40, column 7]\n " color=yellow style=filled]
"__objc_anonymous_block_MyBlock_array_trans______2.fea1d428975900396f66cb7e1f340c5f_1" -> "__objc_anonymous_block_MyBlock_array_trans______2.fea1d428975900396f66cb7e1f340c5f_5" ; "objc_blockMyBlock_array_trans_2.5153520a659dce1fe6582bd44cf47e84_1" -> "objc_blockMyBlock_array_trans_2.5153520a659dce1fe6582bd44cf47e84_5" ;
"__objc_anonymous_block_MyBlock_array_trans______2.fea1d428975900396f66cb7e1f340c5f_1" -> "__objc_anonymous_block_MyBlock_array_trans______2.fea1d428975900396f66cb7e1f340c5f_6" ; "objc_blockMyBlock_array_trans_2.5153520a659dce1fe6582bd44cf47e84_1" -> "objc_blockMyBlock_array_trans_2.5153520a659dce1fe6582bd44cf47e84_6" ;
"__objc_anonymous_block_MyBlock_array_trans______2.fea1d428975900396f66cb7e1f340c5f_2" [label="2: Exit __objc_anonymous_block_MyBlock_array_trans______2 \n " color=yellow style=filled] "objc_blockMyBlock_array_trans_2.5153520a659dce1fe6582bd44cf47e84_2" [label="2: Exit objc_blockMyBlock_array_trans_2 \n " color=yellow style=filled]
"__objc_anonymous_block_MyBlock_array_trans______2.fea1d428975900396f66cb7e1f340c5f_3" [label="3: + \n " ] "objc_blockMyBlock_array_trans_2.5153520a659dce1fe6582bd44cf47e84_3" [label="3: + \n " ]
"__objc_anonymous_block_MyBlock_array_trans______2.fea1d428975900396f66cb7e1f340c5f_3" -> "__objc_anonymous_block_MyBlock_array_trans______2.fea1d428975900396f66cb7e1f340c5f_4" ; "objc_blockMyBlock_array_trans_2.5153520a659dce1fe6582bd44cf47e84_3" -> "objc_blockMyBlock_array_trans_2.5153520a659dce1fe6582bd44cf47e84_4" ;
"__objc_anonymous_block_MyBlock_array_trans______2.fea1d428975900396f66cb7e1f340c5f_4" [label="4: between_join_and_exit \n " shape="box"] "objc_blockMyBlock_array_trans_2.5153520a659dce1fe6582bd44cf47e84_4" [label="4: between_join_and_exit \n " shape="box"]
"__objc_anonymous_block_MyBlock_array_trans______2.fea1d428975900396f66cb7e1f340c5f_4" -> "__objc_anonymous_block_MyBlock_array_trans______2.fea1d428975900396f66cb7e1f340c5f_2" ; "objc_blockMyBlock_array_trans_2.5153520a659dce1fe6582bd44cf47e84_4" -> "objc_blockMyBlock_array_trans_2.5153520a659dce1fe6582bd44cf47e84_2" ;
"__objc_anonymous_block_MyBlock_array_trans______2.fea1d428975900396f66cb7e1f340c5f_5" [label="5: Prune (true branch) \n n$41=*&ShouldStop:int [line 44, column 13]\n PRUNE(n$41, true); [line 44, column 13]\n " shape="invhouse"] "objc_blockMyBlock_array_trans_2.5153520a659dce1fe6582bd44cf47e84_5" [label="5: Prune (true branch) \n n$42=*&ShouldStop:int [line 44, column 13]\n PRUNE(n$42, true); [line 44, column 13]\n " shape="invhouse"]
"__objc_anonymous_block_MyBlock_array_trans______2.fea1d428975900396f66cb7e1f340c5f_5" -> "__objc_anonymous_block_MyBlock_array_trans______2.fea1d428975900396f66cb7e1f340c5f_7" ; "objc_blockMyBlock_array_trans_2.5153520a659dce1fe6582bd44cf47e84_5" -> "objc_blockMyBlock_array_trans_2.5153520a659dce1fe6582bd44cf47e84_7" ;
"__objc_anonymous_block_MyBlock_array_trans______2.fea1d428975900396f66cb7e1f340c5f_6" [label="6: Prune (false branch) \n n$41=*&ShouldStop:int [line 44, column 13]\n PRUNE(!n$41, false); [line 44, column 13]\n " shape="invhouse"] "objc_blockMyBlock_array_trans_2.5153520a659dce1fe6582bd44cf47e84_6" [label="6: Prune (false branch) \n n$42=*&ShouldStop:int [line 44, column 13]\n PRUNE(!n$42, false); [line 44, column 13]\n " shape="invhouse"]
"__objc_anonymous_block_MyBlock_array_trans______2.fea1d428975900396f66cb7e1f340c5f_6" -> "__objc_anonymous_block_MyBlock_array_trans______2.fea1d428975900396f66cb7e1f340c5f_3" ; "objc_blockMyBlock_array_trans_2.5153520a659dce1fe6582bd44cf47e84_6" -> "objc_blockMyBlock_array_trans_2.5153520a659dce1fe6582bd44cf47e84_3" ;
"__objc_anonymous_block_MyBlock_array_trans______2.fea1d428975900396f66cb7e1f340c5f_7" [label="7: BinaryOperatorStmt: Assign \n n$42=*&stop:_Bool* [line 45, column 12]\n *n$42:_Bool=1 [line 45, column 11]\n " shape="box"] "objc_blockMyBlock_array_trans_2.5153520a659dce1fe6582bd44cf47e84_7" [label="7: BinaryOperatorStmt: Assign \n n$43=*&stop:_Bool* [line 45, column 12]\n *n$43:_Bool=1 [line 45, column 11]\n " shape="box"]
"__objc_anonymous_block_MyBlock_array_trans______2.fea1d428975900396f66cb7e1f340c5f_7" -> "__objc_anonymous_block_MyBlock_array_trans______2.fea1d428975900396f66cb7e1f340c5f_3" ; "objc_blockMyBlock_array_trans_2.5153520a659dce1fe6582bd44cf47e84_7" -> "objc_blockMyBlock_array_trans_2.5153520a659dce1fe6582bd44cf47e84_3" ;
"array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_1" [label="1: Start MyBlock_array\nFormals: self:MyBlock*\nLocals: idx:unsigned long object:objc_object* stop:_Bool* 0$?%__sil_tmp__objc_anonymous_block_MyBlock_array______1n$0:_fn_(*) objects:NSArray* a:NSArray* \n DECLARE_LOCALS(&return,&idx,&object,&stop,&0$?%__sil_tmp__objc_anonymous_block_MyBlock_array______1n$0,&objects,&a); [line 18, column 1]\n " color=yellow style=filled] "array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_1" [label="1: Start MyBlock_array\nFormals: self:MyBlock*\nLocals: idx:unsigned long object:objc_object* stop:_Bool* 0$?%__sil_tmpobjc_blockMyBlock_array_1n$0:_fn_(*) objects:NSArray* a:NSArray* \n DECLARE_LOCALS(&return,&idx,&object,&stop,&0$?%__sil_tmpobjc_blockMyBlock_array_1n$0,&objects,&a); [line 18, column 1]\n " color=yellow style=filled]
"array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_1" -> "array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_20" ; "array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_1" -> "array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_20" ;
@ -109,7 +109,7 @@ digraph iCFG {
"array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_13" -> "array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_10" ; "array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_13" -> "array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_10" ;
"array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_14" [label="14: Call n$9 \n n$9=*&0$?%__sil_tmp__objc_anonymous_block_MyBlock_array______1n$0:_fn_(*) [line 21, column 3]\n n$10=*&object:objc_object* [line 21, column 3]\n n$11=*&idx:unsigned long [line 21, column 3]\n n$12=*&stop:_Bool* [line 21, column 3]\n n$13=n$9(n$10:objc_object*,n$11:unsigned long,n$12:_Bool*) [line 21, column 3]\n " shape="box"] "array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_14" [label="14: Call n$9 \n n$9=*&0$?%__sil_tmpobjc_blockMyBlock_array_1n$0:_fn_(*) [line 21, column 3]\n n$10=*&object:objc_object* [line 21, column 3]\n n$11=*&idx:unsigned long [line 21, column 3]\n n$12=*&stop:_Bool* [line 21, column 3]\n n$13=n$9(n$10:objc_object*,n$11:unsigned long,n$12:_Bool*) [line 21, column 3]\n " shape="box"]
"array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_14" -> "array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_11" ; "array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_14" -> "array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_11" ;
@ -125,15 +125,15 @@ digraph iCFG {
"array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_17" -> "array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_16" ; "array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_17" -> "array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_16" ;
"array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_18" [label="18: DeclStmt \n DECLARE_LOCALS(&__objc_anonymous_block_MyBlock_array______1); [line 21, column 33]\n n$21=_fun___objc_alloc_no_fail(sizeof(t=__objc_anonymous_block_MyBlock_array______1):unsigned long) [line 21, column 33]\n *&__objc_anonymous_block_MyBlock_array______1:__objc_anonymous_block_MyBlock_array______1=n$21 [line 21, column 33]\n *&0$?%__sil_tmp__objc_anonymous_block_MyBlock_array______1n$0:_fn_(*)=(_fun___objc_anonymous_block_MyBlock_array______1) [line 21, column 33]\n " shape="box"] "array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_18" [label="18: DeclStmt \n DECLARE_LOCALS(&0$?%__sil_tmp_block_heap_var_n$22); [line 21, column 33]\n n$21=_fun___objc_alloc_no_fail(sizeof(t=Objc_blockMyBlock_array_1Class):unsigned long) [line 21, column 33]\n *&0$?%__sil_tmp_block_heap_var_n$22:Objc_blockMyBlock_array_1Class=n$21 [line 21, column 33]\n *&0$?%__sil_tmpobjc_blockMyBlock_array_1n$0:_fn_(*)=(_fun_objc_blockMyBlock_array_1) [line 21, column 33]\n " shape="box"]
"array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_18" -> "array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_17" ; "array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_18" -> "array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_17" ;
"array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_19" [label="19: DeclStmt \n n$22=*&a:NSArray* [line 21, column 4]\n *&objects:NSArray*=n$22 [line 21, column 3]\n " shape="box"] "array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_19" [label="19: DeclStmt \n n$23=*&a:NSArray* [line 21, column 4]\n *&objects:NSArray*=n$23 [line 21, column 3]\n " shape="box"]
"array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_19" -> "array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_18" ; "array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_19" -> "array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_18" ;
"array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_20" [label="20: DeclStmt \n n$23=_fun___objc_alloc_no_fail(sizeof(t=NSArray):unsigned long) [line 20, column 17]\n n$24=_fun_NSArray_init(n$23:NSArray*) virtual [line 20, column 16]\n *&a:NSArray*=n$24 [line 20, column 3]\n " shape="box"] "array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_20" [label="20: DeclStmt \n n$24=_fun___objc_alloc_no_fail(sizeof(t=NSArray):unsigned long) [line 20, column 17]\n n$25=_fun_NSArray_init(n$24:NSArray*) virtual [line 20, column 16]\n *&a:NSArray*=n$25 [line 20, column 3]\n " shape="box"]
"array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_20" -> "array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_19" ; "array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_20" -> "array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_19" ;
@ -144,7 +144,7 @@ digraph iCFG {
"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_2" [label="2: Exit MyBlock_array_trans \n " color=yellow style=filled] "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$25=*&stop:_Bool* [line 58, column 8]\n _fun_free(n$25:void*) [line 58, column 3]\n " shape="box"] "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_3" [label="3: Call _fun_free \n n$26=*&stop:_Bool* [line 58, column 8]\n _fun_free(n$26:void*) [line 58, column 3]\n " shape="box"]
"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_3" -> "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_2" ; "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_3" -> "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_2" ;
@ -156,20 +156,20 @@ digraph iCFG {
"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_5" -> "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_4" ; "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_5" -> "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_4" ;
"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_6" [label="6: UnaryOperator \n n$26=*&idx:unsigned long [line 51, column 49]\n *&idx:unsigned long=(n$26 + 1) [line 51, column 49]\n " shape="box"] "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_6" [label="6: UnaryOperator \n n$27=*&idx:unsigned long [line 51, column 49]\n *&idx:unsigned long=(n$27 + 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_6" -> "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_4" ;
"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_7" [label="7: BinaryOperatorStmt: LT \n n$27=*&idx:unsigned long [line 51, column 28]\n n$28=*&objects:NSArray* [line 51, column 34]\n n$29=_fun_NSArray_count(n$28:NSArray*) [line 51, column 42]\n " shape="box"] "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_7" [label="7: BinaryOperatorStmt: LT \n n$28=*&idx:unsigned long [line 51, column 28]\n n$29=*&objects:NSArray* [line 51, column 34]\n n$30=_fun_NSArray_count(n$29: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_8" ;
"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_7" -> "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_9" ; "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_7" -> "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_9" ;
"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_8" [label="8: Prune (true branch) \n PRUNE((n$27 < n$29), true); [line 51, column 28]\n " shape="invhouse"] "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_8" [label="8: Prune (true branch) \n PRUNE((n$28 < n$30), 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_8" -> "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_15" ;
"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_9" [label="9: Prune (false branch) \n PRUNE(!(n$27 < n$29), false); [line 51, column 28]\n " shape="invhouse"] "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_9" [label="9: Prune (false branch) \n PRUNE(!(n$28 < n$30), false); [line 51, column 28]\n " shape="invhouse"]
"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_9" -> "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_3" ; "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_9" -> "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_3" ;
@ -177,44 +177,44 @@ digraph iCFG {
"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_10" -> "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_6" ; "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_10" -> "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_6" ;
"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_11" [label="11: BinaryOperatorStmt: EQ \n n$30=*&stop:_Bool* [line 55, column 10]\n n$31=*n$30:_Bool [line 55, column 9]\n " shape="box"] "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_11" [label="11: BinaryOperatorStmt: EQ \n n$31=*&stop:_Bool* [line 55, column 10]\n n$32=*n$31:_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_12" ;
"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_11" -> "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_13" ; "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_11" -> "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_13" ;
"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_12" [label="12: Prune (true branch) \n PRUNE((n$31 == 1), true); [line 55, column 9]\n " shape="invhouse"] "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_12" [label="12: Prune (true branch) \n PRUNE((n$32 == 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_12" -> "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_3" ;
"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_13" [label="13: Prune (false branch) \n PRUNE(!(n$31 == 1), false); [line 55, column 9]\n " shape="invhouse"] "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_13" [label="13: Prune (false branch) \n PRUNE(!(n$32 == 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_13" -> "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_10" ;
"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_14" [label="14: Call n$32 \n n$32=*&enumerateObjectsUsingBlock:_fn_(*) [line 54, column 5]\n n$33=*&object:objc_object* [line 54, column 32]\n n$34=*&idx:unsigned long [line 54, column 40]\n n$35=*&stop:_Bool* [line 54, column 45]\n n$32(n$33:objc_object*,n$34:unsigned long,n$35:_Bool*) [line 54, column 5]\n " shape="box"] "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_14" [label="14: Call n$33 \n n$33=*&enumerateObjectsUsingBlock:_fn_(*) [line 54, column 5]\n n$34=*&object:objc_object* [line 54, column 32]\n n$35=*&idx:unsigned long [line 54, column 40]\n n$36=*&stop:_Bool* [line 54, column 45]\n n$33(n$34:objc_object*,n$35:unsigned long,n$36:_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_14" -> "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_11" ;
"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_15" [label="15: DeclStmt \n n$36=*&objects:NSArray* [line 53, column 17]\n n$37=*&idx:unsigned long [line 53, column 25]\n n$38=_fun_NSArray_objectAtIndexedSubscript:(n$36:NSArray*,n$37:unsigned long) virtual [line 53, column 17]\n *&object:objc_object*=n$38 [line 53, column 5]\n " shape="box"] "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_15" [label="15: DeclStmt \n n$37=*&objects:NSArray* [line 53, column 17]\n n$38=*&idx:unsigned long [line 53, column 25]\n n$39=_fun_NSArray_objectAtIndexedSubscript:(n$37:NSArray*,n$38:unsigned long) virtual [line 53, column 17]\n *&object:objc_object*=n$39 [line 53, column 5]\n " shape="box"]
"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_15" -> "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_14" ; "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_15" -> "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_14" ;
"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_16" [label="16: BinaryOperatorStmt: Assign \n n$39=*&stop:_Bool* [line 49, column 4]\n *n$39:_Bool=0 [line 49, column 3]\n " shape="box"] "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_16" [label="16: BinaryOperatorStmt: Assign \n n$40=*&stop:_Bool* [line 49, column 4]\n *n$40:_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_16" -> "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_5" ;
"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_17" [label="17: DeclStmt \n n$40=_fun_malloc_no_fail(sizeof(t=_Bool;nbytes=1):_Bool) [line 48, column 16]\n *&stop:_Bool*=n$40 [line 48, column 3]\n " shape="box"] "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_17" [label="17: DeclStmt \n n$41=_fun_malloc_no_fail(sizeof(t=_Bool;nbytes=1):_Bool) [line 48, column 16]\n *&stop:_Bool*=n$41 [line 48, column 3]\n " shape="box"]
"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_17" -> "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_16" ; "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_17" -> "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_16" ;
"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_18" [label="18: DeclStmt \n DECLARE_LOCALS(&__objc_anonymous_block_MyBlock_array_trans______2); [line 40, column 7]\n n$43=_fun___objc_alloc_no_fail(sizeof(t=__objc_anonymous_block_MyBlock_array_trans______2):unsigned long) [line 40, column 7]\n *&__objc_anonymous_block_MyBlock_array_trans______2:__objc_anonymous_block_MyBlock_array_trans______2=n$43 [line 40, column 7]\n *&enumerateObjectsUsingBlock:_fn_(*)=(_fun___objc_anonymous_block_MyBlock_array_trans______2) [line 39, column 3]\n " shape="box"] "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_18" [label="18: DeclStmt \n DECLARE_LOCALS(&0$?%__sil_tmp_block_heap_var_n$45); [line 40, column 7]\n n$44=_fun___objc_alloc_no_fail(sizeof(t=Objc_blockMyBlock_array_trans_2Class):unsigned long) [line 40, column 7]\n *&0$?%__sil_tmp_block_heap_var_n$45:Objc_blockMyBlock_array_trans_2Class=n$44 [line 40, column 7]\n *&enumerateObjectsUsingBlock:_fn_(*)=(_fun_objc_blockMyBlock_array_trans_2) [line 39, column 3]\n " shape="box"]
"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_18" -> "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_17" ; "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_18" -> "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_17" ;
"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_19" [label="19: DeclStmt \n n$44=*&a:NSArray* [line 36, column 22]\n *&objects:NSArray*=n$44 [line 36, column 3]\n " shape="box"] "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_19" [label="19: DeclStmt \n n$46=*&a:NSArray* [line 36, column 22]\n *&objects:NSArray*=n$46 [line 36, column 3]\n " shape="box"]
"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_19" -> "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_18" ; "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_19" -> "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_18" ;
"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_20" [label="20: DeclStmt \n n$45=_fun___objc_alloc_no_fail(sizeof(t=NSArray):unsigned long) [line 34, column 17]\n n$46=_fun_NSArray_init(n$45:NSArray*) virtual [line 34, column 16]\n *&a:NSArray*=n$46 [line 34, column 3]\n " shape="box"] "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_20" [label="20: DeclStmt \n n$47=_fun___objc_alloc_no_fail(sizeof(t=NSArray):unsigned long) [line 34, column 17]\n n$48=_fun_NSArray_init(n$47:NSArray*) virtual [line 34, column 16]\n *&a:NSArray*=n$48 [line 34, column 3]\n " shape="box"]
"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_20" -> "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_19" ; "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_20" -> "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_19" ;

@ -11,17 +11,17 @@ digraph iCFG {
"BlockMain.116013dceff9629776ec833c9d43561d_3" -> "BlockMain.116013dceff9629776ec833c9d43561d_2" ; "BlockMain.116013dceff9629776ec833c9d43561d_3" -> "BlockMain.116013dceff9629776ec833c9d43561d_2" ;
"__objc_anonymous_block_main1______1.1ad2c5f7d31875243a1bd27c2e3ec82e_1" [label="1: Start __objc_anonymous_block_main1______1\nFormals: e:int f:int\nLocals: \n DECLARE_LOCALS(&return); [line 34, column 14]\n " color=yellow style=filled] "objc_blockmain1_1.74199543de3b6a9a736f23ef5e45586a_1" [label="1: Start objc_blockmain1_1\nFormals: e:int f:int\nLocals: \n DECLARE_LOCALS(&return); [line 34, column 14]\n " color=yellow style=filled]
"__objc_anonymous_block_main1______1.1ad2c5f7d31875243a1bd27c2e3ec82e_1" -> "__objc_anonymous_block_main1______1.1ad2c5f7d31875243a1bd27c2e3ec82e_3" ; "objc_blockmain1_1.74199543de3b6a9a736f23ef5e45586a_1" -> "objc_blockmain1_1.74199543de3b6a9a736f23ef5e45586a_3" ;
"__objc_anonymous_block_main1______1.1ad2c5f7d31875243a1bd27c2e3ec82e_2" [label="2: Exit __objc_anonymous_block_main1______1 \n " color=yellow style=filled] "objc_blockmain1_1.74199543de3b6a9a736f23ef5e45586a_2" [label="2: Exit objc_blockmain1_1 \n " color=yellow style=filled]
"__objc_anonymous_block_main1______1.1ad2c5f7d31875243a1bd27c2e3ec82e_3" [label="3: Return Stmt \n n$5=*&e:int [line 35, column 12]\n n$6=*&#GB<codetoanalyze/objc/shared/block/block.m>$main1_s:int [line 35, column 16]\n *&return:int=(n$5 - n$6) [line 35, column 5]\n " shape="box"] "objc_blockmain1_1.74199543de3b6a9a736f23ef5e45586a_3" [label="3: Return Stmt \n n$5=*&e:int [line 35, column 12]\n n$6=*&#GB<codetoanalyze/objc/shared/block/block.m>$main1_s:int [line 35, column 16]\n *&return:int=(n$5 - n$6) [line 35, column 5]\n " shape="box"]
"__objc_anonymous_block_main1______1.1ad2c5f7d31875243a1bd27c2e3ec82e_3" -> "__objc_anonymous_block_main1______1.1ad2c5f7d31875243a1bd27c2e3ec82e_2" ; "objc_blockmain1_1.74199543de3b6a9a736f23ef5e45586a_3" -> "objc_blockmain1_1.74199543de3b6a9a736f23ef5e45586a_2" ;
"main1.38f534a9576db7ec6ebcbca8c111f942_1" [label="1: Start main1\nFormals: y:int\nLocals: addblock:_fn_(*) add2:int add1:int x:int \n DECLARE_LOCALS(&return,&addblock,&add2,&add1,&x); [line 10, column 1]\n " color=yellow style=filled] "main1.38f534a9576db7ec6ebcbca8c111f942_1" [label="1: Start main1\nFormals: y:int\nLocals: addblock:_fn_(*) add2:int add1:int x:int \n DECLARE_LOCALS(&return,&addblock,&add2,&add1,&x); [line 10, column 1]\n " color=yellow style=filled]
@ -41,15 +41,15 @@ digraph iCFG {
"main1.38f534a9576db7ec6ebcbca8c111f942_5" -> "main1.38f534a9576db7ec6ebcbca8c111f942_4" ; "main1.38f534a9576db7ec6ebcbca8c111f942_5" -> "main1.38f534a9576db7ec6ebcbca8c111f942_4" ;
"main1.38f534a9576db7ec6ebcbca8c111f942_6" [label="6: BinaryOperatorStmt: Assign \n DECLARE_LOCALS(&__objc_anonymous_block_main1______1); [line 34, column 14]\n n$7=_fun___objc_alloc_no_fail(sizeof(t=__objc_anonymous_block_main1______1):unsigned long) [line 34, column 14]\n *&__objc_anonymous_block_main1______1:__objc_anonymous_block_main1______1=n$7 [line 34, column 14]\n n$8=*&#GB<codetoanalyze/objc/shared/block/block.m>$main1_s:int [line 34, column 14]\n *n$7.main1_s:int=n$8 [line 34, column 14]\n *&addblock:_fn_(*)=(_fun___objc_anonymous_block_main1______1) [line 34, column 3]\n " shape="box"] "main1.38f534a9576db7ec6ebcbca8c111f942_6" [label="6: BinaryOperatorStmt: Assign \n DECLARE_LOCALS(&0$?%__sil_tmp_block_heap_var_n$8); [line 34, column 14]\n n$7=_fun___objc_alloc_no_fail(sizeof(t=Objc_blockmain1_1Class):unsigned long) [line 34, column 14]\n *&0$?%__sil_tmp_block_heap_var_n$8:Objc_blockmain1_1Class=n$7 [line 34, column 14]\n n$9=*&#GB<codetoanalyze/objc/shared/block/block.m>$main1_s:int [line 34, column 14]\n *n$7.main1_s:int=n$9 [line 34, column 14]\n *&addblock:_fn_(*)=(_fun_objc_blockmain1_1) [line 34, column 3]\n " shape="box"]
"main1.38f534a9576db7ec6ebcbca8c111f942_6" -> "main1.38f534a9576db7ec6ebcbca8c111f942_5" ; "main1.38f534a9576db7ec6ebcbca8c111f942_6" -> "main1.38f534a9576db7ec6ebcbca8c111f942_5" ;
"main1.38f534a9576db7ec6ebcbca8c111f942_7" [label="7: BinaryOperatorStmt: Assign \n n$9=*&addblock:_fn_(*) [line 32, column 10]\n n$10=n$9(1:int,2:int) [line 32, column 10]\n *&add1:int=n$10 [line 32, column 3]\n " shape="box"] "main1.38f534a9576db7ec6ebcbca8c111f942_7" [label="7: BinaryOperatorStmt: Assign \n n$10=*&addblock:_fn_(*) [line 32, column 10]\n n$11=n$10(1:int,2:int) [line 32, column 10]\n *&add1:int=n$11 [line 32, column 3]\n " shape="box"]
"main1.38f534a9576db7ec6ebcbca8c111f942_7" -> "main1.38f534a9576db7ec6ebcbca8c111f942_6" ; "main1.38f534a9576db7ec6ebcbca8c111f942_7" -> "main1.38f534a9576db7ec6ebcbca8c111f942_6" ;
"main1.38f534a9576db7ec6ebcbca8c111f942_8" [label="8: BinaryOperatorStmt: Assign \n DECLARE_LOCALS(&__objc_anonymous_block_main1______2); [line 18, column 14]\n n$27=_fun___objc_alloc_no_fail(sizeof(t=__objc_anonymous_block_main1______2):unsigned long) [line 18, column 14]\n *&__objc_anonymous_block_main1______2:__objc_anonymous_block_main1______2=n$27 [line 18, column 14]\n n$28=*&x:int [line 18, column 14]\n *n$27.x:int=n$28 [line 18, column 14]\n n$11=*&x:int [line 18, column 14]\n *&addblock:_fn_(*)=(_fun___objc_anonymous_block_main1______2,n$11) [line 18, column 3]\n " shape="box"] "main1.38f534a9576db7ec6ebcbca8c111f942_8" [label="8: BinaryOperatorStmt: Assign \n DECLARE_LOCALS(&0$?%__sil_tmp_block_heap_var_n$30); [line 18, column 14]\n n$29=_fun___objc_alloc_no_fail(sizeof(t=Objc_blockmain1_2Class):unsigned long) [line 18, column 14]\n *&0$?%__sil_tmp_block_heap_var_n$30:Objc_blockmain1_2Class=n$29 [line 18, column 14]\n n$31=*&x:int [line 18, column 14]\n *n$29.x:int=n$31 [line 18, column 14]\n n$12=*&x:int [line 18, column 14]\n *&addblock:_fn_(*)=(_fun_objc_blockmain1_2,n$12) [line 18, column 3]\n " shape="box"]
"main1.38f534a9576db7ec6ebcbca8c111f942_8" -> "main1.38f534a9576db7ec6ebcbca8c111f942_7" ; "main1.38f534a9576db7ec6ebcbca8c111f942_8" -> "main1.38f534a9576db7ec6ebcbca8c111f942_7" ;
@ -61,38 +61,38 @@ digraph iCFG {
"main1.38f534a9576db7ec6ebcbca8c111f942_10" -> "main1.38f534a9576db7ec6ebcbca8c111f942_9" ; "main1.38f534a9576db7ec6ebcbca8c111f942_10" -> "main1.38f534a9576db7ec6ebcbca8c111f942_9" ;
"__objc_anonymous_block_main1______2.5623c8c0e39082421999af7ffad7371b_1" [label="1: Start __objc_anonymous_block_main1______2\nFormals: x:int c:int d:int\nLocals: bla:int add2:int addblock2:_fn_(*)\nCaptured: x:int \n DECLARE_LOCALS(&return,&bla,&add2,&addblock2); [line 18, column 14]\n " color=yellow style=filled] "objc_blockmain1_2.0d332204bbe33f46a9283d2c0df5700a_1" [label="1: Start objc_blockmain1_2\nFormals: x:int c:int d:int\nLocals: bla:int add2:int addblock2:_fn_(*)\nCaptured: x:int \n DECLARE_LOCALS(&return,&bla,&add2,&addblock2); [line 18, column 14]\n " color=yellow style=filled]
"__objc_anonymous_block_main1______2.5623c8c0e39082421999af7ffad7371b_1" -> "__objc_anonymous_block_main1______2.5623c8c0e39082421999af7ffad7371b_6" ; "objc_blockmain1_2.0d332204bbe33f46a9283d2c0df5700a_1" -> "objc_blockmain1_2.0d332204bbe33f46a9283d2c0df5700a_6" ;
"__objc_anonymous_block_main1______2.5623c8c0e39082421999af7ffad7371b_2" [label="2: Exit __objc_anonymous_block_main1______2 \n " color=yellow style=filled] "objc_blockmain1_2.0d332204bbe33f46a9283d2c0df5700a_2" [label="2: Exit objc_blockmain1_2 \n " color=yellow style=filled]
"__objc_anonymous_block_main1______2.5623c8c0e39082421999af7ffad7371b_3" [label="3: Return Stmt \n n$12=*&c:int [line 29, column 12]\n n$13=*&add2:int [line 29, column 16]\n n$14=*&bla:int [line 29, column 23]\n *&return:int=((n$12 + n$13) + n$14) [line 29, column 5]\n " shape="box"] "objc_blockmain1_2.0d332204bbe33f46a9283d2c0df5700a_3" [label="3: Return Stmt \n n$13=*&c:int [line 29, column 12]\n n$14=*&add2:int [line 29, column 16]\n n$15=*&bla:int [line 29, column 23]\n *&return:int=((n$13 + n$14) + n$15) [line 29, column 5]\n " shape="box"]
"__objc_anonymous_block_main1______2.5623c8c0e39082421999af7ffad7371b_3" -> "__objc_anonymous_block_main1______2.5623c8c0e39082421999af7ffad7371b_2" ; "objc_blockmain1_2.0d332204bbe33f46a9283d2c0df5700a_3" -> "objc_blockmain1_2.0d332204bbe33f46a9283d2c0df5700a_2" ;
"__objc_anonymous_block_main1______2.5623c8c0e39082421999af7ffad7371b_4" [label="4: BinaryOperatorStmt: Assign \n n$15=*&addblock2:_fn_(*) [line 28, column 12]\n n$16=n$15(1:int) [line 28, column 12]\n *&add2:int=n$16 [line 28, column 5]\n " shape="box"] "objc_blockmain1_2.0d332204bbe33f46a9283d2c0df5700a_4" [label="4: BinaryOperatorStmt: Assign \n n$16=*&addblock2:_fn_(*) [line 28, column 12]\n n$17=n$16(1:int) [line 28, column 12]\n *&add2:int=n$17 [line 28, column 5]\n " shape="box"]
"__objc_anonymous_block_main1______2.5623c8c0e39082421999af7ffad7371b_4" -> "__objc_anonymous_block_main1______2.5623c8c0e39082421999af7ffad7371b_3" ; "objc_blockmain1_2.0d332204bbe33f46a9283d2c0df5700a_4" -> "objc_blockmain1_2.0d332204bbe33f46a9283d2c0df5700a_3" ;
"__objc_anonymous_block_main1______2.5623c8c0e39082421999af7ffad7371b_5" [label="5: BinaryOperatorStmt: Assign \n DECLARE_LOCALS(&__objc_anonymous_block___objc_anonymous_block_main1______2______3); [line 24, column 17]\n n$23=_fun___objc_alloc_no_fail(sizeof(t=__objc_anonymous_block___objc_anonymous_block_main1______2______3):unsigned long) [line 24, column 17]\n *&__objc_anonymous_block___objc_anonymous_block_main1______2______3:__objc_anonymous_block___objc_anonymous_block_main1______2______3=n$23 [line 24, column 17]\n n$24=*&x:int [line 24, column 17]\n n$25=*&bla:int [line 24, column 17]\n n$26=*&#GB<codetoanalyze/objc/shared/block/block.m>$main1_s:int [line 24, column 17]\n *n$23.x:int=n$24 [line 24, column 17]\n *n$23.bla:int=n$25 [line 24, column 17]\n *n$23.main1_s:int=n$26 [line 24, column 17]\n n$17=*&x:int [line 24, column 17]\n n$18=*&bla:int [line 24, column 17]\n *&addblock2:_fn_(*)=(_fun___objc_anonymous_block___objc_anonymous_block_main1______2______3,n$17,n$18) [line 24, column 5]\n " shape="box"] "objc_blockmain1_2.0d332204bbe33f46a9283d2c0df5700a_5" [label="5: BinaryOperatorStmt: Assign \n DECLARE_LOCALS(&0$?%__sil_tmp_block_heap_var_n$25); [line 24, column 17]\n n$24=_fun___objc_alloc_no_fail(sizeof(t=Objc_blockobjc_blockmain1_2_3Class):unsigned long) [line 24, column 17]\n *&0$?%__sil_tmp_block_heap_var_n$25:Objc_blockobjc_blockmain1_2_3Class=n$24 [line 24, column 17]\n n$26=*&x:int [line 24, column 17]\n n$27=*&bla:int [line 24, column 17]\n n$28=*&#GB<codetoanalyze/objc/shared/block/block.m>$main1_s:int [line 24, column 17]\n *n$24.x:int=n$26 [line 24, column 17]\n *n$24.bla:int=n$27 [line 24, column 17]\n *n$24.main1_s:int=n$28 [line 24, column 17]\n n$18=*&x:int [line 24, column 17]\n n$19=*&bla:int [line 24, column 17]\n *&addblock2:_fn_(*)=(_fun_objc_blockobjc_blockmain1_2_3,n$18,n$19) [line 24, column 5]\n " shape="box"]
"__objc_anonymous_block_main1______2.5623c8c0e39082421999af7ffad7371b_5" -> "__objc_anonymous_block_main1______2.5623c8c0e39082421999af7ffad7371b_4" ; "objc_blockmain1_2.0d332204bbe33f46a9283d2c0df5700a_5" -> "objc_blockmain1_2.0d332204bbe33f46a9283d2c0df5700a_4" ;
"__objc_anonymous_block_main1______2.5623c8c0e39082421999af7ffad7371b_6" [label="6: DeclStmt \n *&bla:int=3 [line 22, column 5]\n " shape="box"] "objc_blockmain1_2.0d332204bbe33f46a9283d2c0df5700a_6" [label="6: DeclStmt \n *&bla:int=3 [line 22, column 5]\n " shape="box"]
"__objc_anonymous_block_main1______2.5623c8c0e39082421999af7ffad7371b_6" -> "__objc_anonymous_block_main1______2.5623c8c0e39082421999af7ffad7371b_5" ; "objc_blockmain1_2.0d332204bbe33f46a9283d2c0df5700a_6" -> "objc_blockmain1_2.0d332204bbe33f46a9283d2c0df5700a_5" ;
"__objc_anonymous_block___objc_anonymous_block_main1______2______3.6d1e0725e2965c4b9fdfca6faccef5e0_1" [label="1: Start __objc_anonymous_block___objc_anonymous_block_main1______2______3\nFormals: x:int bla:int z:int\nLocals: \nCaptured: x:int bla:int \n DECLARE_LOCALS(&return); [line 24, column 17]\n " color=yellow style=filled] "objc_blockobjc_blockmain1_2_3.0824f0806cf4ebad2920e9a12535d20e_1" [label="1: Start objc_blockobjc_blockmain1_2_3\nFormals: x:int bla:int z:int\nLocals: \nCaptured: x:int bla:int \n DECLARE_LOCALS(&return); [line 24, column 17]\n " color=yellow style=filled]
"__objc_anonymous_block___objc_anonymous_block_main1______2______3.6d1e0725e2965c4b9fdfca6faccef5e0_1" -> "__objc_anonymous_block___objc_anonymous_block_main1______2______3.6d1e0725e2965c4b9fdfca6faccef5e0_3" ; "objc_blockobjc_blockmain1_2_3.0824f0806cf4ebad2920e9a12535d20e_1" -> "objc_blockobjc_blockmain1_2_3.0824f0806cf4ebad2920e9a12535d20e_3" ;
"__objc_anonymous_block___objc_anonymous_block_main1______2______3.6d1e0725e2965c4b9fdfca6faccef5e0_2" [label="2: Exit __objc_anonymous_block___objc_anonymous_block_main1______2______3 \n " color=yellow style=filled] "objc_blockobjc_blockmain1_2_3.0824f0806cf4ebad2920e9a12535d20e_2" [label="2: Exit objc_blockobjc_blockmain1_2_3 \n " color=yellow style=filled]
"__objc_anonymous_block___objc_anonymous_block_main1______2______3.6d1e0725e2965c4b9fdfca6faccef5e0_3" [label="3: Return Stmt \n n$19=*&z:int [line 25, column 14]\n n$20=*&#GB<codetoanalyze/objc/shared/block/block.m>$main1_s:int [line 25, column 18]\n n$21=*&x:int [line 25, column 22]\n n$22=*&bla:int [line 25, column 26]\n *&return:int=(((n$19 + n$20) + n$21) + n$22) [line 25, column 7]\n " shape="box"] "objc_blockobjc_blockmain1_2_3.0824f0806cf4ebad2920e9a12535d20e_3" [label="3: Return Stmt \n n$20=*&z:int [line 25, column 14]\n n$21=*&#GB<codetoanalyze/objc/shared/block/block.m>$main1_s:int [line 25, column 18]\n n$22=*&x:int [line 25, column 22]\n n$23=*&bla:int [line 25, column 26]\n *&return:int=(((n$20 + n$21) + n$22) + n$23) [line 25, column 7]\n " shape="box"]
"__objc_anonymous_block___objc_anonymous_block_main1______2______3.6d1e0725e2965c4b9fdfca6faccef5e0_3" -> "__objc_anonymous_block___objc_anonymous_block_main1______2______3.6d1e0725e2965c4b9fdfca6faccef5e0_2" ; "objc_blockobjc_blockmain1_2_3.0824f0806cf4ebad2920e9a12535d20e_3" -> "objc_blockobjc_blockmain1_2_3.0824f0806cf4ebad2920e9a12535d20e_2" ;
} }

@ -44,7 +44,7 @@ digraph iCFG {
"m#My_manager#instance.e773f849d062cb9801497b62f5c98f5e_11" -> "m#My_manager#instance.e773f849d062cb9801497b62f5c98f5e_10" ; "m#My_manager#instance.e773f849d062cb9801497b62f5c98f5e_11" -> "m#My_manager#instance.e773f849d062cb9801497b62f5c98f5e_10" ;
"m#My_manager#instance.e773f849d062cb9801497b62f5c98f5e_12" [label="12: BinaryOperatorStmt: Assign \n DECLARE_LOCALS(&__objc_anonymous_block_My_manager_m______1); [line 25, column 7]\n n$7=_fun___objc_alloc_no_fail(sizeof(t=__objc_anonymous_block_My_manager_m______1):unsigned long) [line 25, column 7]\n *&__objc_anonymous_block_My_manager_m______1:__objc_anonymous_block_My_manager_m______1=n$7 [line 25, column 7]\n n$8=*&z:int [line 25, column 7]\n n$9=*&#GB<codetoanalyze/objc/shared/block/block_no_args.m>$g:int [line 25, column 7]\n *n$7.z:int=n$8 [line 25, column 7]\n *n$7.g:int=n$9 [line 25, column 7]\n n$5=*&z:int [line 25, column 7]\n *&b:_fn_(*)=(_fun___objc_anonymous_block_My_manager_m______1,n$5) [line 25, column 3]\n " shape="box"] "m#My_manager#instance.e773f849d062cb9801497b62f5c98f5e_12" [label="12: BinaryOperatorStmt: Assign \n DECLARE_LOCALS(&0$?%__sil_tmp_block_heap_var_n$8); [line 25, column 7]\n n$7=_fun___objc_alloc_no_fail(sizeof(t=Objc_blockMy_manager_m_1Class):unsigned long) [line 25, column 7]\n *&0$?%__sil_tmp_block_heap_var_n$8:Objc_blockMy_manager_m_1Class=n$7 [line 25, column 7]\n n$9=*&z:int [line 25, column 7]\n n$10=*&#GB<codetoanalyze/objc/shared/block/block_no_args.m>$g:int [line 25, column 7]\n *n$7.z:int=n$9 [line 25, column 7]\n *n$7.g:int=n$10 [line 25, column 7]\n n$5=*&z:int [line 25, column 7]\n *&b:_fn_(*)=(_fun_objc_blockMy_manager_m_1,n$5) [line 25, column 3]\n " shape="box"]
"m#My_manager#instance.e773f849d062cb9801497b62f5c98f5e_12" -> "m#My_manager#instance.e773f849d062cb9801497b62f5c98f5e_11" ; "m#My_manager#instance.e773f849d062cb9801497b62f5c98f5e_12" -> "m#My_manager#instance.e773f849d062cb9801497b62f5c98f5e_11" ;
@ -56,15 +56,15 @@ digraph iCFG {
"m#My_manager#instance.e773f849d062cb9801497b62f5c98f5e_14" -> "m#My_manager#instance.e773f849d062cb9801497b62f5c98f5e_13" ; "m#My_manager#instance.e773f849d062cb9801497b62f5c98f5e_14" -> "m#My_manager#instance.e773f849d062cb9801497b62f5c98f5e_13" ;
"__objc_anonymous_block_My_manager_m______1.3cc413211d47d071e2197fcf824430cb_1" [label="1: Start __objc_anonymous_block_My_manager_m______1\nFormals: z:int\nLocals: \nCaptured: z:int \n DECLARE_LOCALS(&return); [line 25, column 7]\n " color=yellow style=filled] "objc_blockMy_manager_m_1.b75c41325ae3c65dcf5321924a57fc38_1" [label="1: Start objc_blockMy_manager_m_1\nFormals: z:int\nLocals: \nCaptured: z:int \n DECLARE_LOCALS(&return); [line 25, column 7]\n " color=yellow style=filled]
"__objc_anonymous_block_My_manager_m______1.3cc413211d47d071e2197fcf824430cb_1" -> "__objc_anonymous_block_My_manager_m______1.3cc413211d47d071e2197fcf824430cb_3" ; "objc_blockMy_manager_m_1.b75c41325ae3c65dcf5321924a57fc38_1" -> "objc_blockMy_manager_m_1.b75c41325ae3c65dcf5321924a57fc38_3" ;
"__objc_anonymous_block_My_manager_m______1.3cc413211d47d071e2197fcf824430cb_2" [label="2: Exit __objc_anonymous_block_My_manager_m______1 \n " color=yellow style=filled] "objc_blockMy_manager_m_1.b75c41325ae3c65dcf5321924a57fc38_2" [label="2: Exit objc_blockMy_manager_m_1 \n " color=yellow style=filled]
"__objc_anonymous_block_My_manager_m______1.3cc413211d47d071e2197fcf824430cb_3" [label="3: BinaryOperatorStmt: Assign \n n$6=*&z:int [line 26, column 9]\n *&#GB<codetoanalyze/objc/shared/block/block_no_args.m>$g:int=(n$6 + 3) [line 26, column 5]\n " shape="box"] "objc_blockMy_manager_m_1.b75c41325ae3c65dcf5321924a57fc38_3" [label="3: BinaryOperatorStmt: Assign \n n$6=*&z:int [line 26, column 9]\n *&#GB<codetoanalyze/objc/shared/block/block_no_args.m>$g:int=(n$6 + 3) [line 26, column 5]\n " shape="box"]
"__objc_anonymous_block_My_manager_m______1.3cc413211d47d071e2197fcf824430cb_3" -> "__objc_anonymous_block_My_manager_m______1.3cc413211d47d071e2197fcf824430cb_2" ; "objc_blockMy_manager_m_1.b75c41325ae3c65dcf5321924a57fc38_3" -> "objc_blockMy_manager_m_1.b75c41325ae3c65dcf5321924a57fc38_2" ;
} }

@ -32,15 +32,15 @@ digraph iCFG {
"blockReleaseTODO#My_manager#instance.8c1d633cf596e86a307167d9425628a8_8" -> "blockReleaseTODO#My_manager#instance.8c1d633cf596e86a307167d9425628a8_5" ; "blockReleaseTODO#My_manager#instance.8c1d633cf596e86a307167d9425628a8_8" -> "blockReleaseTODO#My_manager#instance.8c1d633cf596e86a307167d9425628a8_5" ;
"blockReleaseTODO#My_manager#instance.8c1d633cf596e86a307167d9425628a8_8" -> "blockReleaseTODO#My_manager#instance.8c1d633cf596e86a307167d9425628a8_6" ; "blockReleaseTODO#My_manager#instance.8c1d633cf596e86a307167d9425628a8_8" -> "blockReleaseTODO#My_manager#instance.8c1d633cf596e86a307167d9425628a8_6" ;
"blockReleaseTODO#My_manager#instance.8c1d633cf596e86a307167d9425628a8_9" [label="9: BinaryOperatorStmt: Assign \n DECLARE_LOCALS(&__objc_anonymous_block_My_manager_blockReleaseTODO______1); [line 25, column 7]\n n$8=_fun___objc_alloc_no_fail(sizeof(t=__objc_anonymous_block_My_manager_blockReleaseTODO______1):unsigned long) [line 25, column 7]\n *&__objc_anonymous_block_My_manager_blockReleaseTODO______1:__objc_anonymous_block_My_manager_blockReleaseTODO______1=n$8 [line 25, column 7]\n n$9=*&newImage:CGImage* [line 25, column 7]\n *n$8.newImage:CGImage*=n$9 [line 25, column 7]\n n$5=*&newImage:CGImage* [line 25, column 7]\n *&b:_fn_(*)=(_fun___objc_anonymous_block_My_manager_blockReleaseTODO______1,n$5) [line 25, column 3]\n " shape="box"] "blockReleaseTODO#My_manager#instance.8c1d633cf596e86a307167d9425628a8_9" [label="9: BinaryOperatorStmt: Assign \n DECLARE_LOCALS(&0$?%__sil_tmp_block_heap_var_n$9); [line 25, column 7]\n n$8=_fun___objc_alloc_no_fail(sizeof(t=Objc_blockMy_manager_blockReleaseTODO_1Class):unsigned long) [line 25, column 7]\n *&0$?%__sil_tmp_block_heap_var_n$9:Objc_blockMy_manager_blockReleaseTODO_1Class=n$8 [line 25, column 7]\n n$10=*&newImage:CGImage* [line 25, column 7]\n *n$8.newImage:CGImage*=n$10 [line 25, column 7]\n n$5=*&newImage:CGImage* [line 25, column 7]\n *&b:_fn_(*)=(_fun_objc_blockMy_manager_blockReleaseTODO_1,n$5) [line 25, column 3]\n " shape="box"]
"blockReleaseTODO#My_manager#instance.8c1d633cf596e86a307167d9425628a8_9" -> "blockReleaseTODO#My_manager#instance.8c1d633cf596e86a307167d9425628a8_8" ; "blockReleaseTODO#My_manager#instance.8c1d633cf596e86a307167d9425628a8_9" -> "blockReleaseTODO#My_manager#instance.8c1d633cf596e86a307167d9425628a8_8" ;
"blockReleaseTODO#My_manager#instance.8c1d633cf596e86a307167d9425628a8_10" [label="10: DeclStmt \n n$10=*&context:CGContext* [line 24, column 52]\n n$11=_fun_CGBitmapContextCreateImage(n$10:CGContext*) [line 24, column 25]\n *&newImage:CGImage*=n$11 [line 24, column 3]\n " shape="box"] "blockReleaseTODO#My_manager#instance.8c1d633cf596e86a307167d9425628a8_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"]
"blockReleaseTODO#My_manager#instance.8c1d633cf596e86a307167d9425628a8_10" -> "blockReleaseTODO#My_manager#instance.8c1d633cf596e86a307167d9425628a8_9" ; "blockReleaseTODO#My_manager#instance.8c1d633cf596e86a307167d9425628a8_10" -> "blockReleaseTODO#My_manager#instance.8c1d633cf596e86a307167d9425628a8_9" ;
"blockReleaseTODO#My_manager#instance.8c1d633cf596e86a307167d9425628a8_11" [label="11: DeclStmt \n n$12=_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$12 [line 23, column 3]\n " shape="box"] "blockReleaseTODO#My_manager#instance.8c1d633cf596e86a307167d9425628a8_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"]
"blockReleaseTODO#My_manager#instance.8c1d633cf596e86a307167d9425628a8_11" -> "blockReleaseTODO#My_manager#instance.8c1d633cf596e86a307167d9425628a8_10" ; "blockReleaseTODO#My_manager#instance.8c1d633cf596e86a307167d9425628a8_11" -> "blockReleaseTODO#My_manager#instance.8c1d633cf596e86a307167d9425628a8_10" ;
@ -48,32 +48,32 @@ digraph iCFG {
"blockReleaseTODO#My_manager#instance.8c1d633cf596e86a307167d9425628a8_12" -> "blockReleaseTODO#My_manager#instance.8c1d633cf596e86a307167d9425628a8_11" ; "blockReleaseTODO#My_manager#instance.8c1d633cf596e86a307167d9425628a8_12" -> "blockReleaseTODO#My_manager#instance.8c1d633cf596e86a307167d9425628a8_11" ;
"__objc_anonymous_block_My_manager_blockReleaseTODO______1.727fb709fde4c2da5c24b6a887eca95a_1" [label="1: Start __objc_anonymous_block_My_manager_blockReleaseTODO______1\nFormals: newImage:CGImage* a:int\nLocals: \nCaptured: newImage:CGImage* \n DECLARE_LOCALS(&return); [line 25, column 7]\n " color=yellow style=filled] "objc_blockMy_manager_blockReleaseTODO_1.196983209d147be0ee88d9c747994569_1" [label="1: Start objc_blockMy_manager_blockReleaseTODO_1\nFormals: newImage:CGImage* a:int\nLocals: \nCaptured: newImage:CGImage* \n DECLARE_LOCALS(&return); [line 25, column 7]\n " color=yellow style=filled]
"__objc_anonymous_block_My_manager_blockReleaseTODO______1.727fb709fde4c2da5c24b6a887eca95a_1" -> "__objc_anonymous_block_My_manager_blockReleaseTODO______1.727fb709fde4c2da5c24b6a887eca95a_5" ; "objc_blockMy_manager_blockReleaseTODO_1.196983209d147be0ee88d9c747994569_1" -> "objc_blockMy_manager_blockReleaseTODO_1.196983209d147be0ee88d9c747994569_5" ;
"__objc_anonymous_block_My_manager_blockReleaseTODO______1.727fb709fde4c2da5c24b6a887eca95a_1" -> "__objc_anonymous_block_My_manager_blockReleaseTODO______1.727fb709fde4c2da5c24b6a887eca95a_6" ; "objc_blockMy_manager_blockReleaseTODO_1.196983209d147be0ee88d9c747994569_1" -> "objc_blockMy_manager_blockReleaseTODO_1.196983209d147be0ee88d9c747994569_6" ;
"__objc_anonymous_block_My_manager_blockReleaseTODO______1.727fb709fde4c2da5c24b6a887eca95a_2" [label="2: Exit __objc_anonymous_block_My_manager_blockReleaseTODO______1 \n " color=yellow style=filled] "objc_blockMy_manager_blockReleaseTODO_1.196983209d147be0ee88d9c747994569_2" [label="2: Exit objc_blockMy_manager_blockReleaseTODO_1 \n " color=yellow style=filled]
"__objc_anonymous_block_My_manager_blockReleaseTODO______1.727fb709fde4c2da5c24b6a887eca95a_3" [label="3: + \n " ] "objc_blockMy_manager_blockReleaseTODO_1.196983209d147be0ee88d9c747994569_3" [label="3: + \n " ]
"__objc_anonymous_block_My_manager_blockReleaseTODO______1.727fb709fde4c2da5c24b6a887eca95a_3" -> "__objc_anonymous_block_My_manager_blockReleaseTODO______1.727fb709fde4c2da5c24b6a887eca95a_4" ; "objc_blockMy_manager_blockReleaseTODO_1.196983209d147be0ee88d9c747994569_3" -> "objc_blockMy_manager_blockReleaseTODO_1.196983209d147be0ee88d9c747994569_4" ;
"__objc_anonymous_block_My_manager_blockReleaseTODO______1.727fb709fde4c2da5c24b6a887eca95a_4" [label="4: between_join_and_exit \n " shape="box"] "objc_blockMy_manager_blockReleaseTODO_1.196983209d147be0ee88d9c747994569_4" [label="4: between_join_and_exit \n " shape="box"]
"__objc_anonymous_block_My_manager_blockReleaseTODO______1.727fb709fde4c2da5c24b6a887eca95a_4" -> "__objc_anonymous_block_My_manager_blockReleaseTODO______1.727fb709fde4c2da5c24b6a887eca95a_2" ; "objc_blockMy_manager_blockReleaseTODO_1.196983209d147be0ee88d9c747994569_4" -> "objc_blockMy_manager_blockReleaseTODO_1.196983209d147be0ee88d9c747994569_2" ;
"__objc_anonymous_block_My_manager_blockReleaseTODO______1.727fb709fde4c2da5c24b6a887eca95a_5" [label="5: Prune (true branch) \n n$6=*&newImage:CGImage* [line 26, column 9]\n PRUNE(n$6, true); [line 26, column 9]\n " shape="invhouse"] "objc_blockMy_manager_blockReleaseTODO_1.196983209d147be0ee88d9c747994569_5" [label="5: Prune (true branch) \n n$6=*&newImage:CGImage* [line 26, column 9]\n PRUNE(n$6, true); [line 26, column 9]\n " shape="invhouse"]
"__objc_anonymous_block_My_manager_blockReleaseTODO______1.727fb709fde4c2da5c24b6a887eca95a_5" -> "__objc_anonymous_block_My_manager_blockReleaseTODO______1.727fb709fde4c2da5c24b6a887eca95a_7" ; "objc_blockMy_manager_blockReleaseTODO_1.196983209d147be0ee88d9c747994569_5" -> "objc_blockMy_manager_blockReleaseTODO_1.196983209d147be0ee88d9c747994569_7" ;
"__objc_anonymous_block_My_manager_blockReleaseTODO______1.727fb709fde4c2da5c24b6a887eca95a_6" [label="6: Prune (false branch) \n n$6=*&newImage:CGImage* [line 26, column 9]\n PRUNE(!n$6, false); [line 26, column 9]\n " shape="invhouse"] "objc_blockMy_manager_blockReleaseTODO_1.196983209d147be0ee88d9c747994569_6" [label="6: Prune (false branch) \n n$6=*&newImage:CGImage* [line 26, column 9]\n PRUNE(!n$6, false); [line 26, column 9]\n " shape="invhouse"]
"__objc_anonymous_block_My_manager_blockReleaseTODO______1.727fb709fde4c2da5c24b6a887eca95a_6" -> "__objc_anonymous_block_My_manager_blockReleaseTODO______1.727fb709fde4c2da5c24b6a887eca95a_3" ; "objc_blockMy_manager_blockReleaseTODO_1.196983209d147be0ee88d9c747994569_6" -> "objc_blockMy_manager_blockReleaseTODO_1.196983209d147be0ee88d9c747994569_3" ;
"__objc_anonymous_block_My_manager_blockReleaseTODO______1.727fb709fde4c2da5c24b6a887eca95a_7" [label="7: Call _fun_CGImageRelease \n n$7=*&newImage:CGImage* [line 27, column 22]\n _fun_CGImageRelease(n$7:CGImage*) [line 27, column 7]\n " shape="box"] "objc_blockMy_manager_blockReleaseTODO_1.196983209d147be0ee88d9c747994569_7" [label="7: Call _fun_CGImageRelease \n n$7=*&newImage:CGImage* [line 27, column 22]\n _fun_CGImageRelease(n$7:CGImage*) [line 27, column 7]\n " shape="box"]
"__objc_anonymous_block_My_manager_blockReleaseTODO______1.727fb709fde4c2da5c24b6a887eca95a_7" -> "__objc_anonymous_block_My_manager_blockReleaseTODO______1.727fb709fde4c2da5c24b6a887eca95a_3" ; "objc_blockMy_manager_blockReleaseTODO_1.196983209d147be0ee88d9c747994569_7" -> "objc_blockMy_manager_blockReleaseTODO_1.196983209d147be0ee88d9c747994569_3" ;
} }

@ -11,21 +11,21 @@ digraph iCFG {
"sharedInstance#DispatchA#class.8992c6086d1ce5c225093940f62386ac_3" -> "sharedInstance#DispatchA#class.8992c6086d1ce5c225093940f62386ac_2" ; "sharedInstance#DispatchA#class.8992c6086d1ce5c225093940f62386ac_3" -> "sharedInstance#DispatchA#class.8992c6086d1ce5c225093940f62386ac_2" ;
"sharedInstance#DispatchA#class.8992c6086d1ce5c225093940f62386ac_4" [label="4: Call (_fun___objc_anonymous_block_DispatchA_sharedInstance______1) \n DECLARE_LOCALS(&__objc_anonymous_block_DispatchA_sharedInstance______1); [line 30, column 24]\n n$4=_fun___objc_alloc_no_fail(sizeof(t=__objc_anonymous_block_DispatchA_sharedInstance______1):unsigned long) [line 30, column 24]\n *&__objc_anonymous_block_DispatchA_sharedInstance______1:__objc_anonymous_block_DispatchA_sharedInstance______1=n$4 [line 30, column 24]\n n$5=*&#GB<codetoanalyze/objc/shared/block/dispatch.m>$DispatchA_sharedInstance_sharedInstance:objc_object* [line 30, column 24]\n *n$4.DispatchA_sharedInstance_sharedInstance:objc_object*=n$5 [line 30, column 24]\n n$6=(_fun___objc_anonymous_block_DispatchA_sharedInstance______1)() [line 30, column 3]\n " shape="box"] "sharedInstance#DispatchA#class.8992c6086d1ce5c225093940f62386ac_4" [label="4: Call (_fun_objc_blockDispatchA_sharedInstance_1) \n DECLARE_LOCALS(&0$?%__sil_tmp_block_heap_var_n$5); [line 30, column 24]\n n$4=_fun___objc_alloc_no_fail(sizeof(t=Objc_blockDispatchA_sharedInstance_1Class):unsigned long) [line 30, column 24]\n *&0$?%__sil_tmp_block_heap_var_n$5:Objc_blockDispatchA_sharedInstance_1Class=n$4 [line 30, column 24]\n n$6=*&#GB<codetoanalyze/objc/shared/block/dispatch.m>$DispatchA_sharedInstance_sharedInstance:objc_object* [line 30, column 24]\n *n$4.DispatchA_sharedInstance_sharedInstance:objc_object*=n$6 [line 30, column 24]\n n$7=(_fun_objc_blockDispatchA_sharedInstance_1)() [line 30, column 3]\n " shape="box"]
"sharedInstance#DispatchA#class.8992c6086d1ce5c225093940f62386ac_4" -> "sharedInstance#DispatchA#class.8992c6086d1ce5c225093940f62386ac_3" ; "sharedInstance#DispatchA#class.8992c6086d1ce5c225093940f62386ac_4" -> "sharedInstance#DispatchA#class.8992c6086d1ce5c225093940f62386ac_3" ;
"__objc_anonymous_block_DispatchA_sharedInstance______1.4a2e89fcdf390871f5277dca0d16c43b_1" [label="1: Start __objc_anonymous_block_DispatchA_sharedInstance______1\nFormals: \nLocals: \n DECLARE_LOCALS(&return); [line 30, column 24]\n " color=yellow style=filled] "objc_blockDispatchA_sharedInstance_1.0b8803e75b6a82e1a4530bcb953490e2_1" [label="1: Start objc_blockDispatchA_sharedInstance_1\nFormals: \nLocals: \n DECLARE_LOCALS(&return); [line 30, column 24]\n " color=yellow style=filled]
"__objc_anonymous_block_DispatchA_sharedInstance______1.4a2e89fcdf390871f5277dca0d16c43b_1" -> "__objc_anonymous_block_DispatchA_sharedInstance______1.4a2e89fcdf390871f5277dca0d16c43b_3" ; "objc_blockDispatchA_sharedInstance_1.0b8803e75b6a82e1a4530bcb953490e2_1" -> "objc_blockDispatchA_sharedInstance_1.0b8803e75b6a82e1a4530bcb953490e2_3" ;
"__objc_anonymous_block_DispatchA_sharedInstance______1.4a2e89fcdf390871f5277dca0d16c43b_2" [label="2: Exit __objc_anonymous_block_DispatchA_sharedInstance______1 \n " color=yellow style=filled] "objc_blockDispatchA_sharedInstance_1.0b8803e75b6a82e1a4530bcb953490e2_2" [label="2: Exit objc_blockDispatchA_sharedInstance_1 \n " color=yellow style=filled]
"__objc_anonymous_block_DispatchA_sharedInstance______1.4a2e89fcdf390871f5277dca0d16c43b_3" [label="3: BinaryOperatorStmt: Assign \n n$2=_fun___objc_alloc_no_fail(sizeof(t=DispatchA):unsigned long) [line 31, column 23]\n n$3=_fun_DispatchA_init(n$2:DispatchA*) virtual [line 31, column 22]\n *&#GB<codetoanalyze/objc/shared/block/dispatch.m>$DispatchA_sharedInstance_sharedInstance:objc_object*=n$3 [line 31, column 5]\n " shape="box"] "objc_blockDispatchA_sharedInstance_1.0b8803e75b6a82e1a4530bcb953490e2_3" [label="3: BinaryOperatorStmt: Assign \n n$2=_fun___objc_alloc_no_fail(sizeof(t=DispatchA):unsigned long) [line 31, column 23]\n n$3=_fun_DispatchA_init(n$2:DispatchA*) virtual [line 31, column 22]\n *&#GB<codetoanalyze/objc/shared/block/dispatch.m>$DispatchA_sharedInstance_sharedInstance:objc_object*=n$3 [line 31, column 5]\n " shape="box"]
"__objc_anonymous_block_DispatchA_sharedInstance______1.4a2e89fcdf390871f5277dca0d16c43b_3" -> "__objc_anonymous_block_DispatchA_sharedInstance______1.4a2e89fcdf390871f5277dca0d16c43b_2" ; "objc_blockDispatchA_sharedInstance_1.0b8803e75b6a82e1a4530bcb953490e2_3" -> "objc_blockDispatchA_sharedInstance_1.0b8803e75b6a82e1a4530bcb953490e2_2" ;
"trans#DispatchA#class.23f9d908a87deca79c235bc76ca6e941_1" [label="1: Start DispatchA_trans\nFormals: \nLocals: dummy_block:_fn_(*) \n DECLARE_LOCALS(&return,&dummy_block); [line 36, column 1]\n " color=yellow style=filled] "trans#DispatchA#class.23f9d908a87deca79c235bc76ca6e941_1" [label="1: Start DispatchA_trans\nFormals: \nLocals: dummy_block:_fn_(*) \n DECLARE_LOCALS(&return,&dummy_block); [line 36, column 1]\n " color=yellow style=filled]
@ -33,29 +33,29 @@ digraph iCFG {
"trans#DispatchA#class.23f9d908a87deca79c235bc76ca6e941_2" [label="2: Exit DispatchA_trans \n " color=yellow style=filled] "trans#DispatchA#class.23f9d908a87deca79c235bc76ca6e941_2" [label="2: Exit DispatchA_trans \n " color=yellow style=filled]
"trans#DispatchA#class.23f9d908a87deca79c235bc76ca6e941_3" [label="3: Return Stmt \n n$7=*&#GB<codetoanalyze/objc/shared/block/dispatch.m>$DispatchA_trans_sharedInstance:objc_object* [line 42, column 10]\n *&return:objc_object*=n$7 [line 42, column 3]\n " shape="box"] "trans#DispatchA#class.23f9d908a87deca79c235bc76ca6e941_3" [label="3: Return Stmt \n n$8=*&#GB<codetoanalyze/objc/shared/block/dispatch.m>$DispatchA_trans_sharedInstance:objc_object* [line 42, column 10]\n *&return:objc_object*=n$8 [line 42, column 3]\n " shape="box"]
"trans#DispatchA#class.23f9d908a87deca79c235bc76ca6e941_3" -> "trans#DispatchA#class.23f9d908a87deca79c235bc76ca6e941_2" ; "trans#DispatchA#class.23f9d908a87deca79c235bc76ca6e941_3" -> "trans#DispatchA#class.23f9d908a87deca79c235bc76ca6e941_2" ;
"trans#DispatchA#class.23f9d908a87deca79c235bc76ca6e941_4" [label="4: Call n$8 \n n$8=*&dummy_block:_fn_(*) [line 41, column 3]\n n$8() [line 41, column 3]\n " shape="box"] "trans#DispatchA#class.23f9d908a87deca79c235bc76ca6e941_4" [label="4: Call n$9 \n n$9=*&dummy_block:_fn_(*) [line 41, column 3]\n n$9() [line 41, column 3]\n " shape="box"]
"trans#DispatchA#class.23f9d908a87deca79c235bc76ca6e941_4" -> "trans#DispatchA#class.23f9d908a87deca79c235bc76ca6e941_3" ; "trans#DispatchA#class.23f9d908a87deca79c235bc76ca6e941_4" -> "trans#DispatchA#class.23f9d908a87deca79c235bc76ca6e941_3" ;
"trans#DispatchA#class.23f9d908a87deca79c235bc76ca6e941_5" [label="5: DeclStmt \n DECLARE_LOCALS(&__objc_anonymous_block_DispatchA_trans______2); [line 38, column 27]\n n$11=_fun___objc_alloc_no_fail(sizeof(t=__objc_anonymous_block_DispatchA_trans______2):unsigned long) [line 38, column 27]\n *&__objc_anonymous_block_DispatchA_trans______2:__objc_anonymous_block_DispatchA_trans______2=n$11 [line 38, column 27]\n n$12=*&#GB<codetoanalyze/objc/shared/block/dispatch.m>$DispatchA_trans_sharedInstance:objc_object* [line 38, column 27]\n *n$11.DispatchA_trans_sharedInstance:objc_object*=n$12 [line 38, column 27]\n *&dummy_block:_fn_(*)=(_fun___objc_anonymous_block_DispatchA_trans______2) [line 38, column 3]\n " shape="box"] "trans#DispatchA#class.23f9d908a87deca79c235bc76ca6e941_5" [label="5: DeclStmt \n DECLARE_LOCALS(&0$?%__sil_tmp_block_heap_var_n$13); [line 38, column 27]\n n$12=_fun___objc_alloc_no_fail(sizeof(t=Objc_blockDispatchA_trans_2Class):unsigned long) [line 38, column 27]\n *&0$?%__sil_tmp_block_heap_var_n$13:Objc_blockDispatchA_trans_2Class=n$12 [line 38, column 27]\n n$14=*&#GB<codetoanalyze/objc/shared/block/dispatch.m>$DispatchA_trans_sharedInstance:objc_object* [line 38, column 27]\n *n$12.DispatchA_trans_sharedInstance:objc_object*=n$14 [line 38, column 27]\n *&dummy_block:_fn_(*)=(_fun_objc_blockDispatchA_trans_2) [line 38, column 3]\n " shape="box"]
"trans#DispatchA#class.23f9d908a87deca79c235bc76ca6e941_5" -> "trans#DispatchA#class.23f9d908a87deca79c235bc76ca6e941_4" ; "trans#DispatchA#class.23f9d908a87deca79c235bc76ca6e941_5" -> "trans#DispatchA#class.23f9d908a87deca79c235bc76ca6e941_4" ;
"__objc_anonymous_block_DispatchA_trans______2.8ca180fe9a17b86cb599eced71242770_1" [label="1: Start __objc_anonymous_block_DispatchA_trans______2\nFormals: \nLocals: \n DECLARE_LOCALS(&return); [line 38, column 27]\n " color=yellow style=filled] "objc_blockDispatchA_trans_2.3e9844ebda3bff9e63047261f5667152_1" [label="1: Start objc_blockDispatchA_trans_2\nFormals: \nLocals: \n DECLARE_LOCALS(&return); [line 38, column 27]\n " color=yellow style=filled]
"__objc_anonymous_block_DispatchA_trans______2.8ca180fe9a17b86cb599eced71242770_1" -> "__objc_anonymous_block_DispatchA_trans______2.8ca180fe9a17b86cb599eced71242770_3" ; "objc_blockDispatchA_trans_2.3e9844ebda3bff9e63047261f5667152_1" -> "objc_blockDispatchA_trans_2.3e9844ebda3bff9e63047261f5667152_3" ;
"__objc_anonymous_block_DispatchA_trans______2.8ca180fe9a17b86cb599eced71242770_2" [label="2: Exit __objc_anonymous_block_DispatchA_trans______2 \n " color=yellow style=filled] "objc_blockDispatchA_trans_2.3e9844ebda3bff9e63047261f5667152_2" [label="2: Exit objc_blockDispatchA_trans_2 \n " color=yellow style=filled]
"__objc_anonymous_block_DispatchA_trans______2.8ca180fe9a17b86cb599eced71242770_3" [label="3: BinaryOperatorStmt: Assign \n n$9=_fun___objc_alloc_no_fail(sizeof(t=DispatchA):unsigned long) [line 39, column 23]\n n$10=_fun_DispatchA_init(n$9:DispatchA*) virtual [line 39, column 22]\n *&#GB<codetoanalyze/objc/shared/block/dispatch.m>$DispatchA_trans_sharedInstance:objc_object*=n$10 [line 39, column 5]\n " shape="box"] "objc_blockDispatchA_trans_2.3e9844ebda3bff9e63047261f5667152_3" [label="3: BinaryOperatorStmt: Assign \n n$10=_fun___objc_alloc_no_fail(sizeof(t=DispatchA):unsigned long) [line 39, column 23]\n n$11=_fun_DispatchA_init(n$10:DispatchA*) virtual [line 39, column 22]\n *&#GB<codetoanalyze/objc/shared/block/dispatch.m>$DispatchA_trans_sharedInstance:objc_object*=n$11 [line 39, column 5]\n " shape="box"]
"__objc_anonymous_block_DispatchA_trans______2.8ca180fe9a17b86cb599eced71242770_3" -> "__objc_anonymous_block_DispatchA_trans______2.8ca180fe9a17b86cb599eced71242770_2" ; "objc_blockDispatchA_trans_2.3e9844ebda3bff9e63047261f5667152_3" -> "objc_blockDispatchA_trans_2.3e9844ebda3bff9e63047261f5667152_2" ;
"dispatch_a_block_variable#DispatchA#class.3cc12dd22127281b8293b7c046d21bb2_1" [label="1: Start DispatchA_dispatch_a_block_variable\nFormals: \nLocals: initialization_block__:_fn_(*) \n DECLARE_LOCALS(&return,&initialization_block__); [line 45, column 1]\n " color=yellow style=filled] "dispatch_a_block_variable#DispatchA#class.3cc12dd22127281b8293b7c046d21bb2_1" [label="1: Start DispatchA_dispatch_a_block_variable\nFormals: \nLocals: initialization_block__:_fn_(*) \n DECLARE_LOCALS(&return,&initialization_block__); [line 45, column 1]\n " color=yellow style=filled]
@ -63,29 +63,29 @@ digraph iCFG {
"dispatch_a_block_variable#DispatchA#class.3cc12dd22127281b8293b7c046d21bb2_2" [label="2: Exit DispatchA_dispatch_a_block_variable \n " color=yellow style=filled] "dispatch_a_block_variable#DispatchA#class.3cc12dd22127281b8293b7c046d21bb2_2" [label="2: Exit DispatchA_dispatch_a_block_variable \n " color=yellow style=filled]
"dispatch_a_block_variable#DispatchA#class.3cc12dd22127281b8293b7c046d21bb2_3" [label="3: Return Stmt \n n$13=*&#GB<codetoanalyze/objc/shared/block/dispatch.m>$DispatchA_dispatch_a_block_variable_static_storage__:objc_object* [line 52, column 10]\n *&return:objc_object*=n$13 [line 52, column 3]\n " shape="box"] "dispatch_a_block_variable#DispatchA#class.3cc12dd22127281b8293b7c046d21bb2_3" [label="3: Return Stmt \n n$15=*&#GB<codetoanalyze/objc/shared/block/dispatch.m>$DispatchA_dispatch_a_block_variable_static_storage__:objc_object* [line 52, column 10]\n *&return:objc_object*=n$15 [line 52, column 3]\n " shape="box"]
"dispatch_a_block_variable#DispatchA#class.3cc12dd22127281b8293b7c046d21bb2_3" -> "dispatch_a_block_variable#DispatchA#class.3cc12dd22127281b8293b7c046d21bb2_2" ; "dispatch_a_block_variable#DispatchA#class.3cc12dd22127281b8293b7c046d21bb2_3" -> "dispatch_a_block_variable#DispatchA#class.3cc12dd22127281b8293b7c046d21bb2_2" ;
"dispatch_a_block_variable#DispatchA#class.3cc12dd22127281b8293b7c046d21bb2_4" [label="4: Call n$14 \n n$14=*&initialization_block__:_fn_(*) [line 51, column 33]\n n$15=n$14() [line 51, column 3]\n " shape="box"] "dispatch_a_block_variable#DispatchA#class.3cc12dd22127281b8293b7c046d21bb2_4" [label="4: Call n$16 \n n$16=*&initialization_block__:_fn_(*) [line 51, column 33]\n n$17=n$16() [line 51, column 3]\n " shape="box"]
"dispatch_a_block_variable#DispatchA#class.3cc12dd22127281b8293b7c046d21bb2_4" -> "dispatch_a_block_variable#DispatchA#class.3cc12dd22127281b8293b7c046d21bb2_3" ; "dispatch_a_block_variable#DispatchA#class.3cc12dd22127281b8293b7c046d21bb2_4" -> "dispatch_a_block_variable#DispatchA#class.3cc12dd22127281b8293b7c046d21bb2_3" ;
"dispatch_a_block_variable#DispatchA#class.3cc12dd22127281b8293b7c046d21bb2_5" [label="5: DeclStmt \n DECLARE_LOCALS(&__objc_anonymous_block_DispatchA_dispatch_a_block_variable______3); [line 47, column 38]\n n$18=_fun___objc_alloc_no_fail(sizeof(t=__objc_anonymous_block_DispatchA_dispatch_a_block_variable______3):unsigned long) [line 47, column 38]\n *&__objc_anonymous_block_DispatchA_dispatch_a_block_variable______3:__objc_anonymous_block_DispatchA_dispatch_a_block_variable______3=n$18 [line 47, column 38]\n n$19=*&#GB<codetoanalyze/objc/shared/block/dispatch.m>$DispatchA_dispatch_a_block_variable_static_storage__:objc_object* [line 47, column 38]\n *n$18.DispatchA_dispatch_a_block_variable_static_storage__:objc_object*=n$19 [line 47, column 38]\n *&initialization_block__:_fn_(*)=(_fun___objc_anonymous_block_DispatchA_dispatch_a_block_variable______3) [line 47, column 3]\n " shape="box"] "dispatch_a_block_variable#DispatchA#class.3cc12dd22127281b8293b7c046d21bb2_5" [label="5: DeclStmt \n DECLARE_LOCALS(&0$?%__sil_tmp_block_heap_var_n$21); [line 47, column 38]\n n$20=_fun___objc_alloc_no_fail(sizeof(t=Objc_blockDispatchA_dispatch_a_block_variable_3Class):unsigned long) [line 47, column 38]\n *&0$?%__sil_tmp_block_heap_var_n$21:Objc_blockDispatchA_dispatch_a_block_variable_3Class=n$20 [line 47, column 38]\n n$22=*&#GB<codetoanalyze/objc/shared/block/dispatch.m>$DispatchA_dispatch_a_block_variable_static_storage__:objc_object* [line 47, column 38]\n *n$20.DispatchA_dispatch_a_block_variable_static_storage__:objc_object*=n$22 [line 47, column 38]\n *&initialization_block__:_fn_(*)=(_fun_objc_blockDispatchA_dispatch_a_block_variable_3) [line 47, column 3]\n " shape="box"]
"dispatch_a_block_variable#DispatchA#class.3cc12dd22127281b8293b7c046d21bb2_5" -> "dispatch_a_block_variable#DispatchA#class.3cc12dd22127281b8293b7c046d21bb2_4" ; "dispatch_a_block_variable#DispatchA#class.3cc12dd22127281b8293b7c046d21bb2_5" -> "dispatch_a_block_variable#DispatchA#class.3cc12dd22127281b8293b7c046d21bb2_4" ;
"__objc_anonymous_block_DispatchA_dispatch_a_block_variable______3.9c4c8eed871dc8fb1938edcd3d194533_1" [label="1: Start __objc_anonymous_block_DispatchA_dispatch_a_block_variable______3\nFormals: \nLocals: \n DECLARE_LOCALS(&return); [line 47, column 38]\n " color=yellow style=filled] "objc_blockDispatchA_dispatch_a_block_variable_3.09c6b14692ef67057c46de6cee569440_1" [label="1: Start objc_blockDispatchA_dispatch_a_block_variable_3\nFormals: \nLocals: \n DECLARE_LOCALS(&return); [line 47, column 38]\n " color=yellow style=filled]
"__objc_anonymous_block_DispatchA_dispatch_a_block_variable______3.9c4c8eed871dc8fb1938edcd3d194533_1" -> "__objc_anonymous_block_DispatchA_dispatch_a_block_variable______3.9c4c8eed871dc8fb1938edcd3d194533_3" ; "objc_blockDispatchA_dispatch_a_block_variable_3.09c6b14692ef67057c46de6cee569440_1" -> "objc_blockDispatchA_dispatch_a_block_variable_3.09c6b14692ef67057c46de6cee569440_3" ;
"__objc_anonymous_block_DispatchA_dispatch_a_block_variable______3.9c4c8eed871dc8fb1938edcd3d194533_2" [label="2: Exit __objc_anonymous_block_DispatchA_dispatch_a_block_variable______3 \n " color=yellow style=filled] "objc_blockDispatchA_dispatch_a_block_variable_3.09c6b14692ef67057c46de6cee569440_2" [label="2: Exit objc_blockDispatchA_dispatch_a_block_variable_3 \n " color=yellow style=filled]
"__objc_anonymous_block_DispatchA_dispatch_a_block_variable______3.9c4c8eed871dc8fb1938edcd3d194533_3" [label="3: BinaryOperatorStmt: Assign \n n$16=_fun___objc_alloc_no_fail(sizeof(t=DispatchA):unsigned long) [line 48, column 25]\n n$17=_fun_DispatchA_init(n$16:DispatchA*) virtual [line 48, column 25]\n *&#GB<codetoanalyze/objc/shared/block/dispatch.m>$DispatchA_dispatch_a_block_variable_static_storage__:objc_object*=n$17 [line 48, column 5]\n " shape="box"] "objc_blockDispatchA_dispatch_a_block_variable_3.09c6b14692ef67057c46de6cee569440_3" [label="3: BinaryOperatorStmt: Assign \n n$18=_fun___objc_alloc_no_fail(sizeof(t=DispatchA):unsigned long) [line 48, column 25]\n n$19=_fun_DispatchA_init(n$18:DispatchA*) virtual [line 48, column 25]\n *&#GB<codetoanalyze/objc/shared/block/dispatch.m>$DispatchA_dispatch_a_block_variable_static_storage__:objc_object*=n$19 [line 48, column 5]\n " shape="box"]
"__objc_anonymous_block_DispatchA_dispatch_a_block_variable______3.9c4c8eed871dc8fb1938edcd3d194533_3" -> "__objc_anonymous_block_DispatchA_dispatch_a_block_variable______3.9c4c8eed871dc8fb1938edcd3d194533_2" ; "objc_blockDispatchA_dispatch_a_block_variable_3.09c6b14692ef67057c46de6cee569440_3" -> "objc_blockDispatchA_dispatch_a_block_variable_3.09c6b14692ef67057c46de6cee569440_2" ;
"dispatch_a_block_variable_from_macro#DispatchA#class.92567a38d5ab3cf637f72030b1097441_1" [label="1: Start DispatchA_dispatch_a_block_variable_from_macro\nFormals: \nLocals: initialization_block__:_fn_(*) \n DECLARE_LOCALS(&return,&initialization_block__); [line 55, column 1]\n " color=yellow style=filled] "dispatch_a_block_variable_from_macro#DispatchA#class.92567a38d5ab3cf637f72030b1097441_1" [label="1: Start DispatchA_dispatch_a_block_variable_from_macro\nFormals: \nLocals: initialization_block__:_fn_(*) \n DECLARE_LOCALS(&return,&initialization_block__); [line 55, column 1]\n " color=yellow style=filled]
@ -93,33 +93,33 @@ digraph iCFG {
"dispatch_a_block_variable_from_macro#DispatchA#class.92567a38d5ab3cf637f72030b1097441_2" [label="2: Exit DispatchA_dispatch_a_block_variable_from_macro \n " color=yellow style=filled] "dispatch_a_block_variable_from_macro#DispatchA#class.92567a38d5ab3cf637f72030b1097441_2" [label="2: Exit DispatchA_dispatch_a_block_variable_from_macro \n " color=yellow style=filled]
"dispatch_a_block_variable_from_macro#DispatchA#class.92567a38d5ab3cf637f72030b1097441_3" [label="3: Fallback node \n n$20=*&#GB<codetoanalyze/objc/shared/block/dispatch.m>$DispatchA_dispatch_a_block_variable_from_macro_static_storage__:objc_object* [line 63, column 5]\n " shape="box"] "dispatch_a_block_variable_from_macro#DispatchA#class.92567a38d5ab3cf637f72030b1097441_3" [label="3: Fallback node \n n$23=*&#GB<codetoanalyze/objc/shared/block/dispatch.m>$DispatchA_dispatch_a_block_variable_from_macro_static_storage__:objc_object* [line 63, column 5]\n " shape="box"]
"dispatch_a_block_variable_from_macro#DispatchA#class.92567a38d5ab3cf637f72030b1097441_3" -> "dispatch_a_block_variable_from_macro#DispatchA#class.92567a38d5ab3cf637f72030b1097441_6" ; "dispatch_a_block_variable_from_macro#DispatchA#class.92567a38d5ab3cf637f72030b1097441_3" -> "dispatch_a_block_variable_from_macro#DispatchA#class.92567a38d5ab3cf637f72030b1097441_6" ;
"dispatch_a_block_variable_from_macro#DispatchA#class.92567a38d5ab3cf637f72030b1097441_4" [label="4: Call n$21 \n n$21=*&initialization_block__:_fn_(*) [line 62, column 35]\n n$22=n$21() [line 62, column 5]\n " shape="box"] "dispatch_a_block_variable_from_macro#DispatchA#class.92567a38d5ab3cf637f72030b1097441_4" [label="4: Call n$24 \n n$24=*&initialization_block__:_fn_(*) [line 62, column 35]\n n$25=n$24() [line 62, column 5]\n " shape="box"]
"dispatch_a_block_variable_from_macro#DispatchA#class.92567a38d5ab3cf637f72030b1097441_4" -> "dispatch_a_block_variable_from_macro#DispatchA#class.92567a38d5ab3cf637f72030b1097441_3" ; "dispatch_a_block_variable_from_macro#DispatchA#class.92567a38d5ab3cf637f72030b1097441_4" -> "dispatch_a_block_variable_from_macro#DispatchA#class.92567a38d5ab3cf637f72030b1097441_3" ;
"dispatch_a_block_variable_from_macro#DispatchA#class.92567a38d5ab3cf637f72030b1097441_5" [label="5: DeclStmt \n DECLARE_LOCALS(&__objc_anonymous_block_DispatchA_dispatch_a_block_variable_from_macro______4); [line 58, column 40]\n n$25=_fun___objc_alloc_no_fail(sizeof(t=__objc_anonymous_block_DispatchA_dispatch_a_block_variable_from_macro______4):unsigned long) [line 58, column 40]\n *&__objc_anonymous_block_DispatchA_dispatch_a_block_variable_from_macro______4:__objc_anonymous_block_DispatchA_dispatch_a_block_variable_from_macro______4=n$25 [line 58, column 40]\n n$26=*&#GB<codetoanalyze/objc/shared/block/dispatch.m>$DispatchA_dispatch_a_block_variable_from_macro_static_storage__:objc_object* [line 58, column 40]\n *n$25.DispatchA_dispatch_a_block_variable_from_macro_static_storage__:objc_object*=n$26 [line 58, column 40]\n *&initialization_block__:_fn_(*)=(_fun___objc_anonymous_block_DispatchA_dispatch_a_block_variable_from_macro______4) [line 58, column 5]\n " shape="box"] "dispatch_a_block_variable_from_macro#DispatchA#class.92567a38d5ab3cf637f72030b1097441_5" [label="5: DeclStmt \n DECLARE_LOCALS(&0$?%__sil_tmp_block_heap_var_n$29); [line 58, column 40]\n n$28=_fun___objc_alloc_no_fail(sizeof(t=Objc_blockDispatchA_dispatch_a_block_variable_from_macro_4Class):unsigned long) [line 58, column 40]\n *&0$?%__sil_tmp_block_heap_var_n$29:Objc_blockDispatchA_dispatch_a_block_variable_from_macro_4Class=n$28 [line 58, column 40]\n n$30=*&#GB<codetoanalyze/objc/shared/block/dispatch.m>$DispatchA_dispatch_a_block_variable_from_macro_static_storage__:objc_object* [line 58, column 40]\n *n$28.DispatchA_dispatch_a_block_variable_from_macro_static_storage__:objc_object*=n$30 [line 58, column 40]\n *&initialization_block__:_fn_(*)=(_fun_objc_blockDispatchA_dispatch_a_block_variable_from_macro_4) [line 58, column 5]\n " shape="box"]
"dispatch_a_block_variable_from_macro#DispatchA#class.92567a38d5ab3cf637f72030b1097441_5" -> "dispatch_a_block_variable_from_macro#DispatchA#class.92567a38d5ab3cf637f72030b1097441_4" ; "dispatch_a_block_variable_from_macro#DispatchA#class.92567a38d5ab3cf637f72030b1097441_5" -> "dispatch_a_block_variable_from_macro#DispatchA#class.92567a38d5ab3cf637f72030b1097441_4" ;
"dispatch_a_block_variable_from_macro#DispatchA#class.92567a38d5ab3cf637f72030b1097441_6" [label="6: Return Stmt \n *&return:objc_object*=n$20 [line 56, column 3]\n " shape="box"] "dispatch_a_block_variable_from_macro#DispatchA#class.92567a38d5ab3cf637f72030b1097441_6" [label="6: Return Stmt \n *&return:objc_object*=n$23 [line 56, column 3]\n " shape="box"]
"dispatch_a_block_variable_from_macro#DispatchA#class.92567a38d5ab3cf637f72030b1097441_6" -> "dispatch_a_block_variable_from_macro#DispatchA#class.92567a38d5ab3cf637f72030b1097441_2" ; "dispatch_a_block_variable_from_macro#DispatchA#class.92567a38d5ab3cf637f72030b1097441_6" -> "dispatch_a_block_variable_from_macro#DispatchA#class.92567a38d5ab3cf637f72030b1097441_2" ;
"__objc_anonymous_block_DispatchA_dispatch_a_block_variable_from_macro______4.82bfd971252ed3dd1cbfd850406db887_1" [label="1: Start __objc_anonymous_block_DispatchA_dispatch_a_block_variable_from_macro______4\nFormals: \nLocals: \n DECLARE_LOCALS(&return); [line 58, column 40]\n " color=yellow style=filled] "objc_blockDispatchA_dispatch_a_block_variable_from_macro_4.cdb7f792f8c2689b337db5fca633647f_1" [label="1: Start objc_blockDispatchA_dispatch_a_block_variable_from_macro_4\nFormals: \nLocals: \n DECLARE_LOCALS(&return); [line 58, column 40]\n " color=yellow style=filled]
"__objc_anonymous_block_DispatchA_dispatch_a_block_variable_from_macro______4.82bfd971252ed3dd1cbfd850406db887_1" -> "__objc_anonymous_block_DispatchA_dispatch_a_block_variable_from_macro______4.82bfd971252ed3dd1cbfd850406db887_3" ; "objc_blockDispatchA_dispatch_a_block_variable_from_macro_4.cdb7f792f8c2689b337db5fca633647f_1" -> "objc_blockDispatchA_dispatch_a_block_variable_from_macro_4.cdb7f792f8c2689b337db5fca633647f_3" ;
"__objc_anonymous_block_DispatchA_dispatch_a_block_variable_from_macro______4.82bfd971252ed3dd1cbfd850406db887_2" [label="2: Exit __objc_anonymous_block_DispatchA_dispatch_a_block_variable_from_macro______4 \n " color=yellow style=filled] "objc_blockDispatchA_dispatch_a_block_variable_from_macro_4.cdb7f792f8c2689b337db5fca633647f_2" [label="2: Exit objc_blockDispatchA_dispatch_a_block_variable_from_macro_4 \n " color=yellow style=filled]
"__objc_anonymous_block_DispatchA_dispatch_a_block_variable_from_macro______4.82bfd971252ed3dd1cbfd850406db887_3" [label="3: BinaryOperatorStmt: Assign \n n$23=_fun___objc_alloc_no_fail(sizeof(t=DispatchA):unsigned long) [line 59, column 27]\n n$24=_fun_DispatchA_init(n$23:DispatchA*) virtual [line 59, column 27]\n *&#GB<codetoanalyze/objc/shared/block/dispatch.m>$DispatchA_dispatch_a_block_variable_from_macro_static_storage__:objc_object*=n$24 [line 59, column 7]\n " shape="box"] "objc_blockDispatchA_dispatch_a_block_variable_from_macro_4.cdb7f792f8c2689b337db5fca633647f_3" [label="3: BinaryOperatorStmt: Assign \n n$26=_fun___objc_alloc_no_fail(sizeof(t=DispatchA):unsigned long) [line 59, column 27]\n n$27=_fun_DispatchA_init(n$26:DispatchA*) virtual [line 59, column 27]\n *&#GB<codetoanalyze/objc/shared/block/dispatch.m>$DispatchA_dispatch_a_block_variable_from_macro_static_storage__:objc_object*=n$27 [line 59, column 7]\n " shape="box"]
"__objc_anonymous_block_DispatchA_dispatch_a_block_variable_from_macro______4.82bfd971252ed3dd1cbfd850406db887_3" -> "__objc_anonymous_block_DispatchA_dispatch_a_block_variable_from_macro______4.82bfd971252ed3dd1cbfd850406db887_2" ; "objc_blockDispatchA_dispatch_a_block_variable_from_macro_4.cdb7f792f8c2689b337db5fca633647f_3" -> "objc_blockDispatchA_dispatch_a_block_variable_from_macro_4.cdb7f792f8c2689b337db5fca633647f_2" ;
"dispatch_a_block_variable_from_macro_delivers_initialised_object#DispatchA#class.a58ef5afb5e1e9480b49788e2400c52c_1" [label="1: Start DispatchA_dispatch_a_block_variable_from_macro_delivers_initialised_object\nFormals: \nLocals: a:DispatchA* \n DECLARE_LOCALS(&return,&a); [line 67, column 1]\n " color=yellow style=filled] "dispatch_a_block_variable_from_macro_delivers_initialised_object#DispatchA#class.a58ef5afb5e1e9480b49788e2400c52c_1" [label="1: Start DispatchA_dispatch_a_block_variable_from_macro_delivers_initialised_object\nFormals: \nLocals: a:DispatchA* \n DECLARE_LOCALS(&return,&a); [line 67, column 1]\n " color=yellow style=filled]
@ -127,15 +127,15 @@ digraph iCFG {
"dispatch_a_block_variable_from_macro_delivers_initialised_object#DispatchA#class.a58ef5afb5e1e9480b49788e2400c52c_2" [label="2: Exit DispatchA_dispatch_a_block_variable_from_macro_delivers_initialised_object \n " color=yellow style=filled] "dispatch_a_block_variable_from_macro_delivers_initialised_object#DispatchA#class.a58ef5afb5e1e9480b49788e2400c52c_2" [label="2: Exit DispatchA_dispatch_a_block_variable_from_macro_delivers_initialised_object \n " color=yellow style=filled]
"dispatch_a_block_variable_from_macro_delivers_initialised_object#DispatchA#class.a58ef5afb5e1e9480b49788e2400c52c_3" [label="3: Return Stmt \n n$27=*&a:DispatchA* [line 70, column 15]\n n$28=*n$27._x:int [line 70, column 15]\n *&return:int=(1 / (n$28 - 5)) [line 70, column 3]\n " shape="box"] "dispatch_a_block_variable_from_macro_delivers_initialised_object#DispatchA#class.a58ef5afb5e1e9480b49788e2400c52c_3" [label="3: Return Stmt \n n$31=*&a:DispatchA* [line 70, column 15]\n n$32=*n$31._x:int [line 70, column 15]\n *&return:int=(1 / (n$32 - 5)) [line 70, column 3]\n " shape="box"]
"dispatch_a_block_variable_from_macro_delivers_initialised_object#DispatchA#class.a58ef5afb5e1e9480b49788e2400c52c_3" -> "dispatch_a_block_variable_from_macro_delivers_initialised_object#DispatchA#class.a58ef5afb5e1e9480b49788e2400c52c_2" ; "dispatch_a_block_variable_from_macro_delivers_initialised_object#DispatchA#class.a58ef5afb5e1e9480b49788e2400c52c_3" -> "dispatch_a_block_variable_from_macro_delivers_initialised_object#DispatchA#class.a58ef5afb5e1e9480b49788e2400c52c_2" ;
"dispatch_a_block_variable_from_macro_delivers_initialised_object#DispatchA#class.a58ef5afb5e1e9480b49788e2400c52c_4" [label="4: BinaryOperatorStmt: Assign \n n$29=*&a:DispatchA* [line 69, column 3]\n *n$29._x:int=5 [line 69, column 3]\n " shape="box"] "dispatch_a_block_variable_from_macro_delivers_initialised_object#DispatchA#class.a58ef5afb5e1e9480b49788e2400c52c_4" [label="4: BinaryOperatorStmt: Assign \n n$33=*&a:DispatchA* [line 69, column 3]\n *n$33._x:int=5 [line 69, column 3]\n " shape="box"]
"dispatch_a_block_variable_from_macro_delivers_initialised_object#DispatchA#class.a58ef5afb5e1e9480b49788e2400c52c_4" -> "dispatch_a_block_variable_from_macro_delivers_initialised_object#DispatchA#class.a58ef5afb5e1e9480b49788e2400c52c_3" ; "dispatch_a_block_variable_from_macro_delivers_initialised_object#DispatchA#class.a58ef5afb5e1e9480b49788e2400c52c_4" -> "dispatch_a_block_variable_from_macro_delivers_initialised_object#DispatchA#class.a58ef5afb5e1e9480b49788e2400c52c_3" ;
"dispatch_a_block_variable_from_macro_delivers_initialised_object#DispatchA#class.a58ef5afb5e1e9480b49788e2400c52c_5" [label="5: DeclStmt \n n$30=_fun_DispatchA_dispatch_a_block_variable_from_macro() [line 68, column 18]\n *&a:DispatchA*=n$30 [line 68, column 3]\n " shape="box"] "dispatch_a_block_variable_from_macro_delivers_initialised_object#DispatchA#class.a58ef5afb5e1e9480b49788e2400c52c_5" [label="5: DeclStmt \n n$34=_fun_DispatchA_dispatch_a_block_variable_from_macro() [line 68, column 18]\n *&a:DispatchA*=n$34 [line 68, column 3]\n " shape="box"]
"dispatch_a_block_variable_from_macro_delivers_initialised_object#DispatchA#class.a58ef5afb5e1e9480b49788e2400c52c_5" -> "dispatch_a_block_variable_from_macro_delivers_initialised_object#DispatchA#class.a58ef5afb5e1e9480b49788e2400c52c_4" ; "dispatch_a_block_variable_from_macro_delivers_initialised_object#DispatchA#class.a58ef5afb5e1e9480b49788e2400c52c_5" -> "dispatch_a_block_variable_from_macro_delivers_initialised_object#DispatchA#class.a58ef5afb5e1e9480b49788e2400c52c_4" ;

@ -11,7 +11,7 @@ digraph iCFG {
"dispatch_once_example#DispatchEx#class.d3456446b1a2d5355c1767887cc8b62c_3" -> "dispatch_once_example#DispatchEx#class.d3456446b1a2d5355c1767887cc8b62c_2" ; "dispatch_once_example#DispatchEx#class.d3456446b1a2d5355c1767887cc8b62c_3" -> "dispatch_once_example#DispatchEx#class.d3456446b1a2d5355c1767887cc8b62c_2" ;
"dispatch_once_example#DispatchEx#class.d3456446b1a2d5355c1767887cc8b62c_4" [label="4: Call (_fun___objc_anonymous_block_DispatchEx_dispatch_once_example______1) \n DECLARE_LOCALS(&__objc_anonymous_block_DispatchEx_dispatch_once_example______1); [line 29, column 29]\n n$6=_fun___objc_alloc_no_fail(sizeof(t=__objc_anonymous_block_DispatchEx_dispatch_once_example______1):unsigned long) [line 29, column 29]\n *&__objc_anonymous_block_DispatchEx_dispatch_once_example______1:__objc_anonymous_block_DispatchEx_dispatch_once_example______1=n$6 [line 29, column 29]\n n$7=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_once_example_a:DispatchEx* [line 29, column 29]\n *n$6.DispatchEx_dispatch_once_example_a:DispatchEx*=n$7 [line 29, column 29]\n n$8=(_fun___objc_anonymous_block_DispatchEx_dispatch_once_example______1)() [line 29, column 3]\n " shape="box"] "dispatch_once_example#DispatchEx#class.d3456446b1a2d5355c1767887cc8b62c_4" [label="4: Call (_fun_objc_blockDispatchEx_dispatch_once_example_1) \n DECLARE_LOCALS(&0$?%__sil_tmp_block_heap_var_n$7); [line 29, column 29]\n n$6=_fun___objc_alloc_no_fail(sizeof(t=Objc_blockDispatchEx_dispatch_once_example_1Class):unsigned long) [line 29, column 29]\n *&0$?%__sil_tmp_block_heap_var_n$7:Objc_blockDispatchEx_dispatch_once_example_1Class=n$6 [line 29, column 29]\n n$8=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_once_example_a:DispatchEx* [line 29, column 29]\n *n$6.DispatchEx_dispatch_once_example_a:DispatchEx*=n$8 [line 29, column 29]\n n$9=(_fun_objc_blockDispatchEx_dispatch_once_example_1)() [line 29, column 3]\n " shape="box"]
"dispatch_once_example#DispatchEx#class.d3456446b1a2d5355c1767887cc8b62c_4" -> "dispatch_once_example#DispatchEx#class.d3456446b1a2d5355c1767887cc8b62c_3" ; "dispatch_once_example#DispatchEx#class.d3456446b1a2d5355c1767887cc8b62c_4" -> "dispatch_once_example#DispatchEx#class.d3456446b1a2d5355c1767887cc8b62c_3" ;
@ -19,21 +19,21 @@ digraph iCFG {
"dispatch_once_example#DispatchEx#class.d3456446b1a2d5355c1767887cc8b62c_5" -> "dispatch_once_example#DispatchEx#class.d3456446b1a2d5355c1767887cc8b62c_4" ; "dispatch_once_example#DispatchEx#class.d3456446b1a2d5355c1767887cc8b62c_5" -> "dispatch_once_example#DispatchEx#class.d3456446b1a2d5355c1767887cc8b62c_4" ;
"__objc_anonymous_block_DispatchEx_dispatch_once_example______1.158d97f9901ded6a43590bdae67c9275_1" [label="1: Start __objc_anonymous_block_DispatchEx_dispatch_once_example______1\nFormals: \nLocals: \n DECLARE_LOCALS(&return); [line 29, column 29]\n " color=yellow style=filled] "objc_blockDispatchEx_dispatch_once_example_1.4b4341cb61d8b8d8f01e95edf36e4961_1" [label="1: Start objc_blockDispatchEx_dispatch_once_example_1\nFormals: \nLocals: \n DECLARE_LOCALS(&return); [line 29, column 29]\n " color=yellow style=filled]
"__objc_anonymous_block_DispatchEx_dispatch_once_example______1.158d97f9901ded6a43590bdae67c9275_1" -> "__objc_anonymous_block_DispatchEx_dispatch_once_example______1.158d97f9901ded6a43590bdae67c9275_4" ; "objc_blockDispatchEx_dispatch_once_example_1.4b4341cb61d8b8d8f01e95edf36e4961_1" -> "objc_blockDispatchEx_dispatch_once_example_1.4b4341cb61d8b8d8f01e95edf36e4961_4" ;
"__objc_anonymous_block_DispatchEx_dispatch_once_example______1.158d97f9901ded6a43590bdae67c9275_2" [label="2: Exit __objc_anonymous_block_DispatchEx_dispatch_once_example______1 \n " color=yellow style=filled] "objc_blockDispatchEx_dispatch_once_example_1.4b4341cb61d8b8d8f01e95edf36e4961_2" [label="2: Exit objc_blockDispatchEx_dispatch_once_example_1 \n " color=yellow style=filled]
"__objc_anonymous_block_DispatchEx_dispatch_once_example______1.158d97f9901ded6a43590bdae67c9275_3" [label="3: BinaryOperatorStmt: Assign \n n$3=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_once_example_a:DispatchEx* [line 31, column 5]\n *n$3.x:int=10 [line 31, column 5]\n " shape="box"] "objc_blockDispatchEx_dispatch_once_example_1.4b4341cb61d8b8d8f01e95edf36e4961_3" [label="3: BinaryOperatorStmt: Assign \n n$3=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_once_example_a:DispatchEx* [line 31, column 5]\n *n$3.x:int=10 [line 31, column 5]\n " shape="box"]
"__objc_anonymous_block_DispatchEx_dispatch_once_example______1.158d97f9901ded6a43590bdae67c9275_3" -> "__objc_anonymous_block_DispatchEx_dispatch_once_example______1.158d97f9901ded6a43590bdae67c9275_2" ; "objc_blockDispatchEx_dispatch_once_example_1.4b4341cb61d8b8d8f01e95edf36e4961_3" -> "objc_blockDispatchEx_dispatch_once_example_1.4b4341cb61d8b8d8f01e95edf36e4961_2" ;
"__objc_anonymous_block_DispatchEx_dispatch_once_example______1.158d97f9901ded6a43590bdae67c9275_4" [label="4: BinaryOperatorStmt: Assign \n n$4=_fun___objc_alloc_no_fail(sizeof(t=DispatchEx):unsigned long) [line 30, column 10]\n n$5=_fun_DispatchEx_init(n$4:DispatchEx*) virtual [line 30, column 9]\n *&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_once_example_a:DispatchEx*=n$5 [line 30, column 5]\n " shape="box"] "objc_blockDispatchEx_dispatch_once_example_1.4b4341cb61d8b8d8f01e95edf36e4961_4" [label="4: BinaryOperatorStmt: Assign \n n$4=_fun___objc_alloc_no_fail(sizeof(t=DispatchEx):unsigned long) [line 30, column 10]\n n$5=_fun_DispatchEx_init(n$4:DispatchEx*) virtual [line 30, column 9]\n *&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_once_example_a:DispatchEx*=n$5 [line 30, column 5]\n " shape="box"]
"__objc_anonymous_block_DispatchEx_dispatch_once_example______1.158d97f9901ded6a43590bdae67c9275_4" -> "__objc_anonymous_block_DispatchEx_dispatch_once_example______1.158d97f9901ded6a43590bdae67c9275_3" ; "objc_blockDispatchEx_dispatch_once_example_1.4b4341cb61d8b8d8f01e95edf36e4961_4" -> "objc_blockDispatchEx_dispatch_once_example_1.4b4341cb61d8b8d8f01e95edf36e4961_3" ;
"dispatch_async_example#DispatchEx#class.5c5d7347be2a9654ad7e32514189fe54_1" [label="1: Start DispatchEx_dispatch_async_example\nFormals: \nLocals: \n DECLARE_LOCALS(&return); [line 36, column 1]\n " color=yellow style=filled] "dispatch_async_example#DispatchEx#class.5c5d7347be2a9654ad7e32514189fe54_1" [label="1: Start DispatchEx_dispatch_async_example\nFormals: \nLocals: \n DECLARE_LOCALS(&return); [line 36, column 1]\n " color=yellow style=filled]
@ -41,11 +41,11 @@ digraph iCFG {
"dispatch_async_example#DispatchEx#class.5c5d7347be2a9654ad7e32514189fe54_2" [label="2: Exit DispatchEx_dispatch_async_example \n " color=yellow style=filled] "dispatch_async_example#DispatchEx#class.5c5d7347be2a9654ad7e32514189fe54_2" [label="2: Exit DispatchEx_dispatch_async_example \n " color=yellow style=filled]
"dispatch_async_example#DispatchEx#class.5c5d7347be2a9654ad7e32514189fe54_3" [label="3: Return Stmt \n n$9=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_async_example_a:DispatchEx* [line 43, column 10]\n n$10=*n$9.x:int [line 43, column 10]\n *&return:int=n$10 [line 43, column 3]\n " shape="box"] "dispatch_async_example#DispatchEx#class.5c5d7347be2a9654ad7e32514189fe54_3" [label="3: Return Stmt \n n$10=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_async_example_a:DispatchEx* [line 43, column 10]\n n$11=*n$10.x:int [line 43, column 10]\n *&return:int=n$11 [line 43, column 3]\n " shape="box"]
"dispatch_async_example#DispatchEx#class.5c5d7347be2a9654ad7e32514189fe54_3" -> "dispatch_async_example#DispatchEx#class.5c5d7347be2a9654ad7e32514189fe54_2" ; "dispatch_async_example#DispatchEx#class.5c5d7347be2a9654ad7e32514189fe54_3" -> "dispatch_async_example#DispatchEx#class.5c5d7347be2a9654ad7e32514189fe54_2" ;
"dispatch_async_example#DispatchEx#class.5c5d7347be2a9654ad7e32514189fe54_4" [label="4: Call (_fun___objc_anonymous_block_DispatchEx_dispatch_async_example______2) \n DECLARE_LOCALS(&__objc_anonymous_block_DispatchEx_dispatch_async_example______2); [line 39, column 18]\n n$14=_fun___objc_alloc_no_fail(sizeof(t=__objc_anonymous_block_DispatchEx_dispatch_async_example______2):unsigned long) [line 39, column 18]\n *&__objc_anonymous_block_DispatchEx_dispatch_async_example______2:__objc_anonymous_block_DispatchEx_dispatch_async_example______2=n$14 [line 39, column 18]\n n$15=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_async_example_a:DispatchEx* [line 39, column 18]\n *n$14.DispatchEx_dispatch_async_example_a:DispatchEx*=n$15 [line 39, column 18]\n n$16=(_fun___objc_anonymous_block_DispatchEx_dispatch_async_example______2)() [line 38, column 3]\n " shape="box"] "dispatch_async_example#DispatchEx#class.5c5d7347be2a9654ad7e32514189fe54_4" [label="4: Call (_fun_objc_blockDispatchEx_dispatch_async_example_2) \n DECLARE_LOCALS(&0$?%__sil_tmp_block_heap_var_n$16); [line 39, column 18]\n n$15=_fun___objc_alloc_no_fail(sizeof(t=Objc_blockDispatchEx_dispatch_async_example_2Class):unsigned long) [line 39, column 18]\n *&0$?%__sil_tmp_block_heap_var_n$16:Objc_blockDispatchEx_dispatch_async_example_2Class=n$15 [line 39, column 18]\n n$17=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_async_example_a:DispatchEx* [line 39, column 18]\n *n$15.DispatchEx_dispatch_async_example_a:DispatchEx*=n$17 [line 39, column 18]\n n$18=(_fun_objc_blockDispatchEx_dispatch_async_example_2)() [line 38, column 3]\n " shape="box"]
"dispatch_async_example#DispatchEx#class.5c5d7347be2a9654ad7e32514189fe54_4" -> "dispatch_async_example#DispatchEx#class.5c5d7347be2a9654ad7e32514189fe54_3" ; "dispatch_async_example#DispatchEx#class.5c5d7347be2a9654ad7e32514189fe54_4" -> "dispatch_async_example#DispatchEx#class.5c5d7347be2a9654ad7e32514189fe54_3" ;
@ -53,21 +53,21 @@ digraph iCFG {
"dispatch_async_example#DispatchEx#class.5c5d7347be2a9654ad7e32514189fe54_5" -> "dispatch_async_example#DispatchEx#class.5c5d7347be2a9654ad7e32514189fe54_4" ; "dispatch_async_example#DispatchEx#class.5c5d7347be2a9654ad7e32514189fe54_5" -> "dispatch_async_example#DispatchEx#class.5c5d7347be2a9654ad7e32514189fe54_4" ;
"__objc_anonymous_block_DispatchEx_dispatch_async_example______2.188fa4ba6cec1621d948ea1747df2c34_1" [label="1: Start __objc_anonymous_block_DispatchEx_dispatch_async_example______2\nFormals: \nLocals: \n DECLARE_LOCALS(&return); [line 39, column 18]\n " color=yellow style=filled] "objc_blockDispatchEx_dispatch_async_example_2.6510e5756fbcdafec0a18e8d5493346b_1" [label="1: Start objc_blockDispatchEx_dispatch_async_example_2\nFormals: \nLocals: \n DECLARE_LOCALS(&return); [line 39, column 18]\n " color=yellow style=filled]
"__objc_anonymous_block_DispatchEx_dispatch_async_example______2.188fa4ba6cec1621d948ea1747df2c34_1" -> "__objc_anonymous_block_DispatchEx_dispatch_async_example______2.188fa4ba6cec1621d948ea1747df2c34_4" ; "objc_blockDispatchEx_dispatch_async_example_2.6510e5756fbcdafec0a18e8d5493346b_1" -> "objc_blockDispatchEx_dispatch_async_example_2.6510e5756fbcdafec0a18e8d5493346b_4" ;
"__objc_anonymous_block_DispatchEx_dispatch_async_example______2.188fa4ba6cec1621d948ea1747df2c34_2" [label="2: Exit __objc_anonymous_block_DispatchEx_dispatch_async_example______2 \n " color=yellow style=filled] "objc_blockDispatchEx_dispatch_async_example_2.6510e5756fbcdafec0a18e8d5493346b_2" [label="2: Exit objc_blockDispatchEx_dispatch_async_example_2 \n " color=yellow style=filled]
"__objc_anonymous_block_DispatchEx_dispatch_async_example______2.188fa4ba6cec1621d948ea1747df2c34_3" [label="3: BinaryOperatorStmt: Assign \n n$11=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_async_example_a:DispatchEx* [line 41, column 20]\n *n$11.x:int=10 [line 41, column 20]\n " shape="box"] "objc_blockDispatchEx_dispatch_async_example_2.6510e5756fbcdafec0a18e8d5493346b_3" [label="3: BinaryOperatorStmt: Assign \n n$12=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_async_example_a:DispatchEx* [line 41, column 20]\n *n$12.x:int=10 [line 41, column 20]\n " shape="box"]
"__objc_anonymous_block_DispatchEx_dispatch_async_example______2.188fa4ba6cec1621d948ea1747df2c34_3" -> "__objc_anonymous_block_DispatchEx_dispatch_async_example______2.188fa4ba6cec1621d948ea1747df2c34_2" ; "objc_blockDispatchEx_dispatch_async_example_2.6510e5756fbcdafec0a18e8d5493346b_3" -> "objc_blockDispatchEx_dispatch_async_example_2.6510e5756fbcdafec0a18e8d5493346b_2" ;
"__objc_anonymous_block_DispatchEx_dispatch_async_example______2.188fa4ba6cec1621d948ea1747df2c34_4" [label="4: BinaryOperatorStmt: Assign \n n$12=_fun___objc_alloc_no_fail(sizeof(t=DispatchEx):unsigned long) [line 40, column 25]\n n$13=_fun_DispatchEx_init(n$12:DispatchEx*) virtual [line 40, column 24]\n *&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_async_example_a:DispatchEx*=n$13 [line 40, column 20]\n " shape="box"] "objc_blockDispatchEx_dispatch_async_example_2.6510e5756fbcdafec0a18e8d5493346b_4" [label="4: BinaryOperatorStmt: Assign \n n$13=_fun___objc_alloc_no_fail(sizeof(t=DispatchEx):unsigned long) [line 40, column 25]\n n$14=_fun_DispatchEx_init(n$13:DispatchEx*) virtual [line 40, column 24]\n *&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_async_example_a:DispatchEx*=n$14 [line 40, column 20]\n " shape="box"]
"__objc_anonymous_block_DispatchEx_dispatch_async_example______2.188fa4ba6cec1621d948ea1747df2c34_4" -> "__objc_anonymous_block_DispatchEx_dispatch_async_example______2.188fa4ba6cec1621d948ea1747df2c34_3" ; "objc_blockDispatchEx_dispatch_async_example_2.6510e5756fbcdafec0a18e8d5493346b_4" -> "objc_blockDispatchEx_dispatch_async_example_2.6510e5756fbcdafec0a18e8d5493346b_3" ;
"dispatch_after_example#DispatchEx#class.1d25856bd99eb1ef683c8f65ff46d05d_1" [label="1: Start DispatchEx_dispatch_after_example\nFormals: \nLocals: \n DECLARE_LOCALS(&return); [line 46, column 1]\n " color=yellow style=filled] "dispatch_after_example#DispatchEx#class.1d25856bd99eb1ef683c8f65ff46d05d_1" [label="1: Start DispatchEx_dispatch_after_example\nFormals: \nLocals: \n DECLARE_LOCALS(&return); [line 46, column 1]\n " color=yellow style=filled]
@ -75,11 +75,11 @@ digraph iCFG {
"dispatch_after_example#DispatchEx#class.1d25856bd99eb1ef683c8f65ff46d05d_2" [label="2: Exit DispatchEx_dispatch_after_example \n " color=yellow style=filled] "dispatch_after_example#DispatchEx#class.1d25856bd99eb1ef683c8f65ff46d05d_2" [label="2: Exit DispatchEx_dispatch_after_example \n " color=yellow style=filled]
"dispatch_after_example#DispatchEx#class.1d25856bd99eb1ef683c8f65ff46d05d_3" [label="3: Return Stmt \n n$17=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_after_example_a:DispatchEx* [line 54, column 10]\n n$18=*n$17.x:int [line 54, column 10]\n *&return:int=n$18 [line 54, column 3]\n " shape="box"] "dispatch_after_example#DispatchEx#class.1d25856bd99eb1ef683c8f65ff46d05d_3" [label="3: Return Stmt \n n$19=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_after_example_a:DispatchEx* [line 54, column 10]\n n$20=*n$19.x:int [line 54, column 10]\n *&return:int=n$20 [line 54, column 3]\n " shape="box"]
"dispatch_after_example#DispatchEx#class.1d25856bd99eb1ef683c8f65ff46d05d_3" -> "dispatch_after_example#DispatchEx#class.1d25856bd99eb1ef683c8f65ff46d05d_2" ; "dispatch_after_example#DispatchEx#class.1d25856bd99eb1ef683c8f65ff46d05d_3" -> "dispatch_after_example#DispatchEx#class.1d25856bd99eb1ef683c8f65ff46d05d_2" ;
"dispatch_after_example#DispatchEx#class.1d25856bd99eb1ef683c8f65ff46d05d_4" [label="4: Call (_fun___objc_anonymous_block_DispatchEx_dispatch_after_example______3) \n DECLARE_LOCALS(&__objc_anonymous_block_DispatchEx_dispatch_after_example______3); [line 50, column 18]\n n$22=_fun___objc_alloc_no_fail(sizeof(t=__objc_anonymous_block_DispatchEx_dispatch_after_example______3):unsigned long) [line 50, column 18]\n *&__objc_anonymous_block_DispatchEx_dispatch_after_example______3:__objc_anonymous_block_DispatchEx_dispatch_after_example______3=n$22 [line 50, column 18]\n n$23=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_after_example_a:DispatchEx* [line 50, column 18]\n *n$22.DispatchEx_dispatch_after_example_a:DispatchEx*=n$23 [line 50, column 18]\n n$24=(_fun___objc_anonymous_block_DispatchEx_dispatch_after_example______3)() [line 48, column 3]\n " shape="box"] "dispatch_after_example#DispatchEx#class.1d25856bd99eb1ef683c8f65ff46d05d_4" [label="4: Call (_fun_objc_blockDispatchEx_dispatch_after_example_3) \n DECLARE_LOCALS(&0$?%__sil_tmp_block_heap_var_n$25); [line 50, column 18]\n n$24=_fun___objc_alloc_no_fail(sizeof(t=Objc_blockDispatchEx_dispatch_after_example_3Class):unsigned long) [line 50, column 18]\n *&0$?%__sil_tmp_block_heap_var_n$25:Objc_blockDispatchEx_dispatch_after_example_3Class=n$24 [line 50, column 18]\n n$26=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_after_example_a:DispatchEx* [line 50, column 18]\n *n$24.DispatchEx_dispatch_after_example_a:DispatchEx*=n$26 [line 50, column 18]\n n$27=(_fun_objc_blockDispatchEx_dispatch_after_example_3)() [line 48, column 3]\n " shape="box"]
"dispatch_after_example#DispatchEx#class.1d25856bd99eb1ef683c8f65ff46d05d_4" -> "dispatch_after_example#DispatchEx#class.1d25856bd99eb1ef683c8f65ff46d05d_3" ; "dispatch_after_example#DispatchEx#class.1d25856bd99eb1ef683c8f65ff46d05d_4" -> "dispatch_after_example#DispatchEx#class.1d25856bd99eb1ef683c8f65ff46d05d_3" ;
@ -87,21 +87,21 @@ digraph iCFG {
"dispatch_after_example#DispatchEx#class.1d25856bd99eb1ef683c8f65ff46d05d_5" -> "dispatch_after_example#DispatchEx#class.1d25856bd99eb1ef683c8f65ff46d05d_4" ; "dispatch_after_example#DispatchEx#class.1d25856bd99eb1ef683c8f65ff46d05d_5" -> "dispatch_after_example#DispatchEx#class.1d25856bd99eb1ef683c8f65ff46d05d_4" ;
"__objc_anonymous_block_DispatchEx_dispatch_after_example______3.2346df1c3bc37dee82860aa53ebe3ece_1" [label="1: Start __objc_anonymous_block_DispatchEx_dispatch_after_example______3\nFormals: \nLocals: \n DECLARE_LOCALS(&return); [line 50, column 18]\n " color=yellow style=filled] "objc_blockDispatchEx_dispatch_after_example_3.380a17f45400d49d71ce1ba1c29a6ba4_1" [label="1: Start objc_blockDispatchEx_dispatch_after_example_3\nFormals: \nLocals: \n DECLARE_LOCALS(&return); [line 50, column 18]\n " color=yellow style=filled]
"__objc_anonymous_block_DispatchEx_dispatch_after_example______3.2346df1c3bc37dee82860aa53ebe3ece_1" -> "__objc_anonymous_block_DispatchEx_dispatch_after_example______3.2346df1c3bc37dee82860aa53ebe3ece_4" ; "objc_blockDispatchEx_dispatch_after_example_3.380a17f45400d49d71ce1ba1c29a6ba4_1" -> "objc_blockDispatchEx_dispatch_after_example_3.380a17f45400d49d71ce1ba1c29a6ba4_4" ;
"__objc_anonymous_block_DispatchEx_dispatch_after_example______3.2346df1c3bc37dee82860aa53ebe3ece_2" [label="2: Exit __objc_anonymous_block_DispatchEx_dispatch_after_example______3 \n " color=yellow style=filled] "objc_blockDispatchEx_dispatch_after_example_3.380a17f45400d49d71ce1ba1c29a6ba4_2" [label="2: Exit objc_blockDispatchEx_dispatch_after_example_3 \n " color=yellow style=filled]
"__objc_anonymous_block_DispatchEx_dispatch_after_example______3.2346df1c3bc37dee82860aa53ebe3ece_3" [label="3: BinaryOperatorStmt: Assign \n n$19=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_after_example_a:DispatchEx* [line 52, column 20]\n *n$19.x:int=10 [line 52, column 20]\n " shape="box"] "objc_blockDispatchEx_dispatch_after_example_3.380a17f45400d49d71ce1ba1c29a6ba4_3" [label="3: BinaryOperatorStmt: Assign \n n$21=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_after_example_a:DispatchEx* [line 52, column 20]\n *n$21.x:int=10 [line 52, column 20]\n " shape="box"]
"__objc_anonymous_block_DispatchEx_dispatch_after_example______3.2346df1c3bc37dee82860aa53ebe3ece_3" -> "__objc_anonymous_block_DispatchEx_dispatch_after_example______3.2346df1c3bc37dee82860aa53ebe3ece_2" ; "objc_blockDispatchEx_dispatch_after_example_3.380a17f45400d49d71ce1ba1c29a6ba4_3" -> "objc_blockDispatchEx_dispatch_after_example_3.380a17f45400d49d71ce1ba1c29a6ba4_2" ;
"__objc_anonymous_block_DispatchEx_dispatch_after_example______3.2346df1c3bc37dee82860aa53ebe3ece_4" [label="4: BinaryOperatorStmt: Assign \n n$20=_fun___objc_alloc_no_fail(sizeof(t=DispatchEx):unsigned long) [line 51, column 25]\n n$21=_fun_DispatchEx_init(n$20:DispatchEx*) virtual [line 51, column 24]\n *&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_after_example_a:DispatchEx*=n$21 [line 51, column 20]\n " shape="box"] "objc_blockDispatchEx_dispatch_after_example_3.380a17f45400d49d71ce1ba1c29a6ba4_4" [label="4: BinaryOperatorStmt: Assign \n n$22=_fun___objc_alloc_no_fail(sizeof(t=DispatchEx):unsigned long) [line 51, column 25]\n n$23=_fun_DispatchEx_init(n$22:DispatchEx*) virtual [line 51, column 24]\n *&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_after_example_a:DispatchEx*=n$23 [line 51, column 20]\n " shape="box"]
"__objc_anonymous_block_DispatchEx_dispatch_after_example______3.2346df1c3bc37dee82860aa53ebe3ece_4" -> "__objc_anonymous_block_DispatchEx_dispatch_after_example______3.2346df1c3bc37dee82860aa53ebe3ece_3" ; "objc_blockDispatchEx_dispatch_after_example_3.380a17f45400d49d71ce1ba1c29a6ba4_4" -> "objc_blockDispatchEx_dispatch_after_example_3.380a17f45400d49d71ce1ba1c29a6ba4_3" ;
"dispatch_group_example#DispatchEx#class.f420a75c58eda6d3f0e5e05fadabfc18_1" [label="1: Start DispatchEx_dispatch_group_example\nFormals: \nLocals: \n DECLARE_LOCALS(&return); [line 57, column 1]\n " color=yellow style=filled] "dispatch_group_example#DispatchEx#class.f420a75c58eda6d3f0e5e05fadabfc18_1" [label="1: Start DispatchEx_dispatch_group_example\nFormals: \nLocals: \n DECLARE_LOCALS(&return); [line 57, column 1]\n " color=yellow style=filled]
@ -109,11 +109,11 @@ digraph iCFG {
"dispatch_group_example#DispatchEx#class.f420a75c58eda6d3f0e5e05fadabfc18_2" [label="2: Exit DispatchEx_dispatch_group_example \n " color=yellow style=filled] "dispatch_group_example#DispatchEx#class.f420a75c58eda6d3f0e5e05fadabfc18_2" [label="2: Exit DispatchEx_dispatch_group_example \n " color=yellow style=filled]
"dispatch_group_example#DispatchEx#class.f420a75c58eda6d3f0e5e05fadabfc18_3" [label="3: Return Stmt \n n$25=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_group_example_a:DispatchEx* [line 63, column 10]\n n$26=*n$25.x:int [line 63, column 10]\n *&return:int=n$26 [line 63, column 3]\n " shape="box"] "dispatch_group_example#DispatchEx#class.f420a75c58eda6d3f0e5e05fadabfc18_3" [label="3: Return Stmt \n n$28=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_group_example_a:DispatchEx* [line 63, column 10]\n n$29=*n$28.x:int [line 63, column 10]\n *&return:int=n$29 [line 63, column 3]\n " shape="box"]
"dispatch_group_example#DispatchEx#class.f420a75c58eda6d3f0e5e05fadabfc18_3" -> "dispatch_group_example#DispatchEx#class.f420a75c58eda6d3f0e5e05fadabfc18_2" ; "dispatch_group_example#DispatchEx#class.f420a75c58eda6d3f0e5e05fadabfc18_3" -> "dispatch_group_example#DispatchEx#class.f420a75c58eda6d3f0e5e05fadabfc18_2" ;
"dispatch_group_example#DispatchEx#class.f420a75c58eda6d3f0e5e05fadabfc18_4" [label="4: Call (_fun___objc_anonymous_block_DispatchEx_dispatch_group_example______4) \n DECLARE_LOCALS(&__objc_anonymous_block_DispatchEx_dispatch_group_example______4); [line 59, column 57]\n n$30=_fun___objc_alloc_no_fail(sizeof(t=__objc_anonymous_block_DispatchEx_dispatch_group_example______4):unsigned long) [line 59, column 57]\n *&__objc_anonymous_block_DispatchEx_dispatch_group_example______4:__objc_anonymous_block_DispatchEx_dispatch_group_example______4=n$30 [line 59, column 57]\n n$31=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_group_example_a:DispatchEx* [line 59, column 57]\n *n$30.DispatchEx_dispatch_group_example_a:DispatchEx*=n$31 [line 59, column 57]\n n$32=(_fun___objc_anonymous_block_DispatchEx_dispatch_group_example______4)() [line 59, column 3]\n " shape="box"] "dispatch_group_example#DispatchEx#class.f420a75c58eda6d3f0e5e05fadabfc18_4" [label="4: Call (_fun_objc_blockDispatchEx_dispatch_group_example_4) \n DECLARE_LOCALS(&0$?%__sil_tmp_block_heap_var_n$34); [line 59, column 57]\n n$33=_fun___objc_alloc_no_fail(sizeof(t=Objc_blockDispatchEx_dispatch_group_example_4Class):unsigned long) [line 59, column 57]\n *&0$?%__sil_tmp_block_heap_var_n$34:Objc_blockDispatchEx_dispatch_group_example_4Class=n$33 [line 59, column 57]\n n$35=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_group_example_a:DispatchEx* [line 59, column 57]\n *n$33.DispatchEx_dispatch_group_example_a:DispatchEx*=n$35 [line 59, column 57]\n n$36=(_fun_objc_blockDispatchEx_dispatch_group_example_4)() [line 59, column 3]\n " shape="box"]
"dispatch_group_example#DispatchEx#class.f420a75c58eda6d3f0e5e05fadabfc18_4" -> "dispatch_group_example#DispatchEx#class.f420a75c58eda6d3f0e5e05fadabfc18_3" ; "dispatch_group_example#DispatchEx#class.f420a75c58eda6d3f0e5e05fadabfc18_4" -> "dispatch_group_example#DispatchEx#class.f420a75c58eda6d3f0e5e05fadabfc18_3" ;
@ -121,21 +121,21 @@ digraph iCFG {
"dispatch_group_example#DispatchEx#class.f420a75c58eda6d3f0e5e05fadabfc18_5" -> "dispatch_group_example#DispatchEx#class.f420a75c58eda6d3f0e5e05fadabfc18_4" ; "dispatch_group_example#DispatchEx#class.f420a75c58eda6d3f0e5e05fadabfc18_5" -> "dispatch_group_example#DispatchEx#class.f420a75c58eda6d3f0e5e05fadabfc18_4" ;
"__objc_anonymous_block_DispatchEx_dispatch_group_example______4.4458b8e68269255e8dd6690cdc49ab76_1" [label="1: Start __objc_anonymous_block_DispatchEx_dispatch_group_example______4\nFormals: \nLocals: \n DECLARE_LOCALS(&return); [line 59, column 57]\n " color=yellow style=filled] "objc_blockDispatchEx_dispatch_group_example_4.65d6b4827e06dfbede68939492105a46_1" [label="1: Start objc_blockDispatchEx_dispatch_group_example_4\nFormals: \nLocals: \n DECLARE_LOCALS(&return); [line 59, column 57]\n " color=yellow style=filled]
"__objc_anonymous_block_DispatchEx_dispatch_group_example______4.4458b8e68269255e8dd6690cdc49ab76_1" -> "__objc_anonymous_block_DispatchEx_dispatch_group_example______4.4458b8e68269255e8dd6690cdc49ab76_4" ; "objc_blockDispatchEx_dispatch_group_example_4.65d6b4827e06dfbede68939492105a46_1" -> "objc_blockDispatchEx_dispatch_group_example_4.65d6b4827e06dfbede68939492105a46_4" ;
"__objc_anonymous_block_DispatchEx_dispatch_group_example______4.4458b8e68269255e8dd6690cdc49ab76_2" [label="2: Exit __objc_anonymous_block_DispatchEx_dispatch_group_example______4 \n " color=yellow style=filled] "objc_blockDispatchEx_dispatch_group_example_4.65d6b4827e06dfbede68939492105a46_2" [label="2: Exit objc_blockDispatchEx_dispatch_group_example_4 \n " color=yellow style=filled]
"__objc_anonymous_block_DispatchEx_dispatch_group_example______4.4458b8e68269255e8dd6690cdc49ab76_3" [label="3: BinaryOperatorStmt: Assign \n n$27=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_group_example_a:DispatchEx* [line 61, column 5]\n *n$27.x:int=10 [line 61, column 5]\n " shape="box"] "objc_blockDispatchEx_dispatch_group_example_4.65d6b4827e06dfbede68939492105a46_3" [label="3: BinaryOperatorStmt: Assign \n n$30=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_group_example_a:DispatchEx* [line 61, column 5]\n *n$30.x:int=10 [line 61, column 5]\n " shape="box"]
"__objc_anonymous_block_DispatchEx_dispatch_group_example______4.4458b8e68269255e8dd6690cdc49ab76_3" -> "__objc_anonymous_block_DispatchEx_dispatch_group_example______4.4458b8e68269255e8dd6690cdc49ab76_2" ; "objc_blockDispatchEx_dispatch_group_example_4.65d6b4827e06dfbede68939492105a46_3" -> "objc_blockDispatchEx_dispatch_group_example_4.65d6b4827e06dfbede68939492105a46_2" ;
"__objc_anonymous_block_DispatchEx_dispatch_group_example______4.4458b8e68269255e8dd6690cdc49ab76_4" [label="4: BinaryOperatorStmt: Assign \n n$28=_fun___objc_alloc_no_fail(sizeof(t=DispatchEx):unsigned long) [line 60, column 10]\n n$29=_fun_DispatchEx_init(n$28:DispatchEx*) virtual [line 60, column 9]\n *&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_group_example_a:DispatchEx*=n$29 [line 60, column 5]\n " shape="box"] "objc_blockDispatchEx_dispatch_group_example_4.65d6b4827e06dfbede68939492105a46_4" [label="4: BinaryOperatorStmt: Assign \n n$31=_fun___objc_alloc_no_fail(sizeof(t=DispatchEx):unsigned long) [line 60, column 10]\n n$32=_fun_DispatchEx_init(n$31:DispatchEx*) virtual [line 60, column 9]\n *&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_group_example_a:DispatchEx*=n$32 [line 60, column 5]\n " shape="box"]
"__objc_anonymous_block_DispatchEx_dispatch_group_example______4.4458b8e68269255e8dd6690cdc49ab76_4" -> "__objc_anonymous_block_DispatchEx_dispatch_group_example______4.4458b8e68269255e8dd6690cdc49ab76_3" ; "objc_blockDispatchEx_dispatch_group_example_4.65d6b4827e06dfbede68939492105a46_4" -> "objc_blockDispatchEx_dispatch_group_example_4.65d6b4827e06dfbede68939492105a46_3" ;
"dispatch_group_notify_example#DispatchEx#class.f5cf54b07621c319cf7ead3b217760ed_1" [label="1: Start DispatchEx_dispatch_group_notify_example\nFormals: \nLocals: \n DECLARE_LOCALS(&return); [line 66, column 1]\n " color=yellow style=filled] "dispatch_group_notify_example#DispatchEx#class.f5cf54b07621c319cf7ead3b217760ed_1" [label="1: Start DispatchEx_dispatch_group_notify_example\nFormals: \nLocals: \n DECLARE_LOCALS(&return); [line 66, column 1]\n " color=yellow style=filled]
@ -143,11 +143,11 @@ digraph iCFG {
"dispatch_group_notify_example#DispatchEx#class.f5cf54b07621c319cf7ead3b217760ed_2" [label="2: Exit DispatchEx_dispatch_group_notify_example \n " color=yellow style=filled] "dispatch_group_notify_example#DispatchEx#class.f5cf54b07621c319cf7ead3b217760ed_2" [label="2: Exit DispatchEx_dispatch_group_notify_example \n " color=yellow style=filled]
"dispatch_group_notify_example#DispatchEx#class.f5cf54b07621c319cf7ead3b217760ed_3" [label="3: Return Stmt \n n$33=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_group_notify_example_a:DispatchEx* [line 72, column 10]\n n$34=*n$33.x:int [line 72, column 10]\n *&return:int=n$34 [line 72, column 3]\n " shape="box"] "dispatch_group_notify_example#DispatchEx#class.f5cf54b07621c319cf7ead3b217760ed_3" [label="3: Return Stmt \n n$37=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_group_notify_example_a:DispatchEx* [line 72, column 10]\n n$38=*n$37.x:int [line 72, column 10]\n *&return:int=n$38 [line 72, column 3]\n " shape="box"]
"dispatch_group_notify_example#DispatchEx#class.f5cf54b07621c319cf7ead3b217760ed_3" -> "dispatch_group_notify_example#DispatchEx#class.f5cf54b07621c319cf7ead3b217760ed_2" ; "dispatch_group_notify_example#DispatchEx#class.f5cf54b07621c319cf7ead3b217760ed_3" -> "dispatch_group_notify_example#DispatchEx#class.f5cf54b07621c319cf7ead3b217760ed_2" ;
"dispatch_group_notify_example#DispatchEx#class.f5cf54b07621c319cf7ead3b217760ed_4" [label="4: Call (_fun___objc_anonymous_block_DispatchEx_dispatch_group_notify_example______5) \n DECLARE_LOCALS(&__objc_anonymous_block_DispatchEx_dispatch_group_notify_example______5); [line 68, column 57]\n n$38=_fun___objc_alloc_no_fail(sizeof(t=__objc_anonymous_block_DispatchEx_dispatch_group_notify_example______5):unsigned long) [line 68, column 57]\n *&__objc_anonymous_block_DispatchEx_dispatch_group_notify_example______5:__objc_anonymous_block_DispatchEx_dispatch_group_notify_example______5=n$38 [line 68, column 57]\n n$39=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_group_notify_example_a:DispatchEx* [line 68, column 57]\n *n$38.DispatchEx_dispatch_group_notify_example_a:DispatchEx*=n$39 [line 68, column 57]\n n$40=(_fun___objc_anonymous_block_DispatchEx_dispatch_group_notify_example______5)() [line 68, column 3]\n " shape="box"] "dispatch_group_notify_example#DispatchEx#class.f5cf54b07621c319cf7ead3b217760ed_4" [label="4: Call (_fun_objc_blockDispatchEx_dispatch_group_notify_example_5) \n DECLARE_LOCALS(&0$?%__sil_tmp_block_heap_var_n$43); [line 68, column 57]\n n$42=_fun___objc_alloc_no_fail(sizeof(t=Objc_blockDispatchEx_dispatch_group_notify_example_5Class):unsigned long) [line 68, column 57]\n *&0$?%__sil_tmp_block_heap_var_n$43:Objc_blockDispatchEx_dispatch_group_notify_example_5Class=n$42 [line 68, column 57]\n n$44=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_group_notify_example_a:DispatchEx* [line 68, column 57]\n *n$42.DispatchEx_dispatch_group_notify_example_a:DispatchEx*=n$44 [line 68, column 57]\n n$45=(_fun_objc_blockDispatchEx_dispatch_group_notify_example_5)() [line 68, column 3]\n " shape="box"]
"dispatch_group_notify_example#DispatchEx#class.f5cf54b07621c319cf7ead3b217760ed_4" -> "dispatch_group_notify_example#DispatchEx#class.f5cf54b07621c319cf7ead3b217760ed_3" ; "dispatch_group_notify_example#DispatchEx#class.f5cf54b07621c319cf7ead3b217760ed_4" -> "dispatch_group_notify_example#DispatchEx#class.f5cf54b07621c319cf7ead3b217760ed_3" ;
@ -155,21 +155,21 @@ digraph iCFG {
"dispatch_group_notify_example#DispatchEx#class.f5cf54b07621c319cf7ead3b217760ed_5" -> "dispatch_group_notify_example#DispatchEx#class.f5cf54b07621c319cf7ead3b217760ed_4" ; "dispatch_group_notify_example#DispatchEx#class.f5cf54b07621c319cf7ead3b217760ed_5" -> "dispatch_group_notify_example#DispatchEx#class.f5cf54b07621c319cf7ead3b217760ed_4" ;
"__objc_anonymous_block_DispatchEx_dispatch_group_notify_example______5.7a26e229a9d9a9dcb5d0d430f7cacd00_1" [label="1: Start __objc_anonymous_block_DispatchEx_dispatch_group_notify_example______5\nFormals: \nLocals: \n DECLARE_LOCALS(&return); [line 68, column 57]\n " color=yellow style=filled] "objc_blockDispatchEx_dispatch_group_notify_example_5.ded89d749d973a9d57680f9d68afb8a0_1" [label="1: Start objc_blockDispatchEx_dispatch_group_notify_example_5\nFormals: \nLocals: \n DECLARE_LOCALS(&return); [line 68, column 57]\n " color=yellow style=filled]
"__objc_anonymous_block_DispatchEx_dispatch_group_notify_example______5.7a26e229a9d9a9dcb5d0d430f7cacd00_1" -> "__objc_anonymous_block_DispatchEx_dispatch_group_notify_example______5.7a26e229a9d9a9dcb5d0d430f7cacd00_4" ; "objc_blockDispatchEx_dispatch_group_notify_example_5.ded89d749d973a9d57680f9d68afb8a0_1" -> "objc_blockDispatchEx_dispatch_group_notify_example_5.ded89d749d973a9d57680f9d68afb8a0_4" ;
"__objc_anonymous_block_DispatchEx_dispatch_group_notify_example______5.7a26e229a9d9a9dcb5d0d430f7cacd00_2" [label="2: Exit __objc_anonymous_block_DispatchEx_dispatch_group_notify_example______5 \n " color=yellow style=filled] "objc_blockDispatchEx_dispatch_group_notify_example_5.ded89d749d973a9d57680f9d68afb8a0_2" [label="2: Exit objc_blockDispatchEx_dispatch_group_notify_example_5 \n " color=yellow style=filled]
"__objc_anonymous_block_DispatchEx_dispatch_group_notify_example______5.7a26e229a9d9a9dcb5d0d430f7cacd00_3" [label="3: BinaryOperatorStmt: Assign \n n$35=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_group_notify_example_a:DispatchEx* [line 70, column 5]\n *n$35.x:int=10 [line 70, column 5]\n " shape="box"] "objc_blockDispatchEx_dispatch_group_notify_example_5.ded89d749d973a9d57680f9d68afb8a0_3" [label="3: BinaryOperatorStmt: Assign \n n$39=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_group_notify_example_a:DispatchEx* [line 70, column 5]\n *n$39.x:int=10 [line 70, column 5]\n " shape="box"]
"__objc_anonymous_block_DispatchEx_dispatch_group_notify_example______5.7a26e229a9d9a9dcb5d0d430f7cacd00_3" -> "__objc_anonymous_block_DispatchEx_dispatch_group_notify_example______5.7a26e229a9d9a9dcb5d0d430f7cacd00_2" ; "objc_blockDispatchEx_dispatch_group_notify_example_5.ded89d749d973a9d57680f9d68afb8a0_3" -> "objc_blockDispatchEx_dispatch_group_notify_example_5.ded89d749d973a9d57680f9d68afb8a0_2" ;
"__objc_anonymous_block_DispatchEx_dispatch_group_notify_example______5.7a26e229a9d9a9dcb5d0d430f7cacd00_4" [label="4: BinaryOperatorStmt: Assign \n n$36=_fun___objc_alloc_no_fail(sizeof(t=DispatchEx):unsigned long) [line 69, column 10]\n n$37=_fun_DispatchEx_init(n$36:DispatchEx*) virtual [line 69, column 9]\n *&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_group_notify_example_a:DispatchEx*=n$37 [line 69, column 5]\n " shape="box"] "objc_blockDispatchEx_dispatch_group_notify_example_5.ded89d749d973a9d57680f9d68afb8a0_4" [label="4: BinaryOperatorStmt: Assign \n n$40=_fun___objc_alloc_no_fail(sizeof(t=DispatchEx):unsigned long) [line 69, column 10]\n n$41=_fun_DispatchEx_init(n$40:DispatchEx*) virtual [line 69, column 9]\n *&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_group_notify_example_a:DispatchEx*=n$41 [line 69, column 5]\n " shape="box"]
"__objc_anonymous_block_DispatchEx_dispatch_group_notify_example______5.7a26e229a9d9a9dcb5d0d430f7cacd00_4" -> "__objc_anonymous_block_DispatchEx_dispatch_group_notify_example______5.7a26e229a9d9a9dcb5d0d430f7cacd00_3" ; "objc_blockDispatchEx_dispatch_group_notify_example_5.ded89d749d973a9d57680f9d68afb8a0_4" -> "objc_blockDispatchEx_dispatch_group_notify_example_5.ded89d749d973a9d57680f9d68afb8a0_3" ;
"dispatch_barrier_example#DispatchEx#class.a541a40f2f04e29019c58e563f7544d8_1" [label="1: Start DispatchEx_dispatch_barrier_example\nFormals: \nLocals: \n DECLARE_LOCALS(&return); [line 75, column 1]\n " color=yellow style=filled] "dispatch_barrier_example#DispatchEx#class.a541a40f2f04e29019c58e563f7544d8_1" [label="1: Start DispatchEx_dispatch_barrier_example\nFormals: \nLocals: \n DECLARE_LOCALS(&return); [line 75, column 1]\n " color=yellow style=filled]
@ -177,11 +177,11 @@ digraph iCFG {
"dispatch_barrier_example#DispatchEx#class.a541a40f2f04e29019c58e563f7544d8_2" [label="2: Exit DispatchEx_dispatch_barrier_example \n " color=yellow style=filled] "dispatch_barrier_example#DispatchEx#class.a541a40f2f04e29019c58e563f7544d8_2" [label="2: Exit DispatchEx_dispatch_barrier_example \n " color=yellow style=filled]
"dispatch_barrier_example#DispatchEx#class.a541a40f2f04e29019c58e563f7544d8_3" [label="3: Return Stmt \n n$41=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_barrier_example_a:DispatchEx* [line 81, column 10]\n n$42=*n$41.x:int [line 81, column 10]\n *&return:int=n$42 [line 81, column 3]\n " shape="box"] "dispatch_barrier_example#DispatchEx#class.a541a40f2f04e29019c58e563f7544d8_3" [label="3: Return Stmt \n n$46=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_barrier_example_a:DispatchEx* [line 81, column 10]\n n$47=*n$46.x:int [line 81, column 10]\n *&return:int=n$47 [line 81, column 3]\n " shape="box"]
"dispatch_barrier_example#DispatchEx#class.a541a40f2f04e29019c58e563f7544d8_3" -> "dispatch_barrier_example#DispatchEx#class.a541a40f2f04e29019c58e563f7544d8_2" ; "dispatch_barrier_example#DispatchEx#class.a541a40f2f04e29019c58e563f7544d8_3" -> "dispatch_barrier_example#DispatchEx#class.a541a40f2f04e29019c58e563f7544d8_2" ;
"dispatch_barrier_example#DispatchEx#class.a541a40f2f04e29019c58e563f7544d8_4" [label="4: Call (_fun___objc_anonymous_block_DispatchEx_dispatch_barrier_example______6) \n DECLARE_LOCALS(&__objc_anonymous_block_DispatchEx_dispatch_barrier_example______6); [line 77, column 53]\n n$46=_fun___objc_alloc_no_fail(sizeof(t=__objc_anonymous_block_DispatchEx_dispatch_barrier_example______6):unsigned long) [line 77, column 53]\n *&__objc_anonymous_block_DispatchEx_dispatch_barrier_example______6:__objc_anonymous_block_DispatchEx_dispatch_barrier_example______6=n$46 [line 77, column 53]\n n$47=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_barrier_example_a:DispatchEx* [line 77, column 53]\n *n$46.DispatchEx_dispatch_barrier_example_a:DispatchEx*=n$47 [line 77, column 53]\n n$48=(_fun___objc_anonymous_block_DispatchEx_dispatch_barrier_example______6)() [line 77, column 3]\n " shape="box"] "dispatch_barrier_example#DispatchEx#class.a541a40f2f04e29019c58e563f7544d8_4" [label="4: Call (_fun_objc_blockDispatchEx_dispatch_barrier_example_6) \n DECLARE_LOCALS(&0$?%__sil_tmp_block_heap_var_n$52); [line 77, column 53]\n n$51=_fun___objc_alloc_no_fail(sizeof(t=Objc_blockDispatchEx_dispatch_barrier_example_6Class):unsigned long) [line 77, column 53]\n *&0$?%__sil_tmp_block_heap_var_n$52:Objc_blockDispatchEx_dispatch_barrier_example_6Class=n$51 [line 77, column 53]\n n$53=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_barrier_example_a:DispatchEx* [line 77, column 53]\n *n$51.DispatchEx_dispatch_barrier_example_a:DispatchEx*=n$53 [line 77, column 53]\n n$54=(_fun_objc_blockDispatchEx_dispatch_barrier_example_6)() [line 77, column 3]\n " shape="box"]
"dispatch_barrier_example#DispatchEx#class.a541a40f2f04e29019c58e563f7544d8_4" -> "dispatch_barrier_example#DispatchEx#class.a541a40f2f04e29019c58e563f7544d8_3" ; "dispatch_barrier_example#DispatchEx#class.a541a40f2f04e29019c58e563f7544d8_4" -> "dispatch_barrier_example#DispatchEx#class.a541a40f2f04e29019c58e563f7544d8_3" ;
@ -189,21 +189,21 @@ digraph iCFG {
"dispatch_barrier_example#DispatchEx#class.a541a40f2f04e29019c58e563f7544d8_5" -> "dispatch_barrier_example#DispatchEx#class.a541a40f2f04e29019c58e563f7544d8_4" ; "dispatch_barrier_example#DispatchEx#class.a541a40f2f04e29019c58e563f7544d8_5" -> "dispatch_barrier_example#DispatchEx#class.a541a40f2f04e29019c58e563f7544d8_4" ;
"__objc_anonymous_block_DispatchEx_dispatch_barrier_example______6.f3e27d4badebf4adf9313b39c9688c30_1" [label="1: Start __objc_anonymous_block_DispatchEx_dispatch_barrier_example______6\nFormals: \nLocals: \n DECLARE_LOCALS(&return); [line 77, column 53]\n " color=yellow style=filled] "objc_blockDispatchEx_dispatch_barrier_example_6.644987ff1e6d0e0008d4ccdb7e8538ee_1" [label="1: Start objc_blockDispatchEx_dispatch_barrier_example_6\nFormals: \nLocals: \n DECLARE_LOCALS(&return); [line 77, column 53]\n " color=yellow style=filled]
"__objc_anonymous_block_DispatchEx_dispatch_barrier_example______6.f3e27d4badebf4adf9313b39c9688c30_1" -> "__objc_anonymous_block_DispatchEx_dispatch_barrier_example______6.f3e27d4badebf4adf9313b39c9688c30_4" ; "objc_blockDispatchEx_dispatch_barrier_example_6.644987ff1e6d0e0008d4ccdb7e8538ee_1" -> "objc_blockDispatchEx_dispatch_barrier_example_6.644987ff1e6d0e0008d4ccdb7e8538ee_4" ;
"__objc_anonymous_block_DispatchEx_dispatch_barrier_example______6.f3e27d4badebf4adf9313b39c9688c30_2" [label="2: Exit __objc_anonymous_block_DispatchEx_dispatch_barrier_example______6 \n " color=yellow style=filled] "objc_blockDispatchEx_dispatch_barrier_example_6.644987ff1e6d0e0008d4ccdb7e8538ee_2" [label="2: Exit objc_blockDispatchEx_dispatch_barrier_example_6 \n " color=yellow style=filled]
"__objc_anonymous_block_DispatchEx_dispatch_barrier_example______6.f3e27d4badebf4adf9313b39c9688c30_3" [label="3: BinaryOperatorStmt: Assign \n n$43=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_barrier_example_a:DispatchEx* [line 79, column 5]\n *n$43.x:int=10 [line 79, column 5]\n " shape="box"] "objc_blockDispatchEx_dispatch_barrier_example_6.644987ff1e6d0e0008d4ccdb7e8538ee_3" [label="3: BinaryOperatorStmt: Assign \n n$48=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_barrier_example_a:DispatchEx* [line 79, column 5]\n *n$48.x:int=10 [line 79, column 5]\n " shape="box"]
"__objc_anonymous_block_DispatchEx_dispatch_barrier_example______6.f3e27d4badebf4adf9313b39c9688c30_3" -> "__objc_anonymous_block_DispatchEx_dispatch_barrier_example______6.f3e27d4badebf4adf9313b39c9688c30_2" ; "objc_blockDispatchEx_dispatch_barrier_example_6.644987ff1e6d0e0008d4ccdb7e8538ee_3" -> "objc_blockDispatchEx_dispatch_barrier_example_6.644987ff1e6d0e0008d4ccdb7e8538ee_2" ;
"__objc_anonymous_block_DispatchEx_dispatch_barrier_example______6.f3e27d4badebf4adf9313b39c9688c30_4" [label="4: BinaryOperatorStmt: Assign \n n$44=_fun___objc_alloc_no_fail(sizeof(t=DispatchEx):unsigned long) [line 78, column 10]\n n$45=_fun_DispatchEx_init(n$44:DispatchEx*) virtual [line 78, column 9]\n *&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_barrier_example_a:DispatchEx*=n$45 [line 78, column 5]\n " shape="box"] "objc_blockDispatchEx_dispatch_barrier_example_6.644987ff1e6d0e0008d4ccdb7e8538ee_4" [label="4: BinaryOperatorStmt: Assign \n n$49=_fun___objc_alloc_no_fail(sizeof(t=DispatchEx):unsigned long) [line 78, column 10]\n n$50=_fun_DispatchEx_init(n$49:DispatchEx*) virtual [line 78, column 9]\n *&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_barrier_example_a:DispatchEx*=n$50 [line 78, column 5]\n " shape="box"]
"__objc_anonymous_block_DispatchEx_dispatch_barrier_example______6.f3e27d4badebf4adf9313b39c9688c30_4" -> "__objc_anonymous_block_DispatchEx_dispatch_barrier_example______6.f3e27d4badebf4adf9313b39c9688c30_3" ; "objc_blockDispatchEx_dispatch_barrier_example_6.644987ff1e6d0e0008d4ccdb7e8538ee_4" -> "objc_blockDispatchEx_dispatch_barrier_example_6.644987ff1e6d0e0008d4ccdb7e8538ee_3" ;
"init#DispatchEx#instance.04117ac30ba5664de2d577c4aa97d118_1" [label="1: Start DispatchEx_init\nFormals: self:DispatchEx*\nLocals: \n DECLARE_LOCALS(&return); [line 20, column 1]\n " color=yellow style=filled] "init#DispatchEx#instance.04117ac30ba5664de2d577c4aa97d118_1" [label="1: Start DispatchEx_init\nFormals: self:DispatchEx*\nLocals: \n DECLARE_LOCALS(&return); [line 20, column 1]\n " color=yellow style=filled]

@ -11,7 +11,7 @@ digraph iCFG {
"DispatchInMacroTest.f5d56763274a479d06265a2f9562bef1_3" -> "DispatchInMacroTest.f5d56763274a479d06265a2f9562bef1_5" ; "DispatchInMacroTest.f5d56763274a479d06265a2f9562bef1_3" -> "DispatchInMacroTest.f5d56763274a479d06265a2f9562bef1_5" ;
"DispatchInMacroTest.f5d56763274a479d06265a2f9562bef1_4" [label="4: Call (_fun___objc_anonymous_block_DispatchInMacroTest______1) \n DECLARE_LOCALS(&__objc_anonymous_block_DispatchInMacroTest______1); [line 23, column 10]\n n$3=_fun___objc_alloc_no_fail(sizeof(t=__objc_anonymous_block_DispatchInMacroTest______1):unsigned long) [line 23, column 10]\n *&__objc_anonymous_block_DispatchInMacroTest______1:__objc_anonymous_block_DispatchInMacroTest______1=n$3 [line 23, column 10]\n n$4=*&#GB<codetoanalyze/objc/shared/block/dispatch_in_macro.m>$DispatchInMacroTest_static_storage:NSObject* [line 23, column 10]\n *n$3.DispatchInMacroTest_static_storage:NSObject*=n$4 [line 23, column 10]\n n$5=(_fun___objc_anonymous_block_DispatchInMacroTest______1)() [line 23, column 10]\n " shape="box"] "DispatchInMacroTest.f5d56763274a479d06265a2f9562bef1_4" [label="4: Call (_fun_objc_blockDispatchInMacroTest_1) \n DECLARE_LOCALS(&0$?%__sil_tmp_block_heap_var_n$4); [line 23, column 10]\n n$3=_fun___objc_alloc_no_fail(sizeof(t=Objc_blockDispatchInMacroTest_1Class):unsigned long) [line 23, column 10]\n *&0$?%__sil_tmp_block_heap_var_n$4:Objc_blockDispatchInMacroTest_1Class=n$3 [line 23, column 10]\n n$5=*&#GB<codetoanalyze/objc/shared/block/dispatch_in_macro.m>$DispatchInMacroTest_static_storage:NSObject* [line 23, column 10]\n *n$3.DispatchInMacroTest_static_storage:NSObject*=n$5 [line 23, column 10]\n n$6=(_fun_objc_blockDispatchInMacroTest_1)() [line 23, column 10]\n " shape="box"]
"DispatchInMacroTest.f5d56763274a479d06265a2f9562bef1_4" -> "DispatchInMacroTest.f5d56763274a479d06265a2f9562bef1_3" ; "DispatchInMacroTest.f5d56763274a479d06265a2f9562bef1_4" -> "DispatchInMacroTest.f5d56763274a479d06265a2f9562bef1_3" ;
@ -19,15 +19,15 @@ digraph iCFG {
"DispatchInMacroTest.f5d56763274a479d06265a2f9562bef1_5" -> "DispatchInMacroTest.f5d56763274a479d06265a2f9562bef1_2" ; "DispatchInMacroTest.f5d56763274a479d06265a2f9562bef1_5" -> "DispatchInMacroTest.f5d56763274a479d06265a2f9562bef1_2" ;
"__objc_anonymous_block_DispatchInMacroTest______1.db6c315d2cd0e3514d444428887908e2_1" [label="1: Start __objc_anonymous_block_DispatchInMacroTest______1\nFormals: \nLocals: \n DECLARE_LOCALS(&return); [line 23, column 10]\n " color=yellow style=filled] "objc_blockDispatchInMacroTest_1.0a2ff27838c52acc175e58f653e6eaad_1" [label="1: Start objc_blockDispatchInMacroTest_1\nFormals: \nLocals: \n DECLARE_LOCALS(&return); [line 23, column 10]\n " color=yellow style=filled]
"__objc_anonymous_block_DispatchInMacroTest______1.db6c315d2cd0e3514d444428887908e2_1" -> "__objc_anonymous_block_DispatchInMacroTest______1.db6c315d2cd0e3514d444428887908e2_3" ; "objc_blockDispatchInMacroTest_1.0a2ff27838c52acc175e58f653e6eaad_1" -> "objc_blockDispatchInMacroTest_1.0a2ff27838c52acc175e58f653e6eaad_3" ;
"__objc_anonymous_block_DispatchInMacroTest______1.db6c315d2cd0e3514d444428887908e2_2" [label="2: Exit __objc_anonymous_block_DispatchInMacroTest______1 \n " color=yellow style=filled] "objc_blockDispatchInMacroTest_1.0a2ff27838c52acc175e58f653e6eaad_2" [label="2: Exit objc_blockDispatchInMacroTest_1 \n " color=yellow style=filled]
"__objc_anonymous_block_DispatchInMacroTest______1.db6c315d2cd0e3514d444428887908e2_3" [label="3: BinaryOperatorStmt: Assign \n n$1=_fun___objc_alloc_no_fail(sizeof(t=NSObject):unsigned long) [line 23, column 10]\n n$2=_fun_NSObject_init(n$1:NSObject*) virtual [line 23, column 10]\n *&#GB<codetoanalyze/objc/shared/block/dispatch_in_macro.m>$DispatchInMacroTest_static_storage:NSObject*=n$2 [line 23, column 10]\n " shape="box"] "objc_blockDispatchInMacroTest_1.0a2ff27838c52acc175e58f653e6eaad_3" [label="3: BinaryOperatorStmt: Assign \n n$1=_fun___objc_alloc_no_fail(sizeof(t=NSObject):unsigned long) [line 23, column 10]\n n$2=_fun_NSObject_init(n$1:NSObject*) virtual [line 23, column 10]\n *&#GB<codetoanalyze/objc/shared/block/dispatch_in_macro.m>$DispatchInMacroTest_static_storage:NSObject*=n$2 [line 23, column 10]\n " shape="box"]
"__objc_anonymous_block_DispatchInMacroTest______1.db6c315d2cd0e3514d444428887908e2_3" -> "__objc_anonymous_block_DispatchInMacroTest______1.db6c315d2cd0e3514d444428887908e2_2" ; "objc_blockDispatchInMacroTest_1.0a2ff27838c52acc175e58f653e6eaad_3" -> "objc_blockDispatchInMacroTest_1.0a2ff27838c52acc175e58f653e6eaad_2" ;
} }

@ -188,15 +188,15 @@ digraph iCFG {
"blockCapturedVarLeak#MemoryLeakExample#instance.53bb018bc84d6a696dc756e20b5b3f52_3" -> "blockCapturedVarLeak#MemoryLeakExample#instance.53bb018bc84d6a696dc756e20b5b3f52_2" ; "blockCapturedVarLeak#MemoryLeakExample#instance.53bb018bc84d6a696dc756e20b5b3f52_3" -> "blockCapturedVarLeak#MemoryLeakExample#instance.53bb018bc84d6a696dc756e20b5b3f52_2" ;
"blockCapturedVarLeak#MemoryLeakExample#instance.53bb018bc84d6a696dc756e20b5b3f52_4" [label="4: DeclStmt \n DECLARE_LOCALS(&__objc_anonymous_block_MemoryLeakExample_blockCapturedVarLeak______1); [line 96, column 22]\n n$45=_fun___objc_alloc_no_fail(sizeof(t=__objc_anonymous_block_MemoryLeakExample_blockCapturedVarLeak______1):unsigned long) [line 96, column 22]\n *&__objc_anonymous_block_MemoryLeakExample_blockCapturedVarLeak______1:__objc_anonymous_block_MemoryLeakExample_blockCapturedVarLeak______1=n$45 [line 96, column 22]\n n$46=*&x:int* [line 96, column 22]\n *n$45.x:int*=n$46 [line 96, column 22]\n n$42=*&x:int* [line 96, column 22]\n *&blk:_fn_(*)=(_fun___objc_anonymous_block_MemoryLeakExample_blockCapturedVarLeak______1,n$42) [line 96, column 3]\n " shape="box"] "blockCapturedVarLeak#MemoryLeakExample#instance.53bb018bc84d6a696dc756e20b5b3f52_4" [label="4: DeclStmt \n DECLARE_LOCALS(&0$?%__sil_tmp_block_heap_var_n$46); [line 96, column 22]\n n$45=_fun___objc_alloc_no_fail(sizeof(t=Objc_blockMemoryLeakExample_blockCapturedVarLeak_1Class):unsigned long) [line 96, column 22]\n *&0$?%__sil_tmp_block_heap_var_n$46:Objc_blockMemoryLeakExample_blockCapturedVarLeak_1Class=n$45 [line 96, column 22]\n n$47=*&x:int* [line 96, column 22]\n *n$45.x:int*=n$47 [line 96, column 22]\n n$42=*&x:int* [line 96, column 22]\n *&blk:_fn_(*)=(_fun_objc_blockMemoryLeakExample_blockCapturedVarLeak_1,n$42) [line 96, column 3]\n " shape="box"]
"blockCapturedVarLeak#MemoryLeakExample#instance.53bb018bc84d6a696dc756e20b5b3f52_4" -> "blockCapturedVarLeak#MemoryLeakExample#instance.53bb018bc84d6a696dc756e20b5b3f52_3" ; "blockCapturedVarLeak#MemoryLeakExample#instance.53bb018bc84d6a696dc756e20b5b3f52_4" -> "blockCapturedVarLeak#MemoryLeakExample#instance.53bb018bc84d6a696dc756e20b5b3f52_3" ;
"blockCapturedVarLeak#MemoryLeakExample#instance.53bb018bc84d6a696dc756e20b5b3f52_5" [label="5: BinaryOperatorStmt: Assign \n n$47=*&x:int* [line 95, column 4]\n *n$47:int=2 [line 95, column 3]\n " shape="box"] "blockCapturedVarLeak#MemoryLeakExample#instance.53bb018bc84d6a696dc756e20b5b3f52_5" [label="5: BinaryOperatorStmt: Assign \n n$48=*&x:int* [line 95, column 4]\n *n$48:int=2 [line 95, column 3]\n " shape="box"]
"blockCapturedVarLeak#MemoryLeakExample#instance.53bb018bc84d6a696dc756e20b5b3f52_5" -> "blockCapturedVarLeak#MemoryLeakExample#instance.53bb018bc84d6a696dc756e20b5b3f52_4" ; "blockCapturedVarLeak#MemoryLeakExample#instance.53bb018bc84d6a696dc756e20b5b3f52_5" -> "blockCapturedVarLeak#MemoryLeakExample#instance.53bb018bc84d6a696dc756e20b5b3f52_4" ;
"blockCapturedVarLeak#MemoryLeakExample#instance.53bb018bc84d6a696dc756e20b5b3f52_6" [label="6: DeclStmt \n n$48=_fun_malloc_no_fail(sizeof(t=int;nbytes=4):int) [line 94, column 12]\n *&x:int*=n$48 [line 94, column 3]\n " shape="box"] "blockCapturedVarLeak#MemoryLeakExample#instance.53bb018bc84d6a696dc756e20b5b3f52_6" [label="6: DeclStmt \n n$49=_fun_malloc_no_fail(sizeof(t=int;nbytes=4):int) [line 94, column 12]\n *&x:int*=n$49 [line 94, column 3]\n " shape="box"]
"blockCapturedVarLeak#MemoryLeakExample#instance.53bb018bc84d6a696dc756e20b5b3f52_6" -> "blockCapturedVarLeak#MemoryLeakExample#instance.53bb018bc84d6a696dc756e20b5b3f52_5" ; "blockCapturedVarLeak#MemoryLeakExample#instance.53bb018bc84d6a696dc756e20b5b3f52_6" -> "blockCapturedVarLeak#MemoryLeakExample#instance.53bb018bc84d6a696dc756e20b5b3f52_5" ;
@ -207,19 +207,19 @@ digraph iCFG {
"blockFreeNoLeakTODO#MemoryLeakExample#instance.745cca07ccdb517734d79c9d7a1eaed8_2" [label="2: Exit MemoryLeakExample_blockFreeNoLeakTODO \n " color=yellow style=filled] "blockFreeNoLeakTODO#MemoryLeakExample#instance.745cca07ccdb517734d79c9d7a1eaed8_2" [label="2: Exit MemoryLeakExample_blockFreeNoLeakTODO \n " color=yellow style=filled]
"blockFreeNoLeakTODO#MemoryLeakExample#instance.745cca07ccdb517734d79c9d7a1eaed8_3" [label="3: Return Stmt \n n$49=*&blk:_fn_(*) [line 110, column 10]\n n$50=n$49() [line 110, column 10]\n *&return:int=n$50 [line 110, column 3]\n " shape="box"] "blockFreeNoLeakTODO#MemoryLeakExample#instance.745cca07ccdb517734d79c9d7a1eaed8_3" [label="3: Return Stmt \n n$50=*&blk:_fn_(*) [line 110, column 10]\n n$51=n$50() [line 110, column 10]\n *&return:int=n$51 [line 110, column 3]\n " shape="box"]
"blockFreeNoLeakTODO#MemoryLeakExample#instance.745cca07ccdb517734d79c9d7a1eaed8_3" -> "blockFreeNoLeakTODO#MemoryLeakExample#instance.745cca07ccdb517734d79c9d7a1eaed8_2" ; "blockFreeNoLeakTODO#MemoryLeakExample#instance.745cca07ccdb517734d79c9d7a1eaed8_3" -> "blockFreeNoLeakTODO#MemoryLeakExample#instance.745cca07ccdb517734d79c9d7a1eaed8_2" ;
"blockFreeNoLeakTODO#MemoryLeakExample#instance.745cca07ccdb517734d79c9d7a1eaed8_4" [label="4: DeclStmt \n DECLARE_LOCALS(&__objc_anonymous_block_MemoryLeakExample_blockFreeNoLeakTODO______2); [line 105, column 22]\n n$56=_fun___objc_alloc_no_fail(sizeof(t=__objc_anonymous_block_MemoryLeakExample_blockFreeNoLeakTODO______2):unsigned long) [line 105, column 22]\n *&__objc_anonymous_block_MemoryLeakExample_blockFreeNoLeakTODO______2:__objc_anonymous_block_MemoryLeakExample_blockFreeNoLeakTODO______2=n$56 [line 105, column 22]\n n$57=*&x:int* [line 105, column 22]\n *n$56.x:int*=n$57 [line 105, column 22]\n n$51=*&x:int* [line 105, column 22]\n *&blk:_fn_(*)=(_fun___objc_anonymous_block_MemoryLeakExample_blockFreeNoLeakTODO______2,n$51) [line 105, column 3]\n " shape="box"] "blockFreeNoLeakTODO#MemoryLeakExample#instance.745cca07ccdb517734d79c9d7a1eaed8_4" [label="4: DeclStmt \n DECLARE_LOCALS(&0$?%__sil_tmp_block_heap_var_n$58); [line 105, column 22]\n n$57=_fun___objc_alloc_no_fail(sizeof(t=Objc_blockMemoryLeakExample_blockFreeNoLeakTODO_2Class):unsigned long) [line 105, column 22]\n *&0$?%__sil_tmp_block_heap_var_n$58:Objc_blockMemoryLeakExample_blockFreeNoLeakTODO_2Class=n$57 [line 105, column 22]\n n$59=*&x:int* [line 105, column 22]\n *n$57.x:int*=n$59 [line 105, column 22]\n n$52=*&x:int* [line 105, column 22]\n *&blk:_fn_(*)=(_fun_objc_blockMemoryLeakExample_blockFreeNoLeakTODO_2,n$52) [line 105, column 3]\n " shape="box"]
"blockFreeNoLeakTODO#MemoryLeakExample#instance.745cca07ccdb517734d79c9d7a1eaed8_4" -> "blockFreeNoLeakTODO#MemoryLeakExample#instance.745cca07ccdb517734d79c9d7a1eaed8_3" ; "blockFreeNoLeakTODO#MemoryLeakExample#instance.745cca07ccdb517734d79c9d7a1eaed8_4" -> "blockFreeNoLeakTODO#MemoryLeakExample#instance.745cca07ccdb517734d79c9d7a1eaed8_3" ;
"blockFreeNoLeakTODO#MemoryLeakExample#instance.745cca07ccdb517734d79c9d7a1eaed8_5" [label="5: BinaryOperatorStmt: Assign \n n$58=*&x:int* [line 104, column 4]\n *n$58:int=2 [line 104, column 3]\n " shape="box"] "blockFreeNoLeakTODO#MemoryLeakExample#instance.745cca07ccdb517734d79c9d7a1eaed8_5" [label="5: BinaryOperatorStmt: Assign \n n$60=*&x:int* [line 104, column 4]\n *n$60:int=2 [line 104, column 3]\n " shape="box"]
"blockFreeNoLeakTODO#MemoryLeakExample#instance.745cca07ccdb517734d79c9d7a1eaed8_5" -> "blockFreeNoLeakTODO#MemoryLeakExample#instance.745cca07ccdb517734d79c9d7a1eaed8_4" ; "blockFreeNoLeakTODO#MemoryLeakExample#instance.745cca07ccdb517734d79c9d7a1eaed8_5" -> "blockFreeNoLeakTODO#MemoryLeakExample#instance.745cca07ccdb517734d79c9d7a1eaed8_4" ;
"blockFreeNoLeakTODO#MemoryLeakExample#instance.745cca07ccdb517734d79c9d7a1eaed8_6" [label="6: DeclStmt \n n$59=_fun_malloc_no_fail(sizeof(t=int;nbytes=4):int) [line 103, column 12]\n *&x:int*=n$59 [line 103, column 3]\n " shape="box"] "blockFreeNoLeakTODO#MemoryLeakExample#instance.745cca07ccdb517734d79c9d7a1eaed8_6" [label="6: DeclStmt \n n$61=_fun_malloc_no_fail(sizeof(t=int;nbytes=4):int) [line 103, column 12]\n *&x:int*=n$61 [line 103, column 3]\n " shape="box"]
"blockFreeNoLeakTODO#MemoryLeakExample#instance.745cca07ccdb517734d79c9d7a1eaed8_6" -> "blockFreeNoLeakTODO#MemoryLeakExample#instance.745cca07ccdb517734d79c9d7a1eaed8_5" ; "blockFreeNoLeakTODO#MemoryLeakExample#instance.745cca07ccdb517734d79c9d7a1eaed8_6" -> "blockFreeNoLeakTODO#MemoryLeakExample#instance.745cca07ccdb517734d79c9d7a1eaed8_5" ;
@ -245,34 +245,34 @@ digraph iCFG {
"test2:#MemoryLeakExample#class.4d854f1c80289cc8e5422233831af105_3" -> "test2:#MemoryLeakExample#class.4d854f1c80289cc8e5422233831af105_2" ; "test2:#MemoryLeakExample#class.4d854f1c80289cc8e5422233831af105_3" -> "test2:#MemoryLeakExample#class.4d854f1c80289cc8e5422233831af105_2" ;
"__objc_anonymous_block_MemoryLeakExample_blockFreeNoLeakTODO______2.bd7ef2b4ce24013b799557ec57c8b268_1" [label="1: Start __objc_anonymous_block_MemoryLeakExample_blockFreeNoLeakTODO______2\nFormals: x:int*\nLocals: i:int\nCaptured: x:int* \n DECLARE_LOCALS(&return,&i); [line 105, column 22]\n " color=yellow style=filled] "objc_blockMemoryLeakExample_blockFreeNoLeakTODO_2.75d33bce4351c16a4939470302c57868_1" [label="1: Start objc_blockMemoryLeakExample_blockFreeNoLeakTODO_2\nFormals: x:int*\nLocals: i:int\nCaptured: x:int* \n DECLARE_LOCALS(&return,&i); [line 105, column 22]\n " color=yellow style=filled]
"__objc_anonymous_block_MemoryLeakExample_blockFreeNoLeakTODO______2.bd7ef2b4ce24013b799557ec57c8b268_1" -> "__objc_anonymous_block_MemoryLeakExample_blockFreeNoLeakTODO______2.bd7ef2b4ce24013b799557ec57c8b268_5" ; "objc_blockMemoryLeakExample_blockFreeNoLeakTODO_2.75d33bce4351c16a4939470302c57868_1" -> "objc_blockMemoryLeakExample_blockFreeNoLeakTODO_2.75d33bce4351c16a4939470302c57868_5" ;
"__objc_anonymous_block_MemoryLeakExample_blockFreeNoLeakTODO______2.bd7ef2b4ce24013b799557ec57c8b268_2" [label="2: Exit __objc_anonymous_block_MemoryLeakExample_blockFreeNoLeakTODO______2 \n " color=yellow style=filled] "objc_blockMemoryLeakExample_blockFreeNoLeakTODO_2.75d33bce4351c16a4939470302c57868_2" [label="2: Exit objc_blockMemoryLeakExample_blockFreeNoLeakTODO_2 \n " color=yellow style=filled]
"__objc_anonymous_block_MemoryLeakExample_blockFreeNoLeakTODO______2.bd7ef2b4ce24013b799557ec57c8b268_3" [label="3: Return Stmt \n n$52=*&i:int [line 108, column 12]\n *&return:int=n$52 [line 108, column 5]\n " shape="box"] "objc_blockMemoryLeakExample_blockFreeNoLeakTODO_2.75d33bce4351c16a4939470302c57868_3" [label="3: Return Stmt \n n$53=*&i:int [line 108, column 12]\n *&return:int=n$53 [line 108, column 5]\n " shape="box"]
"__objc_anonymous_block_MemoryLeakExample_blockFreeNoLeakTODO______2.bd7ef2b4ce24013b799557ec57c8b268_3" -> "__objc_anonymous_block_MemoryLeakExample_blockFreeNoLeakTODO______2.bd7ef2b4ce24013b799557ec57c8b268_2" ; "objc_blockMemoryLeakExample_blockFreeNoLeakTODO_2.75d33bce4351c16a4939470302c57868_3" -> "objc_blockMemoryLeakExample_blockFreeNoLeakTODO_2.75d33bce4351c16a4939470302c57868_2" ;
"__objc_anonymous_block_MemoryLeakExample_blockFreeNoLeakTODO______2.bd7ef2b4ce24013b799557ec57c8b268_4" [label="4: Call _fun_free \n n$53=*&x:int* [line 107, column 10]\n _fun_free(n$53:void*) [line 107, column 5]\n " shape="box"] "objc_blockMemoryLeakExample_blockFreeNoLeakTODO_2.75d33bce4351c16a4939470302c57868_4" [label="4: Call _fun_free \n n$54=*&x:int* [line 107, column 10]\n _fun_free(n$54:void*) [line 107, column 5]\n " shape="box"]
"__objc_anonymous_block_MemoryLeakExample_blockFreeNoLeakTODO______2.bd7ef2b4ce24013b799557ec57c8b268_4" -> "__objc_anonymous_block_MemoryLeakExample_blockFreeNoLeakTODO______2.bd7ef2b4ce24013b799557ec57c8b268_3" ; "objc_blockMemoryLeakExample_blockFreeNoLeakTODO_2.75d33bce4351c16a4939470302c57868_4" -> "objc_blockMemoryLeakExample_blockFreeNoLeakTODO_2.75d33bce4351c16a4939470302c57868_3" ;
"__objc_anonymous_block_MemoryLeakExample_blockFreeNoLeakTODO______2.bd7ef2b4ce24013b799557ec57c8b268_5" [label="5: DeclStmt \n n$54=*&x:int* [line 106, column 14]\n n$55=*n$54:int [line 106, column 13]\n *&i:int=n$55 [line 106, column 5]\n " shape="box"] "objc_blockMemoryLeakExample_blockFreeNoLeakTODO_2.75d33bce4351c16a4939470302c57868_5" [label="5: DeclStmt \n n$55=*&x:int* [line 106, column 14]\n n$56=*n$55:int [line 106, column 13]\n *&i:int=n$56 [line 106, column 5]\n " shape="box"]
"__objc_anonymous_block_MemoryLeakExample_blockFreeNoLeakTODO______2.bd7ef2b4ce24013b799557ec57c8b268_5" -> "__objc_anonymous_block_MemoryLeakExample_blockFreeNoLeakTODO______2.bd7ef2b4ce24013b799557ec57c8b268_4" ; "objc_blockMemoryLeakExample_blockFreeNoLeakTODO_2.75d33bce4351c16a4939470302c57868_5" -> "objc_blockMemoryLeakExample_blockFreeNoLeakTODO_2.75d33bce4351c16a4939470302c57868_4" ;
"__objc_anonymous_block_MemoryLeakExample_blockCapturedVarLeak______1.568a53eb7ba532f460d3cabf046ca2b1_1" [label="1: Start __objc_anonymous_block_MemoryLeakExample_blockCapturedVarLeak______1\nFormals: x:int*\nLocals: \nCaptured: x:int* \n DECLARE_LOCALS(&return); [line 96, column 22]\n " color=yellow style=filled] "objc_blockMemoryLeakExample_blockCapturedVarLeak_1.b434313b336514058f60e55fc6a4a73f_1" [label="1: Start objc_blockMemoryLeakExample_blockCapturedVarLeak_1\nFormals: x:int*\nLocals: \nCaptured: x:int* \n DECLARE_LOCALS(&return); [line 96, column 22]\n " color=yellow style=filled]
"__objc_anonymous_block_MemoryLeakExample_blockCapturedVarLeak______1.568a53eb7ba532f460d3cabf046ca2b1_1" -> "__objc_anonymous_block_MemoryLeakExample_blockCapturedVarLeak______1.568a53eb7ba532f460d3cabf046ca2b1_3" ; "objc_blockMemoryLeakExample_blockCapturedVarLeak_1.b434313b336514058f60e55fc6a4a73f_1" -> "objc_blockMemoryLeakExample_blockCapturedVarLeak_1.b434313b336514058f60e55fc6a4a73f_3" ;
"__objc_anonymous_block_MemoryLeakExample_blockCapturedVarLeak______1.568a53eb7ba532f460d3cabf046ca2b1_2" [label="2: Exit __objc_anonymous_block_MemoryLeakExample_blockCapturedVarLeak______1 \n " color=yellow style=filled] "objc_blockMemoryLeakExample_blockCapturedVarLeak_1.b434313b336514058f60e55fc6a4a73f_2" [label="2: Exit objc_blockMemoryLeakExample_blockCapturedVarLeak_1 \n " color=yellow style=filled]
"__objc_anonymous_block_MemoryLeakExample_blockCapturedVarLeak______1.568a53eb7ba532f460d3cabf046ca2b1_3" [label="3: Return Stmt \n n$43=*&x:int* [line 97, column 13]\n n$44=*n$43:int [line 97, column 12]\n *&return:int=n$44 [line 97, column 5]\n " shape="box"] "objc_blockMemoryLeakExample_blockCapturedVarLeak_1.b434313b336514058f60e55fc6a4a73f_3" [label="3: Return Stmt \n n$43=*&x:int* [line 97, column 13]\n n$44=*n$43:int [line 97, column 12]\n *&return:int=n$44 [line 97, column 5]\n " shape="box"]
"__objc_anonymous_block_MemoryLeakExample_blockCapturedVarLeak______1.568a53eb7ba532f460d3cabf046ca2b1_3" -> "__objc_anonymous_block_MemoryLeakExample_blockCapturedVarLeak______1.568a53eb7ba532f460d3cabf046ca2b1_2" ; "objc_blockMemoryLeakExample_blockCapturedVarLeak_1.b434313b336514058f60e55fc6a4a73f_3" -> "objc_blockMemoryLeakExample_blockCapturedVarLeak_1.b434313b336514058f60e55fc6a4a73f_2" ;
} }

@ -4,8 +4,8 @@ codetoanalyze/objcpp/linters/componentkit/FactoryFunctionTest.mm, ExampleFunctio
codetoanalyze/objcpp/linters/componentkit/InitializerWithSideEffectTest.mm, FooComponent_newDerp, 19, COMPONENT_INITIALIZER_WITH_SIDE_EFFECTS, [] codetoanalyze/objcpp/linters/componentkit/InitializerWithSideEffectTest.mm, FooComponent_newDerp, 19, COMPONENT_INITIALIZER_WITH_SIDE_EFFECTS, []
codetoanalyze/objcpp/linters/componentkit/InitializerWithSideEffectTest.mm, FooComponent_newDerp, 24, COMPONENT_INITIALIZER_WITH_SIDE_EFFECTS, [] codetoanalyze/objcpp/linters/componentkit/InitializerWithSideEffectTest.mm, FooComponent_newDerp, 24, COMPONENT_INITIALIZER_WITH_SIDE_EFFECTS, []
codetoanalyze/objcpp/linters/componentkit/InitializerWithSideEffectTest.mm, FooComponent_newDerp, 29, COMPONENT_INITIALIZER_WITH_SIDE_EFFECTS, [] codetoanalyze/objcpp/linters/componentkit/InitializerWithSideEffectTest.mm, FooComponent_newDerp, 29, COMPONENT_INITIALIZER_WITH_SIDE_EFFECTS, []
codetoanalyze/objcpp/linters/componentkit/InitializerWithSideEffectTest.mm, __objc_anonymous_block_______1, 37, COMPONENT_INITIALIZER_WITH_SIDE_EFFECTS, [] codetoanalyze/objcpp/linters/componentkit/InitializerWithSideEffectTest.mm, objc_block_1, 37, COMPONENT_INITIALIZER_WITH_SIDE_EFFECTS, []
codetoanalyze/objcpp/linters/componentkit/InitializerWithSideEffectTest.mm, __objc_anonymous_block_______2, 41, COMPONENT_INITIALIZER_WITH_SIDE_EFFECTS, [] codetoanalyze/objcpp/linters/componentkit/InitializerWithSideEffectTest.mm, objc_block_2, 41, COMPONENT_INITIALIZER_WITH_SIDE_EFFECTS, []
codetoanalyze/objcpp/linters/componentkit/MultipleFactoryMethodsTest.h, Linters_dummy_method, 20, COMPONENT_WITH_MULTIPLE_FACTORY_METHODS, [] codetoanalyze/objcpp/linters/componentkit/MultipleFactoryMethodsTest.h, Linters_dummy_method, 20, COMPONENT_WITH_MULTIPLE_FACTORY_METHODS, []
codetoanalyze/objcpp/linters/componentkit/MultipleFactoryMethodsTest.h, Linters_dummy_method, 32, COMPONENT_WITH_MULTIPLE_FACTORY_METHODS, [] codetoanalyze/objcpp/linters/componentkit/MultipleFactoryMethodsTest.h, Linters_dummy_method, 32, COMPONENT_WITH_MULTIPLE_FACTORY_METHODS, []
codetoanalyze/objcpp/linters/componentkit/MultipleFactoryMethodsTest.h, Linters_dummy_method, 55, COMPONENT_WITH_MULTIPLE_FACTORY_METHODS, [] codetoanalyze/objcpp/linters/componentkit/MultipleFactoryMethodsTest.h, Linters_dummy_method, 55, COMPONENT_WITH_MULTIPLE_FACTORY_METHODS, []

Loading…
Cancel
Save