[IR] Fix the function hashable_name for ObjC methods

Summary:
This function had been computing the name for ObjC methods wrong, with only the class name. This was causing wrong error messages in Pulse.

The main issue was that `Procname.to_simplified_string` was writing `Classname::methodname` for ObjC methods, which is not the convention. This confused the `hashable_name` funtion. So changing the method name to `Classname.methodname` which is more standard, and this also fixes `hashable_name`.

Reviewed By: ngorogiannis, jvillard

Differential Revision: D21570880

fbshipit-source-id: 13ed62cf8
master
Dulma Churchill 5 years ago committed by Facebook GitHub Bot
parent f80f84525a
commit 3cdb9f322e

@ -313,13 +313,14 @@ module ObjC_Cpp = struct
let pp verbosity fmt osig =
let sep = if is_objc_method osig then "." else "::" in
match verbosity with
| Simple ->
F.pp_print_string fmt osig.method_name
| Non_verbose ->
F.fprintf fmt "%s::%s" (Typ.Name.name osig.class_name) osig.method_name
F.fprintf fmt "%s%s%s" (Typ.Name.name osig.class_name) sep osig.method_name
| Verbose ->
F.fprintf fmt "%s::%s%a%a" (Typ.Name.name osig.class_name) osig.method_name
F.fprintf fmt "%s%s%s%a%a" (Typ.Name.name osig.class_name) sep osig.method_name
Parameter.pp_parameters osig.parameters pp_verbose_kind osig.kind
@ -640,12 +641,12 @@ let hashable_name proc_name =
Str.global_replace java_inner_class_prefix_regex "$_" name
| exception Caml.Not_found ->
name )
| ObjC_Cpp m when ObjC_Cpp.is_objc_method m ->
| ObjC_Cpp osig when ObjC_Cpp.is_objc_method osig ->
(* In Objective C, the list of parameters is part of the method name. To prevent the bug
hash to change when a parameter is introduced or removed, only the part of the name
before the first colon is used for the bug hash *)
let name = F.asprintf "%a" (pp_simplified_string ~withclass:true) proc_name in
List.hd_exn (String.split_on_chars name ~on:[':'])
List.hd_exn (String.split name ~on:':')
| _ ->
(* Other cases for C and C++ method names *)
F.asprintf "%a" (pp_simplified_string ~withclass:true) proc_name

@ -21,5 +21,5 @@ TestComponentKitAnalytics.mm, Linters_dummy_method, 19, COMPONENT_FILE_LINE_COUN
TestComponentKitAnalytics.mm, Linters_dummy_method, 20, COMPONENT_FILE_LINE_COUNT, no_bucket, INFO, []
TestComponentKitAnalytics.mm, Linters_dummy_method, 21, COMPONENT_FILE_LINE_COUNT, no_bucket, INFO, []
TestComponentKitAnalytics.mm, Linters_dummy_method, 22, COMPONENT_FILE_LINE_COUNT, no_bucket, INFO, []
TestComponentKitAnalytics.mm, SomeClass::new, 14, COMPONENT_FILE_CYCLOMATIC_COMPLEXITY, no_bucket, INFO, []
TestComponentKitAnalytics.mm, SomeClass::new, 16, COMPONENT_FILE_CYCLOMATIC_COMPLEXITY, no_bucket, INFO, []
TestComponentKitAnalytics.mm, SomeClass.new, 14, COMPONENT_FILE_CYCLOMATIC_COMPLEXITY, no_bucket, INFO, []
TestComponentKitAnalytics.mm, SomeClass.new, 16, COMPONENT_FILE_CYCLOMATIC_COMPLEXITY, no_bucket, INFO, []

@ -1 +1 @@
TestIgnoreImports.mm, SomeClass::new, 20, MUTABLE_LOCAL_VARIABLE_IN_COMPONENT_FILE, no_bucket, ADVICE, []
TestIgnoreImports.mm, SomeClass.new, 20, MUTABLE_LOCAL_VARIABLE_IN_COMPONENT_FILE, no_bucket, ADVICE, []

@ -1 +1 @@
main.mm, SomeClass::new, 13, MUTABLE_LOCAL_VARIABLE_IN_COMPONENT_FILE, no_bucket, ADVICE, []
main.mm, SomeClass.new, 13, MUTABLE_LOCAL_VARIABLE_IN_COMPONENT_FILE, no_bucket, ADVICE, []

@ -1,5 +1,5 @@
build_systems/codetoanalyze/objc_getters_setters/B.m, B::calling_c_function_with_block_parameters_sets_fields_correctly, 5, NULL_DEREFERENCE, no_bucket, ERROR, [start of procedure calling_c_function_with_block_parameters_sets_fields_correctly,start of procedure calling_c_function_with_block_parameters,start of procedure c_function(),start of procedure block,return from a call to objc_blockB::calling_c_function_with_block_parameters_3,start of procedure block,return from a call to objc_blockB::calling_c_function_with_block_parameters_4,return from a call to c_function_objc_blockB::calling_c_function_with_block_parameters_3_objc_blockB::calling_c_function_with_block_parameters_4,return from a call to B::calling_c_function_with_block_parameters,Taking true branch]
build_systems/codetoanalyze/objc_getters_setters/B.m, B::calling_method_with_block_parameters_sets_fields_correctly, 5, NULL_DEREFERENCE, no_bucket, ERROR, [start of procedure calling_method_with_block_parameters_sets_fields_correctly,start of procedure calling_method_with_block_parameters,start of procedure foo:and:and_also:and:,start of procedure block,return from a call to objc_blockB::calling_method_with_block_parameters_1,start of procedure block,return from a call to objc_blockB::calling_method_with_block_parameters_2,return from a call to A::foo:and:and_also:and:_objc_blockB::calling_method_with_block_parameters_1_objc_blockB::calling_method_with_block_parameters_2,return from a call to B::calling_method_with_block_parameters,Taking true branch]
build_systems/codetoanalyze/objc_getters_setters/B.m, B::npe_no_bad_footprint_in_getter:, 3, NULL_DEREFERENCE, no_bucket, ERROR, [start of procedure npe_no_bad_footprint_in_getter:,Executing synthesized getter metadata]
build_systems/codetoanalyze/objc_getters_setters/B.m, B::npe_no_bad_footprint_in_setter:andMetadata:, 3, NULL_DEREFERENCE, no_bucket, ERROR, [start of procedure npe_no_bad_footprint_in_setter:andMetadata:,Executing synthesized setter setMetadata:]
build_systems/codetoanalyze/objc_getters_setters/B.m, B::npe_no_precondition_not_met:, 4, NULL_DEREFERENCE, no_bucket, ERROR, [start of procedure npe_no_precondition_not_met:,start of procedure infer_field_get_spec:,start of procedure withMetadata:,return from a call to A::withMetadata:,return from a call to B::infer_field_get_spec:,start of procedure getX,return from a call to A::getX,Taking true branch]
build_systems/codetoanalyze/objc_getters_setters/B.m, B.calling_c_function_with_block_parameters_sets_fields_correctly, 5, NULL_DEREFERENCE, no_bucket, ERROR, [start of procedure calling_c_function_with_block_parameters_sets_fields_correctly,start of procedure calling_c_function_with_block_parameters,start of procedure c_function(),start of procedure block,return from a call to objc_blockB.calling_c_function_with_block_parameters_3,start of procedure block,return from a call to objc_blockB.calling_c_function_with_block_parameters_4,return from a call to c_function_objc_blockB.calling_c_function_with_block_parameters_3_objc_blockB.calling_c_function_with_block_parameters_4,return from a call to B.calling_c_function_with_block_parameters,Taking true branch]
build_systems/codetoanalyze/objc_getters_setters/B.m, B.calling_method_with_block_parameters_sets_fields_correctly, 5, NULL_DEREFERENCE, no_bucket, ERROR, [start of procedure calling_method_with_block_parameters_sets_fields_correctly,start of procedure calling_method_with_block_parameters,start of procedure foo:and:and_also:and:,start of procedure block,return from a call to objc_blockB.calling_method_with_block_parameters_1,start of procedure block,return from a call to objc_blockB.calling_method_with_block_parameters_2,return from a call to A.foo:and:and_also:and:_objc_blockB.calling_method_with_block_parameters_1_objc_blockB.calling_method_with_block_parameters_2,return from a call to B.calling_method_with_block_parameters,Taking true branch]
build_systems/codetoanalyze/objc_getters_setters/B.m, B.npe_no_bad_footprint_in_getter:, 3, NULL_DEREFERENCE, no_bucket, ERROR, [start of procedure npe_no_bad_footprint_in_getter:,Executing synthesized getter metadata]
build_systems/codetoanalyze/objc_getters_setters/B.m, B.npe_no_bad_footprint_in_setter:andMetadata:, 3, NULL_DEREFERENCE, no_bucket, ERROR, [start of procedure npe_no_bad_footprint_in_setter:andMetadata:,Executing synthesized setter setMetadata:]
build_systems/codetoanalyze/objc_getters_setters/B.m, B.npe_no_precondition_not_met:, 4, NULL_DEREFERENCE, no_bucket, ERROR, [start of procedure npe_no_precondition_not_met:,start of procedure infer_field_get_spec:,start of procedure withMetadata:,return from a call to A.withMetadata:,return from a call to B.infer_field_get_spec:,start of procedure getX,return from a call to A.getX,Taking true branch]

@ -1,2 +1,2 @@
build_systems/codetoanalyze/objc_missing_fld/A.m, badOnlyOneNDA, 5, NULL_DEREFERENCE, no_bucket, ERROR, [start of procedure badOnlyOneNDA(),start of procedure predA(),start of procedure implOnlyFn:,return from a call to A::implOnlyFn:,Executing synthesized getter delegate,Condition is true,return from a call to predA,Taking false branch]
build_systems/codetoanalyze/objc_missing_fld/B.m, badOnlyOneNDB, 5, NULL_DEREFERENCE, no_bucket, ERROR, [start of procedure badOnlyOneNDB(),start of procedure predB(),start of procedure implOnlyFn:,return from a call to A::implOnlyFn:,Executing synthesized getter delegate,Condition is true,return from a call to predB,Taking false branch]
build_systems/codetoanalyze/objc_missing_fld/A.m, badOnlyOneNDA, 5, NULL_DEREFERENCE, no_bucket, ERROR, [start of procedure badOnlyOneNDA(),start of procedure predA(),start of procedure implOnlyFn:,return from a call to A.implOnlyFn:,Executing synthesized getter delegate,Condition is true,return from a call to predA,Taking false branch]
build_systems/codetoanalyze/objc_missing_fld/B.m, badOnlyOneNDB, 5, NULL_DEREFERENCE, no_bucket, ERROR, [start of procedure badOnlyOneNDB(),start of procedure predB(),start of procedure implOnlyFn:,return from a call to A.implOnlyFn:,Executing synthesized getter delegate,Condition is true,return from a call to predB,Taking false branch]

@ -1,4 +1,4 @@
build_systems/codetoanalyze/objc_retain_cycles_weak/TimeSpent.m, TimeSpent::init_bad, 2, RETAIN_CYCLE, no_bucket, ERROR, [start of procedure init_bad,Taking true branch,start of procedure setDataSourceStrong:,return from a call to ListAdapter::setDataSourceStrong:]
build_systems/codetoanalyze/objc_retain_cycles_weak/TimeSpent.m, TimeSpent::init_bad_ref, 3, RETAIN_CYCLE, no_bucket, ERROR, [start of procedure init_bad_ref,Taking true branch]
build_systems/codetoanalyze/objc_retain_cycles_weak/TimeSpent.m, TimeSpent::init_bad_ref2, 3, RETAIN_CYCLE, no_bucket, ERROR, [start of procedure init_bad_ref2,Taking true branch]
build_systems/codetoanalyze/objc_retain_cycles_weak/TimeSpent.m, retain_cycle_weak_bad, 4, RETAIN_CYCLE, no_bucket, ERROR, [start of procedure retain_cycle_weak_bad(),start of procedure init,start of procedure initWithDelegate:,Executing synthesized setter setDelegate:,return from a call to AnalyticsTimeSpent::initWithDelegate:,return from a call to TimeSpent::init,start of procedure initWithStrongDelegate:,return from a call to AnalyticsTimeSpent::initWithStrongDelegate:,start of procedure setAnalyticsTimeSpent:,return from a call to TimeSpent::setAnalyticsTimeSpent:]
build_systems/codetoanalyze/objc_retain_cycles_weak/TimeSpent.m, TimeSpent.init_bad, 2, RETAIN_CYCLE, no_bucket, ERROR, [start of procedure init_bad,Taking true branch,start of procedure setDataSourceStrong:,return from a call to ListAdapter.setDataSourceStrong:]
build_systems/codetoanalyze/objc_retain_cycles_weak/TimeSpent.m, TimeSpent.init_bad_ref, 3, RETAIN_CYCLE, no_bucket, ERROR, [start of procedure init_bad_ref,Taking true branch]
build_systems/codetoanalyze/objc_retain_cycles_weak/TimeSpent.m, TimeSpent.init_bad_ref2, 3, RETAIN_CYCLE, no_bucket, ERROR, [start of procedure init_bad_ref2,Taking true branch]
build_systems/codetoanalyze/objc_retain_cycles_weak/TimeSpent.m, retain_cycle_weak_bad, 4, RETAIN_CYCLE, no_bucket, ERROR, [start of procedure retain_cycle_weak_bad(),start of procedure init,start of procedure initWithDelegate:,Executing synthesized setter setDelegate:,return from a call to AnalyticsTimeSpent.initWithDelegate:,return from a call to TimeSpent.init,start of procedure initWithStrongDelegate:,return from a call to AnalyticsTimeSpent.initWithStrongDelegate:,start of procedure setAnalyticsTimeSpent:,return from a call to TimeSpent.setAnalyticsTimeSpent:]

@ -1,42 +1,42 @@
codetoanalyze/objc/biabduction/field_superclass/field.c, field_superclass_main, 3, RETAIN_CYCLE, no_bucket, ERROR, [start of procedure field_superclass_main()]
codetoanalyze/objc/biabduction/global_const/global_const.m, SimpleRoot::doSomethingBadWithDict:andString:, 3, NULL_DEREFERENCE, B2, ERROR, [start of procedure doSomethingBadWithDict:andString:,Message stringByAppendingString: with receiver nil returns nil.]
codetoanalyze/objc/biabduction/global_const/global_const.m, SimpleRoot::doSomethingOkWithDict:andString:, 3, NULL_DEREFERENCE, B2, ERROR, [start of procedure doSomethingOkWithDict:andString:,Message stringByAppendingString: with receiver nil returns nil.]
codetoanalyze/objc/biabduction/global_const/global_const.m, SimpleRoot.doSomethingBadWithDict:andString:, 3, NULL_DEREFERENCE, B2, ERROR, [start of procedure doSomethingBadWithDict:andString:,Message stringByAppendingString: with receiver nil returns nil.]
codetoanalyze/objc/biabduction/global_const/global_const.m, SimpleRoot.doSomethingOkWithDict:andString:, 3, NULL_DEREFERENCE, B2, ERROR, [start of procedure doSomethingOkWithDict:andString:,Message stringByAppendingString: with receiver nil returns nil.]
codetoanalyze/objc/biabduction/initialization/compound_literal.c, init_with_compound_literal, 2, DIVIDE_BY_ZERO, no_bucket, ERROR, [start of procedure init_with_compound_literal()]
codetoanalyze/objc/biabduction/memory_leaks_benchmark/RetainCycleStaticVar.m, RetainCSV::foo, 13, RETAIN_CYCLE, no_bucket, ERROR, [start of procedure foo,Executing synthesized setter setHandler:]
codetoanalyze/objc/biabduction/npe/null_returned_by_method.m, NullReturnedByMethodA::test1, 1, NULL_DEREFERENCE, B5, ERROR, [start of procedure test1,start of procedure test,return from a call to NullReturnedByMethodA::test]
codetoanalyze/objc/biabduction/memory_leaks_benchmark/RetainCycleStaticVar.m, RetainCSV.foo, 13, RETAIN_CYCLE, no_bucket, ERROR, [start of procedure foo,Executing synthesized setter setHandler:]
codetoanalyze/objc/biabduction/npe/null_returned_by_method.m, NullReturnedByMethodA.test1, 1, NULL_DEREFERENCE, B5, ERROR, [start of procedure test1,start of procedure test,return from a call to NullReturnedByMethodA.test]
codetoanalyze/objc/biabduction/procdescs/main.c, ProcdescMain, 3, MEMORY_LEAK, no_bucket, ERROR, [start of procedure ProcdescMain(),Skipping plusX:andY:: method has no implementation]
codetoanalyze/objc/biabduction/procdescs/main.c, call_nslog, 3, MEMORY_LEAK, no_bucket, ERROR, [start of procedure call_nslog(),Skipping NSLog(): method has no implementation]
codetoanalyze/objc/biabduction/property/main.c, property_main, 3, MEMORY_LEAK, no_bucket, ERROR, [start of procedure property_main(),Skipping aProperty: method has no implementation]
codetoanalyze/objc/biabduction/warnings/ParameterNotNullableExample.m, FBAudioRecorder::FBAudioInputCallbackChain:, 2, NULL_DEREFERENCE, B2, ERROR, [start of procedure FBAudioInputCallbackChain:,Executing synthesized getter recorder Message recordState with receiver nil returns nil.]
codetoanalyze/objc/biabduction/warnings/ParameterNotNullableExample.m, FBAudioRecorder::FBAudioInputCallbackChain:, 2, PARAMETER_NOT_NULL_CHECKED, B2, WARNING, [start of procedure FBAudioInputCallbackChain:,Message recorder with receiver nil returns nil. Message recordState with receiver nil returns nil.]
codetoanalyze/objc/biabduction/warnings/ParameterNotNullableExample.m, FBAudioRecorder::FBAudioInputCallbackField, 2, NULL_DEREFERENCE, B1, ERROR, [start of procedure FBAudioInputCallbackField,Message recordState with receiver nil returns nil.]
codetoanalyze/objc/biabduction/warnings/ParameterNotNullableExample.m, FBAudioRecorder::FBAudioInputCallbackSimple:, 2, PARAMETER_NOT_NULL_CHECKED, B2, WARNING, [start of procedure FBAudioInputCallbackSimple:,Message recordState with receiver nil returns nil.]
codetoanalyze/objc/biabduction/warnings/ParameterNotNullableExample.m, FBAudioRecorder::FBAudioInputCallbackSimpleAliasing:, 3, PARAMETER_NOT_NULL_CHECKED, B1, WARNING, [start of procedure FBAudioInputCallbackSimpleAliasing:,Message recordState with receiver nil returns nil.]
codetoanalyze/objc/biabduction/warnings/ParameterNotNullableExample.m, FBAudioRecorder::init, 2, NULL_DEREFERENCE, B2, ERROR, [start of procedure init]
codetoanalyze/objc/biabduction/warnings/ParameterNotNullableExample.m, FBAudioRecorder::test, 3, NULL_DEREFERENCE, B1, ERROR, [start of procedure test,Message recordState with receiver nil returns nil.]
codetoanalyze/objc/shared/block/BlockVar.m, BlockVar::blockPostBad, 5, NULL_DEREFERENCE, B5, ERROR, [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, no_bucket, ERROR, [start of procedure capturedNullDeref,start of procedure block]
codetoanalyze/objc/shared/block/BlockVar.m, BlockVar::navigateToURLInBackground, 8, NULL_DEREFERENCE, B1, ERROR, [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,Taking true branch]
codetoanalyze/objc/biabduction/warnings/ParameterNotNullableExample.m, FBAudioRecorder.FBAudioInputCallbackChain:, 2, NULL_DEREFERENCE, B2, ERROR, [start of procedure FBAudioInputCallbackChain:,Executing synthesized getter recorder Message recordState with receiver nil returns nil.]
codetoanalyze/objc/biabduction/warnings/ParameterNotNullableExample.m, FBAudioRecorder.FBAudioInputCallbackChain:, 2, PARAMETER_NOT_NULL_CHECKED, B2, WARNING, [start of procedure FBAudioInputCallbackChain:,Message recorder with receiver nil returns nil. Message recordState with receiver nil returns nil.]
codetoanalyze/objc/biabduction/warnings/ParameterNotNullableExample.m, FBAudioRecorder.FBAudioInputCallbackField, 2, NULL_DEREFERENCE, B1, ERROR, [start of procedure FBAudioInputCallbackField,Message recordState with receiver nil returns nil.]
codetoanalyze/objc/biabduction/warnings/ParameterNotNullableExample.m, FBAudioRecorder.FBAudioInputCallbackSimple:, 2, PARAMETER_NOT_NULL_CHECKED, B2, WARNING, [start of procedure FBAudioInputCallbackSimple:,Message recordState with receiver nil returns nil.]
codetoanalyze/objc/biabduction/warnings/ParameterNotNullableExample.m, FBAudioRecorder.FBAudioInputCallbackSimpleAliasing:, 3, PARAMETER_NOT_NULL_CHECKED, B1, WARNING, [start of procedure FBAudioInputCallbackSimpleAliasing:,Message recordState with receiver nil returns nil.]
codetoanalyze/objc/biabduction/warnings/ParameterNotNullableExample.m, FBAudioRecorder.init, 2, NULL_DEREFERENCE, B2, ERROR, [start of procedure init]
codetoanalyze/objc/biabduction/warnings/ParameterNotNullableExample.m, FBAudioRecorder.test, 3, NULL_DEREFERENCE, B1, ERROR, [start of procedure test,Message recordState with receiver nil returns nil.]
codetoanalyze/objc/shared/block/BlockVar.m, BlockVar.blockPostBad, 5, NULL_DEREFERENCE, B5, ERROR, [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, no_bucket, ERROR, [start of procedure capturedNullDeref,start of procedure block]
codetoanalyze/objc/shared/block/BlockVar.m, BlockVar.navigateToURLInBackground, 8, NULL_DEREFERENCE, B1, ERROR, [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,Taking true branch]
codetoanalyze/objc/shared/block/block.m, main1, 30, DIVIDE_BY_ZERO, no_bucket, ERROR, [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, B1, ERROR, [start of procedure m,start of procedure block,return from a call to objc_blockMy_manager::m_1,Taking true branch]
codetoanalyze/objc/shared/block/block_no_args.m, My_manager.m, 10, NULL_DEREFERENCE, B1, ERROR, [start of procedure m,start of procedure block,return from a call to objc_blockMy_manager.m_1,Taking true branch]
codetoanalyze/objc/shared/category_procdesc/main.c, CategoryProcdescMain, 3, MEMORY_LEAK, no_bucket, ERROR, [start of procedure CategoryProcdescMain(),Skipping performDaysWork: method has no implementation]
codetoanalyze/objc/shared/field_superclass/SuperExample.m, ASuper::init, 2, NULL_DEREFERENCE, B2, ERROR, [start of procedure init]
codetoanalyze/objc/biabduction/blocks_in_heap/BlockInHeap.m, block_in_heap_executed_after_bi_abduction_ok_test, 3, NULL_DEREFERENCE, B1, ERROR, [start of procedure block_in_heap_executed_after_bi_abduction_ok_test(),start of procedure block_in_heap_executed_after_bi_abduction_ok_no_retain_cycle(),start of procedure assign_block_to_ivar,Executing synthesized setter setHandler:,return from a call to BlockInHeap::assign_block_to_ivar,Executing synthesized getter handler,start of procedure block,return from a call to objc_blockBlockInHeap::assign_block_to_ivar_1,return from a call to block_in_heap_executed_after_bi_abduction_ok_no_retain_cycle,Taking true branch]
codetoanalyze/objc/biabduction/field_superclass/SubtypingExample.m, Employee::initWithName:andAge:andEducation:, 3, NULL_TEST_AFTER_DEREFERENCE, no_bucket, WARNING, [start of procedure initWithName:andAge:andEducation:,start of procedure initWithName:andAge:,return from a call to Person::initWithName:andAge:,Taking false branch]
codetoanalyze/objc/biabduction/field_superclass/SubtypingExample.m, Employee::initWithName:andAge:andEducation:, 6, DIVIDE_BY_ZERO, no_bucket, ERROR, [start of procedure initWithName:andAge:andEducation:,start of procedure initWithName:andAge:,return from a call to Person::initWithName:andAge:,Taking true branch]
codetoanalyze/objc/biabduction/field_superclass/SubtypingExample.m, subtyping_test, 0, DIVIDE_BY_ZERO, no_bucket, ERROR, [start of procedure subtyping_test(),start of procedure testFields(),start of procedure setEmployeeEducation:,return from a call to Employee::setEmployeeEducation:,start of procedure setAge:,return from a call to Person::setAge:,start of procedure setEmployeeEducation:,return from a call to Employee::setEmployeeEducation:,start of procedure getAge,return from a call to Person::getAge,return from a call to testFields]
codetoanalyze/objc/shared/field_superclass/SuperExample.m, ASuper.init, 2, NULL_DEREFERENCE, B2, ERROR, [start of procedure init]
codetoanalyze/objc/biabduction/blocks_in_heap/BlockInHeap.m, block_in_heap_executed_after_bi_abduction_ok_test, 3, NULL_DEREFERENCE, B1, ERROR, [start of procedure block_in_heap_executed_after_bi_abduction_ok_test(),start of procedure block_in_heap_executed_after_bi_abduction_ok_no_retain_cycle(),start of procedure assign_block_to_ivar,Executing synthesized setter setHandler:,return from a call to BlockInHeap.assign_block_to_ivar,Executing synthesized getter handler,start of procedure block,return from a call to objc_blockBlockInHeap.assign_block_to_ivar_1,return from a call to block_in_heap_executed_after_bi_abduction_ok_no_retain_cycle,Taking true branch]
codetoanalyze/objc/biabduction/field_superclass/SubtypingExample.m, Employee.initWithName:andAge:andEducation:, 3, NULL_TEST_AFTER_DEREFERENCE, no_bucket, WARNING, [start of procedure initWithName:andAge:andEducation:,start of procedure initWithName:andAge:,return from a call to Person.initWithName:andAge:,Taking false branch]
codetoanalyze/objc/biabduction/field_superclass/SubtypingExample.m, Employee.initWithName:andAge:andEducation:, 6, DIVIDE_BY_ZERO, no_bucket, ERROR, [start of procedure initWithName:andAge:andEducation:,start of procedure initWithName:andAge:,return from a call to Person.initWithName:andAge:,Taking true branch]
codetoanalyze/objc/biabduction/field_superclass/SubtypingExample.m, subtyping_test, 0, DIVIDE_BY_ZERO, no_bucket, ERROR, [start of procedure subtyping_test(),start of procedure testFields(),start of procedure setEmployeeEducation:,return from a call to Employee.setEmployeeEducation:,start of procedure setAge:,return from a call to Person.setAge:,start of procedure setEmployeeEducation:,return from a call to Employee.setEmployeeEducation:,start of procedure getAge,return from a call to Person.getAge,return from a call to testFields]
codetoanalyze/objc/biabduction/initialization/struct_initlistexpr.c, field_set_correctly, 2, DIVIDE_BY_ZERO, no_bucket, ERROR, [start of procedure field_set_correctly()]
codetoanalyze/objc/biabduction/initialization/struct_initlistexpr.c, implicit_expr_set_correctly, 3, DIVIDE_BY_ZERO, no_bucket, ERROR, [start of procedure implicit_expr_set_correctly()]
codetoanalyze/objc/biabduction/initialization/struct_initlistexpr.c, point_coords_set_correctly, 2, DIVIDE_BY_ZERO, no_bucket, ERROR, [start of procedure point_coords_set_correctly()]
codetoanalyze/objc/biabduction/memory_leaks_benchmark/RetainCycleBlockAsParameter.m, FBSomeDataManager::fetchNewData, 2, RETAIN_CYCLE, no_bucket, ERROR, [start of procedure fetchNewData,start of procedure initWithCompletionBlock:,return from a call to Fetcher::initWithCompletionBlock:_objc_blockFBSomeDataManager::fetchNewData_1]
codetoanalyze/objc/biabduction/memory_leaks_benchmark/RetainCycleBlockCapturedVar.m, LinkResolver::test_bad, 3, RETAIN_CYCLE, no_bucket, ERROR, [start of procedure test_bad,Executing synthesized setter setDidFinishLoad:]
codetoanalyze/objc/biabduction/memory_leaks_benchmark/RetainCycleBlocks.m, RCBlock::retain_self_in_block, 1, RETAIN_CYCLE, no_bucket, ERROR, [start of procedure retain_self_in_block,Executing synthesized setter setHandler:]
codetoanalyze/objc/biabduction/memory_leaks_benchmark/RetainCycleBlockAsParameter.m, FBSomeDataManager.fetchNewData, 2, RETAIN_CYCLE, no_bucket, ERROR, [start of procedure fetchNewData,start of procedure initWithCompletionBlock:,return from a call to Fetcher.initWithCompletionBlock:_objc_blockFBSomeDataManager.fetchNewData_1]
codetoanalyze/objc/biabduction/memory_leaks_benchmark/RetainCycleBlockCapturedVar.m, LinkResolver.test_bad, 3, RETAIN_CYCLE, no_bucket, ERROR, [start of procedure test_bad,Executing synthesized setter setDidFinishLoad:]
codetoanalyze/objc/biabduction/memory_leaks_benchmark/RetainCycleBlocks.m, RCBlock.retain_self_in_block, 1, RETAIN_CYCLE, no_bucket, ERROR, [start of procedure retain_self_in_block,Executing synthesized setter setHandler:]
codetoanalyze/objc/biabduction/memory_leaks_benchmark/RetainCycleBlocks.m, objc_blockretain_a_in_block_cycle_3, 1, RETAIN_CYCLE, no_bucket, ERROR, [start of procedure block,Executing synthesized setter setChild:]
codetoanalyze/objc/biabduction/memory_leaks_benchmark/RetainCycleBlocks.m, retain_a_in_block_cycle, 4, RETAIN_CYCLE, no_bucket, ERROR, [start of procedure retain_a_in_block_cycle(),Executing synthesized setter setB:,Executing synthesized setter setA:]
codetoanalyze/objc/biabduction/memory_leaks_benchmark/RetainCycleDeduplication.m, CViewController::setCaptureInteractionController:, 4, RETAIN_CYCLE, no_bucket, ERROR, [start of procedure setCaptureInteractionController:,Taking true branch,Executing synthesized setter setDelegate:,Executing synthesized setter setDelegate:]
codetoanalyze/objc/biabduction/memory_leaks_benchmark/RetainCyclePropertyInProtocol.m, MyCustomViewController::loadViewBad, 3, RETAIN_CYCLE, no_bucket, ERROR, [start of procedure loadViewBad,Executing synthesized setter setView:,Executing synthesized setter setStrong_delegate:]
codetoanalyze/objc/biabduction/memory_leaks_benchmark/RetainCycleDeduplication.m, CViewController.setCaptureInteractionController:, 4, RETAIN_CYCLE, no_bucket, ERROR, [start of procedure setCaptureInteractionController:,Taking true branch,Executing synthesized setter setDelegate:,Executing synthesized setter setDelegate:]
codetoanalyze/objc/biabduction/memory_leaks_benchmark/RetainCyclePropertyInProtocol.m, MyCustomViewController.loadViewBad, 3, RETAIN_CYCLE, no_bucket, ERROR, [start of procedure loadViewBad,Executing synthesized setter setView:,Executing synthesized setter setStrong_delegate:]
codetoanalyze/objc/biabduction/memory_leaks_benchmark/retain_cycle.m, strongcycle, 6, RETAIN_CYCLE, no_bucket, ERROR, [start of procedure strongcycle(),Executing synthesized setter setB:,Executing synthesized setter setA:]
codetoanalyze/objc/biabduction/memory_leaks_benchmark/retain_cycle2.m, strongcycle2, 4, RETAIN_CYCLE, no_bucket, ERROR, [start of procedure strongcycle2(),start of procedure init,return from a call to Parent::init,start of procedure init,return from a call to Child::init,start of procedure setChild:,return from a call to Parent::setChild:,start of procedure setParent:,return from a call to Child::setParent:]
codetoanalyze/objc/biabduction/memory_leaks_benchmark/retain_cycle2.m, strongcycle2, 4, RETAIN_CYCLE, no_bucket, ERROR, [start of procedure strongcycle2(),start of procedure init,return from a call to Parent.init,start of procedure init,return from a call to Child.init,start of procedure setChild:,return from a call to Parent.setChild:,start of procedure setParent:,return from a call to Child.setParent:]
codetoanalyze/objc/biabduction/npe/UpdateDict.m, add_nil_in_dict, 10, NULL_DEREFERENCE, B1, ERROR, [start of procedure add_nil_in_dict(),Skipping dictionaryWithObjectsAndKeys:: method has no implementation]
codetoanalyze/objc/biabduction/npe/UpdateDict.m, add_nil_to_array, 4, NULL_DEREFERENCE, B1, ERROR, [start of procedure add_nil_to_array()]
codetoanalyze/objc/biabduction/npe/UpdateDict.m, insert_nil_in_array, 4, NULL_DEREFERENCE, B1, ERROR, [start of procedure insert_nil_in_array()]
@ -45,67 +45,67 @@ codetoanalyze/objc/biabduction/npe/UpdateDict.m, nullable_NSDictionary_objectFor
codetoanalyze/objc/biabduction/npe/UpdateDict.m, nullable_NSMapTable_objectForKey, 4, NULL_DEREFERENCE, B5, ERROR, [start of procedure nullable_NSMapTable_objectForKey(),Taking true branch,Taking true branch]
codetoanalyze/objc/biabduction/npe/UpdateDict.m, update_array_with_null, 5, NULL_DEREFERENCE, B1, ERROR, [start of procedure update_array_with_null()]
codetoanalyze/objc/biabduction/npe/UpdateDict.m, update_dict_with_key_null, 10, NULL_DEREFERENCE, B1, ERROR, [start of procedure update_dict_with_key_null(),Skipping dictionaryWithObjectsAndKeys:: method has no implementation]
codetoanalyze/objc/biabduction/npe/nil_in_array_literal.m, Arr::insertNilBad, 3, NULL_DEREFERENCE, B1, ERROR, [start of procedure insertNilBad,start of procedure initA,Taking true branch,return from a call to A::initA]
codetoanalyze/objc/biabduction/npe/nil_in_array_literal.m, Arr::nilInArrayLiteral0, 4, NULL_DEREFERENCE, B1, ERROR, [start of procedure nilInArrayLiteral0]
codetoanalyze/objc/biabduction/npe/nil_in_array_literal.m, Arr::nilInArrayLiteral1, 4, NULL_DEREFERENCE, B1, ERROR, [start of procedure nilInArrayLiteral1]
codetoanalyze/objc/biabduction/npe/nil_in_array_literal.m, Arr::nilInArrayLiteral2, 4, NULL_DEREFERENCE, B1, ERROR, [start of procedure nilInArrayLiteral2]
codetoanalyze/objc/biabduction/npe/nil_in_array_literal.m, Arr::nilInArrayLiteral3, 4, NULL_DEREFERENCE, B1, ERROR, [start of procedure nilInArrayLiteral3]
codetoanalyze/objc/biabduction/npe/nil_in_array_literal.m, Arr::nilInArrayWithObject, 4, NULL_DEREFERENCE, B1, ERROR, [start of procedure nilInArrayWithObject]
codetoanalyze/objc/biabduction/npe/nil_in_dictionary_literal.m, ADict::nilInDictionaryLiteralKey0, 4, NULL_DEREFERENCE, B1, ERROR, [start of procedure nilInDictionaryLiteralKey0]
codetoanalyze/objc/biabduction/npe/nil_in_dictionary_literal.m, ADict::nilInDictionaryLiteralKey1, 4, NULL_DEREFERENCE, B1, ERROR, [start of procedure nilInDictionaryLiteralKey1]
codetoanalyze/objc/biabduction/npe/nil_in_dictionary_literal.m, ADict::nilInDictionaryLiteralKey2, 5, NULL_DEREFERENCE, B1, ERROR, [start of procedure nilInDictionaryLiteralKey2]
codetoanalyze/objc/biabduction/npe/nil_in_dictionary_literal.m, ADict::nilInDictionaryLiteralKey3, 5, NULL_DEREFERENCE, B1, ERROR, [start of procedure nilInDictionaryLiteralKey3]
codetoanalyze/objc/biabduction/npe/nil_in_dictionary_literal.m, ADict::nilInDictionaryLiteralValue0, 4, NULL_DEREFERENCE, B1, ERROR, [start of procedure nilInDictionaryLiteralValue0]
codetoanalyze/objc/biabduction/npe/nil_in_dictionary_literal.m, ADict::nilInDictionaryLiteralValue1, 4, NULL_DEREFERENCE, B1, ERROR, [start of procedure nilInDictionaryLiteralValue1]
codetoanalyze/objc/biabduction/npe/nil_in_dictionary_literal.m, ADict::nilInDictionaryLiteralValue2, 4, NULL_DEREFERENCE, B1, ERROR, [start of procedure nilInDictionaryLiteralValue2]
codetoanalyze/objc/biabduction/npe/nil_in_dictionary_literal.m, ADict::nilInDictionaryLiteralValue3, 4, NULL_DEREFERENCE, B1, ERROR, [start of procedure nilInDictionaryLiteralValue3]
codetoanalyze/objc/biabduction/npe/npe_conditional.m, conditionalNPE, 3, NULL_DEREFERENCE, B2, ERROR, [start of procedure conditionalNPE(),start of procedure name,return from a call to ConditionalA::name,Condition is true]
codetoanalyze/objc/biabduction/npe/npe_self.m, CSelf::init, 2, NULL_DEREFERENCE, B2, ERROR, [start of procedure init]
codetoanalyze/objc/biabduction/npe/npe_self.m, CSelf::test, 3, NULL_DEREFERENCE, B5, ERROR, [start of procedure test,Taking false branch]
codetoanalyze/objc/biabduction/npe/nil_in_array_literal.m, Arr.insertNilBad, 3, NULL_DEREFERENCE, B1, ERROR, [start of procedure insertNilBad,start of procedure initA,Taking true branch,return from a call to A.initA]
codetoanalyze/objc/biabduction/npe/nil_in_array_literal.m, Arr.nilInArrayLiteral0, 4, NULL_DEREFERENCE, B1, ERROR, [start of procedure nilInArrayLiteral0]
codetoanalyze/objc/biabduction/npe/nil_in_array_literal.m, Arr.nilInArrayLiteral1, 4, NULL_DEREFERENCE, B1, ERROR, [start of procedure nilInArrayLiteral1]
codetoanalyze/objc/biabduction/npe/nil_in_array_literal.m, Arr.nilInArrayLiteral2, 4, NULL_DEREFERENCE, B1, ERROR, [start of procedure nilInArrayLiteral2]
codetoanalyze/objc/biabduction/npe/nil_in_array_literal.m, Arr.nilInArrayLiteral3, 4, NULL_DEREFERENCE, B1, ERROR, [start of procedure nilInArrayLiteral3]
codetoanalyze/objc/biabduction/npe/nil_in_array_literal.m, Arr.nilInArrayWithObject, 4, NULL_DEREFERENCE, B1, ERROR, [start of procedure nilInArrayWithObject]
codetoanalyze/objc/biabduction/npe/nil_in_dictionary_literal.m, ADict.nilInDictionaryLiteralKey0, 4, NULL_DEREFERENCE, B1, ERROR, [start of procedure nilInDictionaryLiteralKey0]
codetoanalyze/objc/biabduction/npe/nil_in_dictionary_literal.m, ADict.nilInDictionaryLiteralKey1, 4, NULL_DEREFERENCE, B1, ERROR, [start of procedure nilInDictionaryLiteralKey1]
codetoanalyze/objc/biabduction/npe/nil_in_dictionary_literal.m, ADict.nilInDictionaryLiteralKey2, 5, NULL_DEREFERENCE, B1, ERROR, [start of procedure nilInDictionaryLiteralKey2]
codetoanalyze/objc/biabduction/npe/nil_in_dictionary_literal.m, ADict.nilInDictionaryLiteralKey3, 5, NULL_DEREFERENCE, B1, ERROR, [start of procedure nilInDictionaryLiteralKey3]
codetoanalyze/objc/biabduction/npe/nil_in_dictionary_literal.m, ADict.nilInDictionaryLiteralValue0, 4, NULL_DEREFERENCE, B1, ERROR, [start of procedure nilInDictionaryLiteralValue0]
codetoanalyze/objc/biabduction/npe/nil_in_dictionary_literal.m, ADict.nilInDictionaryLiteralValue1, 4, NULL_DEREFERENCE, B1, ERROR, [start of procedure nilInDictionaryLiteralValue1]
codetoanalyze/objc/biabduction/npe/nil_in_dictionary_literal.m, ADict.nilInDictionaryLiteralValue2, 4, NULL_DEREFERENCE, B1, ERROR, [start of procedure nilInDictionaryLiteralValue2]
codetoanalyze/objc/biabduction/npe/nil_in_dictionary_literal.m, ADict.nilInDictionaryLiteralValue3, 4, NULL_DEREFERENCE, B1, ERROR, [start of procedure nilInDictionaryLiteralValue3]
codetoanalyze/objc/biabduction/npe/npe_conditional.m, conditionalNPE, 3, NULL_DEREFERENCE, B2, ERROR, [start of procedure conditionalNPE(),start of procedure name,return from a call to ConditionalA.name,Condition is true]
codetoanalyze/objc/biabduction/npe/npe_self.m, CSelf.init, 2, NULL_DEREFERENCE, B2, ERROR, [start of procedure init]
codetoanalyze/objc/biabduction/npe/npe_self.m, CSelf.test, 3, NULL_DEREFERENCE, B5, ERROR, [start of procedure test,Taking false branch]
codetoanalyze/objc/biabduction/npe/nullable.m, derefNullableParamDirect, 0, NULL_DEREFERENCE, B1, ERROR, [start of procedure derefNullableParamDirect()]
codetoanalyze/objc/biabduction/npe/nullable.m, derefNullableParamIndirect, 2, NULL_DEREFERENCE, B1, ERROR, [start of procedure derefNullableParamIndirect()]
codetoanalyze/objc/biabduction/npe/nullable.m, parameter_nullable_bug, 5, NULL_DEREFERENCE, B1, ERROR, [start of procedure parameter_nullable_bug()]
codetoanalyze/objc/biabduction/property/ExplicitIvarName.m, ExplicitIvarNameA::testDefaultName, 7, NULL_DEREFERENCE, B1, ERROR, [start of procedure testDefaultName,Skipping setY:: method has no implementation,Taking true branch]
codetoanalyze/objc/biabduction/property/ExplicitIvarName.m, ExplicitIvarNameA::testExplicit, 6, NULL_DEREFERENCE, B1, ERROR, [start of procedure testExplicit,Taking true branch]
codetoanalyze/objc/biabduction/subtyping/KindOfClassExample.m, shouldThrowDivideByZero1, 2, DIVIDE_BY_ZERO, no_bucket, ERROR, [start of procedure shouldThrowDivideByZero1(),start of procedure init,return from a call to Base::init,start of procedure returnsZero1:,Taking true branch,return from a call to Base::returnsZero1:]
codetoanalyze/objc/biabduction/subtyping/KindOfClassExample.m, shouldThrowDivideByZero2, 2, DIVIDE_BY_ZERO, no_bucket, ERROR, [start of procedure shouldThrowDivideByZero2(),start of procedure init,return from a call to Base::init,start of procedure returnsZero2(),Taking false branch,return from a call to returnsZero2]
codetoanalyze/objc/biabduction/subtyping/KindOfClassExample.m, shouldThrowDivideByZero3, 3, DIVIDE_BY_ZERO, no_bucket, ERROR, [start of procedure shouldThrowDivideByZero3(),start of procedure init,return from a call to Derived::init,Taking true branch]
codetoanalyze/objc/biabduction/variadic_methods/premature_nil_termination.m, PrematureNilTermA::nilInArrayWithObjects, 5, PREMATURE_NIL_TERMINATION_ARGUMENT, B1, ERROR, [start of procedure nilInArrayWithObjects]
codetoanalyze/objc/shared/memory_leaks_benchmark/TollBridgeExample.m, TollBridgeExample::bridge, 2, MEMORY_LEAK, no_bucket, ERROR, [start of procedure bridge]
codetoanalyze/objc/biabduction/memory_leaks_benchmark/CoreVideoExample.m, CoreVideoExample::cvpixelbuffer_not_released_leak, 1, MEMORY_LEAK, no_bucket, ERROR, [start of procedure cvpixelbuffer_not_released_leak]
codetoanalyze/objc/biabduction/memory_leaks_benchmark/NSData_models_tests.m, NSData_models_tests::macForIV:, 2, MEMORY_LEAK, no_bucket, ERROR, [start of procedure macForIV:]
codetoanalyze/objc/biabduction/memory_leaks_benchmark/NSString_models_tests.m, StringInitA::hexStringValue, 11, MEMORY_LEAK, no_bucket, ERROR, [start of procedure hexStringValue,Skipping CFStringCreateWithBytesNoCopy(): method has no implementation,Taking false branch]
codetoanalyze/objc/biabduction/property/ExplicitIvarName.m, ExplicitIvarNameA.testDefaultName, 7, NULL_DEREFERENCE, B1, ERROR, [start of procedure testDefaultName,Skipping setY:: method has no implementation,Taking true branch]
codetoanalyze/objc/biabduction/property/ExplicitIvarName.m, ExplicitIvarNameA.testExplicit, 6, NULL_DEREFERENCE, B1, ERROR, [start of procedure testExplicit,Taking true branch]
codetoanalyze/objc/biabduction/subtyping/KindOfClassExample.m, shouldThrowDivideByZero1, 2, DIVIDE_BY_ZERO, no_bucket, ERROR, [start of procedure shouldThrowDivideByZero1(),start of procedure init,return from a call to Base.init,start of procedure returnsZero1:,Taking true branch,return from a call to Base.returnsZero1:]
codetoanalyze/objc/biabduction/subtyping/KindOfClassExample.m, shouldThrowDivideByZero2, 2, DIVIDE_BY_ZERO, no_bucket, ERROR, [start of procedure shouldThrowDivideByZero2(),start of procedure init,return from a call to Base.init,start of procedure returnsZero2(),Taking false branch,return from a call to returnsZero2]
codetoanalyze/objc/biabduction/subtyping/KindOfClassExample.m, shouldThrowDivideByZero3, 3, DIVIDE_BY_ZERO, no_bucket, ERROR, [start of procedure shouldThrowDivideByZero3(),start of procedure init,return from a call to Derived.init,Taking true branch]
codetoanalyze/objc/biabduction/variadic_methods/premature_nil_termination.m, PrematureNilTermA.nilInArrayWithObjects, 5, PREMATURE_NIL_TERMINATION_ARGUMENT, B1, ERROR, [start of procedure nilInArrayWithObjects]
codetoanalyze/objc/shared/memory_leaks_benchmark/TollBridgeExample.m, TollBridgeExample.bridge, 2, MEMORY_LEAK, no_bucket, ERROR, [start of procedure bridge]
codetoanalyze/objc/biabduction/memory_leaks_benchmark/CoreVideoExample.m, CoreVideoExample.cvpixelbuffer_not_released_leak, 1, MEMORY_LEAK, no_bucket, ERROR, [start of procedure cvpixelbuffer_not_released_leak]
codetoanalyze/objc/biabduction/memory_leaks_benchmark/NSData_models_tests.m, NSData_models_tests.macForIV:, 2, MEMORY_LEAK, no_bucket, ERROR, [start of procedure macForIV:]
codetoanalyze/objc/biabduction/memory_leaks_benchmark/NSString_models_tests.m, StringInitA.hexStringValue, 11, MEMORY_LEAK, no_bucket, ERROR, [start of procedure hexStringValue,Skipping CFStringCreateWithBytesNoCopy(): method has no implementation,Taking false branch]
codetoanalyze/objc/biabduction/memory_leaks_benchmark/RetainCycleLength3.m, strongcycle, 6, RETAIN_CYCLE, no_bucket, ERROR, [start of procedure strongcycle(),Executing synthesized setter setB:,Executing synthesized setter setC:,Executing synthesized setter setA:]
codetoanalyze/objc/biabduction/npe/Fraction.m, test_virtual_call, 7, NULL_DEREFERENCE, B1, ERROR, [start of procedure test_virtual_call(),start of procedure setNumerator:,return from a call to Fraction::setNumerator:,start of procedure getNumerator,return from a call to Fraction::getNumerator,Taking true branch]
codetoanalyze/objc/biabduction/npe/Npe_with_equal_names.m, EqualNamesTest, 3, NULL_DEREFERENCE, B1, ERROR, [start of procedure EqualNamesTest(),start of procedure meth,return from a call to EqualNamesA::meth]
codetoanalyze/objc/biabduction/npe/Fraction.m, test_virtual_call, 7, NULL_DEREFERENCE, B1, ERROR, [start of procedure test_virtual_call(),start of procedure setNumerator:,return from a call to Fraction.setNumerator:,start of procedure getNumerator,return from a call to Fraction.getNumerator,Taking true branch]
codetoanalyze/objc/biabduction/npe/Npe_with_equal_names.m, EqualNamesTest, 3, NULL_DEREFERENCE, B1, ERROR, [start of procedure EqualNamesTest(),start of procedure meth,return from a call to EqualNamesA.meth]
codetoanalyze/objc/biabduction/npe/Nsstring_nil_args.m, initWithFormatBad, 3, NULL_DEREFERENCE, B1, ERROR, [start of procedure initWithFormatBad()]
codetoanalyze/objc/biabduction/npe/Nsstring_nil_args.m, stringByAppendingStringBad, 2, NULL_DEREFERENCE, B1, ERROR, [start of procedure stringByAppendingStringBad()]
codetoanalyze/objc/biabduction/npe/Nsstring_nil_args.m, stringWithStringBad, 2, NULL_DEREFERENCE, B1, ERROR, [start of procedure stringWithStringBad(),start of procedure nullableMethod(),return from a call to nullableMethod]
codetoanalyze/objc/biabduction/npe/Nsstring_nil_args.m, stringWithUTF8StringBad, 1, NULL_DEREFERENCE, B5, ERROR, [start of procedure stringWithUTF8StringBad(),start of procedure nullableMethod(),return from a call to nullableMethod]
codetoanalyze/objc/biabduction/npe/block.m, BlockA::doSomethingThenCallback:, 2, PARAMETER_NOT_NULL_CHECKED, B1, WARNING, [start of procedure doSomethingThenCallback:]
codetoanalyze/objc/biabduction/npe/block.m, BlockA::foo, 5, NULL_DEREFERENCE, B1, ERROR, [start of procedure foo]
codetoanalyze/objc/biabduction/npe/block.m, BlockA::foo3:, 3, NULL_DEREFERENCE, B1, ERROR, [start of procedure foo3:]
codetoanalyze/objc/biabduction/npe/block.m, BlockA::foo4:, 6, NULL_DEREFERENCE, B1, ERROR, [start of procedure foo4:]
codetoanalyze/objc/biabduction/npe/block.m, BlockA::foo7, 2, IVAR_NOT_NULL_CHECKED, B1, WARNING, [start of procedure foo7]
codetoanalyze/objc/biabduction/npe/dynamic_dispatch.m, DynamicDispatchMain::npe_bad, 2, NULL_DEREFERENCE, B5, ERROR, [start of procedure npe_bad,start of procedure get_ddclass_from:,start of procedure get_ddclass,return from a call to PInstance::get_ddclass,return from a call to DynamicDispatchMain::get_ddclass_from:]
codetoanalyze/objc/biabduction/npe/dynamic_dispatch.m, objc_blockDynamicDispatchMain::dispatch_async_block_npe_bad_1, 3, NULL_DEREFERENCE, B5, ERROR, [start of procedure block,start of procedure get_ddclass_from:,start of procedure get_ddclass,return from a call to PInstance::get_ddclass,return from a call to DynamicDispatchMain::get_ddclass_from:]
codetoanalyze/objc/biabduction/npe/ivar_blocks.m, MyClass::ivar_npe, 1, IVAR_NOT_NULL_CHECKED, B1, WARNING, [start of procedure ivar_npe]
codetoanalyze/objc/biabduction/npe/skip_method_with_nil_object.m, SkipMethodNilA::testBug:, 6, PARAMETER_NOT_NULL_CHECKED, B2, WARNING, [start of procedure testBug:,Message get_a with receiver nil returns nil.,Message skip_method with receiver nil returns nil.,Taking false branch]
codetoanalyze/objc/biabduction/npe/block.m, BlockA.doSomethingThenCallback:, 2, PARAMETER_NOT_NULL_CHECKED, B1, WARNING, [start of procedure doSomethingThenCallback:]
codetoanalyze/objc/biabduction/npe/block.m, BlockA.foo, 5, NULL_DEREFERENCE, B1, ERROR, [start of procedure foo]
codetoanalyze/objc/biabduction/npe/block.m, BlockA.foo3:, 3, NULL_DEREFERENCE, B1, ERROR, [start of procedure foo3:]
codetoanalyze/objc/biabduction/npe/block.m, BlockA.foo4:, 6, NULL_DEREFERENCE, B1, ERROR, [start of procedure foo4:]
codetoanalyze/objc/biabduction/npe/block.m, BlockA.foo7, 2, IVAR_NOT_NULL_CHECKED, B1, WARNING, [start of procedure foo7]
codetoanalyze/objc/biabduction/npe/dynamic_dispatch.m, DynamicDispatchMain.npe_bad, 2, NULL_DEREFERENCE, B5, ERROR, [start of procedure npe_bad,start of procedure get_ddclass_from:,start of procedure get_ddclass,return from a call to PInstance.get_ddclass,return from a call to DynamicDispatchMain.get_ddclass_from:]
codetoanalyze/objc/biabduction/npe/dynamic_dispatch.m, objc_blockDynamicDispatchMain.dispatch_async_block_npe_bad_1, 3, NULL_DEREFERENCE, B5, ERROR, [start of procedure block,start of procedure get_ddclass_from:,start of procedure get_ddclass,return from a call to PInstance.get_ddclass,return from a call to DynamicDispatchMain.get_ddclass_from:]
codetoanalyze/objc/biabduction/npe/ivar_blocks.m, MyClass.ivar_npe, 1, IVAR_NOT_NULL_CHECKED, B1, WARNING, [start of procedure ivar_npe]
codetoanalyze/objc/biabduction/npe/skip_method_with_nil_object.m, SkipMethodNilA.testBug:, 6, PARAMETER_NOT_NULL_CHECKED, B2, WARNING, [start of procedure testBug:,Message get_a with receiver nil returns nil.,Message skip_method with receiver nil returns nil.,Taking false branch]
codetoanalyze/objc/biabduction/property/main.c, property_main, 3, MEMORY_LEAK, no_bucket, ERROR, [start of procedure property_main(),Skipping aProperty: method has no implementation]
codetoanalyze/objc/biabduction/resource_leaks/Dispatch_sources.m, ProcessContentsOfFile, 35, RESOURCE_LEAK, no_bucket, ERROR, [start of procedure ProcessContentsOfFile(),Taking false branch,Skipping dispatch_get_global_queue(): method has no implementation,Skipping dispatch_source_create(): method has no implementation,Taking false branch,Skipping dispatch_source_set_event_handler(): method has no implementation,Skipping dispatch_source_set_cancel_handler(): method has no implementation]
codetoanalyze/objc/biabduction/resource_leaks/Dispatch_sources.m, objc_blockProcessContentsOfFile_2, 6, MEMORY_LEAK, no_bucket, ERROR, [start of procedure block,Skipping dispatch_source_get_data(): method has no implementation,Taking true branch,Skipping MyProcessFileData(): method has no implementation]
codetoanalyze/objc/biabduction/resource_leaks/ResourceLeakExample.m, NSFileHandle::fileHandleForLoggingAtPath:mode:, 9, RESOURCE_LEAK, no_bucket, ERROR, [start of procedure fileHandleForLoggingAtPath:mode:,Taking true branch,Skipping fileSystemRepresentation: method has no implementation,Taking false branch,Taking true branch,Skipping autorelease: no implementation found for method declared in Objective-C protocol]
codetoanalyze/objc/shared/annotations/nonnull_annotations.m, A::test1:, 2, PARAMETER_NOT_NULL_CHECKED, B2, WARNING, [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, B1, WARNING, [start of procedure test3:]
codetoanalyze/objc/shared/annotations/nullable_annotations.m, User::otherUserName, 2, NULL_DEREFERENCE, B2, ERROR, [start of procedure otherUserName,Skipping otherUser: method has no implementation]
codetoanalyze/objc/biabduction/resource_leaks/ResourceLeakExample.m, NSFileHandle.fileHandleForLoggingAtPath:mode:, 9, RESOURCE_LEAK, no_bucket, ERROR, [start of procedure fileHandleForLoggingAtPath:mode:,Taking true branch,Skipping fileSystemRepresentation: method has no implementation,Taking false branch,Taking true branch,Skipping autorelease: no implementation found for method declared in Objective-C protocol]
codetoanalyze/objc/shared/annotations/nonnull_annotations.m, A.test1:, 2, PARAMETER_NOT_NULL_CHECKED, B2, WARNING, [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, B1, WARNING, [start of procedure test3:]
codetoanalyze/objc/shared/annotations/nullable_annotations.m, User.otherUserName, 2, NULL_DEREFERENCE, B2, ERROR, [start of procedure otherUserName,Skipping otherUser: method has no implementation]
codetoanalyze/objc/shared/annotations/nullable_annotations.m, npe_property_nullable, 3, NULL_DEREFERENCE, B1, ERROR, [start of procedure npe_property_nullable(),Skipping child: method has no implementation]
codetoanalyze/objc/shared/annotations/nullable_annotations_fields.m, A::nullable_field, 3, NULL_DEREFERENCE, B1, ERROR, [start of procedure nullable_field,Skipping getA(): method has no implementation]
codetoanalyze/objc/shared/block/dispatch.m, DispatchA::dispatch_a_block_variable_from_macro_delivers_initialised_object, 3, DIVIDE_BY_ZERO, no_bucket, ERROR, [start of procedure dispatch_a_block_variable_from_macro_delivers_initialised_object,start of procedure dispatch_a_block_variable_from_macro,return from a call to DispatchA::dispatch_a_block_variable_from_macro]
codetoanalyze/objc/shared/memory_leaks_benchmark/MemoryLeakExample.m, MemoryLeakExample::blockCapturedVarLeak, 6, MEMORY_LEAK, no_bucket, ERROR, [start of procedure blockCapturedVarLeak,start of procedure block,return from a call to objc_blockMemoryLeakExample::blockCapturedVarLeak_1]
codetoanalyze/objc/shared/memory_leaks_benchmark/MemoryLeakExample.m, MemoryLeakExample::createCloseCrossGlyph:, 2, MEMORY_LEAK, no_bucket, ERROR, [start of procedure createCloseCrossGlyph:,Skipping CGRectGetHeight(): method has no implementation]
codetoanalyze/objc/shared/memory_leaks_benchmark/MemoryLeakExample.m, MemoryLeakExample::measureFrameSizeForText, 1, MEMORY_LEAK, no_bucket, ERROR, [start of procedure measureFrameSizeForText]
codetoanalyze/objc/shared/memory_leaks_benchmark/MemoryLeakExample.m, MemoryLeakExample::regularLeak, 3, MEMORY_LEAK, no_bucket, ERROR, [start of procedure regularLeak]
codetoanalyze/objc/shared/memory_leaks_benchmark/MemoryLeakExample.m, MemoryLeakExample::test, 3, MEMORY_LEAK, no_bucket, ERROR, [start of procedure test,Skipping bounds: method has no implementation,Skipping setShadowPath:: method has no implementation]
codetoanalyze/objc/shared/memory_leaks_benchmark/MemoryLeakExample.m, MemoryLeakExample::test1:, 1, MEMORY_LEAK, no_bucket, ERROR, [start of procedure test1:]
codetoanalyze/objc/shared/memory_leaks_benchmark/MemoryLeakExample.m, MemoryLeakExample::test2:, 1, MEMORY_LEAK, no_bucket, ERROR, [start of procedure test2:]
codetoanalyze/objc/shared/npe/Available_expr.m, Available_expr::test_no_bug, 3, NULL_DEREFERENCE, B1, ERROR, [start of procedure test_no_bug,Taking true branch]
codetoanalyze/objc/shared/annotations/nullable_annotations_fields.m, A.nullable_field, 3, NULL_DEREFERENCE, B1, ERROR, [start of procedure nullable_field,Skipping getA(): method has no implementation]
codetoanalyze/objc/shared/block/dispatch.m, DispatchA.dispatch_a_block_variable_from_macro_delivers_initialised_object, 3, DIVIDE_BY_ZERO, no_bucket, ERROR, [start of procedure dispatch_a_block_variable_from_macro_delivers_initialised_object,start of procedure dispatch_a_block_variable_from_macro,return from a call to DispatchA.dispatch_a_block_variable_from_macro]
codetoanalyze/objc/shared/memory_leaks_benchmark/MemoryLeakExample.m, MemoryLeakExample.blockCapturedVarLeak, 6, MEMORY_LEAK, no_bucket, ERROR, [start of procedure blockCapturedVarLeak,start of procedure block,return from a call to objc_blockMemoryLeakExample.blockCapturedVarLeak_1]
codetoanalyze/objc/shared/memory_leaks_benchmark/MemoryLeakExample.m, MemoryLeakExample.createCloseCrossGlyph:, 2, MEMORY_LEAK, no_bucket, ERROR, [start of procedure createCloseCrossGlyph:,Skipping CGRectGetHeight(): method has no implementation]
codetoanalyze/objc/shared/memory_leaks_benchmark/MemoryLeakExample.m, MemoryLeakExample.measureFrameSizeForText, 1, MEMORY_LEAK, no_bucket, ERROR, [start of procedure measureFrameSizeForText]
codetoanalyze/objc/shared/memory_leaks_benchmark/MemoryLeakExample.m, MemoryLeakExample.regularLeak, 3, MEMORY_LEAK, no_bucket, ERROR, [start of procedure regularLeak]
codetoanalyze/objc/shared/memory_leaks_benchmark/MemoryLeakExample.m, MemoryLeakExample.test, 3, MEMORY_LEAK, no_bucket, ERROR, [start of procedure test,Skipping bounds: method has no implementation,Skipping setShadowPath:: method has no implementation]
codetoanalyze/objc/shared/memory_leaks_benchmark/MemoryLeakExample.m, MemoryLeakExample.test1:, 1, MEMORY_LEAK, no_bucket, ERROR, [start of procedure test1:]
codetoanalyze/objc/shared/memory_leaks_benchmark/MemoryLeakExample.m, MemoryLeakExample.test2:, 1, MEMORY_LEAK, no_bucket, ERROR, [start of procedure test2:]
codetoanalyze/objc/shared/npe/Available_expr.m, Available_expr.test_no_bug, 3, NULL_DEREFERENCE, B1, ERROR, [start of procedure test_no_bug,Taking true branch]

@ -11,7 +11,7 @@ digraph cfg {
"foo.acbd18db4cc2f85cedef654fccc4a4d8_3" -> "foo.acbd18db4cc2f85cedef654fccc4a4d8_2" ;
"foo.acbd18db4cc2f85cedef654fccc4a4d8_4" [label="4: Message Call: capture \n n$1=*&a:A* [line 54, column 4]\n n$2=_fun_A::capture(n$1:A*) virtual [line 54, column 3]\n " shape="box"]
"foo.acbd18db4cc2f85cedef654fccc4a4d8_4" [label="4: Message Call: capture \n n$1=*&a:A* [line 54, column 4]\n n$2=_fun_A.capture(n$1:A*) virtual [line 54, column 3]\n " shape="box"]
"foo.acbd18db4cc2f85cedef654fccc4a4d8_4" -> "foo.acbd18db4cc2f85cedef654fccc4a4d8_3" ;
@ -34,25 +34,25 @@ digraph cfg {
"main.fad58de7366495db4650cfefac2fcd61_5" -> "main.fad58de7366495db4650cfefac2fcd61_4" ;
"objc_blockA::capture_1(class A,class D).98932872e1ea0076b1d26d1353afdc23_1" [label="1: Start objc_blockA::capture_1\nFormals: self:A* d:D*\nLocals: \nCaptured: self:A* \n " color=yellow style=filled]
"objc_blockA.capture_1(class A,class D).8e9a52049a11f3e729d697583cda7110_1" [label="1: Start objc_blockA.capture_1\nFormals: self:A* d:D*\nLocals: \nCaptured: self:A* \n " color=yellow style=filled]
"objc_blockA::capture_1(class A,class D).98932872e1ea0076b1d26d1353afdc23_1" -> "objc_blockA::capture_1(class A,class D).98932872e1ea0076b1d26d1353afdc23_3" ;
"objc_blockA::capture_1(class A,class D).98932872e1ea0076b1d26d1353afdc23_2" [label="2: Exit objc_blockA::capture_1 \n " color=yellow style=filled]
"objc_blockA.capture_1(class A,class D).8e9a52049a11f3e729d697583cda7110_1" -> "objc_blockA.capture_1(class A,class D).8e9a52049a11f3e729d697583cda7110_3" ;
"objc_blockA.capture_1(class A,class D).8e9a52049a11f3e729d697583cda7110_2" [label="2: Exit objc_blockA.capture_1 \n " color=yellow style=filled]
"objc_blockA::capture_1(class A,class D).98932872e1ea0076b1d26d1353afdc23_3" [label="3: BinaryOperatorStmt: Assign \n n$1=*&self:A* [line 46, column 5]\n n$2=*&d:D* [line 46, column 13]\n *n$1._data:D*=n$2 [line 46, column 5]\n " shape="box"]
"objc_blockA.capture_1(class A,class D).8e9a52049a11f3e729d697583cda7110_3" [label="3: BinaryOperatorStmt: Assign \n n$1=*&self:A* [line 46, column 5]\n n$2=*&d:D* [line 46, column 13]\n *n$1._data:D*=n$2 [line 46, column 5]\n " shape="box"]
"objc_blockA::capture_1(class A,class D).98932872e1ea0076b1d26d1353afdc23_3" -> "objc_blockA::capture_1(class A,class D).98932872e1ea0076b1d26d1353afdc23_2" ;
"capture#A#instance.d411336575e4bf632a1828f5f5979726_1" [label="1: Start A::capture\nFormals: self:A*\nLocals: \n " color=yellow style=filled]
"objc_blockA.capture_1(class A,class D).8e9a52049a11f3e729d697583cda7110_3" -> "objc_blockA.capture_1(class A,class D).8e9a52049a11f3e729d697583cda7110_2" ;
"capture#A#instance.d411336575e4bf632a1828f5f5979726_1" [label="1: Start A.capture\nFormals: self:A*\nLocals: \n " color=yellow style=filled]
"capture#A#instance.d411336575e4bf632a1828f5f5979726_1" -> "capture#A#instance.d411336575e4bf632a1828f5f5979726_4" ;
"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$3=*&self:A* [line 45, column 4]\n n$4=*n$3._b:B* [line 45, column 4]\n n$0=*&self:A* [line 45, column 16]\n n$5=_fun_B::sHandler:(n$4:B*,(_fun_objc_blockA::capture_1,(n$0 &self:A*)):_fn_(*)) block_params virtual [line 45, column 3]\n " shape="box"]
"capture#A#instance.d411336575e4bf632a1828f5f5979726_3" [label="3: Message Call: sHandler: \n n$3=*&self:A* [line 45, column 4]\n n$4=*n$3._b:B* [line 45, column 4]\n n$0=*&self:A* [line 45, column 16]\n n$5=_fun_B.sHandler:(n$4:B*,(_fun_objc_blockA.capture_1,(n$0 &self:A*)):_fn_(*)) block_params virtual [line 45, column 3]\n " shape="box"]
"capture#A#instance.d411336575e4bf632a1828f5f5979726_3" -> "capture#A#instance.d411336575e4bf632a1828f5f5979726_2" ;
@ -60,11 +60,11 @@ digraph cfg {
"capture#A#instance.d411336575e4bf632a1828f5f5979726_4" -> "capture#A#instance.d411336575e4bf632a1828f5f5979726_3" ;
"sHandler:#B#instance.590685250eb38eaab242405cd45c572b_1" [label="1: Start B::sHandler:\nFormals: self:B* h:_fn_(*)\nLocals: \n " color=yellow style=filled]
"sHandler:#B#instance.590685250eb38eaab242405cd45c572b_1" [label="1: Start B.sHandler:\nFormals: self:B* h:_fn_(*)\nLocals: \n " color=yellow style=filled]
"sHandler:#B#instance.590685250eb38eaab242405cd45c572b_1" -> "sHandler:#B#instance.590685250eb38eaab242405cd45c572b_3" ;
"sHandler:#B#instance.590685250eb38eaab242405cd45c572b_2" [label="2: Exit B::sHandler: \n " color=yellow style=filled]
"sHandler:#B#instance.590685250eb38eaab242405cd45c572b_2" [label="2: Exit B.sHandler: \n " color=yellow style=filled]
"sHandler:#B#instance.590685250eb38eaab242405cd45c572b_3" [label="3: BinaryOperatorStmt: Assign \n n$0=*&self:B* [line 28, column 3]\n n$1=*&h:_fn_(*) [line 28, column 14]\n *n$0._h:_fn_(*)=n$1 [line 28, column 3]\n " shape="box"]

@ -11,107 +11,107 @@ digraph cfg {
"main.fad58de7366495db4650cfefac2fcd61_3" -> "main.fad58de7366495db4650cfefac2fcd61_2" ;
"objc_blockA::test2_3.fb3c77086d19ce0276bcab02dc4db00b_1" [label="1: Start objc_blockA::test2_3\nFormals: \nLocals: p:objc_object* \n " color=yellow style=filled]
"objc_blockA.test2_3.9e734e5048a7cd48cace952a9e183154_1" [label="1: Start objc_blockA.test2_3\nFormals: \nLocals: p:objc_object* \n " color=yellow style=filled]
"objc_blockA::test2_3.fb3c77086d19ce0276bcab02dc4db00b_1" -> "objc_blockA::test2_3.fb3c77086d19ce0276bcab02dc4db00b_3" ;
"objc_blockA::test2_3.fb3c77086d19ce0276bcab02dc4db00b_2" [label="2: Exit objc_blockA::test2_3 \n " color=yellow style=filled]
"objc_blockA.test2_3.9e734e5048a7cd48cace952a9e183154_1" -> "objc_blockA.test2_3.9e734e5048a7cd48cace952a9e183154_3" ;
"objc_blockA.test2_3.9e734e5048a7cd48cace952a9e183154_2" [label="2: Exit objc_blockA.test2_3 \n " color=yellow style=filled]
"objc_blockA::test2_3.fb3c77086d19ce0276bcab02dc4db00b_3" [label="3: DeclStmt \n VARIABLE_DECLARED(p:objc_object*); [line 39, column 5]\n n$8=*&#GB<codetoanalyze/objc/frontend/block/static.m>$A::test2.sharedInstance:objc_object* [line 39, column 12]\n *&p:objc_object*=n$8 [line 39, column 5]\n " shape="box"]
"objc_blockA.test2_3.9e734e5048a7cd48cace952a9e183154_3" [label="3: DeclStmt \n VARIABLE_DECLARED(p:objc_object*); [line 39, column 5]\n n$8=*&#GB<codetoanalyze/objc/frontend/block/static.m>$A.test2.sharedInstance:objc_object* [line 39, column 12]\n *&p:objc_object*=n$8 [line 39, column 5]\n " shape="box"]
"objc_blockA::test2_3.fb3c77086d19ce0276bcab02dc4db00b_3" -> "objc_blockA::test2_3.fb3c77086d19ce0276bcab02dc4db00b_2" ;
"objc_blockA::test3_4.8f7c09c3ce64c2617cc0a9977490e152_1" [label="1: Start objc_blockA::test3_4\nFormals: \nLocals: \n " color=yellow style=filled]
"objc_blockA.test2_3.9e734e5048a7cd48cace952a9e183154_3" -> "objc_blockA.test2_3.9e734e5048a7cd48cace952a9e183154_2" ;
"objc_blockA.test3_4.cf509a07e14b642d4e78e323de50d37f_1" [label="1: Start objc_blockA.test3_4\nFormals: \nLocals: \n " color=yellow style=filled]
"objc_blockA::test3_4.8f7c09c3ce64c2617cc0a9977490e152_1" -> "objc_blockA::test3_4.8f7c09c3ce64c2617cc0a9977490e152_3" ;
"objc_blockA::test3_4.8f7c09c3ce64c2617cc0a9977490e152_2" [label="2: Exit objc_blockA::test3_4 \n " color=yellow style=filled]
"objc_blockA.test3_4.cf509a07e14b642d4e78e323de50d37f_1" -> "objc_blockA.test3_4.cf509a07e14b642d4e78e323de50d37f_3" ;
"objc_blockA.test3_4.cf509a07e14b642d4e78e323de50d37f_2" [label="2: Exit objc_blockA.test3_4 \n " color=yellow style=filled]
"objc_blockA::test3_4.8f7c09c3ce64c2617cc0a9977490e152_3" [label="3: UnaryOperator \n n$13=*&#GB<codetoanalyze/objc/frontend/block/static.m>$A::test3.i:int [line 50, column 5]\n *&#GB<codetoanalyze/objc/frontend/block/static.m>$A::test3.i:int=(n$13 + 1) [line 50, column 5]\n " shape="box"]
"objc_blockA.test3_4.cf509a07e14b642d4e78e323de50d37f_3" [label="3: UnaryOperator \n n$13=*&#GB<codetoanalyze/objc/frontend/block/static.m>$A.test3.i:int [line 50, column 5]\n *&#GB<codetoanalyze/objc/frontend/block/static.m>$A.test3.i:int=(n$13 + 1) [line 50, column 5]\n " shape="box"]
"objc_blockA::test3_4.8f7c09c3ce64c2617cc0a9977490e152_3" -> "objc_blockA::test3_4.8f7c09c3ce64c2617cc0a9977490e152_2" ;
"objc_blockA::test_1.2002c886c49fdecdc4bf7a72fba954ba_1" [label="1: Start objc_blockA::test_1\nFormals: \nLocals: \n " color=yellow style=filled]
"objc_blockA.test3_4.cf509a07e14b642d4e78e323de50d37f_3" -> "objc_blockA.test3_4.cf509a07e14b642d4e78e323de50d37f_2" ;
"objc_blockA.test_1.78a4922219b515f90379bfccc4d8771a_1" [label="1: Start objc_blockA.test_1\nFormals: \nLocals: \n " color=yellow style=filled]
"objc_blockA::test_1.2002c886c49fdecdc4bf7a72fba954ba_1" -> "objc_blockA::test_1.2002c886c49fdecdc4bf7a72fba954ba_3" ;
"objc_blockA::test_1.2002c886c49fdecdc4bf7a72fba954ba_2" [label="2: Exit objc_blockA::test_1 \n " color=yellow style=filled]
"objc_blockA.test_1.78a4922219b515f90379bfccc4d8771a_1" -> "objc_blockA.test_1.78a4922219b515f90379bfccc4d8771a_3" ;
"objc_blockA.test_1.78a4922219b515f90379bfccc4d8771a_2" [label="2: Exit objc_blockA.test_1 \n " color=yellow style=filled]
"objc_blockA::test_1.2002c886c49fdecdc4bf7a72fba954ba_3" [label="3: BinaryOperatorStmt: Assign \n n$1=_fun___objc_alloc_no_fail(sizeof(t=A):unsigned long) [line 19, column 23]\n n$2=_fun_NSObject::init(n$1:A*) virtual [line 19, column 22]\n *&#GB<codetoanalyze/objc/frontend/block/static.m>$A::test.sharedInstance:objc_object*=n$2 [line 19, column 5]\n " shape="box"]
"objc_blockA.test_1.78a4922219b515f90379bfccc4d8771a_3" [label="3: BinaryOperatorStmt: Assign \n n$1=_fun___objc_alloc_no_fail(sizeof(t=A):unsigned long) [line 19, column 23]\n n$2=_fun_NSObject.init(n$1:A*) virtual [line 19, column 22]\n *&#GB<codetoanalyze/objc/frontend/block/static.m>$A.test.sharedInstance:objc_object*=n$2 [line 19, column 5]\n " shape="box"]
"objc_blockA::test_1.2002c886c49fdecdc4bf7a72fba954ba_3" -> "objc_blockA::test_1.2002c886c49fdecdc4bf7a72fba954ba_2" ;
"objc_blockA::test_leak_2.5f4f71e062f7fac0ae4a5b163d676189_1" [label="1: Start objc_blockA::test_leak_2\nFormals: \nLocals: \n " color=yellow style=filled]
"objc_blockA.test_1.78a4922219b515f90379bfccc4d8771a_3" -> "objc_blockA.test_1.78a4922219b515f90379bfccc4d8771a_2" ;
"objc_blockA.test_leak_2.283de372da56cae6e3edcf8db6c39b92_1" [label="1: Start objc_blockA.test_leak_2\nFormals: \nLocals: \n " color=yellow style=filled]
"objc_blockA::test_leak_2.5f4f71e062f7fac0ae4a5b163d676189_1" -> "objc_blockA::test_leak_2.5f4f71e062f7fac0ae4a5b163d676189_3" ;
"objc_blockA::test_leak_2.5f4f71e062f7fac0ae4a5b163d676189_2" [label="2: Exit objc_blockA::test_leak_2 \n " color=yellow style=filled]
"objc_blockA.test_leak_2.283de372da56cae6e3edcf8db6c39b92_1" -> "objc_blockA.test_leak_2.283de372da56cae6e3edcf8db6c39b92_3" ;
"objc_blockA.test_leak_2.283de372da56cae6e3edcf8db6c39b92_2" [label="2: Exit objc_blockA.test_leak_2 \n " color=yellow style=filled]
"objc_blockA::test_leak_2.5f4f71e062f7fac0ae4a5b163d676189_3" [label="3: BinaryOperatorStmt: Assign \n n$4=_fun___objc_alloc_no_fail(sizeof(t=A):unsigned long) [line 29, column 23]\n n$5=_fun_NSObject::init(n$4:A*) virtual [line 29, column 22]\n *&#GB<codetoanalyze/objc/frontend/block/static.m>$A::test_leak.sharedInstance:objc_object*=n$5 [line 29, column 5]\n " shape="box"]
"objc_blockA.test_leak_2.283de372da56cae6e3edcf8db6c39b92_3" [label="3: BinaryOperatorStmt: Assign \n n$4=_fun___objc_alloc_no_fail(sizeof(t=A):unsigned long) [line 29, column 23]\n n$5=_fun_NSObject.init(n$4:A*) virtual [line 29, column 22]\n *&#GB<codetoanalyze/objc/frontend/block/static.m>$A.test_leak.sharedInstance:objc_object*=n$5 [line 29, column 5]\n " shape="box"]
"objc_blockA::test_leak_2.5f4f71e062f7fac0ae4a5b163d676189_3" -> "objc_blockA::test_leak_2.5f4f71e062f7fac0ae4a5b163d676189_2" ;
"test#A#class.c69ae9e6be36a2eeb5dcbaa1187c354d_1" [label="1: Start A::test\nFormals: \nLocals: \n " color=yellow style=filled]
"objc_blockA.test_leak_2.283de372da56cae6e3edcf8db6c39b92_3" -> "objc_blockA.test_leak_2.283de372da56cae6e3edcf8db6c39b92_2" ;
"test#A#class.c69ae9e6be36a2eeb5dcbaa1187c354d_1" [label="1: Start A.test\nFormals: \nLocals: \n " color=yellow style=filled]
"test#A#class.c69ae9e6be36a2eeb5dcbaa1187c354d_1" -> "test#A#class.c69ae9e6be36a2eeb5dcbaa1187c354d_4" ;
"test#A#class.c69ae9e6be36a2eeb5dcbaa1187c354d_2" [label="2: Exit A::test \n " color=yellow style=filled]
"test#A#class.c69ae9e6be36a2eeb5dcbaa1187c354d_2" [label="2: Exit A.test \n " color=yellow style=filled]
"test#A#class.c69ae9e6be36a2eeb5dcbaa1187c354d_3" [label="3: Return Stmt \n n$0=*&#GB<codetoanalyze/objc/frontend/block/static.m>$A::test.sharedInstance:objc_object* [line 23, column 10]\n *&return:objc_object*=n$0 [line 23, column 3]\n " shape="box"]
"test#A#class.c69ae9e6be36a2eeb5dcbaa1187c354d_3" [label="3: Return Stmt \n n$0=*&#GB<codetoanalyze/objc/frontend/block/static.m>$A.test.sharedInstance:objc_object* [line 23, column 10]\n *&return:objc_object*=n$0 [line 23, column 3]\n " shape="box"]
"test#A#class.c69ae9e6be36a2eeb5dcbaa1187c354d_3" -> "test#A#class.c69ae9e6be36a2eeb5dcbaa1187c354d_2" ;
"test#A#class.c69ae9e6be36a2eeb5dcbaa1187c354d_4" [label="4: Call (_fun_objc_blockA::test_1) \n n$3=(_fun_objc_blockA::test_1)() [line 18, column 3]\n " shape="box"]
"test#A#class.c69ae9e6be36a2eeb5dcbaa1187c354d_4" [label="4: Call (_fun_objc_blockA.test_1) \n n$3=(_fun_objc_blockA.test_1)() [line 18, column 3]\n " shape="box"]
"test#A#class.c69ae9e6be36a2eeb5dcbaa1187c354d_4" -> "test#A#class.c69ae9e6be36a2eeb5dcbaa1187c354d_3" ;
"test2#A#class.ce50cb13c3345decc567dd4eb6124604_1" [label="1: Start A::test2\nFormals: \nLocals: \n " color=yellow style=filled]
"test2#A#class.ce50cb13c3345decc567dd4eb6124604_1" [label="1: Start A.test2\nFormals: \nLocals: \n " color=yellow style=filled]
"test2#A#class.ce50cb13c3345decc567dd4eb6124604_1" -> "test2#A#class.ce50cb13c3345decc567dd4eb6124604_5" ;
"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$7=*&#GB<codetoanalyze/objc/frontend/block/static.m>$A::test2.sharedInstance:objc_object* [line 42, column 10]\n *&return:objc_object*=n$7 [line 42, column 3]\n " shape="box"]
"test2#A#class.ce50cb13c3345decc567dd4eb6124604_3" [label="3: Return Stmt \n n$7=*&#GB<codetoanalyze/objc/frontend/block/static.m>$A.test2.sharedInstance:objc_object* [line 42, column 10]\n *&return:objc_object*=n$7 [line 42, column 3]\n " shape="box"]
"test2#A#class.ce50cb13c3345decc567dd4eb6124604_3" -> "test2#A#class.ce50cb13c3345decc567dd4eb6124604_2" ;
"test2#A#class.ce50cb13c3345decc567dd4eb6124604_4" [label="4: Call (_fun_objc_blockA::test2_3) \n n$9=(_fun_objc_blockA::test2_3)() [line 37, column 3]\n " shape="box"]
"test2#A#class.ce50cb13c3345decc567dd4eb6124604_4" [label="4: Call (_fun_objc_blockA.test2_3) \n n$9=(_fun_objc_blockA.test2_3)() [line 37, column 3]\n " shape="box"]
"test2#A#class.ce50cb13c3345decc567dd4eb6124604_4" -> "test2#A#class.ce50cb13c3345decc567dd4eb6124604_3" ;
"test2#A#class.ce50cb13c3345decc567dd4eb6124604_5" [label="5: BinaryOperatorStmt: Assign \n n$10=_fun___objc_alloc_no_fail(sizeof(t=A):unsigned long) [line 36, column 21]\n n$11=_fun_NSObject::init(n$10:A*) virtual [line 36, column 20]\n *&#GB<codetoanalyze/objc/frontend/block/static.m>$A::test2.sharedInstance:objc_object*=n$11 [line 36, column 3]\n " shape="box"]
"test2#A#class.ce50cb13c3345decc567dd4eb6124604_5" [label="5: BinaryOperatorStmt: Assign \n n$10=_fun___objc_alloc_no_fail(sizeof(t=A):unsigned long) [line 36, column 21]\n n$11=_fun_NSObject.init(n$10:A*) virtual [line 36, column 20]\n *&#GB<codetoanalyze/objc/frontend/block/static.m>$A.test2.sharedInstance:objc_object*=n$11 [line 36, column 3]\n " shape="box"]
"test2#A#class.ce50cb13c3345decc567dd4eb6124604_5" -> "test2#A#class.ce50cb13c3345decc567dd4eb6124604_4" ;
"test3#A#class.041e0eaf033ae8cfa2af48253dfb07ee_1" [label="1: Start A::test3\nFormals: \nLocals: \n " color=yellow style=filled]
"test3#A#class.041e0eaf033ae8cfa2af48253dfb07ee_1" [label="1: Start A.test3\nFormals: \nLocals: \n " color=yellow style=filled]
"test3#A#class.041e0eaf033ae8cfa2af48253dfb07ee_1" -> "test3#A#class.041e0eaf033ae8cfa2af48253dfb07ee_4" ;
"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$12=*&#GB<codetoanalyze/objc/frontend/block/static.m>$A::test3.i:int [line 53, column 10]\n *&return:int=n$12 [line 53, column 3]\n " shape="box"]
"test3#A#class.041e0eaf033ae8cfa2af48253dfb07ee_3" [label="3: Return Stmt \n n$12=*&#GB<codetoanalyze/objc/frontend/block/static.m>$A.test3.i:int [line 53, column 10]\n *&return:int=n$12 [line 53, column 3]\n " shape="box"]
"test3#A#class.041e0eaf033ae8cfa2af48253dfb07ee_3" -> "test3#A#class.041e0eaf033ae8cfa2af48253dfb07ee_2" ;
"test3#A#class.041e0eaf033ae8cfa2af48253dfb07ee_4" [label="4: Call (_fun_objc_blockA::test3_4) \n n$14=(_fun_objc_blockA::test3_4)() [line 48, column 3]\n " shape="box"]
"test3#A#class.041e0eaf033ae8cfa2af48253dfb07ee_4" [label="4: Call (_fun_objc_blockA.test3_4) \n n$14=(_fun_objc_blockA.test3_4)() [line 48, column 3]\n " shape="box"]
"test3#A#class.041e0eaf033ae8cfa2af48253dfb07ee_4" -> "test3#A#class.041e0eaf033ae8cfa2af48253dfb07ee_3" ;
"test_leak#A#class.8240788aa53244827857be0e92d27671_1" [label="1: Start A::test_leak\nFormals: \nLocals: \n " color=yellow style=filled]
"test_leak#A#class.8240788aa53244827857be0e92d27671_1" [label="1: Start A.test_leak\nFormals: \nLocals: \n " color=yellow style=filled]
"test_leak#A#class.8240788aa53244827857be0e92d27671_1" -> "test_leak#A#class.8240788aa53244827857be0e92d27671_3" ;
"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_blockA::test_leak_2) \n n$6=(_fun_objc_blockA::test_leak_2)() [line 28, column 3]\n " shape="box"]
"test_leak#A#class.8240788aa53244827857be0e92d27671_3" [label="3: Call (_fun_objc_blockA.test_leak_2) \n n$6=(_fun_objc_blockA.test_leak_2)() [line 28, column 3]\n " shape="box"]
"test_leak#A#class.8240788aa53244827857be0e92d27671_3" -> "test_leak#A#class.8240788aa53244827857be0e92d27671_2" ;

@ -1,77 +1,77 @@
/* @generated */
digraph cfg {
"getBool#Boxing#instance.3315ec58788820860ec4adc889dd7197_1" [label="1: Start Boxing::getBool\nFormals: self:Boxing*\nLocals: n:NSNumber* \n " color=yellow style=filled]
"getBool#Boxing#instance.3315ec58788820860ec4adc889dd7197_1" [label="1: Start Boxing.getBool\nFormals: self:Boxing*\nLocals: n:NSNumber* \n " color=yellow style=filled]
"getBool#Boxing#instance.3315ec58788820860ec4adc889dd7197_1" -> "getBool#Boxing#instance.3315ec58788820860ec4adc889dd7197_4" ;
"getBool#Boxing#instance.3315ec58788820860ec4adc889dd7197_2" [label="2: Exit Boxing::getBool \n " color=yellow style=filled]
"getBool#Boxing#instance.3315ec58788820860ec4adc889dd7197_2" [label="2: Exit Boxing.getBool \n " color=yellow style=filled]
"getBool#Boxing#instance.3315ec58788820860ec4adc889dd7197_3" [label="3: Return Stmt \n n$12=_fun_NSNumber::numberWithBool:(1:_Bool) [line 36, column 10]\n *&return:NSNumber*=n$12 [line 36, column 3]\n " shape="box"]
"getBool#Boxing#instance.3315ec58788820860ec4adc889dd7197_3" [label="3: Return Stmt \n n$12=_fun_NSNumber.numberWithBool:(1:_Bool) [line 36, column 10]\n *&return:NSNumber*=n$12 [line 36, column 3]\n " shape="box"]
"getBool#Boxing#instance.3315ec58788820860ec4adc889dd7197_3" -> "getBool#Boxing#instance.3315ec58788820860ec4adc889dd7197_2" ;
"getBool#Boxing#instance.3315ec58788820860ec4adc889dd7197_4" [label="4: DeclStmt \n VARIABLE_DECLARED(n:NSNumber*); [line 35, column 3]\n n$13=_fun_NSNumber::numberWithBool:(1:_Bool) [line 35, column 17]\n *&n:NSNumber*=n$13 [line 35, column 3]\n " shape="box"]
"getBool#Boxing#instance.3315ec58788820860ec4adc889dd7197_4" [label="4: DeclStmt \n VARIABLE_DECLARED(n:NSNumber*); [line 35, column 3]\n n$13=_fun_NSNumber.numberWithBool:(1:_Bool) [line 35, column 17]\n *&n:NSNumber*=n$13 [line 35, column 3]\n " shape="box"]
"getBool#Boxing#instance.3315ec58788820860ec4adc889dd7197_4" -> "getBool#Boxing#instance.3315ec58788820860ec4adc889dd7197_3" ;
"getDouble#Boxing#instance.d2ccf367cc9eb4c0b5e345694f262070_1" [label="1: Start Boxing::getDouble\nFormals: self:Boxing*\nLocals: n:NSNumber* \n " color=yellow style=filled]
"getDouble#Boxing#instance.d2ccf367cc9eb4c0b5e345694f262070_1" [label="1: Start Boxing.getDouble\nFormals: self:Boxing*\nLocals: n:NSNumber* \n " color=yellow style=filled]
"getDouble#Boxing#instance.d2ccf367cc9eb4c0b5e345694f262070_1" -> "getDouble#Boxing#instance.d2ccf367cc9eb4c0b5e345694f262070_4" ;
"getDouble#Boxing#instance.d2ccf367cc9eb4c0b5e345694f262070_2" [label="2: Exit Boxing::getDouble \n " color=yellow style=filled]
"getDouble#Boxing#instance.d2ccf367cc9eb4c0b5e345694f262070_2" [label="2: Exit Boxing.getDouble \n " color=yellow style=filled]
"getDouble#Boxing#instance.d2ccf367cc9eb4c0b5e345694f262070_3" [label="3: Return Stmt \n n$10=_fun_NSNumber::numberWithDouble:(1.5:double) [line 31, column 10]\n *&return:NSNumber*=n$10 [line 31, column 3]\n " shape="box"]
"getDouble#Boxing#instance.d2ccf367cc9eb4c0b5e345694f262070_3" [label="3: Return Stmt \n n$10=_fun_NSNumber.numberWithDouble:(1.5:double) [line 31, column 10]\n *&return:NSNumber*=n$10 [line 31, column 3]\n " shape="box"]
"getDouble#Boxing#instance.d2ccf367cc9eb4c0b5e345694f262070_3" -> "getDouble#Boxing#instance.d2ccf367cc9eb4c0b5e345694f262070_2" ;
"getDouble#Boxing#instance.d2ccf367cc9eb4c0b5e345694f262070_4" [label="4: DeclStmt \n VARIABLE_DECLARED(n:NSNumber*); [line 30, column 3]\n n$11=_fun_NSNumber::numberWithDouble:(1.5:double) [line 30, column 17]\n *&n:NSNumber*=n$11 [line 30, column 3]\n " shape="box"]
"getDouble#Boxing#instance.d2ccf367cc9eb4c0b5e345694f262070_4" [label="4: DeclStmt \n VARIABLE_DECLARED(n:NSNumber*); [line 30, column 3]\n n$11=_fun_NSNumber.numberWithDouble:(1.5:double) [line 30, column 17]\n *&n:NSNumber*=n$11 [line 30, column 3]\n " shape="box"]
"getDouble#Boxing#instance.d2ccf367cc9eb4c0b5e345694f262070_4" -> "getDouble#Boxing#instance.d2ccf367cc9eb4c0b5e345694f262070_3" ;
"getFloat#Boxing#instance.3de027274316c0cdfd230c6dbd0333a0_1" [label="1: Start Boxing::getFloat\nFormals: self:Boxing*\nLocals: n:NSNumber* \n " color=yellow style=filled]
"getFloat#Boxing#instance.3de027274316c0cdfd230c6dbd0333a0_1" [label="1: Start Boxing.getFloat\nFormals: self:Boxing*\nLocals: n:NSNumber* \n " color=yellow style=filled]
"getFloat#Boxing#instance.3de027274316c0cdfd230c6dbd0333a0_1" -> "getFloat#Boxing#instance.3de027274316c0cdfd230c6dbd0333a0_4" ;
"getFloat#Boxing#instance.3de027274316c0cdfd230c6dbd0333a0_2" [label="2: Exit Boxing::getFloat \n " color=yellow style=filled]
"getFloat#Boxing#instance.3de027274316c0cdfd230c6dbd0333a0_2" [label="2: Exit Boxing.getFloat \n " color=yellow style=filled]
"getFloat#Boxing#instance.3de027274316c0cdfd230c6dbd0333a0_3" [label="3: Return Stmt \n n$8=_fun_NSNumber::numberWithFloat:(1.5:float) [line 26, column 10]\n *&return:NSNumber*=n$8 [line 26, column 3]\n " shape="box"]
"getFloat#Boxing#instance.3de027274316c0cdfd230c6dbd0333a0_3" [label="3: Return Stmt \n n$8=_fun_NSNumber.numberWithFloat:(1.5:float) [line 26, column 10]\n *&return:NSNumber*=n$8 [line 26, column 3]\n " shape="box"]
"getFloat#Boxing#instance.3de027274316c0cdfd230c6dbd0333a0_3" -> "getFloat#Boxing#instance.3de027274316c0cdfd230c6dbd0333a0_2" ;
"getFloat#Boxing#instance.3de027274316c0cdfd230c6dbd0333a0_4" [label="4: DeclStmt \n VARIABLE_DECLARED(n:NSNumber*); [line 25, column 3]\n n$9=_fun_NSNumber::numberWithFloat:(1.5:float) [line 25, column 17]\n *&n:NSNumber*=n$9 [line 25, column 3]\n " shape="box"]
"getFloat#Boxing#instance.3de027274316c0cdfd230c6dbd0333a0_4" [label="4: DeclStmt \n VARIABLE_DECLARED(n:NSNumber*); [line 25, column 3]\n n$9=_fun_NSNumber.numberWithFloat:(1.5:float) [line 25, column 17]\n *&n:NSNumber*=n$9 [line 25, column 3]\n " shape="box"]
"getFloat#Boxing#instance.3de027274316c0cdfd230c6dbd0333a0_4" -> "getFloat#Boxing#instance.3de027274316c0cdfd230c6dbd0333a0_3" ;
"getInt#Boxing#instance.6b1205ea87bb285944ca74c0597dcf85_1" [label="1: Start Boxing::getInt\nFormals: self:Boxing*\nLocals: n:NSNumber* \n " color=yellow style=filled]
"getInt#Boxing#instance.6b1205ea87bb285944ca74c0597dcf85_1" [label="1: Start Boxing.getInt\nFormals: self:Boxing*\nLocals: n:NSNumber* \n " color=yellow style=filled]
"getInt#Boxing#instance.6b1205ea87bb285944ca74c0597dcf85_1" -> "getInt#Boxing#instance.6b1205ea87bb285944ca74c0597dcf85_4" ;
"getInt#Boxing#instance.6b1205ea87bb285944ca74c0597dcf85_2" [label="2: Exit Boxing::getInt \n " color=yellow style=filled]
"getInt#Boxing#instance.6b1205ea87bb285944ca74c0597dcf85_2" [label="2: Exit Boxing.getInt \n " color=yellow style=filled]
"getInt#Boxing#instance.6b1205ea87bb285944ca74c0597dcf85_3" [label="3: Return Stmt \n n$6=_fun_NSNumber::numberWithInt:(5:int) [line 21, column 10]\n *&return:NSNumber*=n$6 [line 21, column 3]\n " shape="box"]
"getInt#Boxing#instance.6b1205ea87bb285944ca74c0597dcf85_3" [label="3: Return Stmt \n n$6=_fun_NSNumber.numberWithInt:(5:int) [line 21, column 10]\n *&return:NSNumber*=n$6 [line 21, column 3]\n " shape="box"]
"getInt#Boxing#instance.6b1205ea87bb285944ca74c0597dcf85_3" -> "getInt#Boxing#instance.6b1205ea87bb285944ca74c0597dcf85_2" ;
"getInt#Boxing#instance.6b1205ea87bb285944ca74c0597dcf85_4" [label="4: DeclStmt \n VARIABLE_DECLARED(n:NSNumber*); [line 20, column 3]\n n$7=_fun_NSNumber::numberWithInt:(5:int) [line 20, column 17]\n *&n:NSNumber*=n$7 [line 20, column 3]\n " shape="box"]
"getInt#Boxing#instance.6b1205ea87bb285944ca74c0597dcf85_4" [label="4: DeclStmt \n VARIABLE_DECLARED(n:NSNumber*); [line 20, column 3]\n n$7=_fun_NSNumber.numberWithInt:(5:int) [line 20, column 17]\n *&n:NSNumber*=n$7 [line 20, column 3]\n " shape="box"]
"getInt#Boxing#instance.6b1205ea87bb285944ca74c0597dcf85_4" -> "getInt#Boxing#instance.6b1205ea87bb285944ca74c0597dcf85_3" ;
"getIntExp#Boxing#instance.1230c4f8d594629f186c72bd450c75b1_1" [label="1: Start Boxing::getIntExp\nFormals: self:Boxing*\nLocals: n:NSNumber* y:int x:int \n " color=yellow style=filled]
"getIntExp#Boxing#instance.1230c4f8d594629f186c72bd450c75b1_1" [label="1: Start Boxing.getIntExp\nFormals: self:Boxing*\nLocals: n:NSNumber* y:int x:int \n " color=yellow style=filled]
"getIntExp#Boxing#instance.1230c4f8d594629f186c72bd450c75b1_1" -> "getIntExp#Boxing#instance.1230c4f8d594629f186c72bd450c75b1_6" ;
"getIntExp#Boxing#instance.1230c4f8d594629f186c72bd450c75b1_2" [label="2: Exit Boxing::getIntExp \n " color=yellow style=filled]
"getIntExp#Boxing#instance.1230c4f8d594629f186c72bd450c75b1_2" [label="2: Exit Boxing.getIntExp \n " color=yellow style=filled]
"getIntExp#Boxing#instance.1230c4f8d594629f186c72bd450c75b1_3" [label="3: Return Stmt \n n$0=*&x:int [line 16, column 12]\n n$1=*&y:int [line 16, column 16]\n n$2=_fun_NSNumber::numberWithInt:((n$0 + n$1):int) [line 16, column 10]\n *&return:NSNumber*=n$2 [line 16, column 3]\n " shape="box"]
"getIntExp#Boxing#instance.1230c4f8d594629f186c72bd450c75b1_3" [label="3: Return Stmt \n n$0=*&x:int [line 16, column 12]\n n$1=*&y:int [line 16, column 16]\n n$2=_fun_NSNumber.numberWithInt:((n$0 + n$1):int) [line 16, column 10]\n *&return:NSNumber*=n$2 [line 16, column 3]\n " shape="box"]
"getIntExp#Boxing#instance.1230c4f8d594629f186c72bd450c75b1_3" -> "getIntExp#Boxing#instance.1230c4f8d594629f186c72bd450c75b1_2" ;
"getIntExp#Boxing#instance.1230c4f8d594629f186c72bd450c75b1_4" [label="4: DeclStmt \n VARIABLE_DECLARED(n:NSNumber*); [line 15, column 3]\n n$3=*&x:int [line 15, column 41]\n n$4=*&y:int [line 15, column 45]\n n$5=_fun_NSNumber::numberWithInt:((n$3 + n$4):int) [line 15, column 17]\n *&n:NSNumber*=n$5 [line 15, column 3]\n " shape="box"]
"getIntExp#Boxing#instance.1230c4f8d594629f186c72bd450c75b1_4" [label="4: DeclStmt \n VARIABLE_DECLARED(n:NSNumber*); [line 15, column 3]\n n$3=*&x:int [line 15, column 41]\n n$4=*&y:int [line 15, column 45]\n n$5=_fun_NSNumber.numberWithInt:((n$3 + n$4):int) [line 15, column 17]\n *&n:NSNumber*=n$5 [line 15, column 3]\n " shape="box"]
"getIntExp#Boxing#instance.1230c4f8d594629f186c72bd450c75b1_4" -> "getIntExp#Boxing#instance.1230c4f8d594629f186c72bd450c75b1_3" ;
@ -83,33 +83,33 @@ digraph cfg {
"getIntExp#Boxing#instance.1230c4f8d594629f186c72bd450c75b1_6" -> "getIntExp#Boxing#instance.1230c4f8d594629f186c72bd450c75b1_5" ;
"getS#Boxing#instance.97ccd331527b54376eb9b2b822cb25a3_1" [label="1: Start Boxing::getS\nFormals: self:Boxing*\nLocals: s:NSString* \n " color=yellow style=filled]
"getS#Boxing#instance.97ccd331527b54376eb9b2b822cb25a3_1" [label="1: Start Boxing.getS\nFormals: self:Boxing*\nLocals: s:NSString* \n " color=yellow style=filled]
"getS#Boxing#instance.97ccd331527b54376eb9b2b822cb25a3_1" -> "getS#Boxing#instance.97ccd331527b54376eb9b2b822cb25a3_4" ;
"getS#Boxing#instance.97ccd331527b54376eb9b2b822cb25a3_2" [label="2: Exit Boxing::getS \n " color=yellow style=filled]
"getS#Boxing#instance.97ccd331527b54376eb9b2b822cb25a3_2" [label="2: Exit Boxing.getS \n " color=yellow style=filled]
"getS#Boxing#instance.97ccd331527b54376eb9b2b822cb25a3_3" [label="3: Return Stmt \n n$15=_fun_NSString::stringWithUTF8String:(\"hello world\":char*) [line 41, column 10]\n *&return:NSString*=n$15 [line 41, column 3]\n " shape="box"]
"getS#Boxing#instance.97ccd331527b54376eb9b2b822cb25a3_3" [label="3: Return Stmt \n n$15=_fun_NSString.stringWithUTF8String:(\"hello world\":char*) [line 41, column 10]\n *&return:NSString*=n$15 [line 41, column 3]\n " shape="box"]
"getS#Boxing#instance.97ccd331527b54376eb9b2b822cb25a3_3" -> "getS#Boxing#instance.97ccd331527b54376eb9b2b822cb25a3_2" ;
"getS#Boxing#instance.97ccd331527b54376eb9b2b822cb25a3_4" [label="4: DeclStmt \n VARIABLE_DECLARED(s:NSString*); [line 40, column 3]\n n$16=_fun_strdup(\"hello world\":char*) [line 40, column 19]\n n$17=_fun_NSString::stringWithUTF8String:(n$16:char*) [line 40, column 17]\n *&s:NSString*=n$17 [line 40, column 3]\n " shape="box"]
"getS#Boxing#instance.97ccd331527b54376eb9b2b822cb25a3_4" [label="4: DeclStmt \n VARIABLE_DECLARED(s:NSString*); [line 40, column 3]\n n$16=_fun_strdup(\"hello world\":char*) [line 40, column 19]\n n$17=_fun_NSString.stringWithUTF8String:(n$16:char*) [line 40, column 17]\n *&s:NSString*=n$17 [line 40, column 3]\n " shape="box"]
"getS#Boxing#instance.97ccd331527b54376eb9b2b822cb25a3_4" -> "getS#Boxing#instance.97ccd331527b54376eb9b2b822cb25a3_3" ;
"getString#Boxing#instance.0cdd84065923a1c621289a9de4707559_1" [label="1: Start Boxing::getString\nFormals: self:Boxing*\nLocals: s:NSString* \n " color=yellow style=filled]
"getString#Boxing#instance.0cdd84065923a1c621289a9de4707559_1" [label="1: Start Boxing.getString\nFormals: self:Boxing*\nLocals: s:NSString* \n " color=yellow style=filled]
"getString#Boxing#instance.0cdd84065923a1c621289a9de4707559_1" -> "getString#Boxing#instance.0cdd84065923a1c621289a9de4707559_4" ;
"getString#Boxing#instance.0cdd84065923a1c621289a9de4707559_2" [label="2: Exit Boxing::getString \n " color=yellow style=filled]
"getString#Boxing#instance.0cdd84065923a1c621289a9de4707559_2" [label="2: Exit Boxing.getString \n " color=yellow style=filled]
"getString#Boxing#instance.0cdd84065923a1c621289a9de4707559_3" [label="3: Return Stmt \n n$19=*&s:NSString* [line 47, column 10]\n *&return:NSString*=n$19 [line 47, column 3]\n " shape="box"]
"getString#Boxing#instance.0cdd84065923a1c621289a9de4707559_3" -> "getString#Boxing#instance.0cdd84065923a1c621289a9de4707559_2" ;
"getString#Boxing#instance.0cdd84065923a1c621289a9de4707559_4" [label="4: DeclStmt \n VARIABLE_DECLARED(s:NSString*); [line 46, column 3]\n n$20=_fun_NSString::unknownSelector:(\"hello world\":char*) [line 46, column 17]\n *&s:NSString*=n$20 [line 46, column 3]\n " shape="box"]
"getString#Boxing#instance.0cdd84065923a1c621289a9de4707559_4" [label="4: DeclStmt \n VARIABLE_DECLARED(s:NSString*); [line 46, column 3]\n n$20=_fun_NSString.unknownSelector:(\"hello world\":char*) [line 46, column 17]\n *&s:NSString*=n$20 [line 46, column 3]\n " shape="box"]
"getString#Boxing#instance.0cdd84065923a1c621289a9de4707559_4" -> "getString#Boxing#instance.0cdd84065923a1c621289a9de4707559_3" ;

@ -28,23 +28,23 @@ digraph cfg {
"main.fad58de7366495db4650cfefac2fcd61_7" -> "main.fad58de7366495db4650cfefac2fcd61_3" ;
"main.fad58de7366495db4650cfefac2fcd61_8" [label="8: BinaryOperatorStmt: Assign \n n$1=*&germanCars:NSArray* [line 24, column 26]\n n$2=_fun_NSArray::nextObject(n$1:NSArray*) virtual [line 24, column 3]\n *&item:NSString*=n$2 [line 24, column 3]\n " shape="box"]
"main.fad58de7366495db4650cfefac2fcd61_8" [label="8: BinaryOperatorStmt: Assign \n n$1=*&germanCars:NSArray* [line 24, column 26]\n n$2=_fun_NSArray.nextObject(n$1:NSArray*) virtual [line 24, column 3]\n *&item:NSString*=n$2 [line 24, column 3]\n " shape="box"]
"main.fad58de7366495db4650cfefac2fcd61_8" -> "main.fad58de7366495db4650cfefac2fcd61_4" ;
"main.fad58de7366495db4650cfefac2fcd61_9" [label="9: Call _fun_NSLog \n n$3=_fun_NSString::stringWithUTF8String:(\"%@\":char* const ) [line 25, column 11]\n n$4=*&item:NSString* [line 25, column 18]\n n$5=_fun_NSLog(n$3:objc_object*,n$4:NSString*) [line 25, column 5]\n " shape="box"]
"main.fad58de7366495db4650cfefac2fcd61_9" [label="9: Call _fun_NSLog \n n$3=_fun_NSString.stringWithUTF8String:(\"%@\":char* const ) [line 25, column 11]\n n$4=*&item:NSString* [line 25, column 18]\n n$5=_fun_NSLog(n$3:objc_object*,n$4:NSString*) [line 25, column 5]\n " shape="box"]
"main.fad58de7366495db4650cfefac2fcd61_9" -> "main.fad58de7366495db4650cfefac2fcd61_8" ;
"main.fad58de7366495db4650cfefac2fcd61_10" [label="10: BinaryOperatorStmt: Assign \n n$7=*&germanCars:NSArray* [line 24, column 26]\n n$8=_fun_NSArray::nextObject(n$7:NSArray*) virtual [line 24, column 3]\n *&item:NSString*=n$8 [line 24, column 3]\n " shape="box"]
"main.fad58de7366495db4650cfefac2fcd61_10" [label="10: BinaryOperatorStmt: Assign \n n$7=*&germanCars:NSArray* [line 24, column 26]\n n$8=_fun_NSArray.nextObject(n$7:NSArray*) virtual [line 24, column 3]\n *&item:NSString*=n$8 [line 24, column 3]\n " shape="box"]
"main.fad58de7366495db4650cfefac2fcd61_10" -> "main.fad58de7366495db4650cfefac2fcd61_4" ;
"main.fad58de7366495db4650cfefac2fcd61_11" [label="11: BinaryOperatorStmt: Assign \n n$9=*&germanCars:NSArray* [line 22, column 7]\n n$10=_fun_NSArray::objectAtIndexedSubscript:(n$9:NSArray*,(unsigned long)3:unsigned long) virtual [line 22, column 7]\n *&s:NSString*=n$10 [line 22, column 3]\n " shape="box"]
"main.fad58de7366495db4650cfefac2fcd61_11" [label="11: BinaryOperatorStmt: Assign \n n$9=*&germanCars:NSArray* [line 22, column 7]\n n$10=_fun_NSArray.objectAtIndexedSubscript:(n$9:NSArray*,(unsigned long)3:unsigned long) virtual [line 22, column 7]\n *&s:NSString*=n$10 [line 22, column 3]\n " shape="box"]
"main.fad58de7366495db4650cfefac2fcd61_11" -> "main.fad58de7366495db4650cfefac2fcd61_10" ;
"main.fad58de7366495db4650cfefac2fcd61_12" [label="12: DeclStmt \n VARIABLE_DECLARED(germanCars:NSArray*); [line 14, column 3]\n n$16=_fun_NSString::stringWithUTF8String:(\"Mercedes-Benz\":char* const ) [line 15, column 5]\n n$11=_fun_NSString::stringWithUTF8String:(\"BMW\":char* const ) [line 16, column 5]\n n$12=_fun_NSString::stringWithUTF8String:(\"Porsche\":char* const ) [line 17, column 5]\n n$13=_fun_NSString::stringWithUTF8String:(\"Opel\":char* const ) [line 18, column 5]\n n$14=_fun_NSString::stringWithUTF8String:(\"Volkswagen\":char* const ) [line 19, column 5]\n n$15=_fun_NSString::stringWithUTF8String:(\"Audi\":char* const ) [line 20, column 5]\n n$17=_fun_NSArray::arrayWithObjects:count:(n$16:objc_object*,n$11:objc_object*,n$12:objc_object*,n$13:objc_object*,n$14:objc_object*,n$15:objc_object*,null:objc_object*) [line 14, column 25]\n *&germanCars:NSArray*=n$17 [line 14, column 3]\n " shape="box"]
"main.fad58de7366495db4650cfefac2fcd61_12" [label="12: DeclStmt \n VARIABLE_DECLARED(germanCars:NSArray*); [line 14, column 3]\n n$16=_fun_NSString.stringWithUTF8String:(\"Mercedes-Benz\":char* const ) [line 15, column 5]\n n$11=_fun_NSString.stringWithUTF8String:(\"BMW\":char* const ) [line 16, column 5]\n n$12=_fun_NSString.stringWithUTF8String:(\"Porsche\":char* const ) [line 17, column 5]\n n$13=_fun_NSString.stringWithUTF8String:(\"Opel\":char* const ) [line 18, column 5]\n n$14=_fun_NSString.stringWithUTF8String:(\"Volkswagen\":char* const ) [line 19, column 5]\n n$15=_fun_NSString.stringWithUTF8String:(\"Audi\":char* const ) [line 20, column 5]\n n$17=_fun_NSArray.arrayWithObjects:count:(n$16:objc_object*,n$11:objc_object*,n$12:objc_object*,n$13:objc_object*,n$14:objc_object*,n$15:objc_object*,null:objc_object*) [line 14, column 25]\n *&germanCars:NSArray*=n$17 [line 14, column 3]\n " shape="box"]
"main.fad58de7366495db4650cfefac2fcd61_12" -> "main.fad58de7366495db4650cfefac2fcd61_11" ;

@ -7,11 +7,11 @@ digraph cfg {
"get_array.bca6b16c85e5b8ba530f380271b2ec79_2" [label="2: Exit get_array \n " color=yellow style=filled]
"get_array.bca6b16c85e5b8ba530f380271b2ec79_3" [label="3: Return Stmt \n n$1=_fun_NSString::stringWithUTF8String:(\"cat\":char* const ) [line 12, column 13]\n n$0=_fun_NSString::stringWithUTF8String:(\"dog\":char* const ) [line 12, column 21]\n n$2=_fun_NSArray::arrayWithObjects:count:(n$1:objc_object*,n$0:objc_object*,null:objc_object*) [line 12, column 10]\n *&return:NSArray*=n$2 [line 12, column 3]\n " shape="box"]
"get_array.bca6b16c85e5b8ba530f380271b2ec79_3" [label="3: Return Stmt \n n$1=_fun_NSString.stringWithUTF8String:(\"cat\":char* const ) [line 12, column 13]\n n$0=_fun_NSString.stringWithUTF8String:(\"dog\":char* const ) [line 12, column 21]\n n$2=_fun_NSArray.arrayWithObjects:count:(n$1:objc_object*,n$0:objc_object*,null:objc_object*) [line 12, column 10]\n *&return:NSArray*=n$2 [line 12, column 3]\n " shape="box"]
"get_array.bca6b16c85e5b8ba530f380271b2ec79_3" -> "get_array.bca6b16c85e5b8ba530f380271b2ec79_2" ;
"get_array.bca6b16c85e5b8ba530f380271b2ec79_4" [label="4: DeclStmt \n VARIABLE_DECLARED(animals:NSArray*); [line 11, column 3]\n n$4=_fun_NSString::stringWithUTF8String:(\"cat\":char* const ) [line 11, column 48]\n n$3=_fun_NSString::stringWithUTF8String:(\"dog\":char* const ) [line 11, column 56]\n n$5=_fun_NSArray::arrayWithObjects:(n$4:objc_object*,n$3:NSString*,null:void*) [line 11, column 22]\n *&animals:NSArray*=n$5 [line 11, column 3]\n " shape="box"]
"get_array.bca6b16c85e5b8ba530f380271b2ec79_4" [label="4: DeclStmt \n VARIABLE_DECLARED(animals:NSArray*); [line 11, column 3]\n n$4=_fun_NSString.stringWithUTF8String:(\"cat\":char* const ) [line 11, column 48]\n n$3=_fun_NSString.stringWithUTF8String:(\"dog\":char* const ) [line 11, column 56]\n n$5=_fun_NSArray.arrayWithObjects:(n$4:objc_object*,n$3:NSString*,null:void*) [line 11, column 22]\n *&animals:NSArray*=n$5 [line 11, column 3]\n " shape="box"]
"get_array.bca6b16c85e5b8ba530f380271b2ec79_4" -> "get_array.bca6b16c85e5b8ba530f380271b2ec79_3" ;

@ -7,7 +7,7 @@ digraph cfg {
"get_array1.5988b7ad8acf5c81cef9a72d072073c1_2" [label="2: Exit get_array1 \n " color=yellow style=filled]
"get_array1.5988b7ad8acf5c81cef9a72d072073c1_3" [label="3: Return Stmt \n n$5=_fun_NSString::stringWithUTF8String:(\"Matt\":char* const ) [line 12, column 53]\n n$0=_fun_NSString::stringWithUTF8String:(\"firstName\":char* const ) [line 13, column 53]\n n$1=_fun_NSString::stringWithUTF8String:(\"Galloway\":char* const ) [line 14, column 53]\n n$2=_fun_NSString::stringWithUTF8String:(\"lastName\":char* const ) [line 15, column 53]\n n$3=_fun_NSNumber::numberWithInt:(28:int) [line 16, column 53]\n n$4=_fun_NSString::stringWithUTF8String:(\"age\":char* const ) [line 17, column 53]\n n$6=_fun_NSDictionary::dictionaryWithObjectsAndKeys:(n$5:objc_object*,n$0:NSString*,n$1:NSString*,n$2:NSString*,n$3:NSNumber*,n$4:NSString*,null:void*) [line 12, column 10]\n *&return:NSDictionary*=n$6 [line 12, column 3]\n " shape="box"]
"get_array1.5988b7ad8acf5c81cef9a72d072073c1_3" [label="3: Return Stmt \n n$5=_fun_NSString.stringWithUTF8String:(\"Matt\":char* const ) [line 12, column 53]\n n$0=_fun_NSString.stringWithUTF8String:(\"firstName\":char* const ) [line 13, column 53]\n n$1=_fun_NSString.stringWithUTF8String:(\"Galloway\":char* const ) [line 14, column 53]\n n$2=_fun_NSString.stringWithUTF8String:(\"lastName\":char* const ) [line 15, column 53]\n n$3=_fun_NSNumber.numberWithInt:(28:int) [line 16, column 53]\n n$4=_fun_NSString.stringWithUTF8String:(\"age\":char* const ) [line 17, column 53]\n n$6=_fun_NSDictionary.dictionaryWithObjectsAndKeys:(n$5:objc_object*,n$0:NSString*,n$1:NSString*,n$2:NSString*,n$3:NSNumber*,n$4:NSString*,null:void*) [line 12, column 10]\n *&return:NSDictionary*=n$6 [line 12, column 3]\n " shape="box"]
"get_array1.5988b7ad8acf5c81cef9a72d072073c1_3" -> "get_array1.5988b7ad8acf5c81cef9a72d072073c1_2" ;
@ -18,7 +18,7 @@ digraph cfg {
"get_array2.84aa3c70cb20e7edbe4f0b8d0bd6aa3d_2" [label="2: Exit get_array2 \n " color=yellow style=filled]
"get_array2.84aa3c70cb20e7edbe4f0b8d0bd6aa3d_3" [label="3: Return Stmt \n n$5=_fun_NSString::stringWithUTF8String:(\"Matt\":char* const ) [line 23, column 27]\n n$0=_fun_NSString::stringWithUTF8String:(\"firstName\":char* const ) [line 23, column 12]\n n$1=_fun_NSString::stringWithUTF8String:(\"Galloway\":char* const ) [line 23, column 50]\n n$2=_fun_NSString::stringWithUTF8String:(\"lastName\":char* const ) [line 23, column 36]\n n$3=_fun_NSNumber::numberWithInt:(28:int) [line 23, column 72]\n n$4=_fun_NSString::stringWithUTF8String:(\"age\":char* const ) [line 23, column 63]\n n$6=_fun_NSDictionary::dictionaryWithObjects:forKeys:count:(n$5:objc_object*,n$0:objc_object*,n$1:objc_object*,n$2:objc_object*,n$3:objc_object*,n$4:objc_object*,null:objc_object*) [line 23, column 10]\n *&return:NSDictionary*=n$6 [line 23, column 3]\n " shape="box"]
"get_array2.84aa3c70cb20e7edbe4f0b8d0bd6aa3d_3" [label="3: Return Stmt \n n$5=_fun_NSString.stringWithUTF8String:(\"Matt\":char* const ) [line 23, column 27]\n n$0=_fun_NSString.stringWithUTF8String:(\"firstName\":char* const ) [line 23, column 12]\n n$1=_fun_NSString.stringWithUTF8String:(\"Galloway\":char* const ) [line 23, column 50]\n n$2=_fun_NSString.stringWithUTF8String:(\"lastName\":char* const ) [line 23, column 36]\n n$3=_fun_NSNumber.numberWithInt:(28:int) [line 23, column 72]\n n$4=_fun_NSString.stringWithUTF8String:(\"age\":char* const ) [line 23, column 63]\n n$6=_fun_NSDictionary.dictionaryWithObjects:forKeys:count:(n$5:objc_object*,n$0:objc_object*,n$1:objc_object*,n$2:objc_object*,n$3:objc_object*,n$4:objc_object*,null:objc_object*) [line 23, column 10]\n *&return:NSDictionary*=n$6 [line 23, column 3]\n " shape="box"]
"get_array2.84aa3c70cb20e7edbe4f0b8d0bd6aa3d_3" -> "get_array2.84aa3c70cb20e7edbe4f0b8d0bd6aa3d_2" ;

@ -7,7 +7,7 @@ digraph cfg {
"get_string1.37988b3a9459aa3258beba816a2c79fc_2" [label="2: Exit get_string1 \n " color=yellow style=filled]
"get_string1.37988b3a9459aa3258beba816a2c79fc_3" [label="3: Return Stmt \n n$0=_fun_NSString::stringWithUTF8String:(\"Hello World!\":char*) [line 12, column 10]\n *&return:NSString*=n$0 [line 12, column 3]\n " shape="box"]
"get_string1.37988b3a9459aa3258beba816a2c79fc_3" [label="3: Return Stmt \n n$0=_fun_NSString.stringWithUTF8String:(\"Hello World!\":char*) [line 12, column 10]\n *&return:NSString*=n$0 [line 12, column 3]\n " shape="box"]
"get_string1.37988b3a9459aa3258beba816a2c79fc_3" -> "get_string1.37988b3a9459aa3258beba816a2c79fc_2" ;
@ -18,7 +18,7 @@ digraph cfg {
"get_string2.896232467e9bb3980f16ff6f7a1da043_2" [label="2: Exit get_string2 \n " color=yellow style=filled]
"get_string2.896232467e9bb3980f16ff6f7a1da043_3" [label="3: Return Stmt \n n$0=_fun_NSString::stringWithUTF8String:(\"Hello World!\":char* const ) [line 15, column 34]\n *&return:NSString*=n$0 [line 15, column 27]\n " shape="box"]
"get_string2.896232467e9bb3980f16ff6f7a1da043_3" [label="3: Return Stmt \n n$0=_fun_NSString.stringWithUTF8String:(\"Hello World!\":char* const ) [line 15, column 34]\n *&return:NSString*=n$0 [line 15, column 27]\n " shape="box"]
"get_string2.896232467e9bb3980f16ff6f7a1da043_3" -> "get_string2.896232467e9bb3980f16ff6f7a1da043_2" ;

@ -1,22 +1,22 @@
/* @generated */
digraph cfg {
"test4:#A#instance.718a300d6fa63609a70f22221a548ee5_1" [label="1: Start A::test4:\nFormals: self:A* x:int\nLocals: \n " color=yellow style=filled]
"test4:#A#instance.718a300d6fa63609a70f22221a548ee5_1" [label="1: Start A.test4:\nFormals: self:A* x:int\nLocals: \n " color=yellow style=filled]
"test4:#A#instance.718a300d6fa63609a70f22221a548ee5_1" -> "test4:#A#instance.718a300d6fa63609a70f22221a548ee5_3" ;
"test4:#A#instance.718a300d6fa63609a70f22221a548ee5_2" [label="2: Exit A::test4: \n " color=yellow style=filled]
"test4:#A#instance.718a300d6fa63609a70f22221a548ee5_2" [label="2: Exit A.test4: \n " color=yellow style=filled]
"test4:#A#instance.718a300d6fa63609a70f22221a548ee5_3" [label="3: Return Stmt \n n$0=*&x:int [line 18, column 10]\n *&return:int=n$0 [line 18, column 3]\n " shape="box"]
"test4:#A#instance.718a300d6fa63609a70f22221a548ee5_3" -> "test4:#A#instance.718a300d6fa63609a70f22221a548ee5_2" ;
"test5:#A#instance.4d6ac42705853160b533ab46b444624a_1" [label="1: Start A::test5:\nFormals: self:A* b:_Bool\nLocals: 0$?%__sil_tmpSIL_temp_conditional___n$1:int \n " color=yellow style=filled]
"test5:#A#instance.4d6ac42705853160b533ab46b444624a_1" [label="1: Start A.test5:\nFormals: self:A* b:_Bool\nLocals: 0$?%__sil_tmpSIL_temp_conditional___n$1:int \n " color=yellow style=filled]
"test5:#A#instance.4d6ac42705853160b533ab46b444624a_1" -> "test5:#A#instance.4d6ac42705853160b533ab46b444624a_4" ;
"test5:#A#instance.4d6ac42705853160b533ab46b444624a_1" -> "test5:#A#instance.4d6ac42705853160b533ab46b444624a_5" ;
"test5:#A#instance.4d6ac42705853160b533ab46b444624a_2" [label="2: Exit A::test5: \n " color=yellow style=filled]
"test5:#A#instance.4d6ac42705853160b533ab46b444624a_2" [label="2: Exit A.test5: \n " color=yellow style=filled]
"test5:#A#instance.4d6ac42705853160b533ab46b444624a_3" [label="3: + \n " ]
@ -39,7 +39,7 @@ digraph cfg {
"test5:#A#instance.4d6ac42705853160b533ab46b444624a_7" -> "test5:#A#instance.4d6ac42705853160b533ab46b444624a_3" ;
"test5:#A#instance.4d6ac42705853160b533ab46b444624a_8" [label="8: Return Stmt \n n$5=*&self:A* [line 22, column 11]\n n$4=*&0$?%__sil_tmpSIL_temp_conditional___n$1:int [line 22, column 23]\n n$6=_fun_A::test4:(n$5:A*,n$4:int) virtual [line 22, column 10]\n *&return:int=n$6 [line 22, column 3]\n " shape="box"]
"test5:#A#instance.4d6ac42705853160b533ab46b444624a_8" [label="8: Return Stmt \n n$5=*&self:A* [line 22, column 11]\n n$4=*&0$?%__sil_tmpSIL_temp_conditional___n$1:int [line 22, column 23]\n n$6=_fun_A.test4:(n$5:A*,n$4:int) virtual [line 22, column 10]\n *&return:int=n$6 [line 22, column 3]\n " shape="box"]
"test5:#A#instance.4d6ac42705853160b533ab46b444624a_8" -> "test5:#A#instance.4d6ac42705853160b533ab46b444624a_2" ;

@ -1,13 +1,13 @@
/* @generated */
digraph cfg {
"test#ExceptionExample#instance.513cde8d794322493646dbd1821516dd_1" [label="1: Start ExceptionExample::test\nFormals: self:ExceptionExample*\nLocals: s:NSString* \n " color=yellow style=filled]
"test#ExceptionExample#instance.513cde8d794322493646dbd1821516dd_1" [label="1: Start ExceptionExample.test\nFormals: self:ExceptionExample*\nLocals: s:NSString* \n " color=yellow style=filled]
"test#ExceptionExample#instance.513cde8d794322493646dbd1821516dd_1" -> "test#ExceptionExample#instance.513cde8d794322493646dbd1821516dd_4" ;
"test#ExceptionExample#instance.513cde8d794322493646dbd1821516dd_2" [label="2: Exit ExceptionExample::test \n " color=yellow style=filled]
"test#ExceptionExample#instance.513cde8d794322493646dbd1821516dd_2" [label="2: Exit ExceptionExample.test \n " color=yellow style=filled]
"test#ExceptionExample#instance.513cde8d794322493646dbd1821516dd_3" [label="3: Message Call: description \n n$0=*&self:ExceptionExample* [line 21, column 6]\n n$1=_fun_NSObject::description(n$0:ExceptionExample*) [line 21, column 5]\n " shape="box"]
"test#ExceptionExample#instance.513cde8d794322493646dbd1821516dd_3" [label="3: Message Call: description \n n$0=*&self:ExceptionExample* [line 21, column 6]\n n$1=_fun_NSObject.description(n$0:ExceptionExample*) [line 21, column 5]\n " shape="box"]
"test#ExceptionExample#instance.513cde8d794322493646dbd1821516dd_3" -> "test#ExceptionExample#instance.513cde8d794322493646dbd1821516dd_2" ;
@ -15,11 +15,11 @@ digraph cfg {
"test#ExceptionExample#instance.513cde8d794322493646dbd1821516dd_4" -> "test#ExceptionExample#instance.513cde8d794322493646dbd1821516dd_3" ;
"test1#ExceptionExample#instance.400b3bc567ff814f7f6788584460738f_1" [label="1: Start ExceptionExample::test1\nFormals: self:ExceptionExample*\nLocals: s:NSString* \n " color=yellow style=filled]
"test1#ExceptionExample#instance.400b3bc567ff814f7f6788584460738f_1" [label="1: Start ExceptionExample.test1\nFormals: self:ExceptionExample*\nLocals: s:NSString* \n " color=yellow style=filled]
"test1#ExceptionExample#instance.400b3bc567ff814f7f6788584460738f_1" -> "test1#ExceptionExample#instance.400b3bc567ff814f7f6788584460738f_8" ;
"test1#ExceptionExample#instance.400b3bc567ff814f7f6788584460738f_2" [label="2: Exit ExceptionExample::test1 \n " color=yellow style=filled]
"test1#ExceptionExample#instance.400b3bc567ff814f7f6788584460738f_2" [label="2: Exit ExceptionExample.test1 \n " color=yellow style=filled]
"test1#ExceptionExample#instance.400b3bc567ff814f7f6788584460738f_3" [label="3: + \n " ]
@ -38,7 +38,7 @@ digraph cfg {
"test1#ExceptionExample#instance.400b3bc567ff814f7f6788584460738f_6" -> "test1#ExceptionExample#instance.400b3bc567ff814f7f6788584460738f_3" ;
"test1#ExceptionExample#instance.400b3bc567ff814f7f6788584460738f_7" [label="7: ObjCCPPThrow \n n$6=_fun_NSString::stringWithUTF8String:(\"Something is not right exception\":char* const ) [line 29, column 27]\n n$5=_fun_NSString::stringWithUTF8String:(\"Can't perform this operation because of this or that\":char* const ) [line 31, column 24]\n n$7=_fun_NSException::exceptionWithName:reason:userInfo:(n$6:NSString*,n$5:NSString*,null:NSDictionary*) [line 28, column 12]\n n$8=_fun___infer_objc_cpp_throw(n$7:NSException*) [line 28, column 5]\n " shape="box"]
"test1#ExceptionExample#instance.400b3bc567ff814f7f6788584460738f_7" [label="7: ObjCCPPThrow \n n$6=_fun_NSString.stringWithUTF8String:(\"Something is not right exception\":char* const ) [line 29, column 27]\n n$5=_fun_NSString.stringWithUTF8String:(\"Can't perform this operation because of this or that\":char* const ) [line 31, column 24]\n n$7=_fun_NSException.exceptionWithName:reason:userInfo:(n$6:NSString*,n$5:NSString*,null:NSDictionary*) [line 28, column 12]\n n$8=_fun___infer_objc_cpp_throw(n$7:NSException*) [line 28, column 5]\n " shape="box"]
"test1#ExceptionExample#instance.400b3bc567ff814f7f6788584460738f_7" -> "test1#ExceptionExample#instance.400b3bc567ff814f7f6788584460738f_3" ;

@ -1,10 +1,10 @@
/* @generated */
digraph cfg {
"fast_loop:#A(class NSArray)#instance.26b39d1106e4365a40bc2f6305401611_1" [label="1: Start A::fast_loop:\nFormals: self:A* items:NSArray*\nLocals: item:NSArray* size:int \n " color=yellow style=filled]
"fast_loop:#A(class NSArray)#instance.26b39d1106e4365a40bc2f6305401611_1" [label="1: Start A.fast_loop:\nFormals: self:A* items:NSArray*\nLocals: item:NSArray* size:int \n " color=yellow style=filled]
"fast_loop:#A(class NSArray)#instance.26b39d1106e4365a40bc2f6305401611_1" -> "fast_loop:#A(class NSArray)#instance.26b39d1106e4365a40bc2f6305401611_11" ;
"fast_loop:#A(class NSArray)#instance.26b39d1106e4365a40bc2f6305401611_2" [label="2: Exit A::fast_loop: \n " color=yellow style=filled]
"fast_loop:#A(class NSArray)#instance.26b39d1106e4365a40bc2f6305401611_2" [label="2: Exit A.fast_loop: \n " color=yellow style=filled]
"fast_loop:#A(class NSArray)#instance.26b39d1106e4365a40bc2f6305401611_3" [label="3: Return Stmt \n n$0=*&size:int [line 24, column 10]\n *&return:int=n$0 [line 24, column 3]\n " shape="box"]
@ -28,15 +28,15 @@ digraph cfg {
"fast_loop:#A(class NSArray)#instance.26b39d1106e4365a40bc2f6305401611_7" -> "fast_loop:#A(class NSArray)#instance.26b39d1106e4365a40bc2f6305401611_3" ;
"fast_loop:#A(class NSArray)#instance.26b39d1106e4365a40bc2f6305401611_8" [label="8: BinaryOperatorStmt: Assign \n n$2=*&items:NSArray* [line 21, column 25]\n n$3=_fun_NSArray::nextObject(n$2:NSArray*) virtual [line 21, column 3]\n *&item:NSArray*=n$3 [line 21, column 3]\n " shape="box"]
"fast_loop:#A(class NSArray)#instance.26b39d1106e4365a40bc2f6305401611_8" [label="8: BinaryOperatorStmt: Assign \n n$2=*&items:NSArray* [line 21, column 25]\n n$3=_fun_NSArray.nextObject(n$2:NSArray*) virtual [line 21, column 3]\n *&item:NSArray*=n$3 [line 21, column 3]\n " shape="box"]
"fast_loop:#A(class NSArray)#instance.26b39d1106e4365a40bc2f6305401611_8" -> "fast_loop:#A(class NSArray)#instance.26b39d1106e4365a40bc2f6305401611_4" ;
"fast_loop:#A(class NSArray)#instance.26b39d1106e4365a40bc2f6305401611_9" [label="9: BinaryOperatorStmt: AddAssign \n n$4=*&item:NSArray* [line 22, column 14]\n n$5=_fun_NSArray::count(n$4:NSArray*) [line 22, column 13]\n n$6=*&size:int [line 22, column 5]\n *&size:int=(n$6 + n$5) [line 22, column 5]\n " shape="box"]
"fast_loop:#A(class NSArray)#instance.26b39d1106e4365a40bc2f6305401611_9" [label="9: BinaryOperatorStmt: AddAssign \n n$4=*&item:NSArray* [line 22, column 14]\n n$5=_fun_NSArray.count(n$4:NSArray*) [line 22, column 13]\n n$6=*&size:int [line 22, column 5]\n *&size:int=(n$6 + n$5) [line 22, column 5]\n " shape="box"]
"fast_loop:#A(class NSArray)#instance.26b39d1106e4365a40bc2f6305401611_9" -> "fast_loop:#A(class NSArray)#instance.26b39d1106e4365a40bc2f6305401611_8" ;
"fast_loop:#A(class NSArray)#instance.26b39d1106e4365a40bc2f6305401611_10" [label="10: BinaryOperatorStmt: Assign \n n$8=*&items:NSArray* [line 21, column 25]\n n$9=_fun_NSArray::nextObject(n$8:NSArray*) virtual [line 21, column 3]\n *&item:NSArray*=n$9 [line 21, column 3]\n " shape="box"]
"fast_loop:#A(class NSArray)#instance.26b39d1106e4365a40bc2f6305401611_10" [label="10: BinaryOperatorStmt: Assign \n n$8=*&items:NSArray* [line 21, column 25]\n n$9=_fun_NSArray.nextObject(n$8:NSArray*) virtual [line 21, column 3]\n *&item:NSArray*=n$9 [line 21, column 3]\n " shape="box"]
"fast_loop:#A(class NSArray)#instance.26b39d1106e4365a40bc2f6305401611_10" -> "fast_loop:#A(class NSArray)#instance.26b39d1106e4365a40bc2f6305401611_4" ;
@ -44,11 +44,11 @@ digraph cfg {
"fast_loop:#A(class NSArray)#instance.26b39d1106e4365a40bc2f6305401611_11" -> "fast_loop:#A(class NSArray)#instance.26b39d1106e4365a40bc2f6305401611_10" ;
"fast_loop_no_crash#A#instance.eaee56a1051009329a3989c3a10fb432_1" [label="1: Start A::fast_loop_no_crash\nFormals: self:A*\nLocals: obj:objc_object* \n " color=yellow style=filled]
"fast_loop_no_crash#A#instance.eaee56a1051009329a3989c3a10fb432_1" [label="1: Start A.fast_loop_no_crash\nFormals: self:A*\nLocals: obj:objc_object* \n " color=yellow style=filled]
"fast_loop_no_crash#A#instance.eaee56a1051009329a3989c3a10fb432_1" -> "fast_loop_no_crash#A#instance.eaee56a1051009329a3989c3a10fb432_10" ;
"fast_loop_no_crash#A#instance.eaee56a1051009329a3989c3a10fb432_2" [label="2: Exit A::fast_loop_no_crash \n " color=yellow style=filled]
"fast_loop_no_crash#A#instance.eaee56a1051009329a3989c3a10fb432_2" [label="2: Exit A.fast_loop_no_crash \n " color=yellow style=filled]
"fast_loop_no_crash#A#instance.eaee56a1051009329a3989c3a10fb432_3" [label="3: + \n " ]
@ -68,15 +68,15 @@ digraph cfg {
"fast_loop_no_crash#A#instance.eaee56a1051009329a3989c3a10fb432_6" -> "fast_loop_no_crash#A#instance.eaee56a1051009329a3989c3a10fb432_2" ;
"fast_loop_no_crash#A#instance.eaee56a1051009329a3989c3a10fb432_7" [label="7: BinaryOperatorStmt: Assign \n n$19=*&self:A* [line 38, column 15]\n n$20=*n$19.reverseObjectEnumerator:NSEnumerator* [line 38, column 15]\n n$21=_fun_NSEnumerator::nextObject(n$20:NSEnumerator*) virtual [line 38, column 3]\n *&obj:objc_object*=n$21 [line 38, column 3]\n " shape="box"]
"fast_loop_no_crash#A#instance.eaee56a1051009329a3989c3a10fb432_7" [label="7: BinaryOperatorStmt: Assign \n n$19=*&self:A* [line 38, column 15]\n n$20=*n$19.reverseObjectEnumerator:NSEnumerator* [line 38, column 15]\n n$21=_fun_NSEnumerator.nextObject(n$20:NSEnumerator*) virtual [line 38, column 3]\n *&obj:objc_object*=n$21 [line 38, column 3]\n " shape="box"]
"fast_loop_no_crash#A#instance.eaee56a1051009329a3989c3a10fb432_7" -> "fast_loop_no_crash#A#instance.eaee56a1051009329a3989c3a10fb432_3" ;
"fast_loop_no_crash#A#instance.eaee56a1051009329a3989c3a10fb432_8" [label="8: Message Call: copy \n n$22=*&obj:objc_object* [line 39, column 6]\n n$23=_fun_NSObject::copy(n$22:objc_object*) virtual [line 39, column 5]\n " shape="box"]
"fast_loop_no_crash#A#instance.eaee56a1051009329a3989c3a10fb432_8" [label="8: Message Call: copy \n n$22=*&obj:objc_object* [line 39, column 6]\n n$23=_fun_NSObject.copy(n$22:objc_object*) virtual [line 39, column 5]\n " shape="box"]
"fast_loop_no_crash#A#instance.eaee56a1051009329a3989c3a10fb432_8" -> "fast_loop_no_crash#A#instance.eaee56a1051009329a3989c3a10fb432_7" ;
"fast_loop_no_crash#A#instance.eaee56a1051009329a3989c3a10fb432_9" [label="9: BinaryOperatorStmt: Assign \n n$25=*&self:A* [line 38, column 15]\n n$26=*n$25.reverseObjectEnumerator:NSEnumerator* [line 38, column 15]\n n$27=_fun_NSEnumerator::nextObject(n$26:NSEnumerator*) virtual [line 38, column 3]\n *&obj:objc_object*=n$27 [line 38, column 3]\n " shape="box"]
"fast_loop_no_crash#A#instance.eaee56a1051009329a3989c3a10fb432_9" [label="9: BinaryOperatorStmt: Assign \n n$25=*&self:A* [line 38, column 15]\n n$26=*n$25.reverseObjectEnumerator:NSEnumerator* [line 38, column 15]\n n$27=_fun_NSEnumerator.nextObject(n$26:NSEnumerator*) virtual [line 38, column 3]\n *&obj:objc_object*=n$27 [line 38, column 3]\n " shape="box"]
"fast_loop_no_crash#A#instance.eaee56a1051009329a3989c3a10fb432_9" -> "fast_loop_no_crash#A#instance.eaee56a1051009329a3989c3a10fb432_3" ;
@ -84,11 +84,11 @@ digraph cfg {
"fast_loop_no_crash#A#instance.eaee56a1051009329a3989c3a10fb432_10" -> "fast_loop_no_crash#A#instance.eaee56a1051009329a3989c3a10fb432_9" ;
"while_loop:#A(class NSArray)#instance.225f55f19f886cfaa14fc056eca2399b_1" [label="1: Start A::while_loop:\nFormals: self:A* items:NSArray*\nLocals: item:NSArray* size:int \n " color=yellow style=filled]
"while_loop:#A(class NSArray)#instance.225f55f19f886cfaa14fc056eca2399b_1" [label="1: Start A.while_loop:\nFormals: self:A* items:NSArray*\nLocals: item:NSArray* size:int \n " color=yellow style=filled]
"while_loop:#A(class NSArray)#instance.225f55f19f886cfaa14fc056eca2399b_1" -> "while_loop:#A(class NSArray)#instance.225f55f19f886cfaa14fc056eca2399b_10" ;
"while_loop:#A(class NSArray)#instance.225f55f19f886cfaa14fc056eca2399b_2" [label="2: Exit A::while_loop: \n " color=yellow style=filled]
"while_loop:#A(class NSArray)#instance.225f55f19f886cfaa14fc056eca2399b_2" [label="2: Exit A.while_loop: \n " color=yellow style=filled]
"while_loop:#A(class NSArray)#instance.225f55f19f886cfaa14fc056eca2399b_3" [label="3: Return Stmt \n n$10=*&size:int [line 33, column 10]\n *&return:int=n$10 [line 33, column 3]\n " shape="box"]
@ -99,7 +99,7 @@ digraph cfg {
"while_loop:#A(class NSArray)#instance.225f55f19f886cfaa14fc056eca2399b_4" -> "while_loop:#A(class NSArray)#instance.225f55f19f886cfaa14fc056eca2399b_5" ;
"while_loop:#A(class NSArray)#instance.225f55f19f886cfaa14fc056eca2399b_5" [label="5: BinaryOperatorStmt: Assign \n n$11=*&items:NSArray* [line 30, column 19]\n n$12=_fun_NSArray::objectAtIndex:(n$11:NSArray*,(unsigned long)3:unsigned long) virtual [line 30, column 18]\n *&item:NSArray*=n$12 [line 30, column 11]\n n$13=*&item:NSArray* [line 30, column 11]\n " shape="box"]
"while_loop:#A(class NSArray)#instance.225f55f19f886cfaa14fc056eca2399b_5" [label="5: BinaryOperatorStmt: Assign \n n$11=*&items:NSArray* [line 30, column 19]\n n$12=_fun_NSArray.objectAtIndex:(n$11:NSArray*,(unsigned long)3:unsigned long) virtual [line 30, column 18]\n *&item:NSArray*=n$12 [line 30, column 11]\n n$13=*&item:NSArray* [line 30, column 11]\n " shape="box"]
"while_loop:#A(class NSArray)#instance.225f55f19f886cfaa14fc056eca2399b_5" -> "while_loop:#A(class NSArray)#instance.225f55f19f886cfaa14fc056eca2399b_6" ;
@ -112,7 +112,7 @@ digraph cfg {
"while_loop:#A(class NSArray)#instance.225f55f19f886cfaa14fc056eca2399b_7" -> "while_loop:#A(class NSArray)#instance.225f55f19f886cfaa14fc056eca2399b_3" ;
"while_loop:#A(class NSArray)#instance.225f55f19f886cfaa14fc056eca2399b_8" [label="8: BinaryOperatorStmt: AddAssign \n n$14=*&item:NSArray* [line 31, column 14]\n n$15=_fun_NSArray::count(n$14:NSArray*) [line 31, column 13]\n n$16=*&size:int [line 31, column 5]\n *&size:int=(n$16 + n$15) [line 31, column 5]\n " shape="box"]
"while_loop:#A(class NSArray)#instance.225f55f19f886cfaa14fc056eca2399b_8" [label="8: BinaryOperatorStmt: AddAssign \n n$14=*&item:NSArray* [line 31, column 14]\n n$15=_fun_NSArray.count(n$14:NSArray*) [line 31, column 13]\n n$16=*&size:int [line 31, column 5]\n *&size:int=(n$16 + n$15) [line 31, column 5]\n " shape="box"]
"while_loop:#A(class NSArray)#instance.225f55f19f886cfaa14fc056eca2399b_8" -> "while_loop:#A(class NSArray)#instance.225f55f19f886cfaa14fc056eca2399b_4" ;

@ -1,10 +1,10 @@
/* @generated */
digraph cfg {
"foo#A#instance.a1bcc3cb6c1f00fc285817fb8454eaed_1" [label="1: Start A::foo\nFormals: self:A*\nLocals: \n " color=yellow style=filled]
"foo#A#instance.a1bcc3cb6c1f00fc285817fb8454eaed_1" [label="1: Start A.foo\nFormals: self:A*\nLocals: \n " color=yellow style=filled]
"foo#A#instance.a1bcc3cb6c1f00fc285817fb8454eaed_1" -> "foo#A#instance.a1bcc3cb6c1f00fc285817fb8454eaed_2" ;
"foo#A#instance.a1bcc3cb6c1f00fc285817fb8454eaed_2" [label="2: Exit A::foo \n " color=yellow style=filled]
"foo#A#instance.a1bcc3cb6c1f00fc285817fb8454eaed_2" [label="2: Exit A.foo \n " color=yellow style=filled]
}

@ -1,35 +1,35 @@
/* @generated */
digraph cfg {
"testFunct#A#instance.b6c9dae744220d93a4466679814728c1_1" [label="1: Start A::testFunct\nFormals: self:A*\nLocals: \n " color=yellow style=filled]
"testFunct#A#instance.b6c9dae744220d93a4466679814728c1_1" [label="1: Start A.testFunct\nFormals: self:A*\nLocals: \n " color=yellow style=filled]
"testFunct#A#instance.b6c9dae744220d93a4466679814728c1_1" -> "testFunct#A#instance.b6c9dae744220d93a4466679814728c1_3" ;
"testFunct#A#instance.b6c9dae744220d93a4466679814728c1_2" [label="2: Exit A::testFunct \n " color=yellow style=filled]
"testFunct#A#instance.b6c9dae744220d93a4466679814728c1_2" [label="2: Exit A.testFunct \n " color=yellow style=filled]
"testFunct#A#instance.b6c9dae744220d93a4466679814728c1_3" [label="3: Call _fun_NSLog \n n$4=_fun_NSString::stringWithUTF8String:(\"%s\":char* const ) [line 25, column 9]\n n$5=_fun_NSLog(n$4:objc_object*,\"\":char const *) [line 25, column 3]\n " shape="box"]
"testFunct#A#instance.b6c9dae744220d93a4466679814728c1_3" [label="3: Call _fun_NSLog \n n$4=_fun_NSString.stringWithUTF8String:(\"%s\":char* const ) [line 25, column 9]\n n$5=_fun_NSLog(n$4:objc_object*,\"\":char const *) [line 25, column 3]\n " shape="box"]
"testFunct#A#instance.b6c9dae744220d93a4466679814728c1_3" -> "testFunct#A#instance.b6c9dae744220d93a4466679814728c1_2" ;
"testFunction#A#instance.871d68aca55491a71407a8a7ce232a40_1" [label="1: Start A::testFunction\nFormals: self:A*\nLocals: \n " color=yellow style=filled]
"testFunction#A#instance.871d68aca55491a71407a8a7ce232a40_1" [label="1: Start A.testFunction\nFormals: self:A*\nLocals: \n " color=yellow style=filled]
"testFunction#A#instance.871d68aca55491a71407a8a7ce232a40_1" -> "testFunction#A#instance.871d68aca55491a71407a8a7ce232a40_3" ;
"testFunction#A#instance.871d68aca55491a71407a8a7ce232a40_2" [label="2: Exit A::testFunction \n " color=yellow style=filled]
"testFunction#A#instance.871d68aca55491a71407a8a7ce232a40_2" [label="2: Exit A.testFunction \n " color=yellow style=filled]
"testFunction#A#instance.871d68aca55491a71407a8a7ce232a40_3" [label="3: Call _fun_NSLog \n n$2=_fun_NSString::stringWithUTF8String:(\"%s\":char* const ) [line 21, column 9]\n n$3=_fun_NSLog(n$2:objc_object*,\"\":char const *) [line 21, column 3]\n " shape="box"]
"testFunction#A#instance.871d68aca55491a71407a8a7ce232a40_3" [label="3: Call _fun_NSLog \n n$2=_fun_NSString.stringWithUTF8String:(\"%s\":char* const ) [line 21, column 9]\n n$3=_fun_NSLog(n$2:objc_object*,\"\":char const *) [line 21, column 3]\n " shape="box"]
"testFunction#A#instance.871d68aca55491a71407a8a7ce232a40_3" -> "testFunction#A#instance.871d68aca55491a71407a8a7ce232a40_2" ;
"testPrettyFunction#A#instance.bc1e07c1ab96ad96f484a179734bc12e_1" [label="1: Start A::testPrettyFunction\nFormals: self:A*\nLocals: \n " color=yellow style=filled]
"testPrettyFunction#A#instance.bc1e07c1ab96ad96f484a179734bc12e_1" [label="1: Start A.testPrettyFunction\nFormals: self:A*\nLocals: \n " color=yellow style=filled]
"testPrettyFunction#A#instance.bc1e07c1ab96ad96f484a179734bc12e_1" -> "testPrettyFunction#A#instance.bc1e07c1ab96ad96f484a179734bc12e_3" ;
"testPrettyFunction#A#instance.bc1e07c1ab96ad96f484a179734bc12e_2" [label="2: Exit A::testPrettyFunction \n " color=yellow style=filled]
"testPrettyFunction#A#instance.bc1e07c1ab96ad96f484a179734bc12e_2" [label="2: Exit A.testPrettyFunction \n " color=yellow style=filled]
"testPrettyFunction#A#instance.bc1e07c1ab96ad96f484a179734bc12e_3" [label="3: Call _fun_NSLog \n n$0=_fun_NSString::stringWithUTF8String:(\"%s\":char* const ) [line 17, column 9]\n n$1=_fun_NSLog(n$0:objc_object*,\"\":char const *) [line 17, column 3]\n " shape="box"]
"testPrettyFunction#A#instance.bc1e07c1ab96ad96f484a179734bc12e_3" [label="3: Call _fun_NSLog \n n$0=_fun_NSString.stringWithUTF8String:(\"%s\":char* const ) [line 17, column 9]\n n$1=_fun_NSLog(n$0:objc_object*,\"\":char const *) [line 17, column 3]\n " shape="box"]
"testPrettyFunction#A#instance.bc1e07c1ab96ad96f484a179734bc12e_3" -> "testPrettyFunction#A#instance.bc1e07c1ab96ad96f484a179734bc12e_2" ;

@ -1,10 +1,10 @@
/* @generated */
digraph cfg {
"setMaximumFileSize:#PropertyImplSetter#instance.1d600fefeeb62155817021d20e02a478_1" [label="1: Start PropertyImplSetter::setMaximumFileSize:\nFormals: self:PropertyImplSetter* newMaximumFileSize:int\nLocals: \n " color=yellow style=filled]
"setMaximumFileSize:#PropertyImplSetter#instance.1d600fefeeb62155817021d20e02a478_1" [label="1: Start PropertyImplSetter.setMaximumFileSize:\nFormals: self:PropertyImplSetter* newMaximumFileSize:int\nLocals: \n " color=yellow style=filled]
"setMaximumFileSize:#PropertyImplSetter#instance.1d600fefeeb62155817021d20e02a478_1" -> "setMaximumFileSize:#PropertyImplSetter#instance.1d600fefeeb62155817021d20e02a478_3" ;
"setMaximumFileSize:#PropertyImplSetter#instance.1d600fefeeb62155817021d20e02a478_2" [label="2: Exit PropertyImplSetter::setMaximumFileSize: \n " color=yellow style=filled]
"setMaximumFileSize:#PropertyImplSetter#instance.1d600fefeeb62155817021d20e02a478_2" [label="2: Exit PropertyImplSetter.setMaximumFileSize: \n " color=yellow style=filled]
"setMaximumFileSize:#PropertyImplSetter#instance.1d600fefeeb62155817021d20e02a478_3" [label="3: BinaryOperatorStmt: Assign \n n$0=*&self:PropertyImplSetter* [line 13, column 3]\n *n$0._maximumFileSize:int=0 [line 13, column 3]\n " shape="box"]

@ -1,13 +1,13 @@
/* @generated */
digraph cfg {
"addTarget:#A(class A)#instance.ca26ddd02ac11fb266531b38b6edef27_1" [label="1: Start A::addTarget:\nFormals: self:A* target:A*\nLocals: \n " color=yellow style=filled]
"addTarget:#A(class A)#instance.ca26ddd02ac11fb266531b38b6edef27_1" [label="1: Start A.addTarget:\nFormals: self:A* target:A*\nLocals: \n " color=yellow style=filled]
"addTarget:#A(class A)#instance.ca26ddd02ac11fb266531b38b6edef27_1" -> "addTarget:#A(class A)#instance.ca26ddd02ac11fb266531b38b6edef27_3" ;
"addTarget:#A(class A)#instance.ca26ddd02ac11fb266531b38b6edef27_2" [label="2: Exit A::addTarget: \n " color=yellow style=filled]
"addTarget:#A(class A)#instance.ca26ddd02ac11fb266531b38b6edef27_2" [label="2: Exit A.addTarget: \n " color=yellow style=filled]
"addTarget:#A(class A)#instance.ca26ddd02ac11fb266531b38b6edef27_3" [label="3: Return Stmt \n n$0=*&target:A* [line 17, column 10]\n n$1=_fun_A::x(n$0:A*) [line 17, column 17]\n *&return:int=n$1 [line 17, column 3]\n " shape="box"]
"addTarget:#A(class A)#instance.ca26ddd02ac11fb266531b38b6edef27_3" [label="3: Return Stmt \n n$0=*&target:A* [line 17, column 10]\n n$1=_fun_A.x(n$0:A*) [line 17, column 17]\n *&return:int=n$1 [line 17, column 3]\n " shape="box"]
"addTarget:#A(class A)#instance.ca26ddd02ac11fb266531b38b6edef27_3" -> "addTarget:#A(class A)#instance.ca26ddd02ac11fb266531b38b6edef27_2" ;

@ -11,15 +11,15 @@ digraph cfg {
"main.fad58de7366495db4650cfefac2fcd61_3" -> "main.fad58de7366495db4650cfefac2fcd61_2" ;
"main.fad58de7366495db4650cfefac2fcd61_4" [label="4: Call _fun_NSLog \n n$0=_fun_NSString::stringWithUTF8String:(\"%d\":char* const ) [line 13, column 9]\n n$1=*&honda:Car* [line 13, column 16]\n n$2=_fun_Car::running(n$1:Car*) [line 13, column 22]\n n$3=_fun_NSLog(n$0:objc_object*,n$2:int) [line 13, column 3]\n " shape="box"]
"main.fad58de7366495db4650cfefac2fcd61_4" [label="4: Call _fun_NSLog \n n$0=_fun_NSString.stringWithUTF8String:(\"%d\":char* const ) [line 13, column 9]\n n$1=*&honda:Car* [line 13, column 16]\n n$2=_fun_Car.running(n$1:Car*) [line 13, column 22]\n n$3=_fun_NSLog(n$0:objc_object*,n$2:int) [line 13, column 3]\n " shape="box"]
"main.fad58de7366495db4650cfefac2fcd61_4" -> "main.fad58de7366495db4650cfefac2fcd61_3" ;
"main.fad58de7366495db4650cfefac2fcd61_5" [label="5: Message Call: setRunning: \n n$4=*&honda:Car* [line 12, column 3]\n n$5=_fun_Car::setRunning:(n$4:Car*,1:_Bool) [line 12, column 9]\n " shape="box"]
"main.fad58de7366495db4650cfefac2fcd61_5" [label="5: Message Call: setRunning: \n n$4=*&honda:Car* [line 12, column 3]\n n$5=_fun_Car.setRunning:(n$4:Car*,1:_Bool) [line 12, column 9]\n " shape="box"]
"main.fad58de7366495db4650cfefac2fcd61_5" -> "main.fad58de7366495db4650cfefac2fcd61_4" ;
"main.fad58de7366495db4650cfefac2fcd61_6" [label="6: DeclStmt \n VARIABLE_DECLARED(honda:Car*); [line 11, column 3]\n n$6=_fun___objc_alloc_no_fail(sizeof(t=Car):unsigned long) [line 11, column 17]\n n$7=_fun_NSObject::init(n$6:Car*) virtual [line 11, column 16]\n *&honda:Car*=n$7 [line 11, column 3]\n " shape="box"]
"main.fad58de7366495db4650cfefac2fcd61_6" [label="6: DeclStmt \n VARIABLE_DECLARED(honda:Car*); [line 11, column 3]\n n$6=_fun___objc_alloc_no_fail(sizeof(t=Car):unsigned long) [line 11, column 17]\n n$7=_fun_NSObject.init(n$6:Car*) virtual [line 11, column 16]\n *&honda:Car*=n$7 [line 11, column 3]\n " shape="box"]
"main.fad58de7366495db4650cfefac2fcd61_6" -> "main.fad58de7366495db4650cfefac2fcd61_5" ;

@ -1,10 +1,10 @@
/* @generated */
digraph cfg {
"fooMethod#Bla#instance.d982e99c073f2d30dc24c41bb29add6a_1" [label="1: Start Bla::fooMethod\nFormals: self:Bla*\nLocals: \n " color=yellow style=filled]
"fooMethod#Bla#instance.d982e99c073f2d30dc24c41bb29add6a_1" [label="1: Start Bla.fooMethod\nFormals: self:Bla*\nLocals: \n " color=yellow style=filled]
"fooMethod#Bla#instance.d982e99c073f2d30dc24c41bb29add6a_1" -> "fooMethod#Bla#instance.d982e99c073f2d30dc24c41bb29add6a_5" ;
"fooMethod#Bla#instance.d982e99c073f2d30dc24c41bb29add6a_2" [label="2: Exit Bla::fooMethod \n " color=yellow style=filled]
"fooMethod#Bla#instance.d982e99c073f2d30dc24c41bb29add6a_2" [label="2: Exit Bla.fooMethod \n " color=yellow style=filled]
"fooMethod#Bla#instance.d982e99c073f2d30dc24c41bb29add6a_3" [label="3: + \n " ]
@ -15,7 +15,7 @@ digraph cfg {
"fooMethod#Bla#instance.d982e99c073f2d30dc24c41bb29add6a_4" -> "fooMethod#Bla#instance.d982e99c073f2d30dc24c41bb29add6a_2" ;
"fooMethod#Bla#instance.d982e99c073f2d30dc24c41bb29add6a_5" [label="5: Message Call: conformsToProtocol: \n n$0=*&self:Bla* [line 23, column 8]\n n$1=_fun_NSObject::conformsToProtocol:(n$0:Bla*,\"Foo\":Protocol*) virtual [line 23, column 7]\n " shape="box"]
"fooMethod#Bla#instance.d982e99c073f2d30dc24c41bb29add6a_5" [label="5: Message Call: conformsToProtocol: \n n$0=*&self:Bla* [line 23, column 8]\n n$1=_fun_NSObject.conformsToProtocol:(n$0:Bla*,\"Foo\":Protocol*) virtual [line 23, column 7]\n " shape="box"]
"fooMethod#Bla#instance.d982e99c073f2d30dc24c41bb29add6a_5" -> "fooMethod#Bla#instance.d982e99c073f2d30dc24c41bb29add6a_6" ;

@ -1,10 +1,10 @@
/* @generated */
digraph cfg {
"aMethod#MyClass#instance.af06019e61fb7341a36c141ed90caaaf_1" [label="1: Start MyClass::aMethod\nFormals: self:MyClass*\nLocals: j:int i:int \n " color=yellow style=filled]
"aMethod#MyClass#instance.af06019e61fb7341a36c141ed90caaaf_1" [label="1: Start MyClass.aMethod\nFormals: self:MyClass*\nLocals: j:int i:int \n " color=yellow style=filled]
"aMethod#MyClass#instance.af06019e61fb7341a36c141ed90caaaf_1" -> "aMethod#MyClass#instance.af06019e61fb7341a36c141ed90caaaf_15" ;
"aMethod#MyClass#instance.af06019e61fb7341a36c141ed90caaaf_2" [label="2: Exit MyClass::aMethod \n " color=yellow style=filled]
"aMethod#MyClass#instance.af06019e61fb7341a36c141ed90caaaf_2" [label="2: Exit MyClass.aMethod \n " color=yellow style=filled]
"aMethod#MyClass#instance.af06019e61fb7341a36c141ed90caaaf_3" [label="3: + \n " ]

@ -32,47 +32,47 @@ digraph cfg {
"class_method_in_conditional.2a19b0bd8eafdb3235f52585a49ef84a_8" -> "class_method_in_conditional.2a19b0bd8eafdb3235f52585a49ef84a_5" ;
"class_method_in_conditional.2a19b0bd8eafdb3235f52585a49ef84a_8" -> "class_method_in_conditional.2a19b0bd8eafdb3235f52585a49ef84a_6" ;
"call_alloc_class#A#class.0cef99601cab56333305f5f96f227079_1" [label="1: Start A::call_alloc_class\nFormals: \nLocals: \n " color=yellow style=filled]
"call_alloc_class#A#class.0cef99601cab56333305f5f96f227079_1" [label="1: Start A.call_alloc_class\nFormals: \nLocals: \n " color=yellow style=filled]
"call_alloc_class#A#class.0cef99601cab56333305f5f96f227079_1" -> "call_alloc_class#A#class.0cef99601cab56333305f5f96f227079_3" ;
"call_alloc_class#A#class.0cef99601cab56333305f5f96f227079_2" [label="2: Exit A::call_alloc_class \n " color=yellow style=filled]
"call_alloc_class#A#class.0cef99601cab56333305f5f96f227079_2" [label="2: Exit A.call_alloc_class \n " color=yellow style=filled]
"call_alloc_class#A#class.0cef99601cab56333305f5f96f227079_3" [label="3: Call alloc \n n$5=_fun___objc_alloc_no_fail(sizeof(t=A):unsigned long) [line 57, column 3]\n " shape="box"]
"call_alloc_class#A#class.0cef99601cab56333305f5f96f227079_3" -> "call_alloc_class#A#class.0cef99601cab56333305f5f96f227079_2" ;
"call_test_class#A#class.cc4e8c6ada1c4f85dad976d179e36c9a_1" [label="1: Start A::call_test_class\nFormals: \nLocals: \n " color=yellow style=filled]
"call_test_class#A#class.cc4e8c6ada1c4f85dad976d179e36c9a_1" [label="1: Start A.call_test_class\nFormals: \nLocals: \n " color=yellow style=filled]
"call_test_class#A#class.cc4e8c6ada1c4f85dad976d179e36c9a_1" -> "call_test_class#A#class.cc4e8c6ada1c4f85dad976d179e36c9a_3" ;
"call_test_class#A#class.cc4e8c6ada1c4f85dad976d179e36c9a_2" [label="2: Exit A::call_test_class \n " color=yellow style=filled]
"call_test_class#A#class.cc4e8c6ada1c4f85dad976d179e36c9a_2" [label="2: Exit A.call_test_class \n " color=yellow style=filled]
"call_test_class#A#class.cc4e8c6ada1c4f85dad976d179e36c9a_3" [label="3: Message Call: test_class \n n$4=_fun_C::test_class() [line 53, column 3]\n " shape="box"]
"call_test_class#A#class.cc4e8c6ada1c4f85dad976d179e36c9a_3" [label="3: Message Call: test_class \n n$4=_fun_C.test_class() [line 53, column 3]\n " shape="box"]
"call_test_class#A#class.cc4e8c6ada1c4f85dad976d179e36c9a_3" -> "call_test_class#A#class.cc4e8c6ada1c4f85dad976d179e36c9a_2" ;
"calling_super#A#class.0edc1d1d1c4ade7cd9adaa77e7322ad1_1" [label="1: Start A::calling_super\nFormals: \nLocals: \n " color=yellow style=filled]
"calling_super#A#class.0edc1d1d1c4ade7cd9adaa77e7322ad1_1" [label="1: Start A.calling_super\nFormals: \nLocals: \n " color=yellow style=filled]
"calling_super#A#class.0edc1d1d1c4ade7cd9adaa77e7322ad1_1" -> "calling_super#A#class.0edc1d1d1c4ade7cd9adaa77e7322ad1_3" ;
"calling_super#A#class.0edc1d1d1c4ade7cd9adaa77e7322ad1_2" [label="2: Exit A::calling_super \n " color=yellow style=filled]
"calling_super#A#class.0edc1d1d1c4ade7cd9adaa77e7322ad1_2" [label="2: Exit A.calling_super \n " color=yellow style=filled]
"calling_super#A#class.0edc1d1d1c4ade7cd9adaa77e7322ad1_3" [label="3: Message Call: test_class \n n$18=_fun_C::test_class() [line 82, column 3]\n " shape="box"]
"calling_super#A#class.0edc1d1d1c4ade7cd9adaa77e7322ad1_3" [label="3: Message Call: test_class \n n$18=_fun_C.test_class() [line 82, column 3]\n " shape="box"]
"calling_super#A#class.0edc1d1d1c4ade7cd9adaa77e7322ad1_3" -> "calling_super#A#class.0edc1d1d1c4ade7cd9adaa77e7322ad1_2" ;
"class_method_fst_arg_of_class_method_inside_instance_method#A#class.7bda69c598fb7e024d776cec3122e2a6_1" [label="1: Start A::class_method_fst_arg_of_class_method_inside_instance_method\nFormals: \nLocals: 0$?%__sil_tmpSIL_temp_conditional___n$30:NSBundle* stringsBundlePath:NSString* \n " color=yellow style=filled]
"class_method_fst_arg_of_class_method_inside_instance_method#A#class.7bda69c598fb7e024d776cec3122e2a6_1" [label="1: Start A.class_method_fst_arg_of_class_method_inside_instance_method\nFormals: \nLocals: 0$?%__sil_tmpSIL_temp_conditional___n$30:NSBundle* stringsBundlePath:NSString* \n " color=yellow style=filled]
"class_method_fst_arg_of_class_method_inside_instance_method#A#class.7bda69c598fb7e024d776cec3122e2a6_1" -> "class_method_fst_arg_of_class_method_inside_instance_method#A#class.7bda69c598fb7e024d776cec3122e2a6_11" ;
"class_method_fst_arg_of_class_method_inside_instance_method#A#class.7bda69c598fb7e024d776cec3122e2a6_2" [label="2: Exit A::class_method_fst_arg_of_class_method_inside_instance_method \n " color=yellow style=filled]
"class_method_fst_arg_of_class_method_inside_instance_method#A#class.7bda69c598fb7e024d776cec3122e2a6_2" [label="2: Exit A.class_method_fst_arg_of_class_method_inside_instance_method \n " color=yellow style=filled]
"class_method_fst_arg_of_class_method_inside_instance_method#A#class.7bda69c598fb7e024d776cec3122e2a6_3" [label="3: Return Stmt \n n$27=*&#GB<codetoanalyze/objc/frontend/self_static/Self.m>$A::class_method_fst_arg_of_class_method_inside_instance_method.bundle:NSBundle* [line 120, column 10]\n *&return:NSBundle*=n$27 [line 120, column 3]\n " shape="box"]
"class_method_fst_arg_of_class_method_inside_instance_method#A#class.7bda69c598fb7e024d776cec3122e2a6_3" [label="3: Return Stmt \n n$27=*&#GB<codetoanalyze/objc/frontend/self_static/Self.m>$A.class_method_fst_arg_of_class_method_inside_instance_method.bundle:NSBundle* [line 120, column 10]\n *&return:NSBundle*=n$27 [line 120, column 3]\n " shape="box"]
"class_method_fst_arg_of_class_method_inside_instance_method#A#class.7bda69c598fb7e024d776cec3122e2a6_3" -> "class_method_fst_arg_of_class_method_inside_instance_method#A#class.7bda69c598fb7e024d776cec3122e2a6_2" ;
@ -92,35 +92,35 @@ digraph cfg {
"class_method_fst_arg_of_class_method_inside_instance_method#A#class.7bda69c598fb7e024d776cec3122e2a6_7" -> "class_method_fst_arg_of_class_method_inside_instance_method#A#class.7bda69c598fb7e024d776cec3122e2a6_4" ;
"class_method_fst_arg_of_class_method_inside_instance_method#A#class.7bda69c598fb7e024d776cec3122e2a6_8" [label="8: ConditionalStmt Branch \n n$31=_fun_NSBundle::mainBundle() [line 119, column 59]\n *&0$?%__sil_tmpSIL_temp_conditional___n$30:NSBundle*=n$31 [line 119, column 12]\n " shape="box"]
"class_method_fst_arg_of_class_method_inside_instance_method#A#class.7bda69c598fb7e024d776cec3122e2a6_8" [label="8: ConditionalStmt Branch \n n$31=_fun_NSBundle.mainBundle() [line 119, column 59]\n *&0$?%__sil_tmpSIL_temp_conditional___n$30:NSBundle*=n$31 [line 119, column 12]\n " shape="box"]
"class_method_fst_arg_of_class_method_inside_instance_method#A#class.7bda69c598fb7e024d776cec3122e2a6_8" -> "class_method_fst_arg_of_class_method_inside_instance_method#A#class.7bda69c598fb7e024d776cec3122e2a6_4" ;
"class_method_fst_arg_of_class_method_inside_instance_method#A#class.7bda69c598fb7e024d776cec3122e2a6_9" [label="9: BinaryConditionalStmt Init \n n$28=*&stringsBundlePath:NSString* [line 119, column 37]\n n$29=_fun_NSBundle::bundleWithPath:(n$28:NSString*) [line 119, column 12]\n " shape="box"]
"class_method_fst_arg_of_class_method_inside_instance_method#A#class.7bda69c598fb7e024d776cec3122e2a6_9" [label="9: BinaryConditionalStmt Init \n n$28=*&stringsBundlePath:NSString* [line 119, column 37]\n n$29=_fun_NSBundle.bundleWithPath:(n$28:NSString*) [line 119, column 12]\n " shape="box"]
"class_method_fst_arg_of_class_method_inside_instance_method#A#class.7bda69c598fb7e024d776cec3122e2a6_9" -> "class_method_fst_arg_of_class_method_inside_instance_method#A#class.7bda69c598fb7e024d776cec3122e2a6_5" ;
"class_method_fst_arg_of_class_method_inside_instance_method#A#class.7bda69c598fb7e024d776cec3122e2a6_9" -> "class_method_fst_arg_of_class_method_inside_instance_method#A#class.7bda69c598fb7e024d776cec3122e2a6_6" ;
"class_method_fst_arg_of_class_method_inside_instance_method#A#class.7bda69c598fb7e024d776cec3122e2a6_10" [label="10: BinaryOperatorStmt: Assign \n n$32=*&0$?%__sil_tmpSIL_temp_conditional___n$30:NSBundle* [line 119, column 12]\n *&#GB<codetoanalyze/objc/frontend/self_static/Self.m>$A::class_method_fst_arg_of_class_method_inside_instance_method.bundle:NSBundle*=n$32 [line 119, column 3]\n " shape="box"]
"class_method_fst_arg_of_class_method_inside_instance_method#A#class.7bda69c598fb7e024d776cec3122e2a6_10" [label="10: BinaryOperatorStmt: Assign \n n$32=*&0$?%__sil_tmpSIL_temp_conditional___n$30:NSBundle* [line 119, column 12]\n *&#GB<codetoanalyze/objc/frontend/self_static/Self.m>$A.class_method_fst_arg_of_class_method_inside_instance_method.bundle:NSBundle*=n$32 [line 119, column 3]\n " shape="box"]
"class_method_fst_arg_of_class_method_inside_instance_method#A#class.7bda69c598fb7e024d776cec3122e2a6_10" -> "class_method_fst_arg_of_class_method_inside_instance_method#A#class.7bda69c598fb7e024d776cec3122e2a6_3" ;
"class_method_fst_arg_of_class_method_inside_instance_method#A#class.7bda69c598fb7e024d776cec3122e2a6_11" [label="11: DeclStmt \n VARIABLE_DECLARED(stringsBundlePath:NSString*); [line 116, column 3]\n n$35=_fun_NSBundle::bundleForClass:(sizeof(t=B):unsigned long) [line 117, column 8]\n n$33=_fun_NSString::stringWithUTF8String:(\"Strings\":char* const ) [line 117, column 60]\n n$34=_fun_NSString::stringWithUTF8String:(\"bundle\":char* const ) [line 118, column 60]\n n$36=_fun_NSBundle::pathForResource:ofType:(n$35:NSBundle*,n$33:NSString*,n$34:NSString*) virtual [line 117, column 7]\n *&stringsBundlePath:NSString*=n$36 [line 116, column 3]\n " shape="box"]
"class_method_fst_arg_of_class_method_inside_instance_method#A#class.7bda69c598fb7e024d776cec3122e2a6_11" [label="11: DeclStmt \n VARIABLE_DECLARED(stringsBundlePath:NSString*); [line 116, column 3]\n n$35=_fun_NSBundle.bundleForClass:(sizeof(t=B):unsigned long) [line 117, column 8]\n n$33=_fun_NSString.stringWithUTF8String:(\"Strings\":char* const ) [line 117, column 60]\n n$34=_fun_NSString.stringWithUTF8String:(\"bundle\":char* const ) [line 118, column 60]\n n$36=_fun_NSBundle.pathForResource:ofType:(n$35:NSBundle*,n$33:NSString*,n$34:NSString*) virtual [line 117, column 7]\n *&stringsBundlePath:NSString*=n$36 [line 116, column 3]\n " shape="box"]
"class_method_fst_arg_of_class_method_inside_instance_method#A#class.7bda69c598fb7e024d776cec3122e2a6_11" -> "class_method_fst_arg_of_class_method_inside_instance_method#A#class.7bda69c598fb7e024d776cec3122e2a6_9" ;
"test_class#A#class.97324b18f626e66a3c32cec03286eb8d_1" [label="1: Start A::test_class\nFormals: \nLocals: \n " color=yellow style=filled]
"test_class#A#class.97324b18f626e66a3c32cec03286eb8d_1" [label="1: Start A.test_class\nFormals: \nLocals: \n " color=yellow style=filled]
"test_class#A#class.97324b18f626e66a3c32cec03286eb8d_1" -> "test_class#A#class.97324b18f626e66a3c32cec03286eb8d_2" ;
"test_class#A#class.97324b18f626e66a3c32cec03286eb8d_2" [label="2: Exit A::test_class \n " color=yellow style=filled]
"test_class#A#class.97324b18f626e66a3c32cec03286eb8d_2" [label="2: Exit A.test_class \n " color=yellow style=filled]
"used_in_binary_op:#A(struct objc_class)#class.da9fc6494d494952f5246c6cf4478263_1" [label="1: Start A::used_in_binary_op:\nFormals: c:objc_class*\nLocals: \n " color=yellow style=filled]
"used_in_binary_op:#A(struct objc_class)#class.da9fc6494d494952f5246c6cf4478263_1" [label="1: Start A.used_in_binary_op:\nFormals: c:objc_class*\nLocals: \n " color=yellow style=filled]
"used_in_binary_op:#A(struct objc_class)#class.da9fc6494d494952f5246c6cf4478263_1" -> "used_in_binary_op:#A(struct objc_class)#class.da9fc6494d494952f5246c6cf4478263_5" ;
"used_in_binary_op:#A(struct objc_class)#class.da9fc6494d494952f5246c6cf4478263_2" [label="2: Exit A::used_in_binary_op: \n " color=yellow style=filled]
"used_in_binary_op:#A(struct objc_class)#class.da9fc6494d494952f5246c6cf4478263_2" [label="2: Exit A.used_in_binary_op: \n " color=yellow style=filled]
"used_in_binary_op:#A(struct objc_class)#class.da9fc6494d494952f5246c6cf4478263_3" [label="3: + \n " ]
@ -152,128 +152,128 @@ digraph cfg {
"used_in_binary_op:#A(struct objc_class)#class.da9fc6494d494952f5246c6cf4478263_9" -> "used_in_binary_op:#A(struct objc_class)#class.da9fc6494d494952f5246c6cf4478263_2" ;
"call_alloc_instance#A#instance.70a20314d55f22fb46408deb70d9aabb_1" [label="1: Start A::call_alloc_instance\nFormals: self:A*\nLocals: \n " color=yellow style=filled]
"call_alloc_instance#A#instance.70a20314d55f22fb46408deb70d9aabb_1" [label="1: Start A.call_alloc_instance\nFormals: self:A*\nLocals: \n " color=yellow style=filled]
"call_alloc_instance#A#instance.70a20314d55f22fb46408deb70d9aabb_1" -> "call_alloc_instance#A#instance.70a20314d55f22fb46408deb70d9aabb_3" ;
"call_alloc_instance#A#instance.70a20314d55f22fb46408deb70d9aabb_2" [label="2: Exit A::call_alloc_instance \n " color=yellow style=filled]
"call_alloc_instance#A#instance.70a20314d55f22fb46408deb70d9aabb_2" [label="2: Exit A.call_alloc_instance \n " color=yellow style=filled]
"call_alloc_instance#A#instance.70a20314d55f22fb46408deb70d9aabb_3" [label="3: Call alloc \n n$7=_fun___objc_alloc_no_fail(sizeof(t=A):unsigned long) [line 61, column 3]\n " shape="box"]
"call_alloc_instance#A#instance.70a20314d55f22fb46408deb70d9aabb_3" -> "call_alloc_instance#A#instance.70a20314d55f22fb46408deb70d9aabb_2" ;
"call_class_instance#A#instance.eb1ae02cd94582eb1fc7cb426794f9f0_1" [label="1: Start A::call_class_instance\nFormals: self:A*\nLocals: \n " color=yellow style=filled]
"call_class_instance#A#instance.eb1ae02cd94582eb1fc7cb426794f9f0_1" [label="1: Start A.call_class_instance\nFormals: self:A*\nLocals: \n " color=yellow style=filled]
"call_class_instance#A#instance.eb1ae02cd94582eb1fc7cb426794f9f0_1" -> "call_class_instance#A#instance.eb1ae02cd94582eb1fc7cb426794f9f0_3" ;
"call_class_instance#A#instance.eb1ae02cd94582eb1fc7cb426794f9f0_2" [label="2: Exit A::call_class_instance \n " color=yellow style=filled]
"call_class_instance#A#instance.eb1ae02cd94582eb1fc7cb426794f9f0_2" [label="2: Exit A.call_class_instance \n " color=yellow style=filled]
"call_class_instance#A#instance.eb1ae02cd94582eb1fc7cb426794f9f0_3" [label="3: Message Call: test_class \n n$9=_fun_C::test_class() [line 65, column 3]\n " shape="box"]
"call_class_instance#A#instance.eb1ae02cd94582eb1fc7cb426794f9f0_3" [label="3: Message Call: test_class \n n$9=_fun_C.test_class() [line 65, column 3]\n " shape="box"]
"call_class_instance#A#instance.eb1ae02cd94582eb1fc7cb426794f9f0_3" -> "call_class_instance#A#instance.eb1ae02cd94582eb1fc7cb426794f9f0_2" ;
"call_class_instance_with_class_name#A#instance.1baf88c0fb5549c04909fab0bed63c39_1" [label="1: Start A::call_class_instance_with_class_name\nFormals: self:A*\nLocals: \n " color=yellow style=filled]
"call_class_instance_with_class_name#A#instance.1baf88c0fb5549c04909fab0bed63c39_1" [label="1: Start A.call_class_instance_with_class_name\nFormals: self:A*\nLocals: \n " color=yellow style=filled]
"call_class_instance_with_class_name#A#instance.1baf88c0fb5549c04909fab0bed63c39_1" -> "call_class_instance_with_class_name#A#instance.1baf88c0fb5549c04909fab0bed63c39_3" ;
"call_class_instance_with_class_name#A#instance.1baf88c0fb5549c04909fab0bed63c39_2" [label="2: Exit A::call_class_instance_with_class_name \n " color=yellow style=filled]
"call_class_instance_with_class_name#A#instance.1baf88c0fb5549c04909fab0bed63c39_2" [label="2: Exit A.call_class_instance_with_class_name \n " color=yellow style=filled]
"call_class_instance_with_class_name#A#instance.1baf88c0fb5549c04909fab0bed63c39_3" [label="3: Message Call: test_class \n n$10=_fun_A::test_class() [line 69, column 3]\n " shape="box"]
"call_class_instance_with_class_name#A#instance.1baf88c0fb5549c04909fab0bed63c39_3" [label="3: Message Call: test_class \n n$10=_fun_A.test_class() [line 69, column 3]\n " shape="box"]
"call_class_instance_with_class_name#A#instance.1baf88c0fb5549c04909fab0bed63c39_3" -> "call_class_instance_with_class_name#A#instance.1baf88c0fb5549c04909fab0bed63c39_2" ;
"call_test#A#instance.41031d78ab8c6914ebc9851c442cbd4e_1" [label="1: Start A::call_test\nFormals: self:A*\nLocals: \n " color=yellow style=filled]
"call_test#A#instance.41031d78ab8c6914ebc9851c442cbd4e_1" [label="1: Start A.call_test\nFormals: self:A*\nLocals: \n " color=yellow style=filled]
"call_test#A#instance.41031d78ab8c6914ebc9851c442cbd4e_1" -> "call_test#A#instance.41031d78ab8c6914ebc9851c442cbd4e_3" ;
"call_test#A#instance.41031d78ab8c6914ebc9851c442cbd4e_2" [label="2: Exit A::call_test \n " color=yellow style=filled]
"call_test#A#instance.41031d78ab8c6914ebc9851c442cbd4e_2" [label="2: Exit A.call_test \n " color=yellow style=filled]
"call_test#A#instance.41031d78ab8c6914ebc9851c442cbd4e_3" [label="3: Message Call: test \n n$1=*&self:A* [line 46, column 4]\n n$2=_fun_A::test(n$1:A*) virtual [line 46, column 3]\n " shape="box"]
"call_test#A#instance.41031d78ab8c6914ebc9851c442cbd4e_3" [label="3: Message Call: test \n n$1=*&self:A* [line 46, column 4]\n n$2=_fun_A.test(n$1:A*) virtual [line 46, column 3]\n " shape="box"]
"call_test#A#instance.41031d78ab8c6914ebc9851c442cbd4e_3" -> "call_test#A#instance.41031d78ab8c6914ebc9851c442cbd4e_2" ;
"class_method_fst_arg_of_class_method#A#instance.cf9f3087f45649c74ef1f7ca002450f2_1" [label="1: Start A::class_method_fst_arg_of_class_method\nFormals: self:A*\nLocals: \n " color=yellow style=filled]
"class_method_fst_arg_of_class_method#A#instance.cf9f3087f45649c74ef1f7ca002450f2_1" [label="1: Start A.class_method_fst_arg_of_class_method\nFormals: self:A*\nLocals: \n " color=yellow style=filled]
"class_method_fst_arg_of_class_method#A#instance.cf9f3087f45649c74ef1f7ca002450f2_1" -> "class_method_fst_arg_of_class_method#A#instance.cf9f3087f45649c74ef1f7ca002450f2_3" ;
"class_method_fst_arg_of_class_method#A#instance.cf9f3087f45649c74ef1f7ca002450f2_2" [label="2: Exit A::class_method_fst_arg_of_class_method \n " color=yellow style=filled]
"class_method_fst_arg_of_class_method#A#instance.cf9f3087f45649c74ef1f7ca002450f2_2" [label="2: Exit A.class_method_fst_arg_of_class_method \n " color=yellow style=filled]
"class_method_fst_arg_of_class_method#A#instance.cf9f3087f45649c74ef1f7ca002450f2_3" [label="3: Return Stmt \n n$26=_fun_NSBundle::bundleForClass:(sizeof(t=A):unsigned long) [line 111, column 10]\n *&return:NSBundle*=n$26 [line 111, column 3]\n " shape="box"]
"class_method_fst_arg_of_class_method#A#instance.cf9f3087f45649c74ef1f7ca002450f2_3" [label="3: Return Stmt \n n$26=_fun_NSBundle.bundleForClass:(sizeof(t=A):unsigned long) [line 111, column 10]\n *&return:NSBundle*=n$26 [line 111, column 3]\n " shape="box"]
"class_method_fst_arg_of_class_method#A#instance.cf9f3087f45649c74ef1f7ca002450f2_3" -> "class_method_fst_arg_of_class_method#A#instance.cf9f3087f45649c74ef1f7ca002450f2_2" ;
"init#A#instance.eee79aaaddd644404e17691a7e7d809a_1" [label="1: Start A::init\nFormals: self:A*\nLocals: \n " color=yellow style=filled]
"init#A#instance.eee79aaaddd644404e17691a7e7d809a_1" [label="1: Start A.init\nFormals: self:A*\nLocals: \n " color=yellow style=filled]
"init#A#instance.eee79aaaddd644404e17691a7e7d809a_1" -> "init#A#instance.eee79aaaddd644404e17691a7e7d809a_3" ;
"init#A#instance.eee79aaaddd644404e17691a7e7d809a_2" [label="2: Exit A::init \n " color=yellow style=filled]
"init#A#instance.eee79aaaddd644404e17691a7e7d809a_2" [label="2: Exit A.init \n " color=yellow style=filled]
"init#A#instance.eee79aaaddd644404e17691a7e7d809a_3" [label="3: Message Call: init \n n$19=*&self:A* [line 86, column 3]\n n$20=_fun_NSObject::init(n$19:A*) [line 86, column 3]\n " shape="box"]
"init#A#instance.eee79aaaddd644404e17691a7e7d809a_3" [label="3: Message Call: init \n n$19=*&self:A* [line 86, column 3]\n n$20=_fun_NSObject.init(n$19:A*) [line 86, column 3]\n " shape="box"]
"init#A#instance.eee79aaaddd644404e17691a7e7d809a_3" -> "init#A#instance.eee79aaaddd644404e17691a7e7d809a_2" ;
"loggerName#A#instance.36b9a42412bcf7d8d3f8397eb2bcb555_1" [label="1: Start A::loggerName\nFormals: self:A*\nLocals: \n " color=yellow style=filled]
"loggerName#A#instance.36b9a42412bcf7d8d3f8397eb2bcb555_1" [label="1: Start A.loggerName\nFormals: self:A*\nLocals: \n " color=yellow style=filled]
"loggerName#A#instance.36b9a42412bcf7d8d3f8397eb2bcb555_1" -> "loggerName#A#instance.36b9a42412bcf7d8d3f8397eb2bcb555_3" ;
"loggerName#A#instance.36b9a42412bcf7d8d3f8397eb2bcb555_2" [label="2: Exit A::loggerName \n " color=yellow style=filled]
"loggerName#A#instance.36b9a42412bcf7d8d3f8397eb2bcb555_2" [label="2: Exit A.loggerName \n " color=yellow style=filled]
"loggerName#A#instance.36b9a42412bcf7d8d3f8397eb2bcb555_3" [label="3: Return Stmt \n n$22=_fun_NSStringFromClass(sizeof(t=A):unsigned long) [line 90, column 10]\n *&return:NSString*=n$22 [line 90, column 3]\n " shape="box"]
"loggerName#A#instance.36b9a42412bcf7d8d3f8397eb2bcb555_3" -> "loggerName#A#instance.36b9a42412bcf7d8d3f8397eb2bcb555_2" ;
"t#A#instance.e31b9a7bced712626784e2860af1a31b_1" [label="1: Start A::t\nFormals: self:A*\nLocals: b:B* \n " color=yellow style=filled]
"t#A#instance.e31b9a7bced712626784e2860af1a31b_1" [label="1: Start A.t\nFormals: self:A*\nLocals: b:B* \n " color=yellow style=filled]
"t#A#instance.e31b9a7bced712626784e2860af1a31b_1" -> "t#A#instance.e31b9a7bced712626784e2860af1a31b_4" ;
"t#A#instance.e31b9a7bced712626784e2860af1a31b_2" [label="2: Exit A::t \n " color=yellow style=filled]
"t#A#instance.e31b9a7bced712626784e2860af1a31b_2" [label="2: Exit A.t \n " color=yellow style=filled]
"t#A#instance.e31b9a7bced712626784e2860af1a31b_3" [label="3: Message Call: b_m \n n$12=_fun_B::b_m() [line 74, column 3]\n " shape="box"]
"t#A#instance.e31b9a7bced712626784e2860af1a31b_3" [label="3: Message Call: b_m \n n$12=_fun_B.b_m() [line 74, column 3]\n " shape="box"]
"t#A#instance.e31b9a7bced712626784e2860af1a31b_3" -> "t#A#instance.e31b9a7bced712626784e2860af1a31b_2" ;
"t#A#instance.e31b9a7bced712626784e2860af1a31b_4" [label="4: DeclStmt \n VARIABLE_DECLARED(b:B*); [line 73, column 3]\n n$13=_fun___objc_alloc_no_fail(sizeof(t=B):unsigned long) [line 73, column 10]\n n$14=_fun_NSObject::init(n$13:B*) virtual [line 73, column 10]\n *&b:B*=n$14 [line 73, column 3]\n " shape="box"]
"t#A#instance.e31b9a7bced712626784e2860af1a31b_4" [label="4: DeclStmt \n VARIABLE_DECLARED(b:B*); [line 73, column 3]\n n$13=_fun___objc_alloc_no_fail(sizeof(t=B):unsigned long) [line 73, column 10]\n n$14=_fun_NSObject.init(n$13:B*) virtual [line 73, column 10]\n *&b:B*=n$14 [line 73, column 3]\n " shape="box"]
"t#A#instance.e31b9a7bced712626784e2860af1a31b_4" -> "t#A#instance.e31b9a7bced712626784e2860af1a31b_3" ;
"test#A#instance.561395dd5ffb844cbbb6c52cf21ce047_1" [label="1: Start A::test\nFormals: self:A*\nLocals: \n " color=yellow style=filled]
"test#A#instance.561395dd5ffb844cbbb6c52cf21ce047_1" [label="1: Start A.test\nFormals: self:A*\nLocals: \n " color=yellow style=filled]
"test#A#instance.561395dd5ffb844cbbb6c52cf21ce047_1" -> "test#A#instance.561395dd5ffb844cbbb6c52cf21ce047_2" ;
"test#A#instance.561395dd5ffb844cbbb6c52cf21ce047_2" [label="2: Exit A::test \n " color=yellow style=filled]
"test#A#instance.561395dd5ffb844cbbb6c52cf21ce047_2" [label="2: Exit A.test \n " color=yellow style=filled]
"use_class_in_other_ways:#A(class B)#instance.7a96604c2c855db834d214f72f83a306_1" [label="1: Start A::use_class_in_other_ways:\nFormals: self:A* object:B*\nLocals: \n " color=yellow style=filled]
"use_class_in_other_ways:#A(class B)#instance.7a96604c2c855db834d214f72f83a306_1" [label="1: Start A.use_class_in_other_ways:\nFormals: self:A* object:B*\nLocals: \n " color=yellow style=filled]
"use_class_in_other_ways:#A(class B)#instance.7a96604c2c855db834d214f72f83a306_1" -> "use_class_in_other_ways:#A(class B)#instance.7a96604c2c855db834d214f72f83a306_3" ;
"use_class_in_other_ways:#A(class B)#instance.7a96604c2c855db834d214f72f83a306_2" [label="2: Exit A::use_class_in_other_ways: \n " color=yellow style=filled]
"use_class_in_other_ways:#A(class B)#instance.7a96604c2c855db834d214f72f83a306_2" [label="2: Exit A.use_class_in_other_ways: \n " color=yellow style=filled]
"use_class_in_other_ways:#A(class B)#instance.7a96604c2c855db834d214f72f83a306_3" [label="3: Return Stmt \n n$16=*&object:B* [line 78, column 11]\n n$17=_fun_B::isC:(n$16:B*,sizeof(t=A):unsigned long) virtual [line 78, column 10]\n *&return:_Bool=n$17 [line 78, column 3]\n " shape="box"]
"use_class_in_other_ways:#A(class B)#instance.7a96604c2c855db834d214f72f83a306_3" [label="3: Return Stmt \n n$16=*&object:B* [line 78, column 11]\n n$17=_fun_B.isC:(n$16:B*,sizeof(t=A):unsigned long) virtual [line 78, column 10]\n *&return:_Bool=n$17 [line 78, column 3]\n " shape="box"]
"use_class_in_other_ways:#A(class B)#instance.7a96604c2c855db834d214f72f83a306_3" -> "use_class_in_other_ways:#A(class B)#instance.7a96604c2c855db834d214f72f83a306_2" ;
"b_m#B#class.82af96ad418803b2f96fc1bfa1572c10_1" [label="1: Start B::b_m\nFormals: \nLocals: \n " color=yellow style=filled]
"b_m#B#class.82af96ad418803b2f96fc1bfa1572c10_1" [label="1: Start B.b_m\nFormals: \nLocals: \n " color=yellow style=filled]
"b_m#B#class.82af96ad418803b2f96fc1bfa1572c10_1" -> "b_m#B#class.82af96ad418803b2f96fc1bfa1572c10_2" ;
"b_m#B#class.82af96ad418803b2f96fc1bfa1572c10_2" [label="2: Exit B::b_m \n " color=yellow style=filled]
"b_m#B#class.82af96ad418803b2f96fc1bfa1572c10_2" [label="2: Exit B.b_m \n " color=yellow style=filled]
"isC:#B(struct objc_class)#instance.ab14fb7a19510df6032d65aa27b0f12d_1" [label="1: Start B::isC:\nFormals: self:B* aClass:objc_class*\nLocals: \n " color=yellow style=filled]
"isC:#B(struct objc_class)#instance.ab14fb7a19510df6032d65aa27b0f12d_1" [label="1: Start B.isC:\nFormals: self:B* aClass:objc_class*\nLocals: \n " color=yellow style=filled]
"isC:#B(struct objc_class)#instance.ab14fb7a19510df6032d65aa27b0f12d_1" -> "isC:#B(struct objc_class)#instance.ab14fb7a19510df6032d65aa27b0f12d_3" ;
"isC:#B(struct objc_class)#instance.ab14fb7a19510df6032d65aa27b0f12d_2" [label="2: Exit B::isC: \n " color=yellow style=filled]
"isC:#B(struct objc_class)#instance.ab14fb7a19510df6032d65aa27b0f12d_2" [label="2: Exit B.isC: \n " color=yellow style=filled]
"isC:#B(struct objc_class)#instance.ab14fb7a19510df6032d65aa27b0f12d_3" [label="3: Return Stmt \n *&return:_Bool=1 [line 23, column 3]\n " shape="box"]

@ -1,54 +1,54 @@
/* @generated */
digraph cfg {
"aClassMethod#MyClass#class.889732ffd1b4632cdd7c3f47090e69c0_1" [label="1: Start MyClass::aClassMethod\nFormals: \nLocals: myClass:MyClass* \n " color=yellow style=filled]
"aClassMethod#MyClass#class.889732ffd1b4632cdd7c3f47090e69c0_1" [label="1: Start MyClass.aClassMethod\nFormals: \nLocals: myClass:MyClass* \n " color=yellow style=filled]
"aClassMethod#MyClass#class.889732ffd1b4632cdd7c3f47090e69c0_1" -> "aClassMethod#MyClass#class.889732ffd1b4632cdd7c3f47090e69c0_3" ;
"aClassMethod#MyClass#class.889732ffd1b4632cdd7c3f47090e69c0_2" [label="2: Exit MyClass::aClassMethod \n " color=yellow style=filled]
"aClassMethod#MyClass#class.889732ffd1b4632cdd7c3f47090e69c0_2" [label="2: Exit MyClass.aClassMethod \n " color=yellow style=filled]
"aClassMethod#MyClass#class.889732ffd1b4632cdd7c3f47090e69c0_3" [label="3: DeclStmt \n VARIABLE_DECLARED(myClass:MyClass*); [line 19, column 3]\n n$0=_fun___objc_alloc_no_fail(sizeof(t=MyClass):unsigned long) [line 19, column 22]\n *&myClass:MyClass*=n$0 [line 19, column 3]\n " shape="box"]
"aClassMethod#MyClass#class.889732ffd1b4632cdd7c3f47090e69c0_3" -> "aClassMethod#MyClass#class.889732ffd1b4632cdd7c3f47090e69c0_2" ;
"aClassMethod2#MyClass#class.98feaa0eae511501cde734a35e83bb61_1" [label="1: Start MyClass::aClassMethod2\nFormals: \nLocals: \n " color=yellow style=filled]
"aClassMethod2#MyClass#class.98feaa0eae511501cde734a35e83bb61_1" [label="1: Start MyClass.aClassMethod2\nFormals: \nLocals: \n " color=yellow style=filled]
"aClassMethod2#MyClass#class.98feaa0eae511501cde734a35e83bb61_1" -> "aClassMethod2#MyClass#class.98feaa0eae511501cde734a35e83bb61_3" ;
"aClassMethod2#MyClass#class.98feaa0eae511501cde734a35e83bb61_2" [label="2: Exit MyClass::aClassMethod2 \n " color=yellow style=filled]
"aClassMethod2#MyClass#class.98feaa0eae511501cde734a35e83bb61_2" [label="2: Exit MyClass.aClassMethod2 \n " color=yellow style=filled]
"aClassMethod2#MyClass#class.98feaa0eae511501cde734a35e83bb61_3" [label="3: Message Call: aClassMethod \n n$2=_fun_MyClass::aClassMethod() [line 27, column 3]\n " shape="box"]
"aClassMethod2#MyClass#class.98feaa0eae511501cde734a35e83bb61_3" [label="3: Message Call: aClassMethod \n n$2=_fun_MyClass.aClassMethod() [line 27, column 3]\n " shape="box"]
"aClassMethod2#MyClass#class.98feaa0eae511501cde734a35e83bb61_3" -> "aClassMethod2#MyClass#class.98feaa0eae511501cde734a35e83bb61_2" ;
"anInstanceMethod#MyClass#instance.7c18faea6ff486bf30aa019b169dffc3_1" [label="1: Start MyClass::anInstanceMethod\nFormals: self:MyClass*\nLocals: \n " color=yellow style=filled]
"anInstanceMethod#MyClass#instance.7c18faea6ff486bf30aa019b169dffc3_1" [label="1: Start MyClass.anInstanceMethod\nFormals: self:MyClass*\nLocals: \n " color=yellow style=filled]
"anInstanceMethod#MyClass#instance.7c18faea6ff486bf30aa019b169dffc3_1" -> "anInstanceMethod#MyClass#instance.7c18faea6ff486bf30aa019b169dffc3_3" ;
"anInstanceMethod#MyClass#instance.7c18faea6ff486bf30aa019b169dffc3_2" [label="2: Exit MyClass::anInstanceMethod \n " color=yellow style=filled]
"anInstanceMethod#MyClass#instance.7c18faea6ff486bf30aa019b169dffc3_2" [label="2: Exit MyClass.anInstanceMethod \n " color=yellow style=filled]
"anInstanceMethod#MyClass#instance.7c18faea6ff486bf30aa019b169dffc3_3" [label="3: Message Call: aClassMethod \n n$1=_fun_MyClass::aClassMethod() [line 23, column 3]\n " shape="box"]
"anInstanceMethod#MyClass#instance.7c18faea6ff486bf30aa019b169dffc3_3" [label="3: Message Call: aClassMethod \n n$1=_fun_MyClass.aClassMethod() [line 23, column 3]\n " shape="box"]
"anInstanceMethod#MyClass#instance.7c18faea6ff486bf30aa019b169dffc3_3" -> "anInstanceMethod#MyClass#instance.7c18faea6ff486bf30aa019b169dffc3_2" ;
"anInstanceMethod2#MyClass#instance.d2b66ad8a2fe88927ba6f54fa43eabea_1" [label="1: Start MyClass::anInstanceMethod2\nFormals: self:MyClass*\nLocals: \n " color=yellow style=filled]
"anInstanceMethod2#MyClass#instance.d2b66ad8a2fe88927ba6f54fa43eabea_1" [label="1: Start MyClass.anInstanceMethod2\nFormals: self:MyClass*\nLocals: \n " color=yellow style=filled]
"anInstanceMethod2#MyClass#instance.d2b66ad8a2fe88927ba6f54fa43eabea_1" -> "anInstanceMethod2#MyClass#instance.d2b66ad8a2fe88927ba6f54fa43eabea_3" ;
"anInstanceMethod2#MyClass#instance.d2b66ad8a2fe88927ba6f54fa43eabea_2" [label="2: Exit MyClass::anInstanceMethod2 \n " color=yellow style=filled]
"anInstanceMethod2#MyClass#instance.d2b66ad8a2fe88927ba6f54fa43eabea_2" [label="2: Exit MyClass.anInstanceMethod2 \n " color=yellow style=filled]
"anInstanceMethod2#MyClass#instance.d2b66ad8a2fe88927ba6f54fa43eabea_3" [label="3: Message Call: getX \n n$3=*&self:MyClass* [line 35, column 4]\n n$4=_fun_MyClass::getX(n$3:MyClass*) virtual [line 35, column 3]\n " shape="box"]
"anInstanceMethod2#MyClass#instance.d2b66ad8a2fe88927ba6f54fa43eabea_3" [label="3: Message Call: getX \n n$3=*&self:MyClass* [line 35, column 4]\n n$4=_fun_MyClass.getX(n$3:MyClass*) virtual [line 35, column 3]\n " shape="box"]
"anInstanceMethod2#MyClass#instance.d2b66ad8a2fe88927ba6f54fa43eabea_3" -> "anInstanceMethod2#MyClass#instance.d2b66ad8a2fe88927ba6f54fa43eabea_2" ;
"getX#MyClass#instance.ddf21e5eecd35d40e2b277a5d6933812_1" [label="1: Start MyClass::getX\nFormals: self:MyClass*\nLocals: \n " color=yellow style=filled]
"getX#MyClass#instance.ddf21e5eecd35d40e2b277a5d6933812_1" [label="1: Start MyClass.getX\nFormals: self:MyClass*\nLocals: \n " color=yellow style=filled]
"getX#MyClass#instance.ddf21e5eecd35d40e2b277a5d6933812_1" -> "getX#MyClass#instance.ddf21e5eecd35d40e2b277a5d6933812_3" ;
"getX#MyClass#instance.ddf21e5eecd35d40e2b277a5d6933812_2" [label="2: Exit MyClass::getX \n " color=yellow style=filled]
"getX#MyClass#instance.ddf21e5eecd35d40e2b277a5d6933812_2" [label="2: Exit MyClass.getX \n " color=yellow style=filled]
"getX#MyClass#instance.ddf21e5eecd35d40e2b277a5d6933812_3" [label="3: Return Stmt \n *&return:int=0 [line 31, column 3]\n " shape="box"]

@ -7,7 +7,7 @@ digraph cfg {
"__infer_globals_initializer_lastName.ab5584b9c7a64c926bfb635dcb73a207_2" [label="2: Exit __infer_globals_initializer_lastName \n " color=yellow style=filled]
"__infer_globals_initializer_lastName.ab5584b9c7a64c926bfb635dcb73a207_3" [label="3: DeclStmt \n VARIABLE_DECLARED(#GB<codetoanalyze/objc/frontend/strings/global_string_literal.m>$lastName:NSString*); [line 10, column 1]\n n$0=_fun_NSString::stringWithUTF8String:(\"Rodriguez\":char* const ) [line 10, column 22]\n *&#GB<codetoanalyze/objc/frontend/strings/global_string_literal.m>$lastName:NSString*=n$0 [line 10, column 1]\n " shape="box"]
"__infer_globals_initializer_lastName.ab5584b9c7a64c926bfb635dcb73a207_3" [label="3: DeclStmt \n VARIABLE_DECLARED(#GB<codetoanalyze/objc/frontend/strings/global_string_literal.m>$lastName:NSString*); [line 10, column 1]\n n$0=_fun_NSString.stringWithUTF8String:(\"Rodriguez\":char* const ) [line 10, column 22]\n *&#GB<codetoanalyze/objc/frontend/strings/global_string_literal.m>$lastName:NSString*=n$0 [line 10, column 1]\n " shape="box"]
"__infer_globals_initializer_lastName.ab5584b9c7a64c926bfb635dcb73a207_3" -> "__infer_globals_initializer_lastName.ab5584b9c7a64c926bfb635dcb73a207_2" ;

@ -11,7 +11,7 @@ digraph cfg {
"main.fad58de7366495db4650cfefac2fcd61_3" -> "main.fad58de7366495db4650cfefac2fcd61_2" ;
"main.fad58de7366495db4650cfefac2fcd61_4" [label="4: DeclStmt \n VARIABLE_DECLARED(lastName:NSString*); [line 11, column 3]\n n$0=_fun_NSString::stringWithUTF8String:(\"Rodriguez\":char* const ) [line 11, column 24]\n *&lastName:NSString*=n$0 [line 11, column 3]\n " shape="box"]
"main.fad58de7366495db4650cfefac2fcd61_4" [label="4: DeclStmt \n VARIABLE_DECLARED(lastName:NSString*); [line 11, column 3]\n n$0=_fun_NSString.stringWithUTF8String:(\"Rodriguez\":char* const ) [line 11, column 24]\n *&lastName:NSString*=n$0 [line 11, column 3]\n " shape="box"]
"main.fad58de7366495db4650cfefac2fcd61_4" -> "main.fad58de7366495db4650cfefac2fcd61_3" ;

@ -1,10 +1,10 @@
/* @generated */
digraph cfg {
"myNumber#MyClass#instance.b5167e9607437362e48461937478a06c_1" [label="1: Start MyClass::myNumber\nFormals: self:MyClass*\nLocals: \n " color=yellow style=filled]
"myNumber#MyClass#instance.b5167e9607437362e48461937478a06c_1" [label="1: Start MyClass.myNumber\nFormals: self:MyClass*\nLocals: \n " color=yellow style=filled]
"myNumber#MyClass#instance.b5167e9607437362e48461937478a06c_1" -> "myNumber#MyClass#instance.b5167e9607437362e48461937478a06c_3" ;
"myNumber#MyClass#instance.b5167e9607437362e48461937478a06c_2" [label="2: Exit MyClass::myNumber \n " color=yellow style=filled]
"myNumber#MyClass#instance.b5167e9607437362e48461937478a06c_2" [label="2: Exit MyClass.myNumber \n " color=yellow style=filled]
"myNumber#MyClass#instance.b5167e9607437362e48461937478a06c_3" [label="3: Return Stmt \n *&return:int=1 [line 13, column 3]\n " shape="box"]

@ -1,17 +1,17 @@
/* @generated */
digraph cfg {
"myNumber#MySubclass#instance.8e9ae0ac35cf895ff25e7570cdce81aa_1" [label="1: Start MySubclass::myNumber\nFormals: self:MySubclass*\nLocals: subclassNumber:int \n " color=yellow style=filled]
"myNumber#MySubclass#instance.8e9ae0ac35cf895ff25e7570cdce81aa_1" [label="1: Start MySubclass.myNumber\nFormals: self:MySubclass*\nLocals: subclassNumber:int \n " color=yellow style=filled]
"myNumber#MySubclass#instance.8e9ae0ac35cf895ff25e7570cdce81aa_1" -> "myNumber#MySubclass#instance.8e9ae0ac35cf895ff25e7570cdce81aa_4" ;
"myNumber#MySubclass#instance.8e9ae0ac35cf895ff25e7570cdce81aa_2" [label="2: Exit MySubclass::myNumber \n " color=yellow style=filled]
"myNumber#MySubclass#instance.8e9ae0ac35cf895ff25e7570cdce81aa_2" [label="2: Exit MySubclass.myNumber \n " color=yellow style=filled]
"myNumber#MySubclass#instance.8e9ae0ac35cf895ff25e7570cdce81aa_3" [label="3: Return Stmt \n n$0=*&subclassNumber:int [line 16, column 10]\n *&return:int=n$0 [line 16, column 3]\n " shape="box"]
"myNumber#MySubclass#instance.8e9ae0ac35cf895ff25e7570cdce81aa_3" -> "myNumber#MySubclass#instance.8e9ae0ac35cf895ff25e7570cdce81aa_2" ;
"myNumber#MySubclass#instance.8e9ae0ac35cf895ff25e7570cdce81aa_4" [label="4: DeclStmt \n VARIABLE_DECLARED(subclassNumber:int); [line 15, column 3]\n n$1=*&self:MySubclass* [line 15, column 24]\n n$2=_fun_MyClass::myNumber(n$1:MySubclass*) [line 15, column 24]\n *&subclassNumber:int=(n$2 + 1) [line 15, column 3]\n " shape="box"]
"myNumber#MySubclass#instance.8e9ae0ac35cf895ff25e7570cdce81aa_4" [label="4: DeclStmt \n VARIABLE_DECLARED(subclassNumber:int); [line 15, column 3]\n n$1=*&self:MySubclass* [line 15, column 24]\n n$2=_fun_MyClass.myNumber(n$1:MySubclass*) [line 15, column 24]\n *&subclassNumber:int=(n$2 + 1) [line 15, column 3]\n " shape="box"]
"myNumber#MySubclass#instance.8e9ae0ac35cf895ff25e7570cdce81aa_4" -> "myNumber#MySubclass#instance.8e9ae0ac35cf895ff25e7570cdce81aa_3" ;

@ -11,7 +11,7 @@ digraph cfg {
"main.fad58de7366495db4650cfefac2fcd61_3" -> "main.fad58de7366495db4650cfefac2fcd61_2" ;
"main.fad58de7366495db4650cfefac2fcd61_4" [label="4: DeclStmt \n VARIABLE_DECLARED(a:A*); [line 11, column 3]\n n$0=_fun___objc_alloc_no_fail(sizeof(t=A):unsigned long) [line 11, column 11]\n n$1=_fun_NSObject::init(n$0:A*) virtual [line 11, column 10]\n *&a:A*=n$1 [line 11, column 3]\n " shape="box"]
"main.fad58de7366495db4650cfefac2fcd61_4" [label="4: DeclStmt \n VARIABLE_DECLARED(a:A*); [line 11, column 3]\n n$0=_fun___objc_alloc_no_fail(sizeof(t=A):unsigned long) [line 11, column 11]\n n$1=_fun_NSObject.init(n$0:A*) virtual [line 11, column 10]\n *&a:A*=n$1 [line 11, column 3]\n " shape="box"]
"main.fad58de7366495db4650cfefac2fcd61_4" -> "main.fad58de7366495db4650cfefac2fcd61_3" ;

@ -22,11 +22,11 @@ digraph cfg {
"__infer_globals_initializer___iPhoneVideoAdLayout#774934d200ab6ea201ea7444923ebf03.1e6bd750ce4ce65119ad54cee8ee01a8_3" -> "__infer_globals_initializer___iPhoneVideoAdLayout#774934d200ab6ea201ea7444923ebf03.1e6bd750ce4ce65119ad54cee8ee01a8_2" ;
"layoutToUse#FBScrollViewDelegateProxy#class.0fb14252876875c85e9253ab00bfb755_1" [label="1: Start FBScrollViewDelegateProxy::layoutToUse\nFormals: \nLocals: \n " color=yellow style=filled]
"layoutToUse#FBScrollViewDelegateProxy#class.0fb14252876875c85e9253ab00bfb755_1" [label="1: Start FBScrollViewDelegateProxy.layoutToUse\nFormals: \nLocals: \n " color=yellow style=filled]
"layoutToUse#FBScrollViewDelegateProxy#class.0fb14252876875c85e9253ab00bfb755_1" -> "layoutToUse#FBScrollViewDelegateProxy#class.0fb14252876875c85e9253ab00bfb755_3" ;
"layoutToUse#FBScrollViewDelegateProxy#class.0fb14252876875c85e9253ab00bfb755_2" [label="2: Exit FBScrollViewDelegateProxy::layoutToUse \n " color=yellow style=filled]
"layoutToUse#FBScrollViewDelegateProxy#class.0fb14252876875c85e9253ab00bfb755_2" [label="2: Exit FBScrollViewDelegateProxy.layoutToUse \n " color=yellow style=filled]
"layoutToUse#FBScrollViewDelegateProxy#class.0fb14252876875c85e9253ab00bfb755_3" [label="3: Return Stmt \n n$0=*&#GB<codetoanalyze/objc/frontend/types/testloop.m>$__iPhoneVideoAdLayout:FBVideoAdLayout [line 43, column 10]\n *&return:FBVideoAdLayout=n$0 [line 43, column 3]\n " shape="box"]

@ -45,11 +45,11 @@ digraph cfg {
"main.fad58de7366495db4650cfefac2fcd61_6" -> "main.fad58de7366495db4650cfefac2fcd61_4" ;
"main.fad58de7366495db4650cfefac2fcd61_7" [label="7: BinaryOperatorStmt: Assign \n n$2=*&o:AClass* [line 43, column 10]\n n$1=*&x:int [line 43, column 16]\n n$3=_fun_AClass::bar:(n$2:AClass*,n$1:int) virtual [line 43, column 9]\n *&x:int=n$3 [line 43, column 5]\n " shape="box"]
"main.fad58de7366495db4650cfefac2fcd61_7" [label="7: BinaryOperatorStmt: Assign \n n$2=*&o:AClass* [line 43, column 10]\n n$1=*&x:int [line 43, column 16]\n n$3=_fun_AClass.bar:(n$2:AClass*,n$1:int) virtual [line 43, column 9]\n *&x:int=n$3 [line 43, column 5]\n " shape="box"]
"main.fad58de7366495db4650cfefac2fcd61_7" -> "main.fad58de7366495db4650cfefac2fcd61_4" ;
"main.fad58de7366495db4650cfefac2fcd61_8" [label="8: Message Call: foo: \n n$5=*&o:AClass* [line 42, column 6]\n n$4=*&x:int [line 42, column 12]\n n$6=_fun_AClass::foo:(n$5:AClass*,n$4:int) virtual [line 42, column 5]\n " shape="box"]
"main.fad58de7366495db4650cfefac2fcd61_8" [label="8: Message Call: foo: \n n$5=*&o:AClass* [line 42, column 6]\n n$4=*&x:int [line 42, column 12]\n n$6=_fun_AClass.foo:(n$5:AClass*,n$4:int) virtual [line 42, column 5]\n " shape="box"]
"main.fad58de7366495db4650cfefac2fcd61_8" -> "main.fad58de7366495db4650cfefac2fcd61_7" ;
@ -70,22 +70,22 @@ digraph cfg {
"main.fad58de7366495db4650cfefac2fcd61_12" -> "main.fad58de7366495db4650cfefac2fcd61_11" ;
"bar:#AClass#instance.c024d9849ec28286083491e7c46a4982_1" [label="1: Start AClass::bar:\nFormals: self:AClass* a:int\nLocals: \n " color=yellow style=filled]
"bar:#AClass#instance.c024d9849ec28286083491e7c46a4982_1" [label="1: Start AClass.bar:\nFormals: self:AClass* a:int\nLocals: \n " color=yellow style=filled]
"bar:#AClass#instance.c024d9849ec28286083491e7c46a4982_1" -> "bar:#AClass#instance.c024d9849ec28286083491e7c46a4982_3" ;
"bar:#AClass#instance.c024d9849ec28286083491e7c46a4982_2" [label="2: Exit AClass::bar: \n " color=yellow style=filled]
"bar:#AClass#instance.c024d9849ec28286083491e7c46a4982_2" [label="2: Exit AClass.bar: \n " color=yellow style=filled]
"bar:#AClass#instance.c024d9849ec28286083491e7c46a4982_3" [label="3: Return Stmt \n n$1=*&a:int [line 22, column 10]\n *&a:int=(n$1 + 1) [line 22, column 10]\n *&return:int=n$1 [line 22, column 3]\n " shape="box"]
"bar:#AClass#instance.c024d9849ec28286083491e7c46a4982_3" -> "bar:#AClass#instance.c024d9849ec28286083491e7c46a4982_2" ;
"foo:#AClass#instance.85442408d439a21334483f95effd3023_1" [label="1: Start AClass::foo:\nFormals: self:AClass* a:int\nLocals: \n " color=yellow style=filled]
"foo:#AClass#instance.85442408d439a21334483f95effd3023_1" [label="1: Start AClass.foo:\nFormals: self:AClass* a:int\nLocals: \n " color=yellow style=filled]
"foo:#AClass#instance.85442408d439a21334483f95effd3023_1" -> "foo:#AClass#instance.85442408d439a21334483f95effd3023_3" ;
"foo:#AClass#instance.85442408d439a21334483f95effd3023_2" [label="2: Exit AClass::foo: \n " color=yellow style=filled]
"foo:#AClass#instance.85442408d439a21334483f95effd3023_2" [label="2: Exit AClass.foo: \n " color=yellow style=filled]
"foo:#AClass#instance.85442408d439a21334483f95effd3023_3" [label="3: UnaryOperator \n n$0=*&a:int [line 19, column 3]\n *&a:int=(n$0 + 1) [line 19, column 3]\n " shape="box"]

@ -1,10 +1,10 @@
/* @generated */
digraph cfg {
"sharedInstance#AClass#instance.07ceaad875949bf6aaa9dc5e3605f563_1" [label="1: Start AClass::sharedInstance\nFormals: self:AClass*\nLocals: \n " color=yellow style=filled]
"sharedInstance#AClass#instance.07ceaad875949bf6aaa9dc5e3605f563_1" [label="1: Start AClass.sharedInstance\nFormals: self:AClass*\nLocals: \n " color=yellow style=filled]
"sharedInstance#AClass#instance.07ceaad875949bf6aaa9dc5e3605f563_1" -> "sharedInstance#AClass#instance.07ceaad875949bf6aaa9dc5e3605f563_3" ;
"sharedInstance#AClass#instance.07ceaad875949bf6aaa9dc5e3605f563_2" [label="2: Exit AClass::sharedInstance \n " color=yellow style=filled]
"sharedInstance#AClass#instance.07ceaad875949bf6aaa9dc5e3605f563_2" [label="2: Exit AClass.sharedInstance \n " color=yellow style=filled]
"sharedInstance#AClass#instance.07ceaad875949bf6aaa9dc5e3605f563_3" [label="3: Return Stmt \n n$0=*&#GB<codetoanalyze/objc/frontend/vardecl/aclass.m>$aVariable:NSObject* [line 19, column 10]\n *&return:NSObject*=n$0 [line 19, column 3]\n " shape="box"]

@ -1,10 +1,10 @@
/* @generated */
digraph cfg {
"sharedInstance#AClass#instance.07ceaad875949bf6aaa9dc5e3605f563_1" [label="1: Start AClass::sharedInstance\nFormals: self:AClass*\nLocals: \n " color=yellow style=filled]
"sharedInstance#AClass#instance.07ceaad875949bf6aaa9dc5e3605f563_1" [label="1: Start AClass.sharedInstance\nFormals: self:AClass*\nLocals: \n " color=yellow style=filled]
"sharedInstance#AClass#instance.07ceaad875949bf6aaa9dc5e3605f563_1" -> "sharedInstance#AClass#instance.07ceaad875949bf6aaa9dc5e3605f563_3" ;
"sharedInstance#AClass#instance.07ceaad875949bf6aaa9dc5e3605f563_2" [label="2: Exit AClass::sharedInstance \n " color=yellow style=filled]
"sharedInstance#AClass#instance.07ceaad875949bf6aaa9dc5e3605f563_2" [label="2: Exit AClass.sharedInstance \n " color=yellow style=filled]
"sharedInstance#AClass#instance.07ceaad875949bf6aaa9dc5e3605f563_3" [label="3: Return Stmt \n n$0=*&#GB<codetoanalyze/objc/frontend/vardecl/aclass_2.m>$aVariable:NSObject* [line 19, column 10]\n *&return:NSObject*=n$0 [line 19, column 3]\n " shape="box"]

@ -29,7 +29,7 @@ digraph cfg {
"test.098f6bcd4621d373cade4e832627b4f6_2" [label="2: Exit test \n " color=yellow style=filled]
"test.098f6bcd4621d373cade4e832627b4f6_3" [label="3: DeclStmt \n VARIABLE_DECLARED(a:C*[3*8]); [line 23, column 3]\n n$0=*&c1:C* [line 23, column 15]\n n$1=_fun_NSObject::init(n$0:C*) virtual [line 23, column 14]\n *&a[0]:C*=n$1 [line 23, column 13]\n n$2=*&c1:C* [line 23, column 25]\n *&a[1]:C*=n$2 [line 23, column 13]\n n$3=*&c2:C* [line 23, column 29]\n *&a[2]:C*=n$3 [line 23, column 13]\n " shape="box"]
"test.098f6bcd4621d373cade4e832627b4f6_3" [label="3: DeclStmt \n VARIABLE_DECLARED(a:C*[3*8]); [line 23, column 3]\n n$0=*&c1:C* [line 23, column 15]\n n$1=_fun_NSObject.init(n$0:C*) virtual [line 23, column 14]\n *&a[0]:C*=n$1 [line 23, column 13]\n n$2=*&c1:C* [line 23, column 25]\n *&a[1]:C*=n$2 [line 23, column 13]\n n$3=*&c2:C* [line 23, column 29]\n *&a[2]:C*=n$3 [line 23, column 13]\n " shape="box"]
"test.098f6bcd4621d373cade4e832627b4f6_3" -> "test.098f6bcd4621d373cade4e832627b4f6_2" ;

@ -1,10 +1,10 @@
codetoanalyze/objc/ioslints/unavailable_api_allowed_cases.m, Unavailable_api_allowed_cases::m2, 144, UNAVAILABLE_API_IN_SUPPORTED_IOS_SDK, no_bucket, ERROR, []
codetoanalyze/objc/ioslints/unavailable_api_allowed_cases.m, Unavailable_api_allowed_cases::m3, 152, UNAVAILABLE_API_IN_SUPPORTED_IOS_SDK, no_bucket, ERROR, []
codetoanalyze/objc/ioslints/unavailable_api_allowed_cases.m, Unavailable_api_allowed_cases::uifont_without_respondstoselector, 127, UNAVAILABLE_API_IN_SUPPORTED_IOS_SDK, no_bucket, ERROR, []
codetoanalyze/objc/ioslints/unavailable_api_allowed_cases.m, Unavailable_api_allowed_cases::with_responds_to_selector_in_else, 80, UNAVAILABLE_API_IN_SUPPORTED_IOS_SDK, no_bucket, ERROR, []
codetoanalyze/objc/ioslints/unavailable_api_allowed_cases.m, Unavailable_api_allowed_cases::without_instances_responds_to_selector, 104, UNAVAILABLE_API_IN_SUPPORTED_IOS_SDK, no_bucket, ERROR, []
codetoanalyze/objc/ioslints/unavailable_api_allowed_cases.m, Unavailable_api_allowed_cases::without_responds_to_selector, 65, UNAVAILABLE_API_IN_SUPPORTED_IOS_SDK, no_bucket, ERROR, []
codetoanalyze/objc/ioslints/unavailable_api_allowed_cases.m, Unavailable_api_allowed_cases.m2, 144, UNAVAILABLE_API_IN_SUPPORTED_IOS_SDK, no_bucket, ERROR, []
codetoanalyze/objc/ioslints/unavailable_api_allowed_cases.m, Unavailable_api_allowed_cases.m3, 152, UNAVAILABLE_API_IN_SUPPORTED_IOS_SDK, no_bucket, ERROR, []
codetoanalyze/objc/ioslints/unavailable_api_allowed_cases.m, Unavailable_api_allowed_cases.uifont_without_respondstoselector, 127, UNAVAILABLE_API_IN_SUPPORTED_IOS_SDK, no_bucket, ERROR, []
codetoanalyze/objc/ioslints/unavailable_api_allowed_cases.m, Unavailable_api_allowed_cases.with_responds_to_selector_in_else, 80, UNAVAILABLE_API_IN_SUPPORTED_IOS_SDK, no_bucket, ERROR, []
codetoanalyze/objc/ioslints/unavailable_api_allowed_cases.m, Unavailable_api_allowed_cases.without_instances_responds_to_selector, 104, UNAVAILABLE_API_IN_SUPPORTED_IOS_SDK, no_bucket, ERROR, []
codetoanalyze/objc/ioslints/unavailable_api_allowed_cases.m, Unavailable_api_allowed_cases.without_responds_to_selector, 65, UNAVAILABLE_API_IN_SUPPORTED_IOS_SDK, no_bucket, ERROR, []
codetoanalyze/objc/ioslints/unavailable_api_in_supported_ios_sdk.m, OpenURLOptionsFromSourceApplication, 69, UNAVAILABLE_API_IN_SUPPORTED_IOS_SDK, no_bucket, ERROR, []
codetoanalyze/objc/ioslints/unavailable_api_in_supported_ios_sdk.m, Unavailable_api_in_supported_ios_sdk::unsupported_class, 35, UNAVAILABLE_CLASS_IN_SUPPORTED_IOS_SDK, no_bucket, ERROR, []
codetoanalyze/objc/ioslints/unavailable_api_in_supported_ios_sdk.m, Unavailable_api_in_supported_ios_sdk::unsupported_class_with_attributes, 54, UNAVAILABLE_CLASS_IN_SUPPORTED_IOS_SDK, no_bucket, ERROR, []
codetoanalyze/objc/ioslints/unavailable_property_ios.m, FNFPlayerLayer::initWithConfigs, 20, UNAVAILABLE_API_IN_SUPPORTED_IOS_SDK, no_bucket, ERROR, []
codetoanalyze/objc/ioslints/unavailable_api_in_supported_ios_sdk.m, Unavailable_api_in_supported_ios_sdk.unsupported_class, 35, UNAVAILABLE_CLASS_IN_SUPPORTED_IOS_SDK, no_bucket, ERROR, []
codetoanalyze/objc/ioslints/unavailable_api_in_supported_ios_sdk.m, Unavailable_api_in_supported_ios_sdk.unsupported_class_with_attributes, 54, UNAVAILABLE_CLASS_IN_SUPPORTED_IOS_SDK, no_bucket, ERROR, []
codetoanalyze/objc/ioslints/unavailable_property_ios.m, FNFPlayerLayer.initWithConfigs, 20, UNAVAILABLE_API_IN_SUPPORTED_IOS_SDK, no_bucket, ERROR, []

@ -4,16 +4,16 @@ codetoanalyze/objc/linters-for-test-only/CFStringExample.m, main, 22, FILTER_BY_
codetoanalyze/objc/linters-for-test-only/CFStringExample.m, main, 22, WHITE_BLACKLIST_PATH_EXAMPLE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/CFStringExample.m, main, 23, CALLS_TO_FUNCTIONS_WITH_CREATE_FUNCTION_PARAMETERS, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/CFStringExample.m, main, 24, CALLS_TO_FUNCTIONS_WITH_CREATE_FUNCTION_PARAMETERS, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/CallingAMethodWithSelf.m, CallingAMethodWithSelf::methodThatShallBeOkaySuper, 35, TEST_IS_RECEIVER_SUPER, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/CallingAMethodWithSelf.m, CallingAMethodWithSelf::methodThatShallComplain, 38, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/CallingAMethodWithSelf.m, CallingAMethodWithSelf::methodThatShallComplain, 39, TEST_IF_VIEW_METHOD_IS_NOT_CALLED_WITH_SUPER, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/CallingAMethodWithSelf.m, CallingAMethodWithSelf::testView, 25, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/CallingAMethodWithSelf.m, CallingAMethodWithSelf::testView, 25, TEST_IS_OVERRIDING_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/CallingAMethodWithSelf.m, CallingAMethodWithSelf::testView, 42, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/CallingAMethodWithSelf.m, CallingAMethodWithSelf::testView, 42, TEST_IS_OVERRIDING_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/CallingAMethodWithSelf.m, CallingAMethodWithSelf::testView, 43, TEST_VAR_TYPE_CHECK, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/CallingAMethodWithSelf.m, CallingAMethodWithSelfBase::testView, 14, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/CallingAMethodWithSelf.m, CallingAMethodWithSelfBase::testView, 15, TEST_VAR_TYPE_CHECK, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/CallingAMethodWithSelf.m, CallingAMethodWithSelf.methodThatShallBeOkaySuper, 35, TEST_IS_RECEIVER_SUPER, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/CallingAMethodWithSelf.m, CallingAMethodWithSelf.methodThatShallComplain, 38, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/CallingAMethodWithSelf.m, CallingAMethodWithSelf.methodThatShallComplain, 39, TEST_IF_VIEW_METHOD_IS_NOT_CALLED_WITH_SUPER, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/CallingAMethodWithSelf.m, CallingAMethodWithSelf.testView, 25, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/CallingAMethodWithSelf.m, CallingAMethodWithSelf.testView, 25, TEST_IS_OVERRIDING_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/CallingAMethodWithSelf.m, CallingAMethodWithSelf.testView, 42, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/CallingAMethodWithSelf.m, CallingAMethodWithSelf.testView, 42, TEST_IS_OVERRIDING_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/CallingAMethodWithSelf.m, CallingAMethodWithSelf.testView, 43, TEST_VAR_TYPE_CHECK, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/CallingAMethodWithSelf.m, CallingAMethodWithSelfBase.testView, 14, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/CallingAMethodWithSelf.m, CallingAMethodWithSelfBase.testView, 15, TEST_VAR_TYPE_CHECK, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, Linters_dummy_method, 12, TEST_IF_IS_PROTOCOL_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, Linters_dummy_method, 19, TEST_IF_IS_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, Linters_dummy_method, 29, CAT_DECL_MACRO, no_bucket, WARNING, []
@ -37,208 +37,208 @@ codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, Linters_dummy_metho
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, Linters_dummy_method, 189, CAT_IMPL_MACRO, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, Linters_dummy_method, 189, TEST_IF_IS_CATEGORY_IMPLEMENTATION_ON_SUBCLASS_OF, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, Linters_dummy_method, 189, TEST_IF_IS_CATEGORY_ON_SUBCLASS_OF, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassCategoryMethod, 78, TEST_IF_METHOD_IS_IN_CATEGORY_INTERFACE_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassCategoryMethod, 78, TEST_IF_METHOD_IS_IN_CATEGORY_INTERFACE_ON_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassCategoryMethod, 78, TEST_IF_METHOD_IS_IN_CATEGORY_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassCategoryMethod, 78, TEST_IF_METHOD_IS_IN_CATEGORY_ON_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassCategoryMethod, 84, TEST_IF_METHOD_IS_IN_CATEGORY_IMPLEMENATION_ON_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassCategoryMethod, 84, TEST_IF_METHOD_IS_IN_CATEGORY_IMPLEMENTATION_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassCategoryMethod, 84, TEST_IF_METHOD_IS_IN_CATEGORY_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassCategoryMethod, 84, TEST_IF_METHOD_IS_IN_CATEGORY_ON_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassCategoryMethod, 84, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassClassAndInstanceMethod, 23, TEST_IF_METHOD_IS_IN_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassClassAndInstanceMethod, 23, TEST_IF_METHOD_IS_IN_INTERFACE_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassClassAndInstanceMethod, 24, TEST_IF_METHOD_IS_IN_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassClassAndInstanceMethod, 24, TEST_IF_METHOD_IS_IN_INTERFACE_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassClassAndInstanceMethod, 40, TEST_IF_METHOD_IS_IN_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassClassAndInstanceMethod, 40, TEST_IF_METHOD_IS_IN_IMPLEMENTATION_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassClassAndInstanceMethod, 40, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassClassAndInstanceMethod, 42, TEST_IF_METHOD_IS_IN_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassClassAndInstanceMethod, 42, TEST_IF_METHOD_IS_IN_IMPLEMENTATION_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassClassAndInstanceMethod, 42, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassClassMethod, 22, TEST_IF_IS_CLASS_METHOD_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassClassMethod, 22, TEST_IF_IS_METHOD_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassClassMethod, 22, TEST_IF_METHOD_IS_IN_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassClassMethod, 22, TEST_IF_METHOD_IS_IN_INTERFACE_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassClassMethod, 22, TEST_IN_CLASS_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassClassMethod, 37, TEST_IF_IS_CLASS_METHOD_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassClassMethod, 37, TEST_IF_IS_METHOD_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassClassMethod, 37, TEST_IF_METHOD_IS_IN_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassClassMethod, 37, TEST_IF_METHOD_IS_IN_IMPLEMENTATION_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassClassMethod, 37, TEST_IN_CLASS_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassClassMethod, 37, TEST_IN_CLASS_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassClassMethod, 37, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassClassMethod, 38, TEST_IN_CLASS_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassClassMethod, 38, TEST_IN_CLASS_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassClassMethod, 38, TEST_VAR_TYPE_CHECK, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassInterfaceExtensionMethod, 31, TEST_IF_METHOD_IS_IN_CATEGORY_INTERFACE_ON_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassInterfaceExtensionMethod, 31, TEST_IF_METHOD_IS_IN_CATEGORY_ON_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassInterfaceExtensionMethod, 47, TEST_IF_METHOD_IS_IN_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassInterfaceExtensionMethod, 47, TEST_IF_METHOD_IS_IN_IMPLEMENTATION_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassInterfaceExtensionMethod, 47, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassMethod, 25, TEST_IF_METHOD_IS_IN_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassMethod, 25, TEST_IF_METHOD_IS_IN_INTERFACE_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassMethod, 25, TEST_IN_INSTANCE_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassMethod, 44, TEST_IF_METHOD_IS_IN_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassMethod, 44, TEST_IF_METHOD_IS_IN_IMPLEMENTATION_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassMethod, 44, TEST_IN_INSTANCE_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassMethod, 44, TEST_IN_INSTANCE_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassMethod, 44, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassMethod, 45, TEST_IN_INSTANCE_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassMethod, 45, TEST_IN_INSTANCE_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassMethod, 45, TEST_VAR_TYPE_CHECK, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassProperty, 53, TEST_IF_METHOD_IS_IN_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassProperty, 53, TEST_IF_METHOD_IS_IN_IMPLEMENTATION_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassProperty, 53, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassProperty, 53, TEST_RETURN_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassProtocolOptionalMethod, 51, TEST_IF_METHOD_IS_IN_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassProtocolOptionalMethod, 51, TEST_IF_METHOD_IS_IN_IMPLEMENTATION_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassProtocolOptionalMethod, 51, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassProtocolOptionalMethod, 51, TEST_IS_OVERRIDING_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassProtocolRequiredMethod, 49, TEST_IF_METHOD_IS_IN_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassProtocolRequiredMethod, 49, TEST_IF_METHOD_IS_IN_IMPLEMENTATION_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassProtocolRequiredMethod, 49, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassProtocolRequiredMethod, 49, TEST_IS_OVERRIDING_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassTestReceiver, 59, TEST_IF_METHOD_IS_IN_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassTestReceiver, 59, TEST_IF_METHOD_IS_IN_IMPLEMENTATION_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassTestReceiver, 60, TEST_IS_RECEIVER_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassTestReceiver, 61, TEST_ALL_METHODS, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassTestReceiver, 61, TEST_IS_RECEIVER_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassTestReceiver, 61, TEST_IS_RECEIVER_CLASS_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassTestReceiver, 62, TEST_ALL_METHODS, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassTestReceiver, 62, TEST_IS_RECEIVER_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassTestReceiver, 64, TEST_IS_RECEIVER_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassTestReceiver, 65, TEST_ALL_METHODS, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassTestReceiver, 65, TEST_IS_RECEIVER_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassTestReceiver, 65, TEST_IS_RECEIVER_CLASS_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassTestReceiver, 66, TEST_ALL_METHODS, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassTestReceiver, 66, TEST_IS_RECEIVER_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassTestReceiver, 68, TEST_ALL_METHODS, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassTestReceiver, 68, TEST_IS_RECEIVER_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassTestReceiver, 69, TEST_IS_RECEIVER_ID_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassTestReceiver, 69, UNSAFE_CALL_TO_OPTIONAL_METHOD, no_bucket, ERROR, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassTestReceiver, 70, TEST_IS_RECEIVER_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassTestReceiver, 71, TEST_ALL_METHODS, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::myBaseClassTestReceiver, 71, TEST_IS_RECEIVER_CLASS_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::setMyBaseClassProperty, 56, TEST_IF_METHOD_IS_IN_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::setMyBaseClassProperty, 56, TEST_IF_METHOD_IS_IN_IMPLEMENTATION_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::setMyBaseClassProperty, 56, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass::setMyBaseClassProperty, 56, TEST_PARAM_TYPE_CHECK2, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClassProtocol::myBaseClassProtocolOptionalMethod, 16, TEST_IF_METHOD_IS_IN_PROTOCOL_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClassProtocol::myBaseClassProtocolOptionalMethod, 16, TEST_IS_OPTIONAL_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClassProtocol::myBaseClassProtocolRequiredMethod, 14, TEST_IF_METHOD_IS_IN_PROTOCOL_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::myBaseClassCategoryMethod, 148, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::myBaseClassCategoryMethod, 148, TEST_IS_OVERRIDING_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::myBaseClassCategoryMethod, 149, TEST_IS_RECEIVER_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::myBaseClassCategoryMethod, 149, TEST_IS_RECEIVER_SUPER, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::myBaseClassClassMethod, 120, TEST_IF_IS_CLASS_METHOD_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::myBaseClassClassMethod, 120, TEST_IF_IS_METHOD_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::myBaseClassClassMethod, 120, TEST_IN_CLASS_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::myBaseClassClassMethod, 120, TEST_IN_CLASS_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::myBaseClassClassMethod, 120, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::myBaseClassClassMethod, 120, TEST_IS_OVERRIDING_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::myBaseClassClassMethod, 121, TEST_ALL_METHODS, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::myBaseClassClassMethod, 121, TEST_IN_CLASS_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::myBaseClassClassMethod, 121, TEST_IS_RECEIVER_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::myBaseClassClassMethod, 121, TEST_IS_RECEIVER_SUPER, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::myBaseClassInterfaceExtensionMethod, 128, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::myBaseClassInterfaceExtensionMethod, 128, TEST_IS_OVERRIDING_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::myBaseClassInterfaceExtensionMethod, 129, TEST_IS_RECEIVER_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::myBaseClassInterfaceExtensionMethod, 129, TEST_IS_RECEIVER_SUPER, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::myBaseClassMethod, 124, TEST_IN_INSTANCE_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::myBaseClassMethod, 124, TEST_IN_INSTANCE_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::myBaseClassMethod, 124, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::myBaseClassMethod, 124, TEST_IS_OVERRIDING_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::myBaseClassMethod, 125, TEST_IN_INSTANCE_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::myBaseClassMethod, 125, TEST_IS_RECEIVER_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::myBaseClassMethod, 125, TEST_IS_RECEIVER_SUPER, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::myBaseClassProperty, 140, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::myBaseClassProperty, 140, TEST_IS_OVERRIDING_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::myBaseClassProperty, 140, TEST_RETURN_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::myBaseClassProperty, 141, TEST_IS_RECEIVER_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::myBaseClassProperty, 141, TEST_IS_RECEIVER_SUPER, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::myBaseClassProtocolOptionalMethod, 136, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::myBaseClassProtocolOptionalMethod, 136, TEST_IS_OVERRIDING_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::myBaseClassProtocolOptionalMethod, 137, TEST_IS_RECEIVER_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::myBaseClassProtocolOptionalMethod, 137, TEST_IS_RECEIVER_SUPER, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::myBaseClassProtocolRequiredMethod, 132, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::myBaseClassProtocolRequiredMethod, 132, TEST_IS_OVERRIDING_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::myBaseClassProtocolRequiredMethod, 133, TEST_IS_RECEIVER_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::myBaseClassProtocolRequiredMethod, 133, TEST_IS_RECEIVER_SUPER, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::mySubclassCategoryMethod, 185, TEST_IF_METHOD_IS_IN_CATEGORY_INTERFACE_ON_SUBCLASS_OF, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::mySubclassCategoryMethod, 185, TEST_IF_METHOD_IS_IN_CATEGORY_ON_SUBCLASS_OF, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::mySubclassCategoryMethod, 191, TEST_IF_METHOD_IS_IN_CATEGORY_IMPLEMENTATION_ON_SUBCLASS_OF, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::mySubclassCategoryMethod, 191, TEST_IF_METHOD_IS_IN_CATEGORY_ON_SUBCLASS_OF, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::mySubclassCategoryMethod, 191, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::mySubclassMethod, 114, TEST_IF_IS_INSTANCE_METHOD_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::mySubclassMethod, 114, TEST_IF_IS_METHOD_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::mySubclassMethod, 152, TEST_IF_IS_INSTANCE_METHOD_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::mySubclassMethod, 152, TEST_IF_IS_METHOD_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::mySubclassMethod, 152, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::mySubclassProtocol2OptionalMethod, 160, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::mySubclassProtocol2OptionalMethod, 160, TEST_IS_OVERRIDING_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::mySubclassProtocol2RequiredMethod, 158, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::mySubclassProtocol2RequiredMethod, 158, TEST_IS_OVERRIDING_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::mySubclassProtocolOptionalMethod, 156, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::mySubclassProtocolOptionalMethod, 156, TEST_IS_OVERRIDING_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::mySubclassProtocolRequiredMethod, 154, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::mySubclassProtocolRequiredMethod, 154, TEST_IS_OVERRIDING_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::mySubclassSubprotocol2OptionalMethod, 164, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::mySubclassSubprotocol2OptionalMethod, 164, TEST_IS_OVERRIDING_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::mySubclassSubprotocol2RequiredMethod, 162, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::mySubclassSubprotocol2RequiredMethod, 162, TEST_IS_OVERRIDING_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::mySubclassTestReceiver, 168, TEST_IS_RECEIVER_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::mySubclassTestReceiver, 168, TEST_IS_RECEIVER_SUPER, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::mySubclassTestReceiver, 169, TEST_IS_RECEIVER_SUBCLASS_OF, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::mySubclassTestReceiver, 172, TEST_ALL_METHODS, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::mySubclassTestReceiver, 172, TEST_IS_RECEIVER_CLASS_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::mySubclassTestReceiver, 172, TEST_IS_RECEIVER_SUBCLASS_OF, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::mySubclassTestReceiver, 173, TEST_ALL_METHODS, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::mySubclassTestReceiver, 173, TEST_IS_RECEIVER_CLASS_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::mySubclassTestReceiver, 173, TEST_IS_RECEIVER_SUBCLASS_OF, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::mySubclassTestReceiver, 174, TEST_ALL_METHODS, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::mySubclassTestReceiver, 174, TEST_IS_RECEIVER_SUBCLASS_OF, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::mySubclassTestReceiver, 176, TEST_ALL_METHODS, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::mySubclassTestReceiver, 176, TEST_IS_RECEIVER_SUBCLASS_OF, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::mySubclassTestReceiver, 177, TEST_ALL_METHODS, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::mySubclassTestReceiver, 177, TEST_IS_RECEIVER_CLASS_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::mySubclassTestReceiver, 177, TEST_IS_RECEIVER_SUBCLASS_OF, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::mySubclassTestReceiver, 178, TEST_IS_RECEIVER_SUBCLASS_OF, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::setMyBaseClassProperty, 144, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::setMyBaseClassProperty, 144, TEST_IS_OVERRIDING_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::setMyBaseClassProperty, 144, TEST_PARAM_TYPE_CHECK2, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::setMyBaseClassProperty, 145, TEST_IS_RECEIVER_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass::setMyBaseClassProperty, 145, TEST_IS_RECEIVER_SUPER, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclassProtocol2::mySubclassProtocol2OptionalMethod, 102, TEST_IS_OPTIONAL_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclassProtocol::mySubclassProtocolOptionalMethod, 95, TEST_IS_OPTIONAL_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclassSubprotocol::mySubclassSubprotocol2OptionalMethod, 109, TEST_IS_OPTIONAL_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/InContextOfMethodsTest.m, InContextOfMethodsTest::method, 14, TEST_IN_METHOD_CONTEXT, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/InContextOfMethodsTest.m, InContextOfMethodsTest::method, 14, TEST_VAR_TYPE_CHECK, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassCategoryMethod, 78, TEST_IF_METHOD_IS_IN_CATEGORY_INTERFACE_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassCategoryMethod, 78, TEST_IF_METHOD_IS_IN_CATEGORY_INTERFACE_ON_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassCategoryMethod, 78, TEST_IF_METHOD_IS_IN_CATEGORY_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassCategoryMethod, 78, TEST_IF_METHOD_IS_IN_CATEGORY_ON_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassCategoryMethod, 84, TEST_IF_METHOD_IS_IN_CATEGORY_IMPLEMENATION_ON_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassCategoryMethod, 84, TEST_IF_METHOD_IS_IN_CATEGORY_IMPLEMENTATION_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassCategoryMethod, 84, TEST_IF_METHOD_IS_IN_CATEGORY_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassCategoryMethod, 84, TEST_IF_METHOD_IS_IN_CATEGORY_ON_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassCategoryMethod, 84, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassClassAndInstanceMethod, 23, TEST_IF_METHOD_IS_IN_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassClassAndInstanceMethod, 23, TEST_IF_METHOD_IS_IN_INTERFACE_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassClassAndInstanceMethod, 24, TEST_IF_METHOD_IS_IN_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassClassAndInstanceMethod, 24, TEST_IF_METHOD_IS_IN_INTERFACE_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassClassAndInstanceMethod, 40, TEST_IF_METHOD_IS_IN_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassClassAndInstanceMethod, 40, TEST_IF_METHOD_IS_IN_IMPLEMENTATION_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassClassAndInstanceMethod, 40, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassClassAndInstanceMethod, 42, TEST_IF_METHOD_IS_IN_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassClassAndInstanceMethod, 42, TEST_IF_METHOD_IS_IN_IMPLEMENTATION_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassClassAndInstanceMethod, 42, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassClassMethod, 22, TEST_IF_IS_CLASS_METHOD_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassClassMethod, 22, TEST_IF_IS_METHOD_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassClassMethod, 22, TEST_IF_METHOD_IS_IN_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassClassMethod, 22, TEST_IF_METHOD_IS_IN_INTERFACE_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassClassMethod, 22, TEST_IN_CLASS_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassClassMethod, 37, TEST_IF_IS_CLASS_METHOD_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassClassMethod, 37, TEST_IF_IS_METHOD_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassClassMethod, 37, TEST_IF_METHOD_IS_IN_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassClassMethod, 37, TEST_IF_METHOD_IS_IN_IMPLEMENTATION_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassClassMethod, 37, TEST_IN_CLASS_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassClassMethod, 37, TEST_IN_CLASS_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassClassMethod, 37, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassClassMethod, 38, TEST_IN_CLASS_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassClassMethod, 38, TEST_IN_CLASS_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassClassMethod, 38, TEST_VAR_TYPE_CHECK, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassInterfaceExtensionMethod, 31, TEST_IF_METHOD_IS_IN_CATEGORY_INTERFACE_ON_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassInterfaceExtensionMethod, 31, TEST_IF_METHOD_IS_IN_CATEGORY_ON_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassInterfaceExtensionMethod, 47, TEST_IF_METHOD_IS_IN_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassInterfaceExtensionMethod, 47, TEST_IF_METHOD_IS_IN_IMPLEMENTATION_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassInterfaceExtensionMethod, 47, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassMethod, 25, TEST_IF_METHOD_IS_IN_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassMethod, 25, TEST_IF_METHOD_IS_IN_INTERFACE_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassMethod, 25, TEST_IN_INSTANCE_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassMethod, 44, TEST_IF_METHOD_IS_IN_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassMethod, 44, TEST_IF_METHOD_IS_IN_IMPLEMENTATION_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassMethod, 44, TEST_IN_INSTANCE_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassMethod, 44, TEST_IN_INSTANCE_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassMethod, 44, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassMethod, 45, TEST_IN_INSTANCE_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassMethod, 45, TEST_IN_INSTANCE_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassMethod, 45, TEST_VAR_TYPE_CHECK, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassProperty, 53, TEST_IF_METHOD_IS_IN_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassProperty, 53, TEST_IF_METHOD_IS_IN_IMPLEMENTATION_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassProperty, 53, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassProperty, 53, TEST_RETURN_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassProtocolOptionalMethod, 51, TEST_IF_METHOD_IS_IN_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassProtocolOptionalMethod, 51, TEST_IF_METHOD_IS_IN_IMPLEMENTATION_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassProtocolOptionalMethod, 51, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassProtocolOptionalMethod, 51, TEST_IS_OVERRIDING_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassProtocolRequiredMethod, 49, TEST_IF_METHOD_IS_IN_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassProtocolRequiredMethod, 49, TEST_IF_METHOD_IS_IN_IMPLEMENTATION_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassProtocolRequiredMethod, 49, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassProtocolRequiredMethod, 49, TEST_IS_OVERRIDING_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassTestReceiver, 59, TEST_IF_METHOD_IS_IN_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassTestReceiver, 59, TEST_IF_METHOD_IS_IN_IMPLEMENTATION_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassTestReceiver, 60, TEST_IS_RECEIVER_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassTestReceiver, 61, TEST_ALL_METHODS, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassTestReceiver, 61, TEST_IS_RECEIVER_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassTestReceiver, 61, TEST_IS_RECEIVER_CLASS_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassTestReceiver, 62, TEST_ALL_METHODS, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassTestReceiver, 62, TEST_IS_RECEIVER_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassTestReceiver, 64, TEST_IS_RECEIVER_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassTestReceiver, 65, TEST_ALL_METHODS, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassTestReceiver, 65, TEST_IS_RECEIVER_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassTestReceiver, 65, TEST_IS_RECEIVER_CLASS_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassTestReceiver, 66, TEST_ALL_METHODS, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassTestReceiver, 66, TEST_IS_RECEIVER_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassTestReceiver, 68, TEST_ALL_METHODS, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassTestReceiver, 68, TEST_IS_RECEIVER_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassTestReceiver, 69, TEST_IS_RECEIVER_ID_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassTestReceiver, 69, UNSAFE_CALL_TO_OPTIONAL_METHOD, no_bucket, ERROR, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassTestReceiver, 70, TEST_IS_RECEIVER_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassTestReceiver, 71, TEST_ALL_METHODS, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.myBaseClassTestReceiver, 71, TEST_IS_RECEIVER_CLASS_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.setMyBaseClassProperty, 56, TEST_IF_METHOD_IS_IN_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.setMyBaseClassProperty, 56, TEST_IF_METHOD_IS_IN_IMPLEMENTATION_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.setMyBaseClassProperty, 56, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClass.setMyBaseClassProperty, 56, TEST_PARAM_TYPE_CHECK2, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClassProtocol.myBaseClassProtocolOptionalMethod, 16, TEST_IF_METHOD_IS_IN_PROTOCOL_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClassProtocol.myBaseClassProtocolOptionalMethod, 16, TEST_IS_OPTIONAL_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MyBaseClassProtocol.myBaseClassProtocolRequiredMethod, 14, TEST_IF_METHOD_IS_IN_PROTOCOL_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.myBaseClassCategoryMethod, 148, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.myBaseClassCategoryMethod, 148, TEST_IS_OVERRIDING_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.myBaseClassCategoryMethod, 149, TEST_IS_RECEIVER_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.myBaseClassCategoryMethod, 149, TEST_IS_RECEIVER_SUPER, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.myBaseClassClassMethod, 120, TEST_IF_IS_CLASS_METHOD_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.myBaseClassClassMethod, 120, TEST_IF_IS_METHOD_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.myBaseClassClassMethod, 120, TEST_IN_CLASS_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.myBaseClassClassMethod, 120, TEST_IN_CLASS_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.myBaseClassClassMethod, 120, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.myBaseClassClassMethod, 120, TEST_IS_OVERRIDING_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.myBaseClassClassMethod, 121, TEST_ALL_METHODS, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.myBaseClassClassMethod, 121, TEST_IN_CLASS_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.myBaseClassClassMethod, 121, TEST_IS_RECEIVER_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.myBaseClassClassMethod, 121, TEST_IS_RECEIVER_SUPER, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.myBaseClassInterfaceExtensionMethod, 128, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.myBaseClassInterfaceExtensionMethod, 128, TEST_IS_OVERRIDING_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.myBaseClassInterfaceExtensionMethod, 129, TEST_IS_RECEIVER_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.myBaseClassInterfaceExtensionMethod, 129, TEST_IS_RECEIVER_SUPER, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.myBaseClassMethod, 124, TEST_IN_INSTANCE_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.myBaseClassMethod, 124, TEST_IN_INSTANCE_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.myBaseClassMethod, 124, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.myBaseClassMethod, 124, TEST_IS_OVERRIDING_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.myBaseClassMethod, 125, TEST_IN_INSTANCE_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.myBaseClassMethod, 125, TEST_IS_RECEIVER_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.myBaseClassMethod, 125, TEST_IS_RECEIVER_SUPER, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.myBaseClassProperty, 140, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.myBaseClassProperty, 140, TEST_IS_OVERRIDING_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.myBaseClassProperty, 140, TEST_RETURN_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.myBaseClassProperty, 141, TEST_IS_RECEIVER_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.myBaseClassProperty, 141, TEST_IS_RECEIVER_SUPER, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.myBaseClassProtocolOptionalMethod, 136, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.myBaseClassProtocolOptionalMethod, 136, TEST_IS_OVERRIDING_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.myBaseClassProtocolOptionalMethod, 137, TEST_IS_RECEIVER_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.myBaseClassProtocolOptionalMethod, 137, TEST_IS_RECEIVER_SUPER, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.myBaseClassProtocolRequiredMethod, 132, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.myBaseClassProtocolRequiredMethod, 132, TEST_IS_OVERRIDING_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.myBaseClassProtocolRequiredMethod, 133, TEST_IS_RECEIVER_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.myBaseClassProtocolRequiredMethod, 133, TEST_IS_RECEIVER_SUPER, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.mySubclassCategoryMethod, 185, TEST_IF_METHOD_IS_IN_CATEGORY_INTERFACE_ON_SUBCLASS_OF, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.mySubclassCategoryMethod, 185, TEST_IF_METHOD_IS_IN_CATEGORY_ON_SUBCLASS_OF, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.mySubclassCategoryMethod, 191, TEST_IF_METHOD_IS_IN_CATEGORY_IMPLEMENTATION_ON_SUBCLASS_OF, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.mySubclassCategoryMethod, 191, TEST_IF_METHOD_IS_IN_CATEGORY_ON_SUBCLASS_OF, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.mySubclassCategoryMethod, 191, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.mySubclassMethod, 114, TEST_IF_IS_INSTANCE_METHOD_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.mySubclassMethod, 114, TEST_IF_IS_METHOD_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.mySubclassMethod, 152, TEST_IF_IS_INSTANCE_METHOD_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.mySubclassMethod, 152, TEST_IF_IS_METHOD_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.mySubclassMethod, 152, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.mySubclassProtocol2OptionalMethod, 160, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.mySubclassProtocol2OptionalMethod, 160, TEST_IS_OVERRIDING_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.mySubclassProtocol2RequiredMethod, 158, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.mySubclassProtocol2RequiredMethod, 158, TEST_IS_OVERRIDING_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.mySubclassProtocolOptionalMethod, 156, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.mySubclassProtocolOptionalMethod, 156, TEST_IS_OVERRIDING_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.mySubclassProtocolRequiredMethod, 154, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.mySubclassProtocolRequiredMethod, 154, TEST_IS_OVERRIDING_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.mySubclassSubprotocol2OptionalMethod, 164, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.mySubclassSubprotocol2OptionalMethod, 164, TEST_IS_OVERRIDING_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.mySubclassSubprotocol2RequiredMethod, 162, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.mySubclassSubprotocol2RequiredMethod, 162, TEST_IS_OVERRIDING_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.mySubclassTestReceiver, 168, TEST_IS_RECEIVER_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.mySubclassTestReceiver, 168, TEST_IS_RECEIVER_SUPER, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.mySubclassTestReceiver, 169, TEST_IS_RECEIVER_SUBCLASS_OF, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.mySubclassTestReceiver, 172, TEST_ALL_METHODS, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.mySubclassTestReceiver, 172, TEST_IS_RECEIVER_CLASS_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.mySubclassTestReceiver, 172, TEST_IS_RECEIVER_SUBCLASS_OF, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.mySubclassTestReceiver, 173, TEST_ALL_METHODS, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.mySubclassTestReceiver, 173, TEST_IS_RECEIVER_CLASS_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.mySubclassTestReceiver, 173, TEST_IS_RECEIVER_SUBCLASS_OF, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.mySubclassTestReceiver, 174, TEST_ALL_METHODS, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.mySubclassTestReceiver, 174, TEST_IS_RECEIVER_SUBCLASS_OF, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.mySubclassTestReceiver, 176, TEST_ALL_METHODS, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.mySubclassTestReceiver, 176, TEST_IS_RECEIVER_SUBCLASS_OF, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.mySubclassTestReceiver, 177, TEST_ALL_METHODS, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.mySubclassTestReceiver, 177, TEST_IS_RECEIVER_CLASS_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.mySubclassTestReceiver, 177, TEST_IS_RECEIVER_SUBCLASS_OF, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.mySubclassTestReceiver, 178, TEST_IS_RECEIVER_SUBCLASS_OF, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.setMyBaseClassProperty, 144, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.setMyBaseClassProperty, 144, TEST_IS_OVERRIDING_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.setMyBaseClassProperty, 144, TEST_PARAM_TYPE_CHECK2, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.setMyBaseClassProperty, 145, TEST_IS_RECEIVER_CLASS_NAMED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclass.setMyBaseClassProperty, 145, TEST_IS_RECEIVER_SUPER, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclassProtocol.mySubclassProtocolOptionalMethod, 95, TEST_IS_OPTIONAL_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclassProtocol2.mySubclassProtocol2OptionalMethod, 102, TEST_IS_OPTIONAL_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/GenericTestClass.m, MySubclassSubprotocol.mySubclassSubprotocol2OptionalMethod, 109, TEST_IS_OPTIONAL_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/InContextOfMethodsTest.m, InContextOfMethodsTest.method, 14, TEST_IN_METHOD_CONTEXT, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/InContextOfMethodsTest.m, InContextOfMethodsTest.method, 14, TEST_VAR_TYPE_CHECK, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/InContextOfMethodsTest.m, function, 25, TEST_IN_FUNCTION_CONTEXT, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/InContextOfMethodsTest.m, function, 25, TEST_VAR_TYPE_CHECK, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/InContextOfMethodsTest.m, objc_block, 19, TEST_IN_BLOCK_CONTEXT, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/InContextOfMethodsTest.m, objc_block, 19, TEST_VAR_TYPE_CHECK, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/InSubclassExample.m, HappySadView2::makeBadAction, 33, IN_SUBCLASS_TEST, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/PrivateAPIChecker.m, TestView::methoddd, 19, TEST_SELECTOR, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/PrivateInstanceMethod.m, ClassWithPrivateMethods::_badMethod1, 51, UNNECESSARY_OBJC_INSTANCE_METHOD, no_bucket, ERROR, []
codetoanalyze/objc/linters-for-test-only/PrivateInstanceMethod.m, ClassWithPrivateMethods::_badMethod2, 56, UNNECESSARY_OBJC_INSTANCE_METHOD, no_bucket, ERROR, []
codetoanalyze/objc/linters-for-test-only/PrivateInstanceMethod.m, ClassWithPrivateMethods::_badMethod2, 57, CONST_NAMING, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/PrivateInstanceMethod.m, ClassWithPrivateMethods::_badMethod2, 57, TEST_ALL_METHODS, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/PrivateInstanceMethod.m, ClassWithPrivateMethods::_okayMethod3, 47, TEST_RETURN_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/PrivateInstanceMethod.m, ClassWithPrivateMethods::publicMethodThatDoesntUseIvars, 34, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/PrivateInstanceMethod.m, UselessClass::a, 10, TEST_RETURN_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/PrivateInstanceMethod.m, UselessClass::a, 15, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/PrivateInstanceMethod.m, UselessClass::a, 15, TEST_RETURN_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/PrivateInstanceMethod.m, UselessClass::b, 11, TEST_RETURN_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/PrivateInstanceMethod.m, UselessClass::b, 18, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/PrivateInstanceMethod.m, UselessClass::b, 18, TEST_RETURN_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/InSubclassExample.m, HappySadView2.makeBadAction, 33, IN_SUBCLASS_TEST, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/PrivateAPIChecker.m, TestView.methoddd, 19, TEST_SELECTOR, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/PrivateInstanceMethod.m, ClassWithPrivateMethods._badMethod1, 51, UNNECESSARY_OBJC_INSTANCE_METHOD, no_bucket, ERROR, []
codetoanalyze/objc/linters-for-test-only/PrivateInstanceMethod.m, ClassWithPrivateMethods._badMethod2, 56, UNNECESSARY_OBJC_INSTANCE_METHOD, no_bucket, ERROR, []
codetoanalyze/objc/linters-for-test-only/PrivateInstanceMethod.m, ClassWithPrivateMethods._badMethod2, 57, CONST_NAMING, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/PrivateInstanceMethod.m, ClassWithPrivateMethods._badMethod2, 57, TEST_ALL_METHODS, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/PrivateInstanceMethod.m, ClassWithPrivateMethods._okayMethod3, 47, TEST_RETURN_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/PrivateInstanceMethod.m, ClassWithPrivateMethods.publicMethodThatDoesntUseIvars, 34, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/PrivateInstanceMethod.m, UselessClass.a, 10, TEST_RETURN_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/PrivateInstanceMethod.m, UselessClass.a, 15, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/PrivateInstanceMethod.m, UselessClass.a, 15, TEST_RETURN_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/PrivateInstanceMethod.m, UselessClass.b, 11, TEST_RETURN_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/PrivateInstanceMethod.m, UselessClass.b, 18, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/PrivateInstanceMethod.m, UselessClass.b, 18, TEST_RETURN_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/cat_macro_example.m, Linters_dummy_method, 9, TEST_VAR_TYPE_CHECK, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/cat_macro_example.m, Linters_dummy_method, 11, CLASS_AND_VAR, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/cat_macro_example.m, Linters_dummy_method, 23, CONST_NAMING, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/cat_macro_example.m, Linters_dummy_method, 29, CAT_IMPL_MACRO, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/cat_macro_example.m, SiblingExample::foo, 25, TEST_PARAM_TYPE_CHECK2, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/cat_macro_example.m, SiblingExample::foo, 31, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/cat_macro_example.m, SiblingExample::foo, 31, TEST_PARAM_TYPE_CHECK2, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/cat_macro_example.m, SiblingExample.foo, 25, TEST_PARAM_TYPE_CHECK2, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/cat_macro_example.m, SiblingExample.foo, 31, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/cat_macro_example.m, SiblingExample.foo, 31, TEST_PARAM_TYPE_CHECK2, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/const.m, Linters_dummy_method, 7, CONST_NAMING, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/const.m, Linters_dummy_method, 7, TEST_VAR_TYPE_CHECK, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/const.m, Linters_dummy_method, 8, CONST_NAMING, no_bucket, WARNING, []
@ -264,50 +264,50 @@ codetoanalyze/objc/linters-for-test-only/implicit_cast.c, main, 9, TEST_IMPLICIT
codetoanalyze/objc/linters-for-test-only/implicit_cast.c, main, 9, TEST_VAR_TYPE_CHECK, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/namespace.mm, Linters_dummy_method, 7, TEST_DEFINE_NAMESPACE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/namespace.mm, Linters_dummy_method, 15, TEST_USING_NAMESPACE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/ns_assume_nonnull.m, Blah::someMethod, 14, TEST_INSTANCE_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/ns_assume_nonnull.m, Blah::someMethod, 20, TEST_INSTANCE_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/ns_assume_nonnull.m, Blah::someMethod, 20, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/optional.m, Bar::unsafeAction, 25, UNSAFE_CALL_TO_OPTIONAL_METHOD, no_bucket, ERROR, []
codetoanalyze/objc/linters-for-test-only/optional.m, BarDelegate::optionalFunction, 16, TEST_IS_OPTIONAL_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/ns_assume_nonnull.m, Blah.someMethod, 14, TEST_INSTANCE_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/ns_assume_nonnull.m, Blah.someMethod, 20, TEST_INSTANCE_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/ns_assume_nonnull.m, Blah.someMethod, 20, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/optional.m, Bar.unsafeAction, 25, UNSAFE_CALL_TO_OPTIONAL_METHOD, no_bucket, ERROR, []
codetoanalyze/objc/linters-for-test-only/optional.m, BarDelegate.optionalFunction, 16, TEST_IS_OPTIONAL_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/optional.m, Linters_dummy_method, 20, STRONG_DELEGATE_WARNING, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/protocols.m, Foo::newWithA, 22, TEST_INSTANCE_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/protocols.m, Foo::newWithA, 22, TEST_PROTOCOL_TYPE_INHERITANCE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/protocols.m, Foo::newWithB, 23, TEST_INSTANCE_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/protocols.m, Foo::newWithB, 23, TEST_PROTOCOL_TYPE_INHERITANCE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/protocols.m, Foo::newWithC, 24, TEST_INSTANCE_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/protocols.m, Foo::newWithC, 24, TEST_PROTOCOL_TYPE_INHERITANCE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/protocols.m, Foo::newWithCs, 25, TEST_GENERICS_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/protocols.m, Foo::newWithCs, 25, TEST_INSTANCE_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/protocols.m, Foo::newWithCs, 25, TEST_PROTOCOL_TYPE_INHERITANCE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/protocols.m, Foo.newWithA, 22, TEST_INSTANCE_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/protocols.m, Foo.newWithA, 22, TEST_PROTOCOL_TYPE_INHERITANCE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/protocols.m, Foo.newWithB, 23, TEST_INSTANCE_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/protocols.m, Foo.newWithB, 23, TEST_PROTOCOL_TYPE_INHERITANCE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/protocols.m, Foo.newWithC, 24, TEST_INSTANCE_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/protocols.m, Foo.newWithC, 24, TEST_PROTOCOL_TYPE_INHERITANCE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/protocols.m, Foo.newWithCs, 25, TEST_GENERICS_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/protocols.m, Foo.newWithCs, 25, TEST_INSTANCE_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/protocols.m, Foo.newWithCs, 25, TEST_PROTOCOL_TYPE_INHERITANCE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/protocols.m, Linters_dummy_method, 9, TEST_PROTOCOL_DEF_INHERITANCE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/protocols.m, Linters_dummy_method, 12, TEST_PROTOCOL_DEF_INHERITANCE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/protocols.m, Linters_dummy_method, 15, TEST_PROTOCOL_DEF_INHERITANCE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/sel.m, fooButtonComponent::newWithAction, 10, TEST_INSTANCE_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/sel.m, fooButtonComponent::newWithAction, 10, TEST_PARAMETER_SEL_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/sel.m, fooButtonComponent.newWithAction, 10, TEST_INSTANCE_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/sel.m, fooButtonComponent.newWithAction, 10, TEST_PARAMETER_SEL_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/sibling_example.m, Linters_dummy_method, 9, TEST_VAR_TYPE_CHECK, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/sibling_example.m, Linters_dummy_method, 11, CLASS_AND_VAR, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/sibling_example.m, Linters_dummy_method, 23, CAT_DECL_MACRO, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/sibling_example.m, Linters_dummy_method, 28, CONST_NAMING, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/sibling_example.m, Linters_dummy_method, 29, CAT_DECL_MACRO, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/sibling_example.m, Linters_dummy_method, 42, CAT_IMPL_MACRO, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/sibling_example.m, SiblingExample::foo, 24, TEST_PARAM_TYPE_CHECK2, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/sibling_example.m, SiblingExample::foo, 30, TEST_PARAM_TYPE_CHECK2, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/sibling_example.m, SiblingExample::foo, 37, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/sibling_example.m, SiblingExample::foo, 37, TEST_PARAM_TYPE_CHECK2, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/sibling_example.m, SiblingExample::foo, 44, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/sibling_example.m, SiblingExample::foo, 44, TEST_PARAM_TYPE_CHECK2, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, A::foo, 11, TEST_PARAM_TYPE_CHECK2, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, A::foo, 11, TEST_RETURN_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, A::foo, 17, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, A::foo, 17, TEST_PARAM_TYPE_CHECK2, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, A::foo, 17, TEST_RETURN_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, B::bar, 26, TEST_RETURN_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, B::bar, 32, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, B::bar, 32, TEST_RETURN_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, B::bar, 33, TEST_ALL_METHODS, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, B::bar, 34, MACRO_TEST1, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, B::bar, 34, MACRO_TEST2, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, B::bar, 34, MACRO_TEST3, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/sibling_example.m, SiblingExample.foo, 24, TEST_PARAM_TYPE_CHECK2, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/sibling_example.m, SiblingExample.foo, 30, TEST_PARAM_TYPE_CHECK2, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/sibling_example.m, SiblingExample.foo, 37, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/sibling_example.m, SiblingExample.foo, 37, TEST_PARAM_TYPE_CHECK2, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/sibling_example.m, SiblingExample.foo, 44, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/sibling_example.m, SiblingExample.foo, 44, TEST_PARAM_TYPE_CHECK2, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, A.foo, 11, TEST_PARAM_TYPE_CHECK2, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, A.foo, 11, TEST_RETURN_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, A.foo, 17, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, A.foo, 17, TEST_PARAM_TYPE_CHECK2, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, A.foo, 17, TEST_RETURN_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, B.bar, 26, TEST_RETURN_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, B.bar, 32, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, B.bar, 32, TEST_RETURN_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, B.bar, 33, TEST_ALL_METHODS, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, B.bar, 34, MACRO_TEST1, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, B.bar, 34, MACRO_TEST2, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, B.bar, 34, MACRO_TEST3, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, Linters_dummy_method, 24, GLOBAL_MACRO_SUBCLASS, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, Linters_dummy_method, 24, IMPORTED_MACRO_SUBCLASS, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, Linters_dummy_method, 24, LOCAL_MACRO_SUBCLASS, no_bucket, WARNING, []
@ -327,38 +327,38 @@ codetoanalyze/objc/linters-for-test-only/subclassing.m, Linters_dummy_method, 51
codetoanalyze/objc/linters-for-test-only/subclassing.m, Linters_dummy_method, 109, TEST_TYPEDEF_CHECK, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, Linters_dummy_method, 117, TEST_TYPEDEF_CHECK, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, Linters_dummy_method, 123, TEST_TYPEDEF_CHECK, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, TestType::m1, 71, TEST_BUILTIN_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, TestType::m10, 80, TEST_BUILTIN_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, TestType::m11, 81, TEST_BUILTIN_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, TestType::m12, 82, TEST_BUILTIN_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, TestType::m13, 83, TEST_BUILTIN_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, TestType::m14, 84, TEST_BUILTIN_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, TestType::m15, 85, TEST_BUILTIN_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, TestType::m15, 85, TEST_RETURN_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, TestType::m16, 86, TEST_BUILTIN_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, TestType::m17, 87, TEST_BUILTIN_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, TestType::m2, 72, TEST_BUILTIN_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, TestType::m20, 89, TEST_BUILTIN_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, TestType::m21, 90, TEST_BUILTIN_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, TestType::m22, 91, TEST_BUILTIN_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, TestType::m23, 97, TEST_BUILTIN_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, TestType::m24, 98, TEST_BUILTIN_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, TestType::m25, 99, TEST_BUILTIN_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, TestType::m26, 100, TEST_BUILTIN_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, TestType::m26, 101, TEST_BUILTIN_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, TestType::m26, 103, TEST_NTH_PARAM_TYPE_CHECK, no_bucket, LIKE, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, TestType::m26, 103, TEST_PARAM_TYPE_CHECK, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, TestType::m3, 73, TEST_BUILTIN_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, TestType::m4, 74, TEST_BUILTIN_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, TestType::m7, 77, TEST_BUILTIN_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, TestType::m8, 78, TEST_BUILTIN_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, TestType::m9, 79, TEST_BUILTIN_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, TestType.m1, 71, TEST_BUILTIN_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, TestType.m10, 80, TEST_BUILTIN_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, TestType.m11, 81, TEST_BUILTIN_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, TestType.m12, 82, TEST_BUILTIN_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, TestType.m13, 83, TEST_BUILTIN_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, TestType.m14, 84, TEST_BUILTIN_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, TestType.m15, 85, TEST_BUILTIN_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, TestType.m15, 85, TEST_RETURN_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, TestType.m16, 86, TEST_BUILTIN_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, TestType.m17, 87, TEST_BUILTIN_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, TestType.m2, 72, TEST_BUILTIN_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, TestType.m20, 89, TEST_BUILTIN_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, TestType.m21, 90, TEST_BUILTIN_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, TestType.m22, 91, TEST_BUILTIN_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, TestType.m23, 97, TEST_BUILTIN_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, TestType.m24, 98, TEST_BUILTIN_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, TestType.m25, 99, TEST_BUILTIN_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, TestType.m26, 100, TEST_BUILTIN_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, TestType.m26, 101, TEST_BUILTIN_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, TestType.m26, 103, TEST_NTH_PARAM_TYPE_CHECK, no_bucket, LIKE, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, TestType.m26, 103, TEST_PARAM_TYPE_CHECK, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, TestType.m3, 73, TEST_BUILTIN_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, TestType.m4, 74, TEST_BUILTIN_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, TestType.m7, 77, TEST_BUILTIN_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, TestType.m8, 78, TEST_BUILTIN_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, TestType.m9, 79, TEST_BUILTIN_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/subclassing.m, bar, 127, TEST_NTH_PARAM_TYPE_CHECK_FUNCTION, no_bucket, LIKE, []
codetoanalyze/objc/linters-for-test-only/unavailable.m, FooClass::new, 12, TEST_INSTANCE_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/unavailable.m, FooClass::new, 12, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/unavailable.m, FooClass::new, 12, TEST_IS_OVERRIDING_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/unavailable.m, FooClass::new, 12, TEST_UNAVAILABLE_ATTR, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/unavailable.m, FooClass::newWithFoo, 13, TEST_INSTANCE_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/unavailable.m, FooClass.new, 12, TEST_INSTANCE_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/unavailable.m, FooClass.new, 12, TEST_IS_METHOD_EXPOSED, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/unavailable.m, FooClass.new, 12, TEST_IS_OVERRIDING_METHOD, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/unavailable.m, FooClass.new, 12, TEST_UNAVAILABLE_ATTR, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/unavailable.m, FooClass.newWithFoo, 13, TEST_INSTANCE_TYPE, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/variables_captured_in_block.m, objc_block, 26, IVAR_CAPTURED_IN_OBJC_BLOCK, no_bucket, ERROR, []
codetoanalyze/objc/linters-for-test-only/visibility.c, bar, 29, TEST_DEFAULT_VISIBILITY, no_bucket, WARNING, []
codetoanalyze/objc/linters-for-test-only/visibility.c, bar, 30, TEST_DEFAULT_VISIBILITY, no_bucket, WARNING, []

@ -1,23 +1,23 @@
codetoanalyze/objc/linters/Pointer_to_const_objc_class.m, Linters_dummy_method, 11, POINTER_TO_CONST_OBJC_CLASS, no_bucket, WARNING, []
codetoanalyze/objc/linters/Weak_property_setter.m, Derived::setBaseAlternate, 65, DISCOURAGED_WEAK_PROPERTY_CUSTOM_SETTER, no_bucket, WARNING, []
codetoanalyze/objc/linters/Weak_property_setter.m, Derived::setBaseProp, 62, DISCOURAGED_WEAK_PROPERTY_CUSTOM_SETTER, no_bucket, WARNING, []
codetoanalyze/objc/linters/Weak_property_setter.m, Derived::setBaseWillBeImplementedInCategory, 93, DISCOURAGED_WEAK_PROPERTY_CUSTOM_SETTER, no_bucket, WARNING, []
codetoanalyze/objc/linters/Weak_property_setter.m, Derived::setDerivedCategoryProp, 89, DISCOURAGED_WEAK_PROPERTY_CUSTOM_SETTER, no_bucket, WARNING, []
codetoanalyze/objc/linters/Weak_property_setter.m, Derived::setDerivedProp, 68, DISCOURAGED_WEAK_PROPERTY_CUSTOM_SETTER, no_bucket, WARNING, []
codetoanalyze/objc/linters/Weak_property_setter.m, Derived::setProtocolProp, 71, DISCOURAGED_WEAK_PROPERTY_CUSTOM_SETTER, no_bucket, WARNING, []
codetoanalyze/objc/linters/Weak_property_setter.m, Derived::setWillBeImplementedInCategory, 97, DISCOURAGED_WEAK_PROPERTY_CUSTOM_SETTER, no_bucket, WARNING, []
codetoanalyze/objc/linters/Weak_property_setter.m, Derived.setBaseAlternate, 65, DISCOURAGED_WEAK_PROPERTY_CUSTOM_SETTER, no_bucket, WARNING, []
codetoanalyze/objc/linters/Weak_property_setter.m, Derived.setBaseProp, 62, DISCOURAGED_WEAK_PROPERTY_CUSTOM_SETTER, no_bucket, WARNING, []
codetoanalyze/objc/linters/Weak_property_setter.m, Derived.setBaseWillBeImplementedInCategory, 93, DISCOURAGED_WEAK_PROPERTY_CUSTOM_SETTER, no_bucket, WARNING, []
codetoanalyze/objc/linters/Weak_property_setter.m, Derived.setDerivedCategoryProp, 89, DISCOURAGED_WEAK_PROPERTY_CUSTOM_SETTER, no_bucket, WARNING, []
codetoanalyze/objc/linters/Weak_property_setter.m, Derived.setDerivedProp, 68, DISCOURAGED_WEAK_PROPERTY_CUSTOM_SETTER, no_bucket, WARNING, []
codetoanalyze/objc/linters/Weak_property_setter.m, Derived.setProtocolProp, 71, DISCOURAGED_WEAK_PROPERTY_CUSTOM_SETTER, no_bucket, WARNING, []
codetoanalyze/objc/linters/Weak_property_setter.m, Derived.setWillBeImplementedInCategory, 97, DISCOURAGED_WEAK_PROPERTY_CUSTOM_SETTER, no_bucket, WARNING, []
codetoanalyze/objc/linters/assign_pointer.m, Linters_dummy_method, 16, ASSIGN_POINTER_WARNING, no_bucket, WARNING, []
codetoanalyze/objc/linters/assign_pointer.m, Linters_dummy_method, 18, ASSIGN_POINTER_WARNING, no_bucket, WARNING, []
codetoanalyze/objc/linters/assign_pointer.m, Linters_dummy_method, 20, ASSIGN_POINTER_WARNING, no_bucket, WARNING, []
codetoanalyze/objc/linters/assign_pointer.m, Linters_dummy_method, 36, ASSIGN_POINTER_WARNING, no_bucket, WARNING, []
codetoanalyze/objc/linters/atomic_prop.m, A::bla, 97, DIRECT_ATOMIC_PROPERTY_ACCESS, no_bucket, WARNING, []
codetoanalyze/objc/linters/atomic_prop.m, A::bla, 98, DIRECT_ATOMIC_PROPERTY_ACCESS, no_bucket, WARNING, []
codetoanalyze/objc/linters/atomic_prop.m, A::readP, 76, DIRECT_ATOMIC_PROPERTY_ACCESS, no_bucket, WARNING, []
codetoanalyze/objc/linters/atomic_prop.m, A::readP, 76, POINTER_TO_INTEGRAL_IMPLICIT_CAST, no_bucket, WARNING, []
codetoanalyze/objc/linters/atomic_prop.m, A::readP, 77, POINTER_TO_INTEGRAL_IMPLICIT_CAST, no_bucket, WARNING, []
codetoanalyze/objc/linters/atomic_prop.m, A::readQ, 85, DIRECT_ATOMIC_PROPERTY_ACCESS, no_bucket, WARNING, []
codetoanalyze/objc/linters/atomic_prop.m, A::readQ, 85, POINTER_TO_INTEGRAL_IMPLICIT_CAST, no_bucket, WARNING, []
codetoanalyze/objc/linters/atomic_prop.m, A::writeQ, 81, DIRECT_ATOMIC_PROPERTY_ACCESS, no_bucket, WARNING, []
codetoanalyze/objc/linters/atomic_prop.m, A.bla, 97, DIRECT_ATOMIC_PROPERTY_ACCESS, no_bucket, WARNING, []
codetoanalyze/objc/linters/atomic_prop.m, A.bla, 98, DIRECT_ATOMIC_PROPERTY_ACCESS, no_bucket, WARNING, []
codetoanalyze/objc/linters/atomic_prop.m, A.readP, 76, DIRECT_ATOMIC_PROPERTY_ACCESS, no_bucket, WARNING, []
codetoanalyze/objc/linters/atomic_prop.m, A.readP, 76, POINTER_TO_INTEGRAL_IMPLICIT_CAST, no_bucket, WARNING, []
codetoanalyze/objc/linters/atomic_prop.m, A.readP, 77, POINTER_TO_INTEGRAL_IMPLICIT_CAST, no_bucket, WARNING, []
codetoanalyze/objc/linters/atomic_prop.m, A.readQ, 85, DIRECT_ATOMIC_PROPERTY_ACCESS, no_bucket, WARNING, []
codetoanalyze/objc/linters/atomic_prop.m, A.readQ, 85, POINTER_TO_INTEGRAL_IMPLICIT_CAST, no_bucket, WARNING, []
codetoanalyze/objc/linters/atomic_prop.m, A.writeQ, 81, DIRECT_ATOMIC_PROPERTY_ACCESS, no_bucket, WARNING, []
codetoanalyze/objc/linters/atomic_prop.m, objc_block, 113, DIRECT_ATOMIC_PROPERTY_ACCESS, no_bucket, WARNING, []
codetoanalyze/objc/linters/badpointer.m, bad1, 15, BAD_POINTER_COMPARISON, no_bucket, WARNING, []
codetoanalyze/objc/linters/badpointer.m, bad10, 130, BAD_POINTER_COMPARISON, no_bucket, WARNING, []
@ -30,11 +30,11 @@ codetoanalyze/objc/linters/badpointer.m, bad5, 97, BAD_POINTER_COMPARISON, no_bu
codetoanalyze/objc/linters/badpointer.m, bad6, 104, BAD_POINTER_COMPARISON, no_bucket, WARNING, []
codetoanalyze/objc/linters/badpointer.m, bad8, 119, BAD_POINTER_COMPARISON, no_bucket, WARNING, []
codetoanalyze/objc/linters/badpointer.m, bad9, 126, BAD_POINTER_COMPARISON, no_bucket, WARNING, []
codetoanalyze/objc/linters/dispatch.m, B::sharedInstanceBAD, 33, WRONG_SCOPE_FOR_DISPATCH_ONCE_T, no_bucket, WARNING, []
codetoanalyze/objc/linters/implicit_cast.m, Implicit_cast::call_with_boxed_int, 67, POINTER_TO_INTEGRAL_IMPLICIT_CAST, no_bucket, WARNING, []
codetoanalyze/objc/linters/implicit_cast.m, Implicit_cast::call_with_string, 60, POINTER_TO_INTEGRAL_IMPLICIT_CAST, no_bucket, WARNING, []
codetoanalyze/objc/linters/implicit_cast.m, Implicit_cast::ivar_dictionary_item_call_funct_with_int, 45, POINTER_TO_INTEGRAL_IMPLICIT_CAST, no_bucket, WARNING, []
codetoanalyze/objc/linters/implicit_cast.m, Implicit_cast::property_with_int, 49, POINTER_TO_INTEGRAL_IMPLICIT_CAST, no_bucket, WARNING, []
codetoanalyze/objc/linters/dispatch.m, B.sharedInstanceBAD, 33, WRONG_SCOPE_FOR_DISPATCH_ONCE_T, no_bucket, WARNING, []
codetoanalyze/objc/linters/implicit_cast.m, Implicit_cast.call_with_boxed_int, 67, POINTER_TO_INTEGRAL_IMPLICIT_CAST, no_bucket, WARNING, []
codetoanalyze/objc/linters/implicit_cast.m, Implicit_cast.call_with_string, 60, POINTER_TO_INTEGRAL_IMPLICIT_CAST, no_bucket, WARNING, []
codetoanalyze/objc/linters/implicit_cast.m, Implicit_cast.ivar_dictionary_item_call_funct_with_int, 45, POINTER_TO_INTEGRAL_IMPLICIT_CAST, no_bucket, WARNING, []
codetoanalyze/objc/linters/implicit_cast.m, Implicit_cast.property_with_int, 49, POINTER_TO_INTEGRAL_IMPLICIT_CAST, no_bucket, WARNING, []
codetoanalyze/objc/linters/implicit_cast.m, calling_funct_with_pointer, 15, POINTER_TO_INTEGRAL_IMPLICIT_CAST, no_bucket, WARNING, []
codetoanalyze/objc/linters/implicit_cast.m, calling_funct_with_pointer1, 20, POINTER_TO_INTEGRAL_IMPLICIT_CAST, no_bucket, WARNING, []
codetoanalyze/objc/linters/implicit_cast.m, calling_funct_with_pointer_from_a_method, 28, POINTER_TO_INTEGRAL_IMPLICIT_CAST, no_bucket, WARNING, []
@ -43,7 +43,7 @@ codetoanalyze/objc/linters/nsnumber.m, bad1, 11, BAD_POINTER_COMPARISON, no_buck
codetoanalyze/objc/linters/nsnumber.m, bad2, 16, BAD_POINTER_COMPARISON, no_bucket, WARNING, []
codetoanalyze/objc/linters/nsnumber.m, bad3, 21, BAD_POINTER_COMPARISON, no_bucket, WARNING, []
codetoanalyze/objc/linters/nsnumber.m, bad4, 41, BAD_POINTER_COMPARISON, no_bucket, WARNING, []
codetoanalyze/objc/linters/optional.m, Bar::unsafeAction, 21, UNSAFE_CALL_TO_OPTIONAL_METHOD, no_bucket, ERROR, []
codetoanalyze/objc/linters/optional.m, Bar.unsafeAction, 21, UNSAFE_CALL_TO_OPTIONAL_METHOD, no_bucket, ERROR, []
codetoanalyze/objc/linters/registered_observer/Person.m, Linters_dummy_method, 78, REGISTERED_OBSERVER_BEING_DEALLOCATED, no_bucket, WARNING, []
codetoanalyze/objc/linters/registered_observer/Person.m, Linters_dummy_method, 95, REGISTERED_OBSERVER_BEING_DEALLOCATED, no_bucket, WARNING, []
codetoanalyze/objc/linters/registered_observer/ViewController3.m, Linters_dummy_method, 12, REGISTERED_OBSERVER_BEING_DEALLOCATED, no_bucket, WARNING, []

@ -1 +1 @@
codetoanalyze/objc/liveness/NestedClassCalls.m, A::nestedBad, 1, DEAD_STORE, no_bucket, ERROR, [Write of unused value]
codetoanalyze/objc/liveness/NestedClassCalls.m, A.nestedBad, 1, DEAD_STORE, no_bucket, ERROR, [Write of unused value]

@ -1,9 +1,9 @@
codetoanalyze/objc/pulse/MallocInObjC.m, leak_bad, 0, PULSE_MEMORY_LEAK, no_bucket, ERROR, [allocation part of the trace starts here,allocated by call to `malloc_no_fail` (modelled),allocation part of the trace ends here,memory becomes unreachable here]
codetoanalyze/objc/pulse/MemoryLeaks.m, MemoryLeaks::call_no_bridge_leak_bad, 1, PULSE_MEMORY_LEAK, no_bucket, ERROR, [allocation part of the trace starts here,when calling `MemoryLeaks::ret_no_bridge` here,allocated by call to `CFLocaleCreate` (modelled),allocation part of the trace ends here,memory becomes unreachable here]
codetoanalyze/objc/pulse/MemoryLeaks.m, MemoryLeaks::cg_path_create_mutable_leak_bad:, 2, PULSE_MEMORY_LEAK, no_bucket, ERROR, [allocation part of the trace starts here,allocated by call to `CGPathCreateMutable` (modelled),allocation part of the trace ends here,memory becomes unreachable here]
codetoanalyze/objc/pulse/MemoryLeaks.m, MemoryLeaks::cg_path_create_with_rect_leak_bad, 3, PULSE_MEMORY_LEAK, no_bucket, ERROR, [allocation part of the trace starts here,allocated by call to `CGPathCreateWithRect` (modelled),allocation part of the trace ends here,memory becomes unreachable here]
codetoanalyze/objc/pulse/MemoryLeaks.m, MemoryLeaks::no_bridge_leak_bad, 1, PULSE_MEMORY_LEAK, no_bucket, ERROR, [allocation part of the trace starts here,allocated by call to `CFLocaleCreate` (modelled),allocation part of the trace ends here,memory becomes unreachable here]
codetoanalyze/objc/pulse/MemoryLeaks.m, MemoryLeaks.call_no_bridge_leak_bad, 1, PULSE_MEMORY_LEAK, no_bucket, ERROR, [allocation part of the trace starts here,when calling `MemoryLeaks.ret_no_bridge` here,allocated by call to `CFLocaleCreate` (modelled),allocation part of the trace ends here,memory becomes unreachable here]
codetoanalyze/objc/pulse/MemoryLeaks.m, MemoryLeaks.cg_path_create_mutable_leak_bad:, 2, PULSE_MEMORY_LEAK, no_bucket, ERROR, [allocation part of the trace starts here,allocated by call to `CGPathCreateMutable` (modelled),allocation part of the trace ends here,memory becomes unreachable here]
codetoanalyze/objc/pulse/MemoryLeaks.m, MemoryLeaks.cg_path_create_with_rect_leak_bad, 3, PULSE_MEMORY_LEAK, no_bucket, ERROR, [allocation part of the trace starts here,allocated by call to `CGPathCreateWithRect` (modelled),allocation part of the trace ends here,memory becomes unreachable here]
codetoanalyze/objc/pulse/MemoryLeaks.m, MemoryLeaks.no_bridge_leak_bad, 1, PULSE_MEMORY_LEAK, no_bucket, ERROR, [allocation part of the trace starts here,allocated by call to `CFLocaleCreate` (modelled),allocation part of the trace ends here,memory becomes unreachable here]
codetoanalyze/objc/pulse/MemoryLeaks.m, call_bridge_interproc_leak_ok_FP, 2, PULSE_MEMORY_LEAK, no_bucket, ERROR, [allocation part of the trace starts here,allocated by call to `CFLocaleCreate` (modelled),allocation part of the trace ends here,memory becomes unreachable here]
codetoanalyze/objc/pulse/MemoryLeaks.m, call_cfrelease_interproc_leak_ok_FP, 2, PULSE_MEMORY_LEAK, no_bucket, ERROR, [allocation part of the trace starts here,allocated by call to `CFLocaleCreate` (modelled),allocation part of the trace ends here,memory becomes unreachable here]
codetoanalyze/objc/pulse/use_after_free.m, PulseTest::use_after_free_simple_in_objc_method_bad:, 2, USE_AFTER_FREE, no_bucket, ERROR, [invalidation part of the trace starts here,parameter `x` of PulseTest::use_after_free_simple_in_objc_method_bad:,was invalidated by call to `free()`,use-after-lifetime part of the trace starts here,parameter `x` of PulseTest::use_after_free_simple_in_objc_method_bad:,invalid access occurs here]
codetoanalyze/objc/pulse/use_after_free.m, PulseTest.use_after_free_simple_in_objc_method_bad:, 2, USE_AFTER_FREE, no_bucket, ERROR, [invalidation part of the trace starts here,parameter `x` of PulseTest.use_after_free_simple_in_objc_method_bad:,was invalidated by call to `free()`,use-after-lifetime part of the trace starts here,parameter `x` of PulseTest.use_after_free_simple_in_objc_method_bad:,invalid access occurs here]
codetoanalyze/objc/pulse/use_after_free.m, use_after_free_simple_bad, 2, USE_AFTER_FREE, no_bucket, ERROR, [invalidation part of the trace starts here,parameter `x` of use_after_free_simple_bad,was invalidated by call to `free()`,use-after-lifetime part of the trace starts here,parameter `x` of use_after_free_simple_bad,invalid access occurs here]

@ -1,10 +1,10 @@
codetoanalyze/objc/self-in-block/NoescapeBlock.m, objc_blockA::weak_in_noescape_block_bad:_1, 1, MULTIPLE_WEAKSELF, no_bucket, ERROR, [Using &weakSelf,Using &weakSelf]
codetoanalyze/objc/self-in-block/NoescapeBlock.m, objc_blockA::weak_in_noescape_block_bad:_1, 1, WEAK_SELF_IN_NO_ESCAPE_BLOCK, no_bucket, ERROR, [Using &weakSelf,Using &weakSelf]
codetoanalyze/objc/self-in-block/StrongSelf.m, objc_blockSelfInBlockTest::mixSelfWeakSelf_bad_1, 4, MIXED_SELF_WEAKSELF, no_bucket, ERROR, [Using &weakSelf,Using &self,Using &self]
codetoanalyze/objc/self-in-block/StrongSelf.m, objc_blockSelfInBlockTest::strongSelfCheck2_bad_6, 6, STRONG_SELF_NOT_CHECKED, no_bucket, ERROR, [&strongSelf assigned here,Using &strongSelf not checked for null,Using &strongSelf not checked for null]
codetoanalyze/objc/self-in-block/StrongSelf.m, objc_blockSelfInBlockTest::strongSelfCheck3_bad_9, 2, STRONG_SELF_NOT_CHECKED, no_bucket, ERROR, [&strongSelf assigned here,Using &strongSelf not checked for null]
codetoanalyze/objc/self-in-block/StrongSelf.m, objc_blockSelfInBlockTest::strongSelfCheck4_bad_10, 2, STRONG_SELF_NOT_CHECKED, no_bucket, ERROR, [&strongSelf assigned here,Using &strongSelf not checked for null,Using &strongSelf not checked for null]
codetoanalyze/objc/self-in-block/StrongSelf.m, objc_blockSelfInBlockTest::strongSelfCheckOnce_bad_5, 6, STRONG_SELF_NOT_CHECKED, no_bucket, ERROR, [&strongSelf assigned here,Using &strongSelf not checked for null,Using &strongSelf not checked for null]
codetoanalyze/objc/self-in-block/StrongSelf.m, objc_blockSelfInBlockTest::strongSelfNoCheckNotWeakSelf_good_2, 1, CAPTURED_STRONG_SELF, no_bucket, ERROR, [Using captured &weakSelf]
codetoanalyze/objc/self-in-block/StrongSelf.m, objc_blockSelfInBlockTest::weakSelfMultiple_bad_14, 1, MULTIPLE_WEAKSELF, no_bucket, ERROR, [Using &weakSelf,Using &weakSelf]
codetoanalyze/objc/self-in-block/StrongSelf.m, objc_blockobjc_blockSelfInBlockTest::capturedStrongSelf_bad_15_16, 1, CAPTURED_STRONG_SELF, no_bucket, ERROR, [Using captured &strongSelf,Using captured &strongSelf]
codetoanalyze/objc/self-in-block/NoescapeBlock.m, objc_blockA.weak_in_noescape_block_bad:_1, 1, MULTIPLE_WEAKSELF, no_bucket, ERROR, [Using &weakSelf,Using &weakSelf]
codetoanalyze/objc/self-in-block/NoescapeBlock.m, objc_blockA.weak_in_noescape_block_bad:_1, 1, WEAK_SELF_IN_NO_ESCAPE_BLOCK, no_bucket, ERROR, [Using &weakSelf,Using &weakSelf]
codetoanalyze/objc/self-in-block/StrongSelf.m, objc_blockSelfInBlockTest.mixSelfWeakSelf_bad_1, 4, MIXED_SELF_WEAKSELF, no_bucket, ERROR, [Using &weakSelf,Using &self,Using &self]
codetoanalyze/objc/self-in-block/StrongSelf.m, objc_blockSelfInBlockTest.strongSelfCheck2_bad_6, 6, STRONG_SELF_NOT_CHECKED, no_bucket, ERROR, [&strongSelf assigned here,Using &strongSelf not checked for null,Using &strongSelf not checked for null]
codetoanalyze/objc/self-in-block/StrongSelf.m, objc_blockSelfInBlockTest.strongSelfCheck3_bad_9, 2, STRONG_SELF_NOT_CHECKED, no_bucket, ERROR, [&strongSelf assigned here,Using &strongSelf not checked for null]
codetoanalyze/objc/self-in-block/StrongSelf.m, objc_blockSelfInBlockTest.strongSelfCheck4_bad_10, 2, STRONG_SELF_NOT_CHECKED, no_bucket, ERROR, [&strongSelf assigned here,Using &strongSelf not checked for null,Using &strongSelf not checked for null]
codetoanalyze/objc/self-in-block/StrongSelf.m, objc_blockSelfInBlockTest.strongSelfCheckOnce_bad_5, 6, STRONG_SELF_NOT_CHECKED, no_bucket, ERROR, [&strongSelf assigned here,Using &strongSelf not checked for null,Using &strongSelf not checked for null]
codetoanalyze/objc/self-in-block/StrongSelf.m, objc_blockSelfInBlockTest.strongSelfNoCheckNotWeakSelf_good_2, 1, CAPTURED_STRONG_SELF, no_bucket, ERROR, [Using captured &weakSelf]
codetoanalyze/objc/self-in-block/StrongSelf.m, objc_blockSelfInBlockTest.weakSelfMultiple_bad_14, 1, MULTIPLE_WEAKSELF, no_bucket, ERROR, [Using &weakSelf,Using &weakSelf]
codetoanalyze/objc/self-in-block/StrongSelf.m, objc_blockobjc_blockSelfInBlockTest.capturedStrongSelf_bad_15_16, 1, CAPTURED_STRONG_SELF, no_bucket, ERROR, [Using captured &strongSelf,Using captured &strongSelf]

@ -1,73 +1,73 @@
/* @generated */
digraph cfg {
"init#A#instance.eee79aaaddd644404e17691a7e7d809a_1" [label="1: Start A::init\nFormals: self:A*\nLocals: \n " color=yellow style=filled]
"init#A#instance.eee79aaaddd644404e17691a7e7d809a_1" [label="1: Start A.init\nFormals: self:A*\nLocals: \n " color=yellow style=filled]
"init#A#instance.eee79aaaddd644404e17691a7e7d809a_1" -> "init#A#instance.eee79aaaddd644404e17691a7e7d809a_3" ;
"init#A#instance.eee79aaaddd644404e17691a7e7d809a_2" [label="2: Exit A::init \n " color=yellow style=filled]
"init#A#instance.eee79aaaddd644404e17691a7e7d809a_2" [label="2: Exit A.init \n " color=yellow style=filled]
"init#A#instance.eee79aaaddd644404e17691a7e7d809a_3" [label="3: Return Stmt \n n$0=*&self:A* [line 20, column 10]\n *&return:objc_object*=n$0 [line 20, column 3]\n " shape="box"]
"init#A#instance.eee79aaaddd644404e17691a7e7d809a_3" -> "init#A#instance.eee79aaaddd644404e17691a7e7d809a_2" ;
"test1:#A(class A)#instance.61440711d4e2388d4be3731c34a61289_1" [label="1: Start A::test1:\nFormals: self:A* a:A*\nLocals: aa:A* \n " color=yellow style=filled]
"test1:#A(class A)#instance.61440711d4e2388d4be3731c34a61289_1" [label="1: Start A.test1:\nFormals: self:A* a:A*\nLocals: aa:A* \n " color=yellow style=filled]
"test1:#A(class A)#instance.61440711d4e2388d4be3731c34a61289_1" -> "test1:#A(class A)#instance.61440711d4e2388d4be3731c34a61289_4" ;
"test1:#A(class A)#instance.61440711d4e2388d4be3731c34a61289_2" [label="2: Exit A::test1: \n " color=yellow style=filled]
"test1:#A(class A)#instance.61440711d4e2388d4be3731c34a61289_2" [label="2: Exit A.test1: \n " color=yellow style=filled]
"test1:#A(class A)#instance.61440711d4e2388d4be3731c34a61289_3" [label="3: Return Stmt \n n$1=*&aa:A* [line 25, column 10]\n n$2=*n$1.x:int [line 25, column 10]\n *&return:int=n$2 [line 25, column 3]\n " shape="box"]
"test1:#A(class A)#instance.61440711d4e2388d4be3731c34a61289_3" -> "test1:#A(class A)#instance.61440711d4e2388d4be3731c34a61289_2" ;
"test1:#A(class A)#instance.61440711d4e2388d4be3731c34a61289_4" [label="4: DeclStmt \n VARIABLE_DECLARED(aa:A*); [line 24, column 3]\n n$3=*&a:A* [line 24, column 12]\n n$4=_fun_A::child(n$3:A*) [line 24, column 11]\n *&aa:A*=n$4 [line 24, column 3]\n " shape="box"]
"test1:#A(class A)#instance.61440711d4e2388d4be3731c34a61289_4" [label="4: DeclStmt \n VARIABLE_DECLARED(aa:A*); [line 24, column 3]\n n$3=*&a:A* [line 24, column 12]\n n$4=_fun_A.child(n$3:A*) [line 24, column 11]\n *&aa:A*=n$4 [line 24, column 3]\n " shape="box"]
"test1:#A(class A)#instance.61440711d4e2388d4be3731c34a61289_4" -> "test1:#A(class A)#instance.61440711d4e2388d4be3731c34a61289_3" ;
"test2:#A(class A)#instance.3b9594b6f023617f19d57dee6d35cf80_1" [label="1: Start A::test2:\nFormals: self:A* a:A*\nLocals: aa:A*\nAnnotation: <> A::test2:(<> <_Nonnull>) \n " color=yellow style=filled]
"test2:#A(class A)#instance.3b9594b6f023617f19d57dee6d35cf80_1" [label="1: Start A.test2:\nFormals: self:A* a:A*\nLocals: aa:A*\nAnnotation: <> A.test2:(<> <_Nonnull>) \n " color=yellow style=filled]
"test2:#A(class A)#instance.3b9594b6f023617f19d57dee6d35cf80_1" -> "test2:#A(class A)#instance.3b9594b6f023617f19d57dee6d35cf80_4" ;
"test2:#A(class A)#instance.3b9594b6f023617f19d57dee6d35cf80_2" [label="2: Exit A::test2: \n " color=yellow style=filled]
"test2:#A(class A)#instance.3b9594b6f023617f19d57dee6d35cf80_2" [label="2: Exit A.test2: \n " color=yellow style=filled]
"test2:#A(class A)#instance.3b9594b6f023617f19d57dee6d35cf80_3" [label="3: Return Stmt \n n$5=*&aa:A* [line 30, column 10]\n n$6=*n$5.x:int [line 30, column 10]\n *&return:int=n$6 [line 30, column 3]\n " shape="box"]
"test2:#A(class A)#instance.3b9594b6f023617f19d57dee6d35cf80_3" -> "test2:#A(class A)#instance.3b9594b6f023617f19d57dee6d35cf80_2" ;
"test2:#A(class A)#instance.3b9594b6f023617f19d57dee6d35cf80_4" [label="4: DeclStmt \n VARIABLE_DECLARED(aa:A*); [line 29, column 3]\n n$7=*&a:A* [line 29, column 12]\n n$8=_fun_A::child(n$7:A*) [line 29, column 11]\n *&aa:A*=n$8 [line 29, column 3]\n " shape="box"]
"test2:#A(class A)#instance.3b9594b6f023617f19d57dee6d35cf80_4" [label="4: DeclStmt \n VARIABLE_DECLARED(aa:A*); [line 29, column 3]\n n$7=*&a:A* [line 29, column 12]\n n$8=_fun_A.child(n$7:A*) [line 29, column 11]\n *&aa:A*=n$8 [line 29, column 3]\n " shape="box"]
"test2:#A(class A)#instance.3b9594b6f023617f19d57dee6d35cf80_4" -> "test2:#A(class A)#instance.3b9594b6f023617f19d57dee6d35cf80_3" ;
"test3:#A#instance.28bc2df8df797b21818dc2037239f326_1" [label="1: Start A::test3:\nFormals: self:A* successBlock:_fn_(*)\nLocals: \n " color=yellow style=filled]
"test3:#A#instance.28bc2df8df797b21818dc2037239f326_1" [label="1: Start A.test3:\nFormals: self:A* successBlock:_fn_(*)\nLocals: \n " color=yellow style=filled]
"test3:#A#instance.28bc2df8df797b21818dc2037239f326_1" -> "test3:#A#instance.28bc2df8df797b21818dc2037239f326_4" ;
"test3:#A#instance.28bc2df8df797b21818dc2037239f326_2" [label="2: Exit A::test3: \n " color=yellow style=filled]
"test3:#A#instance.28bc2df8df797b21818dc2037239f326_2" [label="2: Exit A.test3: \n " color=yellow style=filled]
"test3:#A#instance.28bc2df8df797b21818dc2037239f326_3" [label="3: Return Stmt \n *&return:int=0 [line 35, column 3]\n " shape="box"]
"test3:#A#instance.28bc2df8df797b21818dc2037239f326_3" -> "test3:#A#instance.28bc2df8df797b21818dc2037239f326_2" ;
"test3:#A#instance.28bc2df8df797b21818dc2037239f326_4" [label="4: Call n$9 \n n$9=*&successBlock:_fn_(*) [line 34, column 3]\n n$10=_fun_NSString::stringWithUTF8String:(\"Yay\":char* const ) [line 34, column 16]\n n$11=n$9(n$10:NSString*) objc_block [line 34, column 3]\n " shape="box"]
"test3:#A#instance.28bc2df8df797b21818dc2037239f326_4" [label="4: Call n$9 \n n$9=*&successBlock:_fn_(*) [line 34, column 3]\n n$10=_fun_NSString.stringWithUTF8String:(\"Yay\":char* const ) [line 34, column 16]\n n$11=n$9(n$10:NSString*) objc_block [line 34, column 3]\n " shape="box"]
"test3:#A#instance.28bc2df8df797b21818dc2037239f326_4" -> "test3:#A#instance.28bc2df8df797b21818dc2037239f326_3" ;
"test4:#A#instance.718a300d6fa63609a70f22221a548ee5_1" [label="1: Start A::test4:\nFormals: self:A* successBlock:_fn_(*)\nLocals: \nAnnotation: <> A::test4:(<> <_Nonnull>) \n " color=yellow style=filled]
"test4:#A#instance.718a300d6fa63609a70f22221a548ee5_1" [label="1: Start A.test4:\nFormals: self:A* successBlock:_fn_(*)\nLocals: \nAnnotation: <> A.test4:(<> <_Nonnull>) \n " color=yellow style=filled]
"test4:#A#instance.718a300d6fa63609a70f22221a548ee5_1" -> "test4:#A#instance.718a300d6fa63609a70f22221a548ee5_4" ;
"test4:#A#instance.718a300d6fa63609a70f22221a548ee5_2" [label="2: Exit A::test4: \n " color=yellow style=filled]
"test4:#A#instance.718a300d6fa63609a70f22221a548ee5_2" [label="2: Exit A.test4: \n " color=yellow style=filled]
"test4:#A#instance.718a300d6fa63609a70f22221a548ee5_3" [label="3: Return Stmt \n *&return:int=0 [line 40, column 3]\n " shape="box"]
"test4:#A#instance.718a300d6fa63609a70f22221a548ee5_3" -> "test4:#A#instance.718a300d6fa63609a70f22221a548ee5_2" ;
"test4:#A#instance.718a300d6fa63609a70f22221a548ee5_4" [label="4: Call n$12 \n n$12=*&successBlock:_fn_(*) [line 39, column 3]\n n$13=_fun_NSString::stringWithUTF8String:(\"Yay\":char* const ) [line 39, column 16]\n n$14=n$12(n$13:NSString*) objc_block [line 39, column 3]\n " shape="box"]
"test4:#A#instance.718a300d6fa63609a70f22221a548ee5_4" [label="4: Call n$12 \n n$12=*&successBlock:_fn_(*) [line 39, column 3]\n n$13=_fun_NSString.stringWithUTF8String:(\"Yay\":char* const ) [line 39, column 16]\n n$14=n$12(n$13:NSString*) objc_block [line 39, column 3]\n " shape="box"]
"test4:#A#instance.718a300d6fa63609a70f22221a548ee5_4" -> "test4:#A#instance.718a300d6fa63609a70f22221a548ee5_3" ;

@ -7,74 +7,74 @@ digraph cfg {
"npe_property_nullable.ba4461b16b55481ab8de5124734d2bf3_2" [label="2: Exit npe_property_nullable \n " color=yellow style=filled]
"npe_property_nullable.ba4461b16b55481ab8de5124734d2bf3_3" [label="3: Return Stmt \n n$1=*&child:Person* [line 56, column 21]\n n$0=_fun_NSString::stringWithUTF8String:(\"key\":char* const ) [line 56, column 12]\n n$2=_fun_NSDictionary::dictionaryWithObjects:forKeys:count:(n$1:objc_object*,n$0:objc_object*,null:objc_object*) [line 56, column 10]\n *&return:NSDictionary*=n$2 [line 56, column 3]\n " shape="box"]
"npe_property_nullable.ba4461b16b55481ab8de5124734d2bf3_3" [label="3: Return Stmt \n n$1=*&child:Person* [line 56, column 21]\n n$0=_fun_NSString.stringWithUTF8String:(\"key\":char* const ) [line 56, column 12]\n n$2=_fun_NSDictionary.dictionaryWithObjects:forKeys:count:(n$1:objc_object*,n$0:objc_object*,null:objc_object*) [line 56, column 10]\n *&return:NSDictionary*=n$2 [line 56, column 3]\n " shape="box"]
"npe_property_nullable.ba4461b16b55481ab8de5124734d2bf3_3" -> "npe_property_nullable.ba4461b16b55481ab8de5124734d2bf3_2" ;
"npe_property_nullable.ba4461b16b55481ab8de5124734d2bf3_4" [label="4: DeclStmt \n VARIABLE_DECLARED(child:Person*); [line 55, column 3]\n n$3=*&person:Person* [line 55, column 19]\n n$4=_fun_Person::child(n$3:Person*) [line 55, column 26]\n *&child:Person*=n$4 [line 55, column 3]\n " shape="box"]
"npe_property_nullable.ba4461b16b55481ab8de5124734d2bf3_4" [label="4: DeclStmt \n VARIABLE_DECLARED(child:Person*); [line 55, column 3]\n n$3=*&person:Person* [line 55, column 19]\n n$4=_fun_Person.child(n$3:Person*) [line 55, column 26]\n *&child:Person*=n$4 [line 55, column 3]\n " shape="box"]
"npe_property_nullable.ba4461b16b55481ab8de5124734d2bf3_4" -> "npe_property_nullable.ba4461b16b55481ab8de5124734d2bf3_3" ;
"npe_property_nullable.ba4461b16b55481ab8de5124734d2bf3_5" [label="5: DeclStmt \n VARIABLE_DECLARED(person:Person*); [line 54, column 3]\n n$5=_fun___objc_alloc_no_fail(sizeof(t=Person):unsigned long) [line 54, column 20]\n n$6=_fun_NSObject::init(n$5:Person*) virtual [line 54, column 20]\n *&person:Person*=n$6 [line 54, column 3]\n " shape="box"]
"npe_property_nullable.ba4461b16b55481ab8de5124734d2bf3_5" [label="5: DeclStmt \n VARIABLE_DECLARED(person:Person*); [line 54, column 3]\n n$5=_fun___objc_alloc_no_fail(sizeof(t=Person):unsigned long) [line 54, column 20]\n n$6=_fun_NSObject.init(n$5:Person*) virtual [line 54, column 20]\n *&person:Person*=n$6 [line 54, column 3]\n " shape="box"]
"npe_property_nullable.ba4461b16b55481ab8de5124734d2bf3_5" -> "npe_property_nullable.ba4461b16b55481ab8de5124734d2bf3_4" ;
"initWithName:#User(class NSString)#instance.1755f5e97d3aa5318dd071b864db9bb7_1" [label="1: Start User::initWithName:\nFormals: self:User* name:NSString*\nLocals: \nAnnotation: <_Nullable> User::initWithName:(<> <_Nullable>) \n " color=yellow style=filled]
"initWithName:#User(class NSString)#instance.1755f5e97d3aa5318dd071b864db9bb7_1" [label="1: Start User.initWithName:\nFormals: self:User* name:NSString*\nLocals: \nAnnotation: <_Nullable> User.initWithName:(<> <_Nullable>) \n " color=yellow style=filled]
"initWithName:#User(class NSString)#instance.1755f5e97d3aa5318dd071b864db9bb7_1" -> "initWithName:#User(class NSString)#instance.1755f5e97d3aa5318dd071b864db9bb7_3" ;
"initWithName:#User(class NSString)#instance.1755f5e97d3aa5318dd071b864db9bb7_2" [label="2: Exit User::initWithName: \n " color=yellow style=filled]
"initWithName:#User(class NSString)#instance.1755f5e97d3aa5318dd071b864db9bb7_2" [label="2: Exit User.initWithName: \n " color=yellow style=filled]
"initWithName:#User(class NSString)#instance.1755f5e97d3aa5318dd071b864db9bb7_3" [label="3: Return Stmt \n n$0=*&self:User* [line 30, column 10]\n *&return:objc_object*=n$0 [line 30, column 3]\n " shape="box"]
"initWithName:#User(class NSString)#instance.1755f5e97d3aa5318dd071b864db9bb7_3" -> "initWithName:#User(class NSString)#instance.1755f5e97d3aa5318dd071b864db9bb7_2" ;
"otherUserName#User#instance.7b86b8d2191be71dec320c3203056cd7_1" [label="1: Start User::otherUserName\nFormals: self:User*\nLocals: ou:User* \n " color=yellow style=filled]
"otherUserName#User#instance.7b86b8d2191be71dec320c3203056cd7_1" [label="1: Start User.otherUserName\nFormals: self:User*\nLocals: ou:User* \n " color=yellow style=filled]
"otherUserName#User#instance.7b86b8d2191be71dec320c3203056cd7_1" -> "otherUserName#User#instance.7b86b8d2191be71dec320c3203056cd7_4" ;
"otherUserName#User#instance.7b86b8d2191be71dec320c3203056cd7_2" [label="2: Exit User::otherUserName \n " color=yellow style=filled]
"otherUserName#User#instance.7b86b8d2191be71dec320c3203056cd7_2" [label="2: Exit User.otherUserName \n " color=yellow style=filled]
"otherUserName#User#instance.7b86b8d2191be71dec320c3203056cd7_3" [label="3: Return Stmt \n n$4=*&ou:User* [line 50, column 10]\n n$5=*n$4._name:NSString* [line 50, column 10]\n *&return:NSString*=n$5 [line 50, column 3]\n " shape="box"]
"otherUserName#User#instance.7b86b8d2191be71dec320c3203056cd7_3" -> "otherUserName#User#instance.7b86b8d2191be71dec320c3203056cd7_2" ;
"otherUserName#User#instance.7b86b8d2191be71dec320c3203056cd7_4" [label="4: DeclStmt \n VARIABLE_DECLARED(ou:User*); [line 49, column 3]\n n$6=*&self:User* [line 49, column 15]\n n$7=_fun_User::otherUser(n$6:User*) virtual [line 49, column 14]\n *&ou:User*=n$7 [line 49, column 3]\n " shape="box"]
"otherUserName#User#instance.7b86b8d2191be71dec320c3203056cd7_4" [label="4: DeclStmt \n VARIABLE_DECLARED(ou:User*); [line 49, column 3]\n n$6=*&self:User* [line 49, column 15]\n n$7=_fun_User.otherUser(n$6:User*) virtual [line 49, column 14]\n *&ou:User*=n$7 [line 49, column 3]\n " shape="box"]
"otherUserName#User#instance.7b86b8d2191be71dec320c3203056cd7_4" -> "otherUserName#User#instance.7b86b8d2191be71dec320c3203056cd7_3" ;
"tellMeSomething#User#instance.5ed632cdc46e048613dbc2d7030419cf_1" [label="1: Start User::tellMeSomething\nFormals: self:User*\nLocals: \nAnnotation: <_Nullable> User::tellMeSomething(<>) \n " color=yellow style=filled]
"tellMeSomething#User#instance.5ed632cdc46e048613dbc2d7030419cf_1" [label="1: Start User.tellMeSomething\nFormals: self:User*\nLocals: \nAnnotation: <_Nullable> User.tellMeSomething(<>) \n " color=yellow style=filled]
"tellMeSomething#User#instance.5ed632cdc46e048613dbc2d7030419cf_1" -> "tellMeSomething#User#instance.5ed632cdc46e048613dbc2d7030419cf_3" ;
"tellMeSomething#User#instance.5ed632cdc46e048613dbc2d7030419cf_2" [label="2: Exit User::tellMeSomething \n " color=yellow style=filled]
"tellMeSomething#User#instance.5ed632cdc46e048613dbc2d7030419cf_2" [label="2: Exit User.tellMeSomething \n " color=yellow style=filled]
"tellMeSomething#User#instance.5ed632cdc46e048613dbc2d7030419cf_3" [label="3: Return Stmt \n n$1=_fun_NSString::stringWithUTF8String:(\"Hi\":char* const ) [line 34, column 10]\n *&return:NSString*=n$1 [line 34, column 3]\n " shape="box"]
"tellMeSomething#User#instance.5ed632cdc46e048613dbc2d7030419cf_3" [label="3: Return Stmt \n n$1=_fun_NSString.stringWithUTF8String:(\"Hi\":char* const ) [line 34, column 10]\n *&return:NSString*=n$1 [line 34, column 3]\n " shape="box"]
"tellMeSomething#User#instance.5ed632cdc46e048613dbc2d7030419cf_3" -> "tellMeSomething#User#instance.5ed632cdc46e048613dbc2d7030419cf_2" ;
"tellMeSomething:and:and:and:#User(class NSString,class NSString,class NSString,class NSString)#insta.486c16409126581cc0a8d6141cb33574_1" [label="1: Start User::tellMeSomething:and:and:and:\nFormals: self:User* s1:NSString* s2:NSString* s3:NSString* s4:NSString*\nLocals: \nAnnotation: <> User::tellMeSomething:and:and:and:(<> <> <> <_Nullable> <>) \n " color=yellow style=filled]
"tellMeSomething:and:and:and:#User(class NSString,class NSString,class NSString,class NSString)#insta.486c16409126581cc0a8d6141cb33574_1" [label="1: Start User.tellMeSomething:and:and:and:\nFormals: self:User* s1:NSString* s2:NSString* s3:NSString* s4:NSString*\nLocals: \nAnnotation: <> User.tellMeSomething:and:and:and:(<> <> <> <_Nullable> <>) \n " color=yellow style=filled]
"tellMeSomething:and:and:and:#User(class NSString,class NSString,class NSString,class NSString)#insta.486c16409126581cc0a8d6141cb33574_1" -> "tellMeSomething:and:and:and:#User(class NSString,class NSString,class NSString,class NSString)#insta.486c16409126581cc0a8d6141cb33574_3" ;
"tellMeSomething:and:and:and:#User(class NSString,class NSString,class NSString,class NSString)#insta.486c16409126581cc0a8d6141cb33574_2" [label="2: Exit User::tellMeSomething:and:and:and: \n " color=yellow style=filled]
"tellMeSomething:and:and:and:#User(class NSString,class NSString,class NSString,class NSString)#insta.486c16409126581cc0a8d6141cb33574_2" [label="2: Exit User.tellMeSomething:and:and:and: \n " color=yellow style=filled]
"tellMeSomething:and:and:and:#User(class NSString,class NSString,class NSString,class NSString)#insta.486c16409126581cc0a8d6141cb33574_3" [label="3: Return Stmt \n n$3=_fun_NSString::stringWithUTF8String:(\"Hi\":char* const ) [line 45, column 10]\n *&return:NSString*=n$3 [line 45, column 3]\n " shape="box"]
"tellMeSomething:and:and:and:#User(class NSString,class NSString,class NSString,class NSString)#insta.486c16409126581cc0a8d6141cb33574_3" [label="3: Return Stmt \n n$3=_fun_NSString.stringWithUTF8String:(\"Hi\":char* const ) [line 45, column 10]\n *&return:NSString*=n$3 [line 45, column 3]\n " shape="box"]
"tellMeSomething:and:and:and:#User(class NSString,class NSString,class NSString,class NSString)#insta.486c16409126581cc0a8d6141cb33574_3" -> "tellMeSomething:and:and:and:#User(class NSString,class NSString,class NSString,class NSString)#insta.486c16409126581cc0a8d6141cb33574_2" ;
"tellMeSomethingNotNullable#User#instance.245a0cd3ebd907a23c846151021de342_1" [label="1: Start User::tellMeSomethingNotNullable\nFormals: self:User*\nLocals: \n " color=yellow style=filled]
"tellMeSomethingNotNullable#User#instance.245a0cd3ebd907a23c846151021de342_1" [label="1: Start User.tellMeSomethingNotNullable\nFormals: self:User*\nLocals: \n " color=yellow style=filled]
"tellMeSomethingNotNullable#User#instance.245a0cd3ebd907a23c846151021de342_1" -> "tellMeSomethingNotNullable#User#instance.245a0cd3ebd907a23c846151021de342_3" ;
"tellMeSomethingNotNullable#User#instance.245a0cd3ebd907a23c846151021de342_2" [label="2: Exit User::tellMeSomethingNotNullable \n " color=yellow style=filled]
"tellMeSomethingNotNullable#User#instance.245a0cd3ebd907a23c846151021de342_2" [label="2: Exit User.tellMeSomethingNotNullable \n " color=yellow style=filled]
"tellMeSomethingNotNullable#User#instance.245a0cd3ebd907a23c846151021de342_3" [label="3: Return Stmt \n n$2=_fun_NSString::stringWithUTF8String:(\"Hi\":char* const ) [line 38, column 10]\n *&return:NSString*=n$2 [line 38, column 3]\n " shape="box"]
"tellMeSomethingNotNullable#User#instance.245a0cd3ebd907a23c846151021de342_3" [label="3: Return Stmt \n n$2=_fun_NSString.stringWithUTF8String:(\"Hi\":char* const ) [line 38, column 10]\n *&return:NSString*=n$2 [line 38, column 3]\n " shape="box"]
"tellMeSomethingNotNullable#User#instance.245a0cd3ebd907a23c846151021de342_3" -> "tellMeSomethingNotNullable#User#instance.245a0cd3ebd907a23c846151021de342_2" ;

@ -1,69 +1,69 @@
/* @generated */
digraph cfg {
"objc_blockBlockVar::blockPostBad_2.dfe036ee6adc8f91e6e1d3ca5c8a9c9d_1" [label="1: Start objc_blockBlockVar::blockPostBad_2\nFormals: x:int*\nLocals: \nCaptured: x:int* \n " color=yellow style=filled]
"objc_blockBlockVar.blockPostBad_2.9b5fc6c216acf1eebade4e80598bd292_1" [label="1: Start objc_blockBlockVar.blockPostBad_2\nFormals: x:int*\nLocals: \nCaptured: x:int* \n " color=yellow style=filled]
"objc_blockBlockVar::blockPostBad_2.dfe036ee6adc8f91e6e1d3ca5c8a9c9d_1" -> "objc_blockBlockVar::blockPostBad_2.dfe036ee6adc8f91e6e1d3ca5c8a9c9d_3" ;
"objc_blockBlockVar::blockPostBad_2.dfe036ee6adc8f91e6e1d3ca5c8a9c9d_2" [label="2: Exit objc_blockBlockVar::blockPostBad_2 \n " color=yellow style=filled]
"objc_blockBlockVar.blockPostBad_2.9b5fc6c216acf1eebade4e80598bd292_1" -> "objc_blockBlockVar.blockPostBad_2.9b5fc6c216acf1eebade4e80598bd292_3" ;
"objc_blockBlockVar.blockPostBad_2.9b5fc6c216acf1eebade4e80598bd292_2" [label="2: Exit objc_blockBlockVar.blockPostBad_2 \n " color=yellow style=filled]
"objc_blockBlockVar::blockPostBad_2.dfe036ee6adc8f91e6e1d3ca5c8a9c9d_3" [label="3: Return Stmt \n n$15=*&x:int* [line 32, column 12]\n *&return:int*=n$15 [line 32, column 5]\n " shape="box"]
"objc_blockBlockVar.blockPostBad_2.9b5fc6c216acf1eebade4e80598bd292_3" [label="3: Return Stmt \n n$15=*&x:int* [line 32, column 12]\n *&return:int*=n$15 [line 32, column 5]\n " shape="box"]
"objc_blockBlockVar::blockPostBad_2.dfe036ee6adc8f91e6e1d3ca5c8a9c9d_3" -> "objc_blockBlockVar::blockPostBad_2.dfe036ee6adc8f91e6e1d3ca5c8a9c9d_2" ;
"objc_blockBlockVar::blockPostOk_3.903f9a5c68adca5e567b8d339d58501c_1" [label="1: Start objc_blockBlockVar::blockPostOk_3\nFormals: x:int*\nLocals: \nCaptured: x:int* \n " color=yellow style=filled]
"objc_blockBlockVar.blockPostBad_2.9b5fc6c216acf1eebade4e80598bd292_3" -> "objc_blockBlockVar.blockPostBad_2.9b5fc6c216acf1eebade4e80598bd292_2" ;
"objc_blockBlockVar.blockPostOk_3.860b502fd4305d26ee26104b0e266b62_1" [label="1: Start objc_blockBlockVar.blockPostOk_3\nFormals: x:int*\nLocals: \nCaptured: x:int* \n " color=yellow style=filled]
"objc_blockBlockVar::blockPostOk_3.903f9a5c68adca5e567b8d339d58501c_1" -> "objc_blockBlockVar::blockPostOk_3.903f9a5c68adca5e567b8d339d58501c_3" ;
"objc_blockBlockVar::blockPostOk_3.903f9a5c68adca5e567b8d339d58501c_2" [label="2: Exit objc_blockBlockVar::blockPostOk_3 \n " color=yellow style=filled]
"objc_blockBlockVar.blockPostOk_3.860b502fd4305d26ee26104b0e266b62_1" -> "objc_blockBlockVar.blockPostOk_3.860b502fd4305d26ee26104b0e266b62_3" ;
"objc_blockBlockVar.blockPostOk_3.860b502fd4305d26ee26104b0e266b62_2" [label="2: Exit objc_blockBlockVar.blockPostOk_3 \n " color=yellow style=filled]
"objc_blockBlockVar::blockPostOk_3.903f9a5c68adca5e567b8d339d58501c_3" [label="3: Return Stmt \n n$20=*&x:int* [line 41, column 12]\n *&return:int*=n$20 [line 41, column 5]\n " shape="box"]
"objc_blockBlockVar.blockPostOk_3.860b502fd4305d26ee26104b0e266b62_3" [label="3: Return Stmt \n n$20=*&x:int* [line 41, column 12]\n *&return:int*=n$20 [line 41, column 5]\n " shape="box"]
"objc_blockBlockVar::blockPostOk_3.903f9a5c68adca5e567b8d339d58501c_3" -> "objc_blockBlockVar::blockPostOk_3.903f9a5c68adca5e567b8d339d58501c_2" ;
"objc_blockBlockVar::capturedNoNullDeref_5.f4e4e582375f09fa84b315ddc9e9d2fb_1" [label="1: Start objc_blockBlockVar::capturedNoNullDeref_5\nFormals: x:int*\nLocals: \nCaptured: x:int* \n " color=yellow style=filled]
"objc_blockBlockVar.blockPostOk_3.860b502fd4305d26ee26104b0e266b62_3" -> "objc_blockBlockVar.blockPostOk_3.860b502fd4305d26ee26104b0e266b62_2" ;
"objc_blockBlockVar.capturedNoNullDeref_5.05728b28cff98ce99554f69b47154636_1" [label="1: Start objc_blockBlockVar.capturedNoNullDeref_5\nFormals: x:int*\nLocals: \nCaptured: x:int* \n " color=yellow style=filled]
"objc_blockBlockVar::capturedNoNullDeref_5.f4e4e582375f09fa84b315ddc9e9d2fb_1" -> "objc_blockBlockVar::capturedNoNullDeref_5.f4e4e582375f09fa84b315ddc9e9d2fb_3" ;
"objc_blockBlockVar::capturedNoNullDeref_5.f4e4e582375f09fa84b315ddc9e9d2fb_2" [label="2: Exit objc_blockBlockVar::capturedNoNullDeref_5 \n " color=yellow style=filled]
"objc_blockBlockVar.capturedNoNullDeref_5.05728b28cff98ce99554f69b47154636_1" -> "objc_blockBlockVar.capturedNoNullDeref_5.05728b28cff98ce99554f69b47154636_3" ;
"objc_blockBlockVar.capturedNoNullDeref_5.05728b28cff98ce99554f69b47154636_2" [label="2: Exit objc_blockBlockVar.capturedNoNullDeref_5 \n " color=yellow style=filled]
"objc_blockBlockVar::capturedNoNullDeref_5.f4e4e582375f09fa84b315ddc9e9d2fb_3" [label="3: Return Stmt \n n$29=*&x:int* [line 58, column 13]\n n$30=*n$29:int [line 58, column 12]\n *&return:int=n$30 [line 58, column 5]\n " shape="box"]
"objc_blockBlockVar.capturedNoNullDeref_5.05728b28cff98ce99554f69b47154636_3" [label="3: Return Stmt \n n$29=*&x:int* [line 58, column 13]\n n$30=*n$29:int [line 58, column 12]\n *&return:int=n$30 [line 58, column 5]\n " shape="box"]
"objc_blockBlockVar::capturedNoNullDeref_5.f4e4e582375f09fa84b315ddc9e9d2fb_3" -> "objc_blockBlockVar::capturedNoNullDeref_5.f4e4e582375f09fa84b315ddc9e9d2fb_2" ;
"objc_blockBlockVar::capturedNullDeref_4.bc226164a990fded32aae0d7f88b48d2_1" [label="1: Start objc_blockBlockVar::capturedNullDeref_4\nFormals: x:int*\nLocals: \nCaptured: x:int* \n " color=yellow style=filled]
"objc_blockBlockVar.capturedNoNullDeref_5.05728b28cff98ce99554f69b47154636_3" -> "objc_blockBlockVar.capturedNoNullDeref_5.05728b28cff98ce99554f69b47154636_2" ;
"objc_blockBlockVar.capturedNullDeref_4.b2398d8a441f4c0e3ff276c92e1e2c2b_1" [label="1: Start objc_blockBlockVar.capturedNullDeref_4\nFormals: x:int*\nLocals: \nCaptured: x:int* \n " color=yellow style=filled]
"objc_blockBlockVar::capturedNullDeref_4.bc226164a990fded32aae0d7f88b48d2_1" -> "objc_blockBlockVar::capturedNullDeref_4.bc226164a990fded32aae0d7f88b48d2_3" ;
"objc_blockBlockVar::capturedNullDeref_4.bc226164a990fded32aae0d7f88b48d2_2" [label="2: Exit objc_blockBlockVar::capturedNullDeref_4 \n " color=yellow style=filled]
"objc_blockBlockVar.capturedNullDeref_4.b2398d8a441f4c0e3ff276c92e1e2c2b_1" -> "objc_blockBlockVar.capturedNullDeref_4.b2398d8a441f4c0e3ff276c92e1e2c2b_3" ;
"objc_blockBlockVar.capturedNullDeref_4.b2398d8a441f4c0e3ff276c92e1e2c2b_2" [label="2: Exit objc_blockBlockVar.capturedNullDeref_4 \n " color=yellow style=filled]
"objc_blockBlockVar::capturedNullDeref_4.bc226164a990fded32aae0d7f88b48d2_3" [label="3: Return Stmt \n n$24=*&x:int* [line 49, column 13]\n n$25=*n$24:int [line 49, column 12]\n *&return:int=n$25 [line 49, column 5]\n " shape="box"]
"objc_blockBlockVar.capturedNullDeref_4.b2398d8a441f4c0e3ff276c92e1e2c2b_3" [label="3: Return Stmt \n n$24=*&x:int* [line 49, column 13]\n n$25=*n$24:int [line 49, column 12]\n *&return:int=n$25 [line 49, column 5]\n " shape="box"]
"objc_blockBlockVar::capturedNullDeref_4.bc226164a990fded32aae0d7f88b48d2_3" -> "objc_blockBlockVar::capturedNullDeref_4.bc226164a990fded32aae0d7f88b48d2_2" ;
"objc_blockBlockVar::navigateToURLInBackground_1.12cd351936bfe9a1f532e264d27049bb_1" [label="1: Start objc_blockBlockVar::navigateToURLInBackground_1\nFormals: a:int b:int\nLocals: res:int \n " color=yellow style=filled]
"objc_blockBlockVar.capturedNullDeref_4.b2398d8a441f4c0e3ff276c92e1e2c2b_3" -> "objc_blockBlockVar.capturedNullDeref_4.b2398d8a441f4c0e3ff276c92e1e2c2b_2" ;
"objc_blockBlockVar.navigateToURLInBackground_1.a224aadacfbc237765d8a94e021a1593_1" [label="1: Start objc_blockBlockVar.navigateToURLInBackground_1\nFormals: a:int b:int\nLocals: res:int \n " color=yellow style=filled]
"objc_blockBlockVar::navigateToURLInBackground_1.12cd351936bfe9a1f532e264d27049bb_1" -> "objc_blockBlockVar::navigateToURLInBackground_1.12cd351936bfe9a1f532e264d27049bb_4" ;
"objc_blockBlockVar::navigateToURLInBackground_1.12cd351936bfe9a1f532e264d27049bb_2" [label="2: Exit objc_blockBlockVar::navigateToURLInBackground_1 \n " color=yellow style=filled]
"objc_blockBlockVar.navigateToURLInBackground_1.a224aadacfbc237765d8a94e021a1593_1" -> "objc_blockBlockVar.navigateToURLInBackground_1.a224aadacfbc237765d8a94e021a1593_4" ;
"objc_blockBlockVar.navigateToURLInBackground_1.a224aadacfbc237765d8a94e021a1593_2" [label="2: Exit objc_blockBlockVar.navigateToURLInBackground_1 \n " color=yellow style=filled]
"objc_blockBlockVar::navigateToURLInBackground_1.12cd351936bfe9a1f532e264d27049bb_3" [label="3: Return Stmt \n n$7=*&a:int [line 19, column 12]\n n$8=*&b:int [line 19, column 16]\n n$9=*&res:int [line 19, column 20]\n *&return:int=((n$7 + n$8) + n$9) [line 19, column 5]\n " shape="box"]
"objc_blockBlockVar.navigateToURLInBackground_1.a224aadacfbc237765d8a94e021a1593_3" [label="3: Return Stmt \n n$7=*&a:int [line 19, column 12]\n n$8=*&b:int [line 19, column 16]\n n$9=*&res:int [line 19, column 20]\n *&return:int=((n$7 + n$8) + n$9) [line 19, column 5]\n " shape="box"]
"objc_blockBlockVar::navigateToURLInBackground_1.12cd351936bfe9a1f532e264d27049bb_3" -> "objc_blockBlockVar::navigateToURLInBackground_1.12cd351936bfe9a1f532e264d27049bb_2" ;
"objc_blockBlockVar::navigateToURLInBackground_1.12cd351936bfe9a1f532e264d27049bb_4" [label="4: DeclStmt \n VARIABLE_DECLARED(res:int); [line 18, column 5]\n n$10=_fun_BlockVar::test() [line 18, column 15]\n *&res:int=n$10 [line 18, column 5]\n " shape="box"]
"objc_blockBlockVar.navigateToURLInBackground_1.a224aadacfbc237765d8a94e021a1593_3" -> "objc_blockBlockVar.navigateToURLInBackground_1.a224aadacfbc237765d8a94e021a1593_2" ;
"objc_blockBlockVar.navigateToURLInBackground_1.a224aadacfbc237765d8a94e021a1593_4" [label="4: DeclStmt \n VARIABLE_DECLARED(res:int); [line 18, column 5]\n n$10=_fun_BlockVar.test() [line 18, column 15]\n *&res:int=n$10 [line 18, column 5]\n " shape="box"]
"objc_blockBlockVar::navigateToURLInBackground_1.12cd351936bfe9a1f532e264d27049bb_4" -> "objc_blockBlockVar::navigateToURLInBackground_1.12cd351936bfe9a1f532e264d27049bb_3" ;
"navigateToURLInBackground#BlockVar#class.f4e64a7a224e4dae5096c3b731a4233e_1" [label="1: Start BlockVar::navigateToURLInBackground\nFormals: \nLocals: p:int* x:int addBlock:_fn_(*) \n " color=yellow style=filled]
"objc_blockBlockVar.navigateToURLInBackground_1.a224aadacfbc237765d8a94e021a1593_4" -> "objc_blockBlockVar.navigateToURLInBackground_1.a224aadacfbc237765d8a94e021a1593_3" ;
"navigateToURLInBackground#BlockVar#class.f4e64a7a224e4dae5096c3b731a4233e_1" [label="1: Start BlockVar.navigateToURLInBackground\nFormals: \nLocals: p:int* x:int addBlock:_fn_(*) \n " color=yellow style=filled]
"navigateToURLInBackground#BlockVar#class.f4e64a7a224e4dae5096c3b731a4233e_1" -> "navigateToURLInBackground#BlockVar#class.f4e64a7a224e4dae5096c3b731a4233e_12" ;
"navigateToURLInBackground#BlockVar#class.f4e64a7a224e4dae5096c3b731a4233e_2" [label="2: Exit BlockVar::navigateToURLInBackground \n " color=yellow style=filled]
"navigateToURLInBackground#BlockVar#class.f4e64a7a224e4dae5096c3b731a4233e_2" [label="2: Exit BlockVar.navigateToURLInBackground \n " color=yellow style=filled]
"navigateToURLInBackground#BlockVar#class.f4e64a7a224e4dae5096c3b731a4233e_3" [label="3: + \n " ]
@ -103,33 +103,33 @@ digraph cfg {
"navigateToURLInBackground#BlockVar#class.f4e64a7a224e4dae5096c3b731a4233e_11" -> "navigateToURLInBackground#BlockVar#class.f4e64a7a224e4dae5096c3b731a4233e_10" ;
"navigateToURLInBackground#BlockVar#class.f4e64a7a224e4dae5096c3b731a4233e_12" [label="12: DeclStmt \n VARIABLE_DECLARED(addBlock:_fn_(*)); [line 17, column 3]\n *&addBlock:_fn_(*)=(_fun_objc_blockBlockVar::navigateToURLInBackground_1) [line 17, column 3]\n " shape="box"]
"navigateToURLInBackground#BlockVar#class.f4e64a7a224e4dae5096c3b731a4233e_12" [label="12: DeclStmt \n VARIABLE_DECLARED(addBlock:_fn_(*)); [line 17, column 3]\n *&addBlock:_fn_(*)=(_fun_objc_blockBlockVar.navigateToURLInBackground_1) [line 17, column 3]\n " shape="box"]
"navigateToURLInBackground#BlockVar#class.f4e64a7a224e4dae5096c3b731a4233e_12" -> "navigateToURLInBackground#BlockVar#class.f4e64a7a224e4dae5096c3b731a4233e_11" ;
"test#BlockVar#class.79d88363beeb921609a605886abe817f_1" [label="1: Start BlockVar::test\nFormals: \nLocals: \n " color=yellow style=filled]
"test#BlockVar#class.79d88363beeb921609a605886abe817f_1" [label="1: Start BlockVar.test\nFormals: \nLocals: \n " color=yellow style=filled]
"test#BlockVar#class.79d88363beeb921609a605886abe817f_1" -> "test#BlockVar#class.79d88363beeb921609a605886abe817f_3" ;
"test#BlockVar#class.79d88363beeb921609a605886abe817f_2" [label="2: Exit BlockVar::test \n " color=yellow style=filled]
"test#BlockVar#class.79d88363beeb921609a605886abe817f_2" [label="2: Exit BlockVar.test \n " color=yellow style=filled]
"test#BlockVar#class.79d88363beeb921609a605886abe817f_3" [label="3: Return Stmt \n *&return:int=5 [line 13, column 3]\n " shape="box"]
"test#BlockVar#class.79d88363beeb921609a605886abe817f_3" -> "test#BlockVar#class.79d88363beeb921609a605886abe817f_2" ;
"blockPostBad#BlockVar#instance.60292f870cad8c1a5cefdbfe4194d6f9_1" [label="1: Start BlockVar::blockPostBad\nFormals: self:BlockVar*\nLocals: my_block:_fn_(*) x:int* \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 " color=yellow style=filled]
"blockPostBad#BlockVar#instance.60292f870cad8c1a5cefdbfe4194d6f9_1" -> "blockPostBad#BlockVar#instance.60292f870cad8c1a5cefdbfe4194d6f9_5" ;
"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 34, column 11]\n n$12=n$11() objc_block [line 34, column 11]\n n$13=*n$12:int [line 34, column 10]\n *&return:int=n$13 [line 34, column 3]\n " shape="box"]
"blockPostBad#BlockVar#instance.60292f870cad8c1a5cefdbfe4194d6f9_3" -> "blockPostBad#BlockVar#instance.60292f870cad8c1a5cefdbfe4194d6f9_2" ;
"blockPostBad#BlockVar#instance.60292f870cad8c1a5cefdbfe4194d6f9_4" [label="4: DeclStmt \n VARIABLE_DECLARED(my_block:_fn_(*)); [line 31, column 3]\n n$14=*&x:int* [line 31, column 28]\n *&my_block:_fn_(*)=(_fun_objc_blockBlockVar::blockPostBad_2,(n$14 &x:int*)) [line 31, column 3]\n " shape="box"]
"blockPostBad#BlockVar#instance.60292f870cad8c1a5cefdbfe4194d6f9_4" [label="4: DeclStmt \n VARIABLE_DECLARED(my_block:_fn_(*)); [line 31, column 3]\n n$14=*&x:int* [line 31, column 28]\n *&my_block:_fn_(*)=(_fun_objc_blockBlockVar.blockPostBad_2,(n$14 &x:int*)) [line 31, column 3]\n " shape="box"]
"blockPostBad#BlockVar#instance.60292f870cad8c1a5cefdbfe4194d6f9_4" -> "blockPostBad#BlockVar#instance.60292f870cad8c1a5cefdbfe4194d6f9_3" ;
@ -137,18 +137,18 @@ digraph cfg {
"blockPostBad#BlockVar#instance.60292f870cad8c1a5cefdbfe4194d6f9_5" -> "blockPostBad#BlockVar#instance.60292f870cad8c1a5cefdbfe4194d6f9_4" ;
"blockPostOk#BlockVar#instance.1bb64a946f8b169b31996644931ed82d_1" [label="1: Start BlockVar::blockPostOk\nFormals: self:BlockVar*\nLocals: my_block:_fn_(*) x:int* i:int \n " color=yellow style=filled]
"blockPostOk#BlockVar#instance.1bb64a946f8b169b31996644931ed82d_1" [label="1: Start BlockVar.blockPostOk\nFormals: self:BlockVar*\nLocals: my_block:_fn_(*) x:int* i:int \n " color=yellow style=filled]
"blockPostOk#BlockVar#instance.1bb64a946f8b169b31996644931ed82d_1" -> "blockPostOk#BlockVar#instance.1bb64a946f8b169b31996644931ed82d_6" ;
"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$16=*&my_block:_fn_(*) [line 43, column 11]\n n$17=n$16() objc_block [line 43, column 11]\n n$18=*n$17:int [line 43, column 10]\n *&return:int=n$18 [line 43, column 3]\n " shape="box"]
"blockPostOk#BlockVar#instance.1bb64a946f8b169b31996644931ed82d_3" -> "blockPostOk#BlockVar#instance.1bb64a946f8b169b31996644931ed82d_2" ;
"blockPostOk#BlockVar#instance.1bb64a946f8b169b31996644931ed82d_4" [label="4: DeclStmt \n VARIABLE_DECLARED(my_block:_fn_(*)); [line 40, column 3]\n n$19=*&x:int* [line 40, column 28]\n *&my_block:_fn_(*)=(_fun_objc_blockBlockVar::blockPostOk_3,(n$19 &x:int*)) [line 40, column 3]\n " shape="box"]
"blockPostOk#BlockVar#instance.1bb64a946f8b169b31996644931ed82d_4" [label="4: DeclStmt \n VARIABLE_DECLARED(my_block:_fn_(*)); [line 40, column 3]\n n$19=*&x:int* [line 40, column 28]\n *&my_block:_fn_(*)=(_fun_objc_blockBlockVar.blockPostOk_3,(n$19 &x:int*)) [line 40, column 3]\n " shape="box"]
"blockPostOk#BlockVar#instance.1bb64a946f8b169b31996644931ed82d_4" -> "blockPostOk#BlockVar#instance.1bb64a946f8b169b31996644931ed82d_3" ;
@ -160,11 +160,11 @@ digraph cfg {
"blockPostOk#BlockVar#instance.1bb64a946f8b169b31996644931ed82d_6" -> "blockPostOk#BlockVar#instance.1bb64a946f8b169b31996644931ed82d_5" ;
"capturedNoNullDeref#BlockVar#instance.ebe646baaabdc58144a5916780ee8c76_1" [label="1: Start BlockVar::capturedNoNullDeref\nFormals: self:BlockVar*\nLocals: my_block:_fn_(*) x:int* i:int \n " color=yellow style=filled]
"capturedNoNullDeref#BlockVar#instance.ebe646baaabdc58144a5916780ee8c76_1" [label="1: Start BlockVar.capturedNoNullDeref\nFormals: self:BlockVar*\nLocals: my_block:_fn_(*) x:int* i:int \n " color=yellow style=filled]
"capturedNoNullDeref#BlockVar#instance.ebe646baaabdc58144a5916780ee8c76_1" -> "capturedNoNullDeref#BlockVar#instance.ebe646baaabdc58144a5916780ee8c76_7" ;
"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$26=*&my_block:_fn_(*) [line 61, column 10]\n n$27=n$26() objc_block [line 61, column 10]\n *&return:int=n$27 [line 61, column 3]\n " shape="box"]
@ -175,7 +175,7 @@ digraph cfg {
"capturedNoNullDeref#BlockVar#instance.ebe646baaabdc58144a5916780ee8c76_4" -> "capturedNoNullDeref#BlockVar#instance.ebe646baaabdc58144a5916780ee8c76_3" ;
"capturedNoNullDeref#BlockVar#instance.ebe646baaabdc58144a5916780ee8c76_5" [label="5: DeclStmt \n VARIABLE_DECLARED(my_block:_fn_(*)); [line 57, column 3]\n n$28=*&x:int* [line 57, column 27]\n *&my_block:_fn_(*)=(_fun_objc_blockBlockVar::capturedNoNullDeref_5,(n$28 &x:int*)) [line 57, column 3]\n " shape="box"]
"capturedNoNullDeref#BlockVar#instance.ebe646baaabdc58144a5916780ee8c76_5" [label="5: DeclStmt \n VARIABLE_DECLARED(my_block:_fn_(*)); [line 57, column 3]\n n$28=*&x:int* [line 57, column 27]\n *&my_block:_fn_(*)=(_fun_objc_blockBlockVar.capturedNoNullDeref_5,(n$28 &x:int*)) [line 57, column 3]\n " shape="box"]
"capturedNoNullDeref#BlockVar#instance.ebe646baaabdc58144a5916780ee8c76_5" -> "capturedNoNullDeref#BlockVar#instance.ebe646baaabdc58144a5916780ee8c76_4" ;
@ -187,18 +187,18 @@ digraph cfg {
"capturedNoNullDeref#BlockVar#instance.ebe646baaabdc58144a5916780ee8c76_7" -> "capturedNoNullDeref#BlockVar#instance.ebe646baaabdc58144a5916780ee8c76_6" ;
"capturedNullDeref#BlockVar#instance.48c44f7ae26caf7a1ac522523ebac894_1" [label="1: Start BlockVar::capturedNullDeref\nFormals: self:BlockVar*\nLocals: my_block:_fn_(*) x:int* \n " color=yellow style=filled]
"capturedNullDeref#BlockVar#instance.48c44f7ae26caf7a1ac522523ebac894_1" [label="1: Start BlockVar.capturedNullDeref\nFormals: self:BlockVar*\nLocals: my_block:_fn_(*) x:int* \n " color=yellow style=filled]
"capturedNullDeref#BlockVar#instance.48c44f7ae26caf7a1ac522523ebac894_1" -> "capturedNullDeref#BlockVar#instance.48c44f7ae26caf7a1ac522523ebac894_5" ;
"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$21=*&my_block:_fn_(*) [line 51, column 10]\n n$22=n$21() objc_block [line 51, column 10]\n *&return:int=n$22 [line 51, column 3]\n " shape="box"]
"capturedNullDeref#BlockVar#instance.48c44f7ae26caf7a1ac522523ebac894_3" -> "capturedNullDeref#BlockVar#instance.48c44f7ae26caf7a1ac522523ebac894_2" ;
"capturedNullDeref#BlockVar#instance.48c44f7ae26caf7a1ac522523ebac894_4" [label="4: DeclStmt \n VARIABLE_DECLARED(my_block:_fn_(*)); [line 48, column 3]\n n$23=*&x:int* [line 48, column 27]\n *&my_block:_fn_(*)=(_fun_objc_blockBlockVar::capturedNullDeref_4,(n$23 &x:int*)) [line 48, column 3]\n " shape="box"]
"capturedNullDeref#BlockVar#instance.48c44f7ae26caf7a1ac522523ebac894_4" [label="4: DeclStmt \n VARIABLE_DECLARED(my_block:_fn_(*)); [line 48, column 3]\n n$23=*&x:int* [line 48, column 27]\n *&my_block:_fn_(*)=(_fun_objc_blockBlockVar.capturedNullDeref_4,(n$23 &x:int*)) [line 48, column 3]\n " shape="box"]
"capturedNullDeref#BlockVar#instance.48c44f7ae26caf7a1ac522523ebac894_4" -> "capturedNullDeref#BlockVar#instance.48c44f7ae26caf7a1ac522523ebac894_3" ;

@ -1,28 +1,28 @@
/* @generated */
digraph cfg {
"objc_blockB::f_1(class B).5b7adcd944bbfcb88a674af924a1733e_1" [label="1: Start objc_blockB::f_1\nFormals: self:B* const \nLocals: \nCaptured: self:B* const \n " color=yellow style=filled]
"objc_blockB.f_1(class B).c1c611f4be5cea3fe56d67e34da1fffd_1" [label="1: Start objc_blockB.f_1\nFormals: self:B* const \nLocals: \nCaptured: self:B* const \n " color=yellow style=filled]
"objc_blockB::f_1(class B).5b7adcd944bbfcb88a674af924a1733e_1" -> "objc_blockB::f_1(class B).5b7adcd944bbfcb88a674af924a1733e_3" ;
"objc_blockB::f_1(class B).5b7adcd944bbfcb88a674af924a1733e_2" [label="2: Exit objc_blockB::f_1 \n " color=yellow style=filled]
"objc_blockB.f_1(class B).c1c611f4be5cea3fe56d67e34da1fffd_1" -> "objc_blockB.f_1(class B).c1c611f4be5cea3fe56d67e34da1fffd_3" ;
"objc_blockB.f_1(class B).c1c611f4be5cea3fe56d67e34da1fffd_2" [label="2: Exit objc_blockB.f_1 \n " color=yellow style=filled]
"objc_blockB::f_1(class B).5b7adcd944bbfcb88a674af924a1733e_3" [label="3: BinaryOperatorStmt: Assign \n n$3=*&self:B* [line 25, column 9]\n *n$3.x:int=5 [line 25, column 9]\n " shape="box"]
"objc_blockB.f_1(class B).c1c611f4be5cea3fe56d67e34da1fffd_3" [label="3: BinaryOperatorStmt: Assign \n n$3=*&self:B* [line 25, column 9]\n *n$3.x:int=5 [line 25, column 9]\n " shape="box"]
"objc_blockB::f_1(class B).5b7adcd944bbfcb88a674af924a1733e_3" -> "objc_blockB::f_1(class B).5b7adcd944bbfcb88a674af924a1733e_2" ;
"f#B#instance.f1371ff5e7f410d3df6a2e71ff0a814e_1" [label="1: Start B::f\nFormals: self:B*\nLocals: \n " color=yellow style=filled]
"objc_blockB.f_1(class B).c1c611f4be5cea3fe56d67e34da1fffd_3" -> "objc_blockB.f_1(class B).c1c611f4be5cea3fe56d67e34da1fffd_2" ;
"f#B#instance.f1371ff5e7f410d3df6a2e71ff0a814e_1" [label="1: Start B.f\nFormals: self:B*\nLocals: \n " color=yellow style=filled]
"f#B#instance.f1371ff5e7f410d3df6a2e71ff0a814e_1" -> "f#B#instance.f1371ff5e7f410d3df6a2e71ff0a814e_4" ;
"f#B#instance.f1371ff5e7f410d3df6a2e71ff0a814e_2" [label="2: Exit B::f \n " color=yellow style=filled]
"f#B#instance.f1371ff5e7f410d3df6a2e71ff0a814e_2" [label="2: Exit B.f \n " color=yellow style=filled]
"f#B#instance.f1371ff5e7f410d3df6a2e71ff0a814e_3" [label="3: Return Stmt \n n$0=*&self:B* [line 27, column 10]\n n$1=*n$0.y:int [line 27, column 10]\n *&return:int=n$1 [line 27, column 3]\n " shape="box"]
"f#B#instance.f1371ff5e7f410d3df6a2e71ff0a814e_3" -> "f#B#instance.f1371ff5e7f410d3df6a2e71ff0a814e_2" ;
"f#B#instance.f1371ff5e7f410d3df6a2e71ff0a814e_4" [label="4: Message Call: foo:and: \n n$4=*&self:B* [line 23, column 10]\n n$5=*n$4.h:int [line 23, column 10]\n n$2=*&self:B* const [line 24, column 11]\n n$6=_fun_B::foo:and:(n$5:int,(_fun_objc_blockB::f_1,(n$2 &self:B* const )):_fn_(*)) block_params [line 23, column 3]\n " shape="box"]
"f#B#instance.f1371ff5e7f410d3df6a2e71ff0a814e_4" [label="4: Message Call: foo:and: \n n$4=*&self:B* [line 23, column 10]\n n$5=*n$4.h:int [line 23, column 10]\n n$2=*&self:B* const [line 24, column 11]\n n$6=_fun_B.foo:and:(n$5:int,(_fun_objc_blockB.f_1,(n$2 &self:B* const )):_fn_(*)) block_params [line 23, column 3]\n " shape="box"]
"f#B#instance.f1371ff5e7f410d3df6a2e71ff0a814e_4" -> "f#B#instance.f1371ff5e7f410d3df6a2e71ff0a814e_3" ;

@ -1,81 +1,81 @@
/* @generated */
digraph cfg {
"objc_blockMyBlock::array_1(struct objc_object).df8ecbd6344ac89a5113acabcc96a39a_1" [label="1: Start objc_blockMyBlock::array_1\nFormals: object:objc_object* idx:unsigned long stop:_Bool*\nLocals: ShouldStop:int \n " color=yellow style=filled]
"objc_blockMyBlock.array_1(struct objc_object).9201a75f2c4d4a550effc590be108f97_1" [label="1: Start objc_blockMyBlock.array_1\nFormals: object:objc_object* idx:unsigned long stop:_Bool*\nLocals: ShouldStop:int \n " color=yellow style=filled]
"objc_blockMyBlock::array_1(struct objc_object).df8ecbd6344ac89a5113acabcc96a39a_1" -> "objc_blockMyBlock::array_1(struct objc_object).df8ecbd6344ac89a5113acabcc96a39a_5" ;
"objc_blockMyBlock::array_1(struct objc_object).df8ecbd6344ac89a5113acabcc96a39a_1" -> "objc_blockMyBlock::array_1(struct objc_object).df8ecbd6344ac89a5113acabcc96a39a_6" ;
"objc_blockMyBlock::array_1(struct objc_object).df8ecbd6344ac89a5113acabcc96a39a_2" [label="2: Exit objc_blockMyBlock::array_1 \n " color=yellow style=filled]
"objc_blockMyBlock.array_1(struct objc_object).9201a75f2c4d4a550effc590be108f97_1" -> "objc_blockMyBlock.array_1(struct objc_object).9201a75f2c4d4a550effc590be108f97_5" ;
"objc_blockMyBlock.array_1(struct objc_object).9201a75f2c4d4a550effc590be108f97_1" -> "objc_blockMyBlock.array_1(struct objc_object).9201a75f2c4d4a550effc590be108f97_6" ;
"objc_blockMyBlock.array_1(struct objc_object).9201a75f2c4d4a550effc590be108f97_2" [label="2: Exit objc_blockMyBlock.array_1 \n " color=yellow style=filled]
"objc_blockMyBlock::array_1(struct objc_object).df8ecbd6344ac89a5113acabcc96a39a_3" [label="3: + \n " ]
"objc_blockMyBlock.array_1(struct objc_object).9201a75f2c4d4a550effc590be108f97_3" [label="3: + \n " ]
"objc_blockMyBlock::array_1(struct objc_object).df8ecbd6344ac89a5113acabcc96a39a_3" -> "objc_blockMyBlock::array_1(struct objc_object).df8ecbd6344ac89a5113acabcc96a39a_4" ;
"objc_blockMyBlock::array_1(struct objc_object).df8ecbd6344ac89a5113acabcc96a39a_4" [label="4: between_join_and_exit \n " shape="box"]
"objc_blockMyBlock.array_1(struct objc_object).9201a75f2c4d4a550effc590be108f97_3" -> "objc_blockMyBlock.array_1(struct objc_object).9201a75f2c4d4a550effc590be108f97_4" ;
"objc_blockMyBlock.array_1(struct objc_object).9201a75f2c4d4a550effc590be108f97_4" [label="4: between_join_and_exit \n " shape="box"]
"objc_blockMyBlock::array_1(struct objc_object).df8ecbd6344ac89a5113acabcc96a39a_4" -> "objc_blockMyBlock::array_1(struct objc_object).df8ecbd6344ac89a5113acabcc96a39a_2" ;
"objc_blockMyBlock::array_1(struct objc_object).df8ecbd6344ac89a5113acabcc96a39a_5" [label="5: Prune (true branch, if) \n n$1=*&ShouldStop:int [line 24, column 9]\n PRUNE(n$1, true); [line 24, column 9]\n " shape="invhouse"]
"objc_blockMyBlock.array_1(struct objc_object).9201a75f2c4d4a550effc590be108f97_4" -> "objc_blockMyBlock.array_1(struct objc_object).9201a75f2c4d4a550effc590be108f97_2" ;
"objc_blockMyBlock.array_1(struct objc_object).9201a75f2c4d4a550effc590be108f97_5" [label="5: Prune (true branch, if) \n n$1=*&ShouldStop:int [line 24, column 9]\n PRUNE(n$1, true); [line 24, column 9]\n " shape="invhouse"]
"objc_blockMyBlock::array_1(struct objc_object).df8ecbd6344ac89a5113acabcc96a39a_5" -> "objc_blockMyBlock::array_1(struct objc_object).df8ecbd6344ac89a5113acabcc96a39a_7" ;
"objc_blockMyBlock::array_1(struct objc_object).df8ecbd6344ac89a5113acabcc96a39a_6" [label="6: Prune (false branch, if) \n n$1=*&ShouldStop:int [line 24, column 9]\n PRUNE(!n$1, false); [line 24, column 9]\n " shape="invhouse"]
"objc_blockMyBlock.array_1(struct objc_object).9201a75f2c4d4a550effc590be108f97_5" -> "objc_blockMyBlock.array_1(struct objc_object).9201a75f2c4d4a550effc590be108f97_7" ;
"objc_blockMyBlock.array_1(struct objc_object).9201a75f2c4d4a550effc590be108f97_6" [label="6: Prune (false branch, if) \n n$1=*&ShouldStop:int [line 24, column 9]\n PRUNE(!n$1, false); [line 24, column 9]\n " shape="invhouse"]
"objc_blockMyBlock::array_1(struct objc_object).df8ecbd6344ac89a5113acabcc96a39a_6" -> "objc_blockMyBlock::array_1(struct objc_object).df8ecbd6344ac89a5113acabcc96a39a_3" ;
"objc_blockMyBlock::array_1(struct objc_object).df8ecbd6344ac89a5113acabcc96a39a_7" [label="7: BinaryOperatorStmt: Assign \n n$2=*&stop:_Bool* [line 25, column 8]\n *n$2:_Bool=1 [line 25, column 7]\n " shape="box"]
"objc_blockMyBlock.array_1(struct objc_object).9201a75f2c4d4a550effc590be108f97_6" -> "objc_blockMyBlock.array_1(struct objc_object).9201a75f2c4d4a550effc590be108f97_3" ;
"objc_blockMyBlock.array_1(struct objc_object).9201a75f2c4d4a550effc590be108f97_7" [label="7: BinaryOperatorStmt: Assign \n n$2=*&stop:_Bool* [line 25, column 8]\n *n$2:_Bool=1 [line 25, column 7]\n " shape="box"]
"objc_blockMyBlock::array_1(struct objc_object).df8ecbd6344ac89a5113acabcc96a39a_7" -> "objc_blockMyBlock::array_1(struct objc_object).df8ecbd6344ac89a5113acabcc96a39a_3" ;
"objc_blockMyBlock::array_trans_2(struct objc_object).682ea63855d347615885efa9ad25d5ed_1" [label="1: Start objc_blockMyBlock::array_trans_2\nFormals: object:objc_object* idx:unsigned long stop:_Bool*\nLocals: ShouldStop:int \n " color=yellow style=filled]
"objc_blockMyBlock.array_1(struct objc_object).9201a75f2c4d4a550effc590be108f97_7" -> "objc_blockMyBlock.array_1(struct objc_object).9201a75f2c4d4a550effc590be108f97_3" ;
"objc_blockMyBlock.array_trans_2(struct objc_object).55e73c34c60839a5c2b8abffd7dcfc46_1" [label="1: Start objc_blockMyBlock.array_trans_2\nFormals: object:objc_object* idx:unsigned long stop:_Bool*\nLocals: ShouldStop:int \n " color=yellow style=filled]
"objc_blockMyBlock::array_trans_2(struct objc_object).682ea63855d347615885efa9ad25d5ed_1" -> "objc_blockMyBlock::array_trans_2(struct objc_object).682ea63855d347615885efa9ad25d5ed_5" ;
"objc_blockMyBlock::array_trans_2(struct objc_object).682ea63855d347615885efa9ad25d5ed_1" -> "objc_blockMyBlock::array_trans_2(struct objc_object).682ea63855d347615885efa9ad25d5ed_6" ;
"objc_blockMyBlock::array_trans_2(struct objc_object).682ea63855d347615885efa9ad25d5ed_2" [label="2: Exit objc_blockMyBlock::array_trans_2 \n " color=yellow style=filled]
"objc_blockMyBlock.array_trans_2(struct objc_object).55e73c34c60839a5c2b8abffd7dcfc46_1" -> "objc_blockMyBlock.array_trans_2(struct objc_object).55e73c34c60839a5c2b8abffd7dcfc46_5" ;
"objc_blockMyBlock.array_trans_2(struct objc_object).55e73c34c60839a5c2b8abffd7dcfc46_1" -> "objc_blockMyBlock.array_trans_2(struct objc_object).55e73c34c60839a5c2b8abffd7dcfc46_6" ;
"objc_blockMyBlock.array_trans_2(struct objc_object).55e73c34c60839a5c2b8abffd7dcfc46_2" [label="2: Exit objc_blockMyBlock.array_trans_2 \n " color=yellow style=filled]
"objc_blockMyBlock::array_trans_2(struct objc_object).682ea63855d347615885efa9ad25d5ed_3" [label="3: + \n " ]
"objc_blockMyBlock.array_trans_2(struct objc_object).55e73c34c60839a5c2b8abffd7dcfc46_3" [label="3: + \n " ]
"objc_blockMyBlock::array_trans_2(struct objc_object).682ea63855d347615885efa9ad25d5ed_3" -> "objc_blockMyBlock::array_trans_2(struct objc_object).682ea63855d347615885efa9ad25d5ed_4" ;
"objc_blockMyBlock::array_trans_2(struct objc_object).682ea63855d347615885efa9ad25d5ed_4" [label="4: between_join_and_exit \n " shape="box"]
"objc_blockMyBlock.array_trans_2(struct objc_object).55e73c34c60839a5c2b8abffd7dcfc46_3" -> "objc_blockMyBlock.array_trans_2(struct objc_object).55e73c34c60839a5c2b8abffd7dcfc46_4" ;
"objc_blockMyBlock.array_trans_2(struct objc_object).55e73c34c60839a5c2b8abffd7dcfc46_4" [label="4: between_join_and_exit \n " shape="box"]
"objc_blockMyBlock::array_trans_2(struct objc_object).682ea63855d347615885efa9ad25d5ed_4" -> "objc_blockMyBlock::array_trans_2(struct objc_object).682ea63855d347615885efa9ad25d5ed_2" ;
"objc_blockMyBlock::array_trans_2(struct objc_object).682ea63855d347615885efa9ad25d5ed_5" [label="5: Prune (true branch, if) \n n$32=*&ShouldStop:int [line 41, column 13]\n PRUNE(n$32, true); [line 41, column 13]\n " shape="invhouse"]
"objc_blockMyBlock.array_trans_2(struct objc_object).55e73c34c60839a5c2b8abffd7dcfc46_4" -> "objc_blockMyBlock.array_trans_2(struct objc_object).55e73c34c60839a5c2b8abffd7dcfc46_2" ;
"objc_blockMyBlock.array_trans_2(struct objc_object).55e73c34c60839a5c2b8abffd7dcfc46_5" [label="5: Prune (true branch, if) \n n$32=*&ShouldStop:int [line 41, column 13]\n PRUNE(n$32, true); [line 41, column 13]\n " shape="invhouse"]
"objc_blockMyBlock::array_trans_2(struct objc_object).682ea63855d347615885efa9ad25d5ed_5" -> "objc_blockMyBlock::array_trans_2(struct objc_object).682ea63855d347615885efa9ad25d5ed_7" ;
"objc_blockMyBlock::array_trans_2(struct objc_object).682ea63855d347615885efa9ad25d5ed_6" [label="6: Prune (false branch, if) \n n$32=*&ShouldStop:int [line 41, column 13]\n PRUNE(!n$32, false); [line 41, column 13]\n " shape="invhouse"]
"objc_blockMyBlock.array_trans_2(struct objc_object).55e73c34c60839a5c2b8abffd7dcfc46_5" -> "objc_blockMyBlock.array_trans_2(struct objc_object).55e73c34c60839a5c2b8abffd7dcfc46_7" ;
"objc_blockMyBlock.array_trans_2(struct objc_object).55e73c34c60839a5c2b8abffd7dcfc46_6" [label="6: Prune (false branch, if) \n n$32=*&ShouldStop:int [line 41, column 13]\n PRUNE(!n$32, false); [line 41, column 13]\n " shape="invhouse"]
"objc_blockMyBlock::array_trans_2(struct objc_object).682ea63855d347615885efa9ad25d5ed_6" -> "objc_blockMyBlock::array_trans_2(struct objc_object).682ea63855d347615885efa9ad25d5ed_3" ;
"objc_blockMyBlock::array_trans_2(struct objc_object).682ea63855d347615885efa9ad25d5ed_7" [label="7: BinaryOperatorStmt: Assign \n n$33=*&stop:_Bool* [line 42, column 12]\n *n$33:_Bool=1 [line 42, column 11]\n " shape="box"]
"objc_blockMyBlock.array_trans_2(struct objc_object).55e73c34c60839a5c2b8abffd7dcfc46_6" -> "objc_blockMyBlock.array_trans_2(struct objc_object).55e73c34c60839a5c2b8abffd7dcfc46_3" ;
"objc_blockMyBlock.array_trans_2(struct objc_object).55e73c34c60839a5c2b8abffd7dcfc46_7" [label="7: BinaryOperatorStmt: Assign \n n$33=*&stop:_Bool* [line 42, column 12]\n *n$33:_Bool=1 [line 42, column 11]\n " shape="box"]
"objc_blockMyBlock::array_trans_2(struct objc_object).682ea63855d347615885efa9ad25d5ed_7" -> "objc_blockMyBlock::array_trans_2(struct objc_object).682ea63855d347615885efa9ad25d5ed_3" ;
"array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_1" [label="1: Start MyBlock::array\nFormals: self:MyBlock*\nLocals: a:NSArray* \n " color=yellow style=filled]
"objc_blockMyBlock.array_trans_2(struct objc_object).55e73c34c60839a5c2b8abffd7dcfc46_7" -> "objc_blockMyBlock.array_trans_2(struct objc_object).55e73c34c60839a5c2b8abffd7dcfc46_3" ;
"array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_1" [label="1: Start MyBlock.array\nFormals: self:MyBlock*\nLocals: a:NSArray* \n " color=yellow style=filled]
"array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_1" -> "array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_4" ;
"array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_2" [label="2: Exit MyBlock::array \n " color=yellow style=filled]
"array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_2" [label="2: Exit MyBlock.array \n " color=yellow style=filled]
"array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_3" [label="3: Message Call: enumerateObjectsUsingBlock: \n n$5=*&a:NSArray* [line 19, column 4]\n n$6=_fun_NSArray::enumerateObjectsUsingBlock:(n$5:NSArray*,(_fun_objc_blockMyBlock::array_1):_fn_(*)) block_params virtual [line 19, column 3]\n " shape="box"]
"array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_3" [label="3: Message Call: enumerateObjectsUsingBlock: \n n$5=*&a:NSArray* [line 19, column 4]\n n$6=_fun_NSArray.enumerateObjectsUsingBlock:(n$5:NSArray*,(_fun_objc_blockMyBlock.array_1):_fn_(*)) block_params virtual [line 19, column 3]\n " shape="box"]
"array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_3" -> "array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_2" ;
"array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_4" [label="4: DeclStmt \n VARIABLE_DECLARED(a:NSArray*); [line 18, column 3]\n n$7=_fun___objc_alloc_no_fail(sizeof(t=NSArray):unsigned long) [line 18, column 17]\n n$8=_fun_NSArray::init(n$7:NSArray*) virtual [line 18, column 16]\n *&a:NSArray*=n$8 [line 18, column 3]\n " shape="box"]
"array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_4" [label="4: DeclStmt \n VARIABLE_DECLARED(a:NSArray*); [line 18, column 3]\n n$7=_fun___objc_alloc_no_fail(sizeof(t=NSArray):unsigned long) [line 18, column 17]\n n$8=_fun_NSArray.init(n$7:NSArray*) virtual [line 18, column 16]\n *&a:NSArray*=n$8 [line 18, column 3]\n " shape="box"]
"array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_4" -> "array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_3" ;
"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_1" [label="1: Start MyBlock::array_trans\nFormals: self:MyBlock*\nLocals: idx:unsigned long object:objc_object* stop:_Bool* enumerateObjectsUsingBlock:_fn_(*) objects:NSArray* a:NSArray* \n " color=yellow style=filled]
"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_1" [label="1: Start MyBlock.array_trans\nFormals: self:MyBlock*\nLocals: idx:unsigned long object:objc_object* stop:_Bool* enumerateObjectsUsingBlock:_fn_(*) objects:NSArray* a:NSArray* \n " color=yellow style=filled]
"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_1" -> "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_20" ;
"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$9=*&stop:_Bool* [line 55, column 8]\n n$10=_fun_free(n$9:void*) [line 55, column 3]\n " shape="box"]
@ -94,7 +94,7 @@ digraph cfg {
"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_6" -> "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_4" ;
"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_7" [label="7: BinaryOperatorStmt: LT \n n$12=*&idx:unsigned long [line 48, column 28]\n n$13=*&objects:NSArray* [line 48, column 34]\n n$14=_fun_NSArray::count(n$13:NSArray*) [line 48, column 42]\n " shape="box"]
"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_7" [label="7: BinaryOperatorStmt: LT \n n$12=*&idx:unsigned long [line 48, column 28]\n n$13=*&objects:NSArray* [line 48, column 34]\n n$14=_fun_NSArray.count(n$13:NSArray*) [line 48, column 42]\n " shape="box"]
"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_7" -> "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_8" ;
@ -128,7 +128,7 @@ digraph cfg {
"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_14" -> "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_11" ;
"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_15" [label="15: DeclStmt \n VARIABLE_DECLARED(object:objc_object*); [line 50, column 5]\n n$26=*&objects:NSArray* [line 50, column 17]\n n$25=*&idx:unsigned long [line 50, column 25]\n n$27=_fun_NSArray::objectAtIndexedSubscript:(n$26:NSArray*,n$25:unsigned long) virtual [line 50, column 17]\n *&object:objc_object*=n$27 [line 50, column 5]\n " shape="box"]
"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_15" [label="15: DeclStmt \n VARIABLE_DECLARED(object:objc_object*); [line 50, column 5]\n n$26=*&objects:NSArray* [line 50, column 17]\n n$25=*&idx:unsigned long [line 50, column 25]\n n$27=_fun_NSArray.objectAtIndexedSubscript:(n$26:NSArray*,n$25:unsigned long) virtual [line 50, column 17]\n *&object:objc_object*=n$27 [line 50, column 5]\n " shape="box"]
"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_15" -> "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_14" ;
@ -140,7 +140,7 @@ digraph cfg {
"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_17" -> "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_16" ;
"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_18" [label="18: DeclStmt \n VARIABLE_DECLARED(enumerateObjectsUsingBlock:_fn_(*)); [line 37, column 3]\n *&enumerateObjectsUsingBlock:_fn_(*)=(_fun_objc_blockMyBlock::array_trans_2) [line 37, column 3]\n " shape="box"]
"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_18" [label="18: DeclStmt \n VARIABLE_DECLARED(enumerateObjectsUsingBlock:_fn_(*)); [line 37, column 3]\n *&enumerateObjectsUsingBlock:_fn_(*)=(_fun_objc_blockMyBlock.array_trans_2) [line 37, column 3]\n " shape="box"]
"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_18" -> "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_17" ;
@ -148,7 +148,7 @@ digraph cfg {
"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_19" -> "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_18" ;
"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_20" [label="20: DeclStmt \n VARIABLE_DECLARED(a:NSArray*); [line 32, column 3]\n n$37=_fun___objc_alloc_no_fail(sizeof(t=NSArray):unsigned long) [line 32, column 17]\n n$38=_fun_NSArray::init(n$37:NSArray*) virtual [line 32, column 16]\n *&a:NSArray*=n$38 [line 32, column 3]\n " shape="box"]
"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_20" [label="20: DeclStmt \n VARIABLE_DECLARED(a:NSArray*); [line 32, column 3]\n n$37=_fun___objc_alloc_no_fail(sizeof(t=NSArray):unsigned long) [line 32, column 17]\n n$38=_fun_NSArray.init(n$37:NSArray*) virtual [line 32, column 16]\n *&a:NSArray*=n$38 [line 32, column 3]\n " shape="box"]
"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_20" -> "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_19" ;

@ -1,21 +1,21 @@
/* @generated */
digraph cfg {
"objc_blockMy_manager::m_1.bc98a1b6d7bd8cbef60672af337939a3_1" [label="1: Start objc_blockMy_manager::m_1\nFormals: z:int\nLocals: \nCaptured: z:int \n " color=yellow style=filled]
"objc_blockMy_manager.m_1.d933a5f9ad39365b735134c5f5009061_1" [label="1: Start objc_blockMy_manager.m_1\nFormals: z:int\nLocals: \nCaptured: z:int \n " color=yellow style=filled]
"objc_blockMy_manager::m_1.bc98a1b6d7bd8cbef60672af337939a3_1" -> "objc_blockMy_manager::m_1.bc98a1b6d7bd8cbef60672af337939a3_3" ;
"objc_blockMy_manager::m_1.bc98a1b6d7bd8cbef60672af337939a3_2" [label="2: Exit objc_blockMy_manager::m_1 \n " color=yellow style=filled]
"objc_blockMy_manager.m_1.d933a5f9ad39365b735134c5f5009061_1" -> "objc_blockMy_manager.m_1.d933a5f9ad39365b735134c5f5009061_3" ;
"objc_blockMy_manager.m_1.d933a5f9ad39365b735134c5f5009061_2" [label="2: Exit objc_blockMy_manager.m_1 \n " color=yellow style=filled]
"objc_blockMy_manager::m_1.bc98a1b6d7bd8cbef60672af337939a3_3" [label="3: BinaryOperatorStmt: Assign \n n$8=*&z:int [line 24, column 9]\n *&#GB<codetoanalyze/objc/shared/block/block_no_args.m>$g:int=(n$8 + 3) [line 24, column 5]\n " shape="box"]
"objc_blockMy_manager.m_1.d933a5f9ad39365b735134c5f5009061_3" [label="3: BinaryOperatorStmt: Assign \n n$8=*&z:int [line 24, column 9]\n *&#GB<codetoanalyze/objc/shared/block/block_no_args.m>$g:int=(n$8 + 3) [line 24, column 5]\n " shape="box"]
"objc_blockMy_manager::m_1.bc98a1b6d7bd8cbef60672af337939a3_3" -> "objc_blockMy_manager::m_1.bc98a1b6d7bd8cbef60672af337939a3_2" ;
"m#My_manager#instance.e773f849d062cb9801497b62f5c98f5e_1" [label="1: Start My_manager::m\nFormals: self:My_manager*\nLocals: p:int* z:int b:_fn_(*) \n " color=yellow style=filled]
"objc_blockMy_manager.m_1.d933a5f9ad39365b735134c5f5009061_3" -> "objc_blockMy_manager.m_1.d933a5f9ad39365b735134c5f5009061_2" ;
"m#My_manager#instance.e773f849d062cb9801497b62f5c98f5e_1" [label="1: Start My_manager.m\nFormals: self:My_manager*\nLocals: p:int* z:int b:_fn_(*) \n " color=yellow style=filled]
"m#My_manager#instance.e773f849d062cb9801497b62f5c98f5e_1" -> "m#My_manager#instance.e773f849d062cb9801497b62f5c98f5e_14" ;
"m#My_manager#instance.e773f849d062cb9801497b62f5c98f5e_2" [label="2: Exit My_manager::m \n " color=yellow style=filled]
"m#My_manager#instance.e773f849d062cb9801497b62f5c98f5e_2" [label="2: Exit My_manager.m \n " color=yellow style=filled]
"m#My_manager#instance.e773f849d062cb9801497b62f5c98f5e_3" [label="3: + \n " ]
@ -55,7 +55,7 @@ digraph cfg {
"m#My_manager#instance.e773f849d062cb9801497b62f5c98f5e_11" -> "m#My_manager#instance.e773f849d062cb9801497b62f5c98f5e_10" ;
"m#My_manager#instance.e773f849d062cb9801497b62f5c98f5e_12" [label="12: BinaryOperatorStmt: Assign \n n$7=*&z:int [line 23, column 7]\n *&b:_fn_(*)=(_fun_objc_blockMy_manager::m_1,(n$7 &z:int)) [line 23, column 3]\n " shape="box"]
"m#My_manager#instance.e773f849d062cb9801497b62f5c98f5e_12" [label="12: BinaryOperatorStmt: Assign \n n$7=*&z:int [line 23, column 7]\n *&b:_fn_(*)=(_fun_objc_blockMy_manager.m_1,(n$7 &z:int)) [line 23, column 3]\n " shape="box"]
"m#My_manager#instance.e773f849d062cb9801497b62f5c98f5e_12" -> "m#My_manager#instance.e773f849d062cb9801497b62f5c98f5e_11" ;

@ -1,38 +1,38 @@
/* @generated */
digraph cfg {
"objc_blockMy_manager::blockReleaseNoLeak_1(struct CGImage).84ad49561aaa89b84a792baf34151a77_1" [label="1: Start objc_blockMy_manager::blockReleaseNoLeak_1\nFormals: newImage:CGImage* a:int\nLocals: \nCaptured: newImage:CGImage* \n " color=yellow style=filled]
"objc_blockMy_manager.blockReleaseNoLeak_1(struct CGImage).d2039f8bbb0530575d5ff258d059d268_1" [label="1: Start objc_blockMy_manager.blockReleaseNoLeak_1\nFormals: newImage:CGImage* a:int\nLocals: \nCaptured: newImage:CGImage* \n " color=yellow style=filled]
"objc_blockMy_manager::blockReleaseNoLeak_1(struct CGImage).84ad49561aaa89b84a792baf34151a77_1" -> "objc_blockMy_manager::blockReleaseNoLeak_1(struct CGImage).84ad49561aaa89b84a792baf34151a77_5" ;
"objc_blockMy_manager::blockReleaseNoLeak_1(struct CGImage).84ad49561aaa89b84a792baf34151a77_1" -> "objc_blockMy_manager::blockReleaseNoLeak_1(struct CGImage).84ad49561aaa89b84a792baf34151a77_6" ;
"objc_blockMy_manager::blockReleaseNoLeak_1(struct CGImage).84ad49561aaa89b84a792baf34151a77_2" [label="2: Exit objc_blockMy_manager::blockReleaseNoLeak_1 \n " color=yellow style=filled]
"objc_blockMy_manager.blockReleaseNoLeak_1(struct CGImage).d2039f8bbb0530575d5ff258d059d268_1" -> "objc_blockMy_manager.blockReleaseNoLeak_1(struct CGImage).d2039f8bbb0530575d5ff258d059d268_5" ;
"objc_blockMy_manager.blockReleaseNoLeak_1(struct CGImage).d2039f8bbb0530575d5ff258d059d268_1" -> "objc_blockMy_manager.blockReleaseNoLeak_1(struct CGImage).d2039f8bbb0530575d5ff258d059d268_6" ;
"objc_blockMy_manager.blockReleaseNoLeak_1(struct CGImage).d2039f8bbb0530575d5ff258d059d268_2" [label="2: Exit objc_blockMy_manager.blockReleaseNoLeak_1 \n " color=yellow style=filled]
"objc_blockMy_manager::blockReleaseNoLeak_1(struct CGImage).84ad49561aaa89b84a792baf34151a77_3" [label="3: + \n " ]
"objc_blockMy_manager.blockReleaseNoLeak_1(struct CGImage).d2039f8bbb0530575d5ff258d059d268_3" [label="3: + \n " ]
"objc_blockMy_manager::blockReleaseNoLeak_1(struct CGImage).84ad49561aaa89b84a792baf34151a77_3" -> "objc_blockMy_manager::blockReleaseNoLeak_1(struct CGImage).84ad49561aaa89b84a792baf34151a77_4" ;
"objc_blockMy_manager::blockReleaseNoLeak_1(struct CGImage).84ad49561aaa89b84a792baf34151a77_4" [label="4: between_join_and_exit \n " shape="box"]
"objc_blockMy_manager.blockReleaseNoLeak_1(struct CGImage).d2039f8bbb0530575d5ff258d059d268_3" -> "objc_blockMy_manager.blockReleaseNoLeak_1(struct CGImage).d2039f8bbb0530575d5ff258d059d268_4" ;
"objc_blockMy_manager.blockReleaseNoLeak_1(struct CGImage).d2039f8bbb0530575d5ff258d059d268_4" [label="4: between_join_and_exit \n " shape="box"]
"objc_blockMy_manager::blockReleaseNoLeak_1(struct CGImage).84ad49561aaa89b84a792baf34151a77_4" -> "objc_blockMy_manager::blockReleaseNoLeak_1(struct CGImage).84ad49561aaa89b84a792baf34151a77_2" ;
"objc_blockMy_manager::blockReleaseNoLeak_1(struct CGImage).84ad49561aaa89b84a792baf34151a77_5" [label="5: Prune (true branch, if) \n n$10=*&newImage:CGImage* [line 24, column 9]\n PRUNE(n$10, true); [line 24, column 9]\n " shape="invhouse"]
"objc_blockMy_manager.blockReleaseNoLeak_1(struct CGImage).d2039f8bbb0530575d5ff258d059d268_4" -> "objc_blockMy_manager.blockReleaseNoLeak_1(struct CGImage).d2039f8bbb0530575d5ff258d059d268_2" ;
"objc_blockMy_manager.blockReleaseNoLeak_1(struct CGImage).d2039f8bbb0530575d5ff258d059d268_5" [label="5: Prune (true branch, if) \n n$10=*&newImage:CGImage* [line 24, column 9]\n PRUNE(n$10, true); [line 24, column 9]\n " shape="invhouse"]
"objc_blockMy_manager::blockReleaseNoLeak_1(struct CGImage).84ad49561aaa89b84a792baf34151a77_5" -> "objc_blockMy_manager::blockReleaseNoLeak_1(struct CGImage).84ad49561aaa89b84a792baf34151a77_7" ;
"objc_blockMy_manager::blockReleaseNoLeak_1(struct CGImage).84ad49561aaa89b84a792baf34151a77_6" [label="6: Prune (false branch, if) \n n$10=*&newImage:CGImage* [line 24, column 9]\n PRUNE(!n$10, false); [line 24, column 9]\n " shape="invhouse"]
"objc_blockMy_manager.blockReleaseNoLeak_1(struct CGImage).d2039f8bbb0530575d5ff258d059d268_5" -> "objc_blockMy_manager.blockReleaseNoLeak_1(struct CGImage).d2039f8bbb0530575d5ff258d059d268_7" ;
"objc_blockMy_manager.blockReleaseNoLeak_1(struct CGImage).d2039f8bbb0530575d5ff258d059d268_6" [label="6: Prune (false branch, if) \n n$10=*&newImage:CGImage* [line 24, column 9]\n PRUNE(!n$10, false); [line 24, column 9]\n " shape="invhouse"]
"objc_blockMy_manager::blockReleaseNoLeak_1(struct CGImage).84ad49561aaa89b84a792baf34151a77_6" -> "objc_blockMy_manager::blockReleaseNoLeak_1(struct CGImage).84ad49561aaa89b84a792baf34151a77_3" ;
"objc_blockMy_manager::blockReleaseNoLeak_1(struct CGImage).84ad49561aaa89b84a792baf34151a77_7" [label="7: Call _fun_CGImageRelease \n n$11=*&newImage:CGImage* [line 25, column 22]\n n$12=_fun_CGImageRelease(n$11:CGImage*) [line 25, column 7]\n " shape="box"]
"objc_blockMy_manager.blockReleaseNoLeak_1(struct CGImage).d2039f8bbb0530575d5ff258d059d268_6" -> "objc_blockMy_manager.blockReleaseNoLeak_1(struct CGImage).d2039f8bbb0530575d5ff258d059d268_3" ;
"objc_blockMy_manager.blockReleaseNoLeak_1(struct CGImage).d2039f8bbb0530575d5ff258d059d268_7" [label="7: Call _fun_CGImageRelease \n n$11=*&newImage:CGImage* [line 25, column 22]\n n$12=_fun_CGImageRelease(n$11:CGImage*) [line 25, column 7]\n " shape="box"]
"objc_blockMy_manager::blockReleaseNoLeak_1(struct CGImage).84ad49561aaa89b84a792baf34151a77_7" -> "objc_blockMy_manager::blockReleaseNoLeak_1(struct CGImage).84ad49561aaa89b84a792baf34151a77_3" ;
"blockReleaseNoLeak#My_manager#instance.0c48f80f024250b18a529440f1313af6_1" [label="1: Start My_manager::blockReleaseNoLeak\nFormals: self:My_manager*\nLocals: newImage:CGImage* context:CGContext* z:int b:_fn_(*) \n " color=yellow style=filled]
"objc_blockMy_manager.blockReleaseNoLeak_1(struct CGImage).d2039f8bbb0530575d5ff258d059d268_7" -> "objc_blockMy_manager.blockReleaseNoLeak_1(struct CGImage).d2039f8bbb0530575d5ff258d059d268_3" ;
"blockReleaseNoLeak#My_manager#instance.0c48f80f024250b18a529440f1313af6_1" [label="1: Start My_manager.blockReleaseNoLeak\nFormals: self:My_manager*\nLocals: newImage:CGImage* context:CGContext* z:int b:_fn_(*) \n " color=yellow style=filled]
"blockReleaseNoLeak#My_manager#instance.0c48f80f024250b18a529440f1313af6_1" -> "blockReleaseNoLeak#My_manager#instance.0c48f80f024250b18a529440f1313af6_12" ;
"blockReleaseNoLeak#My_manager#instance.0c48f80f024250b18a529440f1313af6_2" [label="2: Exit My_manager::blockReleaseNoLeak \n " color=yellow style=filled]
"blockReleaseNoLeak#My_manager#instance.0c48f80f024250b18a529440f1313af6_2" [label="2: Exit My_manager.blockReleaseNoLeak \n " color=yellow style=filled]
"blockReleaseNoLeak#My_manager#instance.0c48f80f024250b18a529440f1313af6_3" [label="3: Return Stmt \n n$0=*&z:int [line 30, column 10]\n *&return:int=n$0 [line 30, column 3]\n " shape="box"]
@ -60,7 +60,7 @@ digraph cfg {
"blockReleaseNoLeak#My_manager#instance.0c48f80f024250b18a529440f1313af6_8" -> "blockReleaseNoLeak#My_manager#instance.0c48f80f024250b18a529440f1313af6_5" ;
"blockReleaseNoLeak#My_manager#instance.0c48f80f024250b18a529440f1313af6_8" -> "blockReleaseNoLeak#My_manager#instance.0c48f80f024250b18a529440f1313af6_6" ;
"blockReleaseNoLeak#My_manager#instance.0c48f80f024250b18a529440f1313af6_9" [label="9: BinaryOperatorStmt: Assign \n n$9=*&newImage:CGImage* [line 23, column 7]\n *&b:_fn_(*)=(_fun_objc_blockMy_manager::blockReleaseNoLeak_1,(n$9 &newImage:CGImage*)) [line 23, column 3]\n " shape="box"]
"blockReleaseNoLeak#My_manager#instance.0c48f80f024250b18a529440f1313af6_9" [label="9: BinaryOperatorStmt: Assign \n n$9=*&newImage:CGImage* [line 23, column 7]\n *&b:_fn_(*)=(_fun_objc_blockMy_manager.blockReleaseNoLeak_1,(n$9 &newImage:CGImage*)) [line 23, column 3]\n " shape="box"]
"blockReleaseNoLeak#My_manager#instance.0c48f80f024250b18a529440f1313af6_9" -> "blockReleaseNoLeak#My_manager#instance.0c48f80f024250b18a529440f1313af6_8" ;

@ -40,119 +40,119 @@ digraph cfg {
"DispatchMain.f6461dbdaeaf9a114cbe40f5f72fbb3f_10" -> "DispatchMain.f6461dbdaeaf9a114cbe40f5f72fbb3f_5" ;
"DispatchMain.f6461dbdaeaf9a114cbe40f5f72fbb3f_11" [label="11: DeclStmt \n VARIABLE_DECLARED(b:DispatchA*); [line 83, column 3]\n n$4=_fun_DispatchA::sharedInstance() [line 83, column 18]\n *&b:DispatchA*=n$4 [line 83, column 3]\n " shape="box"]
"DispatchMain.f6461dbdaeaf9a114cbe40f5f72fbb3f_11" [label="11: DeclStmt \n VARIABLE_DECLARED(b:DispatchA*); [line 83, column 3]\n n$4=_fun_DispatchA.sharedInstance() [line 83, column 18]\n *&b:DispatchA*=n$4 [line 83, column 3]\n " shape="box"]
"DispatchMain.f6461dbdaeaf9a114cbe40f5f72fbb3f_11" -> "DispatchMain.f6461dbdaeaf9a114cbe40f5f72fbb3f_10" ;
"objc_blockDispatchA::block_attribute_2(class DispatchA).8dc1ebb9b817a75d59191e3b5ac3d8f4_1" [label="1: Start objc_blockDispatchA::block_attribute_2\nFormals: a:DispatchA*\nLocals: \nCaptured: a:DispatchA* \n " color=yellow style=filled]
"objc_blockDispatchA.block_attribute_2(class DispatchA).fbb5956dc6c8f95a8f2ae751ac2b44a1_1" [label="1: Start objc_blockDispatchA.block_attribute_2\nFormals: a:DispatchA*\nLocals: \nCaptured: a:DispatchA* \n " color=yellow style=filled]
"objc_blockDispatchA::block_attribute_2(class DispatchA).8dc1ebb9b817a75d59191e3b5ac3d8f4_1" -> "objc_blockDispatchA::block_attribute_2(class DispatchA).8dc1ebb9b817a75d59191e3b5ac3d8f4_3" ;
"objc_blockDispatchA::block_attribute_2(class DispatchA).8dc1ebb9b817a75d59191e3b5ac3d8f4_2" [label="2: Exit objc_blockDispatchA::block_attribute_2 \n " color=yellow style=filled]
"objc_blockDispatchA.block_attribute_2(class DispatchA).fbb5956dc6c8f95a8f2ae751ac2b44a1_1" -> "objc_blockDispatchA.block_attribute_2(class DispatchA).fbb5956dc6c8f95a8f2ae751ac2b44a1_3" ;
"objc_blockDispatchA.block_attribute_2(class DispatchA).fbb5956dc6c8f95a8f2ae751ac2b44a1_2" [label="2: Exit objc_blockDispatchA.block_attribute_2 \n " color=yellow style=filled]
"objc_blockDispatchA::block_attribute_2(class DispatchA).8dc1ebb9b817a75d59191e3b5ac3d8f4_3" [label="3: BinaryOperatorStmt: Assign \n n$8=*&a:DispatchA* [line 38, column 5]\n *n$8._x:int=10 [line 38, column 5]\n " shape="box"]
"objc_blockDispatchA.block_attribute_2(class DispatchA).fbb5956dc6c8f95a8f2ae751ac2b44a1_3" [label="3: BinaryOperatorStmt: Assign \n n$8=*&a:DispatchA* [line 38, column 5]\n *n$8._x:int=10 [line 38, column 5]\n " shape="box"]
"objc_blockDispatchA::block_attribute_2(class DispatchA).8dc1ebb9b817a75d59191e3b5ac3d8f4_3" -> "objc_blockDispatchA::block_attribute_2(class DispatchA).8dc1ebb9b817a75d59191e3b5ac3d8f4_2" ;
"objc_blockDispatchA::dispatch_a_block_variable_4.0b9ca2975d7f2bf9120661b118c2c0bb_1" [label="1: Start objc_blockDispatchA::dispatch_a_block_variable_4\nFormals: \nLocals: \n " color=yellow style=filled]
"objc_blockDispatchA.block_attribute_2(class DispatchA).fbb5956dc6c8f95a8f2ae751ac2b44a1_3" -> "objc_blockDispatchA.block_attribute_2(class DispatchA).fbb5956dc6c8f95a8f2ae751ac2b44a1_2" ;
"objc_blockDispatchA.dispatch_a_block_variable_4.85a73921543aa13f4bc6d889cc185a8d_1" [label="1: Start objc_blockDispatchA.dispatch_a_block_variable_4\nFormals: \nLocals: \n " color=yellow style=filled]
"objc_blockDispatchA::dispatch_a_block_variable_4.0b9ca2975d7f2bf9120661b118c2c0bb_1" -> "objc_blockDispatchA::dispatch_a_block_variable_4.0b9ca2975d7f2bf9120661b118c2c0bb_3" ;
"objc_blockDispatchA::dispatch_a_block_variable_4.0b9ca2975d7f2bf9120661b118c2c0bb_2" [label="2: Exit objc_blockDispatchA::dispatch_a_block_variable_4 \n " color=yellow style=filled]
"objc_blockDispatchA.dispatch_a_block_variable_4.85a73921543aa13f4bc6d889cc185a8d_1" -> "objc_blockDispatchA.dispatch_a_block_variable_4.85a73921543aa13f4bc6d889cc185a8d_3" ;
"objc_blockDispatchA.dispatch_a_block_variable_4.85a73921543aa13f4bc6d889cc185a8d_2" [label="2: Exit objc_blockDispatchA.dispatch_a_block_variable_4 \n " color=yellow style=filled]
"objc_blockDispatchA::dispatch_a_block_variable_4.0b9ca2975d7f2bf9120661b118c2c0bb_3" [label="3: BinaryOperatorStmt: Assign \n n$20=_fun___objc_alloc_no_fail(sizeof(t=DispatchA):unsigned long) [line 55, column 25]\n n$21=_fun_NSObject::init(n$20:DispatchA*) virtual [line 55, column 25]\n *&#GB<codetoanalyze/objc/shared/block/dispatch.m>$DispatchA::dispatch_a_block_variable.static_storage__:DispatchA*=n$21 [line 55, column 5]\n " shape="box"]
"objc_blockDispatchA.dispatch_a_block_variable_4.85a73921543aa13f4bc6d889cc185a8d_3" [label="3: BinaryOperatorStmt: Assign \n n$20=_fun___objc_alloc_no_fail(sizeof(t=DispatchA):unsigned long) [line 55, column 25]\n n$21=_fun_NSObject.init(n$20:DispatchA*) virtual [line 55, column 25]\n *&#GB<codetoanalyze/objc/shared/block/dispatch.m>$DispatchA.dispatch_a_block_variable.static_storage__:DispatchA*=n$21 [line 55, column 5]\n " shape="box"]
"objc_blockDispatchA::dispatch_a_block_variable_4.0b9ca2975d7f2bf9120661b118c2c0bb_3" -> "objc_blockDispatchA::dispatch_a_block_variable_4.0b9ca2975d7f2bf9120661b118c2c0bb_2" ;
"objc_blockDispatchA::dispatch_a_block_variable_from_macro_5.95f7628ee6d5ad3dae46b578932c94aa_1" [label="1: Start objc_blockDispatchA::dispatch_a_block_variable_from_macro_5\nFormals: \nLocals: \n " color=yellow style=filled]
"objc_blockDispatchA.dispatch_a_block_variable_4.85a73921543aa13f4bc6d889cc185a8d_3" -> "objc_blockDispatchA.dispatch_a_block_variable_4.85a73921543aa13f4bc6d889cc185a8d_2" ;
"objc_blockDispatchA.dispatch_a_block_variable_from_macro_5.8b47e325760aa028beb8a7010bc38e1c_1" [label="1: Start objc_blockDispatchA.dispatch_a_block_variable_from_macro_5\nFormals: \nLocals: \n " color=yellow style=filled]
"objc_blockDispatchA::dispatch_a_block_variable_from_macro_5.95f7628ee6d5ad3dae46b578932c94aa_1" -> "objc_blockDispatchA::dispatch_a_block_variable_from_macro_5.95f7628ee6d5ad3dae46b578932c94aa_3" ;
"objc_blockDispatchA::dispatch_a_block_variable_from_macro_5.95f7628ee6d5ad3dae46b578932c94aa_2" [label="2: Exit objc_blockDispatchA::dispatch_a_block_variable_from_macro_5 \n " color=yellow style=filled]
"objc_blockDispatchA.dispatch_a_block_variable_from_macro_5.8b47e325760aa028beb8a7010bc38e1c_1" -> "objc_blockDispatchA.dispatch_a_block_variable_from_macro_5.8b47e325760aa028beb8a7010bc38e1c_3" ;
"objc_blockDispatchA.dispatch_a_block_variable_from_macro_5.8b47e325760aa028beb8a7010bc38e1c_2" [label="2: Exit objc_blockDispatchA.dispatch_a_block_variable_from_macro_5 \n " color=yellow style=filled]
"objc_blockDispatchA::dispatch_a_block_variable_from_macro_5.95f7628ee6d5ad3dae46b578932c94aa_3" [label="3: BinaryOperatorStmt: Assign \n n$25=_fun___objc_alloc_no_fail(sizeof(t=DispatchA):unsigned long) [line 66, column 27]\n n$26=_fun_NSObject::init(n$25:DispatchA*) virtual [line 66, column 27]\n *&#GB<codetoanalyze/objc/shared/block/dispatch.m>$DispatchA::dispatch_a_block_variable_from_macro.static_storage__:DispatchA*=n$26 [line 66, column 7]\n " shape="box"]
"objc_blockDispatchA.dispatch_a_block_variable_from_macro_5.8b47e325760aa028beb8a7010bc38e1c_3" [label="3: BinaryOperatorStmt: Assign \n n$25=_fun___objc_alloc_no_fail(sizeof(t=DispatchA):unsigned long) [line 66, column 27]\n n$26=_fun_NSObject.init(n$25:DispatchA*) virtual [line 66, column 27]\n *&#GB<codetoanalyze/objc/shared/block/dispatch.m>$DispatchA.dispatch_a_block_variable_from_macro.static_storage__:DispatchA*=n$26 [line 66, column 7]\n " shape="box"]
"objc_blockDispatchA::dispatch_a_block_variable_from_macro_5.95f7628ee6d5ad3dae46b578932c94aa_3" -> "objc_blockDispatchA::dispatch_a_block_variable_from_macro_5.95f7628ee6d5ad3dae46b578932c94aa_2" ;
"objc_blockDispatchA::sharedInstance_1.50704f3ac0a3af5feaadec9b1fbbe54d_1" [label="1: Start objc_blockDispatchA::sharedInstance_1\nFormals: \nLocals: \n " color=yellow style=filled]
"objc_blockDispatchA.dispatch_a_block_variable_from_macro_5.8b47e325760aa028beb8a7010bc38e1c_3" -> "objc_blockDispatchA.dispatch_a_block_variable_from_macro_5.8b47e325760aa028beb8a7010bc38e1c_2" ;
"objc_blockDispatchA.sharedInstance_1.1c7ccafb7c17643dbbe0027bd1749ee3_1" [label="1: Start objc_blockDispatchA.sharedInstance_1\nFormals: \nLocals: \n " color=yellow style=filled]
"objc_blockDispatchA::sharedInstance_1.50704f3ac0a3af5feaadec9b1fbbe54d_1" -> "objc_blockDispatchA::sharedInstance_1.50704f3ac0a3af5feaadec9b1fbbe54d_3" ;
"objc_blockDispatchA::sharedInstance_1.50704f3ac0a3af5feaadec9b1fbbe54d_2" [label="2: Exit objc_blockDispatchA::sharedInstance_1 \n " color=yellow style=filled]
"objc_blockDispatchA.sharedInstance_1.1c7ccafb7c17643dbbe0027bd1749ee3_1" -> "objc_blockDispatchA.sharedInstance_1.1c7ccafb7c17643dbbe0027bd1749ee3_3" ;
"objc_blockDispatchA.sharedInstance_1.1c7ccafb7c17643dbbe0027bd1749ee3_2" [label="2: Exit objc_blockDispatchA.sharedInstance_1 \n " color=yellow style=filled]
"objc_blockDispatchA::sharedInstance_1.50704f3ac0a3af5feaadec9b1fbbe54d_3" [label="3: BinaryOperatorStmt: Assign \n n$2=_fun___objc_alloc_no_fail(sizeof(t=DispatchA):unsigned long) [line 29, column 23]\n n$3=_fun_DispatchA::init(n$2:DispatchA*) virtual [line 29, column 22]\n *&#GB<codetoanalyze/objc/shared/block/dispatch.m>$DispatchA::sharedInstance.sharedInstance:objc_object*=n$3 [line 29, column 5]\n " shape="box"]
"objc_blockDispatchA.sharedInstance_1.1c7ccafb7c17643dbbe0027bd1749ee3_3" [label="3: BinaryOperatorStmt: Assign \n n$2=_fun___objc_alloc_no_fail(sizeof(t=DispatchA):unsigned long) [line 29, column 23]\n n$3=_fun_DispatchA.init(n$2:DispatchA*) virtual [line 29, column 22]\n *&#GB<codetoanalyze/objc/shared/block/dispatch.m>$DispatchA.sharedInstance.sharedInstance:objc_object*=n$3 [line 29, column 5]\n " shape="box"]
"objc_blockDispatchA::sharedInstance_1.50704f3ac0a3af5feaadec9b1fbbe54d_3" -> "objc_blockDispatchA::sharedInstance_1.50704f3ac0a3af5feaadec9b1fbbe54d_2" ;
"objc_blockDispatchA::trans_3.95a17d9ac15f0da3f92b7057c890d96c_1" [label="1: Start objc_blockDispatchA::trans_3\nFormals: \nLocals: \n " color=yellow style=filled]
"objc_blockDispatchA.sharedInstance_1.1c7ccafb7c17643dbbe0027bd1749ee3_3" -> "objc_blockDispatchA.sharedInstance_1.1c7ccafb7c17643dbbe0027bd1749ee3_2" ;
"objc_blockDispatchA.trans_3.2993ae0bfb5e0ec6d91c5c53d1084592_1" [label="1: Start objc_blockDispatchA.trans_3\nFormals: \nLocals: \n " color=yellow style=filled]
"objc_blockDispatchA::trans_3.95a17d9ac15f0da3f92b7057c890d96c_1" -> "objc_blockDispatchA::trans_3.95a17d9ac15f0da3f92b7057c890d96c_3" ;
"objc_blockDispatchA::trans_3.95a17d9ac15f0da3f92b7057c890d96c_2" [label="2: Exit objc_blockDispatchA::trans_3 \n " color=yellow style=filled]
"objc_blockDispatchA.trans_3.2993ae0bfb5e0ec6d91c5c53d1084592_1" -> "objc_blockDispatchA.trans_3.2993ae0bfb5e0ec6d91c5c53d1084592_3" ;
"objc_blockDispatchA.trans_3.2993ae0bfb5e0ec6d91c5c53d1084592_2" [label="2: Exit objc_blockDispatchA.trans_3 \n " color=yellow style=filled]
"objc_blockDispatchA::trans_3.95a17d9ac15f0da3f92b7057c890d96c_3" [label="3: BinaryOperatorStmt: Assign \n n$15=_fun___objc_alloc_no_fail(sizeof(t=DispatchA):unsigned long) [line 46, column 23]\n n$16=_fun_DispatchA::init(n$15:DispatchA*) virtual [line 46, column 22]\n *&#GB<codetoanalyze/objc/shared/block/dispatch.m>$DispatchA::trans.sharedInstance:objc_object*=n$16 [line 46, column 5]\n " shape="box"]
"objc_blockDispatchA.trans_3.2993ae0bfb5e0ec6d91c5c53d1084592_3" [label="3: BinaryOperatorStmt: Assign \n n$15=_fun___objc_alloc_no_fail(sizeof(t=DispatchA):unsigned long) [line 46, column 23]\n n$16=_fun_DispatchA.init(n$15:DispatchA*) virtual [line 46, column 22]\n *&#GB<codetoanalyze/objc/shared/block/dispatch.m>$DispatchA.trans.sharedInstance:objc_object*=n$16 [line 46, column 5]\n " shape="box"]
"objc_blockDispatchA::trans_3.95a17d9ac15f0da3f92b7057c890d96c_3" -> "objc_blockDispatchA::trans_3.95a17d9ac15f0da3f92b7057c890d96c_2" ;
"block_attribute#DispatchA#class.df997e345dbf19ec3438c667c942e14a_1" [label="1: Start DispatchA::block_attribute\nFormals: \nLocals: a:DispatchA*(__block) \n " color=yellow style=filled]
"objc_blockDispatchA.trans_3.2993ae0bfb5e0ec6d91c5c53d1084592_3" -> "objc_blockDispatchA.trans_3.2993ae0bfb5e0ec6d91c5c53d1084592_2" ;
"block_attribute#DispatchA#class.df997e345dbf19ec3438c667c942e14a_1" [label="1: Start DispatchA.block_attribute\nFormals: \nLocals: a:DispatchA*(__block) \n " color=yellow style=filled]
"block_attribute#DispatchA#class.df997e345dbf19ec3438c667c942e14a_1" -> "block_attribute#DispatchA#class.df997e345dbf19ec3438c667c942e14a_5" ;
"block_attribute#DispatchA#class.df997e345dbf19ec3438c667c942e14a_2" [label="2: Exit DispatchA::block_attribute \n " color=yellow style=filled]
"block_attribute#DispatchA#class.df997e345dbf19ec3438c667c942e14a_2" [label="2: Exit DispatchA.block_attribute \n " color=yellow style=filled]
"block_attribute#DispatchA#class.df997e345dbf19ec3438c667c942e14a_3" [label="3: Return Stmt \n n$5=*&a:DispatchA* [line 40, column 10]\n n$6=*n$5._x:int [line 40, column 10]\n *&return:int=n$6 [line 40, column 3]\n " shape="box"]
"block_attribute#DispatchA#class.df997e345dbf19ec3438c667c942e14a_3" -> "block_attribute#DispatchA#class.df997e345dbf19ec3438c667c942e14a_2" ;
"block_attribute#DispatchA#class.df997e345dbf19ec3438c667c942e14a_4" [label="4: Call _fun__dispatch_once \n n$7=*&a:DispatchA* [line 37, column 24]\n n$9=_fun__dispatch_once(&#GB<codetoanalyze/objc/shared/block/dispatch.m>$DispatchA::block_attribute.once:long*,(_fun_objc_blockDispatchA::block_attribute_2,(n$7 &a:DispatchA*)):_fn_(*)) block_params [line 37, column 3]\n " shape="box"]
"block_attribute#DispatchA#class.df997e345dbf19ec3438c667c942e14a_4" [label="4: Call _fun__dispatch_once \n n$7=*&a:DispatchA* [line 37, column 24]\n n$9=_fun__dispatch_once(&#GB<codetoanalyze/objc/shared/block/dispatch.m>$DispatchA.block_attribute.once:long*,(_fun_objc_blockDispatchA.block_attribute_2,(n$7 &a:DispatchA*)):_fn_(*)) block_params [line 37, column 3]\n " shape="box"]
"block_attribute#DispatchA#class.df997e345dbf19ec3438c667c942e14a_4" -> "block_attribute#DispatchA#class.df997e345dbf19ec3438c667c942e14a_3" ;
"block_attribute#DispatchA#class.df997e345dbf19ec3438c667c942e14a_5" [label="5: DeclStmt \n VARIABLE_DECLARED(a:DispatchA*); [line 36, column 3]\n n$10=_fun___objc_alloc_no_fail(sizeof(t=DispatchA):unsigned long) [line 36, column 26]\n n$11=_fun_NSObject::init(n$10:DispatchA*) virtual [line 36, column 26]\n *&a:DispatchA*=n$11 [line 36, column 3]\n " shape="box"]
"block_attribute#DispatchA#class.df997e345dbf19ec3438c667c942e14a_5" [label="5: DeclStmt \n VARIABLE_DECLARED(a:DispatchA*); [line 36, column 3]\n n$10=_fun___objc_alloc_no_fail(sizeof(t=DispatchA):unsigned long) [line 36, column 26]\n n$11=_fun_NSObject.init(n$10:DispatchA*) virtual [line 36, column 26]\n *&a:DispatchA*=n$11 [line 36, column 3]\n " shape="box"]
"block_attribute#DispatchA#class.df997e345dbf19ec3438c667c942e14a_5" -> "block_attribute#DispatchA#class.df997e345dbf19ec3438c667c942e14a_4" ;
"dispatch_a_block_variable#DispatchA#class.3cc12dd22127281b8293b7c046d21bb2_1" [label="1: Start DispatchA::dispatch_a_block_variable\nFormals: \nLocals: initialization_block__:_fn_(*) \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 " color=yellow style=filled]
"dispatch_a_block_variable#DispatchA#class.3cc12dd22127281b8293b7c046d21bb2_1" -> "dispatch_a_block_variable#DispatchA#class.3cc12dd22127281b8293b7c046d21bb2_5" ;
"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$17=*&#GB<codetoanalyze/objc/shared/block/dispatch.m>$DispatchA::dispatch_a_block_variable.static_storage__:DispatchA* [line 59, column 10]\n *&return:objc_object*=n$17 [line 59, column 3]\n " shape="box"]
"dispatch_a_block_variable#DispatchA#class.3cc12dd22127281b8293b7c046d21bb2_3" [label="3: Return Stmt \n n$17=*&#GB<codetoanalyze/objc/shared/block/dispatch.m>$DispatchA.dispatch_a_block_variable.static_storage__:DispatchA* [line 59, column 10]\n *&return:objc_object*=n$17 [line 59, 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_4" [label="4: Call _fun__dispatch_once \n n$18=*&initialization_block__:_fn_(*) [line 58, column 32]\n n$19=_fun__dispatch_once(&#GB<codetoanalyze/objc/shared/block/dispatch.m>$DispatchA::dispatch_a_block_variable.once_token__:long*,n$18:_fn_(*)) [line 58, column 3]\n " shape="box"]
"dispatch_a_block_variable#DispatchA#class.3cc12dd22127281b8293b7c046d21bb2_4" [label="4: Call _fun__dispatch_once \n n$18=*&initialization_block__:_fn_(*) [line 58, column 32]\n n$19=_fun__dispatch_once(&#GB<codetoanalyze/objc/shared/block/dispatch.m>$DispatchA.dispatch_a_block_variable.once_token__:long*,n$18:_fn_(*)) [line 58, 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_5" [label="5: DeclStmt \n VARIABLE_DECLARED(initialization_block__:_fn_(*)); [line 54, column 3]\n *&initialization_block__:_fn_(*)=(_fun_objc_blockDispatchA::dispatch_a_block_variable_4) [line 54, column 3]\n " shape="box"]
"dispatch_a_block_variable#DispatchA#class.3cc12dd22127281b8293b7c046d21bb2_5" [label="5: DeclStmt \n VARIABLE_DECLARED(initialization_block__:_fn_(*)); [line 54, column 3]\n *&initialization_block__:_fn_(*)=(_fun_objc_blockDispatchA.dispatch_a_block_variable_4) [line 54, 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_from_macro#DispatchA#class.92567a38d5ab3cf637f72030b1097441_1" [label="1: Start DispatchA::dispatch_a_block_variable_from_macro\nFormals: \nLocals: initialization_block__:_fn_(*) \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 " color=yellow style=filled]
"dispatch_a_block_variable_from_macro#DispatchA#class.92567a38d5ab3cf637f72030b1097441_1" -> "dispatch_a_block_variable_from_macro#DispatchA#class.92567a38d5ab3cf637f72030b1097441_5" ;
"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$22=*&#GB<codetoanalyze/objc/shared/block/dispatch.m>$DispatchA::dispatch_a_block_variable_from_macro.static_storage__:DispatchA* [line 70, column 5]\n " shape="box"]
"dispatch_a_block_variable_from_macro#DispatchA#class.92567a38d5ab3cf637f72030b1097441_3" [label="3: Fallback node \n n$22=*&#GB<codetoanalyze/objc/shared/block/dispatch.m>$DispatchA.dispatch_a_block_variable_from_macro.static_storage__:DispatchA* [line 70, 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_4" [label="4: Call _fun__dispatch_once \n n$23=*&initialization_block__:_fn_(*) [line 69, column 34]\n n$24=_fun__dispatch_once(&#GB<codetoanalyze/objc/shared/block/dispatch.m>$DispatchA::dispatch_a_block_variable_from_macro.once_token__:long*,n$23:_fn_(*)) [line 69, column 5]\n " shape="box"]
"dispatch_a_block_variable_from_macro#DispatchA#class.92567a38d5ab3cf637f72030b1097441_4" [label="4: Call _fun__dispatch_once \n n$23=*&initialization_block__:_fn_(*) [line 69, column 34]\n n$24=_fun__dispatch_once(&#GB<codetoanalyze/objc/shared/block/dispatch.m>$DispatchA.dispatch_a_block_variable_from_macro.once_token__:long*,n$23:_fn_(*)) [line 69, 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_5" [label="5: DeclStmt \n VARIABLE_DECLARED(initialization_block__:_fn_(*)); [line 65, column 5]\n *&initialization_block__:_fn_(*)=(_fun_objc_blockDispatchA::dispatch_a_block_variable_from_macro_5) [line 65, column 5]\n " shape="box"]
"dispatch_a_block_variable_from_macro#DispatchA#class.92567a38d5ab3cf637f72030b1097441_5" [label="5: DeclStmt \n VARIABLE_DECLARED(initialization_block__:_fn_(*)); [line 65, column 5]\n *&initialization_block__:_fn_(*)=(_fun_objc_blockDispatchA.dispatch_a_block_variable_from_macro_5) [line 65, 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" ;
@ -160,11 +160,11 @@ digraph cfg {
"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_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 " 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 " color=yellow style=filled]
"dispatch_a_block_variable_from_macro_delivers_initialised_object#DispatchA#class.a58ef5afb5e1e9480b49788e2400c52c_1" -> "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_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 77, column 15]\n n$28=*n$27._x:int [line 77, column 15]\n *&return:int=(1 / (n$28 - 5)) [line 77, column 3]\n " shape="box"]
@ -175,33 +175,33 @@ digraph cfg {
"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 VARIABLE_DECLARED(a:DispatchA*); [line 75, column 3]\n n$30=_fun_DispatchA::dispatch_a_block_variable_from_macro() [line 75, column 18]\n *&a:DispatchA*=n$30 [line 75, column 3]\n " shape="box"]
"dispatch_a_block_variable_from_macro_delivers_initialised_object#DispatchA#class.a58ef5afb5e1e9480b49788e2400c52c_5" [label="5: DeclStmt \n VARIABLE_DECLARED(a:DispatchA*); [line 75, column 3]\n n$30=_fun_DispatchA.dispatch_a_block_variable_from_macro() [line 75, column 18]\n *&a:DispatchA*=n$30 [line 75, 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" ;
"sharedInstance#DispatchA#class.8992c6086d1ce5c225093940f62386ac_1" [label="1: Start DispatchA::sharedInstance\nFormals: \nLocals: \n " color=yellow style=filled]
"sharedInstance#DispatchA#class.8992c6086d1ce5c225093940f62386ac_1" [label="1: Start DispatchA.sharedInstance\nFormals: \nLocals: \n " color=yellow style=filled]
"sharedInstance#DispatchA#class.8992c6086d1ce5c225093940f62386ac_1" -> "sharedInstance#DispatchA#class.8992c6086d1ce5c225093940f62386ac_4" ;
"sharedInstance#DispatchA#class.8992c6086d1ce5c225093940f62386ac_2" [label="2: Exit DispatchA::sharedInstance \n " color=yellow style=filled]
"sharedInstance#DispatchA#class.8992c6086d1ce5c225093940f62386ac_2" [label="2: Exit DispatchA.sharedInstance \n " color=yellow style=filled]
"sharedInstance#DispatchA#class.8992c6086d1ce5c225093940f62386ac_3" [label="3: Return Stmt \n n$1=*&#GB<codetoanalyze/objc/shared/block/dispatch.m>$DispatchA::sharedInstance.sharedInstance:objc_object* [line 31, column 10]\n *&return:objc_object*=n$1 [line 31, column 3]\n " shape="box"]
"sharedInstance#DispatchA#class.8992c6086d1ce5c225093940f62386ac_3" [label="3: Return Stmt \n n$1=*&#GB<codetoanalyze/objc/shared/block/dispatch.m>$DispatchA.sharedInstance.sharedInstance:objc_object* [line 31, column 10]\n *&return:objc_object*=n$1 [line 31, column 3]\n " shape="box"]
"sharedInstance#DispatchA#class.8992c6086d1ce5c225093940f62386ac_3" -> "sharedInstance#DispatchA#class.8992c6086d1ce5c225093940f62386ac_2" ;
"sharedInstance#DispatchA#class.8992c6086d1ce5c225093940f62386ac_4" [label="4: Call _fun__dispatch_once \n n$4=_fun__dispatch_once(&#GB<codetoanalyze/objc/shared/block/dispatch.m>$DispatchA::sharedInstance.once:long*,(_fun_objc_blockDispatchA::sharedInstance_1):_fn_(*)) block_params [line 28, column 3]\n " shape="box"]
"sharedInstance#DispatchA#class.8992c6086d1ce5c225093940f62386ac_4" [label="4: Call _fun__dispatch_once \n n$4=_fun__dispatch_once(&#GB<codetoanalyze/objc/shared/block/dispatch.m>$DispatchA.sharedInstance.once:long*,(_fun_objc_blockDispatchA.sharedInstance_1):_fn_(*)) block_params [line 28, column 3]\n " shape="box"]
"sharedInstance#DispatchA#class.8992c6086d1ce5c225093940f62386ac_4" -> "sharedInstance#DispatchA#class.8992c6086d1ce5c225093940f62386ac_3" ;
"trans#DispatchA#class.23f9d908a87deca79c235bc76ca6e941_1" [label="1: Start DispatchA::trans\nFormals: \nLocals: dummy_block:_fn_(*) \n " color=yellow style=filled]
"trans#DispatchA#class.23f9d908a87deca79c235bc76ca6e941_1" [label="1: Start DispatchA.trans\nFormals: \nLocals: dummy_block:_fn_(*) \n " color=yellow style=filled]
"trans#DispatchA#class.23f9d908a87deca79c235bc76ca6e941_1" -> "trans#DispatchA#class.23f9d908a87deca79c235bc76ca6e941_5" ;
"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$12=*&#GB<codetoanalyze/objc/shared/block/dispatch.m>$DispatchA::trans.sharedInstance:objc_object* [line 49, column 10]\n *&return:objc_object*=n$12 [line 49, column 3]\n " shape="box"]
"trans#DispatchA#class.23f9d908a87deca79c235bc76ca6e941_3" [label="3: Return Stmt \n n$12=*&#GB<codetoanalyze/objc/shared/block/dispatch.m>$DispatchA.trans.sharedInstance:objc_object* [line 49, column 10]\n *&return:objc_object*=n$12 [line 49, column 3]\n " shape="box"]
"trans#DispatchA#class.23f9d908a87deca79c235bc76ca6e941_3" -> "trans#DispatchA#class.23f9d908a87deca79c235bc76ca6e941_2" ;
@ -209,15 +209,15 @@ digraph cfg {
"trans#DispatchA#class.23f9d908a87deca79c235bc76ca6e941_4" -> "trans#DispatchA#class.23f9d908a87deca79c235bc76ca6e941_3" ;
"trans#DispatchA#class.23f9d908a87deca79c235bc76ca6e941_5" [label="5: DeclStmt \n VARIABLE_DECLARED(dummy_block:_fn_(*)); [line 45, column 3]\n *&dummy_block:_fn_(*)=(_fun_objc_blockDispatchA::trans_3) [line 45, column 3]\n " shape="box"]
"trans#DispatchA#class.23f9d908a87deca79c235bc76ca6e941_5" [label="5: DeclStmt \n VARIABLE_DECLARED(dummy_block:_fn_(*)); [line 45, column 3]\n *&dummy_block:_fn_(*)=(_fun_objc_blockDispatchA.trans_3) [line 45, column 3]\n " shape="box"]
"trans#DispatchA#class.23f9d908a87deca79c235bc76ca6e941_5" -> "trans#DispatchA#class.23f9d908a87deca79c235bc76ca6e941_4" ;
"init#DispatchA#instance.ff6c7b9a5a49bb46493519a4290a6582_1" [label="1: Start DispatchA::init\nFormals: self:DispatchA*\nLocals: \n " color=yellow style=filled]
"init#DispatchA#instance.ff6c7b9a5a49bb46493519a4290a6582_1" [label="1: Start DispatchA.init\nFormals: self:DispatchA*\nLocals: \n " color=yellow style=filled]
"init#DispatchA#instance.ff6c7b9a5a49bb46493519a4290a6582_1" -> "init#DispatchA#instance.ff6c7b9a5a49bb46493519a4290a6582_3" ;
"init#DispatchA#instance.ff6c7b9a5a49bb46493519a4290a6582_2" [label="2: Exit DispatchA::init \n " color=yellow style=filled]
"init#DispatchA#instance.ff6c7b9a5a49bb46493519a4290a6582_2" [label="2: Exit DispatchA.init \n " color=yellow style=filled]
"init#DispatchA#instance.ff6c7b9a5a49bb46493519a4290a6582_3" [label="3: Return Stmt \n n$0=*&self:DispatchA* [line 22, column 10]\n *&return:objc_object*=n$0 [line 22, column 3]\n " shape="box"]

@ -1,214 +1,214 @@
/* @generated */
digraph cfg {
"objc_blockDispatchEx::dispatch_after_example_3.6e9398bb753d10e1e5234dfa24ad1e09_1" [label="1: Start objc_blockDispatchEx::dispatch_after_example_3\nFormals: \nLocals: \n " color=yellow style=filled]
"objc_blockDispatchEx.dispatch_after_example_3.dbb418092b97c8d782359a059568a643_1" [label="1: Start objc_blockDispatchEx.dispatch_after_example_3\nFormals: \nLocals: \n " color=yellow style=filled]
"objc_blockDispatchEx::dispatch_after_example_3.6e9398bb753d10e1e5234dfa24ad1e09_1" -> "objc_blockDispatchEx::dispatch_after_example_3.6e9398bb753d10e1e5234dfa24ad1e09_4" ;
"objc_blockDispatchEx::dispatch_after_example_3.6e9398bb753d10e1e5234dfa24ad1e09_2" [label="2: Exit objc_blockDispatchEx::dispatch_after_example_3 \n " color=yellow style=filled]
"objc_blockDispatchEx.dispatch_after_example_3.dbb418092b97c8d782359a059568a643_1" -> "objc_blockDispatchEx.dispatch_after_example_3.dbb418092b97c8d782359a059568a643_4" ;
"objc_blockDispatchEx.dispatch_after_example_3.dbb418092b97c8d782359a059568a643_2" [label="2: Exit objc_blockDispatchEx.dispatch_after_example_3 \n " color=yellow style=filled]
"objc_blockDispatchEx::dispatch_after_example_3.6e9398bb753d10e1e5234dfa24ad1e09_3" [label="3: BinaryOperatorStmt: Assign \n n$18=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx::dispatch_after_example.a:DispatchEx* [line 50, column 20]\n *n$18.x:int=10 [line 50, column 20]\n " shape="box"]
"objc_blockDispatchEx.dispatch_after_example_3.dbb418092b97c8d782359a059568a643_3" [label="3: BinaryOperatorStmt: Assign \n n$18=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx.dispatch_after_example.a:DispatchEx* [line 50, column 20]\n *n$18.x:int=10 [line 50, column 20]\n " shape="box"]
"objc_blockDispatchEx::dispatch_after_example_3.6e9398bb753d10e1e5234dfa24ad1e09_3" -> "objc_blockDispatchEx::dispatch_after_example_3.6e9398bb753d10e1e5234dfa24ad1e09_2" ;
"objc_blockDispatchEx::dispatch_after_example_3.6e9398bb753d10e1e5234dfa24ad1e09_4" [label="4: BinaryOperatorStmt: Assign \n n$19=_fun___objc_alloc_no_fail(sizeof(t=DispatchEx):unsigned long) [line 49, column 25]\n n$20=_fun_DispatchEx::init(n$19:DispatchEx*) virtual [line 49, column 24]\n *&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx::dispatch_after_example.a:DispatchEx*=n$20 [line 49, column 20]\n " shape="box"]
"objc_blockDispatchEx.dispatch_after_example_3.dbb418092b97c8d782359a059568a643_3" -> "objc_blockDispatchEx.dispatch_after_example_3.dbb418092b97c8d782359a059568a643_2" ;
"objc_blockDispatchEx.dispatch_after_example_3.dbb418092b97c8d782359a059568a643_4" [label="4: BinaryOperatorStmt: Assign \n n$19=_fun___objc_alloc_no_fail(sizeof(t=DispatchEx):unsigned long) [line 49, column 25]\n n$20=_fun_DispatchEx.init(n$19:DispatchEx*) virtual [line 49, column 24]\n *&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx.dispatch_after_example.a:DispatchEx*=n$20 [line 49, column 20]\n " shape="box"]
"objc_blockDispatchEx::dispatch_after_example_3.6e9398bb753d10e1e5234dfa24ad1e09_4" -> "objc_blockDispatchEx::dispatch_after_example_3.6e9398bb753d10e1e5234dfa24ad1e09_3" ;
"objc_blockDispatchEx::dispatch_async_example_2.fa5a3367063c1299f87ec871fed2d30b_1" [label="1: Start objc_blockDispatchEx::dispatch_async_example_2\nFormals: \nLocals: \n " color=yellow style=filled]
"objc_blockDispatchEx.dispatch_after_example_3.dbb418092b97c8d782359a059568a643_4" -> "objc_blockDispatchEx.dispatch_after_example_3.dbb418092b97c8d782359a059568a643_3" ;
"objc_blockDispatchEx.dispatch_async_example_2.2b5337b8c70292f13cb2803af0010083_1" [label="1: Start objc_blockDispatchEx.dispatch_async_example_2\nFormals: \nLocals: \n " color=yellow style=filled]
"objc_blockDispatchEx::dispatch_async_example_2.fa5a3367063c1299f87ec871fed2d30b_1" -> "objc_blockDispatchEx::dispatch_async_example_2.fa5a3367063c1299f87ec871fed2d30b_4" ;
"objc_blockDispatchEx::dispatch_async_example_2.fa5a3367063c1299f87ec871fed2d30b_2" [label="2: Exit objc_blockDispatchEx::dispatch_async_example_2 \n " color=yellow style=filled]
"objc_blockDispatchEx.dispatch_async_example_2.2b5337b8c70292f13cb2803af0010083_1" -> "objc_blockDispatchEx.dispatch_async_example_2.2b5337b8c70292f13cb2803af0010083_4" ;
"objc_blockDispatchEx.dispatch_async_example_2.2b5337b8c70292f13cb2803af0010083_2" [label="2: Exit objc_blockDispatchEx.dispatch_async_example_2 \n " color=yellow style=filled]
"objc_blockDispatchEx::dispatch_async_example_2.fa5a3367063c1299f87ec871fed2d30b_3" [label="3: BinaryOperatorStmt: Assign \n n$10=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx::dispatch_async_example.a:DispatchEx* [line 39, column 20]\n *n$10.x:int=10 [line 39, column 20]\n " shape="box"]
"objc_blockDispatchEx.dispatch_async_example_2.2b5337b8c70292f13cb2803af0010083_3" [label="3: BinaryOperatorStmt: Assign \n n$10=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx.dispatch_async_example.a:DispatchEx* [line 39, column 20]\n *n$10.x:int=10 [line 39, column 20]\n " shape="box"]
"objc_blockDispatchEx::dispatch_async_example_2.fa5a3367063c1299f87ec871fed2d30b_3" -> "objc_blockDispatchEx::dispatch_async_example_2.fa5a3367063c1299f87ec871fed2d30b_2" ;
"objc_blockDispatchEx::dispatch_async_example_2.fa5a3367063c1299f87ec871fed2d30b_4" [label="4: BinaryOperatorStmt: Assign \n n$11=_fun___objc_alloc_no_fail(sizeof(t=DispatchEx):unsigned long) [line 38, column 25]\n n$12=_fun_DispatchEx::init(n$11:DispatchEx*) virtual [line 38, column 24]\n *&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx::dispatch_async_example.a:DispatchEx*=n$12 [line 38, column 20]\n " shape="box"]
"objc_blockDispatchEx.dispatch_async_example_2.2b5337b8c70292f13cb2803af0010083_3" -> "objc_blockDispatchEx.dispatch_async_example_2.2b5337b8c70292f13cb2803af0010083_2" ;
"objc_blockDispatchEx.dispatch_async_example_2.2b5337b8c70292f13cb2803af0010083_4" [label="4: BinaryOperatorStmt: Assign \n n$11=_fun___objc_alloc_no_fail(sizeof(t=DispatchEx):unsigned long) [line 38, column 25]\n n$12=_fun_DispatchEx.init(n$11:DispatchEx*) virtual [line 38, column 24]\n *&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx.dispatch_async_example.a:DispatchEx*=n$12 [line 38, column 20]\n " shape="box"]
"objc_blockDispatchEx::dispatch_async_example_2.fa5a3367063c1299f87ec871fed2d30b_4" -> "objc_blockDispatchEx::dispatch_async_example_2.fa5a3367063c1299f87ec871fed2d30b_3" ;
"objc_blockDispatchEx::dispatch_barrier_example_6.ba3ac5911ae9e3a82bd6b67ca544b8b7_1" [label="1: Start objc_blockDispatchEx::dispatch_barrier_example_6\nFormals: \nLocals: \n " color=yellow style=filled]
"objc_blockDispatchEx.dispatch_async_example_2.2b5337b8c70292f13cb2803af0010083_4" -> "objc_blockDispatchEx.dispatch_async_example_2.2b5337b8c70292f13cb2803af0010083_3" ;
"objc_blockDispatchEx.dispatch_barrier_example_6.dd6d1f1e88a64278b49937db6b9f03a5_1" [label="1: Start objc_blockDispatchEx.dispatch_barrier_example_6\nFormals: \nLocals: \n " color=yellow style=filled]
"objc_blockDispatchEx::dispatch_barrier_example_6.ba3ac5911ae9e3a82bd6b67ca544b8b7_1" -> "objc_blockDispatchEx::dispatch_barrier_example_6.ba3ac5911ae9e3a82bd6b67ca544b8b7_4" ;
"objc_blockDispatchEx::dispatch_barrier_example_6.ba3ac5911ae9e3a82bd6b67ca544b8b7_2" [label="2: Exit objc_blockDispatchEx::dispatch_barrier_example_6 \n " color=yellow style=filled]
"objc_blockDispatchEx.dispatch_barrier_example_6.dd6d1f1e88a64278b49937db6b9f03a5_1" -> "objc_blockDispatchEx.dispatch_barrier_example_6.dd6d1f1e88a64278b49937db6b9f03a5_4" ;
"objc_blockDispatchEx.dispatch_barrier_example_6.dd6d1f1e88a64278b49937db6b9f03a5_2" [label="2: Exit objc_blockDispatchEx.dispatch_barrier_example_6 \n " color=yellow style=filled]
"objc_blockDispatchEx::dispatch_barrier_example_6.ba3ac5911ae9e3a82bd6b67ca544b8b7_3" [label="3: BinaryOperatorStmt: Assign \n n$39=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx::dispatch_barrier_example.a:DispatchEx* [line 77, column 5]\n *n$39.x:int=10 [line 77, column 5]\n " shape="box"]
"objc_blockDispatchEx.dispatch_barrier_example_6.dd6d1f1e88a64278b49937db6b9f03a5_3" [label="3: BinaryOperatorStmt: Assign \n n$39=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx.dispatch_barrier_example.a:DispatchEx* [line 77, column 5]\n *n$39.x:int=10 [line 77, column 5]\n " shape="box"]
"objc_blockDispatchEx::dispatch_barrier_example_6.ba3ac5911ae9e3a82bd6b67ca544b8b7_3" -> "objc_blockDispatchEx::dispatch_barrier_example_6.ba3ac5911ae9e3a82bd6b67ca544b8b7_2" ;
"objc_blockDispatchEx::dispatch_barrier_example_6.ba3ac5911ae9e3a82bd6b67ca544b8b7_4" [label="4: BinaryOperatorStmt: Assign \n n$40=_fun___objc_alloc_no_fail(sizeof(t=DispatchEx):unsigned long) [line 76, column 10]\n n$41=_fun_DispatchEx::init(n$40:DispatchEx*) virtual [line 76, column 9]\n *&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx::dispatch_barrier_example.a:DispatchEx*=n$41 [line 76, column 5]\n " shape="box"]
"objc_blockDispatchEx.dispatch_barrier_example_6.dd6d1f1e88a64278b49937db6b9f03a5_3" -> "objc_blockDispatchEx.dispatch_barrier_example_6.dd6d1f1e88a64278b49937db6b9f03a5_2" ;
"objc_blockDispatchEx.dispatch_barrier_example_6.dd6d1f1e88a64278b49937db6b9f03a5_4" [label="4: BinaryOperatorStmt: Assign \n n$40=_fun___objc_alloc_no_fail(sizeof(t=DispatchEx):unsigned long) [line 76, column 10]\n n$41=_fun_DispatchEx.init(n$40:DispatchEx*) virtual [line 76, column 9]\n *&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx.dispatch_barrier_example.a:DispatchEx*=n$41 [line 76, column 5]\n " shape="box"]
"objc_blockDispatchEx::dispatch_barrier_example_6.ba3ac5911ae9e3a82bd6b67ca544b8b7_4" -> "objc_blockDispatchEx::dispatch_barrier_example_6.ba3ac5911ae9e3a82bd6b67ca544b8b7_3" ;
"objc_blockDispatchEx::dispatch_group_example_4.c2800d28963d2b21480cccdc47d7f3ac_1" [label="1: Start objc_blockDispatchEx::dispatch_group_example_4\nFormals: \nLocals: \n " color=yellow style=filled]
"objc_blockDispatchEx.dispatch_barrier_example_6.dd6d1f1e88a64278b49937db6b9f03a5_4" -> "objc_blockDispatchEx.dispatch_barrier_example_6.dd6d1f1e88a64278b49937db6b9f03a5_3" ;
"objc_blockDispatchEx.dispatch_group_example_4.28b9db5f095083187694e2c2e2d24a41_1" [label="1: Start objc_blockDispatchEx.dispatch_group_example_4\nFormals: \nLocals: \n " color=yellow style=filled]
"objc_blockDispatchEx::dispatch_group_example_4.c2800d28963d2b21480cccdc47d7f3ac_1" -> "objc_blockDispatchEx::dispatch_group_example_4.c2800d28963d2b21480cccdc47d7f3ac_4" ;
"objc_blockDispatchEx::dispatch_group_example_4.c2800d28963d2b21480cccdc47d7f3ac_2" [label="2: Exit objc_blockDispatchEx::dispatch_group_example_4 \n " color=yellow style=filled]
"objc_blockDispatchEx.dispatch_group_example_4.28b9db5f095083187694e2c2e2d24a41_1" -> "objc_blockDispatchEx.dispatch_group_example_4.28b9db5f095083187694e2c2e2d24a41_4" ;
"objc_blockDispatchEx.dispatch_group_example_4.28b9db5f095083187694e2c2e2d24a41_2" [label="2: Exit objc_blockDispatchEx.dispatch_group_example_4 \n " color=yellow style=filled]
"objc_blockDispatchEx::dispatch_group_example_4.c2800d28963d2b21480cccdc47d7f3ac_3" [label="3: BinaryOperatorStmt: Assign \n n$25=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx::dispatch_group_example.a:DispatchEx* [line 59, column 5]\n *n$25.x:int=10 [line 59, column 5]\n " shape="box"]
"objc_blockDispatchEx.dispatch_group_example_4.28b9db5f095083187694e2c2e2d24a41_3" [label="3: BinaryOperatorStmt: Assign \n n$25=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx.dispatch_group_example.a:DispatchEx* [line 59, column 5]\n *n$25.x:int=10 [line 59, column 5]\n " shape="box"]
"objc_blockDispatchEx::dispatch_group_example_4.c2800d28963d2b21480cccdc47d7f3ac_3" -> "objc_blockDispatchEx::dispatch_group_example_4.c2800d28963d2b21480cccdc47d7f3ac_2" ;
"objc_blockDispatchEx::dispatch_group_example_4.c2800d28963d2b21480cccdc47d7f3ac_4" [label="4: BinaryOperatorStmt: Assign \n n$26=_fun___objc_alloc_no_fail(sizeof(t=DispatchEx):unsigned long) [line 58, column 10]\n n$27=_fun_DispatchEx::init(n$26:DispatchEx*) virtual [line 58, column 9]\n *&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx::dispatch_group_example.a:DispatchEx*=n$27 [line 58, column 5]\n " shape="box"]
"objc_blockDispatchEx.dispatch_group_example_4.28b9db5f095083187694e2c2e2d24a41_3" -> "objc_blockDispatchEx.dispatch_group_example_4.28b9db5f095083187694e2c2e2d24a41_2" ;
"objc_blockDispatchEx.dispatch_group_example_4.28b9db5f095083187694e2c2e2d24a41_4" [label="4: BinaryOperatorStmt: Assign \n n$26=_fun___objc_alloc_no_fail(sizeof(t=DispatchEx):unsigned long) [line 58, column 10]\n n$27=_fun_DispatchEx.init(n$26:DispatchEx*) virtual [line 58, column 9]\n *&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx.dispatch_group_example.a:DispatchEx*=n$27 [line 58, column 5]\n " shape="box"]
"objc_blockDispatchEx::dispatch_group_example_4.c2800d28963d2b21480cccdc47d7f3ac_4" -> "objc_blockDispatchEx::dispatch_group_example_4.c2800d28963d2b21480cccdc47d7f3ac_3" ;
"objc_blockDispatchEx::dispatch_group_notify_example_5.a0aee72ff872d034fa63a16b19a6f65d_1" [label="1: Start objc_blockDispatchEx::dispatch_group_notify_example_5\nFormals: \nLocals: \n " color=yellow style=filled]
"objc_blockDispatchEx.dispatch_group_example_4.28b9db5f095083187694e2c2e2d24a41_4" -> "objc_blockDispatchEx.dispatch_group_example_4.28b9db5f095083187694e2c2e2d24a41_3" ;
"objc_blockDispatchEx.dispatch_group_notify_example_5.e068062d7cf02a8916d13ec6733f8ac2_1" [label="1: Start objc_blockDispatchEx.dispatch_group_notify_example_5\nFormals: \nLocals: \n " color=yellow style=filled]
"objc_blockDispatchEx::dispatch_group_notify_example_5.a0aee72ff872d034fa63a16b19a6f65d_1" -> "objc_blockDispatchEx::dispatch_group_notify_example_5.a0aee72ff872d034fa63a16b19a6f65d_4" ;
"objc_blockDispatchEx::dispatch_group_notify_example_5.a0aee72ff872d034fa63a16b19a6f65d_2" [label="2: Exit objc_blockDispatchEx::dispatch_group_notify_example_5 \n " color=yellow style=filled]
"objc_blockDispatchEx.dispatch_group_notify_example_5.e068062d7cf02a8916d13ec6733f8ac2_1" -> "objc_blockDispatchEx.dispatch_group_notify_example_5.e068062d7cf02a8916d13ec6733f8ac2_4" ;
"objc_blockDispatchEx.dispatch_group_notify_example_5.e068062d7cf02a8916d13ec6733f8ac2_2" [label="2: Exit objc_blockDispatchEx.dispatch_group_notify_example_5 \n " color=yellow style=filled]
"objc_blockDispatchEx::dispatch_group_notify_example_5.a0aee72ff872d034fa63a16b19a6f65d_3" [label="3: BinaryOperatorStmt: Assign \n n$32=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx::dispatch_group_notify_example.a:DispatchEx* [line 68, column 5]\n *n$32.x:int=10 [line 68, column 5]\n " shape="box"]
"objc_blockDispatchEx.dispatch_group_notify_example_5.e068062d7cf02a8916d13ec6733f8ac2_3" [label="3: BinaryOperatorStmt: Assign \n n$32=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx.dispatch_group_notify_example.a:DispatchEx* [line 68, column 5]\n *n$32.x:int=10 [line 68, column 5]\n " shape="box"]
"objc_blockDispatchEx::dispatch_group_notify_example_5.a0aee72ff872d034fa63a16b19a6f65d_3" -> "objc_blockDispatchEx::dispatch_group_notify_example_5.a0aee72ff872d034fa63a16b19a6f65d_2" ;
"objc_blockDispatchEx::dispatch_group_notify_example_5.a0aee72ff872d034fa63a16b19a6f65d_4" [label="4: BinaryOperatorStmt: Assign \n n$33=_fun___objc_alloc_no_fail(sizeof(t=DispatchEx):unsigned long) [line 67, column 10]\n n$34=_fun_DispatchEx::init(n$33:DispatchEx*) virtual [line 67, column 9]\n *&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx::dispatch_group_notify_example.a:DispatchEx*=n$34 [line 67, column 5]\n " shape="box"]
"objc_blockDispatchEx.dispatch_group_notify_example_5.e068062d7cf02a8916d13ec6733f8ac2_3" -> "objc_blockDispatchEx.dispatch_group_notify_example_5.e068062d7cf02a8916d13ec6733f8ac2_2" ;
"objc_blockDispatchEx.dispatch_group_notify_example_5.e068062d7cf02a8916d13ec6733f8ac2_4" [label="4: BinaryOperatorStmt: Assign \n n$33=_fun___objc_alloc_no_fail(sizeof(t=DispatchEx):unsigned long) [line 67, column 10]\n n$34=_fun_DispatchEx.init(n$33:DispatchEx*) virtual [line 67, column 9]\n *&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx.dispatch_group_notify_example.a:DispatchEx*=n$34 [line 67, column 5]\n " shape="box"]
"objc_blockDispatchEx::dispatch_group_notify_example_5.a0aee72ff872d034fa63a16b19a6f65d_4" -> "objc_blockDispatchEx::dispatch_group_notify_example_5.a0aee72ff872d034fa63a16b19a6f65d_3" ;
"objc_blockDispatchEx::dispatch_once_example_1.da175f9cefd6334957e7f8d6d6b39790_1" [label="1: Start objc_blockDispatchEx::dispatch_once_example_1\nFormals: \nLocals: \n " color=yellow style=filled]
"objc_blockDispatchEx.dispatch_group_notify_example_5.e068062d7cf02a8916d13ec6733f8ac2_4" -> "objc_blockDispatchEx.dispatch_group_notify_example_5.e068062d7cf02a8916d13ec6733f8ac2_3" ;
"objc_blockDispatchEx.dispatch_once_example_1.0cf4a50b58aa83c7f4be61b77c8df122_1" [label="1: Start objc_blockDispatchEx.dispatch_once_example_1\nFormals: \nLocals: \n " color=yellow style=filled]
"objc_blockDispatchEx::dispatch_once_example_1.da175f9cefd6334957e7f8d6d6b39790_1" -> "objc_blockDispatchEx::dispatch_once_example_1.da175f9cefd6334957e7f8d6d6b39790_4" ;
"objc_blockDispatchEx::dispatch_once_example_1.da175f9cefd6334957e7f8d6d6b39790_2" [label="2: Exit objc_blockDispatchEx::dispatch_once_example_1 \n " color=yellow style=filled]
"objc_blockDispatchEx.dispatch_once_example_1.0cf4a50b58aa83c7f4be61b77c8df122_1" -> "objc_blockDispatchEx.dispatch_once_example_1.0cf4a50b58aa83c7f4be61b77c8df122_4" ;
"objc_blockDispatchEx.dispatch_once_example_1.0cf4a50b58aa83c7f4be61b77c8df122_2" [label="2: Exit objc_blockDispatchEx.dispatch_once_example_1 \n " color=yellow style=filled]
"objc_blockDispatchEx::dispatch_once_example_1.da175f9cefd6334957e7f8d6d6b39790_3" [label="3: BinaryOperatorStmt: Assign \n n$3=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx::dispatch_once_example.a:DispatchEx* [line 29, column 5]\n *n$3.x:int=10 [line 29, column 5]\n " shape="box"]
"objc_blockDispatchEx.dispatch_once_example_1.0cf4a50b58aa83c7f4be61b77c8df122_3" [label="3: BinaryOperatorStmt: Assign \n n$3=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx.dispatch_once_example.a:DispatchEx* [line 29, column 5]\n *n$3.x:int=10 [line 29, column 5]\n " shape="box"]
"objc_blockDispatchEx::dispatch_once_example_1.da175f9cefd6334957e7f8d6d6b39790_3" -> "objc_blockDispatchEx::dispatch_once_example_1.da175f9cefd6334957e7f8d6d6b39790_2" ;
"objc_blockDispatchEx::dispatch_once_example_1.da175f9cefd6334957e7f8d6d6b39790_4" [label="4: BinaryOperatorStmt: Assign \n n$4=_fun___objc_alloc_no_fail(sizeof(t=DispatchEx):unsigned long) [line 28, column 10]\n n$5=_fun_DispatchEx::init(n$4:DispatchEx*) virtual [line 28, column 9]\n *&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx::dispatch_once_example.a:DispatchEx*=n$5 [line 28, column 5]\n " shape="box"]
"objc_blockDispatchEx.dispatch_once_example_1.0cf4a50b58aa83c7f4be61b77c8df122_3" -> "objc_blockDispatchEx.dispatch_once_example_1.0cf4a50b58aa83c7f4be61b77c8df122_2" ;
"objc_blockDispatchEx.dispatch_once_example_1.0cf4a50b58aa83c7f4be61b77c8df122_4" [label="4: BinaryOperatorStmt: Assign \n n$4=_fun___objc_alloc_no_fail(sizeof(t=DispatchEx):unsigned long) [line 28, column 10]\n n$5=_fun_DispatchEx.init(n$4:DispatchEx*) virtual [line 28, column 9]\n *&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx.dispatch_once_example.a:DispatchEx*=n$5 [line 28, column 5]\n " shape="box"]
"objc_blockDispatchEx::dispatch_once_example_1.da175f9cefd6334957e7f8d6d6b39790_4" -> "objc_blockDispatchEx::dispatch_once_example_1.da175f9cefd6334957e7f8d6d6b39790_3" ;
"dispatch_after_example#DispatchEx#class.1d25856bd99eb1ef683c8f65ff46d05d_1" [label="1: Start DispatchEx::dispatch_after_example\nFormals: \nLocals: \n " color=yellow style=filled]
"objc_blockDispatchEx.dispatch_once_example_1.0cf4a50b58aa83c7f4be61b77c8df122_4" -> "objc_blockDispatchEx.dispatch_once_example_1.0cf4a50b58aa83c7f4be61b77c8df122_3" ;
"dispatch_after_example#DispatchEx#class.1d25856bd99eb1ef683c8f65ff46d05d_1" [label="1: Start DispatchEx.dispatch_after_example\nFormals: \nLocals: \n " color=yellow style=filled]
"dispatch_after_example#DispatchEx#class.1d25856bd99eb1ef683c8f65ff46d05d_1" -> "dispatch_after_example#DispatchEx#class.1d25856bd99eb1ef683c8f65ff46d05d_5" ;
"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$14=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx::dispatch_after_example.a:DispatchEx* [line 52, column 10]\n n$15=*n$14.x:int [line 52, column 10]\n *&return:int=n$15 [line 52, column 3]\n " shape="box"]
"dispatch_after_example#DispatchEx#class.1d25856bd99eb1ef683c8f65ff46d05d_3" [label="3: Return Stmt \n n$14=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx.dispatch_after_example.a:DispatchEx* [line 52, column 10]\n n$15=*n$14.x:int [line 52, column 10]\n *&return:int=n$15 [line 52, 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_4" [label="4: Call _fun_dispatch_after \n n$16=_fun_dispatch_time(0:unsigned long long,((unsigned long long)2 * 1000000000):long long) [line 46, column 18]\n n$17=_fun_dispatch_get_main_queue() [line 47, column 18]\n n$21=_fun_dispatch_after(n$16:unsigned long long,n$17:NSObject*,(_fun_objc_blockDispatchEx::dispatch_after_example_3):_fn_(*)) block_params [line 46, column 3]\n " shape="box"]
"dispatch_after_example#DispatchEx#class.1d25856bd99eb1ef683c8f65ff46d05d_4" [label="4: Call _fun_dispatch_after \n n$16=_fun_dispatch_time(0:unsigned long long,((unsigned long long)2 * 1000000000):long long) [line 46, column 18]\n n$17=_fun_dispatch_get_main_queue() [line 47, column 18]\n n$21=_fun_dispatch_after(n$16:unsigned long long,n$17:NSObject*,(_fun_objc_blockDispatchEx.dispatch_after_example_3):_fn_(*)) block_params [line 46, 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_5" [label="5: DeclStmt \n VARIABLE_DECLARED(#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx::dispatch_after_example.a:DispatchEx*); [line 45, column 3]\n *&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx::dispatch_after_example.a:DispatchEx*=null [line 45, column 3]\n " shape="box"]
"dispatch_after_example#DispatchEx#class.1d25856bd99eb1ef683c8f65ff46d05d_5" [label="5: DeclStmt \n VARIABLE_DECLARED(#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx.dispatch_after_example.a:DispatchEx*); [line 45, column 3]\n *&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx.dispatch_after_example.a:DispatchEx*=null [line 45, column 3]\n " shape="box"]
"dispatch_after_example#DispatchEx#class.1d25856bd99eb1ef683c8f65ff46d05d_5" -> "dispatch_after_example#DispatchEx#class.1d25856bd99eb1ef683c8f65ff46d05d_4" ;
"dispatch_async_example#DispatchEx#class.5c5d7347be2a9654ad7e32514189fe54_1" [label="1: Start DispatchEx::dispatch_async_example\nFormals: \nLocals: \n " color=yellow style=filled]
"dispatch_async_example#DispatchEx#class.5c5d7347be2a9654ad7e32514189fe54_1" [label="1: Start DispatchEx.dispatch_async_example\nFormals: \nLocals: \n " color=yellow style=filled]
"dispatch_async_example#DispatchEx#class.5c5d7347be2a9654ad7e32514189fe54_1" -> "dispatch_async_example#DispatchEx#class.5c5d7347be2a9654ad7e32514189fe54_5" ;
"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$7=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx::dispatch_async_example.a:DispatchEx* [line 41, column 10]\n n$8=*n$7.x:int [line 41, column 10]\n *&return:int=n$8 [line 41, column 3]\n " shape="box"]
"dispatch_async_example#DispatchEx#class.5c5d7347be2a9654ad7e32514189fe54_3" [label="3: Return Stmt \n n$7=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx.dispatch_async_example.a:DispatchEx* [line 41, column 10]\n n$8=*n$7.x:int [line 41, column 10]\n *&return:int=n$8 [line 41, 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_4" [label="4: Call _fun_dispatch_async \n n$9=_fun_dispatch_get_global_queue(0:long,(unsigned long)0:unsigned long) [line 36, column 18]\n n$13=_fun_dispatch_async(n$9:NSObject*,(_fun_objc_blockDispatchEx::dispatch_async_example_2):_fn_(*)) block_params [line 36, column 3]\n " shape="box"]
"dispatch_async_example#DispatchEx#class.5c5d7347be2a9654ad7e32514189fe54_4" [label="4: Call _fun_dispatch_async \n n$9=_fun_dispatch_get_global_queue(0:long,(unsigned long)0:unsigned long) [line 36, column 18]\n n$13=_fun_dispatch_async(n$9:NSObject*,(_fun_objc_blockDispatchEx.dispatch_async_example_2):_fn_(*)) block_params [line 36, 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_5" [label="5: DeclStmt \n VARIABLE_DECLARED(#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx::dispatch_async_example.a:DispatchEx*); [line 35, column 3]\n *&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx::dispatch_async_example.a:DispatchEx*=null [line 35, column 3]\n " shape="box"]
"dispatch_async_example#DispatchEx#class.5c5d7347be2a9654ad7e32514189fe54_5" [label="5: DeclStmt \n VARIABLE_DECLARED(#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx.dispatch_async_example.a:DispatchEx*); [line 35, column 3]\n *&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx.dispatch_async_example.a:DispatchEx*=null [line 35, column 3]\n " shape="box"]
"dispatch_async_example#DispatchEx#class.5c5d7347be2a9654ad7e32514189fe54_5" -> "dispatch_async_example#DispatchEx#class.5c5d7347be2a9654ad7e32514189fe54_4" ;
"dispatch_barrier_example#DispatchEx#class.a541a40f2f04e29019c58e563f7544d8_1" [label="1: Start DispatchEx::dispatch_barrier_example\nFormals: \nLocals: \n " color=yellow style=filled]
"dispatch_barrier_example#DispatchEx#class.a541a40f2f04e29019c58e563f7544d8_1" [label="1: Start DispatchEx.dispatch_barrier_example\nFormals: \nLocals: \n " color=yellow style=filled]
"dispatch_barrier_example#DispatchEx#class.a541a40f2f04e29019c58e563f7544d8_1" -> "dispatch_barrier_example#DispatchEx#class.a541a40f2f04e29019c58e563f7544d8_5" ;
"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$36=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx::dispatch_barrier_example.a:DispatchEx* [line 79, column 10]\n n$37=*n$36.x:int [line 79, column 10]\n *&return:int=n$37 [line 79, column 3]\n " shape="box"]
"dispatch_barrier_example#DispatchEx#class.a541a40f2f04e29019c58e563f7544d8_3" [label="3: Return Stmt \n n$36=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx.dispatch_barrier_example.a:DispatchEx* [line 79, column 10]\n n$37=*n$36.x:int [line 79, column 10]\n *&return:int=n$37 [line 79, 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_4" [label="4: Call _fun_dispatch_barrier_async \n n$38=_fun_dispatch_get_main_queue() [line 75, column 26]\n n$42=_fun_dispatch_barrier_async(n$38:NSObject*,(_fun_objc_blockDispatchEx::dispatch_barrier_example_6):_fn_(*)) block_params [line 75, column 3]\n " shape="box"]
"dispatch_barrier_example#DispatchEx#class.a541a40f2f04e29019c58e563f7544d8_4" [label="4: Call _fun_dispatch_barrier_async \n n$38=_fun_dispatch_get_main_queue() [line 75, column 26]\n n$42=_fun_dispatch_barrier_async(n$38:NSObject*,(_fun_objc_blockDispatchEx.dispatch_barrier_example_6):_fn_(*)) block_params [line 75, 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_5" [label="5: DeclStmt \n VARIABLE_DECLARED(#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx::dispatch_barrier_example.a:DispatchEx*); [line 74, column 3]\n *&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx::dispatch_barrier_example.a:DispatchEx*=null [line 74, column 3]\n " shape="box"]
"dispatch_barrier_example#DispatchEx#class.a541a40f2f04e29019c58e563f7544d8_5" [label="5: DeclStmt \n VARIABLE_DECLARED(#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx.dispatch_barrier_example.a:DispatchEx*); [line 74, column 3]\n *&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx.dispatch_barrier_example.a:DispatchEx*=null [line 74, column 3]\n " shape="box"]
"dispatch_barrier_example#DispatchEx#class.a541a40f2f04e29019c58e563f7544d8_5" -> "dispatch_barrier_example#DispatchEx#class.a541a40f2f04e29019c58e563f7544d8_4" ;
"dispatch_group_example#DispatchEx#class.f420a75c58eda6d3f0e5e05fadabfc18_1" [label="1: Start DispatchEx::dispatch_group_example\nFormals: \nLocals: \n " color=yellow style=filled]
"dispatch_group_example#DispatchEx#class.f420a75c58eda6d3f0e5e05fadabfc18_1" [label="1: Start DispatchEx.dispatch_group_example\nFormals: \nLocals: \n " color=yellow style=filled]
"dispatch_group_example#DispatchEx#class.f420a75c58eda6d3f0e5e05fadabfc18_1" -> "dispatch_group_example#DispatchEx#class.f420a75c58eda6d3f0e5e05fadabfc18_5" ;
"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$22=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx::dispatch_group_example.a:DispatchEx* [line 61, column 10]\n n$23=*n$22.x:int [line 61, column 10]\n *&return:int=n$23 [line 61, column 3]\n " shape="box"]
"dispatch_group_example#DispatchEx#class.f420a75c58eda6d3f0e5e05fadabfc18_3" [label="3: Return Stmt \n n$22=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx.dispatch_group_example.a:DispatchEx* [line 61, column 10]\n n$23=*n$22.x:int [line 61, column 10]\n *&return:int=n$23 [line 61, 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_4" [label="4: Call _fun_dispatch_group_async \n n$24=_fun_dispatch_get_main_queue() [line 57, column 30]\n n$28=_fun_dispatch_group_async(null:NSObject*,n$24:NSObject*,(_fun_objc_blockDispatchEx::dispatch_group_example_4):_fn_(*)) block_params [line 57, column 3]\n " shape="box"]
"dispatch_group_example#DispatchEx#class.f420a75c58eda6d3f0e5e05fadabfc18_4" [label="4: Call _fun_dispatch_group_async \n n$24=_fun_dispatch_get_main_queue() [line 57, column 30]\n n$28=_fun_dispatch_group_async(null:NSObject*,n$24:NSObject*,(_fun_objc_blockDispatchEx.dispatch_group_example_4):_fn_(*)) block_params [line 57, 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_5" [label="5: DeclStmt \n VARIABLE_DECLARED(#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx::dispatch_group_example.a:DispatchEx*); [line 56, column 3]\n *&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx::dispatch_group_example.a:DispatchEx*=null [line 56, column 3]\n " shape="box"]
"dispatch_group_example#DispatchEx#class.f420a75c58eda6d3f0e5e05fadabfc18_5" [label="5: DeclStmt \n VARIABLE_DECLARED(#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx.dispatch_group_example.a:DispatchEx*); [line 56, column 3]\n *&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx.dispatch_group_example.a:DispatchEx*=null [line 56, column 3]\n " shape="box"]
"dispatch_group_example#DispatchEx#class.f420a75c58eda6d3f0e5e05fadabfc18_5" -> "dispatch_group_example#DispatchEx#class.f420a75c58eda6d3f0e5e05fadabfc18_4" ;
"dispatch_group_notify_example#DispatchEx#class.f5cf54b07621c319cf7ead3b217760ed_1" [label="1: Start DispatchEx::dispatch_group_notify_example\nFormals: \nLocals: \n " color=yellow style=filled]
"dispatch_group_notify_example#DispatchEx#class.f5cf54b07621c319cf7ead3b217760ed_1" [label="1: Start DispatchEx.dispatch_group_notify_example\nFormals: \nLocals: \n " color=yellow style=filled]
"dispatch_group_notify_example#DispatchEx#class.f5cf54b07621c319cf7ead3b217760ed_1" -> "dispatch_group_notify_example#DispatchEx#class.f5cf54b07621c319cf7ead3b217760ed_5" ;
"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$29=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx::dispatch_group_notify_example.a:DispatchEx* [line 70, column 10]\n n$30=*n$29.x:int [line 70, column 10]\n *&return:int=n$30 [line 70, column 3]\n " shape="box"]
"dispatch_group_notify_example#DispatchEx#class.f5cf54b07621c319cf7ead3b217760ed_3" [label="3: Return Stmt \n n$29=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx.dispatch_group_notify_example.a:DispatchEx* [line 70, column 10]\n n$30=*n$29.x:int [line 70, column 10]\n *&return:int=n$30 [line 70, 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_4" [label="4: Call _fun_dispatch_group_async \n n$31=_fun_dispatch_get_main_queue() [line 66, column 30]\n n$35=_fun_dispatch_group_async(null:NSObject*,n$31:NSObject*,(_fun_objc_blockDispatchEx::dispatch_group_notify_example_5):_fn_(*)) block_params [line 66, column 3]\n " shape="box"]
"dispatch_group_notify_example#DispatchEx#class.f5cf54b07621c319cf7ead3b217760ed_4" [label="4: Call _fun_dispatch_group_async \n n$31=_fun_dispatch_get_main_queue() [line 66, column 30]\n n$35=_fun_dispatch_group_async(null:NSObject*,n$31:NSObject*,(_fun_objc_blockDispatchEx.dispatch_group_notify_example_5):_fn_(*)) block_params [line 66, 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_5" [label="5: DeclStmt \n VARIABLE_DECLARED(#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx::dispatch_group_notify_example.a:DispatchEx*); [line 65, column 3]\n *&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx::dispatch_group_notify_example.a:DispatchEx*=null [line 65, column 3]\n " shape="box"]
"dispatch_group_notify_example#DispatchEx#class.f5cf54b07621c319cf7ead3b217760ed_5" [label="5: DeclStmt \n VARIABLE_DECLARED(#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx.dispatch_group_notify_example.a:DispatchEx*); [line 65, column 3]\n *&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx.dispatch_group_notify_example.a:DispatchEx*=null [line 65, column 3]\n " shape="box"]
"dispatch_group_notify_example#DispatchEx#class.f5cf54b07621c319cf7ead3b217760ed_5" -> "dispatch_group_notify_example#DispatchEx#class.f5cf54b07621c319cf7ead3b217760ed_4" ;
"dispatch_once_example#DispatchEx#class.d3456446b1a2d5355c1767887cc8b62c_1" [label="1: Start DispatchEx::dispatch_once_example\nFormals: \nLocals: \n " color=yellow style=filled]
"dispatch_once_example#DispatchEx#class.d3456446b1a2d5355c1767887cc8b62c_1" [label="1: Start DispatchEx.dispatch_once_example\nFormals: \nLocals: \n " color=yellow style=filled]
"dispatch_once_example#DispatchEx#class.d3456446b1a2d5355c1767887cc8b62c_1" -> "dispatch_once_example#DispatchEx#class.d3456446b1a2d5355c1767887cc8b62c_5" ;
"dispatch_once_example#DispatchEx#class.d3456446b1a2d5355c1767887cc8b62c_2" [label="2: Exit DispatchEx::dispatch_once_example \n " color=yellow style=filled]
"dispatch_once_example#DispatchEx#class.d3456446b1a2d5355c1767887cc8b62c_2" [label="2: Exit DispatchEx.dispatch_once_example \n " color=yellow style=filled]
"dispatch_once_example#DispatchEx#class.d3456446b1a2d5355c1767887cc8b62c_3" [label="3: Return Stmt \n n$1=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx::dispatch_once_example.a:DispatchEx* [line 31, column 10]\n n$2=*n$1.x:int [line 31, column 10]\n *&return:int=n$2 [line 31, column 3]\n " shape="box"]
"dispatch_once_example#DispatchEx#class.d3456446b1a2d5355c1767887cc8b62c_3" [label="3: Return Stmt \n n$1=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx.dispatch_once_example.a:DispatchEx* [line 31, column 10]\n n$2=*n$1.x:int [line 31, column 10]\n *&return:int=n$2 [line 31, column 3]\n " shape="box"]
"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__dispatch_once \n n$6=_fun__dispatch_once(&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx::dispatch_once_example.onceToken:long*,(_fun_objc_blockDispatchEx::dispatch_once_example_1):_fn_(*)) block_params [line 27, column 3]\n " shape="box"]
"dispatch_once_example#DispatchEx#class.d3456446b1a2d5355c1767887cc8b62c_4" [label="4: Call _fun__dispatch_once \n n$6=_fun__dispatch_once(&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx.dispatch_once_example.onceToken:long*,(_fun_objc_blockDispatchEx.dispatch_once_example_1):_fn_(*)) block_params [line 27, 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_5" [label="5: DeclStmt \n VARIABLE_DECLARED(#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx::dispatch_once_example.a:DispatchEx*); [line 23, column 3]\n *&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx::dispatch_once_example.a:DispatchEx*=null [line 23, column 3]\n " shape="box"]
"dispatch_once_example#DispatchEx#class.d3456446b1a2d5355c1767887cc8b62c_5" [label="5: DeclStmt \n VARIABLE_DECLARED(#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx.dispatch_once_example.a:DispatchEx*); [line 23, column 3]\n *&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx.dispatch_once_example.a:DispatchEx*=null [line 23, column 3]\n " shape="box"]
"dispatch_once_example#DispatchEx#class.d3456446b1a2d5355c1767887cc8b62c_5" -> "dispatch_once_example#DispatchEx#class.d3456446b1a2d5355c1767887cc8b62c_4" ;
"init#DispatchEx#instance.04117ac30ba5664de2d577c4aa97d118_1" [label="1: Start DispatchEx::init\nFormals: self:DispatchEx*\nLocals: \n " color=yellow style=filled]
"init#DispatchEx#instance.04117ac30ba5664de2d577c4aa97d118_1" [label="1: Start DispatchEx.init\nFormals: self:DispatchEx*\nLocals: \n " color=yellow style=filled]
"init#DispatchEx#instance.04117ac30ba5664de2d577c4aa97d118_1" -> "init#DispatchEx#instance.04117ac30ba5664de2d577c4aa97d118_3" ;
"init#DispatchEx#instance.04117ac30ba5664de2d577c4aa97d118_2" [label="2: Exit DispatchEx::init \n " color=yellow style=filled]
"init#DispatchEx#instance.04117ac30ba5664de2d577c4aa97d118_2" [label="2: Exit DispatchEx.init \n " color=yellow style=filled]
"init#DispatchEx#instance.04117ac30ba5664de2d577c4aa97d118_3" [label="3: Return Stmt \n n$0=*&self:DispatchEx* [line 19, column 10]\n *&return:objc_object*=n$0 [line 19, column 3]\n " shape="box"]

@ -26,7 +26,7 @@ digraph cfg {
"objc_blockDispatchInMacroTest_1.0a2ff27838c52acc175e58f653e6eaad_2" [label="2: Exit objc_blockDispatchInMacroTest_1 \n " color=yellow style=filled]
"objc_blockDispatchInMacroTest_1.0a2ff27838c52acc175e58f653e6eaad_3" [label="3: BinaryOperatorStmt: Assign \n n$1=_fun___objc_alloc_no_fail(sizeof(t=NSObject):unsigned long) [line 21, column 10]\n n$2=_fun_NSObject::init(n$1:NSObject*) virtual [line 21, column 10]\n *&#GB<codetoanalyze/objc/shared/block/dispatch_in_macro.m>$DispatchInMacroTest.static_storage:NSObject*=n$2 [line 21, 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 21, column 10]\n n$2=_fun_NSObject.init(n$1:NSObject*) virtual [line 21, column 10]\n *&#GB<codetoanalyze/objc/shared/block/dispatch_in_macro.m>$DispatchInMacroTest.static_storage:NSObject*=n$2 [line 21, column 10]\n " shape="box"]
"objc_blockDispatchInMacroTest_1.0a2ff27838c52acc175e58f653e6eaad_3" -> "objc_blockDispatchInMacroTest_1.0a2ff27838c52acc175e58f653e6eaad_2" ;

@ -1,24 +1,24 @@
/* @generated */
digraph cfg {
"performDaysWork#EOCPerson#instance.68f45cebac26de5310062b9c47f6dc36_1" [label="1: Start EOCPerson::performDaysWork\nFormals: self:EOCPerson*\nLocals: \n " color=yellow style=filled]
"performDaysWork#EOCPerson#instance.68f45cebac26de5310062b9c47f6dc36_1" [label="1: Start EOCPerson.performDaysWork\nFormals: self:EOCPerson*\nLocals: \n " color=yellow style=filled]
"performDaysWork#EOCPerson#instance.68f45cebac26de5310062b9c47f6dc36_1" -> "performDaysWork#EOCPerson#instance.68f45cebac26de5310062b9c47f6dc36_3" ;
"performDaysWork#EOCPerson#instance.68f45cebac26de5310062b9c47f6dc36_2" [label="2: Exit EOCPerson::performDaysWork \n " color=yellow style=filled]
"performDaysWork#EOCPerson#instance.68f45cebac26de5310062b9c47f6dc36_2" [label="2: Exit EOCPerson.performDaysWork \n " color=yellow style=filled]
"performDaysWork#EOCPerson#instance.68f45cebac26de5310062b9c47f6dc36_3" [label="3: Call _fun_NSLog \n n$0=_fun_NSString::stringWithUTF8String:(\"Performing days at work\":char* const ) [line 13, column 9]\n n$1=_fun_NSLog(n$0:objc_object*) [line 13, column 3]\n " shape="box"]
"performDaysWork#EOCPerson#instance.68f45cebac26de5310062b9c47f6dc36_3" [label="3: Call _fun_NSLog \n n$0=_fun_NSString.stringWithUTF8String:(\"Performing days at work\":char* const ) [line 13, column 9]\n n$1=_fun_NSLog(n$0:objc_object*) [line 13, column 3]\n " shape="box"]
"performDaysWork#EOCPerson#instance.68f45cebac26de5310062b9c47f6dc36_3" -> "performDaysWork#EOCPerson#instance.68f45cebac26de5310062b9c47f6dc36_2" ;
"takeVacationFromWork#EOCPerson#instance.a4a2043283853257ef9e4402128b75f9_1" [label="1: Start EOCPerson::takeVacationFromWork\nFormals: self:EOCPerson*\nLocals: \n " color=yellow style=filled]
"takeVacationFromWork#EOCPerson#instance.a4a2043283853257ef9e4402128b75f9_1" [label="1: Start EOCPerson.takeVacationFromWork\nFormals: self:EOCPerson*\nLocals: \n " color=yellow style=filled]
"takeVacationFromWork#EOCPerson#instance.a4a2043283853257ef9e4402128b75f9_1" -> "takeVacationFromWork#EOCPerson#instance.a4a2043283853257ef9e4402128b75f9_3" ;
"takeVacationFromWork#EOCPerson#instance.a4a2043283853257ef9e4402128b75f9_2" [label="2: Exit EOCPerson::takeVacationFromWork \n " color=yellow style=filled]
"takeVacationFromWork#EOCPerson#instance.a4a2043283853257ef9e4402128b75f9_2" [label="2: Exit EOCPerson.takeVacationFromWork \n " color=yellow style=filled]
"takeVacationFromWork#EOCPerson#instance.a4a2043283853257ef9e4402128b75f9_3" [label="3: Call _fun_NSLog \n n$2=_fun_NSString::stringWithUTF8String:(\"BTaking vacations\":char* const ) [line 17, column 9]\n n$3=_fun_NSLog(n$2:objc_object*) [line 17, column 3]\n " shape="box"]
"takeVacationFromWork#EOCPerson#instance.a4a2043283853257ef9e4402128b75f9_3" [label="3: Call _fun_NSLog \n n$2=_fun_NSString.stringWithUTF8String:(\"BTaking vacations\":char* const ) [line 17, column 9]\n n$3=_fun_NSLog(n$2:objc_object*) [line 17, column 3]\n " shape="box"]
"takeVacationFromWork#EOCPerson#instance.a4a2043283853257ef9e4402128b75f9_3" -> "takeVacationFromWork#EOCPerson#instance.a4a2043283853257ef9e4402128b75f9_2" ;

@ -15,11 +15,11 @@ digraph cfg {
"CategoryProcdescMain.ae2ee334c26ccbf8ee413efe5d896611_4" -> "CategoryProcdescMain.ae2ee334c26ccbf8ee413efe5d896611_3" ;
"CategoryProcdescMain.ae2ee334c26ccbf8ee413efe5d896611_5" [label="5: Message Call: performDaysWork \n n$1=*&person:EOCPerson* [line 13, column 4]\n n$2=_fun_EOCPerson::performDaysWork(n$1:EOCPerson*) virtual [line 13, column 3]\n " shape="box"]
"CategoryProcdescMain.ae2ee334c26ccbf8ee413efe5d896611_5" [label="5: Message Call: performDaysWork \n n$1=*&person:EOCPerson* [line 13, column 4]\n n$2=_fun_EOCPerson.performDaysWork(n$1:EOCPerson*) virtual [line 13, column 3]\n " shape="box"]
"CategoryProcdescMain.ae2ee334c26ccbf8ee413efe5d896611_5" -> "CategoryProcdescMain.ae2ee334c26ccbf8ee413efe5d896611_4" ;
"CategoryProcdescMain.ae2ee334c26ccbf8ee413efe5d896611_6" [label="6: DeclStmt \n VARIABLE_DECLARED(person:EOCPerson*); [line 12, column 3]\n n$3=_fun___objc_alloc_no_fail(sizeof(t=EOCPerson):unsigned long) [line 12, column 24]\n n$4=_fun_NSObject::init(n$3:EOCPerson*) virtual [line 12, column 23]\n *&person:EOCPerson*=n$4 [line 12, column 3]\n " shape="box"]
"CategoryProcdescMain.ae2ee334c26ccbf8ee413efe5d896611_6" [label="6: DeclStmt \n VARIABLE_DECLARED(person:EOCPerson*); [line 12, column 3]\n n$3=_fun___objc_alloc_no_fail(sizeof(t=EOCPerson):unsigned long) [line 12, column 24]\n n$4=_fun_NSObject.init(n$3:EOCPerson*) virtual [line 12, column 23]\n *&person:EOCPerson*=n$4 [line 12, column 3]\n " shape="box"]
"CategoryProcdescMain.ae2ee334c26ccbf8ee413efe5d896611_6" -> "CategoryProcdescMain.ae2ee334c26ccbf8ee413efe5d896611_5" ;

@ -7,15 +7,15 @@ digraph cfg {
"super_example_main.e3ebe95e6c5ae811733f235c29fbbf6d_2" [label="2: Exit super_example_main \n " color=yellow style=filled]
"super_example_main.e3ebe95e6c5ae811733f235c29fbbf6d_3" [label="3: DeclStmt \n VARIABLE_DECLARED(a:objc_object*); [line 40, column 5]\n n$0=_fun___objc_alloc_no_fail(sizeof(t=ASuper):unsigned long) [line 40, column 21]\n n$1=_fun_NSObject::init(n$0:ASuper*) virtual [line 40, column 21]\n " shape="box"]
"super_example_main.e3ebe95e6c5ae811733f235c29fbbf6d_3" [label="3: DeclStmt \n VARIABLE_DECLARED(a:objc_object*); [line 40, column 5]\n n$0=_fun___objc_alloc_no_fail(sizeof(t=ASuper):unsigned long) [line 40, column 21]\n n$1=_fun_NSObject.init(n$0:ASuper*) virtual [line 40, column 21]\n " shape="box"]
"super_example_main.e3ebe95e6c5ae811733f235c29fbbf6d_3" -> "super_example_main.e3ebe95e6c5ae811733f235c29fbbf6d_2" ;
"init#ASuper#instance.9832dae2a83c036d9d82b45709c4855e_1" [label="1: Start ASuper::init\nFormals: self:ASuper*\nLocals: \n " color=yellow style=filled]
"init#ASuper#instance.9832dae2a83c036d9d82b45709c4855e_1" [label="1: Start ASuper.init\nFormals: self:ASuper*\nLocals: \n " color=yellow style=filled]
"init#ASuper#instance.9832dae2a83c036d9d82b45709c4855e_1" -> "init#ASuper#instance.9832dae2a83c036d9d82b45709c4855e_5" ;
"init#ASuper#instance.9832dae2a83c036d9d82b45709c4855e_2" [label="2: Exit ASuper::init \n " color=yellow style=filled]
"init#ASuper#instance.9832dae2a83c036d9d82b45709c4855e_2" [label="2: Exit ASuper.init \n " color=yellow style=filled]
"init#ASuper#instance.9832dae2a83c036d9d82b45709c4855e_3" [label="3: Return Stmt \n n$0=*&self:ASuper* [line 33, column 10]\n *&return:objc_object*=n$0 [line 33, column 3]\n " shape="box"]
@ -26,15 +26,15 @@ digraph cfg {
"init#ASuper#instance.9832dae2a83c036d9d82b45709c4855e_4" -> "init#ASuper#instance.9832dae2a83c036d9d82b45709c4855e_3" ;
"init#ASuper#instance.9832dae2a83c036d9d82b45709c4855e_5" [label="5: BinaryOperatorStmt: Assign \n n$2=*&self:ASuper* [line 31, column 10]\n n$3=_fun_BSuper::init(n$2:ASuper*) [line 31, column 10]\n *&self:ASuper*=n$3 [line 31, column 3]\n " shape="box"]
"init#ASuper#instance.9832dae2a83c036d9d82b45709c4855e_5" [label="5: BinaryOperatorStmt: Assign \n n$2=*&self:ASuper* [line 31, column 10]\n n$3=_fun_BSuper.init(n$2:ASuper*) [line 31, column 10]\n *&self:ASuper*=n$3 [line 31, column 3]\n " shape="box"]
"init#ASuper#instance.9832dae2a83c036d9d82b45709c4855e_5" -> "init#ASuper#instance.9832dae2a83c036d9d82b45709c4855e_4" ;
"init#BSuper#instance.6678b088cbd2579c21b766781beb8030_1" [label="1: Start BSuper::init\nFormals: self:BSuper*\nLocals: \n " color=yellow style=filled]
"init#BSuper#instance.6678b088cbd2579c21b766781beb8030_1" [label="1: Start BSuper.init\nFormals: self:BSuper*\nLocals: \n " color=yellow style=filled]
"init#BSuper#instance.6678b088cbd2579c21b766781beb8030_1" -> "init#BSuper#instance.6678b088cbd2579c21b766781beb8030_3" ;
"init#BSuper#instance.6678b088cbd2579c21b766781beb8030_2" [label="2: Exit BSuper::init \n " color=yellow style=filled]
"init#BSuper#instance.6678b088cbd2579c21b766781beb8030_2" [label="2: Exit BSuper.init \n " color=yellow style=filled]
"init#BSuper#instance.6678b088cbd2579c21b766781beb8030_3" [label="3: Return Stmt \n *&return:objc_object*=null [line 17, column 3]\n " shape="box"]

@ -1,10 +1,10 @@
/* @generated */
digraph cfg {
"getS#ArcA#instance.a6d142da8215d5903690f8a054289ac7_1" [label="1: Start ArcA::getS\nFormals: self:ArcA*\nLocals: s:NSString* \n " color=yellow style=filled]
"getS#ArcA#instance.a6d142da8215d5903690f8a054289ac7_1" [label="1: Start ArcA.getS\nFormals: self:ArcA*\nLocals: s:NSString* \n " color=yellow style=filled]
"getS#ArcA#instance.a6d142da8215d5903690f8a054289ac7_1" -> "getS#ArcA#instance.a6d142da8215d5903690f8a054289ac7_4" ;
"getS#ArcA#instance.a6d142da8215d5903690f8a054289ac7_2" [label="2: Exit ArcA::getS \n " color=yellow style=filled]
"getS#ArcA#instance.a6d142da8215d5903690f8a054289ac7_2" [label="2: Exit ArcA.getS \n " color=yellow style=filled]
"getS#ArcA#instance.a6d142da8215d5903690f8a054289ac7_3" [label="3: Return Stmt \n n$0=*&s:NSString* [line 22, column 10]\n *&return:NSString*=n$0 [line 22, column 3]\n " shape="box"]
@ -15,11 +15,11 @@ digraph cfg {
"getS#ArcA#instance.a6d142da8215d5903690f8a054289ac7_4" -> "getS#ArcA#instance.a6d142da8215d5903690f8a054289ac7_3" ;
"newS#ArcA#instance.9d1f2aa4ea1ccfd32c1438724cfc19ba_1" [label="1: Start ArcA::newS\nFormals: self:ArcA*\nLocals: s:NSString* \n " color=yellow style=filled]
"newS#ArcA#instance.9d1f2aa4ea1ccfd32c1438724cfc19ba_1" [label="1: Start ArcA.newS\nFormals: self:ArcA*\nLocals: s:NSString* \n " color=yellow style=filled]
"newS#ArcA#instance.9d1f2aa4ea1ccfd32c1438724cfc19ba_1" -> "newS#ArcA#instance.9d1f2aa4ea1ccfd32c1438724cfc19ba_4" ;
"newS#ArcA#instance.9d1f2aa4ea1ccfd32c1438724cfc19ba_2" [label="2: Exit ArcA::newS \n " color=yellow style=filled]
"newS#ArcA#instance.9d1f2aa4ea1ccfd32c1438724cfc19ba_2" [label="2: Exit ArcA.newS \n " color=yellow style=filled]
"newS#ArcA#instance.9d1f2aa4ea1ccfd32c1438724cfc19ba_3" [label="3: Return Stmt \n n$2=*&s:NSString* [line 28, column 10]\n *&return:NSString*=n$2 [line 28, column 3]\n " shape="box"]

@ -19,7 +19,7 @@ digraph cfg {
"autorelease_test1.8f3499e28c7129f0f6b2300d214d7864_5" -> "autorelease_test1.8f3499e28c7129f0f6b2300d214d7864_4" ;
"autorelease_test1.8f3499e28c7129f0f6b2300d214d7864_6" [label="6: Message Call: retain \n n$2=*&s1:Auto* [line 38, column 6]\n n$3=_fun_NSObject::retain(n$2:Auto*) virtual [line 38, column 5]\n " shape="box"]
"autorelease_test1.8f3499e28c7129f0f6b2300d214d7864_6" [label="6: Message Call: retain \n n$2=*&s1:Auto* [line 38, column 6]\n n$3=_fun_NSObject.retain(n$2:Auto*) virtual [line 38, column 5]\n " shape="box"]
"autorelease_test1.8f3499e28c7129f0f6b2300d214d7864_6" -> "autorelease_test1.8f3499e28c7129f0f6b2300d214d7864_5" ;
@ -85,15 +85,15 @@ digraph cfg {
"autorelease_test3.5fa2e6ceb6075e26a47f9b8c9cdf65ba_3" -> "autorelease_test3.5fa2e6ceb6075e26a47f9b8c9cdf65ba_2" ;
"autorelease_test3.5fa2e6ceb6075e26a47f9b8c9cdf65ba_4" [label="4: Message Call: release \n n$1=*&pool:NSAutoreleasePool* [line 61, column 4]\n n$2=_fun_NSObject::release(n$1:NSAutoreleasePool*) virtual [line 61, column 3]\n " shape="box"]
"autorelease_test3.5fa2e6ceb6075e26a47f9b8c9cdf65ba_4" [label="4: Message Call: release \n n$1=*&pool:NSAutoreleasePool* [line 61, column 4]\n n$2=_fun_NSObject.release(n$1:NSAutoreleasePool*) virtual [line 61, column 3]\n " shape="box"]
"autorelease_test3.5fa2e6ceb6075e26a47f9b8c9cdf65ba_4" -> "autorelease_test3.5fa2e6ceb6075e26a47f9b8c9cdf65ba_3" ;
"autorelease_test3.5fa2e6ceb6075e26a47f9b8c9cdf65ba_5" [label="5: DeclStmt \n VARIABLE_DECLARED(string:NSString*); [line 59, column 3]\n n$3=_fun___objc_alloc_no_fail(sizeof(t=NSString):unsigned long) [line 59, column 23]\n n$4=_fun_NSObject::autorelease(n$3:NSString*) virtual [line 59, column 22]\n *&string:NSString*=n$4 [line 59, column 3]\n " shape="box"]
"autorelease_test3.5fa2e6ceb6075e26a47f9b8c9cdf65ba_5" [label="5: DeclStmt \n VARIABLE_DECLARED(string:NSString*); [line 59, column 3]\n n$3=_fun___objc_alloc_no_fail(sizeof(t=NSString):unsigned long) [line 59, column 23]\n n$4=_fun_NSObject.autorelease(n$3:NSString*) virtual [line 59, column 22]\n *&string:NSString*=n$4 [line 59, column 3]\n " shape="box"]
"autorelease_test3.5fa2e6ceb6075e26a47f9b8c9cdf65ba_5" -> "autorelease_test3.5fa2e6ceb6075e26a47f9b8c9cdf65ba_4" ;
"autorelease_test3.5fa2e6ceb6075e26a47f9b8c9cdf65ba_6" [label="6: DeclStmt \n VARIABLE_DECLARED(pool:NSAutoreleasePool*); [line 58, column 3]\n n$5=_fun___objc_alloc_no_fail(sizeof(t=NSAutoreleasePool):unsigned long) [line 58, column 30]\n n$6=_fun_NSObject::init(n$5:NSAutoreleasePool*) virtual [line 58, column 29]\n *&pool:NSAutoreleasePool*=n$6 [line 58, column 3]\n " shape="box"]
"autorelease_test3.5fa2e6ceb6075e26a47f9b8c9cdf65ba_6" [label="6: DeclStmt \n VARIABLE_DECLARED(pool:NSAutoreleasePool*); [line 58, column 3]\n n$5=_fun___objc_alloc_no_fail(sizeof(t=NSAutoreleasePool):unsigned long) [line 58, column 30]\n n$6=_fun_NSObject.init(n$5:NSAutoreleasePool*) virtual [line 58, column 29]\n *&pool:NSAutoreleasePool*=n$6 [line 58, column 3]\n " shape="box"]
"autorelease_test3.5fa2e6ceb6075e26a47f9b8c9cdf65ba_6" -> "autorelease_test3.5fa2e6ceb6075e26a47f9b8c9cdf65ba_5" ;
@ -104,22 +104,22 @@ digraph cfg {
"createA.48a5d7f480131d59bba69d521715b836_2" [label="2: Exit createA \n " color=yellow style=filled]
"createA.48a5d7f480131d59bba69d521715b836_3" [label="3: Return Stmt \n n$0=*&s1:Auto* [line 29, column 11]\n n$1=_fun_NSObject::autorelease(n$0:Auto*) virtual [line 29, column 10]\n *&return:Auto*=n$1 [line 29, column 3]\n " shape="box"]
"createA.48a5d7f480131d59bba69d521715b836_3" [label="3: Return Stmt \n n$0=*&s1:Auto* [line 29, column 11]\n n$1=_fun_NSObject.autorelease(n$0:Auto*) virtual [line 29, column 10]\n *&return:Auto*=n$1 [line 29, column 3]\n " shape="box"]
"createA.48a5d7f480131d59bba69d521715b836_3" -> "createA.48a5d7f480131d59bba69d521715b836_2" ;
"createA.48a5d7f480131d59bba69d521715b836_4" [label="4: DeclStmt \n VARIABLE_DECLARED(s1:Auto*); [line 28, column 3]\n n$2=_fun___objc_alloc_no_fail(sizeof(t=Auto):unsigned long) [line 28, column 15]\n n$3=_fun_NSObject::init(n$2:Auto*) virtual [line 28, column 14]\n *&s1:Auto*=n$3 [line 28, column 3]\n " shape="box"]
"createA.48a5d7f480131d59bba69d521715b836_4" [label="4: DeclStmt \n VARIABLE_DECLARED(s1:Auto*); [line 28, column 3]\n n$2=_fun___objc_alloc_no_fail(sizeof(t=Auto):unsigned long) [line 28, column 15]\n n$3=_fun_NSObject.init(n$2:Auto*) virtual [line 28, column 14]\n *&s1:Auto*=n$3 [line 28, column 3]\n " shape="box"]
"createA.48a5d7f480131d59bba69d521715b836_4" -> "createA.48a5d7f480131d59bba69d521715b836_3" ;
"autorelease_main#Auto#instance.dbdd003a511fe2beb7e0a817d39f6fd8_1" [label="1: Start Auto::autorelease_main\nFormals: self:Auto*\nLocals: s:NSString* \n " color=yellow style=filled]
"autorelease_main#Auto#instance.dbdd003a511fe2beb7e0a817d39f6fd8_1" [label="1: Start Auto.autorelease_main\nFormals: self:Auto*\nLocals: s:NSString* \n " color=yellow style=filled]
"autorelease_main#Auto#instance.dbdd003a511fe2beb7e0a817d39f6fd8_1" -> "autorelease_main#Auto#instance.dbdd003a511fe2beb7e0a817d39f6fd8_4" ;
"autorelease_main#Auto#instance.dbdd003a511fe2beb7e0a817d39f6fd8_2" [label="2: Exit Auto::autorelease_main \n " color=yellow style=filled]
"autorelease_main#Auto#instance.dbdd003a511fe2beb7e0a817d39f6fd8_2" [label="2: Exit Auto.autorelease_main \n " color=yellow style=filled]
"autorelease_main#Auto#instance.dbdd003a511fe2beb7e0a817d39f6fd8_3" [label="3: Return Stmt \n n$0=*&s:NSString* [line 22, column 11]\n n$1=_fun_NSObject::autorelease(n$0:NSString*) virtual [line 22, column 10]\n *&return:NSString*=n$1 [line 22, column 3]\n " shape="box"]
"autorelease_main#Auto#instance.dbdd003a511fe2beb7e0a817d39f6fd8_3" [label="3: Return Stmt \n n$0=*&s:NSString* [line 22, column 11]\n n$1=_fun_NSObject.autorelease(n$0:NSString*) virtual [line 22, column 10]\n *&return:NSString*=n$1 [line 22, column 3]\n " shape="box"]
"autorelease_main#Auto#instance.dbdd003a511fe2beb7e0a817d39f6fd8_3" -> "autorelease_main#Auto#instance.dbdd003a511fe2beb7e0a817d39f6fd8_2" ;

@ -1,40 +1,40 @@
/* @generated */
digraph cfg {
"objc_blockMemoryLeakExample::blockCapturedVarLeak_1.2fc7658885fe88ae3f1ad70cae53336a_1" [label="1: Start objc_blockMemoryLeakExample::blockCapturedVarLeak_1\nFormals: x:int*\nLocals: \nCaptured: x:int* \n " color=yellow style=filled]
"objc_blockMemoryLeakExample.blockCapturedVarLeak_1.74cf15f2799999b1100e5a876dbb3ac4_1" [label="1: Start objc_blockMemoryLeakExample.blockCapturedVarLeak_1\nFormals: x:int*\nLocals: \nCaptured: x:int* \n " color=yellow style=filled]
"objc_blockMemoryLeakExample::blockCapturedVarLeak_1.2fc7658885fe88ae3f1ad70cae53336a_1" -> "objc_blockMemoryLeakExample::blockCapturedVarLeak_1.2fc7658885fe88ae3f1ad70cae53336a_3" ;
"objc_blockMemoryLeakExample::blockCapturedVarLeak_1.2fc7658885fe88ae3f1ad70cae53336a_2" [label="2: Exit objc_blockMemoryLeakExample::blockCapturedVarLeak_1 \n " color=yellow style=filled]
"objc_blockMemoryLeakExample.blockCapturedVarLeak_1.74cf15f2799999b1100e5a876dbb3ac4_1" -> "objc_blockMemoryLeakExample.blockCapturedVarLeak_1.74cf15f2799999b1100e5a876dbb3ac4_3" ;
"objc_blockMemoryLeakExample.blockCapturedVarLeak_1.74cf15f2799999b1100e5a876dbb3ac4_2" [label="2: Exit objc_blockMemoryLeakExample.blockCapturedVarLeak_1 \n " color=yellow style=filled]
"objc_blockMemoryLeakExample::blockCapturedVarLeak_1.2fc7658885fe88ae3f1ad70cae53336a_3" [label="3: Return Stmt \n n$52=*&x:int* [line 95, column 13]\n n$53=*n$52:int [line 95, column 12]\n *&return:int=n$53 [line 95, column 5]\n " shape="box"]
"objc_blockMemoryLeakExample.blockCapturedVarLeak_1.74cf15f2799999b1100e5a876dbb3ac4_3" [label="3: Return Stmt \n n$52=*&x:int* [line 95, column 13]\n n$53=*n$52:int [line 95, column 12]\n *&return:int=n$53 [line 95, column 5]\n " shape="box"]
"objc_blockMemoryLeakExample::blockCapturedVarLeak_1.2fc7658885fe88ae3f1ad70cae53336a_3" -> "objc_blockMemoryLeakExample::blockCapturedVarLeak_1.2fc7658885fe88ae3f1ad70cae53336a_2" ;
"objc_blockMemoryLeakExample::blockFreeNoLeak_2.280cc1341d470c6c734eb5c908870fcf_1" [label="1: Start objc_blockMemoryLeakExample::blockFreeNoLeak_2\nFormals: x:int*\nLocals: i:int\nCaptured: x:int* \n " color=yellow style=filled]
"objc_blockMemoryLeakExample.blockCapturedVarLeak_1.74cf15f2799999b1100e5a876dbb3ac4_3" -> "objc_blockMemoryLeakExample.blockCapturedVarLeak_1.74cf15f2799999b1100e5a876dbb3ac4_2" ;
"objc_blockMemoryLeakExample.blockFreeNoLeak_2.c788da2c768efd587ffe2f3483f8b01b_1" [label="1: Start objc_blockMemoryLeakExample.blockFreeNoLeak_2\nFormals: x:int*\nLocals: i:int\nCaptured: x:int* \n " color=yellow style=filled]
"objc_blockMemoryLeakExample::blockFreeNoLeak_2.280cc1341d470c6c734eb5c908870fcf_1" -> "objc_blockMemoryLeakExample::blockFreeNoLeak_2.280cc1341d470c6c734eb5c908870fcf_5" ;
"objc_blockMemoryLeakExample::blockFreeNoLeak_2.280cc1341d470c6c734eb5c908870fcf_2" [label="2: Exit objc_blockMemoryLeakExample::blockFreeNoLeak_2 \n " color=yellow style=filled]
"objc_blockMemoryLeakExample.blockFreeNoLeak_2.c788da2c768efd587ffe2f3483f8b01b_1" -> "objc_blockMemoryLeakExample.blockFreeNoLeak_2.c788da2c768efd587ffe2f3483f8b01b_5" ;
"objc_blockMemoryLeakExample.blockFreeNoLeak_2.c788da2c768efd587ffe2f3483f8b01b_2" [label="2: Exit objc_blockMemoryLeakExample.blockFreeNoLeak_2 \n " color=yellow style=filled]
"objc_blockMemoryLeakExample::blockFreeNoLeak_2.280cc1341d470c6c734eb5c908870fcf_3" [label="3: Return Stmt \n n$59=*&i:int [line 106, column 12]\n *&return:int=n$59 [line 106, column 5]\n " shape="box"]
"objc_blockMemoryLeakExample.blockFreeNoLeak_2.c788da2c768efd587ffe2f3483f8b01b_3" [label="3: Return Stmt \n n$59=*&i:int [line 106, column 12]\n *&return:int=n$59 [line 106, column 5]\n " shape="box"]
"objc_blockMemoryLeakExample::blockFreeNoLeak_2.280cc1341d470c6c734eb5c908870fcf_3" -> "objc_blockMemoryLeakExample::blockFreeNoLeak_2.280cc1341d470c6c734eb5c908870fcf_2" ;
"objc_blockMemoryLeakExample::blockFreeNoLeak_2.280cc1341d470c6c734eb5c908870fcf_4" [label="4: Call _fun_free \n n$60=*&x:int* [line 105, column 10]\n n$61=_fun_free(n$60:void*) [line 105, column 5]\n " shape="box"]
"objc_blockMemoryLeakExample.blockFreeNoLeak_2.c788da2c768efd587ffe2f3483f8b01b_3" -> "objc_blockMemoryLeakExample.blockFreeNoLeak_2.c788da2c768efd587ffe2f3483f8b01b_2" ;
"objc_blockMemoryLeakExample.blockFreeNoLeak_2.c788da2c768efd587ffe2f3483f8b01b_4" [label="4: Call _fun_free \n n$60=*&x:int* [line 105, column 10]\n n$61=_fun_free(n$60:void*) [line 105, column 5]\n " shape="box"]
"objc_blockMemoryLeakExample::blockFreeNoLeak_2.280cc1341d470c6c734eb5c908870fcf_4" -> "objc_blockMemoryLeakExample::blockFreeNoLeak_2.280cc1341d470c6c734eb5c908870fcf_3" ;
"objc_blockMemoryLeakExample::blockFreeNoLeak_2.280cc1341d470c6c734eb5c908870fcf_5" [label="5: DeclStmt \n VARIABLE_DECLARED(i:int); [line 104, column 5]\n n$62=*&x:int* [line 104, column 14]\n n$63=*n$62:int [line 104, column 13]\n *&i:int=n$63 [line 104, column 5]\n " shape="box"]
"objc_blockMemoryLeakExample.blockFreeNoLeak_2.c788da2c768efd587ffe2f3483f8b01b_4" -> "objc_blockMemoryLeakExample.blockFreeNoLeak_2.c788da2c768efd587ffe2f3483f8b01b_3" ;
"objc_blockMemoryLeakExample.blockFreeNoLeak_2.c788da2c768efd587ffe2f3483f8b01b_5" [label="5: DeclStmt \n VARIABLE_DECLARED(i:int); [line 104, column 5]\n n$62=*&x:int* [line 104, column 14]\n n$63=*n$62:int [line 104, column 13]\n *&i:int=n$63 [line 104, column 5]\n " shape="box"]
"objc_blockMemoryLeakExample::blockFreeNoLeak_2.280cc1341d470c6c734eb5c908870fcf_5" -> "objc_blockMemoryLeakExample::blockFreeNoLeak_2.280cc1341d470c6c734eb5c908870fcf_4" ;
"createCloseCrossGlyph:#MemoryLeakExample#class.b78475cbe035b221b50538a8aad3c9cf_1" [label="1: Start MemoryLeakExample::createCloseCrossGlyph:\nFormals: rect:CGRect\nLocals: \n " color=yellow style=filled]
"objc_blockMemoryLeakExample.blockFreeNoLeak_2.c788da2c768efd587ffe2f3483f8b01b_5" -> "objc_blockMemoryLeakExample.blockFreeNoLeak_2.c788da2c768efd587ffe2f3483f8b01b_4" ;
"createCloseCrossGlyph:#MemoryLeakExample#class.b78475cbe035b221b50538a8aad3c9cf_1" [label="1: Start MemoryLeakExample.createCloseCrossGlyph:\nFormals: rect:CGRect\nLocals: \n " color=yellow style=filled]
"createCloseCrossGlyph:#MemoryLeakExample#class.b78475cbe035b221b50538a8aad3c9cf_1" -> "createCloseCrossGlyph:#MemoryLeakExample#class.b78475cbe035b221b50538a8aad3c9cf_4" ;
"createCloseCrossGlyph:#MemoryLeakExample#class.b78475cbe035b221b50538a8aad3c9cf_2" [label="2: Exit MemoryLeakExample::createCloseCrossGlyph: \n " color=yellow style=filled]
"createCloseCrossGlyph:#MemoryLeakExample#class.b78475cbe035b221b50538a8aad3c9cf_2" [label="2: Exit MemoryLeakExample.createCloseCrossGlyph: \n " color=yellow style=filled]
"createCloseCrossGlyph:#MemoryLeakExample#class.b78475cbe035b221b50538a8aad3c9cf_3" [label="3: Call _fun_CGPathCreateMutable \n n$26=_fun_CGPathCreateMutable() [line 53, column 3]\n " shape="box"]
@ -45,11 +45,11 @@ digraph cfg {
"createCloseCrossGlyph:#MemoryLeakExample#class.b78475cbe035b221b50538a8aad3c9cf_4" -> "createCloseCrossGlyph:#MemoryLeakExample#class.b78475cbe035b221b50538a8aad3c9cf_3" ;
"createCloseCrossGlyphNoLeak:#MemoryLeakExample#class.0954bcd442044fd9788af38303a3790b_1" [label="1: Start MemoryLeakExample::createCloseCrossGlyphNoLeak:\nFormals: rect:CGRect\nLocals: path1:CGPath* lineThickness:double \n " color=yellow style=filled]
"createCloseCrossGlyphNoLeak:#MemoryLeakExample#class.0954bcd442044fd9788af38303a3790b_1" [label="1: Start MemoryLeakExample.createCloseCrossGlyphNoLeak:\nFormals: rect:CGRect\nLocals: path1:CGPath* lineThickness:double \n " color=yellow style=filled]
"createCloseCrossGlyphNoLeak:#MemoryLeakExample#class.0954bcd442044fd9788af38303a3790b_1" -> "createCloseCrossGlyphNoLeak:#MemoryLeakExample#class.0954bcd442044fd9788af38303a3790b_5" ;
"createCloseCrossGlyphNoLeak:#MemoryLeakExample#class.0954bcd442044fd9788af38303a3790b_2" [label="2: Exit MemoryLeakExample::createCloseCrossGlyphNoLeak: \n " color=yellow style=filled]
"createCloseCrossGlyphNoLeak:#MemoryLeakExample#class.0954bcd442044fd9788af38303a3790b_2" [label="2: Exit MemoryLeakExample.createCloseCrossGlyphNoLeak: \n " color=yellow style=filled]
"createCloseCrossGlyphNoLeak:#MemoryLeakExample#class.0954bcd442044fd9788af38303a3790b_3" [label="3: Call _fun_CFRelease \n n$29=*&path1:CGPath* [line 61, column 13]\n n$30=_fun_CFRelease(n$29:void const *) [line 61, column 3]\n " shape="box"]
@ -64,22 +64,22 @@ digraph cfg {
"createCloseCrossGlyphNoLeak:#MemoryLeakExample#class.0954bcd442044fd9788af38303a3790b_5" -> "createCloseCrossGlyphNoLeak:#MemoryLeakExample#class.0954bcd442044fd9788af38303a3790b_4" ;
"measureFrameSizeForText#MemoryLeakExample#class.f59bd9e59cef3fd16475487a380b3804_1" [label="1: Start MemoryLeakExample::measureFrameSizeForText\nFormals: \nLocals: \n " color=yellow style=filled]
"measureFrameSizeForText#MemoryLeakExample#class.f59bd9e59cef3fd16475487a380b3804_1" [label="1: Start MemoryLeakExample.measureFrameSizeForText\nFormals: \nLocals: \n " color=yellow style=filled]
"measureFrameSizeForText#MemoryLeakExample#class.f59bd9e59cef3fd16475487a380b3804_1" -> "measureFrameSizeForText#MemoryLeakExample#class.f59bd9e59cef3fd16475487a380b3804_3" ;
"measureFrameSizeForText#MemoryLeakExample#class.f59bd9e59cef3fd16475487a380b3804_2" [label="2: Exit MemoryLeakExample::measureFrameSizeForText \n " color=yellow style=filled]
"measureFrameSizeForText#MemoryLeakExample#class.f59bd9e59cef3fd16475487a380b3804_2" [label="2: Exit MemoryLeakExample.measureFrameSizeForText \n " color=yellow style=filled]
"measureFrameSizeForText#MemoryLeakExample#class.f59bd9e59cef3fd16475487a380b3804_3" [label="3: Call _fun_CFAttributedStringCreateMutable \n n$17=_fun_CFAttributedStringCreateMutable(null:__CFAllocator const *,0:long) [line 33, column 3]\n " shape="box"]
"measureFrameSizeForText#MemoryLeakExample#class.f59bd9e59cef3fd16475487a380b3804_3" -> "measureFrameSizeForText#MemoryLeakExample#class.f59bd9e59cef3fd16475487a380b3804_2" ;
"measureFrameSizeForTextNoLeak#MemoryLeakExample#class.9443bec011166230e1709abbe3c930d4_1" [label="1: Start MemoryLeakExample::measureFrameSizeForTextNoLeak\nFormals: \nLocals: maString:__CFAttributedString* \n " color=yellow style=filled]
"measureFrameSizeForTextNoLeak#MemoryLeakExample#class.9443bec011166230e1709abbe3c930d4_1" [label="1: Start MemoryLeakExample.measureFrameSizeForTextNoLeak\nFormals: \nLocals: maString:__CFAttributedString* \n " color=yellow style=filled]
"measureFrameSizeForTextNoLeak#MemoryLeakExample#class.9443bec011166230e1709abbe3c930d4_1" -> "measureFrameSizeForTextNoLeak#MemoryLeakExample#class.9443bec011166230e1709abbe3c930d4_4" ;
"measureFrameSizeForTextNoLeak#MemoryLeakExample#class.9443bec011166230e1709abbe3c930d4_2" [label="2: Exit MemoryLeakExample::measureFrameSizeForTextNoLeak \n " color=yellow style=filled]
"measureFrameSizeForTextNoLeak#MemoryLeakExample#class.9443bec011166230e1709abbe3c930d4_2" [label="2: Exit MemoryLeakExample.measureFrameSizeForTextNoLeak \n " color=yellow style=filled]
"measureFrameSizeForTextNoLeak#MemoryLeakExample#class.9443bec011166230e1709abbe3c930d4_3" [label="3: Call _fun_CFRelease \n n$18=*&maString:__CFAttributedString* [line 39, column 13]\n n$19=_fun_CFRelease(n$18:void const *) [line 39, column 3]\n " shape="box"]
@ -90,22 +90,22 @@ digraph cfg {
"measureFrameSizeForTextNoLeak#MemoryLeakExample#class.9443bec011166230e1709abbe3c930d4_4" -> "measureFrameSizeForTextNoLeak#MemoryLeakExample#class.9443bec011166230e1709abbe3c930d4_3" ;
"test1:#MemoryLeakExample(struct __CFAttributedString)#class.5c69af4eb9da1845df6efe64785fd0c9_1" [label="1: Start MemoryLeakExample::test1:\nFormals: str:__CFAttributedString const *\nLocals: \n " color=yellow style=filled]
"test1:#MemoryLeakExample(struct __CFAttributedString)#class.5c69af4eb9da1845df6efe64785fd0c9_1" [label="1: Start MemoryLeakExample.test1:\nFormals: str:__CFAttributedString const *\nLocals: \n " color=yellow style=filled]
"test1:#MemoryLeakExample(struct __CFAttributedString)#class.5c69af4eb9da1845df6efe64785fd0c9_1" -> "test1:#MemoryLeakExample(struct __CFAttributedString)#class.5c69af4eb9da1845df6efe64785fd0c9_3" ;
"test1:#MemoryLeakExample(struct __CFAttributedString)#class.5c69af4eb9da1845df6efe64785fd0c9_2" [label="2: Exit MemoryLeakExample::test1: \n " color=yellow style=filled]
"test1:#MemoryLeakExample(struct __CFAttributedString)#class.5c69af4eb9da1845df6efe64785fd0c9_2" [label="2: Exit MemoryLeakExample.test1: \n " color=yellow style=filled]
"test1:#MemoryLeakExample(struct __CFAttributedString)#class.5c69af4eb9da1845df6efe64785fd0c9_3" [label="3: Call _fun_CTFramesetterCreateWithAttributedString \n n$21=*&str:__CFAttributedString const * [line 43, column 43]\n n$22=_fun_CTFramesetterCreateWithAttributedString(n$21:__CFAttributedString const *) [line 43, column 3]\n " shape="box"]
"test1:#MemoryLeakExample(struct __CFAttributedString)#class.5c69af4eb9da1845df6efe64785fd0c9_3" -> "test1:#MemoryLeakExample(struct __CFAttributedString)#class.5c69af4eb9da1845df6efe64785fd0c9_2" ;
"test1NoLeak#MemoryLeakExample#class.7e0d9640dbd86a21622e801793707bd9_1" [label="1: Start MemoryLeakExample::test1NoLeak\nFormals: \nLocals: framesetter:__CTFramesetter const * \n " color=yellow style=filled]
"test1NoLeak#MemoryLeakExample#class.7e0d9640dbd86a21622e801793707bd9_1" [label="1: Start MemoryLeakExample.test1NoLeak\nFormals: \nLocals: framesetter:__CTFramesetter const * \n " color=yellow style=filled]
"test1NoLeak#MemoryLeakExample#class.7e0d9640dbd86a21622e801793707bd9_1" -> "test1NoLeak#MemoryLeakExample#class.7e0d9640dbd86a21622e801793707bd9_4" ;
"test1NoLeak#MemoryLeakExample#class.7e0d9640dbd86a21622e801793707bd9_2" [label="2: Exit MemoryLeakExample::test1NoLeak \n " color=yellow style=filled]
"test1NoLeak#MemoryLeakExample#class.7e0d9640dbd86a21622e801793707bd9_2" [label="2: Exit MemoryLeakExample.test1NoLeak \n " color=yellow style=filled]
"test1NoLeak#MemoryLeakExample#class.7e0d9640dbd86a21622e801793707bd9_3" [label="3: Call _fun_CFRelease \n n$23=*&framesetter:__CTFramesetter const * [line 48, column 13]\n n$24=_fun_CFRelease(n$23:void const *) [line 48, column 3]\n " shape="box"]
@ -116,22 +116,22 @@ digraph cfg {
"test1NoLeak#MemoryLeakExample#class.7e0d9640dbd86a21622e801793707bd9_4" -> "test1NoLeak#MemoryLeakExample#class.7e0d9640dbd86a21622e801793707bd9_3" ;
"test2:#MemoryLeakExample(struct __SecTrust)#class.0351c8bd25e5a49860146e05fbc5b49a_1" [label="1: Start MemoryLeakExample::test2:\nFormals: trust:__SecTrust*\nLocals: \n " color=yellow style=filled]
"test2:#MemoryLeakExample(struct __SecTrust)#class.0351c8bd25e5a49860146e05fbc5b49a_1" [label="1: Start MemoryLeakExample.test2:\nFormals: trust:__SecTrust*\nLocals: \n " color=yellow style=filled]
"test2:#MemoryLeakExample(struct __SecTrust)#class.0351c8bd25e5a49860146e05fbc5b49a_1" -> "test2:#MemoryLeakExample(struct __SecTrust)#class.0351c8bd25e5a49860146e05fbc5b49a_3" ;
"test2:#MemoryLeakExample(struct __SecTrust)#class.0351c8bd25e5a49860146e05fbc5b49a_2" [label="2: Exit MemoryLeakExample::test2: \n " color=yellow style=filled]
"test2:#MemoryLeakExample(struct __SecTrust)#class.0351c8bd25e5a49860146e05fbc5b49a_2" [label="2: Exit MemoryLeakExample.test2: \n " color=yellow style=filled]
"test2:#MemoryLeakExample(struct __SecTrust)#class.0351c8bd25e5a49860146e05fbc5b49a_3" [label="3: Call _fun_SecTrustCopyPublicKey \n n$34=*&trust:__SecTrust* [line 65, column 25]\n n$35=_fun_SecTrustCopyPublicKey(n$34:__SecTrust*) [line 65, column 3]\n " shape="box"]
"test2:#MemoryLeakExample(struct __SecTrust)#class.0351c8bd25e5a49860146e05fbc5b49a_3" -> "test2:#MemoryLeakExample(struct __SecTrust)#class.0351c8bd25e5a49860146e05fbc5b49a_2" ;
"test2NoLeak#MemoryLeakExample#class.69cf0c35f7df26deefa723cac655894d_1" [label="1: Start MemoryLeakExample::test2NoLeak\nFormals: \nLocals: allowedPublicKey:__SecKey* \n " color=yellow style=filled]
"test2NoLeak#MemoryLeakExample#class.69cf0c35f7df26deefa723cac655894d_1" [label="1: Start MemoryLeakExample.test2NoLeak\nFormals: \nLocals: allowedPublicKey:__SecKey* \n " color=yellow style=filled]
"test2NoLeak#MemoryLeakExample#class.69cf0c35f7df26deefa723cac655894d_1" -> "test2NoLeak#MemoryLeakExample#class.69cf0c35f7df26deefa723cac655894d_4" ;
"test2NoLeak#MemoryLeakExample#class.69cf0c35f7df26deefa723cac655894d_2" [label="2: Exit MemoryLeakExample::test2NoLeak \n " color=yellow style=filled]
"test2NoLeak#MemoryLeakExample#class.69cf0c35f7df26deefa723cac655894d_2" [label="2: Exit MemoryLeakExample.test2NoLeak \n " color=yellow style=filled]
"test2NoLeak#MemoryLeakExample#class.69cf0c35f7df26deefa723cac655894d_3" [label="3: Call _fun_CFRelease \n n$36=*&allowedPublicKey:__SecKey* [line 70, column 13]\n n$37=_fun_CFRelease(n$36:void const *) [line 70, column 3]\n " shape="box"]
@ -142,11 +142,11 @@ digraph cfg {
"test2NoLeak#MemoryLeakExample#class.69cf0c35f7df26deefa723cac655894d_4" -> "test2NoLeak#MemoryLeakExample#class.69cf0c35f7df26deefa723cac655894d_3" ;
"testImageRefRelease#MemoryLeakExample#class.fa3cf5eac6a14b14c5050c7d62d2a79f_1" [label="1: Start MemoryLeakExample::testImageRefRelease\nFormals: \nLocals: newImage:CGImage* \n " color=yellow style=filled]
"testImageRefRelease#MemoryLeakExample#class.fa3cf5eac6a14b14c5050c7d62d2a79f_1" [label="1: Start MemoryLeakExample.testImageRefRelease\nFormals: \nLocals: newImage:CGImage* \n " color=yellow style=filled]
"testImageRefRelease#MemoryLeakExample#class.fa3cf5eac6a14b14c5050c7d62d2a79f_1" -> "testImageRefRelease#MemoryLeakExample#class.fa3cf5eac6a14b14c5050c7d62d2a79f_4" ;
"testImageRefRelease#MemoryLeakExample#class.fa3cf5eac6a14b14c5050c7d62d2a79f_2" [label="2: Exit MemoryLeakExample::testImageRefRelease \n " color=yellow style=filled]
"testImageRefRelease#MemoryLeakExample#class.fa3cf5eac6a14b14c5050c7d62d2a79f_2" [label="2: Exit MemoryLeakExample.testImageRefRelease \n " color=yellow style=filled]
"testImageRefRelease#MemoryLeakExample#class.fa3cf5eac6a14b14c5050c7d62d2a79f_3" [label="3: Call _fun_CGImageRelease \n n$39=*&newImage:CGImage* [line 75, column 18]\n n$40=_fun_CGImageRelease(n$39:CGImage*) [line 75, column 3]\n " shape="box"]
@ -157,18 +157,18 @@ digraph cfg {
"testImageRefRelease#MemoryLeakExample#class.fa3cf5eac6a14b14c5050c7d62d2a79f_4" -> "testImageRefRelease#MemoryLeakExample#class.fa3cf5eac6a14b14c5050c7d62d2a79f_3" ;
"blockCapturedVarLeak#MemoryLeakExample#instance.53bb018bc84d6a696dc756e20b5b3f52_1" [label="1: Start MemoryLeakExample::blockCapturedVarLeak\nFormals: self:MemoryLeakExample*\nLocals: blk:_fn_(*) x:int* \n " color=yellow style=filled]
"blockCapturedVarLeak#MemoryLeakExample#instance.53bb018bc84d6a696dc756e20b5b3f52_1" [label="1: Start MemoryLeakExample.blockCapturedVarLeak\nFormals: self:MemoryLeakExample*\nLocals: blk:_fn_(*) x:int* \n " color=yellow style=filled]
"blockCapturedVarLeak#MemoryLeakExample#instance.53bb018bc84d6a696dc756e20b5b3f52_1" -> "blockCapturedVarLeak#MemoryLeakExample#instance.53bb018bc84d6a696dc756e20b5b3f52_6" ;
"blockCapturedVarLeak#MemoryLeakExample#instance.53bb018bc84d6a696dc756e20b5b3f52_2" [label="2: Exit MemoryLeakExample::blockCapturedVarLeak \n " color=yellow style=filled]
"blockCapturedVarLeak#MemoryLeakExample#instance.53bb018bc84d6a696dc756e20b5b3f52_2" [label="2: Exit MemoryLeakExample.blockCapturedVarLeak \n " color=yellow style=filled]
"blockCapturedVarLeak#MemoryLeakExample#instance.53bb018bc84d6a696dc756e20b5b3f52_3" [label="3: Return Stmt \n n$49=*&blk:_fn_(*) [line 97, column 10]\n n$50=n$49() objc_block [line 97, column 10]\n *&return:int=n$50 [line 97, column 3]\n " shape="box"]
"blockCapturedVarLeak#MemoryLeakExample#instance.53bb018bc84d6a696dc756e20b5b3f52_3" -> "blockCapturedVarLeak#MemoryLeakExample#instance.53bb018bc84d6a696dc756e20b5b3f52_2" ;
"blockCapturedVarLeak#MemoryLeakExample#instance.53bb018bc84d6a696dc756e20b5b3f52_4" [label="4: DeclStmt \n VARIABLE_DECLARED(blk:_fn_(*)); [line 94, column 3]\n n$51=*&x:int* [line 94, column 22]\n *&blk:_fn_(*)=(_fun_objc_blockMemoryLeakExample::blockCapturedVarLeak_1,(n$51 &x:int*)) [line 94, column 3]\n " shape="box"]
"blockCapturedVarLeak#MemoryLeakExample#instance.53bb018bc84d6a696dc756e20b5b3f52_4" [label="4: DeclStmt \n VARIABLE_DECLARED(blk:_fn_(*)); [line 94, column 3]\n n$51=*&x:int* [line 94, column 22]\n *&blk:_fn_(*)=(_fun_objc_blockMemoryLeakExample.blockCapturedVarLeak_1,(n$51 &x:int*)) [line 94, column 3]\n " shape="box"]
"blockCapturedVarLeak#MemoryLeakExample#instance.53bb018bc84d6a696dc756e20b5b3f52_4" -> "blockCapturedVarLeak#MemoryLeakExample#instance.53bb018bc84d6a696dc756e20b5b3f52_3" ;
@ -180,18 +180,18 @@ digraph cfg {
"blockCapturedVarLeak#MemoryLeakExample#instance.53bb018bc84d6a696dc756e20b5b3f52_6" -> "blockCapturedVarLeak#MemoryLeakExample#instance.53bb018bc84d6a696dc756e20b5b3f52_5" ;
"blockFreeNoLeak#MemoryLeakExample#instance.6bcefe2afb9f172f8aadbab54d9bd144_1" [label="1: Start MemoryLeakExample::blockFreeNoLeak\nFormals: self:MemoryLeakExample*\nLocals: blk:_fn_(*) x:int* \n " color=yellow style=filled]
"blockFreeNoLeak#MemoryLeakExample#instance.6bcefe2afb9f172f8aadbab54d9bd144_1" [label="1: Start MemoryLeakExample.blockFreeNoLeak\nFormals: self:MemoryLeakExample*\nLocals: blk:_fn_(*) x:int* \n " color=yellow style=filled]
"blockFreeNoLeak#MemoryLeakExample#instance.6bcefe2afb9f172f8aadbab54d9bd144_1" -> "blockFreeNoLeak#MemoryLeakExample#instance.6bcefe2afb9f172f8aadbab54d9bd144_6" ;
"blockFreeNoLeak#MemoryLeakExample#instance.6bcefe2afb9f172f8aadbab54d9bd144_2" [label="2: Exit MemoryLeakExample::blockFreeNoLeak \n " color=yellow style=filled]
"blockFreeNoLeak#MemoryLeakExample#instance.6bcefe2afb9f172f8aadbab54d9bd144_2" [label="2: Exit MemoryLeakExample.blockFreeNoLeak \n " color=yellow style=filled]
"blockFreeNoLeak#MemoryLeakExample#instance.6bcefe2afb9f172f8aadbab54d9bd144_3" [label="3: Return Stmt \n n$56=*&blk:_fn_(*) [line 108, column 10]\n n$57=n$56() objc_block [line 108, column 10]\n *&return:int=n$57 [line 108, column 3]\n " shape="box"]
"blockFreeNoLeak#MemoryLeakExample#instance.6bcefe2afb9f172f8aadbab54d9bd144_3" -> "blockFreeNoLeak#MemoryLeakExample#instance.6bcefe2afb9f172f8aadbab54d9bd144_2" ;
"blockFreeNoLeak#MemoryLeakExample#instance.6bcefe2afb9f172f8aadbab54d9bd144_4" [label="4: DeclStmt \n VARIABLE_DECLARED(blk:_fn_(*)); [line 103, column 3]\n n$58=*&x:int* [line 103, column 22]\n *&blk:_fn_(*)=(_fun_objc_blockMemoryLeakExample::blockFreeNoLeak_2,(n$58 &x:int*)) [line 103, column 3]\n " shape="box"]
"blockFreeNoLeak#MemoryLeakExample#instance.6bcefe2afb9f172f8aadbab54d9bd144_4" [label="4: DeclStmt \n VARIABLE_DECLARED(blk:_fn_(*)); [line 103, column 3]\n n$58=*&x:int* [line 103, column 22]\n *&blk:_fn_(*)=(_fun_objc_blockMemoryLeakExample.blockFreeNoLeak_2,(n$58 &x:int*)) [line 103, column 3]\n " shape="box"]
"blockFreeNoLeak#MemoryLeakExample#instance.6bcefe2afb9f172f8aadbab54d9bd144_4" -> "blockFreeNoLeak#MemoryLeakExample#instance.6bcefe2afb9f172f8aadbab54d9bd144_3" ;
@ -203,14 +203,14 @@ digraph cfg {
"blockFreeNoLeak#MemoryLeakExample#instance.6bcefe2afb9f172f8aadbab54d9bd144_6" -> "blockFreeNoLeak#MemoryLeakExample#instance.6bcefe2afb9f172f8aadbab54d9bd144_5" ;
"layoutSubviews#MemoryLeakExample#instance.2b3151f18431bcdbc08267ea4ff96f53_1" [label="1: Start MemoryLeakExample::layoutSubviews\nFormals: self:MemoryLeakExample*\nLocals: shadowPath:CGPath const * attachmentContainerView:UIView* \n " color=yellow style=filled]
"layoutSubviews#MemoryLeakExample#instance.2b3151f18431bcdbc08267ea4ff96f53_1" [label="1: Start MemoryLeakExample.layoutSubviews\nFormals: self:MemoryLeakExample*\nLocals: shadowPath:CGPath const * attachmentContainerView:UIView* \n " color=yellow style=filled]
"layoutSubviews#MemoryLeakExample#instance.2b3151f18431bcdbc08267ea4ff96f53_1" -> "layoutSubviews#MemoryLeakExample#instance.2b3151f18431bcdbc08267ea4ff96f53_6" ;
"layoutSubviews#MemoryLeakExample#instance.2b3151f18431bcdbc08267ea4ff96f53_2" [label="2: Exit MemoryLeakExample::layoutSubviews \n " color=yellow style=filled]
"layoutSubviews#MemoryLeakExample#instance.2b3151f18431bcdbc08267ea4ff96f53_2" [label="2: Exit MemoryLeakExample.layoutSubviews \n " color=yellow style=filled]
"layoutSubviews#MemoryLeakExample#instance.2b3151f18431bcdbc08267ea4ff96f53_3" [label="3: Message Call: release \n n$0=*&attachmentContainerView:UIView* [line 23, column 4]\n n$1=_fun_NSObject::release(n$0:UIView*) virtual [line 23, column 3]\n " shape="box"]
"layoutSubviews#MemoryLeakExample#instance.2b3151f18431bcdbc08267ea4ff96f53_3" [label="3: Message Call: release \n n$0=*&attachmentContainerView:UIView* [line 23, column 4]\n n$1=_fun_NSObject.release(n$0:UIView*) virtual [line 23, column 3]\n " shape="box"]
"layoutSubviews#MemoryLeakExample#instance.2b3151f18431bcdbc08267ea4ff96f53_3" -> "layoutSubviews#MemoryLeakExample#instance.2b3151f18431bcdbc08267ea4ff96f53_2" ;
@ -218,7 +218,7 @@ digraph cfg {
"layoutSubviews#MemoryLeakExample#instance.2b3151f18431bcdbc08267ea4ff96f53_4" -> "layoutSubviews#MemoryLeakExample#instance.2b3151f18431bcdbc08267ea4ff96f53_3" ;
"layoutSubviews#MemoryLeakExample#instance.2b3151f18431bcdbc08267ea4ff96f53_5" [label="5: DeclStmt \n VARIABLE_DECLARED(shadowPath:CGPath const *); [line 19, column 3]\n n$4=*&attachmentContainerView:UIView* [line 20, column 28]\n n$5=_fun_UIView::bounds(n$4:UIView*) [line 20, column 52]\n n$6=_fun_CGPathCreateWithRect(n$5:CGRect,null:CGAffineTransform const *) [line 20, column 7]\n *&shadowPath:CGPath const *=n$6 [line 19, column 3]\n " shape="box"]
"layoutSubviews#MemoryLeakExample#instance.2b3151f18431bcdbc08267ea4ff96f53_5" [label="5: DeclStmt \n VARIABLE_DECLARED(shadowPath:CGPath const *); [line 19, column 3]\n n$4=*&attachmentContainerView:UIView* [line 20, column 28]\n n$5=_fun_UIView.bounds(n$4:UIView*) [line 20, column 52]\n n$6=_fun_CGPathCreateWithRect(n$5:CGRect,null:CGAffineTransform const *) [line 20, column 7]\n *&shadowPath:CGPath const *=n$6 [line 19, column 3]\n " shape="box"]
"layoutSubviews#MemoryLeakExample#instance.2b3151f18431bcdbc08267ea4ff96f53_5" -> "layoutSubviews#MemoryLeakExample#instance.2b3151f18431bcdbc08267ea4ff96f53_4" ;
@ -226,11 +226,11 @@ digraph cfg {
"layoutSubviews#MemoryLeakExample#instance.2b3151f18431bcdbc08267ea4ff96f53_6" -> "layoutSubviews#MemoryLeakExample#instance.2b3151f18431bcdbc08267ea4ff96f53_5" ;
"regularLeak#MemoryLeakExample#instance.939a892cee505c3459f2d889292f218b_1" [label="1: Start MemoryLeakExample::regularLeak\nFormals: self:MemoryLeakExample*\nLocals: x:int* \n " color=yellow style=filled]
"regularLeak#MemoryLeakExample#instance.939a892cee505c3459f2d889292f218b_1" [label="1: Start MemoryLeakExample.regularLeak\nFormals: self:MemoryLeakExample*\nLocals: x:int* \n " color=yellow style=filled]
"regularLeak#MemoryLeakExample#instance.939a892cee505c3459f2d889292f218b_1" -> "regularLeak#MemoryLeakExample#instance.939a892cee505c3459f2d889292f218b_5" ;
"regularLeak#MemoryLeakExample#instance.939a892cee505c3459f2d889292f218b_2" [label="2: Exit MemoryLeakExample::regularLeak \n " color=yellow style=filled]
"regularLeak#MemoryLeakExample#instance.939a892cee505c3459f2d889292f218b_2" [label="2: Exit MemoryLeakExample.regularLeak \n " color=yellow style=filled]
"regularLeak#MemoryLeakExample#instance.939a892cee505c3459f2d889292f218b_3" [label="3: Return Stmt \n n$45=*&x:int* [line 88, column 11]\n n$46=*n$45:int [line 88, column 10]\n *&return:int=n$46 [line 88, column 3]\n " shape="box"]
@ -245,26 +245,26 @@ digraph cfg {
"regularLeak#MemoryLeakExample#instance.939a892cee505c3459f2d889292f218b_5" -> "regularLeak#MemoryLeakExample#instance.939a892cee505c3459f2d889292f218b_4" ;
"test#MemoryLeakExample#instance.cbb708bfe735ac5e5777524359299e00_1" [label="1: Start MemoryLeakExample::test\nFormals: self:MemoryLeakExample*\nLocals: shadowPath:CGPath const * \n " color=yellow style=filled]
"test#MemoryLeakExample#instance.cbb708bfe735ac5e5777524359299e00_1" [label="1: Start MemoryLeakExample.test\nFormals: self:MemoryLeakExample*\nLocals: shadowPath:CGPath const * \n " color=yellow style=filled]
"test#MemoryLeakExample#instance.cbb708bfe735ac5e5777524359299e00_1" -> "test#MemoryLeakExample#instance.cbb708bfe735ac5e5777524359299e00_4" ;
"test#MemoryLeakExample#instance.cbb708bfe735ac5e5777524359299e00_2" [label="2: Exit MemoryLeakExample::test \n " color=yellow style=filled]
"test#MemoryLeakExample#instance.cbb708bfe735ac5e5777524359299e00_2" [label="2: Exit MemoryLeakExample.test \n " color=yellow style=filled]
"test#MemoryLeakExample#instance.cbb708bfe735ac5e5777524359299e00_3" [label="3: Message Call: setShadowPath: \n n$9=*&self:MemoryLeakExample* [line 29, column 3]\n n$10=_fun_MemoryLeakExample::backgroundCoveringView(n$9:MemoryLeakExample*) [line 29, column 8]\n n$11=_fun_UIView::layer(n$10:UIView*) [line 29, column 31]\n n$8=*&shadowPath:CGPath const * [line 29, column 50]\n n$12=_fun_CALayer::setShadowPath:(n$11:CALayer*,n$8:CGPath const *) [line 29, column 37]\n " shape="box"]
"test#MemoryLeakExample#instance.cbb708bfe735ac5e5777524359299e00_3" [label="3: Message Call: setShadowPath: \n n$9=*&self:MemoryLeakExample* [line 29, column 3]\n n$10=_fun_MemoryLeakExample.backgroundCoveringView(n$9:MemoryLeakExample*) [line 29, column 8]\n n$11=_fun_UIView.layer(n$10:UIView*) [line 29, column 31]\n n$8=*&shadowPath:CGPath const * [line 29, column 50]\n n$12=_fun_CALayer.setShadowPath:(n$11:CALayer*,n$8:CGPath const *) [line 29, column 37]\n " shape="box"]
"test#MemoryLeakExample#instance.cbb708bfe735ac5e5777524359299e00_3" -> "test#MemoryLeakExample#instance.cbb708bfe735ac5e5777524359299e00_2" ;
"test#MemoryLeakExample#instance.cbb708bfe735ac5e5777524359299e00_4" [label="4: DeclStmt \n VARIABLE_DECLARED(shadowPath:CGPath const *); [line 27, column 3]\n n$13=*&self:MemoryLeakExample* [line 28, column 28]\n n$14=_fun_MemoryLeakExample::backgroundCoveringView(n$13:MemoryLeakExample*) [line 28, column 33]\n n$15=_fun_UIView::bounds(n$14:UIView*) [line 28, column 56]\n n$16=_fun_CGPathCreateWithRect(n$15:CGRect,null:CGAffineTransform const *) [line 28, column 7]\n *&shadowPath:CGPath const *=n$16 [line 27, column 3]\n " shape="box"]
"test#MemoryLeakExample#instance.cbb708bfe735ac5e5777524359299e00_4" [label="4: DeclStmt \n VARIABLE_DECLARED(shadowPath:CGPath const *); [line 27, column 3]\n n$13=*&self:MemoryLeakExample* [line 28, column 28]\n n$14=_fun_MemoryLeakExample.backgroundCoveringView(n$13:MemoryLeakExample*) [line 28, column 33]\n n$15=_fun_UIView.bounds(n$14:UIView*) [line 28, column 56]\n n$16=_fun_CGPathCreateWithRect(n$15:CGRect,null:CGAffineTransform const *) [line 28, column 7]\n *&shadowPath:CGPath const *=n$16 [line 27, column 3]\n " shape="box"]
"test#MemoryLeakExample#instance.cbb708bfe735ac5e5777524359299e00_4" -> "test#MemoryLeakExample#instance.cbb708bfe735ac5e5777524359299e00_3" ;
"testFBColorCreateWithGray#MemoryLeakExample#instance.4f74b525e11effa846f82d4205d48a4a_1" [label="1: Start MemoryLeakExample::testFBColorCreateWithGray\nFormals: self:MemoryLeakExample*\nLocals: borderColor:CGColor* \n " color=yellow style=filled]
"testFBColorCreateWithGray#MemoryLeakExample#instance.4f74b525e11effa846f82d4205d48a4a_1" [label="1: Start MemoryLeakExample.testFBColorCreateWithGray\nFormals: self:MemoryLeakExample*\nLocals: borderColor:CGColor* \n " color=yellow style=filled]
"testFBColorCreateWithGray#MemoryLeakExample#instance.4f74b525e11effa846f82d4205d48a4a_1" -> "testFBColorCreateWithGray#MemoryLeakExample#instance.4f74b525e11effa846f82d4205d48a4a_4" ;
"testFBColorCreateWithGray#MemoryLeakExample#instance.4f74b525e11effa846f82d4205d48a4a_2" [label="2: Exit MemoryLeakExample::testFBColorCreateWithGray \n " color=yellow style=filled]
"testFBColorCreateWithGray#MemoryLeakExample#instance.4f74b525e11effa846f82d4205d48a4a_2" [label="2: Exit MemoryLeakExample.testFBColorCreateWithGray \n " color=yellow style=filled]
"testFBColorCreateWithGray#MemoryLeakExample#instance.4f74b525e11effa846f82d4205d48a4a_3" [label="3: Call _fun_CGColorRelease \n n$42=*&borderColor:CGColor* [line 82, column 18]\n n$43=_fun_CGColorRelease(n$42:CGColor*) [line 82, column 3]\n " shape="box"]

@ -7,23 +7,23 @@ digraph cfg {
"retain_release_test.65a9467f2c991ef519f3b0d97687f937_2" [label="2: Exit retain_release_test \n " color=yellow style=filled]
"retain_release_test.65a9467f2c991ef519f3b0d97687f937_3" [label="3: Message Call: release \n n$0=*&a:RRA* [line 25, column 4]\n n$1=_fun_NSObject::release(n$0:RRA*) virtual [line 25, column 3]\n " shape="box"]
"retain_release_test.65a9467f2c991ef519f3b0d97687f937_3" [label="3: Message Call: release \n n$0=*&a:RRA* [line 25, column 4]\n n$1=_fun_NSObject.release(n$0:RRA*) virtual [line 25, column 3]\n " shape="box"]
"retain_release_test.65a9467f2c991ef519f3b0d97687f937_3" -> "retain_release_test.65a9467f2c991ef519f3b0d97687f937_2" ;
"retain_release_test.65a9467f2c991ef519f3b0d97687f937_4" [label="4: Message Call: retain \n n$2=*&a:RRA* [line 24, column 4]\n n$3=_fun_NSObject::retain(n$2:RRA*) virtual [line 24, column 3]\n " shape="box"]
"retain_release_test.65a9467f2c991ef519f3b0d97687f937_4" [label="4: Message Call: retain \n n$2=*&a:RRA* [line 24, column 4]\n n$3=_fun_NSObject.retain(n$2:RRA*) virtual [line 24, column 3]\n " shape="box"]
"retain_release_test.65a9467f2c991ef519f3b0d97687f937_4" -> "retain_release_test.65a9467f2c991ef519f3b0d97687f937_3" ;
"retain_release_test.65a9467f2c991ef519f3b0d97687f937_5" [label="5: DeclStmt \n VARIABLE_DECLARED(a:RRA*); [line 23, column 3]\n n$4=_fun___objc_alloc_no_fail(sizeof(t=RRA):unsigned long) [line 23, column 13]\n n$5=_fun_RRA::init(n$4:RRA*) virtual [line 23, column 12]\n *&a:RRA*=n$5 [line 23, column 3]\n " shape="box"]
"retain_release_test.65a9467f2c991ef519f3b0d97687f937_5" [label="5: DeclStmt \n VARIABLE_DECLARED(a:RRA*); [line 23, column 3]\n n$4=_fun___objc_alloc_no_fail(sizeof(t=RRA):unsigned long) [line 23, column 13]\n n$5=_fun_RRA.init(n$4:RRA*) virtual [line 23, column 12]\n *&a:RRA*=n$5 [line 23, column 3]\n " shape="box"]
"retain_release_test.65a9467f2c991ef519f3b0d97687f937_5" -> "retain_release_test.65a9467f2c991ef519f3b0d97687f937_4" ;
"init#RRA#instance.dca8e0cb72bcdfba262607a28c07b04b_1" [label="1: Start RRA::init\nFormals: self:RRA*\nLocals: \n " color=yellow style=filled]
"init#RRA#instance.dca8e0cb72bcdfba262607a28c07b04b_1" [label="1: Start RRA.init\nFormals: self:RRA*\nLocals: \n " color=yellow style=filled]
"init#RRA#instance.dca8e0cb72bcdfba262607a28c07b04b_1" -> "init#RRA#instance.dca8e0cb72bcdfba262607a28c07b04b_3" ;
"init#RRA#instance.dca8e0cb72bcdfba262607a28c07b04b_2" [label="2: Exit RRA::init \n " color=yellow style=filled]
"init#RRA#instance.dca8e0cb72bcdfba262607a28c07b04b_2" [label="2: Exit RRA.init \n " color=yellow style=filled]
"init#RRA#instance.dca8e0cb72bcdfba262607a28c07b04b_3" [label="3: Return Stmt \n n$0=*&self:RRA* [line 17, column 10]\n *&return:objc_object*=n$0 [line 17, column 3]\n " shape="box"]

@ -11,7 +11,7 @@ digraph cfg {
"bridgeDictionaryNoLeak.a9b55a0c8751bf95138aeb6870d0dec1_3" -> "bridgeDictionaryNoLeak.a9b55a0c8751bf95138aeb6870d0dec1_2" ;
"bridgeDictionaryNoLeak.a9b55a0c8751bf95138aeb6870d0dec1_4" [label="4: DeclStmt \n VARIABLE_DECLARED(bufferAttributes:NSDictionary*); [line 43, column 3]\n n$2=_fun_NSDictionary::dictionaryWithObjects:forKeys:count:(null:objc_object*) [line 43, column 58]\n n$1=_fun_NSString::stringWithUTF8String:(\"key\":char* const ) [line 43, column 49]\n n$3=_fun_NSDictionary::dictionaryWithObjects:forKeys:count:(n$2:objc_object*,n$1:objc_object*,null:objc_object*) [line 43, column 36]\n *&bufferAttributes:NSDictionary*=n$3 [line 43, column 3]\n " shape="box"]
"bridgeDictionaryNoLeak.a9b55a0c8751bf95138aeb6870d0dec1_4" [label="4: DeclStmt \n VARIABLE_DECLARED(bufferAttributes:NSDictionary*); [line 43, column 3]\n n$2=_fun_NSDictionary.dictionaryWithObjects:forKeys:count:(null:objc_object*) [line 43, column 58]\n n$1=_fun_NSString.stringWithUTF8String:(\"key\":char* const ) [line 43, column 49]\n n$3=_fun_NSDictionary.dictionaryWithObjects:forKeys:count:(n$2:objc_object*,n$1:objc_object*,null:objc_object*) [line 43, column 36]\n *&bufferAttributes:NSDictionary*=n$3 [line 43, column 3]\n " shape="box"]
"bridgeDictionaryNoLeak.a9b55a0c8751bf95138aeb6870d0dec1_4" -> "bridgeDictionaryNoLeak.a9b55a0c8751bf95138aeb6870d0dec1_3" ;
@ -26,11 +26,11 @@ digraph cfg {
"cfautorelease_test.2ccea2233b65cd3828a2d5e2571ad69b_3" -> "cfautorelease_test.2ccea2233b65cd3828a2d5e2571ad69b_2" ;
"_readHTTPHeader#TollBridgeExample#instance.3d37ce88cf13750e89ba404865a70554_1" [label="1: Start TollBridgeExample::_readHTTPHeader\nFormals: self:TollBridgeExample*\nLocals: ref:__CFDictionary const * \n " color=yellow style=filled]
"_readHTTPHeader#TollBridgeExample#instance.3d37ce88cf13750e89ba404865a70554_1" [label="1: Start TollBridgeExample._readHTTPHeader\nFormals: self:TollBridgeExample*\nLocals: ref:__CFDictionary const * \n " color=yellow style=filled]
"_readHTTPHeader#TollBridgeExample#instance.3d37ce88cf13750e89ba404865a70554_1" -> "_readHTTPHeader#TollBridgeExample#instance.3d37ce88cf13750e89ba404865a70554_4" ;
"_readHTTPHeader#TollBridgeExample#instance.3d37ce88cf13750e89ba404865a70554_2" [label="2: Exit TollBridgeExample::_readHTTPHeader \n " color=yellow style=filled]
"_readHTTPHeader#TollBridgeExample#instance.3d37ce88cf13750e89ba404865a70554_2" [label="2: Exit TollBridgeExample._readHTTPHeader \n " color=yellow style=filled]
"_readHTTPHeader#TollBridgeExample#instance.3d37ce88cf13750e89ba404865a70554_3" [label="3: Call _fun_CFBridgingRelease \n n$6=*&ref:__CFDictionary const * [line 35, column 21]\n n$7=_fun_CFBridgingRelease(n$6:void const *) [line 35, column 3]\n " shape="box"]
@ -41,11 +41,11 @@ digraph cfg {
"_readHTTPHeader#TollBridgeExample#instance.3d37ce88cf13750e89ba404865a70554_4" -> "_readHTTPHeader#TollBridgeExample#instance.3d37ce88cf13750e89ba404865a70554_3" ;
"brideRetained#TollBridgeExample#instance.de039e838ea3246eff789fdc0d11405c_1" [label="1: Start TollBridgeExample::brideRetained\nFormals: self:TollBridgeExample*\nLocals: a:__CFLocale const * observer:objc_object* \n " color=yellow style=filled]
"brideRetained#TollBridgeExample#instance.de039e838ea3246eff789fdc0d11405c_1" [label="1: Start TollBridgeExample.brideRetained\nFormals: self:TollBridgeExample*\nLocals: a:__CFLocale const * observer:objc_object* \n " color=yellow style=filled]
"brideRetained#TollBridgeExample#instance.de039e838ea3246eff789fdc0d11405c_1" -> "brideRetained#TollBridgeExample#instance.de039e838ea3246eff789fdc0d11405c_4" ;
"brideRetained#TollBridgeExample#instance.de039e838ea3246eff789fdc0d11405c_2" [label="2: Exit TollBridgeExample::brideRetained \n " color=yellow style=filled]
"brideRetained#TollBridgeExample#instance.de039e838ea3246eff789fdc0d11405c_2" [label="2: Exit TollBridgeExample.brideRetained \n " color=yellow style=filled]
"brideRetained#TollBridgeExample#instance.de039e838ea3246eff789fdc0d11405c_3" [label="3: DeclStmt \n VARIABLE_DECLARED(a:__CFLocale const *); [line 29, column 3]\n n$4=*&observer:objc_object* [line 29, column 50]\n *&a:__CFLocale const *=n$4 [line 29, column 3]\n " shape="box"]
@ -56,11 +56,11 @@ digraph cfg {
"brideRetained#TollBridgeExample#instance.de039e838ea3246eff789fdc0d11405c_4" -> "brideRetained#TollBridgeExample#instance.de039e838ea3246eff789fdc0d11405c_3" ;
"bridge#TollBridgeExample#instance.fadd5a014118113c960fa1a6e3ff27ba_1" [label="1: Start TollBridgeExample::bridge\nFormals: self:TollBridgeExample*\nLocals: a:NSLocale* nameRef:__CFLocale const * \n " color=yellow style=filled]
"bridge#TollBridgeExample#instance.fadd5a014118113c960fa1a6e3ff27ba_1" [label="1: Start TollBridgeExample.bridge\nFormals: self:TollBridgeExample*\nLocals: a:NSLocale* nameRef:__CFLocale const * \n " color=yellow style=filled]
"bridge#TollBridgeExample#instance.fadd5a014118113c960fa1a6e3ff27ba_1" -> "bridge#TollBridgeExample#instance.fadd5a014118113c960fa1a6e3ff27ba_4" ;
"bridge#TollBridgeExample#instance.fadd5a014118113c960fa1a6e3ff27ba_2" [label="2: Exit TollBridgeExample::bridge \n " color=yellow style=filled]
"bridge#TollBridgeExample#instance.fadd5a014118113c960fa1a6e3ff27ba_2" [label="2: Exit TollBridgeExample.bridge \n " color=yellow style=filled]
"bridge#TollBridgeExample#instance.fadd5a014118113c960fa1a6e3ff27ba_3" [label="3: DeclStmt \n VARIABLE_DECLARED(a:NSLocale*); [line 24, column 3]\n n$2=*&nameRef:__CFLocale const * [line 24, column 37]\n *&a:NSLocale*=n$2 [line 24, column 3]\n " shape="box"]
@ -71,11 +71,11 @@ digraph cfg {
"bridge#TollBridgeExample#instance.fadd5a014118113c960fa1a6e3ff27ba_4" -> "bridge#TollBridgeExample#instance.fadd5a014118113c960fa1a6e3ff27ba_3" ;
"bridgeTransfer#TollBridgeExample#instance.d0065913beb197e891ef0d8a0bb81b38_1" [label="1: Start TollBridgeExample::bridgeTransfer\nFormals: self:TollBridgeExample*\nLocals: a:NSLocale* nameRef:__CFLocale const * \n " color=yellow style=filled]
"bridgeTransfer#TollBridgeExample#instance.d0065913beb197e891ef0d8a0bb81b38_1" [label="1: Start TollBridgeExample.bridgeTransfer\nFormals: self:TollBridgeExample*\nLocals: a:NSLocale* nameRef:__CFLocale const * \n " color=yellow style=filled]
"bridgeTransfer#TollBridgeExample#instance.d0065913beb197e891ef0d8a0bb81b38_1" -> "bridgeTransfer#TollBridgeExample#instance.d0065913beb197e891ef0d8a0bb81b38_4" ;
"bridgeTransfer#TollBridgeExample#instance.d0065913beb197e891ef0d8a0bb81b38_2" [label="2: Exit TollBridgeExample::bridgeTransfer \n " color=yellow style=filled]
"bridgeTransfer#TollBridgeExample#instance.d0065913beb197e891ef0d8a0bb81b38_2" [label="2: Exit TollBridgeExample.bridgeTransfer \n " color=yellow style=filled]
"bridgeTransfer#TollBridgeExample#instance.d0065913beb197e891ef0d8a0bb81b38_3" [label="3: DeclStmt \n VARIABLE_DECLARED(a:NSLocale*); [line 19, column 3]\n n$0=*&nameRef:__CFLocale const * [line 19, column 46]\n *&a:NSLocale*=n$0 [line 19, column 3]\n " shape="box"]

@ -15,7 +15,7 @@ digraph cfg {
"main_arc_methods.6924ccbb58d8dbb03048861dcbd6134b_4" -> "main_arc_methods.6924ccbb58d8dbb03048861dcbd6134b_3" ;
"main_arc_methods.6924ccbb58d8dbb03048861dcbd6134b_5" [label="5: DeclStmt \n VARIABLE_DECLARED(a2:ArcMethodsA*); [line 42, column 3]\n n$1=_fun_ArcMethodsA::someA() [line 42, column 21]\n *&a2:ArcMethodsA*=n$1 [line 42, column 3]\n " shape="box"]
"main_arc_methods.6924ccbb58d8dbb03048861dcbd6134b_5" [label="5: DeclStmt \n VARIABLE_DECLARED(a2:ArcMethodsA*); [line 42, column 3]\n n$1=_fun_ArcMethodsA.someA() [line 42, column 21]\n *&a2:ArcMethodsA*=n$1 [line 42, column 3]\n " shape="box"]
"main_arc_methods.6924ccbb58d8dbb03048861dcbd6134b_5" -> "main_arc_methods.6924ccbb58d8dbb03048861dcbd6134b_4" ;
@ -23,37 +23,37 @@ digraph cfg {
"main_arc_methods.6924ccbb58d8dbb03048861dcbd6134b_6" -> "main_arc_methods.6924ccbb58d8dbb03048861dcbd6134b_5" ;
"main_arc_methods.6924ccbb58d8dbb03048861dcbd6134b_7" [label="7: DeclStmt \n VARIABLE_DECLARED(a1:ArcMethodsA*); [line 40, column 3]\n n$3=_fun_ArcMethodsA::newA() [line 40, column 21]\n *&a1:ArcMethodsA*=n$3 [line 40, column 3]\n " shape="box"]
"main_arc_methods.6924ccbb58d8dbb03048861dcbd6134b_7" [label="7: DeclStmt \n VARIABLE_DECLARED(a1:ArcMethodsA*); [line 40, column 3]\n n$3=_fun_ArcMethodsA.newA() [line 40, column 21]\n *&a1:ArcMethodsA*=n$3 [line 40, column 3]\n " shape="box"]
"main_arc_methods.6924ccbb58d8dbb03048861dcbd6134b_7" -> "main_arc_methods.6924ccbb58d8dbb03048861dcbd6134b_6" ;
"newA#ArcMethodsA#class.8f73d571693162b8fe59ae9b171012f1_1" [label="1: Start ArcMethodsA::newA\nFormals: \nLocals: a:ArcMethodsA* \n " color=yellow style=filled]
"newA#ArcMethodsA#class.8f73d571693162b8fe59ae9b171012f1_1" [label="1: Start ArcMethodsA.newA\nFormals: \nLocals: a:ArcMethodsA* \n " color=yellow style=filled]
"newA#ArcMethodsA#class.8f73d571693162b8fe59ae9b171012f1_1" -> "newA#ArcMethodsA#class.8f73d571693162b8fe59ae9b171012f1_4" ;
"newA#ArcMethodsA#class.8f73d571693162b8fe59ae9b171012f1_2" [label="2: Exit ArcMethodsA::newA \n " color=yellow style=filled]
"newA#ArcMethodsA#class.8f73d571693162b8fe59ae9b171012f1_2" [label="2: Exit ArcMethodsA.newA \n " color=yellow style=filled]
"newA#ArcMethodsA#class.8f73d571693162b8fe59ae9b171012f1_3" [label="3: Return Stmt \n n$0=*&a:ArcMethodsA* [line 22, column 10]\n *&return:ArcMethodsA*=n$0 [line 22, column 3]\n " shape="box"]
"newA#ArcMethodsA#class.8f73d571693162b8fe59ae9b171012f1_3" -> "newA#ArcMethodsA#class.8f73d571693162b8fe59ae9b171012f1_2" ;
"newA#ArcMethodsA#class.8f73d571693162b8fe59ae9b171012f1_4" [label="4: DeclStmt \n VARIABLE_DECLARED(a:ArcMethodsA*); [line 21, column 3]\n n$1=_fun___objc_alloc_no_fail(sizeof(t=ArcMethodsA):unsigned long) [line 21, column 21]\n n$2=_fun_NSObject::init(n$1:ArcMethodsA*) virtual [line 21, column 20]\n *&a:ArcMethodsA*=n$2 [line 21, column 3]\n " shape="box"]
"newA#ArcMethodsA#class.8f73d571693162b8fe59ae9b171012f1_4" [label="4: DeclStmt \n VARIABLE_DECLARED(a:ArcMethodsA*); [line 21, column 3]\n n$1=_fun___objc_alloc_no_fail(sizeof(t=ArcMethodsA):unsigned long) [line 21, column 21]\n n$2=_fun_NSObject.init(n$1:ArcMethodsA*) virtual [line 21, column 20]\n *&a:ArcMethodsA*=n$2 [line 21, column 3]\n " shape="box"]
"newA#ArcMethodsA#class.8f73d571693162b8fe59ae9b171012f1_4" -> "newA#ArcMethodsA#class.8f73d571693162b8fe59ae9b171012f1_3" ;
"someA#ArcMethodsA#class.b84b222a4d332a9b8f3f1d6626af9c8f_1" [label="1: Start ArcMethodsA::someA\nFormals: \nLocals: a:ArcMethodsA* \n " color=yellow style=filled]
"someA#ArcMethodsA#class.b84b222a4d332a9b8f3f1d6626af9c8f_1" [label="1: Start ArcMethodsA.someA\nFormals: \nLocals: a:ArcMethodsA* \n " color=yellow style=filled]
"someA#ArcMethodsA#class.b84b222a4d332a9b8f3f1d6626af9c8f_1" -> "someA#ArcMethodsA#class.b84b222a4d332a9b8f3f1d6626af9c8f_4" ;
"someA#ArcMethodsA#class.b84b222a4d332a9b8f3f1d6626af9c8f_2" [label="2: Exit ArcMethodsA::someA \n " color=yellow style=filled]
"someA#ArcMethodsA#class.b84b222a4d332a9b8f3f1d6626af9c8f_2" [label="2: Exit ArcMethodsA.someA \n " color=yellow style=filled]
"someA#ArcMethodsA#class.b84b222a4d332a9b8f3f1d6626af9c8f_3" [label="3: Return Stmt \n n$3=*&a:ArcMethodsA* [line 28, column 10]\n *&return:ArcMethodsA*=n$3 [line 28, column 3]\n " shape="box"]
"someA#ArcMethodsA#class.b84b222a4d332a9b8f3f1d6626af9c8f_3" -> "someA#ArcMethodsA#class.b84b222a4d332a9b8f3f1d6626af9c8f_2" ;
"someA#ArcMethodsA#class.b84b222a4d332a9b8f3f1d6626af9c8f_4" [label="4: DeclStmt \n VARIABLE_DECLARED(a:ArcMethodsA*); [line 26, column 3]\n n$4=_fun___objc_alloc_no_fail(sizeof(t=ArcMethodsA):unsigned long) [line 26, column 21]\n n$5=_fun_NSObject::init(n$4:ArcMethodsA*) virtual [line 26, column 20]\n *&a:ArcMethodsA*=n$5 [line 26, column 3]\n " shape="box"]
"someA#ArcMethodsA#class.b84b222a4d332a9b8f3f1d6626af9c8f_4" [label="4: DeclStmt \n VARIABLE_DECLARED(a:ArcMethodsA*); [line 26, column 3]\n n$4=_fun___objc_alloc_no_fail(sizeof(t=ArcMethodsA):unsigned long) [line 26, column 21]\n n$5=_fun_NSObject.init(n$4:ArcMethodsA*) virtual [line 26, column 20]\n *&a:ArcMethodsA*=n$5 [line 26, column 3]\n " shape="box"]
"someA#ArcMethodsA#class.b84b222a4d332a9b8f3f1d6626af9c8f_4" -> "someA#ArcMethodsA#class.b84b222a4d332a9b8f3f1d6626af9c8f_3" ;

@ -1,10 +1,10 @@
/* @generated */
digraph cfg {
"test_no_bug#Available_expr#instance.a4aa786abeb2b17541abfe8ecf02c88f_1" [label="1: Start Available_expr::test_no_bug\nFormals: self:Available_expr*\nLocals: p:int* \n " color=yellow style=filled]
"test_no_bug#Available_expr#instance.a4aa786abeb2b17541abfe8ecf02c88f_1" [label="1: Start Available_expr.test_no_bug\nFormals: self:Available_expr*\nLocals: p:int* \n " color=yellow style=filled]
"test_no_bug#Available_expr#instance.a4aa786abeb2b17541abfe8ecf02c88f_1" -> "test_no_bug#Available_expr#instance.a4aa786abeb2b17541abfe8ecf02c88f_8" ;
"test_no_bug#Available_expr#instance.a4aa786abeb2b17541abfe8ecf02c88f_2" [label="2: Exit Available_expr::test_no_bug \n " color=yellow style=filled]
"test_no_bug#Available_expr#instance.a4aa786abeb2b17541abfe8ecf02c88f_2" [label="2: Exit Available_expr.test_no_bug \n " color=yellow style=filled]
"test_no_bug#Available_expr#instance.a4aa786abeb2b17541abfe8ecf02c88f_3" [label="3: Return Stmt \n *&return:int=0 [line 20, column 3]\n " shape="box"]

@ -11,22 +11,22 @@ digraph cfg {
"NonnullAtrributeTest.69a49728cf7d46ab0add381e5c93704c_3" -> "NonnullAtrributeTest.69a49728cf7d46ab0add381e5c93704c_2" ;
"getA#NonnullA#instance.d4b29ece551a370c3f0c0c12526b3def_1" [label="1: Start NonnullA::getA\nFormals: self:NonnullA*\nLocals: \n " color=yellow style=filled]
"getA#NonnullA#instance.d4b29ece551a370c3f0c0c12526b3def_1" [label="1: Start NonnullA.getA\nFormals: self:NonnullA*\nLocals: \n " color=yellow style=filled]
"getA#NonnullA#instance.d4b29ece551a370c3f0c0c12526b3def_1" -> "getA#NonnullA#instance.d4b29ece551a370c3f0c0c12526b3def_3" ;
"getA#NonnullA#instance.d4b29ece551a370c3f0c0c12526b3def_2" [label="2: Exit NonnullA::getA \n " color=yellow style=filled]
"getA#NonnullA#instance.d4b29ece551a370c3f0c0c12526b3def_2" [label="2: Exit NonnullA.getA \n " color=yellow style=filled]
"getA#NonnullA#instance.d4b29ece551a370c3f0c0c12526b3def_3" [label="3: Return Stmt \n n$0=_fun___objc_alloc_no_fail(sizeof(t=NonnullA):unsigned long) [line 24, column 10]\n n$1=_fun_NSObject::init(n$0:NonnullA*) virtual [line 24, column 10]\n *&return:NonnullA*=n$1 [line 24, column 3]\n " shape="box"]
"getA#NonnullA#instance.d4b29ece551a370c3f0c0c12526b3def_3" [label="3: Return Stmt \n n$0=_fun___objc_alloc_no_fail(sizeof(t=NonnullA):unsigned long) [line 24, column 10]\n n$1=_fun_NSObject.init(n$0:NonnullA*) virtual [line 24, column 10]\n *&return:NonnullA*=n$1 [line 24, column 3]\n " shape="box"]
"getA#NonnullA#instance.d4b29ece551a370c3f0c0c12526b3def_3" -> "getA#NonnullA#instance.d4b29ece551a370c3f0c0c12526b3def_2" ;
"initWithCoder:and:#NonnullC(class NSString,class NonnullA)#instance.e23828ce4467c2001440771e2c4692f8_1" [label="1: Start NonnullC::initWithCoder:and:\nFormals: self:NonnullC* aDecoder:NSString* a:NonnullA*\nLocals: y:int a1:NonnullA*\nAnnotation: <> NonnullC::initWithCoder:and:(<> <> <_Nonnull>) \n " color=yellow style=filled]
"initWithCoder:and:#NonnullC(class NSString,class NonnullA)#instance.e23828ce4467c2001440771e2c4692f8_1" [label="1: Start NonnullC.initWithCoder:and:\nFormals: self:NonnullC* aDecoder:NSString* a:NonnullA*\nLocals: y:int a1:NonnullA*\nAnnotation: <> NonnullC.initWithCoder:and:(<> <> <_Nonnull>) \n " color=yellow style=filled]
"initWithCoder:and:#NonnullC(class NSString,class NonnullA)#instance.e23828ce4467c2001440771e2c4692f8_1" -> "initWithCoder:and:#NonnullC(class NSString,class NonnullA)#instance.e23828ce4467c2001440771e2c4692f8_5" ;
"initWithCoder:and:#NonnullC(class NSString,class NonnullA)#instance.e23828ce4467c2001440771e2c4692f8_2" [label="2: Exit NonnullC::initWithCoder:and: \n " color=yellow style=filled]
"initWithCoder:and:#NonnullC(class NSString,class NonnullA)#instance.e23828ce4467c2001440771e2c4692f8_2" [label="2: Exit NonnullC.initWithCoder:and: \n " color=yellow style=filled]
"initWithCoder:and:#NonnullC(class NSString,class NonnullA)#instance.e23828ce4467c2001440771e2c4692f8_3" [label="3: Return Stmt \n n$0=*&self:NonnullC* [line 39, column 10]\n *&return:objc_object*=n$0 [line 39, column 3]\n " shape="box"]
@ -37,7 +37,7 @@ digraph cfg {
"initWithCoder:and:#NonnullC(class NSString,class NonnullA)#instance.e23828ce4467c2001440771e2c4692f8_4" -> "initWithCoder:and:#NonnullC(class NSString,class NonnullA)#instance.e23828ce4467c2001440771e2c4692f8_3" ;
"initWithCoder:and:#NonnullC(class NSString,class NonnullA)#instance.e23828ce4467c2001440771e2c4692f8_5" [label="5: DeclStmt \n VARIABLE_DECLARED(a1:NonnullA*); [line 37, column 3]\n n$3=*&a:NonnullA* [line 37, column 19]\n n$4=_fun_NonnullA::getA(n$3:NonnullA*) virtual [line 37, column 18]\n *&a1:NonnullA*=n$4 [line 37, column 3]\n " shape="box"]
"initWithCoder:and:#NonnullC(class NSString,class NonnullA)#instance.e23828ce4467c2001440771e2c4692f8_5" [label="5: DeclStmt \n VARIABLE_DECLARED(a1:NonnullA*); [line 37, column 3]\n n$3=*&a:NonnullA* [line 37, column 19]\n n$4=_fun_NonnullA.getA(n$3:NonnullA*) virtual [line 37, column 18]\n *&a1:NonnullA*=n$4 [line 37, column 3]\n " shape="box"]
"initWithCoder:and:#NonnullC(class NSString,class NonnullA)#instance.e23828ce4467c2001440771e2c4692f8_5" -> "initWithCoder:and:#NonnullC(class NSString,class NonnullA)#instance.e23828ce4467c2001440771e2c4692f8_4" ;

@ -1,10 +1,10 @@
/* @generated */
digraph cfg {
"test#NpeMallocC#instance.736ba93f935cc64d6e9c549cc16c07a7_1" [label="1: Start NpeMallocC::test\nFormals: self:NpeMallocC*\nLocals: person:Person* \n " color=yellow style=filled]
"test#NpeMallocC#instance.736ba93f935cc64d6e9c549cc16c07a7_1" [label="1: Start NpeMallocC.test\nFormals: self:NpeMallocC*\nLocals: person:Person* \n " color=yellow style=filled]
"test#NpeMallocC#instance.736ba93f935cc64d6e9c549cc16c07a7_1" -> "test#NpeMallocC#instance.736ba93f935cc64d6e9c549cc16c07a7_5" ;
"test#NpeMallocC#instance.736ba93f935cc64d6e9c549cc16c07a7_2" [label="2: Exit NpeMallocC::test \n " color=yellow style=filled]
"test#NpeMallocC#instance.736ba93f935cc64d6e9c549cc16c07a7_2" [label="2: Exit NpeMallocC.test \n " color=yellow style=filled]
"test#NpeMallocC#instance.736ba93f935cc64d6e9c549cc16c07a7_3" [label="3: Return Stmt \n n$0=*&person:Person* [line 25, column 10]\n *&return:Person*=n$0 [line 25, column 3]\n " shape="box"]

@ -7,15 +7,15 @@ digraph cfg {
"should_have_div0.f0a0c4e0ab301ca0aa2f50aa87721dc4_2" [label="2: Exit should_have_div0 \n " color=yellow style=filled]
"should_have_div0.f0a0c4e0ab301ca0aa2f50aa87721dc4_3" [label="3: Return Stmt \n n$0=*&a:GetterExample* [line 15, column 15]\n n$1=_fun_GetterExample::name(n$0:GetterExample*) [line 15, column 17]\n *&return:int=(1 / (n$1 - 5)) [line 15, column 3]\n " shape="box"]
"should_have_div0.f0a0c4e0ab301ca0aa2f50aa87721dc4_3" [label="3: Return Stmt \n n$0=*&a:GetterExample* [line 15, column 15]\n n$1=_fun_GetterExample.name(n$0:GetterExample*) [line 15, column 17]\n *&return:int=(1 / (n$1 - 5)) [line 15, column 3]\n " shape="box"]
"should_have_div0.f0a0c4e0ab301ca0aa2f50aa87721dc4_3" -> "should_have_div0.f0a0c4e0ab301ca0aa2f50aa87721dc4_2" ;
"should_have_div0.f0a0c4e0ab301ca0aa2f50aa87721dc4_4" [label="4: Message Call: setName: \n n$2=*&a:GetterExample* [line 14, column 3]\n n$3=_fun_GetterExample::setName:(n$2:GetterExample*,5:int) [line 14, column 5]\n " shape="box"]
"should_have_div0.f0a0c4e0ab301ca0aa2f50aa87721dc4_4" [label="4: Message Call: setName: \n n$2=*&a:GetterExample* [line 14, column 3]\n n$3=_fun_GetterExample.setName:(n$2:GetterExample*,5:int) [line 14, column 5]\n " shape="box"]
"should_have_div0.f0a0c4e0ab301ca0aa2f50aa87721dc4_4" -> "should_have_div0.f0a0c4e0ab301ca0aa2f50aa87721dc4_3" ;
"should_have_div0.f0a0c4e0ab301ca0aa2f50aa87721dc4_5" [label="5: DeclStmt \n VARIABLE_DECLARED(a:GetterExample*); [line 13, column 3]\n n$4=_fun___objc_alloc_no_fail(sizeof(t=GetterExample):unsigned long) [line 13, column 23]\n n$5=_fun_NSObject::init(n$4:GetterExample*) virtual [line 13, column 22]\n *&a:GetterExample*=n$5 [line 13, column 3]\n " shape="box"]
"should_have_div0.f0a0c4e0ab301ca0aa2f50aa87721dc4_5" [label="5: DeclStmt \n VARIABLE_DECLARED(a:GetterExample*); [line 13, column 3]\n n$4=_fun___objc_alloc_no_fail(sizeof(t=GetterExample):unsigned long) [line 13, column 23]\n n$5=_fun_NSObject.init(n$4:GetterExample*) virtual [line 13, column 22]\n *&a:GetterExample*=n$5 [line 13, column 3]\n " shape="box"]
"should_have_div0.f0a0c4e0ab301ca0aa2f50aa87721dc4_5" -> "should_have_div0.f0a0c4e0ab301ca0aa2f50aa87721dc4_4" ;

@ -11,23 +11,23 @@ digraph cfg {
"test.098f6bcd4621d373cade4e832627b4f6_3" -> "test.098f6bcd4621d373cade4e832627b4f6_2" ;
"test.098f6bcd4621d373cade4e832627b4f6_4" [label="4: Message Call: release \n n$0=*&a:PropertyA* [line 43, column 4]\n n$1=_fun_NSObject::release(n$0:PropertyA*) virtual [line 43, column 3]\n " shape="box"]
"test.098f6bcd4621d373cade4e832627b4f6_4" [label="4: Message Call: release \n n$0=*&a:PropertyA* [line 43, column 4]\n n$1=_fun_NSObject.release(n$0:PropertyA*) virtual [line 43, column 3]\n " shape="box"]
"test.098f6bcd4621d373cade4e832627b4f6_4" -> "test.098f6bcd4621d373cade4e832627b4f6_3" ;
"test.098f6bcd4621d373cade4e832627b4f6_5" [label="5: Message Call: setLast_name: \n n$3=*&a:PropertyA* [line 42, column 3]\n n$2=*&a2:PropertyA* [line 42, column 17]\n n$4=_fun_PropertyA::setLast_name:(n$3:PropertyA*,n$2:PropertyA*) [line 42, column 5]\n " shape="box"]
"test.098f6bcd4621d373cade4e832627b4f6_5" [label="5: Message Call: setLast_name: \n n$3=*&a:PropertyA* [line 42, column 3]\n n$2=*&a2:PropertyA* [line 42, column 17]\n n$4=_fun_PropertyA.setLast_name:(n$3:PropertyA*,n$2:PropertyA*) [line 42, column 5]\n " shape="box"]
"test.098f6bcd4621d373cade4e832627b4f6_5" -> "test.098f6bcd4621d373cade4e832627b4f6_4" ;
"test.098f6bcd4621d373cade4e832627b4f6_6" [label="6: DeclStmt \n VARIABLE_DECLARED(a:PropertyA*); [line 41, column 3]\n n$5=_fun___objc_alloc_no_fail(sizeof(t=PropertyA):unsigned long) [line 41, column 19]\n n$6=_fun_PropertyA::init(n$5:PropertyA*) virtual [line 41, column 18]\n *&a:PropertyA*=n$6 [line 41, column 3]\n " shape="box"]
"test.098f6bcd4621d373cade4e832627b4f6_6" [label="6: DeclStmt \n VARIABLE_DECLARED(a:PropertyA*); [line 41, column 3]\n n$5=_fun___objc_alloc_no_fail(sizeof(t=PropertyA):unsigned long) [line 41, column 19]\n n$6=_fun_PropertyA.init(n$5:PropertyA*) virtual [line 41, column 18]\n *&a:PropertyA*=n$6 [line 41, column 3]\n " shape="box"]
"test.098f6bcd4621d373cade4e832627b4f6_6" -> "test.098f6bcd4621d373cade4e832627b4f6_5" ;
"copy#PropertyA#instance.d5955e11cf35af4b4d602b2971590d5f_1" [label="1: Start PropertyA::copy\nFormals: self:PropertyA*\nLocals: other:PropertyA* \n " color=yellow style=filled]
"copy#PropertyA#instance.d5955e11cf35af4b4d602b2971590d5f_1" [label="1: Start PropertyA.copy\nFormals: self:PropertyA*\nLocals: other:PropertyA* \n " color=yellow style=filled]
"copy#PropertyA#instance.d5955e11cf35af4b4d602b2971590d5f_1" -> "copy#PropertyA#instance.d5955e11cf35af4b4d602b2971590d5f_10" ;
"copy#PropertyA#instance.d5955e11cf35af4b4d602b2971590d5f_2" [label="2: Exit PropertyA::copy \n " color=yellow style=filled]
"copy#PropertyA#instance.d5955e11cf35af4b4d602b2971590d5f_2" [label="2: Exit PropertyA.copy \n " color=yellow style=filled]
"copy#PropertyA#instance.d5955e11cf35af4b4d602b2971590d5f_3" [label="3: Return Stmt \n n$1=*&other:PropertyA* [line 35, column 10]\n *&return:PropertyA*=n$1 [line 35, column 3]\n " shape="box"]
@ -58,16 +58,16 @@ digraph cfg {
"copy#PropertyA#instance.d5955e11cf35af4b4d602b2971590d5f_9" -> "copy#PropertyA#instance.d5955e11cf35af4b4d602b2971590d5f_8" ;
"copy#PropertyA#instance.d5955e11cf35af4b4d602b2971590d5f_10" [label="10: DeclStmt \n VARIABLE_DECLARED(other:PropertyA*); [line 29, column 3]\n n$14=_fun___objc_alloc_no_fail(sizeof(t=PropertyA):unsigned long) [line 29, column 23]\n n$15=_fun_PropertyA::init(n$14:PropertyA*) virtual [line 29, column 22]\n *&other:PropertyA*=n$15 [line 29, column 3]\n " shape="box"]
"copy#PropertyA#instance.d5955e11cf35af4b4d602b2971590d5f_10" [label="10: DeclStmt \n VARIABLE_DECLARED(other:PropertyA*); [line 29, column 3]\n n$14=_fun___objc_alloc_no_fail(sizeof(t=PropertyA):unsigned long) [line 29, column 23]\n n$15=_fun_PropertyA.init(n$14:PropertyA*) virtual [line 29, column 22]\n *&other:PropertyA*=n$15 [line 29, column 3]\n " shape="box"]
"copy#PropertyA#instance.d5955e11cf35af4b4d602b2971590d5f_10" -> "copy#PropertyA#instance.d5955e11cf35af4b4d602b2971590d5f_5" ;
"copy#PropertyA#instance.d5955e11cf35af4b4d602b2971590d5f_10" -> "copy#PropertyA#instance.d5955e11cf35af4b4d602b2971590d5f_6" ;
"init#PropertyA#instance.a50cf011b0759e26f65bb059fbc6d60c_1" [label="1: Start PropertyA::init\nFormals: self:PropertyA*\nLocals: \n " color=yellow style=filled]
"init#PropertyA#instance.a50cf011b0759e26f65bb059fbc6d60c_1" [label="1: Start PropertyA.init\nFormals: self:PropertyA*\nLocals: \n " color=yellow style=filled]
"init#PropertyA#instance.a50cf011b0759e26f65bb059fbc6d60c_1" -> "init#PropertyA#instance.a50cf011b0759e26f65bb059fbc6d60c_3" ;
"init#PropertyA#instance.a50cf011b0759e26f65bb059fbc6d60c_2" [label="2: Exit PropertyA::init \n " color=yellow style=filled]
"init#PropertyA#instance.a50cf011b0759e26f65bb059fbc6d60c_2" [label="2: Exit PropertyA.init \n " color=yellow style=filled]
"init#PropertyA#instance.a50cf011b0759e26f65bb059fbc6d60c_3" [label="3: Return Stmt \n n$0=*&self:PropertyA* [line 25, column 10]\n *&return:objc_object*=n$0 [line 25, column 3]\n " shape="box"]

@ -1,68 +1,68 @@
/* @generated */
digraph cfg {
"lockToStructure:#Bicycle(struct objc_object)#instance.08c84c9f07aafb2f30ed48101344ca7a_1" [label="1: Start Bicycle::lockToStructure:\nFormals: self:Bicycle* theStructure:objc_object*\nLocals: \n " color=yellow style=filled]
"lockToStructure:#Bicycle(struct objc_object)#instance.08c84c9f07aafb2f30ed48101344ca7a_1" [label="1: Start Bicycle.lockToStructure:\nFormals: self:Bicycle* theStructure:objc_object*\nLocals: \n " color=yellow style=filled]
"lockToStructure:#Bicycle(struct objc_object)#instance.08c84c9f07aafb2f30ed48101344ca7a_1" -> "lockToStructure:#Bicycle(struct objc_object)#instance.08c84c9f07aafb2f30ed48101344ca7a_3" ;
"lockToStructure:#Bicycle(struct objc_object)#instance.08c84c9f07aafb2f30ed48101344ca7a_2" [label="2: Exit Bicycle::lockToStructure: \n " color=yellow style=filled]
"lockToStructure:#Bicycle(struct objc_object)#instance.08c84c9f07aafb2f30ed48101344ca7a_2" [label="2: Exit Bicycle.lockToStructure: \n " color=yellow style=filled]
"lockToStructure:#Bicycle(struct objc_object)#instance.08c84c9f07aafb2f30ed48101344ca7a_3" [label="3: Call _fun_NSLog \n n$10=_fun_NSString::stringWithUTF8String:(\"Locked to structure. Don't forget the combination!\":char* const ) [line 31, column 9]\n n$11=_fun_NSLog(n$10:objc_object*) [line 31, column 3]\n " shape="box"]
"lockToStructure:#Bicycle(struct objc_object)#instance.08c84c9f07aafb2f30ed48101344ca7a_3" [label="3: Call _fun_NSLog \n n$10=_fun_NSString.stringWithUTF8String:(\"Locked to structure. Don't forget the combination!\":char* const ) [line 31, column 9]\n n$11=_fun_NSLog(n$10:objc_object*) [line 31, column 3]\n " shape="box"]
"lockToStructure:#Bicycle(struct objc_object)#instance.08c84c9f07aafb2f30ed48101344ca7a_3" -> "lockToStructure:#Bicycle(struct objc_object)#instance.08c84c9f07aafb2f30ed48101344ca7a_2" ;
"removeFrontWheel#Bicycle#instance.30147087e52fa1526931dfcd2d381f31_1" [label="1: Start Bicycle::removeFrontWheel\nFormals: self:Bicycle*\nLocals: \n " color=yellow style=filled]
"removeFrontWheel#Bicycle#instance.30147087e52fa1526931dfcd2d381f31_1" [label="1: Start Bicycle.removeFrontWheel\nFormals: self:Bicycle*\nLocals: \n " color=yellow style=filled]
"removeFrontWheel#Bicycle#instance.30147087e52fa1526931dfcd2d381f31_1" -> "removeFrontWheel#Bicycle#instance.30147087e52fa1526931dfcd2d381f31_3" ;
"removeFrontWheel#Bicycle#instance.30147087e52fa1526931dfcd2d381f31_2" [label="2: Exit Bicycle::removeFrontWheel \n " color=yellow style=filled]
"removeFrontWheel#Bicycle#instance.30147087e52fa1526931dfcd2d381f31_2" [label="2: Exit Bicycle.removeFrontWheel \n " color=yellow style=filled]
"removeFrontWheel#Bicycle#instance.30147087e52fa1526931dfcd2d381f31_3" [label="3: Call _fun_NSLog \n n$8=_fun_NSString::stringWithUTF8String:(\"Front wheel is off.Should probably replace that before pedaling...\":char* const ) [line 27, column 7]\n n$9=_fun_NSLog(n$8:objc_object*) [line 26, column 3]\n " shape="box"]
"removeFrontWheel#Bicycle#instance.30147087e52fa1526931dfcd2d381f31_3" [label="3: Call _fun_NSLog \n n$8=_fun_NSString.stringWithUTF8String:(\"Front wheel is off.Should probably replace that before pedaling...\":char* const ) [line 27, column 7]\n n$9=_fun_NSLog(n$8:objc_object*) [line 26, column 3]\n " shape="box"]
"removeFrontWheel#Bicycle#instance.30147087e52fa1526931dfcd2d381f31_3" -> "removeFrontWheel#Bicycle#instance.30147087e52fa1526931dfcd2d381f31_2" ;
"signalLeftTurn#Bicycle#instance.a4d5c86b4aa90993e2ac30d04f01880f_1" [label="1: Start Bicycle::signalLeftTurn\nFormals: self:Bicycle*\nLocals: \n " color=yellow style=filled]
"signalLeftTurn#Bicycle#instance.a4d5c86b4aa90993e2ac30d04f01880f_1" [label="1: Start Bicycle.signalLeftTurn\nFormals: self:Bicycle*\nLocals: \n " color=yellow style=filled]
"signalLeftTurn#Bicycle#instance.a4d5c86b4aa90993e2ac30d04f01880f_1" -> "signalLeftTurn#Bicycle#instance.a4d5c86b4aa90993e2ac30d04f01880f_3" ;
"signalLeftTurn#Bicycle#instance.a4d5c86b4aa90993e2ac30d04f01880f_2" [label="2: Exit Bicycle::signalLeftTurn \n " color=yellow style=filled]
"signalLeftTurn#Bicycle#instance.a4d5c86b4aa90993e2ac30d04f01880f_2" [label="2: Exit Bicycle.signalLeftTurn \n " color=yellow style=filled]
"signalLeftTurn#Bicycle#instance.a4d5c86b4aa90993e2ac30d04f01880f_3" [label="3: Call _fun_NSLog \n n$2=_fun_NSString::stringWithUTF8String:(\"Extending left arm outwards\":char* const ) [line 17, column 9]\n n$3=_fun_NSLog(n$2:objc_object*) [line 17, column 3]\n " shape="box"]
"signalLeftTurn#Bicycle#instance.a4d5c86b4aa90993e2ac30d04f01880f_3" [label="3: Call _fun_NSLog \n n$2=_fun_NSString.stringWithUTF8String:(\"Extending left arm outwards\":char* const ) [line 17, column 9]\n n$3=_fun_NSLog(n$2:objc_object*) [line 17, column 3]\n " shape="box"]
"signalLeftTurn#Bicycle#instance.a4d5c86b4aa90993e2ac30d04f01880f_3" -> "signalLeftTurn#Bicycle#instance.a4d5c86b4aa90993e2ac30d04f01880f_2" ;
"signalRightTurn#Bicycle#instance.fadced5c56a6d988e6d72d83b6b35cbe_1" [label="1: Start Bicycle::signalRightTurn\nFormals: self:Bicycle*\nLocals: \n " color=yellow style=filled]
"signalRightTurn#Bicycle#instance.fadced5c56a6d988e6d72d83b6b35cbe_1" [label="1: Start Bicycle.signalRightTurn\nFormals: self:Bicycle*\nLocals: \n " color=yellow style=filled]
"signalRightTurn#Bicycle#instance.fadced5c56a6d988e6d72d83b6b35cbe_1" -> "signalRightTurn#Bicycle#instance.fadced5c56a6d988e6d72d83b6b35cbe_3" ;
"signalRightTurn#Bicycle#instance.fadced5c56a6d988e6d72d83b6b35cbe_2" [label="2: Exit Bicycle::signalRightTurn \n " color=yellow style=filled]
"signalRightTurn#Bicycle#instance.fadced5c56a6d988e6d72d83b6b35cbe_2" [label="2: Exit Bicycle.signalRightTurn \n " color=yellow style=filled]
"signalRightTurn#Bicycle#instance.fadced5c56a6d988e6d72d83b6b35cbe_3" [label="3: Call _fun_NSLog \n n$4=_fun_NSString::stringWithUTF8String:(\"Bending left arm upwards\":char* const ) [line 20, column 9]\n n$5=_fun_NSLog(n$4:objc_object*) [line 20, column 3]\n " shape="box"]
"signalRightTurn#Bicycle#instance.fadced5c56a6d988e6d72d83b6b35cbe_3" [label="3: Call _fun_NSLog \n n$4=_fun_NSString.stringWithUTF8String:(\"Bending left arm upwards\":char* const ) [line 20, column 9]\n n$5=_fun_NSLog(n$4:objc_object*) [line 20, column 3]\n " shape="box"]
"signalRightTurn#Bicycle#instance.fadced5c56a6d988e6d72d83b6b35cbe_3" -> "signalRightTurn#Bicycle#instance.fadced5c56a6d988e6d72d83b6b35cbe_2" ;
"signalStop#Bicycle#instance.e21e040e406b062ae47420adbbba076a_1" [label="1: Start Bicycle::signalStop\nFormals: self:Bicycle*\nLocals: \n " color=yellow style=filled]
"signalStop#Bicycle#instance.e21e040e406b062ae47420adbbba076a_1" [label="1: Start Bicycle.signalStop\nFormals: self:Bicycle*\nLocals: \n " color=yellow style=filled]
"signalStop#Bicycle#instance.e21e040e406b062ae47420adbbba076a_1" -> "signalStop#Bicycle#instance.e21e040e406b062ae47420adbbba076a_3" ;
"signalStop#Bicycle#instance.e21e040e406b062ae47420adbbba076a_2" [label="2: Exit Bicycle::signalStop \n " color=yellow style=filled]
"signalStop#Bicycle#instance.e21e040e406b062ae47420adbbba076a_2" [label="2: Exit Bicycle.signalStop \n " color=yellow style=filled]
"signalStop#Bicycle#instance.e21e040e406b062ae47420adbbba076a_3" [label="3: Call _fun_NSLog \n n$0=_fun_NSString::stringWithUTF8String:(\"Bending left arm downwards\":char* const ) [line 14, column 9]\n n$1=_fun_NSLog(n$0:objc_object*) [line 14, column 3]\n " shape="box"]
"signalStop#Bicycle#instance.e21e040e406b062ae47420adbbba076a_3" [label="3: Call _fun_NSLog \n n$0=_fun_NSString.stringWithUTF8String:(\"Bending left arm downwards\":char* const ) [line 14, column 9]\n n$1=_fun_NSLog(n$0:objc_object*) [line 14, column 3]\n " shape="box"]
"signalStop#Bicycle#instance.e21e040e406b062ae47420adbbba076a_3" -> "signalStop#Bicycle#instance.e21e040e406b062ae47420adbbba076a_2" ;
"startPedaling#Bicycle#instance.51dd675ab15335a15287fd45cbc21261_1" [label="1: Start Bicycle::startPedaling\nFormals: self:Bicycle*\nLocals: \n " color=yellow style=filled]
"startPedaling#Bicycle#instance.51dd675ab15335a15287fd45cbc21261_1" [label="1: Start Bicycle.startPedaling\nFormals: self:Bicycle*\nLocals: \n " color=yellow style=filled]
"startPedaling#Bicycle#instance.51dd675ab15335a15287fd45cbc21261_1" -> "startPedaling#Bicycle#instance.51dd675ab15335a15287fd45cbc21261_3" ;
"startPedaling#Bicycle#instance.51dd675ab15335a15287fd45cbc21261_2" [label="2: Exit Bicycle::startPedaling \n " color=yellow style=filled]
"startPedaling#Bicycle#instance.51dd675ab15335a15287fd45cbc21261_2" [label="2: Exit Bicycle.startPedaling \n " color=yellow style=filled]
"startPedaling#Bicycle#instance.51dd675ab15335a15287fd45cbc21261_3" [label="3: Call _fun_NSLog \n n$6=_fun_NSString::stringWithUTF8String:(\"Here we go!\":char* const ) [line 23, column 9]\n n$7=_fun_NSLog(n$6:objc_object*) [line 23, column 3]\n " shape="box"]
"startPedaling#Bicycle#instance.51dd675ab15335a15287fd45cbc21261_3" [label="3: Call _fun_NSLog \n n$6=_fun_NSString.stringWithUTF8String:(\"Here we go!\":char* const ) [line 23, column 9]\n n$7=_fun_NSLog(n$6:objc_object*) [line 23, column 3]\n " shape="box"]
"startPedaling#Bicycle#instance.51dd675ab15335a15287fd45cbc21261_3" -> "startPedaling#Bicycle#instance.51dd675ab15335a15287fd45cbc21261_2" ;

@ -11,7 +11,7 @@ digraph cfg {
"ProtocolProcdescMain.84e7d2448aa904c965bf225f17cfb503_3" -> "ProtocolProcdescMain.84e7d2448aa904c965bf225f17cfb503_2" ;
"ProtocolProcdescMain.84e7d2448aa904c965bf225f17cfb503_4" [label="4: Message Call: signalStop \n n$0=*&bike:Bicycle* [line 14, column 4]\n n$1=_fun_StreetVehicle::signalStop(n$0:Bicycle*) virtual [line 14, column 3]\n " shape="box"]
"ProtocolProcdescMain.84e7d2448aa904c965bf225f17cfb503_4" [label="4: Message Call: signalStop \n n$0=*&bike:Bicycle* [line 14, column 4]\n n$1=_fun_StreetVehicle.signalStop(n$0:Bicycle*) virtual [line 14, column 3]\n " shape="box"]
"ProtocolProcdescMain.84e7d2448aa904c965bf225f17cfb503_4" -> "ProtocolProcdescMain.84e7d2448aa904c965bf225f17cfb503_3" ;

@ -2,4 +2,4 @@ codetoanalyze/objc/uninit/arrays.m, array_length_undef_bad, 2, UNINITIALIZED_VAL
codetoanalyze/objc/uninit/arrays.m, bad1, 3, UNINITIALIZED_VALUE, no_bucket, ERROR, []
codetoanalyze/objc/uninit/arrays.m, bad2, 2, UNINITIALIZED_VALUE, no_bucket, ERROR, []
codetoanalyze/objc/uninit/uninit.m, FP_switch_ok, 11, UNINITIALIZED_VALUE, no_bucket, ERROR, []
codetoanalyze/objc/uninit/uninit_blocks.m, A::bad1, 5, UNINITIALIZED_VALUE, no_bucket, ERROR, []
codetoanalyze/objc/uninit/uninit_blocks.m, A.bad1, 5, UNINITIALIZED_VALUE, no_bucket, ERROR, []

@ -1,5 +1,5 @@
codetoanalyze/objcpp/biabduction/BlockLfield.mm, A::mOk, 1, PRECONDITION_NOT_FOUND, no_bucket, ERROR, [start of procedure mOk]
codetoanalyze/objcpp/biabduction/BlockLfield.mm, A.mOk, 1, PRECONDITION_NOT_FOUND, no_bucket, ERROR, [start of procedure mOk]
codetoanalyze/objcpp/biabduction/BlockLfield.mm, CFunWithBlockOk, 2, PRECONDITION_NOT_MET, no_bucket, WARNING, [start of procedure CFunWithBlockOk()]
codetoanalyze/objcpp/biabduction/BlockLfield.mm, CFunWithBlockOk_objc_blockA::mOk_1, 2, PRECONDITION_NOT_MET, no_bucket, WARNING, [start of procedure CFunWithBlockOk()]
codetoanalyze/objcpp/biabduction/c_functions.mm, main, 4, NULL_DEREFERENCE, B5, ERROR, [start of procedure main(),start of procedure autoUpdating,return from a call to A::autoUpdating,start of procedure autoUpdating2,Skipping dispatch_once2(): method has no implementation,return from a call to A::autoUpdating2,Executing synthesized getter block,start of procedure block,return from a call to objc_blockobjc_blockA::autoUpdating_1_2,Message block with receiver nil returns nil.]
codetoanalyze/objcpp/biabduction/retain_cycles/RetainCycleWithStruct.mm, Animation::tracer, 2, RETAIN_CYCLE, no_bucket, ERROR, [start of procedure tracer,start of procedure _State,return from a call to _State::_State,start of procedure initWithAnimation:,Taking true branch,return from a call to Tracer::initWithAnimation:]
codetoanalyze/objcpp/biabduction/BlockLfield.mm, CFunWithBlockOk_objc_blockA.mOk_1, 2, PRECONDITION_NOT_MET, no_bucket, WARNING, [start of procedure CFunWithBlockOk()]
codetoanalyze/objcpp/biabduction/c_functions.mm, main, 4, NULL_DEREFERENCE, B5, ERROR, [start of procedure main(),start of procedure autoUpdating,return from a call to A.autoUpdating,start of procedure autoUpdating2,Skipping dispatch_once2(): method has no implementation,return from a call to A.autoUpdating2,Executing synthesized getter block,start of procedure block,return from a call to objc_blockobjc_blockA.autoUpdating_1_2,Message block with receiver nil returns nil.]
codetoanalyze/objcpp/biabduction/retain_cycles/RetainCycleWithStruct.mm, Animation.tracer, 2, RETAIN_CYCLE, no_bucket, ERROR, [start of procedure tracer,start of procedure _State,return from a call to _State::_State,start of procedure initWithAnimation:,Taking true branch,return from a call to Tracer.initWithAnimation:]

@ -1,16 +1,16 @@
codetoanalyze/objcpp/linters-for-test-only/BadRegexInPointNameForPerfLogging.mm, testRegexSafe, 17, TEST_PROPERTY_ON_NTH_PARAMETER, no_bucket, WARNING, []
codetoanalyze/objcpp/linters-for-test-only/ReferenceTest.mm, ReferenceTest::newWithAction, 25, TEST_REFERENCE, no_bucket, WARNING, []
codetoanalyze/objcpp/linters-for-test-only/ReferenceTest.mm, ReferenceTest::newWithAction, 42, TEST_REFERENCE, no_bucket, WARNING, []
codetoanalyze/objcpp/linters-for-test-only/ReferenceTest.mm, ReferenceTest::newWithActionRef, 22, TEST_REFERENCE, no_bucket, WARNING, []
codetoanalyze/objcpp/linters-for-test-only/ReferenceTest.mm, ReferenceTest::newWithActionRef, 38, TEST_REFERENCE, no_bucket, WARNING, []
codetoanalyze/objcpp/linters-for-test-only/ReferenceTest.mm, ReferenceTest::newWithConstAction, 19, TEST_REFERENCE, no_bucket, WARNING, []
codetoanalyze/objcpp/linters-for-test-only/ReferenceTest.mm, ReferenceTest::newWithConstAction, 34, TEST_REFERENCE, no_bucket, WARNING, []
codetoanalyze/objcpp/linters-for-test-only/TestParameterMemModels.mm, FBMemModelUsed1::newImage, 17, NEW_COMPONENT_USING_MEM_MODEL, no_bucket, WARNING, []
codetoanalyze/objcpp/linters-for-test-only/TestParameterMemModels.mm, FBMemModelUsed1::newImage, 32, NEW_COMPONENT_USING_MEM_MODEL, no_bucket, WARNING, []
codetoanalyze/objcpp/linters-for-test-only/TestParameterMemModels.mm, FBMemModelUsed1::newMultiParams, 25, NEW_COMPONENT_USING_MEM_MODEL, no_bucket, WARNING, []
codetoanalyze/objcpp/linters-for-test-only/TestParameterMemModels.mm, FBMemModelUsed1::newMultiParams, 49, NEW_COMPONENT_USING_MEM_MODEL, no_bucket, WARNING, []
codetoanalyze/objcpp/linters-for-test-only/TestParameterMemModels.mm, FBMemModelUsed2::newQuery, 57, NEW_COMPONENT_USING_MEM_MODEL, no_bucket, WARNING, []
codetoanalyze/objcpp/linters-for-test-only/TestParameterMemModels.mm, FBMemModelUsed2::newQuery, 63, NEW_COMPONENT_USING_MEM_MODEL, no_bucket, WARNING, []
codetoanalyze/objcpp/linters-for-test-only/ReferenceTest.mm, ReferenceTest.newWithAction, 25, TEST_REFERENCE, no_bucket, WARNING, []
codetoanalyze/objcpp/linters-for-test-only/ReferenceTest.mm, ReferenceTest.newWithAction, 42, TEST_REFERENCE, no_bucket, WARNING, []
codetoanalyze/objcpp/linters-for-test-only/ReferenceTest.mm, ReferenceTest.newWithActionRef, 22, TEST_REFERENCE, no_bucket, WARNING, []
codetoanalyze/objcpp/linters-for-test-only/ReferenceTest.mm, ReferenceTest.newWithActionRef, 38, TEST_REFERENCE, no_bucket, WARNING, []
codetoanalyze/objcpp/linters-for-test-only/ReferenceTest.mm, ReferenceTest.newWithConstAction, 19, TEST_REFERENCE, no_bucket, WARNING, []
codetoanalyze/objcpp/linters-for-test-only/ReferenceTest.mm, ReferenceTest.newWithConstAction, 34, TEST_REFERENCE, no_bucket, WARNING, []
codetoanalyze/objcpp/linters-for-test-only/TestParameterMemModels.mm, FBMemModelUsed1.newImage, 17, NEW_COMPONENT_USING_MEM_MODEL, no_bucket, WARNING, []
codetoanalyze/objcpp/linters-for-test-only/TestParameterMemModels.mm, FBMemModelUsed1.newImage, 32, NEW_COMPONENT_USING_MEM_MODEL, no_bucket, WARNING, []
codetoanalyze/objcpp/linters-for-test-only/TestParameterMemModels.mm, FBMemModelUsed1.newMultiParams, 25, NEW_COMPONENT_USING_MEM_MODEL, no_bucket, WARNING, []
codetoanalyze/objcpp/linters-for-test-only/TestParameterMemModels.mm, FBMemModelUsed1.newMultiParams, 49, NEW_COMPONENT_USING_MEM_MODEL, no_bucket, WARNING, []
codetoanalyze/objcpp/linters-for-test-only/TestParameterMemModels.mm, FBMemModelUsed2.newQuery, 57, NEW_COMPONENT_USING_MEM_MODEL, no_bucket, WARNING, []
codetoanalyze/objcpp/linters-for-test-only/TestParameterMemModels.mm, FBMemModelUsed2.newQuery, 63, NEW_COMPONENT_USING_MEM_MODEL, no_bucket, WARNING, []
codetoanalyze/objcpp/linters-for-test-only/TestParamterLabelsChecks.mm, anotherButtonComponent, 39, PARAMETER_TRANS_TYPE, no_bucket, WARNING, []
codetoanalyze/objcpp/linters-for-test-only/TestParamterLabelsChecks.mm, anotherButtonComponent, 39, TEST_PARAMETER_LABEL, no_bucket, WARNING, []
codetoanalyze/objcpp/linters-for-test-only/TestParamterLabelsChecks.mm, anotherButtonComponent, 39, TEST_PARAMETER_LABEL_REGEXP, no_bucket, WARNING, []

@ -1,9 +1,9 @@
codetoanalyze/objcpp/linters/componentkit/FactoryFunctionTest.mm, ExampleFunctionAfterImpl, 33, COMPONENT_FACTORY_FUNCTION, no_bucket, ADVICE, []
codetoanalyze/objcpp/linters/componentkit/FactoryFunctionTest.mm, ExampleFunctionBeforeImpl, 19, COMPONENT_FACTORY_FUNCTION, no_bucket, ADVICE, []
codetoanalyze/objcpp/linters/componentkit/FactoryFunctionTest.mm, ExampleFunctionInsideImpl, 27, COMPONENT_FACTORY_FUNCTION, no_bucket, ADVICE, []
codetoanalyze/objcpp/linters/componentkit/InitializerWithSideEffectTest.mm, FooComponent::newDerp, 17, COMPONENT_INITIALIZER_WITH_SIDE_EFFECTS, no_bucket, ADVICE, []
codetoanalyze/objcpp/linters/componentkit/InitializerWithSideEffectTest.mm, FooComponent::newDerp, 22, COMPONENT_INITIALIZER_WITH_SIDE_EFFECTS, no_bucket, ADVICE, []
codetoanalyze/objcpp/linters/componentkit/InitializerWithSideEffectTest.mm, FooComponent::newDerp, 27, COMPONENT_INITIALIZER_WITH_SIDE_EFFECTS, no_bucket, ADVICE, []
codetoanalyze/objcpp/linters/componentkit/InitializerWithSideEffectTest.mm, FooComponent.newDerp, 17, COMPONENT_INITIALIZER_WITH_SIDE_EFFECTS, no_bucket, ADVICE, []
codetoanalyze/objcpp/linters/componentkit/InitializerWithSideEffectTest.mm, FooComponent.newDerp, 22, COMPONENT_INITIALIZER_WITH_SIDE_EFFECTS, no_bucket, ADVICE, []
codetoanalyze/objcpp/linters/componentkit/InitializerWithSideEffectTest.mm, FooComponent.newDerp, 27, COMPONENT_INITIALIZER_WITH_SIDE_EFFECTS, no_bucket, ADVICE, []
codetoanalyze/objcpp/linters/componentkit/InitializerWithSideEffectTest.mm, objc_block, 35, COMPONENT_INITIALIZER_WITH_SIDE_EFFECTS, no_bucket, ADVICE, []
codetoanalyze/objcpp/linters/componentkit/InitializerWithSideEffectTest.mm, objc_block, 39, COMPONENT_INITIALIZER_WITH_SIDE_EFFECTS, no_bucket, ADVICE, []
codetoanalyze/objcpp/linters/componentkit/MultipleFactoryMethodsTest.h, Linters_dummy_method, 18, COMPONENT_WITH_MULTIPLE_FACTORY_METHODS, no_bucket, ADVICE, []
@ -12,22 +12,22 @@ codetoanalyze/objcpp/linters/componentkit/MultipleFactoryMethodsTest.h, Linters_
codetoanalyze/objcpp/linters/componentkit/MultipleFactoryMethodsTest.h, Linters_dummy_method, 59, COMPONENT_WITH_MULTIPLE_FACTORY_METHODS, no_bucket, ADVICE, []
codetoanalyze/objcpp/linters/componentkit/MultipleFactoryMethodsTest.h, Linters_dummy_method, 60, COMPONENT_WITH_MULTIPLE_FACTORY_METHODS, no_bucket, ADVICE, []
codetoanalyze/objcpp/linters/componentkit/MultipleFactoryMethodsTest.h, Linters_dummy_method, 61, COMPONENT_WITH_MULTIPLE_FACTORY_METHODS, no_bucket, ADVICE, []
codetoanalyze/objcpp/linters/componentkit/MutableLocalVariablesTest.mm, BarComponent::new, 88, MUTABLE_LOCAL_VARIABLE_IN_COMPONENT_FILE, no_bucket, ADVICE, []
codetoanalyze/objcpp/linters/componentkit/MutableLocalVariablesTest.mm, BarComponent::new, 90, MUTABLE_LOCAL_VARIABLE_IN_COMPONENT_FILE, no_bucket, ADVICE, []
codetoanalyze/objcpp/linters/componentkit/MutableLocalVariablesTest.mm, BarComponent::new, 109, MUTABLE_LOCAL_VARIABLE_IN_COMPONENT_FILE, no_bucket, ADVICE, []
codetoanalyze/objcpp/linters/componentkit/MutableLocalVariablesTest.mm, BarComponent::new, 115, MUTABLE_LOCAL_VARIABLE_IN_COMPONENT_FILE, no_bucket, ADVICE, []
codetoanalyze/objcpp/linters/componentkit/MutableLocalVariablesTest.mm, BarComponent::no_mutable_local_variable_in_self_aliases, 131, MUTABLE_LOCAL_VARIABLE_IN_COMPONENT_FILE, no_bucket, ADVICE, []
codetoanalyze/objcpp/linters/componentkit/MutableLocalVariablesTest.mm, FooComponent::newWithString, 50, MUTABLE_LOCAL_VARIABLE_IN_COMPONENT_FILE, no_bucket, ADVICE, []
codetoanalyze/objcpp/linters/componentkit/MutableLocalVariablesTest.mm, FooComponent::newWithString, 55, MUTABLE_LOCAL_VARIABLE_IN_COMPONENT_FILE, no_bucket, ADVICE, []
codetoanalyze/objcpp/linters/componentkit/MutableLocalVariablesTest.mm, FooComponent::newWithString, 58, MUTABLE_LOCAL_VARIABLE_IN_COMPONENT_FILE, no_bucket, ADVICE, []
codetoanalyze/objcpp/linters/componentkit/MutableLocalVariablesTest.mm, FooComponent::newWithString, 58, POINTER_TO_CONST_OBJC_CLASS, no_bucket, WARNING, []
codetoanalyze/objcpp/linters/componentkit/MutableLocalVariablesTest.mm, FooComponent::newWithString, 59, POINTER_TO_CONST_OBJC_CLASS, no_bucket, WARNING, []
codetoanalyze/objcpp/linters/componentkit/MutableLocalVariablesTest.mm, FooComponent::newWithString, 62, MUTABLE_LOCAL_VARIABLE_IN_COMPONENT_FILE, no_bucket, ADVICE, []
codetoanalyze/objcpp/linters/componentkit/MutableLocalVariablesTest.mm, FooComponent::newWithString, 67, MUTABLE_LOCAL_VARIABLE_IN_COMPONENT_FILE, no_bucket, ADVICE, []
codetoanalyze/objcpp/linters/componentkit/MutableLocalVariablesTest.mm, SomeClass::init, 38, MUTABLE_LOCAL_VARIABLE_IN_COMPONENT_FILE, no_bucket, ADVICE, []
codetoanalyze/objcpp/linters/componentkit/MutableLocalVariablesTest.mm, BarComponent.new, 88, MUTABLE_LOCAL_VARIABLE_IN_COMPONENT_FILE, no_bucket, ADVICE, []
codetoanalyze/objcpp/linters/componentkit/MutableLocalVariablesTest.mm, BarComponent.new, 90, MUTABLE_LOCAL_VARIABLE_IN_COMPONENT_FILE, no_bucket, ADVICE, []
codetoanalyze/objcpp/linters/componentkit/MutableLocalVariablesTest.mm, BarComponent.new, 109, MUTABLE_LOCAL_VARIABLE_IN_COMPONENT_FILE, no_bucket, ADVICE, []
codetoanalyze/objcpp/linters/componentkit/MutableLocalVariablesTest.mm, BarComponent.new, 115, MUTABLE_LOCAL_VARIABLE_IN_COMPONENT_FILE, no_bucket, ADVICE, []
codetoanalyze/objcpp/linters/componentkit/MutableLocalVariablesTest.mm, BarComponent.no_mutable_local_variable_in_self_aliases, 131, MUTABLE_LOCAL_VARIABLE_IN_COMPONENT_FILE, no_bucket, ADVICE, []
codetoanalyze/objcpp/linters/componentkit/MutableLocalVariablesTest.mm, FooComponent.newWithString, 50, MUTABLE_LOCAL_VARIABLE_IN_COMPONENT_FILE, no_bucket, ADVICE, []
codetoanalyze/objcpp/linters/componentkit/MutableLocalVariablesTest.mm, FooComponent.newWithString, 55, MUTABLE_LOCAL_VARIABLE_IN_COMPONENT_FILE, no_bucket, ADVICE, []
codetoanalyze/objcpp/linters/componentkit/MutableLocalVariablesTest.mm, FooComponent.newWithString, 58, MUTABLE_LOCAL_VARIABLE_IN_COMPONENT_FILE, no_bucket, ADVICE, []
codetoanalyze/objcpp/linters/componentkit/MutableLocalVariablesTest.mm, FooComponent.newWithString, 58, POINTER_TO_CONST_OBJC_CLASS, no_bucket, WARNING, []
codetoanalyze/objcpp/linters/componentkit/MutableLocalVariablesTest.mm, FooComponent.newWithString, 59, POINTER_TO_CONST_OBJC_CLASS, no_bucket, WARNING, []
codetoanalyze/objcpp/linters/componentkit/MutableLocalVariablesTest.mm, FooComponent.newWithString, 62, MUTABLE_LOCAL_VARIABLE_IN_COMPONENT_FILE, no_bucket, ADVICE, []
codetoanalyze/objcpp/linters/componentkit/MutableLocalVariablesTest.mm, FooComponent.newWithString, 67, MUTABLE_LOCAL_VARIABLE_IN_COMPONENT_FILE, no_bucket, ADVICE, []
codetoanalyze/objcpp/linters/componentkit/MutableLocalVariablesTest.mm, SomeClass.init, 38, MUTABLE_LOCAL_VARIABLE_IN_COMPONENT_FILE, no_bucket, ADVICE, []
codetoanalyze/objcpp/linters/componentkit/UnconventionalSuperclassTest.h, Linters_dummy_method, 15, COMPONENT_WITH_UNCONVENTIONAL_SUPERCLASS, no_bucket, ADVICE, []
codetoanalyze/objcpp/linters/cxx_reference_in_block/block.mm, A::foo, 18, CXX_REFERENCE_CAPTURED_IN_OBJC_BLOCK, no_bucket, ERROR, []
codetoanalyze/objcpp/linters/cxx_reference_in_block/block.mm, A::foo3, 35, CXX_REFERENCE_CAPTURED_IN_OBJC_BLOCK, no_bucket, ERROR, []
codetoanalyze/objcpp/linters/cxx_reference_in_block/block.mm, A.foo, 18, CXX_REFERENCE_CAPTURED_IN_OBJC_BLOCK, no_bucket, ERROR, []
codetoanalyze/objcpp/linters/cxx_reference_in_block/block.mm, A.foo3, 35, CXX_REFERENCE_CAPTURED_IN_OBJC_BLOCK, no_bucket, ERROR, []
codetoanalyze/objcpp/linters/cxx_reference_in_block/block2.mm, both_safe_and_unsafe, 40, CXX_REFERENCE_CAPTURED_IN_OBJC_BLOCK, no_bucket, ERROR, []
codetoanalyze/objcpp/linters/cxx_reference_in_block/block2.mm, unsafe, 24, CXX_REFERENCE_CAPTURED_IN_OBJC_BLOCK, no_bucket, ERROR, []
codetoanalyze/objcpp/linters/global-var/B.mm, Linters_dummy_method, 28, GLOBAL_VARIABLE_INITIALIZED_WITH_FUNCTION_OR_METHOD_CALL, no_bucket, WARNING, []

@ -1,3 +1,3 @@
codetoanalyze/objcpp/pulse/AllocPatternMemLeak.mm, A::create_no_release_leak_bad, 1, PULSE_MEMORY_LEAK, no_bucket, ERROR, [allocation part of the trace starts here,allocated by call to `ABFDataCreate` (modelled),allocation part of the trace ends here,memory becomes unreachable here]
codetoanalyze/objcpp/pulse/use_after_delete.mm, PulseTest::deref_deleted_in_objc_method_bad, 3, USE_AFTER_DELETE, no_bucket, ERROR, [invalidation part of the trace starts here,assigned,was invalidated by `delete`,use-after-lifetime part of the trace starts here,assigned,when calling `Simple::Simple` here,parameter `__param_0` of Simple::Simple,invalid access occurs here]
codetoanalyze/objcpp/pulse/AllocPatternMemLeak.mm, A.create_no_release_leak_bad, 1, PULSE_MEMORY_LEAK, no_bucket, ERROR, [allocation part of the trace starts here,allocated by call to `ABFDataCreate` (modelled),allocation part of the trace ends here,memory becomes unreachable here]
codetoanalyze/objcpp/pulse/use_after_delete.mm, PulseTest.deref_deleted_in_objc_method_bad, 3, USE_AFTER_DELETE, no_bucket, ERROR, [invalidation part of the trace starts here,assigned,was invalidated by `delete`,use-after-lifetime part of the trace starts here,assigned,when calling `Simple::Simple` here,parameter `__param_0` of Simple::Simple,invalid access occurs here]
codetoanalyze/objcpp/pulse/use_after_delete.mm, deref_deleted_bad, 3, USE_AFTER_DELETE, no_bucket, ERROR, [invalidation part of the trace starts here,assigned,was invalidated by `delete`,use-after-lifetime part of the trace starts here,assigned,when calling `Simple::Simple` here,parameter `__param_0` of Simple::Simple,invalid access occurs here]

@ -1,2 +1,2 @@
codetoanalyze/objcpp/racerd/Basic.mm, Basic::read_bad, 21, LOCK_CONSISTENCY_VIOLATION, no_bucket, WARNING, [<Read trace>,access to `self->_data`,<Write trace>,access to `self->_data`]
codetoanalyze/objcpp/racerd/Private.mm, Private::read_other_bad, 28, LOCK_CONSISTENCY_VIOLATION, no_bucket, WARNING, [<Read trace>,access to `self->_other_data`,<Write trace>,access to `self->_other_data`]
codetoanalyze/objcpp/racerd/Basic.mm, Basic.read_bad, 21, LOCK_CONSISTENCY_VIOLATION, no_bucket, WARNING, [<Read trace>,access to `self->_data`,<Write trace>,access to `self->_data`]
codetoanalyze/objcpp/racerd/Private.mm, Private.read_other_bad, 28, LOCK_CONSISTENCY_VIOLATION, no_bucket, WARNING, [<Read trace>,access to `self->_other_data`,<Write trace>,access to `self->_other_data`]

@ -1 +1 @@
codetoanalyze/objcpp/retain-cycles/ObjCPPStruct.mm, A::aFnBad, 2, RETAIN_CYCLE, no_bucket, ERROR, [start of procedure aFnBad,start of procedure WeakHolder,return from a call to WeakHolder::WeakHolder]
codetoanalyze/objcpp/retain-cycles/ObjCPPStruct.mm, A.aFnBad, 2, RETAIN_CYCLE, no_bucket, ERROR, [start of procedure aFnBad,start of procedure WeakHolder,return from a call to WeakHolder::WeakHolder]

Loading…
Cancel
Save