From 9929a11dab3def2cfe821a682a60f8c35193277f Mon Sep 17 00:00:00 2001 From: Andrei Karas Date: Thu, 6 Aug 2015 16:44:06 +0300 Subject: Update test 42. Update test results. --- test/test26-03.txt | 554 +++++++++++++++------------------- test/test42-01.txt | 856 ++++++++++++++++++++++++++++++++++++++--------------- test/test42-02.txt | 3 + test/test42-03.txt | 159 +++++++++- test/test42-04.txt | 12 +- test/test42-05.txt | 12 +- test/test42.cpp | 17 ++ 7 files changed, 1032 insertions(+), 581 deletions(-) diff --git a/test/test26-03.txt b/test/test26-03.txt index 9ba6ba2..99cb24a 100644 --- a/test/test26-03.txt +++ b/test/test26-03.txt @@ -3475,59 +3475,48 @@ cleanup_point_expr : expr_stmt : convert_expr : init_expr : -component_ref : -indirect_ref : -parm_decl __o: -reference_type : -record_type : -type_decl exception_ptr: -integer_cst 64: -field_decl _M_exception_object: -integer_cst 64: -pointer_type : -void_type : -type_decl void: -component_ref : -indirect_ref : -parm_decl this: -pointer_type : -record_type : -type_decl exception_ptr: -integer_cst 64: -field_decl _M_exception_object: -integer_cst 64: -pointer_type : -void_type : -type_decl void: -component_ref : -indirect_ref : -parm_decl __o: -reference_type : -record_type : -type_decl exception_ptr: -integer_cst 64: -field_decl _M_exception_object: -integer_cst 64: -pointer_type : -void_type : -type_decl void: -cleanup_point_expr : -expr_stmt : -convert_expr : -modify_expr : -component_ref : -indirect_ref : -parm_decl __o: -reference_type : -record_type : -type_decl exception_ptr: -integer_cst 64: -field_decl _M_exception_object: -integer_cst 64: -pointer_type : -void_type : -type_decl void: -integer_cst 0: +component_ref : this->_M_exception_object, +indirect_ref : this->_M_exception_object, +parm_decl this: this->_M_exception_object, +pointer_type : this->_M_exception_object, +record_type : this->_M_exception_object, +type_decl exception_ptr: this->_M_exception_object, +integer_cst 64: this->_M_exception_object, +field_decl _M_exception_object: this->_M_exception_object, +integer_cst 64: this->_M_exception_object, +pointer_type : this->_M_exception_object, +void_type : this->_M_exception_object, +type_decl void: this->_M_exception_object, +component_ref : this->_M_exception_object, +indirect_ref : this->_M_exception_object, +parm_decl __o: this->_M_exception_object, +reference_type : this->_M_exception_object, +record_type : this->_M_exception_object, +type_decl exception_ptr: this->_M_exception_object, +integer_cst 64: this->_M_exception_object, +field_decl _M_exception_object: this->_M_exception_object, +integer_cst 64: this->_M_exception_object, +pointer_type : this->_M_exception_object, +void_type : this->_M_exception_object, +type_decl void: this->_M_exception_object, +cleanup_point_expr : this->_M_exception_object, +expr_stmt : this->_M_exception_object, +convert_expr : this->_M_exception_object, +modify_expr : this->_M_exception_object, +component_ref : this->_M_exception_object, +indirect_ref : this->_M_exception_object, +parm_decl __o: this->_M_exception_object, +reference_type : this->_M_exception_object, +record_type : this->_M_exception_object, +type_decl exception_ptr: this->_M_exception_object, +integer_cst 64: this->_M_exception_object, +field_decl _M_exception_object: this->_M_exception_object, +integer_cst 64: this->_M_exception_object, +pointer_type : this->_M_exception_object, +void_type : this->_M_exception_object, +type_decl void: this->_M_exception_object, +integer_cst 0: this->_M_exception_object, +integer_cst 0: this->_M_exception_object, block : function_decl __base_ctor : must_not_throw_expr : @@ -3537,59 +3526,48 @@ cleanup_point_expr : expr_stmt : convert_expr : init_expr : -component_ref : -indirect_ref : -parm_decl __o: -reference_type : -record_type : -type_decl exception_ptr: -integer_cst 64: -field_decl _M_exception_object: -integer_cst 64: -pointer_type : -void_type : -type_decl void: -component_ref : -indirect_ref : -parm_decl this: -pointer_type : -record_type : -type_decl exception_ptr: -integer_cst 64: -field_decl _M_exception_object: -integer_cst 64: -pointer_type : -void_type : -type_decl void: -component_ref : -indirect_ref : -parm_decl __o: -reference_type : -record_type : -type_decl exception_ptr: -integer_cst 64: -field_decl _M_exception_object: -integer_cst 64: -pointer_type : -void_type : -type_decl void: -cleanup_point_expr : -expr_stmt : -convert_expr : -modify_expr : -component_ref : -indirect_ref : -parm_decl __o: -reference_type : -record_type : -type_decl exception_ptr: -integer_cst 64: -field_decl _M_exception_object: -integer_cst 64: -pointer_type : -void_type : -type_decl void: -integer_cst 0: +component_ref : this->_M_exception_object, +indirect_ref : this->_M_exception_object, +parm_decl this: this->_M_exception_object, +pointer_type : this->_M_exception_object, +record_type : this->_M_exception_object, +type_decl exception_ptr: this->_M_exception_object, +integer_cst 64: this->_M_exception_object, +field_decl _M_exception_object: this->_M_exception_object, +integer_cst 64: this->_M_exception_object, +pointer_type : this->_M_exception_object, +void_type : this->_M_exception_object, +type_decl void: this->_M_exception_object, +component_ref : this->_M_exception_object, +indirect_ref : this->_M_exception_object, +parm_decl __o: this->_M_exception_object, +reference_type : this->_M_exception_object, +record_type : this->_M_exception_object, +type_decl exception_ptr: this->_M_exception_object, +integer_cst 64: this->_M_exception_object, +field_decl _M_exception_object: this->_M_exception_object, +integer_cst 64: this->_M_exception_object, +pointer_type : this->_M_exception_object, +void_type : this->_M_exception_object, +type_decl void: this->_M_exception_object, +cleanup_point_expr : this->_M_exception_object, +expr_stmt : this->_M_exception_object, +convert_expr : this->_M_exception_object, +modify_expr : this->_M_exception_object, +component_ref : this->_M_exception_object, +indirect_ref : this->_M_exception_object, +parm_decl __o: this->_M_exception_object, +reference_type : this->_M_exception_object, +record_type : this->_M_exception_object, +type_decl exception_ptr: this->_M_exception_object, +integer_cst 64: this->_M_exception_object, +field_decl _M_exception_object: this->_M_exception_object, +integer_cst 64: this->_M_exception_object, +pointer_type : this->_M_exception_object, +void_type : this->_M_exception_object, +type_decl void: this->_M_exception_object, +integer_cst 0: this->_M_exception_object, +integer_cst 0: this->_M_exception_object, block : function_decl __comp_ctor : statement_list : @@ -19221,59 +19199,44 @@ cleanup_point_expr : expr_stmt : convert_expr : init_expr : -component_ref : -indirect_ref : -parm_decl : -reference_type : -record_type : -type_decl _Alloc_hider: -integer_cst 64: -field_decl _M_p: -integer_cst 64: -pointer_type : -integer_type : -type_decl char: -integer_cst 8: -integer_cst -128: -integer_cst 127: -component_ref : -indirect_ref : -parm_decl this: -pointer_type : -record_type : -type_decl _Alloc_hider: -integer_cst 64: -field_decl _M_p: -integer_cst 64: -pointer_type : -integer_type : -type_decl char: -integer_cst 8: -integer_cst -128: -integer_cst 127: -component_ref : -indirect_ref : -parm_decl : -reference_type : -record_type : -type_decl _Alloc_hider: -integer_cst 64: -field_decl _M_p: -integer_cst 64: -pointer_type : -integer_type : -type_decl char: -integer_cst 8: -integer_cst -128: -integer_cst 127: -call_expr : -addr_expr : -function_decl __base_dtor : -parm_decl this: -pointer_type : -record_type : -type_decl _Alloc_hider: -integer_cst 64: +component_ref : this->_M_p, +indirect_ref : this->_M_p, +parm_decl this: this->_M_p, +pointer_type : this->_M_p, +record_type : this->_M_p, +type_decl _Alloc_hider: this->_M_p, +integer_cst 64: this->_M_p, +field_decl _M_p: this->_M_p, +integer_cst 64: this->_M_p, +pointer_type : this->_M_p, +integer_type : this->_M_p, +type_decl char: this->_M_p, +integer_cst 8: this->_M_p, +integer_cst -128: this->_M_p, +integer_cst 127: this->_M_p, +component_ref : this->_M_p, +indirect_ref : this->_M_p, +parm_decl : this->_M_p, +reference_type : this->_M_p, +record_type : this->_M_p, +type_decl _Alloc_hider: this->_M_p, +integer_cst 64: this->_M_p, +field_decl _M_p: this->_M_p, +integer_cst 64: this->_M_p, +pointer_type : this->_M_p, +integer_type : this->_M_p, +type_decl char: this->_M_p, +integer_cst 8: this->_M_p, +integer_cst -128: this->_M_p, +integer_cst 127: this->_M_p, +call_expr : this->_M_p, +addr_expr : this->_M_p, +function_decl __base_dtor : this->_M_p, +parm_decl this: this->_M_p, +pointer_type : this->_M_p, +record_type : this->_M_p, +type_decl _Alloc_hider: this->_M_p, +integer_cst 64: this->_M_p, block : function_decl __base_ctor : bind_expr : @@ -19300,59 +19263,44 @@ cleanup_point_expr : expr_stmt : convert_expr : init_expr : -component_ref : -indirect_ref : -parm_decl : -reference_type : -record_type : -type_decl _Alloc_hider: -integer_cst 64: -field_decl _M_p: -integer_cst 64: -pointer_type : -integer_type : -type_decl char: -integer_cst 8: -integer_cst -128: -integer_cst 127: -component_ref : -indirect_ref : -parm_decl this: -pointer_type : -record_type : -type_decl _Alloc_hider: -integer_cst 64: -field_decl _M_p: -integer_cst 64: -pointer_type : -integer_type : -type_decl char: -integer_cst 8: -integer_cst -128: -integer_cst 127: -component_ref : -indirect_ref : -parm_decl : -reference_type : -record_type : -type_decl _Alloc_hider: -integer_cst 64: -field_decl _M_p: -integer_cst 64: -pointer_type : -integer_type : -type_decl char: -integer_cst 8: -integer_cst -128: -integer_cst 127: -call_expr : -addr_expr : -function_decl __base_dtor : -parm_decl this: -pointer_type : -record_type : -type_decl _Alloc_hider: -integer_cst 64: +component_ref : this->_M_p, +indirect_ref : this->_M_p, +parm_decl this: this->_M_p, +pointer_type : this->_M_p, +record_type : this->_M_p, +type_decl _Alloc_hider: this->_M_p, +integer_cst 64: this->_M_p, +field_decl _M_p: this->_M_p, +integer_cst 64: this->_M_p, +pointer_type : this->_M_p, +integer_type : this->_M_p, +type_decl char: this->_M_p, +integer_cst 8: this->_M_p, +integer_cst -128: this->_M_p, +integer_cst 127: this->_M_p, +component_ref : this->_M_p, +indirect_ref : this->_M_p, +parm_decl : this->_M_p, +reference_type : this->_M_p, +record_type : this->_M_p, +type_decl _Alloc_hider: this->_M_p, +integer_cst 64: this->_M_p, +field_decl _M_p: this->_M_p, +integer_cst 64: this->_M_p, +pointer_type : this->_M_p, +integer_type : this->_M_p, +type_decl char: this->_M_p, +integer_cst 8: this->_M_p, +integer_cst -128: this->_M_p, +integer_cst 127: this->_M_p, +call_expr : this->_M_p, +addr_expr : this->_M_p, +function_decl __base_dtor : this->_M_p, +parm_decl this: this->_M_p, +pointer_type : this->_M_p, +record_type : this->_M_p, +type_decl _Alloc_hider: this->_M_p, +integer_cst 64: this->_M_p, block : function_decl __comp_ctor : statement_list : @@ -21678,59 +21626,44 @@ cleanup_point_expr : expr_stmt : convert_expr : init_expr : -component_ref : -indirect_ref : -parm_decl : -reference_type : -record_type : -type_decl _Alloc_hider: -integer_cst 64: -field_decl _M_p: -integer_cst 64: -pointer_type : -integer_type : -type_decl wchar_t: -integer_cst 32: -integer_cst -2147483648: -integer_cst 2147483647: -component_ref : -indirect_ref : -parm_decl this: -pointer_type : -record_type : -type_decl _Alloc_hider: -integer_cst 64: -field_decl _M_p: -integer_cst 64: -pointer_type : -integer_type : -type_decl wchar_t: -integer_cst 32: -integer_cst -2147483648: -integer_cst 2147483647: -component_ref : -indirect_ref : -parm_decl : -reference_type : -record_type : -type_decl _Alloc_hider: -integer_cst 64: -field_decl _M_p: -integer_cst 64: -pointer_type : -integer_type : -type_decl wchar_t: -integer_cst 32: -integer_cst -2147483648: -integer_cst 2147483647: -call_expr : -addr_expr : -function_decl __base_dtor : -parm_decl this: -pointer_type : -record_type : -type_decl _Alloc_hider: -integer_cst 64: +component_ref : this->_M_p, +indirect_ref : this->_M_p, +parm_decl this: this->_M_p, +pointer_type : this->_M_p, +record_type : this->_M_p, +type_decl _Alloc_hider: this->_M_p, +integer_cst 64: this->_M_p, +field_decl _M_p: this->_M_p, +integer_cst 64: this->_M_p, +pointer_type : this->_M_p, +integer_type : this->_M_p, +type_decl wchar_t: this->_M_p, +integer_cst 32: this->_M_p, +integer_cst -2147483648: this->_M_p, +integer_cst 2147483647: this->_M_p, +component_ref : this->_M_p, +indirect_ref : this->_M_p, +parm_decl : this->_M_p, +reference_type : this->_M_p, +record_type : this->_M_p, +type_decl _Alloc_hider: this->_M_p, +integer_cst 64: this->_M_p, +field_decl _M_p: this->_M_p, +integer_cst 64: this->_M_p, +pointer_type : this->_M_p, +integer_type : this->_M_p, +type_decl wchar_t: this->_M_p, +integer_cst 32: this->_M_p, +integer_cst -2147483648: this->_M_p, +integer_cst 2147483647: this->_M_p, +call_expr : this->_M_p, +addr_expr : this->_M_p, +function_decl __base_dtor : this->_M_p, +parm_decl this: this->_M_p, +pointer_type : this->_M_p, +record_type : this->_M_p, +type_decl _Alloc_hider: this->_M_p, +integer_cst 64: this->_M_p, block : function_decl __base_ctor : bind_expr : @@ -21757,59 +21690,44 @@ cleanup_point_expr : expr_stmt : convert_expr : init_expr : -component_ref : -indirect_ref : -parm_decl : -reference_type : -record_type : -type_decl _Alloc_hider: -integer_cst 64: -field_decl _M_p: -integer_cst 64: -pointer_type : -integer_type : -type_decl wchar_t: -integer_cst 32: -integer_cst -2147483648: -integer_cst 2147483647: -component_ref : -indirect_ref : -parm_decl this: -pointer_type : -record_type : -type_decl _Alloc_hider: -integer_cst 64: -field_decl _M_p: -integer_cst 64: -pointer_type : -integer_type : -type_decl wchar_t: -integer_cst 32: -integer_cst -2147483648: -integer_cst 2147483647: -component_ref : -indirect_ref : -parm_decl : -reference_type : -record_type : -type_decl _Alloc_hider: -integer_cst 64: -field_decl _M_p: -integer_cst 64: -pointer_type : -integer_type : -type_decl wchar_t: -integer_cst 32: -integer_cst -2147483648: -integer_cst 2147483647: -call_expr : -addr_expr : -function_decl __base_dtor : -parm_decl this: -pointer_type : -record_type : -type_decl _Alloc_hider: -integer_cst 64: +component_ref : this->_M_p, +indirect_ref : this->_M_p, +parm_decl this: this->_M_p, +pointer_type : this->_M_p, +record_type : this->_M_p, +type_decl _Alloc_hider: this->_M_p, +integer_cst 64: this->_M_p, +field_decl _M_p: this->_M_p, +integer_cst 64: this->_M_p, +pointer_type : this->_M_p, +integer_type : this->_M_p, +type_decl wchar_t: this->_M_p, +integer_cst 32: this->_M_p, +integer_cst -2147483648: this->_M_p, +integer_cst 2147483647: this->_M_p, +component_ref : this->_M_p, +indirect_ref : this->_M_p, +parm_decl : this->_M_p, +reference_type : this->_M_p, +record_type : this->_M_p, +type_decl _Alloc_hider: this->_M_p, +integer_cst 64: this->_M_p, +field_decl _M_p: this->_M_p, +integer_cst 64: this->_M_p, +pointer_type : this->_M_p, +integer_type : this->_M_p, +type_decl wchar_t: this->_M_p, +integer_cst 32: this->_M_p, +integer_cst -2147483648: this->_M_p, +integer_cst 2147483647: this->_M_p, +call_expr : this->_M_p, +addr_expr : this->_M_p, +function_decl __base_dtor : this->_M_p, +parm_decl this: this->_M_p, +pointer_type : this->_M_p, +record_type : this->_M_p, +type_decl _Alloc_hider: this->_M_p, +integer_cst 64: this->_M_p, block : function_decl __comp_ctor : statement_list : diff --git a/test/test42-01.txt b/test/test42-01.txt index efbc178..eba07a3 100644 --- a/test/test42-01.txt +++ b/test/test42-01.txt @@ -335,7 +335,8 @@ function_decl getData5 test42.cpp 37:12 2147483647 record_type 5 - field type type_decl Data2 test42.cpp 4:8 4 - type name - isAutogenerated: 1 -function_decl getData1 test42.cpp 56:12 2147483647 +function_decl getData6 test42.cpp 41:20 2147483647 +- isVirtual: 1 - isPublic: 1 method_type 2147483646 - function type pointer_type 2147483645 - method return type @@ -343,18 +344,61 @@ function_decl getData1 test42.cpp 56:12 2147483647 type_decl Data1 test42.cpp 15:8 2 - type name - isAutogenerated: 1 record_type 2147483645 - method base type - type_decl Object1 test42.cpp 50:7 2147483644 - type name + type_decl Data1 test42.cpp 15:8 2147483644 - type name - isAutogenerated: 1 tree_list 2147483645 - arg types pointer_type 2147483644 - value record_type 3 - nested type - type_decl Object1 test42.cpp 50:7 2 - type name + type_decl Data1 test42.cpp 15:8 2 - type name - isAutogenerated: 1 tree_list 2147483644 - chain void_type 2147483643 - value type_decl void 0:0 2147483642 - type name - isAutogenerated: 1 - result_decl test42.cpp 57:5 2147483646 - function result + result_decl test42.cpp 42:5 2147483646 - function result + - isAutogenerated: 1 + pointer_type 2147483645 - result type + record_type 3 - nested type + type_decl Data1 test42.cpp 15:8 2 - type name + - isAutogenerated: 1 + integer_cst 64 2147483645 - decl size + parm_decl this test42.cpp 41:29 2147483646 - argument + - isAutogenerated: 1 + pointer_type 2147483645 - decl type + record_type 3 - nested type + type_decl Data1 test42.cpp 15:8 2 - type name + - isAutogenerated: 1 + integer_cst 64 2147483645 - parm size + return_expr test42.cpp 43:16 2147483646 - code + init_expr 2147483645 - operand + result_decl test42.cpp 42:5 2147483644 - operand + - isAutogenerated: 1 + pointer_type 2147483643 - result type + record_type 3 - nested type + type_decl Data1 test42.cpp 15:8 2 - type name + - isAutogenerated: 1 + integer_cst 64 2147483643 - decl size + integer_cst 0 2147483644 - operand +function_decl getData1 test42.cpp 60:12 2147483647 +- isPublic: 1 + method_type 2147483646 - function type + pointer_type 2147483645 - method return type + record_type 3 - nested type + type_decl Data1 test42.cpp 15:8 2 - type name + - isAutogenerated: 1 + record_type 2147483645 - method base type + type_decl Object1 test42.cpp 54:7 2147483644 - type name + - isAutogenerated: 1 + tree_list 2147483645 - arg types + pointer_type 2147483644 - value + record_type 3 - nested type + type_decl Object1 test42.cpp 54:7 2 - type name + - isAutogenerated: 1 + tree_list 2147483644 - chain + void_type 2147483643 - value + type_decl void 0:0 2147483642 - type name + - isAutogenerated: 1 + result_decl test42.cpp 61:5 2147483646 - function result - isAutogenerated: 1 pointer_type 2147483645 - result type record_type 3 - nested type @@ -362,41 +406,41 @@ function_decl getData1 test42.cpp 56:12 2147483647 - isAutogenerated: 1 integer_cst 64 2147483645 - decl size - isUsed: 1 - parm_decl this test42.cpp 56:21 2147483646 - argument + parm_decl this test42.cpp 60:21 2147483646 - argument - isAutogenerated: 1 pointer_type 2147483645 - decl type record_type 3 - nested type - type_decl Object1 test42.cpp 50:7 2 - type name + type_decl Object1 test42.cpp 54:7 2 - type name - isAutogenerated: 1 integer_cst 64 2147483645 - parm size - return_expr test42.cpp 58:16 2147483646 - code + return_expr test42.cpp 62:16 2147483646 - code init_expr 2147483645 - operand - result_decl test42.cpp 57:5 2147483644 - operand + result_decl test42.cpp 61:5 2147483644 - operand - isAutogenerated: 1 pointer_type 2147483643 - result type record_type 3 - nested type type_decl Data1 test42.cpp 15:8 2 - type name - isAutogenerated: 1 integer_cst 64 2147483643 - decl size - component_ref test42.cpp 58:16 2147483644 - operand + component_ref test42.cpp 62:16 2147483644 - operand indirect_ref 2147483643 - object nop_expr 2147483642 - ref - isUsed: 1 - parm_decl this test42.cpp 56:21 2147483641 - operand + parm_decl this test42.cpp 60:21 2147483641 - operand - isAutogenerated: 1 pointer_type 2147483640 - decl type record_type 3 - nested type - type_decl Object1 test42.cpp 50:7 2 - type name + type_decl Object1 test42.cpp 54:7 2 - type name - isAutogenerated: 1 integer_cst 64 2147483640 - parm size - field_decl tmp2 test42.cpp 53:12 2147483643 - field + field_decl tmp2 test42.cpp 57:12 2147483643 - field - unsigned integer_cst 64 2147483642 - decl size pointer_type 5 - field type record_type 3 - nested type type_decl Data1 test42.cpp 15:8 2 - type name - isAutogenerated: 1 -function_decl getData2 test42.cpp 61:12 2147483647 +function_decl getData2 test42.cpp 65:12 2147483647 - isPublic: 1 method_type 2147483646 - function type pointer_type 2147483645 - method return type @@ -404,18 +448,18 @@ function_decl getData2 test42.cpp 61:12 2147483647 type_decl Data1 test42.cpp 15:8 2 - type name - isAutogenerated: 1 record_type 2147483645 - method base type - type_decl Object1 test42.cpp 50:7 2147483644 - type name + type_decl Object1 test42.cpp 54:7 2147483644 - type name - isAutogenerated: 1 tree_list 2147483645 - arg types pointer_type 2147483644 - value record_type 3 - nested type - type_decl Object1 test42.cpp 50:7 2 - type name + type_decl Object1 test42.cpp 54:7 2 - type name - isAutogenerated: 1 tree_list 2147483644 - chain void_type 2147483643 - value type_decl void 0:0 2147483642 - type name - isAutogenerated: 1 - result_decl test42.cpp 62:5 2147483646 - function result + result_decl test42.cpp 66:5 2147483646 - function result - isAutogenerated: 1 pointer_type 2147483645 - result type record_type 3 - nested type @@ -423,53 +467,53 @@ function_decl getData2 test42.cpp 61:12 2147483647 - isAutogenerated: 1 integer_cst 64 2147483645 - decl size - isUsed: 1 - parm_decl this test42.cpp 61:21 2147483646 - argument + parm_decl this test42.cpp 65:21 2147483646 - argument - isAutogenerated: 1 pointer_type 2147483645 - decl type record_type 3 - nested type - type_decl Object1 test42.cpp 50:7 2 - type name + type_decl Object1 test42.cpp 54:7 2 - type name - isAutogenerated: 1 integer_cst 64 2147483645 - parm size - return_expr test42.cpp 63:16 2147483646 - code + return_expr test42.cpp 67:16 2147483646 - code init_expr 2147483645 - operand - result_decl test42.cpp 62:5 2147483644 - operand + result_decl test42.cpp 66:5 2147483644 - operand - isAutogenerated: 1 pointer_type 2147483643 - result type record_type 3 - nested type type_decl Data1 test42.cpp 15:8 2 - type name - isAutogenerated: 1 integer_cst 64 2147483643 - decl size - component_ref test42.cpp 63:16 2147483644 - operand + component_ref test42.cpp 67:16 2147483644 - operand indirect_ref 2147483643 - object nop_expr 2147483642 - ref - isUsed: 1 - parm_decl this test42.cpp 61:21 2147483641 - operand + parm_decl this test42.cpp 65:21 2147483641 - operand - isAutogenerated: 1 pointer_type 2147483640 - decl type record_type 3 - nested type - type_decl Object1 test42.cpp 50:7 2 - type name + type_decl Object1 test42.cpp 54:7 2 - type name - isAutogenerated: 1 integer_cst 64 2147483640 - parm size - field_decl tmp2 test42.cpp 53:12 2147483643 - field + field_decl tmp2 test42.cpp 57:12 2147483643 - field - unsigned integer_cst 64 2147483642 - decl size pointer_type 5 - field type record_type 3 - nested type type_decl Data1 test42.cpp 15:8 2 - type name - isAutogenerated: 1 -function_decl func1 test42.cpp 66:10 2147483647 +function_decl func1 test42.cpp 70:10 2147483647 - isPublic: 1 method_type 2147483646 - function type void_type 2147483645 - method return type type_decl void 0:0 2147483644 - type name - isAutogenerated: 1 record_type 2147483645 - method base type - type_decl Object1 test42.cpp 50:7 2147483644 - type name + type_decl Object1 test42.cpp 54:7 2147483644 - type name - isAutogenerated: 1 tree_list 2147483645 - arg types pointer_type 2147483644 - value record_type 3 - nested type - type_decl Object1 test42.cpp 50:7 2 - type name + type_decl Object1 test42.cpp 54:7 2 - type name - isAutogenerated: 1 tree_list 2147483644 - chain pointer_type 2147483643 - value @@ -480,44 +524,44 @@ function_decl func1 test42.cpp 66:10 2147483647 void_type 2147483642 - value type_decl void 0:0 2147483641 - type name - isAutogenerated: 1 - result_decl test42.cpp 67:5 2147483646 - function result + result_decl test42.cpp 71:5 2147483646 - function result - isAutogenerated: 1 void_type 2147483645 - result type type_decl void 0:0 2147483644 - type name - isAutogenerated: 1 - isUsed: 1 - parm_decl this test42.cpp 66:29 2147483646 - argument + parm_decl this test42.cpp 70:29 2147483646 - argument - isAutogenerated: 1 pointer_type 2147483645 - decl type record_type 3 - nested type - type_decl Object1 test42.cpp 50:7 2 - type name + type_decl Object1 test42.cpp 54:7 2 - type name - isAutogenerated: 1 integer_cst 64 2147483645 - parm size - parm_decl ptr1 test42.cpp 66:23 2147483646 - argument + parm_decl ptr1 test42.cpp 70:23 2147483646 - argument pointer_type 2147483645 - decl type record_type 3 - nested type type_decl Data1 test42.cpp 15:8 2 - type name - isAutogenerated: 1 integer_cst 64 2147483645 - parm size - cleanup_point_expr test42.cpp 68:24 2147483646 - code - expr_stmt test42.cpp 68:24 2147483645 - operand + cleanup_point_expr test42.cpp 72:24 2147483646 - code + expr_stmt test42.cpp 72:24 2147483645 - operand convert_expr 2147483644 - expresssion modify_expr 2147483643 - operand - component_ref test42.cpp 68:15 2147483642 - operand + component_ref test42.cpp 72:15 2147483642 - operand indirect_ref 2147483641 - object nop_expr 2147483640 - ref - component_ref test42.cpp 68:9 2147483639 - operand + component_ref test42.cpp 72:9 2147483639 - operand indirect_ref 2147483638 - object nop_expr 2147483637 - ref - isUsed: 1 - parm_decl this test42.cpp 66:29 2147483636 - operand + parm_decl this test42.cpp 70:29 2147483636 - operand - isAutogenerated: 1 pointer_type 2147483635 - decl type record_type 3 - nested type - type_decl Object1 test42.cpp 50:7 2 - type name + type_decl Object1 test42.cpp 54:7 2 - type name - isAutogenerated: 1 integer_cst 64 2147483635 - parm size - field_decl tmp1 test42.cpp 52:12 2147483638 - field + field_decl tmp1 test42.cpp 56:12 2147483638 - field - unsigned integer_cst 64 2147483637 - decl size pointer_type 5 - field type @@ -536,19 +580,19 @@ function_decl func1 test42.cpp 66:10 2147483647 integer_cst -2147483648 4 - min value integer_cst 2147483647 4 - max value integer_cst 100 2147483642 - operand -function_decl func2 test42.cpp 71:10 2147483647 +function_decl func2 test42.cpp 75:10 2147483647 - isPublic: 1 method_type 2147483646 - function type void_type 2147483645 - method return type type_decl void 0:0 2147483644 - type name - isAutogenerated: 1 record_type 2147483645 - method base type - type_decl Object1 test42.cpp 50:7 2147483644 - type name + type_decl Object1 test42.cpp 54:7 2147483644 - type name - isAutogenerated: 1 tree_list 2147483645 - arg types pointer_type 2147483644 - value record_type 3 - nested type - type_decl Object1 test42.cpp 50:7 2 - type name + type_decl Object1 test42.cpp 54:7 2 - type name - isAutogenerated: 1 tree_list 2147483644 - chain pointer_type 2147483643 - value @@ -559,44 +603,44 @@ function_decl func2 test42.cpp 71:10 2147483647 void_type 2147483642 - value type_decl void 0:0 2147483641 - type name - isAutogenerated: 1 - result_decl test42.cpp 72:5 2147483646 - function result + result_decl test42.cpp 76:5 2147483646 - function result - isAutogenerated: 1 void_type 2147483645 - result type type_decl void 0:0 2147483644 - type name - isAutogenerated: 1 - isUsed: 1 - parm_decl this test42.cpp 71:29 2147483646 - argument + parm_decl this test42.cpp 75:29 2147483646 - argument - isAutogenerated: 1 pointer_type 2147483645 - decl type record_type 3 - nested type - type_decl Object1 test42.cpp 50:7 2 - type name + type_decl Object1 test42.cpp 54:7 2 - type name - isAutogenerated: 1 integer_cst 64 2147483645 - parm size - parm_decl ptr1 test42.cpp 71:23 2147483646 - argument + parm_decl ptr1 test42.cpp 75:23 2147483646 - argument pointer_type 2147483645 - decl type record_type 3 - nested type type_decl Data1 test42.cpp 15:8 2 - type name - isAutogenerated: 1 integer_cst 64 2147483645 - parm size - cleanup_point_expr test42.cpp 73:24 2147483646 - code - expr_stmt test42.cpp 73:24 2147483645 - operand + cleanup_point_expr test42.cpp 77:24 2147483646 - code + expr_stmt test42.cpp 77:24 2147483645 - operand convert_expr 2147483644 - expresssion modify_expr 2147483643 - operand - component_ref test42.cpp 73:15 2147483642 - operand + component_ref test42.cpp 77:15 2147483642 - operand indirect_ref 2147483641 - object nop_expr 2147483640 - ref - component_ref test42.cpp 73:9 2147483639 - operand + component_ref test42.cpp 77:9 2147483639 - operand indirect_ref 2147483638 - object nop_expr 2147483637 - ref - isUsed: 1 - parm_decl this test42.cpp 71:29 2147483636 - operand + parm_decl this test42.cpp 75:29 2147483636 - operand - isAutogenerated: 1 pointer_type 2147483635 - decl type record_type 3 - nested type - type_decl Object1 test42.cpp 50:7 2 - type name + type_decl Object1 test42.cpp 54:7 2 - type name - isAutogenerated: 1 integer_cst 64 2147483635 - parm size - field_decl tmp3 test42.cpp 54:47 2147483638 - field + field_decl tmp3 test42.cpp 58:47 2147483638 - field - unsigned tree_list 2147483637 - attribute identifier_node nonnullpointer 2147483636 - purpose @@ -617,19 +661,19 @@ function_decl func2 test42.cpp 71:10 2147483647 integer_cst -2147483648 4 - min value integer_cst 2147483647 4 - max value integer_cst 100 2147483642 - operand -function_decl func3 test42.cpp 76:10 2147483647 +function_decl func3 test42.cpp 80:10 2147483647 - isPublic: 1 method_type 2147483646 - function type void_type 2147483645 - method return type type_decl void 0:0 2147483644 - type name - isAutogenerated: 1 record_type 2147483645 - method base type - type_decl Object1 test42.cpp 50:7 2147483644 - type name + type_decl Object1 test42.cpp 54:7 2147483644 - type name - isAutogenerated: 1 tree_list 2147483645 - arg types pointer_type 2147483644 - value record_type 3 - nested type - type_decl Object1 test42.cpp 50:7 2 - type name + type_decl Object1 test42.cpp 54:7 2 - type name - isAutogenerated: 1 tree_list 2147483644 - chain pointer_type 2147483643 - value @@ -640,31 +684,31 @@ function_decl func3 test42.cpp 76:10 2147483647 void_type 2147483642 - value type_decl void 0:0 2147483641 - type name - isAutogenerated: 1 - result_decl test42.cpp 77:5 2147483646 - function result + result_decl test42.cpp 81:5 2147483646 - function result - isAutogenerated: 1 void_type 2147483645 - result type type_decl void 0:0 2147483644 - type name - isAutogenerated: 1 - parm_decl this test42.cpp 76:29 2147483646 - argument + parm_decl this test42.cpp 80:29 2147483646 - argument - isAutogenerated: 1 pointer_type 2147483645 - decl type record_type 3 - nested type - type_decl Object1 test42.cpp 50:7 2 - type name + type_decl Object1 test42.cpp 54:7 2 - type name - isAutogenerated: 1 integer_cst 64 2147483645 - parm size - parm_decl ptr1 test42.cpp 76:23 2147483646 - argument + parm_decl ptr1 test42.cpp 80:23 2147483646 - argument pointer_type 2147483645 - decl type record_type 3 - nested type type_decl Data1 test42.cpp 15:8 2 - type name - isAutogenerated: 1 integer_cst 64 2147483645 - parm size - cleanup_point_expr test42.cpp 78:25 2147483646 - code - expr_stmt test42.cpp 78:25 2147483645 - operand + cleanup_point_expr test42.cpp 82:25 2147483646 - code + expr_stmt test42.cpp 82:25 2147483645 - operand convert_expr 2147483644 - expresssion modify_expr 2147483643 - operand - component_ref test42.cpp 78:16 2147483642 - operand + component_ref test42.cpp 82:16 2147483642 - operand indirect_ref 2147483641 - object - var_decl gptr1 test42.cpp 45:8 2147483640 - ref + var_decl gptr1 test42.cpp 49:8 2147483640 - ref - isUsed: 1 integer_cst 64 2147483639 - decl size pointer_type 2147483639 - var type @@ -683,19 +727,19 @@ function_decl func3 test42.cpp 76:10 2147483647 integer_cst -2147483648 4 - min value integer_cst 2147483647 4 - max value integer_cst 100 2147483642 - operand -function_decl func4 test42.cpp 81:10 2147483647 +function_decl func4 test42.cpp 85:10 2147483647 - isPublic: 1 method_type 2147483646 - function type void_type 2147483645 - method return type type_decl void 0:0 2147483644 - type name - isAutogenerated: 1 record_type 2147483645 - method base type - type_decl Object1 test42.cpp 50:7 2147483644 - type name + type_decl Object1 test42.cpp 54:7 2147483644 - type name - isAutogenerated: 1 tree_list 2147483645 - arg types pointer_type 2147483644 - value record_type 3 - nested type - type_decl Object1 test42.cpp 50:7 2 - type name + type_decl Object1 test42.cpp 54:7 2 - type name - isAutogenerated: 1 tree_list 2147483644 - chain pointer_type 2147483643 - value @@ -706,31 +750,31 @@ function_decl func4 test42.cpp 81:10 2147483647 void_type 2147483642 - value type_decl void 0:0 2147483641 - type name - isAutogenerated: 1 - result_decl test42.cpp 82:5 2147483646 - function result + result_decl test42.cpp 86:5 2147483646 - function result - isAutogenerated: 1 void_type 2147483645 - result type type_decl void 0:0 2147483644 - type name - isAutogenerated: 1 - parm_decl this test42.cpp 81:29 2147483646 - argument + parm_decl this test42.cpp 85:29 2147483646 - argument - isAutogenerated: 1 pointer_type 2147483645 - decl type record_type 3 - nested type - type_decl Object1 test42.cpp 50:7 2 - type name + type_decl Object1 test42.cpp 54:7 2 - type name - isAutogenerated: 1 integer_cst 64 2147483645 - parm size - parm_decl ptr1 test42.cpp 81:23 2147483646 - argument + parm_decl ptr1 test42.cpp 85:23 2147483646 - argument pointer_type 2147483645 - decl type record_type 3 - nested type type_decl Data1 test42.cpp 15:8 2 - type name - isAutogenerated: 1 integer_cst 64 2147483645 - parm size - cleanup_point_expr test42.cpp 83:25 2147483646 - code - expr_stmt test42.cpp 83:25 2147483645 - operand + cleanup_point_expr test42.cpp 87:25 2147483646 - code + expr_stmt test42.cpp 87:25 2147483645 - operand convert_expr 2147483644 - expresssion modify_expr 2147483643 - operand - component_ref test42.cpp 83:16 2147483642 - operand + component_ref test42.cpp 87:16 2147483642 - operand indirect_ref 2147483641 - object - var_decl gptr2 test42.cpp 46:8 2147483640 - ref + var_decl gptr2 test42.cpp 50:8 2147483640 - ref - isUsed: 1 tree_list 2147483639 - attribute identifier_node nonnullpointer 2147483638 - purpose @@ -751,19 +795,19 @@ function_decl func4 test42.cpp 81:10 2147483647 integer_cst -2147483648 4 - min value integer_cst 2147483647 4 - max value integer_cst 100 2147483642 - operand -function_decl func5 test42.cpp 86:10 2147483647 +function_decl func5 test42.cpp 90:10 2147483647 - isPublic: 1 method_type 2147483646 - function type void_type 2147483645 - method return type type_decl void 0:0 2147483644 - type name - isAutogenerated: 1 record_type 2147483645 - method base type - type_decl Object1 test42.cpp 50:7 2147483644 - type name + type_decl Object1 test42.cpp 54:7 2147483644 - type name - isAutogenerated: 1 tree_list 2147483645 - arg types pointer_type 2147483644 - value record_type 3 - nested type - type_decl Object1 test42.cpp 50:7 2 - type name + type_decl Object1 test42.cpp 54:7 2 - type name - isAutogenerated: 1 tree_list 2147483644 - chain pointer_type 2147483643 - value @@ -774,29 +818,29 @@ function_decl func5 test42.cpp 86:10 2147483647 void_type 2147483642 - value type_decl void 0:0 2147483641 - type name - isAutogenerated: 1 - result_decl test42.cpp 87:5 2147483646 - function result + result_decl test42.cpp 91:5 2147483646 - function result - isAutogenerated: 1 void_type 2147483645 - result type type_decl void 0:0 2147483644 - type name - isAutogenerated: 1 - isUsed: 1 - parm_decl this test42.cpp 86:29 2147483646 - argument + parm_decl this test42.cpp 90:29 2147483646 - argument - isAutogenerated: 1 pointer_type 2147483645 - decl type record_type 3 - nested type - type_decl Object1 test42.cpp 50:7 2 - type name + type_decl Object1 test42.cpp 54:7 2 - type name - isAutogenerated: 1 integer_cst 64 2147483645 - parm size - parm_decl ptr1 test42.cpp 86:23 2147483646 - argument + parm_decl ptr1 test42.cpp 90:23 2147483646 - argument pointer_type 2147483645 - decl type record_type 3 - nested type type_decl Data1 test42.cpp 15:8 2 - type name - isAutogenerated: 1 integer_cst 64 2147483645 - parm size - cleanup_point_expr test42.cpp 88:25 2147483646 - code - expr_stmt test42.cpp 88:25 2147483645 - operand + cleanup_point_expr test42.cpp 92:25 2147483646 - code + expr_stmt test42.cpp 92:25 2147483645 - operand convert_expr 2147483644 - expresssion - call_expr test42.cpp 88:23 2147483643 - operand + call_expr test42.cpp 92:23 2147483643 - operand addr_expr 2147483642 - function function_decl getData2 test42.cpp 23:12 20 - operand - isExternal: 1 @@ -861,37 +905,37 @@ function_decl func5 test42.cpp 86:10 2147483647 type_decl Data1 test42.cpp 15:8 2 - type name - isAutogenerated: 1 nop_expr 2147483642 - arg - component_ref test42.cpp 88:9 2147483641 - operand + component_ref test42.cpp 92:9 2147483641 - operand indirect_ref 2147483640 - object nop_expr 2147483639 - ref - isUsed: 1 - parm_decl this test42.cpp 86:29 2147483638 - operand + parm_decl this test42.cpp 90:29 2147483638 - operand - isAutogenerated: 1 pointer_type 2147483637 - decl type record_type 3 - nested type - type_decl Object1 test42.cpp 50:7 2 - type name + type_decl Object1 test42.cpp 54:7 2 - type name - isAutogenerated: 1 integer_cst 64 2147483637 - parm size - field_decl tmp1 test42.cpp 52:12 2147483640 - field + field_decl tmp1 test42.cpp 56:12 2147483640 - field - unsigned integer_cst 64 2147483639 - decl size pointer_type 5 - field type record_type 3 - nested type type_decl Data1 test42.cpp 15:8 2 - type name - isAutogenerated: 1 -function_decl func6 test42.cpp 91:10 2147483647 +function_decl func6 test42.cpp 95:10 2147483647 - isPublic: 1 method_type 2147483646 - function type void_type 2147483645 - method return type type_decl void 0:0 2147483644 - type name - isAutogenerated: 1 record_type 2147483645 - method base type - type_decl Object1 test42.cpp 50:7 2147483644 - type name + type_decl Object1 test42.cpp 54:7 2147483644 - type name - isAutogenerated: 1 tree_list 2147483645 - arg types pointer_type 2147483644 - value record_type 3 - nested type - type_decl Object1 test42.cpp 50:7 2 - type name + type_decl Object1 test42.cpp 54:7 2 - type name - isAutogenerated: 1 tree_list 2147483644 - chain pointer_type 2147483643 - value @@ -902,29 +946,29 @@ function_decl func6 test42.cpp 91:10 2147483647 void_type 2147483642 - value type_decl void 0:0 2147483641 - type name - isAutogenerated: 1 - result_decl test42.cpp 92:5 2147483646 - function result + result_decl test42.cpp 96:5 2147483646 - function result - isAutogenerated: 1 void_type 2147483645 - result type type_decl void 0:0 2147483644 - type name - isAutogenerated: 1 - isUsed: 1 - parm_decl this test42.cpp 91:29 2147483646 - argument + parm_decl this test42.cpp 95:29 2147483646 - argument - isAutogenerated: 1 pointer_type 2147483645 - decl type record_type 3 - nested type - type_decl Object1 test42.cpp 50:7 2 - type name + type_decl Object1 test42.cpp 54:7 2 - type name - isAutogenerated: 1 integer_cst 64 2147483645 - parm size - parm_decl ptr1 test42.cpp 91:23 2147483646 - argument + parm_decl ptr1 test42.cpp 95:23 2147483646 - argument pointer_type 2147483645 - decl type record_type 3 - nested type type_decl Data1 test42.cpp 15:8 2 - type name - isAutogenerated: 1 integer_cst 64 2147483645 - parm size - cleanup_point_expr test42.cpp 93:25 2147483646 - code - expr_stmt test42.cpp 93:25 2147483645 - operand + cleanup_point_expr test42.cpp 97:25 2147483646 - code + expr_stmt test42.cpp 97:25 2147483645 - operand convert_expr 2147483644 - expresssion - call_expr test42.cpp 93:23 2147483643 - operand + call_expr test42.cpp 97:23 2147483643 - operand addr_expr 2147483642 - function function_decl getData2 test42.cpp 23:12 20 - operand - isExternal: 1 @@ -989,18 +1033,18 @@ function_decl func6 test42.cpp 91:10 2147483647 type_decl Data1 test42.cpp 15:8 2 - type name - isAutogenerated: 1 nop_expr 2147483642 - arg - component_ref test42.cpp 93:9 2147483641 - operand + component_ref test42.cpp 97:9 2147483641 - operand indirect_ref 2147483640 - object nop_expr 2147483639 - ref - isUsed: 1 - parm_decl this test42.cpp 91:29 2147483638 - operand + parm_decl this test42.cpp 95:29 2147483638 - operand - isAutogenerated: 1 pointer_type 2147483637 - decl type record_type 3 - nested type - type_decl Object1 test42.cpp 50:7 2 - type name + type_decl Object1 test42.cpp 54:7 2 - type name - isAutogenerated: 1 integer_cst 64 2147483637 - parm size - field_decl tmp3 test42.cpp 54:47 2147483640 - field + field_decl tmp3 test42.cpp 58:47 2147483640 - field - unsigned tree_list 2147483639 - attribute identifier_node nonnullpointer 2147483638 - purpose @@ -1079,7 +1123,7 @@ function_decl Data1 test42.cpp 15:8 2147483647 - isUsed: 1 - isVirtual: 1 - isAutogenerated: 1 - integer_cst 320 2147483638 - decl size + integer_cst 384 2147483638 - decl size constructor 10 - initial array_type 9 - constructor type pointer_type 8 - element type @@ -1099,7 +1143,7 @@ function_decl Data1 test42.cpp 15:8 2147483647 - signed integer_cst 64 7 - type size integer_cst 0 7 - min value - integer_cst 4 7 - max value + integer_cst 5 7 - max value nop_expr 9 - value integer_cst 0 8 - operand nop_expr 9 - value @@ -1267,6 +1311,53 @@ function_decl Data1 test42.cpp 15:8 2147483647 integer_cst 64 1 - decl size pointer_type 1 - field type record_type 0 - nested type + nop_expr 9 - value + addr_expr 8 - operand + function_decl getData6 test42.cpp 41:20 7 - operand + - isVirtual: 1 + - isExternal: 1 + - isPublic: 1 + method_type 6 - function type + pointer_type 5 - method return type + record_type 3 - nested type + type_decl Data1 test42.cpp 15:8 2 - type name + - isAutogenerated: 1 + record_type 5 - method base type + type_decl Data1 test42.cpp 15:8 4 - type name + - isAutogenerated: 1 + tree_list 5 - arg types + pointer_type 4 - value + record_type 3 - nested type + type_decl Data1 test42.cpp 15:8 2 - type name + - isAutogenerated: 1 + tree_list 4 - chain + void_type 3 - value + type_decl void 0:0 2 - type name + - isAutogenerated: 1 + result_decl test42.cpp 42:5 6 - function result + - isAutogenerated: 1 + pointer_type 5 - result type + record_type 3 - nested type + type_decl Data1 test42.cpp 15:8 2 - type name + - isAutogenerated: 1 + integer_cst 64 5 - decl size + parm_decl this test42.cpp 41:29 6 - argument + - isAutogenerated: 1 + pointer_type 5 - decl type + record_type 3 - nested type + type_decl Data1 test42.cpp 15:8 2 - type name + - isAutogenerated: 1 + integer_cst 64 5 - parm size + return_expr test42.cpp 43:16 6 - code + init_expr 5 - operand + result_decl test42.cpp 42:5 4 - operand + - isAutogenerated: 1 + pointer_type 3 - result type + record_type 2 - nested type + type_decl Data1 test42.cpp 15:8 1 - type name + - isAutogenerated: 1 + integer_cst 64 3 - decl size + integer_cst 0 4 - operand array_type 2147483638 - var type pointer_type 2147483637 - element type type_decl __vtbl_ptr_type 0:0 2147483636 - type name @@ -1285,7 +1376,7 @@ function_decl Data1 test42.cpp 15:8 2147483647 - signed integer_cst 64 2147483636 - type size integer_cst 0 2147483636 - min value - integer_cst 4 2147483636 - max value + integer_cst 5 2147483636 - max value integer_cst 16 2147483640 - operand block 2147483645 - operand function_decl __base_ctor test42.cpp 15:8 2147483647 @@ -1358,7 +1449,7 @@ function_decl __base_ctor test42.cpp 15:8 2147483647 - isUsed: 1 - isVirtual: 1 - isAutogenerated: 1 - integer_cst 320 2147483638 - decl size + integer_cst 384 2147483638 - decl size constructor 10 - initial array_type 9 - constructor type pointer_type 8 - element type @@ -1378,7 +1469,7 @@ function_decl __base_ctor test42.cpp 15:8 2147483647 - signed integer_cst 64 7 - type size integer_cst 0 7 - min value - integer_cst 4 7 - max value + integer_cst 5 7 - max value nop_expr 9 - value integer_cst 0 8 - operand nop_expr 9 - value @@ -1546,6 +1637,53 @@ function_decl __base_ctor test42.cpp 15:8 2147483647 integer_cst 64 1 - decl size pointer_type 1 - field type record_type 0 - nested type + nop_expr 9 - value + addr_expr 8 - operand + function_decl getData6 test42.cpp 41:20 7 - operand + - isVirtual: 1 + - isExternal: 1 + - isPublic: 1 + method_type 6 - function type + pointer_type 5 - method return type + record_type 3 - nested type + type_decl Data1 test42.cpp 15:8 2 - type name + - isAutogenerated: 1 + record_type 5 - method base type + type_decl Data1 test42.cpp 15:8 4 - type name + - isAutogenerated: 1 + tree_list 5 - arg types + pointer_type 4 - value + record_type 3 - nested type + type_decl Data1 test42.cpp 15:8 2 - type name + - isAutogenerated: 1 + tree_list 4 - chain + void_type 3 - value + type_decl void 0:0 2 - type name + - isAutogenerated: 1 + result_decl test42.cpp 42:5 6 - function result + - isAutogenerated: 1 + pointer_type 5 - result type + record_type 3 - nested type + type_decl Data1 test42.cpp 15:8 2 - type name + - isAutogenerated: 1 + integer_cst 64 5 - decl size + parm_decl this test42.cpp 41:29 6 - argument + - isAutogenerated: 1 + pointer_type 5 - decl type + record_type 3 - nested type + type_decl Data1 test42.cpp 15:8 2 - type name + - isAutogenerated: 1 + integer_cst 64 5 - parm size + return_expr test42.cpp 43:16 6 - code + init_expr 5 - operand + result_decl test42.cpp 42:5 4 - operand + - isAutogenerated: 1 + pointer_type 3 - result type + record_type 2 - nested type + type_decl Data1 test42.cpp 15:8 1 - type name + - isAutogenerated: 1 + integer_cst 64 3 - decl size + integer_cst 0 4 - operand array_type 2147483638 - var type pointer_type 2147483637 - element type type_decl __vtbl_ptr_type 0:0 2147483636 - type name @@ -1564,7 +1702,7 @@ function_decl __base_ctor test42.cpp 15:8 2147483647 - signed integer_cst 64 2147483636 - type size integer_cst 0 2147483636 - min value - integer_cst 4 2147483636 - max value + integer_cst 5 2147483636 - max value integer_cst 16 2147483640 - operand block 2147483645 - operand function_decl __comp_ctor test42.cpp 15:8 2147483647 @@ -1599,19 +1737,19 @@ function_decl __comp_ctor test42.cpp 15:8 2147483647 - isAutogenerated: 1 integer_cst 64 2147483645 - parm size statement_list 2147483646 - code -function_decl func7 test42.cpp 96:10 2147483647 +function_decl func7 test42.cpp 100:10 2147483647 - isPublic: 1 method_type 2147483646 - function type void_type 2147483645 - method return type type_decl void 0:0 2147483644 - type name - isAutogenerated: 1 record_type 2147483645 - method base type - type_decl Object1 test42.cpp 50:7 2147483644 - type name + type_decl Object1 test42.cpp 54:7 2147483644 - type name - isAutogenerated: 1 tree_list 2147483645 - arg types pointer_type 2147483644 - value record_type 3 - nested type - type_decl Object1 test42.cpp 50:7 2 - type name + type_decl Object1 test42.cpp 54:7 2 - type name - isAutogenerated: 1 tree_list 2147483644 - chain pointer_type 2147483643 - value @@ -1622,42 +1760,42 @@ function_decl func7 test42.cpp 96:10 2147483647 void_type 2147483642 - value type_decl void 0:0 2147483641 - type name - isAutogenerated: 1 - result_decl test42.cpp 97:5 2147483646 - function result + result_decl test42.cpp 101:5 2147483646 - function result - isAutogenerated: 1 void_type 2147483645 - result type type_decl void 0:0 2147483644 - type name - isAutogenerated: 1 - parm_decl this test42.cpp 96:29 2147483646 - argument + parm_decl this test42.cpp 100:29 2147483646 - argument - isAutogenerated: 1 pointer_type 2147483645 - decl type record_type 3 - nested type - type_decl Object1 test42.cpp 50:7 2 - type name + type_decl Object1 test42.cpp 54:7 2 - type name - isAutogenerated: 1 integer_cst 64 2147483645 - parm size - parm_decl ptr1 test42.cpp 96:23 2147483646 - argument + parm_decl ptr1 test42.cpp 100:23 2147483646 - argument pointer_type 2147483645 - decl type record_type 3 - nested type type_decl Data1 test42.cpp 15:8 2 - type name - isAutogenerated: 1 integer_cst 64 2147483645 - parm size - bind_expr test42.cpp 99:23 2147483646 - code - var_decl val1 test42.cpp 98:15 2147483645 - operand + bind_expr test42.cpp 103:23 2147483646 - code + var_decl val1 test42.cpp 102:15 2147483645 - operand - isUsed: 1 integer_cst 576 2147483644 - decl size record_type 2147483644 - var type type_decl Data1 test42.cpp 15:8 2147483643 - type name - isAutogenerated: 1 statement_list 2147483645 - operand - decl_expr test42.cpp 98:15 2147483644 - statement - var_decl val1 test42.cpp 98:15 2147483643 - operand + decl_expr test42.cpp 102:15 2147483644 - statement + var_decl val1 test42.cpp 102:15 2147483643 - operand - isUsed: 1 integer_cst 576 5 - decl size 2 record_type 5 - var type 2 type_decl Data1 test42.cpp 15:8 4 - type name - isAutogenerated: 1 - cleanup_point_expr test42.cpp 98:15 2147483644 - statement - expr_stmt test42.cpp 98:15 2147483643 - operand - call_expr test42.cpp 98:15 2147483642 - expresssion + cleanup_point_expr test42.cpp 102:15 2147483644 - statement + expr_stmt test42.cpp 102:15 2147483643 - operand + call_expr test42.cpp 102:15 2147483642 - expresssion addr_expr 2147483641 - function function_decl __comp_ctor test42.cpp 15:8 20 - operand - isAutogenerated: 1 @@ -1692,20 +1830,20 @@ function_decl func7 test42.cpp 96:10 2147483647 integer_cst 64 18 - parm size statement_list 19 - code addr_expr 2147483641 - arg - var_decl val1 test42.cpp 98:15 2147483640 - operand + var_decl val1 test42.cpp 102:15 2147483640 - operand - isUsed: 1 integer_cst 576 5 - decl size 2 record_type 5 - var type 2 type_decl Data1 test42.cpp 15:8 4 - type name - isAutogenerated: 1 - cleanup_stmt test42.cpp 98:15 2147483644 - statement + cleanup_stmt test42.cpp 102:15 2147483644 - statement statement_list 2147483643 - body - cleanup_point_expr test42.cpp 99:23 2147483642 - statement - expr_stmt test42.cpp 99:23 2147483641 - operand + cleanup_point_expr test42.cpp 103:23 2147483642 - statement + expr_stmt test42.cpp 103:23 2147483641 - operand convert_expr 2147483640 - expresssion modify_expr 2147483639 - operand - component_ref test42.cpp 99:14 2147483638 - operand - var_decl val1 test42.cpp 98:15 2147483637 - object + component_ref test42.cpp 103:14 2147483638 - operand + var_decl val1 test42.cpp 102:15 2147483637 - object - isUsed: 1 integer_cst 576 5 - decl size 2 record_type 5 - var type 2 @@ -1753,38 +1891,38 @@ function_decl func7 test42.cpp 96:10 2147483647 - isAutogenerated: 1 integer_cst 64 18 - parm size addr_expr 2147483642 - arg - var_decl val1 test42.cpp 98:15 2147483641 - operand + var_decl val1 test42.cpp 102:15 2147483641 - operand - isUsed: 1 integer_cst 576 5 - decl size 2 record_type 5 - var type 2 type_decl Data1 test42.cpp 15:8 4 - type name - isAutogenerated: 1 - var_decl val1 test42.cpp 98:15 2147483643 - decl + var_decl val1 test42.cpp 102:15 2147483643 - decl - isUsed: 1 integer_cst 576 5 - decl size 2 record_type 5 - var type 2 type_decl Data1 test42.cpp 15:8 4 - type name - isAutogenerated: 1 block 2147483645 - operand - var_decl val1 test42.cpp 98:15 2147483644 - block vars + var_decl val1 test42.cpp 102:15 2147483644 - block vars - isUsed: 1 integer_cst 576 5 - decl size 2 record_type 5 - var type 2 type_decl Data1 test42.cpp 15:8 4 - type name - isAutogenerated: 1 -function_decl func8 test42.cpp 102:10 2147483647 +function_decl func8 test42.cpp 106:10 2147483647 - isPublic: 1 method_type 2147483646 - function type void_type 2147483645 - method return type type_decl void 0:0 2147483644 - type name - isAutogenerated: 1 record_type 2147483645 - method base type - type_decl Object1 test42.cpp 50:7 2147483644 - type name + type_decl Object1 test42.cpp 54:7 2147483644 - type name - isAutogenerated: 1 tree_list 2147483645 - arg types pointer_type 2147483644 - value record_type 3 - nested type - type_decl Object1 test42.cpp 50:7 2 - type name + type_decl Object1 test42.cpp 54:7 2 - type name - isAutogenerated: 1 tree_list 2147483644 - chain reference_type 2147483643 - value @@ -1795,33 +1933,33 @@ function_decl func8 test42.cpp 102:10 2147483647 void_type 2147483642 - value type_decl void 0:0 2147483641 - type name - isAutogenerated: 1 - result_decl test42.cpp 103:5 2147483646 - function result + result_decl test42.cpp 107:5 2147483646 - function result - isAutogenerated: 1 void_type 2147483645 - result type type_decl void 0:0 2147483644 - type name - isAutogenerated: 1 - parm_decl this test42.cpp 102:29 2147483646 - argument + parm_decl this test42.cpp 106:29 2147483646 - argument - isAutogenerated: 1 pointer_type 2147483645 - decl type record_type 3 - nested type - type_decl Object1 test42.cpp 50:7 2 - type name + type_decl Object1 test42.cpp 54:7 2 - type name - isAutogenerated: 1 integer_cst 64 2147483645 - parm size - isUsed: 1 - parm_decl ptr1 test42.cpp 102:23 2147483646 - argument + parm_decl ptr1 test42.cpp 106:23 2147483646 - argument reference_type 2147483645 - decl type record_type 2147483644 - nested type type_decl Data1 test42.cpp 15:8 2147483643 - type name - isAutogenerated: 1 integer_cst 64 2147483645 - parm size - cleanup_point_expr test42.cpp 104:23 2147483646 - code - expr_stmt test42.cpp 104:23 2147483645 - operand + cleanup_point_expr test42.cpp 108:23 2147483646 - code + expr_stmt test42.cpp 108:23 2147483645 - operand convert_expr 2147483644 - expresssion modify_expr 2147483643 - operand - component_ref test42.cpp 104:14 2147483642 - operand + component_ref test42.cpp 108:14 2147483642 - operand indirect_ref 2147483641 - object - isUsed: 1 - parm_decl ptr1 test42.cpp 102:23 2147483640 - ref + parm_decl ptr1 test42.cpp 106:23 2147483640 - ref reference_type 2147483639 - decl type record_type 2147483638 - nested type type_decl Data1 test42.cpp 15:8 2147483637 - type name @@ -1839,19 +1977,19 @@ function_decl func8 test42.cpp 102:10 2147483647 integer_cst -2147483648 4 - min value integer_cst 2147483647 4 - max value integer_cst 200 2147483642 - operand -function_decl func9 test42.cpp 107:10 2147483647 +function_decl func9 test42.cpp 111:10 2147483647 - isPublic: 1 method_type 2147483646 - function type void_type 2147483645 - method return type type_decl void 0:0 2147483644 - type name - isAutogenerated: 1 record_type 2147483645 - method base type - type_decl Object1 test42.cpp 50:7 2147483644 - type name + type_decl Object1 test42.cpp 54:7 2147483644 - type name - isAutogenerated: 1 tree_list 2147483645 - arg types pointer_type 2147483644 - value record_type 3 - nested type - type_decl Object1 test42.cpp 50:7 2 - type name + type_decl Object1 test42.cpp 54:7 2 - type name - isAutogenerated: 1 tree_list 2147483644 - chain pointer_type 2147483643 - value @@ -1862,26 +2000,26 @@ function_decl func9 test42.cpp 107:10 2147483647 void_type 2147483642 - value type_decl void 0:0 2147483641 - type name - isAutogenerated: 1 - result_decl test42.cpp 108:5 2147483646 - function result + result_decl test42.cpp 112:5 2147483646 - function result - isAutogenerated: 1 void_type 2147483645 - result type type_decl void 0:0 2147483644 - type name - isAutogenerated: 1 - parm_decl this test42.cpp 107:29 2147483646 - argument + parm_decl this test42.cpp 111:29 2147483646 - argument - isAutogenerated: 1 pointer_type 2147483645 - decl type record_type 3 - nested type - type_decl Object1 test42.cpp 50:7 2 - type name + type_decl Object1 test42.cpp 54:7 2 - type name - isAutogenerated: 1 integer_cst 64 2147483645 - parm size - parm_decl ptr1 test42.cpp 107:23 2147483646 - argument + parm_decl ptr1 test42.cpp 111:23 2147483646 - argument pointer_type 2147483645 - decl type record_type 3 - nested type type_decl Data1 test42.cpp 15:8 2 - type name - isAutogenerated: 1 integer_cst 64 2147483645 - parm size - bind_expr test42.cpp 110:24 2147483646 - code - var_decl val1 test42.cpp 109:16 2147483645 - operand + bind_expr test42.cpp 114:24 2147483646 - code + var_decl val1 test42.cpp 113:16 2147483645 - operand - isUsed: 1 integer_cst 64 2147483644 - decl size pointer_type 2147483644 - var type @@ -1889,21 +2027,21 @@ function_decl func9 test42.cpp 107:10 2147483647 type_decl Data1 test42.cpp 15:8 2 - type name - isAutogenerated: 1 statement_list 2147483645 - operand - decl_expr test42.cpp 109:16 2147483644 - statement - var_decl val1 test42.cpp 109:16 2147483643 - operand + decl_expr test42.cpp 113:16 2147483644 - statement + var_decl val1 test42.cpp 113:16 2147483643 - operand - isUsed: 1 integer_cst 64 5 - decl size 2 pointer_type 5 - var type 2 record_type 3 - nested type type_decl Data1 test42.cpp 15:8 2 - type name - isAutogenerated: 1 - cleanup_point_expr test42.cpp 110:24 2147483644 - statement - expr_stmt test42.cpp 110:24 2147483643 - operand + cleanup_point_expr test42.cpp 114:24 2147483644 - statement + expr_stmt test42.cpp 114:24 2147483643 - operand convert_expr 2147483642 - expresssion modify_expr 2147483641 - operand - component_ref test42.cpp 110:15 2147483640 - operand + component_ref test42.cpp 114:15 2147483640 - operand indirect_ref 2147483639 - object - var_decl val1 test42.cpp 109:16 2147483638 - ref + var_decl val1 test42.cpp 113:16 2147483638 - ref - isUsed: 1 integer_cst 64 5 - decl size 2 pointer_type 5 - var type 2 @@ -1923,26 +2061,26 @@ function_decl func9 test42.cpp 107:10 2147483647 integer_cst 2147483647 4 - max value integer_cst 300 2147483640 - operand block 2147483645 - operand - var_decl val1 test42.cpp 109:16 2147483644 - block vars + var_decl val1 test42.cpp 113:16 2147483644 - block vars - isUsed: 1 integer_cst 64 5 - decl size 2 pointer_type 5 - var type 2 record_type 3 - nested type type_decl Data1 test42.cpp 15:8 2 - type name - isAutogenerated: 1 -function_decl func10 test42.cpp 113:10 2147483647 +function_decl func10 test42.cpp 117:10 2147483647 - isPublic: 1 method_type 2147483646 - function type void_type 2147483645 - method return type type_decl void 0:0 2147483644 - type name - isAutogenerated: 1 record_type 2147483645 - method base type - type_decl Object1 test42.cpp 50:7 2147483644 - type name + type_decl Object1 test42.cpp 54:7 2147483644 - type name - isAutogenerated: 1 tree_list 2147483645 - arg types pointer_type 2147483644 - value record_type 3 - nested type - type_decl Object1 test42.cpp 50:7 2 - type name + type_decl Object1 test42.cpp 54:7 2 - type name - isAutogenerated: 1 tree_list 2147483644 - chain reference_type 2147483643 - value @@ -1953,31 +2091,31 @@ function_decl func10 test42.cpp 113:10 2147483647 void_type 2147483642 - value type_decl void 0:0 2147483641 - type name - isAutogenerated: 1 - result_decl test42.cpp 114:5 2147483646 - function result + result_decl test42.cpp 118:5 2147483646 - function result - isAutogenerated: 1 void_type 2147483645 - result type type_decl void 0:0 2147483644 - type name - isAutogenerated: 1 - parm_decl this test42.cpp 113:30 2147483646 - argument + parm_decl this test42.cpp 117:30 2147483646 - argument - isAutogenerated: 1 pointer_type 2147483645 - decl type record_type 3 - nested type - type_decl Object1 test42.cpp 50:7 2 - type name + type_decl Object1 test42.cpp 54:7 2 - type name - isAutogenerated: 1 integer_cst 64 2147483645 - parm size - isUsed: 1 - parm_decl ptr1 test42.cpp 113:24 2147483646 - argument + parm_decl ptr1 test42.cpp 117:24 2147483646 - argument reference_type 2147483645 - decl type record_type 2147483644 - nested type type_decl Data1 test42.cpp 15:8 2147483643 - type name - isAutogenerated: 1 integer_cst 64 2147483645 - parm size - if_stmt test42.cpp 115:9 2147483646 - code - eq_expr test42.cpp 115:22 2147483645 - condition - component_ref test42.cpp 115:18 2147483644 - operand + if_stmt test42.cpp 119:9 2147483646 - code + eq_expr test42.cpp 119:22 2147483645 - condition + component_ref test42.cpp 119:18 2147483644 - operand indirect_ref 2147483643 - object - isUsed: 1 - parm_decl ptr1 test42.cpp 113:24 2147483642 - ref + parm_decl ptr1 test42.cpp 117:24 2147483642 - ref reference_type 2147483641 - decl type record_type 2147483640 - nested type type_decl Data1 test42.cpp 15:8 2147483639 - type name @@ -1995,11 +2133,11 @@ function_decl func10 test42.cpp 113:10 2147483647 integer_cst -2147483648 4 - min value integer_cst 2147483647 4 - max value integer_cst 100 2147483644 - operand - cleanup_point_expr test42.cpp 116:20 2147483645 - then - expr_stmt test42.cpp 116:20 2147483644 - operand + cleanup_point_expr test42.cpp 120:20 2147483645 - then + expr_stmt test42.cpp 120:20 2147483644 - operand convert_expr 2147483643 - expresssion modify_expr 2147483642 - operand - var_decl k test42.cpp 43:5 2147483641 - operand + var_decl k test42.cpp 47:5 2147483641 - operand - isUsed: 1 integer_cst 32 2147483640 - decl size integer_type 2147483640 - var type @@ -2011,19 +2149,19 @@ function_decl func10 test42.cpp 113:10 2147483647 integer_cst -2147483648 2147483639 - min value integer_cst 2147483647 2147483639 - max value integer_cst 100 2147483641 - operand -function_decl func11 test42.cpp 119:10 2147483647 +function_decl func11 test42.cpp 123:10 2147483647 - isPublic: 1 method_type 2147483646 - function type void_type 2147483645 - method return type type_decl void 0:0 2147483644 - type name - isAutogenerated: 1 record_type 2147483645 - method base type - type_decl Object1 test42.cpp 50:7 2147483644 - type name + type_decl Object1 test42.cpp 54:7 2147483644 - type name - isAutogenerated: 1 tree_list 2147483645 - arg types pointer_type 2147483644 - value record_type 3 - nested type - type_decl Object1 test42.cpp 50:7 2 - type name + type_decl Object1 test42.cpp 54:7 2 - type name - isAutogenerated: 1 tree_list 2147483644 - chain reference_type 2147483643 - value @@ -2034,31 +2172,31 @@ function_decl func11 test42.cpp 119:10 2147483647 void_type 2147483642 - value type_decl void 0:0 2147483641 - type name - isAutogenerated: 1 - result_decl test42.cpp 120:5 2147483646 - function result + result_decl test42.cpp 124:5 2147483646 - function result - isAutogenerated: 1 void_type 2147483645 - result type type_decl void 0:0 2147483644 - type name - isAutogenerated: 1 - parm_decl this test42.cpp 119:30 2147483646 - argument + parm_decl this test42.cpp 123:30 2147483646 - argument - isAutogenerated: 1 pointer_type 2147483645 - decl type record_type 3 - nested type - type_decl Object1 test42.cpp 50:7 2 - type name + type_decl Object1 test42.cpp 54:7 2 - type name - isAutogenerated: 1 integer_cst 64 2147483645 - parm size - isUsed: 1 - parm_decl ptr1 test42.cpp 119:24 2147483646 - argument + parm_decl ptr1 test42.cpp 123:24 2147483646 - argument reference_type 2147483645 - decl type record_type 2147483644 - nested type type_decl Data2 test42.cpp 4:8 2147483643 - type name - isAutogenerated: 1 integer_cst 64 2147483645 - parm size - if_stmt test42.cpp 121:9 2147483646 - code - eq_expr test42.cpp 121:22 2147483645 - condition - component_ref test42.cpp 121:18 2147483644 - operand + if_stmt test42.cpp 125:9 2147483646 - code + eq_expr test42.cpp 125:22 2147483645 - condition + component_ref test42.cpp 125:18 2147483644 - operand indirect_ref 2147483643 - object - isUsed: 1 - parm_decl ptr1 test42.cpp 119:24 2147483642 - ref + parm_decl ptr1 test42.cpp 123:24 2147483642 - ref reference_type 2147483641 - decl type record_type 2147483640 - nested type type_decl Data2 test42.cpp 4:8 2147483639 - type name @@ -2076,11 +2214,11 @@ function_decl func11 test42.cpp 119:10 2147483647 integer_cst -2147483648 4 - min value integer_cst 2147483647 4 - max value integer_cst 100 2147483644 - operand - cleanup_point_expr test42.cpp 122:20 2147483645 - then - expr_stmt test42.cpp 122:20 2147483644 - operand + cleanup_point_expr test42.cpp 126:20 2147483645 - then + expr_stmt test42.cpp 126:20 2147483644 - operand convert_expr 2147483643 - expresssion modify_expr 2147483642 - operand - var_decl k test42.cpp 43:5 2147483641 - operand + var_decl k test42.cpp 47:5 2147483641 - operand - isUsed: 1 integer_cst 32 2147483640 - decl size integer_type 2147483640 - var type @@ -2092,7 +2230,7 @@ function_decl func11 test42.cpp 119:10 2147483647 integer_cst -2147483648 2147483639 - min value integer_cst 2147483647 2147483639 - max value integer_cst 100 2147483641 - operand -function_decl func12 test42.cpp 125:9 2147483647 +function_decl func12 test42.cpp 129:9 2147483647 - isPublic: 1 method_type 2147483646 - function type integer_type 2147483645 - method return type @@ -2104,12 +2242,12 @@ function_decl func12 test42.cpp 125:9 2147483647 integer_cst -2147483648 2147483644 - min value integer_cst 2147483647 2147483644 - max value record_type 2147483645 - method base type - type_decl Object1 test42.cpp 50:7 2147483644 - type name + type_decl Object1 test42.cpp 54:7 2147483644 - type name - isAutogenerated: 1 tree_list 2147483645 - arg types pointer_type 2147483644 - value record_type 3 - nested type - type_decl Object1 test42.cpp 50:7 2 - type name + type_decl Object1 test42.cpp 54:7 2 - type name - isAutogenerated: 1 tree_list 2147483644 - chain reference_type 2147483643 - value @@ -2120,7 +2258,7 @@ function_decl func12 test42.cpp 125:9 2147483647 void_type 2147483642 - value type_decl void 0:0 2147483641 - type name - isAutogenerated: 1 - result_decl test42.cpp 126:5 2147483646 - function result + result_decl test42.cpp 130:5 2147483646 - function result - isAutogenerated: 1 integer_type 2147483645 - result type - precisionBits: 32 @@ -2131,31 +2269,31 @@ function_decl func12 test42.cpp 125:9 2147483647 integer_cst -2147483648 2147483644 - min value integer_cst 2147483647 2147483644 - max value integer_cst 32 2147483645 - decl size - parm_decl this test42.cpp 125:29 2147483646 - argument + parm_decl this test42.cpp 129:29 2147483646 - argument - isAutogenerated: 1 pointer_type 2147483645 - decl type record_type 3 - nested type - type_decl Object1 test42.cpp 50:7 2 - type name + type_decl Object1 test42.cpp 54:7 2 - type name - isAutogenerated: 1 integer_cst 64 2147483645 - parm size - isUsed: 1 - parm_decl ptr1 test42.cpp 125:23 2147483646 - argument + parm_decl ptr1 test42.cpp 129:23 2147483646 - argument reference_type 2147483645 - decl type record_type 2147483644 - nested type type_decl Data2 test42.cpp 4:8 2147483643 - type name - isAutogenerated: 1 integer_cst 64 2147483645 - parm size - bind_expr test42.cpp 128:20 2147483646 - code - var_decl ref1 test42.cpp 127:20 2147483645 - operand + bind_expr test42.cpp 132:20 2147483646 - code + var_decl ref1 test42.cpp 131:20 2147483645 - operand - isUsed: 1 integer_cst 64 2147483644 - decl size nop_expr 10 - initial nop_expr 9 - operand addr_expr 8 - operand - component_ref test42.cpp 127:32 7 - operand + component_ref test42.cpp 131:32 7 - operand indirect_ref 6 - object - isUsed: 1 - parm_decl ptr1 test42.cpp 125:23 5 - ref + parm_decl ptr1 test42.cpp 129:23 5 - ref reference_type 4 - decl type record_type 3 - nested type type_decl Data2 test42.cpp 4:8 2 - type name @@ -2182,17 +2320,17 @@ function_decl func12 test42.cpp 125:9 2147483647 integer_cst -2147483648 2147483642 - min value integer_cst 2147483647 2147483642 - max value statement_list 2147483645 - operand - decl_expr test42.cpp 127:32 2147483644 - statement - var_decl ref1 test42.cpp 127:20 2147483643 - operand + decl_expr test42.cpp 131:32 2147483644 - statement + var_decl ref1 test42.cpp 131:20 2147483643 - operand - isUsed: 1 integer_cst 64 5 - decl size 2 nop_expr 10 - initial 2 nop_expr 9 - operand addr_expr 8 - operand - component_ref test42.cpp 127:32 7 - operand + component_ref test42.cpp 131:32 7 - operand indirect_ref 6 - object - isUsed: 1 - parm_decl ptr1 test42.cpp 125:23 5 - ref + parm_decl ptr1 test42.cpp 129:23 5 - ref reference_type 4 - decl type record_type 3 - nested type type_decl Data2 test42.cpp 4:8 2 - type name @@ -2218,9 +2356,9 @@ function_decl func12 test42.cpp 125:9 2147483647 integer_cst 32 3 - type size integer_cst -2147483648 3 - min value integer_cst 2147483647 3 - max value - return_expr test42.cpp 128:16 2147483644 - statement + return_expr test42.cpp 132:16 2147483644 - statement init_expr 2147483643 - operand - result_decl test42.cpp 126:5 2147483642 - operand + result_decl test42.cpp 130:5 2147483642 - operand - isAutogenerated: 1 integer_type 2147483641 - result type - precisionBits: 32 @@ -2233,16 +2371,16 @@ function_decl func12 test42.cpp 125:9 2147483647 integer_cst 32 2147483641 - decl size nop_expr 2147483642 - operand indirect_ref 2147483641 - operand - var_decl ref1 test42.cpp 127:20 2147483640 - ref + var_decl ref1 test42.cpp 131:20 2147483640 - ref - isUsed: 1 integer_cst 64 5 - decl size 2 nop_expr 10 - initial 2 nop_expr 9 - operand addr_expr 8 - operand - component_ref test42.cpp 127:32 7 - operand + component_ref test42.cpp 131:32 7 - operand indirect_ref 6 - object - isUsed: 1 - parm_decl ptr1 test42.cpp 125:23 5 - ref + parm_decl ptr1 test42.cpp 129:23 5 - ref reference_type 4 - decl type record_type 3 - nested type type_decl Data2 test42.cpp 4:8 2 - type name @@ -2269,16 +2407,16 @@ function_decl func12 test42.cpp 125:9 2147483647 integer_cst -2147483648 3 - min value integer_cst 2147483647 3 - max value block 2147483645 - operand - var_decl ref1 test42.cpp 127:20 2147483644 - block vars + var_decl ref1 test42.cpp 131:20 2147483644 - block vars - isUsed: 1 integer_cst 64 5 - decl size 2 nop_expr 10 - initial 2 nop_expr 9 - operand addr_expr 8 - operand - component_ref test42.cpp 127:32 7 - operand + component_ref test42.cpp 131:32 7 - operand indirect_ref 6 - object - isUsed: 1 - parm_decl ptr1 test42.cpp 125:23 5 - ref + parm_decl ptr1 test42.cpp 129:23 5 - ref reference_type 4 - decl type record_type 3 - nested type type_decl Data2 test42.cpp 4:8 2 - type name @@ -2304,19 +2442,19 @@ function_decl func12 test42.cpp 125:9 2147483647 integer_cst 32 3 - type size integer_cst -2147483648 3 - min value integer_cst 2147483647 3 - max value -function_decl func13 test42.cpp 132:10 2147483647 +function_decl func13 test42.cpp 136:10 2147483647 - isPublic: 1 method_type 2147483646 - function type void_type 2147483645 - method return type type_decl void 0:0 2147483644 - type name - isAutogenerated: 1 record_type 2147483645 - method base type - type_decl Object1 test42.cpp 50:7 2147483644 - type name + type_decl Object1 test42.cpp 54:7 2147483644 - type name - isAutogenerated: 1 tree_list 2147483645 - arg types pointer_type 2147483644 - value record_type 3 - nested type - type_decl Object1 test42.cpp 50:7 2 - type name + type_decl Object1 test42.cpp 54:7 2 - type name - isAutogenerated: 1 tree_list 2147483644 - chain pointer_type 2147483643 - value @@ -2327,32 +2465,32 @@ function_decl func13 test42.cpp 132:10 2147483647 void_type 2147483642 - value type_decl void 0:0 2147483641 - type name - isAutogenerated: 1 - result_decl test42.cpp 133:5 2147483646 - function result + result_decl test42.cpp 137:5 2147483646 - function result - isAutogenerated: 1 void_type 2147483645 - result type type_decl void 0:0 2147483644 - type name - isAutogenerated: 1 - isUsed: 1 - parm_decl this test42.cpp 132:30 2147483646 - argument + parm_decl this test42.cpp 136:30 2147483646 - argument - isAutogenerated: 1 pointer_type 2147483645 - decl type record_type 3 - nested type - type_decl Object1 test42.cpp 50:7 2 - type name + type_decl Object1 test42.cpp 54:7 2 - type name - isAutogenerated: 1 integer_cst 64 2147483645 - parm size - parm_decl ptr1 test42.cpp 132:24 2147483646 - argument + parm_decl ptr1 test42.cpp 136:24 2147483646 - argument pointer_type 2147483645 - decl type record_type 3 - nested type type_decl Data1 test42.cpp 15:8 2 - type name - isAutogenerated: 1 integer_cst 64 2147483645 - parm size - cleanup_point_expr test42.cpp 134:36 2147483646 - code - expr_stmt test42.cpp 134:36 2147483645 - operand + cleanup_point_expr test42.cpp 138:36 2147483646 - code + expr_stmt test42.cpp 138:36 2147483645 - operand convert_expr 2147483644 - expresssion modify_expr 2147483643 - operand - component_ref test42.cpp 134:27 2147483642 - operand + component_ref test42.cpp 138:27 2147483642 - operand indirect_ref 2147483641 - object - call_expr test42.cpp 134:23 2147483640 - ref + call_expr test42.cpp 138:23 2147483640 - ref addr_expr 2147483639 - function function_decl getData2 test42.cpp 23:12 20 - operand - isExternal: 1 @@ -2417,18 +2555,18 @@ function_decl func13 test42.cpp 132:10 2147483647 type_decl Data1 test42.cpp 15:8 2 - type name - isAutogenerated: 1 nop_expr 2147483639 - arg - component_ref test42.cpp 134:9 2147483638 - operand + component_ref test42.cpp 138:9 2147483638 - operand indirect_ref 2147483637 - object nop_expr 2147483636 - ref - isUsed: 1 - parm_decl this test42.cpp 132:30 2147483635 - operand + parm_decl this test42.cpp 136:30 2147483635 - operand - isAutogenerated: 1 pointer_type 2147483634 - decl type record_type 3 - nested type - type_decl Object1 test42.cpp 50:7 2 - type name + type_decl Object1 test42.cpp 54:7 2 - type name - isAutogenerated: 1 integer_cst 64 2147483634 - parm size - field_decl tmp3 test42.cpp 54:47 2147483637 - field + field_decl tmp3 test42.cpp 58:47 2147483637 - field - unsigned tree_list 2147483636 - attribute identifier_node nonnullpointer 2147483635 - purpose @@ -2449,19 +2587,19 @@ function_decl func13 test42.cpp 132:10 2147483647 integer_cst -2147483648 4 - min value integer_cst 2147483647 4 - max value integer_cst 100 2147483642 - operand -function_decl func14 test42.cpp 137:10 2147483647 +function_decl func14 test42.cpp 142:10 2147483647 - isPublic: 1 method_type 2147483646 - function type void_type 2147483645 - method return type type_decl void 0:0 2147483644 - type name - isAutogenerated: 1 record_type 2147483645 - method base type - type_decl Object1 test42.cpp 50:7 2147483644 - type name + type_decl Object1 test42.cpp 54:7 2147483644 - type name - isAutogenerated: 1 tree_list 2147483645 - arg types pointer_type 2147483644 - value record_type 3 - nested type - type_decl Object1 test42.cpp 50:7 2 - type name + type_decl Object1 test42.cpp 54:7 2 - type name - isAutogenerated: 1 tree_list 2147483644 - chain pointer_type 2147483643 - value @@ -2472,32 +2610,32 @@ function_decl func14 test42.cpp 137:10 2147483647 void_type 2147483642 - value type_decl void 0:0 2147483641 - type name - isAutogenerated: 1 - result_decl test42.cpp 138:5 2147483646 - function result + result_decl test42.cpp 143:5 2147483646 - function result - isAutogenerated: 1 void_type 2147483645 - result type type_decl void 0:0 2147483644 - type name - isAutogenerated: 1 - isUsed: 1 - parm_decl this test42.cpp 137:30 2147483646 - argument + parm_decl this test42.cpp 142:30 2147483646 - argument - isAutogenerated: 1 pointer_type 2147483645 - decl type record_type 3 - nested type - type_decl Object1 test42.cpp 50:7 2 - type name + type_decl Object1 test42.cpp 54:7 2 - type name - isAutogenerated: 1 integer_cst 64 2147483645 - parm size - parm_decl ptr1 test42.cpp 137:24 2147483646 - argument + parm_decl ptr1 test42.cpp 142:24 2147483646 - argument pointer_type 2147483645 - decl type record_type 3 - nested type type_decl Data1 test42.cpp 15:8 2 - type name - isAutogenerated: 1 integer_cst 64 2147483645 - parm size - cleanup_point_expr test42.cpp 139:36 2147483646 - code - expr_stmt test42.cpp 139:36 2147483645 - operand + cleanup_point_expr test42.cpp 144:36 2147483646 - code + expr_stmt test42.cpp 144:36 2147483645 - operand convert_expr 2147483644 - expresssion modify_expr 2147483643 - operand - component_ref test42.cpp 139:27 2147483642 - operand + component_ref test42.cpp 144:27 2147483642 - operand indirect_ref 2147483641 - object - call_expr test42.cpp 139:23 2147483640 - ref + call_expr test42.cpp 144:23 2147483640 - ref addr_expr 2147483639 - function function_decl getData2 test42.cpp 23:12 20 - operand - isExternal: 1 @@ -2562,18 +2700,18 @@ function_decl func14 test42.cpp 137:10 2147483647 type_decl Data1 test42.cpp 15:8 2 - type name - isAutogenerated: 1 nop_expr 2147483639 - arg - component_ref test42.cpp 139:9 2147483638 - operand + component_ref test42.cpp 144:9 2147483638 - operand indirect_ref 2147483637 - object nop_expr 2147483636 - ref - isUsed: 1 - parm_decl this test42.cpp 137:30 2147483635 - operand + parm_decl this test42.cpp 142:30 2147483635 - operand - isAutogenerated: 1 pointer_type 2147483634 - decl type record_type 3 - nested type - type_decl Object1 test42.cpp 50:7 2 - type name + type_decl Object1 test42.cpp 54:7 2 - type name - isAutogenerated: 1 integer_cst 64 2147483634 - parm size - field_decl tmp1 test42.cpp 52:12 2147483637 - field + field_decl tmp1 test42.cpp 56:12 2147483637 - field - unsigned integer_cst 64 2147483636 - decl size pointer_type 5 - field type @@ -2592,3 +2730,243 @@ function_decl func14 test42.cpp 137:10 2147483647 integer_cst -2147483648 4 - min value integer_cst 2147483647 4 - max value integer_cst 100 2147483642 - operand +function_decl func15 test42.cpp 147:10 2147483647 +- isPublic: 1 + method_type 2147483646 - function type + void_type 2147483645 - method return type + type_decl void 0:0 2147483644 - type name + - isAutogenerated: 1 + record_type 2147483645 - method base type + type_decl Object1 test42.cpp 54:7 2147483644 - type name + - isAutogenerated: 1 + tree_list 2147483645 - arg types + pointer_type 2147483644 - value + record_type 3 - nested type + type_decl Object1 test42.cpp 54:7 2 - type name + - isAutogenerated: 1 + tree_list 2147483644 - chain + pointer_type 2147483643 - value + record_type 3 - nested type + type_decl Data1 test42.cpp 15:8 2 - type name + - isAutogenerated: 1 + tree_list 2147483643 - chain + void_type 2147483642 - value + type_decl void 0:0 2147483641 - type name + - isAutogenerated: 1 + result_decl test42.cpp 148:5 2147483646 - function result + - isAutogenerated: 1 + void_type 2147483645 - result type + type_decl void 0:0 2147483644 - type name + - isAutogenerated: 1 + parm_decl this test42.cpp 147:30 2147483646 - argument + - isAutogenerated: 1 + pointer_type 2147483645 - decl type + record_type 3 - nested type + type_decl Object1 test42.cpp 54:7 2 - type name + - isAutogenerated: 1 + integer_cst 64 2147483645 - parm size + - isUsed: 1 + parm_decl ptr1 test42.cpp 147:24 2147483646 - argument + pointer_type 2147483645 - decl type + record_type 3 - nested type + type_decl Data1 test42.cpp 15:8 2 - type name + - isAutogenerated: 1 + integer_cst 64 2147483645 - parm size + if_stmt test42.cpp 149:9 2147483646 - code + cleanup_point_expr 2147483645 - condition + truth_andif_expr test42.cpp 149:38 2147483644 - operand + truth_andif_expr test42.cpp 149:18 2147483643 - operand + ne_expr 2147483642 - operand + - isUsed: 1 + parm_decl ptr1 test42.cpp 147:24 2147483641 - operand + pointer_type 2147483640 - decl type + record_type 3 - nested type + type_decl Data1 test42.cpp 15:8 2 - type name + - isAutogenerated: 1 + integer_cst 64 2147483640 - parm size + integer_cst 0 2147483641 - operand + ne_expr 2147483642 - operand + call_expr test42.cpp 149:35 2147483641 - operand + obj_type_ref 2147483640 - function + indirect_ref test42.cpp 149:36 2147483639 - operand + pointer_plus_expr test42.cpp 149:36 2147483638 - ref + component_ref 2147483637 - operand + indirect_ref 2147483636 - object + non_lvalue_expr 2147483635 - ref + - isUsed: 1 + parm_decl ptr1 test42.cpp 147:24 2147483634 - operand + pointer_type 2147483633 - decl type + record_type 3 - nested type + type_decl Data1 test42.cpp 15:8 2 - type name + - isAutogenerated: 1 + integer_cst 64 2147483633 - parm size + field_decl _vptr.Data1 test42.cpp 15:8 2147483636 - field + - unsigned + - isVirtual: 1 + - isAutogenerated: 1 + integer_cst 64 2147483635 - decl size + pointer_type 5 - field type + pointer_type 3 - nested type + type_decl __vtbl_ptr_type 0:0 2 - type name + - isAutogenerated: 1 + function_type 2 - nested type + integer_type 1 - function return type + - precisionBits: 32 + - signed + type_decl int 0:0 0 - type name + - isAutogenerated: 1 + integer_cst 32 0 - type size + integer_cst -2147483648 0 - min value + integer_cst 2147483647 0 - max value + integer_cst 24 2147483637 - operand + non_lvalue_expr 2147483639 - operand + - isUsed: 1 + parm_decl ptr1 test42.cpp 147:24 2147483638 - operand + pointer_type 2147483637 - decl type + record_type 3 - nested type + type_decl Data1 test42.cpp 15:8 2 - type name + - isAutogenerated: 1 + integer_cst 64 2147483637 - parm size + integer_cst 3 2147483639 - operand + non_lvalue_expr 2147483640 - arg + - isUsed: 1 + parm_decl ptr1 test42.cpp 147:24 2147483639 - operand + pointer_type 2147483638 - decl type + record_type 3 - nested type + type_decl Data1 test42.cpp 15:8 2 - type name + - isAutogenerated: 1 + integer_cst 64 2147483638 - parm size + integer_cst 0 2147483641 - operand + eq_expr test42.cpp 149:43 2147483643 - operand + var_decl k test42.cpp 47:5 2147483642 - operand + - isUsed: 1 + integer_cst 32 2147483641 - decl size + integer_type 2147483641 - var type + - precisionBits: 32 + - signed + type_decl int 0:0 2147483640 - type name + - isAutogenerated: 1 + integer_cst 32 2147483640 - type size + integer_cst -2147483648 2147483640 - min value + integer_cst 2147483647 2147483640 - max value + integer_cst 200 2147483642 - operand + cleanup_point_expr test42.cpp 150:28 2147483645 - then + expr_stmt test42.cpp 150:28 2147483644 - operand + convert_expr 2147483643 - expresssion + modify_expr 2147483642 - operand + component_ref test42.cpp 150:19 2147483641 - operand + indirect_ref 2147483640 - object + - isUsed: 1 + parm_decl ptr1 test42.cpp 147:24 2147483639 - ref + pointer_type 2147483638 - decl type + record_type 3 - nested type + type_decl Data1 test42.cpp 15:8 2 - type name + - isAutogenerated: 1 + integer_cst 64 2147483638 - parm size + field_decl val test42.cpp 17:9 2147483640 - field + - signed + integer_cst 32 2147483639 - decl size + integer_type 5 - field type + - precisionBits: 32 + - signed + type_decl int 0:0 4 - type name + - isAutogenerated: 1 + integer_cst 32 4 - type size + integer_cst -2147483648 4 - min value + integer_cst 2147483647 4 - max value + integer_cst 100 2147483641 - operand +function_decl func16 test42.cpp 153:10 2147483647 +- isPublic: 1 + method_type 2147483646 - function type + void_type 2147483645 - method return type + type_decl void 0:0 2147483644 - type name + - isAutogenerated: 1 + record_type 2147483645 - method base type + type_decl Object1 test42.cpp 54:7 2147483644 - type name + - isAutogenerated: 1 + tree_list 2147483645 - arg types + pointer_type 2147483644 - value + record_type 3 - nested type + type_decl Object1 test42.cpp 54:7 2 - type name + - isAutogenerated: 1 + tree_list 2147483644 - chain + reference_type 2147483643 - value + record_type 2147483642 - nested type + type_decl Data2 test42.cpp 4:8 2147483641 - type name + - isAutogenerated: 1 + tree_list 2147483643 - chain + void_type 2147483642 - value + type_decl void 0:0 2147483641 - type name + - isAutogenerated: 1 + result_decl test42.cpp 154:5 2147483646 - function result + - isAutogenerated: 1 + void_type 2147483645 - result type + type_decl void 0:0 2147483644 - type name + - isAutogenerated: 1 + parm_decl this test42.cpp 153:30 2147483646 - argument + - isAutogenerated: 1 + pointer_type 2147483645 - decl type + record_type 3 - nested type + type_decl Object1 test42.cpp 54:7 2 - type name + - isAutogenerated: 1 + integer_cst 64 2147483645 - parm size + - isUsed: 1 + parm_decl ptr1 test42.cpp 153:24 2147483646 - argument + reference_type 2147483645 - decl type + record_type 2147483644 - nested type + type_decl Data2 test42.cpp 4:8 2147483643 - type name + - isAutogenerated: 1 + integer_cst 64 2147483645 - parm size + if_stmt test42.cpp 155:9 2147483646 - code + ne_expr 2147483645 - condition + component_ref test42.cpp 155:18 2147483644 - operand + indirect_ref 2147483643 - object + - isUsed: 1 + parm_decl ptr1 test42.cpp 153:24 2147483642 - ref + reference_type 2147483641 - decl type + record_type 2147483640 - nested type + type_decl Data2 test42.cpp 4:8 2147483639 - type name + - isAutogenerated: 1 + integer_cst 64 2147483641 - parm size + field_decl ptrval test42.cpp 7:12 2147483643 - field + - unsigned + integer_cst 64 2147483642 - decl size + pointer_type 5 - field type + record_type 3 - nested type + type_decl Data1 test42.cpp 15:8 2 - type name + - isAutogenerated: 1 + integer_cst 0 2147483644 - operand + cleanup_point_expr test42.cpp 156:35 2147483645 - then + expr_stmt test42.cpp 156:35 2147483644 - operand + convert_expr 2147483643 - expresssion + modify_expr 2147483642 - operand + component_ref test42.cpp 156:26 2147483641 - operand + indirect_ref 2147483640 - object + component_ref test42.cpp 156:18 2147483639 - ref + indirect_ref 2147483638 - object + - isUsed: 1 + parm_decl ptr1 test42.cpp 153:24 2147483637 - ref + reference_type 2147483636 - decl type + record_type 2147483635 - nested type + type_decl Data2 test42.cpp 4:8 2147483634 - type name + - isAutogenerated: 1 + integer_cst 64 2147483636 - parm size + field_decl ptrval test42.cpp 7:12 2147483638 - field + - unsigned + integer_cst 64 2147483637 - decl size + pointer_type 5 - field type + record_type 3 - nested type + type_decl Data1 test42.cpp 15:8 2 - type name + - isAutogenerated: 1 + field_decl val test42.cpp 17:9 2147483640 - field + - signed + integer_cst 32 2147483639 - decl size + integer_type 5 - field type + - precisionBits: 32 + - signed + type_decl int 0:0 4 - type name + - isAutogenerated: 1 + integer_cst 32 4 - type size + integer_cst -2147483648 4 - min value + integer_cst 2147483647 4 - max value + integer_cst 100 2147483641 - operand diff --git a/test/test42-02.txt b/test/test42-02.txt index c107205..68823f3 100644 --- a/test/test42-02.txt +++ b/test/test42-02.txt @@ -3,6 +3,7 @@ getData2: getData3: getData4: getData5: +getData6: getData1: getData2: func1: pointer_type ptr1, @@ -23,3 +24,5 @@ func11: func12: func13: pointer_type ptr1, func14: pointer_type ptr1, +func15: pointer_type ptr1, +func16: diff --git a/test/test42-03.txt b/test/test42-03.txt index feac7a5..417f8c3 100644 --- a/test/test42-03.txt +++ b/test/test42-03.txt @@ -115,6 +115,15 @@ field_decl perm: integer_cst 256: record_type : type_decl Data2: +function_decl getData6: +return_expr : +init_expr : +result_decl : +pointer_type : +record_type : +type_decl Data1: +integer_cst 64: +integer_cst 0: function_decl getData1: return_expr : init_expr : @@ -161,7 +170,7 @@ expr_stmt : ptr1, convert_expr : ptr1, modify_expr : ptr1, test42.cpp: In member function 'void Object1::func1(Data1*) const': -test42.cpp:68:24: warning: Using variable 'this->tmp1' without checking for null pointer +test42.cpp:72:24: warning: Using variable 'this->tmp1' without checking for null pointer tmp1->val = 100; ^ component_ref : ptr1, @@ -221,7 +230,7 @@ expr_stmt : ptr1, convert_expr : ptr1, modify_expr : ptr1, test42.cpp: In member function 'void Object1::func3(Data1*) const': -test42.cpp:78:25: warning: Using variable 'gptr1' without checking for null pointer +test42.cpp:82:25: warning: Using variable 'gptr1' without checking for null pointer gptr1->val = 100; ^ component_ref : ptr1, @@ -269,7 +278,7 @@ call_expr : ptr1, addr_expr : ptr1, function_decl getData2: ptr1, test42.cpp: In member function 'void Object1::func5(Data1*) const': -test42.cpp:88:23: warning: Using variable 'this->tmp1' without checking for null pointer +test42.cpp:92:23: warning: Using variable 'this->tmp1' without checking for null pointer tmp1->getData2(); ^ component_ref : ptr1, @@ -332,7 +341,7 @@ integer_cst 2147483647: pointer_plus_expr : addr_expr : var_decl _ZTV5Data1: -integer_cst 320: +integer_cst 384: constructor : array_type : pointer_type : @@ -346,7 +355,7 @@ integer_cst 2147483647: integer_type : integer_cst 64: integer_cst 0: -integer_cst 4: +integer_cst 5: integer_cst 0: addr_expr : var_decl _ZTI5Data1: @@ -359,6 +368,8 @@ addr_expr : function_decl __deleting_dtor : addr_expr : function_decl getData3: +addr_expr : +function_decl getData6: array_type : pointer_type : type_decl __vtbl_ptr_type: @@ -371,7 +382,7 @@ integer_cst 2147483647: integer_type : integer_cst 64: integer_cst 0: -integer_cst 4: +integer_cst 5: integer_cst 16: block : function_decl __base_ctor : @@ -401,7 +412,7 @@ integer_cst 2147483647: pointer_plus_expr : addr_expr : var_decl _ZTV5Data1: -integer_cst 320: +integer_cst 384: constructor : array_type : pointer_type : @@ -415,7 +426,7 @@ integer_cst 2147483647: integer_type : integer_cst 64: integer_cst 0: -integer_cst 4: +integer_cst 5: integer_cst 0: addr_expr : var_decl _ZTI5Data1: @@ -428,6 +439,8 @@ addr_expr : function_decl __deleting_dtor : addr_expr : function_decl getData3: +addr_expr : +function_decl getData6: array_type : pointer_type : type_decl __vtbl_ptr_type: @@ -440,7 +453,7 @@ integer_cst 2147483647: integer_type : integer_cst 64: integer_cst 0: -integer_cst 4: +integer_cst 5: integer_cst 16: block : function_decl __comp_ctor : @@ -538,10 +551,10 @@ expr_stmt : ptr1, val1, convert_expr : ptr1, val1, modify_expr : ptr1, val1, test42.cpp: In member function 'void Object1::func9(Data1*) const': -test42.cpp:110:24: warning: Using variable 'val1' without checking for null pointer +test42.cpp:114:24: warning: Using variable 'val1' without checking for null pointer val1->val = 300; ^ -test42.cpp:110:24: warning: Using variable 'val1' without checking for null pointer +test42.cpp:114:24: warning: Using variable 'val1' without checking for null pointer component_ref : ptr1, val1, indirect_ref : ptr1, val1, var_decl val1: ptr1, val1, @@ -780,7 +793,7 @@ call_expr : ptr1, addr_expr : ptr1, function_decl getData2: ptr1, test42.cpp: In member function 'void Object1::func14(Data1*) const': -test42.cpp:139:23: warning: Using variable 'this->tmp1' without checking for null pointer +test42.cpp:144:23: warning: Using variable 'this->tmp1' without checking for null pointer tmp1->getData2()->val = 100; ^ component_ref : ptr1, @@ -803,3 +816,125 @@ integer_cst 32: ptr1, integer_cst -2147483648: ptr1, integer_cst 2147483647: ptr1, integer_cst 100: ptr1, +function_decl func15: +if_stmt : ptr1, +cleanup_point_expr : ptr1, +truth_andif_expr : ptr1, +truth_andif_expr : ptr1, +ne_expr : ptr1, +integer_cst 0: ptr1, +parm_decl ptr1: ptr1, +pointer_type : ptr1, +record_type : ptr1, +type_decl Data1: ptr1, +integer_cst 64: ptr1, +integer_cst 0: ptr1, +ne_expr : +integer_cst 0: +call_expr : +obj_type_ref : +indirect_ref : +pointer_plus_expr : +component_ref : +indirect_ref : +parm_decl ptr1: +pointer_type : +record_type : +type_decl Data1: +integer_cst 64: +field_decl _vptr.Data1: +integer_cst 64: +pointer_type : +pointer_type : +type_decl __vtbl_ptr_type: +function_type : +integer_type : +type_decl int: +integer_cst 32: +integer_cst -2147483648: +integer_cst 2147483647: +integer_cst 24: +parm_decl ptr1: +pointer_type : +record_type : +type_decl Data1: +integer_cst 64: +integer_cst 3: +parm_decl ptr1: +pointer_type : +record_type : +type_decl Data1: +integer_cst 64: +integer_cst 0: +eq_expr : +integer_cst 200: +var_decl k: +integer_cst 32: +integer_type : +type_decl int: +integer_cst 32: +integer_cst -2147483648: +integer_cst 2147483647: +integer_cst 200: +cleanup_point_expr : +expr_stmt : +convert_expr : +modify_expr : +component_ref : +indirect_ref : +parm_decl ptr1: +pointer_type : +record_type : +type_decl Data1: +integer_cst 64: +field_decl val: +integer_cst 32: +integer_type : +type_decl int: +integer_cst 32: +integer_cst -2147483648: +integer_cst 2147483647: +integer_cst 100: +function_decl func16: +if_stmt : +ne_expr : +integer_cst 0: +component_ref : +indirect_ref : +parm_decl ptr1: +reference_type : +record_type : +type_decl Data2: +integer_cst 64: +field_decl ptrval: +integer_cst 64: +pointer_type : +record_type : +type_decl Data1: +integer_cst 0: +cleanup_point_expr : +expr_stmt : +convert_expr : +modify_expr : +component_ref : +indirect_ref : +component_ref : +indirect_ref : +parm_decl ptr1: +reference_type : +record_type : +type_decl Data2: +integer_cst 64: +field_decl ptrval: +integer_cst 64: +pointer_type : +record_type : +type_decl Data1: +field_decl val: +integer_cst 32: +integer_type : +type_decl int: +integer_cst 32: +integer_cst -2147483648: +integer_cst 2147483647: +integer_cst 100: diff --git a/test/test42-04.txt b/test/test42-04.txt index 12d05d5..7e856b4 100644 --- a/test/test42-04.txt +++ b/test/test42-04.txt @@ -1,21 +1,21 @@ test42.cpp: In member function 'void Object1::func1(Data1*) const': -test42.cpp:68:24: warning: Using variable 'this->tmp1' without checking for null pointer +test42.cpp:72:24: warning: Using variable 'this->tmp1' without checking for null pointer tmp1->val = 100; ^ test42.cpp: In member function 'void Object1::func3(Data1*) const': -test42.cpp:78:25: warning: Using variable 'gptr1' without checking for null pointer +test42.cpp:82:25: warning: Using variable 'gptr1' without checking for null pointer gptr1->val = 100; ^ test42.cpp: In member function 'void Object1::func5(Data1*) const': -test42.cpp:88:23: warning: Using variable 'this->tmp1' without checking for null pointer +test42.cpp:92:23: warning: Using variable 'this->tmp1' without checking for null pointer tmp1->getData2(); ^ test42.cpp: In member function 'void Object1::func9(Data1*) const': -test42.cpp:110:24: warning: Using variable 'val1' without checking for null pointer +test42.cpp:114:24: warning: Using variable 'val1' without checking for null pointer val1->val = 300; ^ -test42.cpp:110:24: warning: Using variable 'val1' without checking for null pointer +test42.cpp:114:24: warning: Using variable 'val1' without checking for null pointer test42.cpp: In member function 'void Object1::func14(Data1*) const': -test42.cpp:139:23: warning: Using variable 'this->tmp1' without checking for null pointer +test42.cpp:144:23: warning: Using variable 'this->tmp1' without checking for null pointer tmp1->getData2()->val = 100; ^ diff --git a/test/test42-05.txt b/test/test42-05.txt index 12d05d5..7e856b4 100644 --- a/test/test42-05.txt +++ b/test/test42-05.txt @@ -1,21 +1,21 @@ test42.cpp: In member function 'void Object1::func1(Data1*) const': -test42.cpp:68:24: warning: Using variable 'this->tmp1' without checking for null pointer +test42.cpp:72:24: warning: Using variable 'this->tmp1' without checking for null pointer tmp1->val = 100; ^ test42.cpp: In member function 'void Object1::func3(Data1*) const': -test42.cpp:78:25: warning: Using variable 'gptr1' without checking for null pointer +test42.cpp:82:25: warning: Using variable 'gptr1' without checking for null pointer gptr1->val = 100; ^ test42.cpp: In member function 'void Object1::func5(Data1*) const': -test42.cpp:88:23: warning: Using variable 'this->tmp1' without checking for null pointer +test42.cpp:92:23: warning: Using variable 'this->tmp1' without checking for null pointer tmp1->getData2(); ^ test42.cpp: In member function 'void Object1::func9(Data1*) const': -test42.cpp:110:24: warning: Using variable 'val1' without checking for null pointer +test42.cpp:114:24: warning: Using variable 'val1' without checking for null pointer val1->val = 300; ^ -test42.cpp:110:24: warning: Using variable 'val1' without checking for null pointer +test42.cpp:114:24: warning: Using variable 'val1' without checking for null pointer test42.cpp: In member function 'void Object1::func14(Data1*) const': -test42.cpp:139:23: warning: Using variable 'this->tmp1' without checking for null pointer +test42.cpp:144:23: warning: Using variable 'this->tmp1' without checking for null pointer tmp1->getData2()->val = 100; ^ diff --git a/test/test42.cpp b/test/test42.cpp index b55edfa..532dee7 100644 --- a/test/test42.cpp +++ b/test/test42.cpp @@ -38,6 +38,10 @@ struct Data1 { return &perm; } + virtual Data1 *getData6() + { + return 0; + } }; int k; @@ -139,4 +143,17 @@ class Object1 { tmp1->getData2()->val = 100; } + + void func15(Data1 *ptr1) const + { + if (ptr1 && ptr1->getData6() && k == 200) + ptr1->val = 100; + } + + void func16(Data2 &ptr1) const + { + if (ptr1.ptrval) + ptr1.ptrval->val = 100; + } + }; -- cgit v1.2.3-60-g2f50