[DB] Use realpath when calling source_file_from_abs_path

Summary:
Dealing with symbolic links in project root is tricky. To avoid it, always normalize all paths to sources with `realpath`.

Changes to tests are expected - infer started to resolve symbolic links which screws up with our testing mechanism.

Reviewed By: jberdine

Differential Revision: D4237587

fbshipit-source-id: fe1cb01
master
Andrzej Kotulski 8 years ago committed by Facebook Github Bot
parent 9e9ca333f9
commit 6192cb98b4

@ -1032,10 +1032,11 @@ let write_icfg_dotty_to_file source cfg fname =
let print_icfg_dotty source cfg =
let fname =
if Config.frontend_tests
then
match Config.icfg_dotty_outfile with
| Some file -> file
| None when Config.frontend_tests = true ->
(DB.source_file_to_abs_path source) ^ ".test.dot"
else
| None ->
DB.filename_to_string
(DB.Results_dir.path_to_filename
(DB.Results_dir.Abs_source_dir source)

@ -936,6 +936,11 @@ and headers =
~exes:CLOpt.[Clang]
"Analyze code in header files"
and icfg_dotty_outfile =
CLOpt.mk_path_opt ~long:"icfg-dotty-outfile" ~meta:"path"
"If set, specifies path where .dot file should be written, it overrides the path for all \
other options that would generate icfg file otherwise"
and infer_cache =
CLOpt.mk_path_opt ~deprecated:["infer_cache"; "-infer_cache"] ~long:"infer-cache"
~meta:"dir" "Select a directory to contain the infer cache (Buck and Java only)"
@ -1465,6 +1470,7 @@ and from_json_report = !from_json_report
and frontend_debug = !frontend_debug
and frontend_stats = !frontend_stats
and headers = !headers
and icfg_dotty_outfile = !icfg_dotty_outfile
and infer_cache = !infer_cache
and iterations = !iterations
and java_jar_compiler = !java_jar_compiler

@ -200,6 +200,7 @@ val frontend_debug : bool
val frontend_tests : bool
val frontend_stats : bool
val headers : bool
val icfg_dotty_outfile : string option
val infer_cache : string option
val is_originator : bool
val iterations : int

@ -65,14 +65,18 @@ let rel_path_from_abs_path root fname =
(** convert a project root directory and a full path to a rooted source file *)
let source_file_from_abs_path fname =
(* IMPORTANT: results of realpath are cached to not ruin performance *)
let fname_real = realpath fname in
let project_root_real = realpath Config.project_root in
let models_dir_real = Config.models_src_dir in
if Filename.is_relative fname then
(failwithf
"ERROR: Path %s is relative, when absolute path was expected .@."
fname);
match rel_path_from_abs_path Config.project_root fname with
match rel_path_from_abs_path project_root_real fname_real with
| Some path -> RelativeProjectRoot path
| None -> (
match rel_path_from_abs_path Config.models_src_dir fname with
match rel_path_from_abs_path models_dir_real fname_real with
| Some path -> RelativeInferModel path
| None -> Absolute fname (* fname is absolute already *)
)
@ -131,6 +135,10 @@ let source_file_is_cpp_model file =
string_is_prefix Config.relative_cpp_models_dir path
| _ -> false
let source_file_is_under_project_root = function
| RelativeProjectRoot _ -> true
| Absolute _ | RelativeInferModel _ -> false
let source_file_exists_cache = Hashtbl.create 256
let source_file_path_exists abs_path =
@ -140,7 +148,6 @@ let source_file_path_exists abs_path =
Hashtbl.add source_file_exists_cache abs_path result;
result
let source_file_of_header header_file =
let abs_path = source_file_to_abs_path header_file in
let source_file_exts = ["c"; "cc"; "cpp"; "cxx"; "m"; "mm"] in

@ -120,6 +120,9 @@ val source_file_is_infer_model : source_file -> bool
(** Returns true if the file is a C++ model *)
val source_file_is_cpp_model : source_file -> bool
(** Returns true if the file is in project root *)
val source_file_is_under_project_root : source_file -> bool
(** Return approximate source file corresponding to the parameter if it's header file and
file exists. returns None otherwise *)
val source_file_of_header : source_file -> source_file option

@ -66,7 +66,8 @@ let do_source_file translation_unit_context ast =
if Config.stats_mode
|| Config.debug_mode
|| Config.testing_mode
|| Config.frontend_tests then
|| Config.frontend_tests
|| Option.is_some Config.icfg_dotty_outfile then
(Dotty.print_icfg_dotty source_file cfg;
Cg.save_call_graph_dotty source_file Specs.get_specs call_graph);
(* NOTE: nothing should be written to source_dir after this *)

@ -18,26 +18,21 @@ let clang_to_sil_location trans_unit_ctx clang_loc =
trans_unit_ctx.CFrontend_config.source_file clang_loc.Clang_ast_t.sl_file in
Location.{line; col; file}
let file_in_project file =
(* IMPORTANT: results of realpath are cached to not ruin performance *)
let real_root = realpath Config.project_root in
let real_file = realpath file in
let file_in_project = string_is_prefix real_root real_file in
let paths = Config.skip_translation_headers in
let source_file_in_project source_file =
let file_in_project = DB.source_file_is_under_project_root source_file in
let rel_source_file = DB.source_file_to_string source_file in
let file_should_be_skipped =
IList.exists
(fun path -> string_is_prefix (Filename.concat real_root path) real_file)
paths in
(fun path -> string_is_prefix path rel_source_file)
Config.skip_translation_headers in
file_in_project && not (file_should_be_skipped)
let should_do_frontend_check trans_unit_ctx (loc_start, _) =
match loc_start.Clang_ast_t.sl_file with
| Some file ->
let equal_current_source file =
DB.source_file_equal (DB.source_file_from_abs_path file)
trans_unit_ctx.CFrontend_config.source_file in
equal_current_source file ||
(file_in_project file && not Config.testing_mode)
let source_file = (DB.source_file_from_abs_path file) in
DB.source_file_equal source_file trans_unit_ctx.CFrontend_config.source_file ||
(source_file_in_project source_file && not Config.testing_mode)
| None -> false
(** We translate by default the instructions in the current file. In C++ development, we also
@ -59,8 +54,8 @@ let should_translate trans_unit_ctx (loc_start, loc_end) decl_trans_context ~tra
which uses same logic to produce both files *)
let equal_current_source = DB.source_file_equal trans_unit_ctx.CFrontend_config.source_file
in
let file_in_project = map_path_of file_in_project loc_end
|| map_path_of file_in_project loc_start in
let file_in_project = map_file_of source_file_in_project loc_end
|| map_file_of source_file_in_project loc_start in
let translate_on_demand = translate_when_used || file_in_project || Config.models_mode in
let file_in_models = map_file_of DB.source_file_is_cpp_model loc_end
|| map_file_of DB.source_file_is_cpp_model loc_start in

@ -20,7 +20,7 @@ $(OBJECTS): $(SOURCES)
infer-out/report.json: $(INFER_BIN) $(SOURCES)
$(call silent_on_success,\
$(INFER_BIN) -a $(ANALYZER) -- ant)
$(INFER_BIN) -a $(ANALYZER) --project-root $(TESTS_DIR) --inferconfig-home . -- ant)
clean:
ant clean

@ -1,192 +1,192 @@
src/infer/AnalysisStops.java, void AnalysisStops.fieldReadInCalleeMayCauseFalseNegative(), 3, NULL_DEREFERENCE, [start of procedure fieldReadInCalleeMayCauseFalseNegative(),start of procedure derefParam(...)]
src/infer/AnalysisStops.java, void AnalysisStops.fieldReadInCalleeWithAngelicObjFieldMayCauseFalseNegative(), 3, NULL_DEREFERENCE, [start of procedure fieldReadInCalleeWithAngelicObjFieldMayCauseFalseNegative(),start of procedure derefParam(...)]
src/infer/AnalysisStops.java, void AnalysisStops.skipFunctionInLoopMayCauseFalseNegative(), 5, NULL_DEREFERENCE, [start of procedure skipFunctionInLoopMayCauseFalseNegative(),Taking true branch,Taking false branch]
src/infer/AutoGenerated.java, void AutoGenerated.npe(), 2, NULL_DEREFERENCE, [start of procedure npe()]
src/infer/Builtins.java, void Builtins.doNotBlockError(Object), 3, NULL_DEREFERENCE, [start of procedure doNotBlockError(...),Taking true branch]
src/infer/CloseableAsResourceExample.java, T CloseableAsResourceExample.sourceOfNullWithResourceLeak(), 1, RESOURCE_LEAK, [start of procedure sourceOfNullWithResourceLeak(),start of procedure SomeResource(),return from a call to SomeResource.<init>()]
src/infer/CloseableAsResourceExample.java, void CloseableAsResourceExample.failToCloseWithCloseQuietly(), 5, RESOURCE_LEAK, [start of procedure failToCloseWithCloseQuietly(),start of procedure SomeResource(),return from a call to SomeResource.<init>(),start of procedure doSomething(),Taking true branch,start of procedure LocalException(),return from a call to LocalException.<init>(),exception codetoanalyze.java.infer.LocalException,return from a call to void SomeResource.doSomething()]
src/infer/CloseableAsResourceExample.java, void CloseableAsResourceExample.leakFoundWhenIndirectlyImplementingCloseable(), 1, RESOURCE_LEAK, [start of procedure leakFoundWhenIndirectlyImplementingCloseable(),start of procedure CloseableAsResourceExample$MyResource(...),return from a call to CloseableAsResourceExample$MyResource.<init>(CloseableAsResourceExample)]
src/infer/CloseableAsResourceExample.java, void CloseableAsResourceExample.notClosingCloseable(), 1, RESOURCE_LEAK, [start of procedure notClosingCloseable(),start of procedure SomeResource(),return from a call to SomeResource.<init>()]
src/infer/CloseableAsResourceExample.java, void CloseableAsResourceExample.notClosingWrapper(), 2, RESOURCE_LEAK, [start of procedure notClosingWrapper(),start of procedure Resource(),return from a call to Resource.<init>(),start of procedure Sub(...),start of procedure Wrapper(...),return from a call to Wrapper.<init>(Resource),return from a call to Sub.<init>(Resource),start of procedure close(),return from a call to void Resource.close()]
src/infer/CloseableAsResourceExample.java, void CloseableAsResourceExample.skippedVritualCallDoesNotCloseResourceOnReceiver(), 2, RESOURCE_LEAK, [start of procedure skippedVritualCallDoesNotCloseResourceOnReceiver(),start of procedure SomeResource(),return from a call to SomeResource.<init>()]
src/infer/CloseableAsResourceExample.java, void CloseableAsResourceExample.withException(), 4, RESOURCE_LEAK, [start of procedure withException(),start of procedure SomeResource(),return from a call to SomeResource.<init>(),start of procedure doSomething(),Taking true branch,start of procedure LocalException(),return from a call to LocalException.<init>(),exception codetoanalyze.java.infer.LocalException,return from a call to void SomeResource.doSomething()]
src/infer/ContextLeaks.java, ContextLeaks$Singleton ContextLeaks$Singleton.getInstance(Context), 4, CONTEXT_LEAK, [start of procedure getInstance(...),Taking true branch,start of procedure ContextLeaks$Singleton(...),return from a call to ContextLeaks$Singleton.<init>(Context),return from a call to ContextLeaks$Singleton ContextLeaks$Singleton.getInstance(Context)]
src/infer/ContextLeaks.java, ContextLeaks$Singleton ContextLeaks.singletonLeak(), 1, CONTEXT_LEAK, [start of procedure singletonLeak(),start of procedure getInstance(...),Taking true branch,start of procedure ContextLeaks$Singleton(...),return from a call to ContextLeaks$Singleton.<init>(Context),return from a call to ContextLeaks$Singleton ContextLeaks$Singleton.getInstance(Context),return from a call to ContextLeaks$Singleton ContextLeaks.singletonLeak()]
src/infer/ContextLeaks.java, void ContextLeaks.directLeak(), 2, CONTEXT_LEAK, [start of procedure directLeak(),return from a call to void ContextLeaks.directLeak()]
src/infer/ContextLeaks.java, void ContextLeaks.indirectLeak(), 4, CONTEXT_LEAK, [start of procedure indirectLeak(),start of procedure ContextLeaks$Obj(),return from a call to ContextLeaks$Obj.<init>(),return from a call to void ContextLeaks.indirectLeak()]
src/infer/ContextLeaks.java, void ContextLeaks.leakAfterInstanceFieldWrite(), 3, CONTEXT_LEAK, [start of procedure leakAfterInstanceFieldWrite(),return from a call to void ContextLeaks.leakAfterInstanceFieldWrite()]
src/infer/ContextLeaks.java, void ContextLeaks.nonStaticInnerClassLeak(), 2, CONTEXT_LEAK, [start of procedure nonStaticInnerClassLeak(),start of procedure ContextLeaks$NonStaticInner(...),return from a call to ContextLeaks$NonStaticInner.<init>(ContextLeaks),return from a call to void ContextLeaks.nonStaticInnerClassLeak()]
src/infer/CursorLeaks.java, int CursorLeaks.completeDownloadNotClosed(DownloadManager), 8, RESOURCE_LEAK, [start of procedure completeDownloadNotClosed(...),Taking false branch]
src/infer/CursorLeaks.java, int CursorLeaks.cursorNotClosed(SQLiteDatabase), 4, RESOURCE_LEAK, [start of procedure cursorNotClosed(...)]
src/infer/CursorLeaks.java, int CursorLeaks.getBucketCountNotClosed(), 10, RESOURCE_LEAK, [start of procedure getBucketCountNotClosed(),Taking false branch,Taking false branch]
src/infer/CursorLeaks.java, int CursorLeaks.getImageCountHelperNotClosed(String), 13, RESOURCE_LEAK, [start of procedure getImageCountHelperNotClosed(...),Taking true branch]
src/infer/CursorLeaks.java, void CursorLeaks.loadPrefsFromContentProviderNotClosed(), 11, RESOURCE_LEAK, [start of procedure loadPrefsFromContentProviderNotClosed(),Taking false branch,Taking true branch]
src/infer/CursorLeaks.java, void CursorLeaks.queryUVMLegacyDbNotClosed(), 4, RESOURCE_LEAK, [start of procedure queryUVMLegacyDbNotClosed(),Taking true branch]
src/infer/DynamicDispatch.java, void DynamicDispatch.dynamicDispatchShouldNotCauseFalseNegativeEasy(), 3, NULL_DEREFERENCE, [start of procedure dynamicDispatchShouldNotCauseFalseNegativeEasy(),start of procedure DynamicDispatch$Subtype(),start of procedure DynamicDispatch$Supertype(),return from a call to DynamicDispatch$Supertype.<init>(),return from a call to DynamicDispatch$Subtype.<init>(),start of procedure foo(),return from a call to Object DynamicDispatch$Subtype.foo()]
src/infer/DynamicDispatch.java, void DynamicDispatch.interfaceShouldNotCauseFalseNegativeEasy(), 3, NULL_DEREFERENCE, [start of procedure interfaceShouldNotCauseFalseNegativeEasy(),start of procedure DynamicDispatch$Impl(),return from a call to DynamicDispatch$Impl.<init>(),start of procedure foo(),return from a call to Object DynamicDispatch$Impl.foo()]
src/infer/DynamicDispatch.java, void DynamicDispatch.interfaceShouldNotCauseFalseNegativeHard(DynamicDispatch$Interface), 2, NULL_DEREFERENCE, [start of procedure interfaceShouldNotCauseFalseNegativeHard(...),start of procedure foo(),return from a call to Object DynamicDispatch$Impl.foo()]
src/infer/FilterInputStreamLeaks.java, void FilterInputStreamLeaks.bufferedInputStreamNotClosedAfterRead(), 7, RESOURCE_LEAK, [start of procedure bufferedInputStreamNotClosedAfterRead(),exception java.io.IOException]
src/infer/FilterInputStreamLeaks.java, void FilterInputStreamLeaks.checkedInputStreamNotClosedAfterRead(), 7, RESOURCE_LEAK, [start of procedure checkedInputStreamNotClosedAfterRead(),exception java.io.IOException]
src/infer/FilterInputStreamLeaks.java, void FilterInputStreamLeaks.cipherInputStreamNotClosedAfterSkip(), 7, RESOURCE_LEAK, [start of procedure cipherInputStreamNotClosedAfterSkip(),exception java.io.IOException]
src/infer/FilterInputStreamLeaks.java, void FilterInputStreamLeaks.dataInputStreamNotClosedAfterRead(), 8, RESOURCE_LEAK, [start of procedure dataInputStreamNotClosedAfterRead(),exception java.io.IOException]
src/infer/FilterInputStreamLeaks.java, void FilterInputStreamLeaks.deflaterInputStreamNotClosedAfterRead(), 7, RESOURCE_LEAK, [start of procedure deflaterInputStreamNotClosedAfterRead(),exception java.io.IOException]
src/infer/FilterInputStreamLeaks.java, void FilterInputStreamLeaks.digestInputStreamNotClosedAfterRead(), 8, RESOURCE_LEAK, [start of procedure digestInputStreamNotClosedAfterRead(),exception java.io.IOException]
src/infer/FilterInputStreamLeaks.java, void FilterInputStreamLeaks.gzipInputStreamNotClosedAfterRead(), 4, RESOURCE_LEAK, [start of procedure gzipInputStreamNotClosedAfterRead()]
src/infer/FilterInputStreamLeaks.java, void FilterInputStreamLeaks.gzipInputStreamNotClosedAfterRead(), 7, RESOURCE_LEAK, [start of procedure gzipInputStreamNotClosedAfterRead(),exception java.io.IOException]
src/infer/FilterInputStreamLeaks.java, void FilterInputStreamLeaks.inflaterInputStreamNotClosedAfterRead(), 7, RESOURCE_LEAK, [start of procedure inflaterInputStreamNotClosedAfterRead(),exception java.io.IOException]
src/infer/FilterInputStreamLeaks.java, void FilterInputStreamLeaks.pushbackInputStreamNotClosedAfterRead(), 7, RESOURCE_LEAK, [start of procedure pushbackInputStreamNotClosedAfterRead(),exception java.io.IOException]
src/infer/FilterOutputStreamLeaks.java, void FilterOutputStreamLeaks.bufferedOutputStreamNotClosedAfterWrite(), 8, RESOURCE_LEAK, [start of procedure bufferedOutputStreamNotClosedAfterWrite(),exception java.io.IOException]
src/infer/FilterOutputStreamLeaks.java, void FilterOutputStreamLeaks.checkedOutputStreamNotClosedAfterWrite(), 8, RESOURCE_LEAK, [start of procedure checkedOutputStreamNotClosedAfterWrite(),exception java.io.IOException]
src/infer/FilterOutputStreamLeaks.java, void FilterOutputStreamLeaks.cipherOutputStreamNotClosedAfterWrite(), 8, RESOURCE_LEAK, [start of procedure cipherOutputStreamNotClosedAfterWrite(),exception java.io.IOException]
src/infer/FilterOutputStreamLeaks.java, void FilterOutputStreamLeaks.dataOutputStreamNotClosedAfterWrite(), 8, RESOURCE_LEAK, [start of procedure dataOutputStreamNotClosedAfterWrite(),exception java.io.IOException]
src/infer/FilterOutputStreamLeaks.java, void FilterOutputStreamLeaks.deflaterOutputStreamNotClosedAfterWrite(), 8, RESOURCE_LEAK, [start of procedure deflaterOutputStreamNotClosedAfterWrite(),exception java.io.IOException]
src/infer/FilterOutputStreamLeaks.java, void FilterOutputStreamLeaks.digestOutputStreamNotClosedAfterWrite(), 8, RESOURCE_LEAK, [start of procedure digestOutputStreamNotClosedAfterWrite(),exception java.io.IOException]
src/infer/FilterOutputStreamLeaks.java, void FilterOutputStreamLeaks.filterOutputStreamNotClosedAfterWrite(), 8, RESOURCE_LEAK, [start of procedure filterOutputStreamNotClosedAfterWrite(),exception java.io.IOException]
src/infer/FilterOutputStreamLeaks.java, void FilterOutputStreamLeaks.gzipOutputStreamNotClosedAfterFlush(), 4, RESOURCE_LEAK, [start of procedure gzipOutputStreamNotClosedAfterFlush()]
src/infer/FilterOutputStreamLeaks.java, void FilterOutputStreamLeaks.gzipOutputStreamNotClosedAfterFlush(), 7, RESOURCE_LEAK, [start of procedure gzipOutputStreamNotClosedAfterFlush(),exception java.io.IOException]
src/infer/FilterOutputStreamLeaks.java, void FilterOutputStreamLeaks.inflaterOutputStreamNotClosedAfterWrite(), 8, RESOURCE_LEAK, [start of procedure inflaterOutputStreamNotClosedAfterWrite(),exception java.io.IOException]
src/infer/FilterOutputStreamLeaks.java, void FilterOutputStreamLeaks.printStreamNotClosedAfterWrite(), 6, RESOURCE_LEAK, [start of procedure printStreamNotClosedAfterWrite()]
src/infer/GuardedByExample.java, Object GuardedByExample.byRefTrickyBad(), 5, UNSAFE_GUARDED_BY_ACCESS, [start of procedure byRefTrickyBad()]
src/infer/GuardedByExample.java, String GuardedByExample$3.readFromInnerClassBad1(), 2, UNSAFE_GUARDED_BY_ACCESS, [start of procedure readFromInnerClassBad1()]
src/infer/GuardedByExample.java, String GuardedByExample$4.readFromInnerClassBad2(), 1, UNSAFE_GUARDED_BY_ACCESS, [start of procedure readFromInnerClassBad2()]
src/infer/GuardedByExample.java, void GuardedByExample$Sub.badSub(), 1, UNSAFE_GUARDED_BY_ACCESS, [start of procedure badSub()]
src/infer/GuardedByExample.java, void GuardedByExample.badGuardedByNormalLock(), 1, UNSAFE_GUARDED_BY_ACCESS, [start of procedure badGuardedByNormalLock()]
src/infer/GuardedByExample.java, void GuardedByExample.badGuardedByReentrantLock(), 1, UNSAFE_GUARDED_BY_ACCESS, [start of procedure badGuardedByReentrantLock()]
src/infer/GuardedByExample.java, void GuardedByExample.guardedByTypeSyntaxBad(), 1, UNSAFE_GUARDED_BY_ACCESS, [start of procedure guardedByTypeSyntaxBad()]
src/infer/GuardedByExample.java, void GuardedByExample.guardedByTypeSyntaxBad(), 2, UNSAFE_GUARDED_BY_ACCESS, [start of procedure guardedByTypeSyntaxBad()]
src/infer/GuardedByExample.java, void GuardedByExample.readFAfterBlockBad(), 3, UNSAFE_GUARDED_BY_ACCESS, [start of procedure readFAfterBlockBad()]
src/infer/GuardedByExample.java, void GuardedByExample.readFBad(), 1, UNSAFE_GUARDED_BY_ACCESS, [start of procedure readFBad()]
src/infer/GuardedByExample.java, void GuardedByExample.readFBadButSuppressedOther(), 1, UNSAFE_GUARDED_BY_ACCESS, [start of procedure readFBadButSuppressedOther()]
src/infer/GuardedByExample.java, void GuardedByExample.readFBadWrongAnnotation(), 1, UNSAFE_GUARDED_BY_ACCESS, [start of procedure readFBadWrongAnnotation()]
src/infer/GuardedByExample.java, void GuardedByExample.readFBadWrongLock(), 2, UNSAFE_GUARDED_BY_ACCESS, [start of procedure readFBadWrongLock()]
src/infer/GuardedByExample.java, void GuardedByExample.readHBad(), 2, UNSAFE_GUARDED_BY_ACCESS, [start of procedure readHBad()]
src/infer/GuardedByExample.java, void GuardedByExample.readHBadSynchronizedMethodShouldntHelp(), 1, UNSAFE_GUARDED_BY_ACCESS, [start of procedure readHBadSynchronizedMethodShouldntHelp()]
src/infer/GuardedByExample.java, void GuardedByExample.synchronizedMethodReadBad(), 1, UNSAFE_GUARDED_BY_ACCESS, [start of procedure synchronizedMethodReadBad()]
src/infer/GuardedByExample.java, void GuardedByExample.synchronizedMethodWriteBad(), 1, UNSAFE_GUARDED_BY_ACCESS, [start of procedure synchronizedMethodWriteBad()]
src/infer/GuardedByExample.java, void GuardedByExample.synchronizedOnThisBad(), 1, UNSAFE_GUARDED_BY_ACCESS, [start of procedure synchronizedOnThisBad()]
src/infer/GuardedByExample.java, void GuardedByExample.writeFAfterBlockBad(), 3, UNSAFE_GUARDED_BY_ACCESS, [start of procedure writeFAfterBlockBad()]
src/infer/GuardedByExample.java, void GuardedByExample.writeFBad(), 1, UNSAFE_GUARDED_BY_ACCESS, [start of procedure writeFBad()]
src/infer/GuardedByExample.java, void GuardedByExample.writeFBadWrongLock(), 2, UNSAFE_GUARDED_BY_ACCESS, [start of procedure writeFBadWrongLock()]
src/infer/HashMapExample.java, int HashMapExample.getOneIntegerWithoutCheck(), 6, NULL_DEREFERENCE, [start of procedure getOneIntegerWithoutCheck()]
src/infer/HashMapExample.java, void HashMapExample.getTwoIntegersWithOneCheck(Integer,Integer), 11, NULL_DEREFERENCE, [start of procedure getTwoIntegersWithOneCheck(...),Taking true branch,Taking true branch]
src/infer/InvokeDynamic.java, int InvokeDynamic.lambda$npeInLambdaBad$1(String,String), 1, NULL_DEREFERENCE, [start of procedure lambda$npeInLambdaBad$1(...)]
src/infer/InvokeDynamic.java, void InvokeDynamic.invokeDynamicThenNpeBad(List), 5, NULL_DEREFERENCE, [start of procedure invokeDynamicThenNpeBad(...)]
src/infer/NullPointerExceptions.java, String NullPointerExceptions.hashmapNPE(HashMap,Object), 1, NULL_DEREFERENCE, [start of procedure hashmapNPE(...)]
src/infer/NullPointerExceptions.java, String NullPointerExceptions.nullTryLock(FileChannel), 2, NULL_DEREFERENCE, [start of procedure nullTryLock(...)]
src/infer/NullPointerExceptions.java, String NullPointerExceptions.testSystemGetPropertyArgument(), 1, NULL_DEREFERENCE, [start of procedure testSystemGetPropertyArgument()]
src/infer/NullPointerExceptions.java, String NullPointerExceptions.tryLockThrows(FileChannel), 6, NULL_DEREFERENCE, [start of procedure tryLockThrows(...),exception java.io.IOException,Switch condition is true. Entering switch case]
src/infer/NullPointerExceptions.java, int NullPointerExceptions.NPEvalueOfFromHashmapBad(HashMap,int), 1, NULL_DEREFERENCE, [start of procedure NPEvalueOfFromHashmapBad(...)]
src/infer/NullPointerExceptions.java, int NullPointerExceptions.nullListFiles(String), 3, NULL_DEREFERENCE, [start of procedure nullListFiles(...)]
src/infer/NullPointerExceptions.java, int NullPointerExceptions.nullPointerException(), 2, NULL_DEREFERENCE, [start of procedure nullPointerException()]
src/infer/NullPointerExceptions.java, int NullPointerExceptions.nullPointerExceptionInterProc(), 2, NULL_DEREFERENCE, [start of procedure nullPointerExceptionInterProc(),start of procedure canReturnNullObject(...),start of procedure NullPointerExceptions$A(...),return from a call to NullPointerExceptions$A.<init>(NullPointerExceptions),Taking false branch,return from a call to NullPointerExceptions$A NullPointerExceptions.canReturnNullObject(boolean)]
src/infer/NullPointerExceptions.java, int NullPointerExceptions.nullPointerExceptionWithExceptionHandling(boolean), 5, NULL_DEREFERENCE, [start of procedure nullPointerExceptionWithExceptionHandling(...),exception java.lang.Exception,Switch condition is true. Entering switch case]
src/infer/NullPointerExceptions.java, void NullPointerExceptions$$$Class$Name$With$Dollars.npeWithDollars(), 2, NULL_DEREFERENCE, [start of procedure npeWithDollars()]
src/infer/NullPointerExceptions.java, void NullPointerExceptions.badCheckShouldCauseNPE(), 1, NULL_DEREFERENCE, [start of procedure badCheckShouldCauseNPE(),start of procedure getBool(),Taking true branch,return from a call to Boolean NullPointerExceptions.getBool(),Taking true branch,start of procedure getObj(),Taking false branch,return from a call to Object NullPointerExceptions.getObj()]
src/infer/NullPointerExceptions.java, void NullPointerExceptions.cursorFromContentResolverNPE(String), 9, NULL_DEREFERENCE, [start of procedure cursorFromContentResolverNPE(...)]
src/infer/NullPointerExceptions.java, void NullPointerExceptions.derefNull(), 2, NULL_DEREFERENCE, [start of procedure derefNull(),start of procedure derefUndefinedCallee(),start of procedure retUndefined(),return from a call to Object NullPointerExceptions.retUndefined(),return from a call to Object NullPointerExceptions.derefUndefinedCallee()]
src/infer/NullPointerExceptions.java, void NullPointerExceptions.derefNullableGetter(), 2, NULL_DEREFERENCE, [start of procedure derefNullableGetter(),start of procedure nullableGetter(),return from a call to Object NullPointerExceptions.nullableGetter()]
src/infer/NullPointerExceptions.java, void NullPointerExceptions.derefNullableRet(boolean), 2, NULL_DEREFERENCE, [start of procedure derefNullableRet(...),start of procedure nullableRet(...),Taking true branch,return from a call to Object NullPointerExceptions.nullableRet(boolean)]
src/infer/NullPointerExceptions.java, void NullPointerExceptions.derefUndefNullableRet(), 2, NULL_DEREFERENCE, [start of procedure derefUndefNullableRet()]
src/infer/NullPointerExceptions.java, void NullPointerExceptions.derefUndefNullableRetWrapper(), 1, NULL_DEREFERENCE, [start of procedure derefUndefNullableRetWrapper(),start of procedure undefNullableWrapper(),return from a call to Object NullPointerExceptions.undefNullableWrapper()]
src/infer/NullPointerExceptions.java, void NullPointerExceptions.dereferenceAfterLoopOnList(NullPointerExceptions$L), 2, NULL_DEREFERENCE, [start of procedure dereferenceAfterLoopOnList(...),start of procedure returnsNullAfterLoopOnList(...),Taking false branch,return from a call to Object NullPointerExceptions.returnsNullAfterLoopOnList(NullPointerExceptions$L)]
src/infer/NullPointerExceptions.java, void NullPointerExceptions.dereferenceAfterUnlock1(Lock), 4, NULL_DEREFERENCE, [start of procedure dereferenceAfterUnlock1(...)]
src/infer/NullPointerExceptions.java, void NullPointerExceptions.dereferenceAfterUnlock2(Lock), 6, NULL_DEREFERENCE, [start of procedure dereferenceAfterUnlock2(...)]
src/infer/NullPointerExceptions.java, void NullPointerExceptions.nullPointerExceptionArrayLength(), 2, NULL_DEREFERENCE, [start of procedure nullPointerExceptionArrayLength()]
src/infer/NullPointerExceptions.java, void NullPointerExceptions.nullPointerExceptionCallArrayReadMethod(), 2, NULL_DEREFERENCE, [start of procedure nullPointerExceptionCallArrayReadMethod(),start of procedure arrayReadShouldNotCauseSymexMemoryError(...),return from a call to Object NullPointerExceptions.arrayReadShouldNotCauseSymexMemoryError(int)]
src/infer/NullPointerExceptions.java, void NullPointerExceptions.nullPointerExceptionFromFailingFileOutputStreamConstructor(), 7, NULL_DEREFERENCE, [start of procedure nullPointerExceptionFromFailingFileOutputStreamConstructor(),exception java.io.FileNotFoundException,Switch condition is true. Entering switch case]
src/infer/NullPointerExceptions.java, void NullPointerExceptions.nullPointerExceptionFromFaillingResourceConstructor(), 6, NULL_DEREFERENCE, [start of procedure nullPointerExceptionFromFaillingResourceConstructor(),exception java.io.FileNotFoundException,Switch condition is true. Entering switch case]
src/infer/NullPointerExceptions.java, void NullPointerExceptions.nullPointerExceptionInArrayLengthLoop(java.lang.Object[]), 3, NULL_DEREFERENCE, [start of procedure nullPointerExceptionInArrayLengthLoop(...),Taking true branch]
src/infer/NullPointerExceptions.java, void NullPointerExceptions.nullPointerExceptionUnlessFrameFails(), 4, NULL_DEREFERENCE, [start of procedure nullPointerExceptionUnlessFrameFails(),start of procedure NullPointerExceptions$A(...),return from a call to NullPointerExceptions$A.<init>(NullPointerExceptions),start of procedure frame(...),start of procedure id_generics(...),return from a call to Object NullPointerExceptions.id_generics(Object),return from a call to NullPointerExceptions$A NullPointerExceptions.frame(NullPointerExceptions$A),Taking true branch]
src/infer/NullPointerExceptions.java, void NullPointerExceptions.nullPointerExceptionWithNullArrayParameter(), 1, NULL_DEREFERENCE, [start of procedure nullPointerExceptionWithNullArrayParameter(),start of procedure expectNotNullArrayParameter(...)]
src/infer/NullPointerExceptions.java, void NullPointerExceptions.nullPointerExceptionWithNullObjectParameter(), 1, NULL_DEREFERENCE, [start of procedure nullPointerExceptionWithNullObjectParameter(),start of procedure expectNotNullObjectParameter(...)]
src/infer/NullPointerExceptions.java, void NullPointerExceptions.nullableFieldNPE(), 1, NULL_DEREFERENCE, [start of procedure nullableFieldNPE()]
src/infer/NullPointerExceptions.java, void NullPointerExceptions.nullableParamNPE(Object), 1, NULL_DEREFERENCE, [start of procedure nullableParamNPE(...)]
src/infer/NullPointerExceptions.java, void NullPointerExceptions.optionalNPE(Optional), 1, NULL_DEREFERENCE, [start of procedure optionalNPE(...)]
src/infer/NullPointerExceptions.java, void NullPointerExceptions.otherSinkWithNeverNullSource(), 3, NULL_DEREFERENCE, [start of procedure otherSinkWithNeverNullSource(),start of procedure SomeLibrary(),return from a call to SomeLibrary.<init>(),start of procedure get(),Taking true branch,return from a call to T SomeLibrary.get()]
src/infer/NullPointerExceptions.java, void NullPointerExceptions.sinkWithNeverNullSource(), 3, NULL_DEREFERENCE, [start of procedure sinkWithNeverNullSource(),start of procedure NeverNullSource(),return from a call to NeverNullSource.<init>(),start of procedure get(),Taking true branch,return from a call to T NeverNullSource.get()]
src/infer/NullPointerExceptions.java, void NullPointerExceptions.someNPEAfterResourceLeak(), 2, NULL_DEREFERENCE, [start of procedure someNPEAfterResourceLeak(),start of procedure sourceOfNullWithResourceLeak(),start of procedure SomeResource(),return from a call to SomeResource.<init>(),return from a call to T CloseableAsResourceExample.sourceOfNullWithResourceLeak()]
src/infer/NullPointerExceptions.java, void NullPointerExceptions.stringConstantEqualsFalseNotNPE_FP(), 10, NULL_DEREFERENCE, [start of procedure stringConstantEqualsFalseNotNPE_FP(),Taking false branch]
src/infer/NullPointerExceptions.java, void NullPointerExceptions.stringVarEqualsFalseNPE(), 5, NULL_DEREFERENCE, [start of procedure stringVarEqualsFalseNPE(),start of procedure getString2(),return from a call to String NullPointerExceptions.getString2(),Taking true branch]
src/infer/NullPointerExceptions.java, void NullPointerExceptions.testSystemGetPropertyReturn(), 2, NULL_DEREFERENCE, [start of procedure testSystemGetPropertyReturn()]
src/infer/ReaderLeaks.java, void ReaderLeaks.bufferedReaderNotClosedAfterRead(), 6, RESOURCE_LEAK, [start of procedure bufferedReaderNotClosedAfterRead(),exception java.io.IOException]
src/infer/ReaderLeaks.java, void ReaderLeaks.fileReaderNotClosedAfterRead(), 6, RESOURCE_LEAK, [start of procedure fileReaderNotClosedAfterRead(),exception java.io.IOException]
src/infer/ReaderLeaks.java, void ReaderLeaks.inputStreamReaderNotClosedAfterRead(), 6, RESOURCE_LEAK, [start of procedure inputStreamReaderNotClosedAfterRead(),exception java.io.IOException]
src/infer/ReaderLeaks.java, void ReaderLeaks.pipedReaderFalsePositive(), 5, RESOURCE_LEAK, [start of procedure pipedReaderFalsePositive()]
src/infer/ReaderLeaks.java, void ReaderLeaks.pipedReaderNotClosedAfterConnect(PipedWriter), 7, RESOURCE_LEAK, [start of procedure pipedReaderNotClosedAfterConnect(...),exception java.io.IOException]
src/infer/ReaderLeaks.java, void ReaderLeaks.pipedReaderNotClosedAfterConstructedWithWriter(), 8, RESOURCE_LEAK, [start of procedure pipedReaderNotClosedAfterConstructedWithWriter(),exception java.io.IOException]
src/infer/ReaderLeaks.java, void ReaderLeaks.pushbackReaderNotClosedAfterRead(), 6, RESOURCE_LEAK, [start of procedure pushbackReaderNotClosedAfterRead(),exception java.io.IOException]
src/infer/ReaderLeaks.java, void ReaderLeaks.readerNotClosedAfterRead(), 6, RESOURCE_LEAK, [start of procedure readerNotClosedAfterRead(),exception java.io.IOException]
src/infer/ResourceLeaks.java, String ResourceLeaks.readInstallationFileBad(File), 6, RESOURCE_LEAK, [start of procedure readInstallationFileBad(...),exception java.io.IOException]
src/infer/ResourceLeaks.java, boolean ResourceLeaks.jarFileNotClosed(), 3, RESOURCE_LEAK, [start of procedure jarFileNotClosed()]
src/infer/ResourceLeaks.java, int ResourceLeaks.fileOutputStreamTwoLeaks1(boolean), 3, RESOURCE_LEAK, [start of procedure fileOutputStreamTwoLeaks1(...),Taking true branch]
src/infer/ResourceLeaks.java, int ResourceLeaks.fileOutputStreamTwoLeaks1(boolean), 6, RESOURCE_LEAK, [start of procedure fileOutputStreamTwoLeaks1(...),Taking false branch]
src/infer/ResourceLeaks.java, int ResourceLeaks.readConfigNotCloseStream(String), 5, RESOURCE_LEAK, [start of procedure readConfigNotCloseStream(...)]
src/infer/ResourceLeaks.java, void ResourceLeaks.activityObtainTypedArrayAndLeak(Activity), 2, RESOURCE_LEAK, [start of procedure activityObtainTypedArrayAndLeak(...),start of procedure ignore(...),return from a call to void ResourceLeaks.ignore(Object)]
src/infer/ResourceLeaks.java, void ResourceLeaks.contextObtainTypedArrayAndLeak(Context), 2, RESOURCE_LEAK, [start of procedure contextObtainTypedArrayAndLeak(...),start of procedure ignore(...),return from a call to void ResourceLeaks.ignore(Object)]
src/infer/ResourceLeaks.java, void ResourceLeaks.copyFileLeak(File,File), 11, RESOURCE_LEAK, [start of procedure copyFileLeak(...),exception java.io.FileNotFoundException]
src/infer/ResourceLeaks.java, void ResourceLeaks.copyFileLeak(File,File), 11, RESOURCE_LEAK, [start of procedure copyFileLeak(...),exception java.io.IOException,Switch condition is true. Entering switch case,Taking true branch,exception java.io.IOException]
src/infer/ResourceLeaks.java, void ResourceLeaks.deflaterLeak(), 1, RESOURCE_LEAK, [start of procedure deflaterLeak()]
src/infer/ResourceLeaks.java, void ResourceLeaks.fileInputStreamNotClosedAfterRead(), 6, RESOURCE_LEAK, [start of procedure fileInputStreamNotClosedAfterRead(),exception java.io.IOException]
src/infer/ResourceLeaks.java, void ResourceLeaks.fileOutputStreamNotClosed(), 1, RESOURCE_LEAK, [start of procedure fileOutputStreamNotClosed()]
src/infer/ResourceLeaks.java, void ResourceLeaks.fileOutputStreamNotClosedAfterWrite(), 7, RESOURCE_LEAK, [start of procedure fileOutputStreamNotClosedAfterWrite(),exception java.io.IOException]
src/infer/ResourceLeaks.java, void ResourceLeaks.fileOutputStreamOneLeak(), 2, RESOURCE_LEAK, [start of procedure fileOutputStreamOneLeak(),Taking true branch]
src/infer/ResourceLeaks.java, void ResourceLeaks.fileOutputStreamTwoLeaks2(), 2, RESOURCE_LEAK, [start of procedure fileOutputStreamTwoLeaks2(),Taking true branch]
src/infer/ResourceLeaks.java, void ResourceLeaks.fileOutputStreamTwoLeaks2(), 5, RESOURCE_LEAK, [start of procedure fileOutputStreamTwoLeaks2(),Taking true branch]
src/infer/ResourceLeaks.java, void ResourceLeaks.inflaterLeak(), 1, RESOURCE_LEAK, [start of procedure inflaterLeak()]
src/infer/ResourceLeaks.java, void ResourceLeaks.jarInputStreamLeak(), 3, RESOURCE_LEAK, [start of procedure jarInputStreamLeak()]
src/infer/ResourceLeaks.java, void ResourceLeaks.jarOutputStreamLeak(), 3, RESOURCE_LEAK, [start of procedure jarOutputStreamLeak()]
src/infer/ResourceLeaks.java, void ResourceLeaks.nestedBad1(), 1, RESOURCE_LEAK, [start of procedure nestedBad1()]
src/infer/ResourceLeaks.java, void ResourceLeaks.nestedBad2(), 1, RESOURCE_LEAK, [start of procedure nestedBad2()]
src/infer/ResourceLeaks.java, void ResourceLeaks.nestedBadJarInputStream(File), 1, RESOURCE_LEAK, [start of procedure nestedBadJarInputStream(...)]
src/infer/ResourceLeaks.java, void ResourceLeaks.nestedBadJarOutputStream(), 1, RESOURCE_LEAK, [start of procedure nestedBadJarOutputStream()]
src/infer/ResourceLeaks.java, void ResourceLeaks.objectInputStreamClosedNestedBad(), 3, RESOURCE_LEAK, [start of procedure objectInputStreamClosedNestedBad()]
src/infer/ResourceLeaks.java, void ResourceLeaks.objectInputStreamNotClosedAfterRead(), 3, RESOURCE_LEAK, [start of procedure objectInputStreamNotClosedAfterRead()]
src/infer/ResourceLeaks.java, void ResourceLeaks.objectInputStreamNotClosedAfterRead(), 6, RESOURCE_LEAK, [start of procedure objectInputStreamNotClosedAfterRead(),exception java.io.IOException]
src/infer/ResourceLeaks.java, void ResourceLeaks.objectOutputStreamClosedNestedBad(), 3, RESOURCE_LEAK, [start of procedure objectOutputStreamClosedNestedBad()]
src/infer/ResourceLeaks.java, void ResourceLeaks.objectOutputStreamNotClosedAfterWrite(), 4, RESOURCE_LEAK, [start of procedure objectOutputStreamNotClosedAfterWrite()]
src/infer/ResourceLeaks.java, void ResourceLeaks.objectOutputStreamNotClosedAfterWrite(), 7, RESOURCE_LEAK, [start of procedure objectOutputStreamNotClosedAfterWrite(),exception java.io.IOException]
src/infer/ResourceLeaks.java, void ResourceLeaks.openHttpURLConnectionNotDisconnected(), 7, RESOURCE_LEAK, [start of procedure openHttpURLConnectionNotDisconnected()]
src/infer/ResourceLeaks.java, void ResourceLeaks.openHttpsURLConnectionNotDisconnected(), 3, RESOURCE_LEAK, [start of procedure openHttpsURLConnectionNotDisconnected()]
src/infer/ResourceLeaks.java, void ResourceLeaks.parseFromInputStreamAndLeak(JsonFactory), 5, RESOURCE_LEAK, [start of procedure parseFromInputStreamAndLeak(...)]
src/infer/ResourceLeaks.java, void ResourceLeaks.pipedInputStreamNotClosedAfterRead(PipedOutputStream), 6, RESOURCE_LEAK, [start of procedure pipedInputStreamNotClosedAfterRead(...),exception java.io.IOException]
src/infer/ResourceLeaks.java, void ResourceLeaks.pipedOutputStreamNotClosedAfterWrite(), 7, RESOURCE_LEAK, [start of procedure pipedOutputStreamNotClosedAfterWrite(),exception java.io.IOException]
src/infer/ResourceLeaks.java, void ResourceLeaks.scannerNotClosed(), 1, RESOURCE_LEAK, [start of procedure scannerNotClosed()]
src/infer/ResourceLeaks.java, void ResourceLeaks.serverSocketNotClosed(), 12, RESOURCE_LEAK, [start of procedure serverSocketNotClosed(),exception java.io.IOException]
src/infer/ResourceLeaks.java, void ResourceLeaks.socketNotClosed(), 1, RESOURCE_LEAK, [start of procedure socketNotClosed()]
src/infer/ResourceLeaks.java, void ResourceLeaks.themeObtainTypedArrayAndLeak(Resources$Theme), 2, RESOURCE_LEAK, [start of procedure themeObtainTypedArrayAndLeak(...),start of procedure ignore(...),return from a call to void ResourceLeaks.ignore(Object)]
src/infer/ResourceLeaks.java, void ResourceLeaks.twoResources(), 11, RESOURCE_LEAK, [start of procedure twoResources(),exception java.io.IOException,Switch condition is true. Entering switch case,Taking true branch,exception java.io.IOException]
src/infer/ResourceLeaks.java, void ResourceLeaks.twoResourcesRandomAccessFile(), 10, RESOURCE_LEAK, [start of procedure twoResourcesRandomAccessFile(),Taking true branch,exception java.io.IOException]
src/infer/ResourceLeaks.java, void ResourceLeaks.twoResourcesServerSocket(), 10, RESOURCE_LEAK, [start of procedure twoResourcesServerSocket(),Taking true branch,exception java.io.IOException]
src/infer/ResourceLeaks.java, void ResourceLeaks.zipFileLeakExceptionalBranch(), 5, RESOURCE_LEAK, [start of procedure zipFileLeakExceptionalBranch(),exception java.io.IOException,Switch condition is true. Entering switch case]
src/infer/TaintExample.java, InputStream TaintExample.socketIgnoreExceptionNoVerify(SSLSocketFactory), 9, TAINTED_VALUE_REACHING_SENSITIVE_FUNCTION, [start of procedure socketIgnoreExceptionNoVerify(...),start of procedure throwExceptionIfNoVerify(...),Taking true branch,exception javax.net.ssl.SSLException,return from a call to void TaintExample.throwExceptionIfNoVerify(SSLSocket,String),Switch condition is true. Entering switch case]
src/infer/TaintExample.java, InputStream TaintExample.socketNotVerifiedSimple(SSLSocketFactory), 3, TAINTED_VALUE_REACHING_SENSITIVE_FUNCTION, [start of procedure socketNotVerifiedSimple(...)]
src/infer/TaintExample.java, InputStream TaintExample.socketVerifiedForgotToCheckRetval(SSLSocketFactory,HostnameVerifier,SSLSession), 7, TAINTED_VALUE_REACHING_SENSITIVE_FUNCTION, [start of procedure socketVerifiedForgotToCheckRetval(...)]
src/infer/TaintExample.java, InputStream TaintExample.taintingShouldNotPreventInference1(SSLSocketFactory), 4, TAINTED_VALUE_REACHING_SENSITIVE_FUNCTION, [start of procedure taintingShouldNotPreventInference1(...),start of procedure socketNotVerifiedSimple(...),return from a call to InputStream TaintExample.socketNotVerifiedSimple(SSLSocketFactory)]
src/infer/TaintExample.java, InputStream TaintExample.taintingShouldNotPreventInference2(SSLSocketFactory), 3, TAINTED_VALUE_REACHING_SENSITIVE_FUNCTION, [start of procedure taintingShouldNotPreventInference2(...),start of procedure callReadInputStreamCauseTaintError(...),start of procedure readInputStream(...),return from a call to InputStream TaintExample.readInputStream(Socket),return from a call to Socket TaintExample.callReadInputStreamCauseTaintError(SSLSocketFactory)]
src/infer/TaintExample.java, Socket TaintExample.callReadInputStreamCauseTaintError(SSLSocketFactory), 3, TAINTED_VALUE_REACHING_SENSITIVE_FUNCTION, [start of procedure callReadInputStreamCauseTaintError(...)]
src/infer/TaintExample.java, void TaintExample.contentValuesPutWithTaintedString(ContentValues,SharedPreferences,String,String), 2, TAINTED_VALUE_REACHING_SENSITIVE_FUNCTION, [start of procedure contentValuesPutWithTaintedString(...)]
src/infer/TaintExample.java, void TaintExample.interprocTaintErrorWithModelMethods1(), 1, TAINTED_VALUE_REACHING_SENSITIVE_FUNCTION, [start of procedure interprocTaintErrorWithModelMethods1(),start of procedure returnTaintedSourceModelMethods(),return from a call to Object TaintExample.returnTaintedSourceModelMethods()]
src/infer/TaintExample.java, void TaintExample.interprocTaintErrorWithModelMethods2(), 1, TAINTED_VALUE_REACHING_SENSITIVE_FUNCTION, [start of procedure interprocTaintErrorWithModelMethods2()]
src/infer/TaintExample.java, void TaintExample.interprocTaintErrorWithModelMethods3(), 1, TAINTED_VALUE_REACHING_SENSITIVE_FUNCTION, [start of procedure interprocTaintErrorWithModelMethods3(),start of procedure returnTaintedSourceModelMethods(),return from a call to Object TaintExample.returnTaintedSourceModelMethods()]
src/infer/TaintExample.java, void TaintExample.interprocTaintErrorWithModelMethodsUndefined1(), 1, TAINTED_VALUE_REACHING_SENSITIVE_FUNCTION, [start of procedure interprocTaintErrorWithModelMethodsUndefined1(),start of procedure returnTaintedSourceModelMethodsUndefined(),return from a call to Object TaintExample.returnTaintedSourceModelMethodsUndefined()]
src/infer/TaintExample.java, void TaintExample.interprocTaintErrorWithModelMethodsUndefined2(), 1, TAINTED_VALUE_REACHING_SENSITIVE_FUNCTION, [start of procedure interprocTaintErrorWithModelMethodsUndefined2()]
src/infer/TaintExample.java, void TaintExample.interprocTaintErrorWithModelMethodsUndefined3(), 1, TAINTED_VALUE_REACHING_SENSITIVE_FUNCTION, [start of procedure interprocTaintErrorWithModelMethodsUndefined3(),start of procedure returnTaintedSourceModelMethodsUndefined(),return from a call to Object TaintExample.returnTaintedSourceModelMethodsUndefined()]
src/infer/TaintExample.java, void TaintExample.simpleTaintErrorWithModelMethods(), 2, TAINTED_VALUE_REACHING_SENSITIVE_FUNCTION, [start of procedure simpleTaintErrorWithModelMethods()]
src/infer/TaintExample.java, void TaintExample.simpleTaintErrorWithModelMethodsUndefined(), 2, TAINTED_VALUE_REACHING_SENSITIVE_FUNCTION, [start of procedure simpleTaintErrorWithModelMethodsUndefined()]
src/infer/TaintExample.java, void TaintExample.testIntegritySinkAnnotReport(String), 1, TAINTED_VALUE_REACHING_SENSITIVE_FUNCTION, [start of procedure testIntegritySinkAnnotReport(...),start of procedure integritySource(),return from a call to String TaintExample.integritySource()]
src/infer/TaintExample.java, void TaintExample.testIntegritySourceAnnot(), 1, TAINTED_VALUE_REACHING_SENSITIVE_FUNCTION, [start of procedure testIntegritySourceAnnot(),start of procedure integritySource(),return from a call to String TaintExample.integritySource()]
src/infer/TaintExample.java, void TaintExample.testIntegritySourceInstanceFieldAnnot(), 2, TAINTED_VALUE_REACHING_SENSITIVE_FUNCTION, [start of procedure testIntegritySourceInstanceFieldAnnot()]
src/infer/TaintExample.java, void TaintExample.testIntegritySourceStaticFieldAnnot(), 2, TAINTED_VALUE_REACHING_SENSITIVE_FUNCTION, [start of procedure testIntegritySourceStaticFieldAnnot()]
src/infer/TaintExample.java, void TaintExample.testPrivacySinkAnnot1(), 2, TAINTED_VALUE_REACHING_SENSITIVE_FUNCTION, [start of procedure testPrivacySinkAnnot1(),start of procedure privacySource(),return from a call to String TaintExample.privacySource()]
src/infer/TaintExample.java, void TaintExample.testPrivacySinkAnnot3(), 2, TAINTED_VALUE_REACHING_SENSITIVE_FUNCTION, [start of procedure testPrivacySinkAnnot3(),start of procedure privacySource(),return from a call to String TaintExample.privacySource()]
src/infer/TaintExample.java, void TaintExample.testPrivacySourceAnnot(), 1, TAINTED_VALUE_REACHING_SENSITIVE_FUNCTION, [start of procedure testPrivacySourceAnnot(),start of procedure privacySource(),return from a call to String TaintExample.privacySource()]
src/infer/TaintExample.java, void TaintExample.testPrivacySourceFieldAnnotPropagation(), 2, TAINTED_VALUE_REACHING_SENSITIVE_FUNCTION, [start of procedure testPrivacySourceFieldAnnotPropagation()]
src/infer/TaintExample.java, void TaintExample.testPrivacySourceInstanceFieldAnnot(), 2, TAINTED_VALUE_REACHING_SENSITIVE_FUNCTION, [start of procedure testPrivacySourceInstanceFieldAnnot()]
src/infer/TaintExample.java, void TaintExample.testPrivacySourceStaticFieldAnnot(), 2, TAINTED_VALUE_REACHING_SENSITIVE_FUNCTION, [start of procedure testPrivacySourceStaticFieldAnnot()]
src/infer/WriterLeaks.java, void WriterLeaks.bufferedWriterNotClosedAfterWrite(), 7, RESOURCE_LEAK, [start of procedure bufferedWriterNotClosedAfterWrite(),exception java.io.IOException]
src/infer/WriterLeaks.java, void WriterLeaks.fileWriterNotClosedAfterWrite(), 6, RESOURCE_LEAK, [start of procedure fileWriterNotClosedAfterWrite(),exception java.io.IOException]
src/infer/WriterLeaks.java, void WriterLeaks.outputStreamWriterNotClosedAfterWrite(), 6, RESOURCE_LEAK, [start of procedure outputStreamWriterNotClosedAfterWrite(),exception java.io.IOException]
src/infer/WriterLeaks.java, void WriterLeaks.pipedWriterNotClosedAfterConnect(PipedReader), 7, RESOURCE_LEAK, [start of procedure pipedWriterNotClosedAfterConnect(...),exception java.io.IOException]
src/infer/WriterLeaks.java, void WriterLeaks.pipedWriterNotClosedAfterConstructedWithReader(), 8, RESOURCE_LEAK, [start of procedure pipedWriterNotClosedAfterConstructedWithReader(),exception java.io.IOException]
src/infer/WriterLeaks.java, void WriterLeaks.printWriterNotClosedAfterAppend(), 4, RESOURCE_LEAK, [start of procedure printWriterNotClosedAfterAppend()]
src/infer/WriterLeaks.java, void WriterLeaks.writerNotClosedAfterWrite(), 6, RESOURCE_LEAK, [start of procedure writerNotClosedAfterWrite(),exception java.io.IOException]
codetoanalyze/java/infer/AnalysisStops.java, void AnalysisStops.fieldReadInCalleeMayCauseFalseNegative(), 3, NULL_DEREFERENCE, [start of procedure fieldReadInCalleeMayCauseFalseNegative(),start of procedure derefParam(...)]
codetoanalyze/java/infer/AnalysisStops.java, void AnalysisStops.fieldReadInCalleeWithAngelicObjFieldMayCauseFalseNegative(), 3, NULL_DEREFERENCE, [start of procedure fieldReadInCalleeWithAngelicObjFieldMayCauseFalseNegative(),start of procedure derefParam(...)]
codetoanalyze/java/infer/AnalysisStops.java, void AnalysisStops.skipFunctionInLoopMayCauseFalseNegative(), 5, NULL_DEREFERENCE, [start of procedure skipFunctionInLoopMayCauseFalseNegative(),Taking true branch,Taking false branch]
codetoanalyze/java/infer/AutoGenerated.java, void AutoGenerated.npe(), 2, NULL_DEREFERENCE, [start of procedure npe()]
codetoanalyze/java/infer/Builtins.java, void Builtins.doNotBlockError(Object), 3, NULL_DEREFERENCE, [start of procedure doNotBlockError(...),Taking true branch]
codetoanalyze/java/infer/CloseableAsResourceExample.java, T CloseableAsResourceExample.sourceOfNullWithResourceLeak(), 1, RESOURCE_LEAK, [start of procedure sourceOfNullWithResourceLeak(),start of procedure SomeResource(),return from a call to SomeResource.<init>()]
codetoanalyze/java/infer/CloseableAsResourceExample.java, void CloseableAsResourceExample.failToCloseWithCloseQuietly(), 5, RESOURCE_LEAK, [start of procedure failToCloseWithCloseQuietly(),start of procedure SomeResource(),return from a call to SomeResource.<init>(),start of procedure doSomething(),Taking true branch,start of procedure LocalException(),return from a call to LocalException.<init>(),exception codetoanalyze.java.infer.LocalException,return from a call to void SomeResource.doSomething()]
codetoanalyze/java/infer/CloseableAsResourceExample.java, void CloseableAsResourceExample.leakFoundWhenIndirectlyImplementingCloseable(), 1, RESOURCE_LEAK, [start of procedure leakFoundWhenIndirectlyImplementingCloseable(),start of procedure CloseableAsResourceExample$MyResource(...),return from a call to CloseableAsResourceExample$MyResource.<init>(CloseableAsResourceExample)]
codetoanalyze/java/infer/CloseableAsResourceExample.java, void CloseableAsResourceExample.notClosingCloseable(), 1, RESOURCE_LEAK, [start of procedure notClosingCloseable(),start of procedure SomeResource(),return from a call to SomeResource.<init>()]
codetoanalyze/java/infer/CloseableAsResourceExample.java, void CloseableAsResourceExample.notClosingWrapper(), 2, RESOURCE_LEAK, [start of procedure notClosingWrapper(),start of procedure Resource(),return from a call to Resource.<init>(),start of procedure Sub(...),start of procedure Wrapper(...),return from a call to Wrapper.<init>(Resource),return from a call to Sub.<init>(Resource),start of procedure close(),return from a call to void Resource.close()]
codetoanalyze/java/infer/CloseableAsResourceExample.java, void CloseableAsResourceExample.skippedVritualCallDoesNotCloseResourceOnReceiver(), 2, RESOURCE_LEAK, [start of procedure skippedVritualCallDoesNotCloseResourceOnReceiver(),start of procedure SomeResource(),return from a call to SomeResource.<init>()]
codetoanalyze/java/infer/CloseableAsResourceExample.java, void CloseableAsResourceExample.withException(), 4, RESOURCE_LEAK, [start of procedure withException(),start of procedure SomeResource(),return from a call to SomeResource.<init>(),start of procedure doSomething(),Taking true branch,start of procedure LocalException(),return from a call to LocalException.<init>(),exception codetoanalyze.java.infer.LocalException,return from a call to void SomeResource.doSomething()]
codetoanalyze/java/infer/ContextLeaks.java, ContextLeaks$Singleton ContextLeaks$Singleton.getInstance(Context), 4, CONTEXT_LEAK, [start of procedure getInstance(...),Taking true branch,start of procedure ContextLeaks$Singleton(...),return from a call to ContextLeaks$Singleton.<init>(Context),return from a call to ContextLeaks$Singleton ContextLeaks$Singleton.getInstance(Context)]
codetoanalyze/java/infer/ContextLeaks.java, ContextLeaks$Singleton ContextLeaks.singletonLeak(), 1, CONTEXT_LEAK, [start of procedure singletonLeak(),start of procedure getInstance(...),Taking true branch,start of procedure ContextLeaks$Singleton(...),return from a call to ContextLeaks$Singleton.<init>(Context),return from a call to ContextLeaks$Singleton ContextLeaks$Singleton.getInstance(Context),return from a call to ContextLeaks$Singleton ContextLeaks.singletonLeak()]
codetoanalyze/java/infer/ContextLeaks.java, void ContextLeaks.directLeak(), 2, CONTEXT_LEAK, [start of procedure directLeak(),return from a call to void ContextLeaks.directLeak()]
codetoanalyze/java/infer/ContextLeaks.java, void ContextLeaks.indirectLeak(), 4, CONTEXT_LEAK, [start of procedure indirectLeak(),start of procedure ContextLeaks$Obj(),return from a call to ContextLeaks$Obj.<init>(),return from a call to void ContextLeaks.indirectLeak()]
codetoanalyze/java/infer/ContextLeaks.java, void ContextLeaks.leakAfterInstanceFieldWrite(), 3, CONTEXT_LEAK, [start of procedure leakAfterInstanceFieldWrite(),return from a call to void ContextLeaks.leakAfterInstanceFieldWrite()]
codetoanalyze/java/infer/ContextLeaks.java, void ContextLeaks.nonStaticInnerClassLeak(), 2, CONTEXT_LEAK, [start of procedure nonStaticInnerClassLeak(),start of procedure ContextLeaks$NonStaticInner(...),return from a call to ContextLeaks$NonStaticInner.<init>(ContextLeaks),return from a call to void ContextLeaks.nonStaticInnerClassLeak()]
codetoanalyze/java/infer/CursorLeaks.java, int CursorLeaks.completeDownloadNotClosed(DownloadManager), 8, RESOURCE_LEAK, [start of procedure completeDownloadNotClosed(...),Taking false branch]
codetoanalyze/java/infer/CursorLeaks.java, int CursorLeaks.cursorNotClosed(SQLiteDatabase), 4, RESOURCE_LEAK, [start of procedure cursorNotClosed(...)]
codetoanalyze/java/infer/CursorLeaks.java, int CursorLeaks.getBucketCountNotClosed(), 10, RESOURCE_LEAK, [start of procedure getBucketCountNotClosed(),Taking false branch,Taking false branch]
codetoanalyze/java/infer/CursorLeaks.java, int CursorLeaks.getImageCountHelperNotClosed(String), 13, RESOURCE_LEAK, [start of procedure getImageCountHelperNotClosed(...),Taking true branch]
codetoanalyze/java/infer/CursorLeaks.java, void CursorLeaks.loadPrefsFromContentProviderNotClosed(), 11, RESOURCE_LEAK, [start of procedure loadPrefsFromContentProviderNotClosed(),Taking false branch,Taking true branch]
codetoanalyze/java/infer/CursorLeaks.java, void CursorLeaks.queryUVMLegacyDbNotClosed(), 4, RESOURCE_LEAK, [start of procedure queryUVMLegacyDbNotClosed(),Taking true branch]
codetoanalyze/java/infer/DynamicDispatch.java, void DynamicDispatch.dynamicDispatchShouldNotCauseFalseNegativeEasy(), 3, NULL_DEREFERENCE, [start of procedure dynamicDispatchShouldNotCauseFalseNegativeEasy(),start of procedure DynamicDispatch$Subtype(),start of procedure DynamicDispatch$Supertype(),return from a call to DynamicDispatch$Supertype.<init>(),return from a call to DynamicDispatch$Subtype.<init>(),start of procedure foo(),return from a call to Object DynamicDispatch$Subtype.foo()]
codetoanalyze/java/infer/DynamicDispatch.java, void DynamicDispatch.interfaceShouldNotCauseFalseNegativeEasy(), 3, NULL_DEREFERENCE, [start of procedure interfaceShouldNotCauseFalseNegativeEasy(),start of procedure DynamicDispatch$Impl(),return from a call to DynamicDispatch$Impl.<init>(),start of procedure foo(),return from a call to Object DynamicDispatch$Impl.foo()]
codetoanalyze/java/infer/DynamicDispatch.java, void DynamicDispatch.interfaceShouldNotCauseFalseNegativeHard(DynamicDispatch$Interface), 2, NULL_DEREFERENCE, [start of procedure interfaceShouldNotCauseFalseNegativeHard(...),start of procedure foo(),return from a call to Object DynamicDispatch$Impl.foo()]
codetoanalyze/java/infer/FilterInputStreamLeaks.java, void FilterInputStreamLeaks.bufferedInputStreamNotClosedAfterRead(), 7, RESOURCE_LEAK, [start of procedure bufferedInputStreamNotClosedAfterRead(),exception java.io.IOException]
codetoanalyze/java/infer/FilterInputStreamLeaks.java, void FilterInputStreamLeaks.checkedInputStreamNotClosedAfterRead(), 7, RESOURCE_LEAK, [start of procedure checkedInputStreamNotClosedAfterRead(),exception java.io.IOException]
codetoanalyze/java/infer/FilterInputStreamLeaks.java, void FilterInputStreamLeaks.cipherInputStreamNotClosedAfterSkip(), 7, RESOURCE_LEAK, [start of procedure cipherInputStreamNotClosedAfterSkip(),exception java.io.IOException]
codetoanalyze/java/infer/FilterInputStreamLeaks.java, void FilterInputStreamLeaks.dataInputStreamNotClosedAfterRead(), 8, RESOURCE_LEAK, [start of procedure dataInputStreamNotClosedAfterRead(),exception java.io.IOException]
codetoanalyze/java/infer/FilterInputStreamLeaks.java, void FilterInputStreamLeaks.deflaterInputStreamNotClosedAfterRead(), 7, RESOURCE_LEAK, [start of procedure deflaterInputStreamNotClosedAfterRead(),exception java.io.IOException]
codetoanalyze/java/infer/FilterInputStreamLeaks.java, void FilterInputStreamLeaks.digestInputStreamNotClosedAfterRead(), 8, RESOURCE_LEAK, [start of procedure digestInputStreamNotClosedAfterRead(),exception java.io.IOException]
codetoanalyze/java/infer/FilterInputStreamLeaks.java, void FilterInputStreamLeaks.gzipInputStreamNotClosedAfterRead(), 4, RESOURCE_LEAK, [start of procedure gzipInputStreamNotClosedAfterRead()]
codetoanalyze/java/infer/FilterInputStreamLeaks.java, void FilterInputStreamLeaks.gzipInputStreamNotClosedAfterRead(), 7, RESOURCE_LEAK, [start of procedure gzipInputStreamNotClosedAfterRead(),exception java.io.IOException]
codetoanalyze/java/infer/FilterInputStreamLeaks.java, void FilterInputStreamLeaks.inflaterInputStreamNotClosedAfterRead(), 7, RESOURCE_LEAK, [start of procedure inflaterInputStreamNotClosedAfterRead(),exception java.io.IOException]
codetoanalyze/java/infer/FilterInputStreamLeaks.java, void FilterInputStreamLeaks.pushbackInputStreamNotClosedAfterRead(), 7, RESOURCE_LEAK, [start of procedure pushbackInputStreamNotClosedAfterRead(),exception java.io.IOException]
codetoanalyze/java/infer/FilterOutputStreamLeaks.java, void FilterOutputStreamLeaks.bufferedOutputStreamNotClosedAfterWrite(), 8, RESOURCE_LEAK, [start of procedure bufferedOutputStreamNotClosedAfterWrite(),exception java.io.IOException]
codetoanalyze/java/infer/FilterOutputStreamLeaks.java, void FilterOutputStreamLeaks.checkedOutputStreamNotClosedAfterWrite(), 8, RESOURCE_LEAK, [start of procedure checkedOutputStreamNotClosedAfterWrite(),exception java.io.IOException]
codetoanalyze/java/infer/FilterOutputStreamLeaks.java, void FilterOutputStreamLeaks.cipherOutputStreamNotClosedAfterWrite(), 8, RESOURCE_LEAK, [start of procedure cipherOutputStreamNotClosedAfterWrite(),exception java.io.IOException]
codetoanalyze/java/infer/FilterOutputStreamLeaks.java, void FilterOutputStreamLeaks.dataOutputStreamNotClosedAfterWrite(), 8, RESOURCE_LEAK, [start of procedure dataOutputStreamNotClosedAfterWrite(),exception java.io.IOException]
codetoanalyze/java/infer/FilterOutputStreamLeaks.java, void FilterOutputStreamLeaks.deflaterOutputStreamNotClosedAfterWrite(), 8, RESOURCE_LEAK, [start of procedure deflaterOutputStreamNotClosedAfterWrite(),exception java.io.IOException]
codetoanalyze/java/infer/FilterOutputStreamLeaks.java, void FilterOutputStreamLeaks.digestOutputStreamNotClosedAfterWrite(), 8, RESOURCE_LEAK, [start of procedure digestOutputStreamNotClosedAfterWrite(),exception java.io.IOException]
codetoanalyze/java/infer/FilterOutputStreamLeaks.java, void FilterOutputStreamLeaks.filterOutputStreamNotClosedAfterWrite(), 8, RESOURCE_LEAK, [start of procedure filterOutputStreamNotClosedAfterWrite(),exception java.io.IOException]
codetoanalyze/java/infer/FilterOutputStreamLeaks.java, void FilterOutputStreamLeaks.gzipOutputStreamNotClosedAfterFlush(), 4, RESOURCE_LEAK, [start of procedure gzipOutputStreamNotClosedAfterFlush()]
codetoanalyze/java/infer/FilterOutputStreamLeaks.java, void FilterOutputStreamLeaks.gzipOutputStreamNotClosedAfterFlush(), 7, RESOURCE_LEAK, [start of procedure gzipOutputStreamNotClosedAfterFlush(),exception java.io.IOException]
codetoanalyze/java/infer/FilterOutputStreamLeaks.java, void FilterOutputStreamLeaks.inflaterOutputStreamNotClosedAfterWrite(), 8, RESOURCE_LEAK, [start of procedure inflaterOutputStreamNotClosedAfterWrite(),exception java.io.IOException]
codetoanalyze/java/infer/FilterOutputStreamLeaks.java, void FilterOutputStreamLeaks.printStreamNotClosedAfterWrite(), 6, RESOURCE_LEAK, [start of procedure printStreamNotClosedAfterWrite()]
codetoanalyze/java/infer/GuardedByExample.java, Object GuardedByExample.byRefTrickyBad(), 5, UNSAFE_GUARDED_BY_ACCESS, [start of procedure byRefTrickyBad()]
codetoanalyze/java/infer/GuardedByExample.java, String GuardedByExample$3.readFromInnerClassBad1(), 2, UNSAFE_GUARDED_BY_ACCESS, [start of procedure readFromInnerClassBad1()]
codetoanalyze/java/infer/GuardedByExample.java, String GuardedByExample$4.readFromInnerClassBad2(), 1, UNSAFE_GUARDED_BY_ACCESS, [start of procedure readFromInnerClassBad2()]
codetoanalyze/java/infer/GuardedByExample.java, void GuardedByExample$Sub.badSub(), 1, UNSAFE_GUARDED_BY_ACCESS, [start of procedure badSub()]
codetoanalyze/java/infer/GuardedByExample.java, void GuardedByExample.badGuardedByNormalLock(), 1, UNSAFE_GUARDED_BY_ACCESS, [start of procedure badGuardedByNormalLock()]
codetoanalyze/java/infer/GuardedByExample.java, void GuardedByExample.badGuardedByReentrantLock(), 1, UNSAFE_GUARDED_BY_ACCESS, [start of procedure badGuardedByReentrantLock()]
codetoanalyze/java/infer/GuardedByExample.java, void GuardedByExample.guardedByTypeSyntaxBad(), 1, UNSAFE_GUARDED_BY_ACCESS, [start of procedure guardedByTypeSyntaxBad()]
codetoanalyze/java/infer/GuardedByExample.java, void GuardedByExample.guardedByTypeSyntaxBad(), 2, UNSAFE_GUARDED_BY_ACCESS, [start of procedure guardedByTypeSyntaxBad()]
codetoanalyze/java/infer/GuardedByExample.java, void GuardedByExample.readFAfterBlockBad(), 3, UNSAFE_GUARDED_BY_ACCESS, [start of procedure readFAfterBlockBad()]
codetoanalyze/java/infer/GuardedByExample.java, void GuardedByExample.readFBad(), 1, UNSAFE_GUARDED_BY_ACCESS, [start of procedure readFBad()]
codetoanalyze/java/infer/GuardedByExample.java, void GuardedByExample.readFBadButSuppressedOther(), 1, UNSAFE_GUARDED_BY_ACCESS, [start of procedure readFBadButSuppressedOther()]
codetoanalyze/java/infer/GuardedByExample.java, void GuardedByExample.readFBadWrongAnnotation(), 1, UNSAFE_GUARDED_BY_ACCESS, [start of procedure readFBadWrongAnnotation()]
codetoanalyze/java/infer/GuardedByExample.java, void GuardedByExample.readFBadWrongLock(), 2, UNSAFE_GUARDED_BY_ACCESS, [start of procedure readFBadWrongLock()]
codetoanalyze/java/infer/GuardedByExample.java, void GuardedByExample.readHBad(), 2, UNSAFE_GUARDED_BY_ACCESS, [start of procedure readHBad()]
codetoanalyze/java/infer/GuardedByExample.java, void GuardedByExample.readHBadSynchronizedMethodShouldntHelp(), 1, UNSAFE_GUARDED_BY_ACCESS, [start of procedure readHBadSynchronizedMethodShouldntHelp()]
codetoanalyze/java/infer/GuardedByExample.java, void GuardedByExample.synchronizedMethodReadBad(), 1, UNSAFE_GUARDED_BY_ACCESS, [start of procedure synchronizedMethodReadBad()]
codetoanalyze/java/infer/GuardedByExample.java, void GuardedByExample.synchronizedMethodWriteBad(), 1, UNSAFE_GUARDED_BY_ACCESS, [start of procedure synchronizedMethodWriteBad()]
codetoanalyze/java/infer/GuardedByExample.java, void GuardedByExample.synchronizedOnThisBad(), 1, UNSAFE_GUARDED_BY_ACCESS, [start of procedure synchronizedOnThisBad()]
codetoanalyze/java/infer/GuardedByExample.java, void GuardedByExample.writeFAfterBlockBad(), 3, UNSAFE_GUARDED_BY_ACCESS, [start of procedure writeFAfterBlockBad()]
codetoanalyze/java/infer/GuardedByExample.java, void GuardedByExample.writeFBad(), 1, UNSAFE_GUARDED_BY_ACCESS, [start of procedure writeFBad()]
codetoanalyze/java/infer/GuardedByExample.java, void GuardedByExample.writeFBadWrongLock(), 2, UNSAFE_GUARDED_BY_ACCESS, [start of procedure writeFBadWrongLock()]
codetoanalyze/java/infer/HashMapExample.java, int HashMapExample.getOneIntegerWithoutCheck(), 6, NULL_DEREFERENCE, [start of procedure getOneIntegerWithoutCheck()]
codetoanalyze/java/infer/HashMapExample.java, void HashMapExample.getTwoIntegersWithOneCheck(Integer,Integer), 11, NULL_DEREFERENCE, [start of procedure getTwoIntegersWithOneCheck(...),Taking true branch,Taking true branch]
codetoanalyze/java/infer/InvokeDynamic.java, int InvokeDynamic.lambda$npeInLambdaBad$1(String,String), 1, NULL_DEREFERENCE, [start of procedure lambda$npeInLambdaBad$1(...)]
codetoanalyze/java/infer/InvokeDynamic.java, void InvokeDynamic.invokeDynamicThenNpeBad(List), 5, NULL_DEREFERENCE, [start of procedure invokeDynamicThenNpeBad(...)]
codetoanalyze/java/infer/NullPointerExceptions.java, String NullPointerExceptions.hashmapNPE(HashMap,Object), 1, NULL_DEREFERENCE, [start of procedure hashmapNPE(...)]
codetoanalyze/java/infer/NullPointerExceptions.java, String NullPointerExceptions.nullTryLock(FileChannel), 2, NULL_DEREFERENCE, [start of procedure nullTryLock(...)]
codetoanalyze/java/infer/NullPointerExceptions.java, String NullPointerExceptions.testSystemGetPropertyArgument(), 1, NULL_DEREFERENCE, [start of procedure testSystemGetPropertyArgument()]
codetoanalyze/java/infer/NullPointerExceptions.java, String NullPointerExceptions.tryLockThrows(FileChannel), 6, NULL_DEREFERENCE, [start of procedure tryLockThrows(...),exception java.io.IOException,Switch condition is true. Entering switch case]
codetoanalyze/java/infer/NullPointerExceptions.java, int NullPointerExceptions.NPEvalueOfFromHashmapBad(HashMap,int), 1, NULL_DEREFERENCE, [start of procedure NPEvalueOfFromHashmapBad(...)]
codetoanalyze/java/infer/NullPointerExceptions.java, int NullPointerExceptions.nullListFiles(String), 3, NULL_DEREFERENCE, [start of procedure nullListFiles(...)]
codetoanalyze/java/infer/NullPointerExceptions.java, int NullPointerExceptions.nullPointerException(), 2, NULL_DEREFERENCE, [start of procedure nullPointerException()]
codetoanalyze/java/infer/NullPointerExceptions.java, int NullPointerExceptions.nullPointerExceptionInterProc(), 2, NULL_DEREFERENCE, [start of procedure nullPointerExceptionInterProc(),start of procedure canReturnNullObject(...),start of procedure NullPointerExceptions$A(...),return from a call to NullPointerExceptions$A.<init>(NullPointerExceptions),Taking false branch,return from a call to NullPointerExceptions$A NullPointerExceptions.canReturnNullObject(boolean)]
codetoanalyze/java/infer/NullPointerExceptions.java, int NullPointerExceptions.nullPointerExceptionWithExceptionHandling(boolean), 5, NULL_DEREFERENCE, [start of procedure nullPointerExceptionWithExceptionHandling(...),exception java.lang.Exception,Switch condition is true. Entering switch case]
codetoanalyze/java/infer/NullPointerExceptions.java, void NullPointerExceptions$$$Class$Name$With$Dollars.npeWithDollars(), 2, NULL_DEREFERENCE, [start of procedure npeWithDollars()]
codetoanalyze/java/infer/NullPointerExceptions.java, void NullPointerExceptions.badCheckShouldCauseNPE(), 1, NULL_DEREFERENCE, [start of procedure badCheckShouldCauseNPE(),start of procedure getBool(),Taking true branch,return from a call to Boolean NullPointerExceptions.getBool(),Taking true branch,start of procedure getObj(),Taking false branch,return from a call to Object NullPointerExceptions.getObj()]
codetoanalyze/java/infer/NullPointerExceptions.java, void NullPointerExceptions.cursorFromContentResolverNPE(String), 9, NULL_DEREFERENCE, [start of procedure cursorFromContentResolverNPE(...)]
codetoanalyze/java/infer/NullPointerExceptions.java, void NullPointerExceptions.derefNull(), 2, NULL_DEREFERENCE, [start of procedure derefNull(),start of procedure derefUndefinedCallee(),start of procedure retUndefined(),return from a call to Object NullPointerExceptions.retUndefined(),return from a call to Object NullPointerExceptions.derefUndefinedCallee()]
codetoanalyze/java/infer/NullPointerExceptions.java, void NullPointerExceptions.derefNullableGetter(), 2, NULL_DEREFERENCE, [start of procedure derefNullableGetter(),start of procedure nullableGetter(),return from a call to Object NullPointerExceptions.nullableGetter()]
codetoanalyze/java/infer/NullPointerExceptions.java, void NullPointerExceptions.derefNullableRet(boolean), 2, NULL_DEREFERENCE, [start of procedure derefNullableRet(...),start of procedure nullableRet(...),Taking true branch,return from a call to Object NullPointerExceptions.nullableRet(boolean)]
codetoanalyze/java/infer/NullPointerExceptions.java, void NullPointerExceptions.derefUndefNullableRet(), 2, NULL_DEREFERENCE, [start of procedure derefUndefNullableRet()]
codetoanalyze/java/infer/NullPointerExceptions.java, void NullPointerExceptions.derefUndefNullableRetWrapper(), 1, NULL_DEREFERENCE, [start of procedure derefUndefNullableRetWrapper(),start of procedure undefNullableWrapper(),return from a call to Object NullPointerExceptions.undefNullableWrapper()]
codetoanalyze/java/infer/NullPointerExceptions.java, void NullPointerExceptions.dereferenceAfterLoopOnList(NullPointerExceptions$L), 2, NULL_DEREFERENCE, [start of procedure dereferenceAfterLoopOnList(...),start of procedure returnsNullAfterLoopOnList(...),Taking false branch,return from a call to Object NullPointerExceptions.returnsNullAfterLoopOnList(NullPointerExceptions$L)]
codetoanalyze/java/infer/NullPointerExceptions.java, void NullPointerExceptions.dereferenceAfterUnlock1(Lock), 4, NULL_DEREFERENCE, [start of procedure dereferenceAfterUnlock1(...)]
codetoanalyze/java/infer/NullPointerExceptions.java, void NullPointerExceptions.dereferenceAfterUnlock2(Lock), 6, NULL_DEREFERENCE, [start of procedure dereferenceAfterUnlock2(...)]
codetoanalyze/java/infer/NullPointerExceptions.java, void NullPointerExceptions.nullPointerExceptionArrayLength(), 2, NULL_DEREFERENCE, [start of procedure nullPointerExceptionArrayLength()]
codetoanalyze/java/infer/NullPointerExceptions.java, void NullPointerExceptions.nullPointerExceptionCallArrayReadMethod(), 2, NULL_DEREFERENCE, [start of procedure nullPointerExceptionCallArrayReadMethod(),start of procedure arrayReadShouldNotCauseSymexMemoryError(...),return from a call to Object NullPointerExceptions.arrayReadShouldNotCauseSymexMemoryError(int)]
codetoanalyze/java/infer/NullPointerExceptions.java, void NullPointerExceptions.nullPointerExceptionFromFailingFileOutputStreamConstructor(), 7, NULL_DEREFERENCE, [start of procedure nullPointerExceptionFromFailingFileOutputStreamConstructor(),exception java.io.FileNotFoundException,Switch condition is true. Entering switch case]
codetoanalyze/java/infer/NullPointerExceptions.java, void NullPointerExceptions.nullPointerExceptionFromFaillingResourceConstructor(), 6, NULL_DEREFERENCE, [start of procedure nullPointerExceptionFromFaillingResourceConstructor(),exception java.io.FileNotFoundException,Switch condition is true. Entering switch case]
codetoanalyze/java/infer/NullPointerExceptions.java, void NullPointerExceptions.nullPointerExceptionInArrayLengthLoop(java.lang.Object[]), 3, NULL_DEREFERENCE, [start of procedure nullPointerExceptionInArrayLengthLoop(...),Taking true branch]
codetoanalyze/java/infer/NullPointerExceptions.java, void NullPointerExceptions.nullPointerExceptionUnlessFrameFails(), 4, NULL_DEREFERENCE, [start of procedure nullPointerExceptionUnlessFrameFails(),start of procedure NullPointerExceptions$A(...),return from a call to NullPointerExceptions$A.<init>(NullPointerExceptions),start of procedure frame(...),start of procedure id_generics(...),return from a call to Object NullPointerExceptions.id_generics(Object),return from a call to NullPointerExceptions$A NullPointerExceptions.frame(NullPointerExceptions$A),Taking true branch]
codetoanalyze/java/infer/NullPointerExceptions.java, void NullPointerExceptions.nullPointerExceptionWithNullArrayParameter(), 1, NULL_DEREFERENCE, [start of procedure nullPointerExceptionWithNullArrayParameter(),start of procedure expectNotNullArrayParameter(...)]
codetoanalyze/java/infer/NullPointerExceptions.java, void NullPointerExceptions.nullPointerExceptionWithNullObjectParameter(), 1, NULL_DEREFERENCE, [start of procedure nullPointerExceptionWithNullObjectParameter(),start of procedure expectNotNullObjectParameter(...)]
codetoanalyze/java/infer/NullPointerExceptions.java, void NullPointerExceptions.nullableFieldNPE(), 1, NULL_DEREFERENCE, [start of procedure nullableFieldNPE()]
codetoanalyze/java/infer/NullPointerExceptions.java, void NullPointerExceptions.nullableParamNPE(Object), 1, NULL_DEREFERENCE, [start of procedure nullableParamNPE(...)]
codetoanalyze/java/infer/NullPointerExceptions.java, void NullPointerExceptions.optionalNPE(Optional), 1, NULL_DEREFERENCE, [start of procedure optionalNPE(...)]
codetoanalyze/java/infer/NullPointerExceptions.java, void NullPointerExceptions.otherSinkWithNeverNullSource(), 3, NULL_DEREFERENCE, [start of procedure otherSinkWithNeverNullSource(),start of procedure SomeLibrary(),return from a call to SomeLibrary.<init>(),start of procedure get(),Taking true branch,return from a call to T SomeLibrary.get()]
codetoanalyze/java/infer/NullPointerExceptions.java, void NullPointerExceptions.sinkWithNeverNullSource(), 3, NULL_DEREFERENCE, [start of procedure sinkWithNeverNullSource(),start of procedure NeverNullSource(),return from a call to NeverNullSource.<init>(),start of procedure get(),Taking true branch,return from a call to T NeverNullSource.get()]
codetoanalyze/java/infer/NullPointerExceptions.java, void NullPointerExceptions.someNPEAfterResourceLeak(), 2, NULL_DEREFERENCE, [start of procedure someNPEAfterResourceLeak(),start of procedure sourceOfNullWithResourceLeak(),start of procedure SomeResource(),return from a call to SomeResource.<init>(),return from a call to T CloseableAsResourceExample.sourceOfNullWithResourceLeak()]
codetoanalyze/java/infer/NullPointerExceptions.java, void NullPointerExceptions.stringConstantEqualsFalseNotNPE_FP(), 10, NULL_DEREFERENCE, [start of procedure stringConstantEqualsFalseNotNPE_FP(),Taking false branch]
codetoanalyze/java/infer/NullPointerExceptions.java, void NullPointerExceptions.stringVarEqualsFalseNPE(), 5, NULL_DEREFERENCE, [start of procedure stringVarEqualsFalseNPE(),start of procedure getString2(),return from a call to String NullPointerExceptions.getString2(),Taking true branch]
codetoanalyze/java/infer/NullPointerExceptions.java, void NullPointerExceptions.testSystemGetPropertyReturn(), 2, NULL_DEREFERENCE, [start of procedure testSystemGetPropertyReturn()]
codetoanalyze/java/infer/ReaderLeaks.java, void ReaderLeaks.bufferedReaderNotClosedAfterRead(), 6, RESOURCE_LEAK, [start of procedure bufferedReaderNotClosedAfterRead(),exception java.io.IOException]
codetoanalyze/java/infer/ReaderLeaks.java, void ReaderLeaks.fileReaderNotClosedAfterRead(), 6, RESOURCE_LEAK, [start of procedure fileReaderNotClosedAfterRead(),exception java.io.IOException]
codetoanalyze/java/infer/ReaderLeaks.java, void ReaderLeaks.inputStreamReaderNotClosedAfterRead(), 6, RESOURCE_LEAK, [start of procedure inputStreamReaderNotClosedAfterRead(),exception java.io.IOException]
codetoanalyze/java/infer/ReaderLeaks.java, void ReaderLeaks.pipedReaderFalsePositive(), 5, RESOURCE_LEAK, [start of procedure pipedReaderFalsePositive()]
codetoanalyze/java/infer/ReaderLeaks.java, void ReaderLeaks.pipedReaderNotClosedAfterConnect(PipedWriter), 7, RESOURCE_LEAK, [start of procedure pipedReaderNotClosedAfterConnect(...),exception java.io.IOException]
codetoanalyze/java/infer/ReaderLeaks.java, void ReaderLeaks.pipedReaderNotClosedAfterConstructedWithWriter(), 8, RESOURCE_LEAK, [start of procedure pipedReaderNotClosedAfterConstructedWithWriter(),exception java.io.IOException]
codetoanalyze/java/infer/ReaderLeaks.java, void ReaderLeaks.pushbackReaderNotClosedAfterRead(), 6, RESOURCE_LEAK, [start of procedure pushbackReaderNotClosedAfterRead(),exception java.io.IOException]
codetoanalyze/java/infer/ReaderLeaks.java, void ReaderLeaks.readerNotClosedAfterRead(), 6, RESOURCE_LEAK, [start of procedure readerNotClosedAfterRead(),exception java.io.IOException]
codetoanalyze/java/infer/ResourceLeaks.java, String ResourceLeaks.readInstallationFileBad(File), 6, RESOURCE_LEAK, [start of procedure readInstallationFileBad(...),exception java.io.IOException]
codetoanalyze/java/infer/ResourceLeaks.java, boolean ResourceLeaks.jarFileNotClosed(), 3, RESOURCE_LEAK, [start of procedure jarFileNotClosed()]
codetoanalyze/java/infer/ResourceLeaks.java, int ResourceLeaks.fileOutputStreamTwoLeaks1(boolean), 3, RESOURCE_LEAK, [start of procedure fileOutputStreamTwoLeaks1(...),Taking true branch]
codetoanalyze/java/infer/ResourceLeaks.java, int ResourceLeaks.fileOutputStreamTwoLeaks1(boolean), 6, RESOURCE_LEAK, [start of procedure fileOutputStreamTwoLeaks1(...),Taking false branch]
codetoanalyze/java/infer/ResourceLeaks.java, int ResourceLeaks.readConfigNotCloseStream(String), 5, RESOURCE_LEAK, [start of procedure readConfigNotCloseStream(...)]
codetoanalyze/java/infer/ResourceLeaks.java, void ResourceLeaks.activityObtainTypedArrayAndLeak(Activity), 2, RESOURCE_LEAK, [start of procedure activityObtainTypedArrayAndLeak(...),start of procedure ignore(...),return from a call to void ResourceLeaks.ignore(Object)]
codetoanalyze/java/infer/ResourceLeaks.java, void ResourceLeaks.contextObtainTypedArrayAndLeak(Context), 2, RESOURCE_LEAK, [start of procedure contextObtainTypedArrayAndLeak(...),start of procedure ignore(...),return from a call to void ResourceLeaks.ignore(Object)]
codetoanalyze/java/infer/ResourceLeaks.java, void ResourceLeaks.copyFileLeak(File,File), 11, RESOURCE_LEAK, [start of procedure copyFileLeak(...),exception java.io.FileNotFoundException]
codetoanalyze/java/infer/ResourceLeaks.java, void ResourceLeaks.copyFileLeak(File,File), 11, RESOURCE_LEAK, [start of procedure copyFileLeak(...),exception java.io.IOException,Switch condition is true. Entering switch case,Taking true branch,exception java.io.IOException]
codetoanalyze/java/infer/ResourceLeaks.java, void ResourceLeaks.deflaterLeak(), 1, RESOURCE_LEAK, [start of procedure deflaterLeak()]
codetoanalyze/java/infer/ResourceLeaks.java, void ResourceLeaks.fileInputStreamNotClosedAfterRead(), 6, RESOURCE_LEAK, [start of procedure fileInputStreamNotClosedAfterRead(),exception java.io.IOException]
codetoanalyze/java/infer/ResourceLeaks.java, void ResourceLeaks.fileOutputStreamNotClosed(), 1, RESOURCE_LEAK, [start of procedure fileOutputStreamNotClosed()]
codetoanalyze/java/infer/ResourceLeaks.java, void ResourceLeaks.fileOutputStreamNotClosedAfterWrite(), 7, RESOURCE_LEAK, [start of procedure fileOutputStreamNotClosedAfterWrite(),exception java.io.IOException]
codetoanalyze/java/infer/ResourceLeaks.java, void ResourceLeaks.fileOutputStreamOneLeak(), 2, RESOURCE_LEAK, [start of procedure fileOutputStreamOneLeak(),Taking true branch]
codetoanalyze/java/infer/ResourceLeaks.java, void ResourceLeaks.fileOutputStreamTwoLeaks2(), 2, RESOURCE_LEAK, [start of procedure fileOutputStreamTwoLeaks2(),Taking true branch]
codetoanalyze/java/infer/ResourceLeaks.java, void ResourceLeaks.fileOutputStreamTwoLeaks2(), 5, RESOURCE_LEAK, [start of procedure fileOutputStreamTwoLeaks2(),Taking true branch]
codetoanalyze/java/infer/ResourceLeaks.java, void ResourceLeaks.inflaterLeak(), 1, RESOURCE_LEAK, [start of procedure inflaterLeak()]
codetoanalyze/java/infer/ResourceLeaks.java, void ResourceLeaks.jarInputStreamLeak(), 3, RESOURCE_LEAK, [start of procedure jarInputStreamLeak()]
codetoanalyze/java/infer/ResourceLeaks.java, void ResourceLeaks.jarOutputStreamLeak(), 3, RESOURCE_LEAK, [start of procedure jarOutputStreamLeak()]
codetoanalyze/java/infer/ResourceLeaks.java, void ResourceLeaks.nestedBad1(), 1, RESOURCE_LEAK, [start of procedure nestedBad1()]
codetoanalyze/java/infer/ResourceLeaks.java, void ResourceLeaks.nestedBad2(), 1, RESOURCE_LEAK, [start of procedure nestedBad2()]
codetoanalyze/java/infer/ResourceLeaks.java, void ResourceLeaks.nestedBadJarInputStream(File), 1, RESOURCE_LEAK, [start of procedure nestedBadJarInputStream(...)]
codetoanalyze/java/infer/ResourceLeaks.java, void ResourceLeaks.nestedBadJarOutputStream(), 1, RESOURCE_LEAK, [start of procedure nestedBadJarOutputStream()]
codetoanalyze/java/infer/ResourceLeaks.java, void ResourceLeaks.objectInputStreamClosedNestedBad(), 3, RESOURCE_LEAK, [start of procedure objectInputStreamClosedNestedBad()]
codetoanalyze/java/infer/ResourceLeaks.java, void ResourceLeaks.objectInputStreamNotClosedAfterRead(), 3, RESOURCE_LEAK, [start of procedure objectInputStreamNotClosedAfterRead()]
codetoanalyze/java/infer/ResourceLeaks.java, void ResourceLeaks.objectInputStreamNotClosedAfterRead(), 6, RESOURCE_LEAK, [start of procedure objectInputStreamNotClosedAfterRead(),exception java.io.IOException]
codetoanalyze/java/infer/ResourceLeaks.java, void ResourceLeaks.objectOutputStreamClosedNestedBad(), 3, RESOURCE_LEAK, [start of procedure objectOutputStreamClosedNestedBad()]
codetoanalyze/java/infer/ResourceLeaks.java, void ResourceLeaks.objectOutputStreamNotClosedAfterWrite(), 4, RESOURCE_LEAK, [start of procedure objectOutputStreamNotClosedAfterWrite()]
codetoanalyze/java/infer/ResourceLeaks.java, void ResourceLeaks.objectOutputStreamNotClosedAfterWrite(), 7, RESOURCE_LEAK, [start of procedure objectOutputStreamNotClosedAfterWrite(),exception java.io.IOException]
codetoanalyze/java/infer/ResourceLeaks.java, void ResourceLeaks.openHttpURLConnectionNotDisconnected(), 7, RESOURCE_LEAK, [start of procedure openHttpURLConnectionNotDisconnected()]
codetoanalyze/java/infer/ResourceLeaks.java, void ResourceLeaks.openHttpsURLConnectionNotDisconnected(), 3, RESOURCE_LEAK, [start of procedure openHttpsURLConnectionNotDisconnected()]
codetoanalyze/java/infer/ResourceLeaks.java, void ResourceLeaks.parseFromInputStreamAndLeak(JsonFactory), 5, RESOURCE_LEAK, [start of procedure parseFromInputStreamAndLeak(...)]
codetoanalyze/java/infer/ResourceLeaks.java, void ResourceLeaks.pipedInputStreamNotClosedAfterRead(PipedOutputStream), 6, RESOURCE_LEAK, [start of procedure pipedInputStreamNotClosedAfterRead(...),exception java.io.IOException]
codetoanalyze/java/infer/ResourceLeaks.java, void ResourceLeaks.pipedOutputStreamNotClosedAfterWrite(), 7, RESOURCE_LEAK, [start of procedure pipedOutputStreamNotClosedAfterWrite(),exception java.io.IOException]
codetoanalyze/java/infer/ResourceLeaks.java, void ResourceLeaks.scannerNotClosed(), 1, RESOURCE_LEAK, [start of procedure scannerNotClosed()]
codetoanalyze/java/infer/ResourceLeaks.java, void ResourceLeaks.serverSocketNotClosed(), 12, RESOURCE_LEAK, [start of procedure serverSocketNotClosed(),exception java.io.IOException]
codetoanalyze/java/infer/ResourceLeaks.java, void ResourceLeaks.socketNotClosed(), 1, RESOURCE_LEAK, [start of procedure socketNotClosed()]
codetoanalyze/java/infer/ResourceLeaks.java, void ResourceLeaks.themeObtainTypedArrayAndLeak(Resources$Theme), 2, RESOURCE_LEAK, [start of procedure themeObtainTypedArrayAndLeak(...),start of procedure ignore(...),return from a call to void ResourceLeaks.ignore(Object)]
codetoanalyze/java/infer/ResourceLeaks.java, void ResourceLeaks.twoResources(), 11, RESOURCE_LEAK, [start of procedure twoResources(),exception java.io.IOException,Switch condition is true. Entering switch case,Taking true branch,exception java.io.IOException]
codetoanalyze/java/infer/ResourceLeaks.java, void ResourceLeaks.twoResourcesRandomAccessFile(), 10, RESOURCE_LEAK, [start of procedure twoResourcesRandomAccessFile(),Taking true branch,exception java.io.IOException]
codetoanalyze/java/infer/ResourceLeaks.java, void ResourceLeaks.twoResourcesServerSocket(), 10, RESOURCE_LEAK, [start of procedure twoResourcesServerSocket(),Taking true branch,exception java.io.IOException]
codetoanalyze/java/infer/ResourceLeaks.java, void ResourceLeaks.zipFileLeakExceptionalBranch(), 5, RESOURCE_LEAK, [start of procedure zipFileLeakExceptionalBranch(),exception java.io.IOException,Switch condition is true. Entering switch case]
codetoanalyze/java/infer/TaintExample.java, InputStream TaintExample.socketIgnoreExceptionNoVerify(SSLSocketFactory), 9, TAINTED_VALUE_REACHING_SENSITIVE_FUNCTION, [start of procedure socketIgnoreExceptionNoVerify(...),start of procedure throwExceptionIfNoVerify(...),Taking true branch,exception javax.net.ssl.SSLException,return from a call to void TaintExample.throwExceptionIfNoVerify(SSLSocket,String),Switch condition is true. Entering switch case]
codetoanalyze/java/infer/TaintExample.java, InputStream TaintExample.socketNotVerifiedSimple(SSLSocketFactory), 3, TAINTED_VALUE_REACHING_SENSITIVE_FUNCTION, [start of procedure socketNotVerifiedSimple(...)]
codetoanalyze/java/infer/TaintExample.java, InputStream TaintExample.socketVerifiedForgotToCheckRetval(SSLSocketFactory,HostnameVerifier,SSLSession), 7, TAINTED_VALUE_REACHING_SENSITIVE_FUNCTION, [start of procedure socketVerifiedForgotToCheckRetval(...)]
codetoanalyze/java/infer/TaintExample.java, InputStream TaintExample.taintingShouldNotPreventInference1(SSLSocketFactory), 4, TAINTED_VALUE_REACHING_SENSITIVE_FUNCTION, [start of procedure taintingShouldNotPreventInference1(...),start of procedure socketNotVerifiedSimple(...),return from a call to InputStream TaintExample.socketNotVerifiedSimple(SSLSocketFactory)]
codetoanalyze/java/infer/TaintExample.java, InputStream TaintExample.taintingShouldNotPreventInference2(SSLSocketFactory), 3, TAINTED_VALUE_REACHING_SENSITIVE_FUNCTION, [start of procedure taintingShouldNotPreventInference2(...),start of procedure callReadInputStreamCauseTaintError(...),start of procedure readInputStream(...),return from a call to InputStream TaintExample.readInputStream(Socket),return from a call to Socket TaintExample.callReadInputStreamCauseTaintError(SSLSocketFactory)]
codetoanalyze/java/infer/TaintExample.java, Socket TaintExample.callReadInputStreamCauseTaintError(SSLSocketFactory), 3, TAINTED_VALUE_REACHING_SENSITIVE_FUNCTION, [start of procedure callReadInputStreamCauseTaintError(...)]
codetoanalyze/java/infer/TaintExample.java, void TaintExample.contentValuesPutWithTaintedString(ContentValues,SharedPreferences,String,String), 2, TAINTED_VALUE_REACHING_SENSITIVE_FUNCTION, [start of procedure contentValuesPutWithTaintedString(...)]
codetoanalyze/java/infer/TaintExample.java, void TaintExample.interprocTaintErrorWithModelMethods1(), 1, TAINTED_VALUE_REACHING_SENSITIVE_FUNCTION, [start of procedure interprocTaintErrorWithModelMethods1(),start of procedure returnTaintedSourceModelMethods(),return from a call to Object TaintExample.returnTaintedSourceModelMethods()]
codetoanalyze/java/infer/TaintExample.java, void TaintExample.interprocTaintErrorWithModelMethods2(), 1, TAINTED_VALUE_REACHING_SENSITIVE_FUNCTION, [start of procedure interprocTaintErrorWithModelMethods2()]
codetoanalyze/java/infer/TaintExample.java, void TaintExample.interprocTaintErrorWithModelMethods3(), 1, TAINTED_VALUE_REACHING_SENSITIVE_FUNCTION, [start of procedure interprocTaintErrorWithModelMethods3(),start of procedure returnTaintedSourceModelMethods(),return from a call to Object TaintExample.returnTaintedSourceModelMethods()]
codetoanalyze/java/infer/TaintExample.java, void TaintExample.interprocTaintErrorWithModelMethodsUndefined1(), 1, TAINTED_VALUE_REACHING_SENSITIVE_FUNCTION, [start of procedure interprocTaintErrorWithModelMethodsUndefined1(),start of procedure returnTaintedSourceModelMethodsUndefined(),return from a call to Object TaintExample.returnTaintedSourceModelMethodsUndefined()]
codetoanalyze/java/infer/TaintExample.java, void TaintExample.interprocTaintErrorWithModelMethodsUndefined2(), 1, TAINTED_VALUE_REACHING_SENSITIVE_FUNCTION, [start of procedure interprocTaintErrorWithModelMethodsUndefined2()]
codetoanalyze/java/infer/TaintExample.java, void TaintExample.interprocTaintErrorWithModelMethodsUndefined3(), 1, TAINTED_VALUE_REACHING_SENSITIVE_FUNCTION, [start of procedure interprocTaintErrorWithModelMethodsUndefined3(),start of procedure returnTaintedSourceModelMethodsUndefined(),return from a call to Object TaintExample.returnTaintedSourceModelMethodsUndefined()]
codetoanalyze/java/infer/TaintExample.java, void TaintExample.simpleTaintErrorWithModelMethods(), 2, TAINTED_VALUE_REACHING_SENSITIVE_FUNCTION, [start of procedure simpleTaintErrorWithModelMethods()]
codetoanalyze/java/infer/TaintExample.java, void TaintExample.simpleTaintErrorWithModelMethodsUndefined(), 2, TAINTED_VALUE_REACHING_SENSITIVE_FUNCTION, [start of procedure simpleTaintErrorWithModelMethodsUndefined()]
codetoanalyze/java/infer/TaintExample.java, void TaintExample.testIntegritySinkAnnotReport(String), 1, TAINTED_VALUE_REACHING_SENSITIVE_FUNCTION, [start of procedure testIntegritySinkAnnotReport(...),start of procedure integritySource(),return from a call to String TaintExample.integritySource()]
codetoanalyze/java/infer/TaintExample.java, void TaintExample.testIntegritySourceAnnot(), 1, TAINTED_VALUE_REACHING_SENSITIVE_FUNCTION, [start of procedure testIntegritySourceAnnot(),start of procedure integritySource(),return from a call to String TaintExample.integritySource()]
codetoanalyze/java/infer/TaintExample.java, void TaintExample.testIntegritySourceInstanceFieldAnnot(), 2, TAINTED_VALUE_REACHING_SENSITIVE_FUNCTION, [start of procedure testIntegritySourceInstanceFieldAnnot()]
codetoanalyze/java/infer/TaintExample.java, void TaintExample.testIntegritySourceStaticFieldAnnot(), 2, TAINTED_VALUE_REACHING_SENSITIVE_FUNCTION, [start of procedure testIntegritySourceStaticFieldAnnot()]
codetoanalyze/java/infer/TaintExample.java, void TaintExample.testPrivacySinkAnnot1(), 2, TAINTED_VALUE_REACHING_SENSITIVE_FUNCTION, [start of procedure testPrivacySinkAnnot1(),start of procedure privacySource(),return from a call to String TaintExample.privacySource()]
codetoanalyze/java/infer/TaintExample.java, void TaintExample.testPrivacySinkAnnot3(), 2, TAINTED_VALUE_REACHING_SENSITIVE_FUNCTION, [start of procedure testPrivacySinkAnnot3(),start of procedure privacySource(),return from a call to String TaintExample.privacySource()]
codetoanalyze/java/infer/TaintExample.java, void TaintExample.testPrivacySourceAnnot(), 1, TAINTED_VALUE_REACHING_SENSITIVE_FUNCTION, [start of procedure testPrivacySourceAnnot(),start of procedure privacySource(),return from a call to String TaintExample.privacySource()]
codetoanalyze/java/infer/TaintExample.java, void TaintExample.testPrivacySourceFieldAnnotPropagation(), 2, TAINTED_VALUE_REACHING_SENSITIVE_FUNCTION, [start of procedure testPrivacySourceFieldAnnotPropagation()]
codetoanalyze/java/infer/TaintExample.java, void TaintExample.testPrivacySourceInstanceFieldAnnot(), 2, TAINTED_VALUE_REACHING_SENSITIVE_FUNCTION, [start of procedure testPrivacySourceInstanceFieldAnnot()]
codetoanalyze/java/infer/TaintExample.java, void TaintExample.testPrivacySourceStaticFieldAnnot(), 2, TAINTED_VALUE_REACHING_SENSITIVE_FUNCTION, [start of procedure testPrivacySourceStaticFieldAnnot()]
codetoanalyze/java/infer/WriterLeaks.java, void WriterLeaks.bufferedWriterNotClosedAfterWrite(), 7, RESOURCE_LEAK, [start of procedure bufferedWriterNotClosedAfterWrite(),exception java.io.IOException]
codetoanalyze/java/infer/WriterLeaks.java, void WriterLeaks.fileWriterNotClosedAfterWrite(), 6, RESOURCE_LEAK, [start of procedure fileWriterNotClosedAfterWrite(),exception java.io.IOException]
codetoanalyze/java/infer/WriterLeaks.java, void WriterLeaks.outputStreamWriterNotClosedAfterWrite(), 6, RESOURCE_LEAK, [start of procedure outputStreamWriterNotClosedAfterWrite(),exception java.io.IOException]
codetoanalyze/java/infer/WriterLeaks.java, void WriterLeaks.pipedWriterNotClosedAfterConnect(PipedReader), 7, RESOURCE_LEAK, [start of procedure pipedWriterNotClosedAfterConnect(...),exception java.io.IOException]
codetoanalyze/java/infer/WriterLeaks.java, void WriterLeaks.pipedWriterNotClosedAfterConstructedWithReader(), 8, RESOURCE_LEAK, [start of procedure pipedWriterNotClosedAfterConstructedWithReader(),exception java.io.IOException]
codetoanalyze/java/infer/WriterLeaks.java, void WriterLeaks.printWriterNotClosedAfterAppend(), 4, RESOURCE_LEAK, [start of procedure printWriterNotClosedAfterAppend()]
codetoanalyze/java/infer/WriterLeaks.java, void WriterLeaks.writerNotClosedAfterWrite(), 6, RESOURCE_LEAK, [start of procedure writerNotClosedAfterWrite(),exception java.io.IOException]

@ -27,10 +27,21 @@ compile:
clang $(CLANG_OPTIONS) $(SOURCES)
capture:
$(INFER_BIN) $(INFER_OPTIONS) --project-root $(ROOT) -- clang $(CLANG_OPTIONS) $(ROOT)/main.cpp
$(INFER_BIN) $(INFER_OPTIONS) --project-root $(SYM_ROOT) -- clang $(CLANG_OPTIONS) $(SYM_ROOT)/main_symlink.cpp
cd $(ROOT) && $(INFER_BIN) $(INFER_OPTIONS) -- clang $(CLANG_OPTIONS) main_default_root.cpp
cd $(SYM_ROOT) && $(INFER_BIN) $(INFER_OPTIONS) -- clang $(CLANG_OPTIONS) main_default_symlink.cpp
$(INFER_BIN) $(INFER_OPTIONS) --project-root $(ROOT) \
--icfg-dotty-outfile $(ROOT)/main.cpp.test.dot -- \
clang $(CLANG_OPTIONS) $(ROOT)/main.cpp
$(INFER_BIN) $(INFER_OPTIONS) --project-root $(SYM_ROOT) \
--icfg-dotty-outfile $(SYM_ROOT)/main_symlink.cpp.test.dot -- \
clang $(CLANG_OPTIONS) $(SYM_ROOT)/main.cpp
cd $(ROOT) && $(INFER_BIN) $(INFER_OPTIONS) \
--icfg-dotty-outfile main_default_root.cpp.test.dot -- \
clang $(CLANG_OPTIONS) main.cpp
cd $(SYM_ROOT) && $(INFER_BIN) $(INFER_OPTIONS) \
--icfg-dotty-outfile main_default_symlink.cpp.test.dot -- \
clang $(CLANG_OPTIONS) main.cpp
# test_extra needs to be separate target. Otherwise commands from test
# target in common Makefile won't run

@ -1 +0,0 @@
../../../../examples/hello.c

@ -0,0 +1,15 @@
/*
* Copyright (c) 2015 - present Facebook, Inc.
* All rights reserved.
*
* This source code is licensed under the BSD style license found in the
* LICENSE file in the root directory of this source tree. An additional grant
* of patent rights can be found in the PATENTS file in the same directory.
*/
#include <stdlib.h>
void test() {
int* s = NULL;
*s = 42;
}

@ -0,0 +1,15 @@
/*
* Copyright (c) 2015 - present Facebook, Inc.
* All rights reserved.
*
* This source code is licensed under the BSD style license found in the
* LICENSE file in the root directory of this source tree. An additional grant
* of patent rights can be found in the PATENTS file in the same directory.
*/
#include <stdlib.h>
void test() {
int* s = NULL;
*s = 42;
}

@ -9,7 +9,7 @@ TESTS_DIR = ../..
ANALYZER = infer
CLANG_OPTIONS = -c
INFER_OPTIONS = --report-custom-error --developer-mode --project-root ../../../tests
INFER_OPTIONS = --report-custom-error --developer-mode --project-root $(TESTS_DIR)
INFERPRINT_OPTIONS = --issues-tests
SOURCES = \

@ -22,7 +22,6 @@ codetoanalyze/c/errors/dangling_deref/dpd.c, intraprocdpd, 3, UNINITIALIZED_VALU
codetoanalyze/c/errors/dangling_deref/dpd.c, nodpd, 2, RETURN_VALUE_IGNORED
codetoanalyze/c/errors/dangling_deref/dpd.c, nodpd1, 3, NULL_DEREFERENCE
codetoanalyze/c/errors/dangling_deref/dpd.c, nodpd1, 3, RETURN_VALUE_IGNORED
codetoanalyze/c/errors/enumeration/other_enum.c, other_enum_test, 4, DIVIDE_BY_ZERO
codetoanalyze/c/errors/initialization/compound_literal.c, divide_by_zero, 0, DIVIDE_BY_ZERO
codetoanalyze/c/errors/initialization/initlistexpr.c, init_divide_by_zero, 2, Assert_failure
codetoanalyze/c/errors/initialization/initlistexpr.c, init_divide_by_zero, 2, DIVIDE_BY_ZERO
@ -82,9 +81,10 @@ codetoanalyze/c/errors/null_dereference/short.c, g_error, 2, NULL_DEREFERENCE
codetoanalyze/c/errors/null_dereference/short.c, g_error, 2, NULL_TEST_AFTER_DEREFERENCE
codetoanalyze/c/errors/null_dereference/short.c, l_error, 2, NULL_DEREFERENCE
codetoanalyze/c/errors/null_dereference/short.c, m, 2, NULL_TEST_AFTER_DEREFERENCE
codetoanalyze/c/errors/offsetof_expr/offsetof_expr.c, test_offsetof_expr, 3, DIVIDE_BY_ZERO
codetoanalyze/c/errors/offsetof_expr/offsetof_expr.c, test_offsetof_expr, 5, DIVIDE_BY_ZERO
codetoanalyze/c/errors/resource_leaks/leak.c, fileNotClosed, 5, RESOURCE_LEAK
codetoanalyze/c/errors/resource_leaks/leak.c, socketNotClosed, 5, RESOURCE_LEAK
codetoanalyze/c/errors/vaarg_expr/vaarg_expr.c, vaarg_foo, 6, DIVIDE_BY_ZERO
codetoanalyze/c/errors/vaarg_expr/vaarg_expr.c, vaarg_foo, 8, DIVIDE_BY_ZERO
codetoanalyze/c/frontend/enumeration/other_enum.c, other_enum_test, 4, DIVIDE_BY_ZERO
codetoanalyze/c/frontend/offsetof_expr/offsetof_expr.c, test_offsetof_expr, 3, DIVIDE_BY_ZERO
codetoanalyze/c/frontend/offsetof_expr/offsetof_expr.c, test_offsetof_expr, 5, DIVIDE_BY_ZERO
codetoanalyze/c/frontend/vaarg_expr/vaarg_expr.c, vaarg_foo, 6, DIVIDE_BY_ZERO
codetoanalyze/c/frontend/vaarg_expr/vaarg_expr.c, vaarg_foo, 8, DIVIDE_BY_ZERO

@ -40,170 +40,6 @@ codetoanalyze/cpp/errors/numeric/min_max.cpp, min_X_div0, 2, DIVIDE_BY_ZERO, [st
codetoanalyze/cpp/errors/numeric/min_max.cpp, min_int_div0, 0, DIVIDE_BY_ZERO, [start of procedure min_int_div0()]
codetoanalyze/cpp/errors/overwrite_attribute/main.cpp, testSetIntValue, 3, DIVIDE_BY_ZERO, [start of procedure testSetIntValue(),start of procedure setIntValue(),return from a call to setIntValue]
codetoanalyze/cpp/errors/resource_leaks/raii.cpp, resource_leak, 7, RESOURCE_LEAK, [start of procedure resource_leak(),Condition is false]
codetoanalyze/cpp/errors/shared/attributes/deprecated_hack.cpp, derefFirstArg2_null_deref, 2, NULL_DEREFERENCE, [start of procedure derefFirstArg2_null_deref()]
codetoanalyze/cpp/errors/shared/attributes/deprecated_hack.cpp, derefFirstArg3_null_deref, 2, NULL_DEREFERENCE, [start of procedure derefFirstArg3_null_deref(),start of procedure derefFirstArg3()]
codetoanalyze/cpp/errors/shared/attributes/deprecated_hack.cpp, derefFirstArg_null_deref, 2, NULL_DEREFERENCE, [start of procedure derefFirstArg_null_deref()]
codetoanalyze/cpp/errors/shared/attributes/deprecated_hack.cpp, getPtr_null_deref1, 3, NULL_DEREFERENCE, [start of procedure getPtr_null_deref1(),start of procedure TranslateAsPtr,start of procedure setPtr,return from a call to TranslateAsPtr<int>_setPtr,return from a call to TranslateAsPtr<int>_TranslateAsPtr,start of procedure setPtr,return from a call to TranslateAsPtr<int>_setPtr]
codetoanalyze/cpp/errors/shared/attributes/deprecated_hack.cpp, getPtr_null_deref2, 3, NULL_DEREFERENCE, [start of procedure getPtr_null_deref2(),start of procedure TranslateAsPtr,start of procedure setPtr,return from a call to TranslateAsPtr<int>_setPtr,return from a call to TranslateAsPtr<int>_TranslateAsPtr,start of procedure setPtr,return from a call to TranslateAsPtr<int>_setPtr]
codetoanalyze/cpp/errors/shared/attributes/deprecated_hack.cpp, getRef_null_deref1, 3, NULL_DEREFERENCE, [start of procedure getRef_null_deref1(),start of procedure TranslateAsPtr,start of procedure setPtr,return from a call to TranslateAsPtr<int>_setPtr,return from a call to TranslateAsPtr<int>_TranslateAsPtr,start of procedure setPtr,return from a call to TranslateAsPtr<int>_setPtr]
codetoanalyze/cpp/errors/shared/attributes/deprecated_hack.cpp, getRef_null_deref2, 3, NULL_DEREFERENCE, [start of procedure getRef_null_deref2(),start of procedure TranslateAsPtr,start of procedure setPtr,return from a call to TranslateAsPtr<int>_setPtr,return from a call to TranslateAsPtr<int>_TranslateAsPtr,start of procedure setPtr,return from a call to TranslateAsPtr<int>_setPtr]
codetoanalyze/cpp/errors/shared/attributes/deprecated_hack.cpp, operator_star_null_deref1, 3, NULL_DEREFERENCE, [start of procedure operator_star_null_deref1(),start of procedure TranslateAsPtr,start of procedure setPtr,return from a call to TranslateAsPtr<int>_setPtr,return from a call to TranslateAsPtr<int>_TranslateAsPtr,start of procedure setPtr,return from a call to TranslateAsPtr<int>_setPtr]
codetoanalyze/cpp/errors/shared/attributes/deprecated_hack.cpp, operator_star_null_deref2, 3, NULL_DEREFERENCE, [start of procedure operator_star_null_deref2(),start of procedure TranslateAsPtr,start of procedure setPtr,return from a call to TranslateAsPtr<int>_setPtr,return from a call to TranslateAsPtr<int>_TranslateAsPtr,start of procedure setPtr,return from a call to TranslateAsPtr<int>_setPtr]
codetoanalyze/cpp/errors/shared/attributes/deprecated_hack.cpp, operator_star_ok_deref, 4, UNINITIALIZED_VALUE, [start of procedure operator_star_ok_deref(),start of procedure TranslateAsPtr,start of procedure setPtr,return from a call to TranslateAsPtr<int>_setPtr,return from a call to TranslateAsPtr<int>_TranslateAsPtr,start of procedure setPtr,return from a call to TranslateAsPtr<int>_setPtr]
codetoanalyze/cpp/errors/shared/conditional/lvalue_conditional.cpp, div0_assign_conditional, 0, DIVIDE_BY_ZERO, [start of procedure div0_assign_conditional(),start of procedure assign_conditional(),Condition is false,return from a call to assign_conditional]
codetoanalyze/cpp/errors/shared/conditional/lvalue_conditional.cpp, div0_choose_lvalue, 0, DIVIDE_BY_ZERO, [start of procedure div0_choose_lvalue(),start of procedure choose_lvalue(),Condition is true,return from a call to choose_lvalue]
codetoanalyze/cpp/errors/shared/conditional/lvalue_conditional.cpp, div0_choose_rvalue, 0, DIVIDE_BY_ZERO, [start of procedure div0_choose_rvalue(),start of procedure choose_rvalue(),Condition is true,return from a call to choose_rvalue]
codetoanalyze/cpp/errors/shared/conditional/lvalue_conditional.cpp, div0_temp_lvalue, 0, DIVIDE_BY_ZERO, [start of procedure div0_temp_lvalue(),start of procedure div_temp_lvalue(),Condition is true]
codetoanalyze/cpp/errors/shared/constructors/constructor_init.cpp, delegate_constr_f2_div0, 3, DIVIDE_BY_ZERO, [start of procedure delegate_constr_f2_div0(),start of procedure B,start of procedure B,start of procedure A,return from a call to A_A,start of procedure T,return from a call to B::T_T,return from a call to B_B,return from a call to B_B]
codetoanalyze/cpp/errors/shared/constructors/constructor_init.cpp, delegate_constr_f_div0, 3, DIVIDE_BY_ZERO, [start of procedure delegate_constr_f_div0(),start of procedure B,start of procedure B,start of procedure A,return from a call to A_A,start of procedure T,return from a call to B::T_T,return from a call to B_B,return from a call to B_B]
codetoanalyze/cpp/errors/shared/constructors/constructor_init.cpp, f2_div0, 2, DIVIDE_BY_ZERO, [start of procedure f2_div0(),start of procedure B,start of procedure A,return from a call to A_A,start of procedure T,return from a call to B::T_T,return from a call to B_B]
codetoanalyze/cpp/errors/shared/constructors/constructor_init.cpp, f_div0, 2, DIVIDE_BY_ZERO, [start of procedure f_div0(),start of procedure B,start of procedure A,return from a call to A_A,start of procedure T,return from a call to B::T_T,return from a call to B_B]
codetoanalyze/cpp/errors/shared/constructors/constructor_init.cpp, t_div0, 2, DIVIDE_BY_ZERO, [start of procedure t_div0(),start of procedure B,start of procedure A,return from a call to A_A,start of procedure T,return from a call to B::T_T,return from a call to B_B]
codetoanalyze/cpp/errors/shared/constructors/constructor_new.cpp, constructor_new::array_of_class_with_not_constant_size, 1, MEMORY_LEAK, [start of procedure constructor_new::array_of_class_with_not_constant_size(),start of procedure constructor_new::getValue(),return from a call to constructor_new::getValue,Condition is true]
codetoanalyze/cpp/errors/shared/constructors/constructor_new.cpp, constructor_new::array_of_person_with_constant_size, 0, MEMORY_LEAK, [start of procedure constructor_new::array_of_person_with_constant_size(),start of procedure Person,return from a call to constructor_new::Person_Person,start of procedure Person,return from a call to constructor_new::Person_Person,start of procedure Person,return from a call to constructor_new::Person_Person,start of procedure Person,return from a call to constructor_new::Person_Person,start of procedure Person,return from a call to constructor_new::Person_Person,start of procedure Person,return from a call to constructor_new::Person_Person,start of procedure Person,return from a call to constructor_new::Person_Person,start of procedure Person,return from a call to constructor_new::Person_Person,start of procedure Person,return from a call to constructor_new::Person_Person,start of procedure Person,return from a call to constructor_new::Person_Person]
codetoanalyze/cpp/errors/shared/constructors/constructor_new.cpp, constructor_new::constructor_1_arg_new_div0, 2, DIVIDE_BY_ZERO, [start of procedure constructor_new::constructor_1_arg_new_div0(),start of procedure Person,return from a call to constructor_new::Person_Person]
codetoanalyze/cpp/errors/shared/constructors/constructor_new.cpp, constructor_new::constructor_1_arg_new_div0, 2, MEMORY_LEAK, [start of procedure constructor_new::constructor_1_arg_new_div0(),start of procedure Person,return from a call to constructor_new::Person_Person]
codetoanalyze/cpp/errors/shared/constructors/constructor_new.cpp, constructor_new::constructor_3_args_new_div0, 2, DIVIDE_BY_ZERO, [start of procedure constructor_new::constructor_3_args_new_div0(),start of procedure Person,return from a call to constructor_new::Person_Person]
codetoanalyze/cpp/errors/shared/constructors/constructor_new.cpp, constructor_new::constructor_3_args_new_div0, 2, MEMORY_LEAK, [start of procedure constructor_new::constructor_3_args_new_div0(),start of procedure Person,return from a call to constructor_new::Person_Person]
codetoanalyze/cpp/errors/shared/constructors/constructor_new.cpp, constructor_new::constructor_nodes, 3, DIVIDE_BY_ZERO, [start of procedure constructor_new::constructor_nodes(),start of procedure constructor_new::getValue(),return from a call to constructor_new::getValue,Condition is false,start of procedure Person,return from a call to constructor_new::Person_Person]
codetoanalyze/cpp/errors/shared/constructors/constructor_new.cpp, constructor_new::constructor_nodes, 3, MEMORY_LEAK, [start of procedure constructor_new::constructor_nodes(),start of procedure constructor_new::getValue(),return from a call to constructor_new::getValue,Condition is false,start of procedure Person,return from a call to constructor_new::Person_Person]
codetoanalyze/cpp/errors/shared/constructors/constructor_new.cpp, constructor_new::float_init_number, 2, DIVIDE_BY_ZERO, [start of procedure constructor_new::float_init_number()]
codetoanalyze/cpp/errors/shared/constructors/constructor_new.cpp, constructor_new::float_init_number, 2, MEMORY_LEAK, [start of procedure constructor_new::float_init_number()]
codetoanalyze/cpp/errors/shared/constructors/constructor_new.cpp, constructor_new::int_array, 4, DIVIDE_BY_ZERO, [start of procedure constructor_new::int_array(),start of procedure constructor_new::getValue(),return from a call to constructor_new::getValue,Condition is true,start of procedure constructor_new::getValue(),return from a call to constructor_new::getValue]
codetoanalyze/cpp/errors/shared/constructors/constructor_new.cpp, constructor_new::int_array, 4, MEMORY_LEAK, [start of procedure constructor_new::int_array(),start of procedure constructor_new::getValue(),return from a call to constructor_new::getValue,Condition is true,start of procedure constructor_new::getValue(),return from a call to constructor_new::getValue]
codetoanalyze/cpp/errors/shared/constructors/constructor_new.cpp, constructor_new::int_array_init, 2, DIVIDE_BY_ZERO, [start of procedure constructor_new::int_array_init()]
codetoanalyze/cpp/errors/shared/constructors/constructor_new.cpp, constructor_new::int_array_init, 2, MEMORY_LEAK, [start of procedure constructor_new::int_array_init()]
codetoanalyze/cpp/errors/shared/constructors/constructor_new.cpp, constructor_new::int_init_empty, 2, DIVIDE_BY_ZERO, [start of procedure constructor_new::int_init_empty()]
codetoanalyze/cpp/errors/shared/constructors/constructor_new.cpp, constructor_new::int_init_empty, 2, MEMORY_LEAK, [start of procedure constructor_new::int_init_empty()]
codetoanalyze/cpp/errors/shared/constructors/constructor_new.cpp, constructor_new::int_init_empty_list, 2, DIVIDE_BY_ZERO, [start of procedure constructor_new::int_init_empty_list()]
codetoanalyze/cpp/errors/shared/constructors/constructor_new.cpp, constructor_new::int_init_empty_list_new, 2, DIVIDE_BY_ZERO, [start of procedure constructor_new::int_init_empty_list_new()]
codetoanalyze/cpp/errors/shared/constructors/constructor_new.cpp, constructor_new::int_init_empty_list_new, 2, MEMORY_LEAK, [start of procedure constructor_new::int_init_empty_list_new()]
codetoanalyze/cpp/errors/shared/constructors/constructor_new.cpp, constructor_new::int_init_nodes, 3, MEMORY_LEAK, [start of procedure constructor_new::int_init_nodes(),start of procedure constructor_new::getValue(),return from a call to constructor_new::getValue,start of procedure constructor_new::getValue(),return from a call to constructor_new::getValue,Condition is false]
codetoanalyze/cpp/errors/shared/constructors/constructor_new.cpp, constructor_new::int_init_nodes, 4, DIVIDE_BY_ZERO, [start of procedure constructor_new::int_init_nodes(),start of procedure constructor_new::getValue(),return from a call to constructor_new::getValue,start of procedure constructor_new::getValue(),return from a call to constructor_new::getValue,Condition is false]
codetoanalyze/cpp/errors/shared/constructors/constructor_new.cpp, constructor_new::int_init_nodes, 4, MEMORY_LEAK, [start of procedure constructor_new::int_init_nodes(),start of procedure constructor_new::getValue(),return from a call to constructor_new::getValue,start of procedure constructor_new::getValue(),return from a call to constructor_new::getValue,Condition is false]
codetoanalyze/cpp/errors/shared/constructors/constructor_new.cpp, constructor_new::int_init_number, 2, DIVIDE_BY_ZERO, [start of procedure constructor_new::int_init_number()]
codetoanalyze/cpp/errors/shared/constructors/constructor_new.cpp, constructor_new::int_init_number, 2, MEMORY_LEAK, [start of procedure constructor_new::int_init_number()]
codetoanalyze/cpp/errors/shared/constructors/constructor_new.cpp, constructor_new::matrix_of_person, 2, MEMORY_LEAK, [start of procedure constructor_new::matrix_of_person(),start of procedure Person,return from a call to constructor_new::Person_Person,start of procedure Person,return from a call to constructor_new::Person_Person,start of procedure Person,return from a call to constructor_new::Person_Person,start of procedure Person,return from a call to constructor_new::Person_Person,start of procedure Person,return from a call to constructor_new::Person_Person,start of procedure Person,return from a call to constructor_new::Person_Person,start of procedure Person,return from a call to constructor_new::Person_Person,start of procedure Person,return from a call to constructor_new::Person_Person,start of procedure Person,return from a call to constructor_new::Person_Person,start of procedure Person,return from a call to constructor_new::Person_Person]
codetoanalyze/cpp/errors/shared/constructors/constructor_with_body.cpp, constructor_with_body::test_div0, 2, DIVIDE_BY_ZERO, [start of procedure constructor_with_body::test_div0(),start of procedure X,start of procedure init,return from a call to constructor_with_body::X_init,return from a call to constructor_with_body::X_X,start of procedure div]
codetoanalyze/cpp/errors/shared/constructors/constructor_with_body.cpp, constructor_with_body::test_div0_default_constructor, 2, DIVIDE_BY_ZERO, [start of procedure constructor_with_body::test_div0_default_constructor(),start of procedure X,start of procedure init,return from a call to constructor_with_body::X_init,return from a call to constructor_with_body::X_X,start of procedure div]
codetoanalyze/cpp/errors/shared/constructors/copy_move_constructor.cpp, copy_move_constructor::copyX_div0, 4, DIVIDE_BY_ZERO, [start of procedure copy_move_constructor::copyX_div0(),start of procedure X,return from a call to copy_move_constructor::X_X,start of procedure X,return from a call to copy_move_constructor::X_X]
codetoanalyze/cpp/errors/shared/constructors/copy_move_constructor.cpp, copy_move_constructor::copyY_div0, 4, DIVIDE_BY_ZERO, [start of procedure copy_move_constructor::copyY_div0(),start of procedure Y,return from a call to copy_move_constructor::Y_Y,start of procedure Y,return from a call to copy_move_constructor::Y_Y]
codetoanalyze/cpp/errors/shared/constructors/copy_move_constructor.cpp, copy_move_constructor::moveX_div0, 0, DIVIDE_BY_ZERO, [start of procedure copy_move_constructor::moveX_div0(),start of procedure copy_move_constructor::getX(),start of procedure X,return from a call to copy_move_constructor::X_X,start of procedure X,return from a call to copy_move_constructor::X_X,return from a call to copy_move_constructor::getX]
codetoanalyze/cpp/errors/shared/constructors/copy_move_constructor.cpp, copy_move_constructor::moveY_div0, 0, DIVIDE_BY_ZERO, [start of procedure copy_move_constructor::moveY_div0(),start of procedure copy_move_constructor::getY(),start of procedure Y,return from a call to copy_move_constructor::Y_Y,start of procedure Y,return from a call to copy_move_constructor::Y_Y,return from a call to copy_move_constructor::getY]
codetoanalyze/cpp/errors/shared/constructors/copy_move_constructor.cpp, copy_move_constructor::moveY_moveY_copyY_div0, 3, DIVIDE_BY_ZERO, [start of procedure copy_move_constructor::moveY_moveY_copyY_div0(),start of procedure copy_move_constructor::getY(),start of procedure Y,return from a call to copy_move_constructor::Y_Y,start of procedure Y,return from a call to copy_move_constructor::Y_Y,return from a call to copy_move_constructor::getY,start of procedure Y,return from a call to copy_move_constructor::Y_Y,start of procedure Y,return from a call to copy_move_constructor::Y_Y]
codetoanalyze/cpp/errors/shared/constructors/temp_object.cpp, temp_object::assign_temp_div0, 2, DIVIDE_BY_ZERO, [start of procedure temp_object::assign_temp_div0(),start of procedure X,return from a call to temp_object::X_X,start of procedure X,return from a call to temp_object::X_X,start of procedure div]
codetoanalyze/cpp/errors/shared/constructors/temp_object.cpp, temp_object::getX_field_div0, 0, DIVIDE_BY_ZERO, [start of procedure temp_object::getX_field_div0(),start of procedure temp_object::getX(),start of procedure X,return from a call to temp_object::X_X,start of procedure X,return from a call to temp_object::X_X,return from a call to temp_object::getX,start of procedure temp_object::div()]
codetoanalyze/cpp/errors/shared/constructors/temp_object.cpp, temp_object::getX_method_div0, 0, DIVIDE_BY_ZERO, [start of procedure temp_object::getX_method_div0(),start of procedure temp_object::getX(),start of procedure X,return from a call to temp_object::X_X,start of procedure X,return from a call to temp_object::X_X,return from a call to temp_object::getX,start of procedure div]
codetoanalyze/cpp/errors/shared/constructors/temp_object.cpp, temp_object::temp_field2_div0, 0, DIVIDE_BY_ZERO, [start of procedure temp_object::temp_field2_div0(),start of procedure X,return from a call to temp_object::X_X,start of procedure temp_object::div()]
codetoanalyze/cpp/errors/shared/constructors/temp_object.cpp, temp_object::temp_field_div0, 0, DIVIDE_BY_ZERO, [start of procedure temp_object::temp_field_div0(),start of procedure X,return from a call to temp_object::X_X,start of procedure temp_object::div()]
codetoanalyze/cpp/errors/shared/constructors/temp_object.cpp, temp_object::temp_method_div0, 0, DIVIDE_BY_ZERO, [start of procedure temp_object::temp_method_div0(),start of procedure X,return from a call to temp_object::X_X,start of procedure div]
codetoanalyze/cpp/errors/shared/exceptions/Exceptions.cpp, call_deref_with_null, 0, NULL_DEREFERENCE, [start of procedure call_deref_with_null(),start of procedure deref_null()]
codetoanalyze/cpp/errors/shared/lambda/lambda1.cpp, bar, 5, DIVIDE_BY_ZERO, [start of procedure bar(),start of procedure ,return from a call to bar::lambda_shared_lambda_lambda1.cpp:11:15_,start of procedure operator(),return from a call to bar::lambda_shared_lambda_lambda1.cpp:11:15_operator()]
codetoanalyze/cpp/errors/shared/lambda/lambda1.cpp, foo, 3, DIVIDE_BY_ZERO, [start of procedure foo(),start of procedure ,return from a call to foo::lambda_shared_lambda_lambda1.cpp:19:17_,start of procedure ,return from a call to foo::lambda_shared_lambda_lambda1.cpp:20:12_,start of procedure operator(),return from a call to foo::lambda_shared_lambda_lambda1.cpp:20:12_operator()]
codetoanalyze/cpp/errors/shared/lambda/lambda1.cpp, foo::lambda_shared_lambda_lambda1.cpp:19:17_operator(), 0, DIVIDE_BY_ZERO, [start of procedure operator()]
codetoanalyze/cpp/errors/shared/methods/conversion_operator.cpp, conversion_operator::branch_div0, 4, DIVIDE_BY_ZERO, [start of procedure conversion_operator::branch_div0(),start of procedure X,return from a call to conversion_operator::X_X,start of procedure operator_bool,return from a call to conversion_operator::X_operator_bool,Condition is true,start of procedure operator_int,return from a call to conversion_operator::X_operator_int]
codetoanalyze/cpp/errors/shared/methods/conversion_operator.cpp, conversion_operator::y_branch_div0, 6, DIVIDE_BY_ZERO, [start of procedure conversion_operator::y_branch_div0(),start of procedure Y,return from a call to conversion_operator::Y_Y,start of procedure operator_X,start of procedure X,return from a call to conversion_operator::X_X,start of procedure X,return from a call to conversion_operator::X_X,return from a call to conversion_operator::Y_operator_X,start of procedure X,return from a call to conversion_operator::X_X,start of procedure operator_bool,return from a call to conversion_operator::X_operator_bool,Condition is true,start of procedure operator_X,start of procedure X,return from a call to conversion_operator::X_X,start of procedure X,return from a call to conversion_operator::X_X,return from a call to conversion_operator::Y_operator_X,start of procedure X,return from a call to conversion_operator::X_X,start of procedure operator_int,return from a call to conversion_operator::X_operator_int]
codetoanalyze/cpp/errors/shared/methods/static.cpp, div0_class, 0, DIVIDE_BY_ZERO, [start of procedure div0_class(),start of procedure fun]
codetoanalyze/cpp/errors/shared/methods/static.cpp, div0_instance, 2, DIVIDE_BY_ZERO, [start of procedure div0_instance(),start of procedure fun]
codetoanalyze/cpp/errors/shared/methods/virtual_methods.cpp, poly_area, 3, DIVIDE_BY_ZERO, [start of procedure poly_area(),start of procedure Polygon,return from a call to Polygon_Polygon,start of procedure area,return from a call to Polygon_area]
codetoanalyze/cpp/errors/shared/methods/virtual_methods.cpp, rect_area, 4, DIVIDE_BY_ZERO, [start of procedure rect_area(),start of procedure Rectangle,start of procedure Polygon,return from a call to Polygon_Polygon,return from a call to Rectangle_Rectangle,start of procedure set_values,return from a call to Polygon_set_values,start of procedure area,return from a call to Rectangle_area]
codetoanalyze/cpp/errors/shared/methods/virtual_methods.cpp, tri_area, 5, DIVIDE_BY_ZERO, [start of procedure tri_area(),start of procedure Triangle,start of procedure Polygon,return from a call to Polygon_Polygon,return from a call to Triangle_Triangle,start of procedure Polygon,return from a call to Polygon_Polygon,start of procedure set_values,return from a call to Polygon_set_values,start of procedure area,return from a call to Triangle_area]
codetoanalyze/cpp/errors/shared/methods/virtual_methods.cpp, tri_not_virtual_area, 5, DIVIDE_BY_ZERO, [start of procedure tri_not_virtual_area(),start of procedure Triangle,start of procedure Polygon,return from a call to Polygon_Polygon,return from a call to Triangle_Triangle,start of procedure Polygon,return from a call to Polygon_Polygon,start of procedure set_values,return from a call to Polygon_set_values,start of procedure area,return from a call to Polygon_area]
codetoanalyze/cpp/errors/shared/namespace/function.cpp, div0_namespace_resolution, 0, DIVIDE_BY_ZERO, [start of procedure div0_namespace_resolution(),start of procedure f1::get(),return from a call to f1::get,start of procedure f2::get(),return from a call to f2::get]
codetoanalyze/cpp/errors/shared/namespace/function.cpp, div0_using, 2, DIVIDE_BY_ZERO, [start of procedure div0_using(),start of procedure f1::get0(),return from a call to f1::get0]
codetoanalyze/cpp/errors/shared/namespace/global_variable.cpp, div0_namepace_res, 3, DIVIDE_BY_ZERO, [start of procedure div0_namepace_res()]
codetoanalyze/cpp/errors/shared/namespace/global_variable.cpp, div0_static_field, 3, DIVIDE_BY_ZERO, [start of procedure div0_static_field()]
codetoanalyze/cpp/errors/shared/namespace/global_variable.cpp, div0_static_field_member_access, 3, DIVIDE_BY_ZERO, [start of procedure div0_static_field_member_access()]
codetoanalyze/cpp/errors/shared/nestedoperators/var_decl_inside_if.cpp, conditional_init_div0, 2, DIVIDE_BY_ZERO, [start of procedure conditional_init_div0(),Condition is true,Condition is true]
codetoanalyze/cpp/errors/shared/nestedoperators/var_decl_inside_if.cpp, function_call_init_div0, 2, DIVIDE_BY_ZERO, [start of procedure function_call_init_div0(),start of procedure get1(),return from a call to get1,Condition is true]
codetoanalyze/cpp/errors/shared/nestedoperators/var_decl_inside_if.cpp, reference_init_div0, 5, DIVIDE_BY_ZERO, [start of procedure reference_init_div0(),Condition is true]
codetoanalyze/cpp/errors/shared/nestedoperators/var_decl_inside_if.cpp, simple_inif_elseif_div0, 6, DIVIDE_BY_ZERO, [start of procedure simple_inif_elseif_div0(),Condition is false,Condition is false]
codetoanalyze/cpp/errors/shared/nestedoperators/var_decl_inside_if.cpp, simple_init_div0, 4, DIVIDE_BY_ZERO, [start of procedure simple_init_div0(),Condition is false]
codetoanalyze/cpp/errors/shared/nestedoperators/var_decl_inside_if.cpp, simple_init_null_deref, 4, NULL_DEREFERENCE, [start of procedure simple_init_null_deref(),Condition is false]
codetoanalyze/cpp/errors/shared/npe/method_call.cpp, npe_call, 2, NULL_DEREFERENCE, [start of procedure npe_call()]
codetoanalyze/cpp/errors/shared/npe/method_call.cpp, npe_call_after_call, 0, NULL_DEREFERENCE, [start of procedure npe_call_after_call(),start of procedure getX(),return from a call to getX]
codetoanalyze/cpp/errors/shared/npe/method_call.cpp, npe_call_with_forward_declaration, 1, NULL_DEREFERENCE, [start of procedure npe_call_with_forward_declaration(),start of procedure call_with_forward_declaration()]
codetoanalyze/cpp/errors/shared/reference/reference_field.cpp, reference_field::ptr_F_div0, 5, DIVIDE_BY_ZERO, [start of procedure reference_field::ptr_F_div0(),start of procedure X,return from a call to reference_field::X_X,start of procedure Ptr,return from a call to reference_field::Ptr_Ptr]
codetoanalyze/cpp/errors/shared/reference/reference_field.cpp, reference_field::ptr_I_div0, 5, DIVIDE_BY_ZERO, [start of procedure reference_field::ptr_I_div0(),start of procedure X,return from a call to reference_field::X_X,start of procedure Ptr,return from a call to reference_field::Ptr_Ptr]
codetoanalyze/cpp/errors/shared/reference/reference_field.cpp, reference_field::ptr_getF_div0, 5, DIVIDE_BY_ZERO, [start of procedure reference_field::ptr_getF_div0(),start of procedure X,return from a call to reference_field::X_X,start of procedure Ptr,return from a call to reference_field::Ptr_Ptr,start of procedure getF,return from a call to reference_field::Ptr_getF]
codetoanalyze/cpp/errors/shared/reference/reference_field.cpp, reference_field::ptr_getI_div0, 5, DIVIDE_BY_ZERO, [start of procedure reference_field::ptr_getI_div0(),start of procedure X,return from a call to reference_field::X_X,start of procedure Ptr,return from a call to reference_field::Ptr_Ptr,start of procedure getI,return from a call to reference_field::Ptr_getI]
codetoanalyze/cpp/errors/shared/reference/reference_field.cpp, reference_field::ref_F_div0, 5, DIVIDE_BY_ZERO, [start of procedure reference_field::ref_F_div0(),start of procedure X,return from a call to reference_field::X_X,start of procedure Ref,return from a call to reference_field::Ref_Ref]
codetoanalyze/cpp/errors/shared/reference/reference_field.cpp, reference_field::ref_I_div0, 5, DIVIDE_BY_ZERO, [start of procedure reference_field::ref_I_div0(),start of procedure X,return from a call to reference_field::X_X,start of procedure Ref,return from a call to reference_field::Ref_Ref]
codetoanalyze/cpp/errors/shared/reference/reference_field.cpp, reference_field::ref_getF_div0, 5, DIVIDE_BY_ZERO, [start of procedure reference_field::ref_getF_div0(),start of procedure X,return from a call to reference_field::X_X,start of procedure Ref,return from a call to reference_field::Ref_Ref,start of procedure getF,return from a call to reference_field::Ref_getF]
codetoanalyze/cpp/errors/shared/reference/reference_field.cpp, reference_field::ref_getI_div0, 5, DIVIDE_BY_ZERO, [start of procedure reference_field::ref_getI_div0(),start of procedure X,return from a call to reference_field::X_X,start of procedure Ref,return from a call to reference_field::Ref_Ref,start of procedure getI,return from a call to reference_field::Ref_getI]
codetoanalyze/cpp/errors/shared/reference/reference_field.cpp, reference_field::val_F_div0, 5, DIVIDE_BY_ZERO, [start of procedure reference_field::val_F_div0(),start of procedure X,return from a call to reference_field::X_X,start of procedure Val,start of procedure X,return from a call to reference_field::X_X,return from a call to reference_field::Val_Val]
codetoanalyze/cpp/errors/shared/reference/reference_field.cpp, reference_field::val_I_div0, 5, DIVIDE_BY_ZERO, [start of procedure reference_field::val_I_div0(),start of procedure X,return from a call to reference_field::X_X,start of procedure Val,start of procedure X,return from a call to reference_field::X_X,return from a call to reference_field::Val_Val]
codetoanalyze/cpp/errors/shared/reference/reference_field.cpp, reference_field::val_getF_div0, 5, DIVIDE_BY_ZERO, [start of procedure reference_field::val_getF_div0(),start of procedure X,return from a call to reference_field::X_X,start of procedure Val,start of procedure X,return from a call to reference_field::X_X,return from a call to reference_field::Val_Val,start of procedure getF,return from a call to reference_field::Val_getF]
codetoanalyze/cpp/errors/shared/reference/reference_field.cpp, reference_field::val_getI_div0, 5, DIVIDE_BY_ZERO, [start of procedure reference_field::val_getI_div0(),start of procedure X,return from a call to reference_field::X_X,start of procedure Val,start of procedure X,return from a call to reference_field::X_X,return from a call to reference_field::Val_Val,start of procedure getI,return from a call to reference_field::Val_getI]
codetoanalyze/cpp/errors/shared/reference/reference_struct_e2e.cpp, field_div0_ptr, 3, DIVIDE_BY_ZERO, [start of procedure field_div0_ptr(),Condition is true,start of procedure set_field_ptr(),return from a call to set_field_ptr,start of procedure div]
codetoanalyze/cpp/errors/shared/reference/reference_struct_e2e.cpp, field_div0_ref, 2, DIVIDE_BY_ZERO, [start of procedure field_div0_ref(),start of procedure set_field_ref(),return from a call to set_field_ref,start of procedure div]
codetoanalyze/cpp/errors/shared/reference/reference_struct_e2e.cpp, get_global_ptr_div0_field, 3, DIVIDE_BY_ZERO, [start of procedure get_global_ptr_div0_field(),start of procedure get_global_ptr(),return from a call to get_global_ptr,start of procedure nonzero,return from a call to X_nonzero,start of procedure get_global_ptr(),return from a call to get_global_ptr,start of procedure get_global_ptr(),return from a call to get_global_ptr,start of procedure div]
codetoanalyze/cpp/errors/shared/reference/reference_struct_e2e.cpp, get_global_ptr_div0_method, 3, DIVIDE_BY_ZERO, [start of procedure get_global_ptr_div0_method(),start of procedure get_global_ptr(),return from a call to get_global_ptr,start of procedure get_global_ptr(),return from a call to get_global_ptr,start of procedure zero,return from a call to X_zero,start of procedure get_global_ptr(),return from a call to get_global_ptr,start of procedure div]
codetoanalyze/cpp/errors/shared/reference/reference_struct_e2e.cpp, get_global_ref_div0_field, 3, DIVIDE_BY_ZERO, [start of procedure get_global_ref_div0_field(),start of procedure get_global_ref(),return from a call to get_global_ref,start of procedure nonzero,return from a call to X_nonzero,start of procedure get_global_ref(),return from a call to get_global_ref,start of procedure get_global_ref(),return from a call to get_global_ref,start of procedure div]
codetoanalyze/cpp/errors/shared/reference/reference_struct_e2e.cpp, get_global_ref_div0_method, 3, DIVIDE_BY_ZERO, [start of procedure get_global_ref_div0_method(),start of procedure get_global_ref(),return from a call to get_global_ref,start of procedure get_global_ref(),return from a call to get_global_ref,start of procedure zero,return from a call to X_zero,start of procedure get_global_ref(),return from a call to get_global_ref,start of procedure div]
codetoanalyze/cpp/errors/shared/reference/reference_struct_e2e.cpp, method_div0_ptr, 3, DIVIDE_BY_ZERO, [start of procedure method_div0_ptr(),Condition is true,start of procedure zero_ptr(),start of procedure zero,return from a call to X_zero,return from a call to zero_ptr,start of procedure div]
codetoanalyze/cpp/errors/shared/reference/reference_struct_e2e.cpp, method_div0_ref, 2, DIVIDE_BY_ZERO, [start of procedure method_div0_ref(),start of procedure zero_ref(),start of procedure zero,return from a call to X_zero,return from a call to zero_ref,start of procedure div]
codetoanalyze/cpp/errors/shared/reference/reference_type_e2e.cpp, ptr_div0, 4, DIVIDE_BY_ZERO, [start of procedure ptr_div0()]
codetoanalyze/cpp/errors/shared/reference/reference_type_e2e.cpp, ptr_div0_function, 3, DIVIDE_BY_ZERO, [start of procedure ptr_div0_function(),start of procedure zero_ptr(),return from a call to zero_ptr]
codetoanalyze/cpp/errors/shared/reference/reference_type_e2e.cpp, ptr_div0_function_temp_var, 4, DIVIDE_BY_ZERO, [start of procedure ptr_div0_function_temp_var(),start of procedure zero_ptr(),return from a call to zero_ptr]
codetoanalyze/cpp/errors/shared/reference/reference_type_e2e.cpp, ref_div0, 4, DIVIDE_BY_ZERO, [start of procedure ref_div0()]
codetoanalyze/cpp/errors/shared/reference/reference_type_e2e.cpp, ref_div0_function, 3, DIVIDE_BY_ZERO, [start of procedure ref_div0_function(),start of procedure zero_ref(),return from a call to zero_ref]
codetoanalyze/cpp/errors/shared/reference/reference_type_e2e.cpp, ref_div0_function_temp_var, 4, DIVIDE_BY_ZERO, [start of procedure ref_div0_function_temp_var(),start of procedure zero_ref(),return from a call to zero_ref]
codetoanalyze/cpp/errors/shared/reference/reference_type_e2e.cpp, ref_div0_nested_assignment, 6, DIVIDE_BY_ZERO, [start of procedure ref_div0_nested_assignment()]
codetoanalyze/cpp/errors/shared/reference/temporary_lvalue.cpp, div0_function_param_cast, 0, DIVIDE_BY_ZERO, [start of procedure div0_function_param_cast(),start of procedure div()]
codetoanalyze/cpp/errors/shared/reference/temporary_lvalue.cpp, div0_init_expr, 2, DIVIDE_BY_ZERO, [start of procedure div0_init_expr(),start of procedure div()]
codetoanalyze/cpp/errors/shared/reference/temporary_lvalue.cpp, div0_no_const_ref, 2, DIVIDE_BY_ZERO, [start of procedure div0_no_const_ref(),start of procedure div()]
codetoanalyze/cpp/errors/shared/templates/class_template_instantiate.cpp, ExecStore<Choose2>_call_div, 2, DIVIDE_BY_ZERO, [start of procedure call_div,start of procedure div]
codetoanalyze/cpp/errors/shared/templates/class_template_instantiate.cpp, choose1_div0, 0, DIVIDE_BY_ZERO, [start of procedure choose1_div0(),start of procedure call_div,start of procedure div]
codetoanalyze/cpp/errors/shared/templates/class_template_instantiate.cpp, choose2_div0_extra, 0, DIVIDE_BY_ZERO, [start of procedure choose2_div0_extra(),start of procedure extra]
codetoanalyze/cpp/errors/shared/templates/function.cpp, function::createAndDiv<X3>, 1, DIVIDE_BY_ZERO, [start of procedure function::createAndDiv<X3>(),start of procedure function::createAndGetVal<X3>(),start of procedure X3,return from a call to function::X3_X3,start of procedure function::getVal<X3>(),start of procedure get,return from a call to function::X3_get,return from a call to function::getVal<X3>,return from a call to function::createAndGetVal<X3>]
codetoanalyze/cpp/errors/shared/templates/function.cpp, function::div0_create_and_get_val, 1, DIVIDE_BY_ZERO, [start of procedure function::div0_create_and_get_val(),start of procedure function::createAndGetVal<X1>(),start of procedure X1,return from a call to function::X1_X1,start of procedure function::getVal<X1>(),start of procedure getVal,return from a call to function::X1_getVal,return from a call to function::getVal<X1>,return from a call to function::createAndGetVal<X1>,start of procedure function::createAndGetVal<X3>(),start of procedure X3,return from a call to function::X3_X3,start of procedure function::getVal<X3>(),start of procedure get,return from a call to function::X3_get,return from a call to function::getVal<X3>,return from a call to function::createAndGetVal<X3>]
codetoanalyze/cpp/errors/shared/templates/function.cpp, function::div0_get_val, 3, DIVIDE_BY_ZERO, [start of procedure function::div0_get_val(),start of procedure X1,return from a call to function::X1_X1,start of procedure X3,return from a call to function::X3_X3,start of procedure function::getVal<X1>(),start of procedure getVal,return from a call to function::X1_getVal,return from a call to function::getVal<X1>,start of procedure function::getVal<X3>(),start of procedure get,return from a call to function::X3_get,return from a call to function::getVal<X3>]
codetoanalyze/cpp/errors/shared/templates/function_pack.cpp, div0_10args, 0, DIVIDE_BY_ZERO, [start of procedure div0_10args()]
codetoanalyze/cpp/errors/shared/templates/function_pack.cpp, div0_1arg, 0, DIVIDE_BY_ZERO, [start of procedure div0_1arg(),start of procedure div()]
codetoanalyze/cpp/errors/shared/templates/function_pack.cpp, div0_3args1, 0, DIVIDE_BY_ZERO, [start of procedure div0_3args1()]
codetoanalyze/cpp/errors/shared/templates/function_pack.cpp, div0_3args2, 0, DIVIDE_BY_ZERO, [start of procedure div0_3args2()]
codetoanalyze/cpp/errors/shared/templates/function_pack.cpp, div0_3args3, 0, DIVIDE_BY_ZERO, [start of procedure div0_3args3(),start of procedure div<int,_int>(),start of procedure div<int>(),start of procedure div()]
codetoanalyze/cpp/errors/shared/templates/function_pack.cpp, div0_3args4, 0, DIVIDE_BY_ZERO, [start of procedure div0_3args4(),start of procedure div<int,_int>(),start of procedure div<int>(),start of procedure div()]
codetoanalyze/cpp/errors/shared/templates/method.cpp, method::div0_getter, 3, DIVIDE_BY_ZERO, [start of procedure method::div0_getter(),start of procedure X2,return from a call to method::X2_X2,start of procedure Getter,return from a call to method::Getter_Getter,start of procedure get<X2>,start of procedure get,return from a call to method::X2_get,return from a call to method::Getter_get<X2>]
codetoanalyze/cpp/errors/shared/templates/method.cpp, method::div0_getter_templ, 4, DIVIDE_BY_ZERO, [start of procedure method::div0_getter_templ(),start of procedure X2,return from a call to method::X2_X2,start of procedure X3,return from a call to method::X3_X3,start of procedure GetterTempl,return from a call to method::GetterTempl<X3>_GetterTempl,start of procedure get<X2>,start of procedure get,return from a call to method::X3_get,start of procedure get,return from a call to method::X2_get,return from a call to method::GetterTempl<X3>_get<X2>]
codetoanalyze/cpp/errors/shared/templates/method.cpp, method::div0_getter_templ2, 4, DIVIDE_BY_ZERO, [start of procedure method::div0_getter_templ2(),start of procedure X2,return from a call to method::X2_X2,start of procedure X2,return from a call to method::X2_X2,start of procedure GetterTempl,return from a call to method::GetterTempl<X2>_GetterTempl,start of procedure get<X2>,start of procedure get,return from a call to method::X2_get,start of procedure get,return from a call to method::X2_get,return from a call to method::GetterTempl<X2>_get<X2>]
codetoanalyze/cpp/errors/shared/types/inheritance_field.cpp, div0_b1, 2, DIVIDE_BY_ZERO, [start of procedure div0_b1()]
codetoanalyze/cpp/errors/shared/types/inheritance_field.cpp, div0_b1_s, 3, DIVIDE_BY_ZERO, [start of procedure div0_b1_s()]
codetoanalyze/cpp/errors/shared/types/inheritance_field.cpp, div0_b2, 2, DIVIDE_BY_ZERO, [start of procedure div0_b2()]
codetoanalyze/cpp/errors/shared/types/inheritance_field.cpp, div0_cast, 3, DIVIDE_BY_ZERO, [start of procedure div0_cast()]
codetoanalyze/cpp/errors/shared/types/inheritance_field.cpp, div0_cast_ref, 3, DIVIDE_BY_ZERO, [start of procedure div0_cast_ref()]
codetoanalyze/cpp/errors/shared/types/inheritance_field.cpp, div0_s, 2, DIVIDE_BY_ZERO, [start of procedure div0_s()]
codetoanalyze/cpp/errors/shared/types/inheritance_field.cpp, div0_s_b1, 3, DIVIDE_BY_ZERO, [start of procedure div0_s_b1()]
codetoanalyze/cpp/errors/shared/types/operator_overload.cpp, div0_function_op, 3, DIVIDE_BY_ZERO, [start of procedure div0_function_op(),start of procedure operator*(),return from a call to operator*]
codetoanalyze/cpp/errors/shared/types/operator_overload.cpp, div0_inheritted_op, 2, DIVIDE_BY_ZERO, [start of procedure div0_inheritted_op(),start of procedure operator[],return from a call to X_operator[]]
codetoanalyze/cpp/errors/shared/types/operator_overload.cpp, div0_method, 3, DIVIDE_BY_ZERO, [start of procedure div0_method(),start of procedure operator[],return from a call to X_operator[]]
codetoanalyze/cpp/errors/shared/types/operator_overload.cpp, div0_method_op, 3, DIVIDE_BY_ZERO, [start of procedure div0_method_op(),start of procedure operator[],return from a call to X_operator[]]
codetoanalyze/cpp/errors/shared/types/operator_overload.cpp, div0_method_op_ptr, 0, DIVIDE_BY_ZERO, [start of procedure div0_method_op_ptr(),start of procedure operator[],return from a call to X_operator[]]
codetoanalyze/cpp/errors/shared/types/return_struct.cpp, return_struct::get_div0, 2, DIVIDE_BY_ZERO, [start of procedure return_struct::get_div0(),start of procedure return_struct::get(),start of procedure X,return from a call to return_struct::X_X,start of procedure X,return from a call to return_struct::X_X,return from a call to return_struct::get,start of procedure X,return from a call to return_struct::X_X]
codetoanalyze/cpp/errors/shared/types/return_struct.cpp, return_struct::get_field_div0, 2, DIVIDE_BY_ZERO, [start of procedure return_struct::get_field_div0(),start of procedure return_struct::get(),start of procedure X,return from a call to return_struct::X_X,start of procedure X,return from a call to return_struct::X_X,return from a call to return_struct::get,start of procedure return_struct::get(),start of procedure X,return from a call to return_struct::X_X,start of procedure X,return from a call to return_struct::X_X,return from a call to return_struct::get]
codetoanalyze/cpp/errors/shared/types/return_struct.cpp, return_struct::get_method_div0, 0, DIVIDE_BY_ZERO, [start of procedure return_struct::get_method_div0(),start of procedure return_struct::get(),start of procedure X,return from a call to return_struct::X_X,start of procedure X,return from a call to return_struct::X_X,return from a call to return_struct::get,start of procedure div]
codetoanalyze/cpp/errors/shared/types/struct_forward_declare.cpp, struct_forward_declare::X_Y_div0, 7, DIVIDE_BY_ZERO, [start of procedure struct_forward_declare::X_Y_div0(),start of procedure X,return from a call to struct_forward_declare::X_X,Condition is false,start of procedure getF,return from a call to struct_forward_declare::X_getF]
codetoanalyze/cpp/errors/shared/types/struct_forward_declare.cpp, struct_forward_declare::X_div0, 3, DIVIDE_BY_ZERO, [start of procedure struct_forward_declare::X_div0(),start of procedure X,return from a call to struct_forward_declare::X_X,start of procedure getF,return from a call to struct_forward_declare::X_getF]
codetoanalyze/cpp/errors/shared/types/struct_forward_declare.cpp, struct_forward_declare::X_ptr_div0, 2, DIVIDE_BY_ZERO, [start of procedure struct_forward_declare::X_ptr_div0(),start of procedure getF,return from a call to struct_forward_declare::X_getF]
codetoanalyze/cpp/errors/shared/types/struct_forward_declare.cpp, struct_forward_declare::Z_div0, 3, DIVIDE_BY_ZERO, [start of procedure struct_forward_declare::Z_div0(),start of procedure Z,return from a call to struct_forward_declare::Z_Z,start of procedure getF,return from a call to struct_forward_declare::Z_getF]
codetoanalyze/cpp/errors/shared/types/struct_forward_declare.cpp, struct_forward_declare::Z_ptr_div0, 5, DIVIDE_BY_ZERO, [start of procedure struct_forward_declare::Z_ptr_div0(),start of procedure getF,return from a call to struct_forward_declare::Z_getF]
codetoanalyze/cpp/errors/shared/types/struct_pass_by_value.cpp, struct_pass_by_value::field_div0, 3, DIVIDE_BY_ZERO, [start of procedure struct_pass_by_value::field_div0(),start of procedure X,return from a call to struct_pass_by_value::X_X,start of procedure Y,start of procedure X,return from a call to struct_pass_by_value::X_X,return from a call to struct_pass_by_value::Y_Y,start of procedure X,return from a call to struct_pass_by_value::X_X,start of procedure struct_pass_by_value::get_f(),return from a call to struct_pass_by_value::get_f]
codetoanalyze/cpp/errors/shared/types/struct_pass_by_value.cpp, struct_pass_by_value::param_get_copied_div0, 3, DIVIDE_BY_ZERO, [start of procedure struct_pass_by_value::param_get_copied_div0(),start of procedure X,return from a call to struct_pass_by_value::X_X,start of procedure X,return from a call to struct_pass_by_value::X_X,start of procedure struct_pass_by_value::set_f(),return from a call to struct_pass_by_value::set_f]
codetoanalyze/cpp/errors/shared/types/struct_pass_by_value.cpp, struct_pass_by_value::temp_div0, 0, DIVIDE_BY_ZERO, [start of procedure struct_pass_by_value::temp_div0(),start of procedure X,return from a call to struct_pass_by_value::X_X,start of procedure X,return from a call to struct_pass_by_value::X_X,start of procedure struct_pass_by_value::get_f(),return from a call to struct_pass_by_value::get_f]
codetoanalyze/cpp/errors/shared/types/struct_pass_by_value.cpp, struct_pass_by_value::var_div0, 2, DIVIDE_BY_ZERO, [start of procedure struct_pass_by_value::var_div0(),start of procedure X,return from a call to struct_pass_by_value::X_X,start of procedure X,return from a call to struct_pass_by_value::X_X,start of procedure struct_pass_by_value::get_f(),return from a call to struct_pass_by_value::get_f]
codetoanalyze/cpp/errors/shared/types/typeid_expr.cpp, employee_typeid, 3, MEMORY_LEAK, [start of procedure employee_typeid(),start of procedure Employee,start of procedure Person,return from a call to Person_Person,return from a call to Employee_Employee]
codetoanalyze/cpp/errors/shared/types/typeid_expr.cpp, employee_typeid, 4, DIVIDE_BY_ZERO, [start of procedure employee_typeid(),start of procedure Employee,start of procedure Person,return from a call to Person_Person,return from a call to Employee_Employee,Condition is true]
codetoanalyze/cpp/errors/shared/types/typeid_expr.cpp, person_ptr_typeid, 2, MEMORY_LEAK, [start of procedure person_ptr_typeid(),start of procedure Person,return from a call to Person_Person]
codetoanalyze/cpp/errors/shared/types/typeid_expr.cpp, person_ptr_typeid, 3, DIVIDE_BY_ZERO, [start of procedure person_ptr_typeid(),start of procedure Person,return from a call to Person_Person,Condition is true]
codetoanalyze/cpp/errors/shared/types/typeid_expr.cpp, person_typeid, 3, MEMORY_LEAK, [start of procedure person_typeid(),start of procedure Person,return from a call to Person_Person]
codetoanalyze/cpp/errors/shared/types/typeid_expr.cpp, person_typeid, 6, DIVIDE_BY_ZERO, [start of procedure person_typeid(),start of procedure Person,return from a call to Person_Person,Condition is false]
codetoanalyze/cpp/errors/shared/types/typeid_expr.cpp, person_typeid_name, 3, MEMORY_LEAK, [start of procedure person_typeid_name(),start of procedure Person,return from a call to Person_Person]
codetoanalyze/cpp/errors/shared/types/typeid_expr.cpp, person_typeid_name, 4, MEMORY_LEAK, [start of procedure person_typeid_name(),start of procedure Person,return from a call to Person_Person]
codetoanalyze/cpp/errors/shared/types/typeid_expr.cpp, person_typeid_name, 8, DIVIDE_BY_ZERO, [start of procedure person_typeid_name(),start of procedure Person,return from a call to Person_Person,Condition is false]
codetoanalyze/cpp/errors/shared/types/typeid_expr.cpp, template_type_id_person, 2, MEMORY_LEAK, [start of procedure template_type_id_person(),start of procedure Person,return from a call to Person_Person]
codetoanalyze/cpp/errors/shared/types/typeid_expr.cpp, template_type_id_person, 5, DIVIDE_BY_ZERO, [start of procedure template_type_id_person(),start of procedure Person,return from a call to Person_Person,Condition is false]
codetoanalyze/cpp/errors/shared/types/typeid_expr.cpp, template_typeid<Person>, 2, MEMORY_LEAK, [start of procedure template_typeid<Person>(),start of procedure Person,return from a call to Person_Person,start of procedure Person,return from a call to Person_Person]
codetoanalyze/cpp/errors/smart_ptr/deref_after_move_example.cpp, deref_after_mode_example::deref_after_move_crash, 4, NULL_DEREFERENCE, [start of procedure deref_after_mode_example::deref_after_move_crash(),start of procedure Person,return from a call to deref_after_mode_example::Person_Person,start of procedure move_age,return from a call to deref_after_mode_example::Person_move_age,start of procedure access_age]
codetoanalyze/cpp/errors/smart_ptr/deref_after_move_example.cpp, deref_after_mode_example::deref_after_move_ok, 4, MEMORY_LEAK, [start of procedure deref_after_mode_example::deref_after_move_ok(),start of procedure Person,return from a call to deref_after_mode_example::Person_Person,start of procedure move_age,return from a call to deref_after_mode_example::Person_move_age,return from a call to deref_after_mode_example::deref_after_move_ok]
codetoanalyze/cpp/errors/smart_ptr/deref_after_move_example.cpp, deref_after_mode_example::deref_ok, 3, MEMORY_LEAK, [start of procedure deref_after_mode_example::deref_ok(),start of procedure Person,return from a call to deref_after_mode_example::Person_Person,start of procedure access_age,return from a call to deref_after_mode_example::Person_access_age,return from a call to deref_after_mode_example::deref_ok]
@ -284,3 +120,167 @@ codetoanalyze/cpp/errors/vector/empty_access.cpp, size_check0_empty, 2, EMPTY_VE
codetoanalyze/cpp/errors/vector/empty_access.cpp, vector_as_param_by_value_empty, 2, EMPTY_VECTOR_ACCESS, [start of procedure vector_as_param_by_value_empty(),start of procedure vector_param_by_value_access()]
codetoanalyze/cpp/errors/vector/empty_access.cpp, vector_as_param_clear, 3, EMPTY_VECTOR_ACCESS, [start of procedure vector_as_param_clear(),start of procedure vector_param_clear(),return from a call to vector_param_clear]
codetoanalyze/cpp/errors/vector/empty_access.cpp, vector_as_param_empty, 2, EMPTY_VECTOR_ACCESS, [start of procedure vector_as_param_empty(),start of procedure vector_param_access()]
codetoanalyze/cpp/shared/attributes/deprecated_hack.cpp, derefFirstArg2_null_deref, 2, NULL_DEREFERENCE, [start of procedure derefFirstArg2_null_deref()]
codetoanalyze/cpp/shared/attributes/deprecated_hack.cpp, derefFirstArg3_null_deref, 2, NULL_DEREFERENCE, [start of procedure derefFirstArg3_null_deref(),start of procedure derefFirstArg3()]
codetoanalyze/cpp/shared/attributes/deprecated_hack.cpp, derefFirstArg_null_deref, 2, NULL_DEREFERENCE, [start of procedure derefFirstArg_null_deref()]
codetoanalyze/cpp/shared/attributes/deprecated_hack.cpp, getPtr_null_deref1, 3, NULL_DEREFERENCE, [start of procedure getPtr_null_deref1(),start of procedure TranslateAsPtr,start of procedure setPtr,return from a call to TranslateAsPtr<int>_setPtr,return from a call to TranslateAsPtr<int>_TranslateAsPtr,start of procedure setPtr,return from a call to TranslateAsPtr<int>_setPtr]
codetoanalyze/cpp/shared/attributes/deprecated_hack.cpp, getPtr_null_deref2, 3, NULL_DEREFERENCE, [start of procedure getPtr_null_deref2(),start of procedure TranslateAsPtr,start of procedure setPtr,return from a call to TranslateAsPtr<int>_setPtr,return from a call to TranslateAsPtr<int>_TranslateAsPtr,start of procedure setPtr,return from a call to TranslateAsPtr<int>_setPtr]
codetoanalyze/cpp/shared/attributes/deprecated_hack.cpp, getRef_null_deref1, 3, NULL_DEREFERENCE, [start of procedure getRef_null_deref1(),start of procedure TranslateAsPtr,start of procedure setPtr,return from a call to TranslateAsPtr<int>_setPtr,return from a call to TranslateAsPtr<int>_TranslateAsPtr,start of procedure setPtr,return from a call to TranslateAsPtr<int>_setPtr]
codetoanalyze/cpp/shared/attributes/deprecated_hack.cpp, getRef_null_deref2, 3, NULL_DEREFERENCE, [start of procedure getRef_null_deref2(),start of procedure TranslateAsPtr,start of procedure setPtr,return from a call to TranslateAsPtr<int>_setPtr,return from a call to TranslateAsPtr<int>_TranslateAsPtr,start of procedure setPtr,return from a call to TranslateAsPtr<int>_setPtr]
codetoanalyze/cpp/shared/attributes/deprecated_hack.cpp, operator_star_null_deref1, 3, NULL_DEREFERENCE, [start of procedure operator_star_null_deref1(),start of procedure TranslateAsPtr,start of procedure setPtr,return from a call to TranslateAsPtr<int>_setPtr,return from a call to TranslateAsPtr<int>_TranslateAsPtr,start of procedure setPtr,return from a call to TranslateAsPtr<int>_setPtr]
codetoanalyze/cpp/shared/attributes/deprecated_hack.cpp, operator_star_null_deref2, 3, NULL_DEREFERENCE, [start of procedure operator_star_null_deref2(),start of procedure TranslateAsPtr,start of procedure setPtr,return from a call to TranslateAsPtr<int>_setPtr,return from a call to TranslateAsPtr<int>_TranslateAsPtr,start of procedure setPtr,return from a call to TranslateAsPtr<int>_setPtr]
codetoanalyze/cpp/shared/attributes/deprecated_hack.cpp, operator_star_ok_deref, 4, UNINITIALIZED_VALUE, [start of procedure operator_star_ok_deref(),start of procedure TranslateAsPtr,start of procedure setPtr,return from a call to TranslateAsPtr<int>_setPtr,return from a call to TranslateAsPtr<int>_TranslateAsPtr,start of procedure setPtr,return from a call to TranslateAsPtr<int>_setPtr]
codetoanalyze/cpp/shared/conditional/lvalue_conditional.cpp, div0_assign_conditional, 0, DIVIDE_BY_ZERO, [start of procedure div0_assign_conditional(),start of procedure assign_conditional(),Condition is false,return from a call to assign_conditional]
codetoanalyze/cpp/shared/conditional/lvalue_conditional.cpp, div0_choose_lvalue, 0, DIVIDE_BY_ZERO, [start of procedure div0_choose_lvalue(),start of procedure choose_lvalue(),Condition is true,return from a call to choose_lvalue]
codetoanalyze/cpp/shared/conditional/lvalue_conditional.cpp, div0_choose_rvalue, 0, DIVIDE_BY_ZERO, [start of procedure div0_choose_rvalue(),start of procedure choose_rvalue(),Condition is true,return from a call to choose_rvalue]
codetoanalyze/cpp/shared/conditional/lvalue_conditional.cpp, div0_temp_lvalue, 0, DIVIDE_BY_ZERO, [start of procedure div0_temp_lvalue(),start of procedure div_temp_lvalue(),Condition is true]
codetoanalyze/cpp/shared/constructors/constructor_init.cpp, delegate_constr_f2_div0, 3, DIVIDE_BY_ZERO, [start of procedure delegate_constr_f2_div0(),start of procedure B,start of procedure B,start of procedure A,return from a call to A_A,start of procedure T,return from a call to B::T_T,return from a call to B_B,return from a call to B_B]
codetoanalyze/cpp/shared/constructors/constructor_init.cpp, delegate_constr_f_div0, 3, DIVIDE_BY_ZERO, [start of procedure delegate_constr_f_div0(),start of procedure B,start of procedure B,start of procedure A,return from a call to A_A,start of procedure T,return from a call to B::T_T,return from a call to B_B,return from a call to B_B]
codetoanalyze/cpp/shared/constructors/constructor_init.cpp, f2_div0, 2, DIVIDE_BY_ZERO, [start of procedure f2_div0(),start of procedure B,start of procedure A,return from a call to A_A,start of procedure T,return from a call to B::T_T,return from a call to B_B]
codetoanalyze/cpp/shared/constructors/constructor_init.cpp, f_div0, 2, DIVIDE_BY_ZERO, [start of procedure f_div0(),start of procedure B,start of procedure A,return from a call to A_A,start of procedure T,return from a call to B::T_T,return from a call to B_B]
codetoanalyze/cpp/shared/constructors/constructor_init.cpp, t_div0, 2, DIVIDE_BY_ZERO, [start of procedure t_div0(),start of procedure B,start of procedure A,return from a call to A_A,start of procedure T,return from a call to B::T_T,return from a call to B_B]
codetoanalyze/cpp/shared/constructors/constructor_new.cpp, constructor_new::array_of_class_with_not_constant_size, 1, MEMORY_LEAK, [start of procedure constructor_new::array_of_class_with_not_constant_size(),start of procedure constructor_new::getValue(),return from a call to constructor_new::getValue,Condition is true]
codetoanalyze/cpp/shared/constructors/constructor_new.cpp, constructor_new::array_of_person_with_constant_size, 0, MEMORY_LEAK, [start of procedure constructor_new::array_of_person_with_constant_size(),start of procedure Person,return from a call to constructor_new::Person_Person,start of procedure Person,return from a call to constructor_new::Person_Person,start of procedure Person,return from a call to constructor_new::Person_Person,start of procedure Person,return from a call to constructor_new::Person_Person,start of procedure Person,return from a call to constructor_new::Person_Person,start of procedure Person,return from a call to constructor_new::Person_Person,start of procedure Person,return from a call to constructor_new::Person_Person,start of procedure Person,return from a call to constructor_new::Person_Person,start of procedure Person,return from a call to constructor_new::Person_Person,start of procedure Person,return from a call to constructor_new::Person_Person]
codetoanalyze/cpp/shared/constructors/constructor_new.cpp, constructor_new::constructor_1_arg_new_div0, 2, DIVIDE_BY_ZERO, [start of procedure constructor_new::constructor_1_arg_new_div0(),start of procedure Person,return from a call to constructor_new::Person_Person]
codetoanalyze/cpp/shared/constructors/constructor_new.cpp, constructor_new::constructor_1_arg_new_div0, 2, MEMORY_LEAK, [start of procedure constructor_new::constructor_1_arg_new_div0(),start of procedure Person,return from a call to constructor_new::Person_Person]
codetoanalyze/cpp/shared/constructors/constructor_new.cpp, constructor_new::constructor_3_args_new_div0, 2, DIVIDE_BY_ZERO, [start of procedure constructor_new::constructor_3_args_new_div0(),start of procedure Person,return from a call to constructor_new::Person_Person]
codetoanalyze/cpp/shared/constructors/constructor_new.cpp, constructor_new::constructor_3_args_new_div0, 2, MEMORY_LEAK, [start of procedure constructor_new::constructor_3_args_new_div0(),start of procedure Person,return from a call to constructor_new::Person_Person]
codetoanalyze/cpp/shared/constructors/constructor_new.cpp, constructor_new::constructor_nodes, 3, DIVIDE_BY_ZERO, [start of procedure constructor_new::constructor_nodes(),start of procedure constructor_new::getValue(),return from a call to constructor_new::getValue,Condition is false,start of procedure Person,return from a call to constructor_new::Person_Person]
codetoanalyze/cpp/shared/constructors/constructor_new.cpp, constructor_new::constructor_nodes, 3, MEMORY_LEAK, [start of procedure constructor_new::constructor_nodes(),start of procedure constructor_new::getValue(),return from a call to constructor_new::getValue,Condition is false,start of procedure Person,return from a call to constructor_new::Person_Person]
codetoanalyze/cpp/shared/constructors/constructor_new.cpp, constructor_new::float_init_number, 2, DIVIDE_BY_ZERO, [start of procedure constructor_new::float_init_number()]
codetoanalyze/cpp/shared/constructors/constructor_new.cpp, constructor_new::float_init_number, 2, MEMORY_LEAK, [start of procedure constructor_new::float_init_number()]
codetoanalyze/cpp/shared/constructors/constructor_new.cpp, constructor_new::int_array, 4, DIVIDE_BY_ZERO, [start of procedure constructor_new::int_array(),start of procedure constructor_new::getValue(),return from a call to constructor_new::getValue,Condition is true,start of procedure constructor_new::getValue(),return from a call to constructor_new::getValue]
codetoanalyze/cpp/shared/constructors/constructor_new.cpp, constructor_new::int_array, 4, MEMORY_LEAK, [start of procedure constructor_new::int_array(),start of procedure constructor_new::getValue(),return from a call to constructor_new::getValue,Condition is true,start of procedure constructor_new::getValue(),return from a call to constructor_new::getValue]
codetoanalyze/cpp/shared/constructors/constructor_new.cpp, constructor_new::int_array_init, 2, DIVIDE_BY_ZERO, [start of procedure constructor_new::int_array_init()]
codetoanalyze/cpp/shared/constructors/constructor_new.cpp, constructor_new::int_array_init, 2, MEMORY_LEAK, [start of procedure constructor_new::int_array_init()]
codetoanalyze/cpp/shared/constructors/constructor_new.cpp, constructor_new::int_init_empty, 2, DIVIDE_BY_ZERO, [start of procedure constructor_new::int_init_empty()]
codetoanalyze/cpp/shared/constructors/constructor_new.cpp, constructor_new::int_init_empty, 2, MEMORY_LEAK, [start of procedure constructor_new::int_init_empty()]
codetoanalyze/cpp/shared/constructors/constructor_new.cpp, constructor_new::int_init_empty_list, 2, DIVIDE_BY_ZERO, [start of procedure constructor_new::int_init_empty_list()]
codetoanalyze/cpp/shared/constructors/constructor_new.cpp, constructor_new::int_init_empty_list_new, 2, DIVIDE_BY_ZERO, [start of procedure constructor_new::int_init_empty_list_new()]
codetoanalyze/cpp/shared/constructors/constructor_new.cpp, constructor_new::int_init_empty_list_new, 2, MEMORY_LEAK, [start of procedure constructor_new::int_init_empty_list_new()]
codetoanalyze/cpp/shared/constructors/constructor_new.cpp, constructor_new::int_init_nodes, 3, MEMORY_LEAK, [start of procedure constructor_new::int_init_nodes(),start of procedure constructor_new::getValue(),return from a call to constructor_new::getValue,start of procedure constructor_new::getValue(),return from a call to constructor_new::getValue,Condition is false]
codetoanalyze/cpp/shared/constructors/constructor_new.cpp, constructor_new::int_init_nodes, 4, DIVIDE_BY_ZERO, [start of procedure constructor_new::int_init_nodes(),start of procedure constructor_new::getValue(),return from a call to constructor_new::getValue,start of procedure constructor_new::getValue(),return from a call to constructor_new::getValue,Condition is false]
codetoanalyze/cpp/shared/constructors/constructor_new.cpp, constructor_new::int_init_nodes, 4, MEMORY_LEAK, [start of procedure constructor_new::int_init_nodes(),start of procedure constructor_new::getValue(),return from a call to constructor_new::getValue,start of procedure constructor_new::getValue(),return from a call to constructor_new::getValue,Condition is false]
codetoanalyze/cpp/shared/constructors/constructor_new.cpp, constructor_new::int_init_number, 2, DIVIDE_BY_ZERO, [start of procedure constructor_new::int_init_number()]
codetoanalyze/cpp/shared/constructors/constructor_new.cpp, constructor_new::int_init_number, 2, MEMORY_LEAK, [start of procedure constructor_new::int_init_number()]
codetoanalyze/cpp/shared/constructors/constructor_new.cpp, constructor_new::matrix_of_person, 2, MEMORY_LEAK, [start of procedure constructor_new::matrix_of_person(),start of procedure Person,return from a call to constructor_new::Person_Person,start of procedure Person,return from a call to constructor_new::Person_Person,start of procedure Person,return from a call to constructor_new::Person_Person,start of procedure Person,return from a call to constructor_new::Person_Person,start of procedure Person,return from a call to constructor_new::Person_Person,start of procedure Person,return from a call to constructor_new::Person_Person,start of procedure Person,return from a call to constructor_new::Person_Person,start of procedure Person,return from a call to constructor_new::Person_Person,start of procedure Person,return from a call to constructor_new::Person_Person,start of procedure Person,return from a call to constructor_new::Person_Person]
codetoanalyze/cpp/shared/constructors/constructor_with_body.cpp, constructor_with_body::test_div0, 2, DIVIDE_BY_ZERO, [start of procedure constructor_with_body::test_div0(),start of procedure X,start of procedure init,return from a call to constructor_with_body::X_init,return from a call to constructor_with_body::X_X,start of procedure div]
codetoanalyze/cpp/shared/constructors/constructor_with_body.cpp, constructor_with_body::test_div0_default_constructor, 2, DIVIDE_BY_ZERO, [start of procedure constructor_with_body::test_div0_default_constructor(),start of procedure X,start of procedure init,return from a call to constructor_with_body::X_init,return from a call to constructor_with_body::X_X,start of procedure div]
codetoanalyze/cpp/shared/constructors/copy_move_constructor.cpp, copy_move_constructor::copyX_div0, 4, DIVIDE_BY_ZERO, [start of procedure copy_move_constructor::copyX_div0(),start of procedure X,return from a call to copy_move_constructor::X_X,start of procedure X,return from a call to copy_move_constructor::X_X]
codetoanalyze/cpp/shared/constructors/copy_move_constructor.cpp, copy_move_constructor::copyY_div0, 4, DIVIDE_BY_ZERO, [start of procedure copy_move_constructor::copyY_div0(),start of procedure Y,return from a call to copy_move_constructor::Y_Y,start of procedure Y,return from a call to copy_move_constructor::Y_Y]
codetoanalyze/cpp/shared/constructors/copy_move_constructor.cpp, copy_move_constructor::moveX_div0, 0, DIVIDE_BY_ZERO, [start of procedure copy_move_constructor::moveX_div0(),start of procedure copy_move_constructor::getX(),start of procedure X,return from a call to copy_move_constructor::X_X,start of procedure X,return from a call to copy_move_constructor::X_X,return from a call to copy_move_constructor::getX]
codetoanalyze/cpp/shared/constructors/copy_move_constructor.cpp, copy_move_constructor::moveY_div0, 0, DIVIDE_BY_ZERO, [start of procedure copy_move_constructor::moveY_div0(),start of procedure copy_move_constructor::getY(),start of procedure Y,return from a call to copy_move_constructor::Y_Y,start of procedure Y,return from a call to copy_move_constructor::Y_Y,return from a call to copy_move_constructor::getY]
codetoanalyze/cpp/shared/constructors/copy_move_constructor.cpp, copy_move_constructor::moveY_moveY_copyY_div0, 3, DIVIDE_BY_ZERO, [start of procedure copy_move_constructor::moveY_moveY_copyY_div0(),start of procedure copy_move_constructor::getY(),start of procedure Y,return from a call to copy_move_constructor::Y_Y,start of procedure Y,return from a call to copy_move_constructor::Y_Y,return from a call to copy_move_constructor::getY,start of procedure Y,return from a call to copy_move_constructor::Y_Y,start of procedure Y,return from a call to copy_move_constructor::Y_Y]
codetoanalyze/cpp/shared/constructors/temp_object.cpp, temp_object::assign_temp_div0, 2, DIVIDE_BY_ZERO, [start of procedure temp_object::assign_temp_div0(),start of procedure X,return from a call to temp_object::X_X,start of procedure X,return from a call to temp_object::X_X,start of procedure div]
codetoanalyze/cpp/shared/constructors/temp_object.cpp, temp_object::getX_field_div0, 0, DIVIDE_BY_ZERO, [start of procedure temp_object::getX_field_div0(),start of procedure temp_object::getX(),start of procedure X,return from a call to temp_object::X_X,start of procedure X,return from a call to temp_object::X_X,return from a call to temp_object::getX,start of procedure temp_object::div()]
codetoanalyze/cpp/shared/constructors/temp_object.cpp, temp_object::getX_method_div0, 0, DIVIDE_BY_ZERO, [start of procedure temp_object::getX_method_div0(),start of procedure temp_object::getX(),start of procedure X,return from a call to temp_object::X_X,start of procedure X,return from a call to temp_object::X_X,return from a call to temp_object::getX,start of procedure div]
codetoanalyze/cpp/shared/constructors/temp_object.cpp, temp_object::temp_field2_div0, 0, DIVIDE_BY_ZERO, [start of procedure temp_object::temp_field2_div0(),start of procedure X,return from a call to temp_object::X_X,start of procedure temp_object::div()]
codetoanalyze/cpp/shared/constructors/temp_object.cpp, temp_object::temp_field_div0, 0, DIVIDE_BY_ZERO, [start of procedure temp_object::temp_field_div0(),start of procedure X,return from a call to temp_object::X_X,start of procedure temp_object::div()]
codetoanalyze/cpp/shared/constructors/temp_object.cpp, temp_object::temp_method_div0, 0, DIVIDE_BY_ZERO, [start of procedure temp_object::temp_method_div0(),start of procedure X,return from a call to temp_object::X_X,start of procedure div]
codetoanalyze/cpp/shared/exceptions/Exceptions.cpp, call_deref_with_null, 0, NULL_DEREFERENCE, [start of procedure call_deref_with_null(),start of procedure deref_null()]
codetoanalyze/cpp/shared/lambda/lambda1.cpp, bar, 5, DIVIDE_BY_ZERO, [start of procedure bar(),start of procedure ,return from a call to bar::lambda_shared_lambda_lambda1.cpp:11:15_,start of procedure operator(),return from a call to bar::lambda_shared_lambda_lambda1.cpp:11:15_operator()]
codetoanalyze/cpp/shared/lambda/lambda1.cpp, foo, 3, DIVIDE_BY_ZERO, [start of procedure foo(),start of procedure ,return from a call to foo::lambda_shared_lambda_lambda1.cpp:19:17_,start of procedure ,return from a call to foo::lambda_shared_lambda_lambda1.cpp:20:12_,start of procedure operator(),return from a call to foo::lambda_shared_lambda_lambda1.cpp:20:12_operator()]
codetoanalyze/cpp/shared/lambda/lambda1.cpp, foo::lambda_shared_lambda_lambda1.cpp:19:17_operator(), 0, DIVIDE_BY_ZERO, [start of procedure operator()]
codetoanalyze/cpp/shared/methods/conversion_operator.cpp, conversion_operator::branch_div0, 4, DIVIDE_BY_ZERO, [start of procedure conversion_operator::branch_div0(),start of procedure X,return from a call to conversion_operator::X_X,start of procedure operator_bool,return from a call to conversion_operator::X_operator_bool,Condition is true,start of procedure operator_int,return from a call to conversion_operator::X_operator_int]
codetoanalyze/cpp/shared/methods/conversion_operator.cpp, conversion_operator::y_branch_div0, 6, DIVIDE_BY_ZERO, [start of procedure conversion_operator::y_branch_div0(),start of procedure Y,return from a call to conversion_operator::Y_Y,start of procedure operator_X,start of procedure X,return from a call to conversion_operator::X_X,start of procedure X,return from a call to conversion_operator::X_X,return from a call to conversion_operator::Y_operator_X,start of procedure X,return from a call to conversion_operator::X_X,start of procedure operator_bool,return from a call to conversion_operator::X_operator_bool,Condition is true,start of procedure operator_X,start of procedure X,return from a call to conversion_operator::X_X,start of procedure X,return from a call to conversion_operator::X_X,return from a call to conversion_operator::Y_operator_X,start of procedure X,return from a call to conversion_operator::X_X,start of procedure operator_int,return from a call to conversion_operator::X_operator_int]
codetoanalyze/cpp/shared/methods/static.cpp, div0_class, 0, DIVIDE_BY_ZERO, [start of procedure div0_class(),start of procedure fun]
codetoanalyze/cpp/shared/methods/static.cpp, div0_instance, 2, DIVIDE_BY_ZERO, [start of procedure div0_instance(),start of procedure fun]
codetoanalyze/cpp/shared/methods/virtual_methods.cpp, poly_area, 3, DIVIDE_BY_ZERO, [start of procedure poly_area(),start of procedure Polygon,return from a call to Polygon_Polygon,start of procedure area,return from a call to Polygon_area]
codetoanalyze/cpp/shared/methods/virtual_methods.cpp, rect_area, 4, DIVIDE_BY_ZERO, [start of procedure rect_area(),start of procedure Rectangle,start of procedure Polygon,return from a call to Polygon_Polygon,return from a call to Rectangle_Rectangle,start of procedure set_values,return from a call to Polygon_set_values,start of procedure area,return from a call to Rectangle_area]
codetoanalyze/cpp/shared/methods/virtual_methods.cpp, tri_area, 5, DIVIDE_BY_ZERO, [start of procedure tri_area(),start of procedure Triangle,start of procedure Polygon,return from a call to Polygon_Polygon,return from a call to Triangle_Triangle,start of procedure Polygon,return from a call to Polygon_Polygon,start of procedure set_values,return from a call to Polygon_set_values,start of procedure area,return from a call to Triangle_area]
codetoanalyze/cpp/shared/methods/virtual_methods.cpp, tri_not_virtual_area, 5, DIVIDE_BY_ZERO, [start of procedure tri_not_virtual_area(),start of procedure Triangle,start of procedure Polygon,return from a call to Polygon_Polygon,return from a call to Triangle_Triangle,start of procedure Polygon,return from a call to Polygon_Polygon,start of procedure set_values,return from a call to Polygon_set_values,start of procedure area,return from a call to Polygon_area]
codetoanalyze/cpp/shared/namespace/function.cpp, div0_namespace_resolution, 0, DIVIDE_BY_ZERO, [start of procedure div0_namespace_resolution(),start of procedure f1::get(),return from a call to f1::get,start of procedure f2::get(),return from a call to f2::get]
codetoanalyze/cpp/shared/namespace/function.cpp, div0_using, 2, DIVIDE_BY_ZERO, [start of procedure div0_using(),start of procedure f1::get0(),return from a call to f1::get0]
codetoanalyze/cpp/shared/namespace/global_variable.cpp, div0_namepace_res, 3, DIVIDE_BY_ZERO, [start of procedure div0_namepace_res()]
codetoanalyze/cpp/shared/namespace/global_variable.cpp, div0_static_field, 3, DIVIDE_BY_ZERO, [start of procedure div0_static_field()]
codetoanalyze/cpp/shared/namespace/global_variable.cpp, div0_static_field_member_access, 3, DIVIDE_BY_ZERO, [start of procedure div0_static_field_member_access()]
codetoanalyze/cpp/shared/nestedoperators/var_decl_inside_if.cpp, conditional_init_div0, 2, DIVIDE_BY_ZERO, [start of procedure conditional_init_div0(),Condition is true,Condition is true]
codetoanalyze/cpp/shared/nestedoperators/var_decl_inside_if.cpp, function_call_init_div0, 2, DIVIDE_BY_ZERO, [start of procedure function_call_init_div0(),start of procedure get1(),return from a call to get1,Condition is true]
codetoanalyze/cpp/shared/nestedoperators/var_decl_inside_if.cpp, reference_init_div0, 5, DIVIDE_BY_ZERO, [start of procedure reference_init_div0(),Condition is true]
codetoanalyze/cpp/shared/nestedoperators/var_decl_inside_if.cpp, simple_inif_elseif_div0, 6, DIVIDE_BY_ZERO, [start of procedure simple_inif_elseif_div0(),Condition is false,Condition is false]
codetoanalyze/cpp/shared/nestedoperators/var_decl_inside_if.cpp, simple_init_div0, 4, DIVIDE_BY_ZERO, [start of procedure simple_init_div0(),Condition is false]
codetoanalyze/cpp/shared/nestedoperators/var_decl_inside_if.cpp, simple_init_null_deref, 4, NULL_DEREFERENCE, [start of procedure simple_init_null_deref(),Condition is false]
codetoanalyze/cpp/shared/npe/method_call.cpp, npe_call, 2, NULL_DEREFERENCE, [start of procedure npe_call()]
codetoanalyze/cpp/shared/npe/method_call.cpp, npe_call_after_call, 0, NULL_DEREFERENCE, [start of procedure npe_call_after_call(),start of procedure getX(),return from a call to getX]
codetoanalyze/cpp/shared/npe/method_call.cpp, npe_call_with_forward_declaration, 1, NULL_DEREFERENCE, [start of procedure npe_call_with_forward_declaration(),start of procedure call_with_forward_declaration()]
codetoanalyze/cpp/shared/reference/reference_field.cpp, reference_field::ptr_F_div0, 5, DIVIDE_BY_ZERO, [start of procedure reference_field::ptr_F_div0(),start of procedure X,return from a call to reference_field::X_X,start of procedure Ptr,return from a call to reference_field::Ptr_Ptr]
codetoanalyze/cpp/shared/reference/reference_field.cpp, reference_field::ptr_I_div0, 5, DIVIDE_BY_ZERO, [start of procedure reference_field::ptr_I_div0(),start of procedure X,return from a call to reference_field::X_X,start of procedure Ptr,return from a call to reference_field::Ptr_Ptr]
codetoanalyze/cpp/shared/reference/reference_field.cpp, reference_field::ptr_getF_div0, 5, DIVIDE_BY_ZERO, [start of procedure reference_field::ptr_getF_div0(),start of procedure X,return from a call to reference_field::X_X,start of procedure Ptr,return from a call to reference_field::Ptr_Ptr,start of procedure getF,return from a call to reference_field::Ptr_getF]
codetoanalyze/cpp/shared/reference/reference_field.cpp, reference_field::ptr_getI_div0, 5, DIVIDE_BY_ZERO, [start of procedure reference_field::ptr_getI_div0(),start of procedure X,return from a call to reference_field::X_X,start of procedure Ptr,return from a call to reference_field::Ptr_Ptr,start of procedure getI,return from a call to reference_field::Ptr_getI]
codetoanalyze/cpp/shared/reference/reference_field.cpp, reference_field::ref_F_div0, 5, DIVIDE_BY_ZERO, [start of procedure reference_field::ref_F_div0(),start of procedure X,return from a call to reference_field::X_X,start of procedure Ref,return from a call to reference_field::Ref_Ref]
codetoanalyze/cpp/shared/reference/reference_field.cpp, reference_field::ref_I_div0, 5, DIVIDE_BY_ZERO, [start of procedure reference_field::ref_I_div0(),start of procedure X,return from a call to reference_field::X_X,start of procedure Ref,return from a call to reference_field::Ref_Ref]
codetoanalyze/cpp/shared/reference/reference_field.cpp, reference_field::ref_getF_div0, 5, DIVIDE_BY_ZERO, [start of procedure reference_field::ref_getF_div0(),start of procedure X,return from a call to reference_field::X_X,start of procedure Ref,return from a call to reference_field::Ref_Ref,start of procedure getF,return from a call to reference_field::Ref_getF]
codetoanalyze/cpp/shared/reference/reference_field.cpp, reference_field::ref_getI_div0, 5, DIVIDE_BY_ZERO, [start of procedure reference_field::ref_getI_div0(),start of procedure X,return from a call to reference_field::X_X,start of procedure Ref,return from a call to reference_field::Ref_Ref,start of procedure getI,return from a call to reference_field::Ref_getI]
codetoanalyze/cpp/shared/reference/reference_field.cpp, reference_field::val_F_div0, 5, DIVIDE_BY_ZERO, [start of procedure reference_field::val_F_div0(),start of procedure X,return from a call to reference_field::X_X,start of procedure Val,start of procedure X,return from a call to reference_field::X_X,return from a call to reference_field::Val_Val]
codetoanalyze/cpp/shared/reference/reference_field.cpp, reference_field::val_I_div0, 5, DIVIDE_BY_ZERO, [start of procedure reference_field::val_I_div0(),start of procedure X,return from a call to reference_field::X_X,start of procedure Val,start of procedure X,return from a call to reference_field::X_X,return from a call to reference_field::Val_Val]
codetoanalyze/cpp/shared/reference/reference_field.cpp, reference_field::val_getF_div0, 5, DIVIDE_BY_ZERO, [start of procedure reference_field::val_getF_div0(),start of procedure X,return from a call to reference_field::X_X,start of procedure Val,start of procedure X,return from a call to reference_field::X_X,return from a call to reference_field::Val_Val,start of procedure getF,return from a call to reference_field::Val_getF]
codetoanalyze/cpp/shared/reference/reference_field.cpp, reference_field::val_getI_div0, 5, DIVIDE_BY_ZERO, [start of procedure reference_field::val_getI_div0(),start of procedure X,return from a call to reference_field::X_X,start of procedure Val,start of procedure X,return from a call to reference_field::X_X,return from a call to reference_field::Val_Val,start of procedure getI,return from a call to reference_field::Val_getI]
codetoanalyze/cpp/shared/reference/reference_struct_e2e.cpp, field_div0_ptr, 3, DIVIDE_BY_ZERO, [start of procedure field_div0_ptr(),Condition is true,start of procedure set_field_ptr(),return from a call to set_field_ptr,start of procedure div]
codetoanalyze/cpp/shared/reference/reference_struct_e2e.cpp, field_div0_ref, 2, DIVIDE_BY_ZERO, [start of procedure field_div0_ref(),start of procedure set_field_ref(),return from a call to set_field_ref,start of procedure div]
codetoanalyze/cpp/shared/reference/reference_struct_e2e.cpp, get_global_ptr_div0_field, 3, DIVIDE_BY_ZERO, [start of procedure get_global_ptr_div0_field(),start of procedure get_global_ptr(),return from a call to get_global_ptr,start of procedure nonzero,return from a call to X_nonzero,start of procedure get_global_ptr(),return from a call to get_global_ptr,start of procedure get_global_ptr(),return from a call to get_global_ptr,start of procedure div]
codetoanalyze/cpp/shared/reference/reference_struct_e2e.cpp, get_global_ptr_div0_method, 3, DIVIDE_BY_ZERO, [start of procedure get_global_ptr_div0_method(),start of procedure get_global_ptr(),return from a call to get_global_ptr,start of procedure get_global_ptr(),return from a call to get_global_ptr,start of procedure zero,return from a call to X_zero,start of procedure get_global_ptr(),return from a call to get_global_ptr,start of procedure div]
codetoanalyze/cpp/shared/reference/reference_struct_e2e.cpp, get_global_ref_div0_field, 3, DIVIDE_BY_ZERO, [start of procedure get_global_ref_div0_field(),start of procedure get_global_ref(),return from a call to get_global_ref,start of procedure nonzero,return from a call to X_nonzero,start of procedure get_global_ref(),return from a call to get_global_ref,start of procedure get_global_ref(),return from a call to get_global_ref,start of procedure div]
codetoanalyze/cpp/shared/reference/reference_struct_e2e.cpp, get_global_ref_div0_method, 3, DIVIDE_BY_ZERO, [start of procedure get_global_ref_div0_method(),start of procedure get_global_ref(),return from a call to get_global_ref,start of procedure get_global_ref(),return from a call to get_global_ref,start of procedure zero,return from a call to X_zero,start of procedure get_global_ref(),return from a call to get_global_ref,start of procedure div]
codetoanalyze/cpp/shared/reference/reference_struct_e2e.cpp, method_div0_ptr, 3, DIVIDE_BY_ZERO, [start of procedure method_div0_ptr(),Condition is true,start of procedure zero_ptr(),start of procedure zero,return from a call to X_zero,return from a call to zero_ptr,start of procedure div]
codetoanalyze/cpp/shared/reference/reference_struct_e2e.cpp, method_div0_ref, 2, DIVIDE_BY_ZERO, [start of procedure method_div0_ref(),start of procedure zero_ref(),start of procedure zero,return from a call to X_zero,return from a call to zero_ref,start of procedure div]
codetoanalyze/cpp/shared/reference/reference_type_e2e.cpp, ptr_div0, 4, DIVIDE_BY_ZERO, [start of procedure ptr_div0()]
codetoanalyze/cpp/shared/reference/reference_type_e2e.cpp, ptr_div0_function, 3, DIVIDE_BY_ZERO, [start of procedure ptr_div0_function(),start of procedure zero_ptr(),return from a call to zero_ptr]
codetoanalyze/cpp/shared/reference/reference_type_e2e.cpp, ptr_div0_function_temp_var, 4, DIVIDE_BY_ZERO, [start of procedure ptr_div0_function_temp_var(),start of procedure zero_ptr(),return from a call to zero_ptr]
codetoanalyze/cpp/shared/reference/reference_type_e2e.cpp, ref_div0, 4, DIVIDE_BY_ZERO, [start of procedure ref_div0()]
codetoanalyze/cpp/shared/reference/reference_type_e2e.cpp, ref_div0_function, 3, DIVIDE_BY_ZERO, [start of procedure ref_div0_function(),start of procedure zero_ref(),return from a call to zero_ref]
codetoanalyze/cpp/shared/reference/reference_type_e2e.cpp, ref_div0_function_temp_var, 4, DIVIDE_BY_ZERO, [start of procedure ref_div0_function_temp_var(),start of procedure zero_ref(),return from a call to zero_ref]
codetoanalyze/cpp/shared/reference/reference_type_e2e.cpp, ref_div0_nested_assignment, 6, DIVIDE_BY_ZERO, [start of procedure ref_div0_nested_assignment()]
codetoanalyze/cpp/shared/reference/temporary_lvalue.cpp, div0_function_param_cast, 0, DIVIDE_BY_ZERO, [start of procedure div0_function_param_cast(),start of procedure div()]
codetoanalyze/cpp/shared/reference/temporary_lvalue.cpp, div0_init_expr, 2, DIVIDE_BY_ZERO, [start of procedure div0_init_expr(),start of procedure div()]
codetoanalyze/cpp/shared/reference/temporary_lvalue.cpp, div0_no_const_ref, 2, DIVIDE_BY_ZERO, [start of procedure div0_no_const_ref(),start of procedure div()]
codetoanalyze/cpp/shared/templates/class_template_instantiate.cpp, ExecStore<Choose2>_call_div, 2, DIVIDE_BY_ZERO, [start of procedure call_div,start of procedure div]
codetoanalyze/cpp/shared/templates/class_template_instantiate.cpp, choose1_div0, 0, DIVIDE_BY_ZERO, [start of procedure choose1_div0(),start of procedure call_div,start of procedure div]
codetoanalyze/cpp/shared/templates/class_template_instantiate.cpp, choose2_div0_extra, 0, DIVIDE_BY_ZERO, [start of procedure choose2_div0_extra(),start of procedure extra]
codetoanalyze/cpp/shared/templates/function.cpp, function::createAndDiv<X3>, 1, DIVIDE_BY_ZERO, [start of procedure function::createAndDiv<X3>(),start of procedure function::createAndGetVal<X3>(),start of procedure X3,return from a call to function::X3_X3,start of procedure function::getVal<X3>(),start of procedure get,return from a call to function::X3_get,return from a call to function::getVal<X3>,return from a call to function::createAndGetVal<X3>]
codetoanalyze/cpp/shared/templates/function.cpp, function::div0_create_and_get_val, 1, DIVIDE_BY_ZERO, [start of procedure function::div0_create_and_get_val(),start of procedure function::createAndGetVal<X1>(),start of procedure X1,return from a call to function::X1_X1,start of procedure function::getVal<X1>(),start of procedure getVal,return from a call to function::X1_getVal,return from a call to function::getVal<X1>,return from a call to function::createAndGetVal<X1>,start of procedure function::createAndGetVal<X3>(),start of procedure X3,return from a call to function::X3_X3,start of procedure function::getVal<X3>(),start of procedure get,return from a call to function::X3_get,return from a call to function::getVal<X3>,return from a call to function::createAndGetVal<X3>]
codetoanalyze/cpp/shared/templates/function.cpp, function::div0_get_val, 3, DIVIDE_BY_ZERO, [start of procedure function::div0_get_val(),start of procedure X1,return from a call to function::X1_X1,start of procedure X3,return from a call to function::X3_X3,start of procedure function::getVal<X1>(),start of procedure getVal,return from a call to function::X1_getVal,return from a call to function::getVal<X1>,start of procedure function::getVal<X3>(),start of procedure get,return from a call to function::X3_get,return from a call to function::getVal<X3>]
codetoanalyze/cpp/shared/templates/function_pack.cpp, div0_10args, 0, DIVIDE_BY_ZERO, [start of procedure div0_10args()]
codetoanalyze/cpp/shared/templates/function_pack.cpp, div0_1arg, 0, DIVIDE_BY_ZERO, [start of procedure div0_1arg(),start of procedure div()]
codetoanalyze/cpp/shared/templates/function_pack.cpp, div0_3args1, 0, DIVIDE_BY_ZERO, [start of procedure div0_3args1()]
codetoanalyze/cpp/shared/templates/function_pack.cpp, div0_3args2, 0, DIVIDE_BY_ZERO, [start of procedure div0_3args2()]
codetoanalyze/cpp/shared/templates/function_pack.cpp, div0_3args3, 0, DIVIDE_BY_ZERO, [start of procedure div0_3args3(),start of procedure div<int,_int>(),start of procedure div<int>(),start of procedure div()]
codetoanalyze/cpp/shared/templates/function_pack.cpp, div0_3args4, 0, DIVIDE_BY_ZERO, [start of procedure div0_3args4(),start of procedure div<int,_int>(),start of procedure div<int>(),start of procedure div()]
codetoanalyze/cpp/shared/templates/method.cpp, method::div0_getter, 3, DIVIDE_BY_ZERO, [start of procedure method::div0_getter(),start of procedure X2,return from a call to method::X2_X2,start of procedure Getter,return from a call to method::Getter_Getter,start of procedure get<X2>,start of procedure get,return from a call to method::X2_get,return from a call to method::Getter_get<X2>]
codetoanalyze/cpp/shared/templates/method.cpp, method::div0_getter_templ, 4, DIVIDE_BY_ZERO, [start of procedure method::div0_getter_templ(),start of procedure X2,return from a call to method::X2_X2,start of procedure X3,return from a call to method::X3_X3,start of procedure GetterTempl,return from a call to method::GetterTempl<X3>_GetterTempl,start of procedure get<X2>,start of procedure get,return from a call to method::X3_get,start of procedure get,return from a call to method::X2_get,return from a call to method::GetterTempl<X3>_get<X2>]
codetoanalyze/cpp/shared/templates/method.cpp, method::div0_getter_templ2, 4, DIVIDE_BY_ZERO, [start of procedure method::div0_getter_templ2(),start of procedure X2,return from a call to method::X2_X2,start of procedure X2,return from a call to method::X2_X2,start of procedure GetterTempl,return from a call to method::GetterTempl<X2>_GetterTempl,start of procedure get<X2>,start of procedure get,return from a call to method::X2_get,start of procedure get,return from a call to method::X2_get,return from a call to method::GetterTempl<X2>_get<X2>]
codetoanalyze/cpp/shared/types/inheritance_field.cpp, div0_b1, 2, DIVIDE_BY_ZERO, [start of procedure div0_b1()]
codetoanalyze/cpp/shared/types/inheritance_field.cpp, div0_b1_s, 3, DIVIDE_BY_ZERO, [start of procedure div0_b1_s()]
codetoanalyze/cpp/shared/types/inheritance_field.cpp, div0_b2, 2, DIVIDE_BY_ZERO, [start of procedure div0_b2()]
codetoanalyze/cpp/shared/types/inheritance_field.cpp, div0_cast, 3, DIVIDE_BY_ZERO, [start of procedure div0_cast()]
codetoanalyze/cpp/shared/types/inheritance_field.cpp, div0_cast_ref, 3, DIVIDE_BY_ZERO, [start of procedure div0_cast_ref()]
codetoanalyze/cpp/shared/types/inheritance_field.cpp, div0_s, 2, DIVIDE_BY_ZERO, [start of procedure div0_s()]
codetoanalyze/cpp/shared/types/inheritance_field.cpp, div0_s_b1, 3, DIVIDE_BY_ZERO, [start of procedure div0_s_b1()]
codetoanalyze/cpp/shared/types/operator_overload.cpp, div0_function_op, 3, DIVIDE_BY_ZERO, [start of procedure div0_function_op(),start of procedure operator*(),return from a call to operator*]
codetoanalyze/cpp/shared/types/operator_overload.cpp, div0_inheritted_op, 2, DIVIDE_BY_ZERO, [start of procedure div0_inheritted_op(),start of procedure operator[],return from a call to X_operator[]]
codetoanalyze/cpp/shared/types/operator_overload.cpp, div0_method, 3, DIVIDE_BY_ZERO, [start of procedure div0_method(),start of procedure operator[],return from a call to X_operator[]]
codetoanalyze/cpp/shared/types/operator_overload.cpp, div0_method_op, 3, DIVIDE_BY_ZERO, [start of procedure div0_method_op(),start of procedure operator[],return from a call to X_operator[]]
codetoanalyze/cpp/shared/types/operator_overload.cpp, div0_method_op_ptr, 0, DIVIDE_BY_ZERO, [start of procedure div0_method_op_ptr(),start of procedure operator[],return from a call to X_operator[]]
codetoanalyze/cpp/shared/types/return_struct.cpp, return_struct::get_div0, 2, DIVIDE_BY_ZERO, [start of procedure return_struct::get_div0(),start of procedure return_struct::get(),start of procedure X,return from a call to return_struct::X_X,start of procedure X,return from a call to return_struct::X_X,return from a call to return_struct::get,start of procedure X,return from a call to return_struct::X_X]
codetoanalyze/cpp/shared/types/return_struct.cpp, return_struct::get_field_div0, 2, DIVIDE_BY_ZERO, [start of procedure return_struct::get_field_div0(),start of procedure return_struct::get(),start of procedure X,return from a call to return_struct::X_X,start of procedure X,return from a call to return_struct::X_X,return from a call to return_struct::get,start of procedure return_struct::get(),start of procedure X,return from a call to return_struct::X_X,start of procedure X,return from a call to return_struct::X_X,return from a call to return_struct::get]
codetoanalyze/cpp/shared/types/return_struct.cpp, return_struct::get_method_div0, 0, DIVIDE_BY_ZERO, [start of procedure return_struct::get_method_div0(),start of procedure return_struct::get(),start of procedure X,return from a call to return_struct::X_X,start of procedure X,return from a call to return_struct::X_X,return from a call to return_struct::get,start of procedure div]
codetoanalyze/cpp/shared/types/struct_forward_declare.cpp, struct_forward_declare::X_Y_div0, 7, DIVIDE_BY_ZERO, [start of procedure struct_forward_declare::X_Y_div0(),start of procedure X,return from a call to struct_forward_declare::X_X,Condition is false,start of procedure getF,return from a call to struct_forward_declare::X_getF]
codetoanalyze/cpp/shared/types/struct_forward_declare.cpp, struct_forward_declare::X_div0, 3, DIVIDE_BY_ZERO, [start of procedure struct_forward_declare::X_div0(),start of procedure X,return from a call to struct_forward_declare::X_X,start of procedure getF,return from a call to struct_forward_declare::X_getF]
codetoanalyze/cpp/shared/types/struct_forward_declare.cpp, struct_forward_declare::X_ptr_div0, 2, DIVIDE_BY_ZERO, [start of procedure struct_forward_declare::X_ptr_div0(),start of procedure getF,return from a call to struct_forward_declare::X_getF]
codetoanalyze/cpp/shared/types/struct_forward_declare.cpp, struct_forward_declare::Z_div0, 3, DIVIDE_BY_ZERO, [start of procedure struct_forward_declare::Z_div0(),start of procedure Z,return from a call to struct_forward_declare::Z_Z,start of procedure getF,return from a call to struct_forward_declare::Z_getF]
codetoanalyze/cpp/shared/types/struct_forward_declare.cpp, struct_forward_declare::Z_ptr_div0, 5, DIVIDE_BY_ZERO, [start of procedure struct_forward_declare::Z_ptr_div0(),start of procedure getF,return from a call to struct_forward_declare::Z_getF]
codetoanalyze/cpp/shared/types/struct_pass_by_value.cpp, struct_pass_by_value::field_div0, 3, DIVIDE_BY_ZERO, [start of procedure struct_pass_by_value::field_div0(),start of procedure X,return from a call to struct_pass_by_value::X_X,start of procedure Y,start of procedure X,return from a call to struct_pass_by_value::X_X,return from a call to struct_pass_by_value::Y_Y,start of procedure X,return from a call to struct_pass_by_value::X_X,start of procedure struct_pass_by_value::get_f(),return from a call to struct_pass_by_value::get_f]
codetoanalyze/cpp/shared/types/struct_pass_by_value.cpp, struct_pass_by_value::param_get_copied_div0, 3, DIVIDE_BY_ZERO, [start of procedure struct_pass_by_value::param_get_copied_div0(),start of procedure X,return from a call to struct_pass_by_value::X_X,start of procedure X,return from a call to struct_pass_by_value::X_X,start of procedure struct_pass_by_value::set_f(),return from a call to struct_pass_by_value::set_f]
codetoanalyze/cpp/shared/types/struct_pass_by_value.cpp, struct_pass_by_value::temp_div0, 0, DIVIDE_BY_ZERO, [start of procedure struct_pass_by_value::temp_div0(),start of procedure X,return from a call to struct_pass_by_value::X_X,start of procedure X,return from a call to struct_pass_by_value::X_X,start of procedure struct_pass_by_value::get_f(),return from a call to struct_pass_by_value::get_f]
codetoanalyze/cpp/shared/types/struct_pass_by_value.cpp, struct_pass_by_value::var_div0, 2, DIVIDE_BY_ZERO, [start of procedure struct_pass_by_value::var_div0(),start of procedure X,return from a call to struct_pass_by_value::X_X,start of procedure X,return from a call to struct_pass_by_value::X_X,start of procedure struct_pass_by_value::get_f(),return from a call to struct_pass_by_value::get_f]
codetoanalyze/cpp/shared/types/typeid_expr.cpp, employee_typeid, 3, MEMORY_LEAK, [start of procedure employee_typeid(),start of procedure Employee,start of procedure Person,return from a call to Person_Person,return from a call to Employee_Employee]
codetoanalyze/cpp/shared/types/typeid_expr.cpp, employee_typeid, 4, DIVIDE_BY_ZERO, [start of procedure employee_typeid(),start of procedure Employee,start of procedure Person,return from a call to Person_Person,return from a call to Employee_Employee,Condition is true]
codetoanalyze/cpp/shared/types/typeid_expr.cpp, person_ptr_typeid, 2, MEMORY_LEAK, [start of procedure person_ptr_typeid(),start of procedure Person,return from a call to Person_Person]
codetoanalyze/cpp/shared/types/typeid_expr.cpp, person_ptr_typeid, 3, DIVIDE_BY_ZERO, [start of procedure person_ptr_typeid(),start of procedure Person,return from a call to Person_Person,Condition is true]
codetoanalyze/cpp/shared/types/typeid_expr.cpp, person_typeid, 3, MEMORY_LEAK, [start of procedure person_typeid(),start of procedure Person,return from a call to Person_Person]
codetoanalyze/cpp/shared/types/typeid_expr.cpp, person_typeid, 6, DIVIDE_BY_ZERO, [start of procedure person_typeid(),start of procedure Person,return from a call to Person_Person,Condition is false]
codetoanalyze/cpp/shared/types/typeid_expr.cpp, person_typeid_name, 3, MEMORY_LEAK, [start of procedure person_typeid_name(),start of procedure Person,return from a call to Person_Person]
codetoanalyze/cpp/shared/types/typeid_expr.cpp, person_typeid_name, 4, MEMORY_LEAK, [start of procedure person_typeid_name(),start of procedure Person,return from a call to Person_Person]
codetoanalyze/cpp/shared/types/typeid_expr.cpp, person_typeid_name, 8, DIVIDE_BY_ZERO, [start of procedure person_typeid_name(),start of procedure Person,return from a call to Person_Person,Condition is false]
codetoanalyze/cpp/shared/types/typeid_expr.cpp, template_type_id_person, 2, MEMORY_LEAK, [start of procedure template_type_id_person(),start of procedure Person,return from a call to Person_Person]
codetoanalyze/cpp/shared/types/typeid_expr.cpp, template_type_id_person, 5, DIVIDE_BY_ZERO, [start of procedure template_type_id_person(),start of procedure Person,return from a call to Person_Person,Condition is false]
codetoanalyze/cpp/shared/types/typeid_expr.cpp, template_typeid<Person>, 2, MEMORY_LEAK, [start of procedure template_typeid<Person>(),start of procedure Person,return from a call to Person_Person,start of procedure Person,return from a call to Person_Person]

@ -0,0 +1,15 @@
/*
* Copyright (c) 2013 - present Facebook, Inc.
* All rights reserved.
*
* This source code is licensed under the BSD style license found in the
* LICENSE file in the root directory of this source tree. An additional grant
* of patent rights can be found in the PATENTS file in the same directory.
*/
int foo(int* p) {
if ((*p = 0)) {
return 32;
}
return 52;
}

@ -0,0 +1,16 @@
/*
* Copyright (c) 2015 - present Facebook, Inc.
* All rights reserved.
*
* This source code is licensed under the BSD style license found in the
* LICENSE file in the root directory of this source tree. An additional grant
* of patent rights can be found in the PATENTS file in the same directory.
*/
int test() {
int a = 3;
int b = ++a;
int c = a++;
int d = --a;
int e = a--;
}

@ -0,0 +1,36 @@
/*
* Copyright (c) 2013 - present Facebook, Inc.
* All rights reserved.
*
* This source code is licensed under the BSD style license found in the
* LICENSE file in the root directory of this source tree. An additional grant
* of patent rights can be found in the PATENTS file in the same directory.
*/
struct {
int a;
int b;
} * x;
union {
int e;
int f;
struct {
int w;
int u;
} g;
int h;
} y;
int main() {
int l;
x->a = 1;
y.f = 7;
y.g.u = y.f;
y.g.w = x->b;
return 0;
}

@ -1,47 +1,47 @@
/* @generated */
digraph iCFG {
"main.fad58de7366495db4650cfefac2fcd61_7" [label="7: BinaryOperatorStmt: Assign \n n$3=*&#GB<codetoanalyze/c/frontend/nestedoperators/union.cpp>$x:class anonymous_struct_nestedoperators_union.cpp:12:1* [line 32]\n *n$3.a:int=1 [line 32]\n " shape="box"]
"main.fad58de7366495db4650cfefac2fcd61_7" [label="7: BinaryOperatorStmt: Assign \n n$3=*&#GB<codetoanalyze/cpp/frontend/nestedoperators/union.cpp>$x:class anonymous_struct_nestedoperators_union.cpp:10:1* [line 30]\n *n$3.a:int=1 [line 30]\n " shape="box"]
"main.fad58de7366495db4650cfefac2fcd61_7" -> "main.fad58de7366495db4650cfefac2fcd61_6" ;
"main.fad58de7366495db4650cfefac2fcd61_6" [label="6: BinaryOperatorStmt: Assign \n *&#GB<codetoanalyze/c/frontend/nestedoperators/union.cpp>$y.f:int=7 [line 33]\n " shape="box"]
"main.fad58de7366495db4650cfefac2fcd61_6" [label="6: BinaryOperatorStmt: Assign \n *&#GB<codetoanalyze/cpp/frontend/nestedoperators/union.cpp>$y.f:int=7 [line 31]\n " shape="box"]
"main.fad58de7366495db4650cfefac2fcd61_6" -> "main.fad58de7366495db4650cfefac2fcd61_5" ;
"main.fad58de7366495db4650cfefac2fcd61_5" [label="5: BinaryOperatorStmt: Assign \n n$2=*&#GB<codetoanalyze/c/frontend/nestedoperators/union.cpp>$y.f:int [line 34]\n *&#GB<codetoanalyze/c/frontend/nestedoperators/union.cpp>$y.g.u:int=n$2 [line 34]\n " shape="box"]
"main.fad58de7366495db4650cfefac2fcd61_5" [label="5: BinaryOperatorStmt: Assign \n n$2=*&#GB<codetoanalyze/cpp/frontend/nestedoperators/union.cpp>$y.f:int [line 32]\n *&#GB<codetoanalyze/cpp/frontend/nestedoperators/union.cpp>$y.g.u:int=n$2 [line 32]\n " shape="box"]
"main.fad58de7366495db4650cfefac2fcd61_5" -> "main.fad58de7366495db4650cfefac2fcd61_4" ;
"main.fad58de7366495db4650cfefac2fcd61_4" [label="4: BinaryOperatorStmt: Assign \n n$0=*&#GB<codetoanalyze/c/frontend/nestedoperators/union.cpp>$x:class anonymous_struct_nestedoperators_union.cpp:12:1* [line 36]\n n$1=*n$0.b:int [line 36]\n *&#GB<codetoanalyze/c/frontend/nestedoperators/union.cpp>$y.g.w:int=n$1 [line 36]\n " shape="box"]
"main.fad58de7366495db4650cfefac2fcd61_4" [label="4: BinaryOperatorStmt: Assign \n n$0=*&#GB<codetoanalyze/cpp/frontend/nestedoperators/union.cpp>$x:class anonymous_struct_nestedoperators_union.cpp:10:1* [line 34]\n n$1=*n$0.b:int [line 34]\n *&#GB<codetoanalyze/cpp/frontend/nestedoperators/union.cpp>$y.g.w:int=n$1 [line 34]\n " shape="box"]
"main.fad58de7366495db4650cfefac2fcd61_4" -> "main.fad58de7366495db4650cfefac2fcd61_3" ;
"main.fad58de7366495db4650cfefac2fcd61_3" [label="3: Return Stmt \n *&return:int=0 [line 37]\n " shape="box"]
"main.fad58de7366495db4650cfefac2fcd61_3" [label="3: Return Stmt \n *&return:int=0 [line 35]\n " shape="box"]
"main.fad58de7366495db4650cfefac2fcd61_3" -> "main.fad58de7366495db4650cfefac2fcd61_2" ;
"main.fad58de7366495db4650cfefac2fcd61_2" [label="2: Exit main \n " color=yellow style=filled]
"main.fad58de7366495db4650cfefac2fcd61_1" [label="1: Start main\nFormals: \nLocals: l:int \n DECLARE_LOCALS(&return,&l); [line 29]\n " color=yellow style=filled]
"main.fad58de7366495db4650cfefac2fcd61_1" [label="1: Start main\nFormals: \nLocals: l:int \n DECLARE_LOCALS(&return,&l); [line 27]\n " color=yellow style=filled]
"main.fad58de7366495db4650cfefac2fcd61_1" -> "main.fad58de7366495db4650cfefac2fcd61_7" ;
"anonymous_union_nestedoperators_union.cpp:17:1_{_ZN3$_0C1Ev}.7872f3ad68b4dcc7dc45fed509da0ae0_2" [label="2: Exit anonymous_union_nestedoperators_union.cpp:17:1_ \n " color=yellow style=filled]
"anonymous_union_nestedoperators_union.cpp:15:1_{_ZN3$_0C1Ev}.a368a0a38a33cffb4fbe8f478ecc70a9_2" [label="2: Exit anonymous_union_nestedoperators_union.cpp:15:1_ \n " color=yellow style=filled]
"anonymous_union_nestedoperators_union.cpp:17:1_{_ZN3$_0C1Ev}.7872f3ad68b4dcc7dc45fed509da0ae0_1" [label="1: Start anonymous_union_nestedoperators_union.cpp:17:1_\nFormals: this:class anonymous_union_nestedoperators_union.cpp:17:1*\nLocals: \n DECLARE_LOCALS(&return); [line 17]\n " color=yellow style=filled]
"anonymous_union_nestedoperators_union.cpp:15:1_{_ZN3$_0C1Ev}.a368a0a38a33cffb4fbe8f478ecc70a9_1" [label="1: Start anonymous_union_nestedoperators_union.cpp:15:1_\nFormals: this:class anonymous_union_nestedoperators_union.cpp:15:1*\nLocals: \n DECLARE_LOCALS(&return); [line 15]\n " color=yellow style=filled]
"anonymous_union_nestedoperators_union.cpp:17:1_{_ZN3$_0C1Ev}.7872f3ad68b4dcc7dc45fed509da0ae0_1" -> "anonymous_union_nestedoperators_union.cpp:17:1_{_ZN3$_0C1Ev}.7872f3ad68b4dcc7dc45fed509da0ae0_2" ;
"__infer_globals_initializer_y.0ea250be2dd991733c9131c53abc3c54_3" [label="3: DeclStmt \n _fun_anonymous_union_nestedoperators_union.cpp:17:1_(&#GB<codetoanalyze/c/frontend/nestedoperators/union.cpp>$y:class anonymous_union_nestedoperators_union.cpp:17:1*) [line 27]\n " shape="box"]
"anonymous_union_nestedoperators_union.cpp:15:1_{_ZN3$_0C1Ev}.a368a0a38a33cffb4fbe8f478ecc70a9_1" -> "anonymous_union_nestedoperators_union.cpp:15:1_{_ZN3$_0C1Ev}.a368a0a38a33cffb4fbe8f478ecc70a9_2" ;
"__infer_globals_initializer_y.0ea250be2dd991733c9131c53abc3c54_3" [label="3: DeclStmt \n _fun_anonymous_union_nestedoperators_union.cpp:15:1_(&#GB<codetoanalyze/cpp/frontend/nestedoperators/union.cpp>$y:class anonymous_union_nestedoperators_union.cpp:15:1*) [line 25]\n " shape="box"]
"__infer_globals_initializer_y.0ea250be2dd991733c9131c53abc3c54_3" -> "__infer_globals_initializer_y.0ea250be2dd991733c9131c53abc3c54_2" ;
"__infer_globals_initializer_y.0ea250be2dd991733c9131c53abc3c54_2" [label="2: Exit __infer_globals_initializer_y \n " color=yellow style=filled]
"__infer_globals_initializer_y.0ea250be2dd991733c9131c53abc3c54_1" [label="1: Start __infer_globals_initializer_y\nFormals: \nLocals: \n DECLARE_LOCALS(&return); [line 17]\n " color=yellow style=filled]
"__infer_globals_initializer_y.0ea250be2dd991733c9131c53abc3c54_1" [label="1: Start __infer_globals_initializer_y\nFormals: \nLocals: \n DECLARE_LOCALS(&return); [line 15]\n " color=yellow style=filled]
"__infer_globals_initializer_y.0ea250be2dd991733c9131c53abc3c54_1" -> "__infer_globals_initializer_y.0ea250be2dd991733c9131c53abc3c54_3" ;

@ -1,14 +1,14 @@
/* @generated */
digraph iCFG {
"div0_static_field{d41d8cd98f00b204e9800998ecf8427e_Z17div0_static_fieldv}.2b766a8130513aeff8c7b57d55276390_5" [label="5: BinaryOperatorStmt: Assign \n *&#GB<codetoanalyze/cpp/frontend/shared/namespace/global_variable.cpp>$B::v:int=1 [line 35]\n " shape="box"]
"div0_static_field{d41d8cd98f00b204e9800998ecf8427e_Z17div0_static_fieldv}.2b766a8130513aeff8c7b57d55276390_5" [label="5: BinaryOperatorStmt: Assign \n *&#GB<codetoanalyze/cpp/shared/namespace/global_variable.cpp>$B::v:int=1 [line 35]\n " shape="box"]
"div0_static_field{d41d8cd98f00b204e9800998ecf8427e_Z17div0_static_fieldv}.2b766a8130513aeff8c7b57d55276390_5" -> "div0_static_field{d41d8cd98f00b204e9800998ecf8427e_Z17div0_static_fieldv}.2b766a8130513aeff8c7b57d55276390_4" ;
"div0_static_field{d41d8cd98f00b204e9800998ecf8427e_Z17div0_static_fieldv}.2b766a8130513aeff8c7b57d55276390_4" [label="4: BinaryOperatorStmt: Assign \n *&#GB<codetoanalyze/cpp/frontend/shared/namespace/global_variable.cpp>$f1::A::v:int=-2 [line 36]\n " shape="box"]
"div0_static_field{d41d8cd98f00b204e9800998ecf8427e_Z17div0_static_fieldv}.2b766a8130513aeff8c7b57d55276390_4" [label="4: BinaryOperatorStmt: Assign \n *&#GB<codetoanalyze/cpp/shared/namespace/global_variable.cpp>$f1::A::v:int=-2 [line 36]\n " shape="box"]
"div0_static_field{d41d8cd98f00b204e9800998ecf8427e_Z17div0_static_fieldv}.2b766a8130513aeff8c7b57d55276390_4" -> "div0_static_field{d41d8cd98f00b204e9800998ecf8427e_Z17div0_static_fieldv}.2b766a8130513aeff8c7b57d55276390_3" ;
"div0_static_field{d41d8cd98f00b204e9800998ecf8427e_Z17div0_static_fieldv}.2b766a8130513aeff8c7b57d55276390_3" [label="3: Return Stmt \n n$0=*&#GB<codetoanalyze/cpp/frontend/shared/namespace/global_variable.cpp>$f1::A::v:int [line 37]\n n$1=*&#GB<codetoanalyze/cpp/frontend/shared/namespace/global_variable.cpp>$B::v:int [line 37]\n *&return:int=(1 / ((n$0 + n$1) + 1)) [line 37]\n " shape="box"]
"div0_static_field{d41d8cd98f00b204e9800998ecf8427e_Z17div0_static_fieldv}.2b766a8130513aeff8c7b57d55276390_3" [label="3: Return Stmt \n n$0=*&#GB<codetoanalyze/cpp/shared/namespace/global_variable.cpp>$f1::A::v:int [line 37]\n n$1=*&#GB<codetoanalyze/cpp/shared/namespace/global_variable.cpp>$B::v:int [line 37]\n *&return:int=(1 / ((n$0 + n$1) + 1)) [line 37]\n " shape="box"]
"div0_static_field{d41d8cd98f00b204e9800998ecf8427e_Z17div0_static_fieldv}.2b766a8130513aeff8c7b57d55276390_3" -> "div0_static_field{d41d8cd98f00b204e9800998ecf8427e_Z17div0_static_fieldv}.2b766a8130513aeff8c7b57d55276390_2" ;
@ -19,15 +19,15 @@ digraph iCFG {
"div0_static_field{d41d8cd98f00b204e9800998ecf8427e_Z17div0_static_fieldv}.2b766a8130513aeff8c7b57d55276390_1" -> "div0_static_field{d41d8cd98f00b204e9800998ecf8427e_Z17div0_static_fieldv}.2b766a8130513aeff8c7b57d55276390_5" ;
"div0_static_field_member_access{d41d8cd98f00b204e9800998ecf8427e_Z31div0_static_field_member_accessP.d6c0556f2a96cd969b89d172f2ad72f4_5" [label="5: BinaryOperatorStmt: Assign \n *&#GB<codetoanalyze/cpp/frontend/shared/namespace/global_variable.cpp>$f1::A::v:int=1 [line 41]\n " shape="box"]
"div0_static_field_member_access{d41d8cd98f00b204e9800998ecf8427e_Z31div0_static_field_member_accessP.d6c0556f2a96cd969b89d172f2ad72f4_5" [label="5: BinaryOperatorStmt: Assign \n *&#GB<codetoanalyze/cpp/shared/namespace/global_variable.cpp>$f1::A::v:int=1 [line 41]\n " shape="box"]
"div0_static_field_member_access{d41d8cd98f00b204e9800998ecf8427e_Z31div0_static_field_member_accessP.d6c0556f2a96cd969b89d172f2ad72f4_5" -> "div0_static_field_member_access{d41d8cd98f00b204e9800998ecf8427e_Z31div0_static_field_member_accessP.d6c0556f2a96cd969b89d172f2ad72f4_4" ;
"div0_static_field_member_access{d41d8cd98f00b204e9800998ecf8427e_Z31div0_static_field_member_accessP.d6c0556f2a96cd969b89d172f2ad72f4_4" [label="4: BinaryOperatorStmt: Assign \n *&#GB<codetoanalyze/cpp/frontend/shared/namespace/global_variable.cpp>$B::v:int=-2 [line 42]\n " shape="box"]
"div0_static_field_member_access{d41d8cd98f00b204e9800998ecf8427e_Z31div0_static_field_member_accessP.d6c0556f2a96cd969b89d172f2ad72f4_4" [label="4: BinaryOperatorStmt: Assign \n *&#GB<codetoanalyze/cpp/shared/namespace/global_variable.cpp>$B::v:int=-2 [line 42]\n " shape="box"]
"div0_static_field_member_access{d41d8cd98f00b204e9800998ecf8427e_Z31div0_static_field_member_accessP.d6c0556f2a96cd969b89d172f2ad72f4_4" -> "div0_static_field_member_access{d41d8cd98f00b204e9800998ecf8427e_Z31div0_static_field_member_accessP.d6c0556f2a96cd969b89d172f2ad72f4_3" ;
"div0_static_field_member_access{d41d8cd98f00b204e9800998ecf8427e_Z31div0_static_field_member_accessP.d6c0556f2a96cd969b89d172f2ad72f4_3" [label="3: Return Stmt \n n$0=*&#GB<codetoanalyze/cpp/frontend/shared/namespace/global_variable.cpp>$f1::A::v:int [line 43]\n n$1=*&#GB<codetoanalyze/cpp/frontend/shared/namespace/global_variable.cpp>$B::v:int [line 43]\n *&return:int=(1 / ((n$0 + n$1) + 1)) [line 43]\n " shape="box"]
"div0_static_field_member_access{d41d8cd98f00b204e9800998ecf8427e_Z31div0_static_field_member_accessP.d6c0556f2a96cd969b89d172f2ad72f4_3" [label="3: Return Stmt \n n$0=*&#GB<codetoanalyze/cpp/shared/namespace/global_variable.cpp>$f1::A::v:int [line 43]\n n$1=*&#GB<codetoanalyze/cpp/shared/namespace/global_variable.cpp>$B::v:int [line 43]\n *&return:int=(1 / ((n$0 + n$1) + 1)) [line 43]\n " shape="box"]
"div0_static_field_member_access{d41d8cd98f00b204e9800998ecf8427e_Z31div0_static_field_member_accessP.d6c0556f2a96cd969b89d172f2ad72f4_3" -> "div0_static_field_member_access{d41d8cd98f00b204e9800998ecf8427e_Z31div0_static_field_member_accessP.d6c0556f2a96cd969b89d172f2ad72f4_2" ;
@ -38,15 +38,15 @@ digraph iCFG {
"div0_static_field_member_access{d41d8cd98f00b204e9800998ecf8427e_Z31div0_static_field_member_accessP.d6c0556f2a96cd969b89d172f2ad72f4_1" -> "div0_static_field_member_access{d41d8cd98f00b204e9800998ecf8427e_Z31div0_static_field_member_accessP.d6c0556f2a96cd969b89d172f2ad72f4_5" ;
"div0_namepace_res{d41d8cd98f00b204e9800998ecf8427e_Z17div0_namepace_resv}.8eb98b954d1902dd35b1783695fa021d_5" [label="5: BinaryOperatorStmt: Assign \n *&#GB<codetoanalyze/cpp/frontend/shared/namespace/global_variable.cpp>$f1::val:int=1 [line 29]\n " shape="box"]
"div0_namepace_res{d41d8cd98f00b204e9800998ecf8427e_Z17div0_namepace_resv}.8eb98b954d1902dd35b1783695fa021d_5" [label="5: BinaryOperatorStmt: Assign \n *&#GB<codetoanalyze/cpp/shared/namespace/global_variable.cpp>$f1::val:int=1 [line 29]\n " shape="box"]
"div0_namepace_res{d41d8cd98f00b204e9800998ecf8427e_Z17div0_namepace_resv}.8eb98b954d1902dd35b1783695fa021d_5" -> "div0_namepace_res{d41d8cd98f00b204e9800998ecf8427e_Z17div0_namepace_resv}.8eb98b954d1902dd35b1783695fa021d_4" ;
"div0_namepace_res{d41d8cd98f00b204e9800998ecf8427e_Z17div0_namepace_resv}.8eb98b954d1902dd35b1783695fa021d_4" [label="4: BinaryOperatorStmt: Assign \n *&#GB<codetoanalyze/cpp/frontend/shared/namespace/global_variable.cpp>$f2::val:int=-2 [line 30]\n " shape="box"]
"div0_namepace_res{d41d8cd98f00b204e9800998ecf8427e_Z17div0_namepace_resv}.8eb98b954d1902dd35b1783695fa021d_4" [label="4: BinaryOperatorStmt: Assign \n *&#GB<codetoanalyze/cpp/shared/namespace/global_variable.cpp>$f2::val:int=-2 [line 30]\n " shape="box"]
"div0_namepace_res{d41d8cd98f00b204e9800998ecf8427e_Z17div0_namepace_resv}.8eb98b954d1902dd35b1783695fa021d_4" -> "div0_namepace_res{d41d8cd98f00b204e9800998ecf8427e_Z17div0_namepace_resv}.8eb98b954d1902dd35b1783695fa021d_3" ;
"div0_namepace_res{d41d8cd98f00b204e9800998ecf8427e_Z17div0_namepace_resv}.8eb98b954d1902dd35b1783695fa021d_3" [label="3: Return Stmt \n n$0=*&#GB<codetoanalyze/cpp/frontend/shared/namespace/global_variable.cpp>$f1::val:int [line 31]\n n$1=*&#GB<codetoanalyze/cpp/frontend/shared/namespace/global_variable.cpp>$f2::val:int [line 31]\n *&return:int=(1 / ((n$0 + n$1) + 1)) [line 31]\n " shape="box"]
"div0_namepace_res{d41d8cd98f00b204e9800998ecf8427e_Z17div0_namepace_resv}.8eb98b954d1902dd35b1783695fa021d_3" [label="3: Return Stmt \n n$0=*&#GB<codetoanalyze/cpp/shared/namespace/global_variable.cpp>$f1::val:int [line 31]\n n$1=*&#GB<codetoanalyze/cpp/shared/namespace/global_variable.cpp>$f2::val:int [line 31]\n *&return:int=(1 / ((n$0 + n$1) + 1)) [line 31]\n " shape="box"]
"div0_namepace_res{d41d8cd98f00b204e9800998ecf8427e_Z17div0_namepace_resv}.8eb98b954d1902dd35b1783695fa021d_3" -> "div0_namepace_res{d41d8cd98f00b204e9800998ecf8427e_Z17div0_namepace_resv}.8eb98b954d1902dd35b1783695fa021d_2" ;

@ -18,7 +18,7 @@ digraph iCFG {
"foo::Rectangle_Rectangle{_ZN3foo9RectangleC1Ev}.994e34698d49402781f481c8d7fa0e03_1" -> "foo::Rectangle_Rectangle{_ZN3foo9RectangleC1Ev}.994e34698d49402781f481c8d7fa0e03_2" ;
"__infer_globals_initializer_bar::rect.e5e9061ca63212fdc2fd329df6c073de_3" [label="3: DeclStmt \n _fun_bar::Rectangle_Rectangle(&#GB<codetoanalyze/cpp/frontend/shared/namespace/namespace.cpp|!pod>$bar::rect:class bar::Rectangle*) [line 38]\n " shape="box"]
"__infer_globals_initializer_bar::rect.e5e9061ca63212fdc2fd329df6c073de_3" [label="3: DeclStmt \n _fun_bar::Rectangle_Rectangle(&#GB<codetoanalyze/cpp/shared/namespace/namespace.cpp|!pod>$bar::rect:class bar::Rectangle*) [line 38]\n " shape="box"]
"__infer_globals_initializer_bar::rect.e5e9061ca63212fdc2fd329df6c073de_3" -> "__infer_globals_initializer_bar::rect.e5e9061ca63212fdc2fd329df6c073de_2" ;
@ -36,7 +36,7 @@ digraph iCFG {
"bar::Rectangle_Rectangle{_ZN3bar9RectangleC1Ev}.7f1dc038d9ffa5ed845a1ab3cd540788_1" -> "bar::Rectangle_Rectangle{_ZN3bar9RectangleC1Ev}.7f1dc038d9ffa5ed845a1ab3cd540788_2" ;
"bar::value{d41d8cd98f00b204e9800998ecf8427e_ZN3bar5valueEv}.d361dfc00f7d8608972ca0351bcfbf6c_3" [label="3: Return Stmt \n *&#GB<codetoanalyze/cpp/frontend/shared/namespace/namespace.cpp>$bar::pi:double=3.141600 [line 30]\n n$0=*&#GB<codetoanalyze/cpp/frontend/shared/namespace/namespace.cpp>$bar::pi:double [line 30]\n *&return:double=(2 * n$0) [line 30]\n " shape="box"]
"bar::value{d41d8cd98f00b204e9800998ecf8427e_ZN3bar5valueEv}.d361dfc00f7d8608972ca0351bcfbf6c_3" [label="3: Return Stmt \n *&#GB<codetoanalyze/cpp/shared/namespace/namespace.cpp>$bar::pi:double=3.141600 [line 30]\n n$0=*&#GB<codetoanalyze/cpp/shared/namespace/namespace.cpp>$bar::pi:double [line 30]\n *&return:double=(2 * n$0) [line 30]\n " shape="box"]
"bar::value{d41d8cd98f00b204e9800998ecf8427e_ZN3bar5valueEv}.d361dfc00f7d8608972ca0351bcfbf6c_3" -> "bar::value{d41d8cd98f00b204e9800998ecf8427e_ZN3bar5valueEv}.d361dfc00f7d8608972ca0351bcfbf6c_2" ;
@ -79,7 +79,7 @@ digraph iCFG {
"main.fad58de7366495db4650cfefac2fcd61_5" -> "main.fad58de7366495db4650cfefac2fcd61_4" ;
"main.fad58de7366495db4650cfefac2fcd61_4" [label="4: BinaryOperatorStmt: Assign \n *&#GB<codetoanalyze/cpp/frontend/shared/namespace/namespace.cpp>$bar::pi:double=3.141600 [line 57]\n n$0=*&#GB<codetoanalyze/cpp/frontend/shared/namespace/namespace.cpp>$bar::pi:double [line 57]\n *&j:double=n$0 [line 57]\n " shape="box"]
"main.fad58de7366495db4650cfefac2fcd61_4" [label="4: BinaryOperatorStmt: Assign \n *&#GB<codetoanalyze/cpp/shared/namespace/namespace.cpp>$bar::pi:double=3.141600 [line 57]\n n$0=*&#GB<codetoanalyze/cpp/shared/namespace/namespace.cpp>$bar::pi:double [line 57]\n *&j:double=n$0 [line 57]\n " shape="box"]
"main.fad58de7366495db4650cfefac2fcd61_4" -> "main.fad58de7366495db4650cfefac2fcd61_3" ;
@ -101,7 +101,7 @@ digraph iCFG {
"foo::my_record_{_ZN3foo9my_recordC1Ev}.1ae7127ddda2158b1422280789f801f9_1" -> "foo::my_record_{_ZN3foo9my_recordC1Ev}.1ae7127ddda2158b1422280789f801f9_2" ;
"__infer_globals_initializer_bar::pi.5a80e79e67d691b53e3a84f8d997acd8_3" [label="3: DeclStmt \n *&#GB<codetoanalyze/cpp/frontend/shared/namespace/namespace.cpp>$bar::pi:double=3.141600 [line 29]\n " shape="box"]
"__infer_globals_initializer_bar::pi.5a80e79e67d691b53e3a84f8d997acd8_3" [label="3: DeclStmt \n *&#GB<codetoanalyze/cpp/shared/namespace/namespace.cpp>$bar::pi:double=3.141600 [line 29]\n " shape="box"]
"__infer_globals_initializer_bar::pi.5a80e79e67d691b53e3a84f8d997acd8_3" -> "__infer_globals_initializer_bar::pi.5a80e79e67d691b53e3a84f8d997acd8_2" ;

@ -1,6 +1,6 @@
/* @generated */
digraph iCFG {
"__infer_globals_initializer_global.bdc08c089842ce08b974b22a75daf78e_3" [label="3: DeclStmt \n _fun_X_X(&#GB<codetoanalyze/cpp/frontend/shared/reference/member_access_from_return.cpp>$global:class X*) [line 15]\n " shape="box"]
"__infer_globals_initializer_global.bdc08c089842ce08b974b22a75daf78e_3" [label="3: DeclStmt \n _fun_X_X(&#GB<codetoanalyze/cpp/shared/reference/member_access_from_return.cpp>$global:class X*) [line 15]\n " shape="box"]
"__infer_globals_initializer_global.bdc08c089842ce08b974b22a75daf78e_3" -> "__infer_globals_initializer_global.bdc08c089842ce08b974b22a75daf78e_2" ;
@ -18,7 +18,7 @@ digraph iCFG {
"X_X{_ZN1XC1Ev}.dbc1390b15606562094682699e12caba_1" -> "X_X{_ZN1XC1Ev}.dbc1390b15606562094682699e12caba_2" ;
"get_ptr{d41d8cd98f00b204e9800998ecf8427e_Z7get_ptrv}.79c23fccc4af78490d3b790f3bfe4b4b_3" [label="3: Return Stmt \n *&return:class X*=&#GB<codetoanalyze/cpp/frontend/shared/reference/member_access_from_return.cpp>$global [line 16]\n " shape="box"]
"get_ptr{d41d8cd98f00b204e9800998ecf8427e_Z7get_ptrv}.79c23fccc4af78490d3b790f3bfe4b4b_3" [label="3: Return Stmt \n *&return:class X*=&#GB<codetoanalyze/cpp/shared/reference/member_access_from_return.cpp>$global [line 16]\n " shape="box"]
"get_ptr{d41d8cd98f00b204e9800998ecf8427e_Z7get_ptrv}.79c23fccc4af78490d3b790f3bfe4b4b_3" -> "get_ptr{d41d8cd98f00b204e9800998ecf8427e_Z7get_ptrv}.79c23fccc4af78490d3b790f3bfe4b4b_2" ;
@ -44,7 +44,7 @@ digraph iCFG {
"test_ref{d41d8cd98f00b204e9800998ecf8427e_Z8test_refv}.00ae903ec76106232cfb760d7c58e99e_1" -> "test_ref{d41d8cd98f00b204e9800998ecf8427e_Z8test_refv}.00ae903ec76106232cfb760d7c58e99e_4" ;
"get_ref{d41d8cd98f00b204e9800998ecf8427e_Z7get_refv}.bbbf241bd8d761aafd6f3adea16247b8_3" [label="3: Return Stmt \n *&return:class X&=&#GB<codetoanalyze/cpp/frontend/shared/reference/member_access_from_return.cpp>$global [line 17]\n " shape="box"]
"get_ref{d41d8cd98f00b204e9800998ecf8427e_Z7get_refv}.bbbf241bd8d761aafd6f3adea16247b8_3" [label="3: Return Stmt \n *&return:class X&=&#GB<codetoanalyze/cpp/shared/reference/member_access_from_return.cpp>$global [line 17]\n " shape="box"]
"get_ref{d41d8cd98f00b204e9800998ecf8427e_Z7get_refv}.bbbf241bd8d761aafd6f3adea16247b8_3" -> "get_ref{d41d8cd98f00b204e9800998ecf8427e_Z7get_refv}.bbbf241bd8d761aafd6f3adea16247b8_2" ;

@ -96,7 +96,7 @@ digraph iCFG {
"method_div0_ptr{d41d8cd98f00b204e9800998ecf8427e_Z15method_div0_ptrP1X}.f3e4b6dda73405cc6ef139c433f1be83_1" -> "method_div0_ptr{d41d8cd98f00b204e9800998ecf8427e_Z15method_div0_ptrP1X}.f3e4b6dda73405cc6ef139c433f1be83_5" ;
"method_div0_ptr{d41d8cd98f00b204e9800998ecf8427e_Z15method_div0_ptrP1X}.f3e4b6dda73405cc6ef139c433f1be83_1" -> "method_div0_ptr{d41d8cd98f00b204e9800998ecf8427e_Z15method_div0_ptrP1X}.f3e4b6dda73405cc6ef139c433f1be83_6" ;
"__infer_globals_initializer_global.bdc08c089842ce08b974b22a75daf78e_3" [label="3: DeclStmt \n _fun_X_X(&#GB<codetoanalyze/cpp/frontend/shared/reference/reference_struct_e2e.cpp>$global:class X*) [line 29]\n " shape="box"]
"__infer_globals_initializer_global.bdc08c089842ce08b974b22a75daf78e_3" [label="3: DeclStmt \n _fun_X_X(&#GB<codetoanalyze/cpp/shared/reference/reference_struct_e2e.cpp>$global:class X*) [line 29]\n " shape="box"]
"__infer_globals_initializer_global.bdc08c089842ce08b974b22a75daf78e_3" -> "__infer_globals_initializer_global.bdc08c089842ce08b974b22a75daf78e_2" ;
@ -137,7 +137,7 @@ digraph iCFG {
"get_global_ref_div1_field{d41d8cd98f00b204e9800998ecf8427e_Z25get_global_ref_div1_fieldv}.8607dfe596d93bdff8ef4771a2860768_1" -> "get_global_ref_div1_field{d41d8cd98f00b204e9800998ecf8427e_Z25get_global_ref_div1_fieldv}.8607dfe596d93bdff8ef4771a2860768_5" ;
"get_global_ref{d41d8cd98f00b204e9800998ecf8427e_Z14get_global_refv}.f4b7019d054deab282b87afe2627508e_3" [label="3: Return Stmt \n *&return:class X&=&#GB<codetoanalyze/cpp/frontend/shared/reference/reference_struct_e2e.cpp>$global [line 31]\n " shape="box"]
"get_global_ref{d41d8cd98f00b204e9800998ecf8427e_Z14get_global_refv}.f4b7019d054deab282b87afe2627508e_3" [label="3: Return Stmt \n *&return:class X&=&#GB<codetoanalyze/cpp/shared/reference/reference_struct_e2e.cpp>$global [line 31]\n " shape="box"]
"get_global_ref{d41d8cd98f00b204e9800998ecf8427e_Z14get_global_refv}.f4b7019d054deab282b87afe2627508e_3" -> "get_global_ref{d41d8cd98f00b204e9800998ecf8427e_Z14get_global_refv}.f4b7019d054deab282b87afe2627508e_2" ;
@ -236,7 +236,7 @@ digraph iCFG {
"method_div1_ptr{d41d8cd98f00b204e9800998ecf8427e_Z15method_div1_ptrP1X}.1c0e973f73df66029a031ece1247cb9b_1" -> "method_div1_ptr{d41d8cd98f00b204e9800998ecf8427e_Z15method_div1_ptrP1X}.1c0e973f73df66029a031ece1247cb9b_5" ;
"method_div1_ptr{d41d8cd98f00b204e9800998ecf8427e_Z15method_div1_ptrP1X}.1c0e973f73df66029a031ece1247cb9b_1" -> "method_div1_ptr{d41d8cd98f00b204e9800998ecf8427e_Z15method_div1_ptrP1X}.1c0e973f73df66029a031ece1247cb9b_6" ;
"get_global_ptr{d41d8cd98f00b204e9800998ecf8427e_Z14get_global_ptrv}.2c09171c0890ad0c015390a6138a2db9_3" [label="3: Return Stmt \n *&return:class X*=&#GB<codetoanalyze/cpp/frontend/shared/reference/reference_struct_e2e.cpp>$global [line 30]\n " shape="box"]
"get_global_ptr{d41d8cd98f00b204e9800998ecf8427e_Z14get_global_ptrv}.2c09171c0890ad0c015390a6138a2db9_3" [label="3: Return Stmt \n *&return:class X*=&#GB<codetoanalyze/cpp/shared/reference/reference_struct_e2e.cpp>$global [line 30]\n " shape="box"]
"get_global_ptr{d41d8cd98f00b204e9800998ecf8427e_Z14get_global_ptrv}.2c09171c0890ad0c015390a6138a2db9_3" -> "get_global_ptr{d41d8cd98f00b204e9800998ecf8427e_Z14get_global_ptrv}.2c09171c0890ad0c015390a6138a2db9_2" ;

@ -11,7 +11,7 @@ digraph iCFG {
"MyHasher_hash(_ZN8MyHasher4hashEi).eb9ae99d1fcb0f8714448f416948e011_1" -> "MyHasher_hash(_ZN8MyHasher4hashEi).eb9ae99d1fcb0f8714448f416948e011_3" ;
"__infer_globals_initializer_test.19c6153ea70b713d8d2a1a0fd4ae91e3_3" [label="3: DeclStmt \n *&0$?%__sil_tmpSIL_materialize_temp__n$0:int=0 [line 23]\n *&0$?%__sil_tmpSIL_materialize_temp__n$1:int=0 [line 23]\n *&0$?%__sil_tmpSIL_materialize_temp__n$2:int=0 [line 23]\n n$3=_fun_hash_combine_generic<MyHasher,_int,_int,_int>(&0$?%__sil_tmpSIL_materialize_temp__n$0:int&,&0$?%__sil_tmpSIL_materialize_temp__n$1:int&,&0$?%__sil_tmpSIL_materialize_temp__n$2:int&) [line 23]\n *&#GB<codetoanalyze/cpp/frontend/shared/templates/sizeof_pack.cpp>$test:int=n$3 [line 23]\n " shape="box"]
"__infer_globals_initializer_test.19c6153ea70b713d8d2a1a0fd4ae91e3_3" [label="3: DeclStmt \n *&0$?%__sil_tmpSIL_materialize_temp__n$0:int=0 [line 23]\n *&0$?%__sil_tmpSIL_materialize_temp__n$1:int=0 [line 23]\n *&0$?%__sil_tmpSIL_materialize_temp__n$2:int=0 [line 23]\n n$3=_fun_hash_combine_generic<MyHasher,_int,_int,_int>(&0$?%__sil_tmpSIL_materialize_temp__n$0:int&,&0$?%__sil_tmpSIL_materialize_temp__n$1:int&,&0$?%__sil_tmpSIL_materialize_temp__n$2:int&) [line 23]\n *&#GB<codetoanalyze/cpp/shared/templates/sizeof_pack.cpp>$test:int=n$3 [line 23]\n " shape="box"]
"__infer_globals_initializer_test.19c6153ea70b713d8d2a1a0fd4ae91e3_3" -> "__infer_globals_initializer_test.19c6153ea70b713d8d2a1a0fd4ae91e3_2" ;

@ -236,7 +236,7 @@ digraph iCFG {
"Employee_~Employee(_ZN6PersonD0Ev).74f3bba15ec35ceae1c235a49d9fbfbd_1" -> "Employee_~Employee(_ZN6PersonD0Ev).74f3bba15ec35ceae1c235a49d9fbfbd_2" ;
"__infer_globals_initializer_std::__1::__numeric_type<void>::value.57c383a785ca57f6432142c6cac8d773_3" [label="3: DeclStmt \n *&#GB<codetoanalyze/cpp/frontend/shared/types/typeid_expr.cpp>$std::__1::__numeric_type<void>::value:_Bool=1 [line 1697]\n " shape="box"]
"__infer_globals_initializer_std::__1::__numeric_type<void>::value.57c383a785ca57f6432142c6cac8d773_3" [label="3: DeclStmt \n *&#GB<codetoanalyze/cpp/shared/types/typeid_expr.cpp>$std::__1::__numeric_type<void>::value:_Bool=1 [line 1697]\n " shape="box"]
"__infer_globals_initializer_std::__1::__numeric_type<void>::value.57c383a785ca57f6432142c6cac8d773_3" -> "__infer_globals_initializer_std::__1::__numeric_type<void>::value.57c383a785ca57f6432142c6cac8d773_2" ;

@ -1,19 +1,53 @@
codetoanalyze/java/infer/ArrayOutOfBounds.java, int ArrayOutOfBounds.arrayOutOfBounds(), 2, java.lang.ArrayIndexOutOfBoundsException, [start of procedure arrayOutOfBounds(),Taking true branch,exception java.lang.ArrayIndexOutOfBoundsException,return from a call to int ArrayOutOfBounds.arrayOutOfBounds()]
codetoanalyze/java/infer/ClassCastExceptions.java, int ClassCastExceptions.classCastExceptionImplementsInterface(), 0, java.lang.ClassCastException, [start of procedure classCastExceptionImplementsInterface(),start of procedure AnotherImplementationOfInterface(),return from a call to AnotherImplementationOfInterface.<init>(),start of procedure classCastExceptionImplementsInterfaceCallee(...),exception java.lang.ClassCastException,return from a call to int ClassCastExceptions.classCastExceptionImplementsInterfaceCallee(AnotherImplementationOfInterface),exception java.lang.ClassCastException,return from a call to int ClassCastExceptions.classCastExceptionImplementsInterface()]
codetoanalyze/java/infer/ClassCastExceptions.java, void ClassCastExceptions.classCastException(), 3, java.lang.ClassCastException, [start of procedure classCastException(),start of procedure SubClassA(),start of procedure SuperClass(),return from a call to SuperClass.<init>(),return from a call to SubClassA.<init>(),exception java.lang.ClassCastException,return from a call to void ClassCastExceptions.classCastException()]
codetoanalyze/java/infer/ClassCastExceptions.java, void ClassCastExceptions.openHttpURLConnection(), 4, java.lang.ClassCastException, [start of procedure openHttpURLConnection(),start of procedure getURL(),return from a call to String ClassCastExceptions.getURL(),Taking true branch,exception java.lang.ClassCastException,return from a call to void ClassCastExceptions.openHttpURLConnection()]
codetoanalyze/java/infer/CloseableAsResourceExample.java, T CloseableAsResourceExample.sourceOfNullWithResourceLeak(), 1, RESOURCE_LEAK, [start of procedure sourceOfNullWithResourceLeak(),start of procedure SomeResource(),return from a call to SomeResource.<init>()]
codetoanalyze/java/infer/CloseableAsResourceExample.java, void CloseableAsResourceExample.failToCloseWithCloseQuietly(), 5, RESOURCE_LEAK, [start of procedure failToCloseWithCloseQuietly(),start of procedure SomeResource(),return from a call to SomeResource.<init>(),Taking true branch,start of procedure doSomething(),Taking true branch,start of procedure LocalException(),return from a call to LocalException.<init>(),Taking true branch,exception codetoanalyze.java.infer.LocalException,return from a call to void SomeResource.doSomething()]
codetoanalyze/java/infer/CloseableAsResourceExample.java, void CloseableAsResourceExample.leakFoundWhenIndirectlyImplementingCloseable(), 1, RESOURCE_LEAK, [start of procedure leakFoundWhenIndirectlyImplementingCloseable(),start of procedure CloseableAsResourceExample$MyResource(...),return from a call to CloseableAsResourceExample$MyResource.<init>(CloseableAsResourceExample)]
codetoanalyze/java/infer/CloseableAsResourceExample.java, void CloseableAsResourceExample.notClosingCloseable(), 1, RESOURCE_LEAK, [start of procedure notClosingCloseable(),start of procedure SomeResource(),return from a call to SomeResource.<init>()]
codetoanalyze/java/infer/CloseableAsResourceExample.java, void CloseableAsResourceExample.notClosingWrapper(), 2, RESOURCE_LEAK, [start of procedure notClosingWrapper(),start of procedure Resource(),return from a call to Resource.<init>(),start of procedure Sub(...),start of procedure Wrapper(...),return from a call to Wrapper.<init>(Resource),return from a call to Sub.<init>(Resource),Taking true branch,Taking true branch,start of procedure close(),return from a call to void Resource.close()]
codetoanalyze/java/infer/CloseableAsResourceExample.java, void CloseableAsResourceExample.skippedVritualCallDoesNotCloseResourceOnReceiver(), 2, RESOURCE_LEAK, [start of procedure skippedVritualCallDoesNotCloseResourceOnReceiver(),start of procedure SomeResource(),return from a call to SomeResource.<init>(),Taking true branch]
codetoanalyze/java/infer/CloseableAsResourceExample.java, void CloseableAsResourceExample.withException(), 4, RESOURCE_LEAK, [start of procedure withException(),start of procedure SomeResource(),return from a call to SomeResource.<init>(),Taking true branch,start of procedure doSomething(),Taking true branch,start of procedure LocalException(),return from a call to LocalException.<init>(),Taking true branch,exception codetoanalyze.java.infer.LocalException,return from a call to void SomeResource.doSomething()]
codetoanalyze/java/infer/NullPointerExceptions.java, String NullPointerExceptions.testSystemGetPropertyArgument(), 1, NULL_DEREFERENCE, [start of procedure testSystemGetPropertyArgument()]
codetoanalyze/java/infer/NullPointerExceptions.java, int NullPointerExceptions.nullListFiles(String), 3, java.lang.NullPointerException, [start of procedure nullListFiles(...),Taking true branch,exception java.lang.NullPointerException,return from a call to int NullPointerExceptions.nullListFiles(String)]
codetoanalyze/java/infer/NullPointerExceptions.java, int NullPointerExceptions.nullPointerException(), 2, java.lang.NullPointerException, [start of procedure nullPointerException(),exception java.lang.NullPointerException,return from a call to int NullPointerExceptions.nullPointerException()]
codetoanalyze/java/infer/NullPointerExceptions.java, int NullPointerExceptions.nullPointerExceptionInterProc(), 2, java.lang.NullPointerException, [start of procedure nullPointerExceptionInterProc(),start of procedure canReturnNullObject(...),start of procedure NullPointerExceptions$A(...),return from a call to NullPointerExceptions$A.<init>(NullPointerExceptions),Taking false branch,return from a call to NullPointerExceptions$A NullPointerExceptions.canReturnNullObject(boolean),exception java.lang.NullPointerException,return from a call to int NullPointerExceptions.nullPointerExceptionInterProc()]
codetoanalyze/java/infer/NullPointerExceptions.java, int NullPointerExceptions.nullPointerExceptionWithAChainOfFields(NullPointerExceptions$C), 2, java.lang.NullPointerException, [start of procedure nullPointerExceptionWithAChainOfFields(...),start of procedure NullPointerExceptions$B(...),return from a call to NullPointerExceptions$B.<init>(NullPointerExceptions),Taking true branch,Taking true branch,Taking true branch,exception java.lang.NullPointerException,return from a call to int NullPointerExceptions.nullPointerExceptionWithAChainOfFields(NullPointerExceptions$C)]
codetoanalyze/java/infer/NullPointerExceptions.java, int NullPointerExceptions.nullPointerExceptionWithAChainOfFields(NullPointerExceptions$C), 2, java.lang.NullPointerException, [start of procedure nullPointerExceptionWithAChainOfFields(...),start of procedure NullPointerExceptions$B(...),return from a call to NullPointerExceptions$B.<init>(NullPointerExceptions),Taking true branch,Taking true branch,Taking true branch,exception java.lang.NullPointerException,return from a call to int NullPointerExceptions.nullPointerExceptionWithAChainOfFields(NullPointerExceptions$C)]
codetoanalyze/java/infer/NullPointerExceptions.java, int NullPointerExceptions.nullPointerExceptionWithArray(), 3, java.lang.NullPointerException, [start of procedure nullPointerExceptionWithArray(),Taking true branch,Taking true branch,Taking true branch,Taking true branch,exception java.lang.NullPointerException,return from a call to int NullPointerExceptions.nullPointerExceptionWithArray()]
codetoanalyze/java/infer/NullPointerExceptions.java, int NullPointerExceptions.nullPointerExceptionWithExceptionHandling(boolean), 5, java.lang.NullPointerException, [start of procedure nullPointerExceptionWithExceptionHandling(...),Taking true branch,exception java.lang.Exception,Switch condition is true. Entering switch case,exception java.lang.NullPointerException,return from a call to int NullPointerExceptions.nullPointerExceptionWithExceptionHandling(boolean)]
codetoanalyze/java/infer/NullPointerExceptions.java, int NullPointerExceptions.preconditionCheckStateTest(NullPointerExceptions$D), 1, PRECONDITION_NOT_MET, [start of procedure preconditionCheckStateTest(...),Taking false branch]
codetoanalyze/java/infer/NullPointerExceptions.java, void NullPointerExceptions$$$Class$Name$With$Dollars.npeWithDollars(), 3, java.lang.NullPointerException, [start of procedure npeWithDollars(),exception java.lang.NullPointerException,return from a call to void NullPointerExceptions$$$Class$Name$With$Dollars.npeWithDollars()]
codetoanalyze/java/infer/NullPointerExceptions.java, void NullPointerExceptions.badCheckShouldCauseNPE(), 2, java.lang.NullPointerException, [start of procedure badCheckShouldCauseNPE(),start of procedure getBool(),Taking false branch,return from a call to Boolean NullPointerExceptions.getBool(),Taking false branch,return from a call to void NullPointerExceptions.badCheckShouldCauseNPE()]
codetoanalyze/java/infer/NullPointerExceptions.java, void NullPointerExceptions.derefNonThisGetterAfterCheckShouldNotCauseNPE(), 5, java.lang.NullPointerException, [start of procedure derefNonThisGetterAfterCheckShouldNotCauseNPE(),start of procedure NullPointerExceptions(),return from a call to NullPointerExceptions.<init>(),Taking true branch,start of procedure getObj(),Taking false branch,return from a call to Object NullPointerExceptions.getObj(),Taking false branch,return from a call to void NullPointerExceptions.derefNonThisGetterAfterCheckShouldNotCauseNPE()]
codetoanalyze/java/infer/NullPointerExceptions.java, void NullPointerExceptions.derefNull(), 3, java.lang.NullPointerException, [start of procedure derefNull(),start of procedure derefUndefinedCallee(),start of procedure retUndefined(),Taking true branch,return from a call to Object NullPointerExceptions.retUndefined(),Taking true branch,return from a call to Object NullPointerExceptions.derefUndefinedCallee(),exception java.lang.NullPointerException,return from a call to void NullPointerExceptions.derefNull()]
codetoanalyze/java/infer/NullPointerExceptions.java, void NullPointerExceptions.derefUndefNullableRetWrapper(), 2, java.lang.NullPointerException, [start of procedure derefUndefNullableRetWrapper(),start of procedure undefNullableWrapper(),return from a call to Object NullPointerExceptions.undefNullableWrapper(),Taking true branch,return from a call to void NullPointerExceptions.derefUndefNullableRetWrapper()]
codetoanalyze/java/infer/NullPointerExceptions.java, void NullPointerExceptions.dereferenceAfterLoopOnList(NullPointerExceptions$L), 3, java.lang.NullPointerException, [start of procedure dereferenceAfterLoopOnList(...),start of procedure returnsNullAfterLoopOnList(...),Taking true branch,Taking true branch,Taking true branch,Taking true branch,Taking false branch,return from a call to Object NullPointerExceptions.returnsNullAfterLoopOnList(NullPointerExceptions$L),exception java.lang.NullPointerException,return from a call to void NullPointerExceptions.dereferenceAfterLoopOnList(NullPointerExceptions$L)]
codetoanalyze/java/infer/NullPointerExceptions.java, void NullPointerExceptions.dereferenceAfterLoopOnList(NullPointerExceptions$L), 3, java.lang.NullPointerException, [start of procedure dereferenceAfterLoopOnList(...),start of procedure returnsNullAfterLoopOnList(...),Taking true branch,Taking true branch,Taking true branch,Taking true branch,Taking false branch,return from a call to Object NullPointerExceptions.returnsNullAfterLoopOnList(NullPointerExceptions$L),exception java.lang.NullPointerException,return from a call to void NullPointerExceptions.dereferenceAfterLoopOnList(NullPointerExceptions$L)]
codetoanalyze/java/infer/NullPointerExceptions.java, void NullPointerExceptions.dereferenceAfterUnlock1(Lock), 5, java.lang.NullPointerException, [start of procedure dereferenceAfterUnlock1(...),Taking true branch,Taking true branch,exception java.lang.NullPointerException,return from a call to void NullPointerExceptions.dereferenceAfterUnlock1(Lock)]
codetoanalyze/java/infer/NullPointerExceptions.java, void NullPointerExceptions.dereferenceAfterUnlock1(Lock), 5, java.lang.NullPointerException, [start of procedure dereferenceAfterUnlock1(...),Taking true branch,Taking true branch,exception java.lang.NullPointerException,return from a call to void NullPointerExceptions.dereferenceAfterUnlock1(Lock)]
codetoanalyze/java/infer/NullPointerExceptions.java, void NullPointerExceptions.dereferenceAfterUnlock2(Lock), 7, java.lang.NullPointerException, [start of procedure dereferenceAfterUnlock2(...),Taking true branch,Taking true branch,Taking true branch,exception java.lang.NullPointerException,return from a call to void NullPointerExceptions.dereferenceAfterUnlock2(Lock)]
codetoanalyze/java/infer/NullPointerExceptions.java, void NullPointerExceptions.dereferenceAfterUnlock2(Lock), 7, java.lang.NullPointerException, [start of procedure dereferenceAfterUnlock2(...),Taking true branch,Taking true branch,Taking true branch,exception java.lang.NullPointerException,return from a call to void NullPointerExceptions.dereferenceAfterUnlock2(Lock)]
codetoanalyze/java/infer/NullPointerExceptions.java, void NullPointerExceptions.noNullPointerExceptionAfterSkipFunction(), 4, RETURN_VALUE_IGNORED, [start of procedure noNullPointerExceptionAfterSkipFunction(),Taking true branch,start of procedure genericMethodSomewhereCheckingForNull(...),Taking false branch,return from a call to void NullPointerExceptions.genericMethodSomewhereCheckingForNull(String),Taking true branch]
codetoanalyze/java/infer/NullPointerExceptions.java, void NullPointerExceptions.nullPointerExceptionArrayLength(), 3, java.lang.NullPointerException, [start of procedure nullPointerExceptionArrayLength(),exception java.lang.NullPointerException,return from a call to void NullPointerExceptions.nullPointerExceptionArrayLength()]
codetoanalyze/java/infer/NullPointerExceptions.java, void NullPointerExceptions.nullPointerExceptionCallArrayReadMethod(), 3, java.lang.NullPointerException, [start of procedure nullPointerExceptionCallArrayReadMethod(),Taking true branch,Taking true branch,start of procedure arrayReadShouldNotCauseSymexMemoryError(...),Taking true branch,Taking true branch,Taking true branch,return from a call to Object NullPointerExceptions.arrayReadShouldNotCauseSymexMemoryError(int),exception java.lang.NullPointerException,return from a call to void NullPointerExceptions.nullPointerExceptionCallArrayReadMethod()]
codetoanalyze/java/infer/NullPointerExceptions.java, void NullPointerExceptions.nullPointerExceptionCallArrayReadMethod(), 3, java.lang.NullPointerException, [start of procedure nullPointerExceptionCallArrayReadMethod(),Taking true branch,Taking true branch,start of procedure arrayReadShouldNotCauseSymexMemoryError(...),Taking true branch,Taking true branch,Taking true branch,return from a call to Object NullPointerExceptions.arrayReadShouldNotCauseSymexMemoryError(int),exception java.lang.NullPointerException,return from a call to void NullPointerExceptions.nullPointerExceptionCallArrayReadMethod()]
codetoanalyze/java/infer/NullPointerExceptions.java, void NullPointerExceptions.nullPointerExceptionFromFailingFileOutputStreamConstructor(), 9, java.lang.NullPointerException, [start of procedure nullPointerExceptionFromFailingFileOutputStreamConstructor(),Taking true branch,return from a call to void NullPointerExceptions.nullPointerExceptionFromFailingFileOutputStreamConstructor()]
codetoanalyze/java/infer/NullPointerExceptions.java, void NullPointerExceptions.nullPointerExceptionFromFaillingResourceConstructor(), 8, java.lang.NullPointerException, [start of procedure nullPointerExceptionFromFaillingResourceConstructor(),Taking true branch,return from a call to void NullPointerExceptions.nullPointerExceptionFromFaillingResourceConstructor()]
codetoanalyze/java/infer/NullPointerExceptions.java, void NullPointerExceptions.nullPointerExceptionUnlessFrameFails(), 6, java.lang.NullPointerException, [start of procedure nullPointerExceptionUnlessFrameFails(),start of procedure NullPointerExceptions$A(...),return from a call to NullPointerExceptions$A.<init>(NullPointerExceptions),start of procedure frame(...),start of procedure id_generics(...),Taking true branch,return from a call to Object NullPointerExceptions.id_generics(NullPointerExceptions$A),Taking true branch,return from a call to NullPointerExceptions$A NullPointerExceptions.frame(NullPointerExceptions$A),Taking true branch,exception java.lang.NullPointerException,return from a call to void NullPointerExceptions.nullPointerExceptionUnlessFrameFails()]
codetoanalyze/java/infer/NullPointerExceptions.java, void NullPointerExceptions.nullPointerExceptionWithNullArrayParameter(), 2, java.lang.NullPointerException, [start of procedure nullPointerExceptionWithNullArrayParameter(),start of procedure expectNotNullArrayParameter(...),exception java.lang.NullPointerException,return from a call to void NullPointerExceptions.expectNotNullArrayParameter(codetoanalyze.java.infer.NullPointerExceptions$A[]),exception java.lang.NullPointerException,return from a call to void NullPointerExceptions.nullPointerExceptionWithNullArrayParameter()]
codetoanalyze/java/infer/NullPointerExceptions.java, void NullPointerExceptions.nullPointerExceptionWithNullObjectParameter(), 2, java.lang.NullPointerException, [start of procedure nullPointerExceptionWithNullObjectParameter(),start of procedure expectNotNullObjectParameter(...),exception java.lang.NullPointerException,return from a call to void NullPointerExceptions.expectNotNullObjectParameter(NullPointerExceptions$A),exception java.lang.NullPointerException,return from a call to void NullPointerExceptions.nullPointerExceptionWithNullObjectParameter()]
codetoanalyze/java/infer/NullPointerExceptions.java, void NullPointerExceptions.nullableNonNullStringAfterTextUtilsIsEmptyCheckShouldNotCauseNPE(String), 2, RETURN_VALUE_IGNORED, [start of procedure nullableNonNullStringAfterTextUtilsIsEmptyCheckShouldNotCauseNPE(...),Taking true branch,Taking true branch]
codetoanalyze/java/infer/NullPointerExceptions.java, void NullPointerExceptions.someNPEAfterResourceLeak(), 3, java.lang.NullPointerException, [start of procedure someNPEAfterResourceLeak(),start of procedure sourceOfNullWithResourceLeak(),start of procedure SomeResource(),return from a call to SomeResource.<init>(),return from a call to T CloseableAsResourceExample.sourceOfNullWithResourceLeak(),exception java.lang.NullPointerException,return from a call to void NullPointerExceptions.someNPEAfterResourceLeak()]
codetoanalyze/java/infer/NullPointerExceptions.java, void NullPointerExceptions.stringConstantEqualsFalseNotNPE_FP(), 11, java.lang.NullPointerException, [start of procedure stringConstantEqualsFalseNotNPE_FP(),Taking true branch,Taking true branch,Taking true branch,return from a call to void NullPointerExceptions.stringConstantEqualsFalseNotNPE_FP()]
codetoanalyze/java/infer/NullPointerExceptions.java, void NullPointerExceptions.testSystemGetPropertyReturn(), 2, RETURN_VALUE_IGNORED, [start of procedure testSystemGetPropertyReturn(),Taking true branch]
codetoanalyze/java/infer/NullPointerExceptions.java, void NullPointerExceptions.testSystemGetPropertyReturn(), 3, java.lang.NullPointerException, [start of procedure testSystemGetPropertyReturn(),Taking true branch,return from a call to void NullPointerExceptions.testSystemGetPropertyReturn()]
codetoanalyze/java/tracing/ArrayIndexOutOfBoundsExceptionExample.java, void ArrayIndexOutOfBoundsExceptionExample.arrayIndexOutOfBoundsInCallee(), 3, java.lang.ArrayIndexOutOfBoundsException, [start of procedure arrayIndexOutOfBoundsInCallee(),start of procedure withFixedIndex(...),start of procedure callMethodFromArray(...),Taking true branch,Taking true branch,Taking true branch,Taking true branch,Taking true branch,Taking true branch,start of procedure f(),return from a call to void T2.f(),return from a call to void ArrayIndexOutOfBoundsExceptionExample.callMethodFromArray(codetoanalyze.java.tracing.T2[],int),return from a call to void ArrayIndexOutOfBoundsExceptionExample.withFixedIndex(codetoanalyze.java.tracing.T2[]),return from a call to void ArrayIndexOutOfBoundsExceptionExample.arrayIndexOutOfBoundsInCallee()]
codetoanalyze/java/tracing/ArrayIndexOutOfBoundsExceptionExample.java, void ArrayIndexOutOfBoundsExceptionExample.callOutOfBound(), 3, java.lang.ArrayIndexOutOfBoundsException, [start of procedure callOutOfBound(),start of procedure callMethodFromArray(...),Taking true branch,exception java.lang.ArrayIndexOutOfBoundsException,return from a call to void ArrayIndexOutOfBoundsExceptionExample.callMethodFromArray(codetoanalyze.java.tracing.T2[],int),exception java.lang.ArrayIndexOutOfBoundsException,return from a call to void ArrayIndexOutOfBoundsExceptionExample.callOutOfBound()]
codetoanalyze/java/tracing/ArrayIndexOutOfBoundsExceptionExample.java, void ArrayIndexOutOfBoundsExceptionExample.missingCheckOnIndex(codetoanalyze.java.tracing.T2[],int), 6, java.lang.ArrayIndexOutOfBoundsException, [start of procedure missingCheckOnIndex(...),Taking true branch,Taking true branch,Taking true branch,start of procedure callMethodFromArray(...),Taking true branch,exception java.lang.ArrayIndexOutOfBoundsException,return from a call to void ArrayIndexOutOfBoundsExceptionExample.callMethodFromArray(codetoanalyze.java.tracing.T2[],int),exception java.lang.ArrayIndexOutOfBoundsException,return from a call to void ArrayIndexOutOfBoundsExceptionExample.missingCheckOnIndex(codetoanalyze.java.tracing.T2[],int)]
codetoanalyze/java/tracing/ArrayOutOfBounds.java, int ArrayOutOfBounds.arrayOutOfBounds(), 2, java.lang.ArrayIndexOutOfBoundsException, [start of procedure arrayOutOfBounds(),Taking true branch,exception java.lang.ArrayIndexOutOfBoundsException,return from a call to int ArrayOutOfBounds.arrayOutOfBounds()]
codetoanalyze/java/tracing/ClassCastExceptionExample.java, S ClassCastExceptionExample.bar(int), 4, java.lang.ClassCastException, [start of procedure bar(...),Taking true branch,Taking true branch,exception java.lang.ClassCastException,return from a call to S ClassCastExceptionExample.bar(int)]
codetoanalyze/java/tracing/ClassCastExceptionExample.java, void ClassCastExceptionExample.foo(), 4, java.lang.ClassCastException, [start of procedure foo(),start of procedure T2(),return from a call to T2.<init>(),start of procedure cast(...),exception java.lang.ClassCastException,return from a call to S ClassCastExceptionExample.cast(T2),exception java.lang.ClassCastException,return from a call to void ClassCastExceptionExample.foo()]
codetoanalyze/java/tracing/ClassCastExceptions.java, int ClassCastExceptions.classCastExceptionImplementsInterface(), 0, java.lang.ClassCastException, [start of procedure classCastExceptionImplementsInterface(),start of procedure AnotherImplementationOfInterface(),return from a call to AnotherImplementationOfInterface.<init>(),start of procedure classCastExceptionImplementsInterfaceCallee(...),exception java.lang.ClassCastException,return from a call to int ClassCastExceptions.classCastExceptionImplementsInterfaceCallee(AnotherImplementationOfInterface),exception java.lang.ClassCastException,return from a call to int ClassCastExceptions.classCastExceptionImplementsInterface()]
codetoanalyze/java/tracing/ClassCastExceptions.java, void ClassCastExceptions.classCastException(), 3, java.lang.ClassCastException, [start of procedure classCastException(),start of procedure SubClassA(),start of procedure SuperClass(),return from a call to SuperClass.<init>(),return from a call to SubClassA.<init>(),exception java.lang.ClassCastException,return from a call to void ClassCastExceptions.classCastException()]
codetoanalyze/java/tracing/ClassCastExceptions.java, void ClassCastExceptions.openHttpURLConnection(), 4, java.lang.ClassCastException, [start of procedure openHttpURLConnection(),start of procedure getURL(),return from a call to String ClassCastExceptions.getURL(),Taking true branch,exception java.lang.ClassCastException,return from a call to void ClassCastExceptions.openHttpURLConnection()]
codetoanalyze/java/tracing/CloseableAsResourceExample.java, T CloseableAsResourceExample.sourceOfNullWithResourceLeak(), 1, RESOURCE_LEAK, [start of procedure sourceOfNullWithResourceLeak(),start of procedure SomeResource(),return from a call to SomeResource.<init>()]
codetoanalyze/java/tracing/CloseableAsResourceExample.java, void CloseableAsResourceExample.failToCloseWithCloseQuietly(), 5, RESOURCE_LEAK, [start of procedure failToCloseWithCloseQuietly(),start of procedure SomeResource(),return from a call to SomeResource.<init>(),Taking true branch,start of procedure doSomething(),Taking true branch,start of procedure LocalException(),return from a call to LocalException.<init>(),Taking true branch,exception codetoanalyze.java.infer.LocalException,return from a call to void SomeResource.doSomething()]
codetoanalyze/java/tracing/CloseableAsResourceExample.java, void CloseableAsResourceExample.leakFoundWhenIndirectlyImplementingCloseable(), 1, RESOURCE_LEAK, [start of procedure leakFoundWhenIndirectlyImplementingCloseable(),start of procedure CloseableAsResourceExample$MyResource(...),return from a call to CloseableAsResourceExample$MyResource.<init>(CloseableAsResourceExample)]
codetoanalyze/java/tracing/CloseableAsResourceExample.java, void CloseableAsResourceExample.notClosingCloseable(), 1, RESOURCE_LEAK, [start of procedure notClosingCloseable(),start of procedure SomeResource(),return from a call to SomeResource.<init>()]
codetoanalyze/java/tracing/CloseableAsResourceExample.java, void CloseableAsResourceExample.notClosingWrapper(), 2, RESOURCE_LEAK, [start of procedure notClosingWrapper(),start of procedure Resource(),return from a call to Resource.<init>(),start of procedure Sub(...),start of procedure Wrapper(...),return from a call to Wrapper.<init>(Resource),return from a call to Sub.<init>(Resource),Taking true branch,Taking true branch,start of procedure close(),return from a call to void Resource.close()]
codetoanalyze/java/tracing/CloseableAsResourceExample.java, void CloseableAsResourceExample.skippedVritualCallDoesNotCloseResourceOnReceiver(), 2, RESOURCE_LEAK, [start of procedure skippedVritualCallDoesNotCloseResourceOnReceiver(),start of procedure SomeResource(),return from a call to SomeResource.<init>(),Taking true branch]
codetoanalyze/java/tracing/CloseableAsResourceExample.java, void CloseableAsResourceExample.withException(), 4, RESOURCE_LEAK, [start of procedure withException(),start of procedure SomeResource(),return from a call to SomeResource.<init>(),Taking true branch,start of procedure doSomething(),Taking true branch,start of procedure LocalException(),return from a call to LocalException.<init>(),Taking true branch,exception codetoanalyze.java.infer.LocalException,return from a call to void SomeResource.doSomething()]
codetoanalyze/java/tracing/LazyDynamicDispatchExample.java, void LazyDynamicDispatchExample.callWithSubtype(), 3, java.lang.NullPointerException, [start of procedure callWithSubtype(),start of procedure B(),start of procedure A(),return from a call to A.<init>(),return from a call to B.<init>(),start of procedure fromSupertype(...),Taking true branch,start of procedure get(),return from a call to T2 B.get(),return from a call to T2 LazyDynamicDispatchExample.fromSupertype(B),exception java.lang.NullPointerException,return from a call to void LazyDynamicDispatchExample.callWithSubtype()]
codetoanalyze/java/tracing/LazyDynamicDispatchExample.java, void LazyDynamicDispatchExample.shouldReportLocalVarTypeIsKnown(), 3, java.lang.NullPointerException, [start of procedure shouldReportLocalVarTypeIsKnown(),start of procedure B(),start of procedure A(),return from a call to A.<init>(),return from a call to B.<init>(),start of procedure fromInterface(...),Taking true branch,start of procedure get(),return from a call to T2 B.get(),return from a call to T2 LazyDynamicDispatchExample.fromInterface(B),exception java.lang.NullPointerException,return from a call to void LazyDynamicDispatchExample.shouldReportLocalVarTypeIsKnown()]
codetoanalyze/java/tracing/LocallyDefinedExceptionExample.java, void LocallyDefinedExceptionExample.fieldInvariant(), 8, codetoanalyze.java.tracing.LocallyDefinedException, [start of procedure fieldInvariant(),Taking true branch,Taking true branch,Taking true branch,start of procedure LocallyDefinedException(...),return from a call to LocallyDefinedException.<init>(String),Taking true branch,exception codetoanalyze.java.tracing.LocallyDefinedException,return from a call to void LocallyDefinedExceptionExample.fieldInvariant()]
@ -21,40 +55,6 @@ codetoanalyze/java/tracing/NullPointerExceptionExample.java, void NullPointerExc
codetoanalyze/java/tracing/NullPointerExceptionExample.java, void NullPointerExceptionExample.callLeadToNpe(), 2, java.lang.NullPointerException, [start of procedure callLeadToNpe(),start of procedure callDeref(...),Taking true branch,start of procedure deref(...),exception java.lang.NullPointerException,return from a call to void NullPointerExceptionExample.deref(T2),exception java.lang.NullPointerException,return from a call to void NullPointerExceptionExample.callDeref(T2,boolean),exception java.lang.NullPointerException,return from a call to void NullPointerExceptionExample.callLeadToNpe()]
codetoanalyze/java/tracing/NullPointerExceptionExample.java, void NullPointerExceptionExample.npeOnBothBranches(int), 6, java.lang.NullPointerException, [start of procedure npeOnBothBranches(...),Taking true branch,Taking true branch,Taking true branch,start of procedure callDeref(...),Taking true branch,start of procedure deref(...),exception java.lang.NullPointerException,return from a call to void NullPointerExceptionExample.deref(T2),exception java.lang.NullPointerException,return from a call to void NullPointerExceptionExample.callDeref(T2,boolean),exception java.lang.NullPointerException,return from a call to void NullPointerExceptionExample.npeOnBothBranches(int)]
codetoanalyze/java/tracing/NullPointerExceptionExample.java, void NullPointerExceptionExample.npeOnBothBranches(int), 6, java.lang.NullPointerException, [start of procedure npeOnBothBranches(...),Taking true branch,Taking true branch,Taking true branch,start of procedure callDeref(...),Taking true branch,start of procedure deref(...),exception java.lang.NullPointerException,return from a call to void NullPointerExceptionExample.deref(T2),exception java.lang.NullPointerException,return from a call to void NullPointerExceptionExample.callDeref(T2,boolean),exception java.lang.NullPointerException,return from a call to void NullPointerExceptionExample.npeOnBothBranches(int)]
codetoanalyze/java/tracing/NullPointerExceptions.java, String NullPointerExceptions.testSystemGetPropertyArgument(), 1, NULL_DEREFERENCE, [start of procedure testSystemGetPropertyArgument()]
codetoanalyze/java/tracing/NullPointerExceptions.java, int NullPointerExceptions.nullListFiles(String), 3, java.lang.NullPointerException, [start of procedure nullListFiles(...),Taking true branch,exception java.lang.NullPointerException,return from a call to int NullPointerExceptions.nullListFiles(String)]
codetoanalyze/java/tracing/NullPointerExceptions.java, int NullPointerExceptions.nullPointerException(), 2, java.lang.NullPointerException, [start of procedure nullPointerException(),exception java.lang.NullPointerException,return from a call to int NullPointerExceptions.nullPointerException()]
codetoanalyze/java/tracing/NullPointerExceptions.java, int NullPointerExceptions.nullPointerExceptionInterProc(), 2, java.lang.NullPointerException, [start of procedure nullPointerExceptionInterProc(),start of procedure canReturnNullObject(...),start of procedure NullPointerExceptions$A(...),return from a call to NullPointerExceptions$A.<init>(NullPointerExceptions),Taking false branch,return from a call to NullPointerExceptions$A NullPointerExceptions.canReturnNullObject(boolean),exception java.lang.NullPointerException,return from a call to int NullPointerExceptions.nullPointerExceptionInterProc()]
codetoanalyze/java/tracing/NullPointerExceptions.java, int NullPointerExceptions.nullPointerExceptionWithAChainOfFields(NullPointerExceptions$C), 2, java.lang.NullPointerException, [start of procedure nullPointerExceptionWithAChainOfFields(...),start of procedure NullPointerExceptions$B(...),return from a call to NullPointerExceptions$B.<init>(NullPointerExceptions),Taking true branch,Taking true branch,Taking true branch,exception java.lang.NullPointerException,return from a call to int NullPointerExceptions.nullPointerExceptionWithAChainOfFields(NullPointerExceptions$C)]
codetoanalyze/java/tracing/NullPointerExceptions.java, int NullPointerExceptions.nullPointerExceptionWithAChainOfFields(NullPointerExceptions$C), 2, java.lang.NullPointerException, [start of procedure nullPointerExceptionWithAChainOfFields(...),start of procedure NullPointerExceptions$B(...),return from a call to NullPointerExceptions$B.<init>(NullPointerExceptions),Taking true branch,Taking true branch,Taking true branch,exception java.lang.NullPointerException,return from a call to int NullPointerExceptions.nullPointerExceptionWithAChainOfFields(NullPointerExceptions$C)]
codetoanalyze/java/tracing/NullPointerExceptions.java, int NullPointerExceptions.nullPointerExceptionWithArray(), 3, java.lang.NullPointerException, [start of procedure nullPointerExceptionWithArray(),Taking true branch,Taking true branch,Taking true branch,Taking true branch,exception java.lang.NullPointerException,return from a call to int NullPointerExceptions.nullPointerExceptionWithArray()]
codetoanalyze/java/tracing/NullPointerExceptions.java, int NullPointerExceptions.nullPointerExceptionWithExceptionHandling(boolean), 5, java.lang.NullPointerException, [start of procedure nullPointerExceptionWithExceptionHandling(...),Taking true branch,exception java.lang.Exception,Switch condition is true. Entering switch case,exception java.lang.NullPointerException,return from a call to int NullPointerExceptions.nullPointerExceptionWithExceptionHandling(boolean)]
codetoanalyze/java/tracing/NullPointerExceptions.java, int NullPointerExceptions.preconditionCheckStateTest(NullPointerExceptions$D), 1, PRECONDITION_NOT_MET, [start of procedure preconditionCheckStateTest(...),Taking false branch]
codetoanalyze/java/tracing/NullPointerExceptions.java, void NullPointerExceptions$$$Class$Name$With$Dollars.npeWithDollars(), 3, java.lang.NullPointerException, [start of procedure npeWithDollars(),exception java.lang.NullPointerException,return from a call to void NullPointerExceptions$$$Class$Name$With$Dollars.npeWithDollars()]
codetoanalyze/java/tracing/NullPointerExceptions.java, void NullPointerExceptions.badCheckShouldCauseNPE(), 2, java.lang.NullPointerException, [start of procedure badCheckShouldCauseNPE(),start of procedure getBool(),Taking false branch,return from a call to Boolean NullPointerExceptions.getBool(),Taking false branch,return from a call to void NullPointerExceptions.badCheckShouldCauseNPE()]
codetoanalyze/java/tracing/NullPointerExceptions.java, void NullPointerExceptions.derefNonThisGetterAfterCheckShouldNotCauseNPE(), 5, java.lang.NullPointerException, [start of procedure derefNonThisGetterAfterCheckShouldNotCauseNPE(),start of procedure NullPointerExceptions(),return from a call to NullPointerExceptions.<init>(),Taking true branch,start of procedure getObj(),Taking false branch,return from a call to Object NullPointerExceptions.getObj(),Taking false branch,return from a call to void NullPointerExceptions.derefNonThisGetterAfterCheckShouldNotCauseNPE()]
codetoanalyze/java/tracing/NullPointerExceptions.java, void NullPointerExceptions.derefNull(), 3, java.lang.NullPointerException, [start of procedure derefNull(),start of procedure derefUndefinedCallee(),start of procedure retUndefined(),Taking true branch,return from a call to Object NullPointerExceptions.retUndefined(),Taking true branch,return from a call to Object NullPointerExceptions.derefUndefinedCallee(),exception java.lang.NullPointerException,return from a call to void NullPointerExceptions.derefNull()]
codetoanalyze/java/tracing/NullPointerExceptions.java, void NullPointerExceptions.derefUndefNullableRetWrapper(), 2, java.lang.NullPointerException, [start of procedure derefUndefNullableRetWrapper(),start of procedure undefNullableWrapper(),return from a call to Object NullPointerExceptions.undefNullableWrapper(),Taking true branch,return from a call to void NullPointerExceptions.derefUndefNullableRetWrapper()]
codetoanalyze/java/tracing/NullPointerExceptions.java, void NullPointerExceptions.dereferenceAfterLoopOnList(NullPointerExceptions$L), 3, java.lang.NullPointerException, [start of procedure dereferenceAfterLoopOnList(...),start of procedure returnsNullAfterLoopOnList(...),Taking true branch,Taking true branch,Taking true branch,Taking true branch,Taking false branch,return from a call to Object NullPointerExceptions.returnsNullAfterLoopOnList(NullPointerExceptions$L),exception java.lang.NullPointerException,return from a call to void NullPointerExceptions.dereferenceAfterLoopOnList(NullPointerExceptions$L)]
codetoanalyze/java/tracing/NullPointerExceptions.java, void NullPointerExceptions.dereferenceAfterLoopOnList(NullPointerExceptions$L), 3, java.lang.NullPointerException, [start of procedure dereferenceAfterLoopOnList(...),start of procedure returnsNullAfterLoopOnList(...),Taking true branch,Taking true branch,Taking true branch,Taking true branch,Taking false branch,return from a call to Object NullPointerExceptions.returnsNullAfterLoopOnList(NullPointerExceptions$L),exception java.lang.NullPointerException,return from a call to void NullPointerExceptions.dereferenceAfterLoopOnList(NullPointerExceptions$L)]
codetoanalyze/java/tracing/NullPointerExceptions.java, void NullPointerExceptions.dereferenceAfterUnlock1(Lock), 5, java.lang.NullPointerException, [start of procedure dereferenceAfterUnlock1(...),Taking true branch,Taking true branch,exception java.lang.NullPointerException,return from a call to void NullPointerExceptions.dereferenceAfterUnlock1(Lock)]
codetoanalyze/java/tracing/NullPointerExceptions.java, void NullPointerExceptions.dereferenceAfterUnlock1(Lock), 5, java.lang.NullPointerException, [start of procedure dereferenceAfterUnlock1(...),Taking true branch,Taking true branch,exception java.lang.NullPointerException,return from a call to void NullPointerExceptions.dereferenceAfterUnlock1(Lock)]
codetoanalyze/java/tracing/NullPointerExceptions.java, void NullPointerExceptions.dereferenceAfterUnlock2(Lock), 7, java.lang.NullPointerException, [start of procedure dereferenceAfterUnlock2(...),Taking true branch,Taking true branch,Taking true branch,exception java.lang.NullPointerException,return from a call to void NullPointerExceptions.dereferenceAfterUnlock2(Lock)]
codetoanalyze/java/tracing/NullPointerExceptions.java, void NullPointerExceptions.dereferenceAfterUnlock2(Lock), 7, java.lang.NullPointerException, [start of procedure dereferenceAfterUnlock2(...),Taking true branch,Taking true branch,Taking true branch,exception java.lang.NullPointerException,return from a call to void NullPointerExceptions.dereferenceAfterUnlock2(Lock)]
codetoanalyze/java/tracing/NullPointerExceptions.java, void NullPointerExceptions.noNullPointerExceptionAfterSkipFunction(), 4, RETURN_VALUE_IGNORED, [start of procedure noNullPointerExceptionAfterSkipFunction(),Taking true branch,start of procedure genericMethodSomewhereCheckingForNull(...),Taking false branch,return from a call to void NullPointerExceptions.genericMethodSomewhereCheckingForNull(String),Taking true branch]
codetoanalyze/java/tracing/NullPointerExceptions.java, void NullPointerExceptions.nullPointerExceptionArrayLength(), 3, java.lang.NullPointerException, [start of procedure nullPointerExceptionArrayLength(),exception java.lang.NullPointerException,return from a call to void NullPointerExceptions.nullPointerExceptionArrayLength()]
codetoanalyze/java/tracing/NullPointerExceptions.java, void NullPointerExceptions.nullPointerExceptionCallArrayReadMethod(), 3, java.lang.NullPointerException, [start of procedure nullPointerExceptionCallArrayReadMethod(),Taking true branch,Taking true branch,start of procedure arrayReadShouldNotCauseSymexMemoryError(...),Taking true branch,Taking true branch,Taking true branch,return from a call to Object NullPointerExceptions.arrayReadShouldNotCauseSymexMemoryError(int),exception java.lang.NullPointerException,return from a call to void NullPointerExceptions.nullPointerExceptionCallArrayReadMethod()]
codetoanalyze/java/tracing/NullPointerExceptions.java, void NullPointerExceptions.nullPointerExceptionCallArrayReadMethod(), 3, java.lang.NullPointerException, [start of procedure nullPointerExceptionCallArrayReadMethod(),Taking true branch,Taking true branch,start of procedure arrayReadShouldNotCauseSymexMemoryError(...),Taking true branch,Taking true branch,Taking true branch,return from a call to Object NullPointerExceptions.arrayReadShouldNotCauseSymexMemoryError(int),exception java.lang.NullPointerException,return from a call to void NullPointerExceptions.nullPointerExceptionCallArrayReadMethod()]
codetoanalyze/java/tracing/NullPointerExceptions.java, void NullPointerExceptions.nullPointerExceptionFromFailingFileOutputStreamConstructor(), 9, java.lang.NullPointerException, [start of procedure nullPointerExceptionFromFailingFileOutputStreamConstructor(),Taking true branch,return from a call to void NullPointerExceptions.nullPointerExceptionFromFailingFileOutputStreamConstructor()]
codetoanalyze/java/tracing/NullPointerExceptions.java, void NullPointerExceptions.nullPointerExceptionFromFaillingResourceConstructor(), 8, java.lang.NullPointerException, [start of procedure nullPointerExceptionFromFaillingResourceConstructor(),Taking true branch,return from a call to void NullPointerExceptions.nullPointerExceptionFromFaillingResourceConstructor()]
codetoanalyze/java/tracing/NullPointerExceptions.java, void NullPointerExceptions.nullPointerExceptionUnlessFrameFails(), 6, java.lang.NullPointerException, [start of procedure nullPointerExceptionUnlessFrameFails(),start of procedure NullPointerExceptions$A(...),return from a call to NullPointerExceptions$A.<init>(NullPointerExceptions),start of procedure frame(...),start of procedure id_generics(...),Taking true branch,return from a call to Object NullPointerExceptions.id_generics(NullPointerExceptions$A),Taking true branch,return from a call to NullPointerExceptions$A NullPointerExceptions.frame(NullPointerExceptions$A),Taking true branch,exception java.lang.NullPointerException,return from a call to void NullPointerExceptions.nullPointerExceptionUnlessFrameFails()]
codetoanalyze/java/tracing/NullPointerExceptions.java, void NullPointerExceptions.nullPointerExceptionWithNullArrayParameter(), 2, java.lang.NullPointerException, [start of procedure nullPointerExceptionWithNullArrayParameter(),start of procedure expectNotNullArrayParameter(...),exception java.lang.NullPointerException,return from a call to void NullPointerExceptions.expectNotNullArrayParameter(codetoanalyze.java.infer.NullPointerExceptions$A[]),exception java.lang.NullPointerException,return from a call to void NullPointerExceptions.nullPointerExceptionWithNullArrayParameter()]
codetoanalyze/java/tracing/NullPointerExceptions.java, void NullPointerExceptions.nullPointerExceptionWithNullObjectParameter(), 2, java.lang.NullPointerException, [start of procedure nullPointerExceptionWithNullObjectParameter(),start of procedure expectNotNullObjectParameter(...),exception java.lang.NullPointerException,return from a call to void NullPointerExceptions.expectNotNullObjectParameter(NullPointerExceptions$A),exception java.lang.NullPointerException,return from a call to void NullPointerExceptions.nullPointerExceptionWithNullObjectParameter()]
codetoanalyze/java/tracing/NullPointerExceptions.java, void NullPointerExceptions.nullableNonNullStringAfterTextUtilsIsEmptyCheckShouldNotCauseNPE(String), 2, RETURN_VALUE_IGNORED, [start of procedure nullableNonNullStringAfterTextUtilsIsEmptyCheckShouldNotCauseNPE(...),Taking true branch,Taking true branch]
codetoanalyze/java/tracing/NullPointerExceptions.java, void NullPointerExceptions.someNPEAfterResourceLeak(), 3, java.lang.NullPointerException, [start of procedure someNPEAfterResourceLeak(),start of procedure sourceOfNullWithResourceLeak(),start of procedure SomeResource(),return from a call to SomeResource.<init>(),return from a call to T CloseableAsResourceExample.sourceOfNullWithResourceLeak(),exception java.lang.NullPointerException,return from a call to void NullPointerExceptions.someNPEAfterResourceLeak()]
codetoanalyze/java/tracing/NullPointerExceptions.java, void NullPointerExceptions.stringConstantEqualsFalseNotNPE_FP(), 11, java.lang.NullPointerException, [start of procedure stringConstantEqualsFalseNotNPE_FP(),Taking true branch,Taking true branch,Taking true branch,return from a call to void NullPointerExceptions.stringConstantEqualsFalseNotNPE_FP()]
codetoanalyze/java/tracing/NullPointerExceptions.java, void NullPointerExceptions.testSystemGetPropertyReturn(), 2, RETURN_VALUE_IGNORED, [start of procedure testSystemGetPropertyReturn(),Taking true branch]
codetoanalyze/java/tracing/NullPointerExceptions.java, void NullPointerExceptions.testSystemGetPropertyReturn(), 3, java.lang.NullPointerException, [start of procedure testSystemGetPropertyReturn(),Taking true branch,return from a call to void NullPointerExceptions.testSystemGetPropertyReturn()]
codetoanalyze/java/tracing/ReportOnMainExample.java, void ReportOnMainExample.main(java.lang.String[]), 3, java.lang.NullPointerException, [start of procedure main(...),start of procedure ReportOnMainExample(),return from a call to ReportOnMainExample.<init>(),Taking true branch,start of procedure foo(),Taking true branch,Taking true branch,return from a call to void ReportOnMainExample.foo(),return from a call to void ReportOnMainExample.main(java.lang.String[])]
codetoanalyze/java/tracing/UnavoidableExceptionExample.java, void UnavoidableExceptionExample.cannotAvoidNPE(), 3, java.lang.NullPointerException, [start of procedure cannotAvoidNPE(),start of procedure create(),return from a call to T2 UnavoidableExceptionExample.create(),exception java.lang.NullPointerException,return from a call to void UnavoidableExceptionExample.cannotAvoidNPE()]
codetoanalyze/java/tracing/UnavoidableExceptionExample.java, void UnavoidableExceptionExample.unavoidableNPEWithParameter(boolean), 3, java.lang.NullPointerException, [start of procedure unavoidableNPEWithParameter(...),start of procedure create(),return from a call to T2 UnavoidableExceptionExample.create(),exception java.lang.NullPointerException,return from a call to void UnavoidableExceptionExample.unavoidableNPEWithParameter(boolean)]

@ -14,33 +14,33 @@ codetoanalyze/objc/errors/procdescs/main.c, call_nslog, 2, MEMORY_LEAK, [start o
codetoanalyze/objc/errors/procdescs/main.c, call_nslog, 3, MEMORY_LEAK, [start of procedure call_nslog()]
codetoanalyze/objc/errors/property/main.c, property_main, 2, MEMORY_LEAK, [start of procedure property_main()]
codetoanalyze/objc/errors/property/main.c, property_main, 3, MEMORY_LEAK, [start of procedure property_main()]
codetoanalyze/objc/errors/shared/assertions/NSAssert_example.m, NSAssert_addTarget:, 1, MEMORY_LEAK, [start of procedure addTarget:,Condition is false,Condition is true,Condition is true]
codetoanalyze/objc/errors/shared/assertions/NSAssert_example.m, NSAssert_initWithRequest:, 1, MEMORY_LEAK, [start of procedure initWithRequest:,Condition is false,Condition is true,Condition is true]
codetoanalyze/objc/errors/shared/assertions/NSAssert_example.m, test1, 1, MEMORY_LEAK, [start of procedure test1(),Condition is false,Condition is true,Condition is true,Condition is true]
codetoanalyze/objc/errors/shared/assertions/NSAssert_example.m, test1, 1, MEMORY_LEAK, [start of procedure test1(),Condition is false,Condition is true,Condition is true]
codetoanalyze/objc/errors/shared/assertions/NSAssert_example.m, test2, 1, MEMORY_LEAK, [start of procedure test2(),Condition is false,Condition is true,Condition is true]
codetoanalyze/objc/errors/shared/assertions/NSAssert_example.m, test2, 1, MEMORY_LEAK, [start of procedure test2(),Condition is false,Condition is true,Condition is true,Condition is true]
codetoanalyze/objc/errors/shared/block/BlockVar.m, BlockVar_blockPostBad, 5, NULL_DEREFERENCE, [start of procedure blockPostBad,start of procedure block,return from a call to __objc_anonymous_block_BlockVar_blockPostBad______2]
codetoanalyze/objc/errors/shared/block/BlockVar.m, BlockVar_capturedNullDeref, 5, NULL_DEREFERENCE, [start of procedure capturedNullDeref,start of procedure block]
codetoanalyze/objc/errors/shared/block/BlockVar.m, BlockVar_navigateToURLInBackground, 8, NULL_DEREFERENCE, [start of procedure navigateToURLInBackground,start of procedure block,start of procedure test,return from a call to BlockVar_test,return from a call to __objc_anonymous_block_BlockVar_navigateToURLInBackground______1,Condition is true]
codetoanalyze/objc/errors/shared/block/block.m, main1, 31, DIVIDE_BY_ZERO, [start of procedure main1(),start of procedure block,start of procedure block,return from a call to __objc_anonymous_block___objc_anonymous_block_main1______2______3,return from a call to __objc_anonymous_block_main1______2,start of procedure block,return from a call to __objc_anonymous_block_main1______1]
codetoanalyze/objc/errors/shared/block/block_no_args.m, My_manager_m, 10, NULL_DEREFERENCE, [start of procedure m,start of procedure block,return from a call to __objc_anonymous_block_My_manager_m______1,Condition is true]
codetoanalyze/objc/errors/shared/block/block_release.m, My_manager_blockReleaseTODO, 5, MEMORY_LEAK, [start of procedure blockReleaseTODO]
codetoanalyze/objc/errors/shared/category_procdesc/main.c, CategoryProcdescMain, 2, MEMORY_LEAK, [start of procedure CategoryProcdescMain()]
codetoanalyze/objc/errors/shared/category_procdesc/main.c, CategoryProcdescMain, 3, MEMORY_LEAK, [start of procedure CategoryProcdescMain()]
codetoanalyze/objc/errors/shared/field_superclass/SuperExample.m, ASuper_init, 2, NULL_DEREFERENCE, [start of procedure init,start of procedure init,return from a call to BSuper_init]
codetoanalyze/objc/errors/shared/field_superclass/SuperExample.m, super_example_main, 2, MEMORY_LEAK, [start of procedure super_example_main()]
codetoanalyze/objc/errors/shared/memory_leaks_benchmark/RetainReleaseExample2.m, test3, 0, MEMORY_LEAK, [start of procedure test3(),start of procedure retain_release2_test(),start of procedure init,return from a call to RR2_init,return from a call to retain_release2_test]
codetoanalyze/objc/errors/shared/memory_leaks_benchmark/RetainReleaseExample2.m, test3, 0, RETURN_VALUE_IGNORED, [start of procedure test3()]
codetoanalyze/objc/errors/shared/memory_leaks_benchmark/RetainReleaseExample2.m, test4, 3, MEMORY_LEAK, [start of procedure test4(),start of procedure retain_release2_test(),start of procedure init,return from a call to RR2_init,return from a call to retain_release2_test]
codetoanalyze/objc/errors/shared/memory_leaks_benchmark/RetainReleaseExample2.m, test5, 2, MEMORY_LEAK, [start of procedure test5(),start of procedure init,return from a call to RR2_init]
codetoanalyze/objc/errors/shared/memory_leaks_benchmark/RetainReleaseExample2.m, test6, 3, MEMORY_LEAK, [start of procedure test6(),start of procedure init,return from a call to RR2_init]
codetoanalyze/objc/errors/warnings/ParameterNotNullableExample.m, FBAudioRecorder_FBAudioInputCallbackChain:, 2, IVAR_NOT_NULL_CHECKED, [start of procedure FBAudioInputCallbackChain:,Message recordState with receiver nil returns nil.]
codetoanalyze/objc/errors/warnings/ParameterNotNullableExample.m, FBAudioRecorder_FBAudioInputCallbackChain:, 2, PARAMETER_NOT_NULL_CHECKED, [start of procedure FBAudioInputCallbackChain:,Message recorder with receiver nil returns nil. Message recordState with receiver nil returns nil.]
codetoanalyze/objc/errors/warnings/ParameterNotNullableExample.m, FBAudioRecorder_FBAudioInputCallbackField, 2, IVAR_NOT_NULL_CHECKED, [start of procedure FBAudioInputCallbackField,Message recordState with receiver nil returns nil.]
codetoanalyze/objc/errors/warnings/ParameterNotNullableExample.m, FBAudioRecorder_FBAudioInputCallbackSimple:, 2, PARAMETER_NOT_NULL_CHECKED, [start of procedure FBAudioInputCallbackSimple:,Message recordState with receiver nil returns nil.]
codetoanalyze/objc/errors/warnings/ParameterNotNullableExample.m, FBAudioRecorder_FBAudioInputCallbackSimpleAliasing:, 3, PARAMETER_NOT_NULL_CHECKED, [start of procedure FBAudioInputCallbackSimpleAliasing:,Message recordState with receiver nil returns nil.]
codetoanalyze/objc/errors/warnings/ParameterNotNullableExample.m, FBAudioRecorder_test, 3, NULL_DEREFERENCE, [start of procedure test,Message recordState with receiver nil returns nil.]
codetoanalyze/objc/shared/assertions/NSAssert_example.m, NSAssert_addTarget:, 1, MEMORY_LEAK, [start of procedure addTarget:,Condition is false,Condition is true,Condition is true]
codetoanalyze/objc/shared/assertions/NSAssert_example.m, NSAssert_initWithRequest:, 1, MEMORY_LEAK, [start of procedure initWithRequest:,Condition is false,Condition is true,Condition is true]
codetoanalyze/objc/shared/assertions/NSAssert_example.m, test1, 1, MEMORY_LEAK, [start of procedure test1(),Condition is false,Condition is true,Condition is true,Condition is true]
codetoanalyze/objc/shared/assertions/NSAssert_example.m, test1, 1, MEMORY_LEAK, [start of procedure test1(),Condition is false,Condition is true,Condition is true]
codetoanalyze/objc/shared/assertions/NSAssert_example.m, test2, 1, MEMORY_LEAK, [start of procedure test2(),Condition is false,Condition is true,Condition is true,Condition is true]
codetoanalyze/objc/shared/assertions/NSAssert_example.m, test2, 1, MEMORY_LEAK, [start of procedure test2(),Condition is false,Condition is true,Condition is true]
codetoanalyze/objc/shared/block/BlockVar.m, BlockVar_blockPostBad, 5, NULL_DEREFERENCE, [start of procedure blockPostBad,start of procedure block,return from a call to __objc_anonymous_block_BlockVar_blockPostBad______2]
codetoanalyze/objc/shared/block/BlockVar.m, BlockVar_capturedNullDeref, 5, NULL_DEREFERENCE, [start of procedure capturedNullDeref,start of procedure block]
codetoanalyze/objc/shared/block/BlockVar.m, BlockVar_navigateToURLInBackground, 8, NULL_DEREFERENCE, [start of procedure navigateToURLInBackground,start of procedure block,start of procedure test,return from a call to BlockVar_test,return from a call to __objc_anonymous_block_BlockVar_navigateToURLInBackground______1,Condition is true]
codetoanalyze/objc/shared/block/block.m, main1, 31, DIVIDE_BY_ZERO, [start of procedure main1(),start of procedure block,start of procedure block,return from a call to __objc_anonymous_block___objc_anonymous_block_main1______2______3,return from a call to __objc_anonymous_block_main1______2,start of procedure block,return from a call to __objc_anonymous_block_main1______1]
codetoanalyze/objc/shared/block/block_no_args.m, My_manager_m, 10, NULL_DEREFERENCE, [start of procedure m,start of procedure block,return from a call to __objc_anonymous_block_My_manager_m______1,Condition is true]
codetoanalyze/objc/shared/block/block_release.m, My_manager_blockReleaseTODO, 5, MEMORY_LEAK, [start of procedure blockReleaseTODO]
codetoanalyze/objc/shared/category_procdesc/main.c, CategoryProcdescMain, 2, MEMORY_LEAK, [start of procedure CategoryProcdescMain()]
codetoanalyze/objc/shared/category_procdesc/main.c, CategoryProcdescMain, 3, MEMORY_LEAK, [start of procedure CategoryProcdescMain()]
codetoanalyze/objc/shared/field_superclass/SuperExample.m, ASuper_init, 2, NULL_DEREFERENCE, [start of procedure init,start of procedure init,return from a call to BSuper_init]
codetoanalyze/objc/shared/field_superclass/SuperExample.m, super_example_main, 2, MEMORY_LEAK, [start of procedure super_example_main()]
codetoanalyze/objc/shared/memory_leaks_benchmark/RetainReleaseExample2.m, test3, 0, MEMORY_LEAK, [start of procedure test3(),start of procedure retain_release2_test(),start of procedure init,return from a call to RR2_init,return from a call to retain_release2_test]
codetoanalyze/objc/shared/memory_leaks_benchmark/RetainReleaseExample2.m, test3, 0, RETURN_VALUE_IGNORED, [start of procedure test3()]
codetoanalyze/objc/shared/memory_leaks_benchmark/RetainReleaseExample2.m, test4, 3, MEMORY_LEAK, [start of procedure test4(),start of procedure retain_release2_test(),start of procedure init,return from a call to RR2_init,return from a call to retain_release2_test]
codetoanalyze/objc/shared/memory_leaks_benchmark/RetainReleaseExample2.m, test5, 2, MEMORY_LEAK, [start of procedure test5(),start of procedure init,return from a call to RR2_init]
codetoanalyze/objc/shared/memory_leaks_benchmark/RetainReleaseExample2.m, test6, 3, MEMORY_LEAK, [start of procedure test6(),start of procedure init,return from a call to RR2_init]
codetoanalyze/objc/errors/field_superclass/SubtypingExample.m, Employee_initWithName:andAge:andEducation:, 3, NULL_TEST_AFTER_DEREFERENCE, [start of procedure initWithName:andAge:andEducation:,start of procedure initWithName:andAge:,return from a call to Person_initWithName:andAge:,Condition is false]
codetoanalyze/objc/errors/field_superclass/SubtypingExample.m, Employee_initWithName:andAge:andEducation:, 6, DIVIDE_BY_ZERO, [start of procedure initWithName:andAge:andEducation:,start of procedure initWithName:andAge:,return from a call to Person_initWithName:andAge:,Condition is true]
codetoanalyze/objc/errors/field_superclass/SubtypingExample.m, subtyping_test, 0, DIVIDE_BY_ZERO, [start of procedure subtyping_test(),start of procedure testFields(),start of procedure setEmployeeEducation:,return from a call to Employee_setEmployeeEducation:,start of procedure setAge:,return from a call to Person_setAge:,start of procedure setEmployeeEducation:,return from a call to Employee_setEmployeeEducation:,start of procedure getAge,return from a call to Person_getAge,return from a call to testFields]
@ -81,13 +81,13 @@ codetoanalyze/objc/errors/npe/nullable.m, derefNullableParamIndirect, 2, NULL_DE
codetoanalyze/objc/errors/npe/nullable.m, parameter_nullable_bug, 5, NULL_DEREFERENCE, [start of procedure parameter_nullable_bug()]
codetoanalyze/objc/errors/property/ExplicitIvarName.m, ExplicitIvarNameA_testDefaultName, 7, NULL_DEREFERENCE, [start of procedure testDefaultName,Condition is true]
codetoanalyze/objc/errors/property/ExplicitIvarName.m, ExplicitIvarNameA_testExplicit, 6, NULL_DEREFERENCE, [start of procedure testExplicit,Condition is true]
codetoanalyze/objc/errors/shared/memory_leaks_benchmark/TollBridgeExample.m, TollBridgeExample_brideRetained, 2, MEMORY_LEAK, [start of procedure brideRetained]
codetoanalyze/objc/errors/shared/memory_leaks_benchmark/TollBridgeExample.m, TollBridgeExample_bridge, 2, MEMORY_LEAK, [start of procedure bridge]
codetoanalyze/objc/errors/shared/memory_leaks_benchmark/TollBridgeExample.m, bridgeDictionaryNoLeak, 1, UNINITIALIZED_VALUE, [start of procedure bridgeDictionaryNoLeak()]
codetoanalyze/objc/errors/subtyping/KindOfClassExample.m, shouldThrowDivideByZero1, 2, DIVIDE_BY_ZERO, [start of procedure shouldThrowDivideByZero1(),start of procedure init,return from a call to Base_init,start of procedure returnsZero1:,Condition is true,return from a call to Base_returnsZero1:]
codetoanalyze/objc/errors/subtyping/KindOfClassExample.m, shouldThrowDivideByZero2, 2, DIVIDE_BY_ZERO, [start of procedure shouldThrowDivideByZero2(),start of procedure init,return from a call to Base_init,start of procedure returnsZero2(),Condition is false,return from a call to returnsZero2]
codetoanalyze/objc/errors/subtyping/KindOfClassExample.m, shouldThrowDivideByZero3, 3, DIVIDE_BY_ZERO, [start of procedure shouldThrowDivideByZero3(),start of procedure init,return from a call to Derived_init,Condition is true]
codetoanalyze/objc/errors/variadic_methods/premature_nil_termination.m, PrematureNilTermA_nilInArrayWithObjects, 5, PREMATURE_NIL_TERMINATION_ARGUMENT, [start of procedure nilInArrayWithObjects]
codetoanalyze/objc/shared/memory_leaks_benchmark/TollBridgeExample.m, TollBridgeExample_brideRetained, 2, MEMORY_LEAK, [start of procedure brideRetained]
codetoanalyze/objc/shared/memory_leaks_benchmark/TollBridgeExample.m, TollBridgeExample_bridge, 2, MEMORY_LEAK, [start of procedure bridge]
codetoanalyze/objc/shared/memory_leaks_benchmark/TollBridgeExample.m, bridgeDictionaryNoLeak, 1, UNINITIALIZED_VALUE, [start of procedure bridgeDictionaryNoLeak()]
codetoanalyze/objc/errors/memory_leaks_benchmark/NSStringInitWithBytesNoCopyExample.m, StringInitA_macForIV:, 2, MEMORY_LEAK, [start of procedure macForIV:]
codetoanalyze/objc/errors/memory_leaks_benchmark/NSStringInitWithBytesNoCopyExample.m, createURLQueryStringBodyEscaping, 6, PRECONDITION_NOT_MET, [start of procedure createURLQueryStringBodyEscaping(),Condition is true]
codetoanalyze/objc/errors/memory_leaks_benchmark/NSStringInitWithBytesNoCopyExample.m, createURLQueryStringBodyEscaping, 11, UNINITIALIZED_VALUE, [start of procedure createURLQueryStringBodyEscaping(),Condition is false]
@ -105,22 +105,22 @@ codetoanalyze/objc/errors/npe/block.m, BlockA_foo4:, 6, NULL_DEREFERENCE, [start
codetoanalyze/objc/errors/npe/block.m, BlockA_foo7, 2, IVAR_NOT_NULL_CHECKED, [start of procedure foo7]
codetoanalyze/objc/errors/npe/skip_method_with_nil_object.m, SkipMethodNilA_testBug:, 6, PARAMETER_NOT_NULL_CHECKED, [start of procedure testBug:,Message get_a with receiver nil returns nil.,Message skip_method with receiver nil returns nil.,Condition is false]
codetoanalyze/objc/errors/property/main.c, property_main, 3, MEMORY_LEAK, [start of procedure property_main()]
codetoanalyze/objc/errors/shared/block/block-it.m, __objc_anonymous_block_MyBlock_array______1, 5, UNINITIALIZED_VALUE, [start of procedure block,Condition is false]
codetoanalyze/objc/errors/shared/block/block-it.m, __objc_anonymous_block_MyBlock_array_trans______2, 4, UNINITIALIZED_VALUE, [start of procedure block,Condition is false]
codetoanalyze/objc/errors/shared/block/dispatch.m, DispatchA_dispatch_a_block_variable_from_macro_delivers_initialised_object, 3, DIVIDE_BY_ZERO, [start of procedure dispatch_a_block_variable_from_macro_delivers_initialised_object,start of procedure dispatch_a_block_variable_from_macro,start of procedure block,start of procedure init,return from a call to DispatchA_init,return from a call to __objc_anonymous_block_DispatchA_dispatch_a_block_variable_from_macro______4,return from a call to DispatchA_dispatch_a_block_variable_from_macro]
codetoanalyze/objc/errors/shared/memory_leaks_benchmark/MemoryLeakExample.m, MemoryLeakExample_blockCapturedVarLeak, 3, MEMORY_LEAK, [start of procedure blockCapturedVarLeak]
codetoanalyze/objc/errors/shared/memory_leaks_benchmark/MemoryLeakExample.m, MemoryLeakExample_blockFreeNoLeakTODO, 3, MEMORY_LEAK, [start of procedure blockFreeNoLeakTODO]
codetoanalyze/objc/errors/shared/memory_leaks_benchmark/MemoryLeakExample.m, MemoryLeakExample_createCloseCrossGlyph:, 2, MEMORY_LEAK, [start of procedure createCloseCrossGlyph:]
codetoanalyze/objc/errors/shared/memory_leaks_benchmark/MemoryLeakExample.m, MemoryLeakExample_createCloseCrossGlyphNoLeak:, 5, Assert_failure, [start of procedure createCloseCrossGlyphNoLeak:]
codetoanalyze/objc/errors/shared/memory_leaks_benchmark/MemoryLeakExample.m, MemoryLeakExample_measureFrameSizeForText, 1, MEMORY_LEAK, [start of procedure measureFrameSizeForText]
codetoanalyze/objc/errors/shared/memory_leaks_benchmark/MemoryLeakExample.m, MemoryLeakExample_measureFrameSizeForTextNoLeak, 3, Assert_failure, [start of procedure measureFrameSizeForTextNoLeak]
codetoanalyze/objc/errors/shared/memory_leaks_benchmark/MemoryLeakExample.m, MemoryLeakExample_regularLeak, 3, MEMORY_LEAK, [start of procedure regularLeak]
codetoanalyze/objc/errors/shared/memory_leaks_benchmark/MemoryLeakExample.m, MemoryLeakExample_test, 3, MEMORY_LEAK, [start of procedure test]
codetoanalyze/objc/errors/shared/memory_leaks_benchmark/MemoryLeakExample.m, MemoryLeakExample_test1:, 1, MEMORY_LEAK, [start of procedure test1:]
codetoanalyze/objc/errors/shared/memory_leaks_benchmark/MemoryLeakExample.m, MemoryLeakExample_test2:, 1, MEMORY_LEAK, [start of procedure test2:]
codetoanalyze/objc/errors/shared/npe/Nonnull_attribute_example.m, NonnullC_initWithCoder:and:, 2, UNINITIALIZED_VALUE, [start of procedure initWithCoder:and:,start of procedure getA,return from a call to NonnullA_getA]
codetoanalyze/objc/errors/taint/sources.m, testNSHTTPCookie1, 5, TAINTED_VALUE_REACHING_SENSITIVE_FUNCTION, [start of procedure testNSHTTPCookie1()]
codetoanalyze/objc/errors/taint/sources.m, testNSHTTPCookie2, 5, TAINTED_VALUE_REACHING_SENSITIVE_FUNCTION, [start of procedure testNSHTTPCookie2()]
codetoanalyze/objc/errors/taint/sources.m, testNSHTTPCookie3, 5, TAINTED_VALUE_REACHING_SENSITIVE_FUNCTION, [start of procedure testNSHTTPCookie3()]
codetoanalyze/objc/errors/taint/sources.m, testNSHTTPCookie4, 5, TAINTED_VALUE_REACHING_SENSITIVE_FUNCTION, [start of procedure testNSHTTPCookie4()]
codetoanalyze/objc/errors/taint/viewController.m, ExampleDelegate_application:openURL:sourceApplication:annotation:, 7, TAINTED_VALUE_REACHING_SENSITIVE_FUNCTION, [start of procedure application:openURL:sourceApplication:annotation:,start of procedure init,return from a call to VCA_init,start of procedure ExampleSanitizer(),Condition is false,return from a call to ExampleSanitizer,Condition is false,Condition is true]
codetoanalyze/objc/shared/block/block-it.m, __objc_anonymous_block_MyBlock_array______1, 5, UNINITIALIZED_VALUE, [start of procedure block,Condition is false]
codetoanalyze/objc/shared/block/block-it.m, __objc_anonymous_block_MyBlock_array_trans______2, 4, UNINITIALIZED_VALUE, [start of procedure block,Condition is false]
codetoanalyze/objc/shared/block/dispatch.m, DispatchA_dispatch_a_block_variable_from_macro_delivers_initialised_object, 3, DIVIDE_BY_ZERO, [start of procedure dispatch_a_block_variable_from_macro_delivers_initialised_object,start of procedure dispatch_a_block_variable_from_macro,start of procedure block,start of procedure init,return from a call to DispatchA_init,return from a call to __objc_anonymous_block_DispatchA_dispatch_a_block_variable_from_macro______4,return from a call to DispatchA_dispatch_a_block_variable_from_macro]
codetoanalyze/objc/shared/memory_leaks_benchmark/MemoryLeakExample.m, MemoryLeakExample_blockCapturedVarLeak, 3, MEMORY_LEAK, [start of procedure blockCapturedVarLeak]
codetoanalyze/objc/shared/memory_leaks_benchmark/MemoryLeakExample.m, MemoryLeakExample_blockFreeNoLeakTODO, 3, MEMORY_LEAK, [start of procedure blockFreeNoLeakTODO]
codetoanalyze/objc/shared/memory_leaks_benchmark/MemoryLeakExample.m, MemoryLeakExample_createCloseCrossGlyph:, 2, MEMORY_LEAK, [start of procedure createCloseCrossGlyph:]
codetoanalyze/objc/shared/memory_leaks_benchmark/MemoryLeakExample.m, MemoryLeakExample_createCloseCrossGlyphNoLeak:, 5, Assert_failure, [start of procedure createCloseCrossGlyphNoLeak:]
codetoanalyze/objc/shared/memory_leaks_benchmark/MemoryLeakExample.m, MemoryLeakExample_measureFrameSizeForText, 1, MEMORY_LEAK, [start of procedure measureFrameSizeForText]
codetoanalyze/objc/shared/memory_leaks_benchmark/MemoryLeakExample.m, MemoryLeakExample_measureFrameSizeForTextNoLeak, 3, Assert_failure, [start of procedure measureFrameSizeForTextNoLeak]
codetoanalyze/objc/shared/memory_leaks_benchmark/MemoryLeakExample.m, MemoryLeakExample_regularLeak, 3, MEMORY_LEAK, [start of procedure regularLeak]
codetoanalyze/objc/shared/memory_leaks_benchmark/MemoryLeakExample.m, MemoryLeakExample_test, 3, MEMORY_LEAK, [start of procedure test]
codetoanalyze/objc/shared/memory_leaks_benchmark/MemoryLeakExample.m, MemoryLeakExample_test1:, 1, MEMORY_LEAK, [start of procedure test1:]
codetoanalyze/objc/shared/memory_leaks_benchmark/MemoryLeakExample.m, MemoryLeakExample_test2:, 1, MEMORY_LEAK, [start of procedure test2:]
codetoanalyze/objc/shared/npe/Nonnull_attribute_example.m, NonnullC_initWithCoder:and:, 2, UNINITIALIZED_VALUE, [start of procedure initWithCoder:and:,start of procedure getA,return from a call to NonnullA_getA]

@ -1,6 +1,6 @@
/* @generated */
digraph iCFG {
"__objc_anonymous_block___objc_anonymous_block_main1______2______3.6d1e0725e2965c4b9fdfca6faccef5e0_3" [label="3: Return Stmt \n n$19=*&z:int [line 25]\n n$20=*&#GB<codetoanalyze/objc/frontend/shared/block/block.m>$main1_s:int [line 25]\n n$21=*&x:int [line 25]\n n$22=*&bla:int [line 25]\n *&return:int=(((n$19 + n$20) + n$21) + n$22) [line 25]\n " shape="box"]
"__objc_anonymous_block___objc_anonymous_block_main1______2______3.6d1e0725e2965c4b9fdfca6faccef5e0_3" [label="3: Return Stmt \n n$19=*&z:int [line 25]\n n$20=*&#GB<codetoanalyze/objc/shared/block/block.m>$main1_s:int [line 25]\n n$21=*&x:int [line 25]\n n$22=*&bla:int [line 25]\n *&return:int=(((n$19 + n$20) + n$21) + n$22) [line 25]\n " shape="box"]
"__objc_anonymous_block___objc_anonymous_block_main1______2______3.6d1e0725e2965c4b9fdfca6faccef5e0_3" -> "__objc_anonymous_block___objc_anonymous_block_main1______2______3.6d1e0725e2965c4b9fdfca6faccef5e0_2" ;
@ -15,7 +15,7 @@ digraph iCFG {
"__objc_anonymous_block_main1______2.5623c8c0e39082421999af7ffad7371b_6" -> "__objc_anonymous_block_main1______2.5623c8c0e39082421999af7ffad7371b_5" ;
"__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(class __objc_anonymous_block___objc_anonymous_block_main1______2______3):unsigned long) [line 24]\n *&__objc_anonymous_block___objc_anonymous_block_main1______2______3:class __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<codetoanalyze/objc/frontend/shared/block/block.m>$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(class __objc_anonymous_block___objc_anonymous_block_main1______2______3):unsigned long) [line 24]\n *&__objc_anonymous_block___objc_anonymous_block_main1______2______3:class __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<codetoanalyze/objc/shared/block/block.m>$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" ;
@ -45,7 +45,7 @@ digraph iCFG {
"BlockMain.116013dceff9629776ec833c9d43561d_1" -> "BlockMain.116013dceff9629776ec833c9d43561d_3" ;
"__objc_anonymous_block_main1______1.1ad2c5f7d31875243a1bd27c2e3ec82e_3" [label="3: Return Stmt \n n$5=*&e:int [line 35]\n n$6=*&#GB<codetoanalyze/objc/frontend/shared/block/block.m>$main1_s:int [line 35]\n *&return:int=(n$5 - n$6) [line 35]\n " shape="box"]
"__objc_anonymous_block_main1______1.1ad2c5f7d31875243a1bd27c2e3ec82e_3" [label="3: Return Stmt \n n$5=*&e:int [line 35]\n n$6=*&#GB<codetoanalyze/objc/shared/block/block.m>$main1_s:int [line 35]\n *&return:int=(n$5 - n$6) [line 35]\n " shape="box"]
"__objc_anonymous_block_main1______1.1ad2c5f7d31875243a1bd27c2e3ec82e_3" -> "__objc_anonymous_block_main1______1.1ad2c5f7d31875243a1bd27c2e3ec82e_2" ;
@ -56,7 +56,7 @@ digraph iCFG {
"__objc_anonymous_block_main1______1.1ad2c5f7d31875243a1bd27c2e3ec82e_1" -> "__objc_anonymous_block_main1______1.1ad2c5f7d31875243a1bd27c2e3ec82e_3" ;
"main1.38f534a9576db7ec6ebcbca8c111f942_10" [label="10: DeclStmt \n *&#GB<codetoanalyze/objc/frontend/shared/block/block.m>$main1_s:int=3 [line 12]\n " shape="box"]
"main1.38f534a9576db7ec6ebcbca8c111f942_10" [label="10: DeclStmt \n *&#GB<codetoanalyze/objc/shared/block/block.m>$main1_s:int=3 [line 12]\n " shape="box"]
"main1.38f534a9576db7ec6ebcbca8c111f942_10" -> "main1.38f534a9576db7ec6ebcbca8c111f942_9" ;
@ -72,7 +72,7 @@ digraph iCFG {
"main1.38f534a9576db7ec6ebcbca8c111f942_7" -> "main1.38f534a9576db7ec6ebcbca8c111f942_6" ;
"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(class __objc_anonymous_block_main1______1):unsigned long) [line 34]\n *&__objc_anonymous_block_main1______1:class __objc_anonymous_block_main1______1=n$7 [line 34]\n n$8=*&#GB<codetoanalyze/objc/frontend/shared/block/block.m>$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(class __objc_anonymous_block_main1______1):unsigned long) [line 34]\n *&__objc_anonymous_block_main1______1:class __objc_anonymous_block_main1______1=n$7 [line 34]\n n$8=*&#GB<codetoanalyze/objc/shared/block/block.m>$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" ;

@ -1,6 +1,6 @@
/* @generated */
digraph iCFG {
"My_manager_minstance.ec3b234dca60e6a1d3cb3362178416b6_14" [label="14: BinaryOperatorStmt: Assign \n *&#GB<codetoanalyze/objc/frontend/shared/block/block_no_args.m>$g:int=7 [line 22]\n " shape="box"]
"My_manager_minstance.ec3b234dca60e6a1d3cb3362178416b6_14" [label="14: BinaryOperatorStmt: Assign \n *&#GB<codetoanalyze/objc/shared/block/block_no_args.m>$g:int=7 [line 22]\n " shape="box"]
"My_manager_minstance.ec3b234dca60e6a1d3cb3362178416b6_14" -> "My_manager_minstance.ec3b234dca60e6a1d3cb3362178416b6_13" ;
@ -8,7 +8,7 @@ digraph iCFG {
"My_manager_minstance.ec3b234dca60e6a1d3cb3362178416b6_13" -> "My_manager_minstance.ec3b234dca60e6a1d3cb3362178416b6_12" ;
"My_manager_minstance.ec3b234dca60e6a1d3cb3362178416b6_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(class __objc_anonymous_block_My_manager_m______1):unsigned long) [line 25]\n *&__objc_anonymous_block_My_manager_m______1:class __objc_anonymous_block_My_manager_m______1=n$7 [line 25]\n n$8=*&z:int [line 25]\n n$9=*&#GB<codetoanalyze/objc/frontend/shared/block/block_no_args.m>$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"]
"My_manager_minstance.ec3b234dca60e6a1d3cb3362178416b6_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(class __objc_anonymous_block_My_manager_m______1):unsigned long) [line 25]\n *&__objc_anonymous_block_My_manager_m______1:class __objc_anonymous_block_My_manager_m______1=n$7 [line 25]\n n$8=*&z:int [line 25]\n n$9=*&#GB<codetoanalyze/objc/shared/block/block_no_args.m>$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"]
"My_manager_minstance.ec3b234dca60e6a1d3cb3362178416b6_12" -> "My_manager_minstance.ec3b234dca60e6a1d3cb3362178416b6_11" ;
@ -36,7 +36,7 @@ digraph iCFG {
"My_manager_minstance.ec3b234dca60e6a1d3cb3362178416b6_6" -> "My_manager_minstance.ec3b234dca60e6a1d3cb3362178416b6_8" ;
"My_manager_minstance.ec3b234dca60e6a1d3cb3362178416b6_5" [label="5: BinaryOperatorStmt: EQ \n n$0=*&#GB<codetoanalyze/objc/frontend/shared/block/block_no_args.m>$g:int [line 30]\n " shape="box"]
"My_manager_minstance.ec3b234dca60e6a1d3cb3362178416b6_5" [label="5: BinaryOperatorStmt: EQ \n n$0=*&#GB<codetoanalyze/objc/shared/block/block_no_args.m>$g:int [line 30]\n " shape="box"]
"My_manager_minstance.ec3b234dca60e6a1d3cb3362178416b6_5" -> "My_manager_minstance.ec3b234dca60e6a1d3cb3362178416b6_6" ;
@ -56,7 +56,7 @@ digraph iCFG {
"My_manager_minstance.ec3b234dca60e6a1d3cb3362178416b6_1" -> "My_manager_minstance.ec3b234dca60e6a1d3cb3362178416b6_14" ;
"__objc_anonymous_block_My_manager_m______1.3cc413211d47d071e2197fcf824430cb_3" [label="3: BinaryOperatorStmt: Assign \n n$6=*&z:int [line 26]\n *&#GB<codetoanalyze/objc/frontend/shared/block/block_no_args.m>$g:int=(n$6 + 3) [line 26]\n " shape="box"]
"__objc_anonymous_block_My_manager_m______1.3cc413211d47d071e2197fcf824430cb_3" [label="3: BinaryOperatorStmt: Assign \n n$6=*&z:int [line 26]\n *&#GB<codetoanalyze/objc/shared/block/block_no_args.m>$g:int=(n$6 + 3) [line 26]\n " shape="box"]
"__objc_anonymous_block_My_manager_m______1.3cc413211d47d071e2197fcf824430cb_3" -> "__objc_anonymous_block_My_manager_m______1.3cc413211d47d071e2197fcf824430cb_2" ;

@ -19,7 +19,7 @@ digraph iCFG {
"DispatchA_dispatch_a_block_variable_from_macro_delivers_initialised_objectclass.a40b698fe8052f5a0518056e9384ff2c_1" -> "DispatchA_dispatch_a_block_variable_from_macro_delivers_initialised_objectclass.a40b698fe8052f5a0518056e9384ff2c_5" ;
"__objc_anonymous_block_DispatchA_dispatch_a_block_variable______3.9c4c8eed871dc8fb1938edcd3d194533_3" [label="3: BinaryOperatorStmt: Assign \n n$16=_fun___objc_alloc_no_fail(sizeof(class DispatchA):unsigned long) [line 48]\n n$17=_fun_DispatchA_init(n$16:class DispatchA*) virtual [line 48]\n *&#GB<codetoanalyze/objc/frontend/shared/block/dispatch.m>$DispatchA_dispatch_a_block_variable_static_storage__:struct 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(class DispatchA):unsigned long) [line 48]\n n$17=_fun_DispatchA_init(n$16:class DispatchA*) virtual [line 48]\n *&#GB<codetoanalyze/objc/shared/block/dispatch.m>$DispatchA_dispatch_a_block_variable_static_storage__:struct 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" ;
@ -30,7 +30,7 @@ digraph iCFG {
"__objc_anonymous_block_DispatchA_dispatch_a_block_variable______3.9c4c8eed871dc8fb1938edcd3d194533_1" -> "__objc_anonymous_block_DispatchA_dispatch_a_block_variable______3.9c4c8eed871dc8fb1938edcd3d194533_3" ;
"__objc_anonymous_block_DispatchA_trans______2.8ca180fe9a17b86cb599eced71242770_3" [label="3: BinaryOperatorStmt: Assign \n n$9=_fun___objc_alloc_no_fail(sizeof(class DispatchA):unsigned long) [line 39]\n n$10=_fun_DispatchA_init(n$9:class DispatchA*) virtual [line 39]\n *&#GB<codetoanalyze/objc/frontend/shared/block/dispatch.m>$DispatchA_trans_sharedInstance:struct 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(class DispatchA):unsigned long) [line 39]\n n$10=_fun_DispatchA_init(n$9:class DispatchA*) virtual [line 39]\n *&#GB<codetoanalyze/objc/shared/block/dispatch.m>$DispatchA_trans_sharedInstance:struct 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" ;
@ -41,7 +41,7 @@ digraph iCFG {
"__objc_anonymous_block_DispatchA_trans______2.8ca180fe9a17b86cb599eced71242770_1" -> "__objc_anonymous_block_DispatchA_trans______2.8ca180fe9a17b86cb599eced71242770_3" ;
"__objc_anonymous_block_DispatchA_sharedInstance______1.4a2e89fcdf390871f5277dca0d16c43b_3" [label="3: BinaryOperatorStmt: Assign \n n$2=_fun___objc_alloc_no_fail(sizeof(class DispatchA):unsigned long) [line 31]\n n$3=_fun_DispatchA_init(n$2:class DispatchA*) virtual [line 31]\n *&#GB<codetoanalyze/objc/frontend/shared/block/dispatch.m>$DispatchA_sharedInstance_sharedInstance:struct 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(class DispatchA):unsigned long) [line 31]\n n$3=_fun_DispatchA_init(n$2:class DispatchA*) virtual [line 31]\n *&#GB<codetoanalyze/objc/shared/block/dispatch.m>$DispatchA_sharedInstance_sharedInstance:struct 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" ;
@ -107,7 +107,7 @@ digraph iCFG {
"DispatchMain.f6461dbdaeaf9a114cbe40f5f72fbb3f_1" -> "DispatchMain.f6461dbdaeaf9a114cbe40f5f72fbb3f_11" ;
"DispatchA_dispatch_a_block_variable_from_macroclass.4c1ce7640004cb2174c1010961271e4a_3" [label="3: Return Stmt \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(class __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:class __objc_anonymous_block_DispatchA_dispatch_a_block_variable_from_macro______4=n$25 [line 58]\n n$26=*&#GB<codetoanalyze/objc/frontend/shared/block/dispatch.m>$DispatchA_dispatch_a_block_variable_from_macro_static_storage__:struct objc_object* [line 58]\n *n$25.DispatchA_dispatch_a_block_variable_from_macro_static_storage__:struct 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 n$21=*&initialization_block__:_fn_(*) [line 62]\n n$22=n$21() [line 62]\n n$20=*&#GB<codetoanalyze/objc/frontend/shared/block/dispatch.m>$DispatchA_dispatch_a_block_variable_from_macro_static_storage__:struct objc_object* [line 63]\n *&return:struct objc_object*=n$20 [line 56]\n " shape="box"]
"DispatchA_dispatch_a_block_variable_from_macroclass.4c1ce7640004cb2174c1010961271e4a_3" [label="3: Return Stmt \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(class __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:class __objc_anonymous_block_DispatchA_dispatch_a_block_variable_from_macro______4=n$25 [line 58]\n n$26=*&#GB<codetoanalyze/objc/shared/block/dispatch.m>$DispatchA_dispatch_a_block_variable_from_macro_static_storage__:struct objc_object* [line 58]\n *n$25.DispatchA_dispatch_a_block_variable_from_macro_static_storage__:struct 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 n$21=*&initialization_block__:_fn_(*) [line 62]\n n$22=n$21() [line 62]\n n$20=*&#GB<codetoanalyze/objc/shared/block/dispatch.m>$DispatchA_dispatch_a_block_variable_from_macro_static_storage__:struct objc_object* [line 63]\n *&return:struct objc_object*=n$20 [line 56]\n " shape="box"]
"DispatchA_dispatch_a_block_variable_from_macroclass.4c1ce7640004cb2174c1010961271e4a_3" -> "DispatchA_dispatch_a_block_variable_from_macroclass.4c1ce7640004cb2174c1010961271e4a_2" ;
@ -118,7 +118,7 @@ digraph iCFG {
"DispatchA_dispatch_a_block_variable_from_macroclass.4c1ce7640004cb2174c1010961271e4a_1" -> "DispatchA_dispatch_a_block_variable_from_macroclass.4c1ce7640004cb2174c1010961271e4a_3" ;
"DispatchA_transclass.873660bac717ee103f8564f0a0307a74_5" [label="5: DeclStmt \n DECLARE_LOCALS(&__objc_anonymous_block_DispatchA_trans______2); [line 38]\n n$11=_fun___objc_alloc_no_fail(sizeof(class __objc_anonymous_block_DispatchA_trans______2):unsigned long) [line 38]\n *&__objc_anonymous_block_DispatchA_trans______2:class __objc_anonymous_block_DispatchA_trans______2=n$11 [line 38]\n n$12=*&#GB<codetoanalyze/objc/frontend/shared/block/dispatch.m>$DispatchA_trans_sharedInstance:struct objc_object* [line 38]\n *n$11.DispatchA_trans_sharedInstance:struct objc_object*=n$12 [line 38]\n *&dummy_block:_fn_(*)=(_fun___objc_anonymous_block_DispatchA_trans______2) [line 38]\n " shape="box"]
"DispatchA_transclass.873660bac717ee103f8564f0a0307a74_5" [label="5: DeclStmt \n DECLARE_LOCALS(&__objc_anonymous_block_DispatchA_trans______2); [line 38]\n n$11=_fun___objc_alloc_no_fail(sizeof(class __objc_anonymous_block_DispatchA_trans______2):unsigned long) [line 38]\n *&__objc_anonymous_block_DispatchA_trans______2:class __objc_anonymous_block_DispatchA_trans______2=n$11 [line 38]\n n$12=*&#GB<codetoanalyze/objc/shared/block/dispatch.m>$DispatchA_trans_sharedInstance:struct objc_object* [line 38]\n *n$11.DispatchA_trans_sharedInstance:struct objc_object*=n$12 [line 38]\n *&dummy_block:_fn_(*)=(_fun___objc_anonymous_block_DispatchA_trans______2) [line 38]\n " shape="box"]
"DispatchA_transclass.873660bac717ee103f8564f0a0307a74_5" -> "DispatchA_transclass.873660bac717ee103f8564f0a0307a74_4" ;
@ -126,7 +126,7 @@ digraph iCFG {
"DispatchA_transclass.873660bac717ee103f8564f0a0307a74_4" -> "DispatchA_transclass.873660bac717ee103f8564f0a0307a74_3" ;
"DispatchA_transclass.873660bac717ee103f8564f0a0307a74_3" [label="3: Return Stmt \n n$7=*&#GB<codetoanalyze/objc/frontend/shared/block/dispatch.m>$DispatchA_trans_sharedInstance:struct objc_object* [line 42]\n *&return:struct objc_object*=n$7 [line 42]\n " shape="box"]
"DispatchA_transclass.873660bac717ee103f8564f0a0307a74_3" [label="3: Return Stmt \n n$7=*&#GB<codetoanalyze/objc/shared/block/dispatch.m>$DispatchA_trans_sharedInstance:struct objc_object* [line 42]\n *&return:struct objc_object*=n$7 [line 42]\n " shape="box"]
"DispatchA_transclass.873660bac717ee103f8564f0a0307a74_3" -> "DispatchA_transclass.873660bac717ee103f8564f0a0307a74_2" ;
@ -137,7 +137,7 @@ digraph iCFG {
"DispatchA_transclass.873660bac717ee103f8564f0a0307a74_1" -> "DispatchA_transclass.873660bac717ee103f8564f0a0307a74_5" ;
"__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(class DispatchA):unsigned long) [line 59]\n n$24=_fun_DispatchA_init(n$23:class DispatchA*) virtual [line 59]\n *&#GB<codetoanalyze/objc/frontend/shared/block/dispatch.m>$DispatchA_dispatch_a_block_variable_from_macro_static_storage__:struct 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(class DispatchA):unsigned long) [line 59]\n n$24=_fun_DispatchA_init(n$23:class DispatchA*) virtual [line 59]\n *&#GB<codetoanalyze/objc/shared/block/dispatch.m>$DispatchA_dispatch_a_block_variable_from_macro_static_storage__:struct 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" ;
@ -148,11 +148,11 @@ digraph iCFG {
"__objc_anonymous_block_DispatchA_dispatch_a_block_variable_from_macro______4.82bfd971252ed3dd1cbfd850406db887_1" -> "__objc_anonymous_block_DispatchA_dispatch_a_block_variable_from_macro______4.82bfd971252ed3dd1cbfd850406db887_3" ;
"DispatchA_sharedInstanceclass.1cbcd092f7dafd9879cdd8ce8fdac1b0_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(class __objc_anonymous_block_DispatchA_sharedInstance______1):unsigned long) [line 30]\n *&__objc_anonymous_block_DispatchA_sharedInstance______1:class __objc_anonymous_block_DispatchA_sharedInstance______1=n$4 [line 30]\n n$5=*&#GB<codetoanalyze/objc/frontend/shared/block/dispatch.m>$DispatchA_sharedInstance_sharedInstance:struct objc_object* [line 30]\n *n$4.DispatchA_sharedInstance_sharedInstance:struct objc_object*=n$5 [line 30]\n n$6=(_fun___objc_anonymous_block_DispatchA_sharedInstance______1)() [line 30]\n " shape="box"]
"DispatchA_sharedInstanceclass.1cbcd092f7dafd9879cdd8ce8fdac1b0_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(class __objc_anonymous_block_DispatchA_sharedInstance______1):unsigned long) [line 30]\n *&__objc_anonymous_block_DispatchA_sharedInstance______1:class __objc_anonymous_block_DispatchA_sharedInstance______1=n$4 [line 30]\n n$5=*&#GB<codetoanalyze/objc/shared/block/dispatch.m>$DispatchA_sharedInstance_sharedInstance:struct objc_object* [line 30]\n *n$4.DispatchA_sharedInstance_sharedInstance:struct objc_object*=n$5 [line 30]\n n$6=(_fun___objc_anonymous_block_DispatchA_sharedInstance______1)() [line 30]\n " shape="box"]
"DispatchA_sharedInstanceclass.1cbcd092f7dafd9879cdd8ce8fdac1b0_4" -> "DispatchA_sharedInstanceclass.1cbcd092f7dafd9879cdd8ce8fdac1b0_3" ;
"DispatchA_sharedInstanceclass.1cbcd092f7dafd9879cdd8ce8fdac1b0_3" [label="3: Return Stmt \n n$1=*&#GB<codetoanalyze/objc/frontend/shared/block/dispatch.m>$DispatchA_sharedInstance_sharedInstance:struct objc_object* [line 33]\n *&return:struct objc_object*=n$1 [line 33]\n " shape="box"]
"DispatchA_sharedInstanceclass.1cbcd092f7dafd9879cdd8ce8fdac1b0_3" [label="3: Return Stmt \n n$1=*&#GB<codetoanalyze/objc/shared/block/dispatch.m>$DispatchA_sharedInstance_sharedInstance:struct objc_object* [line 33]\n *&return:struct objc_object*=n$1 [line 33]\n " shape="box"]
"DispatchA_sharedInstanceclass.1cbcd092f7dafd9879cdd8ce8fdac1b0_3" -> "DispatchA_sharedInstanceclass.1cbcd092f7dafd9879cdd8ce8fdac1b0_2" ;
@ -163,7 +163,7 @@ digraph iCFG {
"DispatchA_sharedInstanceclass.1cbcd092f7dafd9879cdd8ce8fdac1b0_1" -> "DispatchA_sharedInstanceclass.1cbcd092f7dafd9879cdd8ce8fdac1b0_4" ;
"DispatchA_dispatch_a_block_variableclass.e931bb4f1c295d89acf6b725d9103d59_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(class __objc_anonymous_block_DispatchA_dispatch_a_block_variable______3):unsigned long) [line 47]\n *&__objc_anonymous_block_DispatchA_dispatch_a_block_variable______3:class __objc_anonymous_block_DispatchA_dispatch_a_block_variable______3=n$18 [line 47]\n n$19=*&#GB<codetoanalyze/objc/frontend/shared/block/dispatch.m>$DispatchA_dispatch_a_block_variable_static_storage__:struct objc_object* [line 47]\n *n$18.DispatchA_dispatch_a_block_variable_static_storage__:struct 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"]
"DispatchA_dispatch_a_block_variableclass.e931bb4f1c295d89acf6b725d9103d59_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(class __objc_anonymous_block_DispatchA_dispatch_a_block_variable______3):unsigned long) [line 47]\n *&__objc_anonymous_block_DispatchA_dispatch_a_block_variable______3:class __objc_anonymous_block_DispatchA_dispatch_a_block_variable______3=n$18 [line 47]\n n$19=*&#GB<codetoanalyze/objc/shared/block/dispatch.m>$DispatchA_dispatch_a_block_variable_static_storage__:struct objc_object* [line 47]\n *n$18.DispatchA_dispatch_a_block_variable_static_storage__:struct 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"]
"DispatchA_dispatch_a_block_variableclass.e931bb4f1c295d89acf6b725d9103d59_5" -> "DispatchA_dispatch_a_block_variableclass.e931bb4f1c295d89acf6b725d9103d59_4" ;
@ -171,7 +171,7 @@ digraph iCFG {
"DispatchA_dispatch_a_block_variableclass.e931bb4f1c295d89acf6b725d9103d59_4" -> "DispatchA_dispatch_a_block_variableclass.e931bb4f1c295d89acf6b725d9103d59_3" ;
"DispatchA_dispatch_a_block_variableclass.e931bb4f1c295d89acf6b725d9103d59_3" [label="3: Return Stmt \n n$13=*&#GB<codetoanalyze/objc/frontend/shared/block/dispatch.m>$DispatchA_dispatch_a_block_variable_static_storage__:struct objc_object* [line 52]\n *&return:struct objc_object*=n$13 [line 52]\n " shape="box"]
"DispatchA_dispatch_a_block_variableclass.e931bb4f1c295d89acf6b725d9103d59_3" [label="3: Return Stmt \n n$13=*&#GB<codetoanalyze/objc/shared/block/dispatch.m>$DispatchA_dispatch_a_block_variable_static_storage__:struct objc_object* [line 52]\n *&return:struct objc_object*=n$13 [line 52]\n " shape="box"]
"DispatchA_dispatch_a_block_variableclass.e931bb4f1c295d89acf6b725d9103d59_3" -> "DispatchA_dispatch_a_block_variableclass.e931bb4f1c295d89acf6b725d9103d59_2" ;

@ -1,10 +1,10 @@
/* @generated */
digraph iCFG {
"__objc_anonymous_block_DispatchEx_dispatch_barrier_example______6.f3e27d4badebf4adf9313b39c9688c30_4" [label="4: BinaryOperatorStmt: Assign \n n$44=_fun___objc_alloc_no_fail(sizeof(class DispatchEx):unsigned long) [line 78]\n n$45=_fun_DispatchEx_init(n$44:class DispatchEx*) virtual [line 78]\n *&#GB<codetoanalyze/objc/frontend/shared/block/dispatch_examples.m>$DispatchEx_dispatch_barrier_example_a:class 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(class DispatchEx):unsigned long) [line 78]\n n$45=_fun_DispatchEx_init(n$44:class DispatchEx*) virtual [line 78]\n *&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_barrier_example_a:class 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" ;
"__objc_anonymous_block_DispatchEx_dispatch_barrier_example______6.f3e27d4badebf4adf9313b39c9688c30_3" [label="3: BinaryOperatorStmt: Assign \n n$43=*&#GB<codetoanalyze/objc/frontend/shared/block/dispatch_examples.m>$DispatchEx_dispatch_barrier_example_a:class DispatchEx* [line 79]\n *n$43.x:int=10 [line 79]\n " shape="box"]
"__objc_anonymous_block_DispatchEx_dispatch_barrier_example______6.f3e27d4badebf4adf9313b39c9688c30_3" [label="3: BinaryOperatorStmt: Assign \n n$43=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_barrier_example_a:class DispatchEx* [line 79]\n *n$43.x:int=10 [line 79]\n " shape="box"]
"__objc_anonymous_block_DispatchEx_dispatch_barrier_example______6.f3e27d4badebf4adf9313b39c9688c30_3" -> "__objc_anonymous_block_DispatchEx_dispatch_barrier_example______6.f3e27d4badebf4adf9313b39c9688c30_2" ;
@ -15,11 +15,11 @@ digraph iCFG {
"__objc_anonymous_block_DispatchEx_dispatch_barrier_example______6.f3e27d4badebf4adf9313b39c9688c30_1" -> "__objc_anonymous_block_DispatchEx_dispatch_barrier_example______6.f3e27d4badebf4adf9313b39c9688c30_4" ;
"__objc_anonymous_block_DispatchEx_dispatch_after_example______3.2346df1c3bc37dee82860aa53ebe3ece_4" [label="4: BinaryOperatorStmt: Assign \n n$20=_fun___objc_alloc_no_fail(sizeof(class DispatchEx):unsigned long) [line 51]\n n$21=_fun_DispatchEx_init(n$20:class DispatchEx*) virtual [line 51]\n *&#GB<codetoanalyze/objc/frontend/shared/block/dispatch_examples.m>$DispatchEx_dispatch_after_example_a:class 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(class DispatchEx):unsigned long) [line 51]\n n$21=_fun_DispatchEx_init(n$20:class DispatchEx*) virtual [line 51]\n *&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_after_example_a:class 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" ;
"__objc_anonymous_block_DispatchEx_dispatch_after_example______3.2346df1c3bc37dee82860aa53ebe3ece_3" [label="3: BinaryOperatorStmt: Assign \n n$19=*&#GB<codetoanalyze/objc/frontend/shared/block/dispatch_examples.m>$DispatchEx_dispatch_after_example_a:class DispatchEx* [line 52]\n *n$19.x:int=10 [line 52]\n " shape="box"]
"__objc_anonymous_block_DispatchEx_dispatch_after_example______3.2346df1c3bc37dee82860aa53ebe3ece_3" [label="3: BinaryOperatorStmt: Assign \n n$19=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_after_example_a:class DispatchEx* [line 52]\n *n$19.x:int=10 [line 52]\n " shape="box"]
"__objc_anonymous_block_DispatchEx_dispatch_after_example______3.2346df1c3bc37dee82860aa53ebe3ece_3" -> "__objc_anonymous_block_DispatchEx_dispatch_after_example______3.2346df1c3bc37dee82860aa53ebe3ece_2" ;
@ -30,15 +30,15 @@ digraph iCFG {
"__objc_anonymous_block_DispatchEx_dispatch_after_example______3.2346df1c3bc37dee82860aa53ebe3ece_1" -> "__objc_anonymous_block_DispatchEx_dispatch_after_example______3.2346df1c3bc37dee82860aa53ebe3ece_4" ;
"DispatchEx_dispatch_once_exampleclass.88a04a143c416b36a948e54f9a79492f_5" [label="5: DeclStmt \n *&#GB<codetoanalyze/objc/frontend/shared/block/dispatch_examples.m>$DispatchEx_dispatch_once_example_a:class DispatchEx*=0 [line 25]\n " shape="box"]
"DispatchEx_dispatch_once_exampleclass.88a04a143c416b36a948e54f9a79492f_5" [label="5: DeclStmt \n *&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_once_example_a:class DispatchEx*=0 [line 25]\n " shape="box"]
"DispatchEx_dispatch_once_exampleclass.88a04a143c416b36a948e54f9a79492f_5" -> "DispatchEx_dispatch_once_exampleclass.88a04a143c416b36a948e54f9a79492f_4" ;
"DispatchEx_dispatch_once_exampleclass.88a04a143c416b36a948e54f9a79492f_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(class __objc_anonymous_block_DispatchEx_dispatch_once_example______1):unsigned long) [line 29]\n *&__objc_anonymous_block_DispatchEx_dispatch_once_example______1:class __objc_anonymous_block_DispatchEx_dispatch_once_example______1=n$6 [line 29]\n n$7=*&#GB<codetoanalyze/objc/frontend/shared/block/dispatch_examples.m>$DispatchEx_dispatch_once_example_a:class DispatchEx* [line 29]\n *n$6.DispatchEx_dispatch_once_example_a:class DispatchEx*=n$7 [line 29]\n n$8=(_fun___objc_anonymous_block_DispatchEx_dispatch_once_example______1)() [line 29]\n " shape="box"]
"DispatchEx_dispatch_once_exampleclass.88a04a143c416b36a948e54f9a79492f_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(class __objc_anonymous_block_DispatchEx_dispatch_once_example______1):unsigned long) [line 29]\n *&__objc_anonymous_block_DispatchEx_dispatch_once_example______1:class __objc_anonymous_block_DispatchEx_dispatch_once_example______1=n$6 [line 29]\n n$7=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_once_example_a:class DispatchEx* [line 29]\n *n$6.DispatchEx_dispatch_once_example_a:class DispatchEx*=n$7 [line 29]\n n$8=(_fun___objc_anonymous_block_DispatchEx_dispatch_once_example______1)() [line 29]\n " shape="box"]
"DispatchEx_dispatch_once_exampleclass.88a04a143c416b36a948e54f9a79492f_4" -> "DispatchEx_dispatch_once_exampleclass.88a04a143c416b36a948e54f9a79492f_3" ;
"DispatchEx_dispatch_once_exampleclass.88a04a143c416b36a948e54f9a79492f_3" [label="3: Return Stmt \n n$1=*&#GB<codetoanalyze/objc/frontend/shared/block/dispatch_examples.m>$DispatchEx_dispatch_once_example_a:class DispatchEx* [line 33]\n n$2=*n$1.x:int [line 33]\n *&return:int=n$2 [line 33]\n " shape="box"]
"DispatchEx_dispatch_once_exampleclass.88a04a143c416b36a948e54f9a79492f_3" [label="3: Return Stmt \n n$1=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_once_example_a:class DispatchEx* [line 33]\n n$2=*n$1.x:int [line 33]\n *&return:int=n$2 [line 33]\n " shape="box"]
"DispatchEx_dispatch_once_exampleclass.88a04a143c416b36a948e54f9a79492f_3" -> "DispatchEx_dispatch_once_exampleclass.88a04a143c416b36a948e54f9a79492f_2" ;
@ -60,15 +60,15 @@ digraph iCFG {
"DispatchEx_initinstance.f373aa3094c26cef9aa20d4a9edafd64_1" -> "DispatchEx_initinstance.f373aa3094c26cef9aa20d4a9edafd64_3" ;
"DispatchEx_dispatch_group_notify_exampleclass.5abe79ad37e26b374978dd23ea90b0f0_5" [label="5: DeclStmt \n *&#GB<codetoanalyze/objc/frontend/shared/block/dispatch_examples.m>$DispatchEx_dispatch_group_notify_example_a:class DispatchEx*=0 [line 67]\n " shape="box"]
"DispatchEx_dispatch_group_notify_exampleclass.5abe79ad37e26b374978dd23ea90b0f0_5" [label="5: DeclStmt \n *&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_group_notify_example_a:class DispatchEx*=0 [line 67]\n " shape="box"]
"DispatchEx_dispatch_group_notify_exampleclass.5abe79ad37e26b374978dd23ea90b0f0_5" -> "DispatchEx_dispatch_group_notify_exampleclass.5abe79ad37e26b374978dd23ea90b0f0_4" ;
"DispatchEx_dispatch_group_notify_exampleclass.5abe79ad37e26b374978dd23ea90b0f0_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(class __objc_anonymous_block_DispatchEx_dispatch_group_notify_example______5):unsigned long) [line 68]\n *&__objc_anonymous_block_DispatchEx_dispatch_group_notify_example______5:class __objc_anonymous_block_DispatchEx_dispatch_group_notify_example______5=n$38 [line 68]\n n$39=*&#GB<codetoanalyze/objc/frontend/shared/block/dispatch_examples.m>$DispatchEx_dispatch_group_notify_example_a:class DispatchEx* [line 68]\n *n$38.DispatchEx_dispatch_group_notify_example_a:class DispatchEx*=n$39 [line 68]\n n$40=(_fun___objc_anonymous_block_DispatchEx_dispatch_group_notify_example______5)() [line 68]\n " shape="box"]
"DispatchEx_dispatch_group_notify_exampleclass.5abe79ad37e26b374978dd23ea90b0f0_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(class __objc_anonymous_block_DispatchEx_dispatch_group_notify_example______5):unsigned long) [line 68]\n *&__objc_anonymous_block_DispatchEx_dispatch_group_notify_example______5:class __objc_anonymous_block_DispatchEx_dispatch_group_notify_example______5=n$38 [line 68]\n n$39=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_group_notify_example_a:class DispatchEx* [line 68]\n *n$38.DispatchEx_dispatch_group_notify_example_a:class DispatchEx*=n$39 [line 68]\n n$40=(_fun___objc_anonymous_block_DispatchEx_dispatch_group_notify_example______5)() [line 68]\n " shape="box"]
"DispatchEx_dispatch_group_notify_exampleclass.5abe79ad37e26b374978dd23ea90b0f0_4" -> "DispatchEx_dispatch_group_notify_exampleclass.5abe79ad37e26b374978dd23ea90b0f0_3" ;
"DispatchEx_dispatch_group_notify_exampleclass.5abe79ad37e26b374978dd23ea90b0f0_3" [label="3: Return Stmt \n n$33=*&#GB<codetoanalyze/objc/frontend/shared/block/dispatch_examples.m>$DispatchEx_dispatch_group_notify_example_a:class DispatchEx* [line 72]\n n$34=*n$33.x:int [line 72]\n *&return:int=n$34 [line 72]\n " shape="box"]
"DispatchEx_dispatch_group_notify_exampleclass.5abe79ad37e26b374978dd23ea90b0f0_3" [label="3: Return Stmt \n n$33=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_group_notify_example_a:class DispatchEx* [line 72]\n n$34=*n$33.x:int [line 72]\n *&return:int=n$34 [line 72]\n " shape="box"]
"DispatchEx_dispatch_group_notify_exampleclass.5abe79ad37e26b374978dd23ea90b0f0_3" -> "DispatchEx_dispatch_group_notify_exampleclass.5abe79ad37e26b374978dd23ea90b0f0_2" ;
@ -79,11 +79,11 @@ digraph iCFG {
"DispatchEx_dispatch_group_notify_exampleclass.5abe79ad37e26b374978dd23ea90b0f0_1" -> "DispatchEx_dispatch_group_notify_exampleclass.5abe79ad37e26b374978dd23ea90b0f0_5" ;
"__objc_anonymous_block_DispatchEx_dispatch_group_notify_example______5.7a26e229a9d9a9dcb5d0d430f7cacd00_4" [label="4: BinaryOperatorStmt: Assign \n n$36=_fun___objc_alloc_no_fail(sizeof(class DispatchEx):unsigned long) [line 69]\n n$37=_fun_DispatchEx_init(n$36:class DispatchEx*) virtual [line 69]\n *&#GB<codetoanalyze/objc/frontend/shared/block/dispatch_examples.m>$DispatchEx_dispatch_group_notify_example_a:class 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(class DispatchEx):unsigned long) [line 69]\n n$37=_fun_DispatchEx_init(n$36:class DispatchEx*) virtual [line 69]\n *&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_group_notify_example_a:class 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" ;
"__objc_anonymous_block_DispatchEx_dispatch_group_notify_example______5.7a26e229a9d9a9dcb5d0d430f7cacd00_3" [label="3: BinaryOperatorStmt: Assign \n n$35=*&#GB<codetoanalyze/objc/frontend/shared/block/dispatch_examples.m>$DispatchEx_dispatch_group_notify_example_a:class DispatchEx* [line 70]\n *n$35.x:int=10 [line 70]\n " shape="box"]
"__objc_anonymous_block_DispatchEx_dispatch_group_notify_example______5.7a26e229a9d9a9dcb5d0d430f7cacd00_3" [label="3: BinaryOperatorStmt: Assign \n n$35=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_group_notify_example_a:class DispatchEx* [line 70]\n *n$35.x:int=10 [line 70]\n " shape="box"]
"__objc_anonymous_block_DispatchEx_dispatch_group_notify_example______5.7a26e229a9d9a9dcb5d0d430f7cacd00_3" -> "__objc_anonymous_block_DispatchEx_dispatch_group_notify_example______5.7a26e229a9d9a9dcb5d0d430f7cacd00_2" ;
@ -94,15 +94,15 @@ digraph iCFG {
"__objc_anonymous_block_DispatchEx_dispatch_group_notify_example______5.7a26e229a9d9a9dcb5d0d430f7cacd00_1" -> "__objc_anonymous_block_DispatchEx_dispatch_group_notify_example______5.7a26e229a9d9a9dcb5d0d430f7cacd00_4" ;
"DispatchEx_dispatch_after_exampleclass.35e428c2a33c639058e557baad5fb3b1_5" [label="5: DeclStmt \n *&#GB<codetoanalyze/objc/frontend/shared/block/dispatch_examples.m>$DispatchEx_dispatch_after_example_a:class DispatchEx*=0 [line 47]\n " shape="box"]
"DispatchEx_dispatch_after_exampleclass.35e428c2a33c639058e557baad5fb3b1_5" [label="5: DeclStmt \n *&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_after_example_a:class DispatchEx*=0 [line 47]\n " shape="box"]
"DispatchEx_dispatch_after_exampleclass.35e428c2a33c639058e557baad5fb3b1_5" -> "DispatchEx_dispatch_after_exampleclass.35e428c2a33c639058e557baad5fb3b1_4" ;
"DispatchEx_dispatch_after_exampleclass.35e428c2a33c639058e557baad5fb3b1_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(class __objc_anonymous_block_DispatchEx_dispatch_after_example______3):unsigned long) [line 50]\n *&__objc_anonymous_block_DispatchEx_dispatch_after_example______3:class __objc_anonymous_block_DispatchEx_dispatch_after_example______3=n$22 [line 50]\n n$23=*&#GB<codetoanalyze/objc/frontend/shared/block/dispatch_examples.m>$DispatchEx_dispatch_after_example_a:class DispatchEx* [line 50]\n *n$22.DispatchEx_dispatch_after_example_a:class DispatchEx*=n$23 [line 50]\n n$24=(_fun___objc_anonymous_block_DispatchEx_dispatch_after_example______3)() [line 48]\n " shape="box"]
"DispatchEx_dispatch_after_exampleclass.35e428c2a33c639058e557baad5fb3b1_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(class __objc_anonymous_block_DispatchEx_dispatch_after_example______3):unsigned long) [line 50]\n *&__objc_anonymous_block_DispatchEx_dispatch_after_example______3:class __objc_anonymous_block_DispatchEx_dispatch_after_example______3=n$22 [line 50]\n n$23=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_after_example_a:class DispatchEx* [line 50]\n *n$22.DispatchEx_dispatch_after_example_a:class DispatchEx*=n$23 [line 50]\n n$24=(_fun___objc_anonymous_block_DispatchEx_dispatch_after_example______3)() [line 48]\n " shape="box"]
"DispatchEx_dispatch_after_exampleclass.35e428c2a33c639058e557baad5fb3b1_4" -> "DispatchEx_dispatch_after_exampleclass.35e428c2a33c639058e557baad5fb3b1_3" ;
"DispatchEx_dispatch_after_exampleclass.35e428c2a33c639058e557baad5fb3b1_3" [label="3: Return Stmt \n n$17=*&#GB<codetoanalyze/objc/frontend/shared/block/dispatch_examples.m>$DispatchEx_dispatch_after_example_a:class DispatchEx* [line 54]\n n$18=*n$17.x:int [line 54]\n *&return:int=n$18 [line 54]\n " shape="box"]
"DispatchEx_dispatch_after_exampleclass.35e428c2a33c639058e557baad5fb3b1_3" [label="3: Return Stmt \n n$17=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_after_example_a:class DispatchEx* [line 54]\n n$18=*n$17.x:int [line 54]\n *&return:int=n$18 [line 54]\n " shape="box"]
"DispatchEx_dispatch_after_exampleclass.35e428c2a33c639058e557baad5fb3b1_3" -> "DispatchEx_dispatch_after_exampleclass.35e428c2a33c639058e557baad5fb3b1_2" ;
@ -113,11 +113,11 @@ digraph iCFG {
"DispatchEx_dispatch_after_exampleclass.35e428c2a33c639058e557baad5fb3b1_1" -> "DispatchEx_dispatch_after_exampleclass.35e428c2a33c639058e557baad5fb3b1_5" ;
"__objc_anonymous_block_DispatchEx_dispatch_once_example______1.158d97f9901ded6a43590bdae67c9275_4" [label="4: BinaryOperatorStmt: Assign \n n$4=_fun___objc_alloc_no_fail(sizeof(class DispatchEx):unsigned long) [line 30]\n n$5=_fun_DispatchEx_init(n$4:class DispatchEx*) virtual [line 30]\n *&#GB<codetoanalyze/objc/frontend/shared/block/dispatch_examples.m>$DispatchEx_dispatch_once_example_a:class 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(class DispatchEx):unsigned long) [line 30]\n n$5=_fun_DispatchEx_init(n$4:class DispatchEx*) virtual [line 30]\n *&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_once_example_a:class 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" ;
"__objc_anonymous_block_DispatchEx_dispatch_once_example______1.158d97f9901ded6a43590bdae67c9275_3" [label="3: BinaryOperatorStmt: Assign \n n$3=*&#GB<codetoanalyze/objc/frontend/shared/block/dispatch_examples.m>$DispatchEx_dispatch_once_example_a:class DispatchEx* [line 31]\n *n$3.x:int=10 [line 31]\n " shape="box"]
"__objc_anonymous_block_DispatchEx_dispatch_once_example______1.158d97f9901ded6a43590bdae67c9275_3" [label="3: BinaryOperatorStmt: Assign \n n$3=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_once_example_a:class DispatchEx* [line 31]\n *n$3.x:int=10 [line 31]\n " shape="box"]
"__objc_anonymous_block_DispatchEx_dispatch_once_example______1.158d97f9901ded6a43590bdae67c9275_3" -> "__objc_anonymous_block_DispatchEx_dispatch_once_example______1.158d97f9901ded6a43590bdae67c9275_2" ;
@ -128,11 +128,11 @@ digraph iCFG {
"__objc_anonymous_block_DispatchEx_dispatch_once_example______1.158d97f9901ded6a43590bdae67c9275_1" -> "__objc_anonymous_block_DispatchEx_dispatch_once_example______1.158d97f9901ded6a43590bdae67c9275_4" ;
"__objc_anonymous_block_DispatchEx_dispatch_async_example______2.188fa4ba6cec1621d948ea1747df2c34_4" [label="4: BinaryOperatorStmt: Assign \n n$12=_fun___objc_alloc_no_fail(sizeof(class DispatchEx):unsigned long) [line 40]\n n$13=_fun_DispatchEx_init(n$12:class DispatchEx*) virtual [line 40]\n *&#GB<codetoanalyze/objc/frontend/shared/block/dispatch_examples.m>$DispatchEx_dispatch_async_example_a:class 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(class DispatchEx):unsigned long) [line 40]\n n$13=_fun_DispatchEx_init(n$12:class DispatchEx*) virtual [line 40]\n *&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_async_example_a:class 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" ;
"__objc_anonymous_block_DispatchEx_dispatch_async_example______2.188fa4ba6cec1621d948ea1747df2c34_3" [label="3: BinaryOperatorStmt: Assign \n n$11=*&#GB<codetoanalyze/objc/frontend/shared/block/dispatch_examples.m>$DispatchEx_dispatch_async_example_a:class DispatchEx* [line 41]\n *n$11.x:int=10 [line 41]\n " shape="box"]
"__objc_anonymous_block_DispatchEx_dispatch_async_example______2.188fa4ba6cec1621d948ea1747df2c34_3" [label="3: BinaryOperatorStmt: Assign \n n$11=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_async_example_a:class DispatchEx* [line 41]\n *n$11.x:int=10 [line 41]\n " shape="box"]
"__objc_anonymous_block_DispatchEx_dispatch_async_example______2.188fa4ba6cec1621d948ea1747df2c34_3" -> "__objc_anonymous_block_DispatchEx_dispatch_async_example______2.188fa4ba6cec1621d948ea1747df2c34_2" ;
@ -143,15 +143,15 @@ digraph iCFG {
"__objc_anonymous_block_DispatchEx_dispatch_async_example______2.188fa4ba6cec1621d948ea1747df2c34_1" -> "__objc_anonymous_block_DispatchEx_dispatch_async_example______2.188fa4ba6cec1621d948ea1747df2c34_4" ;
"DispatchEx_dispatch_group_exampleclass.1dab66f0b4786a24195536869b8cbf4c_5" [label="5: DeclStmt \n *&#GB<codetoanalyze/objc/frontend/shared/block/dispatch_examples.m>$DispatchEx_dispatch_group_example_a:class DispatchEx*=0 [line 58]\n " shape="box"]
"DispatchEx_dispatch_group_exampleclass.1dab66f0b4786a24195536869b8cbf4c_5" [label="5: DeclStmt \n *&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_group_example_a:class DispatchEx*=0 [line 58]\n " shape="box"]
"DispatchEx_dispatch_group_exampleclass.1dab66f0b4786a24195536869b8cbf4c_5" -> "DispatchEx_dispatch_group_exampleclass.1dab66f0b4786a24195536869b8cbf4c_4" ;
"DispatchEx_dispatch_group_exampleclass.1dab66f0b4786a24195536869b8cbf4c_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(class __objc_anonymous_block_DispatchEx_dispatch_group_example______4):unsigned long) [line 59]\n *&__objc_anonymous_block_DispatchEx_dispatch_group_example______4:class __objc_anonymous_block_DispatchEx_dispatch_group_example______4=n$30 [line 59]\n n$31=*&#GB<codetoanalyze/objc/frontend/shared/block/dispatch_examples.m>$DispatchEx_dispatch_group_example_a:class DispatchEx* [line 59]\n *n$30.DispatchEx_dispatch_group_example_a:class DispatchEx*=n$31 [line 59]\n n$32=(_fun___objc_anonymous_block_DispatchEx_dispatch_group_example______4)() [line 59]\n " shape="box"]
"DispatchEx_dispatch_group_exampleclass.1dab66f0b4786a24195536869b8cbf4c_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(class __objc_anonymous_block_DispatchEx_dispatch_group_example______4):unsigned long) [line 59]\n *&__objc_anonymous_block_DispatchEx_dispatch_group_example______4:class __objc_anonymous_block_DispatchEx_dispatch_group_example______4=n$30 [line 59]\n n$31=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_group_example_a:class DispatchEx* [line 59]\n *n$30.DispatchEx_dispatch_group_example_a:class DispatchEx*=n$31 [line 59]\n n$32=(_fun___objc_anonymous_block_DispatchEx_dispatch_group_example______4)() [line 59]\n " shape="box"]
"DispatchEx_dispatch_group_exampleclass.1dab66f0b4786a24195536869b8cbf4c_4" -> "DispatchEx_dispatch_group_exampleclass.1dab66f0b4786a24195536869b8cbf4c_3" ;
"DispatchEx_dispatch_group_exampleclass.1dab66f0b4786a24195536869b8cbf4c_3" [label="3: Return Stmt \n n$25=*&#GB<codetoanalyze/objc/frontend/shared/block/dispatch_examples.m>$DispatchEx_dispatch_group_example_a:class DispatchEx* [line 63]\n n$26=*n$25.x:int [line 63]\n *&return:int=n$26 [line 63]\n " shape="box"]
"DispatchEx_dispatch_group_exampleclass.1dab66f0b4786a24195536869b8cbf4c_3" [label="3: Return Stmt \n n$25=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_group_example_a:class DispatchEx* [line 63]\n n$26=*n$25.x:int [line 63]\n *&return:int=n$26 [line 63]\n " shape="box"]
"DispatchEx_dispatch_group_exampleclass.1dab66f0b4786a24195536869b8cbf4c_3" -> "DispatchEx_dispatch_group_exampleclass.1dab66f0b4786a24195536869b8cbf4c_2" ;
@ -162,15 +162,15 @@ digraph iCFG {
"DispatchEx_dispatch_group_exampleclass.1dab66f0b4786a24195536869b8cbf4c_1" -> "DispatchEx_dispatch_group_exampleclass.1dab66f0b4786a24195536869b8cbf4c_5" ;
"DispatchEx_dispatch_async_exampleclass.d0682454f92c478110c2967d9b66ce4f_5" [label="5: DeclStmt \n *&#GB<codetoanalyze/objc/frontend/shared/block/dispatch_examples.m>$DispatchEx_dispatch_async_example_a:class DispatchEx*=0 [line 37]\n " shape="box"]
"DispatchEx_dispatch_async_exampleclass.d0682454f92c478110c2967d9b66ce4f_5" [label="5: DeclStmt \n *&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_async_example_a:class DispatchEx*=0 [line 37]\n " shape="box"]
"DispatchEx_dispatch_async_exampleclass.d0682454f92c478110c2967d9b66ce4f_5" -> "DispatchEx_dispatch_async_exampleclass.d0682454f92c478110c2967d9b66ce4f_4" ;
"DispatchEx_dispatch_async_exampleclass.d0682454f92c478110c2967d9b66ce4f_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(class __objc_anonymous_block_DispatchEx_dispatch_async_example______2):unsigned long) [line 39]\n *&__objc_anonymous_block_DispatchEx_dispatch_async_example______2:class __objc_anonymous_block_DispatchEx_dispatch_async_example______2=n$14 [line 39]\n n$15=*&#GB<codetoanalyze/objc/frontend/shared/block/dispatch_examples.m>$DispatchEx_dispatch_async_example_a:class DispatchEx* [line 39]\n *n$14.DispatchEx_dispatch_async_example_a:class DispatchEx*=n$15 [line 39]\n n$16=(_fun___objc_anonymous_block_DispatchEx_dispatch_async_example______2)() [line 38]\n " shape="box"]
"DispatchEx_dispatch_async_exampleclass.d0682454f92c478110c2967d9b66ce4f_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(class __objc_anonymous_block_DispatchEx_dispatch_async_example______2):unsigned long) [line 39]\n *&__objc_anonymous_block_DispatchEx_dispatch_async_example______2:class __objc_anonymous_block_DispatchEx_dispatch_async_example______2=n$14 [line 39]\n n$15=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_async_example_a:class DispatchEx* [line 39]\n *n$14.DispatchEx_dispatch_async_example_a:class DispatchEx*=n$15 [line 39]\n n$16=(_fun___objc_anonymous_block_DispatchEx_dispatch_async_example______2)() [line 38]\n " shape="box"]
"DispatchEx_dispatch_async_exampleclass.d0682454f92c478110c2967d9b66ce4f_4" -> "DispatchEx_dispatch_async_exampleclass.d0682454f92c478110c2967d9b66ce4f_3" ;
"DispatchEx_dispatch_async_exampleclass.d0682454f92c478110c2967d9b66ce4f_3" [label="3: Return Stmt \n n$9=*&#GB<codetoanalyze/objc/frontend/shared/block/dispatch_examples.m>$DispatchEx_dispatch_async_example_a:class DispatchEx* [line 43]\n n$10=*n$9.x:int [line 43]\n *&return:int=n$10 [line 43]\n " shape="box"]
"DispatchEx_dispatch_async_exampleclass.d0682454f92c478110c2967d9b66ce4f_3" [label="3: Return Stmt \n n$9=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_async_example_a:class DispatchEx* [line 43]\n n$10=*n$9.x:int [line 43]\n *&return:int=n$10 [line 43]\n " shape="box"]
"DispatchEx_dispatch_async_exampleclass.d0682454f92c478110c2967d9b66ce4f_3" -> "DispatchEx_dispatch_async_exampleclass.d0682454f92c478110c2967d9b66ce4f_2" ;
@ -181,15 +181,15 @@ digraph iCFG {
"DispatchEx_dispatch_async_exampleclass.d0682454f92c478110c2967d9b66ce4f_1" -> "DispatchEx_dispatch_async_exampleclass.d0682454f92c478110c2967d9b66ce4f_5" ;
"DispatchEx_dispatch_barrier_exampleclass.1a42e144a2ace9fe8e8014b0d6fa2d0d_5" [label="5: DeclStmt \n *&#GB<codetoanalyze/objc/frontend/shared/block/dispatch_examples.m>$DispatchEx_dispatch_barrier_example_a:class DispatchEx*=0 [line 76]\n " shape="box"]
"DispatchEx_dispatch_barrier_exampleclass.1a42e144a2ace9fe8e8014b0d6fa2d0d_5" [label="5: DeclStmt \n *&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_barrier_example_a:class DispatchEx*=0 [line 76]\n " shape="box"]
"DispatchEx_dispatch_barrier_exampleclass.1a42e144a2ace9fe8e8014b0d6fa2d0d_5" -> "DispatchEx_dispatch_barrier_exampleclass.1a42e144a2ace9fe8e8014b0d6fa2d0d_4" ;
"DispatchEx_dispatch_barrier_exampleclass.1a42e144a2ace9fe8e8014b0d6fa2d0d_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(class __objc_anonymous_block_DispatchEx_dispatch_barrier_example______6):unsigned long) [line 77]\n *&__objc_anonymous_block_DispatchEx_dispatch_barrier_example______6:class __objc_anonymous_block_DispatchEx_dispatch_barrier_example______6=n$46 [line 77]\n n$47=*&#GB<codetoanalyze/objc/frontend/shared/block/dispatch_examples.m>$DispatchEx_dispatch_barrier_example_a:class DispatchEx* [line 77]\n *n$46.DispatchEx_dispatch_barrier_example_a:class DispatchEx*=n$47 [line 77]\n n$48=(_fun___objc_anonymous_block_DispatchEx_dispatch_barrier_example______6)() [line 77]\n " shape="box"]
"DispatchEx_dispatch_barrier_exampleclass.1a42e144a2ace9fe8e8014b0d6fa2d0d_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(class __objc_anonymous_block_DispatchEx_dispatch_barrier_example______6):unsigned long) [line 77]\n *&__objc_anonymous_block_DispatchEx_dispatch_barrier_example______6:class __objc_anonymous_block_DispatchEx_dispatch_barrier_example______6=n$46 [line 77]\n n$47=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_barrier_example_a:class DispatchEx* [line 77]\n *n$46.DispatchEx_dispatch_barrier_example_a:class DispatchEx*=n$47 [line 77]\n n$48=(_fun___objc_anonymous_block_DispatchEx_dispatch_barrier_example______6)() [line 77]\n " shape="box"]
"DispatchEx_dispatch_barrier_exampleclass.1a42e144a2ace9fe8e8014b0d6fa2d0d_4" -> "DispatchEx_dispatch_barrier_exampleclass.1a42e144a2ace9fe8e8014b0d6fa2d0d_3" ;
"DispatchEx_dispatch_barrier_exampleclass.1a42e144a2ace9fe8e8014b0d6fa2d0d_3" [label="3: Return Stmt \n n$41=*&#GB<codetoanalyze/objc/frontend/shared/block/dispatch_examples.m>$DispatchEx_dispatch_barrier_example_a:class DispatchEx* [line 81]\n n$42=*n$41.x:int [line 81]\n *&return:int=n$42 [line 81]\n " shape="box"]
"DispatchEx_dispatch_barrier_exampleclass.1a42e144a2ace9fe8e8014b0d6fa2d0d_3" [label="3: Return Stmt \n n$41=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_barrier_example_a:class DispatchEx* [line 81]\n n$42=*n$41.x:int [line 81]\n *&return:int=n$42 [line 81]\n " shape="box"]
"DispatchEx_dispatch_barrier_exampleclass.1a42e144a2ace9fe8e8014b0d6fa2d0d_3" -> "DispatchEx_dispatch_barrier_exampleclass.1a42e144a2ace9fe8e8014b0d6fa2d0d_2" ;
@ -200,11 +200,11 @@ digraph iCFG {
"DispatchEx_dispatch_barrier_exampleclass.1a42e144a2ace9fe8e8014b0d6fa2d0d_1" -> "DispatchEx_dispatch_barrier_exampleclass.1a42e144a2ace9fe8e8014b0d6fa2d0d_5" ;
"__objc_anonymous_block_DispatchEx_dispatch_group_example______4.4458b8e68269255e8dd6690cdc49ab76_4" [label="4: BinaryOperatorStmt: Assign \n n$28=_fun___objc_alloc_no_fail(sizeof(class DispatchEx):unsigned long) [line 60]\n n$29=_fun_DispatchEx_init(n$28:class DispatchEx*) virtual [line 60]\n *&#GB<codetoanalyze/objc/frontend/shared/block/dispatch_examples.m>$DispatchEx_dispatch_group_example_a:class 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(class DispatchEx):unsigned long) [line 60]\n n$29=_fun_DispatchEx_init(n$28:class DispatchEx*) virtual [line 60]\n *&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_group_example_a:class 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" ;
"__objc_anonymous_block_DispatchEx_dispatch_group_example______4.4458b8e68269255e8dd6690cdc49ab76_3" [label="3: BinaryOperatorStmt: Assign \n n$27=*&#GB<codetoanalyze/objc/frontend/shared/block/dispatch_examples.m>$DispatchEx_dispatch_group_example_a:class DispatchEx* [line 61]\n *n$27.x:int=10 [line 61]\n " shape="box"]
"__objc_anonymous_block_DispatchEx_dispatch_group_example______4.4458b8e68269255e8dd6690cdc49ab76_3" [label="3: BinaryOperatorStmt: Assign \n n$27=*&#GB<codetoanalyze/objc/shared/block/dispatch_examples.m>$DispatchEx_dispatch_group_example_a:class DispatchEx* [line 61]\n *n$27.x:int=10 [line 61]\n " shape="box"]
"__objc_anonymous_block_DispatchEx_dispatch_group_example______4.4458b8e68269255e8dd6690cdc49ab76_3" -> "__objc_anonymous_block_DispatchEx_dispatch_group_example______4.4458b8e68269255e8dd6690cdc49ab76_2" ;

@ -1,6 +1,6 @@
/* @generated */
digraph iCFG {
"DispatchInMacroTest.f5d56763274a479d06265a2f9562bef1_3" [label="3: Return Stmt \n DECLARE_LOCALS(&__objc_anonymous_block_DispatchInMacroTest______1); [line 23]\n n$3=_fun___objc_alloc_no_fail(sizeof(class __objc_anonymous_block_DispatchInMacroTest______1):unsigned long) [line 23]\n *&__objc_anonymous_block_DispatchInMacroTest______1:class __objc_anonymous_block_DispatchInMacroTest______1=n$3 [line 23]\n n$4=*&#GB<codetoanalyze/objc/frontend/shared/block/dispatch_in_macro.m>$DispatchInMacroTest_static_storage:class NSObject* [line 23]\n *n$3.DispatchInMacroTest_static_storage:class NSObject*=n$4 [line 23]\n n$5=(_fun___objc_anonymous_block_DispatchInMacroTest______1)() [line 23]\n n$0=*&#GB<codetoanalyze/objc/frontend/shared/block/dispatch_in_macro.m>$DispatchInMacroTest_static_storage:class NSObject* [line 23]\n *&return:struct objc_object*=n$0 [line 23]\n " shape="box"]
"DispatchInMacroTest.f5d56763274a479d06265a2f9562bef1_3" [label="3: Return Stmt \n DECLARE_LOCALS(&__objc_anonymous_block_DispatchInMacroTest______1); [line 23]\n n$3=_fun___objc_alloc_no_fail(sizeof(class __objc_anonymous_block_DispatchInMacroTest______1):unsigned long) [line 23]\n *&__objc_anonymous_block_DispatchInMacroTest______1:class __objc_anonymous_block_DispatchInMacroTest______1=n$3 [line 23]\n n$4=*&#GB<codetoanalyze/objc/shared/block/dispatch_in_macro.m>$DispatchInMacroTest_static_storage:class NSObject* [line 23]\n *n$3.DispatchInMacroTest_static_storage:class NSObject*=n$4 [line 23]\n n$5=(_fun___objc_anonymous_block_DispatchInMacroTest______1)() [line 23]\n n$0=*&#GB<codetoanalyze/objc/shared/block/dispatch_in_macro.m>$DispatchInMacroTest_static_storage:class NSObject* [line 23]\n *&return:struct objc_object*=n$0 [line 23]\n " shape="box"]
"DispatchInMacroTest.f5d56763274a479d06265a2f9562bef1_3" -> "DispatchInMacroTest.f5d56763274a479d06265a2f9562bef1_2" ;
@ -11,7 +11,7 @@ digraph iCFG {
"DispatchInMacroTest.f5d56763274a479d06265a2f9562bef1_1" -> "DispatchInMacroTest.f5d56763274a479d06265a2f9562bef1_3" ;
"__objc_anonymous_block_DispatchInMacroTest______1.db6c315d2cd0e3514d444428887908e2_3" [label="3: BinaryOperatorStmt: Assign \n n$1=_fun___objc_alloc_no_fail(sizeof(class NSObject):unsigned long) [line 23]\n n$2=_fun_NSObject_init(n$1:class NSObject*) virtual [line 23]\n *&#GB<codetoanalyze/objc/frontend/shared/block/dispatch_in_macro.m>$DispatchInMacroTest_static_storage:class 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(class NSObject):unsigned long) [line 23]\n n$2=_fun_NSObject_init(n$1:class NSObject*) virtual [line 23]\n *&#GB<codetoanalyze/objc/shared/block/dispatch_in_macro.m>$DispatchInMacroTest_static_storage:class NSObject*=n$2 [line 23]\n " shape="box"]
"__objc_anonymous_block_DispatchInMacroTest______1.db6c315d2cd0e3514d444428887908e2_3" -> "__objc_anonymous_block_DispatchInMacroTest______1.db6c315d2cd0e3514d444428887908e2_2" ;

@ -126,7 +126,7 @@ digraph iCFG {
"retain_release2_test2.d890a0d9955e2ed8f58dd806f8d8d78c_4" -> "retain_release2_test2.d890a0d9955e2ed8f58dd806f8d8d78c_3" ;
"retain_release2_test2.d890a0d9955e2ed8f58dd806f8d8d78c_3" [label="3: BinaryOperatorStmt: Assign \n n$0=*&b:class RR2* [line 40]\n *&#GB<codetoanalyze/objc/frontend/shared/memory_leaks_benchmark/RetainReleaseExample2.m>$g:class RR2*=n$0 [line 40]\n " shape="box"]
"retain_release2_test2.d890a0d9955e2ed8f58dd806f8d8d78c_3" [label="3: BinaryOperatorStmt: Assign \n n$0=*&b:class RR2* [line 40]\n *&#GB<codetoanalyze/objc/shared/memory_leaks_benchmark/RetainReleaseExample2.m>$g:class RR2*=n$0 [line 40]\n " shape="box"]
"retain_release2_test2.d890a0d9955e2ed8f58dd806f8d8d78c_3" -> "retain_release2_test2.d890a0d9955e2ed8f58dd806f8d8d78c_2" ;

Loading…
Cancel
Save