diff --git a/facebook-clang-plugins b/facebook-clang-plugins index 82d55183e..c61920129 160000 --- a/facebook-clang-plugins +++ b/facebook-clang-plugins @@ -1 +1 @@ -Subproject commit 82d55183ef6e27effd22bfd80ca6fa248314c2c0 +Subproject commit c61920129b7b519a420e8dc648d1319391aaaf73 diff --git a/infer/tests/build_systems/codetoanalyze/clang_translation/src/main.cpp.dot b/infer/tests/build_systems/codetoanalyze/clang_translation/src/main.cpp.dot index 044642cc7..e3db2499a 100644 --- a/infer/tests/build_systems/codetoanalyze/clang_translation/src/main.cpp.dot +++ b/infer/tests/build_systems/codetoanalyze/clang_translation/src/main.cpp.dot @@ -1,13 +1,13 @@ /* @generated */ digraph iCFG { -"main.fad58de7366495db4650cfefac2fcd61_1" [label="1: Start main\nFormals: \nLocals: s:class std::basic_string<8d2d7b7b909d4c24> x:int* \n DECLARE_LOCALS(&return,&s,&x); [line 17]\n " color=yellow style=filled] +"main.fad58de7366495db4650cfefac2fcd61_1" [label="1: Start main\nFormals: \nLocals: s:class std::basic_string x:int* \n DECLARE_LOCALS(&return,&s,&x); [line 17]\n " color=yellow style=filled] "main.fad58de7366495db4650cfefac2fcd61_1" -> "main.fad58de7366495db4650cfefac2fcd61_7" ; "main.fad58de7366495db4650cfefac2fcd61_2" [label="2: Exit main \n " color=yellow style=filled] -"main.fad58de7366495db4650cfefac2fcd61_3" [label="3: DeclStmt \n _fun_std::basic_string<8d2d7b7b909d4c24>_basic_string(&s:class std::basic_string<8d2d7b7b909d4c24>*,\"1234\":char*) [line 22]\n " shape="box"] +"main.fad58de7366495db4650cfefac2fcd61_3" [label="3: DeclStmt \n _fun_std::basic_string_basic_string(&s:class std::basic_string*,\"1234\":char*) [line 22]\n " shape="box"] "main.fad58de7366495db4650cfefac2fcd61_3" -> "main.fad58de7366495db4650cfefac2fcd61_2" ; diff --git a/infer/tests/build_systems/codetoanalyze/clang_translation/src/main_default_root.cpp.dot b/infer/tests/build_systems/codetoanalyze/clang_translation/src/main_default_root.cpp.dot index 044642cc7..e3db2499a 100644 --- a/infer/tests/build_systems/codetoanalyze/clang_translation/src/main_default_root.cpp.dot +++ b/infer/tests/build_systems/codetoanalyze/clang_translation/src/main_default_root.cpp.dot @@ -1,13 +1,13 @@ /* @generated */ digraph iCFG { -"main.fad58de7366495db4650cfefac2fcd61_1" [label="1: Start main\nFormals: \nLocals: s:class std::basic_string<8d2d7b7b909d4c24> x:int* \n DECLARE_LOCALS(&return,&s,&x); [line 17]\n " color=yellow style=filled] +"main.fad58de7366495db4650cfefac2fcd61_1" [label="1: Start main\nFormals: \nLocals: s:class std::basic_string x:int* \n DECLARE_LOCALS(&return,&s,&x); [line 17]\n " color=yellow style=filled] "main.fad58de7366495db4650cfefac2fcd61_1" -> "main.fad58de7366495db4650cfefac2fcd61_7" ; "main.fad58de7366495db4650cfefac2fcd61_2" [label="2: Exit main \n " color=yellow style=filled] -"main.fad58de7366495db4650cfefac2fcd61_3" [label="3: DeclStmt \n _fun_std::basic_string<8d2d7b7b909d4c24>_basic_string(&s:class std::basic_string<8d2d7b7b909d4c24>*,\"1234\":char*) [line 22]\n " shape="box"] +"main.fad58de7366495db4650cfefac2fcd61_3" [label="3: DeclStmt \n _fun_std::basic_string_basic_string(&s:class std::basic_string*,\"1234\":char*) [line 22]\n " shape="box"] "main.fad58de7366495db4650cfefac2fcd61_3" -> "main.fad58de7366495db4650cfefac2fcd61_2" ; diff --git a/infer/tests/build_systems/codetoanalyze/clang_translation/src/main_default_symlink.cpp.dot b/infer/tests/build_systems/codetoanalyze/clang_translation/src/main_default_symlink.cpp.dot index 044642cc7..e3db2499a 100644 --- a/infer/tests/build_systems/codetoanalyze/clang_translation/src/main_default_symlink.cpp.dot +++ b/infer/tests/build_systems/codetoanalyze/clang_translation/src/main_default_symlink.cpp.dot @@ -1,13 +1,13 @@ /* @generated */ digraph iCFG { -"main.fad58de7366495db4650cfefac2fcd61_1" [label="1: Start main\nFormals: \nLocals: s:class std::basic_string<8d2d7b7b909d4c24> x:int* \n DECLARE_LOCALS(&return,&s,&x); [line 17]\n " color=yellow style=filled] +"main.fad58de7366495db4650cfefac2fcd61_1" [label="1: Start main\nFormals: \nLocals: s:class std::basic_string x:int* \n DECLARE_LOCALS(&return,&s,&x); [line 17]\n " color=yellow style=filled] "main.fad58de7366495db4650cfefac2fcd61_1" -> "main.fad58de7366495db4650cfefac2fcd61_7" ; "main.fad58de7366495db4650cfefac2fcd61_2" [label="2: Exit main \n " color=yellow style=filled] -"main.fad58de7366495db4650cfefac2fcd61_3" [label="3: DeclStmt \n _fun_std::basic_string<8d2d7b7b909d4c24>_basic_string(&s:class std::basic_string<8d2d7b7b909d4c24>*,\"1234\":char*) [line 22]\n " shape="box"] +"main.fad58de7366495db4650cfefac2fcd61_3" [label="3: DeclStmt \n _fun_std::basic_string_basic_string(&s:class std::basic_string*,\"1234\":char*) [line 22]\n " shape="box"] "main.fad58de7366495db4650cfefac2fcd61_3" -> "main.fad58de7366495db4650cfefac2fcd61_2" ; diff --git a/infer/tests/build_systems/codetoanalyze/clang_translation/src/main_symlink.cpp.dot b/infer/tests/build_systems/codetoanalyze/clang_translation/src/main_symlink.cpp.dot index 044642cc7..e3db2499a 100644 --- a/infer/tests/build_systems/codetoanalyze/clang_translation/src/main_symlink.cpp.dot +++ b/infer/tests/build_systems/codetoanalyze/clang_translation/src/main_symlink.cpp.dot @@ -1,13 +1,13 @@ /* @generated */ digraph iCFG { -"main.fad58de7366495db4650cfefac2fcd61_1" [label="1: Start main\nFormals: \nLocals: s:class std::basic_string<8d2d7b7b909d4c24> x:int* \n DECLARE_LOCALS(&return,&s,&x); [line 17]\n " color=yellow style=filled] +"main.fad58de7366495db4650cfefac2fcd61_1" [label="1: Start main\nFormals: \nLocals: s:class std::basic_string x:int* \n DECLARE_LOCALS(&return,&s,&x); [line 17]\n " color=yellow style=filled] "main.fad58de7366495db4650cfefac2fcd61_1" -> "main.fad58de7366495db4650cfefac2fcd61_7" ; "main.fad58de7366495db4650cfefac2fcd61_2" [label="2: Exit main \n " color=yellow style=filled] -"main.fad58de7366495db4650cfefac2fcd61_3" [label="3: DeclStmt \n _fun_std::basic_string<8d2d7b7b909d4c24>_basic_string(&s:class std::basic_string<8d2d7b7b909d4c24>*,\"1234\":char*) [line 22]\n " shape="box"] +"main.fad58de7366495db4650cfefac2fcd61_3" [label="3: DeclStmt \n _fun_std::basic_string_basic_string(&s:class std::basic_string*,\"1234\":char*) [line 22]\n " shape="box"] "main.fad58de7366495db4650cfefac2fcd61_3" -> "main.fad58de7366495db4650cfefac2fcd61_2" ; diff --git a/infer/tests/codetoanalyze/cpp/errors/issues.exp b/infer/tests/codetoanalyze/cpp/errors/issues.exp index 347c9ab6e..645f30fe0 100644 --- a/infer/tests/codetoanalyze/cpp/errors/issues.exp +++ b/infer/tests/codetoanalyze/cpp/errors/issues.exp @@ -11,9 +11,9 @@ codetoanalyze/cpp/errors/generic_models/generic_model_test.cpp, genericModelFunc codetoanalyze/cpp/errors/generic_models/generic_model_test.cpp, genericModelNPE, 3, NULL_DEREFERENCE, [start of procedure genericModelNPE(),start of procedure GenericModelClass,return from a call to GenericModelClass_GenericModelClass,start of procedure get,return from a call to GenericModelClass_get] codetoanalyze/cpp/errors/include_header/header.h, header::A_div0, 0, DIVIDE_BY_ZERO, [start of procedure div0] codetoanalyze/cpp/errors/include_header/header.h, header::div0_fun, 0, DIVIDE_BY_ZERO, [start of procedure header::div0_fun()] -codetoanalyze/cpp/errors/include_header/header2.h, header2::B_div0, 0, DIVIDE_BY_ZERO, [start of procedure div0] +codetoanalyze/cpp/errors/include_header/header2.h, header2::B_div0, 0, DIVIDE_BY_ZERO, [start of procedure div0] codetoanalyze/cpp/errors/include_header/header2.h, header2::B_div0, 0, DIVIDE_BY_ZERO, [start of procedure div0] -codetoanalyze/cpp/errors/include_header/header2.h, header2::div0_templ, 1, DIVIDE_BY_ZERO, [start of procedure header2::div0_templ()] +codetoanalyze/cpp/errors/include_header/header2.h, header2::div0_templ, 1, DIVIDE_BY_ZERO, [start of procedure header2::div0_templ()] codetoanalyze/cpp/errors/include_header/header2.h, header2::div0_templ, 1, DIVIDE_BY_ZERO, [start of procedure header2::div0_templ()] codetoanalyze/cpp/errors/memory_leaks/array_leak.cpp, leak, 4, MEMORY_LEAK, [start of procedure leak()] codetoanalyze/cpp/errors/memory_leaks/object_leak.cpp, object_leak, 0, MEMORY_LEAK, [start of procedure object_leak(),start of procedure Rectangle,return from a call to Rectangle_Rectangle] @@ -24,10 +24,10 @@ codetoanalyze/cpp/errors/mutex/std_mutex.cpp, alarm1, 2, DOUBLE_LOCK, [start of codetoanalyze/cpp/errors/mutex/std_mutex.cpp, alarm2, 2, DOUBLE_LOCK, [start of procedure alarm2()] codetoanalyze/cpp/errors/mutex/std_mutex.cpp, alarm2, 2, DOUBLE_LOCK, [start of procedure alarm2()] codetoanalyze/cpp/errors/mutex/std_mutex.cpp, alarm3, 6, DOUBLE_LOCK, [start of procedure alarm3(),Skipped call: function or method not found,Condition is true,Condition is true] -codetoanalyze/cpp/errors/mutex/std_mutex_lock_profiling.cpp, LockMapBucket_bad_usage3, 2, PRECONDITION_NOT_MET, [start of procedure bad_usage3,start of procedure LpLockGuard,start of procedure lp_lock(),start of procedure detail::try_lock_impl(),Condition is true,return from a call to detail::try_lock_impl,Condition is true,return from a call to lp_lock,return from a call to LpLockGuard_LpLockGuard] -codetoanalyze/cpp/errors/mutex/std_mutex_lock_profiling.cpp, bad_usage1, 3, PRECONDITION_NOT_MET, [start of procedure bad_usage1(),Skipped call: function or method not found,start of procedure lp_lock(),start of procedure detail::try_lock_impl(),Condition is true,return from a call to detail::try_lock_impl,Condition is true,return from a call to lp_lock] +codetoanalyze/cpp/errors/mutex/std_mutex_lock_profiling.cpp, LockMapBucket_bad_usage3, 2, PRECONDITION_NOT_MET, [start of procedure bad_usage3,start of procedure LpLockGuard,start of procedure lp_lock(),start of procedure detail::try_lock_impl(),Condition is true,return from a call to detail::try_lock_impl,Condition is true,return from a call to lp_lock,return from a call to LpLockGuard_LpLockGuard] +codetoanalyze/cpp/errors/mutex/std_mutex_lock_profiling.cpp, bad_usage1, 3, PRECONDITION_NOT_MET, [start of procedure bad_usage1(),Skipped call: function or method not found,start of procedure lp_lock(),start of procedure detail::try_lock_impl(),Condition is true,return from a call to detail::try_lock_impl,Condition is true,return from a call to lp_lock] codetoanalyze/cpp/errors/mutex/std_mutex_lock_profiling.cpp, bad_usage2, 3, PRECONDITION_NOT_MET, [start of procedure bad_usage2(),Skipped call: function or method not found] -codetoanalyze/cpp/errors/mutex/std_mutex_lock_profiling.cpp, lp_lock, 7, DOUBLE_LOCK, [start of procedure lp_lock(),start of procedure detail::try_lock_impl(),Condition is false,return from a call to detail::try_lock_impl,Condition is false,Condition is true,start of procedure detail::lock_impl(),return from a call to detail::lock_impl] +codetoanalyze/cpp/errors/mutex/std_mutex_lock_profiling.cpp, lp_lock, 7, DOUBLE_LOCK, [start of procedure lp_lock(),start of procedure detail::try_lock_impl(),Condition is false,return from a call to detail::try_lock_impl,Condition is false,Condition is true,start of procedure detail::lock_impl(),return from a call to detail::lock_impl] codetoanalyze/cpp/errors/npe/boxed_ptr.cpp, boxed_ptr::smart_ptr_null_field_deref, 2, NULL_DEREFERENCE, [start of procedure boxed_ptr::smart_ptr_null_field_deref(),start of procedure SmartPtr,return from a call to boxed_ptr::SmartPtr_SmartPtr,start of procedure get,return from a call to boxed_ptr::SmartPtr_get] codetoanalyze/cpp/errors/npe/boxed_ptr.cpp, boxed_ptr::smart_ptr_null_method_deref, 2, NULL_DEREFERENCE, [start of procedure boxed_ptr::smart_ptr_null_method_deref(),start of procedure SmartPtr,return from a call to boxed_ptr::SmartPtr_SmartPtr,start of procedure get,return from a call to boxed_ptr::SmartPtr_get] codetoanalyze/cpp/errors/npe/boxed_ptr.cpp, boxed_ptr::smart_ptr_null_method_deref2, 2, NULL_DEREFERENCE, [start of procedure boxed_ptr::smart_ptr_null_method_deref2(),start of procedure SmartPtr,return from a call to boxed_ptr::SmartPtr_SmartPtr,start of procedure get,return from a call to boxed_ptr::SmartPtr_get] @@ -267,18 +267,18 @@ codetoanalyze/cpp/shared/reference/temporary_lvalue.cpp, div0_no_const_ref, 2, D codetoanalyze/cpp/shared/templates/class_template_instantiate.cpp, ExecStore_call_div, 2, DIVIDE_BY_ZERO, [start of procedure call_div,start of procedure div] codetoanalyze/cpp/shared/templates/class_template_instantiate.cpp, choose1_div0, 0, DIVIDE_BY_ZERO, [start of procedure choose1_div0(),start of procedure call_div,start of procedure div] codetoanalyze/cpp/shared/templates/class_template_instantiate.cpp, choose2_div0_extra, 0, DIVIDE_BY_ZERO, [start of procedure choose2_div0_extra(),start of procedure extra] -codetoanalyze/cpp/shared/templates/function.cpp, function::createAndDiv, 1, DIVIDE_BY_ZERO, [start of procedure function::createAndDiv(),start of procedure function::createAndGetVal(),start of procedure X3,return from a call to function::X3_X3,start of procedure function::getVal(),start of procedure get,return from a call to function::X3_get,return from a call to function::getVal,return from a call to function::createAndGetVal] -codetoanalyze/cpp/shared/templates/function.cpp, function::div0_create_and_get_val, 1, DIVIDE_BY_ZERO, [start of procedure function::div0_create_and_get_val(),start of procedure function::createAndGetVal(),start of procedure X1,return from a call to function::X1_X1,start of procedure function::getVal(),start of procedure getVal,return from a call to function::X1_getVal,return from a call to function::getVal,return from a call to function::createAndGetVal,start of procedure function::createAndGetVal(),start of procedure X3,return from a call to function::X3_X3,start of procedure function::getVal(),start of procedure get,return from a call to function::X3_get,return from a call to function::getVal,return from a call to function::createAndGetVal] -codetoanalyze/cpp/shared/templates/function.cpp, function::div0_get_val, 3, DIVIDE_BY_ZERO, [start of procedure function::div0_get_val(),start of procedure X1,return from a call to function::X1_X1,start of procedure X3,return from a call to function::X3_X3,start of procedure function::getVal(),start of procedure getVal,return from a call to function::X1_getVal,return from a call to function::getVal,start of procedure function::getVal(),start of procedure get,return from a call to function::X3_get,return from a call to function::getVal] +codetoanalyze/cpp/shared/templates/function.cpp, function::createAndDiv, 1, DIVIDE_BY_ZERO, [start of procedure function::createAndDiv(),start of procedure function::createAndGetVal(),start of procedure X3,return from a call to function::X3_X3,start of procedure function::getVal(),start of procedure get,return from a call to function::X3_get,return from a call to function::getVal,return from a call to function::createAndGetVal] +codetoanalyze/cpp/shared/templates/function.cpp, function::div0_create_and_get_val, 1, DIVIDE_BY_ZERO, [start of procedure function::div0_create_and_get_val(),start of procedure function::createAndGetVal(),start of procedure X1,return from a call to function::X1_X1,start of procedure function::getVal(),start of procedure getVal,return from a call to function::X1_getVal,return from a call to function::getVal,return from a call to function::createAndGetVal,start of procedure function::createAndGetVal(),start of procedure X3,return from a call to function::X3_X3,start of procedure function::getVal(),start of procedure get,return from a call to function::X3_get,return from a call to function::getVal,return from a call to function::createAndGetVal] +codetoanalyze/cpp/shared/templates/function.cpp, function::div0_get_val, 3, DIVIDE_BY_ZERO, [start of procedure function::div0_get_val(),start of procedure X1,return from a call to function::X1_X1,start of procedure X3,return from a call to function::X3_X3,start of procedure function::getVal(),start of procedure getVal,return from a call to function::X1_getVal,return from a call to function::getVal,start of procedure function::getVal(),start of procedure get,return from a call to function::X3_get,return from a call to function::getVal] codetoanalyze/cpp/shared/templates/function_pack.cpp, div0_10args, 0, DIVIDE_BY_ZERO, [start of procedure div0_10args()] codetoanalyze/cpp/shared/templates/function_pack.cpp, div0_1arg, 0, DIVIDE_BY_ZERO, [start of procedure div0_1arg(),start of procedure div()] codetoanalyze/cpp/shared/templates/function_pack.cpp, div0_3args1, 0, DIVIDE_BY_ZERO, [start of procedure div0_3args1()] codetoanalyze/cpp/shared/templates/function_pack.cpp, div0_3args2, 0, DIVIDE_BY_ZERO, [start of procedure div0_3args2()] codetoanalyze/cpp/shared/templates/function_pack.cpp, div0_3args3, 0, DIVIDE_BY_ZERO, [start of procedure div0_3args3(),start of procedure div(),start of procedure div(),start of procedure div()] codetoanalyze/cpp/shared/templates/function_pack.cpp, div0_3args4, 0, DIVIDE_BY_ZERO, [start of procedure div0_3args4(),start of procedure div(),start of procedure div(),start of procedure div()] -codetoanalyze/cpp/shared/templates/method.cpp, method::div0_getter, 3, DIVIDE_BY_ZERO, [start of procedure method::div0_getter(),start of procedure X2,return from a call to method::X2_X2,start of procedure Getter,return from a call to method::Getter_Getter,start of procedure get,start of procedure get,return from a call to method::X2_get,return from a call to method::Getter_get] -codetoanalyze/cpp/shared/templates/method.cpp, method::div0_getter_templ, 4, DIVIDE_BY_ZERO, [start of procedure method::div0_getter_templ(),start of procedure X2,return from a call to method::X2_X2,start of procedure X3,return from a call to method::X3_X3,start of procedure GetterTempl,return from a call to method::GetterTempl_GetterTempl,start of procedure get,start of procedure get,return from a call to method::X3_get,start of procedure get,return from a call to method::X2_get,return from a call to method::GetterTempl_get] -codetoanalyze/cpp/shared/templates/method.cpp, method::div0_getter_templ2, 4, DIVIDE_BY_ZERO, [start of procedure method::div0_getter_templ2(),start of procedure X2,return from a call to method::X2_X2,start of procedure X2,return from a call to method::X2_X2,start of procedure GetterTempl,return from a call to method::GetterTempl_GetterTempl,start of procedure get,start of procedure get,return from a call to method::X2_get,start of procedure get,return from a call to method::X2_get,return from a call to method::GetterTempl_get] +codetoanalyze/cpp/shared/templates/method.cpp, method::div0_getter, 3, DIVIDE_BY_ZERO, [start of procedure method::div0_getter(),start of procedure X2,return from a call to method::X2_X2,start of procedure Getter,return from a call to method::Getter_Getter,start of procedure get,start of procedure get,return from a call to method::X2_get,return from a call to method::Getter_get] +codetoanalyze/cpp/shared/templates/method.cpp, method::div0_getter_templ, 4, DIVIDE_BY_ZERO, [start of procedure method::div0_getter_templ(),start of procedure X2,return from a call to method::X2_X2,start of procedure X3,return from a call to method::X3_X3,start of procedure GetterTempl,return from a call to method::GetterTempl_GetterTempl,start of procedure get,start of procedure get,return from a call to method::X3_get,start of procedure get,return from a call to method::X2_get,return from a call to method::GetterTempl_get] +codetoanalyze/cpp/shared/templates/method.cpp, method::div0_getter_templ2, 4, DIVIDE_BY_ZERO, [start of procedure method::div0_getter_templ2(),start of procedure X2,return from a call to method::X2_X2,start of procedure X2,return from a call to method::X2_X2,start of procedure GetterTempl,return from a call to method::GetterTempl_GetterTempl,start of procedure get,start of procedure get,return from a call to method::X2_get,start of procedure get,return from a call to method::X2_get,return from a call to method::GetterTempl_get] codetoanalyze/cpp/shared/types/inheritance_casts.cpp, inheritance_casts::div0_A, 0, DIVIDE_BY_ZERO, [start of procedure inheritance_casts::div0_A(),start of procedure inheritance_casts::getA(),start of procedure A,return from a call to inheritance_casts::A_A,start of procedure A,return from a call to inheritance_casts::A_A,return from a call to inheritance_casts::getA,start of procedure inheritance_casts::div()] codetoanalyze/cpp/shared/types/inheritance_casts.cpp, inheritance_casts::div0_B, 0, DIVIDE_BY_ZERO, [start of procedure inheritance_casts::div0_B(),start of procedure inheritance_casts::getB(),start of procedure B,start of procedure A,return from a call to inheritance_casts::A_A,return from a call to inheritance_casts::B_B,start of procedure B,start of procedure A,return from a call to inheritance_casts::A_A,return from a call to inheritance_casts::B_B,return from a call to inheritance_casts::getB,start of procedure inheritance_casts::div()] codetoanalyze/cpp/shared/types/inheritance_field.cpp, div0_b1, 2, DIVIDE_BY_ZERO, [start of procedure div0_b1()] diff --git a/infer/tests/codetoanalyze/cpp/shared/templates/function.cpp.dot b/infer/tests/codetoanalyze/cpp/shared/templates/function.cpp.dot index 5af2af424..cdf66e8fa 100644 --- a/infer/tests/codetoanalyze/cpp/shared/templates/function.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/shared/templates/function.cpp.dot @@ -1,57 +1,57 @@ /* @generated */ digraph iCFG { -"createAndGetVal#function#_ZN8function15createAndGetValINS_2X1EEEiv.3de45aa57dc0297695b105be64a49b33_1" [label="1: Start function::createAndGetVal\nFormals: \nLocals: x:class function::X1 \n DECLARE_LOCALS(&return,&x); [line 36]\n " color=yellow style=filled] +"createAndGetVal#function#_ZN8function15createAndGetValINS_2X1EEEiv.039baa46e3473dadda9dfc57b0310769_1" [label="1: Start function::createAndGetVal\nFormals: \nLocals: x:class function::X1 \n DECLARE_LOCALS(&return,&x); [line 36]\n " color=yellow style=filled] - "createAndGetVal#function#_ZN8function15createAndGetValINS_2X1EEEiv.3de45aa57dc0297695b105be64a49b33_1" -> "createAndGetVal#function#_ZN8function15createAndGetValINS_2X1EEEiv.3de45aa57dc0297695b105be64a49b33_4" ; -"createAndGetVal#function#_ZN8function15createAndGetValINS_2X1EEEiv.3de45aa57dc0297695b105be64a49b33_2" [label="2: Exit function::createAndGetVal \n " color=yellow style=filled] + "createAndGetVal#function#_ZN8function15createAndGetValINS_2X1EEEiv.039baa46e3473dadda9dfc57b0310769_1" -> "createAndGetVal#function#_ZN8function15createAndGetValINS_2X1EEEiv.039baa46e3473dadda9dfc57b0310769_4" ; +"createAndGetVal#function#_ZN8function15createAndGetValINS_2X1EEEiv.039baa46e3473dadda9dfc57b0310769_2" [label="2: Exit function::createAndGetVal \n " color=yellow style=filled] -"createAndGetVal#function#_ZN8function15createAndGetValINS_2X1EEEiv.3de45aa57dc0297695b105be64a49b33_3" [label="3: Return Stmt \n n$0=_fun_function::getVal(&x:class function::X1&) [line 38]\n *&return:int=n$0 [line 38]\n " shape="box"] +"createAndGetVal#function#_ZN8function15createAndGetValINS_2X1EEEiv.039baa46e3473dadda9dfc57b0310769_3" [label="3: Return Stmt \n n$0=_fun_function::getVal(&x:class function::X1&) [line 38]\n *&return:int=n$0 [line 38]\n " shape="box"] - "createAndGetVal#function#_ZN8function15createAndGetValINS_2X1EEEiv.3de45aa57dc0297695b105be64a49b33_3" -> "createAndGetVal#function#_ZN8function15createAndGetValINS_2X1EEEiv.3de45aa57dc0297695b105be64a49b33_2" ; -"createAndGetVal#function#_ZN8function15createAndGetValINS_2X1EEEiv.3de45aa57dc0297695b105be64a49b33_4" [label="4: DeclStmt \n _fun_function::X1_X1(&x:class function::X1*) [line 37]\n " shape="box"] + "createAndGetVal#function#_ZN8function15createAndGetValINS_2X1EEEiv.039baa46e3473dadda9dfc57b0310769_3" -> "createAndGetVal#function#_ZN8function15createAndGetValINS_2X1EEEiv.039baa46e3473dadda9dfc57b0310769_2" ; +"createAndGetVal#function#_ZN8function15createAndGetValINS_2X1EEEiv.039baa46e3473dadda9dfc57b0310769_4" [label="4: DeclStmt \n _fun_function::X1_X1(&x:class function::X1*) [line 37]\n " shape="box"] - "createAndGetVal#function#_ZN8function15createAndGetValINS_2X1EEEiv.3de45aa57dc0297695b105be64a49b33_4" -> "createAndGetVal#function#_ZN8function15createAndGetValINS_2X1EEEiv.3de45aa57dc0297695b105be64a49b33_3" ; -"createAndGetVal#function#_ZN8function15createAndGetValINS_2X3EEEiv.b07847fd6d1e0d83dcd1f60900bd6d92_1" [label="1: Start function::createAndGetVal\nFormals: \nLocals: x:class function::X3 \n DECLARE_LOCALS(&return,&x); [line 36]\n " color=yellow style=filled] + "createAndGetVal#function#_ZN8function15createAndGetValINS_2X1EEEiv.039baa46e3473dadda9dfc57b0310769_4" -> "createAndGetVal#function#_ZN8function15createAndGetValINS_2X1EEEiv.039baa46e3473dadda9dfc57b0310769_3" ; +"createAndGetVal#function#_ZN8function15createAndGetValINS_2X3EEEiv.79730aa3bfb820edb65fbc3c3e0f1d17_1" [label="1: Start function::createAndGetVal\nFormals: \nLocals: x:class function::X3 \n DECLARE_LOCALS(&return,&x); [line 36]\n " color=yellow style=filled] - "createAndGetVal#function#_ZN8function15createAndGetValINS_2X3EEEiv.b07847fd6d1e0d83dcd1f60900bd6d92_1" -> "createAndGetVal#function#_ZN8function15createAndGetValINS_2X3EEEiv.b07847fd6d1e0d83dcd1f60900bd6d92_4" ; -"createAndGetVal#function#_ZN8function15createAndGetValINS_2X3EEEiv.b07847fd6d1e0d83dcd1f60900bd6d92_2" [label="2: Exit function::createAndGetVal \n " color=yellow style=filled] + "createAndGetVal#function#_ZN8function15createAndGetValINS_2X3EEEiv.79730aa3bfb820edb65fbc3c3e0f1d17_1" -> "createAndGetVal#function#_ZN8function15createAndGetValINS_2X3EEEiv.79730aa3bfb820edb65fbc3c3e0f1d17_4" ; +"createAndGetVal#function#_ZN8function15createAndGetValINS_2X3EEEiv.79730aa3bfb820edb65fbc3c3e0f1d17_2" [label="2: Exit function::createAndGetVal \n " color=yellow style=filled] -"createAndGetVal#function#_ZN8function15createAndGetValINS_2X3EEEiv.b07847fd6d1e0d83dcd1f60900bd6d92_3" [label="3: Return Stmt \n n$0=_fun_function::getVal(&x:class function::X3&) [line 38]\n *&return:int=n$0 [line 38]\n " shape="box"] +"createAndGetVal#function#_ZN8function15createAndGetValINS_2X3EEEiv.79730aa3bfb820edb65fbc3c3e0f1d17_3" [label="3: Return Stmt \n n$0=_fun_function::getVal(&x:class function::X3&) [line 38]\n *&return:int=n$0 [line 38]\n " shape="box"] - "createAndGetVal#function#_ZN8function15createAndGetValINS_2X3EEEiv.b07847fd6d1e0d83dcd1f60900bd6d92_3" -> "createAndGetVal#function#_ZN8function15createAndGetValINS_2X3EEEiv.b07847fd6d1e0d83dcd1f60900bd6d92_2" ; -"createAndGetVal#function#_ZN8function15createAndGetValINS_2X3EEEiv.b07847fd6d1e0d83dcd1f60900bd6d92_4" [label="4: DeclStmt \n _fun_function::X3_X3(&x:class function::X3*) [line 37]\n " shape="box"] + "createAndGetVal#function#_ZN8function15createAndGetValINS_2X3EEEiv.79730aa3bfb820edb65fbc3c3e0f1d17_3" -> "createAndGetVal#function#_ZN8function15createAndGetValINS_2X3EEEiv.79730aa3bfb820edb65fbc3c3e0f1d17_2" ; +"createAndGetVal#function#_ZN8function15createAndGetValINS_2X3EEEiv.79730aa3bfb820edb65fbc3c3e0f1d17_4" [label="4: DeclStmt \n _fun_function::X3_X3(&x:class function::X3*) [line 37]\n " shape="box"] - "createAndGetVal#function#_ZN8function15createAndGetValINS_2X3EEEiv.b07847fd6d1e0d83dcd1f60900bd6d92_4" -> "createAndGetVal#function#_ZN8function15createAndGetValINS_2X3EEEiv.b07847fd6d1e0d83dcd1f60900bd6d92_3" ; -"createAndDiv#function#_ZN8function12createAndDivINS_2X1EEEiv.5644f1b1c3561f3cc6c013eaeafc1efc_1" [label="1: Start function::createAndDiv\nFormals: \nLocals: \n DECLARE_LOCALS(&return); [line 42]\n " color=yellow style=filled] + "createAndGetVal#function#_ZN8function15createAndGetValINS_2X3EEEiv.79730aa3bfb820edb65fbc3c3e0f1d17_4" -> "createAndGetVal#function#_ZN8function15createAndGetValINS_2X3EEEiv.79730aa3bfb820edb65fbc3c3e0f1d17_3" ; +"createAndDiv#function#_ZN8function12createAndDivINS_2X1EEEiv.8b6eb6b602048624a8dc012b349e8bdf_1" [label="1: Start function::createAndDiv\nFormals: \nLocals: \n DECLARE_LOCALS(&return); [line 42]\n " color=yellow style=filled] - "createAndDiv#function#_ZN8function12createAndDivINS_2X1EEEiv.5644f1b1c3561f3cc6c013eaeafc1efc_1" -> "createAndDiv#function#_ZN8function12createAndDivINS_2X1EEEiv.5644f1b1c3561f3cc6c013eaeafc1efc_3" ; -"createAndDiv#function#_ZN8function12createAndDivINS_2X1EEEiv.5644f1b1c3561f3cc6c013eaeafc1efc_2" [label="2: Exit function::createAndDiv \n " color=yellow style=filled] + "createAndDiv#function#_ZN8function12createAndDivINS_2X1EEEiv.8b6eb6b602048624a8dc012b349e8bdf_1" -> "createAndDiv#function#_ZN8function12createAndDivINS_2X1EEEiv.8b6eb6b602048624a8dc012b349e8bdf_3" ; +"createAndDiv#function#_ZN8function12createAndDivINS_2X1EEEiv.8b6eb6b602048624a8dc012b349e8bdf_2" [label="2: Exit function::createAndDiv \n " color=yellow style=filled] -"createAndDiv#function#_ZN8function12createAndDivINS_2X1EEEiv.5644f1b1c3561f3cc6c013eaeafc1efc_3" [label="3: Return Stmt \n n$0=_fun_function::createAndGetVal() [line 43]\n *&return:int=(1 / n$0) [line 43]\n " shape="box"] +"createAndDiv#function#_ZN8function12createAndDivINS_2X1EEEiv.8b6eb6b602048624a8dc012b349e8bdf_3" [label="3: Return Stmt \n n$0=_fun_function::createAndGetVal() [line 43]\n *&return:int=(1 / n$0) [line 43]\n " shape="box"] - "createAndDiv#function#_ZN8function12createAndDivINS_2X1EEEiv.5644f1b1c3561f3cc6c013eaeafc1efc_3" -> "createAndDiv#function#_ZN8function12createAndDivINS_2X1EEEiv.5644f1b1c3561f3cc6c013eaeafc1efc_2" ; -"createAndDiv#function#_ZN8function12createAndDivINS_2X3EEEiv.1771d1d0f0bae02dec0f28cebde8c15e_1" [label="1: Start function::createAndDiv\nFormals: \nLocals: \n DECLARE_LOCALS(&return); [line 42]\n " color=yellow style=filled] + "createAndDiv#function#_ZN8function12createAndDivINS_2X1EEEiv.8b6eb6b602048624a8dc012b349e8bdf_3" -> "createAndDiv#function#_ZN8function12createAndDivINS_2X1EEEiv.8b6eb6b602048624a8dc012b349e8bdf_2" ; +"createAndDiv#function#_ZN8function12createAndDivINS_2X3EEEiv.52392b773c431303cd35f99c5e857277_1" [label="1: Start function::createAndDiv\nFormals: \nLocals: \n DECLARE_LOCALS(&return); [line 42]\n " color=yellow style=filled] - "createAndDiv#function#_ZN8function12createAndDivINS_2X3EEEiv.1771d1d0f0bae02dec0f28cebde8c15e_1" -> "createAndDiv#function#_ZN8function12createAndDivINS_2X3EEEiv.1771d1d0f0bae02dec0f28cebde8c15e_3" ; -"createAndDiv#function#_ZN8function12createAndDivINS_2X3EEEiv.1771d1d0f0bae02dec0f28cebde8c15e_2" [label="2: Exit function::createAndDiv \n " color=yellow style=filled] + "createAndDiv#function#_ZN8function12createAndDivINS_2X3EEEiv.52392b773c431303cd35f99c5e857277_1" -> "createAndDiv#function#_ZN8function12createAndDivINS_2X3EEEiv.52392b773c431303cd35f99c5e857277_3" ; +"createAndDiv#function#_ZN8function12createAndDivINS_2X3EEEiv.52392b773c431303cd35f99c5e857277_2" [label="2: Exit function::createAndDiv \n " color=yellow style=filled] -"createAndDiv#function#_ZN8function12createAndDivINS_2X3EEEiv.1771d1d0f0bae02dec0f28cebde8c15e_3" [label="3: Return Stmt \n n$0=_fun_function::createAndGetVal() [line 43]\n *&return:int=(1 / n$0) [line 43]\n " shape="box"] +"createAndDiv#function#_ZN8function12createAndDivINS_2X3EEEiv.52392b773c431303cd35f99c5e857277_3" [label="3: Return Stmt \n n$0=_fun_function::createAndGetVal() [line 43]\n *&return:int=(1 / n$0) [line 43]\n " shape="box"] - "createAndDiv#function#_ZN8function12createAndDivINS_2X3EEEiv.1771d1d0f0bae02dec0f28cebde8c15e_3" -> "createAndDiv#function#_ZN8function12createAndDivINS_2X3EEEiv.1771d1d0f0bae02dec0f28cebde8c15e_2" ; + "createAndDiv#function#_ZN8function12createAndDivINS_2X3EEEiv.52392b773c431303cd35f99c5e857277_3" -> "createAndDiv#function#_ZN8function12createAndDivINS_2X3EEEiv.52392b773c431303cd35f99c5e857277_2" ; "div0_get_val#function#_ZN8function12div0_get_valEv.698f677b22a892809f7868150ccfb79a_1" [label="1: Start function::div0_get_val\nFormals: \nLocals: x3:class function::X3 x1:class function::X1 \n DECLARE_LOCALS(&return,&x3,&x1); [line 57]\n " color=yellow style=filled] @@ -59,7 +59,7 @@ digraph iCFG { "div0_get_val#function#_ZN8function12div0_get_valEv.698f677b22a892809f7868150ccfb79a_2" [label="2: Exit function::div0_get_val \n " color=yellow style=filled] -"div0_get_val#function#_ZN8function12div0_get_valEv.698f677b22a892809f7868150ccfb79a_3" [label="3: Return Stmt \n n$0=_fun_function::getVal(&x1:class function::X1&) [line 60]\n n$1=_fun_function::getVal(&x3:class function::X3&) [line 60]\n *&return:int=(n$0 / n$1) [line 60]\n " shape="box"] +"div0_get_val#function#_ZN8function12div0_get_valEv.698f677b22a892809f7868150ccfb79a_3" [label="3: Return Stmt \n n$0=_fun_function::getVal(&x1:class function::X1&) [line 60]\n n$1=_fun_function::getVal(&x3:class function::X3&) [line 60]\n *&return:int=(n$0 / n$1) [line 60]\n " shape="box"] "div0_get_val#function#_ZN8function12div0_get_valEv.698f677b22a892809f7868150ccfb79a_3" -> "div0_get_val#function#_ZN8function12div0_get_valEv.698f677b22a892809f7868150ccfb79a_2" ; @@ -78,7 +78,7 @@ digraph iCFG { "div1_get_val#function#_ZN8function12div1_get_valEv.90f40e3d3d31dc1fdc45b19bcd72db81_2" [label="2: Exit function::div1_get_val \n " color=yellow style=filled] -"div1_get_val#function#_ZN8function12div1_get_valEv.90f40e3d3d31dc1fdc45b19bcd72db81_3" [label="3: Return Stmt \n n$0=_fun_function::getVal(&x3:class function::X3&) [line 66]\n n$1=_fun_function::getVal(&x1:class function::X1&) [line 66]\n *&return:int=(n$0 / n$1) [line 66]\n " shape="box"] +"div1_get_val#function#_ZN8function12div1_get_valEv.90f40e3d3d31dc1fdc45b19bcd72db81_3" [label="3: Return Stmt \n n$0=_fun_function::getVal(&x3:class function::X3&) [line 66]\n n$1=_fun_function::getVal(&x1:class function::X1&) [line 66]\n *&return:int=(n$0 / n$1) [line 66]\n " shape="box"] "div1_get_val#function#_ZN8function12div1_get_valEv.90f40e3d3d31dc1fdc45b19bcd72db81_3" -> "div1_get_val#function#_ZN8function12div1_get_valEv.90f40e3d3d31dc1fdc45b19bcd72db81_2" ; @@ -97,7 +97,7 @@ digraph iCFG { "div0_create_and_get_val#function#_ZN8function23div0_create_and_get_valEv.50365f4b2fa4adc92d4efc915ca47108_2" [label="2: Exit function::div0_create_and_get_val \n " color=yellow style=filled] -"div0_create_and_get_val#function#_ZN8function23div0_create_and_get_valEv.50365f4b2fa4adc92d4efc915ca47108_3" [label="3: Return Stmt \n n$0=_fun_function::createAndGetVal() [line 70]\n n$1=_fun_function::createAndGetVal() [line 70]\n *&return:int=(n$0 / n$1) [line 70]\n " shape="box"] +"div0_create_and_get_val#function#_ZN8function23div0_create_and_get_valEv.50365f4b2fa4adc92d4efc915ca47108_3" [label="3: Return Stmt \n n$0=_fun_function::createAndGetVal() [line 70]\n n$1=_fun_function::createAndGetVal() [line 70]\n *&return:int=(n$0 / n$1) [line 70]\n " shape="box"] "div0_create_and_get_val#function#_ZN8function23div0_create_and_get_valEv.50365f4b2fa4adc92d4efc915ca47108_3" -> "div0_create_and_get_val#function#_ZN8function23div0_create_and_get_valEv.50365f4b2fa4adc92d4efc915ca47108_2" ; @@ -108,7 +108,7 @@ digraph iCFG { "div1_create_and_get_val#function#_ZN8function23div1_create_and_get_valEv.94dff1e803b66aea8e36148ceb174417_2" [label="2: Exit function::div1_create_and_get_val \n " color=yellow style=filled] -"div1_create_and_get_val#function#_ZN8function23div1_create_and_get_valEv.94dff1e803b66aea8e36148ceb174417_3" [label="3: Return Stmt \n n$0=_fun_function::createAndGetVal() [line 74]\n n$1=_fun_function::createAndGetVal() [line 74]\n *&return:int=(n$0 / n$1) [line 74]\n " shape="box"] +"div1_create_and_get_val#function#_ZN8function23div1_create_and_get_valEv.94dff1e803b66aea8e36148ceb174417_3" [label="3: Return Stmt \n n$0=_fun_function::createAndGetVal() [line 74]\n n$1=_fun_function::createAndGetVal() [line 74]\n *&return:int=(n$0 / n$1) [line 74]\n " shape="box"] "div1_create_and_get_val#function#_ZN8function23div1_create_and_get_valEv.94dff1e803b66aea8e36148ceb174417_3" -> "div1_create_and_get_val#function#_ZN8function23div1_create_and_get_valEv.94dff1e803b66aea8e36148ceb174417_2" ; @@ -159,26 +159,26 @@ digraph iCFG { "get#X3#function#(_ZN8function2X33getEv).77253249a2e933be4310d3447dbf1fac_3" -> "get#X3#function#(_ZN8function2X33getEv).77253249a2e933be4310d3447dbf1fac_2" ; -"getVal#function#_ZN8function6getValINS_2X1EEEiRT_.d9b3c8379d5b20039fe53e99bcb1a4a2_1" [label="1: Start function::getVal\nFormals: x:class function::X1&\nLocals: \n DECLARE_LOCALS(&return); [line 25]\n " color=yellow style=filled] +"getVal#function#_ZN8function6getValINS_2X1EEEiRT_.4276809d8e79ffc18c519ad85c9e825e_1" [label="1: Start function::getVal\nFormals: x:class function::X1&\nLocals: \n DECLARE_LOCALS(&return); [line 25]\n " color=yellow style=filled] - "getVal#function#_ZN8function6getValINS_2X1EEEiRT_.d9b3c8379d5b20039fe53e99bcb1a4a2_1" -> "getVal#function#_ZN8function6getValINS_2X1EEEiRT_.d9b3c8379d5b20039fe53e99bcb1a4a2_3" ; -"getVal#function#_ZN8function6getValINS_2X1EEEiRT_.d9b3c8379d5b20039fe53e99bcb1a4a2_2" [label="2: Exit function::getVal \n " color=yellow style=filled] + "getVal#function#_ZN8function6getValINS_2X1EEEiRT_.4276809d8e79ffc18c519ad85c9e825e_1" -> "getVal#function#_ZN8function6getValINS_2X1EEEiRT_.4276809d8e79ffc18c519ad85c9e825e_3" ; +"getVal#function#_ZN8function6getValINS_2X1EEEiRT_.4276809d8e79ffc18c519ad85c9e825e_2" [label="2: Exit function::getVal \n " color=yellow style=filled] -"getVal#function#_ZN8function6getValINS_2X1EEEiRT_.d9b3c8379d5b20039fe53e99bcb1a4a2_3" [label="3: Return Stmt \n n$0=*&x:class function::X1& [line 26]\n _=*n$0:class function::X1 [line 26]\n n$2=_fun_function::X1_getVal(n$0:class function::X1&) [line 26]\n *&return:int=n$2 [line 26]\n " shape="box"] +"getVal#function#_ZN8function6getValINS_2X1EEEiRT_.4276809d8e79ffc18c519ad85c9e825e_3" [label="3: Return Stmt \n n$0=*&x:class function::X1& [line 26]\n _=*n$0:class function::X1 [line 26]\n n$2=_fun_function::X1_getVal(n$0:class function::X1&) [line 26]\n *&return:int=n$2 [line 26]\n " shape="box"] - "getVal#function#_ZN8function6getValINS_2X1EEEiRT_.d9b3c8379d5b20039fe53e99bcb1a4a2_3" -> "getVal#function#_ZN8function6getValINS_2X1EEEiRT_.d9b3c8379d5b20039fe53e99bcb1a4a2_2" ; -"getVal#function#_ZN8function6getValINS_2X3EEEiRT_.ec2f3ab8e50eaa43c430bd9998eea5b7_1" [label="1: Start function::getVal\nFormals: x:class function::X3&\nLocals: \n DECLARE_LOCALS(&return); [line 30]\n " color=yellow style=filled] + "getVal#function#_ZN8function6getValINS_2X1EEEiRT_.4276809d8e79ffc18c519ad85c9e825e_3" -> "getVal#function#_ZN8function6getValINS_2X1EEEiRT_.4276809d8e79ffc18c519ad85c9e825e_2" ; +"getVal#function#_ZN8function6getValINS_2X3EEEiRT_.4f3d136dded8bcc8ebefbf11d77e9d06_1" [label="1: Start function::getVal\nFormals: x:class function::X3&\nLocals: \n DECLARE_LOCALS(&return); [line 30]\n " color=yellow style=filled] - "getVal#function#_ZN8function6getValINS_2X3EEEiRT_.ec2f3ab8e50eaa43c430bd9998eea5b7_1" -> "getVal#function#_ZN8function6getValINS_2X3EEEiRT_.ec2f3ab8e50eaa43c430bd9998eea5b7_3" ; -"getVal#function#_ZN8function6getValINS_2X3EEEiRT_.ec2f3ab8e50eaa43c430bd9998eea5b7_2" [label="2: Exit function::getVal \n " color=yellow style=filled] + "getVal#function#_ZN8function6getValINS_2X3EEEiRT_.4f3d136dded8bcc8ebefbf11d77e9d06_1" -> "getVal#function#_ZN8function6getValINS_2X3EEEiRT_.4f3d136dded8bcc8ebefbf11d77e9d06_3" ; +"getVal#function#_ZN8function6getValINS_2X3EEEiRT_.4f3d136dded8bcc8ebefbf11d77e9d06_2" [label="2: Exit function::getVal \n " color=yellow style=filled] -"getVal#function#_ZN8function6getValINS_2X3EEEiRT_.ec2f3ab8e50eaa43c430bd9998eea5b7_3" [label="3: Return Stmt \n n$0=*&x:class function::X3& [line 32]\n _=*n$0:class function::X3 [line 32]\n n$2=_fun_function::X3_get(n$0:class function::X3&) [line 32]\n *&return:int=n$2 [line 32]\n " shape="box"] +"getVal#function#_ZN8function6getValINS_2X3EEEiRT_.4f3d136dded8bcc8ebefbf11d77e9d06_3" [label="3: Return Stmt \n n$0=*&x:class function::X3& [line 32]\n _=*n$0:class function::X3 [line 32]\n n$2=_fun_function::X3_get(n$0:class function::X3&) [line 32]\n *&return:int=n$2 [line 32]\n " shape="box"] - "getVal#function#_ZN8function6getValINS_2X3EEEiRT_.ec2f3ab8e50eaa43c430bd9998eea5b7_3" -> "getVal#function#_ZN8function6getValINS_2X3EEEiRT_.ec2f3ab8e50eaa43c430bd9998eea5b7_2" ; + "getVal#function#_ZN8function6getValINS_2X3EEEiRT_.4f3d136dded8bcc8ebefbf11d77e9d06_3" -> "getVal#function#_ZN8function6getValINS_2X3EEEiRT_.4f3d136dded8bcc8ebefbf11d77e9d06_2" ; } diff --git a/infer/tests/codetoanalyze/cpp/shared/templates/method.cpp.dot b/infer/tests/codetoanalyze/cpp/shared/templates/method.cpp.dot index 4da1a6a92..1e534a016 100644 --- a/infer/tests/codetoanalyze/cpp/shared/templates/method.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/shared/templates/method.cpp.dot @@ -7,7 +7,7 @@ digraph iCFG { "div0_getter#method#_ZN6method11div0_getterEv.ec3ad793f8d12f0bf207952065a51233_2" [label="2: Exit method::div0_getter \n " color=yellow style=filled] -"div0_getter#method#_ZN6method11div0_getterEv.ec3ad793f8d12f0bf207952065a51233_3" [label="3: Return Stmt \n _=*&g:class method::Getter [line 42]\n n$1=_fun_method::Getter_get(&g:class method::Getter&,&x2:class method::X2&) [line 42]\n *&return:int=(1 / n$1) [line 42]\n " shape="box"] +"div0_getter#method#_ZN6method11div0_getterEv.ec3ad793f8d12f0bf207952065a51233_3" [label="3: Return Stmt \n _=*&g:class method::Getter [line 42]\n n$1=_fun_method::Getter_get(&g:class method::Getter&,&x2:class method::X2&) [line 42]\n *&return:int=(1 / n$1) [line 42]\n " shape="box"] "div0_getter#method#_ZN6method11div0_getterEv.ec3ad793f8d12f0bf207952065a51233_3" -> "div0_getter#method#_ZN6method11div0_getterEv.ec3ad793f8d12f0bf207952065a51233_2" ; @@ -26,7 +26,7 @@ digraph iCFG { "div1_getter#method#_ZN6method11div1_getterEv.fbe3cbdb57fec446e469b05365c58534_2" [label="2: Exit method::div1_getter \n " color=yellow style=filled] -"div1_getter#method#_ZN6method11div1_getterEv.fbe3cbdb57fec446e469b05365c58534_3" [label="3: Return Stmt \n _=*&g:class method::Getter [line 48]\n n$1=_fun_method::Getter_get(&g:class method::Getter&,&x1:class method::X1&) [line 48]\n *&return:int=(1 / n$1) [line 48]\n " shape="box"] +"div1_getter#method#_ZN6method11div1_getterEv.fbe3cbdb57fec446e469b05365c58534_3" [label="3: Return Stmt \n _=*&g:class method::Getter [line 48]\n n$1=_fun_method::Getter_get(&g:class method::Getter&,&x1:class method::X1&) [line 48]\n *&return:int=(1 / n$1) [line 48]\n " shape="box"] "div1_getter#method#_ZN6method11div1_getterEv.fbe3cbdb57fec446e469b05365c58534_3" -> "div1_getter#method#_ZN6method11div1_getterEv.fbe3cbdb57fec446e469b05365c58534_2" ; @@ -38,18 +38,18 @@ digraph iCFG { "div1_getter#method#_ZN6method11div1_getterEv.fbe3cbdb57fec446e469b05365c58534_5" -> "div1_getter#method#_ZN6method11div1_getterEv.fbe3cbdb57fec446e469b05365c58534_4" ; -"div0_getter_templ#method#_ZN6method17div0_getter_templEv.a702cd966ad16510bf8597caab589d83_1" [label="1: Start method::div0_getter_templ\nFormals: \nLocals: g:class method::GetterTempl x3:class method::X3 x2:class method::X2 \n DECLARE_LOCALS(&return,&g,&x3,&x2); [line 51]\n " color=yellow style=filled] +"div0_getter_templ#method#_ZN6method17div0_getter_templEv.a702cd966ad16510bf8597caab589d83_1" [label="1: Start method::div0_getter_templ\nFormals: \nLocals: g:class method::GetterTempl x3:class method::X3 x2:class method::X2 \n DECLARE_LOCALS(&return,&g,&x3,&x2); [line 51]\n " color=yellow style=filled] "div0_getter_templ#method#_ZN6method17div0_getter_templEv.a702cd966ad16510bf8597caab589d83_1" -> "div0_getter_templ#method#_ZN6method17div0_getter_templEv.a702cd966ad16510bf8597caab589d83_6" ; "div0_getter_templ#method#_ZN6method17div0_getter_templEv.a702cd966ad16510bf8597caab589d83_2" [label="2: Exit method::div0_getter_templ \n " color=yellow style=filled] -"div0_getter_templ#method#_ZN6method17div0_getter_templEv.a702cd966ad16510bf8597caab589d83_3" [label="3: Return Stmt \n _=*&g:class method::GetterTempl [line 55]\n n$1=_fun_method::GetterTempl_get(&g:class method::GetterTempl&,&x3:class method::X3&,&x2:class method::X2&) [line 55]\n *&return:int=(1 / n$1) [line 55]\n " shape="box"] +"div0_getter_templ#method#_ZN6method17div0_getter_templEv.a702cd966ad16510bf8597caab589d83_3" [label="3: Return Stmt \n _=*&g:class method::GetterTempl [line 55]\n n$1=_fun_method::GetterTempl_get(&g:class method::GetterTempl&,&x3:class method::X3&,&x2:class method::X2&) [line 55]\n *&return:int=(1 / n$1) [line 55]\n " shape="box"] "div0_getter_templ#method#_ZN6method17div0_getter_templEv.a702cd966ad16510bf8597caab589d83_3" -> "div0_getter_templ#method#_ZN6method17div0_getter_templEv.a702cd966ad16510bf8597caab589d83_2" ; -"div0_getter_templ#method#_ZN6method17div0_getter_templEv.a702cd966ad16510bf8597caab589d83_4" [label="4: DeclStmt \n _fun_method::GetterTempl_GetterTempl(&g:class method::GetterTempl*) [line 54]\n " shape="box"] +"div0_getter_templ#method#_ZN6method17div0_getter_templEv.a702cd966ad16510bf8597caab589d83_4" [label="4: DeclStmt \n _fun_method::GetterTempl_GetterTempl(&g:class method::GetterTempl*) [line 54]\n " shape="box"] "div0_getter_templ#method#_ZN6method17div0_getter_templEv.a702cd966ad16510bf8597caab589d83_4" -> "div0_getter_templ#method#_ZN6method17div0_getter_templEv.a702cd966ad16510bf8597caab589d83_3" ; @@ -61,18 +61,18 @@ digraph iCFG { "div0_getter_templ#method#_ZN6method17div0_getter_templEv.a702cd966ad16510bf8597caab589d83_6" -> "div0_getter_templ#method#_ZN6method17div0_getter_templEv.a702cd966ad16510bf8597caab589d83_5" ; -"div0_getter_templ2#method#_ZN6method18div0_getter_templ2Ev.c1823ff21deea782f68b32d04773b547_1" [label="1: Start method::div0_getter_templ2\nFormals: \nLocals: g:class method::GetterTempl x2_2:class method::X2 x2_1:class method::X2 \n DECLARE_LOCALS(&return,&g,&x2_2,&x2_1); [line 58]\n " color=yellow style=filled] +"div0_getter_templ2#method#_ZN6method18div0_getter_templ2Ev.c1823ff21deea782f68b32d04773b547_1" [label="1: Start method::div0_getter_templ2\nFormals: \nLocals: g:class method::GetterTempl x2_2:class method::X2 x2_1:class method::X2 \n DECLARE_LOCALS(&return,&g,&x2_2,&x2_1); [line 58]\n " color=yellow style=filled] "div0_getter_templ2#method#_ZN6method18div0_getter_templ2Ev.c1823ff21deea782f68b32d04773b547_1" -> "div0_getter_templ2#method#_ZN6method18div0_getter_templ2Ev.c1823ff21deea782f68b32d04773b547_6" ; "div0_getter_templ2#method#_ZN6method18div0_getter_templ2Ev.c1823ff21deea782f68b32d04773b547_2" [label="2: Exit method::div0_getter_templ2 \n " color=yellow style=filled] -"div0_getter_templ2#method#_ZN6method18div0_getter_templ2Ev.c1823ff21deea782f68b32d04773b547_3" [label="3: Return Stmt \n _=*&g:class method::GetterTempl [line 62]\n n$1=_fun_method::GetterTempl_get(&g:class method::GetterTempl&,&x2_1:class method::X2&,&x2_2:class method::X2&) [line 62]\n *&return:int=(1 / n$1) [line 62]\n " shape="box"] +"div0_getter_templ2#method#_ZN6method18div0_getter_templ2Ev.c1823ff21deea782f68b32d04773b547_3" [label="3: Return Stmt \n _=*&g:class method::GetterTempl [line 62]\n n$1=_fun_method::GetterTempl_get(&g:class method::GetterTempl&,&x2_1:class method::X2&,&x2_2:class method::X2&) [line 62]\n *&return:int=(1 / n$1) [line 62]\n " shape="box"] "div0_getter_templ2#method#_ZN6method18div0_getter_templ2Ev.c1823ff21deea782f68b32d04773b547_3" -> "div0_getter_templ2#method#_ZN6method18div0_getter_templ2Ev.c1823ff21deea782f68b32d04773b547_2" ; -"div0_getter_templ2#method#_ZN6method18div0_getter_templ2Ev.c1823ff21deea782f68b32d04773b547_4" [label="4: DeclStmt \n _fun_method::GetterTempl_GetterTempl(&g:class method::GetterTempl*) [line 61]\n " shape="box"] +"div0_getter_templ2#method#_ZN6method18div0_getter_templ2Ev.c1823ff21deea782f68b32d04773b547_4" [label="4: DeclStmt \n _fun_method::GetterTempl_GetterTempl(&g:class method::GetterTempl*) [line 61]\n " shape="box"] "div0_getter_templ2#method#_ZN6method18div0_getter_templ2Ev.c1823ff21deea782f68b32d04773b547_4" -> "div0_getter_templ2#method#_ZN6method18div0_getter_templ2Ev.c1823ff21deea782f68b32d04773b547_3" ; @@ -84,18 +84,18 @@ digraph iCFG { "div0_getter_templ2#method#_ZN6method18div0_getter_templ2Ev.c1823ff21deea782f68b32d04773b547_6" -> "div0_getter_templ2#method#_ZN6method18div0_getter_templ2Ev.c1823ff21deea782f68b32d04773b547_5" ; -"div1_getter_templ#method#_ZN6method17div1_getter_templEv.26d68eb6a66bdd59ad9cca58abeaa9fb_1" [label="1: Start method::div1_getter_templ\nFormals: \nLocals: g:class method::GetterTempl x2:class method::X2 x1:class method::X1 \n DECLARE_LOCALS(&return,&g,&x2,&x1); [line 65]\n " color=yellow style=filled] +"div1_getter_templ#method#_ZN6method17div1_getter_templEv.26d68eb6a66bdd59ad9cca58abeaa9fb_1" [label="1: Start method::div1_getter_templ\nFormals: \nLocals: g:class method::GetterTempl x2:class method::X2 x1:class method::X1 \n DECLARE_LOCALS(&return,&g,&x2,&x1); [line 65]\n " color=yellow style=filled] "div1_getter_templ#method#_ZN6method17div1_getter_templEv.26d68eb6a66bdd59ad9cca58abeaa9fb_1" -> "div1_getter_templ#method#_ZN6method17div1_getter_templEv.26d68eb6a66bdd59ad9cca58abeaa9fb_6" ; "div1_getter_templ#method#_ZN6method17div1_getter_templEv.26d68eb6a66bdd59ad9cca58abeaa9fb_2" [label="2: Exit method::div1_getter_templ \n " color=yellow style=filled] -"div1_getter_templ#method#_ZN6method17div1_getter_templEv.26d68eb6a66bdd59ad9cca58abeaa9fb_3" [label="3: Return Stmt \n _=*&g:class method::GetterTempl [line 69]\n n$1=_fun_method::GetterTempl_get(&g:class method::GetterTempl&,&x2:class method::X2&,&x1:class method::X1&) [line 69]\n *&return:int=(1 / n$1) [line 69]\n " shape="box"] +"div1_getter_templ#method#_ZN6method17div1_getter_templEv.26d68eb6a66bdd59ad9cca58abeaa9fb_3" [label="3: Return Stmt \n _=*&g:class method::GetterTempl [line 69]\n n$1=_fun_method::GetterTempl_get(&g:class method::GetterTempl&,&x2:class method::X2&,&x1:class method::X1&) [line 69]\n *&return:int=(1 / n$1) [line 69]\n " shape="box"] "div1_getter_templ#method#_ZN6method17div1_getter_templEv.26d68eb6a66bdd59ad9cca58abeaa9fb_3" -> "div1_getter_templ#method#_ZN6method17div1_getter_templEv.26d68eb6a66bdd59ad9cca58abeaa9fb_2" ; -"div1_getter_templ#method#_ZN6method17div1_getter_templEv.26d68eb6a66bdd59ad9cca58abeaa9fb_4" [label="4: DeclStmt \n _fun_method::GetterTempl_GetterTempl(&g:class method::GetterTempl*) [line 68]\n " shape="box"] +"div1_getter_templ#method#_ZN6method17div1_getter_templEv.26d68eb6a66bdd59ad9cca58abeaa9fb_4" [label="4: DeclStmt \n _fun_method::GetterTempl_GetterTempl(&g:class method::GetterTempl*) [line 68]\n " shape="box"] "div1_getter_templ#method#_ZN6method17div1_getter_templEv.26d68eb6a66bdd59ad9cca58abeaa9fb_4" -> "div1_getter_templ#method#_ZN6method17div1_getter_templEv.26d68eb6a66bdd59ad9cca58abeaa9fb_3" ; @@ -107,18 +107,18 @@ digraph iCFG { "div1_getter_templ#method#_ZN6method17div1_getter_templEv.26d68eb6a66bdd59ad9cca58abeaa9fb_6" -> "div1_getter_templ#method#_ZN6method17div1_getter_templEv.26d68eb6a66bdd59ad9cca58abeaa9fb_5" ; -"div1_getter_templ2#method#_ZN6method18div1_getter_templ2Ev.edc875f2674c99f4542710be015dfb34_1" [label="1: Start method::div1_getter_templ2\nFormals: \nLocals: g:class method::GetterTempl x1_2:class method::X1 x1_1:class method::X1 \n DECLARE_LOCALS(&return,&g,&x1_2,&x1_1); [line 72]\n " color=yellow style=filled] +"div1_getter_templ2#method#_ZN6method18div1_getter_templ2Ev.edc875f2674c99f4542710be015dfb34_1" [label="1: Start method::div1_getter_templ2\nFormals: \nLocals: g:class method::GetterTempl x1_2:class method::X1 x1_1:class method::X1 \n DECLARE_LOCALS(&return,&g,&x1_2,&x1_1); [line 72]\n " color=yellow style=filled] "div1_getter_templ2#method#_ZN6method18div1_getter_templ2Ev.edc875f2674c99f4542710be015dfb34_1" -> "div1_getter_templ2#method#_ZN6method18div1_getter_templ2Ev.edc875f2674c99f4542710be015dfb34_6" ; "div1_getter_templ2#method#_ZN6method18div1_getter_templ2Ev.edc875f2674c99f4542710be015dfb34_2" [label="2: Exit method::div1_getter_templ2 \n " color=yellow style=filled] -"div1_getter_templ2#method#_ZN6method18div1_getter_templ2Ev.edc875f2674c99f4542710be015dfb34_3" [label="3: Return Stmt \n _=*&g:class method::GetterTempl [line 76]\n n$1=_fun_method::GetterTempl_get(&g:class method::GetterTempl&,&x1_1:class method::X1&,&x1_2:class method::X1&) [line 76]\n *&return:int=(1 / n$1) [line 76]\n " shape="box"] +"div1_getter_templ2#method#_ZN6method18div1_getter_templ2Ev.edc875f2674c99f4542710be015dfb34_3" [label="3: Return Stmt \n _=*&g:class method::GetterTempl [line 76]\n n$1=_fun_method::GetterTempl_get(&g:class method::GetterTempl&,&x1_1:class method::X1&,&x1_2:class method::X1&) [line 76]\n *&return:int=(1 / n$1) [line 76]\n " shape="box"] "div1_getter_templ2#method#_ZN6method18div1_getter_templ2Ev.edc875f2674c99f4542710be015dfb34_3" -> "div1_getter_templ2#method#_ZN6method18div1_getter_templ2Ev.edc875f2674c99f4542710be015dfb34_2" ; -"div1_getter_templ2#method#_ZN6method18div1_getter_templ2Ev.edc875f2674c99f4542710be015dfb34_4" [label="4: DeclStmt \n _fun_method::GetterTempl_GetterTempl(&g:class method::GetterTempl*) [line 75]\n " shape="box"] +"div1_getter_templ2#method#_ZN6method18div1_getter_templ2Ev.edc875f2674c99f4542710be015dfb34_4" [label="4: DeclStmt \n _fun_method::GetterTempl_GetterTempl(&g:class method::GetterTempl*) [line 75]\n " shape="box"] "div1_getter_templ2#method#_ZN6method18div1_getter_templ2Ev.edc875f2674c99f4542710be015dfb34_4" -> "div1_getter_templ2#method#_ZN6method18div1_getter_templ2Ev.edc875f2674c99f4542710be015dfb34_3" ; @@ -137,93 +137,93 @@ digraph iCFG { "Getter#Getter#method#{_ZN6method6GetterC1Ev|constexpr}.c4d1597ca877c26f3d9b4df32a6e1012_2" [label="2: Exit method::Getter_Getter \n " color=yellow style=filled] -"get#Getter#method#(_ZN6method6Getter3getINS_2X1EEEiRT_).70c5362ecf81cca29a5a9f495ab5116e_1" [label="1: Start method::Getter_get\nFormals: this:class method::Getter* s:class method::X1&\nLocals: \n DECLARE_LOCALS(&return); [line 26]\n " color=yellow style=filled] +"get#Getter#method#(_ZN6method6Getter3getINS_2X1EEEiRT_).aacc167ec5db8230b9c3043c0c2e512e_1" [label="1: Start method::Getter_get\nFormals: this:class method::Getter* s:class method::X1&\nLocals: \n DECLARE_LOCALS(&return); [line 26]\n " color=yellow style=filled] - "get#Getter#method#(_ZN6method6Getter3getINS_2X1EEEiRT_).70c5362ecf81cca29a5a9f495ab5116e_1" -> "get#Getter#method#(_ZN6method6Getter3getINS_2X1EEEiRT_).70c5362ecf81cca29a5a9f495ab5116e_3" ; -"get#Getter#method#(_ZN6method6Getter3getINS_2X1EEEiRT_).70c5362ecf81cca29a5a9f495ab5116e_2" [label="2: Exit method::Getter_get \n " color=yellow style=filled] + "get#Getter#method#(_ZN6method6Getter3getINS_2X1EEEiRT_).aacc167ec5db8230b9c3043c0c2e512e_1" -> "get#Getter#method#(_ZN6method6Getter3getINS_2X1EEEiRT_).aacc167ec5db8230b9c3043c0c2e512e_3" ; +"get#Getter#method#(_ZN6method6Getter3getINS_2X1EEEiRT_).aacc167ec5db8230b9c3043c0c2e512e_2" [label="2: Exit method::Getter_get \n " color=yellow style=filled] -"get#Getter#method#(_ZN6method6Getter3getINS_2X1EEEiRT_).70c5362ecf81cca29a5a9f495ab5116e_3" [label="3: Return Stmt \n n$0=*&s:class method::X1& [line 27]\n _=*n$0:class method::X1 [line 27]\n n$2=_fun_method::X1_get(n$0:class method::X1&) [line 27]\n *&return:int=n$2 [line 27]\n " shape="box"] +"get#Getter#method#(_ZN6method6Getter3getINS_2X1EEEiRT_).aacc167ec5db8230b9c3043c0c2e512e_3" [label="3: Return Stmt \n n$0=*&s:class method::X1& [line 27]\n _=*n$0:class method::X1 [line 27]\n n$2=_fun_method::X1_get(n$0:class method::X1&) [line 27]\n *&return:int=n$2 [line 27]\n " shape="box"] - "get#Getter#method#(_ZN6method6Getter3getINS_2X1EEEiRT_).70c5362ecf81cca29a5a9f495ab5116e_3" -> "get#Getter#method#(_ZN6method6Getter3getINS_2X1EEEiRT_).70c5362ecf81cca29a5a9f495ab5116e_2" ; -"get#Getter#method#(_ZN6method6Getter3getINS_2X2EEEiRT_).e7d636a61b03245cb6dd620bf209f33a_1" [label="1: Start method::Getter_get\nFormals: this:class method::Getter* s:class method::X2&\nLocals: \n DECLARE_LOCALS(&return); [line 26]\n " color=yellow style=filled] + "get#Getter#method#(_ZN6method6Getter3getINS_2X1EEEiRT_).aacc167ec5db8230b9c3043c0c2e512e_3" -> "get#Getter#method#(_ZN6method6Getter3getINS_2X1EEEiRT_).aacc167ec5db8230b9c3043c0c2e512e_2" ; +"get#Getter#method#(_ZN6method6Getter3getINS_2X2EEEiRT_).1dc2f78c156725aae38229be4f82cb59_1" [label="1: Start method::Getter_get\nFormals: this:class method::Getter* s:class method::X2&\nLocals: \n DECLARE_LOCALS(&return); [line 26]\n " color=yellow style=filled] - "get#Getter#method#(_ZN6method6Getter3getINS_2X2EEEiRT_).e7d636a61b03245cb6dd620bf209f33a_1" -> "get#Getter#method#(_ZN6method6Getter3getINS_2X2EEEiRT_).e7d636a61b03245cb6dd620bf209f33a_3" ; -"get#Getter#method#(_ZN6method6Getter3getINS_2X2EEEiRT_).e7d636a61b03245cb6dd620bf209f33a_2" [label="2: Exit method::Getter_get \n " color=yellow style=filled] + "get#Getter#method#(_ZN6method6Getter3getINS_2X2EEEiRT_).1dc2f78c156725aae38229be4f82cb59_1" -> "get#Getter#method#(_ZN6method6Getter3getINS_2X2EEEiRT_).1dc2f78c156725aae38229be4f82cb59_3" ; +"get#Getter#method#(_ZN6method6Getter3getINS_2X2EEEiRT_).1dc2f78c156725aae38229be4f82cb59_2" [label="2: Exit method::Getter_get \n " color=yellow style=filled] -"get#Getter#method#(_ZN6method6Getter3getINS_2X2EEEiRT_).e7d636a61b03245cb6dd620bf209f33a_3" [label="3: Return Stmt \n n$0=*&s:class method::X2& [line 27]\n _=*n$0:class method::X2 [line 27]\n n$2=_fun_method::X2_get(n$0:class method::X2&) [line 27]\n *&return:int=n$2 [line 27]\n " shape="box"] +"get#Getter#method#(_ZN6method6Getter3getINS_2X2EEEiRT_).1dc2f78c156725aae38229be4f82cb59_3" [label="3: Return Stmt \n n$0=*&s:class method::X2& [line 27]\n _=*n$0:class method::X2 [line 27]\n n$2=_fun_method::X2_get(n$0:class method::X2&) [line 27]\n *&return:int=n$2 [line 27]\n " shape="box"] - "get#Getter#method#(_ZN6method6Getter3getINS_2X2EEEiRT_).e7d636a61b03245cb6dd620bf209f33a_3" -> "get#Getter#method#(_ZN6method6Getter3getINS_2X2EEEiRT_).e7d636a61b03245cb6dd620bf209f33a_2" ; -"GetterTempl#GetterTempl#method#{_ZN6method11GetterTemplINS_2X1EEC1Ev|constexpr}.4a4a7d28295417e1cace42049552815e_1" [label="1: Start method::GetterTempl_GetterTempl\nFormals: this:class method::GetterTempl*\nLocals: \n DECLARE_LOCALS(&return); [line 32]\n " color=yellow style=filled] + "get#Getter#method#(_ZN6method6Getter3getINS_2X2EEEiRT_).1dc2f78c156725aae38229be4f82cb59_3" -> "get#Getter#method#(_ZN6method6Getter3getINS_2X2EEEiRT_).1dc2f78c156725aae38229be4f82cb59_2" ; +"GetterTempl#GetterTempl#method#{_ZN6method11GetterTemplINS_2X1EEC1Ev|constexpr}.f9dfd105252dfcf4f8bd84e73e84b3e7_1" [label="1: Start method::GetterTempl_GetterTempl\nFormals: this:class method::GetterTempl*\nLocals: \n DECLARE_LOCALS(&return); [line 32]\n " color=yellow style=filled] - "GetterTempl#GetterTempl#method#{_ZN6method11GetterTemplINS_2X1EEC1Ev|constexpr}.4a4a7d28295417e1cace42049552815e_1" -> "GetterTempl#GetterTempl#method#{_ZN6method11GetterTemplINS_2X1EEC1Ev|constexpr}.4a4a7d28295417e1cace42049552815e_2" ; -"GetterTempl#GetterTempl#method#{_ZN6method11GetterTemplINS_2X1EEC1Ev|constexpr}.4a4a7d28295417e1cace42049552815e_2" [label="2: Exit method::GetterTempl_GetterTempl \n " color=yellow style=filled] + "GetterTempl#GetterTempl#method#{_ZN6method11GetterTemplINS_2X1EEC1Ev|constexpr}.f9dfd105252dfcf4f8bd84e73e84b3e7_1" -> "GetterTempl#GetterTempl#method#{_ZN6method11GetterTemplINS_2X1EEC1Ev|constexpr}.f9dfd105252dfcf4f8bd84e73e84b3e7_2" ; +"GetterTempl#GetterTempl#method#{_ZN6method11GetterTemplINS_2X1EEC1Ev|constexpr}.f9dfd105252dfcf4f8bd84e73e84b3e7_2" [label="2: Exit method::GetterTempl_GetterTempl \n " color=yellow style=filled] -"get#GetterTempl#method#(_ZN6method11GetterTemplINS_2X1EE3getIS1_EEiRS1_RT_).17d003a78a1e45c7d6f6a60e54750f8d_1" [label="1: Start method::GetterTempl_get\nFormals: this:class method::GetterTempl* t:class method::X1& s:class method::X1&\nLocals: \n DECLARE_LOCALS(&return); [line 34]\n " color=yellow style=filled] +"get#GetterTempl#method#(_ZN6method11GetterTemplINS_2X1EE3getIS1_EEiRS1_RT_).1849402532393c5d78c9cbf071ce2f0e_1" [label="1: Start method::GetterTempl_get\nFormals: this:class method::GetterTempl* t:class method::X1& s:class method::X1&\nLocals: \n DECLARE_LOCALS(&return); [line 34]\n " color=yellow style=filled] - "get#GetterTempl#method#(_ZN6method11GetterTemplINS_2X1EE3getIS1_EEiRS1_RT_).17d003a78a1e45c7d6f6a60e54750f8d_1" -> "get#GetterTempl#method#(_ZN6method11GetterTemplINS_2X1EE3getIS1_EEiRS1_RT_).17d003a78a1e45c7d6f6a60e54750f8d_3" ; -"get#GetterTempl#method#(_ZN6method11GetterTemplINS_2X1EE3getIS1_EEiRS1_RT_).17d003a78a1e45c7d6f6a60e54750f8d_2" [label="2: Exit method::GetterTempl_get \n " color=yellow style=filled] + "get#GetterTempl#method#(_ZN6method11GetterTemplINS_2X1EE3getIS1_EEiRS1_RT_).1849402532393c5d78c9cbf071ce2f0e_1" -> "get#GetterTempl#method#(_ZN6method11GetterTemplINS_2X1EE3getIS1_EEiRS1_RT_).1849402532393c5d78c9cbf071ce2f0e_3" ; +"get#GetterTempl#method#(_ZN6method11GetterTemplINS_2X1EE3getIS1_EEiRS1_RT_).1849402532393c5d78c9cbf071ce2f0e_2" [label="2: Exit method::GetterTempl_get \n " color=yellow style=filled] -"get#GetterTempl#method#(_ZN6method11GetterTemplINS_2X1EE3getIS1_EEiRS1_RT_).17d003a78a1e45c7d6f6a60e54750f8d_3" [label="3: Return Stmt \n n$0=*&t:class method::X1& [line 35]\n _=*n$0:class method::X1 [line 35]\n n$2=_fun_method::X1_get(n$0:class method::X1&) [line 35]\n n$3=*&s:class method::X1& [line 35]\n _=*n$3:class method::X1 [line 35]\n n$5=_fun_method::X1_get(n$3:class method::X1&) [line 35]\n *&return:int=(n$2 + n$5) [line 35]\n " shape="box"] +"get#GetterTempl#method#(_ZN6method11GetterTemplINS_2X1EE3getIS1_EEiRS1_RT_).1849402532393c5d78c9cbf071ce2f0e_3" [label="3: Return Stmt \n n$0=*&t:class method::X1& [line 35]\n _=*n$0:class method::X1 [line 35]\n n$2=_fun_method::X1_get(n$0:class method::X1&) [line 35]\n n$3=*&s:class method::X1& [line 35]\n _=*n$3:class method::X1 [line 35]\n n$5=_fun_method::X1_get(n$3:class method::X1&) [line 35]\n *&return:int=(n$2 + n$5) [line 35]\n " shape="box"] - "get#GetterTempl#method#(_ZN6method11GetterTemplINS_2X1EE3getIS1_EEiRS1_RT_).17d003a78a1e45c7d6f6a60e54750f8d_3" -> "get#GetterTempl#method#(_ZN6method11GetterTemplINS_2X1EE3getIS1_EEiRS1_RT_).17d003a78a1e45c7d6f6a60e54750f8d_2" ; -"GetterTempl#GetterTempl#method#{_ZN6method11GetterTemplINS_2X2EEC1Ev|constexpr}.222b89688b94b0cbb5739d93d13becb7_1" [label="1: Start method::GetterTempl_GetterTempl\nFormals: this:class method::GetterTempl*\nLocals: \n DECLARE_LOCALS(&return); [line 32]\n " color=yellow style=filled] + "get#GetterTempl#method#(_ZN6method11GetterTemplINS_2X1EE3getIS1_EEiRS1_RT_).1849402532393c5d78c9cbf071ce2f0e_3" -> "get#GetterTempl#method#(_ZN6method11GetterTemplINS_2X1EE3getIS1_EEiRS1_RT_).1849402532393c5d78c9cbf071ce2f0e_2" ; +"GetterTempl#GetterTempl#method#{_ZN6method11GetterTemplINS_2X2EEC1Ev|constexpr}.c245b73d75a4e0e2c710464b0211cce5_1" [label="1: Start method::GetterTempl_GetterTempl\nFormals: this:class method::GetterTempl*\nLocals: \n DECLARE_LOCALS(&return); [line 32]\n " color=yellow style=filled] - "GetterTempl#GetterTempl#method#{_ZN6method11GetterTemplINS_2X2EEC1Ev|constexpr}.222b89688b94b0cbb5739d93d13becb7_1" -> "GetterTempl#GetterTempl#method#{_ZN6method11GetterTemplINS_2X2EEC1Ev|constexpr}.222b89688b94b0cbb5739d93d13becb7_2" ; -"GetterTempl#GetterTempl#method#{_ZN6method11GetterTemplINS_2X2EEC1Ev|constexpr}.222b89688b94b0cbb5739d93d13becb7_2" [label="2: Exit method::GetterTempl_GetterTempl \n " color=yellow style=filled] + "GetterTempl#GetterTempl#method#{_ZN6method11GetterTemplINS_2X2EEC1Ev|constexpr}.c245b73d75a4e0e2c710464b0211cce5_1" -> "GetterTempl#GetterTempl#method#{_ZN6method11GetterTemplINS_2X2EEC1Ev|constexpr}.c245b73d75a4e0e2c710464b0211cce5_2" ; +"GetterTempl#GetterTempl#method#{_ZN6method11GetterTemplINS_2X2EEC1Ev|constexpr}.c245b73d75a4e0e2c710464b0211cce5_2" [label="2: Exit method::GetterTempl_GetterTempl \n " color=yellow style=filled] -"get#GetterTempl#method#(_ZN6method11GetterTemplINS_2X2EE3getINS_2X1EEEiRS1_RT_).984cc5bb65c7d086ea2c0d50d6ea5530_1" [label="1: Start method::GetterTempl_get\nFormals: this:class method::GetterTempl* t:class method::X2& s:class method::X1&\nLocals: \n DECLARE_LOCALS(&return); [line 34]\n " color=yellow style=filled] +"get#GetterTempl#method#(_ZN6method11GetterTemplINS_2X2EE3getINS_2X1EEEiRS1_R.7b5eeff447e9604e75ed7e4acc479137_1" [label="1: Start method::GetterTempl_get\nFormals: this:class method::GetterTempl* t:class method::X2& s:class method::X1&\nLocals: \n DECLARE_LOCALS(&return); [line 34]\n " color=yellow style=filled] - "get#GetterTempl#method#(_ZN6method11GetterTemplINS_2X2EE3getINS_2X1EEEiRS1_RT_).984cc5bb65c7d086ea2c0d50d6ea5530_1" -> "get#GetterTempl#method#(_ZN6method11GetterTemplINS_2X2EE3getINS_2X1EEEiRS1_RT_).984cc5bb65c7d086ea2c0d50d6ea5530_3" ; -"get#GetterTempl#method#(_ZN6method11GetterTemplINS_2X2EE3getINS_2X1EEEiRS1_RT_).984cc5bb65c7d086ea2c0d50d6ea5530_2" [label="2: Exit method::GetterTempl_get \n " color=yellow style=filled] + "get#GetterTempl#method#(_ZN6method11GetterTemplINS_2X2EE3getINS_2X1EEEiRS1_R.7b5eeff447e9604e75ed7e4acc479137_1" -> "get#GetterTempl#method#(_ZN6method11GetterTemplINS_2X2EE3getINS_2X1EEEiRS1_R.7b5eeff447e9604e75ed7e4acc479137_3" ; +"get#GetterTempl#method#(_ZN6method11GetterTemplINS_2X2EE3getINS_2X1EEEiRS1_R.7b5eeff447e9604e75ed7e4acc479137_2" [label="2: Exit method::GetterTempl_get \n " color=yellow style=filled] -"get#GetterTempl#method#(_ZN6method11GetterTemplINS_2X2EE3getINS_2X1EEEiRS1_RT_).984cc5bb65c7d086ea2c0d50d6ea5530_3" [label="3: Return Stmt \n n$0=*&t:class method::X2& [line 35]\n _=*n$0:class method::X2 [line 35]\n n$2=_fun_method::X2_get(n$0:class method::X2&) [line 35]\n n$3=*&s:class method::X1& [line 35]\n _=*n$3:class method::X1 [line 35]\n n$5=_fun_method::X1_get(n$3:class method::X1&) [line 35]\n *&return:int=(n$2 + n$5) [line 35]\n " shape="box"] +"get#GetterTempl#method#(_ZN6method11GetterTemplINS_2X2EE3getINS_2X1EEEiRS1_R.7b5eeff447e9604e75ed7e4acc479137_3" [label="3: Return Stmt \n n$0=*&t:class method::X2& [line 35]\n _=*n$0:class method::X2 [line 35]\n n$2=_fun_method::X2_get(n$0:class method::X2&) [line 35]\n n$3=*&s:class method::X1& [line 35]\n _=*n$3:class method::X1 [line 35]\n n$5=_fun_method::X1_get(n$3:class method::X1&) [line 35]\n *&return:int=(n$2 + n$5) [line 35]\n " shape="box"] - "get#GetterTempl#method#(_ZN6method11GetterTemplINS_2X2EE3getINS_2X1EEEiRS1_RT_).984cc5bb65c7d086ea2c0d50d6ea5530_3" -> "get#GetterTempl#method#(_ZN6method11GetterTemplINS_2X2EE3getINS_2X1EEEiRS1_RT_).984cc5bb65c7d086ea2c0d50d6ea5530_2" ; -"get#GetterTempl#method#(_ZN6method11GetterTemplINS_2X2EE3getIS1_EEiRS1_RT_).dfede86f4f62b0671972bf0157633e5f_1" [label="1: Start method::GetterTempl_get\nFormals: this:class method::GetterTempl* t:class method::X2& s:class method::X2&\nLocals: \n DECLARE_LOCALS(&return); [line 34]\n " color=yellow style=filled] + "get#GetterTempl#method#(_ZN6method11GetterTemplINS_2X2EE3getINS_2X1EEEiRS1_R.7b5eeff447e9604e75ed7e4acc479137_3" -> "get#GetterTempl#method#(_ZN6method11GetterTemplINS_2X2EE3getINS_2X1EEEiRS1_R.7b5eeff447e9604e75ed7e4acc479137_2" ; +"get#GetterTempl#method#(_ZN6method11GetterTemplINS_2X2EE3getIS1_EEiRS1_RT_).5a9402b252253af61d52289b5c3d9555_1" [label="1: Start method::GetterTempl_get\nFormals: this:class method::GetterTempl* t:class method::X2& s:class method::X2&\nLocals: \n DECLARE_LOCALS(&return); [line 34]\n " color=yellow style=filled] - "get#GetterTempl#method#(_ZN6method11GetterTemplINS_2X2EE3getIS1_EEiRS1_RT_).dfede86f4f62b0671972bf0157633e5f_1" -> "get#GetterTempl#method#(_ZN6method11GetterTemplINS_2X2EE3getIS1_EEiRS1_RT_).dfede86f4f62b0671972bf0157633e5f_3" ; -"get#GetterTempl#method#(_ZN6method11GetterTemplINS_2X2EE3getIS1_EEiRS1_RT_).dfede86f4f62b0671972bf0157633e5f_2" [label="2: Exit method::GetterTempl_get \n " color=yellow style=filled] + "get#GetterTempl#method#(_ZN6method11GetterTemplINS_2X2EE3getIS1_EEiRS1_RT_).5a9402b252253af61d52289b5c3d9555_1" -> "get#GetterTempl#method#(_ZN6method11GetterTemplINS_2X2EE3getIS1_EEiRS1_RT_).5a9402b252253af61d52289b5c3d9555_3" ; +"get#GetterTempl#method#(_ZN6method11GetterTemplINS_2X2EE3getIS1_EEiRS1_RT_).5a9402b252253af61d52289b5c3d9555_2" [label="2: Exit method::GetterTempl_get \n " color=yellow style=filled] -"get#GetterTempl#method#(_ZN6method11GetterTemplINS_2X2EE3getIS1_EEiRS1_RT_).dfede86f4f62b0671972bf0157633e5f_3" [label="3: Return Stmt \n n$0=*&t:class method::X2& [line 35]\n _=*n$0:class method::X2 [line 35]\n n$2=_fun_method::X2_get(n$0:class method::X2&) [line 35]\n n$3=*&s:class method::X2& [line 35]\n _=*n$3:class method::X2 [line 35]\n n$5=_fun_method::X2_get(n$3:class method::X2&) [line 35]\n *&return:int=(n$2 + n$5) [line 35]\n " shape="box"] +"get#GetterTempl#method#(_ZN6method11GetterTemplINS_2X2EE3getIS1_EEiRS1_RT_).5a9402b252253af61d52289b5c3d9555_3" [label="3: Return Stmt \n n$0=*&t:class method::X2& [line 35]\n _=*n$0:class method::X2 [line 35]\n n$2=_fun_method::X2_get(n$0:class method::X2&) [line 35]\n n$3=*&s:class method::X2& [line 35]\n _=*n$3:class method::X2 [line 35]\n n$5=_fun_method::X2_get(n$3:class method::X2&) [line 35]\n *&return:int=(n$2 + n$5) [line 35]\n " shape="box"] - "get#GetterTempl#method#(_ZN6method11GetterTemplINS_2X2EE3getIS1_EEiRS1_RT_).dfede86f4f62b0671972bf0157633e5f_3" -> "get#GetterTempl#method#(_ZN6method11GetterTemplINS_2X2EE3getIS1_EEiRS1_RT_).dfede86f4f62b0671972bf0157633e5f_2" ; -"GetterTempl#GetterTempl#method#{_ZN6method11GetterTemplINS_2X3EEC1Ev|constexpr}.9bc1cb7291933904e4006a312dbb73f1_1" [label="1: Start method::GetterTempl_GetterTempl\nFormals: this:class method::GetterTempl*\nLocals: \n DECLARE_LOCALS(&return); [line 32]\n " color=yellow style=filled] + "get#GetterTempl#method#(_ZN6method11GetterTemplINS_2X2EE3getIS1_EEiRS1_RT_).5a9402b252253af61d52289b5c3d9555_3" -> "get#GetterTempl#method#(_ZN6method11GetterTemplINS_2X2EE3getIS1_EEiRS1_RT_).5a9402b252253af61d52289b5c3d9555_2" ; +"GetterTempl#GetterTempl#method#{_ZN6method11GetterTemplINS_2X3EEC1Ev|constexpr}.fda4ca71a53150ad3d57d26370d20083_1" [label="1: Start method::GetterTempl_GetterTempl\nFormals: this:class method::GetterTempl*\nLocals: \n DECLARE_LOCALS(&return); [line 32]\n " color=yellow style=filled] - "GetterTempl#GetterTempl#method#{_ZN6method11GetterTemplINS_2X3EEC1Ev|constexpr}.9bc1cb7291933904e4006a312dbb73f1_1" -> "GetterTempl#GetterTempl#method#{_ZN6method11GetterTemplINS_2X3EEC1Ev|constexpr}.9bc1cb7291933904e4006a312dbb73f1_2" ; -"GetterTempl#GetterTempl#method#{_ZN6method11GetterTemplINS_2X3EEC1Ev|constexpr}.9bc1cb7291933904e4006a312dbb73f1_2" [label="2: Exit method::GetterTempl_GetterTempl \n " color=yellow style=filled] + "GetterTempl#GetterTempl#method#{_ZN6method11GetterTemplINS_2X3EEC1Ev|constexpr}.fda4ca71a53150ad3d57d26370d20083_1" -> "GetterTempl#GetterTempl#method#{_ZN6method11GetterTemplINS_2X3EEC1Ev|constexpr}.fda4ca71a53150ad3d57d26370d20083_2" ; +"GetterTempl#GetterTempl#method#{_ZN6method11GetterTemplINS_2X3EEC1Ev|constexpr}.fda4ca71a53150ad3d57d26370d20083_2" [label="2: Exit method::GetterTempl_GetterTempl \n " color=yellow style=filled] -"get#GetterTempl#method#(_ZN6method11GetterTemplINS_2X3EE3getINS_2X2EEEiRS1_RT_).ec62788199270473701584924e084bee_1" [label="1: Start method::GetterTempl_get\nFormals: this:class method::GetterTempl* t:class method::X3& s:class method::X2&\nLocals: \n DECLARE_LOCALS(&return); [line 34]\n " color=yellow style=filled] +"get#GetterTempl#method#(_ZN6method11GetterTemplINS_2X3EE3getINS_2X2EEEiRS1_R.ceae0d91ab64cf89137af49826c104c8_1" [label="1: Start method::GetterTempl_get\nFormals: this:class method::GetterTempl* t:class method::X3& s:class method::X2&\nLocals: \n DECLARE_LOCALS(&return); [line 34]\n " color=yellow style=filled] - "get#GetterTempl#method#(_ZN6method11GetterTemplINS_2X3EE3getINS_2X2EEEiRS1_RT_).ec62788199270473701584924e084bee_1" -> "get#GetterTempl#method#(_ZN6method11GetterTemplINS_2X3EE3getINS_2X2EEEiRS1_RT_).ec62788199270473701584924e084bee_3" ; -"get#GetterTempl#method#(_ZN6method11GetterTemplINS_2X3EE3getINS_2X2EEEiRS1_RT_).ec62788199270473701584924e084bee_2" [label="2: Exit method::GetterTempl_get \n " color=yellow style=filled] + "get#GetterTempl#method#(_ZN6method11GetterTemplINS_2X3EE3getINS_2X2EEEiRS1_R.ceae0d91ab64cf89137af49826c104c8_1" -> "get#GetterTempl#method#(_ZN6method11GetterTemplINS_2X3EE3getINS_2X2EEEiRS1_R.ceae0d91ab64cf89137af49826c104c8_3" ; +"get#GetterTempl#method#(_ZN6method11GetterTemplINS_2X3EE3getINS_2X2EEEiRS1_R.ceae0d91ab64cf89137af49826c104c8_2" [label="2: Exit method::GetterTempl_get \n " color=yellow style=filled] -"get#GetterTempl#method#(_ZN6method11GetterTemplINS_2X3EE3getINS_2X2EEEiRS1_RT_).ec62788199270473701584924e084bee_3" [label="3: Return Stmt \n n$0=*&t:class method::X3& [line 35]\n _=*n$0:class method::X3 [line 35]\n n$2=_fun_method::X3_get(n$0:class method::X3&) [line 35]\n n$3=*&s:class method::X2& [line 35]\n _=*n$3:class method::X2 [line 35]\n n$5=_fun_method::X2_get(n$3:class method::X2&) [line 35]\n *&return:int=(n$2 + n$5) [line 35]\n " shape="box"] +"get#GetterTempl#method#(_ZN6method11GetterTemplINS_2X3EE3getINS_2X2EEEiRS1_R.ceae0d91ab64cf89137af49826c104c8_3" [label="3: Return Stmt \n n$0=*&t:class method::X3& [line 35]\n _=*n$0:class method::X3 [line 35]\n n$2=_fun_method::X3_get(n$0:class method::X3&) [line 35]\n n$3=*&s:class method::X2& [line 35]\n _=*n$3:class method::X2 [line 35]\n n$5=_fun_method::X2_get(n$3:class method::X2&) [line 35]\n *&return:int=(n$2 + n$5) [line 35]\n " shape="box"] - "get#GetterTempl#method#(_ZN6method11GetterTemplINS_2X3EE3getINS_2X2EEEiRS1_RT_).ec62788199270473701584924e084bee_3" -> "get#GetterTempl#method#(_ZN6method11GetterTemplINS_2X3EE3getINS_2X2EEEiRS1_RT_).ec62788199270473701584924e084bee_2" ; + "get#GetterTempl#method#(_ZN6method11GetterTemplINS_2X3EE3getINS_2X2EEEiRS1_R.ceae0d91ab64cf89137af49826c104c8_3" -> "get#GetterTempl#method#(_ZN6method11GetterTemplINS_2X3EE3getINS_2X2EEEiRS1_R.ceae0d91ab64cf89137af49826c104c8_2" ; "X1#X1#method#{_ZN6method2X1C1Ev|constexpr}.f45da1019e902f9d75dc180f52f3bb1d_1" [label="1: Start method::X1_X1\nFormals: this:class method::X1*\nLocals: \n DECLARE_LOCALS(&return); [line 12]\n " color=yellow style=filled]