From 2537972f25ec2411a37574f9d8b4100406f343b1 Mon Sep 17 00:00:00 2001 From: George Karpenkov Date: Fri, 10 Aug 2018 23:51:43 +0000 Subject: [PATCH] [analyzer] [NFC] [tests] Move plist-based diagnostics tests to separate files, use diff instead of a FileCheck - II Some files were missed by https://reviews.llvm.org/D50545 Differential Revision: https://reviews.llvm.org/D50590 llvm-svn: 339488 --- .../plists/NewDelete-path-notes.cpp.plist | 432 +++++ .../plists/method-call-path-notes.cpp.plist | 779 +++++++++ .../ExpectedOutputs/plists/plist-macros.cpp.plist | 1667 ++++++++++++++++++++ .../plists/plist-output-alternate.m.plist | 1439 +++++++++++++++++ .../plists/plist-stats-output.c.plist | 9 + clang/test/Analysis/NewDelete-path-notes.cpp | 432 +---- clang/test/Analysis/method-call-path-notes.cpp | 779 +-------- clang/test/Analysis/plist-macros.cpp | 1667 +------------------- clang/test/Analysis/plist-output-alternate.m | 1439 +---------------- 9 files changed, 4330 insertions(+), 4313 deletions(-) create mode 100644 clang/test/Analysis/ExpectedOutputs/plists/NewDelete-path-notes.cpp.plist create mode 100644 clang/test/Analysis/ExpectedOutputs/plists/method-call-path-notes.cpp.plist create mode 100644 clang/test/Analysis/ExpectedOutputs/plists/plist-macros.cpp.plist create mode 100644 clang/test/Analysis/ExpectedOutputs/plists/plist-output-alternate.m.plist create mode 100644 clang/test/Analysis/ExpectedOutputs/plists/plist-stats-output.c.plist diff --git a/clang/test/Analysis/ExpectedOutputs/plists/NewDelete-path-notes.cpp.plist b/clang/test/Analysis/ExpectedOutputs/plists/NewDelete-path-notes.cpp.plist new file mode 100644 index 0000000..be1308e --- /dev/null +++ b/clang/test/Analysis/ExpectedOutputs/plists/NewDelete-path-notes.cpp.plist @@ -0,0 +1,432 @@ + diagnostics + + + path + + + kindevent + location + + line7 + col12 + file0 + + ranges + + + + line7 + col12 + file0 + + + line7 + col18 + file0 + + + + depth0 + extended_message + Memory is allocated + message + Memory is allocated + + + kindcontrol + edges + + + start + + + line7 + col3 + file0 + + + line7 + col5 + file0 + + + end + + + line9 + col3 + file0 + + + line9 + col4 + file0 + + + + + + + kindcontrol + edges + + + start + + + line9 + col3 + file0 + + + line9 + col4 + file0 + + + end + + + line11 + col5 + file0 + + + line11 + col10 + file0 + + + + + + + kindevent + location + + line11 + col5 + file0 + + ranges + + + + line11 + col5 + file0 + + + line11 + col12 + file0 + + + + depth0 + extended_message + Memory is released + message + Memory is released + + + kindcontrol + edges + + + start + + + line11 + col5 + file0 + + + line11 + col10 + file0 + + + end + + + line14 + col3 + file0 + + + line14 + col8 + file0 + + + + + + + kindevent + location + + line14 + col3 + file0 + + ranges + + + + line14 + col3 + file0 + + + line14 + col10 + file0 + + + + depth0 + extended_message + Attempt to free released memory + message + Attempt to free released memory + + + descriptionAttempt to free released memory + categoryMemory error + typeDouble free + check_namecplusplus.NewDelete + + issue_hash_content_of_line_in_contextbd8e324d09c70b9e2be6f824a4942e5a + issue_context_kindfunction + issue_contexttest + issue_hash_function_offset8 + location + + line14 + col3 + file0 + + + + path + + + kindevent + location + + line25 + col2 + file0 + + ranges + + + + line25 + col2 + file0 + + + line25 + col12 + file0 + + + + depth0 + extended_message + Calling 'Odd::kill' + message + Calling 'Odd::kill' + + + kindevent + location + + line19 + col2 + file0 + + depth1 + extended_message + Entered call from 'test' + message + Entered call from 'test' + + + kindcontrol + edges + + + start + + + line19 + col2 + file0 + + + line19 + col5 + file0 + + + end + + + line20 + col3 + file0 + + + line20 + col8 + file0 + + + + + + + kindevent + location + + line20 + col3 + file0 + + ranges + + + + line20 + col3 + file0 + + + line20 + col13 + file0 + + + + depth1 + extended_message + Memory is released + message + Memory is released + + + kindevent + location + + line25 + col2 + file0 + + ranges + + + + line25 + col2 + file0 + + + line25 + col12 + file0 + + + + depth0 + extended_message + Returning; memory was released + message + Returning; memory was released + + + kindcontrol + edges + + + start + + + line25 + col2 + file0 + + + line25 + col4 + file0 + + + end + + + line27 + col2 + file0 + + + line27 + col7 + file0 + + + + + + + kindevent + location + + line27 + col2 + file0 + + ranges + + + + line27 + col2 + file0 + + + line27 + col11 + file0 + + + + depth0 + extended_message + Attempt to free released memory + message + Attempt to free released memory + + + descriptionAttempt to free released memory + categoryMemory error + typeDouble free + check_namecplusplus.NewDelete + + issue_hash_content_of_line_in_context8bf1a5b9fdae9d86780aa6c4cdce2605 + issue_context_kindfunction + issue_contexttest + issue_hash_function_offset3 + location + + line27 + col2 + file0 + + + + + diff --git a/clang/test/Analysis/ExpectedOutputs/plists/method-call-path-notes.cpp.plist b/clang/test/Analysis/ExpectedOutputs/plists/method-call-path-notes.cpp.plist new file mode 100644 index 0000000..ca45aa5 --- /dev/null +++ b/clang/test/Analysis/ExpectedOutputs/plists/method-call-path-notes.cpp.plist @@ -0,0 +1,779 @@ + diagnostics + + + path + + + kindevent + location + + line13 + col3 + file0 + + ranges + + + + line13 + col3 + file0 + + + line13 + col21 + file0 + + + + depth0 + extended_message + 'p' declared without an initial value + message + 'p' declared without an initial value + + + kindcontrol + edges + + + start + + + line13 + col3 + file0 + + + line13 + col18 + file0 + + + end + + + line14 + col3 + file0 + + + line14 + col3 + file0 + + + + + + + kindevent + location + + line14 + col3 + file0 + + ranges + + + + line14 + col3 + file0 + + + line14 + col3 + file0 + + + + depth0 + extended_message + Called C++ object pointer is uninitialized + message + Called C++ object pointer is uninitialized + + + descriptionCalled C++ object pointer is uninitialized + categoryLogic error + typeCalled C++ object pointer is uninitialized + check_namecore.CallAndMessage + + issue_hash_content_of_line_in_context8c0cdb645ae6be246ed75941dcefd32d + issue_context_kindfunction + issue_contexttest_ic + issue_hash_function_offset2 + location + + line14 + col3 + file0 + + + + path + + + kindevent + location + + line18 + col3 + file0 + + ranges + + + + line18 + col3 + file0 + + + line18 + col21 + file0 + + + + depth0 + extended_message + 'p' initialized to a null pointer value + message + 'p' initialized to a null pointer value + + + kindcontrol + edges + + + start + + + line18 + col3 + file0 + + + line18 + col18 + file0 + + + end + + + line19 + col3 + file0 + + + line19 + col3 + file0 + + + + + + + kindevent + location + + line19 + col3 + file0 + + ranges + + + + line19 + col3 + file0 + + + line19 + col3 + file0 + + + + depth0 + extended_message + Called C++ object pointer is null + message + Called C++ object pointer is null + + + descriptionCalled C++ object pointer is null + categoryLogic error + typeCalled C++ object pointer is null + check_namecore.CallAndMessage + + issue_hash_content_of_line_in_context98e39ef0e4bbc0b9b2b1832285634d67 + issue_context_kindfunction + issue_contexttest_ic_null + issue_hash_function_offset2 + location + + line19 + col3 + file0 + + + + path + + + kindcontrol + edges + + + start + + + line23 + col3 + file0 + + + line23 + col18 + file0 + + + end + + + line24 + col3 + file0 + + + line24 + col3 + file0 + + + + + + + kindevent + location + + line24 + col3 + file0 + + ranges + + + + line24 + col3 + file0 + + + line24 + col7 + file0 + + + + depth0 + extended_message + Null pointer value stored to 'p' + message + Null pointer value stored to 'p' + + + kindcontrol + edges + + + start + + + line24 + col3 + file0 + + + line24 + col3 + file0 + + + end + + + line25 + col3 + file0 + + + line25 + col3 + file0 + + + + + + + kindevent + location + + line25 + col3 + file0 + + ranges + + + + line25 + col3 + file0 + + + line25 + col3 + file0 + + + + depth0 + extended_message + Called C++ object pointer is null + message + Called C++ object pointer is null + + + descriptionCalled C++ object pointer is null + categoryLogic error + typeCalled C++ object pointer is null + check_namecore.CallAndMessage + + issue_hash_content_of_line_in_context84f3d9d5009d2ac455b46b4aae88f67f + issue_context_kindfunction + issue_contexttest_ic_set_to_null + issue_hash_function_offset3 + location + + line25 + col3 + file0 + + + + path + + + kindcontrol + edges + + + start + + + line29 + col3 + file0 + + + line29 + col4 + file0 + + + end + + + line29 + col7 + file0 + + + line29 + col7 + file0 + + + + + + + kindevent + location + + line29 + col7 + file0 + + ranges + + + + line29 + col7 + file0 + + + line29 + col8 + file0 + + + + depth0 + extended_message + Assuming 'p' is null + message + Assuming 'p' is null + + + kindcontrol + edges + + + start + + + line29 + col7 + file0 + + + line29 + col7 + file0 + + + end + + + line30 + col5 + file0 + + + line30 + col5 + file0 + + + + + + + kindevent + location + + line30 + col5 + file0 + + ranges + + + + line30 + col5 + file0 + + + line30 + col5 + file0 + + + + depth0 + extended_message + Called C++ object pointer is null + message + Called C++ object pointer is null + + + descriptionCalled C++ object pointer is null + categoryLogic error + typeCalled C++ object pointer is null + check_namecore.CallAndMessage + + issue_hash_content_of_line_in_contextc5bd8e35fb6da070914016804720ae4d + issue_context_kindfunction + issue_contexttest_ic_null + issue_hash_function_offset2 + location + + line30 + col5 + file0 + + + + path + + + kindevent + location + + line34 + col3 + file0 + + ranges + + + + line34 + col3 + file0 + + + line34 + col21 + file0 + + + + depth0 + extended_message + 'p' initialized to a null pointer value + message + 'p' initialized to a null pointer value + + + kindcontrol + edges + + + start + + + line34 + col3 + file0 + + + line34 + col18 + file0 + + + end + + + line37 + col3 + file0 + + + line37 + col3 + file0 + + + + + + + kindevent + location + + line37 + col3 + file0 + + ranges + + + + line37 + col4 + file0 + + + line37 + col4 + file0 + + + + depth0 + extended_message + Called C++ object pointer is null + message + Called C++ object pointer is null + + + descriptionCalled C++ object pointer is null + categoryLogic error + typeCalled C++ object pointer is null + check_namecore.CallAndMessage + + issue_hash_content_of_line_in_context4681ee922f6860377317b26b3a4bb5d4 + issue_context_kindfunction + issue_contexttest_ic_member_ptr + issue_hash_function_offset4 + location + + line37 + col3 + file0 + + + + path + + + kindcontrol + edges + + + start + + + line41 + col3 + file0 + + + line41 + col4 + file0 + + + end + + + line41 + col7 + file0 + + + line41 + col7 + file0 + + + + + + + kindevent + location + + line41 + col7 + file0 + + ranges + + + + line41 + col7 + file0 + + + line41 + col8 + file0 + + + + depth0 + extended_message + Assuming 'p' is null + message + Assuming 'p' is null + + + kindcontrol + edges + + + start + + + line41 + col7 + file0 + + + line41 + col7 + file0 + + + end + + + line42 + col5 + file0 + + + line42 + col14 + file0 + + + + + + + kindevent + location + + line42 + col5 + file0 + + ranges + + + + line42 + col5 + file0 + + + line42 + col37 + file0 + + + + depth0 + extended_message + Called C++ object pointer is null + message + Called C++ object pointer is null + + + descriptionCalled C++ object pointer is null + categoryLogic error + typeCalled C++ object pointer is null + check_namecore.CallAndMessage + + issue_hash_content_of_line_in_contexte23397f9f2eff1b08593c2b2db137494 + issue_context_kindfunction + issue_contexttest_cast + issue_hash_function_offset2 + location + + line42 + col5 + file0 + + + + + diff --git a/clang/test/Analysis/ExpectedOutputs/plists/plist-macros.cpp.plist b/clang/test/Analysis/ExpectedOutputs/plists/plist-macros.cpp.plist new file mode 100644 index 0000000..6743749 --- /dev/null +++ b/clang/test/Analysis/ExpectedOutputs/plists/plist-macros.cpp.plist @@ -0,0 +1,1667 @@ + diagnostics + + + path + + + kindcontrol + edges + + + start + + + line11 + col3 + file0 + + + line11 + col3 + file0 + + + end + + + line13 + col3 + file0 + + + line13 + col14 + file0 + + + + + + + kindevent + location + + line13 + col3 + file0 + + ranges + + + + line13 + col3 + file0 + + + line13 + col14 + file0 + + + + depth0 + extended_message + Memory is allocated + message + Memory is allocated + + + kindcontrol + edges + + + start + + + line13 + col3 + file0 + + + line13 + col14 + file0 + + + end + + + line16 + col3 + file0 + + + line16 + col8 + file0 + + + + + + + kindevent + location + + line16 + col3 + file0 + + ranges + + + + line16 + col10 + file0 + + + line16 + col10 + file0 + + + + depth0 + extended_message + Memory allocated by malloc() should be deallocated by free(), not 'delete' + message + Memory allocated by malloc() should be deallocated by free(), not 'delete' + + + descriptionMemory allocated by malloc() should be deallocated by free(), not 'delete' + categoryMemory error + typeBad deallocator + check_nameunix.MismatchedDeallocator + + issue_hash_content_of_line_in_context81d63a132b4ef0cc96734c17440a1c26 + issue_context_kindfunction + issue_contextnoteOnMacro + issue_hash_function_offset6 + location + + line16 + col3 + file0 + + + + path + + + kindevent + location + + line20 + col3 + file0 + + ranges + + + + line20 + col3 + file0 + + + line20 + col14 + file0 + + + + depth0 + extended_message + Memory is allocated + message + Memory is allocated + + + kindcontrol + edges + + + start + + + line20 + col3 + file0 + + + line20 + col14 + file0 + + + end + + + line21 + col3 + file0 + + + line21 + col3 + file0 + + + + + + + kindevent + location + + line21 + col3 + file0 + + depth0 + extended_message + Potential leak of memory pointed to by 'x' + message + Potential leak of memory pointed to by 'x' + + + descriptionPotential leak of memory pointed to by 'x' + categoryMemory error + typeMemory leak + check_nameunix.Malloc + + issue_hash_content_of_line_in_context2d723d9fb4e5f10dd54a7396866dfce4 + issue_context_kindfunction + issue_contextmacroIsFirstInFunction + issue_hash_function_offset1 + location + + line21 + col3 + file0 + + + + path + + + kindcontrol + edges + + + start + + + line27 + col3 + file0 + + + line27 + col3 + file0 + + + end + + + line28 + col3 + file0 + + + line28 + col22 + file0 + + + + + + + kindcontrol + edges + + + start + + + line28 + col3 + file0 + + + line28 + col22 + file0 + + + end + + + line28 + col24 + file0 + + + line28 + col33 + file0 + + + + + + + kindevent + location + + line28 + col24 + file0 + + ranges + + + + line28 + col24 + file0 + + + line28 + col33 + file0 + + + + depth0 + extended_message + Assuming 'p' is equal to null + message + Assuming 'p' is equal to null + + + kindcontrol + edges + + + start + + + line28 + col24 + file0 + + + line28 + col33 + file0 + + + end + + + line28 + col3 + file0 + + + line28 + col22 + file0 + + + + + + + kindcontrol + edges + + + start + + + line28 + col3 + file0 + + + line28 + col22 + file0 + + + end + + + line30 + col3 + file0 + + + line30 + col8 + file0 + + + + + + + kindcontrol + edges + + + start + + + line30 + col3 + file0 + + + line30 + col8 + file0 + + + end + + + line30 + col10 + file0 + + + line30 + col10 + file0 + + + + + + + kindevent + location + + line30 + col10 + file0 + + ranges + + + + line30 + col11 + file0 + + + line30 + col11 + file0 + + + + depth0 + extended_message + Dereference of null pointer (loaded from variable 'p') + message + Dereference of null pointer (loaded from variable 'p') + + + descriptionDereference of null pointer (loaded from variable 'p') + categoryLogic error + typeDereference of null pointer + check_namecore.NullDereference + + issue_hash_content_of_line_in_context3570104919aab3f953357f8c87b68bd7 + issue_context_kindfunction + issue_contextmacroInExpression + issue_hash_function_offset4 + location + + line30 + col10 + file0 + + + + path + + + kindcontrol + edges + + + start + + + line35 + col3 + file0 + + + line35 + col3 + file0 + + + end + + + line36 + col3 + file0 + + + line36 + col4 + file0 + + + + + + + kindcontrol + edges + + + start + + + line36 + col3 + file0 + + + line36 + col4 + file0 + + + end + + + line36 + col7 + file0 + + + line36 + col7 + file0 + + + + + + + kindevent + location + + line36 + col7 + file0 + + ranges + + + + line36 + col7 + file0 + + + line36 + col25 + file0 + + + + depth0 + extended_message + Assuming the condition is true + message + Assuming the condition is true + + + kindcontrol + edges + + + start + + + line36 + col7 + file0 + + + line36 + col7 + file0 + + + end + + + line37 + col5 + file0 + + + line37 + col6 + file0 + + + + + + + kindcontrol + edges + + + start + + + line37 + col5 + file0 + + + line37 + col6 + file0 + + + end + + + line37 + col9 + file0 + + + line37 + col9 + file0 + + + + + + + kindevent + location + + line37 + col9 + file0 + + ranges + + + + line37 + col9 + file0 + + + line37 + col9 + file0 + + + + depth0 + extended_message + Assuming 'p' is null + message + Assuming 'p' is null + + + kindcontrol + edges + + + start + + + line37 + col9 + file0 + + + line37 + col9 + file0 + + + end + + + line39 + col3 + file0 + + + line39 + col8 + file0 + + + + + + + kindcontrol + edges + + + start + + + line39 + col3 + file0 + + + line39 + col8 + file0 + + + end + + + line39 + col10 + file0 + + + line39 + col10 + file0 + + + + + + + kindevent + location + + line39 + col10 + file0 + + ranges + + + + line39 + col11 + file0 + + + line39 + col11 + file0 + + + + depth0 + extended_message + Dereference of null pointer (loaded from variable 'p') + message + Dereference of null pointer (loaded from variable 'p') + + + descriptionDereference of null pointer (loaded from variable 'p') + categoryLogic error + typeDereference of null pointer + check_namecore.NullDereference + + issue_hash_content_of_line_in_contextdeff163b13f3fd860bc332498b0dbc59 + issue_context_kindfunction + issue_contextmacroInExpressionNoNote + issue_hash_function_offset5 + location + + line39 + col10 + file0 + + + + path + + + kindcontrol + edges + + + start + + + line44 + col3 + file0 + + + line44 + col3 + file0 + + + end + + + line45 + col3 + file0 + + + line45 + col4 + file0 + + + + + + + kindcontrol + edges + + + start + + + line45 + col3 + file0 + + + line45 + col4 + file0 + + + end + + + line45 + col7 + file0 + + + line45 + col18 + file0 + + + + + + + kindevent + location + + line45 + col7 + file0 + + ranges + + + + line45 + col7 + file0 + + + line45 + col21 + file0 + + + + depth0 + extended_message + Assuming 'p' is equal to null + message + Assuming 'p' is equal to null + + + kindcontrol + edges + + + start + + + line45 + col7 + file0 + + + line45 + col18 + file0 + + + end + + + line47 + col3 + file0 + + + line47 + col8 + file0 + + + + + + + kindcontrol + edges + + + start + + + line47 + col3 + file0 + + + line47 + col8 + file0 + + + end + + + line47 + col10 + file0 + + + line47 + col10 + file0 + + + + + + + kindevent + location + + line47 + col10 + file0 + + ranges + + + + line47 + col11 + file0 + + + line47 + col11 + file0 + + + + depth0 + extended_message + Dereference of null pointer (loaded from variable 'p') + message + Dereference of null pointer (loaded from variable 'p') + + + descriptionDereference of null pointer (loaded from variable 'p') + categoryLogic error + typeDereference of null pointer + check_namecore.NullDereference + + issue_hash_content_of_line_in_contextb67b58d85375752578e947b77c6aa70c + issue_context_kindfunction + issue_contextmacroWithArgInExpression + issue_hash_function_offset4 + location + + line47 + col10 + file0 + + + + path + + + kindcontrol + edges + + + start + + + line55 + col3 + file0 + + + line55 + col3 + file0 + + + end + + + line56 + col3 + file0 + + + line56 + col25 + file0 + + + + + + + kindevent + location + + line56 + col3 + file0 + + ranges + + + + line56 + col3 + file0 + + + line56 + col25 + file0 + + + + depth0 + extended_message + Assuming 'p' is null + message + Assuming 'p' is null + + + kindcontrol + edges + + + start + + + line56 + col3 + file0 + + + line56 + col25 + file0 + + + end + + + line56 + col3 + file0 + + + line56 + col25 + file0 + + + + + + + kindevent + location + + line56 + col3 + file0 + + ranges + + + + line56 + col3 + file0 + + + line56 + col25 + file0 + + + + depth0 + extended_message + Dereference of null pointer (loaded from variable 'p') + message + Dereference of null pointer (loaded from variable 'p') + + + descriptionDereference of null pointer (loaded from variable 'p') + categoryLogic error + typeDereference of null pointer + check_namecore.NullDereference + + issue_hash_content_of_line_in_contextb53410f6c0d3d07e62ce5c6f91a1810a + issue_context_kindfunction + issue_contextuseMultiNoteMacroWithError + issue_hash_function_offset2 + location + + line56 + col3 + file0 + + + + path + + + kindcontrol + edges + + + start + + + line67 + col3 + file0 + + + line67 + col3 + file0 + + + end + + + line68 + col3 + file0 + + + line68 + col4 + file0 + + + + + + + kindcontrol + edges + + + start + + + line68 + col3 + file0 + + + line68 + col4 + file0 + + + end + + + line68 + col7 + file0 + + + line68 + col7 + file0 + + + + + + + kindevent + location + + line68 + col7 + file0 + + ranges + + + + line68 + col7 + file0 + + + line68 + col7 + file0 + + + + depth0 + extended_message + Assuming 'p' is null + message + Assuming 'p' is null + + + kindcontrol + edges + + + start + + + line68 + col7 + file0 + + + line68 + col7 + file0 + + + end + + + line69 + col3 + file0 + + + line69 + col16 + file0 + + + + + + + kindevent + location + + line69 + col3 + file0 + + ranges + + + + line69 + col3 + file0 + + + line69 + col16 + file0 + + + + depth0 + extended_message + Assuming 'y' is 0 + message + Assuming 'y' is 0 + + + kindcontrol + edges + + + start + + + line69 + col3 + file0 + + + line69 + col16 + file0 + + + end + + + line71 + col3 + file0 + + + line71 + col8 + file0 + + + + + + + kindcontrol + edges + + + start + + + line71 + col3 + file0 + + + line71 + col8 + file0 + + + end + + + line71 + col10 + file0 + + + line71 + col10 + file0 + + + + + + + kindevent + location + + line71 + col10 + file0 + + ranges + + + + line71 + col11 + file0 + + + line71 + col11 + file0 + + + + depth0 + extended_message + Dereference of null pointer (loaded from variable 'p') + message + Dereference of null pointer (loaded from variable 'p') + + + descriptionDereference of null pointer (loaded from variable 'p') + categoryLogic error + typeDereference of null pointer + check_namecore.NullDereference + + issue_hash_content_of_line_in_context41f58f9549aa1867e461a7996a8d335c + issue_context_kindfunction + issue_contextuseMultiNote + issue_hash_function_offset5 + location + + line71 + col10 + file0 + + + + path + + + kindevent + location + + line83 + col3 + file0 + + ranges + + + + line83 + col3 + file0 + + + line83 + col12 + file0 + + + + depth0 + extended_message + Passing null pointer value via 1st parameter 'a' + message + Passing null pointer value via 1st parameter 'a' + + + kindevent + location + + line83 + col3 + file0 + + ranges + + + + line83 + col3 + file0 + + + line83 + col12 + file0 + + + + depth0 + extended_message + Calling 'null_deref' + message + Calling 'null_deref' + + + kindevent + location + + line76 + col1 + file0 + + depth1 + extended_message + Entered call from 'test1' + message + Entered call from 'test1' + + + kindcontrol + edges + + + start + + + line76 + col1 + file0 + + + line76 + col4 + file0 + + + end + + + line77 + col3 + file0 + + + line77 + col4 + file0 + + + + + + + kindcontrol + edges + + + start + + + line77 + col3 + file0 + + + line77 + col4 + file0 + + + end + + + line79 + col3 + file0 + + + line79 + col3 + file0 + + + + + + + kindcontrol + edges + + + start + + + line79 + col3 + file0 + + + line79 + col3 + file0 + + + end + + + line79 + col6 + file0 + + + line79 + col6 + file0 + + + + + + + kindevent + location + + line79 + col6 + file0 + + ranges + + + + line79 + col4 + file0 + + + line79 + col4 + file0 + + + + depth1 + extended_message + Dereference of null pointer (loaded from variable 'a') + message + Dereference of null pointer (loaded from variable 'a') + + + descriptionDereference of null pointer (loaded from variable 'a') + categoryLogic error + typeDereference of null pointer + check_namecore.NullDereference + + issue_hash_content_of_line_in_context2dc47a4afc2f349f12217b38588769f4 + issue_context_kindfunction + issue_contextnull_deref + issue_hash_function_offset3 + location + + line79 + col6 + file0 + + + + + diff --git a/clang/test/Analysis/ExpectedOutputs/plists/plist-output-alternate.m.plist b/clang/test/Analysis/ExpectedOutputs/plists/plist-output-alternate.m.plist new file mode 100644 index 0000000..197b2cd --- /dev/null +++ b/clang/test/Analysis/ExpectedOutputs/plists/plist-output-alternate.m.plist @@ -0,0 +1,1439 @@ + diagnostics + + + path + + + kindevent + location + + line5 + col3 + file0 + + ranges + + + + line5 + col3 + file0 + + + line5 + col8 + file0 + + + + depth0 + extended_message + 'p' initialized to a null pointer value + message + 'p' initialized to a null pointer value + + + kindcontrol + edges + + + start + + + line5 + col3 + file0 + + + line5 + col5 + file0 + + + end + + + line6 + col3 + file0 + + + line6 + col3 + file0 + + + + + + + kindcontrol + edges + + + start + + + line6 + col3 + file0 + + + line6 + col3 + file0 + + + end + + + line6 + col6 + file0 + + + line6 + col6 + file0 + + + + + + + kindevent + location + + line6 + col6 + file0 + + ranges + + + + line6 + col4 + file0 + + + line6 + col4 + file0 + + + + depth0 + extended_message + Dereference of null pointer (loaded from variable 'p') + message + Dereference of null pointer (loaded from variable 'p') + + + descriptionDereference of null pointer (loaded from variable 'p') + categoryLogic error + typeDereference of null pointer + check_namecore.NullDereference + + issue_hash_content_of_line_in_contextdc9c2a657ca759f9744cde2e093cfd59 + issue_context_kindfunction + issue_contexttest_null_init + issue_hash_function_offset2 + location + + line6 + col6 + file0 + + + + path + + + kindcontrol + edges + + + start + + + line10 + col3 + file0 + + + line10 + col5 + file0 + + + end + + + line11 + col3 + file0 + + + line11 + col3 + file0 + + + + + + + kindevent + location + + line11 + col3 + file0 + + ranges + + + + line11 + col3 + file0 + + + line11 + col7 + file0 + + + + depth0 + extended_message + Null pointer value stored to 'p' + message + Null pointer value stored to 'p' + + + kindcontrol + edges + + + start + + + line11 + col3 + file0 + + + line11 + col3 + file0 + + + end + + + line12 + col3 + file0 + + + line12 + col3 + file0 + + + + + + + kindcontrol + edges + + + start + + + line12 + col3 + file0 + + + line12 + col3 + file0 + + + end + + + line12 + col6 + file0 + + + line12 + col6 + file0 + + + + + + + kindevent + location + + line12 + col6 + file0 + + ranges + + + + line12 + col4 + file0 + + + line12 + col4 + file0 + + + + depth0 + extended_message + Dereference of null pointer (loaded from variable 'p') + message + Dereference of null pointer (loaded from variable 'p') + + + descriptionDereference of null pointer (loaded from variable 'p') + categoryLogic error + typeDereference of null pointer + check_namecore.NullDereference + + issue_hash_content_of_line_in_context8f95d9681490a4e52c167969d0957b39 + issue_context_kindfunction + issue_contexttest_null_assign + issue_hash_function_offset3 + location + + line12 + col6 + file0 + + + + path + + + kindcontrol + edges + + + start + + + line16 + col3 + file0 + + + line16 + col5 + file0 + + + end + + + line17 + col3 + file0 + + + line17 + col3 + file0 + + + + + + + kindevent + location + + line17 + col3 + file0 + + ranges + + + + line17 + col3 + file0 + + + line17 + col7 + file0 + + + + depth0 + extended_message + Null pointer value stored to 'p' + message + Null pointer value stored to 'p' + + + kindcontrol + edges + + + start + + + line17 + col3 + file0 + + + line17 + col3 + file0 + + + end + + + line18 + col3 + file0 + + + line18 + col5 + file0 + + + + + + + kindevent + location + + line18 + col3 + file0 + + ranges + + + + line18 + col3 + file0 + + + line18 + col8 + file0 + + + + depth0 + extended_message + 'q' initialized to a null pointer value + message + 'q' initialized to a null pointer value + + + kindcontrol + edges + + + start + + + line18 + col3 + file0 + + + line18 + col5 + file0 + + + end + + + line19 + col3 + file0 + + + line19 + col3 + file0 + + + + + + + kindcontrol + edges + + + start + + + line19 + col3 + file0 + + + line19 + col3 + file0 + + + end + + + line19 + col6 + file0 + + + line19 + col6 + file0 + + + + + + + kindevent + location + + line19 + col6 + file0 + + ranges + + + + line19 + col4 + file0 + + + line19 + col4 + file0 + + + + depth0 + extended_message + Dereference of null pointer (loaded from variable 'q') + message + Dereference of null pointer (loaded from variable 'q') + + + descriptionDereference of null pointer (loaded from variable 'q') + categoryLogic error + typeDereference of null pointer + check_namecore.NullDereference + + issue_hash_content_of_line_in_context94c43fbcad6aaff4ee7433f2d2db0bbe + issue_context_kindfunction + issue_contexttest_null_assign_transitive + issue_hash_function_offset4 + location + + line19 + col6 + file0 + + + + path + + + kindcontrol + edges + + + start + + + line23 + col3 + file0 + + + line23 + col4 + file0 + + + end + + + line23 + col7 + file0 + + + line23 + col7 + file0 + + + + + + + kindevent + location + + line23 + col7 + file0 + + ranges + + + + line23 + col7 + file0 + + + line23 + col8 + file0 + + + + depth0 + extended_message + Assuming 'p' is null + message + Assuming 'p' is null + + + kindcontrol + edges + + + start + + + line23 + col7 + file0 + + + line23 + col7 + file0 + + + end + + + line24 + col5 + file0 + + + line24 + col5 + file0 + + + + + + + kindcontrol + edges + + + start + + + line24 + col5 + file0 + + + line24 + col5 + file0 + + + end + + + line24 + col8 + file0 + + + line24 + col8 + file0 + + + + + + + kindevent + location + + line24 + col8 + file0 + + ranges + + + + line24 + col6 + file0 + + + line24 + col6 + file0 + + + + depth0 + extended_message + Dereference of null pointer (loaded from variable 'p') + message + Dereference of null pointer (loaded from variable 'p') + + + descriptionDereference of null pointer (loaded from variable 'p') + categoryLogic error + typeDereference of null pointer + check_namecore.NullDereference + + issue_hash_content_of_line_in_context659f01507ffd7efd3ca3eab7179fd7d2 + issue_context_kindfunction + issue_contexttest_null_cond + issue_hash_function_offset2 + location + + line24 + col8 + file0 + + + + path + + + kindcontrol + edges + + + start + + + line29 + col3 + file0 + + + line29 + col4 + file0 + + + end + + + line29 + col7 + file0 + + + line29 + col7 + file0 + + + + + + + kindevent + location + + line29 + col7 + file0 + + ranges + + + + line29 + col7 + file0 + + + line29 + col8 + file0 + + + + depth0 + extended_message + Assuming 'q' is null + message + Assuming 'q' is null + + + kindcontrol + edges + + + start + + + line29 + col7 + file0 + + + line29 + col7 + file0 + + + end + + + line30 + col5 + file0 + + + line30 + col7 + file0 + + + + + + + kindevent + location + + line30 + col5 + file0 + + ranges + + + + line30 + col5 + file0 + + + line30 + col10 + file0 + + + + depth0 + extended_message + 'p' initialized to a null pointer value + message + 'p' initialized to a null pointer value + + + kindcontrol + edges + + + start + + + line30 + col5 + file0 + + + line30 + col7 + file0 + + + end + + + line31 + col5 + file0 + + + line31 + col5 + file0 + + + + + + + kindcontrol + edges + + + start + + + line31 + col5 + file0 + + + line31 + col5 + file0 + + + end + + + line31 + col8 + file0 + + + line31 + col8 + file0 + + + + + + + kindevent + location + + line31 + col8 + file0 + + ranges + + + + line31 + col6 + file0 + + + line31 + col6 + file0 + + + + depth0 + extended_message + Dereference of null pointer (loaded from variable 'p') + message + Dereference of null pointer (loaded from variable 'p') + + + descriptionDereference of null pointer (loaded from variable 'p') + categoryLogic error + typeDereference of null pointer + check_namecore.NullDereference + + issue_hash_content_of_line_in_contextc90d51e62139e614b57aff7021240a82 + issue_context_kindfunction + issue_contexttest_null_cond_transitive + issue_hash_function_offset3 + location + + line31 + col8 + file0 + + + + path + + + kindcontrol + edges + + + start + + + line36 + col24 + file0 + + + line36 + col24 + file0 + + + end + + + line37 + col3 + file0 + + + line37 + col3 + file0 + + + + + + + kindevent + location + + line37 + col3 + file0 + + ranges + + + + line37 + col3 + file0 + + + line37 + col9 + file0 + + + + depth0 + extended_message + Null pointer value stored to 'x.p' + message + Null pointer value stored to 'x.p' + + + kindcontrol + edges + + + start + + + line37 + col3 + file0 + + + line37 + col3 + file0 + + + end + + + line38 + col3 + file0 + + + line38 + col3 + file0 + + + + + + + kindcontrol + edges + + + start + + + line38 + col3 + file0 + + + line38 + col3 + file0 + + + end + + + line38 + col10 + file0 + + + line38 + col10 + file0 + + + + + + + kindevent + location + + line38 + col10 + file0 + + ranges + + + + line38 + col7 + file0 + + + line38 + col7 + file0 + + + + depth0 + extended_message + Dereference of null pointer (loaded from field 'p') + message + Dereference of null pointer (loaded from field 'p') + + + descriptionDereference of null pointer (loaded from field 'p') + categoryLogic error + typeDereference of null pointer + check_namecore.NullDereference + + issue_hash_content_of_line_in_context245408d2bc416e324064d990e6dd82a8 + issue_context_kindfunction + issue_contexttest_null_field + issue_hash_function_offset3 + location + + line38 + col10 + file0 + + + + path + + + kindcontrol + edges + + + start + + + line53 + col3 + file0 + + + line53 + col8 + file0 + + + end + + + line54 + col3 + file0 + + + line54 + col13 + file0 + + + + + + + kindevent + location + + line54 + col23 + file0 + + ranges + + + + line54 + col23 + file0 + + + line54 + col82 + file0 + + + + depth0 + extended_message + Call to function 'CFNumberCreate' returns a Core Foundation object of type CFNumberRef with a +1 retain count + message + Call to function 'CFNumberCreate' returns a Core Foundation object of type CFNumberRef with a +1 retain count + + + kindcontrol + edges + + + start + + + line54 + col3 + file0 + + + line54 + col13 + file0 + + + end + + + line55 + col3 + file0 + + + line55 + col4 + file0 + + + + + + + kindcontrol + edges + + + start + + + line55 + col3 + file0 + + + line55 + col4 + file0 + + + end + + + line55 + col7 + file0 + + + line55 + col7 + file0 + + + + + + + kindevent + location + + line55 + col7 + file0 + + ranges + + + + line55 + col7 + file0 + + + line55 + col7 + file0 + + + + depth0 + extended_message + Assuming 'x' is 0 + message + Assuming 'x' is 0 + + + kindcontrol + edges + + + start + + + line55 + col7 + file0 + + + line55 + col7 + file0 + + + end + + + line57 + col3 + file0 + + + line57 + col3 + file0 + + + + + + + kindcontrol + edges + + + start + + + line57 + col3 + file0 + + + line57 + col3 + file0 + + + end + + + line58 + col1 + file0 + + + line58 + col1 + file0 + + + + + + + kindevent + location + + line58 + col1 + file0 + + depth0 + extended_message + Object leaked: object allocated and stored into 'value' is not referenced later in this execution path and has a retain count of +1 + message + Object leaked: object allocated and stored into 'value' is not referenced later in this execution path and has a retain count of +1 + + + descriptionPotential leak of an object stored into 'value' + categoryMemory (Core Foundation/Objective-C) + typeLeak + check_nameosx.cocoa.RetainCount + + issue_hash_content_of_line_in_context29a10ca4af622b6146ca082e49d919d6 + issue_context_kindfunction + issue_contextrdar8331641 + issue_hash_function_offset2 + location + + line58 + col1 + file0 + + + + + diff --git a/clang/test/Analysis/ExpectedOutputs/plists/plist-stats-output.c.plist b/clang/test/Analysis/ExpectedOutputs/plists/plist-stats-output.c.plist new file mode 100644 index 0000000..8d4cab4 --- /dev/null +++ b/clang/test/Analysis/ExpectedOutputs/plists/plist-stats-output.c.plist @@ -0,0 +1,9 @@ + diagnostics + + +statistics +{ +} + + + diff --git a/clang/test/Analysis/NewDelete-path-notes.cpp b/clang/test/Analysis/NewDelete-path-notes.cpp index 48c402d..24332da 100644 --- a/clang/test/Analysis/NewDelete-path-notes.cpp +++ b/clang/test/Analysis/NewDelete-path-notes.cpp @@ -1,7 +1,7 @@ // RUN: %clang_analyze_cc1 -analyzer-checker=cplusplus.NewDelete,unix.Malloc -analyzer-output=text -verify %s // RUN: %clang_analyze_cc1 -analyzer-checker=cplusplus.NewDelete,unix.Malloc -analyzer-output=text -analyzer-config c++-allocator-inlining=true -verify %s // RUN: %clang_analyze_cc1 -analyzer-checker=cplusplus.NewDelete,unix.Malloc -analyzer-output=plist %s -o %t.plist -// RUN: FileCheck --input-file=%t.plist %s +// RUN: tail -n +11 %t.plist | diff -u -w - %S/ExpectedOutputs/plists/NewDelete-path-notes.cpp.plist void test() { int *p = new int; @@ -28,433 +28,3 @@ void test(Odd *odd) { // expected-note@-1 {{Attempt to free released memory}} } -// CHECK: diagnostics -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: path -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindevent -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line7 -// CHECK-NEXT: col12 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: ranges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line7 -// CHECK-NEXT: col12 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line7 -// CHECK-NEXT: col18 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: depth0 -// CHECK-NEXT: extended_message -// CHECK-NEXT: Memory is allocated -// CHECK-NEXT: message -// CHECK-NEXT: Memory is allocated -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindcontrol -// CHECK-NEXT: edges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: start -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line7 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line7 -// CHECK-NEXT: col5 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: end -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line9 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line9 -// CHECK-NEXT: col4 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindcontrol -// CHECK-NEXT: edges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: start -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line9 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line9 -// CHECK-NEXT: col4 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: end -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line11 -// CHECK-NEXT: col5 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line11 -// CHECK-NEXT: col10 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindevent -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line11 -// CHECK-NEXT: col5 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: ranges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line11 -// CHECK-NEXT: col5 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line11 -// CHECK-NEXT: col12 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: depth0 -// CHECK-NEXT: extended_message -// CHECK-NEXT: Memory is released -// CHECK-NEXT: message -// CHECK-NEXT: Memory is released -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindcontrol -// CHECK-NEXT: edges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: start -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line11 -// CHECK-NEXT: col5 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line11 -// CHECK-NEXT: col10 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: end -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line14 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line14 -// CHECK-NEXT: col8 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindevent -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line14 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: ranges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line14 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line14 -// CHECK-NEXT: col10 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: depth0 -// CHECK-NEXT: extended_message -// CHECK-NEXT: Attempt to free released memory -// CHECK-NEXT: message -// CHECK-NEXT: Attempt to free released memory -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: descriptionAttempt to free released memory -// CHECK-NEXT: categoryMemory error -// CHECK-NEXT: typeDouble free -// CHECK-NEXT: check_namecplusplus.NewDelete -// CHECK-NEXT: -// CHECK-NEXT: issue_hash_content_of_line_in_contextbd8e324d09c70b9e2be6f824a4942e5a -// CHECK-NEXT: issue_context_kindfunction -// CHECK-NEXT: issue_contexttest -// CHECK-NEXT: issue_hash_function_offset8 -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line14 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: path -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindevent -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line25 -// CHECK-NEXT: col2 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: ranges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line25 -// CHECK-NEXT: col2 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line25 -// CHECK-NEXT: col12 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: depth0 -// CHECK-NEXT: extended_message -// CHECK-NEXT: Calling 'Odd::kill' -// CHECK-NEXT: message -// CHECK-NEXT: Calling 'Odd::kill' -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindevent -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line19 -// CHECK-NEXT: col2 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: depth1 -// CHECK-NEXT: extended_message -// CHECK-NEXT: Entered call from 'test' -// CHECK-NEXT: message -// CHECK-NEXT: Entered call from 'test' -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindcontrol -// CHECK-NEXT: edges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: start -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line19 -// CHECK-NEXT: col2 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line19 -// CHECK-NEXT: col5 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: end -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line20 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line20 -// CHECK-NEXT: col8 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindevent -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line20 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: ranges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line20 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line20 -// CHECK-NEXT: col13 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: depth1 -// CHECK-NEXT: extended_message -// CHECK-NEXT: Memory is released -// CHECK-NEXT: message -// CHECK-NEXT: Memory is released -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindevent -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line25 -// CHECK-NEXT: col2 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: ranges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line25 -// CHECK-NEXT: col2 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line25 -// CHECK-NEXT: col12 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: depth0 -// CHECK-NEXT: extended_message -// CHECK-NEXT: Returning; memory was released -// CHECK-NEXT: message -// CHECK-NEXT: Returning; memory was released -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindcontrol -// CHECK-NEXT: edges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: start -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line25 -// CHECK-NEXT: col2 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line25 -// CHECK-NEXT: col4 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: end -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line27 -// CHECK-NEXT: col2 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line27 -// CHECK-NEXT: col7 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindevent -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line27 -// CHECK-NEXT: col2 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: ranges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line27 -// CHECK-NEXT: col2 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line27 -// CHECK-NEXT: col11 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: depth0 -// CHECK-NEXT: extended_message -// CHECK-NEXT: Attempt to free released memory -// CHECK-NEXT: message -// CHECK-NEXT: Attempt to free released memory -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: descriptionAttempt to free released memory -// CHECK-NEXT: categoryMemory error -// CHECK-NEXT: typeDouble free -// CHECK-NEXT: check_namecplusplus.NewDelete -// CHECK-NEXT: -// CHECK-NEXT: issue_hash_content_of_line_in_context8bf1a5b9fdae9d86780aa6c4cdce2605 -// CHECK-NEXT: issue_context_kindfunction -// CHECK-NEXT: issue_contexttest -// CHECK-NEXT: issue_hash_function_offset3 -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line27 -// CHECK-NEXT: col2 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: diff --git a/clang/test/Analysis/method-call-path-notes.cpp b/clang/test/Analysis/method-call-path-notes.cpp index 7c93c99..914a24d 100644 --- a/clang/test/Analysis/method-call-path-notes.cpp +++ b/clang/test/Analysis/method-call-path-notes.cpp @@ -1,6 +1,6 @@ // RUN: %clang_analyze_cc1 -analyzer-checker=core -analyzer-output=text -verify %s // RUN: %clang_analyze_cc1 -analyzer-checker=core -analyzer-output=plist-multi-file %s -o %t.plist -// RUN: FileCheck --input-file=%t.plist %s +// RUN: tail -n +11 %t.plist | diff -u -w - %S/ExpectedOutputs/plists/method-call-path-notes.cpp.plist // Test warning about null or uninitialized pointer values used as instance member // calls. @@ -42,780 +42,3 @@ void test_cast(const TestInstanceCall *p) { const_cast(p)->foo(); // expected-warning {{Called C++ object pointer is null}} expected-note {{Called C++ object pointer is null}} } -// CHECK: diagnostics -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: path -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindevent -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line13 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: ranges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line13 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line13 -// CHECK-NEXT: col21 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: depth0 -// CHECK-NEXT: extended_message -// CHECK-NEXT: 'p' declared without an initial value -// CHECK-NEXT: message -// CHECK-NEXT: 'p' declared without an initial value -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindcontrol -// CHECK-NEXT: edges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: start -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line13 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line13 -// CHECK-NEXT: col18 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: end -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line14 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line14 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindevent -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line14 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: ranges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line14 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line14 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: depth0 -// CHECK-NEXT: extended_message -// CHECK-NEXT: Called C++ object pointer is uninitialized -// CHECK-NEXT: message -// CHECK-NEXT: Called C++ object pointer is uninitialized -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: descriptionCalled C++ object pointer is uninitialized -// CHECK-NEXT: categoryLogic error -// CHECK-NEXT: typeCalled C++ object pointer is uninitialized -// CHECK-NEXT: check_namecore.CallAndMessage -// CHECK-NEXT: -// CHECK-NEXT: issue_hash_content_of_line_in_context8c0cdb645ae6be246ed75941dcefd32d -// CHECK-NEXT: issue_context_kindfunction -// CHECK-NEXT: issue_contexttest_ic -// CHECK-NEXT: issue_hash_function_offset2 -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line14 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: path -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindevent -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line18 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: ranges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line18 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line18 -// CHECK-NEXT: col21 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: depth0 -// CHECK-NEXT: extended_message -// CHECK-NEXT: 'p' initialized to a null pointer value -// CHECK-NEXT: message -// CHECK-NEXT: 'p' initialized to a null pointer value -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindcontrol -// CHECK-NEXT: edges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: start -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line18 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line18 -// CHECK-NEXT: col18 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: end -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line19 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line19 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindevent -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line19 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: ranges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line19 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line19 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: depth0 -// CHECK-NEXT: extended_message -// CHECK-NEXT: Called C++ object pointer is null -// CHECK-NEXT: message -// CHECK-NEXT: Called C++ object pointer is null -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: descriptionCalled C++ object pointer is null -// CHECK-NEXT: categoryLogic error -// CHECK-NEXT: typeCalled C++ object pointer is null -// CHECK-NEXT: check_namecore.CallAndMessage -// CHECK-NEXT: -// CHECK-NEXT: issue_hash_content_of_line_in_context98e39ef0e4bbc0b9b2b1832285634d67 -// CHECK-NEXT: issue_context_kindfunction -// CHECK-NEXT: issue_contexttest_ic_null -// CHECK-NEXT: issue_hash_function_offset2 -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line19 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: path -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindcontrol -// CHECK-NEXT: edges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: start -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line23 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line23 -// CHECK-NEXT: col18 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: end -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line24 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line24 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindevent -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line24 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: ranges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line24 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line24 -// CHECK-NEXT: col7 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: depth0 -// CHECK-NEXT: extended_message -// CHECK-NEXT: Null pointer value stored to 'p' -// CHECK-NEXT: message -// CHECK-NEXT: Null pointer value stored to 'p' -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindcontrol -// CHECK-NEXT: edges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: start -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line24 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line24 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: end -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line25 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line25 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindevent -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line25 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: ranges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line25 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line25 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: depth0 -// CHECK-NEXT: extended_message -// CHECK-NEXT: Called C++ object pointer is null -// CHECK-NEXT: message -// CHECK-NEXT: Called C++ object pointer is null -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: descriptionCalled C++ object pointer is null -// CHECK-NEXT: categoryLogic error -// CHECK-NEXT: typeCalled C++ object pointer is null -// CHECK-NEXT: check_namecore.CallAndMessage -// CHECK-NEXT: -// CHECK-NEXT: issue_hash_content_of_line_in_context84f3d9d5009d2ac455b46b4aae88f67f -// CHECK-NEXT: issue_context_kindfunction -// CHECK-NEXT: issue_contexttest_ic_set_to_null -// CHECK-NEXT: issue_hash_function_offset3 -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line25 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: path -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindcontrol -// CHECK-NEXT: edges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: start -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line29 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line29 -// CHECK-NEXT: col4 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: end -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line29 -// CHECK-NEXT: col7 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line29 -// CHECK-NEXT: col7 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindevent -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line29 -// CHECK-NEXT: col7 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: ranges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line29 -// CHECK-NEXT: col7 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line29 -// CHECK-NEXT: col8 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: depth0 -// CHECK-NEXT: extended_message -// CHECK-NEXT: Assuming 'p' is null -// CHECK-NEXT: message -// CHECK-NEXT: Assuming 'p' is null -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindcontrol -// CHECK-NEXT: edges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: start -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line29 -// CHECK-NEXT: col7 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line29 -// CHECK-NEXT: col7 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: end -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line30 -// CHECK-NEXT: col5 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line30 -// CHECK-NEXT: col5 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindevent -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line30 -// CHECK-NEXT: col5 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: ranges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line30 -// CHECK-NEXT: col5 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line30 -// CHECK-NEXT: col5 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: depth0 -// CHECK-NEXT: extended_message -// CHECK-NEXT: Called C++ object pointer is null -// CHECK-NEXT: message -// CHECK-NEXT: Called C++ object pointer is null -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: descriptionCalled C++ object pointer is null -// CHECK-NEXT: categoryLogic error -// CHECK-NEXT: typeCalled C++ object pointer is null -// CHECK-NEXT: check_namecore.CallAndMessage -// CHECK-NEXT: -// CHECK-NEXT: issue_hash_content_of_line_in_contextc5bd8e35fb6da070914016804720ae4d -// CHECK-NEXT: issue_context_kindfunction -// CHECK-NEXT: issue_contexttest_ic_null -// CHECK-NEXT: issue_hash_function_offset2 -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line30 -// CHECK-NEXT: col5 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: path -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindevent -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line34 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: ranges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line34 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line34 -// CHECK-NEXT: col21 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: depth0 -// CHECK-NEXT: extended_message -// CHECK-NEXT: 'p' initialized to a null pointer value -// CHECK-NEXT: message -// CHECK-NEXT: 'p' initialized to a null pointer value -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindcontrol -// CHECK-NEXT: edges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: start -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line34 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line34 -// CHECK-NEXT: col18 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: end -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line37 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line37 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindevent -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line37 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: ranges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line37 -// CHECK-NEXT: col4 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line37 -// CHECK-NEXT: col4 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: depth0 -// CHECK-NEXT: extended_message -// CHECK-NEXT: Called C++ object pointer is null -// CHECK-NEXT: message -// CHECK-NEXT: Called C++ object pointer is null -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: descriptionCalled C++ object pointer is null -// CHECK-NEXT: categoryLogic error -// CHECK-NEXT: typeCalled C++ object pointer is null -// CHECK-NEXT: check_namecore.CallAndMessage -// CHECK-NEXT: -// CHECK-NEXT: issue_hash_content_of_line_in_context4681ee922f6860377317b26b3a4bb5d4 -// CHECK-NEXT: issue_context_kindfunction -// CHECK-NEXT: issue_contexttest_ic_member_ptr -// CHECK-NEXT: issue_hash_function_offset4 -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line37 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: path -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindcontrol -// CHECK-NEXT: edges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: start -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line41 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line41 -// CHECK-NEXT: col4 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: end -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line41 -// CHECK-NEXT: col7 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line41 -// CHECK-NEXT: col7 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindevent -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line41 -// CHECK-NEXT: col7 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: ranges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line41 -// CHECK-NEXT: col7 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line41 -// CHECK-NEXT: col8 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: depth0 -// CHECK-NEXT: extended_message -// CHECK-NEXT: Assuming 'p' is null -// CHECK-NEXT: message -// CHECK-NEXT: Assuming 'p' is null -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindcontrol -// CHECK-NEXT: edges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: start -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line41 -// CHECK-NEXT: col7 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line41 -// CHECK-NEXT: col7 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: end -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line42 -// CHECK-NEXT: col5 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line42 -// CHECK-NEXT: col14 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindevent -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line42 -// CHECK-NEXT: col5 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: ranges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line42 -// CHECK-NEXT: col5 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line42 -// CHECK-NEXT: col37 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: depth0 -// CHECK-NEXT: extended_message -// CHECK-NEXT: Called C++ object pointer is null -// CHECK-NEXT: message -// CHECK-NEXT: Called C++ object pointer is null -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: descriptionCalled C++ object pointer is null -// CHECK-NEXT: categoryLogic error -// CHECK-NEXT: typeCalled C++ object pointer is null -// CHECK-NEXT: check_namecore.CallAndMessage -// CHECK-NEXT: -// CHECK-NEXT: issue_hash_content_of_line_in_contexte23397f9f2eff1b08593c2b2db137494 -// CHECK-NEXT: issue_context_kindfunction -// CHECK-NEXT: issue_contexttest_cast -// CHECK-NEXT: issue_hash_function_offset2 -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line42 -// CHECK-NEXT: col5 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: diff --git a/clang/test/Analysis/plist-macros.cpp b/clang/test/Analysis/plist-macros.cpp index 4f7d3a2..43d0667 100644 --- a/clang/test/Analysis/plist-macros.cpp +++ b/clang/test/Analysis/plist-macros.cpp @@ -1,6 +1,6 @@ // RUN: %clang_analyze_cc1 -analyzer-checker=core,unix -analyzer-eagerly-assume -verify %s // RUN: %clang_analyze_cc1 -analyzer-checker=core,unix -analyzer-eagerly-assume -analyzer-output=plist-multi-file %s -o %t.plist -// RUN: FileCheck --input-file=%t.plist %s +// RUN: tail -n +11 %t.plist | diff -u -w - %S/ExpectedOutputs/plists/plist-macros.cpp.plist typedef __typeof(sizeof(int)) size_t; @@ -86,1668 +86,3 @@ void test1() { void test2(int *p) { CALL_FN(p); } -// CHECK: diagnostics -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: path -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindcontrol -// CHECK-NEXT: edges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: start -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line11 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line11 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: end -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line13 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line13 -// CHECK-NEXT: col14 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindevent -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line13 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: ranges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line13 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line13 -// CHECK-NEXT: col14 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: depth0 -// CHECK-NEXT: extended_message -// CHECK-NEXT: Memory is allocated -// CHECK-NEXT: message -// CHECK-NEXT: Memory is allocated -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindcontrol -// CHECK-NEXT: edges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: start -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line13 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line13 -// CHECK-NEXT: col14 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: end -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line16 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line16 -// CHECK-NEXT: col8 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindevent -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line16 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: ranges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line16 -// CHECK-NEXT: col10 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line16 -// CHECK-NEXT: col10 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: depth0 -// CHECK-NEXT: extended_message -// CHECK-NEXT: Memory allocated by malloc() should be deallocated by free(), not 'delete' -// CHECK-NEXT: message -// CHECK-NEXT: Memory allocated by malloc() should be deallocated by free(), not 'delete' -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: descriptionMemory allocated by malloc() should be deallocated by free(), not 'delete' -// CHECK-NEXT: categoryMemory error -// CHECK-NEXT: typeBad deallocator -// CHECK-NEXT: check_nameunix.MismatchedDeallocator -// CHECK-NEXT: -// CHECK-NEXT: issue_hash_content_of_line_in_context81d63a132b4ef0cc96734c17440a1c26 -// CHECK-NEXT: issue_context_kindfunction -// CHECK-NEXT: issue_contextnoteOnMacro -// CHECK-NEXT: issue_hash_function_offset6 -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line16 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: path -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindevent -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line20 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: ranges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line20 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line20 -// CHECK-NEXT: col14 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: depth0 -// CHECK-NEXT: extended_message -// CHECK-NEXT: Memory is allocated -// CHECK-NEXT: message -// CHECK-NEXT: Memory is allocated -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindcontrol -// CHECK-NEXT: edges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: start -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line20 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line20 -// CHECK-NEXT: col14 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: end -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line21 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line21 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindevent -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line21 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: depth0 -// CHECK-NEXT: extended_message -// CHECK-NEXT: Potential leak of memory pointed to by 'x' -// CHECK-NEXT: message -// CHECK-NEXT: Potential leak of memory pointed to by 'x' -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: descriptionPotential leak of memory pointed to by 'x' -// CHECK-NEXT: categoryMemory error -// CHECK-NEXT: typeMemory leak -// CHECK-NEXT: check_nameunix.Malloc -// CHECK-NEXT: -// CHECK-NEXT: issue_hash_content_of_line_in_context2d723d9fb4e5f10dd54a7396866dfce4 -// CHECK-NEXT: issue_context_kindfunction -// CHECK-NEXT: issue_contextmacroIsFirstInFunction -// CHECK-NEXT: issue_hash_function_offset1 -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line21 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: path -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindcontrol -// CHECK-NEXT: edges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: start -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line27 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line27 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: end -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line28 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line28 -// CHECK-NEXT: col22 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindcontrol -// CHECK-NEXT: edges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: start -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line28 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line28 -// CHECK-NEXT: col22 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: end -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line28 -// CHECK-NEXT: col24 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line28 -// CHECK-NEXT: col33 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindevent -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line28 -// CHECK-NEXT: col24 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: ranges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line28 -// CHECK-NEXT: col24 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line28 -// CHECK-NEXT: col33 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: depth0 -// CHECK-NEXT: extended_message -// CHECK-NEXT: Assuming 'p' is equal to null -// CHECK-NEXT: message -// CHECK-NEXT: Assuming 'p' is equal to null -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindcontrol -// CHECK-NEXT: edges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: start -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line28 -// CHECK-NEXT: col24 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line28 -// CHECK-NEXT: col33 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: end -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line28 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line28 -// CHECK-NEXT: col22 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindcontrol -// CHECK-NEXT: edges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: start -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line28 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line28 -// CHECK-NEXT: col22 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: end -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line30 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line30 -// CHECK-NEXT: col8 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindcontrol -// CHECK-NEXT: edges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: start -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line30 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line30 -// CHECK-NEXT: col8 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: end -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line30 -// CHECK-NEXT: col10 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line30 -// CHECK-NEXT: col10 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindevent -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line30 -// CHECK-NEXT: col10 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: ranges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line30 -// CHECK-NEXT: col11 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line30 -// CHECK-NEXT: col11 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: depth0 -// CHECK-NEXT: extended_message -// CHECK-NEXT: Dereference of null pointer (loaded from variable 'p') -// CHECK-NEXT: message -// CHECK-NEXT: Dereference of null pointer (loaded from variable 'p') -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: descriptionDereference of null pointer (loaded from variable 'p') -// CHECK-NEXT: categoryLogic error -// CHECK-NEXT: typeDereference of null pointer -// CHECK-NEXT: check_namecore.NullDereference -// CHECK-NEXT: -// CHECK-NEXT: issue_hash_content_of_line_in_context3570104919aab3f953357f8c87b68bd7 -// CHECK-NEXT: issue_context_kindfunction -// CHECK-NEXT: issue_contextmacroInExpression -// CHECK-NEXT: issue_hash_function_offset4 -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line30 -// CHECK-NEXT: col10 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: path -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindcontrol -// CHECK-NEXT: edges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: start -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line35 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line35 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: end -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line36 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line36 -// CHECK-NEXT: col4 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindcontrol -// CHECK-NEXT: edges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: start -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line36 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line36 -// CHECK-NEXT: col4 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: end -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line36 -// CHECK-NEXT: col7 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line36 -// CHECK-NEXT: col7 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindevent -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line36 -// CHECK-NEXT: col7 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: ranges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line36 -// CHECK-NEXT: col7 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line36 -// CHECK-NEXT: col25 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: depth0 -// CHECK-NEXT: extended_message -// CHECK-NEXT: Assuming the condition is true -// CHECK-NEXT: message -// CHECK-NEXT: Assuming the condition is true -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindcontrol -// CHECK-NEXT: edges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: start -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line36 -// CHECK-NEXT: col7 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line36 -// CHECK-NEXT: col7 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: end -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line37 -// CHECK-NEXT: col5 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line37 -// CHECK-NEXT: col6 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindcontrol -// CHECK-NEXT: edges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: start -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line37 -// CHECK-NEXT: col5 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line37 -// CHECK-NEXT: col6 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: end -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line37 -// CHECK-NEXT: col9 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line37 -// CHECK-NEXT: col9 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindevent -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line37 -// CHECK-NEXT: col9 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: ranges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line37 -// CHECK-NEXT: col9 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line37 -// CHECK-NEXT: col9 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: depth0 -// CHECK-NEXT: extended_message -// CHECK-NEXT: Assuming 'p' is null -// CHECK-NEXT: message -// CHECK-NEXT: Assuming 'p' is null -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindcontrol -// CHECK-NEXT: edges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: start -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line37 -// CHECK-NEXT: col9 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line37 -// CHECK-NEXT: col9 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: end -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line39 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line39 -// CHECK-NEXT: col8 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindcontrol -// CHECK-NEXT: edges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: start -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line39 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line39 -// CHECK-NEXT: col8 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: end -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line39 -// CHECK-NEXT: col10 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line39 -// CHECK-NEXT: col10 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindevent -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line39 -// CHECK-NEXT: col10 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: ranges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line39 -// CHECK-NEXT: col11 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line39 -// CHECK-NEXT: col11 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: depth0 -// CHECK-NEXT: extended_message -// CHECK-NEXT: Dereference of null pointer (loaded from variable 'p') -// CHECK-NEXT: message -// CHECK-NEXT: Dereference of null pointer (loaded from variable 'p') -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: descriptionDereference of null pointer (loaded from variable 'p') -// CHECK-NEXT: categoryLogic error -// CHECK-NEXT: typeDereference of null pointer -// CHECK-NEXT: check_namecore.NullDereference -// CHECK-NEXT: -// CHECK-NEXT: issue_hash_content_of_line_in_contextdeff163b13f3fd860bc332498b0dbc59 -// CHECK-NEXT: issue_context_kindfunction -// CHECK-NEXT: issue_contextmacroInExpressionNoNote -// CHECK-NEXT: issue_hash_function_offset5 -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line39 -// CHECK-NEXT: col10 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: path -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindcontrol -// CHECK-NEXT: edges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: start -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line44 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line44 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: end -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line45 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line45 -// CHECK-NEXT: col4 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindcontrol -// CHECK-NEXT: edges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: start -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line45 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line45 -// CHECK-NEXT: col4 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: end -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line45 -// CHECK-NEXT: col7 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line45 -// CHECK-NEXT: col18 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindevent -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line45 -// CHECK-NEXT: col7 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: ranges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line45 -// CHECK-NEXT: col7 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line45 -// CHECK-NEXT: col21 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: depth0 -// CHECK-NEXT: extended_message -// CHECK-NEXT: Assuming 'p' is equal to null -// CHECK-NEXT: message -// CHECK-NEXT: Assuming 'p' is equal to null -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindcontrol -// CHECK-NEXT: edges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: start -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line45 -// CHECK-NEXT: col7 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line45 -// CHECK-NEXT: col18 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: end -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line47 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line47 -// CHECK-NEXT: col8 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindcontrol -// CHECK-NEXT: edges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: start -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line47 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line47 -// CHECK-NEXT: col8 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: end -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line47 -// CHECK-NEXT: col10 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line47 -// CHECK-NEXT: col10 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindevent -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line47 -// CHECK-NEXT: col10 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: ranges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line47 -// CHECK-NEXT: col11 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line47 -// CHECK-NEXT: col11 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: depth0 -// CHECK-NEXT: extended_message -// CHECK-NEXT: Dereference of null pointer (loaded from variable 'p') -// CHECK-NEXT: message -// CHECK-NEXT: Dereference of null pointer (loaded from variable 'p') -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: descriptionDereference of null pointer (loaded from variable 'p') -// CHECK-NEXT: categoryLogic error -// CHECK-NEXT: typeDereference of null pointer -// CHECK-NEXT: check_namecore.NullDereference -// CHECK-NEXT: -// CHECK-NEXT: issue_hash_content_of_line_in_contextb67b58d85375752578e947b77c6aa70c -// CHECK-NEXT: issue_context_kindfunction -// CHECK-NEXT: issue_contextmacroWithArgInExpression -// CHECK-NEXT: issue_hash_function_offset4 -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line47 -// CHECK-NEXT: col10 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: path -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindcontrol -// CHECK-NEXT: edges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: start -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line55 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line55 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: end -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line56 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line56 -// CHECK-NEXT: col25 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindevent -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line56 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: ranges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line56 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line56 -// CHECK-NEXT: col25 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: depth0 -// CHECK-NEXT: extended_message -// CHECK-NEXT: Assuming 'p' is null -// CHECK-NEXT: message -// CHECK-NEXT: Assuming 'p' is null -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindcontrol -// CHECK-NEXT: edges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: start -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line56 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line56 -// CHECK-NEXT: col25 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: end -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line56 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line56 -// CHECK-NEXT: col25 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindevent -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line56 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: ranges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line56 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line56 -// CHECK-NEXT: col25 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: depth0 -// CHECK-NEXT: extended_message -// CHECK-NEXT: Dereference of null pointer (loaded from variable 'p') -// CHECK-NEXT: message -// CHECK-NEXT: Dereference of null pointer (loaded from variable 'p') -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: descriptionDereference of null pointer (loaded from variable 'p') -// CHECK-NEXT: categoryLogic error -// CHECK-NEXT: typeDereference of null pointer -// CHECK-NEXT: check_namecore.NullDereference -// CHECK-NEXT: -// CHECK-NEXT: issue_hash_content_of_line_in_contextb53410f6c0d3d07e62ce5c6f91a1810a -// CHECK-NEXT: issue_context_kindfunction -// CHECK-NEXT: issue_contextuseMultiNoteMacroWithError -// CHECK-NEXT: issue_hash_function_offset2 -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line56 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: path -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindcontrol -// CHECK-NEXT: edges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: start -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line67 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line67 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: end -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line68 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line68 -// CHECK-NEXT: col4 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindcontrol -// CHECK-NEXT: edges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: start -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line68 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line68 -// CHECK-NEXT: col4 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: end -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line68 -// CHECK-NEXT: col7 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line68 -// CHECK-NEXT: col7 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindevent -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line68 -// CHECK-NEXT: col7 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: ranges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line68 -// CHECK-NEXT: col7 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line68 -// CHECK-NEXT: col7 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: depth0 -// CHECK-NEXT: extended_message -// CHECK-NEXT: Assuming 'p' is null -// CHECK-NEXT: message -// CHECK-NEXT: Assuming 'p' is null -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindcontrol -// CHECK-NEXT: edges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: start -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line68 -// CHECK-NEXT: col7 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line68 -// CHECK-NEXT: col7 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: end -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line69 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line69 -// CHECK-NEXT: col16 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindevent -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line69 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: ranges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line69 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line69 -// CHECK-NEXT: col16 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: depth0 -// CHECK-NEXT: extended_message -// CHECK-NEXT: Assuming 'y' is 0 -// CHECK-NEXT: message -// CHECK-NEXT: Assuming 'y' is 0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindcontrol -// CHECK-NEXT: edges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: start -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line69 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line69 -// CHECK-NEXT: col16 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: end -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line71 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line71 -// CHECK-NEXT: col8 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindcontrol -// CHECK-NEXT: edges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: start -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line71 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line71 -// CHECK-NEXT: col8 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: end -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line71 -// CHECK-NEXT: col10 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line71 -// CHECK-NEXT: col10 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindevent -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line71 -// CHECK-NEXT: col10 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: ranges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line71 -// CHECK-NEXT: col11 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line71 -// CHECK-NEXT: col11 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: depth0 -// CHECK-NEXT: extended_message -// CHECK-NEXT: Dereference of null pointer (loaded from variable 'p') -// CHECK-NEXT: message -// CHECK-NEXT: Dereference of null pointer (loaded from variable 'p') -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: descriptionDereference of null pointer (loaded from variable 'p') -// CHECK-NEXT: categoryLogic error -// CHECK-NEXT: typeDereference of null pointer -// CHECK-NEXT: check_namecore.NullDereference -// CHECK-NEXT: -// CHECK-NEXT: issue_hash_content_of_line_in_context41f58f9549aa1867e461a7996a8d335c -// CHECK-NEXT: issue_context_kindfunction -// CHECK-NEXT: issue_contextuseMultiNote -// CHECK-NEXT: issue_hash_function_offset5 -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line71 -// CHECK-NEXT: col10 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: path -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindevent -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line83 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: ranges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line83 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line83 -// CHECK-NEXT: col12 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: depth0 -// CHECK-NEXT: extended_message -// CHECK-NEXT: Passing null pointer value via 1st parameter 'a' -// CHECK-NEXT: message -// CHECK-NEXT: Passing null pointer value via 1st parameter 'a' -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindevent -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line83 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: ranges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line83 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line83 -// CHECK-NEXT: col12 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: depth0 -// CHECK-NEXT: extended_message -// CHECK-NEXT: Calling 'null_deref' -// CHECK-NEXT: message -// CHECK-NEXT: Calling 'null_deref' -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindevent -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line76 -// CHECK-NEXT: col1 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: depth1 -// CHECK-NEXT: extended_message -// CHECK-NEXT: Entered call from 'test1' -// CHECK-NEXT: message -// CHECK-NEXT: Entered call from 'test1' -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindcontrol -// CHECK-NEXT: edges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: start -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line76 -// CHECK-NEXT: col1 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line76 -// CHECK-NEXT: col4 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: end -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line77 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line77 -// CHECK-NEXT: col4 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindcontrol -// CHECK-NEXT: edges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: start -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line77 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line77 -// CHECK-NEXT: col4 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: end -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line79 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line79 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindcontrol -// CHECK-NEXT: edges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: start -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line79 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line79 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: end -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line79 -// CHECK-NEXT: col6 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line79 -// CHECK-NEXT: col6 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindevent -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line79 -// CHECK-NEXT: col6 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: ranges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line79 -// CHECK-NEXT: col4 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line79 -// CHECK-NEXT: col4 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: depth1 -// CHECK-NEXT: extended_message -// CHECK-NEXT: Dereference of null pointer (loaded from variable 'a') -// CHECK-NEXT: message -// CHECK-NEXT: Dereference of null pointer (loaded from variable 'a') -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: descriptionDereference of null pointer (loaded from variable 'a') -// CHECK-NEXT: categoryLogic error -// CHECK-NEXT: typeDereference of null pointer -// CHECK-NEXT: check_namecore.NullDereference -// CHECK-NEXT: -// CHECK-NEXT: issue_hash_content_of_line_in_context2dc47a4afc2f349f12217b38588769f4 -// CHECK-NEXT: issue_context_kindfunction -// CHECK-NEXT: issue_contextnull_deref -// CHECK-NEXT: issue_hash_function_offset3 -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line79 -// CHECK-NEXT: col6 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: diff --git a/clang/test/Analysis/plist-output-alternate.m b/clang/test/Analysis/plist-output-alternate.m index 1a80a4d..b8cc00e 100644 --- a/clang/test/Analysis/plist-output-alternate.m +++ b/clang/test/Analysis/plist-output-alternate.m @@ -1,5 +1,5 @@ // RUN: %clang_analyze_cc1 -analyzer-checker=core,osx.cocoa.RetainCount,alpha.core -fblocks -analyzer-output=plist -o %t %s -// RUN: FileCheck --input-file %t %s +// RUN: tail -n +11 %t | diff -u -w - %S/ExpectedOutputs/plists/plist-output-alternate.m.plist void test_null_init(void) { int *p = 0; @@ -57,1440 +57,3 @@ void rdar8331641(int x) { (void) value; } -// CHECK: diagnostics -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: path -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindevent -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line5 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: ranges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line5 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line5 -// CHECK-NEXT: col8 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: depth0 -// CHECK-NEXT: extended_message -// CHECK-NEXT: 'p' initialized to a null pointer value -// CHECK-NEXT: message -// CHECK-NEXT: 'p' initialized to a null pointer value -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindcontrol -// CHECK-NEXT: edges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: start -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line5 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line5 -// CHECK-NEXT: col5 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: end -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line6 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line6 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindcontrol -// CHECK-NEXT: edges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: start -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line6 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line6 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: end -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line6 -// CHECK-NEXT: col6 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line6 -// CHECK-NEXT: col6 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindevent -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line6 -// CHECK-NEXT: col6 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: ranges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line6 -// CHECK-NEXT: col4 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line6 -// CHECK-NEXT: col4 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: depth0 -// CHECK-NEXT: extended_message -// CHECK-NEXT: Dereference of null pointer (loaded from variable 'p') -// CHECK-NEXT: message -// CHECK-NEXT: Dereference of null pointer (loaded from variable 'p') -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: descriptionDereference of null pointer (loaded from variable 'p') -// CHECK-NEXT: categoryLogic error -// CHECK-NEXT: typeDereference of null pointer -// CHECK-NEXT: check_namecore.NullDereference -// CHECK-NEXT: -// CHECK-NEXT: issue_hash_content_of_line_in_contextdc9c2a657ca759f9744cde2e093cfd59 -// CHECK-NEXT: issue_context_kindfunction -// CHECK-NEXT: issue_contexttest_null_init -// CHECK-NEXT: issue_hash_function_offset2 -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line6 -// CHECK-NEXT: col6 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: path -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindcontrol -// CHECK-NEXT: edges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: start -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line10 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line10 -// CHECK-NEXT: col5 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: end -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line11 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line11 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindevent -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line11 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: ranges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line11 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line11 -// CHECK-NEXT: col7 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: depth0 -// CHECK-NEXT: extended_message -// CHECK-NEXT: Null pointer value stored to 'p' -// CHECK-NEXT: message -// CHECK-NEXT: Null pointer value stored to 'p' -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindcontrol -// CHECK-NEXT: edges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: start -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line11 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line11 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: end -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line12 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line12 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindcontrol -// CHECK-NEXT: edges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: start -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line12 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line12 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: end -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line12 -// CHECK-NEXT: col6 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line12 -// CHECK-NEXT: col6 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindevent -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line12 -// CHECK-NEXT: col6 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: ranges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line12 -// CHECK-NEXT: col4 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line12 -// CHECK-NEXT: col4 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: depth0 -// CHECK-NEXT: extended_message -// CHECK-NEXT: Dereference of null pointer (loaded from variable 'p') -// CHECK-NEXT: message -// CHECK-NEXT: Dereference of null pointer (loaded from variable 'p') -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: descriptionDereference of null pointer (loaded from variable 'p') -// CHECK-NEXT: categoryLogic error -// CHECK-NEXT: typeDereference of null pointer -// CHECK-NEXT: check_namecore.NullDereference -// CHECK-NEXT: -// CHECK-NEXT: issue_hash_content_of_line_in_context8f95d9681490a4e52c167969d0957b39 -// CHECK-NEXT: issue_context_kindfunction -// CHECK-NEXT: issue_contexttest_null_assign -// CHECK-NEXT: issue_hash_function_offset3 -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line12 -// CHECK-NEXT: col6 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: path -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindcontrol -// CHECK-NEXT: edges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: start -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line16 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line16 -// CHECK-NEXT: col5 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: end -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line17 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line17 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindevent -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line17 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: ranges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line17 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line17 -// CHECK-NEXT: col7 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: depth0 -// CHECK-NEXT: extended_message -// CHECK-NEXT: Null pointer value stored to 'p' -// CHECK-NEXT: message -// CHECK-NEXT: Null pointer value stored to 'p' -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindcontrol -// CHECK-NEXT: edges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: start -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line17 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line17 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: end -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line18 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line18 -// CHECK-NEXT: col5 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindevent -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line18 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: ranges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line18 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line18 -// CHECK-NEXT: col8 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: depth0 -// CHECK-NEXT: extended_message -// CHECK-NEXT: 'q' initialized to a null pointer value -// CHECK-NEXT: message -// CHECK-NEXT: 'q' initialized to a null pointer value -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindcontrol -// CHECK-NEXT: edges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: start -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line18 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line18 -// CHECK-NEXT: col5 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: end -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line19 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line19 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindcontrol -// CHECK-NEXT: edges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: start -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line19 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line19 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: end -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line19 -// CHECK-NEXT: col6 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line19 -// CHECK-NEXT: col6 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindevent -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line19 -// CHECK-NEXT: col6 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: ranges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line19 -// CHECK-NEXT: col4 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line19 -// CHECK-NEXT: col4 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: depth0 -// CHECK-NEXT: extended_message -// CHECK-NEXT: Dereference of null pointer (loaded from variable 'q') -// CHECK-NEXT: message -// CHECK-NEXT: Dereference of null pointer (loaded from variable 'q') -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: descriptionDereference of null pointer (loaded from variable 'q') -// CHECK-NEXT: categoryLogic error -// CHECK-NEXT: typeDereference of null pointer -// CHECK-NEXT: check_namecore.NullDereference -// CHECK-NEXT: -// CHECK-NEXT: issue_hash_content_of_line_in_context94c43fbcad6aaff4ee7433f2d2db0bbe -// CHECK-NEXT: issue_context_kindfunction -// CHECK-NEXT: issue_contexttest_null_assign_transitive -// CHECK-NEXT: issue_hash_function_offset4 -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line19 -// CHECK-NEXT: col6 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: path -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindcontrol -// CHECK-NEXT: edges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: start -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line23 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line23 -// CHECK-NEXT: col4 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: end -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line23 -// CHECK-NEXT: col7 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line23 -// CHECK-NEXT: col7 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindevent -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line23 -// CHECK-NEXT: col7 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: ranges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line23 -// CHECK-NEXT: col7 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line23 -// CHECK-NEXT: col8 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: depth0 -// CHECK-NEXT: extended_message -// CHECK-NEXT: Assuming 'p' is null -// CHECK-NEXT: message -// CHECK-NEXT: Assuming 'p' is null -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindcontrol -// CHECK-NEXT: edges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: start -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line23 -// CHECK-NEXT: col7 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line23 -// CHECK-NEXT: col7 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: end -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line24 -// CHECK-NEXT: col5 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line24 -// CHECK-NEXT: col5 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindcontrol -// CHECK-NEXT: edges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: start -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line24 -// CHECK-NEXT: col5 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line24 -// CHECK-NEXT: col5 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: end -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line24 -// CHECK-NEXT: col8 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line24 -// CHECK-NEXT: col8 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindevent -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line24 -// CHECK-NEXT: col8 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: ranges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line24 -// CHECK-NEXT: col6 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line24 -// CHECK-NEXT: col6 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: depth0 -// CHECK-NEXT: extended_message -// CHECK-NEXT: Dereference of null pointer (loaded from variable 'p') -// CHECK-NEXT: message -// CHECK-NEXT: Dereference of null pointer (loaded from variable 'p') -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: descriptionDereference of null pointer (loaded from variable 'p') -// CHECK-NEXT: categoryLogic error -// CHECK-NEXT: typeDereference of null pointer -// CHECK-NEXT: check_namecore.NullDereference -// CHECK-NEXT: -// CHECK-NEXT: issue_hash_content_of_line_in_context659f01507ffd7efd3ca3eab7179fd7d2 -// CHECK-NEXT: issue_context_kindfunction -// CHECK-NEXT: issue_contexttest_null_cond -// CHECK-NEXT: issue_hash_function_offset2 -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line24 -// CHECK-NEXT: col8 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: path -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindcontrol -// CHECK-NEXT: edges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: start -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line29 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line29 -// CHECK-NEXT: col4 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: end -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line29 -// CHECK-NEXT: col7 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line29 -// CHECK-NEXT: col7 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindevent -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line29 -// CHECK-NEXT: col7 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: ranges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line29 -// CHECK-NEXT: col7 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line29 -// CHECK-NEXT: col8 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: depth0 -// CHECK-NEXT: extended_message -// CHECK-NEXT: Assuming 'q' is null -// CHECK-NEXT: message -// CHECK-NEXT: Assuming 'q' is null -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindcontrol -// CHECK-NEXT: edges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: start -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line29 -// CHECK-NEXT: col7 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line29 -// CHECK-NEXT: col7 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: end -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line30 -// CHECK-NEXT: col5 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line30 -// CHECK-NEXT: col7 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindevent -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line30 -// CHECK-NEXT: col5 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: ranges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line30 -// CHECK-NEXT: col5 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line30 -// CHECK-NEXT: col10 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: depth0 -// CHECK-NEXT: extended_message -// CHECK-NEXT: 'p' initialized to a null pointer value -// CHECK-NEXT: message -// CHECK-NEXT: 'p' initialized to a null pointer value -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindcontrol -// CHECK-NEXT: edges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: start -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line30 -// CHECK-NEXT: col5 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line30 -// CHECK-NEXT: col7 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: end -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line31 -// CHECK-NEXT: col5 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line31 -// CHECK-NEXT: col5 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindcontrol -// CHECK-NEXT: edges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: start -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line31 -// CHECK-NEXT: col5 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line31 -// CHECK-NEXT: col5 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: end -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line31 -// CHECK-NEXT: col8 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line31 -// CHECK-NEXT: col8 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindevent -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line31 -// CHECK-NEXT: col8 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: ranges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line31 -// CHECK-NEXT: col6 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line31 -// CHECK-NEXT: col6 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: depth0 -// CHECK-NEXT: extended_message -// CHECK-NEXT: Dereference of null pointer (loaded from variable 'p') -// CHECK-NEXT: message -// CHECK-NEXT: Dereference of null pointer (loaded from variable 'p') -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: descriptionDereference of null pointer (loaded from variable 'p') -// CHECK-NEXT: categoryLogic error -// CHECK-NEXT: typeDereference of null pointer -// CHECK-NEXT: check_namecore.NullDereference -// CHECK-NEXT: -// CHECK-NEXT: issue_hash_content_of_line_in_contextc90d51e62139e614b57aff7021240a82 -// CHECK-NEXT: issue_context_kindfunction -// CHECK-NEXT: issue_contexttest_null_cond_transitive -// CHECK-NEXT: issue_hash_function_offset3 -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line31 -// CHECK-NEXT: col8 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: path -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindcontrol -// CHECK-NEXT: edges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: start -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line36 -// CHECK-NEXT: col24 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line36 -// CHECK-NEXT: col24 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: end -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line37 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line37 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindevent -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line37 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: ranges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line37 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line37 -// CHECK-NEXT: col9 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: depth0 -// CHECK-NEXT: extended_message -// CHECK-NEXT: Null pointer value stored to 'x.p' -// CHECK-NEXT: message -// CHECK-NEXT: Null pointer value stored to 'x.p' -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindcontrol -// CHECK-NEXT: edges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: start -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line37 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line37 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: end -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line38 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line38 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindcontrol -// CHECK-NEXT: edges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: start -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line38 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line38 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: end -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line38 -// CHECK-NEXT: col10 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line38 -// CHECK-NEXT: col10 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindevent -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line38 -// CHECK-NEXT: col10 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: ranges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line38 -// CHECK-NEXT: col7 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line38 -// CHECK-NEXT: col7 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: depth0 -// CHECK-NEXT: extended_message -// CHECK-NEXT: Dereference of null pointer (loaded from field 'p') -// CHECK-NEXT: message -// CHECK-NEXT: Dereference of null pointer (loaded from field 'p') -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: descriptionDereference of null pointer (loaded from field 'p') -// CHECK-NEXT: categoryLogic error -// CHECK-NEXT: typeDereference of null pointer -// CHECK-NEXT: check_namecore.NullDereference -// CHECK-NEXT: -// CHECK-NEXT: issue_hash_content_of_line_in_context245408d2bc416e324064d990e6dd82a8 -// CHECK-NEXT: issue_context_kindfunction -// CHECK-NEXT: issue_contexttest_null_field -// CHECK-NEXT: issue_hash_function_offset3 -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line38 -// CHECK-NEXT: col10 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: path -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindcontrol -// CHECK-NEXT: edges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: start -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line53 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line53 -// CHECK-NEXT: col8 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: end -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line54 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line54 -// CHECK-NEXT: col13 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindevent -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line54 -// CHECK-NEXT: col23 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: ranges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line54 -// CHECK-NEXT: col23 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line54 -// CHECK-NEXT: col82 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: depth0 -// CHECK-NEXT: extended_message -// CHECK-NEXT: Call to function 'CFNumberCreate' returns a Core Foundation object of type CFNumberRef with a +1 retain count -// CHECK-NEXT: message -// CHECK-NEXT: Call to function 'CFNumberCreate' returns a Core Foundation object of type CFNumberRef with a +1 retain count -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindcontrol -// CHECK-NEXT: edges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: start -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line54 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line54 -// CHECK-NEXT: col13 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: end -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line55 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line55 -// CHECK-NEXT: col4 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindcontrol -// CHECK-NEXT: edges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: start -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line55 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line55 -// CHECK-NEXT: col4 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: end -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line55 -// CHECK-NEXT: col7 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line55 -// CHECK-NEXT: col7 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindevent -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line55 -// CHECK-NEXT: col7 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: ranges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line55 -// CHECK-NEXT: col7 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line55 -// CHECK-NEXT: col7 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: depth0 -// CHECK-NEXT: extended_message -// CHECK-NEXT: Assuming 'x' is 0 -// CHECK-NEXT: message -// CHECK-NEXT: Assuming 'x' is 0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindcontrol -// CHECK-NEXT: edges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: start -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line55 -// CHECK-NEXT: col7 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line55 -// CHECK-NEXT: col7 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: end -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line57 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line57 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindcontrol -// CHECK-NEXT: edges -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: start -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line57 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line57 -// CHECK-NEXT: col3 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: end -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line58 -// CHECK-NEXT: col1 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: line58 -// CHECK-NEXT: col1 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: kindevent -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line58 -// CHECK-NEXT: col1 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: depth0 -// CHECK-NEXT: extended_message -// CHECK-NEXT: Object leaked: object allocated and stored into 'value' is not referenced later in this execution path and has a retain count of +1 -// CHECK-NEXT: message -// CHECK-NEXT: Object leaked: object allocated and stored into 'value' is not referenced later in this execution path and has a retain count of +1 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: descriptionPotential leak of an object stored into 'value' -// CHECK-NEXT: categoryMemory (Core Foundation/Objective-C) -// CHECK-NEXT: typeLeak -// CHECK-NEXT: check_nameosx.cocoa.RetainCount -// CHECK-NEXT: -// CHECK-NEXT: issue_hash_content_of_line_in_context29a10ca4af622b6146ca082e49d919d6 -// CHECK-NEXT: issue_context_kindfunction -// CHECK-NEXT: issue_contextrdar8331641 -// CHECK-NEXT: issue_hash_function_offset2 -// CHECK-NEXT: location -// CHECK-NEXT: -// CHECK-NEXT: line58 -// CHECK-NEXT: col1 -// CHECK-NEXT: file0 -// CHECK-NEXT: -// CHECK-NEXT: -// CHECK-NEXT: -- 2.7.4