summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2015-07-10 01:22:36 +0300
committerAndrei Karas <akaras@inbox.ru>2015-07-10 01:22:36 +0300
commit9a99b7ca6d59b3f9d19c05b5512b5cc3efd6a5a0 (patch)
treeded5cda7bb7c60345313c8273cc66799d92f1a22 /test
parent41a188424ec40c7900de1ff28d792753d5a16e85 (diff)
downloadparanucker-9a99b7ca6d59b3f9d19c05b5512b5cc3efd6a5a0.tar.gz
paranucker-9a99b7ca6d59b3f9d19c05b5512b5cc3efd6a5a0.tar.bz2
paranucker-9a99b7ca6d59b3f9d19c05b5512b5cc3efd6a5a0.tar.xz
paranucker-9a99b7ca6d59b3f9d19c05b5512b5cc3efd6a5a0.zip
Update test 34. Update test results.
Diffstat (limited to 'test')
-rw-r--r--test/test26-03.txt54
-rw-r--r--test/test33-03.txt14
-rw-r--r--test/test34-01.txt896
-rw-r--r--test/test34-02.txt1
-rw-r--r--test/test34-03.txt339
-rw-r--r--test/test34-04.txt9
-rw-r--r--test/test34-05.txt9
-rw-r--r--test/test34.cpp43
8 files changed, 1365 insertions, 0 deletions
diff --git a/test/test26-03.txt b/test/test26-03.txt
index f75ee67..705586c 100644
--- a/test/test26-03.txt
+++ b/test/test26-03.txt
@@ -1376,6 +1376,33 @@ convert_expr : __s,
preincrement_expr : __s,
var_decl __i: __s,
integer_cst 1: __s,
+cleanup_point_expr : __s,
+truth_not_expr : __s,
+call_expr : __s,
+addr_expr : __s,
+function_decl eq: __s,
+pointer_plus_expr : __s,
+parm_decl __s: __s,
+pointer_type : __s,
+integer_type : __s,
+type_decl char_type: __s,
+integer_cst 16: __s,
+integer_cst 0: __s,
+integer_cst 65535: __s,
+integer_cst 64: __s,
+mult_expr : __s,
+var_decl __i: __s,
+integer_cst 2: __s,
+addr_expr : __s,
+target_expr : __s,
+var_decl : __s,
+integer_cst 16: __s,
+integer_type : __s,
+type_decl char_type: __s,
+integer_cst 16: __s,
+integer_cst 0: __s,
+integer_cst 65535: __s,
+integer_cst 0: __s,
return_expr : __s,
init_expr : __s,
result_decl : __s,
@@ -2020,6 +2047,33 @@ convert_expr : __s,
preincrement_expr : __s,
var_decl __i: __s,
integer_cst 1: __s,
+cleanup_point_expr : __s,
+truth_not_expr : __s,
+call_expr : __s,
+addr_expr : __s,
+function_decl eq: __s,
+pointer_plus_expr : __s,
+parm_decl __s: __s,
+pointer_type : __s,
+integer_type : __s,
+type_decl char_type: __s,
+integer_cst 32: __s,
+integer_cst 0: __s,
+integer_cst 4294967295: __s,
+integer_cst 64: __s,
+mult_expr : __s,
+var_decl __i: __s,
+integer_cst 4: __s,
+addr_expr : __s,
+target_expr : __s,
+var_decl : __s,
+integer_cst 32: __s,
+integer_type : __s,
+type_decl char_type: __s,
+integer_cst 32: __s,
+integer_cst 0: __s,
+integer_cst 4294967295: __s,
+integer_cst 0: __s,
return_expr : __s,
init_expr : __s,
result_decl : __s,
diff --git a/test/test33-03.txt b/test/test33-03.txt
index 897c2da..1a80fd6 100644
--- a/test/test33-03.txt
+++ b/test/test33-03.txt
@@ -106,6 +106,20 @@ integer_cst 64:
field_decl val:
integer_cst 32:
integer_cst 100:
+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,
cleanup_point_expr : ptr1,
expr_stmt : ptr1,
call_expr : ptr1,
diff --git a/test/test34-01.txt b/test/test34-01.txt
index c84b19b..bcf5789 100644
--- a/test/test34-01.txt
+++ b/test/test34-01.txt
@@ -4582,3 +4582,899 @@ function_decl func6 test34.cpp 203:10
addr_expr - operand
string_cst - operand
- stringLength: 1
+function_decl func7 test34.cpp 246: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 test34.cpp 18:7 - type name
+ - isAutogenerated: 1
+ field_decl tmp1 test34.cpp 20:12 - field
+ - unsigned
+ integer_cst 64 - decl size
+ field_decl tmp2 test34.cpp 21:12 - field
+ - unsigned
+ integer_cst 64 - decl size
+ type_decl Object1 test34.cpp 19:1 - field
+ - isAutogenerated: 1
+ tree_list - arg types
+ pointer_type - value
+ record_type - nested type
+ type_decl Object1 test34.cpp 18:7 - type name
+ - isAutogenerated: 1
+ field_decl tmp1 test34.cpp 20:12 - field
+ - unsigned
+ integer_cst 64 - decl size
+ field_decl tmp2 test34.cpp 21:12 - field
+ - unsigned
+ integer_cst 64 - decl size
+ type_decl Object1 test34.cpp 19:1 - field
+ - isAutogenerated: 1
+ tree_list - chain
+ pointer_type - value
+ record_type - nested type
+ type_decl Data1 test34.cpp 3:8 - type name
+ - isAutogenerated: 1
+ field_decl val test34.cpp 5:9 - field
+ - signed
+ integer_cst 32 - decl size
+ field_decl ptrval test34.cpp 6:12 - field
+ - unsigned
+ integer_cst 64 - decl size
+ field_decl arr test34.cpp 7:14 - field
+ - signed
+ integer_cst 96 - decl size
+ type_decl Data1 test34.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 test34.cpp 247:5 - function result
+ - isAutogenerated: 1
+ void_type - result type
+ type_decl void <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ parm_decl this test34.cpp 246:27 - argument
+ - isAutogenerated: 1
+ pointer_type - decl type
+ record_type - nested type
+ type_decl Object1 test34.cpp 18:7 - type name
+ - isAutogenerated: 1
+ field_decl tmp1 test34.cpp 20:12 - field
+ - unsigned
+ integer_cst 64 - decl size
+ field_decl tmp2 test34.cpp 21:12 - field
+ - unsigned
+ integer_cst 64 - decl size
+ type_decl Object1 test34.cpp 19:1 - field
+ - isAutogenerated: 1
+ integer_cst 64 - parm size
+ - isUsed: 1
+ parm_decl ptr1 test34.cpp 246:23 - argument
+ pointer_type - decl type
+ record_type - nested type
+ type_decl Data1 test34.cpp 3:8 - type name
+ - isAutogenerated: 1
+ field_decl val test34.cpp 5:9 - field
+ - signed
+ integer_cst 32 - decl size
+ field_decl ptrval test34.cpp 6:12 - field
+ - unsigned
+ integer_cst 64 - decl size
+ field_decl arr test34.cpp 7:14 - field
+ - signed
+ integer_cst 96 - decl size
+ type_decl Data1 test34.cpp 4:1 - field
+ - isAutogenerated: 1
+ integer_cst 64 - parm size
+ statement_list - code
+ cleanup_point_expr test34.cpp 248:57 - statement
+ expr_stmt test34.cpp 248:57 - operand
+ call_expr test34.cpp 248:31 - expresssion
+ addr_expr - function
+ function_decl paranuckerInternalTest test34.cpp 16:6 - operand
+ - isExternal: 1
+ - isPublic: 1
+ function_type - function type
+ void_type - function return 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 test34.cpp 249:60 - statement
+ expr_stmt test34.cpp 249:60 - operand
+ call_expr test34.cpp 249:31 - expresssion
+ addr_expr - function
+ function_decl paranuckerInternalTest test34.cpp 16:6 - operand
+ - isExternal: 1
+ - isPublic: 1
+ function_type - function type
+ void_type - function return 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 test34.cpp 250:57 - statement
+ expr_stmt test34.cpp 250:57 - operand
+ call_expr test34.cpp 250:31 - expresssion
+ addr_expr - function
+ function_decl paranuckerInternalTest test34.cpp 16:6 - operand
+ - isExternal: 1
+ - isPublic: 1
+ function_type - function type
+ void_type - function return 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 test34.cpp 251:65 - statement
+ expr_stmt test34.cpp 251:65 - operand
+ call_expr test34.cpp 251:31 - expresssion
+ addr_expr - function
+ function_decl paranuckerInternalTest test34.cpp 16:6 - operand
+ - isExternal: 1
+ - isPublic: 1
+ function_type - function type
+ void_type - function return 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 test34.cpp 252:55 - statement
+ expr_stmt test34.cpp 252:55 - operand
+ call_expr test34.cpp 252:31 - expresssion
+ addr_expr - function
+ function_decl paranuckerInternalTest test34.cpp 16:6 - operand
+ - isExternal: 1
+ - isPublic: 1
+ function_type - function type
+ void_type - function return type
+ nop_expr - arg
+ addr_expr - operand
+ string_cst = - operand
+ - stringLength: 2
+ nop_expr - arg
+ addr_expr - operand
+ string_cst addNullVars - operand
+ - stringLength: 12
+ nop_expr - arg
+ addr_expr - operand
+ string_cst - operand
+ - stringLength: 1
+ cleanup_point_expr test34.cpp 253:58 - statement
+ expr_stmt test34.cpp 253:58 - operand
+ call_expr test34.cpp 253:31 - expresssion
+ addr_expr - function
+ function_decl paranuckerInternalTest test34.cpp 16:6 - operand
+ - isExternal: 1
+ - isPublic: 1
+ function_type - function type
+ void_type - function return type
+ nop_expr - arg
+ addr_expr - operand
+ string_cst = - operand
+ - stringLength: 2
+ nop_expr - arg
+ addr_expr - operand
+ string_cst removeNullVars - operand
+ - stringLength: 15
+ nop_expr - arg
+ addr_expr - operand
+ string_cst - operand
+ - stringLength: 1
+ cleanup_point_expr test34.cpp 254:61 - statement
+ expr_stmt test34.cpp 254:61 - operand
+ call_expr test34.cpp 254:31 - expresssion
+ addr_expr - function
+ function_decl paranuckerInternalTest test34.cpp 16:6 - operand
+ - isExternal: 1
+ - isPublic: 1
+ function_type - function type
+ void_type - function return type
+ nop_expr - arg
+ addr_expr - operand
+ string_cst = - operand
+ - stringLength: 2
+ nop_expr - arg
+ addr_expr - operand
+ string_cst removeNullVarsAll - operand
+ - stringLength: 18
+ nop_expr - arg
+ addr_expr - operand
+ string_cst - operand
+ - stringLength: 1
+ if_stmt test34.cpp 255:9 - statement
+ eq_expr test34.cpp 255:14 - condition
+ - isUsed: 1
+ parm_decl ptr1 test34.cpp 246:23 - operand
+ pointer_type - decl type
+ record_type - nested type
+ type_decl Data1 test34.cpp 3:8 - type name
+ - isAutogenerated: 1
+ field_decl val test34.cpp 5:9 - field
+ - signed
+ integer_cst 32 - decl size
+ field_decl ptrval test34.cpp 6:12 - field
+ - unsigned
+ integer_cst 64 - decl size
+ field_decl arr test34.cpp 7:14 - field
+ - signed
+ integer_cst 96 - decl size
+ type_decl Data1 test34.cpp 4:1 - field
+ - isAutogenerated: 1
+ integer_cst 64 - parm size
+ integer_cst 0 - operand
+ return_expr test34.cpp 256:13 - then
+ cleanup_point_expr test34.cpp 257:57 - statement
+ expr_stmt test34.cpp 257:57 - operand
+ call_expr test34.cpp 257:31 - expresssion
+ addr_expr - function
+ function_decl paranuckerInternalTest test34.cpp 16:6 - operand
+ - isExternal: 1
+ - isPublic: 1
+ function_type - function type
+ void_type - function return 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 test34.cpp 258:64 - statement
+ expr_stmt test34.cpp 258:64 - operand
+ call_expr test34.cpp 258:31 - expresssion
+ addr_expr - function
+ function_decl paranuckerInternalTest test34.cpp 16:6 - operand
+ - isExternal: 1
+ - isPublic: 1
+ function_type - function type
+ void_type - function return 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 test34.cpp 259:57 - statement
+ expr_stmt test34.cpp 259:57 - operand
+ call_expr test34.cpp 259:31 - expresssion
+ addr_expr - function
+ function_decl paranuckerInternalTest test34.cpp 16:6 - operand
+ - isExternal: 1
+ - isPublic: 1
+ function_type - function type
+ void_type - function return 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 test34.cpp 260:61 - statement
+ expr_stmt test34.cpp 260:61 - operand
+ call_expr test34.cpp 260:31 - expresssion
+ addr_expr - function
+ function_decl paranuckerInternalTest test34.cpp 16:6 - operand
+ - isExternal: 1
+ - isPublic: 1
+ function_type - function type
+ void_type - function return 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 test34.cpp 261:55 - statement
+ expr_stmt test34.cpp 261:55 - operand
+ call_expr test34.cpp 261:31 - expresssion
+ addr_expr - function
+ function_decl paranuckerInternalTest test34.cpp 16:6 - operand
+ - isExternal: 1
+ - isPublic: 1
+ function_type - function type
+ void_type - function return type
+ nop_expr - arg
+ addr_expr - operand
+ string_cst = - operand
+ - stringLength: 2
+ nop_expr - arg
+ addr_expr - operand
+ string_cst addNullVars - operand
+ - stringLength: 12
+ nop_expr - arg
+ addr_expr - operand
+ string_cst - operand
+ - stringLength: 1
+ cleanup_point_expr test34.cpp 262:65 - statement
+ expr_stmt test34.cpp 262:65 - operand
+ call_expr test34.cpp 262:31 - expresssion
+ addr_expr - function
+ function_decl paranuckerInternalTest test34.cpp 16:6 - operand
+ - isExternal: 1
+ - isPublic: 1
+ function_type - function type
+ void_type - function return type
+ nop_expr - arg
+ addr_expr - operand
+ string_cst = - operand
+ - stringLength: 2
+ nop_expr - arg
+ addr_expr - operand
+ string_cst removeNullVarsAll - operand
+ - stringLength: 18
+ nop_expr - arg
+ addr_expr - operand
+ string_cst ptr1 - operand
+ - stringLength: 5
+ while_stmt test34.cpp 263:9 - statement
+ truth_andif_expr test34.cpp 263:21 - condition
+ ne_expr - operand
+ - isUsed: 1
+ parm_decl ptr1 test34.cpp 246:23 - operand
+ pointer_type - decl type
+ record_type - nested type
+ type_decl Data1 test34.cpp 3:8 - type name
+ - isAutogenerated: 1
+ field_decl val test34.cpp 5:9 - field
+ - signed
+ integer_cst 32 - decl size
+ field_decl ptrval test34.cpp 6:12 - field
+ - unsigned
+ integer_cst 64 - decl size
+ field_decl arr test34.cpp 7:14 - field
+ - signed
+ integer_cst 96 - decl size
+ type_decl Data1 test34.cpp 4:1 - field
+ - isAutogenerated: 1
+ integer_cst 64 - parm size
+ integer_cst 0 - operand
+ eq_expr test34.cpp 263:34 - operand
+ component_ref test34.cpp 263:30 - operand
+ indirect_ref - object
+ - isUsed: 1
+ parm_decl ptr1 test34.cpp 246:23 - ref
+ pointer_type - decl type
+ record_type - nested type
+ type_decl Data1 test34.cpp 3:8 - type name
+ - isAutogenerated: 1
+ field_decl val test34.cpp 5:9 - field
+ - signed
+ integer_cst 32 - decl size
+ field_decl ptrval test34.cpp 6:12 - field
+ - unsigned
+ integer_cst 64 - decl size
+ field_decl arr test34.cpp 7:14 - field
+ - signed
+ integer_cst 96 - decl size
+ type_decl Data1 test34.cpp 4:1 - field
+ - isAutogenerated: 1
+ integer_cst 64 - parm size
+ field_decl val test34.cpp 5:9 - field
+ - signed
+ integer_cst 32 - decl size
+ integer_cst 100 - operand
+ statement_list - body
+ cleanup_point_expr test34.cpp 265:61 - statement
+ expr_stmt test34.cpp 265:61 - operand
+ call_expr test34.cpp 265:35 - expresssion
+ addr_expr - function
+ function_decl paranuckerInternalTest test34.cpp 16:6 - operand
+ - isExternal: 1
+ - isPublic: 1
+ function_type - function type
+ void_type - function return 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 test34.cpp 266:68 - statement
+ expr_stmt test34.cpp 266:68 - operand
+ call_expr test34.cpp 266:35 - expresssion
+ addr_expr - function
+ function_decl paranuckerInternalTest test34.cpp 16:6 - operand
+ - isExternal: 1
+ - isPublic: 1
+ function_type - function type
+ void_type - function return 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 test34.cpp 267:61 - statement
+ expr_stmt test34.cpp 267:61 - operand
+ call_expr test34.cpp 267:35 - expresssion
+ addr_expr - function
+ function_decl paranuckerInternalTest test34.cpp 16:6 - operand
+ - isExternal: 1
+ - isPublic: 1
+ function_type - function type
+ void_type - function return 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 test34.cpp 268:65 - statement
+ expr_stmt test34.cpp 268:65 - operand
+ call_expr test34.cpp 268:35 - expresssion
+ addr_expr - function
+ function_decl paranuckerInternalTest test34.cpp 16:6 - operand
+ - isExternal: 1
+ - isPublic: 1
+ function_type - function type
+ void_type - function return 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 test34.cpp 269:59 - statement
+ expr_stmt test34.cpp 269:59 - operand
+ call_expr test34.cpp 269:35 - expresssion
+ addr_expr - function
+ function_decl paranuckerInternalTest test34.cpp 16:6 - operand
+ - isExternal: 1
+ - isPublic: 1
+ function_type - function type
+ void_type - function return type
+ nop_expr - arg
+ addr_expr - operand
+ string_cst = - operand
+ - stringLength: 2
+ nop_expr - arg
+ addr_expr - operand
+ string_cst addNullVars - operand
+ - stringLength: 12
+ nop_expr - arg
+ addr_expr - operand
+ string_cst - operand
+ - stringLength: 1
+ cleanup_point_expr test34.cpp 270:69 - statement
+ expr_stmt test34.cpp 270:69 - operand
+ call_expr test34.cpp 270:35 - expresssion
+ addr_expr - function
+ function_decl paranuckerInternalTest test34.cpp 16:6 - operand
+ - isExternal: 1
+ - isPublic: 1
+ function_type - function type
+ void_type - function return type
+ nop_expr - arg
+ addr_expr - operand
+ string_cst = - operand
+ - stringLength: 2
+ nop_expr - arg
+ addr_expr - operand
+ string_cst removeNullVarsAll - operand
+ - stringLength: 18
+ nop_expr - arg
+ addr_expr - operand
+ string_cst ptr1 - operand
+ - stringLength: 5
+ cleanup_point_expr test34.cpp 271:30 - statement
+ expr_stmt test34.cpp 271:30 - operand
+ convert_expr - expresssion
+ modify_expr - operand
+ - isUsed: 1
+ parm_decl ptr1 test34.cpp 246:23 - operand
+ pointer_type - decl type
+ record_type - nested type
+ type_decl Data1 test34.cpp 3:8 - type name
+ - isAutogenerated: 1
+ field_decl val test34.cpp 5:9 - field
+ - signed
+ integer_cst 32 - decl size
+ field_decl ptrval test34.cpp 6:12 - field
+ - unsigned
+ integer_cst 64 - decl size
+ field_decl arr test34.cpp 7:14 - field
+ - signed
+ integer_cst 96 - decl size
+ type_decl Data1 test34.cpp 4:1 - field
+ - isAutogenerated: 1
+ integer_cst 64 - parm size
+ call_expr test34.cpp 271:28 - operand
+ addr_expr - function
+ function_decl getData1 test34.cpp 23:12 - operand
+ - isExternal: 1
+ - isPublic: 1
+ method_type - function type
+ pointer_type - method return type
+ parm_decl this test34.cpp 246:27 - arg
+ - isAutogenerated: 1
+ pointer_type - decl type
+ record_type - nested type
+ type_decl Object1 test34.cpp 18:7 - type name
+ - isAutogenerated: 1
+ field_decl tmp1 test34.cpp 20:12 - field
+ - unsigned
+ integer_cst 64 - decl size
+ field_decl tmp2 test34.cpp 21:12 - field
+ - unsigned
+ integer_cst 64 - decl size
+ type_decl Object1 test34.cpp 19:1 - field
+ - isAutogenerated: 1
+ integer_cst 64 - parm size
+ cleanup_point_expr test34.cpp 272:61 - statement
+ expr_stmt test34.cpp 272:61 - operand
+ call_expr test34.cpp 272:35 - expresssion
+ addr_expr - function
+ function_decl paranuckerInternalTest test34.cpp 16:6 - operand
+ - isExternal: 1
+ - isPublic: 1
+ function_type - function type
+ void_type - function return 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 test34.cpp 273:64 - statement
+ expr_stmt test34.cpp 273:64 - operand
+ call_expr test34.cpp 273:35 - expresssion
+ addr_expr - function
+ function_decl paranuckerInternalTest test34.cpp 16:6 - operand
+ - isExternal: 1
+ - isPublic: 1
+ function_type - function type
+ void_type - function return 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 test34.cpp 274:61 - statement
+ expr_stmt test34.cpp 274:61 - operand
+ call_expr test34.cpp 274:35 - expresssion
+ addr_expr - function
+ function_decl paranuckerInternalTest test34.cpp 16:6 - operand
+ - isExternal: 1
+ - isPublic: 1
+ function_type - function type
+ void_type - function return 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 test34.cpp 275:69 - statement
+ expr_stmt test34.cpp 275:69 - operand
+ call_expr test34.cpp 275:35 - expresssion
+ addr_expr - function
+ function_decl paranuckerInternalTest test34.cpp 16:6 - operand
+ - isExternal: 1
+ - isPublic: 1
+ function_type - function type
+ void_type - function return 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 test34.cpp 276:63 - statement
+ expr_stmt test34.cpp 276:63 - operand
+ call_expr test34.cpp 276:35 - expresssion
+ addr_expr - function
+ function_decl paranuckerInternalTest test34.cpp 16:6 - operand
+ - isExternal: 1
+ - isPublic: 1
+ function_type - function type
+ void_type - function return type
+ nop_expr - arg
+ addr_expr - operand
+ string_cst = - operand
+ - stringLength: 2
+ nop_expr - arg
+ addr_expr - operand
+ string_cst addNullVars - operand
+ - stringLength: 12
+ nop_expr - arg
+ addr_expr - operand
+ string_cst ptr1 - operand
+ - stringLength: 5
+ cleanup_point_expr test34.cpp 277:62 - statement
+ expr_stmt test34.cpp 277:62 - operand
+ call_expr test34.cpp 277:35 - expresssion
+ addr_expr - function
+ function_decl paranuckerInternalTest test34.cpp 16:6 - operand
+ - isExternal: 1
+ - isPublic: 1
+ function_type - function type
+ void_type - function return type
+ nop_expr - arg
+ addr_expr - operand
+ string_cst = - operand
+ - stringLength: 2
+ nop_expr - arg
+ addr_expr - operand
+ string_cst removeNullVars - operand
+ - stringLength: 15
+ nop_expr - arg
+ addr_expr - operand
+ string_cst - operand
+ - stringLength: 1
+ cleanup_point_expr test34.cpp 278:65 - statement
+ expr_stmt test34.cpp 278:65 - operand
+ call_expr test34.cpp 278:35 - expresssion
+ addr_expr - function
+ function_decl paranuckerInternalTest test34.cpp 16:6 - operand
+ - isExternal: 1
+ - isPublic: 1
+ function_type - function type
+ void_type - function return type
+ nop_expr - arg
+ addr_expr - operand
+ string_cst = - operand
+ - stringLength: 2
+ nop_expr - arg
+ addr_expr - operand
+ string_cst removeNullVarsAll - operand
+ - stringLength: 18
+ nop_expr - arg
+ addr_expr - operand
+ string_cst - operand
+ - stringLength: 1
+ cleanup_point_expr test34.cpp 280:57 - statement
+ expr_stmt test34.cpp 280:57 - operand
+ call_expr test34.cpp 280:31 - expresssion
+ addr_expr - function
+ function_decl paranuckerInternalTest test34.cpp 16:6 - operand
+ - isExternal: 1
+ - isPublic: 1
+ function_type - function type
+ void_type - function return 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 test34.cpp 281:60 - statement
+ expr_stmt test34.cpp 281:60 - operand
+ call_expr test34.cpp 281:31 - expresssion
+ addr_expr - function
+ function_decl paranuckerInternalTest test34.cpp 16:6 - operand
+ - isExternal: 1
+ - isPublic: 1
+ function_type - function type
+ void_type - function return 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 test34.cpp 282:57 - statement
+ expr_stmt test34.cpp 282:57 - operand
+ call_expr test34.cpp 282:31 - expresssion
+ addr_expr - function
+ function_decl paranuckerInternalTest test34.cpp 16:6 - operand
+ - isExternal: 1
+ - isPublic: 1
+ function_type - function type
+ void_type - function return 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 test34.cpp 283:65 - statement
+ expr_stmt test34.cpp 283:65 - operand
+ call_expr test34.cpp 283:31 - expresssion
+ addr_expr - function
+ function_decl paranuckerInternalTest test34.cpp 16:6 - operand
+ - isExternal: 1
+ - isPublic: 1
+ function_type - function type
+ void_type - function return 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 test34.cpp 284:59 - statement
+ expr_stmt test34.cpp 284:59 - operand
+ call_expr test34.cpp 284:31 - expresssion
+ addr_expr - function
+ function_decl paranuckerInternalTest test34.cpp 16:6 - operand
+ - isExternal: 1
+ - isPublic: 1
+ function_type - function type
+ void_type - function return type
+ nop_expr - arg
+ addr_expr - operand
+ string_cst = - operand
+ - stringLength: 2
+ nop_expr - arg
+ addr_expr - operand
+ string_cst addNullVars - operand
+ - stringLength: 12
+ nop_expr - arg
+ addr_expr - operand
+ string_cst ptr1 - operand
+ - stringLength: 5
+ cleanup_point_expr test34.cpp 285:58 - statement
+ expr_stmt test34.cpp 285:58 - operand
+ call_expr test34.cpp 285:31 - expresssion
+ addr_expr - function
+ function_decl paranuckerInternalTest test34.cpp 16:6 - operand
+ - isExternal: 1
+ - isPublic: 1
+ function_type - function type
+ void_type - function return type
+ nop_expr - arg
+ addr_expr - operand
+ string_cst = - operand
+ - stringLength: 2
+ nop_expr - arg
+ addr_expr - operand
+ string_cst removeNullVars - operand
+ - stringLength: 15
+ nop_expr - arg
+ addr_expr - operand
+ string_cst - operand
+ - stringLength: 1
+ cleanup_point_expr test34.cpp 286:61 - statement
+ expr_stmt test34.cpp 286:61 - operand
+ call_expr test34.cpp 286:31 - expresssion
+ addr_expr - function
+ function_decl paranuckerInternalTest test34.cpp 16:6 - operand
+ - isExternal: 1
+ - isPublic: 1
+ function_type - function type
+ void_type - function return type
+ nop_expr - arg
+ addr_expr - operand
+ string_cst = - operand
+ - stringLength: 2
+ nop_expr - arg
+ addr_expr - operand
+ string_cst removeNullVarsAll - operand
+ - stringLength: 18
+ nop_expr - arg
+ addr_expr - operand
+ string_cst - operand
+ - stringLength: 1
diff --git a/test/test34-02.txt b/test/test34-02.txt
index 9681062..34b3eb3 100644
--- a/test/test34-02.txt
+++ b/test/test34-02.txt
@@ -5,3 +5,4 @@ func3: pointer_type ptr1,
func4: pointer_type ptr1,
func5: pointer_type ptr1,
func6: pointer_type ptr1,
+func7: pointer_type ptr1,
diff --git a/test/test34-03.txt b/test/test34-03.txt
index 6bb48f6..ac814ba 100644
--- a/test/test34-03.txt
+++ b/test/test34-03.txt
@@ -136,6 +136,20 @@ integer_cst 64:
field_decl val:
integer_cst 32:
integer_cst 100:
+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,
cleanup_point_expr : ptr1,
expr_stmt : ptr1,
call_expr : ptr1,
@@ -720,6 +734,25 @@ expr_stmt : ptr1,
call_expr : ptr1,
addr_expr : ptr1,
function_decl paranuckerInternalTest: ptr1,
+eq_expr : ptr1,
+component_ref : ptr1,
+test34.cpp:133:22: warning: Using parameter 'ptr1' without checking for null pointer
+indirect_ref : 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,
+field_decl val: ptr1,
+integer_cst 32: ptr1,
+integer_cst 100: ptr1,
cleanup_point_expr : ptr1,
expr_stmt : ptr1,
call_expr : ptr1,
@@ -1184,6 +1217,312 @@ expr_stmt : ptr1,
call_expr : ptr1,
addr_expr : ptr1,
function_decl paranuckerInternalTest: ptr1,
+eq_expr : ptr1,
+component_ref : ptr1,
+test34.cpp: In member function 'void Object1::func6(Data1*)':
+test34.cpp:220:22: warning: Using parameter 'ptr1' without checking for null pointer
+ while (ptr1->val == 100)
+ ^
+indirect_ref : 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,
+field_decl val: ptr1,
+integer_cst 32: ptr1,
+integer_cst 100: 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 func7:
+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,
+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:
+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:
+while_stmt : ptr1,
+truth_andif_expr : ptr1,
+ne_expr :
+test34.cpp: In member function 'void Object1::func7(Data1*)':
+test34.cpp:263:21: warning: Useless variable check 'ptr1'. It already was checked before
+ while (ptr1 && ptr1->val == 100)
+ ^
+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:
+eq_expr :
+component_ref :
+indirect_ref :
+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:
+field_decl val:
+integer_cst 32:
+integer_cst 100:
+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 :
+convert_expr :
+modify_expr :
+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,
+call_expr : ptr1,
+addr_expr : ptr1,
+function_decl getData1: ptr1,
+parm_decl this: ptr1,
+pointer_type : ptr1,
+record_type : ptr1,
+type_decl Object1: ptr1,
+field_decl tmp1: ptr1,
+integer_cst 64: ptr1,
+field_decl tmp2: ptr1,
+integer_cst 64: ptr1,
+type_decl Object1: ptr1,
+integer_cst 64: 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,
+truth_andif_expr : 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,
+eq_expr :
+component_ref :
+indirect_ref :
+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:
+field_decl val:
+integer_cst 32:
+integer_cst 100:
cleanup_point_expr : ptr1,
expr_stmt : ptr1,
call_expr : ptr1,
diff --git a/test/test34-04.txt b/test/test34-04.txt
index 893f9c3..32b174e 100644
--- a/test/test34-04.txt
+++ b/test/test34-04.txt
@@ -14,3 +14,12 @@ test34.cpp: In member function 'void Object1::func4(Data1*)':
test34.cpp:133:22: warning: Using parameter 'ptr1' without checking for null pointer
while (ptr1->val == 100)
^
+test34.cpp:133:22: warning: Using parameter 'ptr1' without checking for null pointer
+test34.cpp: In member function 'void Object1::func6(Data1*)':
+test34.cpp:220:22: warning: Using parameter 'ptr1' without checking for null pointer
+ while (ptr1->val == 100)
+ ^
+test34.cpp: In member function 'void Object1::func7(Data1*)':
+test34.cpp:263:21: warning: Useless variable check 'ptr1'. It already was checked before
+ while (ptr1 && ptr1->val == 100)
+ ^
diff --git a/test/test34-05.txt b/test/test34-05.txt
index 893f9c3..32b174e 100644
--- a/test/test34-05.txt
+++ b/test/test34-05.txt
@@ -14,3 +14,12 @@ test34.cpp: In member function 'void Object1::func4(Data1*)':
test34.cpp:133:22: warning: Using parameter 'ptr1' without checking for null pointer
while (ptr1->val == 100)
^
+test34.cpp:133:22: warning: Using parameter 'ptr1' without checking for null pointer
+test34.cpp: In member function 'void Object1::func6(Data1*)':
+test34.cpp:220:22: warning: Using parameter 'ptr1' without checking for null pointer
+ while (ptr1->val == 100)
+ ^
+test34.cpp: In member function 'void Object1::func7(Data1*)':
+test34.cpp:263:21: warning: Useless variable check 'ptr1'. It already was checked before
+ while (ptr1 && ptr1->val == 100)
+ ^
diff --git a/test/test34.cpp b/test/test34.cpp
index 8cf671a..13e6dc1 100644
--- a/test/test34.cpp
+++ b/test/test34.cpp
@@ -242,4 +242,47 @@ class Object1
paranuckerInternalTest("=", "removeNullVars", "");
paranuckerInternalTest("=", "removeNullVarsAll", "");
}
+
+ void func7(Data1 *ptr1)
+ {
+ paranuckerInternalTest("=", "knownVars", "ptr1");
+ paranuckerInternalTest("=", "knownNonNullVars", "");
+ paranuckerInternalTest("=", "knownNullVars", "");
+ paranuckerInternalTest("=", "needCheckNullVars", "ptr1");
+ paranuckerInternalTest("=", "addNullVars", "");
+ paranuckerInternalTest("=", "removeNullVars", "");
+ paranuckerInternalTest("=", "removeNullVarsAll", "");
+ if (!ptr1)
+ return;
+ paranuckerInternalTest("=", "knownVars", "ptr1");
+ paranuckerInternalTest("=", "knownNonNullVars", "ptr1");
+ paranuckerInternalTest("=", "knownNullVars", "");
+ paranuckerInternalTest("=", "needCheckNullVars", "");
+ paranuckerInternalTest("=", "addNullVars", "");
+ paranuckerInternalTest("=", "removeNullVarsAll", "ptr1");
+ while (ptr1 && ptr1->val == 100)
+ {
+ paranuckerInternalTest("=", "knownVars", "ptr1");
+ paranuckerInternalTest("=", "knownNonNullVars", "ptr1");
+ paranuckerInternalTest("=", "knownNullVars", "");
+ paranuckerInternalTest("=", "needCheckNullVars", "");
+ paranuckerInternalTest("=", "addNullVars", "");
+ paranuckerInternalTest("=", "removeNullVarsAll", "ptr1");
+ ptr1 = getData1();
+ paranuckerInternalTest("=", "knownVars", "ptr1");
+ paranuckerInternalTest("=", "knownNonNullVars", "");
+ paranuckerInternalTest("=", "knownNullVars", "");
+ paranuckerInternalTest("=", "needCheckNullVars", "ptr1");
+ paranuckerInternalTest("=", "addNullVars", "ptr1");
+ paranuckerInternalTest("=", "removeNullVars", "");
+ paranuckerInternalTest("=", "removeNullVarsAll", "");
+ }
+ paranuckerInternalTest("=", "knownVars", "ptr1");
+ paranuckerInternalTest("=", "knownNonNullVars", "");
+ paranuckerInternalTest("=", "knownNullVars", "");
+ paranuckerInternalTest("=", "needCheckNullVars", "ptr1");
+ paranuckerInternalTest("=", "addNullVars", "ptr1");
+ paranuckerInternalTest("=", "removeNullVars", "");
+ paranuckerInternalTest("=", "removeNullVarsAll", "");
+ }
};