diff options
author | Andrei Karas <akaras@inbox.ru> | 2015-07-02 00:28:53 +0300 |
---|---|---|
committer | Andrei Karas <akaras@inbox.ru> | 2015-07-02 00:28:53 +0300 |
commit | 1674d5685a5b08314dcf584d0c08b15479a7e624 (patch) | |
tree | 53c1d5cec3c87f7485182442d1d69a1a4bc20fb5 | |
parent | cc63c846db8cf24928482417ef2f1f4e4bf7e3ee (diff) | |
download | paranucker-1674d5685a5b08314dcf584d0c08b15479a7e624.tar.gz paranucker-1674d5685a5b08314dcf584d0c08b15479a7e624.tar.bz2 paranucker-1674d5685a5b08314dcf584d0c08b15479a7e624.tar.xz paranucker-1674d5685a5b08314dcf584d0c08b15479a7e624.zip |
Add test 28.
-rw-r--r-- | test/Makefile | 15 | ||||
-rw-r--r-- | test/test28-01.txt | 3408 | ||||
-rw-r--r-- | test/test28-02.txt | 222 | ||||
-rw-r--r-- | test/test28-03.txt | 812 | ||||
-rw-r--r-- | test/test28-04.txt | 10 | ||||
-rw-r--r-- | test/test28-05.txt | 10 | ||||
-rw-r--r-- | test/test28.cpp | 231 |
7 files changed, 4707 insertions, 1 deletions
diff --git a/test/Makefile b/test/Makefile index ea94603..a2ad1bd 100644 --- a/test/Makefile +++ b/test/Makefile @@ -31,7 +31,8 @@ TESTS24 = $(call TEST,24,5) TESTS25 = $(call TEST,25,5) TESTS26 = $(call TEST,26,5) TESTS27 = $(call TEST,27,5) -TESTNUMBERS = 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 +TESTS28 = $(call TEST,28,5) +TESTNUMBERS = 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 ALLTESTS = $(foreach num,$(TESTNUMBERS),test$(num) ${TESTS$(num)}) .PHONY: ${ALLTESTS} ${CRASHES} all crashes @@ -330,6 +331,18 @@ test27-04: test27-05: $(call CMDXX,detectnullpointers,test27.cpp,test27-05.txt,-O2 -std=c++0x -Wall -Wnonnull) +test28: ${TESTS28} +test28-01: + $(call CMDXX,dump,test28.cpp,test28-01.txt,-std=c++0x) +test28-02: + $(call CMDXX,findargs,test28.cpp,test28-02.txt,-std=c++0x) +test28-03: + $(call CMDXX,dumpnullpointers,test28.cpp,test28-03.txt,-std=c++0x) +test28-04: + $(call CMDXX,detectnullpointers,test28.cpp,test28-04.txt,-std=c++0x) +test28-05: + $(call CMDXX,detectnullpointers,test28.cpp,test28-05.txt,-O2 -std=c++0x -Wall -Wnonnull) + crashtest01: $(call CMDXX,dump,crashtest01.h,crashtest01-01.txt) crashtest02: diff --git a/test/test28-01.txt b/test/test28-01.txt new file mode 100644 index 0000000..82c37af --- /dev/null +++ b/test/test28-01.txt @@ -0,0 +1,3408 @@ +function_decl func1 test28.cpp 19:10 +- isPublic: 1 + method_type - function type + void_type - method return type + type_decl void <built-in> 0:0 - type name + - isAutogenerated: 1 + record_type - method base type + type_decl Object1 test28.cpp 14:7 - type name + - isAutogenerated: 1 + field_decl tmp1 test28.cpp 16:12 - field + - unsigned + integer_cst 64 - decl size + field_decl tmp2 test28.cpp 17:12 - field + - unsigned + integer_cst 64 - decl size + type_decl Object1 test28.cpp 15:1 - field + - isAutogenerated: 1 + tree_list - arg types + pointer_type - value + record_type - nested type + type_decl Object1 test28.cpp 14:7 - type name + - isAutogenerated: 1 + field_decl tmp1 test28.cpp 16:12 - field + - unsigned + integer_cst 64 - decl size + field_decl tmp2 test28.cpp 17:12 - field + - unsigned + integer_cst 64 - decl size + type_decl Object1 test28.cpp 15:1 - field + - isAutogenerated: 1 + tree_list - chain + pointer_type - value + record_type - nested type + type_decl Data1 test28.cpp 3:8 - type name + - isAutogenerated: 1 + field_decl val test28.cpp 5:9 - field + - signed + integer_cst 32 - decl size + field_decl ptrval test28.cpp 6:12 - field + - unsigned + integer_cst 64 - decl size + field_decl arr test28.cpp 7:14 - field + - signed + integer_cst 96 - decl size + type_decl Data1 test28.cpp 4:1 - field + - isAutogenerated: 1 + tree_list - chain + void_type - value + type_decl void <built-in> 0:0 - type name + - isAutogenerated: 1 + result_decl test28.cpp 20:5 - function result + - isAutogenerated: 1 + void_type - result type + type_decl void <built-in> 0:0 - type name + - isAutogenerated: 1 + parm_decl this test28.cpp 19:33 - argument + - isAutogenerated: 1 + pointer_type - decl type + record_type - nested type + type_decl Object1 test28.cpp 14:7 - type name + - isAutogenerated: 1 + field_decl tmp1 test28.cpp 16:12 - field + - unsigned + integer_cst 64 - decl size + field_decl tmp2 test28.cpp 17:12 - field + - unsigned + integer_cst 64 - decl size + type_decl Object1 test28.cpp 15:1 - field + - isAutogenerated: 1 + integer_cst 64 - parm size + parm_decl ptr1 test28.cpp 19:29 - argument + pointer_type - decl type + record_type - nested type + type_decl Data1 test28.cpp 3:8 - type name + - isAutogenerated: 1 + field_decl val test28.cpp 5:9 - field + - signed + integer_cst 32 - decl size + field_decl ptrval test28.cpp 6:12 - field + - unsigned + integer_cst 64 - decl size + field_decl arr test28.cpp 7:14 - field + - signed + integer_cst 96 - decl size + type_decl Data1 test28.cpp 4:1 - field + - isAutogenerated: 1 + integer_cst 64 - parm size + statement_list - code + cleanup_point_expr test28.cpp 21:57 - statement + expr_stmt test28.cpp 21:57 - operand + call_expr test28.cpp 21:31 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownVars - operand + - stringLength: 10 + nop_expr - arg + addr_expr - operand + string_cst ptr1 - operand + - stringLength: 5 + cleanup_point_expr test28.cpp 22:60 - statement + expr_stmt test28.cpp 22:60 - operand + call_expr test28.cpp 22:31 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownNonNullVars - operand + - stringLength: 17 + nop_expr - arg + addr_expr - operand + string_cst - operand + - stringLength: 1 + cleanup_point_expr test28.cpp 23:57 - statement + expr_stmt test28.cpp 23:57 - operand + call_expr test28.cpp 23:31 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownNullVars - operand + - stringLength: 14 + nop_expr - arg + addr_expr - operand + string_cst - operand + - stringLength: 1 + cleanup_point_expr test28.cpp 24:65 - statement + expr_stmt test28.cpp 24:65 - operand + call_expr test28.cpp 24:31 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst needCheckNullVars - operand + - stringLength: 18 + nop_expr - arg + addr_expr - operand + string_cst ptr1 - operand + - stringLength: 5 +function_decl func2 test28.cpp 27:10 +- isPublic: 1 + method_type - function type + void_type - method return type + type_decl void <built-in> 0:0 - type name + - isAutogenerated: 1 + record_type - method base type + type_decl Object1 test28.cpp 14:7 - type name + - isAutogenerated: 1 + field_decl tmp1 test28.cpp 16:12 - field + - unsigned + integer_cst 64 - decl size + field_decl tmp2 test28.cpp 17:12 - field + - unsigned + integer_cst 64 - decl size + type_decl Object1 test28.cpp 15:1 - field + - isAutogenerated: 1 + tree_list - arg types + pointer_type - value + record_type - nested type + type_decl Object1 test28.cpp 14:7 - type name + - isAutogenerated: 1 + field_decl tmp1 test28.cpp 16:12 - field + - unsigned + integer_cst 64 - decl size + field_decl tmp2 test28.cpp 17:12 - field + - unsigned + integer_cst 64 - decl size + type_decl Object1 test28.cpp 15:1 - field + - isAutogenerated: 1 + tree_list - chain + pointer_type - value + record_type - nested type + type_decl Data1 test28.cpp 3:8 - type name + - isAutogenerated: 1 + field_decl val test28.cpp 5:9 - field + - signed + integer_cst 32 - decl size + field_decl ptrval test28.cpp 6:12 - field + - unsigned + integer_cst 64 - decl size + field_decl arr test28.cpp 7:14 - field + - signed + integer_cst 96 - decl size + type_decl Data1 test28.cpp 4:1 - field + - isAutogenerated: 1 + tree_list - chain + void_type - value + type_decl void <built-in> 0:0 - type name + - isAutogenerated: 1 + result_decl test28.cpp 28:5 - function result + - isAutogenerated: 1 + void_type - result type + type_decl void <built-in> 0:0 - type name + - isAutogenerated: 1 + parm_decl this test28.cpp 27:33 - argument + - isAutogenerated: 1 + pointer_type - decl type + record_type - nested type + type_decl Object1 test28.cpp 14:7 - type name + - isAutogenerated: 1 + field_decl tmp1 test28.cpp 16:12 - field + - unsigned + integer_cst 64 - decl size + field_decl tmp2 test28.cpp 17:12 - field + - unsigned + integer_cst 64 - decl size + type_decl Object1 test28.cpp 15:1 - field + - isAutogenerated: 1 + integer_cst 64 - parm size + - isUsed: 1 + parm_decl ptr1 test28.cpp 27:29 - argument + pointer_type - decl type + record_type - nested type + type_decl Data1 test28.cpp 3:8 - type name + - isAutogenerated: 1 + field_decl val test28.cpp 5:9 - field + - signed + integer_cst 32 - decl size + field_decl ptrval test28.cpp 6:12 - field + - unsigned + integer_cst 64 - decl size + field_decl arr test28.cpp 7:14 - field + - signed + integer_cst 96 - decl size + type_decl Data1 test28.cpp 4:1 - field + - isAutogenerated: 1 + integer_cst 64 - parm size + statement_list - code + if_stmt test28.cpp 29:9 - statement + eq_expr test28.cpp 29:14 - condition + nop_expr - operand + - isUsed: 1 + parm_decl ptr1 test28.cpp 27:29 - operand + pointer_type - decl type + record_type - nested type + type_decl Data1 test28.cpp 3:8 - type name + - isAutogenerated: 1 + field_decl val test28.cpp 5:9 - field + - signed + integer_cst 32 - decl size + field_decl ptrval test28.cpp 6:12 - field + - unsigned + integer_cst 64 - decl size + field_decl arr test28.cpp 7:14 - field + - signed + integer_cst 96 - decl size + type_decl Data1 test28.cpp 4:1 - field + - isAutogenerated: 1 + integer_cst 64 - parm size + integer_cst 0 - operand + return_expr test28.cpp 30:13 - then + cleanup_point_expr test28.cpp 31:57 - statement + expr_stmt test28.cpp 31:57 - operand + call_expr test28.cpp 31:31 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownVars - operand + - stringLength: 10 + nop_expr - arg + addr_expr - operand + string_cst ptr1 - operand + - stringLength: 5 + cleanup_point_expr test28.cpp 32:64 - statement + expr_stmt test28.cpp 32:64 - operand + call_expr test28.cpp 32:31 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownNonNullVars - operand + - stringLength: 17 + nop_expr - arg + addr_expr - operand + string_cst ptr1 - operand + - stringLength: 5 + cleanup_point_expr test28.cpp 33:57 - statement + expr_stmt test28.cpp 33:57 - operand + call_expr test28.cpp 33:31 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownNullVars - operand + - stringLength: 14 + nop_expr - arg + addr_expr - operand + string_cst - operand + - stringLength: 1 + cleanup_point_expr test28.cpp 34:61 - statement + expr_stmt test28.cpp 34:61 - operand + call_expr test28.cpp 34:31 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst needCheckNullVars - operand + - stringLength: 18 + nop_expr - arg + addr_expr - operand + string_cst - operand + - stringLength: 1 +function_decl func3 test28.cpp 37:10 +- isPublic: 1 + method_type - function type + void_type - method return type + type_decl void <built-in> 0:0 - type name + - isAutogenerated: 1 + record_type - method base type + type_decl Object1 test28.cpp 14:7 - type name + - isAutogenerated: 1 + field_decl tmp1 test28.cpp 16:12 - field + - unsigned + integer_cst 64 - decl size + field_decl tmp2 test28.cpp 17:12 - field + - unsigned + integer_cst 64 - decl size + type_decl Object1 test28.cpp 15:1 - field + - isAutogenerated: 1 + tree_list - arg types + pointer_type - value + record_type - nested type + type_decl Object1 test28.cpp 14:7 - type name + - isAutogenerated: 1 + field_decl tmp1 test28.cpp 16:12 - field + - unsigned + integer_cst 64 - decl size + field_decl tmp2 test28.cpp 17:12 - field + - unsigned + integer_cst 64 - decl size + type_decl Object1 test28.cpp 15:1 - field + - isAutogenerated: 1 + tree_list - chain + pointer_type - value + record_type - nested type + type_decl Data1 test28.cpp 3:8 - type name + - isAutogenerated: 1 + field_decl val test28.cpp 5:9 - field + - signed + integer_cst 32 - decl size + field_decl ptrval test28.cpp 6:12 - field + - unsigned + integer_cst 64 - decl size + field_decl arr test28.cpp 7:14 - field + - signed + integer_cst 96 - decl size + type_decl Data1 test28.cpp 4:1 - field + - isAutogenerated: 1 + tree_list - chain + void_type - value + type_decl void <built-in> 0:0 - type name + - isAutogenerated: 1 + result_decl test28.cpp 38:5 - function result + - isAutogenerated: 1 + void_type - result type + type_decl void <built-in> 0:0 - type name + - isAutogenerated: 1 + parm_decl this test28.cpp 37:33 - argument + - isAutogenerated: 1 + pointer_type - decl type + record_type - nested type + type_decl Object1 test28.cpp 14:7 - type name + - isAutogenerated: 1 + field_decl tmp1 test28.cpp 16:12 - field + - unsigned + integer_cst 64 - decl size + field_decl tmp2 test28.cpp 17:12 - field + - unsigned + integer_cst 64 - decl size + type_decl Object1 test28.cpp 15:1 - field + - isAutogenerated: 1 + integer_cst 64 - parm size + - isUsed: 1 + parm_decl ptr1 test28.cpp 37:29 - argument + pointer_type - decl type + record_type - nested type + type_decl Data1 test28.cpp 3:8 - type name + - isAutogenerated: 1 + field_decl val test28.cpp 5:9 - field + - signed + integer_cst 32 - decl size + field_decl ptrval test28.cpp 6:12 - field + - unsigned + integer_cst 64 - decl size + field_decl arr test28.cpp 7:14 - field + - signed + integer_cst 96 - decl size + type_decl Data1 test28.cpp 4:1 - field + - isAutogenerated: 1 + integer_cst 64 - parm size + statement_list - code + if_stmt test28.cpp 39:9 - statement + ne_expr - condition + nop_expr - operand + - isUsed: 1 + parm_decl ptr1 test28.cpp 37:29 - operand + pointer_type - decl type + record_type - nested type + type_decl Data1 test28.cpp 3:8 - type name + - isAutogenerated: 1 + field_decl val test28.cpp 5:9 - field + - signed + integer_cst 32 - decl size + field_decl ptrval test28.cpp 6:12 - field + - unsigned + integer_cst 64 - decl size + field_decl arr test28.cpp 7:14 - field + - signed + integer_cst 96 - decl size + type_decl Data1 test28.cpp 4:1 - field + - isAutogenerated: 1 + integer_cst 64 - parm size + integer_cst 0 - operand + statement_list - then + cleanup_point_expr test28.cpp 41:61 - statement + expr_stmt test28.cpp 41:61 - operand + call_expr test28.cpp 41:35 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownVars - operand + - stringLength: 10 + nop_expr - arg + addr_expr - operand + string_cst ptr1 - operand + - stringLength: 5 + cleanup_point_expr test28.cpp 42:68 - statement + expr_stmt test28.cpp 42:68 - operand + call_expr test28.cpp 42:35 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownNonNullVars - operand + - stringLength: 17 + nop_expr - arg + addr_expr - operand + string_cst ptr1 - operand + - stringLength: 5 + cleanup_point_expr test28.cpp 43:61 - statement + expr_stmt test28.cpp 43:61 - operand + call_expr test28.cpp 43:35 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownNullVars - operand + - stringLength: 14 + nop_expr - arg + addr_expr - operand + string_cst - operand + - stringLength: 1 + cleanup_point_expr test28.cpp 44:65 - statement + expr_stmt test28.cpp 44:65 - operand + call_expr test28.cpp 44:35 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst needCheckNullVars - operand + - stringLength: 18 + nop_expr - arg + addr_expr - operand + string_cst - operand + - stringLength: 1 + statement_list - else + cleanup_point_expr test28.cpp 48:61 - statement + expr_stmt test28.cpp 48:61 - operand + call_expr test28.cpp 48:35 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownVars - operand + - stringLength: 10 + nop_expr - arg + addr_expr - operand + string_cst ptr1 - operand + - stringLength: 5 + cleanup_point_expr test28.cpp 49:64 - statement + expr_stmt test28.cpp 49:64 - operand + call_expr test28.cpp 49:35 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownNonNullVars - operand + - stringLength: 17 + nop_expr - arg + addr_expr - operand + string_cst - operand + - stringLength: 1 + cleanup_point_expr test28.cpp 50:65 - statement + expr_stmt test28.cpp 50:65 - operand + call_expr test28.cpp 50:35 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownNullVars - operand + - stringLength: 14 + nop_expr - arg + addr_expr - operand + string_cst ptr1 - operand + - stringLength: 5 + cleanup_point_expr test28.cpp 51:69 - statement + expr_stmt test28.cpp 51:69 - operand + call_expr test28.cpp 51:35 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst needCheckNullVars - operand + - stringLength: 18 + nop_expr - arg + addr_expr - operand + string_cst ptr1 - operand + - stringLength: 5 + cleanup_point_expr test28.cpp 53:57 - statement + expr_stmt test28.cpp 53:57 - operand + call_expr test28.cpp 53:31 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownVars - operand + - stringLength: 10 + nop_expr - arg + addr_expr - operand + string_cst ptr1 - operand + - stringLength: 5 + cleanup_point_expr test28.cpp 54:60 - statement + expr_stmt test28.cpp 54:60 - operand + call_expr test28.cpp 54:31 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownNonNullVars - operand + - stringLength: 17 + nop_expr - arg + addr_expr - operand + string_cst - operand + - stringLength: 1 + cleanup_point_expr test28.cpp 55:57 - statement + expr_stmt test28.cpp 55:57 - operand + call_expr test28.cpp 55:31 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownNullVars - operand + - stringLength: 14 + nop_expr - arg + addr_expr - operand + string_cst - operand + - stringLength: 1 + cleanup_point_expr test28.cpp 56:65 - statement + expr_stmt test28.cpp 56:65 - operand + call_expr test28.cpp 56:31 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst needCheckNullVars - operand + - stringLength: 18 + nop_expr - arg + addr_expr - operand + string_cst ptr1 - operand + - stringLength: 5 +function_decl func4 test28.cpp 59:10 +- isPublic: 1 + method_type - function type + void_type - method return type + type_decl void <built-in> 0:0 - type name + - isAutogenerated: 1 + record_type - method base type + type_decl Object1 test28.cpp 14:7 - type name + - isAutogenerated: 1 + field_decl tmp1 test28.cpp 16:12 - field + - unsigned + integer_cst 64 - decl size + field_decl tmp2 test28.cpp 17:12 - field + - unsigned + integer_cst 64 - decl size + type_decl Object1 test28.cpp 15:1 - field + - isAutogenerated: 1 + tree_list - arg types + pointer_type - value + record_type - nested type + type_decl Object1 test28.cpp 14:7 - type name + - isAutogenerated: 1 + field_decl tmp1 test28.cpp 16:12 - field + - unsigned + integer_cst 64 - decl size + field_decl tmp2 test28.cpp 17:12 - field + - unsigned + integer_cst 64 - decl size + type_decl Object1 test28.cpp 15:1 - field + - isAutogenerated: 1 + tree_list - chain + pointer_type - value + record_type - nested type + type_decl Data1 test28.cpp 3:8 - type name + - isAutogenerated: 1 + field_decl val test28.cpp 5:9 - field + - signed + integer_cst 32 - decl size + field_decl ptrval test28.cpp 6:12 - field + - unsigned + integer_cst 64 - decl size + field_decl arr test28.cpp 7:14 - field + - signed + integer_cst 96 - decl size + type_decl Data1 test28.cpp 4:1 - field + - isAutogenerated: 1 + tree_list - chain + void_type - value + type_decl void <built-in> 0:0 - type name + - isAutogenerated: 1 + result_decl test28.cpp 60:5 - function result + - isAutogenerated: 1 + void_type - result type + type_decl void <built-in> 0:0 - type name + - isAutogenerated: 1 + parm_decl this test28.cpp 59:33 - argument + - isAutogenerated: 1 + pointer_type - decl type + record_type - nested type + type_decl Object1 test28.cpp 14:7 - type name + - isAutogenerated: 1 + field_decl tmp1 test28.cpp 16:12 - field + - unsigned + integer_cst 64 - decl size + field_decl tmp2 test28.cpp 17:12 - field + - unsigned + integer_cst 64 - decl size + type_decl Object1 test28.cpp 15:1 - field + - isAutogenerated: 1 + integer_cst 64 - parm size + - isUsed: 1 + parm_decl ptr1 test28.cpp 59:29 - argument + pointer_type - decl type + record_type - nested type + type_decl Data1 test28.cpp 3:8 - type name + - isAutogenerated: 1 + field_decl val test28.cpp 5:9 - field + - signed + integer_cst 32 - decl size + field_decl ptrval test28.cpp 6:12 - field + - unsigned + integer_cst 64 - decl size + field_decl arr test28.cpp 7:14 - field + - signed + integer_cst 96 - decl size + type_decl Data1 test28.cpp 4:1 - field + - isAutogenerated: 1 + integer_cst 64 - parm size + statement_list - code + if_stmt test28.cpp 61:9 - statement + eq_expr test28.cpp 61:14 - condition + nop_expr - operand + - isUsed: 1 + parm_decl ptr1 test28.cpp 59:29 - operand + pointer_type - decl type + record_type - nested type + type_decl Data1 test28.cpp 3:8 - type name + - isAutogenerated: 1 + field_decl val test28.cpp 5:9 - field + - signed + integer_cst 32 - decl size + field_decl ptrval test28.cpp 6:12 - field + - unsigned + integer_cst 64 - decl size + field_decl arr test28.cpp 7:14 - field + - signed + integer_cst 96 - decl size + type_decl Data1 test28.cpp 4:1 - field + - isAutogenerated: 1 + integer_cst 64 - parm size + integer_cst 0 - operand + statement_list - then + cleanup_point_expr test28.cpp 63:61 - statement + expr_stmt test28.cpp 63:61 - operand + call_expr test28.cpp 63:35 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownVars - operand + - stringLength: 10 + nop_expr - arg + addr_expr - operand + string_cst ptr1 - operand + - stringLength: 5 + cleanup_point_expr test28.cpp 64:64 - statement + expr_stmt test28.cpp 64:64 - operand + call_expr test28.cpp 64:35 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownNonNullVars - operand + - stringLength: 17 + nop_expr - arg + addr_expr - operand + string_cst - operand + - stringLength: 1 + cleanup_point_expr test28.cpp 65:65 - statement + expr_stmt test28.cpp 65:65 - operand + call_expr test28.cpp 65:35 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownNullVars - operand + - stringLength: 14 + nop_expr - arg + addr_expr - operand + string_cst ptr1 - operand + - stringLength: 5 + cleanup_point_expr test28.cpp 66:69 - statement + expr_stmt test28.cpp 66:69 - operand + call_expr test28.cpp 66:35 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst needCheckNullVars - operand + - stringLength: 18 + nop_expr - arg + addr_expr - operand + string_cst ptr1 - operand + - stringLength: 5 + statement_list - else + cleanup_point_expr test28.cpp 70:61 - statement + expr_stmt test28.cpp 70:61 - operand + call_expr test28.cpp 70:35 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownVars - operand + - stringLength: 10 + nop_expr - arg + addr_expr - operand + string_cst ptr1 - operand + - stringLength: 5 + cleanup_point_expr test28.cpp 71:68 - statement + expr_stmt test28.cpp 71:68 - operand + call_expr test28.cpp 71:35 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownNonNullVars - operand + - stringLength: 17 + nop_expr - arg + addr_expr - operand + string_cst ptr1 - operand + - stringLength: 5 + cleanup_point_expr test28.cpp 72:61 - statement + expr_stmt test28.cpp 72:61 - operand + call_expr test28.cpp 72:35 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownNullVars - operand + - stringLength: 14 + nop_expr - arg + addr_expr - operand + string_cst - operand + - stringLength: 1 + cleanup_point_expr test28.cpp 73:65 - statement + expr_stmt test28.cpp 73:65 - operand + call_expr test28.cpp 73:35 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst needCheckNullVars - operand + - stringLength: 18 + nop_expr - arg + addr_expr - operand + string_cst - operand + - stringLength: 1 + cleanup_point_expr test28.cpp 75:57 - statement + expr_stmt test28.cpp 75:57 - operand + call_expr test28.cpp 75:31 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownVars - operand + - stringLength: 10 + nop_expr - arg + addr_expr - operand + string_cst ptr1 - operand + - stringLength: 5 + cleanup_point_expr test28.cpp 76:60 - statement + expr_stmt test28.cpp 76:60 - operand + call_expr test28.cpp 76:31 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownNonNullVars - operand + - stringLength: 17 + nop_expr - arg + addr_expr - operand + string_cst - operand + - stringLength: 1 + cleanup_point_expr test28.cpp 77:57 - statement + expr_stmt test28.cpp 77:57 - operand + call_expr test28.cpp 77:31 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownNullVars - operand + - stringLength: 14 + nop_expr - arg + addr_expr - operand + string_cst - operand + - stringLength: 1 + cleanup_point_expr test28.cpp 78:65 - statement + expr_stmt test28.cpp 78:65 - operand + call_expr test28.cpp 78:31 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst needCheckNullVars - operand + - stringLength: 18 + nop_expr - arg + addr_expr - operand + string_cst ptr1 - operand + - stringLength: 5 +function_decl func5 test28.cpp 81:10 +- isPublic: 1 + method_type - function type + void_type - method return type + type_decl void <built-in> 0:0 - type name + - isAutogenerated: 1 + record_type - method base type + type_decl Object1 test28.cpp 14:7 - type name + - isAutogenerated: 1 + field_decl tmp1 test28.cpp 16:12 - field + - unsigned + integer_cst 64 - decl size + field_decl tmp2 test28.cpp 17:12 - field + - unsigned + integer_cst 64 - decl size + type_decl Object1 test28.cpp 15:1 - field + - isAutogenerated: 1 + tree_list - arg types + pointer_type - value + record_type - nested type + type_decl Object1 test28.cpp 14:7 - type name + - isAutogenerated: 1 + field_decl tmp1 test28.cpp 16:12 - field + - unsigned + integer_cst 64 - decl size + field_decl tmp2 test28.cpp 17:12 - field + - unsigned + integer_cst 64 - decl size + type_decl Object1 test28.cpp 15:1 - field + - isAutogenerated: 1 + tree_list - chain + pointer_type - value + record_type - nested type + type_decl Data1 test28.cpp 3:8 - type name + - isAutogenerated: 1 + field_decl val test28.cpp 5:9 - field + - signed + integer_cst 32 - decl size + field_decl ptrval test28.cpp 6:12 - field + - unsigned + integer_cst 64 - decl size + field_decl arr test28.cpp 7:14 - field + - signed + integer_cst 96 - decl size + type_decl Data1 test28.cpp 4:1 - field + - isAutogenerated: 1 + tree_list - chain + void_type - value + type_decl void <built-in> 0:0 - type name + - isAutogenerated: 1 + result_decl test28.cpp 82:5 - function result + - isAutogenerated: 1 + void_type - result type + type_decl void <built-in> 0:0 - type name + - isAutogenerated: 1 + parm_decl this test28.cpp 81:33 - argument + - isAutogenerated: 1 + pointer_type - decl type + record_type - nested type + type_decl Object1 test28.cpp 14:7 - type name + - isAutogenerated: 1 + field_decl tmp1 test28.cpp 16:12 - field + - unsigned + integer_cst 64 - decl size + field_decl tmp2 test28.cpp 17:12 - field + - unsigned + integer_cst 64 - decl size + type_decl Object1 test28.cpp 15:1 - field + - isAutogenerated: 1 + integer_cst 64 - parm size + - isUsed: 1 + parm_decl ptr1 test28.cpp 81:29 - argument + pointer_type - decl type + record_type - nested type + type_decl Data1 test28.cpp 3:8 - type name + - isAutogenerated: 1 + field_decl val test28.cpp 5:9 - field + - signed + integer_cst 32 - decl size + field_decl ptrval test28.cpp 6:12 - field + - unsigned + integer_cst 64 - decl size + field_decl arr test28.cpp 7:14 - field + - signed + integer_cst 96 - decl size + type_decl Data1 test28.cpp 4:1 - field + - isAutogenerated: 1 + integer_cst 64 - parm size + statement_list - code + if_stmt test28.cpp 83:9 - statement + ne_expr - condition + nop_expr - operand + - isUsed: 1 + parm_decl ptr1 test28.cpp 81:29 - operand + pointer_type - decl type + record_type - nested type + type_decl Data1 test28.cpp 3:8 - type name + - isAutogenerated: 1 + field_decl val test28.cpp 5:9 - field + - signed + integer_cst 32 - decl size + field_decl ptrval test28.cpp 6:12 - field + - unsigned + integer_cst 64 - decl size + field_decl arr test28.cpp 7:14 - field + - signed + integer_cst 96 - decl size + type_decl Data1 test28.cpp 4:1 - field + - isAutogenerated: 1 + integer_cst 64 - parm size + integer_cst 0 - operand + statement_list - then + cleanup_point_expr test28.cpp 85:61 - statement + expr_stmt test28.cpp 85:61 - operand + call_expr test28.cpp 85:35 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownVars - operand + - stringLength: 10 + nop_expr - arg + addr_expr - operand + string_cst ptr1 - operand + - stringLength: 5 + cleanup_point_expr test28.cpp 86:68 - statement + expr_stmt test28.cpp 86:68 - operand + call_expr test28.cpp 86:35 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownNonNullVars - operand + - stringLength: 17 + nop_expr - arg + addr_expr - operand + string_cst ptr1 - operand + - stringLength: 5 + cleanup_point_expr test28.cpp 87:61 - statement + expr_stmt test28.cpp 87:61 - operand + call_expr test28.cpp 87:35 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownNullVars - operand + - stringLength: 14 + nop_expr - arg + addr_expr - operand + string_cst - operand + - stringLength: 1 + cleanup_point_expr test28.cpp 88:65 - statement + expr_stmt test28.cpp 88:65 - operand + call_expr test28.cpp 88:35 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst needCheckNullVars - operand + - stringLength: 18 + nop_expr - arg + addr_expr - operand + string_cst - operand + - stringLength: 1 + return_expr test28.cpp 89:13 - statement + statement_list - else + cleanup_point_expr test28.cpp 93:61 - statement + expr_stmt test28.cpp 93:61 - operand + call_expr test28.cpp 93:35 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownVars - operand + - stringLength: 10 + nop_expr - arg + addr_expr - operand + string_cst ptr1 - operand + - stringLength: 5 + cleanup_point_expr test28.cpp 94:64 - statement + expr_stmt test28.cpp 94:64 - operand + call_expr test28.cpp 94:35 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownNonNullVars - operand + - stringLength: 17 + nop_expr - arg + addr_expr - operand + string_cst - operand + - stringLength: 1 + cleanup_point_expr test28.cpp 95:65 - statement + expr_stmt test28.cpp 95:65 - operand + call_expr test28.cpp 95:35 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownNullVars - operand + - stringLength: 14 + nop_expr - arg + addr_expr - operand + string_cst ptr1 - operand + - stringLength: 5 + cleanup_point_expr test28.cpp 96:69 - statement + expr_stmt test28.cpp 96:69 - operand + call_expr test28.cpp 96:35 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst needCheckNullVars - operand + - stringLength: 18 + nop_expr - arg + addr_expr - operand + string_cst ptr1 - operand + - stringLength: 5 + cleanup_point_expr test28.cpp 98:57 - statement + expr_stmt test28.cpp 98:57 - operand + call_expr test28.cpp 98:31 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownVars - operand + - stringLength: 10 + nop_expr - arg + addr_expr - operand + string_cst ptr1 - operand + - stringLength: 5 + cleanup_point_expr test28.cpp 99:60 - statement + expr_stmt test28.cpp 99:60 - operand + call_expr test28.cpp 99:31 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownNonNullVars - operand + - stringLength: 17 + nop_expr - arg + addr_expr - operand + string_cst - operand + - stringLength: 1 + cleanup_point_expr test28.cpp 100:61 - statement + expr_stmt test28.cpp 100:61 - operand + call_expr test28.cpp 100:31 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownNullVars - operand + - stringLength: 14 + nop_expr - arg + addr_expr - operand + string_cst ptr1 - operand + - stringLength: 5 + cleanup_point_expr test28.cpp 101:65 - statement + expr_stmt test28.cpp 101:65 - operand + call_expr test28.cpp 101:31 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst needCheckNullVars - operand + - stringLength: 18 + nop_expr - arg + addr_expr - operand + string_cst ptr1 - operand + - stringLength: 5 +function_decl func6 test28.cpp 104:10 +- isPublic: 1 + method_type - function type + void_type - method return type + type_decl void <built-in> 0:0 - type name + - isAutogenerated: 1 + record_type - method base type + type_decl Object1 test28.cpp 14:7 - type name + - isAutogenerated: 1 + field_decl tmp1 test28.cpp 16:12 - field + - unsigned + integer_cst 64 - decl size + field_decl tmp2 test28.cpp 17:12 - field + - unsigned + integer_cst 64 - decl size + type_decl Object1 test28.cpp 15:1 - field + - isAutogenerated: 1 + tree_list - arg types + pointer_type - value + record_type - nested type + type_decl Object1 test28.cpp 14:7 - type name + - isAutogenerated: 1 + field_decl tmp1 test28.cpp 16:12 - field + - unsigned + integer_cst 64 - decl size + field_decl tmp2 test28.cpp 17:12 - field + - unsigned + integer_cst 64 - decl size + type_decl Object1 test28.cpp 15:1 - field + - isAutogenerated: 1 + tree_list - chain + pointer_type - value + record_type - nested type + type_decl Data1 test28.cpp 3:8 - type name + - isAutogenerated: 1 + field_decl val test28.cpp 5:9 - field + - signed + integer_cst 32 - decl size + field_decl ptrval test28.cpp 6:12 - field + - unsigned + integer_cst 64 - decl size + field_decl arr test28.cpp 7:14 - field + - signed + integer_cst 96 - decl size + type_decl Data1 test28.cpp 4:1 - field + - isAutogenerated: 1 + tree_list - chain + void_type - value + type_decl void <built-in> 0:0 - type name + - isAutogenerated: 1 + result_decl test28.cpp 105:5 - function result + - isAutogenerated: 1 + void_type - result type + type_decl void <built-in> 0:0 - type name + - isAutogenerated: 1 + parm_decl this test28.cpp 104:33 - argument + - isAutogenerated: 1 + pointer_type - decl type + record_type - nested type + type_decl Object1 test28.cpp 14:7 - type name + - isAutogenerated: 1 + field_decl tmp1 test28.cpp 16:12 - field + - unsigned + integer_cst 64 - decl size + field_decl tmp2 test28.cpp 17:12 - field + - unsigned + integer_cst 64 - decl size + type_decl Object1 test28.cpp 15:1 - field + - isAutogenerated: 1 + integer_cst 64 - parm size + - isUsed: 1 + parm_decl ptr1 test28.cpp 104:29 - argument + pointer_type - decl type + record_type - nested type + type_decl Data1 test28.cpp 3:8 - type name + - isAutogenerated: 1 + field_decl val test28.cpp 5:9 - field + - signed + integer_cst 32 - decl size + field_decl ptrval test28.cpp 6:12 - field + - unsigned + integer_cst 64 - decl size + field_decl arr test28.cpp 7:14 - field + - signed + integer_cst 96 - decl size + type_decl Data1 test28.cpp 4:1 - field + - isAutogenerated: 1 + integer_cst 64 - parm size + statement_list - code + if_stmt test28.cpp 106:9 - statement + ne_expr - condition + nop_expr - operand + - isUsed: 1 + parm_decl ptr1 test28.cpp 104:29 - operand + pointer_type - decl type + record_type - nested type + type_decl Data1 test28.cpp 3:8 - type name + - isAutogenerated: 1 + field_decl val test28.cpp 5:9 - field + - signed + integer_cst 32 - decl size + field_decl ptrval test28.cpp 6:12 - field + - unsigned + integer_cst 64 - decl size + field_decl arr test28.cpp 7:14 - field + - signed + integer_cst 96 - decl size + type_decl Data1 test28.cpp 4:1 - field + - isAutogenerated: 1 + integer_cst 64 - parm size + integer_cst 0 - operand + statement_list - then + cleanup_point_expr test28.cpp 108:61 - statement + expr_stmt test28.cpp 108:61 - operand + call_expr test28.cpp 108:35 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownVars - operand + - stringLength: 10 + nop_expr - arg + addr_expr - operand + string_cst ptr1 - operand + - stringLength: 5 + cleanup_point_expr test28.cpp 109:68 - statement + expr_stmt test28.cpp 109:68 - operand + call_expr test28.cpp 109:35 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownNonNullVars - operand + - stringLength: 17 + nop_expr - arg + addr_expr - operand + string_cst ptr1 - operand + - stringLength: 5 + cleanup_point_expr test28.cpp 110:61 - statement + expr_stmt test28.cpp 110:61 - operand + call_expr test28.cpp 110:35 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownNullVars - operand + - stringLength: 14 + nop_expr - arg + addr_expr - operand + string_cst - operand + - stringLength: 1 + cleanup_point_expr test28.cpp 111:65 - statement + expr_stmt test28.cpp 111:65 - operand + call_expr test28.cpp 111:35 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst needCheckNullVars - operand + - stringLength: 18 + nop_expr - arg + addr_expr - operand + string_cst - operand + - stringLength: 1 + statement_list - else + cleanup_point_expr test28.cpp 115:61 - statement + expr_stmt test28.cpp 115:61 - operand + call_expr test28.cpp 115:35 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownVars - operand + - stringLength: 10 + nop_expr - arg + addr_expr - operand + string_cst ptr1 - operand + - stringLength: 5 + cleanup_point_expr test28.cpp 116:64 - statement + expr_stmt test28.cpp 116:64 - operand + call_expr test28.cpp 116:35 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownNonNullVars - operand + - stringLength: 17 + nop_expr - arg + addr_expr - operand + string_cst - operand + - stringLength: 1 + cleanup_point_expr test28.cpp 117:65 - statement + expr_stmt test28.cpp 117:65 - operand + call_expr test28.cpp 117:35 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownNullVars - operand + - stringLength: 14 + nop_expr - arg + addr_expr - operand + string_cst ptr1 - operand + - stringLength: 5 + cleanup_point_expr test28.cpp 118:69 - statement + expr_stmt test28.cpp 118:69 - operand + call_expr test28.cpp 118:35 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst needCheckNullVars - operand + - stringLength: 18 + nop_expr - arg + addr_expr - operand + string_cst ptr1 - operand + - stringLength: 5 + return_expr test28.cpp 119:13 - statement + cleanup_point_expr test28.cpp 121:57 - statement + expr_stmt test28.cpp 121:57 - operand + call_expr test28.cpp 121:31 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownVars - operand + - stringLength: 10 + nop_expr - arg + addr_expr - operand + string_cst ptr1 - operand + - stringLength: 5 + cleanup_point_expr test28.cpp 122:64 - statement + expr_stmt test28.cpp 122:64 - operand + call_expr test28.cpp 122:31 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownNonNullVars - operand + - stringLength: 17 + nop_expr - arg + addr_expr - operand + string_cst ptr1 - operand + - stringLength: 5 + cleanup_point_expr test28.cpp 123:57 - statement + expr_stmt test28.cpp 123:57 - operand + call_expr test28.cpp 123:31 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownNullVars - operand + - stringLength: 14 + nop_expr - arg + addr_expr - operand + string_cst - operand + - stringLength: 1 + cleanup_point_expr test28.cpp 124:61 - statement + expr_stmt test28.cpp 124:61 - operand + call_expr test28.cpp 124:31 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst needCheckNullVars - operand + - stringLength: 18 + nop_expr - arg + addr_expr - operand + string_cst - operand + - stringLength: 1 +function_decl func7 test28.cpp 127:10 +- isPublic: 1 + method_type - function type + void_type - method return type + type_decl void <built-in> 0:0 - type name + - isAutogenerated: 1 + record_type - method base type + type_decl Object1 test28.cpp 14:7 - type name + - isAutogenerated: 1 + field_decl tmp1 test28.cpp 16:12 - field + - unsigned + integer_cst 64 - decl size + field_decl tmp2 test28.cpp 17:12 - field + - unsigned + integer_cst 64 - decl size + type_decl Object1 test28.cpp 15:1 - field + - isAutogenerated: 1 + tree_list - arg types + pointer_type - value + record_type - nested type + type_decl Object1 test28.cpp 14:7 - type name + - isAutogenerated: 1 + field_decl tmp1 test28.cpp 16:12 - field + - unsigned + integer_cst 64 - decl size + field_decl tmp2 test28.cpp 17:12 - field + - unsigned + integer_cst 64 - decl size + type_decl Object1 test28.cpp 15:1 - field + - isAutogenerated: 1 + tree_list - chain + pointer_type - value + record_type - nested type + type_decl Data1 test28.cpp 3:8 - type name + - isAutogenerated: 1 + field_decl val test28.cpp 5:9 - field + - signed + integer_cst 32 - decl size + field_decl ptrval test28.cpp 6:12 - field + - unsigned + integer_cst 64 - decl size + field_decl arr test28.cpp 7:14 - field + - signed + integer_cst 96 - decl size + type_decl Data1 test28.cpp 4:1 - field + - isAutogenerated: 1 + tree_list - chain + void_type - value + type_decl void <built-in> 0:0 - type name + - isAutogenerated: 1 + result_decl test28.cpp 128:5 - function result + - isAutogenerated: 1 + void_type - result type + type_decl void <built-in> 0:0 - type name + - isAutogenerated: 1 + parm_decl this test28.cpp 127:33 - argument + - isAutogenerated: 1 + pointer_type - decl type + record_type - nested type + type_decl Object1 test28.cpp 14:7 - type name + - isAutogenerated: 1 + field_decl tmp1 test28.cpp 16:12 - field + - unsigned + integer_cst 64 - decl size + field_decl tmp2 test28.cpp 17:12 - field + - unsigned + integer_cst 64 - decl size + type_decl Object1 test28.cpp 15:1 - field + - isAutogenerated: 1 + integer_cst 64 - parm size + - isUsed: 1 + parm_decl ptr1 test28.cpp 127:29 - argument + pointer_type - decl type + record_type - nested type + type_decl Data1 test28.cpp 3:8 - type name + - isAutogenerated: 1 + field_decl val test28.cpp 5:9 - field + - signed + integer_cst 32 - decl size + field_decl ptrval test28.cpp 6:12 - field + - unsigned + integer_cst 64 - decl size + field_decl arr test28.cpp 7:14 - field + - signed + integer_cst 96 - decl size + type_decl Data1 test28.cpp 4:1 - field + - isAutogenerated: 1 + integer_cst 64 - parm size + statement_list - code + if_stmt test28.cpp 129:9 - statement + eq_expr test28.cpp 129:14 - condition + nop_expr - operand + - isUsed: 1 + parm_decl ptr1 test28.cpp 127:29 - operand + pointer_type - decl type + record_type - nested type + type_decl Data1 test28.cpp 3:8 - type name + - isAutogenerated: 1 + field_decl val test28.cpp 5:9 - field + - signed + integer_cst 32 - decl size + field_decl ptrval test28.cpp 6:12 - field + - unsigned + integer_cst 64 - decl size + field_decl arr test28.cpp 7:14 - field + - signed + integer_cst 96 - decl size + type_decl Data1 test28.cpp 4:1 - field + - isAutogenerated: 1 + integer_cst 64 - parm size + integer_cst 0 - operand + statement_list - then + cleanup_point_expr test28.cpp 131:61 - statement + expr_stmt test28.cpp 131:61 - operand + call_expr test28.cpp 131:35 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownVars - operand + - stringLength: 10 + nop_expr - arg + addr_expr - operand + string_cst ptr1 - operand + - stringLength: 5 + cleanup_point_expr test28.cpp 132:64 - statement + expr_stmt test28.cpp 132:64 - operand + call_expr test28.cpp 132:35 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownNonNullVars - operand + - stringLength: 17 + nop_expr - arg + addr_expr - operand + string_cst - operand + - stringLength: 1 + cleanup_point_expr test28.cpp 133:65 - statement + expr_stmt test28.cpp 133:65 - operand + call_expr test28.cpp 133:35 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownNullVars - operand + - stringLength: 14 + nop_expr - arg + addr_expr - operand + string_cst ptr1 - operand + - stringLength: 5 + cleanup_point_expr test28.cpp 134:69 - statement + expr_stmt test28.cpp 134:69 - operand + call_expr test28.cpp 134:35 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst needCheckNullVars - operand + - stringLength: 18 + nop_expr - arg + addr_expr - operand + string_cst ptr1 - operand + - stringLength: 5 + statement_list - else + cleanup_point_expr test28.cpp 138:61 - statement + expr_stmt test28.cpp 138:61 - operand + call_expr test28.cpp 138:35 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownVars - operand + - stringLength: 10 + nop_expr - arg + addr_expr - operand + string_cst ptr1 - operand + - stringLength: 5 + cleanup_point_expr test28.cpp 139:68 - statement + expr_stmt test28.cpp 139:68 - operand + call_expr test28.cpp 139:35 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownNonNullVars - operand + - stringLength: 17 + nop_expr - arg + addr_expr - operand + string_cst ptr1 - operand + - stringLength: 5 + cleanup_point_expr test28.cpp 140:61 - statement + expr_stmt test28.cpp 140:61 - operand + call_expr test28.cpp 140:35 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownNullVars - operand + - stringLength: 14 + nop_expr - arg + addr_expr - operand + string_cst - operand + - stringLength: 1 + cleanup_point_expr test28.cpp 141:65 - statement + expr_stmt test28.cpp 141:65 - operand + call_expr test28.cpp 141:35 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst needCheckNullVars - operand + - stringLength: 18 + nop_expr - arg + addr_expr - operand + string_cst - operand + - stringLength: 1 + return_expr test28.cpp 142:13 - statement + cleanup_point_expr test28.cpp 144:57 - statement + expr_stmt test28.cpp 144:57 - operand + call_expr test28.cpp 144:31 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownVars - operand + - stringLength: 10 + nop_expr - arg + addr_expr - operand + string_cst ptr1 - operand + - stringLength: 5 + cleanup_point_expr test28.cpp 145:60 - statement + expr_stmt test28.cpp 145:60 - operand + call_expr test28.cpp 145:31 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownNonNullVars - operand + - stringLength: 17 + nop_expr - arg + addr_expr - operand + string_cst - operand + - stringLength: 1 + cleanup_point_expr test28.cpp 146:61 - statement + expr_stmt test28.cpp 146:61 - operand + call_expr test28.cpp 146:31 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownNullVars - operand + - stringLength: 14 + nop_expr - arg + addr_expr - operand + string_cst ptr1 - operand + - stringLength: 5 + cleanup_point_expr test28.cpp 147:65 - statement + expr_stmt test28.cpp 147:65 - operand + call_expr test28.cpp 147:31 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst needCheckNullVars - operand + - stringLength: 18 + nop_expr - arg + addr_expr - operand + string_cst ptr1 - operand + - stringLength: 5 +function_decl func8 test28.cpp 150:10 +- isPublic: 1 + method_type - function type + void_type - method return type + type_decl void <built-in> 0:0 - type name + - isAutogenerated: 1 + record_type - method base type + type_decl Object1 test28.cpp 14:7 - type name + - isAutogenerated: 1 + field_decl tmp1 test28.cpp 16:12 - field + - unsigned + integer_cst 64 - decl size + field_decl tmp2 test28.cpp 17:12 - field + - unsigned + integer_cst 64 - decl size + type_decl Object1 test28.cpp 15:1 - field + - isAutogenerated: 1 + tree_list - arg types + pointer_type - value + record_type - nested type + type_decl Object1 test28.cpp 14:7 - type name + - isAutogenerated: 1 + field_decl tmp1 test28.cpp 16:12 - field + - unsigned + integer_cst 64 - decl size + field_decl tmp2 test28.cpp 17:12 - field + - unsigned + integer_cst 64 - decl size + type_decl Object1 test28.cpp 15:1 - field + - isAutogenerated: 1 + tree_list - chain + pointer_type - value + record_type - nested type + type_decl Data1 test28.cpp 3:8 - type name + - isAutogenerated: 1 + field_decl val test28.cpp 5:9 - field + - signed + integer_cst 32 - decl size + field_decl ptrval test28.cpp 6:12 - field + - unsigned + integer_cst 64 - decl size + field_decl arr test28.cpp 7:14 - field + - signed + integer_cst 96 - decl size + type_decl Data1 test28.cpp 4:1 - field + - isAutogenerated: 1 + tree_list - chain + void_type - value + type_decl void <built-in> 0:0 - type name + - isAutogenerated: 1 + result_decl test28.cpp 151:5 - function result + - isAutogenerated: 1 + void_type - result type + type_decl void <built-in> 0:0 - type name + - isAutogenerated: 1 + parm_decl this test28.cpp 150:33 - argument + - isAutogenerated: 1 + pointer_type - decl type + record_type - nested type + type_decl Object1 test28.cpp 14:7 - type name + - isAutogenerated: 1 + field_decl tmp1 test28.cpp 16:12 - field + - unsigned + integer_cst 64 - decl size + field_decl tmp2 test28.cpp 17:12 - field + - unsigned + integer_cst 64 - decl size + type_decl Object1 test28.cpp 15:1 - field + - isAutogenerated: 1 + integer_cst 64 - parm size + - isUsed: 1 + parm_decl ptr1 test28.cpp 150:29 - argument + pointer_type - decl type + record_type - nested type + type_decl Data1 test28.cpp 3:8 - type name + - isAutogenerated: 1 + field_decl val test28.cpp 5:9 - field + - signed + integer_cst 32 - decl size + field_decl ptrval test28.cpp 6:12 - field + - unsigned + integer_cst 64 - decl size + field_decl arr test28.cpp 7:14 - field + - signed + integer_cst 96 - decl size + type_decl Data1 test28.cpp 4:1 - field + - isAutogenerated: 1 + integer_cst 64 - parm size + statement_list - code + if_stmt test28.cpp 152:9 - statement + ne_expr - condition + nop_expr - operand + - isUsed: 1 + parm_decl ptr1 test28.cpp 150:29 - operand + pointer_type - decl type + record_type - nested type + type_decl Data1 test28.cpp 3:8 - type name + - isAutogenerated: 1 + field_decl val test28.cpp 5:9 - field + - signed + integer_cst 32 - decl size + field_decl ptrval test28.cpp 6:12 - field + - unsigned + integer_cst 64 - decl size + field_decl arr test28.cpp 7:14 - field + - signed + integer_cst 96 - decl size + type_decl Data1 test28.cpp 4:1 - field + - isAutogenerated: 1 + integer_cst 64 - parm size + integer_cst 0 - operand + statement_list - then + cleanup_point_expr test28.cpp 154:61 - statement + expr_stmt test28.cpp 154:61 - operand + call_expr test28.cpp 154:35 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownVars - operand + - stringLength: 10 + nop_expr - arg + addr_expr - operand + string_cst ptr1 - operand + - stringLength: 5 + cleanup_point_expr test28.cpp 155:68 - statement + expr_stmt test28.cpp 155:68 - operand + call_expr test28.cpp 155:35 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownNonNullVars - operand + - stringLength: 17 + nop_expr - arg + addr_expr - operand + string_cst ptr1 - operand + - stringLength: 5 + cleanup_point_expr test28.cpp 156:61 - statement + expr_stmt test28.cpp 156:61 - operand + call_expr test28.cpp 156:35 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownNullVars - operand + - stringLength: 14 + nop_expr - arg + addr_expr - operand + string_cst - operand + - stringLength: 1 + cleanup_point_expr test28.cpp 157:65 - statement + expr_stmt test28.cpp 157:65 - operand + call_expr test28.cpp 157:35 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst needCheckNullVars - operand + - stringLength: 18 + nop_expr - arg + addr_expr - operand + string_cst - operand + - stringLength: 1 + return_expr test28.cpp 158:13 - statement + statement_list - else + cleanup_point_expr test28.cpp 162:61 - statement + expr_stmt test28.cpp 162:61 - operand + call_expr test28.cpp 162:35 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownVars - operand + - stringLength: 10 + nop_expr - arg + addr_expr - operand + string_cst ptr1 - operand + - stringLength: 5 + cleanup_point_expr test28.cpp 163:64 - statement + expr_stmt test28.cpp 163:64 - operand + call_expr test28.cpp 163:35 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownNonNullVars - operand + - stringLength: 17 + nop_expr - arg + addr_expr - operand + string_cst - operand + - stringLength: 1 + cleanup_point_expr test28.cpp 164:65 - statement + expr_stmt test28.cpp 164:65 - operand + call_expr test28.cpp 164:35 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownNullVars - operand + - stringLength: 14 + nop_expr - arg + addr_expr - operand + string_cst ptr1 - operand + - stringLength: 5 + cleanup_point_expr test28.cpp 165:69 - statement + expr_stmt test28.cpp 165:69 - operand + call_expr test28.cpp 165:35 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst needCheckNullVars - operand + - stringLength: 18 + nop_expr - arg + addr_expr - operand + string_cst ptr1 - operand + - stringLength: 5 + return_expr test28.cpp 166:13 - statement + cleanup_point_expr test28.cpp 168:57 - statement + expr_stmt test28.cpp 168:57 - operand + call_expr test28.cpp 168:31 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownVars - operand + - stringLength: 10 + nop_expr - arg + addr_expr - operand + string_cst ptr1 - operand + - stringLength: 5 + cleanup_point_expr test28.cpp 169:64 - statement + expr_stmt test28.cpp 169:64 - operand + call_expr test28.cpp 169:31 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownNonNullVars - operand + - stringLength: 17 + nop_expr - arg + addr_expr - operand + string_cst ptr1 - operand + - stringLength: 5 + cleanup_point_expr test28.cpp 170:61 - statement + expr_stmt test28.cpp 170:61 - operand + call_expr test28.cpp 170:31 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownNullVars - operand + - stringLength: 14 + nop_expr - arg + addr_expr - operand + string_cst ptr1 - operand + - stringLength: 5 + cleanup_point_expr test28.cpp 171:61 - statement + expr_stmt test28.cpp 171:61 - operand + call_expr test28.cpp 171:31 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst needCheckNullVars - operand + - stringLength: 18 + nop_expr - arg + addr_expr - operand + string_cst - operand + - stringLength: 1 +function_decl func9 test28.cpp 174:10 +- isPublic: 1 + method_type - function type + void_type - method return type + type_decl void <built-in> 0:0 - type name + - isAutogenerated: 1 + record_type - method base type + type_decl Object1 test28.cpp 14:7 - type name + - isAutogenerated: 1 + field_decl tmp1 test28.cpp 16:12 - field + - unsigned + integer_cst 64 - decl size + field_decl tmp2 test28.cpp 17:12 - field + - unsigned + integer_cst 64 - decl size + type_decl Object1 test28.cpp 15:1 - field + - isAutogenerated: 1 + tree_list - arg types + pointer_type - value + record_type - nested type + type_decl Object1 test28.cpp 14:7 - type name + - isAutogenerated: 1 + field_decl tmp1 test28.cpp 16:12 - field + - unsigned + integer_cst 64 - decl size + field_decl tmp2 test28.cpp 17:12 - field + - unsigned + integer_cst 64 - decl size + type_decl Object1 test28.cpp 15:1 - field + - isAutogenerated: 1 + tree_list - chain + pointer_type - value + record_type - nested type + type_decl Data1 test28.cpp 3:8 - type name + - isAutogenerated: 1 + field_decl val test28.cpp 5:9 - field + - signed + integer_cst 32 - decl size + field_decl ptrval test28.cpp 6:12 - field + - unsigned + integer_cst 64 - decl size + field_decl arr test28.cpp 7:14 - field + - signed + integer_cst 96 - decl size + type_decl Data1 test28.cpp 4:1 - field + - isAutogenerated: 1 + tree_list - chain + void_type - value + type_decl void <built-in> 0:0 - type name + - isAutogenerated: 1 + result_decl test28.cpp 175:5 - function result + - isAutogenerated: 1 + void_type - result type + type_decl void <built-in> 0:0 - type name + - isAutogenerated: 1 + parm_decl this test28.cpp 174:33 - argument + - isAutogenerated: 1 + pointer_type - decl type + record_type - nested type + type_decl Object1 test28.cpp 14:7 - type name + - isAutogenerated: 1 + field_decl tmp1 test28.cpp 16:12 - field + - unsigned + integer_cst 64 - decl size + field_decl tmp2 test28.cpp 17:12 - field + - unsigned + integer_cst 64 - decl size + type_decl Object1 test28.cpp 15:1 - field + - isAutogenerated: 1 + integer_cst 64 - parm size + - isUsed: 1 + parm_decl ptr1 test28.cpp 174:29 - argument + pointer_type - decl type + record_type - nested type + type_decl Data1 test28.cpp 3:8 - type name + - isAutogenerated: 1 + field_decl val test28.cpp 5:9 - field + - signed + integer_cst 32 - decl size + field_decl ptrval test28.cpp 6:12 - field + - unsigned + integer_cst 64 - decl size + field_decl arr test28.cpp 7:14 - field + - signed + integer_cst 96 - decl size + type_decl Data1 test28.cpp 4:1 - field + - isAutogenerated: 1 + integer_cst 64 - parm size + statement_list - code + if_stmt test28.cpp 176:9 - statement + ne_expr - condition + nop_expr - operand + - isUsed: 1 + parm_decl ptr1 test28.cpp 174:29 - operand + pointer_type - decl type + record_type - nested type + type_decl Data1 test28.cpp 3:8 - type name + - isAutogenerated: 1 + field_decl val test28.cpp 5:9 - field + - signed + integer_cst 32 - decl size + field_decl ptrval test28.cpp 6:12 - field + - unsigned + integer_cst 64 - decl size + field_decl arr test28.cpp 7:14 - field + - signed + integer_cst 96 - decl size + type_decl Data1 test28.cpp 4:1 - field + - isAutogenerated: 1 + integer_cst 64 - parm size + integer_cst 0 - operand + statement_list - then + cleanup_point_expr test28.cpp 178:61 - statement + expr_stmt test28.cpp 178:61 - operand + call_expr test28.cpp 178:35 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownVars - operand + - stringLength: 10 + nop_expr - arg + addr_expr - operand + string_cst ptr1 - operand + - stringLength: 5 + cleanup_point_expr test28.cpp 179:68 - statement + expr_stmt test28.cpp 179:68 - operand + call_expr test28.cpp 179:35 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownNonNullVars - operand + - stringLength: 17 + nop_expr - arg + addr_expr - operand + string_cst ptr1 - operand + - stringLength: 5 + cleanup_point_expr test28.cpp 180:61 - statement + expr_stmt test28.cpp 180:61 - operand + call_expr test28.cpp 180:35 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownNullVars - operand + - stringLength: 14 + nop_expr - arg + addr_expr - operand + string_cst - operand + - stringLength: 1 + cleanup_point_expr test28.cpp 181:65 - statement + expr_stmt test28.cpp 181:65 - operand + call_expr test28.cpp 181:35 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst needCheckNullVars - operand + - stringLength: 18 + nop_expr - arg + addr_expr - operand + string_cst - operand + - stringLength: 1 + if_stmt test28.cpp 182:13 - statement + ne_expr - condition + nop_expr - operand + - isUsed: 1 + parm_decl ptr1 test28.cpp 174:29 - operand + pointer_type - decl type + record_type - nested type + type_decl Data1 test28.cpp 3:8 - type name + - isAutogenerated: 1 + field_decl val test28.cpp 5:9 - field + - signed + integer_cst 32 - decl size + field_decl ptrval test28.cpp 6:12 - field + - unsigned + integer_cst 64 - decl size + field_decl arr test28.cpp 7:14 - field + - signed + integer_cst 96 - decl size + type_decl Data1 test28.cpp 4:1 - field + - isAutogenerated: 1 + integer_cst 64 - parm size + integer_cst 0 - operand + statement_list - then + cleanup_point_expr test28.cpp 184:65 - statement + expr_stmt test28.cpp 184:65 - operand + call_expr test28.cpp 184:39 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownVars - operand + - stringLength: 10 + nop_expr - arg + addr_expr - operand + string_cst ptr1 - operand + - stringLength: 5 + cleanup_point_expr test28.cpp 185:72 - statement + expr_stmt test28.cpp 185:72 - operand + call_expr test28.cpp 185:39 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownNonNullVars - operand + - stringLength: 17 + nop_expr - arg + addr_expr - operand + string_cst ptr1 - operand + - stringLength: 5 + cleanup_point_expr test28.cpp 186:65 - statement + expr_stmt test28.cpp 186:65 - operand + call_expr test28.cpp 186:39 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownNullVars - operand + - stringLength: 14 + nop_expr - arg + addr_expr - operand + string_cst - operand + - stringLength: 1 + cleanup_point_expr test28.cpp 187:69 - statement + expr_stmt test28.cpp 187:69 - operand + call_expr test28.cpp 187:39 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst needCheckNullVars - operand + - stringLength: 18 + nop_expr - arg + addr_expr - operand + string_cst - operand + - stringLength: 1 + cleanup_point_expr test28.cpp 189:61 - statement + expr_stmt test28.cpp 189:61 - operand + call_expr test28.cpp 189:35 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownVars - operand + - stringLength: 10 + nop_expr - arg + addr_expr - operand + string_cst ptr1 - operand + - stringLength: 5 + cleanup_point_expr test28.cpp 190:68 - statement + expr_stmt test28.cpp 190:68 - operand + call_expr test28.cpp 190:35 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownNonNullVars - operand + - stringLength: 17 + nop_expr - arg + addr_expr - operand + string_cst ptr1 - operand + - stringLength: 5 + cleanup_point_expr test28.cpp 191:61 - statement + expr_stmt test28.cpp 191:61 - operand + call_expr test28.cpp 191:35 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownNullVars - operand + - stringLength: 14 + nop_expr - arg + addr_expr - operand + string_cst - operand + - stringLength: 1 + cleanup_point_expr test28.cpp 192:65 - statement + expr_stmt test28.cpp 192:65 - operand + call_expr test28.cpp 192:35 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst needCheckNullVars - operand + - stringLength: 18 + nop_expr - arg + addr_expr - operand + string_cst - operand + - stringLength: 1 + if_stmt test28.cpp 193:13 - statement + eq_expr test28.cpp 193:18 - condition + nop_expr - operand + - isUsed: 1 + parm_decl ptr1 test28.cpp 174:29 - operand + pointer_type - decl type + record_type - nested type + type_decl Data1 test28.cpp 3:8 - type name + - isAutogenerated: 1 + field_decl val test28.cpp 5:9 - field + - signed + integer_cst 32 - decl size + field_decl ptrval test28.cpp 6:12 - field + - unsigned + integer_cst 64 - decl size + field_decl arr test28.cpp 7:14 - field + - signed + integer_cst 96 - decl size + type_decl Data1 test28.cpp 4:1 - field + - isAutogenerated: 1 + integer_cst 64 - parm size + integer_cst 0 - operand + statement_list - then + cleanup_point_expr test28.cpp 195:65 - statement + expr_stmt test28.cpp 195:65 - operand + call_expr test28.cpp 195:39 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownVars - operand + - stringLength: 10 + nop_expr - arg + addr_expr - operand + string_cst ptr1 - operand + - stringLength: 5 + cleanup_point_expr test28.cpp 196:72 - statement + expr_stmt test28.cpp 196:72 - operand + call_expr test28.cpp 196:39 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownNonNullVars - operand + - stringLength: 17 + nop_expr - arg + addr_expr - operand + string_cst ptr1 - operand + - stringLength: 5 + cleanup_point_expr test28.cpp 197:65 - statement + expr_stmt test28.cpp 197:65 - operand + call_expr test28.cpp 197:39 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownNullVars - operand + - stringLength: 14 + nop_expr - arg + addr_expr - operand + string_cst - operand + - stringLength: 1 + cleanup_point_expr test28.cpp 198:69 - statement + expr_stmt test28.cpp 198:69 - operand + call_expr test28.cpp 198:39 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst needCheckNullVars - operand + - stringLength: 18 + nop_expr - arg + addr_expr - operand + string_cst - operand + - stringLength: 1 + statement_list - else + cleanup_point_expr test28.cpp 203:61 - statement + expr_stmt test28.cpp 203:61 - operand + call_expr test28.cpp 203:35 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownVars - operand + - stringLength: 10 + nop_expr - arg + addr_expr - operand + string_cst ptr1 - operand + - stringLength: 5 + cleanup_point_expr test28.cpp 204:64 - statement + expr_stmt test28.cpp 204:64 - operand + call_expr test28.cpp 204:35 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownNonNullVars - operand + - stringLength: 17 + nop_expr - arg + addr_expr - operand + string_cst - operand + - stringLength: 1 + cleanup_point_expr test28.cpp 205:65 - statement + expr_stmt test28.cpp 205:65 - operand + call_expr test28.cpp 205:35 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownNullVars - operand + - stringLength: 14 + nop_expr - arg + addr_expr - operand + string_cst ptr1 - operand + - stringLength: 5 + cleanup_point_expr test28.cpp 206:69 - statement + expr_stmt test28.cpp 206:69 - operand + call_expr test28.cpp 206:35 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst needCheckNullVars - operand + - stringLength: 18 + nop_expr - arg + addr_expr - operand + string_cst ptr1 - operand + - stringLength: 5 + if_stmt test28.cpp 207:13 - statement + ne_expr - condition + nop_expr - operand + - isUsed: 1 + parm_decl ptr1 test28.cpp 174:29 - operand + pointer_type - decl type + record_type - nested type + type_decl Data1 test28.cpp 3:8 - type name + - isAutogenerated: 1 + field_decl val test28.cpp 5:9 - field + - signed + integer_cst 32 - decl size + field_decl ptrval test28.cpp 6:12 - field + - unsigned + integer_cst 64 - decl size + field_decl arr test28.cpp 7:14 - field + - signed + integer_cst 96 - decl size + type_decl Data1 test28.cpp 4:1 - field + - isAutogenerated: 1 + integer_cst 64 - parm size + integer_cst 0 - operand + statement_list - then + cleanup_point_expr test28.cpp 209:65 - statement + expr_stmt test28.cpp 209:65 - operand + call_expr test28.cpp 209:39 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownVars - operand + - stringLength: 10 + nop_expr - arg + addr_expr - operand + string_cst ptr1 - operand + - stringLength: 5 + cleanup_point_expr test28.cpp 210:72 - statement + expr_stmt test28.cpp 210:72 - operand + call_expr test28.cpp 210:39 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownNonNullVars - operand + - stringLength: 17 + nop_expr - arg + addr_expr - operand + string_cst ptr1 - operand + - stringLength: 5 + cleanup_point_expr test28.cpp 211:69 - statement + expr_stmt test28.cpp 211:69 - operand + call_expr test28.cpp 211:39 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownNullVars - operand + - stringLength: 14 + nop_expr - arg + addr_expr - operand + string_cst ptr1 - operand + - stringLength: 5 + cleanup_point_expr test28.cpp 212:69 - statement + expr_stmt test28.cpp 212:69 - operand + call_expr test28.cpp 212:39 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst needCheckNullVars - operand + - stringLength: 18 + nop_expr - arg + addr_expr - operand + string_cst - operand + - stringLength: 1 + cleanup_point_expr test28.cpp 214:61 - statement + expr_stmt test28.cpp 214:61 - operand + call_expr test28.cpp 214:35 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownVars - operand + - stringLength: 10 + nop_expr - arg + addr_expr - operand + string_cst ptr1 - operand + - stringLength: 5 + cleanup_point_expr test28.cpp 215:64 - statement + expr_stmt test28.cpp 215:64 - operand + call_expr test28.cpp 215:35 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownNonNullVars - operand + - stringLength: 17 + nop_expr - arg + addr_expr - operand + string_cst - operand + - stringLength: 1 + cleanup_point_expr test28.cpp 216:65 - statement + expr_stmt test28.cpp 216:65 - operand + call_expr test28.cpp 216:35 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownNullVars - operand + - stringLength: 14 + nop_expr - arg + addr_expr - operand + string_cst ptr1 - operand + - stringLength: 5 + cleanup_point_expr test28.cpp 217:69 - statement + expr_stmt test28.cpp 217:69 - operand + call_expr test28.cpp 217:35 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst needCheckNullVars - operand + - stringLength: 18 + nop_expr - arg + addr_expr - operand + string_cst ptr1 - operand + - stringLength: 5 + if_stmt test28.cpp 218:13 - statement + eq_expr test28.cpp 218:18 - condition + nop_expr - operand + - isUsed: 1 + parm_decl ptr1 test28.cpp 174:29 - operand + pointer_type - decl type + record_type - nested type + type_decl Data1 test28.cpp 3:8 - type name + - isAutogenerated: 1 + field_decl val test28.cpp 5:9 - field + - signed + integer_cst 32 - decl size + field_decl ptrval test28.cpp 6:12 - field + - unsigned + integer_cst 64 - decl size + field_decl arr test28.cpp 7:14 - field + - signed + integer_cst 96 - decl size + type_decl Data1 test28.cpp 4:1 - field + - isAutogenerated: 1 + integer_cst 64 - parm size + integer_cst 0 - operand + statement_list - then + cleanup_point_expr test28.cpp 220:65 - statement + expr_stmt test28.cpp 220:65 - operand + call_expr test28.cpp 220:39 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownVars - operand + - stringLength: 10 + nop_expr - arg + addr_expr - operand + string_cst ptr1 - operand + - stringLength: 5 + cleanup_point_expr test28.cpp 221:68 - statement + expr_stmt test28.cpp 221:68 - operand + call_expr test28.cpp 221:39 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownNonNullVars - operand + - stringLength: 17 + nop_expr - arg + addr_expr - operand + string_cst - operand + - stringLength: 1 + cleanup_point_expr test28.cpp 222:69 - statement + expr_stmt test28.cpp 222:69 - operand + call_expr test28.cpp 222:39 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownNullVars - operand + - stringLength: 14 + nop_expr - arg + addr_expr - operand + string_cst ptr1 - operand + - stringLength: 5 + cleanup_point_expr test28.cpp 223:73 - statement + expr_stmt test28.cpp 223:73 - operand + call_expr test28.cpp 223:39 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst needCheckNullVars - operand + - stringLength: 18 + nop_expr - arg + addr_expr - operand + string_cst ptr1 - operand + - stringLength: 5 + cleanup_point_expr test28.cpp 226:57 - statement + expr_stmt test28.cpp 226:57 - operand + call_expr test28.cpp 226:31 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownVars - operand + - stringLength: 10 + nop_expr - arg + addr_expr - operand + string_cst ptr1 - operand + - stringLength: 5 + cleanup_point_expr test28.cpp 227:60 - statement + expr_stmt test28.cpp 227:60 - operand + call_expr test28.cpp 227:31 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownNonNullVars - operand + - stringLength: 17 + nop_expr - arg + addr_expr - operand + string_cst - operand + - stringLength: 1 + cleanup_point_expr test28.cpp 228:57 - statement + expr_stmt test28.cpp 228:57 - operand + call_expr test28.cpp 228:31 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst knownNullVars - operand + - stringLength: 14 + nop_expr - arg + addr_expr - operand + string_cst - operand + - stringLength: 1 + cleanup_point_expr test28.cpp 229:65 - statement + expr_stmt test28.cpp 229:65 - operand + call_expr test28.cpp 229:31 - expresssion + addr_expr - function + function_decl paranuckerInternalTest test28.cpp 12:6 - operand + - isExternal: 1 + - isPublic: 1 + function_type - function type + nop_expr - arg + addr_expr - operand + string_cst = - operand + - stringLength: 2 + nop_expr - arg + addr_expr - operand + string_cst needCheckNullVars - operand + - stringLength: 18 + nop_expr - arg + addr_expr - operand + string_cst ptr1 - operand + - stringLength: 5 diff --git a/test/test28-02.txt b/test/test28-02.txt new file mode 100644 index 0000000..a428738 --- /dev/null +++ b/test/test28-02.txt @@ -0,0 +1,222 @@ +func1: pointer_type ptr1, +func2: pointer_type ptr1, +test28.cpp: In member function 'void Object1::func2(Data1*)': +test28.cpp:32:31: warning: warning: internal collections 'knownNonNullVars' is different. +want: ptr1, + get: + paranuckerInternalTest("=", "knownNonNullVars", "ptr1"); + ^ +test28.cpp:34:31: warning: warning: internal collections 'needCheckNullVars' is different. +want: + get: ptr1, + paranuckerInternalTest("=", "needCheckNullVars", ""); + ^ +func3: pointer_type ptr1, +test28.cpp: In member function 'void Object1::func3(Data1*)': +test28.cpp:42:35: warning: warning: internal collections 'knownNonNullVars' is different. +want: ptr1, + get: + paranuckerInternalTest("=", "knownNonNullVars", "ptr1"); + ^ +test28.cpp:44:35: warning: warning: internal collections 'needCheckNullVars' is different. +want: + get: ptr1, + paranuckerInternalTest("=", "needCheckNullVars", ""); + ^ +test28.cpp:50:35: warning: warning: internal collections 'knownNullVars' is different. +want: ptr1, + get: + paranuckerInternalTest("=", "knownNullVars", "ptr1"); + ^ +func4: pointer_type ptr1, +test28.cpp: In member function 'void Object1::func4(Data1*)': +test28.cpp:65:35: warning: warning: internal collections 'knownNullVars' is different. +want: ptr1, + get: + paranuckerInternalTest("=", "knownNullVars", "ptr1"); + ^ +test28.cpp:71:35: warning: warning: internal collections 'knownNonNullVars' is different. +want: ptr1, + get: + paranuckerInternalTest("=", "knownNonNullVars", "ptr1"); + ^ +test28.cpp:73:35: warning: warning: internal collections 'needCheckNullVars' is different. +want: + get: ptr1, + paranuckerInternalTest("=", "needCheckNullVars", ""); + ^ +func5: pointer_type ptr1, +test28.cpp: In member function 'void Object1::func5(Data1*)': +test28.cpp:86:35: warning: warning: internal collections 'knownNonNullVars' is different. +want: ptr1, + get: + paranuckerInternalTest("=", "knownNonNullVars", "ptr1"); + ^ +test28.cpp:88:35: warning: warning: internal collections 'needCheckNullVars' is different. +want: + get: ptr1, + paranuckerInternalTest("=", "needCheckNullVars", ""); + ^ +test28.cpp:95:35: warning: warning: internal collections 'knownNullVars' is different. +want: ptr1, + get: + paranuckerInternalTest("=", "knownNullVars", "ptr1"); + ^ +test28.cpp:100:31: warning: warning: internal collections 'knownNullVars' is different. +want: ptr1, + get: + paranuckerInternalTest("=", "knownNullVars", "ptr1"); + ^ +func6: pointer_type ptr1, +test28.cpp: In member function 'void Object1::func6(Data1*)': +test28.cpp:109:35: warning: warning: internal collections 'knownNonNullVars' is different. +want: ptr1, + get: + paranuckerInternalTest("=", "knownNonNullVars", "ptr1"); + ^ +test28.cpp:111:35: warning: warning: internal collections 'needCheckNullVars' is different. +want: + get: ptr1, + paranuckerInternalTest("=", "needCheckNullVars", ""); + ^ +test28.cpp:117:35: warning: warning: internal collections 'knownNullVars' is different. +want: ptr1, + get: + paranuckerInternalTest("=", "knownNullVars", "ptr1"); + ^ +test28.cpp:122:31: warning: warning: internal collections 'knownNonNullVars' is different. +want: ptr1, + get: + paranuckerInternalTest("=", "knownNonNullVars", "ptr1"); + ^ +test28.cpp:124:31: warning: warning: internal collections 'needCheckNullVars' is different. +want: + get: ptr1, + paranuckerInternalTest("=", "needCheckNullVars", ""); + ^ +func7: pointer_type ptr1, +test28.cpp: In member function 'void Object1::func7(Data1*)': +test28.cpp:133:35: warning: warning: internal collections 'knownNullVars' is different. +want: ptr1, + get: + paranuckerInternalTest("=", "knownNullVars", "ptr1"); + ^ +test28.cpp:139:35: warning: warning: internal collections 'knownNonNullVars' is different. +want: ptr1, + get: + paranuckerInternalTest("=", "knownNonNullVars", "ptr1"); + ^ +test28.cpp:141:35: warning: warning: internal collections 'needCheckNullVars' is different. +want: + get: ptr1, + paranuckerInternalTest("=", "needCheckNullVars", ""); + ^ +test28.cpp:146:31: warning: warning: internal collections 'knownNullVars' is different. +want: ptr1, + get: + paranuckerInternalTest("=", "knownNullVars", "ptr1"); + ^ +func8: pointer_type ptr1, +test28.cpp: In member function 'void Object1::func8(Data1*)': +test28.cpp:155:35: warning: warning: internal collections 'knownNonNullVars' is different. +want: ptr1, + get: + paranuckerInternalTest("=", "knownNonNullVars", "ptr1"); + ^ +test28.cpp:157:35: warning: warning: internal collections 'needCheckNullVars' is different. +want: + get: ptr1, + paranuckerInternalTest("=", "needCheckNullVars", ""); + ^ +test28.cpp:164:35: warning: warning: internal collections 'knownNullVars' is different. +want: ptr1, + get: + paranuckerInternalTest("=", "knownNullVars", "ptr1"); + ^ +test28.cpp:169:31: warning: warning: internal collections 'knownNonNullVars' is different. +want: ptr1, + get: + paranuckerInternalTest("=", "knownNonNullVars", "ptr1"); + ^ +test28.cpp:170:31: warning: warning: internal collections 'knownNullVars' is different. +want: ptr1, + get: + paranuckerInternalTest("=", "knownNullVars", "ptr1"); + ^ +test28.cpp:171:31: warning: warning: internal collections 'needCheckNullVars' is different. +want: + get: ptr1, + paranuckerInternalTest("=", "needCheckNullVars", ""); + ^ +func9: pointer_type ptr1, +test28.cpp: In member function 'void Object1::func9(Data1*)': +test28.cpp:179:35: warning: warning: internal collections 'knownNonNullVars' is different. +want: ptr1, + get: + paranuckerInternalTest("=", "knownNonNullVars", "ptr1"); + ^ +test28.cpp:181:35: warning: warning: internal collections 'needCheckNullVars' is different. +want: + get: ptr1, + paranuckerInternalTest("=", "needCheckNullVars", ""); + ^ +test28.cpp:185:39: warning: warning: internal collections 'knownNonNullVars' is different. +want: ptr1, + get: + paranuckerInternalTest("=", "knownNonNullVars", "ptr1"); + ^ +test28.cpp:187:39: warning: warning: internal collections 'needCheckNullVars' is different. +want: + get: ptr1, + paranuckerInternalTest("=", "needCheckNullVars", ""); + ^ +test28.cpp:190:35: warning: warning: internal collections 'knownNonNullVars' is different. +want: ptr1, + get: + paranuckerInternalTest("=", "knownNonNullVars", "ptr1"); + ^ +test28.cpp:192:35: warning: warning: internal collections 'needCheckNullVars' is different. +want: + get: ptr1, + paranuckerInternalTest("=", "needCheckNullVars", ""); + ^ +test28.cpp:196:39: warning: warning: internal collections 'knownNonNullVars' is different. +want: ptr1, + get: + paranuckerInternalTest("=", "knownNonNullVars", "ptr1"); + ^ +test28.cpp:198:39: warning: warning: internal collections 'needCheckNullVars' is different. +want: + get: ptr1, + paranuckerInternalTest("=", "needCheckNullVars", ""); + ^ +test28.cpp:205:35: warning: warning: internal collections 'knownNullVars' is different. +want: ptr1, + get: + paranuckerInternalTest("=", "knownNullVars", "ptr1"); + ^ +test28.cpp:210:39: warning: warning: internal collections 'knownNonNullVars' is different. +want: ptr1, + get: + paranuckerInternalTest("=", "knownNonNullVars", "ptr1"); + ^ +test28.cpp:211:39: warning: warning: internal collections 'knownNullVars' is different. +want: ptr1, + get: + paranuckerInternalTest("=", "knownNullVars", "ptr1"); + ^ +test28.cpp:212:39: warning: warning: internal collections 'needCheckNullVars' is different. +want: + get: ptr1, + paranuckerInternalTest("=", "needCheckNullVars", ""); + ^ +test28.cpp:216:35: warning: warning: internal collections 'knownNullVars' is different. +want: ptr1, + get: + paranuckerInternalTest("=", "knownNullVars", "ptr1"); + ^ +test28.cpp:222:39: warning: warning: internal collections 'knownNullVars' is different. +want: ptr1, + get: + paranuckerInternalTest("=", "knownNullVars", "ptr1"); + ^ diff --git a/test/test28-03.txt b/test/test28-03.txt new file mode 100644 index 0000000..f1fba97 --- /dev/null +++ b/test/test28-03.txt @@ -0,0 +1,812 @@ +function_decl func1: +statement_list : ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +call_expr : ptr1, +addr_expr : ptr1, +function_decl paranuckerInternalTest: ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +call_expr : ptr1, +addr_expr : ptr1, +function_decl paranuckerInternalTest: ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +call_expr : ptr1, +addr_expr : ptr1, +function_decl paranuckerInternalTest: ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +call_expr : ptr1, +addr_expr : ptr1, +function_decl paranuckerInternalTest: ptr1, +function_decl func2: +statement_list : ptr1, +if_stmt : ptr1, +eq_expr : ptr1, +parm_decl ptr1: ptr1, +pointer_type : ptr1, +record_type : ptr1, +type_decl Data1: ptr1, +field_decl val: ptr1, +integer_cst 32: ptr1, +field_decl ptrval: ptr1, +integer_cst 64: ptr1, +field_decl arr: ptr1, +integer_cst 96: ptr1, +type_decl Data1: ptr1, +integer_cst 64: ptr1, +integer_cst 0: ptr1, +return_expr : ptr1, +cleanup_point_expr : ptr1, +expr_stmt : +call_expr : +addr_expr : +function_decl paranuckerInternalTest: +cleanup_point_expr : ptr1, +expr_stmt : +call_expr : +addr_expr : +function_decl paranuckerInternalTest: +cleanup_point_expr : ptr1, +expr_stmt : +call_expr : +addr_expr : +function_decl paranuckerInternalTest: +cleanup_point_expr : ptr1, +expr_stmt : +call_expr : +addr_expr : +function_decl paranuckerInternalTest: +function_decl func3: +statement_list : ptr1, +if_stmt : ptr1, +ne_expr : ptr1, +parm_decl ptr1: ptr1, +pointer_type : ptr1, +record_type : ptr1, +type_decl Data1: ptr1, +field_decl val: ptr1, +integer_cst 32: ptr1, +field_decl ptrval: ptr1, +integer_cst 64: ptr1, +field_decl arr: ptr1, +integer_cst 96: ptr1, +type_decl Data1: ptr1, +integer_cst 64: ptr1, +integer_cst 0: ptr1, +statement_list : +cleanup_point_expr : +expr_stmt : +call_expr : +addr_expr : +function_decl paranuckerInternalTest: +cleanup_point_expr : +expr_stmt : +call_expr : +addr_expr : +function_decl paranuckerInternalTest: +cleanup_point_expr : +expr_stmt : +call_expr : +addr_expr : +function_decl paranuckerInternalTest: +cleanup_point_expr : +expr_stmt : +call_expr : +addr_expr : +function_decl paranuckerInternalTest: +statement_list : ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +call_expr : ptr1, +addr_expr : ptr1, +function_decl paranuckerInternalTest: ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +call_expr : ptr1, +addr_expr : ptr1, +function_decl paranuckerInternalTest: ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +call_expr : ptr1, +addr_expr : ptr1, +function_decl paranuckerInternalTest: ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +call_expr : ptr1, +addr_expr : ptr1, +function_decl paranuckerInternalTest: ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +call_expr : ptr1, +addr_expr : ptr1, +function_decl paranuckerInternalTest: ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +call_expr : ptr1, +addr_expr : ptr1, +function_decl paranuckerInternalTest: ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +call_expr : ptr1, +addr_expr : ptr1, +function_decl paranuckerInternalTest: ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +call_expr : ptr1, +addr_expr : ptr1, +function_decl paranuckerInternalTest: ptr1, +function_decl func4: +statement_list : ptr1, +if_stmt : ptr1, +eq_expr : ptr1, +parm_decl ptr1: ptr1, +pointer_type : ptr1, +record_type : ptr1, +type_decl Data1: ptr1, +field_decl val: ptr1, +integer_cst 32: ptr1, +field_decl ptrval: ptr1, +integer_cst 64: ptr1, +field_decl arr: ptr1, +integer_cst 96: ptr1, +type_decl Data1: ptr1, +integer_cst 64: ptr1, +integer_cst 0: ptr1, +statement_list : ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +call_expr : ptr1, +addr_expr : ptr1, +function_decl paranuckerInternalTest: ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +call_expr : ptr1, +addr_expr : ptr1, +function_decl paranuckerInternalTest: ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +call_expr : ptr1, +addr_expr : ptr1, +function_decl paranuckerInternalTest: ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +call_expr : ptr1, +addr_expr : ptr1, +function_decl paranuckerInternalTest: ptr1, +statement_list : +cleanup_point_expr : +expr_stmt : +call_expr : +addr_expr : +function_decl paranuckerInternalTest: +cleanup_point_expr : +expr_stmt : +call_expr : +addr_expr : +function_decl paranuckerInternalTest: +cleanup_point_expr : +expr_stmt : +call_expr : +addr_expr : +function_decl paranuckerInternalTest: +cleanup_point_expr : +expr_stmt : +call_expr : +addr_expr : +function_decl paranuckerInternalTest: +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +call_expr : ptr1, +addr_expr : ptr1, +function_decl paranuckerInternalTest: ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +call_expr : ptr1, +addr_expr : ptr1, +function_decl paranuckerInternalTest: ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +call_expr : ptr1, +addr_expr : ptr1, +function_decl paranuckerInternalTest: ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +call_expr : ptr1, +addr_expr : ptr1, +function_decl paranuckerInternalTest: ptr1, +function_decl func5: +statement_list : ptr1, +if_stmt : ptr1, +ne_expr : ptr1, +parm_decl ptr1: ptr1, +pointer_type : ptr1, +record_type : ptr1, +type_decl Data1: ptr1, +field_decl val: ptr1, +integer_cst 32: ptr1, +field_decl ptrval: ptr1, +integer_cst 64: ptr1, +field_decl arr: ptr1, +integer_cst 96: ptr1, +type_decl Data1: ptr1, +integer_cst 64: ptr1, +integer_cst 0: ptr1, +statement_list : +cleanup_point_expr : +expr_stmt : +call_expr : +addr_expr : +function_decl paranuckerInternalTest: +cleanup_point_expr : +expr_stmt : +call_expr : +addr_expr : +function_decl paranuckerInternalTest: +cleanup_point_expr : +expr_stmt : +call_expr : +addr_expr : +function_decl paranuckerInternalTest: +cleanup_point_expr : +expr_stmt : +call_expr : +addr_expr : +function_decl paranuckerInternalTest: +return_expr : +statement_list : ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +call_expr : ptr1, +addr_expr : ptr1, +function_decl paranuckerInternalTest: ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +call_expr : ptr1, +addr_expr : ptr1, +function_decl paranuckerInternalTest: ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +call_expr : ptr1, +addr_expr : ptr1, +function_decl paranuckerInternalTest: ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +call_expr : ptr1, +addr_expr : ptr1, +function_decl paranuckerInternalTest: ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +call_expr : ptr1, +addr_expr : ptr1, +function_decl paranuckerInternalTest: ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +call_expr : ptr1, +addr_expr : ptr1, +function_decl paranuckerInternalTest: ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +call_expr : ptr1, +addr_expr : ptr1, +function_decl paranuckerInternalTest: ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +call_expr : ptr1, +addr_expr : ptr1, +function_decl paranuckerInternalTest: ptr1, +function_decl func6: +statement_list : ptr1, +if_stmt : ptr1, +ne_expr : ptr1, +parm_decl ptr1: ptr1, +pointer_type : ptr1, +record_type : ptr1, +type_decl Data1: ptr1, +field_decl val: ptr1, +integer_cst 32: ptr1, +field_decl ptrval: ptr1, +integer_cst 64: ptr1, +field_decl arr: ptr1, +integer_cst 96: ptr1, +type_decl Data1: ptr1, +integer_cst 64: ptr1, +integer_cst 0: ptr1, +statement_list : +cleanup_point_expr : +expr_stmt : +call_expr : +addr_expr : +function_decl paranuckerInternalTest: +cleanup_point_expr : +expr_stmt : +call_expr : +addr_expr : +function_decl paranuckerInternalTest: +cleanup_point_expr : +expr_stmt : +call_expr : +addr_expr : +function_decl paranuckerInternalTest: +cleanup_point_expr : +expr_stmt : +call_expr : +addr_expr : +function_decl paranuckerInternalTest: +statement_list : ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +call_expr : ptr1, +addr_expr : ptr1, +function_decl paranuckerInternalTest: ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +call_expr : ptr1, +addr_expr : ptr1, +function_decl paranuckerInternalTest: ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +call_expr : ptr1, +addr_expr : ptr1, +function_decl paranuckerInternalTest: ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +call_expr : ptr1, +addr_expr : ptr1, +function_decl paranuckerInternalTest: ptr1, +return_expr : ptr1, +cleanup_point_expr : ptr1, +expr_stmt : +call_expr : +addr_expr : +function_decl paranuckerInternalTest: +cleanup_point_expr : ptr1, +expr_stmt : +call_expr : +addr_expr : +function_decl paranuckerInternalTest: +cleanup_point_expr : ptr1, +expr_stmt : +call_expr : +addr_expr : +function_decl paranuckerInternalTest: +cleanup_point_expr : ptr1, +expr_stmt : +call_expr : +addr_expr : +function_decl paranuckerInternalTest: +function_decl func7: +statement_list : ptr1, +if_stmt : ptr1, +eq_expr : ptr1, +parm_decl ptr1: ptr1, +pointer_type : ptr1, +record_type : ptr1, +type_decl Data1: ptr1, +field_decl val: ptr1, +integer_cst 32: ptr1, +field_decl ptrval: ptr1, +integer_cst 64: ptr1, +field_decl arr: ptr1, +integer_cst 96: ptr1, +type_decl Data1: ptr1, +integer_cst 64: ptr1, +integer_cst 0: ptr1, +statement_list : ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +call_expr : ptr1, +addr_expr : ptr1, +function_decl paranuckerInternalTest: ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +call_expr : ptr1, +addr_expr : ptr1, +function_decl paranuckerInternalTest: ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +call_expr : ptr1, +addr_expr : ptr1, +function_decl paranuckerInternalTest: ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +call_expr : ptr1, +addr_expr : ptr1, +function_decl paranuckerInternalTest: ptr1, +statement_list : +cleanup_point_expr : +expr_stmt : +call_expr : +addr_expr : +function_decl paranuckerInternalTest: +cleanup_point_expr : +expr_stmt : +call_expr : +addr_expr : +function_decl paranuckerInternalTest: +cleanup_point_expr : +expr_stmt : +call_expr : +addr_expr : +function_decl paranuckerInternalTest: +cleanup_point_expr : +expr_stmt : +call_expr : +addr_expr : +function_decl paranuckerInternalTest: +return_expr : +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +call_expr : ptr1, +addr_expr : ptr1, +function_decl paranuckerInternalTest: ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +call_expr : ptr1, +addr_expr : ptr1, +function_decl paranuckerInternalTest: ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +call_expr : ptr1, +addr_expr : ptr1, +function_decl paranuckerInternalTest: ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +call_expr : ptr1, +addr_expr : ptr1, +function_decl paranuckerInternalTest: ptr1, +function_decl func8: +statement_list : ptr1, +if_stmt : ptr1, +ne_expr : ptr1, +parm_decl ptr1: ptr1, +pointer_type : ptr1, +record_type : ptr1, +type_decl Data1: ptr1, +field_decl val: ptr1, +integer_cst 32: ptr1, +field_decl ptrval: ptr1, +integer_cst 64: ptr1, +field_decl arr: ptr1, +integer_cst 96: ptr1, +type_decl Data1: ptr1, +integer_cst 64: ptr1, +integer_cst 0: ptr1, +statement_list : +cleanup_point_expr : +expr_stmt : +call_expr : +addr_expr : +function_decl paranuckerInternalTest: +cleanup_point_expr : +expr_stmt : +call_expr : +addr_expr : +function_decl paranuckerInternalTest: +cleanup_point_expr : +expr_stmt : +call_expr : +addr_expr : +function_decl paranuckerInternalTest: +cleanup_point_expr : +expr_stmt : +call_expr : +addr_expr : +function_decl paranuckerInternalTest: +return_expr : +statement_list : ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +call_expr : ptr1, +addr_expr : ptr1, +function_decl paranuckerInternalTest: ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +call_expr : ptr1, +addr_expr : ptr1, +function_decl paranuckerInternalTest: ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +call_expr : ptr1, +addr_expr : ptr1, +function_decl paranuckerInternalTest: ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +call_expr : ptr1, +addr_expr : ptr1, +function_decl paranuckerInternalTest: ptr1, +return_expr : ptr1, +cleanup_point_expr : ptr1, +expr_stmt : +call_expr : +addr_expr : +function_decl paranuckerInternalTest: +cleanup_point_expr : ptr1, +expr_stmt : +call_expr : +addr_expr : +function_decl paranuckerInternalTest: +cleanup_point_expr : ptr1, +expr_stmt : +call_expr : +addr_expr : +function_decl paranuckerInternalTest: +cleanup_point_expr : ptr1, +expr_stmt : +call_expr : +addr_expr : +function_decl paranuckerInternalTest: +function_decl func9: +statement_list : ptr1, +if_stmt : ptr1, +ne_expr : ptr1, +parm_decl ptr1: ptr1, +pointer_type : ptr1, +record_type : ptr1, +type_decl Data1: ptr1, +field_decl val: ptr1, +integer_cst 32: ptr1, +field_decl ptrval: ptr1, +integer_cst 64: ptr1, +field_decl arr: ptr1, +integer_cst 96: ptr1, +type_decl Data1: ptr1, +integer_cst 64: ptr1, +integer_cst 0: ptr1, +statement_list : +cleanup_point_expr : +expr_stmt : +call_expr : +addr_expr : +function_decl paranuckerInternalTest: +cleanup_point_expr : +expr_stmt : +call_expr : +addr_expr : +function_decl paranuckerInternalTest: +cleanup_point_expr : +expr_stmt : +call_expr : +addr_expr : +function_decl paranuckerInternalTest: +cleanup_point_expr : +expr_stmt : +call_expr : +addr_expr : +function_decl paranuckerInternalTest: +if_stmt : +ne_expr : +test28.cpp: In member function 'void Object1::func9(Data1*)': +test28.cpp:182:13: warning: Useless variable check 'ptr1'. It already was checked before + if (ptr1) + ^ +parm_decl ptr1: +pointer_type : +record_type : +type_decl Data1: +field_decl val: +integer_cst 32: +field_decl ptrval: +integer_cst 64: +field_decl arr: +integer_cst 96: +type_decl Data1: +integer_cst 64: +integer_cst 0: +statement_list : +cleanup_point_expr : +expr_stmt : +call_expr : +addr_expr : +function_decl paranuckerInternalTest: +cleanup_point_expr : +expr_stmt : +call_expr : +addr_expr : +function_decl paranuckerInternalTest: +cleanup_point_expr : +expr_stmt : +call_expr : +addr_expr : +function_decl paranuckerInternalTest: +cleanup_point_expr : +expr_stmt : +call_expr : +addr_expr : +function_decl paranuckerInternalTest: +cleanup_point_expr : +expr_stmt : +call_expr : +addr_expr : +function_decl paranuckerInternalTest: +cleanup_point_expr : +expr_stmt : +call_expr : +addr_expr : +function_decl paranuckerInternalTest: +cleanup_point_expr : +expr_stmt : +call_expr : +addr_expr : +function_decl paranuckerInternalTest: +cleanup_point_expr : +expr_stmt : +call_expr : +addr_expr : +function_decl paranuckerInternalTest: +if_stmt : +eq_expr : +test28.cpp:193:18: warning: Useless variable check 'ptr1'. It already was checked before + if (!ptr1) + ^ +parm_decl ptr1: +pointer_type : +record_type : +type_decl Data1: +field_decl val: +integer_cst 32: +field_decl ptrval: +integer_cst 64: +field_decl arr: +integer_cst 96: +type_decl Data1: +integer_cst 64: +integer_cst 0: +statement_list : +cleanup_point_expr : +expr_stmt : +call_expr : +addr_expr : +function_decl paranuckerInternalTest: +cleanup_point_expr : +expr_stmt : +call_expr : +addr_expr : +function_decl paranuckerInternalTest: +cleanup_point_expr : +expr_stmt : +call_expr : +addr_expr : +function_decl paranuckerInternalTest: +cleanup_point_expr : +expr_stmt : +call_expr : +addr_expr : +function_decl paranuckerInternalTest: +statement_list : ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +call_expr : ptr1, +addr_expr : ptr1, +function_decl paranuckerInternalTest: ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +call_expr : ptr1, +addr_expr : ptr1, +function_decl paranuckerInternalTest: ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +call_expr : ptr1, +addr_expr : ptr1, +function_decl paranuckerInternalTest: ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +call_expr : ptr1, +addr_expr : ptr1, +function_decl paranuckerInternalTest: ptr1, +if_stmt : ptr1, +ne_expr : ptr1, +parm_decl ptr1: ptr1, +pointer_type : ptr1, +record_type : ptr1, +type_decl Data1: ptr1, +field_decl val: ptr1, +integer_cst 32: ptr1, +field_decl ptrval: ptr1, +integer_cst 64: ptr1, +field_decl arr: ptr1, +integer_cst 96: ptr1, +type_decl Data1: ptr1, +integer_cst 64: ptr1, +integer_cst 0: ptr1, +statement_list : +cleanup_point_expr : +expr_stmt : +call_expr : +addr_expr : +function_decl paranuckerInternalTest: +cleanup_point_expr : +expr_stmt : +call_expr : +addr_expr : +function_decl paranuckerInternalTest: +cleanup_point_expr : +expr_stmt : +call_expr : +addr_expr : +function_decl paranuckerInternalTest: +cleanup_point_expr : +expr_stmt : +call_expr : +addr_expr : +function_decl paranuckerInternalTest: +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +call_expr : ptr1, +addr_expr : ptr1, +function_decl paranuckerInternalTest: ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +call_expr : ptr1, +addr_expr : ptr1, +function_decl paranuckerInternalTest: ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +call_expr : ptr1, +addr_expr : ptr1, +function_decl paranuckerInternalTest: ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +call_expr : ptr1, +addr_expr : ptr1, +function_decl paranuckerInternalTest: ptr1, +if_stmt : ptr1, +eq_expr : ptr1, +test28.cpp:218:18: warning: Useless variable check 'ptr1'. It already was checked before + if (!ptr1) + ^ +parm_decl ptr1: ptr1, +pointer_type : ptr1, +record_type : ptr1, +type_decl Data1: ptr1, +field_decl val: ptr1, +integer_cst 32: ptr1, +field_decl ptrval: ptr1, +integer_cst 64: ptr1, +field_decl arr: ptr1, +integer_cst 96: ptr1, +type_decl Data1: ptr1, +integer_cst 64: ptr1, +integer_cst 0: ptr1, +statement_list : ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +call_expr : ptr1, +addr_expr : ptr1, +function_decl paranuckerInternalTest: ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +call_expr : ptr1, +addr_expr : ptr1, +function_decl paranuckerInternalTest: ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +call_expr : ptr1, +addr_expr : ptr1, +function_decl paranuckerInternalTest: ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +call_expr : ptr1, +addr_expr : ptr1, +function_decl paranuckerInternalTest: ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +call_expr : ptr1, +addr_expr : ptr1, +function_decl paranuckerInternalTest: ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +call_expr : ptr1, +addr_expr : ptr1, +function_decl paranuckerInternalTest: ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +call_expr : ptr1, +addr_expr : ptr1, +function_decl paranuckerInternalTest: ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +call_expr : ptr1, +addr_expr : ptr1, +function_decl paranuckerInternalTest: ptr1, diff --git a/test/test28-04.txt b/test/test28-04.txt new file mode 100644 index 0000000..ca36aad --- /dev/null +++ b/test/test28-04.txt @@ -0,0 +1,10 @@ +test28.cpp: In member function 'void Object1::func9(Data1*)': +test28.cpp:182:13: warning: Useless variable check 'ptr1'. It already was checked before + if (ptr1) + ^ +test28.cpp:193:18: warning: Useless variable check 'ptr1'. It already was checked before + if (!ptr1) + ^ +test28.cpp:218:18: warning: Useless variable check 'ptr1'. It already was checked before + if (!ptr1) + ^ diff --git a/test/test28-05.txt b/test/test28-05.txt new file mode 100644 index 0000000..ca36aad --- /dev/null +++ b/test/test28-05.txt @@ -0,0 +1,10 @@ +test28.cpp: In member function 'void Object1::func9(Data1*)': +test28.cpp:182:13: warning: Useless variable check 'ptr1'. It already was checked before + if (ptr1) + ^ +test28.cpp:193:18: warning: Useless variable check 'ptr1'. It already was checked before + if (!ptr1) + ^ +test28.cpp:218:18: warning: Useless variable check 'ptr1'. It already was checked before + if (!ptr1) + ^ diff --git a/test/test28.cpp b/test/test28.cpp new file mode 100644 index 0000000..8825d96 --- /dev/null +++ b/test/test28.cpp @@ -0,0 +1,231 @@ +struct Data1; + +struct Data1 +{ + int val; + Data1 *ptrval; + int arr[3]; +}; + +int k; + +void paranuckerInternalTest(const char *action, const char *collection, const char *values); + +class Object1 +{ + Data1 *tmp1; + Data1 *tmp2; + + void func1(Data1 *const ptr1) + { + paranuckerInternalTest("=", "knownVars", "ptr1"); + paranuckerInternalTest("=", "knownNonNullVars", ""); + paranuckerInternalTest("=", "knownNullVars", ""); + paranuckerInternalTest("=", "needCheckNullVars", "ptr1"); + } + + void func2(Data1 *const ptr1) + { + if (!ptr1) + return; + paranuckerInternalTest("=", "knownVars", "ptr1"); + paranuckerInternalTest("=", "knownNonNullVars", "ptr1"); + paranuckerInternalTest("=", "knownNullVars", ""); + paranuckerInternalTest("=", "needCheckNullVars", ""); + } + + void func3(Data1 *const ptr1) + { + if (ptr1) + { + paranuckerInternalTest("=", "knownVars", "ptr1"); + paranuckerInternalTest("=", "knownNonNullVars", "ptr1"); + paranuckerInternalTest("=", "knownNullVars", ""); + paranuckerInternalTest("=", "needCheckNullVars", ""); + } + else + { + paranuckerInternalTest("=", "knownVars", "ptr1"); + paranuckerInternalTest("=", "knownNonNullVars", ""); + paranuckerInternalTest("=", "knownNullVars", "ptr1"); + paranuckerInternalTest("=", "needCheckNullVars", "ptr1"); + } + paranuckerInternalTest("=", "knownVars", "ptr1"); + paranuckerInternalTest("=", "knownNonNullVars", ""); + paranuckerInternalTest("=", "knownNullVars", ""); + paranuckerInternalTest("=", "needCheckNullVars", "ptr1"); + } + + void func4(Data1 *const ptr1) + { + if (!ptr1) + { + paranuckerInternalTest("=", "knownVars", "ptr1"); + paranuckerInternalTest("=", "knownNonNullVars", ""); + paranuckerInternalTest("=", "knownNullVars", "ptr1"); + paranuckerInternalTest("=", "needCheckNullVars", "ptr1"); + } + else + { + paranuckerInternalTest("=", "knownVars", "ptr1"); + paranuckerInternalTest("=", "knownNonNullVars", "ptr1"); + paranuckerInternalTest("=", "knownNullVars", ""); + paranuckerInternalTest("=", "needCheckNullVars", ""); + } + paranuckerInternalTest("=", "knownVars", "ptr1"); + paranuckerInternalTest("=", "knownNonNullVars", ""); + paranuckerInternalTest("=", "knownNullVars", ""); + paranuckerInternalTest("=", "needCheckNullVars", "ptr1"); + } + + void func5(Data1 *const ptr1) + { + if (ptr1) + { + paranuckerInternalTest("=", "knownVars", "ptr1"); + paranuckerInternalTest("=", "knownNonNullVars", "ptr1"); + paranuckerInternalTest("=", "knownNullVars", ""); + paranuckerInternalTest("=", "needCheckNullVars", ""); + return; + } + else + { + paranuckerInternalTest("=", "knownVars", "ptr1"); + paranuckerInternalTest("=", "knownNonNullVars", ""); + paranuckerInternalTest("=", "knownNullVars", "ptr1"); + paranuckerInternalTest("=", "needCheckNullVars", "ptr1"); + } + paranuckerInternalTest("=", "knownVars", "ptr1"); + paranuckerInternalTest("=", "knownNonNullVars", ""); + paranuckerInternalTest("=", "knownNullVars", "ptr1"); + paranuckerInternalTest("=", "needCheckNullVars", "ptr1"); + } + + void func6(Data1 *const ptr1) + { + if (ptr1) + { + paranuckerInternalTest("=", "knownVars", "ptr1"); + paranuckerInternalTest("=", "knownNonNullVars", "ptr1"); + paranuckerInternalTest("=", "knownNullVars", ""); + paranuckerInternalTest("=", "needCheckNullVars", ""); + } + else + { + paranuckerInternalTest("=", "knownVars", "ptr1"); + paranuckerInternalTest("=", "knownNonNullVars", ""); + paranuckerInternalTest("=", "knownNullVars", "ptr1"); + paranuckerInternalTest("=", "needCheckNullVars", "ptr1"); + return; + } + paranuckerInternalTest("=", "knownVars", "ptr1"); + paranuckerInternalTest("=", "knownNonNullVars", "ptr1"); + paranuckerInternalTest("=", "knownNullVars", ""); + paranuckerInternalTest("=", "needCheckNullVars", ""); + } + + void func7(Data1 *const ptr1) + { + if (!ptr1) + { + paranuckerInternalTest("=", "knownVars", "ptr1"); + paranuckerInternalTest("=", "knownNonNullVars", ""); + paranuckerInternalTest("=", "knownNullVars", "ptr1"); + paranuckerInternalTest("=", "needCheckNullVars", "ptr1"); + } + else + { + paranuckerInternalTest("=", "knownVars", "ptr1"); + paranuckerInternalTest("=", "knownNonNullVars", "ptr1"); + paranuckerInternalTest("=", "knownNullVars", ""); + paranuckerInternalTest("=", "needCheckNullVars", ""); + return; + } + paranuckerInternalTest("=", "knownVars", "ptr1"); + paranuckerInternalTest("=", "knownNonNullVars", ""); + paranuckerInternalTest("=", "knownNullVars", "ptr1"); + paranuckerInternalTest("=", "needCheckNullVars", "ptr1"); + } + + void func8(Data1 *const ptr1) + { + if (ptr1) + { + paranuckerInternalTest("=", "knownVars", "ptr1"); + paranuckerInternalTest("=", "knownNonNullVars", "ptr1"); + paranuckerInternalTest("=", "knownNullVars", ""); + paranuckerInternalTest("=", "needCheckNullVars", ""); + return; + } + else + { + paranuckerInternalTest("=", "knownVars", "ptr1"); + paranuckerInternalTest("=", "knownNonNullVars", ""); + paranuckerInternalTest("=", "knownNullVars", "ptr1"); + paranuckerInternalTest("=", "needCheckNullVars", "ptr1"); + return; + } + paranuckerInternalTest("=", "knownVars", "ptr1"); + paranuckerInternalTest("=", "knownNonNullVars", "ptr1"); + paranuckerInternalTest("=", "knownNullVars", "ptr1"); + paranuckerInternalTest("=", "needCheckNullVars", ""); + } + + void func9(Data1 *const ptr1) + { + if (ptr1) + { + paranuckerInternalTest("=", "knownVars", "ptr1"); + paranuckerInternalTest("=", "knownNonNullVars", "ptr1"); + paranuckerInternalTest("=", "knownNullVars", ""); + paranuckerInternalTest("=", "needCheckNullVars", ""); + if (ptr1) + { + paranuckerInternalTest("=", "knownVars", "ptr1"); + paranuckerInternalTest("=", "knownNonNullVars", "ptr1"); + paranuckerInternalTest("=", "knownNullVars", ""); + paranuckerInternalTest("=", "needCheckNullVars", ""); + } + paranuckerInternalTest("=", "knownVars", "ptr1"); + paranuckerInternalTest("=", "knownNonNullVars", "ptr1"); + paranuckerInternalTest("=", "knownNullVars", ""); + paranuckerInternalTest("=", "needCheckNullVars", ""); + if (!ptr1) + { + paranuckerInternalTest("=", "knownVars", "ptr1"); + paranuckerInternalTest("=", "knownNonNullVars", "ptr1"); + paranuckerInternalTest("=", "knownNullVars", ""); + paranuckerInternalTest("=", "needCheckNullVars", ""); + } + } + else + { + paranuckerInternalTest("=", "knownVars", "ptr1"); + paranuckerInternalTest("=", "knownNonNullVars", ""); + paranuckerInternalTest("=", "knownNullVars", "ptr1"); + paranuckerInternalTest("=", "needCheckNullVars", "ptr1"); + if (ptr1) + { + paranuckerInternalTest("=", "knownVars", "ptr1"); + paranuckerInternalTest("=", "knownNonNullVars", "ptr1"); + paranuckerInternalTest("=", "knownNullVars", "ptr1"); + paranuckerInternalTest("=", "needCheckNullVars", ""); + } + paranuckerInternalTest("=", "knownVars", "ptr1"); + paranuckerInternalTest("=", "knownNonNullVars", ""); + paranuckerInternalTest("=", "knownNullVars", "ptr1"); + paranuckerInternalTest("=", "needCheckNullVars", "ptr1"); + if (!ptr1) + { + paranuckerInternalTest("=", "knownVars", "ptr1"); + paranuckerInternalTest("=", "knownNonNullVars", ""); + paranuckerInternalTest("=", "knownNullVars", "ptr1"); + paranuckerInternalTest("=", "needCheckNullVars", "ptr1"); + } + } + paranuckerInternalTest("=", "knownVars", "ptr1"); + paranuckerInternalTest("=", "knownNonNullVars", ""); + paranuckerInternalTest("=", "knownNullVars", ""); + paranuckerInternalTest("=", "needCheckNullVars", "ptr1"); + } +}; |