summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2015-06-19 14:32:24 +0300
committerAndrei Karas <akaras@inbox.ru>2015-06-19 14:32:24 +0300
commitf1c09fc39c4f5b98061712ec78c650a1b0d918ec (patch)
tree051cf8bb75a0f23dbff0609e18af3f4bc048c4a1
parentce0bfc35c5a5dbf66da347ac016509852a4775bb (diff)
downloadparanucker-f1c09fc39c4f5b98061712ec78c650a1b0d918ec.tar.gz
paranucker-f1c09fc39c4f5b98061712ec78c650a1b0d918ec.tar.bz2
paranucker-f1c09fc39c4f5b98061712ec78c650a1b0d918ec.tar.xz
paranucker-f1c09fc39c4f5b98061712ec78c650a1b0d918ec.zip
Add test9. Update test results.
-rw-r--r--test/Makefile13
-rw-r--r--test/test6-04.txt72
-rw-r--r--test/test7-05.txt211
-rw-r--r--test/test8-03.txt90
-rw-r--r--test/test9-01.txt1521
-rw-r--r--test/test9-02.txt9
-rw-r--r--test/test9-03.txt613
-rw-r--r--test/test9-04.txt52
-rw-r--r--test/test9.cpp147
9 files changed, 2727 insertions, 1 deletions
diff --git a/test/Makefile b/test/Makefile
index d626a6f..39044f5 100644
--- a/test/Makefile
+++ b/test/Makefile
@@ -7,7 +7,8 @@ TESTS5 = test5-01 test5-02 test5-03 test5-04 test5-05
TESTS6 = test6-01 test6-02 test6-03 test6-04
TESTS7 = test7-01 test7-02 test7-03 test7-04 test7-05
TESTS8 = test8-01 test8-02 test8-03 test8-04
-ALLTESTS = test1 test2 test3 test4 test5 test6 test7 test8 ${TESTS1} ${TESTS2} ${TESTS3} ${TESTS4} ${TESTS5} ${TESTS6} ${TESTS7} ${TESTS8}
+TESTS9 = test9-01 test9-02 test9-03 test9-04
+ALLTESTS = test1 test2 test3 test4 test5 test6 test7 test8 test9 ${TESTS1} ${TESTS2} ${TESTS3} ${TESTS4} ${TESTS5} ${TESTS6} ${TESTS7} ${TESTS8} ${TESTS9}
.PHONY: ${ALLTESTS} ${CRASHES} all crashes
@@ -96,6 +97,16 @@ test8-03:
test8-04:
$(call CMD,detectnullpointers,test8.cpp,test8-04.txt)
+test9: ${TESTS9}
+test9-01:
+ $(call CMD,dump,test9.cpp,test9-01.txt)
+test9-02:
+ $(call CMD,findargs,test9.cpp,test9-02.txt)
+test9-03:
+ $(call CMD,dumpnullpointers,test9.cpp,test9-03.txt)
+test9-04:
+ $(call CMD,detectnullpointers,test9.cpp,test9-04.txt)
+
crashtest1:
$(call CMD,dump,crashtest1.h,crashtest1-01.txt)
crashtest2:
diff --git a/test/test6-04.txt b/test/test6-04.txt
index 699e0ac..b991fdd 100644
--- a/test/test6-04.txt
+++ b/test/test6-04.txt
@@ -19,6 +19,16 @@ integer_cst 64: a,
integer_cst 100: a,
function_decl func2:
if_stmt : a,
+eq_expr : a,
+parm_decl a: a,
+pointer_type : a,
+integer_type : a,
+type_decl int: a,
+integer_cst 32: a,
+integer_cst -2147483648: a,
+integer_cst 2147483647: a,
+integer_cst 64: a,
+integer_cst 0: a,
return_expr : a,
cleanup_point_expr :
expr_stmt :
@@ -37,6 +47,16 @@ integer_cst 200:
function_decl func3:
statement_list : a,
if_stmt : a,
+eq_expr : a,
+parm_decl a: a,
+pointer_type : a,
+integer_type : a,
+type_decl int: a,
+integer_cst 32: a,
+integer_cst -2147483648: a,
+integer_cst 2147483647: a,
+integer_cst 64: a,
+integer_cst 0: a,
return_expr : a,
cleanup_point_expr : a,
expr_stmt :
@@ -54,6 +74,16 @@ integer_cst 64:
integer_cst 300:
function_decl func4:
if_stmt : a,
+ne_expr : a,
+parm_decl a: a,
+pointer_type : a,
+integer_type : a,
+type_decl int: a,
+integer_cst 32: a,
+integer_cst -2147483648: a,
+integer_cst 2147483647: a,
+integer_cst 64: a,
+integer_cst 0: a,
cleanup_point_expr :
expr_stmt :
convert_expr :
@@ -71,6 +101,16 @@ integer_cst 400:
function_decl func5:
statement_list : a,
if_stmt : a,
+ne_expr : a,
+parm_decl a: a,
+pointer_type : a,
+integer_type : a,
+type_decl int: a,
+integer_cst 32: a,
+integer_cst -2147483648: a,
+integer_cst 2147483647: a,
+integer_cst 64: a,
+integer_cst 0: a,
cleanup_point_expr :
expr_stmt :
convert_expr :
@@ -108,6 +148,16 @@ bind_expr : a,
statement_list : a,
bind_expr : a,
if_stmt : a,
+eq_expr : a,
+parm_decl a: a,
+pointer_type : a,
+integer_type : a,
+type_decl int: a,
+integer_cst 32: a,
+integer_cst -2147483648: a,
+integer_cst 2147483647: a,
+integer_cst 64: a,
+integer_cst 0: a,
bind_expr : a,
var_decl k: a,
integer_cst 32: a,
@@ -150,9 +200,20 @@ bind_expr : aptr,
statement_list : aptr,
bind_expr : aptr,
if_stmt : aptr,
+integer_cst 0: aptr,
bind_expr : aptr,
bind_expr : aptr,
if_stmt : aptr,
+eq_expr : aptr,
+parm_decl aptr: aptr,
+pointer_type : aptr,
+integer_type : aptr,
+type_decl int: aptr,
+integer_cst 32: aptr,
+integer_cst -2147483648: aptr,
+integer_cst 2147483647: aptr,
+integer_cst 64: aptr,
+integer_cst 0: aptr,
bind_expr : aptr,
var_decl k: aptr,
integer_cst 32: aptr,
@@ -210,10 +271,21 @@ bind_expr : aptr,
statement_list : aptr,
bind_expr : aptr,
if_stmt : aptr,
+eq_expr : aptr,
+parm_decl aptr: aptr,
+pointer_type : aptr,
+integer_type : aptr,
+type_decl int: aptr,
+integer_cst 32: aptr,
+integer_cst -2147483648: aptr,
+integer_cst 2147483647: aptr,
+integer_cst 64: aptr,
+integer_cst 0: aptr,
bind_expr : aptr,
statement_list : aptr,
bind_expr : aptr,
if_stmt : aptr,
+integer_cst 0: aptr,
bind_expr : aptr,
var_decl k: aptr,
integer_cst 32: aptr,
diff --git a/test/test7-05.txt b/test/test7-05.txt
index e418cf0..f7ea1d6 100644
--- a/test/test7-05.txt
+++ b/test/test7-05.txt
@@ -939,6 +939,12 @@ function_decl __gthread_yield:
function_decl __gthread_once:
if_stmt : __func, __once,
cleanup_point_expr : __func, __once,
+ne_expr : __func, __once,
+call_expr : __func, __once,
+addr_expr : __func, __once,
+function_decl __gthread_active_p: __func, __once,
+integer_cst 0: __func, __once,
+cleanup_point_expr : __func, __once,
return_expr : __func, __once,
init_expr : __func, __once,
result_decl : __func, __once,
@@ -1044,6 +1050,12 @@ integer_cst 64: __ptr,
function_decl __gthread_mutex_init_function:
if_stmt : __mutex,
cleanup_point_expr : __mutex,
+ne_expr : __mutex,
+call_expr : __mutex,
+addr_expr : __mutex,
+function_decl __gthread_active_p: __mutex,
+integer_cst 0: __mutex,
+cleanup_point_expr : __mutex,
expr_stmt : __mutex,
convert_expr : __mutex,
call_expr : __mutex,
@@ -1066,6 +1078,12 @@ integer_cst 0: __mutex,
function_decl __gthread_mutex_destroy:
if_stmt : __mutex,
cleanup_point_expr : __mutex,
+ne_expr : __mutex,
+call_expr : __mutex,
+addr_expr : __mutex,
+function_decl __gthread_active_p: __mutex,
+integer_cst 0: __mutex,
+cleanup_point_expr : __mutex,
return_expr : __mutex,
init_expr : __mutex,
result_decl : __mutex,
@@ -1104,6 +1122,12 @@ integer_cst 0: __mutex,
function_decl __gthread_mutex_lock:
if_stmt : __mutex,
cleanup_point_expr : __mutex,
+ne_expr : __mutex,
+call_expr : __mutex,
+addr_expr : __mutex,
+function_decl __gthread_active_p: __mutex,
+integer_cst 0: __mutex,
+cleanup_point_expr : __mutex,
return_expr : __mutex,
init_expr : __mutex,
result_decl : __mutex,
@@ -1142,6 +1166,12 @@ integer_cst 0: __mutex,
function_decl __gthread_mutex_trylock:
if_stmt : __mutex,
cleanup_point_expr : __mutex,
+ne_expr : __mutex,
+call_expr : __mutex,
+addr_expr : __mutex,
+function_decl __gthread_active_p: __mutex,
+integer_cst 0: __mutex,
+cleanup_point_expr : __mutex,
return_expr : __mutex,
init_expr : __mutex,
result_decl : __mutex,
@@ -1180,6 +1210,12 @@ integer_cst 0: __mutex,
function_decl __gthread_mutex_timedlock:
if_stmt : __abs_timeout, __mutex,
cleanup_point_expr : __abs_timeout, __mutex,
+ne_expr : __abs_timeout, __mutex,
+call_expr : __abs_timeout, __mutex,
+addr_expr : __abs_timeout, __mutex,
+function_decl __gthread_active_p: __abs_timeout, __mutex,
+integer_cst 0: __abs_timeout, __mutex,
+cleanup_point_expr : __abs_timeout, __mutex,
return_expr : __abs_timeout, __mutex,
init_expr : __abs_timeout, __mutex,
result_decl : __abs_timeout, __mutex,
@@ -1228,6 +1264,12 @@ integer_cst 0: __abs_timeout, __mutex,
function_decl __gthread_mutex_unlock:
if_stmt : __mutex,
cleanup_point_expr : __mutex,
+ne_expr : __mutex,
+call_expr : __mutex,
+addr_expr : __mutex,
+function_decl __gthread_active_p: __mutex,
+integer_cst 0: __mutex,
+cleanup_point_expr : __mutex,
return_expr : __mutex,
init_expr : __mutex,
result_decl : __mutex,
@@ -1775,6 +1817,12 @@ integer_cst 32: __mem,
function_decl __exchange_and_add_dispatch:
if_stmt : __mem,
cleanup_point_expr : __mem,
+ne_expr : __mem,
+call_expr : __mem,
+addr_expr : __mem,
+function_decl __gthread_active_p: __mem,
+integer_cst 0: __mem,
+cleanup_point_expr : __mem,
return_expr : __mem,
init_expr : __mem,
result_decl : __mem,
@@ -1834,6 +1882,12 @@ integer_cst 32: __mem,
function_decl __atomic_add_dispatch:
if_stmt : __mem,
cleanup_point_expr : __mem,
+ne_expr : __mem,
+call_expr : __mem,
+addr_expr : __mem,
+function_decl __gthread_active_p: __mem,
+integer_cst 0: __mem,
+cleanup_point_expr : __mem,
expr_stmt : __mem,
call_expr : __mem,
addr_expr : __mem,
@@ -2386,6 +2440,16 @@ integer_cst 64: aptr,
integer_cst 0: aptr,
function_decl func3:
if_stmt : aptr,
+ne_expr : aptr,
+parm_decl aptr: aptr,
+pointer_type : aptr,
+integer_type : aptr,
+type_decl int: aptr,
+integer_cst 32: aptr,
+integer_cst -2147483648: aptr,
+integer_cst 2147483647: aptr,
+integer_cst 64: aptr,
+integer_cst 0: aptr,
cleanup_point_expr :
expr_stmt :
convert_expr :
@@ -2448,6 +2512,18 @@ integer_cst 0: sptr,
function_decl func6:
statement_list : sptr,
if_stmt : sptr,
+eq_expr : sptr,
+parm_decl sptr: sptr,
+pointer_type : sptr,
+record_type : sptr,
+type_decl Struct1: sptr,
+field_decl str: sptr,
+integer_cst 64: sptr,
+field_decl num: sptr,
+integer_cst 32: sptr,
+type_decl Struct1: sptr,
+integer_cst 64: sptr,
+integer_cst 0: sptr,
return_expr : sptr,
cleanup_point_expr : sptr,
expr_stmt :
@@ -2471,6 +2547,19 @@ integer_cst 0:
function_decl func7:
statement_list : sptr,
if_stmt : sptr,
+eq_expr : sptr,
+nop_expr : sptr,
+parm_decl sptr: sptr,
+pointer_type : sptr,
+record_type : sptr,
+type_decl Struct1: sptr,
+field_decl str: sptr,
+integer_cst 64: sptr,
+field_decl num: sptr,
+integer_cst 32: sptr,
+type_decl Struct1: sptr,
+integer_cst 64: sptr,
+integer_cst 0: sptr,
return_expr : sptr,
cleanup_point_expr : sptr,
expr_stmt :
@@ -2950,6 +3039,80 @@ integer_cst : __s,
statement_list : __s,
if_stmt : __s,
cleanup_point_expr : __s,
+lt_expr : __s,
+minus_expr : __s,
+call_expr : __s,
+addr_expr : __s,
+function_decl max_size: __s,
+parm_decl this: __s,
+pointer_type : __s,
+record_type : __s,
+type_decl vector: __s,
+field_decl : __s,
+integer_cst 192: __s,
+using_decl _M_allocate: __s,
+using_decl _M_deallocate: __s,
+using_decl _M_impl: __s,
+using_decl _M_get_Tp_allocator: __s,
+using_decl get_allocator: __s,
+type_decl vector: __s,
+type_decl _Alloc_value_type: __s,
+type_decl _Base: __s,
+type_decl _Tp_alloc_type: __s,
+type_decl _Alloc_traits: __s,
+type_decl value_type: __s,
+type_decl pointer: __s,
+type_decl const_pointer: __s,
+type_decl reference: __s,
+type_decl const_reference: __s,
+type_decl iterator: __s,
+type_decl const_iterator: __s,
+type_decl const_reverse_iterator: __s,
+type_decl reverse_iterator: __s,
+type_decl size_type: __s,
+type_decl difference_type: __s,
+type_decl allocator_type: __s,
+integer_cst 64: __s,
+call_expr : __s,
+addr_expr : __s,
+function_decl size: __s,
+parm_decl this: __s,
+pointer_type : __s,
+record_type : __s,
+type_decl vector: __s,
+field_decl : __s,
+integer_cst 192: __s,
+using_decl _M_allocate: __s,
+using_decl _M_deallocate: __s,
+using_decl _M_impl: __s,
+using_decl _M_get_Tp_allocator: __s,
+using_decl get_allocator: __s,
+type_decl vector: __s,
+type_decl _Alloc_value_type: __s,
+type_decl _Base: __s,
+type_decl _Tp_alloc_type: __s,
+type_decl _Alloc_traits: __s,
+type_decl value_type: __s,
+type_decl pointer: __s,
+type_decl const_pointer: __s,
+type_decl reference: __s,
+type_decl const_reference: __s,
+type_decl iterator: __s,
+type_decl const_iterator: __s,
+type_decl const_reverse_iterator: __s,
+type_decl reverse_iterator: __s,
+type_decl size_type: __s,
+type_decl difference_type: __s,
+type_decl allocator_type: __s,
+integer_cst 64: __s,
+parm_decl __n: __s,
+integer_type : __s,
+type_decl size_type: __s,
+integer_cst 64: __s,
+integer_cst 0: __s,
+integer_cst : __s,
+integer_cst 64: __s,
+cleanup_point_expr : __s,
expr_stmt : __s,
call_expr : __s,
addr_expr : __s,
@@ -3362,6 +3525,20 @@ function_decl _M_deallocate:
bind_expr : __p,
type_decl _Tr: __p,
if_stmt : __p,
+ne_expr : __p,
+parm_decl __p: __p,
+pointer_type : __p,
+type_decl pointer: __p,
+pointer_type : __p,
+record_type : __p,
+type_decl Struct1: __p,
+field_decl str: __p,
+integer_cst 64: __p,
+field_decl num: __p,
+integer_cst 32: __p,
+type_decl Struct1: __p,
+integer_cst 64: __p,
+integer_cst 0: __p,
cleanup_point_expr :
expr_stmt :
call_expr :
@@ -3799,6 +3976,32 @@ function_decl allocate:
statement_list : ,
if_stmt : ,
cleanup_point_expr : ,
+lt_expr : ,
+call_expr : ,
+addr_expr : ,
+function_decl max_size: ,
+parm_decl this: ,
+pointer_type : ,
+record_type : ,
+type_decl new_allocator: ,
+template_decl rebind: ,
+type_decl new_allocator: ,
+type_decl size_type: ,
+type_decl difference_type: ,
+type_decl pointer: ,
+type_decl const_pointer: ,
+type_decl reference: ,
+type_decl const_reference: ,
+type_decl value_type: ,
+integer_cst 64: ,
+parm_decl __n: ,
+integer_type : ,
+type_decl size_type: ,
+integer_cst 64: ,
+integer_cst 0: ,
+integer_cst : ,
+integer_cst 64: ,
+cleanup_point_expr : ,
expr_stmt : ,
call_expr : ,
addr_expr : ,
@@ -3957,6 +4160,10 @@ statement_list : __first, __last, __result,
decl_expr : __first, __last, __result,
var_decl _Num: __first, __last, __result,
if_stmt : __first, __last, __result,
+ne_expr : __first, __last, __result,
+nop_expr : __first, __last, __result,
+var_decl _Num: __first, __last, __result,
+integer_cst 0: __first, __last, __result,
cleanup_point_expr : __first, __last, __result,
expr_stmt : __first, __last, __result,
convert_expr : __first, __last, __result,
@@ -4307,6 +4514,10 @@ statement_list : __first, __last, __result,
decl_expr : __first, __last, __result,
var_decl _Num: __first, __last, __result,
if_stmt : __first, __last, __result,
+ne_expr : __first, __last, __result,
+nop_expr : __first, __last, __result,
+var_decl _Num: __first, __last, __result,
+integer_cst 0: __first, __last, __result,
cleanup_point_expr : __first, __last, __result,
expr_stmt : __first, __last, __result,
convert_expr : __first, __last, __result,
diff --git a/test/test8-03.txt b/test/test8-03.txt
index 3426b01..058b806 100644
--- a/test/test8-03.txt
+++ b/test/test8-03.txt
@@ -1,6 +1,16 @@
function_decl func1:
statement_list : ptr1,
if_stmt : ptr1,
+eq_expr : ptr1,
+parm_decl ptr1: ptr1,
+pointer_type : ptr1,
+integer_type : ptr1,
+type_decl int: ptr1,
+integer_cst 32: ptr1,
+integer_cst -2147483648: ptr1,
+integer_cst 2147483647: ptr1,
+integer_cst 64: ptr1,
+integer_cst 0: ptr1,
return_expr : ptr1,
cleanup_point_expr : ptr1,
expr_stmt :
@@ -19,6 +29,16 @@ integer_cst 100:
function_decl func2:
statement_list : ptr2,
if_stmt : ptr2,
+eq_expr : ptr2,
+parm_decl ptr2: ptr2,
+pointer_type : ptr2,
+integer_type : ptr2,
+type_decl int: ptr2,
+integer_cst 32: ptr2,
+integer_cst -2147483648: ptr2,
+integer_cst 2147483647: ptr2,
+integer_cst 64: ptr2,
+integer_cst 0: ptr2,
cleanup_point_expr : ptr2,
expr_stmt : ptr2,
convert_expr : ptr2,
@@ -58,6 +78,16 @@ integer_cst 200: ptr2,
function_decl func3:
statement_list : ptr3,
if_stmt : ptr3,
+ne_expr : ptr3,
+parm_decl ptr3: ptr3,
+pointer_type : ptr3,
+integer_type : ptr3,
+type_decl int: ptr3,
+integer_cst 32: ptr3,
+integer_cst -2147483648: ptr3,
+integer_cst 2147483647: ptr3,
+integer_cst 64: ptr3,
+integer_cst 0: ptr3,
return_expr :
cleanup_point_expr : ptr3,
expr_stmt : ptr3,
@@ -80,6 +110,16 @@ integer_cst 300: ptr3,
function_decl func4:
statement_list : ptr4,
if_stmt : ptr4,
+ne_expr : ptr4,
+parm_decl ptr4: ptr4,
+pointer_type : ptr4,
+integer_type : ptr4,
+type_decl int: ptr4,
+integer_cst 32: ptr4,
+integer_cst -2147483648: ptr4,
+integer_cst 2147483647: ptr4,
+integer_cst 64: ptr4,
+integer_cst 0: ptr4,
cleanup_point_expr :
expr_stmt :
convert_expr :
@@ -116,6 +156,16 @@ integer_cst 400:
function_decl func5:
statement_list : ptr5,
if_stmt : ptr5,
+eq_expr : ptr5,
+parm_decl ptr5: ptr5,
+pointer_type : ptr5,
+integer_type : ptr5,
+type_decl int: ptr5,
+integer_cst 32: ptr5,
+integer_cst -2147483648: ptr5,
+integer_cst 2147483647: ptr5,
+integer_cst 64: ptr5,
+integer_cst 0: ptr5,
return_expr : ptr5,
cleanup_point_expr :
expr_stmt :
@@ -148,7 +198,27 @@ integer_cst 500:
function_decl func6:
statement_list : ptr6,
if_stmt : ptr6,
+ne_expr : ptr6,
+parm_decl ptr6: ptr6,
+pointer_type : ptr6,
+integer_type : ptr6,
+type_decl int: ptr6,
+integer_cst 32: ptr6,
+integer_cst -2147483648: ptr6,
+integer_cst 2147483647: ptr6,
+integer_cst 64: ptr6,
+integer_cst 0: ptr6,
if_stmt :
+eq_expr :
+parm_decl ptr6:
+pointer_type :
+integer_type :
+type_decl int:
+integer_cst 32:
+integer_cst -2147483648:
+integer_cst 2147483647:
+integer_cst 64:
+integer_cst 0:
return_expr :
cleanup_point_expr : ptr6,
expr_stmt : ptr6,
@@ -171,9 +241,29 @@ integer_cst 600: ptr6,
function_decl func7:
statement_list : ptr7,
if_stmt : ptr7,
+eq_expr : ptr7,
+parm_decl ptr7: ptr7,
+pointer_type : ptr7,
+integer_type : ptr7,
+type_decl int: ptr7,
+integer_cst 32: ptr7,
+integer_cst -2147483648: ptr7,
+integer_cst 2147483647: ptr7,
+integer_cst 64: ptr7,
+integer_cst 0: ptr7,
return_expr : ptr7,
statement_list :
if_stmt :
+eq_expr :
+parm_decl ptr7:
+pointer_type :
+integer_type :
+type_decl int:
+integer_cst 32:
+integer_cst -2147483648:
+integer_cst 2147483647:
+integer_cst 64:
+integer_cst 0:
return_expr :
cleanup_point_expr :
expr_stmt :
diff --git a/test/test9-01.txt b/test/test9-01.txt
new file mode 100644
index 0000000..cc4a7ae
--- /dev/null
+++ b/test/test9-01.txt
@@ -0,0 +1,1521 @@
+function_decl func1 test9.cpp 5: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 test9.cpp 1:7 - type name
+ - isAutogenerated: 1
+ field_decl k test9.cpp 3:9 - field
+ - signed
+ integer_cst 32 - decl size
+ type_decl Object1 test9.cpp 2:1 - field
+ - isAutogenerated: 1
+ tree_list - arg types
+ pointer_type - value
+ record_type - nested type
+ type_decl Object1 test9.cpp 1:7 - type name
+ - isAutogenerated: 1
+ field_decl k test9.cpp 3:9 - field
+ - signed
+ integer_cst 32 - decl size
+ type_decl Object1 test9.cpp 2:1 - field
+ - isAutogenerated: 1
+ tree_list - chain
+ pointer_type - value
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ tree_list - chain
+ pointer_type - value
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ tree_list - chain
+ void_type - value
+ type_decl void <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ result_decl test9.cpp 6:5 - function result
+ - isAutogenerated: 1
+ void_type - result type
+ type_decl void <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ parm_decl this test9.cpp 5:36 - argument
+ - isAutogenerated: 1
+ pointer_type - decl type
+ record_type - nested type
+ type_decl Object1 test9.cpp 1:7 - type name
+ - isAutogenerated: 1
+ field_decl k test9.cpp 3:9 - field
+ - signed
+ integer_cst 32 - decl size
+ type_decl Object1 test9.cpp 2:1 - field
+ - isAutogenerated: 1
+ integer_cst 64 - parm size
+ - isUsed: 1
+ parm_decl ptr1 test9.cpp 5:21 - argument
+ pointer_type - decl type
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ integer_cst 64 - parm size
+ - isUsed: 1
+ parm_decl ptr2 test9.cpp 5:32 - argument
+ pointer_type - decl type
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ integer_cst 64 - parm size
+ statement_list - code
+ if_stmt test9.cpp 7:9 - statement
+ truth_orif_expr test9.cpp 7:19 - condition
+ eq_expr test9.cpp 7:14 - operand
+ - isUsed: 1
+ parm_decl ptr1 test9.cpp 5:21 - operand
+ pointer_type - decl type
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ integer_cst 64 - parm size
+ integer_cst 0 - operand
+ eq_expr test9.cpp 7:23 - operand
+ - isUsed: 1
+ parm_decl ptr2 test9.cpp 5:32 - operand
+ pointer_type - decl type
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ integer_cst 64 - parm size
+ integer_cst 0 - operand
+ return_expr test9.cpp 9:13 - then
+ cleanup_point_expr test9.cpp 12:20 - statement
+ expr_stmt test9.cpp 12:20 - operand
+ convert_expr - expresssion
+ modify_expr - operand
+ indirect_ref - operand
+ - isUsed: 1
+ parm_decl ptr1 test9.cpp 5:21 - ref
+ pointer_type - decl type
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ integer_cst 64 - parm size
+ integer_cst 200 - operand
+ cleanup_point_expr test9.cpp 13:20 - statement
+ expr_stmt test9.cpp 13:20 - operand
+ convert_expr - expresssion
+ modify_expr - operand
+ indirect_ref - operand
+ - isUsed: 1
+ parm_decl ptr2 test9.cpp 5:32 - ref
+ pointer_type - decl type
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ integer_cst 64 - parm size
+ integer_cst 300 - operand
+function_decl func2 test9.cpp 16: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 test9.cpp 1:7 - type name
+ - isAutogenerated: 1
+ field_decl k test9.cpp 3:9 - field
+ - signed
+ integer_cst 32 - decl size
+ type_decl Object1 test9.cpp 2:1 - field
+ - isAutogenerated: 1
+ tree_list - arg types
+ pointer_type - value
+ record_type - nested type
+ type_decl Object1 test9.cpp 1:7 - type name
+ - isAutogenerated: 1
+ field_decl k test9.cpp 3:9 - field
+ - signed
+ integer_cst 32 - decl size
+ type_decl Object1 test9.cpp 2:1 - field
+ - isAutogenerated: 1
+ tree_list - chain
+ pointer_type - value
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ tree_list - chain
+ pointer_type - value
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ tree_list - chain
+ void_type - value
+ type_decl void <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ result_decl test9.cpp 17:5 - function result
+ - isAutogenerated: 1
+ void_type - result type
+ type_decl void <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ parm_decl this test9.cpp 16:36 - argument
+ - isAutogenerated: 1
+ pointer_type - decl type
+ record_type - nested type
+ type_decl Object1 test9.cpp 1:7 - type name
+ - isAutogenerated: 1
+ field_decl k test9.cpp 3:9 - field
+ - signed
+ integer_cst 32 - decl size
+ type_decl Object1 test9.cpp 2:1 - field
+ - isAutogenerated: 1
+ integer_cst 64 - parm size
+ - isUsed: 1
+ parm_decl ptr1 test9.cpp 16:21 - argument
+ pointer_type - decl type
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ integer_cst 64 - parm size
+ - isUsed: 1
+ parm_decl ptr2 test9.cpp 16:32 - argument
+ pointer_type - decl type
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ integer_cst 64 - parm size
+ statement_list - code
+ if_stmt test9.cpp 18:9 - statement
+ truth_orif_expr test9.cpp 18:19 - condition
+ eq_expr test9.cpp 18:14 - operand
+ - isUsed: 1
+ parm_decl ptr1 test9.cpp 16:21 - operand
+ pointer_type - decl type
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ integer_cst 64 - parm size
+ integer_cst 0 - operand
+ eq_expr test9.cpp 18:23 - operand
+ - isUsed: 1
+ parm_decl ptr2 test9.cpp 16:32 - operand
+ pointer_type - decl type
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ integer_cst 64 - parm size
+ integer_cst 0 - operand
+ return_expr test9.cpp 20:13 - then
+ cleanup_point_expr test9.cpp 24:24 - else
+ expr_stmt test9.cpp 24:24 - operand
+ convert_expr - expresssion
+ modify_expr - operand
+ indirect_ref - operand
+ - isUsed: 1
+ parm_decl ptr1 test9.cpp 16:21 - ref
+ pointer_type - decl type
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ integer_cst 64 - parm size
+ integer_cst 100 - operand
+ cleanup_point_expr test9.cpp 27:20 - statement
+ expr_stmt test9.cpp 27:20 - operand
+ convert_expr - expresssion
+ modify_expr - operand
+ indirect_ref - operand
+ - isUsed: 1
+ parm_decl ptr1 test9.cpp 16:21 - ref
+ pointer_type - decl type
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ integer_cst 64 - parm size
+ integer_cst 200 - operand
+ cleanup_point_expr test9.cpp 28:20 - statement
+ expr_stmt test9.cpp 28:20 - operand
+ convert_expr - expresssion
+ modify_expr - operand
+ indirect_ref - operand
+ - isUsed: 1
+ parm_decl ptr2 test9.cpp 16:32 - ref
+ pointer_type - decl type
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ integer_cst 64 - parm size
+ integer_cst 300 - operand
+function_decl func3 test9.cpp 31: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 test9.cpp 1:7 - type name
+ - isAutogenerated: 1
+ field_decl k test9.cpp 3:9 - field
+ - signed
+ integer_cst 32 - decl size
+ type_decl Object1 test9.cpp 2:1 - field
+ - isAutogenerated: 1
+ tree_list - arg types
+ pointer_type - value
+ record_type - nested type
+ type_decl Object1 test9.cpp 1:7 - type name
+ - isAutogenerated: 1
+ field_decl k test9.cpp 3:9 - field
+ - signed
+ integer_cst 32 - decl size
+ type_decl Object1 test9.cpp 2:1 - field
+ - isAutogenerated: 1
+ tree_list - chain
+ pointer_type - value
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ tree_list - chain
+ pointer_type - value
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ tree_list - chain
+ void_type - value
+ type_decl void <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ result_decl test9.cpp 32:5 - function result
+ - isAutogenerated: 1
+ void_type - result type
+ type_decl void <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ parm_decl this test9.cpp 31:36 - argument
+ - isAutogenerated: 1
+ pointer_type - decl type
+ record_type - nested type
+ type_decl Object1 test9.cpp 1:7 - type name
+ - isAutogenerated: 1
+ field_decl k test9.cpp 3:9 - field
+ - signed
+ integer_cst 32 - decl size
+ type_decl Object1 test9.cpp 2:1 - field
+ - isAutogenerated: 1
+ integer_cst 64 - parm size
+ - isUsed: 1
+ parm_decl ptr1 test9.cpp 31:21 - argument
+ pointer_type - decl type
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ integer_cst 64 - parm size
+ - isUsed: 1
+ parm_decl ptr2 test9.cpp 31:32 - argument
+ pointer_type - decl type
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ integer_cst 64 - parm size
+ statement_list - code
+ if_stmt test9.cpp 33:9 - statement
+ truth_orif_expr test9.cpp 33:18 - condition
+ ne_expr - operand
+ - isUsed: 1
+ parm_decl ptr1 test9.cpp 31:21 - operand
+ pointer_type - decl type
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ integer_cst 64 - parm size
+ integer_cst 0 - operand
+ ne_expr - operand
+ - isUsed: 1
+ parm_decl ptr2 test9.cpp 31:32 - operand
+ pointer_type - decl type
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ integer_cst 64 - parm size
+ integer_cst 0 - operand
+ return_expr test9.cpp 35:13 - then
+ cleanup_point_expr test9.cpp 38:20 - statement
+ expr_stmt test9.cpp 38:20 - operand
+ convert_expr - expresssion
+ modify_expr - operand
+ indirect_ref - operand
+ - isUsed: 1
+ parm_decl ptr1 test9.cpp 31:21 - ref
+ pointer_type - decl type
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ integer_cst 64 - parm size
+ integer_cst 200 - operand
+ cleanup_point_expr test9.cpp 39:20 - statement
+ expr_stmt test9.cpp 39:20 - operand
+ convert_expr - expresssion
+ modify_expr - operand
+ indirect_ref - operand
+ - isUsed: 1
+ parm_decl ptr2 test9.cpp 31:32 - ref
+ pointer_type - decl type
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ integer_cst 64 - parm size
+ integer_cst 300 - operand
+function_decl func4 test9.cpp 42: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 test9.cpp 1:7 - type name
+ - isAutogenerated: 1
+ field_decl k test9.cpp 3:9 - field
+ - signed
+ integer_cst 32 - decl size
+ type_decl Object1 test9.cpp 2:1 - field
+ - isAutogenerated: 1
+ tree_list - arg types
+ pointer_type - value
+ record_type - nested type
+ type_decl Object1 test9.cpp 1:7 - type name
+ - isAutogenerated: 1
+ field_decl k test9.cpp 3:9 - field
+ - signed
+ integer_cst 32 - decl size
+ type_decl Object1 test9.cpp 2:1 - field
+ - isAutogenerated: 1
+ tree_list - chain
+ pointer_type - value
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ tree_list - chain
+ pointer_type - value
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ tree_list - chain
+ void_type - value
+ type_decl void <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ result_decl test9.cpp 43:5 - function result
+ - isAutogenerated: 1
+ void_type - result type
+ type_decl void <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ parm_decl this test9.cpp 42:36 - argument
+ - isAutogenerated: 1
+ pointer_type - decl type
+ record_type - nested type
+ type_decl Object1 test9.cpp 1:7 - type name
+ - isAutogenerated: 1
+ field_decl k test9.cpp 3:9 - field
+ - signed
+ integer_cst 32 - decl size
+ type_decl Object1 test9.cpp 2:1 - field
+ - isAutogenerated: 1
+ integer_cst 64 - parm size
+ - isUsed: 1
+ parm_decl ptr1 test9.cpp 42:21 - argument
+ pointer_type - decl type
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ integer_cst 64 - parm size
+ - isUsed: 1
+ parm_decl ptr2 test9.cpp 42:32 - argument
+ pointer_type - decl type
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ integer_cst 64 - parm size
+ statement_list - code
+ if_stmt test9.cpp 44:9 - statement
+ truth_orif_expr test9.cpp 44:18 - condition
+ ne_expr - operand
+ - isUsed: 1
+ parm_decl ptr1 test9.cpp 42:21 - operand
+ pointer_type - decl type
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ integer_cst 64 - parm size
+ integer_cst 0 - operand
+ ne_expr - operand
+ - isUsed: 1
+ parm_decl ptr2 test9.cpp 42:32 - operand
+ pointer_type - decl type
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ integer_cst 64 - parm size
+ integer_cst 0 - operand
+ return_expr test9.cpp 46:13 - then
+ cleanup_point_expr test9.cpp 50:24 - else
+ expr_stmt test9.cpp 50:24 - operand
+ convert_expr - expresssion
+ modify_expr - operand
+ indirect_ref - operand
+ - isUsed: 1
+ parm_decl ptr1 test9.cpp 42:21 - ref
+ pointer_type - decl type
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ integer_cst 64 - parm size
+ integer_cst 100 - operand
+ cleanup_point_expr test9.cpp 53:20 - statement
+ expr_stmt test9.cpp 53:20 - operand
+ convert_expr - expresssion
+ modify_expr - operand
+ indirect_ref - operand
+ - isUsed: 1
+ parm_decl ptr1 test9.cpp 42:21 - ref
+ pointer_type - decl type
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ integer_cst 64 - parm size
+ integer_cst 200 - operand
+ cleanup_point_expr test9.cpp 54:20 - statement
+ expr_stmt test9.cpp 54:20 - operand
+ convert_expr - expresssion
+ modify_expr - operand
+ indirect_ref - operand
+ - isUsed: 1
+ parm_decl ptr2 test9.cpp 42:32 - ref
+ pointer_type - decl type
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ integer_cst 64 - parm size
+ integer_cst 300 - operand
+function_decl func5 test9.cpp 57: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 test9.cpp 1:7 - type name
+ - isAutogenerated: 1
+ field_decl k test9.cpp 3:9 - field
+ - signed
+ integer_cst 32 - decl size
+ type_decl Object1 test9.cpp 2:1 - field
+ - isAutogenerated: 1
+ tree_list - arg types
+ pointer_type - value
+ record_type - nested type
+ type_decl Object1 test9.cpp 1:7 - type name
+ - isAutogenerated: 1
+ field_decl k test9.cpp 3:9 - field
+ - signed
+ integer_cst 32 - decl size
+ type_decl Object1 test9.cpp 2:1 - field
+ - isAutogenerated: 1
+ tree_list - chain
+ pointer_type - value
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ tree_list - chain
+ pointer_type - value
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ tree_list - chain
+ void_type - value
+ type_decl void <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ result_decl test9.cpp 58:5 - function result
+ - isAutogenerated: 1
+ void_type - result type
+ type_decl void <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ parm_decl this test9.cpp 57:36 - argument
+ - isAutogenerated: 1
+ pointer_type - decl type
+ record_type - nested type
+ type_decl Object1 test9.cpp 1:7 - type name
+ - isAutogenerated: 1
+ field_decl k test9.cpp 3:9 - field
+ - signed
+ integer_cst 32 - decl size
+ type_decl Object1 test9.cpp 2:1 - field
+ - isAutogenerated: 1
+ integer_cst 64 - parm size
+ - isUsed: 1
+ parm_decl ptr1 test9.cpp 57:21 - argument
+ pointer_type - decl type
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ integer_cst 64 - parm size
+ - isUsed: 1
+ parm_decl ptr2 test9.cpp 57:32 - argument
+ pointer_type - decl type
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ integer_cst 64 - parm size
+ statement_list - code
+ if_stmt test9.cpp 59:9 - statement
+ truth_orif_expr test9.cpp 59:19 - condition
+ eq_expr test9.cpp 59:14 - operand
+ - isUsed: 1
+ parm_decl ptr1 test9.cpp 57:21 - operand
+ pointer_type - decl type
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ integer_cst 64 - parm size
+ integer_cst 0 - operand
+ ne_expr - operand
+ - isUsed: 1
+ parm_decl ptr2 test9.cpp 57:32 - operand
+ pointer_type - decl type
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ integer_cst 64 - parm size
+ integer_cst 0 - operand
+ return_expr test9.cpp 61:13 - then
+ cleanup_point_expr test9.cpp 64:20 - statement
+ expr_stmt test9.cpp 64:20 - operand
+ convert_expr - expresssion
+ modify_expr - operand
+ indirect_ref - operand
+ - isUsed: 1
+ parm_decl ptr1 test9.cpp 57:21 - ref
+ pointer_type - decl type
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ integer_cst 64 - parm size
+ integer_cst 200 - operand
+ cleanup_point_expr test9.cpp 65:20 - statement
+ expr_stmt test9.cpp 65:20 - operand
+ convert_expr - expresssion
+ modify_expr - operand
+ indirect_ref - operand
+ - isUsed: 1
+ parm_decl ptr2 test9.cpp 57:32 - ref
+ pointer_type - decl type
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ integer_cst 64 - parm size
+ integer_cst 300 - operand
+function_decl func6 test9.cpp 68: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 test9.cpp 1:7 - type name
+ - isAutogenerated: 1
+ field_decl k test9.cpp 3:9 - field
+ - signed
+ integer_cst 32 - decl size
+ type_decl Object1 test9.cpp 2:1 - field
+ - isAutogenerated: 1
+ tree_list - arg types
+ pointer_type - value
+ record_type - nested type
+ type_decl Object1 test9.cpp 1:7 - type name
+ - isAutogenerated: 1
+ field_decl k test9.cpp 3:9 - field
+ - signed
+ integer_cst 32 - decl size
+ type_decl Object1 test9.cpp 2:1 - field
+ - isAutogenerated: 1
+ tree_list - chain
+ pointer_type - value
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ tree_list - chain
+ pointer_type - value
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ tree_list - chain
+ void_type - value
+ type_decl void <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ result_decl test9.cpp 69:5 - function result
+ - isAutogenerated: 1
+ void_type - result type
+ type_decl void <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ parm_decl this test9.cpp 68:36 - argument
+ - isAutogenerated: 1
+ pointer_type - decl type
+ record_type - nested type
+ type_decl Object1 test9.cpp 1:7 - type name
+ - isAutogenerated: 1
+ field_decl k test9.cpp 3:9 - field
+ - signed
+ integer_cst 32 - decl size
+ type_decl Object1 test9.cpp 2:1 - field
+ - isAutogenerated: 1
+ integer_cst 64 - parm size
+ - isUsed: 1
+ parm_decl ptr1 test9.cpp 68:21 - argument
+ pointer_type - decl type
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ integer_cst 64 - parm size
+ - isUsed: 1
+ parm_decl ptr2 test9.cpp 68:32 - argument
+ pointer_type - decl type
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ integer_cst 64 - parm size
+ statement_list - code
+ if_stmt test9.cpp 70:9 - statement
+ truth_orif_expr test9.cpp 70:19 - condition
+ eq_expr test9.cpp 70:14 - operand
+ - isUsed: 1
+ parm_decl ptr1 test9.cpp 68:21 - operand
+ pointer_type - decl type
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ integer_cst 64 - parm size
+ integer_cst 0 - operand
+ ne_expr - operand
+ - isUsed: 1
+ parm_decl ptr2 test9.cpp 68:32 - operand
+ pointer_type - decl type
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ integer_cst 64 - parm size
+ integer_cst 0 - operand
+ return_expr test9.cpp 72:13 - then
+ cleanup_point_expr test9.cpp 76:24 - else
+ expr_stmt test9.cpp 76:24 - operand
+ convert_expr - expresssion
+ modify_expr - operand
+ indirect_ref - operand
+ - isUsed: 1
+ parm_decl ptr1 test9.cpp 68:21 - ref
+ pointer_type - decl type
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ integer_cst 64 - parm size
+ integer_cst 100 - operand
+ cleanup_point_expr test9.cpp 79:20 - statement
+ expr_stmt test9.cpp 79:20 - operand
+ convert_expr - expresssion
+ modify_expr - operand
+ indirect_ref - operand
+ - isUsed: 1
+ parm_decl ptr1 test9.cpp 68:21 - ref
+ pointer_type - decl type
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ integer_cst 64 - parm size
+ integer_cst 200 - operand
+ cleanup_point_expr test9.cpp 80:20 - statement
+ expr_stmt test9.cpp 80:20 - operand
+ convert_expr - expresssion
+ modify_expr - operand
+ indirect_ref - operand
+ - isUsed: 1
+ parm_decl ptr2 test9.cpp 68:32 - ref
+ pointer_type - decl type
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ integer_cst 64 - parm size
+ integer_cst 300 - operand
+function_decl func7 test9.cpp 83: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 test9.cpp 1:7 - type name
+ - isAutogenerated: 1
+ field_decl k test9.cpp 3:9 - field
+ - signed
+ integer_cst 32 - decl size
+ type_decl Object1 test9.cpp 2:1 - field
+ - isAutogenerated: 1
+ tree_list - arg types
+ pointer_type - value
+ record_type - nested type
+ type_decl Object1 test9.cpp 1:7 - type name
+ - isAutogenerated: 1
+ field_decl k test9.cpp 3:9 - field
+ - signed
+ integer_cst 32 - decl size
+ type_decl Object1 test9.cpp 2:1 - field
+ - isAutogenerated: 1
+ tree_list - chain
+ pointer_type - value
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ tree_list - chain
+ pointer_type - value
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ tree_list - chain
+ void_type - value
+ type_decl void <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ result_decl test9.cpp 84:5 - function result
+ - isAutogenerated: 1
+ void_type - result type
+ type_decl void <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ parm_decl this test9.cpp 83:36 - argument
+ - isAutogenerated: 1
+ pointer_type - decl type
+ record_type - nested type
+ type_decl Object1 test9.cpp 1:7 - type name
+ - isAutogenerated: 1
+ field_decl k test9.cpp 3:9 - field
+ - signed
+ integer_cst 32 - decl size
+ type_decl Object1 test9.cpp 2:1 - field
+ - isAutogenerated: 1
+ integer_cst 64 - parm size
+ - isUsed: 1
+ parm_decl ptr1 test9.cpp 83:21 - argument
+ pointer_type - decl type
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ integer_cst 64 - parm size
+ - isUsed: 1
+ parm_decl ptr2 test9.cpp 83:32 - argument
+ pointer_type - decl type
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ integer_cst 64 - parm size
+ statement_list - code
+ if_stmt test9.cpp 85:9 - statement
+ truth_orif_expr test9.cpp 85:18 - condition
+ ne_expr - operand
+ - isUsed: 1
+ parm_decl ptr1 test9.cpp 83:21 - operand
+ pointer_type - decl type
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ integer_cst 64 - parm size
+ integer_cst 0 - operand
+ eq_expr test9.cpp 85:22 - operand
+ - isUsed: 1
+ parm_decl ptr2 test9.cpp 83:32 - operand
+ pointer_type - decl type
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ integer_cst 64 - parm size
+ integer_cst 0 - operand
+ return_expr test9.cpp 87:13 - then
+ cleanup_point_expr test9.cpp 91:24 - else
+ expr_stmt test9.cpp 91:24 - operand
+ convert_expr - expresssion
+ modify_expr - operand
+ indirect_ref - operand
+ - isUsed: 1
+ parm_decl ptr1 test9.cpp 83:21 - ref
+ pointer_type - decl type
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ integer_cst 64 - parm size
+ integer_cst 100 - operand
+ cleanup_point_expr test9.cpp 94:20 - statement
+ expr_stmt test9.cpp 94:20 - operand
+ convert_expr - expresssion
+ modify_expr - operand
+ indirect_ref - operand
+ - isUsed: 1
+ parm_decl ptr1 test9.cpp 83:21 - ref
+ pointer_type - decl type
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ integer_cst 64 - parm size
+ integer_cst 200 - operand
+ cleanup_point_expr test9.cpp 95:20 - statement
+ expr_stmt test9.cpp 95:20 - operand
+ convert_expr - expresssion
+ modify_expr - operand
+ indirect_ref - operand
+ - isUsed: 1
+ parm_decl ptr2 test9.cpp 83:32 - ref
+ pointer_type - decl type
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ integer_cst 64 - parm size
+ integer_cst 300 - operand
+function_decl func8 test9.cpp 98: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 test9.cpp 1:7 - type name
+ - isAutogenerated: 1
+ field_decl k test9.cpp 3:9 - field
+ - signed
+ integer_cst 32 - decl size
+ type_decl Object1 test9.cpp 2:1 - field
+ - isAutogenerated: 1
+ tree_list - arg types
+ pointer_type - value
+ record_type - nested type
+ type_decl Object1 test9.cpp 1:7 - type name
+ - isAutogenerated: 1
+ field_decl k test9.cpp 3:9 - field
+ - signed
+ integer_cst 32 - decl size
+ type_decl Object1 test9.cpp 2:1 - field
+ - isAutogenerated: 1
+ tree_list - chain
+ pointer_type - value
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ tree_list - chain
+ pointer_type - value
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ tree_list - chain
+ void_type - value
+ type_decl void <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ result_decl test9.cpp 99:5 - function result
+ - isAutogenerated: 1
+ void_type - result type
+ type_decl void <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ parm_decl this test9.cpp 98:36 - argument
+ - isAutogenerated: 1
+ pointer_type - decl type
+ record_type - nested type
+ type_decl Object1 test9.cpp 1:7 - type name
+ - isAutogenerated: 1
+ field_decl k test9.cpp 3:9 - field
+ - signed
+ integer_cst 32 - decl size
+ type_decl Object1 test9.cpp 2:1 - field
+ - isAutogenerated: 1
+ integer_cst 64 - parm size
+ - isUsed: 1
+ parm_decl ptr1 test9.cpp 98:21 - argument
+ pointer_type - decl type
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ integer_cst 64 - parm size
+ - isUsed: 1
+ parm_decl ptr2 test9.cpp 98:32 - argument
+ pointer_type - decl type
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ integer_cst 64 - parm size
+ statement_list - code
+ if_stmt test9.cpp 100:9 - statement
+ truth_andif_expr test9.cpp 100:19 - condition
+ eq_expr test9.cpp 100:14 - operand
+ - isUsed: 1
+ parm_decl ptr1 test9.cpp 98:21 - operand
+ pointer_type - decl type
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ integer_cst 64 - parm size
+ integer_cst 0 - operand
+ eq_expr test9.cpp 100:23 - operand
+ - isUsed: 1
+ parm_decl ptr2 test9.cpp 98:32 - operand
+ pointer_type - decl type
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ integer_cst 64 - parm size
+ integer_cst 0 - operand
+ return_expr test9.cpp 102:13 - then
+ cleanup_point_expr test9.cpp 106:24 - else
+ expr_stmt test9.cpp 106:24 - operand
+ convert_expr - expresssion
+ modify_expr - operand
+ indirect_ref - operand
+ - isUsed: 1
+ parm_decl ptr1 test9.cpp 98:21 - ref
+ pointer_type - decl type
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ integer_cst 64 - parm size
+ integer_cst 100 - operand
+ cleanup_point_expr test9.cpp 109:20 - statement
+ expr_stmt test9.cpp 109:20 - operand
+ convert_expr - expresssion
+ modify_expr - operand
+ indirect_ref - operand
+ - isUsed: 1
+ parm_decl ptr1 test9.cpp 98:21 - ref
+ pointer_type - decl type
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ integer_cst 64 - parm size
+ integer_cst 200 - operand
+ cleanup_point_expr test9.cpp 110:20 - statement
+ expr_stmt test9.cpp 110:20 - operand
+ convert_expr - expresssion
+ modify_expr - operand
+ indirect_ref - operand
+ - isUsed: 1
+ parm_decl ptr2 test9.cpp 98:32 - ref
+ pointer_type - decl type
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ integer_cst 64 - parm size
+ integer_cst 300 - operand
+function_decl func9 test9.cpp 113: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 test9.cpp 1:7 - type name
+ - isAutogenerated: 1
+ field_decl k test9.cpp 3:9 - field
+ - signed
+ integer_cst 32 - decl size
+ type_decl Object1 test9.cpp 2:1 - field
+ - isAutogenerated: 1
+ tree_list - arg types
+ pointer_type - value
+ record_type - nested type
+ type_decl Object1 test9.cpp 1:7 - type name
+ - isAutogenerated: 1
+ field_decl k test9.cpp 3:9 - field
+ - signed
+ integer_cst 32 - decl size
+ type_decl Object1 test9.cpp 2:1 - field
+ - isAutogenerated: 1
+ tree_list - chain
+ pointer_type - value
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ tree_list - chain
+ pointer_type - value
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ tree_list - chain
+ void_type - value
+ type_decl void <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ result_decl test9.cpp 114:5 - function result
+ - isAutogenerated: 1
+ void_type - result type
+ type_decl void <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ parm_decl this test9.cpp 113:36 - argument
+ - isAutogenerated: 1
+ pointer_type - decl type
+ record_type - nested type
+ type_decl Object1 test9.cpp 1:7 - type name
+ - isAutogenerated: 1
+ field_decl k test9.cpp 3:9 - field
+ - signed
+ integer_cst 32 - decl size
+ type_decl Object1 test9.cpp 2:1 - field
+ - isAutogenerated: 1
+ integer_cst 64 - parm size
+ - isUsed: 1
+ parm_decl ptr1 test9.cpp 113:21 - argument
+ pointer_type - decl type
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ integer_cst 64 - parm size
+ - isUsed: 1
+ parm_decl ptr2 test9.cpp 113:32 - argument
+ pointer_type - decl type
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ integer_cst 64 - parm size
+ statement_list - code
+ if_stmt test9.cpp 115:9 - statement
+ truth_andif_expr test9.cpp 115:18 - condition
+ ne_expr - operand
+ - isUsed: 1
+ parm_decl ptr1 test9.cpp 113:21 - operand
+ pointer_type - decl type
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ integer_cst 64 - parm size
+ integer_cst 0 - operand
+ ne_expr - operand
+ - isUsed: 1
+ parm_decl ptr2 test9.cpp 113:32 - operand
+ pointer_type - decl type
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ integer_cst 64 - parm size
+ integer_cst 0 - operand
+ return_expr test9.cpp 117:13 - then
+ cleanup_point_expr test9.cpp 121:24 - else
+ expr_stmt test9.cpp 121:24 - operand
+ convert_expr - expresssion
+ modify_expr - operand
+ indirect_ref - operand
+ - isUsed: 1
+ parm_decl ptr1 test9.cpp 113:21 - ref
+ pointer_type - decl type
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ integer_cst 64 - parm size
+ integer_cst 100 - operand
+ cleanup_point_expr test9.cpp 124:20 - statement
+ expr_stmt test9.cpp 124:20 - operand
+ convert_expr - expresssion
+ modify_expr - operand
+ indirect_ref - operand
+ - isUsed: 1
+ parm_decl ptr1 test9.cpp 113:21 - ref
+ pointer_type - decl type
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ integer_cst 64 - parm size
+ integer_cst 200 - operand
+ cleanup_point_expr test9.cpp 125:20 - statement
+ expr_stmt test9.cpp 125:20 - operand
+ convert_expr - expresssion
+ modify_expr - operand
+ indirect_ref - operand
+ - isUsed: 1
+ parm_decl ptr2 test9.cpp 113:32 - ref
+ pointer_type - decl type
+ integer_type - nested type
+ - precisionBits: 32
+ - signed
+ type_decl int <built-in> 0:0 - type name
+ - isAutogenerated: 1
+ integer_cst 32 - type size
+ integer_cst -2147483648 - min value
+ integer_cst 2147483647 - max value
+ integer_cst 64 - parm size
+ integer_cst 300 - operand
diff --git a/test/test9-02.txt b/test/test9-02.txt
new file mode 100644
index 0000000..c5c7083
--- /dev/null
+++ b/test/test9-02.txt
@@ -0,0 +1,9 @@
+func1: pointer_type ptr1, pointer_type ptr2,
+func2: pointer_type ptr1, pointer_type ptr2,
+func3: pointer_type ptr1, pointer_type ptr2,
+func4: pointer_type ptr1, pointer_type ptr2,
+func5: pointer_type ptr1, pointer_type ptr2,
+func6: pointer_type ptr1, pointer_type ptr2,
+func7: pointer_type ptr1, pointer_type ptr2,
+func8: pointer_type ptr1, pointer_type ptr2,
+func9: pointer_type ptr1, pointer_type ptr2,
diff --git a/test/test9-03.txt b/test/test9-03.txt
new file mode 100644
index 0000000..53e02bc
--- /dev/null
+++ b/test/test9-03.txt
@@ -0,0 +1,613 @@
+function_decl func1:
+statement_list : ptr1, ptr2,
+if_stmt : ptr1, ptr2,
+truth_orif_expr : ptr1, ptr2,
+eq_expr : ptr1, ptr2,
+parm_decl ptr1: ptr1, ptr2,
+pointer_type : ptr1, ptr2,
+integer_type : ptr1, ptr2,
+type_decl int: ptr1, ptr2,
+integer_cst 32: ptr1, ptr2,
+integer_cst -2147483648: ptr1, ptr2,
+integer_cst 2147483647: ptr1, ptr2,
+integer_cst 64: ptr1, ptr2,
+integer_cst 0: ptr1, ptr2,
+eq_expr : ptr1, ptr2,
+parm_decl ptr2: ptr1, ptr2,
+pointer_type : ptr1, ptr2,
+integer_type : ptr1, ptr2,
+type_decl int: ptr1, ptr2,
+integer_cst 32: ptr1, ptr2,
+integer_cst -2147483648: ptr1, ptr2,
+integer_cst 2147483647: ptr1, ptr2,
+integer_cst 64: ptr1, ptr2,
+integer_cst 0: ptr1, ptr2,
+return_expr : ptr1, ptr2,
+cleanup_point_expr : ptr1, ptr2,
+expr_stmt :
+convert_expr :
+modify_expr :
+indirect_ref :
+parm_decl ptr1:
+pointer_type :
+integer_type :
+type_decl int:
+integer_cst 32:
+integer_cst -2147483648:
+integer_cst 2147483647:
+integer_cst 64:
+integer_cst 200:
+cleanup_point_expr : ptr1, ptr2,
+expr_stmt :
+convert_expr :
+modify_expr :
+indirect_ref :
+parm_decl ptr2:
+pointer_type :
+integer_type :
+type_decl int:
+integer_cst 32:
+integer_cst -2147483648:
+integer_cst 2147483647:
+integer_cst 64:
+integer_cst 300:
+function_decl func2:
+statement_list : ptr1, ptr2,
+if_stmt : ptr1, ptr2,
+truth_orif_expr : ptr1, ptr2,
+eq_expr : ptr1, ptr2,
+parm_decl ptr1: ptr1, ptr2,
+pointer_type : ptr1, ptr2,
+integer_type : ptr1, ptr2,
+type_decl int: ptr1, ptr2,
+integer_cst 32: ptr1, ptr2,
+integer_cst -2147483648: ptr1, ptr2,
+integer_cst 2147483647: ptr1, ptr2,
+integer_cst 64: ptr1, ptr2,
+integer_cst 0: ptr1, ptr2,
+eq_expr : ptr1, ptr2,
+parm_decl ptr2: ptr1, ptr2,
+pointer_type : ptr1, ptr2,
+integer_type : ptr1, ptr2,
+type_decl int: ptr1, ptr2,
+integer_cst 32: ptr1, ptr2,
+integer_cst -2147483648: ptr1, ptr2,
+integer_cst 2147483647: ptr1, ptr2,
+integer_cst 64: ptr1, ptr2,
+integer_cst 0: ptr1, ptr2,
+return_expr : ptr1, ptr2,
+cleanup_point_expr :
+expr_stmt :
+convert_expr :
+modify_expr :
+indirect_ref :
+parm_decl ptr1:
+pointer_type :
+integer_type :
+type_decl int:
+integer_cst 32:
+integer_cst -2147483648:
+integer_cst 2147483647:
+integer_cst 64:
+integer_cst 100:
+cleanup_point_expr : ptr1, ptr2,
+expr_stmt :
+convert_expr :
+modify_expr :
+indirect_ref :
+parm_decl ptr1:
+pointer_type :
+integer_type :
+type_decl int:
+integer_cst 32:
+integer_cst -2147483648:
+integer_cst 2147483647:
+integer_cst 64:
+integer_cst 200:
+cleanup_point_expr : ptr1, ptr2,
+expr_stmt :
+convert_expr :
+modify_expr :
+indirect_ref :
+parm_decl ptr2:
+pointer_type :
+integer_type :
+type_decl int:
+integer_cst 32:
+integer_cst -2147483648:
+integer_cst 2147483647:
+integer_cst 64:
+integer_cst 300:
+function_decl func3:
+statement_list : ptr1, ptr2,
+if_stmt : ptr1, ptr2,
+truth_orif_expr : ptr1, ptr2,
+ne_expr : ptr1, ptr2,
+parm_decl ptr1: ptr1, ptr2,
+pointer_type : ptr1, ptr2,
+integer_type : ptr1, ptr2,
+type_decl int: ptr1, ptr2,
+integer_cst 32: ptr1, ptr2,
+integer_cst -2147483648: ptr1, ptr2,
+integer_cst 2147483647: ptr1, ptr2,
+integer_cst 64: ptr1, ptr2,
+integer_cst 0: ptr1, ptr2,
+ne_expr : ptr1, ptr2,
+parm_decl ptr2: ptr1, ptr2,
+pointer_type : ptr1, ptr2,
+integer_type : ptr1, ptr2,
+type_decl int: ptr1, ptr2,
+integer_cst 32: ptr1, ptr2,
+integer_cst -2147483648: ptr1, ptr2,
+integer_cst 2147483647: ptr1, ptr2,
+integer_cst 64: ptr1, ptr2,
+integer_cst 0: ptr1, ptr2,
+return_expr :
+cleanup_point_expr : ptr1, ptr2,
+expr_stmt : ptr1, ptr2,
+convert_expr : ptr1, ptr2,
+modify_expr : ptr1, ptr2,
+test9.cpp: In member function 'void Object1::func3(int*, int*)':
+test9.cpp:38:20: warning: Using parameter 'ptr1' without checking for null pointer
+ *ptr1 = 200;
+ ^
+indirect_ref : ptr1, ptr2,
+parm_decl ptr1: ptr1, ptr2,
+pointer_type : ptr1, ptr2,
+integer_type : ptr1, ptr2,
+type_decl int: ptr1, ptr2,
+integer_cst 32: ptr1, ptr2,
+integer_cst -2147483648: ptr1, ptr2,
+integer_cst 2147483647: ptr1, ptr2,
+integer_cst 64: ptr1, ptr2,
+integer_cst 200: ptr1, ptr2,
+cleanup_point_expr : ptr1, ptr2,
+expr_stmt : ptr1, ptr2,
+convert_expr : ptr1, ptr2,
+modify_expr : ptr1, ptr2,
+test9.cpp:39:20: warning: Using parameter 'ptr2' without checking for null pointer
+ *ptr2 = 300;
+ ^
+indirect_ref : ptr1, ptr2,
+parm_decl ptr2: ptr1, ptr2,
+pointer_type : ptr1, ptr2,
+integer_type : ptr1, ptr2,
+type_decl int: ptr1, ptr2,
+integer_cst 32: ptr1, ptr2,
+integer_cst -2147483648: ptr1, ptr2,
+integer_cst 2147483647: ptr1, ptr2,
+integer_cst 64: ptr1, ptr2,
+integer_cst 300: ptr1, ptr2,
+function_decl func4:
+statement_list : ptr1, ptr2,
+if_stmt : ptr1, ptr2,
+truth_orif_expr : ptr1, ptr2,
+ne_expr : ptr1, ptr2,
+parm_decl ptr1: ptr1, ptr2,
+pointer_type : ptr1, ptr2,
+integer_type : ptr1, ptr2,
+type_decl int: ptr1, ptr2,
+integer_cst 32: ptr1, ptr2,
+integer_cst -2147483648: ptr1, ptr2,
+integer_cst 2147483647: ptr1, ptr2,
+integer_cst 64: ptr1, ptr2,
+integer_cst 0: ptr1, ptr2,
+ne_expr : ptr1, ptr2,
+parm_decl ptr2: ptr1, ptr2,
+pointer_type : ptr1, ptr2,
+integer_type : ptr1, ptr2,
+type_decl int: ptr1, ptr2,
+integer_cst 32: ptr1, ptr2,
+integer_cst -2147483648: ptr1, ptr2,
+integer_cst 2147483647: ptr1, ptr2,
+integer_cst 64: ptr1, ptr2,
+integer_cst 0: ptr1, ptr2,
+return_expr :
+cleanup_point_expr : ptr1, ptr2,
+expr_stmt : ptr1, ptr2,
+convert_expr : ptr1, ptr2,
+modify_expr : ptr1, ptr2,
+test9.cpp: In member function 'void Object1::func4(int*, int*)':
+test9.cpp:50:24: warning: Using parameter 'ptr1' without checking for null pointer
+ *ptr1 = 100;
+ ^
+indirect_ref : ptr1, ptr2,
+parm_decl ptr1: ptr1, ptr2,
+pointer_type : ptr1, ptr2,
+integer_type : ptr1, ptr2,
+type_decl int: ptr1, ptr2,
+integer_cst 32: ptr1, ptr2,
+integer_cst -2147483648: ptr1, ptr2,
+integer_cst 2147483647: ptr1, ptr2,
+integer_cst 64: ptr1, ptr2,
+integer_cst 100: ptr1, ptr2,
+cleanup_point_expr : ptr1, ptr2,
+expr_stmt : ptr1, ptr2,
+convert_expr : ptr1, ptr2,
+modify_expr : ptr1, ptr2,
+test9.cpp:53:20: warning: Using parameter 'ptr1' without checking for null pointer
+ *ptr1 = 200;
+ ^
+indirect_ref : ptr1, ptr2,
+parm_decl ptr1: ptr1, ptr2,
+pointer_type : ptr1, ptr2,
+integer_type : ptr1, ptr2,
+type_decl int: ptr1, ptr2,
+integer_cst 32: ptr1, ptr2,
+integer_cst -2147483648: ptr1, ptr2,
+integer_cst 2147483647: ptr1, ptr2,
+integer_cst 64: ptr1, ptr2,
+integer_cst 200: ptr1, ptr2,
+cleanup_point_expr : ptr1, ptr2,
+expr_stmt : ptr1, ptr2,
+convert_expr : ptr1, ptr2,
+modify_expr : ptr1, ptr2,
+test9.cpp:54:20: warning: Using parameter 'ptr2' without checking for null pointer
+ *ptr2 = 300;
+ ^
+indirect_ref : ptr1, ptr2,
+parm_decl ptr2: ptr1, ptr2,
+pointer_type : ptr1, ptr2,
+integer_type : ptr1, ptr2,
+type_decl int: ptr1, ptr2,
+integer_cst 32: ptr1, ptr2,
+integer_cst -2147483648: ptr1, ptr2,
+integer_cst 2147483647: ptr1, ptr2,
+integer_cst 64: ptr1, ptr2,
+integer_cst 300: ptr1, ptr2,
+function_decl func5:
+statement_list : ptr1, ptr2,
+if_stmt : ptr1, ptr2,
+truth_orif_expr : ptr1, ptr2,
+eq_expr : ptr1, ptr2,
+parm_decl ptr1: ptr1, ptr2,
+pointer_type : ptr1, ptr2,
+integer_type : ptr1, ptr2,
+type_decl int: ptr1, ptr2,
+integer_cst 32: ptr1, ptr2,
+integer_cst -2147483648: ptr1, ptr2,
+integer_cst 2147483647: ptr1, ptr2,
+integer_cst 64: ptr1, ptr2,
+integer_cst 0: ptr1, ptr2,
+ne_expr : ptr1, ptr2,
+parm_decl ptr2: ptr1, ptr2,
+pointer_type : ptr1, ptr2,
+integer_type : ptr1, ptr2,
+type_decl int: ptr1, ptr2,
+integer_cst 32: ptr1, ptr2,
+integer_cst -2147483648: ptr1, ptr2,
+integer_cst 2147483647: ptr1, ptr2,
+integer_cst 64: ptr1, ptr2,
+integer_cst 0: ptr1, ptr2,
+return_expr : ptr1,
+cleanup_point_expr : ptr1, ptr2,
+expr_stmt : ptr2,
+convert_expr : ptr2,
+modify_expr : ptr2,
+indirect_ref : ptr2,
+parm_decl ptr1: ptr2,
+pointer_type : ptr2,
+integer_type : ptr2,
+type_decl int: ptr2,
+integer_cst 32: ptr2,
+integer_cst -2147483648: ptr2,
+integer_cst 2147483647: ptr2,
+integer_cst 64: ptr2,
+integer_cst 200: ptr2,
+cleanup_point_expr : ptr1, ptr2,
+expr_stmt : ptr2,
+convert_expr : ptr2,
+modify_expr : ptr2,
+test9.cpp: In member function 'void Object1::func5(int*, int*)':
+test9.cpp:65:20: warning: Using parameter 'ptr2' without checking for null pointer
+ *ptr2 = 300;
+ ^
+indirect_ref : ptr2,
+parm_decl ptr2: ptr2,
+pointer_type : ptr2,
+integer_type : ptr2,
+type_decl int: ptr2,
+integer_cst 32: ptr2,
+integer_cst -2147483648: ptr2,
+integer_cst 2147483647: ptr2,
+integer_cst 64: ptr2,
+integer_cst 300: ptr2,
+function_decl func6:
+statement_list : ptr1, ptr2,
+if_stmt : ptr1, ptr2,
+truth_orif_expr : ptr1, ptr2,
+eq_expr : ptr1, ptr2,
+parm_decl ptr1: ptr1, ptr2,
+pointer_type : ptr1, ptr2,
+integer_type : ptr1, ptr2,
+type_decl int: ptr1, ptr2,
+integer_cst 32: ptr1, ptr2,
+integer_cst -2147483648: ptr1, ptr2,
+integer_cst 2147483647: ptr1, ptr2,
+integer_cst 64: ptr1, ptr2,
+integer_cst 0: ptr1, ptr2,
+ne_expr : ptr1, ptr2,
+parm_decl ptr2: ptr1, ptr2,
+pointer_type : ptr1, ptr2,
+integer_type : ptr1, ptr2,
+type_decl int: ptr1, ptr2,
+integer_cst 32: ptr1, ptr2,
+integer_cst -2147483648: ptr1, ptr2,
+integer_cst 2147483647: ptr1, ptr2,
+integer_cst 64: ptr1, ptr2,
+integer_cst 0: ptr1, ptr2,
+return_expr : ptr1,
+cleanup_point_expr : ptr2,
+expr_stmt : ptr2,
+convert_expr : ptr2,
+modify_expr : ptr2,
+indirect_ref : ptr2,
+parm_decl ptr1: ptr2,
+pointer_type : ptr2,
+integer_type : ptr2,
+type_decl int: ptr2,
+integer_cst 32: ptr2,
+integer_cst -2147483648: ptr2,
+integer_cst 2147483647: ptr2,
+integer_cst 64: ptr2,
+integer_cst 100: ptr2,
+cleanup_point_expr : ptr1, ptr2,
+expr_stmt : ptr2,
+convert_expr : ptr2,
+modify_expr : ptr2,
+indirect_ref : ptr2,
+parm_decl ptr1: ptr2,
+pointer_type : ptr2,
+integer_type : ptr2,
+type_decl int: ptr2,
+integer_cst 32: ptr2,
+integer_cst -2147483648: ptr2,
+integer_cst 2147483647: ptr2,
+integer_cst 64: ptr2,
+integer_cst 200: ptr2,
+cleanup_point_expr : ptr1, ptr2,
+expr_stmt : ptr2,
+convert_expr : ptr2,
+modify_expr : ptr2,
+test9.cpp: In member function 'void Object1::func6(int*, int*)':
+test9.cpp:80:20: warning: Using parameter 'ptr2' without checking for null pointer
+ *ptr2 = 300;
+ ^
+indirect_ref : ptr2,
+parm_decl ptr2: ptr2,
+pointer_type : ptr2,
+integer_type : ptr2,
+type_decl int: ptr2,
+integer_cst 32: ptr2,
+integer_cst -2147483648: ptr2,
+integer_cst 2147483647: ptr2,
+integer_cst 64: ptr2,
+integer_cst 300: ptr2,
+function_decl func7:
+statement_list : ptr1, ptr2,
+if_stmt : ptr1, ptr2,
+truth_orif_expr : ptr1, ptr2,
+ne_expr : ptr1, ptr2,
+parm_decl ptr1: ptr1, ptr2,
+pointer_type : ptr1, ptr2,
+integer_type : ptr1, ptr2,
+type_decl int: ptr1, ptr2,
+integer_cst 32: ptr1, ptr2,
+integer_cst -2147483648: ptr1, ptr2,
+integer_cst 2147483647: ptr1, ptr2,
+integer_cst 64: ptr1, ptr2,
+integer_cst 0: ptr1, ptr2,
+eq_expr : ptr1, ptr2,
+parm_decl ptr2: ptr1, ptr2,
+pointer_type : ptr1, ptr2,
+integer_type : ptr1, ptr2,
+type_decl int: ptr1, ptr2,
+integer_cst 32: ptr1, ptr2,
+integer_cst -2147483648: ptr1, ptr2,
+integer_cst 2147483647: ptr1, ptr2,
+integer_cst 64: ptr1, ptr2,
+integer_cst 0: ptr1, ptr2,
+return_expr : ptr2,
+cleanup_point_expr : ptr1,
+expr_stmt : ptr1,
+convert_expr : ptr1,
+modify_expr : ptr1,
+test9.cpp: In member function 'void Object1::func7(int*, int*)':
+test9.cpp:91:24: warning: Using parameter 'ptr1' without checking for null pointer
+ *ptr1 = 100;
+ ^
+indirect_ref : ptr1,
+parm_decl ptr1: ptr1,
+pointer_type : ptr1,
+integer_type : ptr1,
+type_decl int: ptr1,
+integer_cst 32: ptr1,
+integer_cst -2147483648: ptr1,
+integer_cst 2147483647: ptr1,
+integer_cst 64: ptr1,
+integer_cst 100: ptr1,
+cleanup_point_expr : ptr1, ptr2,
+expr_stmt : ptr1,
+convert_expr : ptr1,
+modify_expr : ptr1,
+test9.cpp:94:20: warning: Using parameter 'ptr1' without checking for null pointer
+ *ptr1 = 200;
+ ^
+indirect_ref : ptr1,
+parm_decl ptr1: ptr1,
+pointer_type : ptr1,
+integer_type : ptr1,
+type_decl int: ptr1,
+integer_cst 32: ptr1,
+integer_cst -2147483648: ptr1,
+integer_cst 2147483647: ptr1,
+integer_cst 64: ptr1,
+integer_cst 200: ptr1,
+cleanup_point_expr : ptr1, ptr2,
+expr_stmt : ptr1,
+convert_expr : ptr1,
+modify_expr : ptr1,
+indirect_ref : ptr1,
+parm_decl ptr2: ptr1,
+pointer_type : ptr1,
+integer_type : ptr1,
+type_decl int: ptr1,
+integer_cst 32: ptr1,
+integer_cst -2147483648: ptr1,
+integer_cst 2147483647: ptr1,
+integer_cst 64: ptr1,
+integer_cst 300: ptr1,
+function_decl func8:
+statement_list : ptr1, ptr2,
+if_stmt : ptr1, ptr2,
+truth_andif_expr : ptr1, ptr2,
+eq_expr : ptr1, ptr2,
+parm_decl ptr1: ptr1, ptr2,
+pointer_type : ptr1, ptr2,
+integer_type : ptr1, ptr2,
+type_decl int: ptr1, ptr2,
+integer_cst 32: ptr1, ptr2,
+integer_cst -2147483648: ptr1, ptr2,
+integer_cst 2147483647: ptr1, ptr2,
+integer_cst 64: ptr1, ptr2,
+integer_cst 0: ptr1, ptr2,
+eq_expr : ptr1, ptr2,
+parm_decl ptr2: ptr1, ptr2,
+pointer_type : ptr1, ptr2,
+integer_type : ptr1, ptr2,
+type_decl int: ptr1, ptr2,
+integer_cst 32: ptr1, ptr2,
+integer_cst -2147483648: ptr1, ptr2,
+integer_cst 2147483647: ptr1, ptr2,
+integer_cst 64: ptr1, ptr2,
+integer_cst 0: ptr1, ptr2,
+return_expr : ptr1, ptr2,
+cleanup_point_expr : ptr1, ptr2,
+expr_stmt : ptr1, ptr2,
+convert_expr : ptr1, ptr2,
+modify_expr : ptr1, ptr2,
+test9.cpp: In member function 'void Object1::func8(int*, int*)':
+test9.cpp:106:24: warning: Using parameter 'ptr1' without checking for null pointer
+ *ptr1 = 100;
+ ^
+indirect_ref : ptr1, ptr2,
+parm_decl ptr1: ptr1, ptr2,
+pointer_type : ptr1, ptr2,
+integer_type : ptr1, ptr2,
+type_decl int: ptr1, ptr2,
+integer_cst 32: ptr1, ptr2,
+integer_cst -2147483648: ptr1, ptr2,
+integer_cst 2147483647: ptr1, ptr2,
+integer_cst 64: ptr1, ptr2,
+integer_cst 100: ptr1, ptr2,
+cleanup_point_expr : ptr1, ptr2,
+expr_stmt : ptr1, ptr2,
+convert_expr : ptr1, ptr2,
+modify_expr : ptr1, ptr2,
+test9.cpp:109:20: warning: Using parameter 'ptr1' without checking for null pointer
+ *ptr1 = 200;
+ ^
+indirect_ref : ptr1, ptr2,
+parm_decl ptr1: ptr1, ptr2,
+pointer_type : ptr1, ptr2,
+integer_type : ptr1, ptr2,
+type_decl int: ptr1, ptr2,
+integer_cst 32: ptr1, ptr2,
+integer_cst -2147483648: ptr1, ptr2,
+integer_cst 2147483647: ptr1, ptr2,
+integer_cst 64: ptr1, ptr2,
+integer_cst 200: ptr1, ptr2,
+cleanup_point_expr : ptr1, ptr2,
+expr_stmt : ptr1, ptr2,
+convert_expr : ptr1, ptr2,
+modify_expr : ptr1, ptr2,
+test9.cpp:110:20: warning: Using parameter 'ptr2' without checking for null pointer
+ *ptr2 = 300;
+ ^
+indirect_ref : ptr1, ptr2,
+parm_decl ptr2: ptr1, ptr2,
+pointer_type : ptr1, ptr2,
+integer_type : ptr1, ptr2,
+type_decl int: ptr1, ptr2,
+integer_cst 32: ptr1, ptr2,
+integer_cst -2147483648: ptr1, ptr2,
+integer_cst 2147483647: ptr1, ptr2,
+integer_cst 64: ptr1, ptr2,
+integer_cst 300: ptr1, ptr2,
+function_decl func9:
+statement_list : ptr1, ptr2,
+if_stmt : ptr1, ptr2,
+truth_andif_expr : ptr1, ptr2,
+ne_expr : ptr1, ptr2,
+parm_decl ptr1: ptr1, ptr2,
+pointer_type : ptr1, ptr2,
+integer_type : ptr1, ptr2,
+type_decl int: ptr1, ptr2,
+integer_cst 32: ptr1, ptr2,
+integer_cst -2147483648: ptr1, ptr2,
+integer_cst 2147483647: ptr1, ptr2,
+integer_cst 64: ptr1, ptr2,
+integer_cst 0: ptr1, ptr2,
+ne_expr : ptr1, ptr2,
+parm_decl ptr2: ptr1, ptr2,
+pointer_type : ptr1, ptr2,
+integer_type : ptr1, ptr2,
+type_decl int: ptr1, ptr2,
+integer_cst 32: ptr1, ptr2,
+integer_cst -2147483648: ptr1, ptr2,
+integer_cst 2147483647: ptr1, ptr2,
+integer_cst 64: ptr1, ptr2,
+integer_cst 0: ptr1, ptr2,
+return_expr : ptr1, ptr2,
+cleanup_point_expr : ptr1, ptr2,
+expr_stmt : ptr1, ptr2,
+convert_expr : ptr1, ptr2,
+modify_expr : ptr1, ptr2,
+test9.cpp: In member function 'void Object1::func9(int*, int*)':
+test9.cpp:121:24: warning: Using parameter 'ptr1' without checking for null pointer
+ *ptr1 = 100;
+ ^
+indirect_ref : ptr1, ptr2,
+parm_decl ptr1: ptr1, ptr2,
+pointer_type : ptr1, ptr2,
+integer_type : ptr1, ptr2,
+type_decl int: ptr1, ptr2,
+integer_cst 32: ptr1, ptr2,
+integer_cst -2147483648: ptr1, ptr2,
+integer_cst 2147483647: ptr1, ptr2,
+integer_cst 64: ptr1, ptr2,
+integer_cst 100: ptr1, ptr2,
+cleanup_point_expr : ptr1, ptr2,
+expr_stmt : ptr1, ptr2,
+convert_expr : ptr1, ptr2,
+modify_expr : ptr1, ptr2,
+test9.cpp:124:20: warning: Using parameter 'ptr1' without checking for null pointer
+ *ptr1 = 200;
+ ^
+indirect_ref : ptr1, ptr2,
+parm_decl ptr1: ptr1, ptr2,
+pointer_type : ptr1, ptr2,
+integer_type : ptr1, ptr2,
+type_decl int: ptr1, ptr2,
+integer_cst 32: ptr1, ptr2,
+integer_cst -2147483648: ptr1, ptr2,
+integer_cst 2147483647: ptr1, ptr2,
+integer_cst 64: ptr1, ptr2,
+integer_cst 200: ptr1, ptr2,
+cleanup_point_expr : ptr1, ptr2,
+expr_stmt : ptr1, ptr2,
+convert_expr : ptr1, ptr2,
+modify_expr : ptr1, ptr2,
+test9.cpp:125:20: warning: Using parameter 'ptr2' without checking for null pointer
+ *ptr2 = 300;
+ ^
+indirect_ref : ptr1, ptr2,
+parm_decl ptr2: ptr1, ptr2,
+pointer_type : ptr1, ptr2,
+integer_type : ptr1, ptr2,
+type_decl int: ptr1, ptr2,
+integer_cst 32: ptr1, ptr2,
+integer_cst -2147483648: ptr1, ptr2,
+integer_cst 2147483647: ptr1, ptr2,
+integer_cst 64: ptr1, ptr2,
+integer_cst 300: ptr1, ptr2,
diff --git a/test/test9-04.txt b/test/test9-04.txt
new file mode 100644
index 0000000..f4a465f
--- /dev/null
+++ b/test/test9-04.txt
@@ -0,0 +1,52 @@
+test9.cpp: In member function 'void Object1::func3(int*, int*)':
+test9.cpp:38:20: warning: Using parameter 'ptr1' without checking for null pointer
+ *ptr1 = 200;
+ ^
+test9.cpp:39:20: warning: Using parameter 'ptr2' without checking for null pointer
+ *ptr2 = 300;
+ ^
+test9.cpp: In member function 'void Object1::func4(int*, int*)':
+test9.cpp:50:24: warning: Using parameter 'ptr1' without checking for null pointer
+ *ptr1 = 100;
+ ^
+test9.cpp:53:20: warning: Using parameter 'ptr1' without checking for null pointer
+ *ptr1 = 200;
+ ^
+test9.cpp:54:20: warning: Using parameter 'ptr2' without checking for null pointer
+ *ptr2 = 300;
+ ^
+test9.cpp: In member function 'void Object1::func5(int*, int*)':
+test9.cpp:65:20: warning: Using parameter 'ptr2' without checking for null pointer
+ *ptr2 = 300;
+ ^
+test9.cpp: In member function 'void Object1::func6(int*, int*)':
+test9.cpp:80:20: warning: Using parameter 'ptr2' without checking for null pointer
+ *ptr2 = 300;
+ ^
+test9.cpp: In member function 'void Object1::func7(int*, int*)':
+test9.cpp:91:24: warning: Using parameter 'ptr1' without checking for null pointer
+ *ptr1 = 100;
+ ^
+test9.cpp:94:20: warning: Using parameter 'ptr1' without checking for null pointer
+ *ptr1 = 200;
+ ^
+test9.cpp: In member function 'void Object1::func8(int*, int*)':
+test9.cpp:106:24: warning: Using parameter 'ptr1' without checking for null pointer
+ *ptr1 = 100;
+ ^
+test9.cpp:109:20: warning: Using parameter 'ptr1' without checking for null pointer
+ *ptr1 = 200;
+ ^
+test9.cpp:110:20: warning: Using parameter 'ptr2' without checking for null pointer
+ *ptr2 = 300;
+ ^
+test9.cpp: In member function 'void Object1::func9(int*, int*)':
+test9.cpp:121:24: warning: Using parameter 'ptr1' without checking for null pointer
+ *ptr1 = 100;
+ ^
+test9.cpp:124:20: warning: Using parameter 'ptr1' without checking for null pointer
+ *ptr1 = 200;
+ ^
+test9.cpp:125:20: warning: Using parameter 'ptr2' without checking for null pointer
+ *ptr2 = 300;
+ ^
diff --git a/test/test9.cpp b/test/test9.cpp
new file mode 100644
index 0000000..da0a297
--- /dev/null
+++ b/test/test9.cpp
@@ -0,0 +1,147 @@
+class Object1
+{
+ int k;
+
+ void func1(int *ptr1, int *ptr2)
+ {
+ if (!ptr1 || !ptr2)
+ {
+ return;
+ }
+
+ *ptr1 = 200;
+ *ptr2 = 300;
+ }
+
+ void func2(int *ptr1, int *ptr2)
+ {
+ if (!ptr1 || !ptr2)
+ {
+ return;
+ }
+ else
+ {
+ *ptr1 = 100;
+ }
+
+ *ptr1 = 200;
+ *ptr2 = 300;
+ }
+
+ void func3(int *ptr1, int *ptr2)
+ {
+ if (ptr1 || ptr2)
+ {
+ return;
+ }
+
+ *ptr1 = 200;
+ *ptr2 = 300;
+ }
+
+ void func4(int *ptr1, int *ptr2)
+ {
+ if (ptr1 || ptr2)
+ {
+ return;
+ }
+ else
+ {
+ *ptr1 = 100;
+ }
+
+ *ptr1 = 200;
+ *ptr2 = 300;
+ }
+
+ void func5(int *ptr1, int *ptr2)
+ {
+ if (!ptr1 || ptr2)
+ {
+ return;
+ }
+
+ *ptr1 = 200;
+ *ptr2 = 300;
+ }
+
+ void func6(int *ptr1, int *ptr2)
+ {
+ if (!ptr1 || ptr2)
+ {
+ return;
+ }
+ else
+ {
+ *ptr1 = 100;
+ }
+
+ *ptr1 = 200;
+ *ptr2 = 300;
+ }
+
+ void func7(int *ptr1, int *ptr2)
+ {
+ if (ptr1 || !ptr2)
+ {
+ return;
+ }
+ else
+ {
+ *ptr1 = 100;
+ }
+
+ *ptr1 = 200;
+ *ptr2 = 300;
+ }
+
+ void func8(int *ptr1, int *ptr2)
+ {
+ if (!ptr1 && !ptr2)
+ {
+ return;
+ }
+ else
+ {
+ *ptr1 = 100;
+ }
+
+ *ptr1 = 200;
+ *ptr2 = 300;
+ }
+
+ void func9(int *ptr1, int *ptr2)
+ {
+ if (ptr1 && ptr2)
+ {
+ return;
+ }
+ else
+ {
+ *ptr1 = 100;
+ }
+
+ *ptr1 = 200;
+ *ptr2 = 300;
+ }
+
+
+
+/*
+ void func8(int *ptr1, int *ptr2)
+ {
+ int c;
+ if (k == c || !ptr1)
+ {
+ return;
+ }
+ else
+ {
+ *ptr1 = 100;
+ }
+
+ *ptr1 = 200;
+ *ptr2 = 300;
+ }
+*/
+};