From fe01f47e418d2030ba701621a34288e6231b72a8 Mon Sep 17 00:00:00 2001 From: Jules Villard Date: Mon, 31 Jul 2017 08:46:50 -0700 Subject: [PATCH] [clang] correct sizeof info Summary: Bumps facebook-clang-plugins to a version that outputs sizeof() info in bytes and not bits. update-submodule: facebook-clang-plugins Reviewed By: akotulski Differential Revision: D5526747 fbshipit-source-id: 6019542 --- facebook-clang-plugins | 2 +- infer/src/IR/Exp.ml | 7 ++++- .../codetoanalyze/c/bufferoverrun/issues.exp | 1 - .../codetoanalyze/c/bufferoverrun/sizeof.c | 2 +- .../initialization/array_initlistexpr.c.dot | 6 ++-- .../c/frontend/vaarg_expr/vaarg_expr.c.dot | 2 +- .../cpp/frontend/builtin/new.cpp.dot | 4 +-- .../constructors/constructor_array.cpp.dot | 8 ++--- .../constructors/constructor_new.cpp.dot | 30 +++++++++---------- .../shared/constructors/std_init_list.cpp.dot | 4 +-- .../shared/methods/virtual_methods.cpp.dot | 2 +- .../cpp/shared/types/inheritance.cpp.dot | 6 ++-- .../objc/frontend/block/retain_cycle.m.dot | 6 ++-- .../objc/frontend/block/static.m.dot | 14 ++++----- .../exceptions/ExceptionExample.m.dot | 4 +-- .../objc/frontend/property/main_car.m.dot | 2 +- .../objc/frontend/self_static/Self.m.dot | 14 ++++----- .../objc/frontend/self_static/static.m.dot | 2 +- .../objc/frontend/subclass/main.c.dot | 2 +- .../objc/frontend/types/attributes.m.dot | 2 +- .../objc/frontend/types/void_call.m.dot | 2 +- .../objc/frontend/vardecl/initlist.m.dot | 8 ++--- .../annotations/nullable_annotations.m.dot | 2 +- .../objc/shared/block/BlockVar.m.dot | 10 +++---- .../objc/shared/block/block-it.m.dot | 12 ++++---- .../objc/shared/block/block.m.dot | 6 ++-- .../objc/shared/block/block_no_args.m.dot | 2 +- .../objc/shared/block/block_release.m.dot | 2 +- .../objc/shared/block/dispatch.m.dot | 16 +++++----- .../objc/shared/block/dispatch_examples.m.dot | 24 +++++++-------- .../objc/shared/block/dispatch_in_macro.m.dot | 4 +-- .../objc/shared/category_procdesc/main.c.dot | 4 +-- .../field_superclass/SuperExample.m.dot | 2 +- .../memory_leaks_benchmark/ArcExample.m.dot | 4 +-- .../AutoreleaseExample.m.dot | 8 ++--- .../MemoryLeakExample.m.dot | 24 +++++++-------- .../RetainReleaseExample.m.dot | 2 +- .../RetainReleaseExample2.m.dot | 6 ++-- .../TollBridgeExample.m.dot | 6 ++-- .../memory_leaks_benchmark/arc_methods.m.dot | 4 +-- .../npe/Nonnull_attribute_example.m.dot | 2 +- .../objc/shared/npe/npe_malloc.m.dot | 2 +- .../objc/shared/property/GetterExample.m.dot | 2 +- .../shared/property/PropertyAttributes.m.dot | 4 +-- .../objc/shared/protocol_procdesc/main.c.dot | 2 +- 45 files changed, 142 insertions(+), 138 deletions(-) diff --git a/facebook-clang-plugins b/facebook-clang-plugins index ffb5dd011..6075a1105 160000 --- a/facebook-clang-plugins +++ b/facebook-clang-plugins @@ -1 +1 @@ -Subproject commit ffb5dd0114316a9580d8e3840557fca15261d92f +Subproject commit 6075a1105f38d8d77aaf0be82eda7336a8304cd1 diff --git a/infer/src/IR/Exp.ml b/infer/src/IR/Exp.ml index 796d92ca3..bbd6c2963 100644 --- a/infer/src/IR/Exp.ml +++ b/infer/src/IR/Exp.ml @@ -250,7 +250,12 @@ let rec pp_ pe pp_t f e = | Sizeof {typ; nbytes; dynamic_length; subtype} -> let pp_len f l = Option.iter ~f:(F.fprintf f "[%a]" pp_exp) l in let pp_size f size = Option.iter ~f:(Int.pp f) size in - F.fprintf f "sizeof(%a%a%a%a)" pp_t typ pp_size nbytes pp_len dynamic_length Subtype.pp + let pp_if b pp label f v = if b then F.fprintf f ";%s=%a" label pp v in + let pp_if_some pp_opt label f opt = pp_if (Option.is_some opt) pp_opt label f opt in + let subt_s = F.asprintf "%a" Subtype.pp subtype in + F.fprintf f "sizeof(t=%a%a%a%a)" pp_t typ (pp_if_some pp_size "nbytes") nbytes + (pp_if_some pp_len "len") dynamic_length + (pp_if (not (String.equal "" subt_s)) Subtype.pp "sub_t") subtype let pp_printenv pe pp_typ f e = pp_ pe (pp_typ pe) f e diff --git a/infer/tests/codetoanalyze/c/bufferoverrun/issues.exp b/infer/tests/codetoanalyze/c/bufferoverrun/issues.exp index e6629e615..888bee36c 100644 --- a/infer/tests/codetoanalyze/c/bufferoverrun/issues.exp +++ b/infer/tests/codetoanalyze/c/bufferoverrun/issues.exp @@ -51,7 +51,6 @@ codetoanalyze/c/bufferoverrun/prune_constant.c, prune_constant_true_Ok, 3, CONDI codetoanalyze/c/bufferoverrun/prune_constant.c, prune_constant_value_Ok, 3, CONDITION_ALWAYS_FALSE, [] codetoanalyze/c/bufferoverrun/sizeof.c, eval_sizeof_bad, 1, CONDITION_ALWAYS_TRUE, [] codetoanalyze/c/bufferoverrun/sizeof.c, eval_sizeof_bad, 4, BUFFER_OVERRUN, [ArrayDeclaration,ArrayAccess: Offset: [1, 1] Size: [0, 0]] -codetoanalyze/c/bufferoverrun/sizeof.c, sizeof_char_good_FP, 2, BUFFER_OVERRUN, [ArrayDeclaration,ArrayAccess: Offset: [79, 79] Size: [10, 10]] codetoanalyze/c/bufferoverrun/sizeof.c, static_stride_bad, 7, BUFFER_OVERRUN, [ArrayDeclaration,ArrayAccess: Offset: [1, 1] Size: [0, 0]] codetoanalyze/c/bufferoverrun/trivial.c, trivial, 2, BUFFER_OVERRUN, [ArrayDeclaration,ArrayAccess: Offset: [10, 10] Size: [10, 10]] codetoanalyze/c/bufferoverrun/unreachable.c, FP_exit_at_end_of_proc_good, 2, UNREACHABLE_CODE, [] diff --git a/infer/tests/codetoanalyze/c/bufferoverrun/sizeof.c b/infer/tests/codetoanalyze/c/bufferoverrun/sizeof.c index 4c982c6d7..5617ae29a 100644 --- a/infer/tests/codetoanalyze/c/bufferoverrun/sizeof.c +++ b/infer/tests/codetoanalyze/c/bufferoverrun/sizeof.c @@ -33,7 +33,7 @@ void static_stride_bad() { } } -void sizeof_char_good_FP(int i) { +void sizeof_char_good(int i) { char b[10]; b[sizeof(b) - 1] = 123; } diff --git a/infer/tests/codetoanalyze/c/frontend/initialization/array_initlistexpr.c.dot b/infer/tests/codetoanalyze/c/frontend/initialization/array_initlistexpr.c.dot index b215624f6..69339d689 100644 --- a/infer/tests/codetoanalyze/c/frontend/initialization/array_initlistexpr.c.dot +++ b/infer/tests/codetoanalyze/c/frontend/initialization/array_initlistexpr.c.dot @@ -1,6 +1,6 @@ /* @generated */ digraph iCFG { -"init_const_array.b1cf412cdbd1beaf15a9f6a3789043b9_1" [label="1: Start init_const_array\nFormals: \nLocals: a:int[3*32][2*96] z:int \n DECLARE_LOCALS(&return,&a,&z); [line 10]\n " color=yellow style=filled] +"init_const_array.b1cf412cdbd1beaf15a9f6a3789043b9_1" [label="1: Start init_const_array\nFormals: \nLocals: a:int[3*4][2*12] z:int \n DECLARE_LOCALS(&return,&a,&z); [line 10]\n " color=yellow style=filled] "init_const_array.b1cf412cdbd1beaf15a9f6a3789043b9_1" -> "init_const_array.b1cf412cdbd1beaf15a9f6a3789043b9_3" ; @@ -11,14 +11,14 @@ digraph iCFG { "init_const_array.b1cf412cdbd1beaf15a9f6a3789043b9_3" -> "init_const_array.b1cf412cdbd1beaf15a9f6a3789043b9_2" ; -"init_variable_array.8cdc6857adcb1fd04fb6555d8ce3e4c1_1" [label="1: Start init_variable_array\nFormals: len:int\nLocals: a:int[_*32] x:int \n DECLARE_LOCALS(&return,&a,&x); [line 15]\n " color=yellow style=filled] +"init_variable_array.8cdc6857adcb1fd04fb6555d8ce3e4c1_1" [label="1: Start init_variable_array\nFormals: len:int\nLocals: a:int[_*4] x:int \n DECLARE_LOCALS(&return,&a,&x); [line 15]\n " color=yellow style=filled] "init_variable_array.8cdc6857adcb1fd04fb6555d8ce3e4c1_1" -> "init_variable_array.8cdc6857adcb1fd04fb6555d8ce3e4c1_4" ; "init_variable_array.8cdc6857adcb1fd04fb6555d8ce3e4c1_2" [label="2: Exit init_variable_array \n " color=yellow style=filled] -"init_variable_array.8cdc6857adcb1fd04fb6555d8ce3e4c1_3" [label="3: Fallback node \n n$0=*&len:int [line 17]\n n$1=*&x:int [line 17]\n _fun___set_array_length(&a:int[_*32],((n$0 + n$1) + 1):int) [line 17]\n " shape="box"] +"init_variable_array.8cdc6857adcb1fd04fb6555d8ce3e4c1_3" [label="3: Fallback node \n n$0=*&len:int [line 17]\n n$1=*&x:int [line 17]\n _fun___set_array_length(&a:int[_*4],((n$0 + n$1) + 1):int) [line 17]\n " shape="box"] "init_variable_array.8cdc6857adcb1fd04fb6555d8ce3e4c1_3" -> "init_variable_array.8cdc6857adcb1fd04fb6555d8ce3e4c1_2" ; diff --git a/infer/tests/codetoanalyze/c/frontend/vaarg_expr/vaarg_expr.c.dot b/infer/tests/codetoanalyze/c/frontend/vaarg_expr/vaarg_expr.c.dot index 79aca8939..8e0b4c48d 100644 --- a/infer/tests/codetoanalyze/c/frontend/vaarg_expr/vaarg_expr.c.dot +++ b/infer/tests/codetoanalyze/c/frontend/vaarg_expr/vaarg_expr.c.dot @@ -1,6 +1,6 @@ /* @generated */ digraph iCFG { -"vaarg_foo.73af1e8d32c2d09f7488c5fea173b853_1" [label="1: Start vaarg_foo\nFormals: x:int\nLocals: val:int i:int valist:void[1*192] \n DECLARE_LOCALS(&return,&val,&i,&valist); [line 12]\n " color=yellow style=filled] +"vaarg_foo.73af1e8d32c2d09f7488c5fea173b853_1" [label="1: Start vaarg_foo\nFormals: x:int\nLocals: val:int i:int valist:void[1*24] \n DECLARE_LOCALS(&return,&val,&i,&valist); [line 12]\n " color=yellow style=filled] "vaarg_foo.73af1e8d32c2d09f7488c5fea173b853_1" -> "vaarg_foo.73af1e8d32c2d09f7488c5fea173b853_12" ; diff --git a/infer/tests/codetoanalyze/cpp/frontend/builtin/new.cpp.dot b/infer/tests/codetoanalyze/cpp/frontend/builtin/new.cpp.dot index 0a51c2216..9187b7cf2 100644 --- a/infer/tests/codetoanalyze/cpp/frontend/builtin/new.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/frontend/builtin/new.cpp.dot @@ -11,11 +11,11 @@ digraph iCFG { "test#_Z4testv.1b928d988491fdd2fa78fcb048d46e8c_3" -> "test#_Z4testv.1b928d988491fdd2fa78fcb048d46e8c_2" ; -"test#_Z4testv.1b928d988491fdd2fa78fcb048d46e8c_4" [label="4: CXXNewExpr \n n$1=_fun___new(sizeof(int):unsigned long) [line 13]\n " shape="box"] +"test#_Z4testv.1b928d988491fdd2fa78fcb048d46e8c_4" [label="4: CXXNewExpr \n n$1=_fun___new(sizeof(t=int):unsigned long) [line 13]\n " shape="box"] "test#_Z4testv.1b928d988491fdd2fa78fcb048d46e8c_4" -> "test#_Z4testv.1b928d988491fdd2fa78fcb048d46e8c_3" ; -"test#_Z4testv.1b928d988491fdd2fa78fcb048d46e8c_5" [label="5: DeclStmt \n n$2=_fun___new(sizeof(int):unsigned long) [line 12]\n *&i:int*=n$2 [line 12]\n " shape="box"] +"test#_Z4testv.1b928d988491fdd2fa78fcb048d46e8c_5" [label="5: DeclStmt \n n$2=_fun___new(sizeof(t=int):unsigned long) [line 12]\n *&i:int*=n$2 [line 12]\n " shape="box"] "test#_Z4testv.1b928d988491fdd2fa78fcb048d46e8c_5" -> "test#_Z4testv.1b928d988491fdd2fa78fcb048d46e8c_4" ; diff --git a/infer/tests/codetoanalyze/cpp/shared/constructors/constructor_array.cpp.dot b/infer/tests/codetoanalyze/cpp/shared/constructors/constructor_array.cpp.dot index 48e16a2bd..0e2f5c4ff 100644 --- a/infer/tests/codetoanalyze/cpp/shared/constructors/constructor_array.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/shared/constructors/constructor_array.cpp.dot @@ -1,6 +1,6 @@ /* @generated */ digraph iCFG { -"array_of_person#_Z15array_of_personv.7c553fa3272204bd300dabdf4e138df7_1" [label="1: Start array_of_person\nFormals: \nLocals: arr:Person[10*32] 0$?%__sil_tmpSIL_materialize_temp__n$1:Person 0$?%__sil_tmpSIL_materialize_temp__n$2:Person 0$?%__sil_tmpSIL_materialize_temp__n$3:Person \n DECLARE_LOCALS(&return,&arr,&0$?%__sil_tmpSIL_materialize_temp__n$1,&0$?%__sil_tmpSIL_materialize_temp__n$2,&0$?%__sil_tmpSIL_materialize_temp__n$3); [line 17]\n " color=yellow style=filled] +"array_of_person#_Z15array_of_personv.7c553fa3272204bd300dabdf4e138df7_1" [label="1: Start array_of_person\nFormals: \nLocals: arr:Person[10*4] 0$?%__sil_tmpSIL_materialize_temp__n$1:Person 0$?%__sil_tmpSIL_materialize_temp__n$2:Person 0$?%__sil_tmpSIL_materialize_temp__n$3:Person \n DECLARE_LOCALS(&return,&arr,&0$?%__sil_tmpSIL_materialize_temp__n$1,&0$?%__sil_tmpSIL_materialize_temp__n$2,&0$?%__sil_tmpSIL_materialize_temp__n$3); [line 17]\n " color=yellow style=filled] "array_of_person#_Z15array_of_personv.7c553fa3272204bd300dabdf4e138df7_1" -> "array_of_person#_Z15array_of_personv.7c553fa3272204bd300dabdf4e138df7_4" ; @@ -15,7 +15,7 @@ digraph iCFG { "array_of_person#_Z15array_of_personv.7c553fa3272204bd300dabdf4e138df7_4" -> "array_of_person#_Z15array_of_personv.7c553fa3272204bd300dabdf4e138df7_3" ; -"matrix_of_person#_Z16matrix_of_personv.39f4dcf0df55c7259a99fabe8ccde35d_1" [label="1: Start matrix_of_person\nFormals: \nLocals: arr:Person[2*32][2*64] 0$?%__sil_tmpSIL_materialize_temp__n$1:Person 0$?%__sil_tmpSIL_materialize_temp__n$2:Person 0$?%__sil_tmpSIL_materialize_temp__n$3:Person 0$?%__sil_tmpSIL_materialize_temp__n$4:Person \n DECLARE_LOCALS(&return,&arr,&0$?%__sil_tmpSIL_materialize_temp__n$1,&0$?%__sil_tmpSIL_materialize_temp__n$2,&0$?%__sil_tmpSIL_materialize_temp__n$3,&0$?%__sil_tmpSIL_materialize_temp__n$4); [line 22]\n " color=yellow style=filled] +"matrix_of_person#_Z16matrix_of_personv.39f4dcf0df55c7259a99fabe8ccde35d_1" [label="1: Start matrix_of_person\nFormals: \nLocals: arr:Person[2*4][2*8] 0$?%__sil_tmpSIL_materialize_temp__n$1:Person 0$?%__sil_tmpSIL_materialize_temp__n$2:Person 0$?%__sil_tmpSIL_materialize_temp__n$3:Person 0$?%__sil_tmpSIL_materialize_temp__n$4:Person \n DECLARE_LOCALS(&return,&arr,&0$?%__sil_tmpSIL_materialize_temp__n$1,&0$?%__sil_tmpSIL_materialize_temp__n$2,&0$?%__sil_tmpSIL_materialize_temp__n$3,&0$?%__sil_tmpSIL_materialize_temp__n$4); [line 22]\n " color=yellow style=filled] "matrix_of_person#_Z16matrix_of_personv.39f4dcf0df55c7259a99fabe8ccde35d_1" -> "matrix_of_person#_Z16matrix_of_personv.39f4dcf0df55c7259a99fabe8ccde35d_4" ; @@ -30,7 +30,7 @@ digraph iCFG { "matrix_of_person#_Z16matrix_of_personv.39f4dcf0df55c7259a99fabe8ccde35d_4" -> "matrix_of_person#_Z16matrix_of_personv.39f4dcf0df55c7259a99fabe8ccde35d_3" ; -"initialization_c_style#_Z22initialization_c_stylev.6b9bfbb6779ee90799bffc017bfd501e_1" [label="1: Start initialization_c_style\nFormals: \nLocals: z2:Z z:Z[2*64] \n DECLARE_LOCALS(&return,&z2,&z); [line 32]\n " color=yellow style=filled] +"initialization_c_style#_Z22initialization_c_stylev.6b9bfbb6779ee90799bffc017bfd501e_1" [label="1: Start initialization_c_style\nFormals: \nLocals: z2:Z z:Z[2*8] \n DECLARE_LOCALS(&return,&z2,&z); [line 32]\n " color=yellow style=filled] "initialization_c_style#_Z22initialization_c_stylev.6b9bfbb6779ee90799bffc017bfd501e_1" -> "initialization_c_style#_Z22initialization_c_stylev.6b9bfbb6779ee90799bffc017bfd501e_4" ; @@ -45,7 +45,7 @@ digraph iCFG { "initialization_c_style#_Z22initialization_c_stylev.6b9bfbb6779ee90799bffc017bfd501e_4" -> "initialization_c_style#_Z22initialization_c_stylev.6b9bfbb6779ee90799bffc017bfd501e_3" ; -"initialization_mixed_styles_not_handled_correctly#_Z49initialization_mixed_styles_not_handled_correc.e1de50291cecd2ac4e0ba29b88e060a6_1" [label="1: Start initialization_mixed_styles_not_handled_correctly\nFormals: \nLocals: z2:Z z:Z[2*64] old:Z \n DECLARE_LOCALS(&return,&z2,&z,&old); [line 39]\n " color=yellow style=filled] +"initialization_mixed_styles_not_handled_correctly#_Z49initialization_mixed_styles_not_handled_correc.e1de50291cecd2ac4e0ba29b88e060a6_1" [label="1: Start initialization_mixed_styles_not_handled_correctly\nFormals: \nLocals: z2:Z z:Z[2*8] old:Z \n DECLARE_LOCALS(&return,&z2,&z,&old); [line 39]\n " color=yellow style=filled] "initialization_mixed_styles_not_handled_correctly#_Z49initialization_mixed_styles_not_handled_correc.e1de50291cecd2ac4e0ba29b88e060a6_1" -> "initialization_mixed_styles_not_handled_correctly#_Z49initialization_mixed_styles_not_handled_correc.e1de50291cecd2ac4e0ba29b88e060a6_5" ; diff --git a/infer/tests/codetoanalyze/cpp/shared/constructors/constructor_new.cpp.dot b/infer/tests/codetoanalyze/cpp/shared/constructors/constructor_new.cpp.dot index 8fb37cb11..c6833cc5c 100644 --- a/infer/tests/codetoanalyze/cpp/shared/constructors/constructor_new.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/shared/constructors/constructor_new.cpp.dot @@ -11,7 +11,7 @@ digraph iCFG { "constructor_1_arg_new_div0#constructor_new#_ZN15constructor_new26constructor_1_arg_new_div0Ev.e48b160e92759af5ada2d63fe2aea4ef_3" -> "constructor_1_arg_new_div0#constructor_new#_ZN15constructor_new26constructor_1_arg_new_div0Ev.e48b160e92759af5ada2d63fe2aea4ef_2" ; -"constructor_1_arg_new_div0#constructor_new#_ZN15constructor_new26constructor_1_arg_new_div0Ev.e48b160e92759af5ada2d63fe2aea4ef_4" [label="4: DeclStmt \n n$2=_fun___new(sizeof(constructor_new::Person):unsigned long) [line 30]\n _fun_constructor_new::Person_Person(n$2:constructor_new::Person*,5:int) [line 30]\n *&p:constructor_new::Person*=n$2 [line 30]\n " shape="box"] +"constructor_1_arg_new_div0#constructor_new#_ZN15constructor_new26constructor_1_arg_new_div0Ev.e48b160e92759af5ada2d63fe2aea4ef_4" [label="4: DeclStmt \n n$2=_fun___new(sizeof(t=constructor_new::Person):unsigned long) [line 30]\n _fun_constructor_new::Person_Person(n$2:constructor_new::Person*,5:int) [line 30]\n *&p:constructor_new::Person*=n$2 [line 30]\n " shape="box"] "constructor_1_arg_new_div0#constructor_new#_ZN15constructor_new26constructor_1_arg_new_div0Ev.e48b160e92759af5ada2d63fe2aea4ef_4" -> "constructor_1_arg_new_div0#constructor_new#_ZN15constructor_new26constructor_1_arg_new_div0Ev.e48b160e92759af5ada2d63fe2aea4ef_3" ; @@ -26,7 +26,7 @@ digraph iCFG { "constructor_3_args_new_div0#constructor_new#_ZN15constructor_new27constructor_3_args_new_div0Ev.df5aeff70858c5bbb476055a2255d835_3" -> "constructor_3_args_new_div0#constructor_new#_ZN15constructor_new27constructor_3_args_new_div0Ev.df5aeff70858c5bbb476055a2255d835_2" ; -"constructor_3_args_new_div0#constructor_new#_ZN15constructor_new27constructor_3_args_new_div0Ev.df5aeff70858c5bbb476055a2255d835_4" [label="4: DeclStmt \n n$2=_fun___new(sizeof(constructor_new::Person):unsigned long) [line 35]\n _fun_constructor_new::Person_Person(n$2:constructor_new::Person*,5:int,6:int,7:int) [line 35]\n *&p:constructor_new::Person*=n$2 [line 35]\n " shape="box"] +"constructor_3_args_new_div0#constructor_new#_ZN15constructor_new27constructor_3_args_new_div0Ev.df5aeff70858c5bbb476055a2255d835_4" [label="4: DeclStmt \n n$2=_fun___new(sizeof(t=constructor_new::Person):unsigned long) [line 35]\n _fun_constructor_new::Person_Person(n$2:constructor_new::Person*,5:int,6:int,7:int) [line 35]\n *&p:constructor_new::Person*=n$2 [line 35]\n " shape="box"] "constructor_3_args_new_div0#constructor_new#_ZN15constructor_new27constructor_3_args_new_div0Ev.df5aeff70858c5bbb476055a2255d835_4" -> "constructor_3_args_new_div0#constructor_new#_ZN15constructor_new27constructor_3_args_new_div0Ev.df5aeff70858c5bbb476055a2255d835_3" ; @@ -41,7 +41,7 @@ digraph iCFG { "int_init_number#constructor_new#_ZN15constructor_new15int_init_numberEv.74f74b86aa6fe41870b0bdfc0065a8d9_3" -> "int_init_number#constructor_new#_ZN15constructor_new15int_init_numberEv.74f74b86aa6fe41870b0bdfc0065a8d9_2" ; -"int_init_number#constructor_new#_ZN15constructor_new15int_init_numberEv.74f74b86aa6fe41870b0bdfc0065a8d9_4" [label="4: DeclStmt \n n$2=_fun___new(sizeof(int):unsigned long) [line 40]\n *n$2:int=5 [line 40]\n *&x1:int*=n$2 [line 40]\n " shape="box"] +"int_init_number#constructor_new#_ZN15constructor_new15int_init_numberEv.74f74b86aa6fe41870b0bdfc0065a8d9_4" [label="4: DeclStmt \n n$2=_fun___new(sizeof(t=int):unsigned long) [line 40]\n *n$2:int=5 [line 40]\n *&x1:int*=n$2 [line 40]\n " shape="box"] "int_init_number#constructor_new#_ZN15constructor_new15int_init_numberEv.74f74b86aa6fe41870b0bdfc0065a8d9_4" -> "int_init_number#constructor_new#_ZN15constructor_new15int_init_numberEv.74f74b86aa6fe41870b0bdfc0065a8d9_3" ; @@ -56,7 +56,7 @@ digraph iCFG { "float_init_number#constructor_new#_ZN15constructor_new17float_init_numberEv.9d2e3b49e4536b7a481871c0e17cf6ac_3" -> "float_init_number#constructor_new#_ZN15constructor_new17float_init_numberEv.9d2e3b49e4536b7a481871c0e17cf6ac_2" ; -"float_init_number#constructor_new#_ZN15constructor_new17float_init_numberEv.9d2e3b49e4536b7a481871c0e17cf6ac_4" [label="4: DeclStmt \n n$2=_fun___new(sizeof(float):unsigned long) [line 45]\n *n$2:float=5.400000 [line 45]\n *&x1:float*=n$2 [line 45]\n " shape="box"] +"float_init_number#constructor_new#_ZN15constructor_new17float_init_numberEv.9d2e3b49e4536b7a481871c0e17cf6ac_4" [label="4: DeclStmt \n n$2=_fun___new(sizeof(t=float):unsigned long) [line 45]\n *n$2:float=5.400000 [line 45]\n *&x1:float*=n$2 [line 45]\n " shape="box"] "float_init_number#constructor_new#_ZN15constructor_new17float_init_numberEv.9d2e3b49e4536b7a481871c0e17cf6ac_4" -> "float_init_number#constructor_new#_ZN15constructor_new17float_init_numberEv.9d2e3b49e4536b7a481871c0e17cf6ac_3" ; @@ -71,7 +71,7 @@ digraph iCFG { "int_init_empty#constructor_new#_ZN15constructor_new14int_init_emptyEv.046a4172487408e1c4d40e2b9438262c_3" -> "int_init_empty#constructor_new#_ZN15constructor_new14int_init_emptyEv.046a4172487408e1c4d40e2b9438262c_2" ; -"int_init_empty#constructor_new#_ZN15constructor_new14int_init_emptyEv.046a4172487408e1c4d40e2b9438262c_4" [label="4: DeclStmt \n n$2=_fun___new(sizeof(int):unsigned long) [line 50]\n *n$2:int=0 [line 50]\n *&x1:int*=n$2 [line 50]\n " shape="box"] +"int_init_empty#constructor_new#_ZN15constructor_new14int_init_emptyEv.046a4172487408e1c4d40e2b9438262c_4" [label="4: DeclStmt \n n$2=_fun___new(sizeof(t=int):unsigned long) [line 50]\n *n$2:int=0 [line 50]\n *&x1:int*=n$2 [line 50]\n " shape="box"] "int_init_empty#constructor_new#_ZN15constructor_new14int_init_emptyEv.046a4172487408e1c4d40e2b9438262c_4" -> "int_init_empty#constructor_new#_ZN15constructor_new14int_init_emptyEv.046a4172487408e1c4d40e2b9438262c_3" ; @@ -101,7 +101,7 @@ digraph iCFG { "int_init_empty_list_new#constructor_new#_ZN15constructor_new23int_init_empty_list_newEv.f221adb6b6c841b803e147c25d3204de_3" -> "int_init_empty_list_new#constructor_new#_ZN15constructor_new23int_init_empty_list_newEv.f221adb6b6c841b803e147c25d3204de_2" ; -"int_init_empty_list_new#constructor_new#_ZN15constructor_new23int_init_empty_list_newEv.f221adb6b6c841b803e147c25d3204de_4" [label="4: DeclStmt \n n$2=_fun___new(sizeof(int):unsigned long) [line 60]\n *n$2:int=0 [line 60]\n *&x1:int*=n$2 [line 60]\n " shape="box"] +"int_init_empty_list_new#constructor_new#_ZN15constructor_new23int_init_empty_list_newEv.f221adb6b6c841b803e147c25d3204de_4" [label="4: DeclStmt \n n$2=_fun___new(sizeof(t=int):unsigned long) [line 60]\n *n$2:int=0 [line 60]\n *&x1:int*=n$2 [line 60]\n " shape="box"] "int_init_empty_list_new#constructor_new#_ZN15constructor_new23int_init_empty_list_newEv.f221adb6b6c841b803e147c25d3204de_4" -> "int_init_empty_list_new#constructor_new#_ZN15constructor_new23int_init_empty_list_newEv.f221adb6b6c841b803e147c25d3204de_3" ; @@ -141,11 +141,11 @@ digraph iCFG { "int_init_nodes#constructor_new#_ZN15constructor_new14int_init_nodesEv.858899e8400ad728f4d32816a5f41567_9" -> "int_init_nodes#constructor_new#_ZN15constructor_new14int_init_nodesEv.858899e8400ad728f4d32816a5f41567_4" ; -"int_init_nodes#constructor_new#_ZN15constructor_new14int_init_nodesEv.858899e8400ad728f4d32816a5f41567_10" [label="10: DeclStmt \n n$2=_fun___new(sizeof(int):unsigned long) [line 67]\n n$8=*&0$?%__sil_tmpSIL_temp_conditional___n$3:int [line 67]\n *n$2:int=n$8 [line 67]\n *&x:int*=n$2 [line 67]\n " shape="box"] +"int_init_nodes#constructor_new#_ZN15constructor_new14int_init_nodesEv.858899e8400ad728f4d32816a5f41567_10" [label="10: DeclStmt \n n$2=_fun___new(sizeof(t=int):unsigned long) [line 67]\n n$8=*&0$?%__sil_tmpSIL_temp_conditional___n$3:int [line 67]\n *n$2:int=n$8 [line 67]\n *&x:int*=n$2 [line 67]\n " shape="box"] "int_init_nodes#constructor_new#_ZN15constructor_new14int_init_nodesEv.858899e8400ad728f4d32816a5f41567_10" -> "int_init_nodes#constructor_new#_ZN15constructor_new14int_init_nodesEv.858899e8400ad728f4d32816a5f41567_3" ; -"int_init_nodes#constructor_new#_ZN15constructor_new14int_init_nodesEv.858899e8400ad728f4d32816a5f41567_11" [label="11: DeclStmt \n n$9=_fun___new(sizeof(int):unsigned long) [line 66]\n n$10=_fun_constructor_new::getValue(4:int) [line 66]\n *n$9:int=n$10 [line 66]\n *&y:int*=n$9 [line 66]\n " shape="box"] +"int_init_nodes#constructor_new#_ZN15constructor_new14int_init_nodesEv.858899e8400ad728f4d32816a5f41567_11" [label="11: DeclStmt \n n$9=_fun___new(sizeof(t=int):unsigned long) [line 66]\n n$10=_fun_constructor_new::getValue(4:int) [line 66]\n *n$9:int=n$10 [line 66]\n *&y:int*=n$9 [line 66]\n " shape="box"] "int_init_nodes#constructor_new#_ZN15constructor_new14int_init_nodesEv.858899e8400ad728f4d32816a5f41567_11" -> "int_init_nodes#constructor_new#_ZN15constructor_new14int_init_nodesEv.858899e8400ad728f4d32816a5f41567_5" ; @@ -189,7 +189,7 @@ digraph iCFG { "constructor_nodes#constructor_new#_ZN15constructor_new17constructor_nodesEv.5507b612f713c15c069700c4572bd706_9" -> "constructor_nodes#constructor_new#_ZN15constructor_new17constructor_nodesEv.5507b612f713c15c069700c4572bd706_4" ; -"constructor_nodes#constructor_new#_ZN15constructor_new17constructor_nodesEv.5507b612f713c15c069700c4572bd706_10" [label="10: DeclStmt \n n$2=_fun___new(sizeof(constructor_new::Person):unsigned long) [line 73]\n n$7=*&0$?%__sil_tmpSIL_temp_conditional___n$3:int [line 73]\n _fun_constructor_new::Person_Person(n$2:constructor_new::Person*,n$7:int) [line 73]\n *&p:constructor_new::Person*=n$2 [line 73]\n " shape="box"] +"constructor_nodes#constructor_new#_ZN15constructor_new17constructor_nodesEv.5507b612f713c15c069700c4572bd706_10" [label="10: DeclStmt \n n$2=_fun___new(sizeof(t=constructor_new::Person):unsigned long) [line 73]\n n$7=*&0$?%__sil_tmpSIL_temp_conditional___n$3:int [line 73]\n _fun_constructor_new::Person_Person(n$2:constructor_new::Person*,n$7:int) [line 73]\n *&p:constructor_new::Person*=n$2 [line 73]\n " shape="box"] "constructor_nodes#constructor_new#_ZN15constructor_new17constructor_nodesEv.5507b612f713c15c069700c4572bd706_10" -> "constructor_nodes#constructor_new#_ZN15constructor_new17constructor_nodesEv.5507b612f713c15c069700c4572bd706_3" ; @@ -241,7 +241,7 @@ digraph iCFG { "int_array#constructor_new#_ZN15constructor_new9int_arrayEv.a50200812a1b313e9b04a48becffcace_11" -> "int_array#constructor_new#_ZN15constructor_new9int_arrayEv.a50200812a1b313e9b04a48becffcace_6" ; -"int_array#constructor_new#_ZN15constructor_new9int_arrayEv.a50200812a1b313e9b04a48becffcace_12" [label="12: DeclStmt \n n$9=*&0$?%__sil_tmpSIL_temp_conditional___n$6:int [line 78]\n n$10=_fun___new_array((sizeof(int) * n$9):unsigned long) [line 78]\n *&x2:int*=n$10 [line 78]\n " shape="box"] +"int_array#constructor_new#_ZN15constructor_new9int_arrayEv.a50200812a1b313e9b04a48becffcace_12" [label="12: DeclStmt \n n$9=*&0$?%__sil_tmpSIL_temp_conditional___n$6:int [line 78]\n n$10=_fun___new_array((sizeof(t=int) * n$9):unsigned long) [line 78]\n *&x2:int*=n$10 [line 78]\n " shape="box"] "int_array#constructor_new#_ZN15constructor_new9int_arrayEv.a50200812a1b313e9b04a48becffcace_12" -> "int_array#constructor_new#_ZN15constructor_new9int_arrayEv.a50200812a1b313e9b04a48becffcace_5" ; @@ -256,7 +256,7 @@ digraph iCFG { "int_array_init#constructor_new#_ZN15constructor_new14int_array_initEv.4384d20d025c33e626184b2890ab90a4_3" -> "int_array_init#constructor_new#_ZN15constructor_new14int_array_initEv.4384d20d025c33e626184b2890ab90a4_2" ; -"int_array_init#constructor_new#_ZN15constructor_new14int_array_initEv.4384d20d025c33e626184b2890ab90a4_4" [label="4: DeclStmt \n n$10=_fun___new_array((sizeof(int) * 100):unsigned long) [line 85]\n *n$10[0]:int=1 [line 85]\n *n$10[1]:int=2 [line 85]\n *n$10[2]:int=3 [line 85]\n *n$10[3]:int=4 [line 85]\n *n$10[4]:int=5 [line 85]\n *n$10[5]:int=6 [line 85]\n *n$10[6]:int=7 [line 85]\n *n$10[7]:int=8 [line 85]\n *n$10[8]:int=9 [line 85]\n *n$10[9]:int=10 [line 85]\n *&arr:int*=n$10 [line 85]\n " shape="box"] +"int_array_init#constructor_new#_ZN15constructor_new14int_array_initEv.4384d20d025c33e626184b2890ab90a4_4" [label="4: DeclStmt \n n$10=_fun___new_array((sizeof(t=int) * 100):unsigned long) [line 85]\n *n$10[0]:int=1 [line 85]\n *n$10[1]:int=2 [line 85]\n *n$10[2]:int=3 [line 85]\n *n$10[3]:int=4 [line 85]\n *n$10[4]:int=5 [line 85]\n *n$10[5]:int=6 [line 85]\n *n$10[6]:int=7 [line 85]\n *n$10[7]:int=8 [line 85]\n *n$10[8]:int=9 [line 85]\n *n$10[9]:int=10 [line 85]\n *&arr:int*=n$10 [line 85]\n " shape="box"] "int_array_init#constructor_new#_ZN15constructor_new14int_array_initEv.4384d20d025c33e626184b2890ab90a4_4" -> "int_array_init#constructor_new#_ZN15constructor_new14int_array_initEv.4384d20d025c33e626184b2890ab90a4_3" ; @@ -292,7 +292,7 @@ digraph iCFG { "array_of_class_with_not_constant_size#constructor_new#_ZN15constructor_new37array_of_class_with_not_.2dafa043eedc2a4cf36407ab92f39294_8" -> "array_of_class_with_not_constant_size#constructor_new#_ZN15constructor_new37array_of_class_with_not_.2dafa043eedc2a4cf36407ab92f39294_3" ; -"array_of_class_with_not_constant_size#constructor_new#_ZN15constructor_new37array_of_class_with_not_.2dafa043eedc2a4cf36407ab92f39294_9" [label="9: DeclStmt \n n$2=*&0$?%__sil_tmpSIL_temp_conditional___n$0:int [line 91]\n n$3=_fun___new_array((sizeof(constructor_new::Person) * n$2):unsigned long) [line 91]\n *&tarray:constructor_new::Person*=n$3 [line 91]\n " shape="box"] +"array_of_class_with_not_constant_size#constructor_new#_ZN15constructor_new37array_of_class_with_not_.2dafa043eedc2a4cf36407ab92f39294_9" [label="9: DeclStmt \n n$2=*&0$?%__sil_tmpSIL_temp_conditional___n$0:int [line 91]\n n$3=_fun___new_array((sizeof(t=constructor_new::Person) * n$2):unsigned long) [line 91]\n *&tarray:constructor_new::Person*=n$3 [line 91]\n " shape="box"] "array_of_class_with_not_constant_size#constructor_new#_ZN15constructor_new37array_of_class_with_not_.2dafa043eedc2a4cf36407ab92f39294_9" -> "array_of_class_with_not_constant_size#constructor_new#_ZN15constructor_new37array_of_class_with_not_.2dafa043eedc2a4cf36407ab92f39294_2" ; @@ -303,7 +303,7 @@ digraph iCFG { "array_of_person_with_constant_size#constructor_new#_ZN15constructor_new34array_of_person_with_consta.216f1e02a6e135eec1b8bbd6115403a9_2" [label="2: Exit constructor_new::array_of_person_with_constant_size \n " color=yellow style=filled] -"array_of_person_with_constant_size#constructor_new#_ZN15constructor_new34array_of_person_with_consta.216f1e02a6e135eec1b8bbd6115403a9_3" [label="3: DeclStmt \n n$0=_fun___new_array((sizeof(constructor_new::Person) * 10):unsigned long) [line 95]\n _fun_constructor_new::Person_Person(n$0[0]:constructor_new::Person*) [line 95]\n _fun_constructor_new::Person_Person(n$0[1]:constructor_new::Person*) [line 95]\n _fun_constructor_new::Person_Person(n$0[2]:constructor_new::Person*) [line 95]\n _fun_constructor_new::Person_Person(n$0[3]:constructor_new::Person*) [line 95]\n _fun_constructor_new::Person_Person(n$0[4]:constructor_new::Person*) [line 95]\n _fun_constructor_new::Person_Person(n$0[5]:constructor_new::Person*) [line 95]\n _fun_constructor_new::Person_Person(n$0[6]:constructor_new::Person*) [line 95]\n _fun_constructor_new::Person_Person(n$0[7]:constructor_new::Person*) [line 95]\n _fun_constructor_new::Person_Person(n$0[8]:constructor_new::Person*) [line 95]\n _fun_constructor_new::Person_Person(n$0[9]:constructor_new::Person*) [line 95]\n *&tarray:constructor_new::Person*=n$0 [line 95]\n " shape="box"] +"array_of_person_with_constant_size#constructor_new#_ZN15constructor_new34array_of_person_with_consta.216f1e02a6e135eec1b8bbd6115403a9_3" [label="3: DeclStmt \n n$0=_fun___new_array((sizeof(t=constructor_new::Person) * 10):unsigned long) [line 95]\n _fun_constructor_new::Person_Person(n$0[0]:constructor_new::Person*) [line 95]\n _fun_constructor_new::Person_Person(n$0[1]:constructor_new::Person*) [line 95]\n _fun_constructor_new::Person_Person(n$0[2]:constructor_new::Person*) [line 95]\n _fun_constructor_new::Person_Person(n$0[3]:constructor_new::Person*) [line 95]\n _fun_constructor_new::Person_Person(n$0[4]:constructor_new::Person*) [line 95]\n _fun_constructor_new::Person_Person(n$0[5]:constructor_new::Person*) [line 95]\n _fun_constructor_new::Person_Person(n$0[6]:constructor_new::Person*) [line 95]\n _fun_constructor_new::Person_Person(n$0[7]:constructor_new::Person*) [line 95]\n _fun_constructor_new::Person_Person(n$0[8]:constructor_new::Person*) [line 95]\n _fun_constructor_new::Person_Person(n$0[9]:constructor_new::Person*) [line 95]\n *&tarray:constructor_new::Person*=n$0 [line 95]\n " shape="box"] "array_of_person_with_constant_size#constructor_new#_ZN15constructor_new34array_of_person_with_consta.216f1e02a6e135eec1b8bbd6115403a9_3" -> "array_of_person_with_constant_size#constructor_new#_ZN15constructor_new34array_of_person_with_consta.216f1e02a6e135eec1b8bbd6115403a9_2" ; @@ -314,11 +314,11 @@ digraph iCFG { "matrix_of_person#constructor_new#_ZN15constructor_new16matrix_of_personEv.6eca49c294523e3080fbda7d175061b6_2" [label="2: Exit constructor_new::matrix_of_person \n " color=yellow style=filled] -"matrix_of_person#constructor_new#_ZN15constructor_new16matrix_of_personEv.6eca49c294523e3080fbda7d175061b6_3" [label="3: BinaryOperatorStmt: Assign \n n$0=*&tarray:constructor_new::Person** [line 100]\n n$1=_fun___new_array((sizeof(constructor_new::Person) * 10):unsigned long) [line 100]\n _fun_constructor_new::Person_Person(n$1[0]:constructor_new::Person*) [line 100]\n _fun_constructor_new::Person_Person(n$1[1]:constructor_new::Person*) [line 100]\n _fun_constructor_new::Person_Person(n$1[2]:constructor_new::Person*) [line 100]\n _fun_constructor_new::Person_Person(n$1[3]:constructor_new::Person*) [line 100]\n _fun_constructor_new::Person_Person(n$1[4]:constructor_new::Person*) [line 100]\n _fun_constructor_new::Person_Person(n$1[5]:constructor_new::Person*) [line 100]\n _fun_constructor_new::Person_Person(n$1[6]:constructor_new::Person*) [line 100]\n _fun_constructor_new::Person_Person(n$1[7]:constructor_new::Person*) [line 100]\n _fun_constructor_new::Person_Person(n$1[8]:constructor_new::Person*) [line 100]\n _fun_constructor_new::Person_Person(n$1[9]:constructor_new::Person*) [line 100]\n *n$0[0]:constructor_new::Person*=n$1 [line 100]\n " shape="box"] +"matrix_of_person#constructor_new#_ZN15constructor_new16matrix_of_personEv.6eca49c294523e3080fbda7d175061b6_3" [label="3: BinaryOperatorStmt: Assign \n n$0=*&tarray:constructor_new::Person** [line 100]\n n$1=_fun___new_array((sizeof(t=constructor_new::Person) * 10):unsigned long) [line 100]\n _fun_constructor_new::Person_Person(n$1[0]:constructor_new::Person*) [line 100]\n _fun_constructor_new::Person_Person(n$1[1]:constructor_new::Person*) [line 100]\n _fun_constructor_new::Person_Person(n$1[2]:constructor_new::Person*) [line 100]\n _fun_constructor_new::Person_Person(n$1[3]:constructor_new::Person*) [line 100]\n _fun_constructor_new::Person_Person(n$1[4]:constructor_new::Person*) [line 100]\n _fun_constructor_new::Person_Person(n$1[5]:constructor_new::Person*) [line 100]\n _fun_constructor_new::Person_Person(n$1[6]:constructor_new::Person*) [line 100]\n _fun_constructor_new::Person_Person(n$1[7]:constructor_new::Person*) [line 100]\n _fun_constructor_new::Person_Person(n$1[8]:constructor_new::Person*) [line 100]\n _fun_constructor_new::Person_Person(n$1[9]:constructor_new::Person*) [line 100]\n *n$0[0]:constructor_new::Person*=n$1 [line 100]\n " shape="box"] "matrix_of_person#constructor_new#_ZN15constructor_new16matrix_of_personEv.6eca49c294523e3080fbda7d175061b6_3" -> "matrix_of_person#constructor_new#_ZN15constructor_new16matrix_of_personEv.6eca49c294523e3080fbda7d175061b6_2" ; -"matrix_of_person#constructor_new#_ZN15constructor_new16matrix_of_personEv.6eca49c294523e3080fbda7d175061b6_4" [label="4: DeclStmt \n n$2=_fun___new_array((sizeof(constructor_new::Person*) * 10):unsigned long) [line 99]\n *&tarray:constructor_new::Person**=n$2 [line 99]\n " shape="box"] +"matrix_of_person#constructor_new#_ZN15constructor_new16matrix_of_personEv.6eca49c294523e3080fbda7d175061b6_4" [label="4: DeclStmt \n n$2=_fun___new_array((sizeof(t=constructor_new::Person*) * 10):unsigned long) [line 99]\n *&tarray:constructor_new::Person**=n$2 [line 99]\n " shape="box"] "matrix_of_person#constructor_new#_ZN15constructor_new16matrix_of_personEv.6eca49c294523e3080fbda7d175061b6_4" -> "matrix_of_person#constructor_new#_ZN15constructor_new16matrix_of_personEv.6eca49c294523e3080fbda7d175061b6_3" ; diff --git a/infer/tests/codetoanalyze/cpp/shared/constructors/std_init_list.cpp.dot b/infer/tests/codetoanalyze/cpp/shared/constructors/std_init_list.cpp.dot index f16ae027f..7e1e98f26 100644 --- a/infer/tests/codetoanalyze/cpp/shared/constructors/std_init_list.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/shared/constructors/std_init_list.cpp.dot @@ -1,13 +1,13 @@ /* @generated */ digraph iCFG { -"main.fad58de7366495db4650cfefac2fcd61_1" [label="1: Start main\nFormals: \nLocals: x:X 0$?%__sil_tmpSIL_materialize_temp__n$0:int const [5*32] const \n DECLARE_LOCALS(&return,&x,&0$?%__sil_tmpSIL_materialize_temp__n$0); [line 24]\n " color=yellow style=filled] +"main.fad58de7366495db4650cfefac2fcd61_1" [label="1: Start main\nFormals: \nLocals: x:X 0$?%__sil_tmpSIL_materialize_temp__n$0:int const [5*4] const \n DECLARE_LOCALS(&return,&x,&0$?%__sil_tmpSIL_materialize_temp__n$0); [line 24]\n " color=yellow style=filled] "main.fad58de7366495db4650cfefac2fcd61_1" -> "main.fad58de7366495db4650cfefac2fcd61_3" ; "main.fad58de7366495db4650cfefac2fcd61_2" [label="2: Exit main \n " color=yellow style=filled] -"main.fad58de7366495db4650cfefac2fcd61_3" [label="3: DeclStmt \n *&0$?%__sil_tmpSIL_materialize_temp__n$0[0]:int const =1 [line 24]\n *&0$?%__sil_tmpSIL_materialize_temp__n$0[1]:int const =2 [line 24]\n *&0$?%__sil_tmpSIL_materialize_temp__n$0[2]:int const =3 [line 24]\n *&0$?%__sil_tmpSIL_materialize_temp__n$0[3]:int const =4 [line 24]\n *&0$?%__sil_tmpSIL_materialize_temp__n$0[4]:int const =5 [line 24]\n n$1=_fun___infer_skip_function(&0$?%__sil_tmpSIL_materialize_temp__n$0:int const [5*32] const ) [line 24]\n _fun_X_X(&x:X*,n$1:std::initializer_list) [line 24]\n " shape="box"] +"main.fad58de7366495db4650cfefac2fcd61_3" [label="3: DeclStmt \n *&0$?%__sil_tmpSIL_materialize_temp__n$0[0]:int const =1 [line 24]\n *&0$?%__sil_tmpSIL_materialize_temp__n$0[1]:int const =2 [line 24]\n *&0$?%__sil_tmpSIL_materialize_temp__n$0[2]:int const =3 [line 24]\n *&0$?%__sil_tmpSIL_materialize_temp__n$0[3]:int const =4 [line 24]\n *&0$?%__sil_tmpSIL_materialize_temp__n$0[4]:int const =5 [line 24]\n n$1=_fun___infer_skip_function(&0$?%__sil_tmpSIL_materialize_temp__n$0:int const [5*4] const ) [line 24]\n _fun_X_X(&x:X*,n$1:std::initializer_list) [line 24]\n " shape="box"] "main.fad58de7366495db4650cfefac2fcd61_3" -> "main.fad58de7366495db4650cfefac2fcd61_2" ; diff --git a/infer/tests/codetoanalyze/cpp/shared/methods/virtual_methods.cpp.dot b/infer/tests/codetoanalyze/cpp/shared/methods/virtual_methods.cpp.dot index 62b18685c..2ff2ebc05 100644 --- a/infer/tests/codetoanalyze/cpp/shared/methods/virtual_methods.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/shared/methods/virtual_methods.cpp.dot @@ -107,7 +107,7 @@ digraph iCFG { "call_virtual_destructor#_Z23call_virtual_destructorv.c49554769ae5a95a20567435741c5c0d_3" -> "call_virtual_destructor#_Z23call_virtual_destructorv.c49554769ae5a95a20567435741c5c0d_2" ; -"call_virtual_destructor#_Z23call_virtual_destructorv.c49554769ae5a95a20567435741c5c0d_4" [label="4: DeclStmt \n n$1=_fun___new(sizeof(Triangle):unsigned long) [line 71]\n _fun_Triangle_Triangle(n$1:Triangle*) [line 71]\n *&trgl:Triangle*=n$1 [line 71]\n " shape="box"] +"call_virtual_destructor#_Z23call_virtual_destructorv.c49554769ae5a95a20567435741c5c0d_4" [label="4: DeclStmt \n n$1=_fun___new(sizeof(t=Triangle):unsigned long) [line 71]\n _fun_Triangle_Triangle(n$1:Triangle*) [line 71]\n *&trgl:Triangle*=n$1 [line 71]\n " shape="box"] "call_virtual_destructor#_Z23call_virtual_destructorv.c49554769ae5a95a20567435741c5c0d_4" -> "call_virtual_destructor#_Z23call_virtual_destructorv.c49554769ae5a95a20567435741c5c0d_3" ; diff --git a/infer/tests/codetoanalyze/cpp/shared/types/inheritance.cpp.dot b/infer/tests/codetoanalyze/cpp/shared/types/inheritance.cpp.dot index 6102fda20..8b676875c 100644 --- a/infer/tests/codetoanalyze/cpp/shared/types/inheritance.cpp.dot +++ b/infer/tests/codetoanalyze/cpp/shared/types/inheritance.cpp.dot @@ -31,15 +31,15 @@ digraph iCFG { "call_static_methods#_Z19call_static_methodsv.8f6d53f5ba8026b1f1c82b61375a3dfc_8" -> "call_static_methods#_Z19call_static_methodsv.8f6d53f5ba8026b1f1c82b61375a3dfc_7" ; -"call_static_methods#_Z19call_static_methodsv.8f6d53f5ba8026b1f1c82b61375a3dfc_9" [label="9: DeclStmt \n n$18=_fun___new(sizeof(Sub):unsigned long) [line 24]\n _fun_Sub_Sub(n$18:Sub*) [line 24]\n *&s2:Sub*=n$18 [line 24]\n " shape="box"] +"call_static_methods#_Z19call_static_methodsv.8f6d53f5ba8026b1f1c82b61375a3dfc_9" [label="9: DeclStmt \n n$18=_fun___new(sizeof(t=Sub):unsigned long) [line 24]\n _fun_Sub_Sub(n$18:Sub*) [line 24]\n *&s2:Sub*=n$18 [line 24]\n " shape="box"] "call_static_methods#_Z19call_static_methodsv.8f6d53f5ba8026b1f1c82b61375a3dfc_9" -> "call_static_methods#_Z19call_static_methodsv.8f6d53f5ba8026b1f1c82b61375a3dfc_8" ; -"call_static_methods#_Z19call_static_methodsv.8f6d53f5ba8026b1f1c82b61375a3dfc_10" [label="10: DeclStmt \n n$19=_fun___new(sizeof(Sub):unsigned long) [line 23]\n _fun_Sub_Sub(n$19:Sub*) [line 23]\n *&s1:Sub*=n$19 [line 23]\n " shape="box"] +"call_static_methods#_Z19call_static_methodsv.8f6d53f5ba8026b1f1c82b61375a3dfc_10" [label="10: DeclStmt \n n$19=_fun___new(sizeof(t=Sub):unsigned long) [line 23]\n _fun_Sub_Sub(n$19:Sub*) [line 23]\n *&s1:Sub*=n$19 [line 23]\n " shape="box"] "call_static_methods#_Z19call_static_methodsv.8f6d53f5ba8026b1f1c82b61375a3dfc_10" -> "call_static_methods#_Z19call_static_methodsv.8f6d53f5ba8026b1f1c82b61375a3dfc_9" ; -"call_static_methods#_Z19call_static_methodsv.8f6d53f5ba8026b1f1c82b61375a3dfc_11" [label="11: DeclStmt \n n$20=_fun___new(sizeof(Base):unsigned long) [line 22]\n _fun_Base_Base(n$20:Base*) [line 22]\n *&b:Base*=n$20 [line 22]\n " shape="box"] +"call_static_methods#_Z19call_static_methodsv.8f6d53f5ba8026b1f1c82b61375a3dfc_11" [label="11: DeclStmt \n n$20=_fun___new(sizeof(t=Base):unsigned long) [line 22]\n _fun_Base_Base(n$20:Base*) [line 22]\n *&b:Base*=n$20 [line 22]\n " shape="box"] "call_static_methods#_Z19call_static_methodsv.8f6d53f5ba8026b1f1c82b61375a3dfc_11" -> "call_static_methods#_Z19call_static_methodsv.8f6d53f5ba8026b1f1c82b61375a3dfc_10" ; diff --git a/infer/tests/codetoanalyze/objc/frontend/block/retain_cycle.m.dot b/infer/tests/codetoanalyze/objc/frontend/block/retain_cycle.m.dot index 085414f45..259c45b36 100644 --- a/infer/tests/codetoanalyze/objc/frontend/block/retain_cycle.m.dot +++ b/infer/tests/codetoanalyze/objc/frontend/block/retain_cycle.m.dot @@ -30,7 +30,7 @@ digraph iCFG { "main.fad58de7366495db4650cfefac2fcd61_4" -> "main.fad58de7366495db4650cfefac2fcd61_3" ; -"main.fad58de7366495db4650cfefac2fcd61_5" [label="5: DeclStmt \n n$2=_fun___objc_alloc_no_fail(sizeof(A):unsigned long) [line 63]\n *&a:A*=n$2 [line 63]\n " shape="box"] +"main.fad58de7366495db4650cfefac2fcd61_5" [label="5: DeclStmt \n n$2=_fun___objc_alloc_no_fail(sizeof(t=A):unsigned long) [line 63]\n *&a:A*=n$2 [line 63]\n " shape="box"] "main.fad58de7366495db4650cfefac2fcd61_5" -> "main.fad58de7366495db4650cfefac2fcd61_4" ; @@ -41,11 +41,11 @@ digraph iCFG { "capture#A#instance.d411336575e4bf632a1828f5f5979726_2" [label="2: Exit A_capture \n " color=yellow style=filled] -"capture#A#instance.d411336575e4bf632a1828f5f5979726_3" [label="3: Message Call: sHandler: \n n$0=*&self:A* [line 47]\n n$1=*n$0._b:B* [line 47]\n DECLARE_LOCALS(&__objc_anonymous_block_A_capture______1); [line 47]\n n$5=_fun___objc_alloc_no_fail(sizeof(__objc_anonymous_block_A_capture______1):unsigned long) [line 47]\n *&__objc_anonymous_block_A_capture______1:__objc_anonymous_block_A_capture______1=n$5 [line 47]\n n$6=*&self:A* [line 47]\n *n$5.self:A*=n$6 [line 47]\n n$2=*&self:A* [line 47]\n n$7=*&__objc_anonymous_block_A_capture______1:_fn_(*) [line 47]\n _fun_B_sHandler:(n$1:B*,n$7:_fn_(*),n$2:_fn_(*)) virtual [line 47]\n " shape="box"] +"capture#A#instance.d411336575e4bf632a1828f5f5979726_3" [label="3: Message Call: sHandler: \n n$0=*&self:A* [line 47]\n n$1=*n$0._b:B* [line 47]\n DECLARE_LOCALS(&__objc_anonymous_block_A_capture______1); [line 47]\n n$5=_fun___objc_alloc_no_fail(sizeof(t=__objc_anonymous_block_A_capture______1):unsigned long) [line 47]\n *&__objc_anonymous_block_A_capture______1:__objc_anonymous_block_A_capture______1=n$5 [line 47]\n n$6=*&self:A* [line 47]\n *n$5.self:A*=n$6 [line 47]\n n$2=*&self:A* [line 47]\n n$7=*&__objc_anonymous_block_A_capture______1:_fn_(*) [line 47]\n _fun_B_sHandler:(n$1:B*,n$7:_fn_(*),n$2:_fn_(*)) virtual [line 47]\n " shape="box"] "capture#A#instance.d411336575e4bf632a1828f5f5979726_3" -> "capture#A#instance.d411336575e4bf632a1828f5f5979726_2" ; -"capture#A#instance.d411336575e4bf632a1828f5f5979726_4" [label="4: BinaryOperatorStmt: Assign \n n$8=*&self:A* [line 46]\n n$9=_fun___objc_alloc_no_fail(sizeof(B):unsigned long) [line 46]\n *n$8._b:B*=n$9 [line 46]\n " shape="box"] +"capture#A#instance.d411336575e4bf632a1828f5f5979726_4" [label="4: BinaryOperatorStmt: Assign \n n$8=*&self:A* [line 46]\n n$9=_fun___objc_alloc_no_fail(sizeof(t=B):unsigned long) [line 46]\n *n$8._b:B*=n$9 [line 46]\n " shape="box"] "capture#A#instance.d411336575e4bf632a1828f5f5979726_4" -> "capture#A#instance.d411336575e4bf632a1828f5f5979726_3" ; diff --git a/infer/tests/codetoanalyze/objc/frontend/block/static.m.dot b/infer/tests/codetoanalyze/objc/frontend/block/static.m.dot index e2b106bab..5f6e79529 100644 --- a/infer/tests/codetoanalyze/objc/frontend/block/static.m.dot +++ b/infer/tests/codetoanalyze/objc/frontend/block/static.m.dot @@ -11,7 +11,7 @@ digraph iCFG { "test#A#class.c69ae9e6be36a2eeb5dcbaa1187c354d_3" -> "test#A#class.c69ae9e6be36a2eeb5dcbaa1187c354d_2" ; -"test#A#class.c69ae9e6be36a2eeb5dcbaa1187c354d_4" [label="4: Call (_fun___objc_anonymous_block_A_test______1) \n DECLARE_LOCALS(&__objc_anonymous_block_A_test______1); [line 20]\n n$3=_fun___objc_alloc_no_fail(sizeof(__objc_anonymous_block_A_test______1):unsigned long) [line 20]\n *&__objc_anonymous_block_A_test______1:__objc_anonymous_block_A_test______1=n$3 [line 20]\n n$4=*&#GB$A_test_sharedInstance:objc_object* [line 20]\n *n$3.A_test_sharedInstance:objc_object*=n$4 [line 20]\n (_fun___objc_anonymous_block_A_test______1)() [line 20]\n " shape="box"] +"test#A#class.c69ae9e6be36a2eeb5dcbaa1187c354d_4" [label="4: Call (_fun___objc_anonymous_block_A_test______1) \n DECLARE_LOCALS(&__objc_anonymous_block_A_test______1); [line 20]\n n$3=_fun___objc_alloc_no_fail(sizeof(t=__objc_anonymous_block_A_test______1):unsigned long) [line 20]\n *&__objc_anonymous_block_A_test______1:__objc_anonymous_block_A_test______1=n$3 [line 20]\n n$4=*&#GB$A_test_sharedInstance:objc_object* [line 20]\n *n$3.A_test_sharedInstance:objc_object*=n$4 [line 20]\n (_fun___objc_anonymous_block_A_test______1)() [line 20]\n " shape="box"] "test#A#class.c69ae9e6be36a2eeb5dcbaa1187c354d_4" -> "test#A#class.c69ae9e6be36a2eeb5dcbaa1187c354d_3" ; @@ -22,7 +22,7 @@ digraph iCFG { "__objc_anonymous_block_A_test______1.4b4d782fad0701e8da5729a89669e579_2" [label="2: Exit __objc_anonymous_block_A_test______1 \n " color=yellow style=filled] -"__objc_anonymous_block_A_test______1.4b4d782fad0701e8da5729a89669e579_3" [label="3: BinaryOperatorStmt: Assign \n n$1=_fun___objc_alloc_no_fail(sizeof(A):unsigned long) [line 21]\n n$2=_fun_A_init(n$1:A*) virtual [line 21]\n *&#GB$A_test_sharedInstance:objc_object*=n$2 [line 21]\n " shape="box"] +"__objc_anonymous_block_A_test______1.4b4d782fad0701e8da5729a89669e579_3" [label="3: BinaryOperatorStmt: Assign \n n$1=_fun___objc_alloc_no_fail(sizeof(t=A):unsigned long) [line 21]\n n$2=_fun_A_init(n$1:A*) virtual [line 21]\n *&#GB$A_test_sharedInstance:objc_object*=n$2 [line 21]\n " shape="box"] "__objc_anonymous_block_A_test______1.4b4d782fad0701e8da5729a89669e579_3" -> "__objc_anonymous_block_A_test______1.4b4d782fad0701e8da5729a89669e579_2" ; @@ -33,7 +33,7 @@ digraph iCFG { "test_leak#A#class.8240788aa53244827857be0e92d27671_2" [label="2: Exit A_test_leak \n " color=yellow style=filled] -"test_leak#A#class.8240788aa53244827857be0e92d27671_3" [label="3: Call (_fun___objc_anonymous_block_A_test_leak______2) \n DECLARE_LOCALS(&__objc_anonymous_block_A_test_leak______2); [line 30]\n n$7=_fun___objc_alloc_no_fail(sizeof(__objc_anonymous_block_A_test_leak______2):unsigned long) [line 30]\n *&__objc_anonymous_block_A_test_leak______2:__objc_anonymous_block_A_test_leak______2=n$7 [line 30]\n n$8=*&#GB$A_test_leak_sharedInstance:objc_object* [line 30]\n *n$7.A_test_leak_sharedInstance:objc_object*=n$8 [line 30]\n (_fun___objc_anonymous_block_A_test_leak______2)() [line 30]\n " shape="box"] +"test_leak#A#class.8240788aa53244827857be0e92d27671_3" [label="3: Call (_fun___objc_anonymous_block_A_test_leak______2) \n DECLARE_LOCALS(&__objc_anonymous_block_A_test_leak______2); [line 30]\n n$7=_fun___objc_alloc_no_fail(sizeof(t=__objc_anonymous_block_A_test_leak______2):unsigned long) [line 30]\n *&__objc_anonymous_block_A_test_leak______2:__objc_anonymous_block_A_test_leak______2=n$7 [line 30]\n n$8=*&#GB$A_test_leak_sharedInstance:objc_object* [line 30]\n *n$7.A_test_leak_sharedInstance:objc_object*=n$8 [line 30]\n (_fun___objc_anonymous_block_A_test_leak______2)() [line 30]\n " shape="box"] "test_leak#A#class.8240788aa53244827857be0e92d27671_3" -> "test_leak#A#class.8240788aa53244827857be0e92d27671_2" ; @@ -44,7 +44,7 @@ digraph iCFG { "__objc_anonymous_block_A_test_leak______2.c5d678f27e9d82d9f4d1cf0324051fa7_2" [label="2: Exit __objc_anonymous_block_A_test_leak______2 \n " color=yellow style=filled] -"__objc_anonymous_block_A_test_leak______2.c5d678f27e9d82d9f4d1cf0324051fa7_3" [label="3: BinaryOperatorStmt: Assign \n n$5=_fun___objc_alloc_no_fail(sizeof(A):unsigned long) [line 31]\n n$6=_fun_A_init(n$5:A*) virtual [line 31]\n *&#GB$A_test_leak_sharedInstance:objc_object*=n$6 [line 31]\n " shape="box"] +"__objc_anonymous_block_A_test_leak______2.c5d678f27e9d82d9f4d1cf0324051fa7_3" [label="3: BinaryOperatorStmt: Assign \n n$5=_fun___objc_alloc_no_fail(sizeof(t=A):unsigned long) [line 31]\n n$6=_fun_A_init(n$5:A*) virtual [line 31]\n *&#GB$A_test_leak_sharedInstance:objc_object*=n$6 [line 31]\n " shape="box"] "__objc_anonymous_block_A_test_leak______2.c5d678f27e9d82d9f4d1cf0324051fa7_3" -> "__objc_anonymous_block_A_test_leak______2.c5d678f27e9d82d9f4d1cf0324051fa7_2" ; @@ -59,11 +59,11 @@ digraph iCFG { "test2#A#class.ce50cb13c3345decc567dd4eb6124604_3" -> "test2#A#class.ce50cb13c3345decc567dd4eb6124604_2" ; -"test2#A#class.ce50cb13c3345decc567dd4eb6124604_4" [label="4: Call (_fun___objc_anonymous_block_A_test2______3) \n DECLARE_LOCALS(&__objc_anonymous_block_A_test2______3); [line 39]\n n$11=_fun___objc_alloc_no_fail(sizeof(__objc_anonymous_block_A_test2______3):unsigned long) [line 39]\n *&__objc_anonymous_block_A_test2______3:__objc_anonymous_block_A_test2______3=n$11 [line 39]\n n$12=*&#GB$A_test2_sharedInstance:objc_object* [line 39]\n *n$11.A_test2_sharedInstance:objc_object*=n$12 [line 39]\n (_fun___objc_anonymous_block_A_test2______3)() [line 39]\n " shape="box"] +"test2#A#class.ce50cb13c3345decc567dd4eb6124604_4" [label="4: Call (_fun___objc_anonymous_block_A_test2______3) \n DECLARE_LOCALS(&__objc_anonymous_block_A_test2______3); [line 39]\n n$11=_fun___objc_alloc_no_fail(sizeof(t=__objc_anonymous_block_A_test2______3):unsigned long) [line 39]\n *&__objc_anonymous_block_A_test2______3:__objc_anonymous_block_A_test2______3=n$11 [line 39]\n n$12=*&#GB$A_test2_sharedInstance:objc_object* [line 39]\n *n$11.A_test2_sharedInstance:objc_object*=n$12 [line 39]\n (_fun___objc_anonymous_block_A_test2______3)() [line 39]\n " shape="box"] "test2#A#class.ce50cb13c3345decc567dd4eb6124604_4" -> "test2#A#class.ce50cb13c3345decc567dd4eb6124604_3" ; -"test2#A#class.ce50cb13c3345decc567dd4eb6124604_5" [label="5: BinaryOperatorStmt: Assign \n n$13=_fun___objc_alloc_no_fail(sizeof(A):unsigned long) [line 38]\n n$14=_fun_A_init(n$13:A*) virtual [line 38]\n *&#GB$A_test2_sharedInstance:objc_object*=n$14 [line 38]\n " shape="box"] +"test2#A#class.ce50cb13c3345decc567dd4eb6124604_5" [label="5: BinaryOperatorStmt: Assign \n n$13=_fun___objc_alloc_no_fail(sizeof(t=A):unsigned long) [line 38]\n n$14=_fun_A_init(n$13:A*) virtual [line 38]\n *&#GB$A_test2_sharedInstance:objc_object*=n$14 [line 38]\n " shape="box"] "test2#A#class.ce50cb13c3345decc567dd4eb6124604_5" -> "test2#A#class.ce50cb13c3345decc567dd4eb6124604_4" ; @@ -89,7 +89,7 @@ digraph iCFG { "test3#A#class.041e0eaf033ae8cfa2af48253dfb07ee_3" -> "test3#A#class.041e0eaf033ae8cfa2af48253dfb07ee_2" ; -"test3#A#class.041e0eaf033ae8cfa2af48253dfb07ee_4" [label="4: Call (_fun___objc_anonymous_block_A_test3______4) \n DECLARE_LOCALS(&__objc_anonymous_block_A_test3______4); [line 50]\n n$17=_fun___objc_alloc_no_fail(sizeof(__objc_anonymous_block_A_test3______4):unsigned long) [line 50]\n *&__objc_anonymous_block_A_test3______4:__objc_anonymous_block_A_test3______4=n$17 [line 50]\n n$18=*&#GB$A_test3_i:int [line 50]\n *n$17.A_test3_i:int=n$18 [line 50]\n (_fun___objc_anonymous_block_A_test3______4)() [line 50]\n " shape="box"] +"test3#A#class.041e0eaf033ae8cfa2af48253dfb07ee_4" [label="4: Call (_fun___objc_anonymous_block_A_test3______4) \n DECLARE_LOCALS(&__objc_anonymous_block_A_test3______4); [line 50]\n n$17=_fun___objc_alloc_no_fail(sizeof(t=__objc_anonymous_block_A_test3______4):unsigned long) [line 50]\n *&__objc_anonymous_block_A_test3______4:__objc_anonymous_block_A_test3______4=n$17 [line 50]\n n$18=*&#GB$A_test3_i:int [line 50]\n *n$17.A_test3_i:int=n$18 [line 50]\n (_fun___objc_anonymous_block_A_test3______4)() [line 50]\n " shape="box"] "test3#A#class.041e0eaf033ae8cfa2af48253dfb07ee_4" -> "test3#A#class.041e0eaf033ae8cfa2af48253dfb07ee_3" ; diff --git a/infer/tests/codetoanalyze/objc/frontend/exceptions/ExceptionExample.m.dot b/infer/tests/codetoanalyze/objc/frontend/exceptions/ExceptionExample.m.dot index 96465aa13..9adf618ac 100644 --- a/infer/tests/codetoanalyze/objc/frontend/exceptions/ExceptionExample.m.dot +++ b/infer/tests/codetoanalyze/objc/frontend/exceptions/ExceptionExample.m.dot @@ -11,7 +11,7 @@ digraph iCFG { "test#ExceptionExample#instance.513cde8d794322493646dbd1821516dd_3" -> "test#ExceptionExample#instance.513cde8d794322493646dbd1821516dd_2" ; -"test#ExceptionExample#instance.513cde8d794322493646dbd1821516dd_4" [label="4: DeclStmt \n n$2=_fun___objc_alloc_no_fail(sizeof(NSString):unsigned long) [line 20]\n *&s:NSString*=n$2 [line 20]\n " shape="box"] +"test#ExceptionExample#instance.513cde8d794322493646dbd1821516dd_4" [label="4: DeclStmt \n n$2=_fun___objc_alloc_no_fail(sizeof(t=NSString):unsigned long) [line 20]\n *&s:NSString*=n$2 [line 20]\n " shape="box"] "test#ExceptionExample#instance.513cde8d794322493646dbd1821516dd_4" -> "test#ExceptionExample#instance.513cde8d794322493646dbd1821516dd_3" ; @@ -42,7 +42,7 @@ digraph iCFG { "test1#ExceptionExample#instance.400b3bc567ff814f7f6788584460738f_7" -> "test1#ExceptionExample#instance.400b3bc567ff814f7f6788584460738f_3" ; -"test1#ExceptionExample#instance.400b3bc567ff814f7f6788584460738f_8" [label="8: DeclStmt \n n$7=_fun___objc_alloc_no_fail(sizeof(NSString):unsigned long) [line 28]\n *&s:NSString*=n$7 [line 28]\n " shape="box"] +"test1#ExceptionExample#instance.400b3bc567ff814f7f6788584460738f_8" [label="8: DeclStmt \n n$7=_fun___objc_alloc_no_fail(sizeof(t=NSString):unsigned long) [line 28]\n *&s:NSString*=n$7 [line 28]\n " shape="box"] "test1#ExceptionExample#instance.400b3bc567ff814f7f6788584460738f_8" -> "test1#ExceptionExample#instance.400b3bc567ff814f7f6788584460738f_5" ; diff --git a/infer/tests/codetoanalyze/objc/frontend/property/main_car.m.dot b/infer/tests/codetoanalyze/objc/frontend/property/main_car.m.dot index 45c18b02f..48db8168b 100644 --- a/infer/tests/codetoanalyze/objc/frontend/property/main_car.m.dot +++ b/infer/tests/codetoanalyze/objc/frontend/property/main_car.m.dot @@ -19,7 +19,7 @@ digraph iCFG { "main.fad58de7366495db4650cfefac2fcd61_5" -> "main.fad58de7366495db4650cfefac2fcd61_4" ; -"main.fad58de7366495db4650cfefac2fcd61_6" [label="6: DeclStmt \n n$4=_fun___objc_alloc_no_fail(sizeof(Car):unsigned long) [line 13]\n n$5=_fun_NSObject_init(n$4:Car*) virtual [line 13]\n *&honda:Car*=n$5 [line 13]\n " shape="box"] +"main.fad58de7366495db4650cfefac2fcd61_6" [label="6: DeclStmt \n n$4=_fun___objc_alloc_no_fail(sizeof(t=Car):unsigned long) [line 13]\n n$5=_fun_NSObject_init(n$4:Car*) virtual [line 13]\n *&honda:Car*=n$5 [line 13]\n " shape="box"] "main.fad58de7366495db4650cfefac2fcd61_6" -> "main.fad58de7366495db4650cfefac2fcd61_5" ; diff --git a/infer/tests/codetoanalyze/objc/frontend/self_static/Self.m.dot b/infer/tests/codetoanalyze/objc/frontend/self_static/Self.m.dot index 0953fea70..9db1b3745 100644 --- a/infer/tests/codetoanalyze/objc/frontend/self_static/Self.m.dot +++ b/infer/tests/codetoanalyze/objc/frontend/self_static/Self.m.dot @@ -32,7 +32,7 @@ digraph iCFG { "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$1=_fun___objc_alloc_no_fail(sizeof(A):unsigned long) [line 58]\n " shape="box"] +"call_alloc_class#A#class.0cef99601cab56333305f5f96f227079_3" [label="3: Call alloc \n n$1=_fun___objc_alloc_no_fail(sizeof(t=A):unsigned long) [line 58]\n " shape="box"] "call_alloc_class#A#class.0cef99601cab56333305f5f96f227079_3" -> "call_alloc_class#A#class.0cef99601cab56333305f5f96f227079_2" ; @@ -67,11 +67,11 @@ digraph iCFG { "used_in_binary_op:#A#class.9f855a338b344f4b5060d2d4a2a955ed_5" -> "used_in_binary_op:#A#class.9f855a338b344f4b5060d2d4a2a955ed_6" ; "used_in_binary_op:#A#class.9f855a338b344f4b5060d2d4a2a955ed_5" -> "used_in_binary_op:#A#class.9f855a338b344f4b5060d2d4a2a955ed_7" ; -"used_in_binary_op:#A#class.9f855a338b344f4b5060d2d4a2a955ed_6" [label="6: Prune (true branch) \n PRUNE(((sizeof(A) != n$15) != 0), true); [line 95]\n " shape="invhouse"] +"used_in_binary_op:#A#class.9f855a338b344f4b5060d2d4a2a955ed_6" [label="6: Prune (true branch) \n PRUNE(((sizeof(t=A) != n$15) != 0), true); [line 95]\n " shape="invhouse"] "used_in_binary_op:#A#class.9f855a338b344f4b5060d2d4a2a955ed_6" -> "used_in_binary_op:#A#class.9f855a338b344f4b5060d2d4a2a955ed_8" ; -"used_in_binary_op:#A#class.9f855a338b344f4b5060d2d4a2a955ed_7" [label="7: Prune (false branch) \n PRUNE(((sizeof(A) != n$15) == 0), false); [line 95]\n " shape="invhouse"] +"used_in_binary_op:#A#class.9f855a338b344f4b5060d2d4a2a955ed_7" [label="7: Prune (false branch) \n PRUNE(((sizeof(t=A) != n$15) == 0), false); [line 95]\n " shape="invhouse"] "used_in_binary_op:#A#class.9f855a338b344f4b5060d2d4a2a955ed_7" -> "used_in_binary_op:#A#class.9f855a338b344f4b5060d2d4a2a955ed_9" ; @@ -108,7 +108,7 @@ digraph iCFG { "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$3=_fun___objc_alloc_no_fail(sizeof(A):unsigned long) [line 62]\n " shape="box"] +"call_alloc_instance#A#instance.70a20314d55f22fb46408deb70d9aabb_3" [label="3: Call alloc \n n$3=_fun___objc_alloc_no_fail(sizeof(t=A):unsigned long) [line 62]\n " shape="box"] "call_alloc_instance#A#instance.70a20314d55f22fb46408deb70d9aabb_3" -> "call_alloc_instance#A#instance.70a20314d55f22fb46408deb70d9aabb_2" ; @@ -145,7 +145,7 @@ digraph iCFG { "t#A#instance.e31b9a7bced712626784e2860af1a31b_3" -> "t#A#instance.e31b9a7bced712626784e2860af1a31b_2" ; -"t#A#instance.e31b9a7bced712626784e2860af1a31b_4" [label="4: DeclStmt \n n$6=_fun___objc_alloc_no_fail(sizeof(B):unsigned long) [line 74]\n n$7=_fun_NSObject_init(n$6:B*) virtual [line 74]\n *&b:B*=n$7 [line 74]\n " shape="box"] +"t#A#instance.e31b9a7bced712626784e2860af1a31b_4" [label="4: DeclStmt \n n$6=_fun___objc_alloc_no_fail(sizeof(t=B):unsigned long) [line 74]\n n$7=_fun_NSObject_init(n$6:B*) virtual [line 74]\n *&b:B*=n$7 [line 74]\n " shape="box"] "t#A#instance.e31b9a7bced712626784e2860af1a31b_4" -> "t#A#instance.e31b9a7bced712626784e2860af1a31b_3" ; @@ -167,7 +167,7 @@ digraph iCFG { "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$14=_fun_NSStringFromClass(sizeof(A):unsigned long) [line 91]\n *&return:NSString*=n$14 [line 91]\n " shape="box"] +"loggerName#A#instance.36b9a42412bcf7d8d3f8397eb2bcb555_3" [label="3: Return Stmt \n n$14=_fun_NSStringFromClass(sizeof(t=A):unsigned long) [line 91]\n *&return:NSString*=n$14 [line 91]\n " shape="box"] "loggerName#A#instance.36b9a42412bcf7d8d3f8397eb2bcb555_3" -> "loggerName#A#instance.36b9a42412bcf7d8d3f8397eb2bcb555_2" ; @@ -178,7 +178,7 @@ digraph iCFG { "use_class_in_other_ways:#A#instance.cbf4e00d3f8c81248ee881a47ed7e84f_2" [label="2: Exit A_use_class_in_other_ways: \n " color=yellow style=filled] -"use_class_in_other_ways:#A#instance.cbf4e00d3f8c81248ee881a47ed7e84f_3" [label="3: Return Stmt \n n$8=*&object:B* [line 79]\n n$10=_fun_B_isC:(n$8:B*,sizeof(A):unsigned long) virtual [line 79]\n *&return:_Bool=n$10 [line 79]\n " shape="box"] +"use_class_in_other_ways:#A#instance.cbf4e00d3f8c81248ee881a47ed7e84f_3" [label="3: Return Stmt \n n$8=*&object:B* [line 79]\n n$10=_fun_B_isC:(n$8:B*,sizeof(t=A):unsigned long) virtual [line 79]\n *&return:_Bool=n$10 [line 79]\n " shape="box"] "use_class_in_other_ways:#A#instance.cbf4e00d3f8c81248ee881a47ed7e84f_3" -> "use_class_in_other_ways:#A#instance.cbf4e00d3f8c81248ee881a47ed7e84f_2" ; diff --git a/infer/tests/codetoanalyze/objc/frontend/self_static/static.m.dot b/infer/tests/codetoanalyze/objc/frontend/self_static/static.m.dot index bc02dd79d..2b0bccdc9 100644 --- a/infer/tests/codetoanalyze/objc/frontend/self_static/static.m.dot +++ b/infer/tests/codetoanalyze/objc/frontend/self_static/static.m.dot @@ -7,7 +7,7 @@ digraph iCFG { "aClassMethod#MyClass#class.889732ffd1b4632cdd7c3f47090e69c0_2" [label="2: Exit MyClass_aClassMethod \n " color=yellow style=filled] -"aClassMethod#MyClass#class.889732ffd1b4632cdd7c3f47090e69c0_3" [label="3: DeclStmt \n n$0=_fun___objc_alloc_no_fail(sizeof(MyClass):unsigned long) [line 21]\n *&myClass:MyClass*=n$0 [line 21]\n " shape="box"] +"aClassMethod#MyClass#class.889732ffd1b4632cdd7c3f47090e69c0_3" [label="3: DeclStmt \n n$0=_fun___objc_alloc_no_fail(sizeof(t=MyClass):unsigned long) [line 21]\n *&myClass:MyClass*=n$0 [line 21]\n " shape="box"] "aClassMethod#MyClass#class.889732ffd1b4632cdd7c3f47090e69c0_3" -> "aClassMethod#MyClass#class.889732ffd1b4632cdd7c3f47090e69c0_2" ; diff --git a/infer/tests/codetoanalyze/objc/frontend/subclass/main.c.dot b/infer/tests/codetoanalyze/objc/frontend/subclass/main.c.dot index 198e5282b..314ec04ce 100644 --- a/infer/tests/codetoanalyze/objc/frontend/subclass/main.c.dot +++ b/infer/tests/codetoanalyze/objc/frontend/subclass/main.c.dot @@ -11,7 +11,7 @@ digraph iCFG { "main.fad58de7366495db4650cfefac2fcd61_3" -> "main.fad58de7366495db4650cfefac2fcd61_2" ; -"main.fad58de7366495db4650cfefac2fcd61_4" [label="4: DeclStmt \n n$0=_fun___objc_alloc_no_fail(sizeof(A):unsigned long) [line 13]\n n$1=_fun_NSObject_init(n$0:A*) virtual [line 13]\n *&a:A*=n$1 [line 13]\n " shape="box"] +"main.fad58de7366495db4650cfefac2fcd61_4" [label="4: DeclStmt \n n$0=_fun___objc_alloc_no_fail(sizeof(t=A):unsigned long) [line 13]\n n$1=_fun_NSObject_init(n$0:A*) virtual [line 13]\n *&a:A*=n$1 [line 13]\n " shape="box"] "main.fad58de7366495db4650cfefac2fcd61_4" -> "main.fad58de7366495db4650cfefac2fcd61_3" ; diff --git a/infer/tests/codetoanalyze/objc/frontend/types/attributes.m.dot b/infer/tests/codetoanalyze/objc/frontend/types/attributes.m.dot index 78eda637c..7c659d658 100644 --- a/infer/tests/codetoanalyze/objc/frontend/types/attributes.m.dot +++ b/infer/tests/codetoanalyze/objc/frontend/types/attributes.m.dot @@ -31,7 +31,7 @@ digraph iCFG { "main.fad58de7366495db4650cfefac2fcd61_8" -> "main.fad58de7366495db4650cfefac2fcd61_7" ; -"main.fad58de7366495db4650cfefac2fcd61_9" [label="9: BinaryOperatorStmt: Assign \n n$9=_fun___objc_alloc_no_fail(sizeof(A):unsigned long) [line 29]\n *&aStrongRef:A*=n$9 [line 29]\n " shape="box"] +"main.fad58de7366495db4650cfefac2fcd61_9" [label="9: BinaryOperatorStmt: Assign \n n$9=_fun___objc_alloc_no_fail(sizeof(t=A):unsigned long) [line 29]\n *&aStrongRef:A*=n$9 [line 29]\n " shape="box"] "main.fad58de7366495db4650cfefac2fcd61_9" -> "main.fad58de7366495db4650cfefac2fcd61_8" ; diff --git a/infer/tests/codetoanalyze/objc/frontend/types/void_call.m.dot b/infer/tests/codetoanalyze/objc/frontend/types/void_call.m.dot index f0dcfd4fd..5188299a0 100644 --- a/infer/tests/codetoanalyze/objc/frontend/types/void_call.m.dot +++ b/infer/tests/codetoanalyze/objc/frontend/types/void_call.m.dot @@ -31,7 +31,7 @@ digraph iCFG { "main.fad58de7366495db4650cfefac2fcd61_8" -> "main.fad58de7366495db4650cfefac2fcd61_7" ; -"main.fad58de7366495db4650cfefac2fcd61_9" [label="9: DeclStmt \n n$6=_fun___objc_alloc_no_fail(sizeof(AClass):unsigned long) [line 40]\n *&o:AClass*=n$6 [line 40]\n " shape="box"] +"main.fad58de7366495db4650cfefac2fcd61_9" [label="9: DeclStmt \n n$6=_fun___objc_alloc_no_fail(sizeof(t=AClass):unsigned long) [line 40]\n *&o:AClass*=n$6 [line 40]\n " shape="box"] "main.fad58de7366495db4650cfefac2fcd61_9" -> "main.fad58de7366495db4650cfefac2fcd61_5" ; diff --git a/infer/tests/codetoanalyze/objc/frontend/vardecl/initlist.m.dot b/infer/tests/codetoanalyze/objc/frontend/vardecl/initlist.m.dot index 907c9ce49..45543b94d 100644 --- a/infer/tests/codetoanalyze/objc/frontend/vardecl/initlist.m.dot +++ b/infer/tests/codetoanalyze/objc/frontend/vardecl/initlist.m.dot @@ -1,6 +1,6 @@ /* @generated */ digraph iCFG { -"main.fad58de7366495db4650cfefac2fcd61_1" [label="1: Start main\nFormals: \nLocals: a:int[3*32][2*96] z:int \n DECLARE_LOCALS(&return,&a,&z); [line 13]\n " color=yellow style=filled] +"main.fad58de7366495db4650cfefac2fcd61_1" [label="1: Start main\nFormals: \nLocals: a:int[3*4][2*12] z:int \n DECLARE_LOCALS(&return,&a,&z); [line 13]\n " color=yellow style=filled] "main.fad58de7366495db4650cfefac2fcd61_1" -> "main.fad58de7366495db4650cfefac2fcd61_3" ; @@ -11,7 +11,7 @@ digraph iCFG { "main.fad58de7366495db4650cfefac2fcd61_3" -> "main.fad58de7366495db4650cfefac2fcd61_2" ; -"test.098f6bcd4621d373cade4e832627b4f6_1" [label="1: Start test\nFormals: \nLocals: a:C*[3*64] c2:C* c1:C* \n DECLARE_LOCALS(&return,&a,&c2,&c1); [line 22]\n " color=yellow style=filled] +"test.098f6bcd4621d373cade4e832627b4f6_1" [label="1: Start test\nFormals: \nLocals: a:C*[3*8] c2:C* c1:C* \n DECLARE_LOCALS(&return,&a,&c2,&c1); [line 22]\n " color=yellow style=filled] "test.098f6bcd4621d373cade4e832627b4f6_1" -> "test.098f6bcd4621d373cade4e832627b4f6_5" ; @@ -22,11 +22,11 @@ digraph iCFG { "test.098f6bcd4621d373cade4e832627b4f6_3" -> "test.098f6bcd4621d373cade4e832627b4f6_2" ; -"test.098f6bcd4621d373cade4e832627b4f6_4" [label="4: DeclStmt \n n$4=_fun___objc_alloc_no_fail(sizeof(C):unsigned long) [line 24]\n *&c2:C*=n$4 [line 24]\n " shape="box"] +"test.098f6bcd4621d373cade4e832627b4f6_4" [label="4: DeclStmt \n n$4=_fun___objc_alloc_no_fail(sizeof(t=C):unsigned long) [line 24]\n *&c2:C*=n$4 [line 24]\n " shape="box"] "test.098f6bcd4621d373cade4e832627b4f6_4" -> "test.098f6bcd4621d373cade4e832627b4f6_3" ; -"test.098f6bcd4621d373cade4e832627b4f6_5" [label="5: DeclStmt \n n$5=_fun___objc_alloc_no_fail(sizeof(C):unsigned long) [line 23]\n *&c1:C*=n$5 [line 23]\n " shape="box"] +"test.098f6bcd4621d373cade4e832627b4f6_5" [label="5: DeclStmt \n n$5=_fun___objc_alloc_no_fail(sizeof(t=C):unsigned long) [line 23]\n *&c1:C*=n$5 [line 23]\n " shape="box"] "test.098f6bcd4621d373cade4e832627b4f6_5" -> "test.098f6bcd4621d373cade4e832627b4f6_4" ; diff --git a/infer/tests/codetoanalyze/objc/shared/annotations/nullable_annotations.m.dot b/infer/tests/codetoanalyze/objc/shared/annotations/nullable_annotations.m.dot index b88bda417..3d091acfd 100644 --- a/infer/tests/codetoanalyze/objc/shared/annotations/nullable_annotations.m.dot +++ b/infer/tests/codetoanalyze/objc/shared/annotations/nullable_annotations.m.dot @@ -15,7 +15,7 @@ digraph iCFG { "npe_property_nullable.ba4461b16b55481ab8de5124734d2bf3_4" -> "npe_property_nullable.ba4461b16b55481ab8de5124734d2bf3_3" ; -"npe_property_nullable.ba4461b16b55481ab8de5124734d2bf3_5" [label="5: DeclStmt \n n$5=_fun___objc_alloc_no_fail(sizeof(Person):unsigned long) [line 56]\n n$6=_fun_NSObject_init(n$5:Person*) virtual [line 56]\n *&person:Person*=n$6 [line 56]\n " shape="box"] +"npe_property_nullable.ba4461b16b55481ab8de5124734d2bf3_5" [label="5: DeclStmt \n n$5=_fun___objc_alloc_no_fail(sizeof(t=Person):unsigned long) [line 56]\n n$6=_fun_NSObject_init(n$5:Person*) virtual [line 56]\n *&person:Person*=n$6 [line 56]\n " shape="box"] "npe_property_nullable.ba4461b16b55481ab8de5124734d2bf3_5" -> "npe_property_nullable.ba4461b16b55481ab8de5124734d2bf3_4" ; diff --git a/infer/tests/codetoanalyze/objc/shared/block/BlockVar.m.dot b/infer/tests/codetoanalyze/objc/shared/block/BlockVar.m.dot index 904fc35de..80f0153c7 100644 --- a/infer/tests/codetoanalyze/objc/shared/block/BlockVar.m.dot +++ b/infer/tests/codetoanalyze/objc/shared/block/BlockVar.m.dot @@ -55,7 +55,7 @@ digraph iCFG { "navigateToURLInBackground#BlockVar#class.f4e64a7a224e4dae5096c3b731a4233e_11" -> "navigateToURLInBackground#BlockVar#class.f4e64a7a224e4dae5096c3b731a4233e_10" ; -"navigateToURLInBackground#BlockVar#class.f4e64a7a224e4dae5096c3b731a4233e_12" [label="12: DeclStmt \n DECLARE_LOCALS(&__objc_anonymous_block_BlockVar_navigateToURLInBackground______1); [line 19]\n n$10=_fun___objc_alloc_no_fail(sizeof(__objc_anonymous_block_BlockVar_navigateToURLInBackground______1):unsigned long) [line 19]\n *&__objc_anonymous_block_BlockVar_navigateToURLInBackground______1:__objc_anonymous_block_BlockVar_navigateToURLInBackground______1=n$10 [line 19]\n *&addBlock:_fn_(*)=(_fun___objc_anonymous_block_BlockVar_navigateToURLInBackground______1) [line 19]\n " shape="box"] +"navigateToURLInBackground#BlockVar#class.f4e64a7a224e4dae5096c3b731a4233e_12" [label="12: DeclStmt \n DECLARE_LOCALS(&__objc_anonymous_block_BlockVar_navigateToURLInBackground______1); [line 19]\n n$10=_fun___objc_alloc_no_fail(sizeof(t=__objc_anonymous_block_BlockVar_navigateToURLInBackground______1):unsigned long) [line 19]\n *&__objc_anonymous_block_BlockVar_navigateToURLInBackground______1:__objc_anonymous_block_BlockVar_navigateToURLInBackground______1=n$10 [line 19]\n *&addBlock:_fn_(*)=(_fun___objc_anonymous_block_BlockVar_navigateToURLInBackground______1) [line 19]\n " shape="box"] "navigateToURLInBackground#BlockVar#class.f4e64a7a224e4dae5096c3b731a4233e_12" -> "navigateToURLInBackground#BlockVar#class.f4e64a7a224e4dae5096c3b731a4233e_11" ; @@ -85,7 +85,7 @@ digraph iCFG { "blockPostBad#BlockVar#instance.60292f870cad8c1a5cefdbfe4194d6f9_3" -> "blockPostBad#BlockVar#instance.60292f870cad8c1a5cefdbfe4194d6f9_2" ; -"blockPostBad#BlockVar#instance.60292f870cad8c1a5cefdbfe4194d6f9_4" [label="4: DeclStmt \n DECLARE_LOCALS(&__objc_anonymous_block_BlockVar_blockPostBad______2); [line 33]\n n$16=_fun___objc_alloc_no_fail(sizeof(__objc_anonymous_block_BlockVar_blockPostBad______2):unsigned long) [line 33]\n *&__objc_anonymous_block_BlockVar_blockPostBad______2:__objc_anonymous_block_BlockVar_blockPostBad______2=n$16 [line 33]\n n$17=*&x:int* [line 33]\n *n$16.x:int*=n$17 [line 33]\n n$14=*&x:int* [line 33]\n *&my_block:_fn_(*)=(_fun___objc_anonymous_block_BlockVar_blockPostBad______2,n$14) [line 33]\n " shape="box"] +"blockPostBad#BlockVar#instance.60292f870cad8c1a5cefdbfe4194d6f9_4" [label="4: DeclStmt \n DECLARE_LOCALS(&__objc_anonymous_block_BlockVar_blockPostBad______2); [line 33]\n n$16=_fun___objc_alloc_no_fail(sizeof(t=__objc_anonymous_block_BlockVar_blockPostBad______2):unsigned long) [line 33]\n *&__objc_anonymous_block_BlockVar_blockPostBad______2:__objc_anonymous_block_BlockVar_blockPostBad______2=n$16 [line 33]\n n$17=*&x:int* [line 33]\n *n$16.x:int*=n$17 [line 33]\n n$14=*&x:int* [line 33]\n *&my_block:_fn_(*)=(_fun___objc_anonymous_block_BlockVar_blockPostBad______2,n$14) [line 33]\n " shape="box"] "blockPostBad#BlockVar#instance.60292f870cad8c1a5cefdbfe4194d6f9_4" -> "blockPostBad#BlockVar#instance.60292f870cad8c1a5cefdbfe4194d6f9_3" ; @@ -104,7 +104,7 @@ digraph iCFG { "blockPostOk#BlockVar#instance.1bb64a946f8b169b31996644931ed82d_3" -> "blockPostOk#BlockVar#instance.1bb64a946f8b169b31996644931ed82d_2" ; -"blockPostOk#BlockVar#instance.1bb64a946f8b169b31996644931ed82d_4" [label="4: DeclStmt \n DECLARE_LOCALS(&__objc_anonymous_block_BlockVar_blockPostOk______3); [line 42]\n n$23=_fun___objc_alloc_no_fail(sizeof(__objc_anonymous_block_BlockVar_blockPostOk______3):unsigned long) [line 42]\n *&__objc_anonymous_block_BlockVar_blockPostOk______3:__objc_anonymous_block_BlockVar_blockPostOk______3=n$23 [line 42]\n n$24=*&x:int* [line 42]\n *n$23.x:int*=n$24 [line 42]\n n$21=*&x:int* [line 42]\n *&my_block:_fn_(*)=(_fun___objc_anonymous_block_BlockVar_blockPostOk______3,n$21) [line 42]\n " shape="box"] +"blockPostOk#BlockVar#instance.1bb64a946f8b169b31996644931ed82d_4" [label="4: DeclStmt \n DECLARE_LOCALS(&__objc_anonymous_block_BlockVar_blockPostOk______3); [line 42]\n n$23=_fun___objc_alloc_no_fail(sizeof(t=__objc_anonymous_block_BlockVar_blockPostOk______3):unsigned long) [line 42]\n *&__objc_anonymous_block_BlockVar_blockPostOk______3:__objc_anonymous_block_BlockVar_blockPostOk______3=n$23 [line 42]\n n$24=*&x:int* [line 42]\n *n$23.x:int*=n$24 [line 42]\n n$21=*&x:int* [line 42]\n *&my_block:_fn_(*)=(_fun___objc_anonymous_block_BlockVar_blockPostOk______3,n$21) [line 42]\n " shape="box"] "blockPostOk#BlockVar#instance.1bb64a946f8b169b31996644931ed82d_4" -> "blockPostOk#BlockVar#instance.1bb64a946f8b169b31996644931ed82d_3" ; @@ -127,7 +127,7 @@ digraph iCFG { "capturedNullDeref#BlockVar#instance.48c44f7ae26caf7a1ac522523ebac894_3" -> "capturedNullDeref#BlockVar#instance.48c44f7ae26caf7a1ac522523ebac894_2" ; -"capturedNullDeref#BlockVar#instance.48c44f7ae26caf7a1ac522523ebac894_4" [label="4: DeclStmt \n DECLARE_LOCALS(&__objc_anonymous_block_BlockVar_capturedNullDeref______4); [line 50]\n n$30=_fun___objc_alloc_no_fail(sizeof(__objc_anonymous_block_BlockVar_capturedNullDeref______4):unsigned long) [line 50]\n *&__objc_anonymous_block_BlockVar_capturedNullDeref______4:__objc_anonymous_block_BlockVar_capturedNullDeref______4=n$30 [line 50]\n n$31=*&x:int* [line 50]\n *n$30.x:int*=n$31 [line 50]\n n$27=*&x:int* [line 50]\n *&my_block:_fn_(*)=(_fun___objc_anonymous_block_BlockVar_capturedNullDeref______4,n$27) [line 50]\n " shape="box"] +"capturedNullDeref#BlockVar#instance.48c44f7ae26caf7a1ac522523ebac894_4" [label="4: DeclStmt \n DECLARE_LOCALS(&__objc_anonymous_block_BlockVar_capturedNullDeref______4); [line 50]\n n$30=_fun___objc_alloc_no_fail(sizeof(t=__objc_anonymous_block_BlockVar_capturedNullDeref______4):unsigned long) [line 50]\n *&__objc_anonymous_block_BlockVar_capturedNullDeref______4:__objc_anonymous_block_BlockVar_capturedNullDeref______4=n$30 [line 50]\n n$31=*&x:int* [line 50]\n *n$30.x:int*=n$31 [line 50]\n n$27=*&x:int* [line 50]\n *&my_block:_fn_(*)=(_fun___objc_anonymous_block_BlockVar_capturedNullDeref______4,n$27) [line 50]\n " shape="box"] "capturedNullDeref#BlockVar#instance.48c44f7ae26caf7a1ac522523ebac894_4" -> "capturedNullDeref#BlockVar#instance.48c44f7ae26caf7a1ac522523ebac894_3" ; @@ -150,7 +150,7 @@ digraph iCFG { "capturedNoNullDeref#BlockVar#instance.ebe646baaabdc58144a5916780ee8c76_4" -> "capturedNoNullDeref#BlockVar#instance.ebe646baaabdc58144a5916780ee8c76_3" ; -"capturedNoNullDeref#BlockVar#instance.ebe646baaabdc58144a5916780ee8c76_5" [label="5: DeclStmt \n DECLARE_LOCALS(&__objc_anonymous_block_BlockVar_capturedNoNullDeref______5); [line 59]\n n$37=_fun___objc_alloc_no_fail(sizeof(__objc_anonymous_block_BlockVar_capturedNoNullDeref______5):unsigned long) [line 59]\n *&__objc_anonymous_block_BlockVar_capturedNoNullDeref______5:__objc_anonymous_block_BlockVar_capturedNoNullDeref______5=n$37 [line 59]\n n$38=*&x:int* [line 59]\n *n$37.x:int*=n$38 [line 59]\n n$34=*&x:int* [line 59]\n *&my_block:_fn_(*)=(_fun___objc_anonymous_block_BlockVar_capturedNoNullDeref______5,n$34) [line 59]\n " shape="box"] +"capturedNoNullDeref#BlockVar#instance.ebe646baaabdc58144a5916780ee8c76_5" [label="5: DeclStmt \n DECLARE_LOCALS(&__objc_anonymous_block_BlockVar_capturedNoNullDeref______5); [line 59]\n n$37=_fun___objc_alloc_no_fail(sizeof(t=__objc_anonymous_block_BlockVar_capturedNoNullDeref______5):unsigned long) [line 59]\n *&__objc_anonymous_block_BlockVar_capturedNoNullDeref______5:__objc_anonymous_block_BlockVar_capturedNoNullDeref______5=n$37 [line 59]\n n$38=*&x:int* [line 59]\n *n$37.x:int*=n$38 [line 59]\n n$34=*&x:int* [line 59]\n *&my_block:_fn_(*)=(_fun___objc_anonymous_block_BlockVar_capturedNoNullDeref______5,n$34) [line 59]\n " shape="box"] "capturedNoNullDeref#BlockVar#instance.ebe646baaabdc58144a5916780ee8c76_5" -> "capturedNoNullDeref#BlockVar#instance.ebe646baaabdc58144a5916780ee8c76_4" ; diff --git a/infer/tests/codetoanalyze/objc/shared/block/block-it.m.dot b/infer/tests/codetoanalyze/objc/shared/block/block-it.m.dot index d4a4933dd..8c57dafae 100644 --- a/infer/tests/codetoanalyze/objc/shared/block/block-it.m.dot +++ b/infer/tests/codetoanalyze/objc/shared/block/block-it.m.dot @@ -121,11 +121,11 @@ digraph iCFG { "array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_16" -> "array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_5" ; -"array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_17" [label="17: DeclStmt \n n$18=_fun_malloc_no_fail(sizeof(signed char1):signed char) [line 21]\n *&stop:_Bool*=n$18 [line 21]\n " shape="box"] +"array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_17" [label="17: DeclStmt \n n$18=_fun_malloc_no_fail(sizeof(t=signed char;nbytes=1):signed char) [line 21]\n *&stop:_Bool*=n$18 [line 21]\n " shape="box"] "array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_17" -> "array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_16" ; -"array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_18" [label="18: DeclStmt \n DECLARE_LOCALS(&__objc_anonymous_block_MyBlock_array______1); [line 21]\n n$21=_fun___objc_alloc_no_fail(sizeof(__objc_anonymous_block_MyBlock_array______1):unsigned long) [line 21]\n *&__objc_anonymous_block_MyBlock_array______1:__objc_anonymous_block_MyBlock_array______1=n$21 [line 21]\n *&0$?%__sil_tmp__objc_anonymous_block_MyBlock_array______1n$0:_fn_(*)=(_fun___objc_anonymous_block_MyBlock_array______1) [line 21]\n " shape="box"] +"array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_18" [label="18: DeclStmt \n DECLARE_LOCALS(&__objc_anonymous_block_MyBlock_array______1); [line 21]\n n$21=_fun___objc_alloc_no_fail(sizeof(t=__objc_anonymous_block_MyBlock_array______1):unsigned long) [line 21]\n *&__objc_anonymous_block_MyBlock_array______1:__objc_anonymous_block_MyBlock_array______1=n$21 [line 21]\n *&0$?%__sil_tmp__objc_anonymous_block_MyBlock_array______1n$0:_fn_(*)=(_fun___objc_anonymous_block_MyBlock_array______1) [line 21]\n " shape="box"] "array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_18" -> "array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_17" ; @@ -133,7 +133,7 @@ digraph iCFG { "array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_19" -> "array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_18" ; -"array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_20" [label="20: DeclStmt \n n$23=_fun___objc_alloc_no_fail(sizeof(NSArray):unsigned long) [line 20]\n n$24=_fun_NSArray_init(n$23:NSArray*) virtual [line 20]\n *&a:NSArray*=n$24 [line 20]\n " shape="box"] +"array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_20" [label="20: DeclStmt \n n$23=_fun___objc_alloc_no_fail(sizeof(t=NSArray):unsigned long) [line 20]\n n$24=_fun_NSArray_init(n$23:NSArray*) virtual [line 20]\n *&a:NSArray*=n$24 [line 20]\n " shape="box"] "array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_20" -> "array#MyBlock#instance.8be6e5b5e968d186440e1931c9eb40de_19" ; @@ -202,11 +202,11 @@ digraph iCFG { "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_16" -> "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_5" ; -"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_17" [label="17: DeclStmt \n n$40=_fun_malloc_no_fail(sizeof(_Bool8):_Bool) [line 48]\n *&stop:_Bool*=n$40 [line 48]\n " shape="box"] +"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_17" [label="17: DeclStmt \n n$40=_fun_malloc_no_fail(sizeof(t=_Bool;nbytes=1):_Bool) [line 48]\n *&stop:_Bool*=n$40 [line 48]\n " shape="box"] "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_17" -> "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_16" ; -"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_18" [label="18: DeclStmt \n DECLARE_LOCALS(&__objc_anonymous_block_MyBlock_array_trans______2); [line 40]\n n$43=_fun___objc_alloc_no_fail(sizeof(__objc_anonymous_block_MyBlock_array_trans______2):unsigned long) [line 40]\n *&__objc_anonymous_block_MyBlock_array_trans______2:__objc_anonymous_block_MyBlock_array_trans______2=n$43 [line 40]\n *&enumerateObjectsUsingBlock:_fn_(*)=(_fun___objc_anonymous_block_MyBlock_array_trans______2) [line 39]\n " shape="box"] +"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_18" [label="18: DeclStmt \n DECLARE_LOCALS(&__objc_anonymous_block_MyBlock_array_trans______2); [line 40]\n n$43=_fun___objc_alloc_no_fail(sizeof(t=__objc_anonymous_block_MyBlock_array_trans______2):unsigned long) [line 40]\n *&__objc_anonymous_block_MyBlock_array_trans______2:__objc_anonymous_block_MyBlock_array_trans______2=n$43 [line 40]\n *&enumerateObjectsUsingBlock:_fn_(*)=(_fun___objc_anonymous_block_MyBlock_array_trans______2) [line 39]\n " shape="box"] "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_18" -> "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_17" ; @@ -214,7 +214,7 @@ digraph iCFG { "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_19" -> "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_18" ; -"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_20" [label="20: DeclStmt \n n$45=_fun___objc_alloc_no_fail(sizeof(NSArray):unsigned long) [line 34]\n n$46=_fun_NSArray_init(n$45:NSArray*) virtual [line 34]\n *&a:NSArray*=n$46 [line 34]\n " shape="box"] +"array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_20" [label="20: DeclStmt \n n$45=_fun___objc_alloc_no_fail(sizeof(t=NSArray):unsigned long) [line 34]\n n$46=_fun_NSArray_init(n$45:NSArray*) virtual [line 34]\n *&a:NSArray*=n$46 [line 34]\n " shape="box"] "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_20" -> "array_trans#MyBlock#instance.13289a590560d0628a3ae5174e716a32_19" ; diff --git a/infer/tests/codetoanalyze/objc/shared/block/block.m.dot b/infer/tests/codetoanalyze/objc/shared/block/block.m.dot index ee8229933..f9a9f5e5b 100644 --- a/infer/tests/codetoanalyze/objc/shared/block/block.m.dot +++ b/infer/tests/codetoanalyze/objc/shared/block/block.m.dot @@ -41,7 +41,7 @@ digraph iCFG { "main1.38f534a9576db7ec6ebcbca8c111f942_5" -> "main1.38f534a9576db7ec6ebcbca8c111f942_4" ; -"main1.38f534a9576db7ec6ebcbca8c111f942_6" [label="6: BinaryOperatorStmt: Assign \n DECLARE_LOCALS(&__objc_anonymous_block_main1______1); [line 34]\n n$7=_fun___objc_alloc_no_fail(sizeof(__objc_anonymous_block_main1______1):unsigned long) [line 34]\n *&__objc_anonymous_block_main1______1:__objc_anonymous_block_main1______1=n$7 [line 34]\n n$8=*&#GB$main1_s:int [line 34]\n *n$7.main1_s:int=n$8 [line 34]\n *&addblock:_fn_(*)=(_fun___objc_anonymous_block_main1______1) [line 34]\n " shape="box"] +"main1.38f534a9576db7ec6ebcbca8c111f942_6" [label="6: BinaryOperatorStmt: Assign \n DECLARE_LOCALS(&__objc_anonymous_block_main1______1); [line 34]\n n$7=_fun___objc_alloc_no_fail(sizeof(t=__objc_anonymous_block_main1______1):unsigned long) [line 34]\n *&__objc_anonymous_block_main1______1:__objc_anonymous_block_main1______1=n$7 [line 34]\n n$8=*&#GB$main1_s:int [line 34]\n *n$7.main1_s:int=n$8 [line 34]\n *&addblock:_fn_(*)=(_fun___objc_anonymous_block_main1______1) [line 34]\n " shape="box"] "main1.38f534a9576db7ec6ebcbca8c111f942_6" -> "main1.38f534a9576db7ec6ebcbca8c111f942_5" ; @@ -49,7 +49,7 @@ digraph iCFG { "main1.38f534a9576db7ec6ebcbca8c111f942_7" -> "main1.38f534a9576db7ec6ebcbca8c111f942_6" ; -"main1.38f534a9576db7ec6ebcbca8c111f942_8" [label="8: BinaryOperatorStmt: Assign \n DECLARE_LOCALS(&__objc_anonymous_block_main1______2); [line 18]\n n$27=_fun___objc_alloc_no_fail(sizeof(__objc_anonymous_block_main1______2):unsigned long) [line 18]\n *&__objc_anonymous_block_main1______2:__objc_anonymous_block_main1______2=n$27 [line 18]\n n$28=*&x:int [line 18]\n *n$27.x:int=n$28 [line 18]\n n$11=*&x:int [line 18]\n *&addblock:_fn_(*)=(_fun___objc_anonymous_block_main1______2,n$11) [line 18]\n " shape="box"] +"main1.38f534a9576db7ec6ebcbca8c111f942_8" [label="8: BinaryOperatorStmt: Assign \n DECLARE_LOCALS(&__objc_anonymous_block_main1______2); [line 18]\n n$27=_fun___objc_alloc_no_fail(sizeof(t=__objc_anonymous_block_main1______2):unsigned long) [line 18]\n *&__objc_anonymous_block_main1______2:__objc_anonymous_block_main1______2=n$27 [line 18]\n n$28=*&x:int [line 18]\n *n$27.x:int=n$28 [line 18]\n n$11=*&x:int [line 18]\n *&addblock:_fn_(*)=(_fun___objc_anonymous_block_main1______2,n$11) [line 18]\n " shape="box"] "main1.38f534a9576db7ec6ebcbca8c111f942_8" -> "main1.38f534a9576db7ec6ebcbca8c111f942_7" ; @@ -76,7 +76,7 @@ digraph iCFG { "__objc_anonymous_block_main1______2.5623c8c0e39082421999af7ffad7371b_4" -> "__objc_anonymous_block_main1______2.5623c8c0e39082421999af7ffad7371b_3" ; -"__objc_anonymous_block_main1______2.5623c8c0e39082421999af7ffad7371b_5" [label="5: BinaryOperatorStmt: Assign \n DECLARE_LOCALS(&__objc_anonymous_block___objc_anonymous_block_main1______2______3); [line 24]\n n$23=_fun___objc_alloc_no_fail(sizeof(__objc_anonymous_block___objc_anonymous_block_main1______2______3):unsigned long) [line 24]\n *&__objc_anonymous_block___objc_anonymous_block_main1______2______3:__objc_anonymous_block___objc_anonymous_block_main1______2______3=n$23 [line 24]\n n$24=*&x:int [line 24]\n n$25=*&bla:int [line 24]\n n$26=*&#GB$main1_s:int [line 24]\n *n$23.x:int=n$24 [line 24]\n *n$23.bla:int=n$25 [line 24]\n *n$23.main1_s:int=n$26 [line 24]\n n$17=*&x:int [line 24]\n n$18=*&bla:int [line 24]\n *&addblock2:_fn_(*)=(_fun___objc_anonymous_block___objc_anonymous_block_main1______2______3,n$17,n$18) [line 24]\n " shape="box"] +"__objc_anonymous_block_main1______2.5623c8c0e39082421999af7ffad7371b_5" [label="5: BinaryOperatorStmt: Assign \n DECLARE_LOCALS(&__objc_anonymous_block___objc_anonymous_block_main1______2______3); [line 24]\n n$23=_fun___objc_alloc_no_fail(sizeof(t=__objc_anonymous_block___objc_anonymous_block_main1______2______3):unsigned long) [line 24]\n *&__objc_anonymous_block___objc_anonymous_block_main1______2______3:__objc_anonymous_block___objc_anonymous_block_main1______2______3=n$23 [line 24]\n n$24=*&x:int [line 24]\n n$25=*&bla:int [line 24]\n n$26=*&#GB$main1_s:int [line 24]\n *n$23.x:int=n$24 [line 24]\n *n$23.bla:int=n$25 [line 24]\n *n$23.main1_s:int=n$26 [line 24]\n n$17=*&x:int [line 24]\n n$18=*&bla:int [line 24]\n *&addblock2:_fn_(*)=(_fun___objc_anonymous_block___objc_anonymous_block_main1______2______3,n$17,n$18) [line 24]\n " shape="box"] "__objc_anonymous_block_main1______2.5623c8c0e39082421999af7ffad7371b_5" -> "__objc_anonymous_block_main1______2.5623c8c0e39082421999af7ffad7371b_4" ; diff --git a/infer/tests/codetoanalyze/objc/shared/block/block_no_args.m.dot b/infer/tests/codetoanalyze/objc/shared/block/block_no_args.m.dot index 61dda9f8c..53ac6f615 100644 --- a/infer/tests/codetoanalyze/objc/shared/block/block_no_args.m.dot +++ b/infer/tests/codetoanalyze/objc/shared/block/block_no_args.m.dot @@ -44,7 +44,7 @@ digraph iCFG { "m#My_manager#instance.e773f849d062cb9801497b62f5c98f5e_11" -> "m#My_manager#instance.e773f849d062cb9801497b62f5c98f5e_10" ; -"m#My_manager#instance.e773f849d062cb9801497b62f5c98f5e_12" [label="12: BinaryOperatorStmt: Assign \n DECLARE_LOCALS(&__objc_anonymous_block_My_manager_m______1); [line 25]\n n$7=_fun___objc_alloc_no_fail(sizeof(__objc_anonymous_block_My_manager_m______1):unsigned long) [line 25]\n *&__objc_anonymous_block_My_manager_m______1:__objc_anonymous_block_My_manager_m______1=n$7 [line 25]\n n$8=*&z:int [line 25]\n n$9=*&#GB$g:int [line 25]\n *n$7.z:int=n$8 [line 25]\n *n$7.g:int=n$9 [line 25]\n n$5=*&z:int [line 25]\n *&b:_fn_(*)=(_fun___objc_anonymous_block_My_manager_m______1,n$5) [line 25]\n " shape="box"] +"m#My_manager#instance.e773f849d062cb9801497b62f5c98f5e_12" [label="12: BinaryOperatorStmt: Assign \n DECLARE_LOCALS(&__objc_anonymous_block_My_manager_m______1); [line 25]\n n$7=_fun___objc_alloc_no_fail(sizeof(t=__objc_anonymous_block_My_manager_m______1):unsigned long) [line 25]\n *&__objc_anonymous_block_My_manager_m______1:__objc_anonymous_block_My_manager_m______1=n$7 [line 25]\n n$8=*&z:int [line 25]\n n$9=*&#GB$g:int [line 25]\n *n$7.z:int=n$8 [line 25]\n *n$7.g:int=n$9 [line 25]\n n$5=*&z:int [line 25]\n *&b:_fn_(*)=(_fun___objc_anonymous_block_My_manager_m______1,n$5) [line 25]\n " shape="box"] "m#My_manager#instance.e773f849d062cb9801497b62f5c98f5e_12" -> "m#My_manager#instance.e773f849d062cb9801497b62f5c98f5e_11" ; diff --git a/infer/tests/codetoanalyze/objc/shared/block/block_release.m.dot b/infer/tests/codetoanalyze/objc/shared/block/block_release.m.dot index d6a680272..b57f78ba4 100644 --- a/infer/tests/codetoanalyze/objc/shared/block/block_release.m.dot +++ b/infer/tests/codetoanalyze/objc/shared/block/block_release.m.dot @@ -32,7 +32,7 @@ digraph iCFG { "blockReleaseTODO#My_manager#instance.8c1d633cf596e86a307167d9425628a8_8" -> "blockReleaseTODO#My_manager#instance.8c1d633cf596e86a307167d9425628a8_5" ; "blockReleaseTODO#My_manager#instance.8c1d633cf596e86a307167d9425628a8_8" -> "blockReleaseTODO#My_manager#instance.8c1d633cf596e86a307167d9425628a8_6" ; -"blockReleaseTODO#My_manager#instance.8c1d633cf596e86a307167d9425628a8_9" [label="9: BinaryOperatorStmt: Assign \n DECLARE_LOCALS(&__objc_anonymous_block_My_manager_blockReleaseTODO______1); [line 25]\n n$8=_fun___objc_alloc_no_fail(sizeof(__objc_anonymous_block_My_manager_blockReleaseTODO______1):unsigned long) [line 25]\n *&__objc_anonymous_block_My_manager_blockReleaseTODO______1:__objc_anonymous_block_My_manager_blockReleaseTODO______1=n$8 [line 25]\n n$9=*&newImage:CGImage* [line 25]\n *n$8.newImage:CGImage*=n$9 [line 25]\n n$5=*&newImage:CGImage* [line 25]\n *&b:_fn_(*)=(_fun___objc_anonymous_block_My_manager_blockReleaseTODO______1,n$5) [line 25]\n " shape="box"] +"blockReleaseTODO#My_manager#instance.8c1d633cf596e86a307167d9425628a8_9" [label="9: BinaryOperatorStmt: Assign \n DECLARE_LOCALS(&__objc_anonymous_block_My_manager_blockReleaseTODO______1); [line 25]\n n$8=_fun___objc_alloc_no_fail(sizeof(t=__objc_anonymous_block_My_manager_blockReleaseTODO______1):unsigned long) [line 25]\n *&__objc_anonymous_block_My_manager_blockReleaseTODO______1:__objc_anonymous_block_My_manager_blockReleaseTODO______1=n$8 [line 25]\n n$9=*&newImage:CGImage* [line 25]\n *n$8.newImage:CGImage*=n$9 [line 25]\n n$5=*&newImage:CGImage* [line 25]\n *&b:_fn_(*)=(_fun___objc_anonymous_block_My_manager_blockReleaseTODO______1,n$5) [line 25]\n " shape="box"] "blockReleaseTODO#My_manager#instance.8c1d633cf596e86a307167d9425628a8_9" -> "blockReleaseTODO#My_manager#instance.8c1d633cf596e86a307167d9425628a8_8" ; diff --git a/infer/tests/codetoanalyze/objc/shared/block/dispatch.m.dot b/infer/tests/codetoanalyze/objc/shared/block/dispatch.m.dot index c9817f478..090ce0344 100644 --- a/infer/tests/codetoanalyze/objc/shared/block/dispatch.m.dot +++ b/infer/tests/codetoanalyze/objc/shared/block/dispatch.m.dot @@ -11,7 +11,7 @@ digraph iCFG { "sharedInstance#DispatchA#class.8992c6086d1ce5c225093940f62386ac_3" -> "sharedInstance#DispatchA#class.8992c6086d1ce5c225093940f62386ac_2" ; -"sharedInstance#DispatchA#class.8992c6086d1ce5c225093940f62386ac_4" [label="4: Call (_fun___objc_anonymous_block_DispatchA_sharedInstance______1) \n DECLARE_LOCALS(&__objc_anonymous_block_DispatchA_sharedInstance______1); [line 30]\n n$4=_fun___objc_alloc_no_fail(sizeof(__objc_anonymous_block_DispatchA_sharedInstance______1):unsigned long) [line 30]\n *&__objc_anonymous_block_DispatchA_sharedInstance______1:__objc_anonymous_block_DispatchA_sharedInstance______1=n$4 [line 30]\n n$5=*&#GB$DispatchA_sharedInstance_sharedInstance:objc_object* [line 30]\n *n$4.DispatchA_sharedInstance_sharedInstance:objc_object*=n$5 [line 30]\n n$6=(_fun___objc_anonymous_block_DispatchA_sharedInstance______1)() [line 30]\n " shape="box"] +"sharedInstance#DispatchA#class.8992c6086d1ce5c225093940f62386ac_4" [label="4: Call (_fun___objc_anonymous_block_DispatchA_sharedInstance______1) \n DECLARE_LOCALS(&__objc_anonymous_block_DispatchA_sharedInstance______1); [line 30]\n n$4=_fun___objc_alloc_no_fail(sizeof(t=__objc_anonymous_block_DispatchA_sharedInstance______1):unsigned long) [line 30]\n *&__objc_anonymous_block_DispatchA_sharedInstance______1:__objc_anonymous_block_DispatchA_sharedInstance______1=n$4 [line 30]\n n$5=*&#GB$DispatchA_sharedInstance_sharedInstance:objc_object* [line 30]\n *n$4.DispatchA_sharedInstance_sharedInstance:objc_object*=n$5 [line 30]\n n$6=(_fun___objc_anonymous_block_DispatchA_sharedInstance______1)() [line 30]\n " shape="box"] "sharedInstance#DispatchA#class.8992c6086d1ce5c225093940f62386ac_4" -> "sharedInstance#DispatchA#class.8992c6086d1ce5c225093940f62386ac_3" ; @@ -22,7 +22,7 @@ digraph iCFG { "__objc_anonymous_block_DispatchA_sharedInstance______1.4a2e89fcdf390871f5277dca0d16c43b_2" [label="2: Exit __objc_anonymous_block_DispatchA_sharedInstance______1 \n " color=yellow style=filled] -"__objc_anonymous_block_DispatchA_sharedInstance______1.4a2e89fcdf390871f5277dca0d16c43b_3" [label="3: BinaryOperatorStmt: Assign \n n$2=_fun___objc_alloc_no_fail(sizeof(DispatchA):unsigned long) [line 31]\n n$3=_fun_DispatchA_init(n$2:DispatchA*) virtual [line 31]\n *&#GB$DispatchA_sharedInstance_sharedInstance:objc_object*=n$3 [line 31]\n " shape="box"] +"__objc_anonymous_block_DispatchA_sharedInstance______1.4a2e89fcdf390871f5277dca0d16c43b_3" [label="3: BinaryOperatorStmt: Assign \n n$2=_fun___objc_alloc_no_fail(sizeof(t=DispatchA):unsigned long) [line 31]\n n$3=_fun_DispatchA_init(n$2:DispatchA*) virtual [line 31]\n *&#GB$DispatchA_sharedInstance_sharedInstance:objc_object*=n$3 [line 31]\n " shape="box"] "__objc_anonymous_block_DispatchA_sharedInstance______1.4a2e89fcdf390871f5277dca0d16c43b_3" -> "__objc_anonymous_block_DispatchA_sharedInstance______1.4a2e89fcdf390871f5277dca0d16c43b_2" ; @@ -41,7 +41,7 @@ digraph iCFG { "trans#DispatchA#class.23f9d908a87deca79c235bc76ca6e941_4" -> "trans#DispatchA#class.23f9d908a87deca79c235bc76ca6e941_3" ; -"trans#DispatchA#class.23f9d908a87deca79c235bc76ca6e941_5" [label="5: DeclStmt \n DECLARE_LOCALS(&__objc_anonymous_block_DispatchA_trans______2); [line 38]\n n$11=_fun___objc_alloc_no_fail(sizeof(__objc_anonymous_block_DispatchA_trans______2):unsigned long) [line 38]\n *&__objc_anonymous_block_DispatchA_trans______2:__objc_anonymous_block_DispatchA_trans______2=n$11 [line 38]\n n$12=*&#GB$DispatchA_trans_sharedInstance:objc_object* [line 38]\n *n$11.DispatchA_trans_sharedInstance:objc_object*=n$12 [line 38]\n *&dummy_block:_fn_(*)=(_fun___objc_anonymous_block_DispatchA_trans______2) [line 38]\n " shape="box"] +"trans#DispatchA#class.23f9d908a87deca79c235bc76ca6e941_5" [label="5: DeclStmt \n DECLARE_LOCALS(&__objc_anonymous_block_DispatchA_trans______2); [line 38]\n n$11=_fun___objc_alloc_no_fail(sizeof(t=__objc_anonymous_block_DispatchA_trans______2):unsigned long) [line 38]\n *&__objc_anonymous_block_DispatchA_trans______2:__objc_anonymous_block_DispatchA_trans______2=n$11 [line 38]\n n$12=*&#GB$DispatchA_trans_sharedInstance:objc_object* [line 38]\n *n$11.DispatchA_trans_sharedInstance:objc_object*=n$12 [line 38]\n *&dummy_block:_fn_(*)=(_fun___objc_anonymous_block_DispatchA_trans______2) [line 38]\n " shape="box"] "trans#DispatchA#class.23f9d908a87deca79c235bc76ca6e941_5" -> "trans#DispatchA#class.23f9d908a87deca79c235bc76ca6e941_4" ; @@ -52,7 +52,7 @@ digraph iCFG { "__objc_anonymous_block_DispatchA_trans______2.8ca180fe9a17b86cb599eced71242770_2" [label="2: Exit __objc_anonymous_block_DispatchA_trans______2 \n " color=yellow style=filled] -"__objc_anonymous_block_DispatchA_trans______2.8ca180fe9a17b86cb599eced71242770_3" [label="3: BinaryOperatorStmt: Assign \n n$9=_fun___objc_alloc_no_fail(sizeof(DispatchA):unsigned long) [line 39]\n n$10=_fun_DispatchA_init(n$9:DispatchA*) virtual [line 39]\n *&#GB$DispatchA_trans_sharedInstance:objc_object*=n$10 [line 39]\n " shape="box"] +"__objc_anonymous_block_DispatchA_trans______2.8ca180fe9a17b86cb599eced71242770_3" [label="3: BinaryOperatorStmt: Assign \n n$9=_fun___objc_alloc_no_fail(sizeof(t=DispatchA):unsigned long) [line 39]\n n$10=_fun_DispatchA_init(n$9:DispatchA*) virtual [line 39]\n *&#GB$DispatchA_trans_sharedInstance:objc_object*=n$10 [line 39]\n " shape="box"] "__objc_anonymous_block_DispatchA_trans______2.8ca180fe9a17b86cb599eced71242770_3" -> "__objc_anonymous_block_DispatchA_trans______2.8ca180fe9a17b86cb599eced71242770_2" ; @@ -71,7 +71,7 @@ digraph iCFG { "dispatch_a_block_variable#DispatchA#class.3cc12dd22127281b8293b7c046d21bb2_4" -> "dispatch_a_block_variable#DispatchA#class.3cc12dd22127281b8293b7c046d21bb2_3" ; -"dispatch_a_block_variable#DispatchA#class.3cc12dd22127281b8293b7c046d21bb2_5" [label="5: DeclStmt \n DECLARE_LOCALS(&__objc_anonymous_block_DispatchA_dispatch_a_block_variable______3); [line 47]\n n$18=_fun___objc_alloc_no_fail(sizeof(__objc_anonymous_block_DispatchA_dispatch_a_block_variable______3):unsigned long) [line 47]\n *&__objc_anonymous_block_DispatchA_dispatch_a_block_variable______3:__objc_anonymous_block_DispatchA_dispatch_a_block_variable______3=n$18 [line 47]\n n$19=*&#GB$DispatchA_dispatch_a_block_variable_static_storage__:objc_object* [line 47]\n *n$18.DispatchA_dispatch_a_block_variable_static_storage__:objc_object*=n$19 [line 47]\n *&initialization_block__:_fn_(*)=(_fun___objc_anonymous_block_DispatchA_dispatch_a_block_variable______3) [line 47]\n " shape="box"] +"dispatch_a_block_variable#DispatchA#class.3cc12dd22127281b8293b7c046d21bb2_5" [label="5: DeclStmt \n DECLARE_LOCALS(&__objc_anonymous_block_DispatchA_dispatch_a_block_variable______3); [line 47]\n n$18=_fun___objc_alloc_no_fail(sizeof(t=__objc_anonymous_block_DispatchA_dispatch_a_block_variable______3):unsigned long) [line 47]\n *&__objc_anonymous_block_DispatchA_dispatch_a_block_variable______3:__objc_anonymous_block_DispatchA_dispatch_a_block_variable______3=n$18 [line 47]\n n$19=*&#GB$DispatchA_dispatch_a_block_variable_static_storage__:objc_object* [line 47]\n *n$18.DispatchA_dispatch_a_block_variable_static_storage__:objc_object*=n$19 [line 47]\n *&initialization_block__:_fn_(*)=(_fun___objc_anonymous_block_DispatchA_dispatch_a_block_variable______3) [line 47]\n " shape="box"] "dispatch_a_block_variable#DispatchA#class.3cc12dd22127281b8293b7c046d21bb2_5" -> "dispatch_a_block_variable#DispatchA#class.3cc12dd22127281b8293b7c046d21bb2_4" ; @@ -82,7 +82,7 @@ digraph iCFG { "__objc_anonymous_block_DispatchA_dispatch_a_block_variable______3.9c4c8eed871dc8fb1938edcd3d194533_2" [label="2: Exit __objc_anonymous_block_DispatchA_dispatch_a_block_variable______3 \n " color=yellow style=filled] -"__objc_anonymous_block_DispatchA_dispatch_a_block_variable______3.9c4c8eed871dc8fb1938edcd3d194533_3" [label="3: BinaryOperatorStmt: Assign \n n$16=_fun___objc_alloc_no_fail(sizeof(DispatchA):unsigned long) [line 48]\n n$17=_fun_DispatchA_init(n$16:DispatchA*) virtual [line 48]\n *&#GB$DispatchA_dispatch_a_block_variable_static_storage__:objc_object*=n$17 [line 48]\n " shape="box"] +"__objc_anonymous_block_DispatchA_dispatch_a_block_variable______3.9c4c8eed871dc8fb1938edcd3d194533_3" [label="3: BinaryOperatorStmt: Assign \n n$16=_fun___objc_alloc_no_fail(sizeof(t=DispatchA):unsigned long) [line 48]\n n$17=_fun_DispatchA_init(n$16:DispatchA*) virtual [line 48]\n *&#GB$DispatchA_dispatch_a_block_variable_static_storage__:objc_object*=n$17 [line 48]\n " shape="box"] "__objc_anonymous_block_DispatchA_dispatch_a_block_variable______3.9c4c8eed871dc8fb1938edcd3d194533_3" -> "__objc_anonymous_block_DispatchA_dispatch_a_block_variable______3.9c4c8eed871dc8fb1938edcd3d194533_2" ; @@ -101,7 +101,7 @@ digraph iCFG { "dispatch_a_block_variable_from_macro#DispatchA#class.92567a38d5ab3cf637f72030b1097441_4" -> "dispatch_a_block_variable_from_macro#DispatchA#class.92567a38d5ab3cf637f72030b1097441_3" ; -"dispatch_a_block_variable_from_macro#DispatchA#class.92567a38d5ab3cf637f72030b1097441_5" [label="5: DeclStmt \n DECLARE_LOCALS(&__objc_anonymous_block_DispatchA_dispatch_a_block_variable_from_macro______4); [line 58]\n n$25=_fun___objc_alloc_no_fail(sizeof(__objc_anonymous_block_DispatchA_dispatch_a_block_variable_from_macro______4):unsigned long) [line 58]\n *&__objc_anonymous_block_DispatchA_dispatch_a_block_variable_from_macro______4:__objc_anonymous_block_DispatchA_dispatch_a_block_variable_from_macro______4=n$25 [line 58]\n n$26=*&#GB$DispatchA_dispatch_a_block_variable_from_macro_static_storage__:objc_object* [line 58]\n *n$25.DispatchA_dispatch_a_block_variable_from_macro_static_storage__:objc_object*=n$26 [line 58]\n *&initialization_block__:_fn_(*)=(_fun___objc_anonymous_block_DispatchA_dispatch_a_block_variable_from_macro______4) [line 58]\n " shape="box"] +"dispatch_a_block_variable_from_macro#DispatchA#class.92567a38d5ab3cf637f72030b1097441_5" [label="5: DeclStmt \n DECLARE_LOCALS(&__objc_anonymous_block_DispatchA_dispatch_a_block_variable_from_macro______4); [line 58]\n n$25=_fun___objc_alloc_no_fail(sizeof(t=__objc_anonymous_block_DispatchA_dispatch_a_block_variable_from_macro______4):unsigned long) [line 58]\n *&__objc_anonymous_block_DispatchA_dispatch_a_block_variable_from_macro______4:__objc_anonymous_block_DispatchA_dispatch_a_block_variable_from_macro______4=n$25 [line 58]\n n$26=*&#GB$DispatchA_dispatch_a_block_variable_from_macro_static_storage__:objc_object* [line 58]\n *n$25.DispatchA_dispatch_a_block_variable_from_macro_static_storage__:objc_object*=n$26 [line 58]\n *&initialization_block__:_fn_(*)=(_fun___objc_anonymous_block_DispatchA_dispatch_a_block_variable_from_macro______4) [line 58]\n " shape="box"] "dispatch_a_block_variable_from_macro#DispatchA#class.92567a38d5ab3cf637f72030b1097441_5" -> "dispatch_a_block_variable_from_macro#DispatchA#class.92567a38d5ab3cf637f72030b1097441_4" ; @@ -116,7 +116,7 @@ digraph iCFG { "__objc_anonymous_block_DispatchA_dispatch_a_block_variable_from_macro______4.82bfd971252ed3dd1cbfd850406db887_2" [label="2: Exit __objc_anonymous_block_DispatchA_dispatch_a_block_variable_from_macro______4 \n " color=yellow style=filled] -"__objc_anonymous_block_DispatchA_dispatch_a_block_variable_from_macro______4.82bfd971252ed3dd1cbfd850406db887_3" [label="3: BinaryOperatorStmt: Assign \n n$23=_fun___objc_alloc_no_fail(sizeof(DispatchA):unsigned long) [line 59]\n n$24=_fun_DispatchA_init(n$23:DispatchA*) virtual [line 59]\n *&#GB$DispatchA_dispatch_a_block_variable_from_macro_static_storage__:objc_object*=n$24 [line 59]\n " shape="box"] +"__objc_anonymous_block_DispatchA_dispatch_a_block_variable_from_macro______4.82bfd971252ed3dd1cbfd850406db887_3" [label="3: BinaryOperatorStmt: Assign \n n$23=_fun___objc_alloc_no_fail(sizeof(t=DispatchA):unsigned long) [line 59]\n n$24=_fun_DispatchA_init(n$23:DispatchA*) virtual [line 59]\n *&#GB$DispatchA_dispatch_a_block_variable_from_macro_static_storage__:objc_object*=n$24 [line 59]\n " shape="box"] "__objc_anonymous_block_DispatchA_dispatch_a_block_variable_from_macro______4.82bfd971252ed3dd1cbfd850406db887_3" -> "__objc_anonymous_block_DispatchA_dispatch_a_block_variable_from_macro______4.82bfd971252ed3dd1cbfd850406db887_2" ; diff --git a/infer/tests/codetoanalyze/objc/shared/block/dispatch_examples.m.dot b/infer/tests/codetoanalyze/objc/shared/block/dispatch_examples.m.dot index 3a7ba24e8..e12b0830d 100644 --- a/infer/tests/codetoanalyze/objc/shared/block/dispatch_examples.m.dot +++ b/infer/tests/codetoanalyze/objc/shared/block/dispatch_examples.m.dot @@ -11,7 +11,7 @@ digraph iCFG { "dispatch_once_example#DispatchEx#class.d3456446b1a2d5355c1767887cc8b62c_3" -> "dispatch_once_example#DispatchEx#class.d3456446b1a2d5355c1767887cc8b62c_2" ; -"dispatch_once_example#DispatchEx#class.d3456446b1a2d5355c1767887cc8b62c_4" [label="4: Call (_fun___objc_anonymous_block_DispatchEx_dispatch_once_example______1) \n DECLARE_LOCALS(&__objc_anonymous_block_DispatchEx_dispatch_once_example______1); [line 29]\n n$6=_fun___objc_alloc_no_fail(sizeof(__objc_anonymous_block_DispatchEx_dispatch_once_example______1):unsigned long) [line 29]\n *&__objc_anonymous_block_DispatchEx_dispatch_once_example______1:__objc_anonymous_block_DispatchEx_dispatch_once_example______1=n$6 [line 29]\n n$7=*&#GB$DispatchEx_dispatch_once_example_a:DispatchEx* [line 29]\n *n$6.DispatchEx_dispatch_once_example_a:DispatchEx*=n$7 [line 29]\n n$8=(_fun___objc_anonymous_block_DispatchEx_dispatch_once_example______1)() [line 29]\n " shape="box"] +"dispatch_once_example#DispatchEx#class.d3456446b1a2d5355c1767887cc8b62c_4" [label="4: Call (_fun___objc_anonymous_block_DispatchEx_dispatch_once_example______1) \n DECLARE_LOCALS(&__objc_anonymous_block_DispatchEx_dispatch_once_example______1); [line 29]\n n$6=_fun___objc_alloc_no_fail(sizeof(t=__objc_anonymous_block_DispatchEx_dispatch_once_example______1):unsigned long) [line 29]\n *&__objc_anonymous_block_DispatchEx_dispatch_once_example______1:__objc_anonymous_block_DispatchEx_dispatch_once_example______1=n$6 [line 29]\n n$7=*&#GB$DispatchEx_dispatch_once_example_a:DispatchEx* [line 29]\n *n$6.DispatchEx_dispatch_once_example_a:DispatchEx*=n$7 [line 29]\n n$8=(_fun___objc_anonymous_block_DispatchEx_dispatch_once_example______1)() [line 29]\n " shape="box"] "dispatch_once_example#DispatchEx#class.d3456446b1a2d5355c1767887cc8b62c_4" -> "dispatch_once_example#DispatchEx#class.d3456446b1a2d5355c1767887cc8b62c_3" ; @@ -30,7 +30,7 @@ digraph iCFG { "__objc_anonymous_block_DispatchEx_dispatch_once_example______1.158d97f9901ded6a43590bdae67c9275_3" -> "__objc_anonymous_block_DispatchEx_dispatch_once_example______1.158d97f9901ded6a43590bdae67c9275_2" ; -"__objc_anonymous_block_DispatchEx_dispatch_once_example______1.158d97f9901ded6a43590bdae67c9275_4" [label="4: BinaryOperatorStmt: Assign \n n$4=_fun___objc_alloc_no_fail(sizeof(DispatchEx):unsigned long) [line 30]\n n$5=_fun_DispatchEx_init(n$4:DispatchEx*) virtual [line 30]\n *&#GB$DispatchEx_dispatch_once_example_a:DispatchEx*=n$5 [line 30]\n " shape="box"] +"__objc_anonymous_block_DispatchEx_dispatch_once_example______1.158d97f9901ded6a43590bdae67c9275_4" [label="4: BinaryOperatorStmt: Assign \n n$4=_fun___objc_alloc_no_fail(sizeof(t=DispatchEx):unsigned long) [line 30]\n n$5=_fun_DispatchEx_init(n$4:DispatchEx*) virtual [line 30]\n *&#GB$DispatchEx_dispatch_once_example_a:DispatchEx*=n$5 [line 30]\n " shape="box"] "__objc_anonymous_block_DispatchEx_dispatch_once_example______1.158d97f9901ded6a43590bdae67c9275_4" -> "__objc_anonymous_block_DispatchEx_dispatch_once_example______1.158d97f9901ded6a43590bdae67c9275_3" ; @@ -45,7 +45,7 @@ digraph iCFG { "dispatch_async_example#DispatchEx#class.5c5d7347be2a9654ad7e32514189fe54_3" -> "dispatch_async_example#DispatchEx#class.5c5d7347be2a9654ad7e32514189fe54_2" ; -"dispatch_async_example#DispatchEx#class.5c5d7347be2a9654ad7e32514189fe54_4" [label="4: Call (_fun___objc_anonymous_block_DispatchEx_dispatch_async_example______2) \n DECLARE_LOCALS(&__objc_anonymous_block_DispatchEx_dispatch_async_example______2); [line 39]\n n$14=_fun___objc_alloc_no_fail(sizeof(__objc_anonymous_block_DispatchEx_dispatch_async_example______2):unsigned long) [line 39]\n *&__objc_anonymous_block_DispatchEx_dispatch_async_example______2:__objc_anonymous_block_DispatchEx_dispatch_async_example______2=n$14 [line 39]\n n$15=*&#GB$DispatchEx_dispatch_async_example_a:DispatchEx* [line 39]\n *n$14.DispatchEx_dispatch_async_example_a:DispatchEx*=n$15 [line 39]\n n$16=(_fun___objc_anonymous_block_DispatchEx_dispatch_async_example______2)() [line 38]\n " shape="box"] +"dispatch_async_example#DispatchEx#class.5c5d7347be2a9654ad7e32514189fe54_4" [label="4: Call (_fun___objc_anonymous_block_DispatchEx_dispatch_async_example______2) \n DECLARE_LOCALS(&__objc_anonymous_block_DispatchEx_dispatch_async_example______2); [line 39]\n n$14=_fun___objc_alloc_no_fail(sizeof(t=__objc_anonymous_block_DispatchEx_dispatch_async_example______2):unsigned long) [line 39]\n *&__objc_anonymous_block_DispatchEx_dispatch_async_example______2:__objc_anonymous_block_DispatchEx_dispatch_async_example______2=n$14 [line 39]\n n$15=*&#GB$DispatchEx_dispatch_async_example_a:DispatchEx* [line 39]\n *n$14.DispatchEx_dispatch_async_example_a:DispatchEx*=n$15 [line 39]\n n$16=(_fun___objc_anonymous_block_DispatchEx_dispatch_async_example______2)() [line 38]\n " shape="box"] "dispatch_async_example#DispatchEx#class.5c5d7347be2a9654ad7e32514189fe54_4" -> "dispatch_async_example#DispatchEx#class.5c5d7347be2a9654ad7e32514189fe54_3" ; @@ -64,7 +64,7 @@ digraph iCFG { "__objc_anonymous_block_DispatchEx_dispatch_async_example______2.188fa4ba6cec1621d948ea1747df2c34_3" -> "__objc_anonymous_block_DispatchEx_dispatch_async_example______2.188fa4ba6cec1621d948ea1747df2c34_2" ; -"__objc_anonymous_block_DispatchEx_dispatch_async_example______2.188fa4ba6cec1621d948ea1747df2c34_4" [label="4: BinaryOperatorStmt: Assign \n n$12=_fun___objc_alloc_no_fail(sizeof(DispatchEx):unsigned long) [line 40]\n n$13=_fun_DispatchEx_init(n$12:DispatchEx*) virtual [line 40]\n *&#GB$DispatchEx_dispatch_async_example_a:DispatchEx*=n$13 [line 40]\n " shape="box"] +"__objc_anonymous_block_DispatchEx_dispatch_async_example______2.188fa4ba6cec1621d948ea1747df2c34_4" [label="4: BinaryOperatorStmt: Assign \n n$12=_fun___objc_alloc_no_fail(sizeof(t=DispatchEx):unsigned long) [line 40]\n n$13=_fun_DispatchEx_init(n$12:DispatchEx*) virtual [line 40]\n *&#GB$DispatchEx_dispatch_async_example_a:DispatchEx*=n$13 [line 40]\n " shape="box"] "__objc_anonymous_block_DispatchEx_dispatch_async_example______2.188fa4ba6cec1621d948ea1747df2c34_4" -> "__objc_anonymous_block_DispatchEx_dispatch_async_example______2.188fa4ba6cec1621d948ea1747df2c34_3" ; @@ -79,7 +79,7 @@ digraph iCFG { "dispatch_after_example#DispatchEx#class.1d25856bd99eb1ef683c8f65ff46d05d_3" -> "dispatch_after_example#DispatchEx#class.1d25856bd99eb1ef683c8f65ff46d05d_2" ; -"dispatch_after_example#DispatchEx#class.1d25856bd99eb1ef683c8f65ff46d05d_4" [label="4: Call (_fun___objc_anonymous_block_DispatchEx_dispatch_after_example______3) \n DECLARE_LOCALS(&__objc_anonymous_block_DispatchEx_dispatch_after_example______3); [line 50]\n n$22=_fun___objc_alloc_no_fail(sizeof(__objc_anonymous_block_DispatchEx_dispatch_after_example______3):unsigned long) [line 50]\n *&__objc_anonymous_block_DispatchEx_dispatch_after_example______3:__objc_anonymous_block_DispatchEx_dispatch_after_example______3=n$22 [line 50]\n n$23=*&#GB$DispatchEx_dispatch_after_example_a:DispatchEx* [line 50]\n *n$22.DispatchEx_dispatch_after_example_a:DispatchEx*=n$23 [line 50]\n n$24=(_fun___objc_anonymous_block_DispatchEx_dispatch_after_example______3)() [line 48]\n " shape="box"] +"dispatch_after_example#DispatchEx#class.1d25856bd99eb1ef683c8f65ff46d05d_4" [label="4: Call (_fun___objc_anonymous_block_DispatchEx_dispatch_after_example______3) \n DECLARE_LOCALS(&__objc_anonymous_block_DispatchEx_dispatch_after_example______3); [line 50]\n n$22=_fun___objc_alloc_no_fail(sizeof(t=__objc_anonymous_block_DispatchEx_dispatch_after_example______3):unsigned long) [line 50]\n *&__objc_anonymous_block_DispatchEx_dispatch_after_example______3:__objc_anonymous_block_DispatchEx_dispatch_after_example______3=n$22 [line 50]\n n$23=*&#GB$DispatchEx_dispatch_after_example_a:DispatchEx* [line 50]\n *n$22.DispatchEx_dispatch_after_example_a:DispatchEx*=n$23 [line 50]\n n$24=(_fun___objc_anonymous_block_DispatchEx_dispatch_after_example______3)() [line 48]\n " shape="box"] "dispatch_after_example#DispatchEx#class.1d25856bd99eb1ef683c8f65ff46d05d_4" -> "dispatch_after_example#DispatchEx#class.1d25856bd99eb1ef683c8f65ff46d05d_3" ; @@ -98,7 +98,7 @@ digraph iCFG { "__objc_anonymous_block_DispatchEx_dispatch_after_example______3.2346df1c3bc37dee82860aa53ebe3ece_3" -> "__objc_anonymous_block_DispatchEx_dispatch_after_example______3.2346df1c3bc37dee82860aa53ebe3ece_2" ; -"__objc_anonymous_block_DispatchEx_dispatch_after_example______3.2346df1c3bc37dee82860aa53ebe3ece_4" [label="4: BinaryOperatorStmt: Assign \n n$20=_fun___objc_alloc_no_fail(sizeof(DispatchEx):unsigned long) [line 51]\n n$21=_fun_DispatchEx_init(n$20:DispatchEx*) virtual [line 51]\n *&#GB$DispatchEx_dispatch_after_example_a:DispatchEx*=n$21 [line 51]\n " shape="box"] +"__objc_anonymous_block_DispatchEx_dispatch_after_example______3.2346df1c3bc37dee82860aa53ebe3ece_4" [label="4: BinaryOperatorStmt: Assign \n n$20=_fun___objc_alloc_no_fail(sizeof(t=DispatchEx):unsigned long) [line 51]\n n$21=_fun_DispatchEx_init(n$20:DispatchEx*) virtual [line 51]\n *&#GB$DispatchEx_dispatch_after_example_a:DispatchEx*=n$21 [line 51]\n " shape="box"] "__objc_anonymous_block_DispatchEx_dispatch_after_example______3.2346df1c3bc37dee82860aa53ebe3ece_4" -> "__objc_anonymous_block_DispatchEx_dispatch_after_example______3.2346df1c3bc37dee82860aa53ebe3ece_3" ; @@ -113,7 +113,7 @@ digraph iCFG { "dispatch_group_example#DispatchEx#class.f420a75c58eda6d3f0e5e05fadabfc18_3" -> "dispatch_group_example#DispatchEx#class.f420a75c58eda6d3f0e5e05fadabfc18_2" ; -"dispatch_group_example#DispatchEx#class.f420a75c58eda6d3f0e5e05fadabfc18_4" [label="4: Call (_fun___objc_anonymous_block_DispatchEx_dispatch_group_example______4) \n DECLARE_LOCALS(&__objc_anonymous_block_DispatchEx_dispatch_group_example______4); [line 59]\n n$30=_fun___objc_alloc_no_fail(sizeof(__objc_anonymous_block_DispatchEx_dispatch_group_example______4):unsigned long) [line 59]\n *&__objc_anonymous_block_DispatchEx_dispatch_group_example______4:__objc_anonymous_block_DispatchEx_dispatch_group_example______4=n$30 [line 59]\n n$31=*&#GB$DispatchEx_dispatch_group_example_a:DispatchEx* [line 59]\n *n$30.DispatchEx_dispatch_group_example_a:DispatchEx*=n$31 [line 59]\n n$32=(_fun___objc_anonymous_block_DispatchEx_dispatch_group_example______4)() [line 59]\n " shape="box"] +"dispatch_group_example#DispatchEx#class.f420a75c58eda6d3f0e5e05fadabfc18_4" [label="4: Call (_fun___objc_anonymous_block_DispatchEx_dispatch_group_example______4) \n DECLARE_LOCALS(&__objc_anonymous_block_DispatchEx_dispatch_group_example______4); [line 59]\n n$30=_fun___objc_alloc_no_fail(sizeof(t=__objc_anonymous_block_DispatchEx_dispatch_group_example______4):unsigned long) [line 59]\n *&__objc_anonymous_block_DispatchEx_dispatch_group_example______4:__objc_anonymous_block_DispatchEx_dispatch_group_example______4=n$30 [line 59]\n n$31=*&#GB$DispatchEx_dispatch_group_example_a:DispatchEx* [line 59]\n *n$30.DispatchEx_dispatch_group_example_a:DispatchEx*=n$31 [line 59]\n n$32=(_fun___objc_anonymous_block_DispatchEx_dispatch_group_example______4)() [line 59]\n " shape="box"] "dispatch_group_example#DispatchEx#class.f420a75c58eda6d3f0e5e05fadabfc18_4" -> "dispatch_group_example#DispatchEx#class.f420a75c58eda6d3f0e5e05fadabfc18_3" ; @@ -132,7 +132,7 @@ digraph iCFG { "__objc_anonymous_block_DispatchEx_dispatch_group_example______4.4458b8e68269255e8dd6690cdc49ab76_3" -> "__objc_anonymous_block_DispatchEx_dispatch_group_example______4.4458b8e68269255e8dd6690cdc49ab76_2" ; -"__objc_anonymous_block_DispatchEx_dispatch_group_example______4.4458b8e68269255e8dd6690cdc49ab76_4" [label="4: BinaryOperatorStmt: Assign \n n$28=_fun___objc_alloc_no_fail(sizeof(DispatchEx):unsigned long) [line 60]\n n$29=_fun_DispatchEx_init(n$28:DispatchEx*) virtual [line 60]\n *&#GB$DispatchEx_dispatch_group_example_a:DispatchEx*=n$29 [line 60]\n " shape="box"] +"__objc_anonymous_block_DispatchEx_dispatch_group_example______4.4458b8e68269255e8dd6690cdc49ab76_4" [label="4: BinaryOperatorStmt: Assign \n n$28=_fun___objc_alloc_no_fail(sizeof(t=DispatchEx):unsigned long) [line 60]\n n$29=_fun_DispatchEx_init(n$28:DispatchEx*) virtual [line 60]\n *&#GB$DispatchEx_dispatch_group_example_a:DispatchEx*=n$29 [line 60]\n " shape="box"] "__objc_anonymous_block_DispatchEx_dispatch_group_example______4.4458b8e68269255e8dd6690cdc49ab76_4" -> "__objc_anonymous_block_DispatchEx_dispatch_group_example______4.4458b8e68269255e8dd6690cdc49ab76_3" ; @@ -147,7 +147,7 @@ digraph iCFG { "dispatch_group_notify_example#DispatchEx#class.f5cf54b07621c319cf7ead3b217760ed_3" -> "dispatch_group_notify_example#DispatchEx#class.f5cf54b07621c319cf7ead3b217760ed_2" ; -"dispatch_group_notify_example#DispatchEx#class.f5cf54b07621c319cf7ead3b217760ed_4" [label="4: Call (_fun___objc_anonymous_block_DispatchEx_dispatch_group_notify_example______5) \n DECLARE_LOCALS(&__objc_anonymous_block_DispatchEx_dispatch_group_notify_example______5); [line 68]\n n$38=_fun___objc_alloc_no_fail(sizeof(__objc_anonymous_block_DispatchEx_dispatch_group_notify_example______5):unsigned long) [line 68]\n *&__objc_anonymous_block_DispatchEx_dispatch_group_notify_example______5:__objc_anonymous_block_DispatchEx_dispatch_group_notify_example______5=n$38 [line 68]\n n$39=*&#GB$DispatchEx_dispatch_group_notify_example_a:DispatchEx* [line 68]\n *n$38.DispatchEx_dispatch_group_notify_example_a:DispatchEx*=n$39 [line 68]\n n$40=(_fun___objc_anonymous_block_DispatchEx_dispatch_group_notify_example______5)() [line 68]\n " shape="box"] +"dispatch_group_notify_example#DispatchEx#class.f5cf54b07621c319cf7ead3b217760ed_4" [label="4: Call (_fun___objc_anonymous_block_DispatchEx_dispatch_group_notify_example______5) \n DECLARE_LOCALS(&__objc_anonymous_block_DispatchEx_dispatch_group_notify_example______5); [line 68]\n n$38=_fun___objc_alloc_no_fail(sizeof(t=__objc_anonymous_block_DispatchEx_dispatch_group_notify_example______5):unsigned long) [line 68]\n *&__objc_anonymous_block_DispatchEx_dispatch_group_notify_example______5:__objc_anonymous_block_DispatchEx_dispatch_group_notify_example______5=n$38 [line 68]\n n$39=*&#GB$DispatchEx_dispatch_group_notify_example_a:DispatchEx* [line 68]\n *n$38.DispatchEx_dispatch_group_notify_example_a:DispatchEx*=n$39 [line 68]\n n$40=(_fun___objc_anonymous_block_DispatchEx_dispatch_group_notify_example______5)() [line 68]\n " shape="box"] "dispatch_group_notify_example#DispatchEx#class.f5cf54b07621c319cf7ead3b217760ed_4" -> "dispatch_group_notify_example#DispatchEx#class.f5cf54b07621c319cf7ead3b217760ed_3" ; @@ -166,7 +166,7 @@ digraph iCFG { "__objc_anonymous_block_DispatchEx_dispatch_group_notify_example______5.7a26e229a9d9a9dcb5d0d430f7cacd00_3" -> "__objc_anonymous_block_DispatchEx_dispatch_group_notify_example______5.7a26e229a9d9a9dcb5d0d430f7cacd00_2" ; -"__objc_anonymous_block_DispatchEx_dispatch_group_notify_example______5.7a26e229a9d9a9dcb5d0d430f7cacd00_4" [label="4: BinaryOperatorStmt: Assign \n n$36=_fun___objc_alloc_no_fail(sizeof(DispatchEx):unsigned long) [line 69]\n n$37=_fun_DispatchEx_init(n$36:DispatchEx*) virtual [line 69]\n *&#GB$DispatchEx_dispatch_group_notify_example_a:DispatchEx*=n$37 [line 69]\n " shape="box"] +"__objc_anonymous_block_DispatchEx_dispatch_group_notify_example______5.7a26e229a9d9a9dcb5d0d430f7cacd00_4" [label="4: BinaryOperatorStmt: Assign \n n$36=_fun___objc_alloc_no_fail(sizeof(t=DispatchEx):unsigned long) [line 69]\n n$37=_fun_DispatchEx_init(n$36:DispatchEx*) virtual [line 69]\n *&#GB$DispatchEx_dispatch_group_notify_example_a:DispatchEx*=n$37 [line 69]\n " shape="box"] "__objc_anonymous_block_DispatchEx_dispatch_group_notify_example______5.7a26e229a9d9a9dcb5d0d430f7cacd00_4" -> "__objc_anonymous_block_DispatchEx_dispatch_group_notify_example______5.7a26e229a9d9a9dcb5d0d430f7cacd00_3" ; @@ -181,7 +181,7 @@ digraph iCFG { "dispatch_barrier_example#DispatchEx#class.a541a40f2f04e29019c58e563f7544d8_3" -> "dispatch_barrier_example#DispatchEx#class.a541a40f2f04e29019c58e563f7544d8_2" ; -"dispatch_barrier_example#DispatchEx#class.a541a40f2f04e29019c58e563f7544d8_4" [label="4: Call (_fun___objc_anonymous_block_DispatchEx_dispatch_barrier_example______6) \n DECLARE_LOCALS(&__objc_anonymous_block_DispatchEx_dispatch_barrier_example______6); [line 77]\n n$46=_fun___objc_alloc_no_fail(sizeof(__objc_anonymous_block_DispatchEx_dispatch_barrier_example______6):unsigned long) [line 77]\n *&__objc_anonymous_block_DispatchEx_dispatch_barrier_example______6:__objc_anonymous_block_DispatchEx_dispatch_barrier_example______6=n$46 [line 77]\n n$47=*&#GB$DispatchEx_dispatch_barrier_example_a:DispatchEx* [line 77]\n *n$46.DispatchEx_dispatch_barrier_example_a:DispatchEx*=n$47 [line 77]\n n$48=(_fun___objc_anonymous_block_DispatchEx_dispatch_barrier_example______6)() [line 77]\n " shape="box"] +"dispatch_barrier_example#DispatchEx#class.a541a40f2f04e29019c58e563f7544d8_4" [label="4: Call (_fun___objc_anonymous_block_DispatchEx_dispatch_barrier_example______6) \n DECLARE_LOCALS(&__objc_anonymous_block_DispatchEx_dispatch_barrier_example______6); [line 77]\n n$46=_fun___objc_alloc_no_fail(sizeof(t=__objc_anonymous_block_DispatchEx_dispatch_barrier_example______6):unsigned long) [line 77]\n *&__objc_anonymous_block_DispatchEx_dispatch_barrier_example______6:__objc_anonymous_block_DispatchEx_dispatch_barrier_example______6=n$46 [line 77]\n n$47=*&#GB$DispatchEx_dispatch_barrier_example_a:DispatchEx* [line 77]\n *n$46.DispatchEx_dispatch_barrier_example_a:DispatchEx*=n$47 [line 77]\n n$48=(_fun___objc_anonymous_block_DispatchEx_dispatch_barrier_example______6)() [line 77]\n " shape="box"] "dispatch_barrier_example#DispatchEx#class.a541a40f2f04e29019c58e563f7544d8_4" -> "dispatch_barrier_example#DispatchEx#class.a541a40f2f04e29019c58e563f7544d8_3" ; @@ -200,7 +200,7 @@ digraph iCFG { "__objc_anonymous_block_DispatchEx_dispatch_barrier_example______6.f3e27d4badebf4adf9313b39c9688c30_3" -> "__objc_anonymous_block_DispatchEx_dispatch_barrier_example______6.f3e27d4badebf4adf9313b39c9688c30_2" ; -"__objc_anonymous_block_DispatchEx_dispatch_barrier_example______6.f3e27d4badebf4adf9313b39c9688c30_4" [label="4: BinaryOperatorStmt: Assign \n n$44=_fun___objc_alloc_no_fail(sizeof(DispatchEx):unsigned long) [line 78]\n n$45=_fun_DispatchEx_init(n$44:DispatchEx*) virtual [line 78]\n *&#GB$DispatchEx_dispatch_barrier_example_a:DispatchEx*=n$45 [line 78]\n " shape="box"] +"__objc_anonymous_block_DispatchEx_dispatch_barrier_example______6.f3e27d4badebf4adf9313b39c9688c30_4" [label="4: BinaryOperatorStmt: Assign \n n$44=_fun___objc_alloc_no_fail(sizeof(t=DispatchEx):unsigned long) [line 78]\n n$45=_fun_DispatchEx_init(n$44:DispatchEx*) virtual [line 78]\n *&#GB$DispatchEx_dispatch_barrier_example_a:DispatchEx*=n$45 [line 78]\n " shape="box"] "__objc_anonymous_block_DispatchEx_dispatch_barrier_example______6.f3e27d4badebf4adf9313b39c9688c30_4" -> "__objc_anonymous_block_DispatchEx_dispatch_barrier_example______6.f3e27d4badebf4adf9313b39c9688c30_3" ; diff --git a/infer/tests/codetoanalyze/objc/shared/block/dispatch_in_macro.m.dot b/infer/tests/codetoanalyze/objc/shared/block/dispatch_in_macro.m.dot index 1613fbfe4..040edbdf9 100644 --- a/infer/tests/codetoanalyze/objc/shared/block/dispatch_in_macro.m.dot +++ b/infer/tests/codetoanalyze/objc/shared/block/dispatch_in_macro.m.dot @@ -11,7 +11,7 @@ digraph iCFG { "DispatchInMacroTest.f5d56763274a479d06265a2f9562bef1_3" -> "DispatchInMacroTest.f5d56763274a479d06265a2f9562bef1_5" ; -"DispatchInMacroTest.f5d56763274a479d06265a2f9562bef1_4" [label="4: Call (_fun___objc_anonymous_block_DispatchInMacroTest______1) \n DECLARE_LOCALS(&__objc_anonymous_block_DispatchInMacroTest______1); [line 23]\n n$3=_fun___objc_alloc_no_fail(sizeof(__objc_anonymous_block_DispatchInMacroTest______1):unsigned long) [line 23]\n *&__objc_anonymous_block_DispatchInMacroTest______1:__objc_anonymous_block_DispatchInMacroTest______1=n$3 [line 23]\n n$4=*&#GB$DispatchInMacroTest_static_storage:NSObject* [line 23]\n *n$3.DispatchInMacroTest_static_storage:NSObject*=n$4 [line 23]\n n$5=(_fun___objc_anonymous_block_DispatchInMacroTest______1)() [line 23]\n " shape="box"] +"DispatchInMacroTest.f5d56763274a479d06265a2f9562bef1_4" [label="4: Call (_fun___objc_anonymous_block_DispatchInMacroTest______1) \n DECLARE_LOCALS(&__objc_anonymous_block_DispatchInMacroTest______1); [line 23]\n n$3=_fun___objc_alloc_no_fail(sizeof(t=__objc_anonymous_block_DispatchInMacroTest______1):unsigned long) [line 23]\n *&__objc_anonymous_block_DispatchInMacroTest______1:__objc_anonymous_block_DispatchInMacroTest______1=n$3 [line 23]\n n$4=*&#GB$DispatchInMacroTest_static_storage:NSObject* [line 23]\n *n$3.DispatchInMacroTest_static_storage:NSObject*=n$4 [line 23]\n n$5=(_fun___objc_anonymous_block_DispatchInMacroTest______1)() [line 23]\n " shape="box"] "DispatchInMacroTest.f5d56763274a479d06265a2f9562bef1_4" -> "DispatchInMacroTest.f5d56763274a479d06265a2f9562bef1_3" ; @@ -26,7 +26,7 @@ digraph iCFG { "__objc_anonymous_block_DispatchInMacroTest______1.db6c315d2cd0e3514d444428887908e2_2" [label="2: Exit __objc_anonymous_block_DispatchInMacroTest______1 \n " color=yellow style=filled] -"__objc_anonymous_block_DispatchInMacroTest______1.db6c315d2cd0e3514d444428887908e2_3" [label="3: BinaryOperatorStmt: Assign \n n$1=_fun___objc_alloc_no_fail(sizeof(NSObject):unsigned long) [line 23]\n n$2=_fun_NSObject_init(n$1:NSObject*) virtual [line 23]\n *&#GB$DispatchInMacroTest_static_storage:NSObject*=n$2 [line 23]\n " shape="box"] +"__objc_anonymous_block_DispatchInMacroTest______1.db6c315d2cd0e3514d444428887908e2_3" [label="3: BinaryOperatorStmt: Assign \n n$1=_fun___objc_alloc_no_fail(sizeof(t=NSObject):unsigned long) [line 23]\n n$2=_fun_NSObject_init(n$1:NSObject*) virtual [line 23]\n *&#GB$DispatchInMacroTest_static_storage:NSObject*=n$2 [line 23]\n " shape="box"] "__objc_anonymous_block_DispatchInMacroTest______1.db6c315d2cd0e3514d444428887908e2_3" -> "__objc_anonymous_block_DispatchInMacroTest______1.db6c315d2cd0e3514d444428887908e2_2" ; diff --git a/infer/tests/codetoanalyze/objc/shared/category_procdesc/main.c.dot b/infer/tests/codetoanalyze/objc/shared/category_procdesc/main.c.dot index d6a20c181..99a65bf11 100644 --- a/infer/tests/codetoanalyze/objc/shared/category_procdesc/main.c.dot +++ b/infer/tests/codetoanalyze/objc/shared/category_procdesc/main.c.dot @@ -11,7 +11,7 @@ digraph iCFG { "CategoryProcdescMain.ae2ee334c26ccbf8ee413efe5d896611_3" -> "CategoryProcdescMain.ae2ee334c26ccbf8ee413efe5d896611_2" ; -"CategoryProcdescMain.ae2ee334c26ccbf8ee413efe5d896611_4" [label="4: DeclStmt \n n$0=_fun_malloc_no_fail(sizeof(int32):int) [line 16]\n *&x:int*=n$0 [line 16]\n " shape="box"] +"CategoryProcdescMain.ae2ee334c26ccbf8ee413efe5d896611_4" [label="4: DeclStmt \n n$0=_fun_malloc_no_fail(sizeof(t=int;nbytes=4):int) [line 16]\n *&x:int*=n$0 [line 16]\n " shape="box"] "CategoryProcdescMain.ae2ee334c26ccbf8ee413efe5d896611_4" -> "CategoryProcdescMain.ae2ee334c26ccbf8ee413efe5d896611_3" ; @@ -19,7 +19,7 @@ digraph iCFG { "CategoryProcdescMain.ae2ee334c26ccbf8ee413efe5d896611_5" -> "CategoryProcdescMain.ae2ee334c26ccbf8ee413efe5d896611_4" ; -"CategoryProcdescMain.ae2ee334c26ccbf8ee413efe5d896611_6" [label="6: DeclStmt \n n$2=_fun___objc_alloc_no_fail(sizeof(EOCPerson):unsigned long) [line 14]\n n$3=_fun_NSObject_init(n$2:EOCPerson*) virtual [line 14]\n *&person:EOCPerson*=n$3 [line 14]\n " shape="box"] +"CategoryProcdescMain.ae2ee334c26ccbf8ee413efe5d896611_6" [label="6: DeclStmt \n n$2=_fun___objc_alloc_no_fail(sizeof(t=EOCPerson):unsigned long) [line 14]\n n$3=_fun_NSObject_init(n$2:EOCPerson*) virtual [line 14]\n *&person:EOCPerson*=n$3 [line 14]\n " shape="box"] "CategoryProcdescMain.ae2ee334c26ccbf8ee413efe5d896611_6" -> "CategoryProcdescMain.ae2ee334c26ccbf8ee413efe5d896611_5" ; diff --git a/infer/tests/codetoanalyze/objc/shared/field_superclass/SuperExample.m.dot b/infer/tests/codetoanalyze/objc/shared/field_superclass/SuperExample.m.dot index 9a85b6843..2716300e0 100644 --- a/infer/tests/codetoanalyze/objc/shared/field_superclass/SuperExample.m.dot +++ b/infer/tests/codetoanalyze/objc/shared/field_superclass/SuperExample.m.dot @@ -11,7 +11,7 @@ digraph iCFG { "super_example_main.e3ebe95e6c5ae811733f235c29fbbf6d_3" -> "super_example_main.e3ebe95e6c5ae811733f235c29fbbf6d_2" ; -"super_example_main.e3ebe95e6c5ae811733f235c29fbbf6d_4" [label="4: DeclStmt \n n$1=_fun___objc_alloc_no_fail(sizeof(ASuper):unsigned long) [line 42]\n n$2=_fun_NSObject_init(n$1:ASuper*) virtual [line 42]\n *&a:objc_object*=n$2 [line 42]\n " shape="box"] +"super_example_main.e3ebe95e6c5ae811733f235c29fbbf6d_4" [label="4: DeclStmt \n n$1=_fun___objc_alloc_no_fail(sizeof(t=ASuper):unsigned long) [line 42]\n n$2=_fun_NSObject_init(n$1:ASuper*) virtual [line 42]\n *&a:objc_object*=n$2 [line 42]\n " shape="box"] "super_example_main.e3ebe95e6c5ae811733f235c29fbbf6d_4" -> "super_example_main.e3ebe95e6c5ae811733f235c29fbbf6d_3" ; diff --git a/infer/tests/codetoanalyze/objc/shared/memory_leaks_benchmark/ArcExample.m.dot b/infer/tests/codetoanalyze/objc/shared/memory_leaks_benchmark/ArcExample.m.dot index 7a075e239..963a08c3b 100644 --- a/infer/tests/codetoanalyze/objc/shared/memory_leaks_benchmark/ArcExample.m.dot +++ b/infer/tests/codetoanalyze/objc/shared/memory_leaks_benchmark/ArcExample.m.dot @@ -11,7 +11,7 @@ digraph iCFG { "getS#ArcA#instance.a6d142da8215d5903690f8a054289ac7_3" -> "getS#ArcA#instance.a6d142da8215d5903690f8a054289ac7_2" ; -"getS#ArcA#instance.a6d142da8215d5903690f8a054289ac7_4" [label="4: DeclStmt \n n$2=_fun___objc_alloc_no_fail(sizeof(NSString):unsigned long) [line 23]\n *&s:NSString*=n$2 [line 23]\n " shape="box"] +"getS#ArcA#instance.a6d142da8215d5903690f8a054289ac7_4" [label="4: DeclStmt \n n$2=_fun___objc_alloc_no_fail(sizeof(t=NSString):unsigned long) [line 23]\n *&s:NSString*=n$2 [line 23]\n " shape="box"] "getS#ArcA#instance.a6d142da8215d5903690f8a054289ac7_4" -> "getS#ArcA#instance.a6d142da8215d5903690f8a054289ac7_3" ; @@ -26,7 +26,7 @@ digraph iCFG { "newS#ArcA#instance.9d1f2aa4ea1ccfd32c1438724cfc19ba_3" -> "newS#ArcA#instance.9d1f2aa4ea1ccfd32c1438724cfc19ba_2" ; -"newS#ArcA#instance.9d1f2aa4ea1ccfd32c1438724cfc19ba_4" [label="4: DeclStmt \n n$4=_fun___objc_alloc_no_fail(sizeof(NSString):unsigned long) [line 29]\n *&s:NSString*=n$4 [line 29]\n " shape="box"] +"newS#ArcA#instance.9d1f2aa4ea1ccfd32c1438724cfc19ba_4" [label="4: DeclStmt \n n$4=_fun___objc_alloc_no_fail(sizeof(t=NSString):unsigned long) [line 29]\n *&s:NSString*=n$4 [line 29]\n " shape="box"] "newS#ArcA#instance.9d1f2aa4ea1ccfd32c1438724cfc19ba_4" -> "newS#ArcA#instance.9d1f2aa4ea1ccfd32c1438724cfc19ba_3" ; diff --git a/infer/tests/codetoanalyze/objc/shared/memory_leaks_benchmark/AutoreleaseExample.m.dot b/infer/tests/codetoanalyze/objc/shared/memory_leaks_benchmark/AutoreleaseExample.m.dot index eb8138ff0..fc77f145a 100644 --- a/infer/tests/codetoanalyze/objc/shared/memory_leaks_benchmark/AutoreleaseExample.m.dot +++ b/infer/tests/codetoanalyze/objc/shared/memory_leaks_benchmark/AutoreleaseExample.m.dot @@ -11,7 +11,7 @@ digraph iCFG { "createA.48a5d7f480131d59bba69d521715b836_3" -> "createA.48a5d7f480131d59bba69d521715b836_2" ; -"createA.48a5d7f480131d59bba69d521715b836_4" [label="4: DeclStmt \n n$2=_fun___objc_alloc_no_fail(sizeof(Auto):unsigned long) [line 30]\n n$3=_fun_NSObject_init(n$2:Auto*) virtual [line 30]\n *&s1:Auto*=n$3 [line 30]\n " shape="box"] +"createA.48a5d7f480131d59bba69d521715b836_4" [label="4: DeclStmt \n n$2=_fun___objc_alloc_no_fail(sizeof(t=Auto):unsigned long) [line 30]\n n$3=_fun_NSObject_init(n$2:Auto*) virtual [line 30]\n *&s1:Auto*=n$3 [line 30]\n " shape="box"] "createA.48a5d7f480131d59bba69d521715b836_4" -> "createA.48a5d7f480131d59bba69d521715b836_3" ; @@ -112,11 +112,11 @@ digraph iCFG { "autorelease_test3.5fa2e6ceb6075e26a47f9b8c9cdf65ba_4" -> "autorelease_test3.5fa2e6ceb6075e26a47f9b8c9cdf65ba_3" ; -"autorelease_test3.5fa2e6ceb6075e26a47f9b8c9cdf65ba_5" [label="5: DeclStmt \n n$2=_fun___objc_alloc_no_fail(sizeof(NSString):unsigned long) [line 61]\n n$3=_fun___set_autorelease_attribute(n$2:NSString*) [line 61]\n *&string:NSString*=n$3 [line 61]\n " shape="box"] +"autorelease_test3.5fa2e6ceb6075e26a47f9b8c9cdf65ba_5" [label="5: DeclStmt \n n$2=_fun___objc_alloc_no_fail(sizeof(t=NSString):unsigned long) [line 61]\n n$3=_fun___set_autorelease_attribute(n$2:NSString*) [line 61]\n *&string:NSString*=n$3 [line 61]\n " shape="box"] "autorelease_test3.5fa2e6ceb6075e26a47f9b8c9cdf65ba_5" -> "autorelease_test3.5fa2e6ceb6075e26a47f9b8c9cdf65ba_4" ; -"autorelease_test3.5fa2e6ceb6075e26a47f9b8c9cdf65ba_6" [label="6: DeclStmt \n n$4=_fun___objc_alloc_no_fail(sizeof(NSAutoreleasePool):unsigned long) [line 60]\n n$5=_fun_NSObject_init(n$4:NSAutoreleasePool*) virtual [line 60]\n *&pool:NSAutoreleasePool*=n$5 [line 60]\n " shape="box"] +"autorelease_test3.5fa2e6ceb6075e26a47f9b8c9cdf65ba_6" [label="6: DeclStmt \n n$4=_fun___objc_alloc_no_fail(sizeof(t=NSAutoreleasePool):unsigned long) [line 60]\n n$5=_fun_NSObject_init(n$4:NSAutoreleasePool*) virtual [line 60]\n *&pool:NSAutoreleasePool*=n$5 [line 60]\n " shape="box"] "autorelease_test3.5fa2e6ceb6075e26a47f9b8c9cdf65ba_6" -> "autorelease_test3.5fa2e6ceb6075e26a47f9b8c9cdf65ba_5" ; @@ -131,7 +131,7 @@ digraph iCFG { "autorelease_main#Auto#instance.dbdd003a511fe2beb7e0a817d39f6fd8_3" -> "autorelease_main#Auto#instance.dbdd003a511fe2beb7e0a817d39f6fd8_2" ; -"autorelease_main#Auto#instance.dbdd003a511fe2beb7e0a817d39f6fd8_4" [label="4: DeclStmt \n n$2=_fun___objc_alloc_no_fail(sizeof(NSString):unsigned long) [line 23]\n *&s:NSString*=n$2 [line 23]\n " shape="box"] +"autorelease_main#Auto#instance.dbdd003a511fe2beb7e0a817d39f6fd8_4" [label="4: DeclStmt \n n$2=_fun___objc_alloc_no_fail(sizeof(t=NSString):unsigned long) [line 23]\n *&s:NSString*=n$2 [line 23]\n " shape="box"] "autorelease_main#Auto#instance.dbdd003a511fe2beb7e0a817d39f6fd8_4" -> "autorelease_main#Auto#instance.dbdd003a511fe2beb7e0a817d39f6fd8_3" ; diff --git a/infer/tests/codetoanalyze/objc/shared/memory_leaks_benchmark/MemoryLeakExample.m.dot b/infer/tests/codetoanalyze/objc/shared/memory_leaks_benchmark/MemoryLeakExample.m.dot index 8f0983a01..450ee81f1 100644 --- a/infer/tests/codetoanalyze/objc/shared/memory_leaks_benchmark/MemoryLeakExample.m.dot +++ b/infer/tests/codetoanalyze/objc/shared/memory_leaks_benchmark/MemoryLeakExample.m.dot @@ -7,7 +7,7 @@ digraph iCFG { "measureFrameSizeForText#MemoryLeakExample#class.f59bd9e59cef3fd16475487a380b3804_2" [label="2: Exit MemoryLeakExample_measureFrameSizeForText \n " color=yellow style=filled] -"measureFrameSizeForText#MemoryLeakExample#class.f59bd9e59cef3fd16475487a380b3804_3" [label="3: Call alloc \n n$14=_fun___objc_alloc_no_fail(sizeof(__CFAttributedString):unsigned long,_fun_CFAttributedStringCreateMutable:void) [line 35]\n " shape="box"] +"measureFrameSizeForText#MemoryLeakExample#class.f59bd9e59cef3fd16475487a380b3804_3" [label="3: Call alloc \n n$14=_fun___objc_alloc_no_fail(sizeof(t=__CFAttributedString):unsigned long,_fun_CFAttributedStringCreateMutable:void) [line 35]\n " shape="box"] "measureFrameSizeForText#MemoryLeakExample#class.f59bd9e59cef3fd16475487a380b3804_3" -> "measureFrameSizeForText#MemoryLeakExample#class.f59bd9e59cef3fd16475487a380b3804_2" ; @@ -22,7 +22,7 @@ digraph iCFG { "measureFrameSizeForTextNoLeak#MemoryLeakExample#class.9443bec011166230e1709abbe3c930d4_3" -> "measureFrameSizeForTextNoLeak#MemoryLeakExample#class.9443bec011166230e1709abbe3c930d4_2" ; -"measureFrameSizeForTextNoLeak#MemoryLeakExample#class.9443bec011166230e1709abbe3c930d4_4" [label="4: DeclStmt \n n$16=_fun___objc_alloc_no_fail(sizeof(__CFAttributedString):unsigned long,_fun_CFAttributedStringCreateMutable:void) [line 40]\n *&maString:__CFAttributedString*=n$16 [line 39]\n " shape="box"] +"measureFrameSizeForTextNoLeak#MemoryLeakExample#class.9443bec011166230e1709abbe3c930d4_4" [label="4: DeclStmt \n n$16=_fun___objc_alloc_no_fail(sizeof(t=__CFAttributedString):unsigned long,_fun_CFAttributedStringCreateMutable:void) [line 40]\n *&maString:__CFAttributedString*=n$16 [line 39]\n " shape="box"] "measureFrameSizeForTextNoLeak#MemoryLeakExample#class.9443bec011166230e1709abbe3c930d4_4" -> "measureFrameSizeForTextNoLeak#MemoryLeakExample#class.9443bec011166230e1709abbe3c930d4_3" ; @@ -78,7 +78,7 @@ digraph iCFG { "createCloseCrossGlyph:#MemoryLeakExample#class.b78475cbe035b221b50538a8aad3c9cf_2" [label="2: Exit MemoryLeakExample_createCloseCrossGlyph: \n " color=yellow style=filled] -"createCloseCrossGlyph:#MemoryLeakExample#class.b78475cbe035b221b50538a8aad3c9cf_3" [label="3: Call alloc \n n$21=_fun___objc_alloc_no_fail(sizeof(CGPath):unsigned long,_fun_CGPathCreateMutable:void) [line 55]\n " shape="box"] +"createCloseCrossGlyph:#MemoryLeakExample#class.b78475cbe035b221b50538a8aad3c9cf_3" [label="3: Call alloc \n n$21=_fun___objc_alloc_no_fail(sizeof(t=CGPath):unsigned long,_fun_CGPathCreateMutable:void) [line 55]\n " shape="box"] "createCloseCrossGlyph:#MemoryLeakExample#class.b78475cbe035b221b50538a8aad3c9cf_3" -> "createCloseCrossGlyph:#MemoryLeakExample#class.b78475cbe035b221b50538a8aad3c9cf_2" ; @@ -97,7 +97,7 @@ digraph iCFG { "createCloseCrossGlyphNoLeak:#MemoryLeakExample#class.0954bcd442044fd9788af38303a3790b_3" -> "createCloseCrossGlyphNoLeak:#MemoryLeakExample#class.0954bcd442044fd9788af38303a3790b_2" ; -"createCloseCrossGlyphNoLeak:#MemoryLeakExample#class.0954bcd442044fd9788af38303a3790b_4" [label="4: DeclStmt \n n$25=_fun___objc_alloc_no_fail(sizeof(CGPath):unsigned long,_fun_CGPathCreateMutable:void) [line 62]\n *&path1:CGPath*=n$25 [line 62]\n " shape="box"] +"createCloseCrossGlyphNoLeak:#MemoryLeakExample#class.0954bcd442044fd9788af38303a3790b_4" [label="4: DeclStmt \n n$25=_fun___objc_alloc_no_fail(sizeof(t=CGPath):unsigned long,_fun_CGPathCreateMutable:void) [line 62]\n *&path1:CGPath*=n$25 [line 62]\n " shape="box"] "createCloseCrossGlyphNoLeak:#MemoryLeakExample#class.0954bcd442044fd9788af38303a3790b_4" -> "createCloseCrossGlyphNoLeak:#MemoryLeakExample#class.0954bcd442044fd9788af38303a3790b_3" ; @@ -120,11 +120,11 @@ digraph iCFG { "layoutSubviews#MemoryLeakExample#instance.2b3151f18431bcdbc08267ea4ff96f53_4" -> "layoutSubviews#MemoryLeakExample#instance.2b3151f18431bcdbc08267ea4ff96f53_3" ; -"layoutSubviews#MemoryLeakExample#instance.2b3151f18431bcdbc08267ea4ff96f53_5" [label="5: DeclStmt \n n$4=_fun___objc_alloc_no_fail(sizeof(CGPath const ):unsigned long,_fun_CGPathCreateWithRect:void) [line 22]\n *&shadowPath:CGPath const *=n$4 [line 21]\n " shape="box"] +"layoutSubviews#MemoryLeakExample#instance.2b3151f18431bcdbc08267ea4ff96f53_5" [label="5: DeclStmt \n n$4=_fun___objc_alloc_no_fail(sizeof(t=CGPath const ):unsigned long,_fun_CGPathCreateWithRect:void) [line 22]\n *&shadowPath:CGPath const *=n$4 [line 21]\n " shape="box"] "layoutSubviews#MemoryLeakExample#instance.2b3151f18431bcdbc08267ea4ff96f53_5" -> "layoutSubviews#MemoryLeakExample#instance.2b3151f18431bcdbc08267ea4ff96f53_4" ; -"layoutSubviews#MemoryLeakExample#instance.2b3151f18431bcdbc08267ea4ff96f53_6" [label="6: DeclStmt \n n$5=_fun___objc_alloc_no_fail(sizeof(UIView):unsigned long) [line 20]\n *&attachmentContainerView:UIView*=n$5 [line 20]\n " shape="box"] +"layoutSubviews#MemoryLeakExample#instance.2b3151f18431bcdbc08267ea4ff96f53_6" [label="6: DeclStmt \n n$5=_fun___objc_alloc_no_fail(sizeof(t=UIView):unsigned long) [line 20]\n *&attachmentContainerView:UIView*=n$5 [line 20]\n " shape="box"] "layoutSubviews#MemoryLeakExample#instance.2b3151f18431bcdbc08267ea4ff96f53_6" -> "layoutSubviews#MemoryLeakExample#instance.2b3151f18431bcdbc08267ea4ff96f53_5" ; @@ -139,7 +139,7 @@ digraph iCFG { "test#MemoryLeakExample#instance.cbb708bfe735ac5e5777524359299e00_3" -> "test#MemoryLeakExample#instance.cbb708bfe735ac5e5777524359299e00_2" ; -"test#MemoryLeakExample#instance.cbb708bfe735ac5e5777524359299e00_4" [label="4: DeclStmt \n n$13=_fun___objc_alloc_no_fail(sizeof(CGPath const ):unsigned long,_fun_CGPathCreateWithRect:void) [line 30]\n *&shadowPath:CGPath const *=n$13 [line 29]\n " shape="box"] +"test#MemoryLeakExample#instance.cbb708bfe735ac5e5777524359299e00_4" [label="4: DeclStmt \n n$13=_fun___objc_alloc_no_fail(sizeof(t=CGPath const ):unsigned long,_fun_CGPathCreateWithRect:void) [line 30]\n *&shadowPath:CGPath const *=n$13 [line 29]\n " shape="box"] "test#MemoryLeakExample#instance.cbb708bfe735ac5e5777524359299e00_4" -> "test#MemoryLeakExample#instance.cbb708bfe735ac5e5777524359299e00_3" ; @@ -173,7 +173,7 @@ digraph iCFG { "regularLeak#MemoryLeakExample#instance.939a892cee505c3459f2d889292f218b_4" -> "regularLeak#MemoryLeakExample#instance.939a892cee505c3459f2d889292f218b_3" ; -"regularLeak#MemoryLeakExample#instance.939a892cee505c3459f2d889292f218b_5" [label="5: DeclStmt \n n$39=_fun_malloc_no_fail(sizeof(int32):int) [line 88]\n *&x:int*=n$39 [line 88]\n " shape="box"] +"regularLeak#MemoryLeakExample#instance.939a892cee505c3459f2d889292f218b_5" [label="5: DeclStmt \n n$39=_fun_malloc_no_fail(sizeof(t=int;nbytes=4):int) [line 88]\n *&x:int*=n$39 [line 88]\n " shape="box"] "regularLeak#MemoryLeakExample#instance.939a892cee505c3459f2d889292f218b_5" -> "regularLeak#MemoryLeakExample#instance.939a892cee505c3459f2d889292f218b_4" ; @@ -188,7 +188,7 @@ digraph iCFG { "blockCapturedVarLeak#MemoryLeakExample#instance.53bb018bc84d6a696dc756e20b5b3f52_3" -> "blockCapturedVarLeak#MemoryLeakExample#instance.53bb018bc84d6a696dc756e20b5b3f52_2" ; -"blockCapturedVarLeak#MemoryLeakExample#instance.53bb018bc84d6a696dc756e20b5b3f52_4" [label="4: DeclStmt \n DECLARE_LOCALS(&__objc_anonymous_block_MemoryLeakExample_blockCapturedVarLeak______1); [line 96]\n n$45=_fun___objc_alloc_no_fail(sizeof(__objc_anonymous_block_MemoryLeakExample_blockCapturedVarLeak______1):unsigned long) [line 96]\n *&__objc_anonymous_block_MemoryLeakExample_blockCapturedVarLeak______1:__objc_anonymous_block_MemoryLeakExample_blockCapturedVarLeak______1=n$45 [line 96]\n n$46=*&x:int* [line 96]\n *n$45.x:int*=n$46 [line 96]\n n$42=*&x:int* [line 96]\n *&blk:_fn_(*)=(_fun___objc_anonymous_block_MemoryLeakExample_blockCapturedVarLeak______1,n$42) [line 96]\n " shape="box"] +"blockCapturedVarLeak#MemoryLeakExample#instance.53bb018bc84d6a696dc756e20b5b3f52_4" [label="4: DeclStmt \n DECLARE_LOCALS(&__objc_anonymous_block_MemoryLeakExample_blockCapturedVarLeak______1); [line 96]\n n$45=_fun___objc_alloc_no_fail(sizeof(t=__objc_anonymous_block_MemoryLeakExample_blockCapturedVarLeak______1):unsigned long) [line 96]\n *&__objc_anonymous_block_MemoryLeakExample_blockCapturedVarLeak______1:__objc_anonymous_block_MemoryLeakExample_blockCapturedVarLeak______1=n$45 [line 96]\n n$46=*&x:int* [line 96]\n *n$45.x:int*=n$46 [line 96]\n n$42=*&x:int* [line 96]\n *&blk:_fn_(*)=(_fun___objc_anonymous_block_MemoryLeakExample_blockCapturedVarLeak______1,n$42) [line 96]\n " shape="box"] "blockCapturedVarLeak#MemoryLeakExample#instance.53bb018bc84d6a696dc756e20b5b3f52_4" -> "blockCapturedVarLeak#MemoryLeakExample#instance.53bb018bc84d6a696dc756e20b5b3f52_3" ; @@ -196,7 +196,7 @@ digraph iCFG { "blockCapturedVarLeak#MemoryLeakExample#instance.53bb018bc84d6a696dc756e20b5b3f52_5" -> "blockCapturedVarLeak#MemoryLeakExample#instance.53bb018bc84d6a696dc756e20b5b3f52_4" ; -"blockCapturedVarLeak#MemoryLeakExample#instance.53bb018bc84d6a696dc756e20b5b3f52_6" [label="6: DeclStmt \n n$48=_fun_malloc_no_fail(sizeof(int32):int) [line 94]\n *&x:int*=n$48 [line 94]\n " shape="box"] +"blockCapturedVarLeak#MemoryLeakExample#instance.53bb018bc84d6a696dc756e20b5b3f52_6" [label="6: DeclStmt \n n$48=_fun_malloc_no_fail(sizeof(t=int;nbytes=4):int) [line 94]\n *&x:int*=n$48 [line 94]\n " shape="box"] "blockCapturedVarLeak#MemoryLeakExample#instance.53bb018bc84d6a696dc756e20b5b3f52_6" -> "blockCapturedVarLeak#MemoryLeakExample#instance.53bb018bc84d6a696dc756e20b5b3f52_5" ; @@ -211,7 +211,7 @@ digraph iCFG { "blockFreeNoLeakTODO#MemoryLeakExample#instance.745cca07ccdb517734d79c9d7a1eaed8_3" -> "blockFreeNoLeakTODO#MemoryLeakExample#instance.745cca07ccdb517734d79c9d7a1eaed8_2" ; -"blockFreeNoLeakTODO#MemoryLeakExample#instance.745cca07ccdb517734d79c9d7a1eaed8_4" [label="4: DeclStmt \n DECLARE_LOCALS(&__objc_anonymous_block_MemoryLeakExample_blockFreeNoLeakTODO______2); [line 105]\n n$56=_fun___objc_alloc_no_fail(sizeof(__objc_anonymous_block_MemoryLeakExample_blockFreeNoLeakTODO______2):unsigned long) [line 105]\n *&__objc_anonymous_block_MemoryLeakExample_blockFreeNoLeakTODO______2:__objc_anonymous_block_MemoryLeakExample_blockFreeNoLeakTODO______2=n$56 [line 105]\n n$57=*&x:int* [line 105]\n *n$56.x:int*=n$57 [line 105]\n n$51=*&x:int* [line 105]\n *&blk:_fn_(*)=(_fun___objc_anonymous_block_MemoryLeakExample_blockFreeNoLeakTODO______2,n$51) [line 105]\n " shape="box"] +"blockFreeNoLeakTODO#MemoryLeakExample#instance.745cca07ccdb517734d79c9d7a1eaed8_4" [label="4: DeclStmt \n DECLARE_LOCALS(&__objc_anonymous_block_MemoryLeakExample_blockFreeNoLeakTODO______2); [line 105]\n n$56=_fun___objc_alloc_no_fail(sizeof(t=__objc_anonymous_block_MemoryLeakExample_blockFreeNoLeakTODO______2):unsigned long) [line 105]\n *&__objc_anonymous_block_MemoryLeakExample_blockFreeNoLeakTODO______2:__objc_anonymous_block_MemoryLeakExample_blockFreeNoLeakTODO______2=n$56 [line 105]\n n$57=*&x:int* [line 105]\n *n$56.x:int*=n$57 [line 105]\n n$51=*&x:int* [line 105]\n *&blk:_fn_(*)=(_fun___objc_anonymous_block_MemoryLeakExample_blockFreeNoLeakTODO______2,n$51) [line 105]\n " shape="box"] "blockFreeNoLeakTODO#MemoryLeakExample#instance.745cca07ccdb517734d79c9d7a1eaed8_4" -> "blockFreeNoLeakTODO#MemoryLeakExample#instance.745cca07ccdb517734d79c9d7a1eaed8_3" ; @@ -219,7 +219,7 @@ digraph iCFG { "blockFreeNoLeakTODO#MemoryLeakExample#instance.745cca07ccdb517734d79c9d7a1eaed8_5" -> "blockFreeNoLeakTODO#MemoryLeakExample#instance.745cca07ccdb517734d79c9d7a1eaed8_4" ; -"blockFreeNoLeakTODO#MemoryLeakExample#instance.745cca07ccdb517734d79c9d7a1eaed8_6" [label="6: DeclStmt \n n$59=_fun_malloc_no_fail(sizeof(int32):int) [line 103]\n *&x:int*=n$59 [line 103]\n " shape="box"] +"blockFreeNoLeakTODO#MemoryLeakExample#instance.745cca07ccdb517734d79c9d7a1eaed8_6" [label="6: DeclStmt \n n$59=_fun_malloc_no_fail(sizeof(t=int;nbytes=4):int) [line 103]\n *&x:int*=n$59 [line 103]\n " shape="box"] "blockFreeNoLeakTODO#MemoryLeakExample#instance.745cca07ccdb517734d79c9d7a1eaed8_6" -> "blockFreeNoLeakTODO#MemoryLeakExample#instance.745cca07ccdb517734d79c9d7a1eaed8_5" ; diff --git a/infer/tests/codetoanalyze/objc/shared/memory_leaks_benchmark/RetainReleaseExample.m.dot b/infer/tests/codetoanalyze/objc/shared/memory_leaks_benchmark/RetainReleaseExample.m.dot index 3d5440d22..9be3f5cc5 100644 --- a/infer/tests/codetoanalyze/objc/shared/memory_leaks_benchmark/RetainReleaseExample.m.dot +++ b/infer/tests/codetoanalyze/objc/shared/memory_leaks_benchmark/RetainReleaseExample.m.dot @@ -15,7 +15,7 @@ digraph iCFG { "retain_release_test.65a9467f2c991ef519f3b0d97687f937_4" -> "retain_release_test.65a9467f2c991ef519f3b0d97687f937_3" ; -"retain_release_test.65a9467f2c991ef519f3b0d97687f937_5" [label="5: DeclStmt \n n$3=_fun___objc_alloc_no_fail(sizeof(RRA):unsigned long) [line 25]\n n$4=_fun_RRA_init(n$3:RRA*) virtual [line 25]\n *&a:RRA*=n$4 [line 25]\n " shape="box"] +"retain_release_test.65a9467f2c991ef519f3b0d97687f937_5" [label="5: DeclStmt \n n$3=_fun___objc_alloc_no_fail(sizeof(t=RRA):unsigned long) [line 25]\n n$4=_fun_RRA_init(n$3:RRA*) virtual [line 25]\n *&a:RRA*=n$4 [line 25]\n " shape="box"] "retain_release_test.65a9467f2c991ef519f3b0d97687f937_5" -> "retain_release_test.65a9467f2c991ef519f3b0d97687f937_4" ; diff --git a/infer/tests/codetoanalyze/objc/shared/memory_leaks_benchmark/RetainReleaseExample2.m.dot b/infer/tests/codetoanalyze/objc/shared/memory_leaks_benchmark/RetainReleaseExample2.m.dot index 19d3f9fc1..7f7e47374 100644 --- a/infer/tests/codetoanalyze/objc/shared/memory_leaks_benchmark/RetainReleaseExample2.m.dot +++ b/infer/tests/codetoanalyze/objc/shared/memory_leaks_benchmark/RetainReleaseExample2.m.dot @@ -19,7 +19,7 @@ digraph iCFG { "retain_release2_test.7ec6637f213ea568e9cee49c4a91f673_5" -> "retain_release2_test.7ec6637f213ea568e9cee49c4a91f673_4" ; -"retain_release2_test.7ec6637f213ea568e9cee49c4a91f673_6" [label="6: DeclStmt \n n$4=_fun___objc_alloc_no_fail(sizeof(RR2):unsigned long) [line 29]\n n$5=_fun_RR2_init(n$4:RR2*) virtual [line 29]\n *&a:RR2*=n$5 [line 29]\n " shape="box"] +"retain_release2_test.7ec6637f213ea568e9cee49c4a91f673_6" [label="6: DeclStmt \n n$4=_fun___objc_alloc_no_fail(sizeof(t=RR2):unsigned long) [line 29]\n n$5=_fun_RR2_init(n$4:RR2*) virtual [line 29]\n *&a:RR2*=n$5 [line 29]\n " shape="box"] "retain_release2_test.7ec6637f213ea568e9cee49c4a91f673_6" -> "retain_release2_test.7ec6637f213ea568e9cee49c4a91f673_5" ; @@ -75,7 +75,7 @@ digraph iCFG { "test5.e3d704f3542b44a621ebed70dc0efe13_3" -> "test5.e3d704f3542b44a621ebed70dc0efe13_2" ; -"test5.e3d704f3542b44a621ebed70dc0efe13_4" [label="4: DeclStmt \n n$1=_fun___objc_alloc_no_fail(sizeof(RR2):unsigned long) [line 55]\n n$2=_fun_RR2_init(n$1:RR2*) virtual [line 55]\n *&a:RR2*=n$2 [line 55]\n " shape="box"] +"test5.e3d704f3542b44a621ebed70dc0efe13_4" [label="4: DeclStmt \n n$1=_fun___objc_alloc_no_fail(sizeof(t=RR2):unsigned long) [line 55]\n n$2=_fun_RR2_init(n$1:RR2*) virtual [line 55]\n *&a:RR2*=n$2 [line 55]\n " shape="box"] "test5.e3d704f3542b44a621ebed70dc0efe13_4" -> "test5.e3d704f3542b44a621ebed70dc0efe13_3" ; @@ -94,7 +94,7 @@ digraph iCFG { "test6.4cfad7076129962ee70c36839a1e3e15_4" -> "test6.4cfad7076129962ee70c36839a1e3e15_3" ; -"test6.4cfad7076129962ee70c36839a1e3e15_5" [label="5: DeclStmt \n n$3=_fun___objc_alloc_no_fail(sizeof(RR2):unsigned long) [line 61]\n n$4=_fun_RR2_init(n$3:RR2*) virtual [line 61]\n *&a:RR2*=n$4 [line 61]\n " shape="box"] +"test6.4cfad7076129962ee70c36839a1e3e15_5" [label="5: DeclStmt \n n$3=_fun___objc_alloc_no_fail(sizeof(t=RR2):unsigned long) [line 61]\n n$4=_fun_RR2_init(n$3:RR2*) virtual [line 61]\n *&a:RR2*=n$4 [line 61]\n " shape="box"] "test6.4cfad7076129962ee70c36839a1e3e15_5" -> "test6.4cfad7076129962ee70c36839a1e3e15_4" ; diff --git a/infer/tests/codetoanalyze/objc/shared/memory_leaks_benchmark/TollBridgeExample.m.dot b/infer/tests/codetoanalyze/objc/shared/memory_leaks_benchmark/TollBridgeExample.m.dot index 5ba007c30..a93294f26 100644 --- a/infer/tests/codetoanalyze/objc/shared/memory_leaks_benchmark/TollBridgeExample.m.dot +++ b/infer/tests/codetoanalyze/objc/shared/memory_leaks_benchmark/TollBridgeExample.m.dot @@ -7,7 +7,7 @@ digraph iCFG { "cfautorelease_test.2ccea2233b65cd3828a2d5e2571ad69b_2" [label="2: Exit cfautorelease_test \n " color=yellow style=filled] -"cfautorelease_test.2ccea2233b65cd3828a2d5e2571ad69b_3" [label="3: Return Stmt \n n$0=_fun___builtin___CFStringMakeConstantString(\"Icon\":char const *) [line 41]\n n$1=_fun_CTFontCreateWithName(n$0:__CFString const *,17.000000:double,null:CGAffineTransform const *) [line 41]\n n$2=_fun___objc_cast(n$1:void const *,sizeof(void const ):unsigned long) [line 41]\n *&return:__CTFont const *=n$2 [line 41]\n " shape="box"] +"cfautorelease_test.2ccea2233b65cd3828a2d5e2571ad69b_3" [label="3: Return Stmt \n n$0=_fun___builtin___CFStringMakeConstantString(\"Icon\":char const *) [line 41]\n n$1=_fun_CTFontCreateWithName(n$0:__CFString const *,17.000000:double,null:CGAffineTransform const *) [line 41]\n n$2=_fun___objc_cast(n$1:void const *,sizeof(t=void const ):unsigned long) [line 41]\n *&return:__CTFont const *=n$2 [line 41]\n " shape="box"] "cfautorelease_test.2ccea2233b65cd3828a2d5e2571ad69b_3" -> "cfautorelease_test.2ccea2233b65cd3828a2d5e2571ad69b_2" ; @@ -67,7 +67,7 @@ digraph iCFG { "brideRetained#TollBridgeExample#instance.de039e838ea3246eff789fdc0d11405c_3" -> "brideRetained#TollBridgeExample#instance.de039e838ea3246eff789fdc0d11405c_2" ; -"brideRetained#TollBridgeExample#instance.de039e838ea3246eff789fdc0d11405c_4" [label="4: DeclStmt \n n$5=_fun___objc_alloc_no_fail(sizeof(NSLocale):unsigned long) [line 30]\n *&observer:objc_object*=n$5 [line 30]\n " shape="box"] +"brideRetained#TollBridgeExample#instance.de039e838ea3246eff789fdc0d11405c_4" [label="4: DeclStmt \n n$5=_fun___objc_alloc_no_fail(sizeof(t=NSLocale):unsigned long) [line 30]\n *&observer:objc_object*=n$5 [line 30]\n " shape="box"] "brideRetained#TollBridgeExample#instance.de039e838ea3246eff789fdc0d11405c_4" -> "brideRetained#TollBridgeExample#instance.de039e838ea3246eff789fdc0d11405c_3" ; @@ -78,7 +78,7 @@ digraph iCFG { "_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 37]\n n$7=_fun___objc_cast(n$6:void const *,sizeof(objc_object):unsigned long) [line 37]\n " shape="box"] +"_readHTTPHeader#TollBridgeExample#instance.3d37ce88cf13750e89ba404865a70554_3" [label="3: Call _fun_CFBridgingRelease \n n$6=*&ref:__CFDictionary const * [line 37]\n n$7=_fun___objc_cast(n$6:void const *,sizeof(t=objc_object):unsigned long) [line 37]\n " shape="box"] "_readHTTPHeader#TollBridgeExample#instance.3d37ce88cf13750e89ba404865a70554_3" -> "_readHTTPHeader#TollBridgeExample#instance.3d37ce88cf13750e89ba404865a70554_2" ; diff --git a/infer/tests/codetoanalyze/objc/shared/memory_leaks_benchmark/arc_methods.m.dot b/infer/tests/codetoanalyze/objc/shared/memory_leaks_benchmark/arc_methods.m.dot index 94eb6b87d..2cc95014a 100644 --- a/infer/tests/codetoanalyze/objc/shared/memory_leaks_benchmark/arc_methods.m.dot +++ b/infer/tests/codetoanalyze/objc/shared/memory_leaks_benchmark/arc_methods.m.dot @@ -11,7 +11,7 @@ digraph iCFG { "newA#ArcMethodsA#class.8f73d571693162b8fe59ae9b171012f1_3" -> "newA#ArcMethodsA#class.8f73d571693162b8fe59ae9b171012f1_2" ; -"newA#ArcMethodsA#class.8f73d571693162b8fe59ae9b171012f1_4" [label="4: DeclStmt \n n$1=_fun___objc_alloc_no_fail(sizeof(ArcMethodsA):unsigned long) [line 23]\n n$2=_fun_NSObject_init(n$1:ArcMethodsA*) virtual [line 23]\n *&a:ArcMethodsA*=n$2 [line 23]\n " shape="box"] +"newA#ArcMethodsA#class.8f73d571693162b8fe59ae9b171012f1_4" [label="4: DeclStmt \n n$1=_fun___objc_alloc_no_fail(sizeof(t=ArcMethodsA):unsigned long) [line 23]\n n$2=_fun_NSObject_init(n$1:ArcMethodsA*) virtual [line 23]\n *&a:ArcMethodsA*=n$2 [line 23]\n " shape="box"] "newA#ArcMethodsA#class.8f73d571693162b8fe59ae9b171012f1_4" -> "newA#ArcMethodsA#class.8f73d571693162b8fe59ae9b171012f1_3" ; @@ -26,7 +26,7 @@ digraph iCFG { "someA#ArcMethodsA#class.b84b222a4d332a9b8f3f1d6626af9c8f_3" -> "someA#ArcMethodsA#class.b84b222a4d332a9b8f3f1d6626af9c8f_2" ; -"someA#ArcMethodsA#class.b84b222a4d332a9b8f3f1d6626af9c8f_4" [label="4: DeclStmt \n n$5=_fun___objc_alloc_no_fail(sizeof(ArcMethodsA):unsigned long) [line 28]\n n$6=_fun_NSObject_init(n$5:ArcMethodsA*) virtual [line 28]\n *&a:ArcMethodsA*=n$6 [line 28]\n " shape="box"] +"someA#ArcMethodsA#class.b84b222a4d332a9b8f3f1d6626af9c8f_4" [label="4: DeclStmt \n n$5=_fun___objc_alloc_no_fail(sizeof(t=ArcMethodsA):unsigned long) [line 28]\n n$6=_fun_NSObject_init(n$5:ArcMethodsA*) virtual [line 28]\n *&a:ArcMethodsA*=n$6 [line 28]\n " shape="box"] "someA#ArcMethodsA#class.b84b222a4d332a9b8f3f1d6626af9c8f_4" -> "someA#ArcMethodsA#class.b84b222a4d332a9b8f3f1d6626af9c8f_3" ; diff --git a/infer/tests/codetoanalyze/objc/shared/npe/Nonnull_attribute_example.m.dot b/infer/tests/codetoanalyze/objc/shared/npe/Nonnull_attribute_example.m.dot index 1f71de7b6..38bec1e49 100644 --- a/infer/tests/codetoanalyze/objc/shared/npe/Nonnull_attribute_example.m.dot +++ b/infer/tests/codetoanalyze/objc/shared/npe/Nonnull_attribute_example.m.dot @@ -18,7 +18,7 @@ digraph iCFG { "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(NonnullA):unsigned long) [line 26]\n n$1=_fun_NSObject_init(n$0:NonnullA*) virtual [line 26]\n *&return:NonnullA*=n$1 [line 26]\n n$2=_fun___set_autorelease_attribute(n$1:NonnullA*) [line 26]\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 26]\n n$1=_fun_NSObject_init(n$0:NonnullA*) virtual [line 26]\n *&return:NonnullA*=n$1 [line 26]\n n$2=_fun___set_autorelease_attribute(n$1:NonnullA*) [line 26]\n " shape="box"] "getA#NonnullA#instance.d4b29ece551a370c3f0c0c12526b3def_3" -> "getA#NonnullA#instance.d4b29ece551a370c3f0c0c12526b3def_2" ; diff --git a/infer/tests/codetoanalyze/objc/shared/npe/npe_malloc.m.dot b/infer/tests/codetoanalyze/objc/shared/npe/npe_malloc.m.dot index 690c8658f..2d92c5d6e 100644 --- a/infer/tests/codetoanalyze/objc/shared/npe/npe_malloc.m.dot +++ b/infer/tests/codetoanalyze/objc/shared/npe/npe_malloc.m.dot @@ -15,7 +15,7 @@ digraph iCFG { "test#NpeMallocC#instance.736ba93f935cc64d6e9c549cc16c07a7_4" -> "test#NpeMallocC#instance.736ba93f935cc64d6e9c549cc16c07a7_3" ; -"test#NpeMallocC#instance.736ba93f935cc64d6e9c549cc16c07a7_5" [label="5: DeclStmt \n n$2=_fun_malloc_no_fail(sizeof(Person64):Person) [line 25]\n *&person:Person*=n$2 [line 25]\n " shape="box"] +"test#NpeMallocC#instance.736ba93f935cc64d6e9c549cc16c07a7_5" [label="5: DeclStmt \n n$2=_fun_malloc_no_fail(sizeof(t=Person;nbytes=8):Person) [line 25]\n *&person:Person*=n$2 [line 25]\n " shape="box"] "test#NpeMallocC#instance.736ba93f935cc64d6e9c549cc16c07a7_5" -> "test#NpeMallocC#instance.736ba93f935cc64d6e9c549cc16c07a7_4" ; diff --git a/infer/tests/codetoanalyze/objc/shared/property/GetterExample.m.dot b/infer/tests/codetoanalyze/objc/shared/property/GetterExample.m.dot index fdb0517f2..09ff72557 100644 --- a/infer/tests/codetoanalyze/objc/shared/property/GetterExample.m.dot +++ b/infer/tests/codetoanalyze/objc/shared/property/GetterExample.m.dot @@ -15,7 +15,7 @@ digraph iCFG { "should_have_div0.f0a0c4e0ab301ca0aa2f50aa87721dc4_4" -> "should_have_div0.f0a0c4e0ab301ca0aa2f50aa87721dc4_3" ; -"should_have_div0.f0a0c4e0ab301ca0aa2f50aa87721dc4_5" [label="5: DeclStmt \n n$3=_fun___objc_alloc_no_fail(sizeof(GetterExample):unsigned long) [line 15]\n n$4=_fun_NSObject_init(n$3:GetterExample*) virtual [line 15]\n *&a:GetterExample*=n$4 [line 15]\n " shape="box"] +"should_have_div0.f0a0c4e0ab301ca0aa2f50aa87721dc4_5" [label="5: DeclStmt \n n$3=_fun___objc_alloc_no_fail(sizeof(t=GetterExample):unsigned long) [line 15]\n n$4=_fun_NSObject_init(n$3:GetterExample*) virtual [line 15]\n *&a:GetterExample*=n$4 [line 15]\n " shape="box"] "should_have_div0.f0a0c4e0ab301ca0aa2f50aa87721dc4_5" -> "should_have_div0.f0a0c4e0ab301ca0aa2f50aa87721dc4_4" ; diff --git a/infer/tests/codetoanalyze/objc/shared/property/PropertyAttributes.m.dot b/infer/tests/codetoanalyze/objc/shared/property/PropertyAttributes.m.dot index 84ebdb153..46a201515 100644 --- a/infer/tests/codetoanalyze/objc/shared/property/PropertyAttributes.m.dot +++ b/infer/tests/codetoanalyze/objc/shared/property/PropertyAttributes.m.dot @@ -19,7 +19,7 @@ digraph iCFG { "test.098f6bcd4621d373cade4e832627b4f6_5" -> "test.098f6bcd4621d373cade4e832627b4f6_4" ; -"test.098f6bcd4621d373cade4e832627b4f6_6" [label="6: DeclStmt \n n$3=_fun___objc_alloc_no_fail(sizeof(PropertyA):unsigned long) [line 43]\n n$4=_fun_PropertyA_init(n$3:PropertyA*) virtual [line 43]\n *&a:PropertyA*=n$4 [line 43]\n " shape="box"] +"test.098f6bcd4621d373cade4e832627b4f6_6" [label="6: DeclStmt \n n$3=_fun___objc_alloc_no_fail(sizeof(t=PropertyA):unsigned long) [line 43]\n n$4=_fun_PropertyA_init(n$3:PropertyA*) virtual [line 43]\n *&a:PropertyA*=n$4 [line 43]\n " shape="box"] "test.098f6bcd4621d373cade4e832627b4f6_6" -> "test.098f6bcd4621d373cade4e832627b4f6_5" ; @@ -69,7 +69,7 @@ digraph iCFG { "copy#PropertyA#instance.d5955e11cf35af4b4d602b2971590d5f_9" -> "copy#PropertyA#instance.d5955e11cf35af4b4d602b2971590d5f_8" ; -"copy#PropertyA#instance.d5955e11cf35af4b4d602b2971590d5f_10" [label="10: DeclStmt \n n$12=_fun___objc_alloc_no_fail(sizeof(PropertyA):unsigned long) [line 31]\n n$13=_fun_PropertyA_init(n$12:PropertyA*) virtual [line 31]\n *&other:PropertyA*=n$13 [line 31]\n " shape="box"] +"copy#PropertyA#instance.d5955e11cf35af4b4d602b2971590d5f_10" [label="10: DeclStmt \n n$12=_fun___objc_alloc_no_fail(sizeof(t=PropertyA):unsigned long) [line 31]\n n$13=_fun_PropertyA_init(n$12:PropertyA*) virtual [line 31]\n *&other:PropertyA*=n$13 [line 31]\n " shape="box"] "copy#PropertyA#instance.d5955e11cf35af4b4d602b2971590d5f_10" -> "copy#PropertyA#instance.d5955e11cf35af4b4d602b2971590d5f_5" ; diff --git a/infer/tests/codetoanalyze/objc/shared/protocol_procdesc/main.c.dot b/infer/tests/codetoanalyze/objc/shared/protocol_procdesc/main.c.dot index 5504636eb..1bcdd70fa 100644 --- a/infer/tests/codetoanalyze/objc/shared/protocol_procdesc/main.c.dot +++ b/infer/tests/codetoanalyze/objc/shared/protocol_procdesc/main.c.dot @@ -15,7 +15,7 @@ digraph iCFG { "ProtocolProcdescMain.84e7d2448aa904c965bf225f17cfb503_4" -> "ProtocolProcdescMain.84e7d2448aa904c965bf225f17cfb503_3" ; -"ProtocolProcdescMain.84e7d2448aa904c965bf225f17cfb503_5" [label="5: DeclStmt \n n$1=_fun___objc_alloc_no_fail(sizeof(Bicycle):unsigned long) [line 14]\n *&bike:Bicycle*=n$1 [line 14]\n " shape="box"] +"ProtocolProcdescMain.84e7d2448aa904c965bf225f17cfb503_5" [label="5: DeclStmt \n n$1=_fun___objc_alloc_no_fail(sizeof(t=Bicycle):unsigned long) [line 14]\n *&bike:Bicycle*=n$1 [line 14]\n " shape="box"] "ProtocolProcdescMain.84e7d2448aa904c965bf225f17cfb503_5" -> "ProtocolProcdescMain.84e7d2448aa904c965bf225f17cfb503_4" ;