diff options
-rw-r--r-- | test/test26-01.txt | 1128 | ||||
-rw-r--r-- | test/test26-02.txt | 5 | ||||
-rw-r--r-- | test/test26-03.txt | 838 | ||||
-rw-r--r-- | test/test26-04.txt | 34 | ||||
-rw-r--r-- | test/test26-05.txt | 34 | ||||
-rw-r--r-- | test/test26.cpp | 141 |
6 files changed, 1906 insertions, 274 deletions
diff --git a/test/test26-01.txt b/test/test26-01.txt index fa6469b..64e8f45 100644 --- a/test/test26-01.txt +++ b/test/test26-01.txt @@ -41552,7 +41552,13 @@ function_decl func6 test26.cpp 88:10 var_decl k test26.cpp 40:5 - operand - isUsed: 1 integer_cst 1 - operand - return_expr test26.cpp 93:17 - then + cleanup_point_expr test26.cpp 93:23 - then + expr_stmt test26.cpp 93:23 - operand + convert_expr - expresssion + modify_expr - operand + var_decl k test26.cpp 40:5 - operand + - isUsed: 1 + integer_cst 10 - operand if_stmt test26.cpp 94:13 - statement truth_andif_expr test26.cpp 94:22 - condition ne_expr - operand @@ -41583,7 +41589,13 @@ function_decl func6 test26.cpp 88:10 var_decl k test26.cpp 40:5 - operand - isUsed: 1 integer_cst 2 - operand - return_expr test26.cpp 95:17 - then + cleanup_point_expr test26.cpp 95:23 - then + expr_stmt test26.cpp 95:23 - operand + convert_expr - expresssion + modify_expr - operand + var_decl k test26.cpp 40:5 - operand + - isUsed: 1 + integer_cst 20 - operand if_stmt test26.cpp 96:13 - statement truth_orif_expr test26.cpp 96:23 - condition eq_expr test26.cpp 96:18 - operand @@ -41614,7 +41626,13 @@ function_decl func6 test26.cpp 88:10 var_decl k test26.cpp 40:5 - operand - isUsed: 1 integer_cst 1 - operand - return_expr test26.cpp 97:17 - then + cleanup_point_expr test26.cpp 97:23 - then + expr_stmt test26.cpp 97:23 - operand + convert_expr - expresssion + modify_expr - operand + var_decl k test26.cpp 40:5 - operand + - isUsed: 1 + integer_cst 30 - operand if_stmt test26.cpp 98:13 - statement truth_orif_expr test26.cpp 98:22 - condition ne_expr - operand @@ -41645,7 +41663,13 @@ function_decl func6 test26.cpp 88:10 var_decl k test26.cpp 40:5 - operand - isUsed: 1 integer_cst 2 - operand - return_expr test26.cpp 99:17 - then + cleanup_point_expr test26.cpp 99:23 - then + expr_stmt test26.cpp 99:23 - operand + convert_expr - expresssion + modify_expr - operand + var_decl k test26.cpp 40:5 - operand + - isUsed: 1 + integer_cst 40 - operand statement_list - else if_stmt test26.cpp 103:13 - statement truth_andif_expr test26.cpp 103:23 - condition @@ -41677,7 +41701,13 @@ function_decl func6 test26.cpp 88:10 var_decl k test26.cpp 40:5 - operand - isUsed: 1 integer_cst 4 - operand - return_expr test26.cpp 104:17 - then + cleanup_point_expr test26.cpp 104:23 - then + expr_stmt test26.cpp 104:23 - operand + convert_expr - expresssion + modify_expr - operand + var_decl k test26.cpp 40:5 - operand + - isUsed: 1 + integer_cst 50 - operand if_stmt test26.cpp 105:13 - statement truth_andif_expr test26.cpp 105:22 - condition ne_expr - operand @@ -41708,7 +41738,13 @@ function_decl func6 test26.cpp 88:10 var_decl k test26.cpp 40:5 - operand - isUsed: 1 integer_cst 5 - operand - return_expr test26.cpp 106:17 - then + cleanup_point_expr test26.cpp 106:23 - then + expr_stmt test26.cpp 106:23 - operand + convert_expr - expresssion + modify_expr - operand + var_decl k test26.cpp 40:5 - operand + - isUsed: 1 + integer_cst 60 - operand if_stmt test26.cpp 107:13 - statement truth_orif_expr test26.cpp 107:23 - condition eq_expr test26.cpp 107:18 - operand @@ -41739,7 +41775,13 @@ function_decl func6 test26.cpp 88:10 var_decl k test26.cpp 40:5 - operand - isUsed: 1 integer_cst 4 - operand - return_expr test26.cpp 108:17 - then + cleanup_point_expr test26.cpp 108:23 - then + expr_stmt test26.cpp 108:23 - operand + convert_expr - expresssion + modify_expr - operand + var_decl k test26.cpp 40:5 - operand + - isUsed: 1 + integer_cst 70 - operand if_stmt test26.cpp 109:13 - statement truth_orif_expr test26.cpp 109:22 - condition ne_expr - operand @@ -41770,7 +41812,13 @@ function_decl func6 test26.cpp 88:10 var_decl k test26.cpp 40:5 - operand - isUsed: 1 integer_cst 5 - operand - return_expr test26.cpp 110:17 - then + cleanup_point_expr test26.cpp 110:23 - then + expr_stmt test26.cpp 110:23 - operand + convert_expr - expresssion + modify_expr - operand + var_decl k test26.cpp 40:5 - operand + - isUsed: 1 + integer_cst 80 - operand function_decl func7 test26.cpp 114:10 - isPublic: 1 method_type - function type @@ -41917,7 +41965,13 @@ function_decl func7 test26.cpp 114:10 var_decl k test26.cpp 40:5 - operand - isUsed: 1 integer_cst 1 - operand - return_expr test26.cpp 119:17 - then + cleanup_point_expr test26.cpp 119:23 - then + expr_stmt test26.cpp 119:23 - operand + convert_expr - expresssion + modify_expr - operand + var_decl k test26.cpp 40:5 - operand + - isUsed: 1 + integer_cst 10 - operand if_stmt test26.cpp 120:13 - statement truth_andif_expr test26.cpp 120:23 - condition eq_expr test26.cpp 120:18 - operand @@ -41948,7 +42002,13 @@ function_decl func7 test26.cpp 114:10 var_decl k test26.cpp 40:5 - operand - isUsed: 1 integer_cst 2 - operand - return_expr test26.cpp 121:17 - then + cleanup_point_expr test26.cpp 121:23 - then + expr_stmt test26.cpp 121:23 - operand + convert_expr - expresssion + modify_expr - operand + var_decl k test26.cpp 40:5 - operand + - isUsed: 1 + integer_cst 20 - operand if_stmt test26.cpp 122:13 - statement truth_orif_expr test26.cpp 122:22 - condition ne_expr - operand @@ -41979,7 +42039,13 @@ function_decl func7 test26.cpp 114:10 var_decl k test26.cpp 40:5 - operand - isUsed: 1 integer_cst 1 - operand - return_expr test26.cpp 123:17 - then + cleanup_point_expr test26.cpp 123:23 - then + expr_stmt test26.cpp 123:23 - operand + convert_expr - expresssion + modify_expr - operand + var_decl k test26.cpp 40:5 - operand + - isUsed: 1 + integer_cst 30 - operand if_stmt test26.cpp 124:13 - statement truth_orif_expr test26.cpp 124:23 - condition eq_expr test26.cpp 124:18 - operand @@ -42010,7 +42076,13 @@ function_decl func7 test26.cpp 114:10 var_decl k test26.cpp 40:5 - operand - isUsed: 1 integer_cst 2 - operand - return_expr test26.cpp 125:17 - then + cleanup_point_expr test26.cpp 125:23 - then + expr_stmt test26.cpp 125:23 - operand + convert_expr - expresssion + modify_expr - operand + var_decl k test26.cpp 40:5 - operand + - isUsed: 1 + integer_cst 40 - operand statement_list - else if_stmt test26.cpp 129:13 - statement truth_andif_expr test26.cpp 129:22 - condition @@ -42042,7 +42114,13 @@ function_decl func7 test26.cpp 114:10 var_decl k test26.cpp 40:5 - operand - isUsed: 1 integer_cst 4 - operand - return_expr test26.cpp 130:17 - then + cleanup_point_expr test26.cpp 130:23 - then + expr_stmt test26.cpp 130:23 - operand + convert_expr - expresssion + modify_expr - operand + var_decl k test26.cpp 40:5 - operand + - isUsed: 1 + integer_cst 50 - operand if_stmt test26.cpp 131:13 - statement truth_andif_expr test26.cpp 131:23 - condition eq_expr test26.cpp 131:18 - operand @@ -42073,7 +42151,13 @@ function_decl func7 test26.cpp 114:10 var_decl k test26.cpp 40:5 - operand - isUsed: 1 integer_cst 5 - operand - return_expr test26.cpp 132:17 - then + cleanup_point_expr test26.cpp 132:23 - then + expr_stmt test26.cpp 132:23 - operand + convert_expr - expresssion + modify_expr - operand + var_decl k test26.cpp 40:5 - operand + - isUsed: 1 + integer_cst 60 - operand if_stmt test26.cpp 133:13 - statement truth_orif_expr test26.cpp 133:22 - condition ne_expr - operand @@ -42104,7 +42188,13 @@ function_decl func7 test26.cpp 114:10 var_decl k test26.cpp 40:5 - operand - isUsed: 1 integer_cst 4 - operand - return_expr test26.cpp 134:17 - then + cleanup_point_expr test26.cpp 134:23 - then + expr_stmt test26.cpp 134:23 - operand + convert_expr - expresssion + modify_expr - operand + var_decl k test26.cpp 40:5 - operand + - isUsed: 1 + integer_cst 70 - operand if_stmt test26.cpp 135:13 - statement truth_orif_expr test26.cpp 135:23 - condition eq_expr test26.cpp 135:18 - operand @@ -42135,7 +42225,13 @@ function_decl func7 test26.cpp 114:10 var_decl k test26.cpp 40:5 - operand - isUsed: 1 integer_cst 5 - operand - return_expr test26.cpp 136:17 - then + cleanup_point_expr test26.cpp 136:23 - then + expr_stmt test26.cpp 136:23 - operand + convert_expr - expresssion + modify_expr - operand + var_decl k test26.cpp 40:5 - operand + - isUsed: 1 + integer_cst 80 - operand function_decl func8 test26.cpp 140:10 - isPublic: 1 method_type - function type @@ -42282,7 +42378,13 @@ function_decl func8 test26.cpp 140:10 var_decl k test26.cpp 40:5 - operand - isUsed: 1 integer_cst 1 - operand - return_expr test26.cpp 145:17 - then + cleanup_point_expr test26.cpp 145:23 - then + expr_stmt test26.cpp 145:23 - operand + convert_expr - expresssion + modify_expr - operand + var_decl k test26.cpp 40:5 - operand + - isUsed: 1 + integer_cst 10 - operand if_stmt test26.cpp 146:13 - statement truth_orif_expr test26.cpp 146:22 - condition ne_expr - operand @@ -42313,7 +42415,13 @@ function_decl func8 test26.cpp 140:10 var_decl k test26.cpp 40:5 - operand - isUsed: 1 integer_cst 2 - operand - return_expr test26.cpp 147:17 - then + cleanup_point_expr test26.cpp 147:23 - then + expr_stmt test26.cpp 147:23 - operand + convert_expr - expresssion + modify_expr - operand + var_decl k test26.cpp 40:5 - operand + - isUsed: 1 + integer_cst 20 - operand if_stmt test26.cpp 148:13 - statement truth_andif_expr test26.cpp 148:23 - condition eq_expr test26.cpp 148:18 - operand @@ -42343,8 +42451,14 @@ function_decl func8 test26.cpp 140:10 eq_expr test26.cpp 148:28 - operand var_decl k test26.cpp 40:5 - operand - isUsed: 1 - integer_cst 1 - operand - return_expr test26.cpp 149:17 - then + integer_cst 3 - operand + cleanup_point_expr test26.cpp 149:23 - then + expr_stmt test26.cpp 149:23 - operand + convert_expr - expresssion + modify_expr - operand + var_decl k test26.cpp 40:5 - operand + - isUsed: 1 + integer_cst 30 - operand if_stmt test26.cpp 150:13 - statement truth_andif_expr test26.cpp 150:22 - condition ne_expr - operand @@ -42374,8 +42488,14 @@ function_decl func8 test26.cpp 140:10 eq_expr test26.cpp 150:27 - operand var_decl k test26.cpp 40:5 - operand - isUsed: 1 - integer_cst 2 - operand - return_expr test26.cpp 151:17 - then + integer_cst 4 - operand + cleanup_point_expr test26.cpp 151:23 - then + expr_stmt test26.cpp 151:23 - operand + convert_expr - expresssion + modify_expr - operand + var_decl k test26.cpp 40:5 - operand + - isUsed: 1 + integer_cst 40 - operand statement_list - else if_stmt test26.cpp 155:13 - statement truth_orif_expr test26.cpp 155:23 - condition @@ -42406,8 +42526,14 @@ function_decl func8 test26.cpp 140:10 eq_expr test26.cpp 155:28 - operand var_decl k test26.cpp 40:5 - operand - isUsed: 1 - integer_cst 4 - operand - return_expr test26.cpp 156:17 - then + integer_cst 5 - operand + cleanup_point_expr test26.cpp 156:23 - then + expr_stmt test26.cpp 156:23 - operand + convert_expr - expresssion + modify_expr - operand + var_decl k test26.cpp 40:5 - operand + - isUsed: 1 + integer_cst 50 - operand if_stmt test26.cpp 157:13 - statement truth_orif_expr test26.cpp 157:22 - condition ne_expr - operand @@ -42437,8 +42563,14 @@ function_decl func8 test26.cpp 140:10 eq_expr test26.cpp 157:27 - operand var_decl k test26.cpp 40:5 - operand - isUsed: 1 - integer_cst 5 - operand - return_expr test26.cpp 158:17 - then + integer_cst 6 - operand + cleanup_point_expr test26.cpp 158:23 - then + expr_stmt test26.cpp 158:23 - operand + convert_expr - expresssion + modify_expr - operand + var_decl k test26.cpp 40:5 - operand + - isUsed: 1 + integer_cst 60 - operand if_stmt test26.cpp 159:13 - statement truth_andif_expr test26.cpp 159:23 - condition eq_expr test26.cpp 159:18 - operand @@ -42468,8 +42600,14 @@ function_decl func8 test26.cpp 140:10 eq_expr test26.cpp 159:28 - operand var_decl k test26.cpp 40:5 - operand - isUsed: 1 - integer_cst 4 - operand - return_expr test26.cpp 160:17 - then + integer_cst 7 - operand + cleanup_point_expr test26.cpp 160:23 - then + expr_stmt test26.cpp 160:23 - operand + convert_expr - expresssion + modify_expr - operand + var_decl k test26.cpp 40:5 - operand + - isUsed: 1 + integer_cst 70 - operand if_stmt test26.cpp 161:13 - statement truth_andif_expr test26.cpp 161:22 - condition ne_expr - operand @@ -42499,8 +42637,14 @@ function_decl func8 test26.cpp 140:10 eq_expr test26.cpp 161:27 - operand var_decl k test26.cpp 40:5 - operand - isUsed: 1 - integer_cst 5 - operand - return_expr test26.cpp 162:17 - then + integer_cst 8 - operand + cleanup_point_expr test26.cpp 162:23 - then + expr_stmt test26.cpp 162:23 - operand + convert_expr - expresssion + modify_expr - operand + var_decl k test26.cpp 40:5 - operand + - isUsed: 1 + integer_cst 80 - operand function_decl func9 test26.cpp 166:10 - isPublic: 1 method_type - function type @@ -42647,7 +42791,13 @@ function_decl func9 test26.cpp 166:10 var_decl k test26.cpp 40:5 - operand - isUsed: 1 integer_cst 1 - operand - return_expr test26.cpp 171:17 - then + cleanup_point_expr test26.cpp 171:23 - then + expr_stmt test26.cpp 171:23 - operand + convert_expr - expresssion + modify_expr - operand + var_decl k test26.cpp 40:5 - operand + - isUsed: 1 + integer_cst 10 - operand if_stmt test26.cpp 172:13 - statement truth_orif_expr test26.cpp 172:23 - condition eq_expr test26.cpp 172:18 - operand @@ -42678,7 +42828,13 @@ function_decl func9 test26.cpp 166:10 var_decl k test26.cpp 40:5 - operand - isUsed: 1 integer_cst 2 - operand - return_expr test26.cpp 173:17 - then + cleanup_point_expr test26.cpp 173:23 - then + expr_stmt test26.cpp 173:23 - operand + convert_expr - expresssion + modify_expr - operand + var_decl k test26.cpp 40:5 - operand + - isUsed: 1 + integer_cst 20 - operand if_stmt test26.cpp 174:13 - statement truth_andif_expr test26.cpp 174:22 - condition ne_expr - operand @@ -42708,8 +42864,14 @@ function_decl func9 test26.cpp 166:10 eq_expr test26.cpp 174:27 - operand var_decl k test26.cpp 40:5 - operand - isUsed: 1 - integer_cst 1 - operand - return_expr test26.cpp 175:17 - then + integer_cst 3 - operand + cleanup_point_expr test26.cpp 175:23 - then + expr_stmt test26.cpp 175:23 - operand + convert_expr - expresssion + modify_expr - operand + var_decl k test26.cpp 40:5 - operand + - isUsed: 1 + integer_cst 30 - operand if_stmt test26.cpp 176:13 - statement truth_andif_expr test26.cpp 176:23 - condition eq_expr test26.cpp 176:18 - operand @@ -42739,8 +42901,14 @@ function_decl func9 test26.cpp 166:10 eq_expr test26.cpp 176:28 - operand var_decl k test26.cpp 40:5 - operand - isUsed: 1 - integer_cst 2 - operand - return_expr test26.cpp 177:17 - then + integer_cst 4 - operand + cleanup_point_expr test26.cpp 177:23 - then + expr_stmt test26.cpp 177:23 - operand + convert_expr - expresssion + modify_expr - operand + var_decl k test26.cpp 40:5 - operand + - isUsed: 1 + integer_cst 40 - operand statement_list - else if_stmt test26.cpp 181:13 - statement truth_orif_expr test26.cpp 181:22 - condition @@ -42771,8 +42939,14 @@ function_decl func9 test26.cpp 166:10 eq_expr test26.cpp 181:27 - operand var_decl k test26.cpp 40:5 - operand - isUsed: 1 - integer_cst 4 - operand - return_expr test26.cpp 182:17 - then + integer_cst 5 - operand + cleanup_point_expr test26.cpp 182:23 - then + expr_stmt test26.cpp 182:23 - operand + convert_expr - expresssion + modify_expr - operand + var_decl k test26.cpp 40:5 - operand + - isUsed: 1 + integer_cst 50 - operand if_stmt test26.cpp 183:13 - statement truth_orif_expr test26.cpp 183:23 - condition eq_expr test26.cpp 183:18 - operand @@ -42802,8 +42976,14 @@ function_decl func9 test26.cpp 166:10 eq_expr test26.cpp 183:28 - operand var_decl k test26.cpp 40:5 - operand - isUsed: 1 - integer_cst 5 - operand - return_expr test26.cpp 184:17 - then + integer_cst 6 - operand + cleanup_point_expr test26.cpp 184:23 - then + expr_stmt test26.cpp 184:23 - operand + convert_expr - expresssion + modify_expr - operand + var_decl k test26.cpp 40:5 - operand + - isUsed: 1 + integer_cst 60 - operand if_stmt test26.cpp 185:13 - statement truth_andif_expr test26.cpp 185:22 - condition ne_expr - operand @@ -42833,8 +43013,14 @@ function_decl func9 test26.cpp 166:10 eq_expr test26.cpp 185:27 - operand var_decl k test26.cpp 40:5 - operand - isUsed: 1 - integer_cst 4 - operand - return_expr test26.cpp 186:17 - then + integer_cst 7 - operand + cleanup_point_expr test26.cpp 186:23 - then + expr_stmt test26.cpp 186:23 - operand + convert_expr - expresssion + modify_expr - operand + var_decl k test26.cpp 40:5 - operand + - isUsed: 1 + integer_cst 70 - operand if_stmt test26.cpp 187:13 - statement truth_andif_expr test26.cpp 187:23 - condition eq_expr test26.cpp 187:18 - operand @@ -42864,8 +43050,862 @@ function_decl func9 test26.cpp 166:10 eq_expr test26.cpp 187:28 - operand var_decl k test26.cpp 40:5 - operand - isUsed: 1 - integer_cst 5 - operand - return_expr test26.cpp 188:17 - then + integer_cst 8 - operand + cleanup_point_expr test26.cpp 188:23 - then + expr_stmt test26.cpp 188:23 - operand + convert_expr - expresssion + modify_expr - operand + var_decl k test26.cpp 40:5 - operand + - isUsed: 1 + integer_cst 80 - operand +function_decl func10 test26.cpp 192:10 +- isPublic: 1 + method_type - function type + void_type - method return type + type_decl void <built-in> 0:0 - type name + - isAutogenerated: 1 + record_type - method base type + type_decl Object1 test26.cpp 42:7 - type name + - isAutogenerated: 1 + type_decl Object1 test26.cpp 43:1 - field + - isAutogenerated: 1 + tree_list - arg types + pointer_type - value + record_type - nested type + type_decl Object1 test26.cpp 42:7 - type name + - isAutogenerated: 1 + type_decl Object1 test26.cpp 43:1 - field + - isAutogenerated: 1 + tree_list - chain + pointer_type - value + record_type - nested type + type_decl Data1 test26.cpp 6:8 - type name + - isAutogenerated: 1 + field_decl val test26.cpp 17:9 - field + - signed + integer_cst 32 - decl size + field_decl ptrval test26.cpp 18:12 - field + - unsigned + integer_cst 64 - decl size + field_decl arr test26.cpp 19:14 - field + - signed + integer_cst 96 - decl size + field_decl str1 test26.cpp 20:17 - field + - signed + integer_cst 64 - decl size + type_decl Data1 test26.cpp 7:1 - field + - isAutogenerated: 1 + tree_list - chain + void_type - value + type_decl void <built-in> 0:0 - type name + - isAutogenerated: 1 + result_decl test26.cpp 193:5 - function result + - isAutogenerated: 1 + void_type - result type + type_decl void <built-in> 0:0 - type name + - isAutogenerated: 1 + parm_decl this test26.cpp 192:34 - argument + - isAutogenerated: 1 + pointer_type - decl type + record_type - nested type + type_decl Object1 test26.cpp 42:7 - type name + - isAutogenerated: 1 + type_decl Object1 test26.cpp 43:1 - field + - isAutogenerated: 1 + integer_cst 64 - parm size + - isUsed: 1 + parm_decl ptr1 test26.cpp 192:30 - argument + pointer_type - decl type + record_type - nested type + type_decl Data1 test26.cpp 6:8 - type name + - isAutogenerated: 1 + field_decl val test26.cpp 17:9 - field + - signed + integer_cst 32 - decl size + field_decl ptrval test26.cpp 18:12 - field + - unsigned + integer_cst 64 - decl size + field_decl arr test26.cpp 19:14 - field + - signed + integer_cst 96 - decl size + field_decl str1 test26.cpp 20:17 - field + - signed + integer_cst 64 - decl size + type_decl Data1 test26.cpp 7:1 - field + - isAutogenerated: 1 + integer_cst 64 - parm size + if_stmt test26.cpp 194:9 - code + ne_expr - condition + nop_expr - operand + - isUsed: 1 + parm_decl ptr1 test26.cpp 192:30 - operand + pointer_type - decl type + record_type - nested type + type_decl Data1 test26.cpp 6:8 - type name + - isAutogenerated: 1 + field_decl val test26.cpp 17:9 - field + - signed + integer_cst 32 - decl size + field_decl ptrval test26.cpp 18:12 - field + - unsigned + integer_cst 64 - decl size + field_decl arr test26.cpp 19:14 - field + - signed + integer_cst 96 - decl size + field_decl str1 test26.cpp 20:17 - field + - signed + integer_cst 64 - decl size + type_decl Data1 test26.cpp 7:1 - field + - isAutogenerated: 1 + integer_cst 64 - parm size + integer_cst 0 - operand + if_stmt test26.cpp 196:13 - then + ne_expr - condition + nop_expr - operand + - isUsed: 1 + parm_decl ptr1 test26.cpp 192:30 - operand + pointer_type - decl type + record_type - nested type + type_decl Data1 test26.cpp 6:8 - type name + - isAutogenerated: 1 + field_decl val test26.cpp 17:9 - field + - signed + integer_cst 32 - decl size + field_decl ptrval test26.cpp 18:12 - field + - unsigned + integer_cst 64 - decl size + field_decl arr test26.cpp 19:14 - field + - signed + integer_cst 96 - decl size + field_decl str1 test26.cpp 20:17 - field + - signed + integer_cst 64 - decl size + type_decl Data1 test26.cpp 7:1 - field + - isAutogenerated: 1 + integer_cst 64 - parm size + integer_cst 0 - operand + cleanup_point_expr test26.cpp 197:32 - then + expr_stmt test26.cpp 197:32 - operand + convert_expr - expresssion + modify_expr - operand + component_ref test26.cpp 197:23 - operand + indirect_ref - object + nop_expr - ref + - isUsed: 1 + parm_decl ptr1 test26.cpp 192:30 - operand + pointer_type - decl type + record_type - nested type + type_decl Data1 test26.cpp 6:8 - type name + - isAutogenerated: 1 + field_decl val test26.cpp 17:9 - field + - signed + integer_cst 32 - decl size + field_decl ptrval test26.cpp 18:12 - field + - unsigned + integer_cst 64 - decl size + field_decl arr test26.cpp 19:14 - field + - signed + integer_cst 96 - decl size + field_decl str1 test26.cpp 20:17 - field + - signed + integer_cst 64 - decl size + type_decl Data1 test26.cpp 7:1 - field + - isAutogenerated: 1 + integer_cst 64 - parm size + field_decl val test26.cpp 17:9 - field + - signed + integer_cst 32 - decl size + integer_cst 100 - operand +function_decl func11 test26.cpp 201:10 +- isPublic: 1 + method_type - function type + void_type - method return type + type_decl void <built-in> 0:0 - type name + - isAutogenerated: 1 + record_type - method base type + type_decl Object1 test26.cpp 42:7 - type name + - isAutogenerated: 1 + type_decl Object1 test26.cpp 43:1 - field + - isAutogenerated: 1 + tree_list - arg types + pointer_type - value + record_type - nested type + type_decl Object1 test26.cpp 42:7 - type name + - isAutogenerated: 1 + type_decl Object1 test26.cpp 43:1 - field + - isAutogenerated: 1 + tree_list - chain + pointer_type - value + record_type - nested type + type_decl Data1 test26.cpp 6:8 - type name + - isAutogenerated: 1 + field_decl val test26.cpp 17:9 - field + - signed + integer_cst 32 - decl size + field_decl ptrval test26.cpp 18:12 - field + - unsigned + integer_cst 64 - decl size + field_decl arr test26.cpp 19:14 - field + - signed + integer_cst 96 - decl size + field_decl str1 test26.cpp 20:17 - field + - signed + integer_cst 64 - decl size + type_decl Data1 test26.cpp 7:1 - field + - isAutogenerated: 1 + tree_list - chain + void_type - value + type_decl void <built-in> 0:0 - type name + - isAutogenerated: 1 + result_decl test26.cpp 202:5 - function result + - isAutogenerated: 1 + void_type - result type + type_decl void <built-in> 0:0 - type name + - isAutogenerated: 1 + parm_decl this test26.cpp 201:34 - argument + - isAutogenerated: 1 + pointer_type - decl type + record_type - nested type + type_decl Object1 test26.cpp 42:7 - type name + - isAutogenerated: 1 + type_decl Object1 test26.cpp 43:1 - field + - isAutogenerated: 1 + integer_cst 64 - parm size + - isUsed: 1 + parm_decl ptr1 test26.cpp 201:30 - argument + pointer_type - decl type + record_type - nested type + type_decl Data1 test26.cpp 6:8 - type name + - isAutogenerated: 1 + field_decl val test26.cpp 17:9 - field + - signed + integer_cst 32 - decl size + field_decl ptrval test26.cpp 18:12 - field + - unsigned + integer_cst 64 - decl size + field_decl arr test26.cpp 19:14 - field + - signed + integer_cst 96 - decl size + field_decl str1 test26.cpp 20:17 - field + - signed + integer_cst 64 - decl size + type_decl Data1 test26.cpp 7:1 - field + - isAutogenerated: 1 + integer_cst 64 - parm size + if_stmt test26.cpp 203:9 - code + truth_andif_expr test26.cpp 203:18 - condition + ne_expr - operand + nop_expr - operand + - isUsed: 1 + parm_decl ptr1 test26.cpp 201:30 - operand + pointer_type - decl type + record_type - nested type + type_decl Data1 test26.cpp 6:8 - type name + - isAutogenerated: 1 + field_decl val test26.cpp 17:9 - field + - signed + integer_cst 32 - decl size + field_decl ptrval test26.cpp 18:12 - field + - unsigned + integer_cst 64 - decl size + field_decl arr test26.cpp 19:14 - field + - signed + integer_cst 96 - decl size + field_decl str1 test26.cpp 20:17 - field + - signed + integer_cst 64 - decl size + type_decl Data1 test26.cpp 7:1 - field + - isAutogenerated: 1 + integer_cst 64 - parm size + integer_cst 0 - operand + eq_expr test26.cpp 203:23 - operand + var_decl k test26.cpp 40:5 - operand + - isUsed: 1 + integer_cst 32 - decl size + integer_type - var type + - precisionBits: 32 + - signed + type_decl int <built-in> 0:0 - type name + - isAutogenerated: 1 + integer_cst 32 - type size + integer_cst -2147483648 - min value + integer_cst 2147483647 - max value + integer_cst 10 - operand + if_stmt test26.cpp 205:13 - then + ne_expr - condition + nop_expr - operand + - isUsed: 1 + parm_decl ptr1 test26.cpp 201:30 - operand + pointer_type - decl type + record_type - nested type + type_decl Data1 test26.cpp 6:8 - type name + - isAutogenerated: 1 + field_decl val test26.cpp 17:9 - field + - signed + integer_cst 32 - decl size + field_decl ptrval test26.cpp 18:12 - field + - unsigned + integer_cst 64 - decl size + field_decl arr test26.cpp 19:14 - field + - signed + integer_cst 96 - decl size + field_decl str1 test26.cpp 20:17 - field + - signed + integer_cst 64 - decl size + type_decl Data1 test26.cpp 7:1 - field + - isAutogenerated: 1 + integer_cst 64 - parm size + integer_cst 0 - operand + cleanup_point_expr test26.cpp 206:32 - then + expr_stmt test26.cpp 206:32 - operand + convert_expr - expresssion + modify_expr - operand + component_ref test26.cpp 206:23 - operand + indirect_ref - object + nop_expr - ref + - isUsed: 1 + parm_decl ptr1 test26.cpp 201:30 - operand + pointer_type - decl type + record_type - nested type + type_decl Data1 test26.cpp 6:8 - type name + - isAutogenerated: 1 + field_decl val test26.cpp 17:9 - field + - signed + integer_cst 32 - decl size + field_decl ptrval test26.cpp 18:12 - field + - unsigned + integer_cst 64 - decl size + field_decl arr test26.cpp 19:14 - field + - signed + integer_cst 96 - decl size + field_decl str1 test26.cpp 20:17 - field + - signed + integer_cst 64 - decl size + type_decl Data1 test26.cpp 7:1 - field + - isAutogenerated: 1 + integer_cst 64 - parm size + field_decl val test26.cpp 17:9 - field + - signed + integer_cst 32 - decl size + integer_cst 100 - operand +function_decl func12 test26.cpp 210:10 +- isPublic: 1 + method_type - function type + void_type - method return type + type_decl void <built-in> 0:0 - type name + - isAutogenerated: 1 + record_type - method base type + type_decl Object1 test26.cpp 42:7 - type name + - isAutogenerated: 1 + type_decl Object1 test26.cpp 43:1 - field + - isAutogenerated: 1 + tree_list - arg types + pointer_type - value + record_type - nested type + type_decl Object1 test26.cpp 42:7 - type name + - isAutogenerated: 1 + type_decl Object1 test26.cpp 43:1 - field + - isAutogenerated: 1 + tree_list - chain + pointer_type - value + record_type - nested type + type_decl Data1 test26.cpp 6:8 - type name + - isAutogenerated: 1 + field_decl val test26.cpp 17:9 - field + - signed + integer_cst 32 - decl size + field_decl ptrval test26.cpp 18:12 - field + - unsigned + integer_cst 64 - decl size + field_decl arr test26.cpp 19:14 - field + - signed + integer_cst 96 - decl size + field_decl str1 test26.cpp 20:17 - field + - signed + integer_cst 64 - decl size + type_decl Data1 test26.cpp 7:1 - field + - isAutogenerated: 1 + tree_list - chain + void_type - value + type_decl void <built-in> 0:0 - type name + - isAutogenerated: 1 + result_decl test26.cpp 211:5 - function result + - isAutogenerated: 1 + void_type - result type + type_decl void <built-in> 0:0 - type name + - isAutogenerated: 1 + parm_decl this test26.cpp 210:34 - argument + - isAutogenerated: 1 + pointer_type - decl type + record_type - nested type + type_decl Object1 test26.cpp 42:7 - type name + - isAutogenerated: 1 + type_decl Object1 test26.cpp 43:1 - field + - isAutogenerated: 1 + integer_cst 64 - parm size + - isUsed: 1 + parm_decl ptr1 test26.cpp 210:30 - argument + pointer_type - decl type + record_type - nested type + type_decl Data1 test26.cpp 6:8 - type name + - isAutogenerated: 1 + field_decl val test26.cpp 17:9 - field + - signed + integer_cst 32 - decl size + field_decl ptrval test26.cpp 18:12 - field + - unsigned + integer_cst 64 - decl size + field_decl arr test26.cpp 19:14 - field + - signed + integer_cst 96 - decl size + field_decl str1 test26.cpp 20:17 - field + - signed + integer_cst 64 - decl size + type_decl Data1 test26.cpp 7:1 - field + - isAutogenerated: 1 + integer_cst 64 - parm size + if_stmt test26.cpp 212:9 - code + truth_orif_expr test26.cpp 212:18 - condition + ne_expr - operand + nop_expr - operand + - isUsed: 1 + parm_decl ptr1 test26.cpp 210:30 - operand + pointer_type - decl type + record_type - nested type + type_decl Data1 test26.cpp 6:8 - type name + - isAutogenerated: 1 + field_decl val test26.cpp 17:9 - field + - signed + integer_cst 32 - decl size + field_decl ptrval test26.cpp 18:12 - field + - unsigned + integer_cst 64 - decl size + field_decl arr test26.cpp 19:14 - field + - signed + integer_cst 96 - decl size + field_decl str1 test26.cpp 20:17 - field + - signed + integer_cst 64 - decl size + type_decl Data1 test26.cpp 7:1 - field + - isAutogenerated: 1 + integer_cst 64 - parm size + integer_cst 0 - operand + eq_expr test26.cpp 212:23 - operand + var_decl k test26.cpp 40:5 - operand + - isUsed: 1 + integer_cst 32 - decl size + integer_type - var type + - precisionBits: 32 + - signed + type_decl int <built-in> 0:0 - type name + - isAutogenerated: 1 + integer_cst 32 - type size + integer_cst -2147483648 - min value + integer_cst 2147483647 - max value + integer_cst 10 - operand + if_stmt test26.cpp 214:13 - then + ne_expr - condition + nop_expr - operand + - isUsed: 1 + parm_decl ptr1 test26.cpp 210:30 - operand + pointer_type - decl type + record_type - nested type + type_decl Data1 test26.cpp 6:8 - type name + - isAutogenerated: 1 + field_decl val test26.cpp 17:9 - field + - signed + integer_cst 32 - decl size + field_decl ptrval test26.cpp 18:12 - field + - unsigned + integer_cst 64 - decl size + field_decl arr test26.cpp 19:14 - field + - signed + integer_cst 96 - decl size + field_decl str1 test26.cpp 20:17 - field + - signed + integer_cst 64 - decl size + type_decl Data1 test26.cpp 7:1 - field + - isAutogenerated: 1 + integer_cst 64 - parm size + integer_cst 0 - operand + cleanup_point_expr test26.cpp 215:32 - then + expr_stmt test26.cpp 215:32 - operand + convert_expr - expresssion + modify_expr - operand + component_ref test26.cpp 215:23 - operand + indirect_ref - object + nop_expr - ref + - isUsed: 1 + parm_decl ptr1 test26.cpp 210:30 - operand + pointer_type - decl type + record_type - nested type + type_decl Data1 test26.cpp 6:8 - type name + - isAutogenerated: 1 + field_decl val test26.cpp 17:9 - field + - signed + integer_cst 32 - decl size + field_decl ptrval test26.cpp 18:12 - field + - unsigned + integer_cst 64 - decl size + field_decl arr test26.cpp 19:14 - field + - signed + integer_cst 96 - decl size + field_decl str1 test26.cpp 20:17 - field + - signed + integer_cst 64 - decl size + type_decl Data1 test26.cpp 7:1 - field + - isAutogenerated: 1 + integer_cst 64 - parm size + field_decl val test26.cpp 17:9 - field + - signed + integer_cst 32 - decl size + integer_cst 100 - operand +function_decl func13 test26.cpp 219:10 +- isPublic: 1 + method_type - function type + void_type - method return type + type_decl void <built-in> 0:0 - type name + - isAutogenerated: 1 + record_type - method base type + type_decl Object1 test26.cpp 42:7 - type name + - isAutogenerated: 1 + type_decl Object1 test26.cpp 43:1 - field + - isAutogenerated: 1 + tree_list - arg types + pointer_type - value + record_type - nested type + type_decl Object1 test26.cpp 42:7 - type name + - isAutogenerated: 1 + type_decl Object1 test26.cpp 43:1 - field + - isAutogenerated: 1 + tree_list - chain + pointer_type - value + record_type - nested type + type_decl Data1 test26.cpp 6:8 - type name + - isAutogenerated: 1 + field_decl val test26.cpp 17:9 - field + - signed + integer_cst 32 - decl size + field_decl ptrval test26.cpp 18:12 - field + - unsigned + integer_cst 64 - decl size + field_decl arr test26.cpp 19:14 - field + - signed + integer_cst 96 - decl size + field_decl str1 test26.cpp 20:17 - field + - signed + integer_cst 64 - decl size + type_decl Data1 test26.cpp 7:1 - field + - isAutogenerated: 1 + tree_list - chain + void_type - value + type_decl void <built-in> 0:0 - type name + - isAutogenerated: 1 + result_decl test26.cpp 220:5 - function result + - isAutogenerated: 1 + void_type - result type + type_decl void <built-in> 0:0 - type name + - isAutogenerated: 1 + parm_decl this test26.cpp 219:34 - argument + - isAutogenerated: 1 + pointer_type - decl type + record_type - nested type + type_decl Object1 test26.cpp 42:7 - type name + - isAutogenerated: 1 + type_decl Object1 test26.cpp 43:1 - field + - isAutogenerated: 1 + integer_cst 64 - parm size + - isUsed: 1 + parm_decl ptr1 test26.cpp 219:30 - argument + pointer_type - decl type + record_type - nested type + type_decl Data1 test26.cpp 6:8 - type name + - isAutogenerated: 1 + field_decl val test26.cpp 17:9 - field + - signed + integer_cst 32 - decl size + field_decl ptrval test26.cpp 18:12 - field + - unsigned + integer_cst 64 - decl size + field_decl arr test26.cpp 19:14 - field + - signed + integer_cst 96 - decl size + field_decl str1 test26.cpp 20:17 - field + - signed + integer_cst 64 - decl size + type_decl Data1 test26.cpp 7:1 - field + - isAutogenerated: 1 + integer_cst 64 - parm size + if_stmt test26.cpp 221:9 - code + truth_andif_expr test26.cpp 221:18 - condition + ne_expr - operand + nop_expr - operand + - isUsed: 1 + parm_decl ptr1 test26.cpp 219:30 - operand + pointer_type - decl type + record_type - nested type + type_decl Data1 test26.cpp 6:8 - type name + - isAutogenerated: 1 + field_decl val test26.cpp 17:9 - field + - signed + integer_cst 32 - decl size + field_decl ptrval test26.cpp 18:12 - field + - unsigned + integer_cst 64 - decl size + field_decl arr test26.cpp 19:14 - field + - signed + integer_cst 96 - decl size + field_decl str1 test26.cpp 20:17 - field + - signed + integer_cst 64 - decl size + type_decl Data1 test26.cpp 7:1 - field + - isAutogenerated: 1 + integer_cst 64 - parm size + integer_cst 0 - operand + eq_expr test26.cpp 221:23 - operand + var_decl k test26.cpp 40:5 - operand + - isUsed: 1 + integer_cst 32 - decl size + integer_type - var type + - precisionBits: 32 + - signed + type_decl int <built-in> 0:0 - type name + - isAutogenerated: 1 + integer_cst 32 - type size + integer_cst -2147483648 - min value + integer_cst 2147483647 - max value + integer_cst 10 - operand + return_expr test26.cpp 223:13 - then + if_stmt test26.cpp 227:13 - else + ne_expr - condition + nop_expr - operand + - isUsed: 1 + parm_decl ptr1 test26.cpp 219:30 - operand + pointer_type - decl type + record_type - nested type + type_decl Data1 test26.cpp 6:8 - type name + - isAutogenerated: 1 + field_decl val test26.cpp 17:9 - field + - signed + integer_cst 32 - decl size + field_decl ptrval test26.cpp 18:12 - field + - unsigned + integer_cst 64 - decl size + field_decl arr test26.cpp 19:14 - field + - signed + integer_cst 96 - decl size + field_decl str1 test26.cpp 20:17 - field + - signed + integer_cst 64 - decl size + type_decl Data1 test26.cpp 7:1 - field + - isAutogenerated: 1 + integer_cst 64 - parm size + integer_cst 0 - operand + cleanup_point_expr test26.cpp 228:32 - then + expr_stmt test26.cpp 228:32 - operand + convert_expr - expresssion + modify_expr - operand + component_ref test26.cpp 228:23 - operand + indirect_ref - object + nop_expr - ref + - isUsed: 1 + parm_decl ptr1 test26.cpp 219:30 - operand + pointer_type - decl type + record_type - nested type + type_decl Data1 test26.cpp 6:8 - type name + - isAutogenerated: 1 + field_decl val test26.cpp 17:9 - field + - signed + integer_cst 32 - decl size + field_decl ptrval test26.cpp 18:12 - field + - unsigned + integer_cst 64 - decl size + field_decl arr test26.cpp 19:14 - field + - signed + integer_cst 96 - decl size + field_decl str1 test26.cpp 20:17 - field + - signed + integer_cst 64 - decl size + type_decl Data1 test26.cpp 7:1 - field + - isAutogenerated: 1 + integer_cst 64 - parm size + field_decl val test26.cpp 17:9 - field + - signed + integer_cst 32 - decl size + integer_cst 100 - operand +function_decl func14 test26.cpp 232:10 +- isPublic: 1 + method_type - function type + void_type - method return type + type_decl void <built-in> 0:0 - type name + - isAutogenerated: 1 + record_type - method base type + type_decl Object1 test26.cpp 42:7 - type name + - isAutogenerated: 1 + type_decl Object1 test26.cpp 43:1 - field + - isAutogenerated: 1 + tree_list - arg types + pointer_type - value + record_type - nested type + type_decl Object1 test26.cpp 42:7 - type name + - isAutogenerated: 1 + type_decl Object1 test26.cpp 43:1 - field + - isAutogenerated: 1 + tree_list - chain + pointer_type - value + record_type - nested type + type_decl Data1 test26.cpp 6:8 - type name + - isAutogenerated: 1 + field_decl val test26.cpp 17:9 - field + - signed + integer_cst 32 - decl size + field_decl ptrval test26.cpp 18:12 - field + - unsigned + integer_cst 64 - decl size + field_decl arr test26.cpp 19:14 - field + - signed + integer_cst 96 - decl size + field_decl str1 test26.cpp 20:17 - field + - signed + integer_cst 64 - decl size + type_decl Data1 test26.cpp 7:1 - field + - isAutogenerated: 1 + tree_list - chain + void_type - value + type_decl void <built-in> 0:0 - type name + - isAutogenerated: 1 + result_decl test26.cpp 233:5 - function result + - isAutogenerated: 1 + void_type - result type + type_decl void <built-in> 0:0 - type name + - isAutogenerated: 1 + parm_decl this test26.cpp 232:34 - argument + - isAutogenerated: 1 + pointer_type - decl type + record_type - nested type + type_decl Object1 test26.cpp 42:7 - type name + - isAutogenerated: 1 + type_decl Object1 test26.cpp 43:1 - field + - isAutogenerated: 1 + integer_cst 64 - parm size + - isUsed: 1 + parm_decl ptr1 test26.cpp 232:30 - argument + pointer_type - decl type + record_type - nested type + type_decl Data1 test26.cpp 6:8 - type name + - isAutogenerated: 1 + field_decl val test26.cpp 17:9 - field + - signed + integer_cst 32 - decl size + field_decl ptrval test26.cpp 18:12 - field + - unsigned + integer_cst 64 - decl size + field_decl arr test26.cpp 19:14 - field + - signed + integer_cst 96 - decl size + field_decl str1 test26.cpp 20:17 - field + - signed + integer_cst 64 - decl size + type_decl Data1 test26.cpp 7:1 - field + - isAutogenerated: 1 + integer_cst 64 - parm size + if_stmt test26.cpp 234:9 - code + truth_orif_expr test26.cpp 234:18 - condition + ne_expr - operand + nop_expr - operand + - isUsed: 1 + parm_decl ptr1 test26.cpp 232:30 - operand + pointer_type - decl type + record_type - nested type + type_decl Data1 test26.cpp 6:8 - type name + - isAutogenerated: 1 + field_decl val test26.cpp 17:9 - field + - signed + integer_cst 32 - decl size + field_decl ptrval test26.cpp 18:12 - field + - unsigned + integer_cst 64 - decl size + field_decl arr test26.cpp 19:14 - field + - signed + integer_cst 96 - decl size + field_decl str1 test26.cpp 20:17 - field + - signed + integer_cst 64 - decl size + type_decl Data1 test26.cpp 7:1 - field + - isAutogenerated: 1 + integer_cst 64 - parm size + integer_cst 0 - operand + eq_expr test26.cpp 234:23 - operand + var_decl k test26.cpp 40:5 - operand + - isUsed: 1 + integer_cst 32 - decl size + integer_type - var type + - precisionBits: 32 + - signed + type_decl int <built-in> 0:0 - type name + - isAutogenerated: 1 + integer_cst 32 - type size + integer_cst -2147483648 - min value + integer_cst 2147483647 - max value + integer_cst 10 - operand + return_expr test26.cpp 236:13 - then + if_stmt test26.cpp 240:13 - else + ne_expr - condition + nop_expr - operand + - isUsed: 1 + parm_decl ptr1 test26.cpp 232:30 - operand + pointer_type - decl type + record_type - nested type + type_decl Data1 test26.cpp 6:8 - type name + - isAutogenerated: 1 + field_decl val test26.cpp 17:9 - field + - signed + integer_cst 32 - decl size + field_decl ptrval test26.cpp 18:12 - field + - unsigned + integer_cst 64 - decl size + field_decl arr test26.cpp 19:14 - field + - signed + integer_cst 96 - decl size + field_decl str1 test26.cpp 20:17 - field + - signed + integer_cst 64 - decl size + type_decl Data1 test26.cpp 7:1 - field + - isAutogenerated: 1 + integer_cst 64 - parm size + integer_cst 0 - operand + cleanup_point_expr test26.cpp 241:32 - then + expr_stmt test26.cpp 241:32 - operand + convert_expr - expresssion + modify_expr - operand + component_ref test26.cpp 241:23 - operand + indirect_ref - object + nop_expr - ref + - isUsed: 1 + parm_decl ptr1 test26.cpp 232:30 - operand + pointer_type - decl type + record_type - nested type + type_decl Data1 test26.cpp 6:8 - type name + - isAutogenerated: 1 + field_decl val test26.cpp 17:9 - field + - signed + integer_cst 32 - decl size + field_decl ptrval test26.cpp 18:12 - field + - unsigned + integer_cst 64 - decl size + field_decl arr test26.cpp 19:14 - field + - signed + integer_cst 96 - decl size + field_decl str1 test26.cpp 20:17 - field + - signed + integer_cst 64 - decl size + type_decl Data1 test26.cpp 7:1 - field + - isAutogenerated: 1 + integer_cst 64 - parm size + field_decl val test26.cpp 17:9 - field + - signed + integer_cst 32 - decl size + integer_cst 100 - operand function_decl c_str /usr/include/c++/5/bits/basic_string.h 4215:7 - isExternal: 1 - isPublic: 1 diff --git a/test/test26-02.txt b/test/test26-02.txt index ea568ce..640a548 100644 --- a/test/test26-02.txt +++ b/test/test26-02.txt @@ -315,6 +315,11 @@ func6: pointer_type ptr1, func7: pointer_type ptr1, func8: pointer_type ptr1, func9: pointer_type ptr1, +func10: pointer_type ptr1, +func11: pointer_type ptr1, +func12: pointer_type ptr1, +func13: pointer_type ptr1, +func14: pointer_type ptr1, __stoa: pointer_type __convf, pointer_type __name, pointer_type __str, pointer_type __idx, __stoa: pointer_type __convf, pointer_type __name, pointer_type __str, pointer_type __idx, __stoa: pointer_type __convf, pointer_type __name, pointer_type __str, pointer_type __idx, diff --git a/test/test26-03.txt b/test/test26-03.txt index 7360ca2..32554d4 100644 --- a/test/test26-03.txt +++ b/test/test26-03.txt @@ -13744,7 +13744,12 @@ integer_cst 0: ptr1, eq_expr : ptr1, var_decl k: ptr1, integer_cst 1: ptr1, -return_expr : ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +convert_expr : ptr1, +modify_expr : ptr1, +var_decl k: ptr1, +integer_cst 10: ptr1, if_stmt : ptr1, truth_andif_expr : ptr1, ne_expr : ptr1, @@ -13766,7 +13771,12 @@ integer_cst 0: ptr1, eq_expr : var_decl k: integer_cst 2: -return_expr : +cleanup_point_expr : +expr_stmt : +convert_expr : +modify_expr : +var_decl k: +integer_cst 20: if_stmt : ptr1, truth_orif_expr : ptr1, eq_expr : ptr1, @@ -13788,29 +13798,39 @@ integer_cst 0: ptr1, eq_expr : var_decl k: integer_cst 1: -return_expr : ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +convert_expr : ptr1, +modify_expr : ptr1, +var_decl k: ptr1, +integer_cst 30: ptr1, if_stmt : ptr1, truth_orif_expr : ptr1, -ne_expr : -parm_decl ptr1: -pointer_type : -record_type : -type_decl Data1: -field_decl val: -integer_cst 32: -field_decl ptrval: -integer_cst 64: -field_decl arr: -integer_cst 96: -field_decl str1: -integer_cst 64: -type_decl Data1: -integer_cst 64: -integer_cst 0: -eq_expr : -var_decl k: -integer_cst 2: -return_expr : ptr1, +ne_expr : ptr1, +parm_decl ptr1: ptr1, +pointer_type : ptr1, +record_type : ptr1, +type_decl Data1: ptr1, +field_decl val: ptr1, +integer_cst 32: ptr1, +field_decl ptrval: ptr1, +integer_cst 64: ptr1, +field_decl arr: ptr1, +integer_cst 96: ptr1, +field_decl str1: ptr1, +integer_cst 64: ptr1, +type_decl Data1: ptr1, +integer_cst 64: ptr1, +integer_cst 0: ptr1, +eq_expr : ptr1, +var_decl k: ptr1, +integer_cst 2: ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +convert_expr : ptr1, +modify_expr : ptr1, +var_decl k: ptr1, +integer_cst 40: ptr1, statement_list : if_stmt : truth_andif_expr : @@ -13833,7 +13853,12 @@ integer_cst 0: eq_expr : var_decl k: integer_cst 4: -return_expr : +cleanup_point_expr : +expr_stmt : +convert_expr : +modify_expr : +var_decl k: +integer_cst 50: if_stmt : truth_andif_expr : ne_expr : @@ -13855,7 +13880,12 @@ integer_cst 0: eq_expr : var_decl k: integer_cst 5: -return_expr : +cleanup_point_expr : +expr_stmt : +convert_expr : +modify_expr : +var_decl k: +integer_cst 60: if_stmt : truth_orif_expr : eq_expr : @@ -13877,7 +13907,12 @@ integer_cst 0: eq_expr : var_decl k: integer_cst 4: -return_expr : +cleanup_point_expr : +expr_stmt : +convert_expr : +modify_expr : +var_decl k: +integer_cst 70: if_stmt : truth_orif_expr : ne_expr : @@ -13899,7 +13934,12 @@ integer_cst 0: eq_expr : var_decl k: integer_cst 5: -return_expr : +cleanup_point_expr : +expr_stmt : +convert_expr : +modify_expr : +var_decl k: +integer_cst 80: function_decl func7: if_stmt : ptr1, truth_orif_expr : ptr1, @@ -13950,7 +13990,12 @@ integer_cst 0: ptr1, eq_expr : var_decl k: integer_cst 1: -return_expr : +cleanup_point_expr : +expr_stmt : +convert_expr : +modify_expr : +var_decl k: +integer_cst 10: if_stmt : ptr1, truth_andif_expr : ptr1, eq_expr : ptr1, @@ -13972,7 +14017,12 @@ integer_cst 0: ptr1, eq_expr : ptr1, var_decl k: ptr1, integer_cst 2: ptr1, -return_expr : ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +convert_expr : ptr1, +modify_expr : ptr1, +var_decl k: ptr1, +integer_cst 20: ptr1, if_stmt : ptr1, truth_orif_expr : ptr1, ne_expr : ptr1, @@ -13994,7 +14044,12 @@ integer_cst 0: ptr1, eq_expr : ptr1, var_decl k: ptr1, integer_cst 1: ptr1, -return_expr : ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +convert_expr : ptr1, +modify_expr : ptr1, +var_decl k: ptr1, +integer_cst 30: ptr1, if_stmt : ptr1, truth_orif_expr : ptr1, eq_expr : ptr1, @@ -14016,7 +14071,12 @@ integer_cst 0: ptr1, eq_expr : var_decl k: integer_cst 2: -return_expr : ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +convert_expr : ptr1, +modify_expr : ptr1, +var_decl k: ptr1, +integer_cst 40: ptr1, statement_list : ptr1, if_stmt : ptr1, truth_andif_expr : ptr1, @@ -14039,7 +14099,12 @@ integer_cst 0: ptr1, eq_expr : var_decl k: integer_cst 4: -return_expr : +cleanup_point_expr : +expr_stmt : +convert_expr : +modify_expr : +var_decl k: +integer_cst 50: if_stmt : ptr1, truth_andif_expr : ptr1, eq_expr : ptr1, @@ -14061,7 +14126,12 @@ integer_cst 0: ptr1, eq_expr : ptr1, var_decl k: ptr1, integer_cst 5: ptr1, -return_expr : ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +convert_expr : ptr1, +modify_expr : ptr1, +var_decl k: ptr1, +integer_cst 60: ptr1, if_stmt : ptr1, truth_orif_expr : ptr1, ne_expr : ptr1, @@ -14083,7 +14153,12 @@ integer_cst 0: ptr1, eq_expr : ptr1, var_decl k: ptr1, integer_cst 4: ptr1, -return_expr : ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +convert_expr : ptr1, +modify_expr : ptr1, +var_decl k: ptr1, +integer_cst 70: ptr1, if_stmt : ptr1, truth_orif_expr : ptr1, eq_expr : ptr1, @@ -14105,7 +14180,12 @@ integer_cst 0: ptr1, eq_expr : var_decl k: integer_cst 5: -return_expr : ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +convert_expr : ptr1, +modify_expr : ptr1, +var_decl k: ptr1, +integer_cst 80: ptr1, function_decl func8: if_stmt : ptr1, truth_andif_expr : ptr1, @@ -14160,10 +14240,247 @@ integer_cst 0: ptr1, eq_expr : var_decl k: integer_cst 1: -return_expr : ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +convert_expr : ptr1, +modify_expr : ptr1, +var_decl k: ptr1, +integer_cst 10: ptr1, +if_stmt : ptr1, +truth_orif_expr : ptr1, +ne_expr : ptr1, +parm_decl ptr1: ptr1, +pointer_type : ptr1, +record_type : ptr1, +type_decl Data1: ptr1, +field_decl val: ptr1, +integer_cst 32: ptr1, +field_decl ptrval: ptr1, +integer_cst 64: ptr1, +field_decl arr: ptr1, +integer_cst 96: ptr1, +field_decl str1: ptr1, +integer_cst 64: ptr1, +type_decl Data1: ptr1, +integer_cst 64: ptr1, +integer_cst 0: ptr1, +eq_expr : ptr1, +var_decl k: ptr1, +integer_cst 2: ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +convert_expr : ptr1, +modify_expr : ptr1, +var_decl k: ptr1, +integer_cst 20: ptr1, +if_stmt : ptr1, +truth_andif_expr : ptr1, +eq_expr : ptr1, +test26.cpp:148:18: warning: Useless variable check 'ptr1'. It already was checked before + if (!ptr1 && k == 3) + ^ +parm_decl ptr1: ptr1, +pointer_type : ptr1, +record_type : ptr1, +type_decl Data1: ptr1, +field_decl val: ptr1, +integer_cst 32: ptr1, +field_decl ptrval: ptr1, +integer_cst 64: ptr1, +field_decl arr: ptr1, +integer_cst 96: ptr1, +field_decl str1: ptr1, +integer_cst 64: ptr1, +type_decl Data1: ptr1, +integer_cst 64: ptr1, +integer_cst 0: ptr1, +eq_expr : ptr1, +var_decl k: ptr1, +integer_cst 3: ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +convert_expr : ptr1, +modify_expr : ptr1, +var_decl k: ptr1, +integer_cst 30: ptr1, +if_stmt : ptr1, +truth_andif_expr : ptr1, +ne_expr : ptr1, +parm_decl ptr1: ptr1, +pointer_type : ptr1, +record_type : ptr1, +type_decl Data1: ptr1, +field_decl val: ptr1, +integer_cst 32: ptr1, +field_decl ptrval: ptr1, +integer_cst 64: ptr1, +field_decl arr: ptr1, +integer_cst 96: ptr1, +field_decl str1: ptr1, +integer_cst 64: ptr1, +type_decl Data1: ptr1, +integer_cst 64: ptr1, +integer_cst 0: ptr1, +eq_expr : +var_decl k: +integer_cst 4: +cleanup_point_expr : +expr_stmt : +convert_expr : +modify_expr : +var_decl k: +integer_cst 40: +statement_list : ptr1, +if_stmt : ptr1, +truth_orif_expr : ptr1, +eq_expr : ptr1, +test26.cpp:155:18: warning: Useless variable check 'ptr1'. It already was checked before + if (!ptr1 || k == 5) + ^ +parm_decl ptr1: ptr1, +pointer_type : ptr1, +record_type : ptr1, +type_decl Data1: ptr1, +field_decl val: ptr1, +integer_cst 32: ptr1, +field_decl ptrval: ptr1, +integer_cst 64: ptr1, +field_decl arr: ptr1, +integer_cst 96: ptr1, +field_decl str1: ptr1, +integer_cst 64: ptr1, +type_decl Data1: ptr1, +integer_cst 64: ptr1, +integer_cst 0: ptr1, +eq_expr : +var_decl k: +integer_cst 5: +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +convert_expr : ptr1, +modify_expr : ptr1, +var_decl k: ptr1, +integer_cst 50: ptr1, if_stmt : ptr1, truth_orif_expr : ptr1, +ne_expr : ptr1, +parm_decl ptr1: ptr1, +pointer_type : ptr1, +record_type : ptr1, +type_decl Data1: ptr1, +field_decl val: ptr1, +integer_cst 32: ptr1, +field_decl ptrval: ptr1, +integer_cst 64: ptr1, +field_decl arr: ptr1, +integer_cst 96: ptr1, +field_decl str1: ptr1, +integer_cst 64: ptr1, +type_decl Data1: ptr1, +integer_cst 64: ptr1, +integer_cst 0: ptr1, +eq_expr : ptr1, +var_decl k: ptr1, +integer_cst 6: ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +convert_expr : ptr1, +modify_expr : ptr1, +var_decl k: ptr1, +integer_cst 60: ptr1, +if_stmt : ptr1, +truth_andif_expr : ptr1, +eq_expr : ptr1, +test26.cpp:159:18: warning: Useless variable check 'ptr1'. It already was checked before + if (!ptr1 && k == 7) + ^ +parm_decl ptr1: ptr1, +pointer_type : ptr1, +record_type : ptr1, +type_decl Data1: ptr1, +field_decl val: ptr1, +integer_cst 32: ptr1, +field_decl ptrval: ptr1, +integer_cst 64: ptr1, +field_decl arr: ptr1, +integer_cst 96: ptr1, +field_decl str1: ptr1, +integer_cst 64: ptr1, +type_decl Data1: ptr1, +integer_cst 64: ptr1, +integer_cst 0: ptr1, +eq_expr : ptr1, +var_decl k: ptr1, +integer_cst 7: ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +convert_expr : ptr1, +modify_expr : ptr1, +var_decl k: ptr1, +integer_cst 70: ptr1, +if_stmt : ptr1, +truth_andif_expr : ptr1, +ne_expr : ptr1, +parm_decl ptr1: ptr1, +pointer_type : ptr1, +record_type : ptr1, +type_decl Data1: ptr1, +field_decl val: ptr1, +integer_cst 32: ptr1, +field_decl ptrval: ptr1, +integer_cst 64: ptr1, +field_decl arr: ptr1, +integer_cst 96: ptr1, +field_decl str1: ptr1, +integer_cst 64: ptr1, +type_decl Data1: ptr1, +integer_cst 64: ptr1, +integer_cst 0: ptr1, +eq_expr : +var_decl k: +integer_cst 8: +cleanup_point_expr : +expr_stmt : +convert_expr : +modify_expr : +var_decl k: +integer_cst 80: +function_decl func9: +if_stmt : ptr1, +truth_andif_expr : ptr1, +ne_expr : ptr1, +parm_decl ptr1: ptr1, +pointer_type : ptr1, +record_type : ptr1, +type_decl Data1: ptr1, +field_decl val: ptr1, +integer_cst 32: ptr1, +field_decl ptrval: ptr1, +integer_cst 64: ptr1, +field_decl arr: ptr1, +integer_cst 96: ptr1, +field_decl str1: ptr1, +integer_cst 64: ptr1, +type_decl Data1: ptr1, +integer_cst 64: ptr1, +integer_cst 0: ptr1, +eq_expr : +var_decl k: +integer_cst 32: +integer_type : +type_decl int: +integer_cst 32: +integer_cst -2147483648: +integer_cst 2147483647: +integer_cst 3: +statement_list : +if_stmt : +truth_orif_expr : ne_expr : +test26.cpp: In member function 'void Object1::func9(Data1*)': +test26.cpp:170:22: warning: Useless variable check 'ptr1'. It already was checked before + if (ptr1 || k == 1) + ^ parm_decl ptr1: pointer_type : record_type : @@ -14181,13 +14498,18 @@ integer_cst 64: integer_cst 0: eq_expr : var_decl k: -integer_cst 2: -return_expr : ptr1, -if_stmt : ptr1, -truth_andif_expr : ptr1, +integer_cst 1: +cleanup_point_expr : +expr_stmt : +convert_expr : +modify_expr : +var_decl k: +integer_cst 10: +if_stmt : +truth_orif_expr : eq_expr : -test26.cpp:148:18: warning: Useless variable check 'ptr1'. It already was checked before - if (!ptr1 && k == 1) +test26.cpp:172:18: warning: Useless variable check 'ptr1'. It already was checked before + if (!ptr1 || k == 2) ^ parm_decl ptr1: pointer_type : @@ -14206,11 +14528,19 @@ integer_cst 64: integer_cst 0: eq_expr : var_decl k: -integer_cst 1: -return_expr : ptr1, -if_stmt : ptr1, -truth_andif_expr : ptr1, +integer_cst 2: +cleanup_point_expr : +expr_stmt : +convert_expr : +modify_expr : +var_decl k: +integer_cst 20: +if_stmt : +truth_andif_expr : ne_expr : +test26.cpp:174:22: warning: Useless variable check 'ptr1'. It already was checked before + if (ptr1 && k == 3) + ^ parm_decl ptr1: pointer_type : record_type : @@ -14228,12 +14558,77 @@ integer_cst 64: integer_cst 0: eq_expr : var_decl k: -integer_cst 2: -return_expr : ptr1, +integer_cst 3: +cleanup_point_expr : +expr_stmt : +convert_expr : +modify_expr : +var_decl k: +integer_cst 30: +if_stmt : +truth_andif_expr : +eq_expr : +test26.cpp:176:18: warning: Useless variable check 'ptr1'. It already was checked before + if (!ptr1 && k == 4) + ^ +parm_decl ptr1: +pointer_type : +record_type : +type_decl Data1: +field_decl val: +integer_cst 32: +field_decl ptrval: +integer_cst 64: +field_decl arr: +integer_cst 96: +field_decl str1: +integer_cst 64: +type_decl Data1: +integer_cst 64: +integer_cst 0: +eq_expr : +var_decl k: +integer_cst 4: +cleanup_point_expr : +expr_stmt : +convert_expr : +modify_expr : +var_decl k: +integer_cst 40: statement_list : ptr1, if_stmt : ptr1, truth_orif_expr : ptr1, +ne_expr : ptr1, +parm_decl ptr1: ptr1, +pointer_type : ptr1, +record_type : ptr1, +type_decl Data1: ptr1, +field_decl val: ptr1, +integer_cst 32: ptr1, +field_decl ptrval: ptr1, +integer_cst 64: ptr1, +field_decl arr: ptr1, +integer_cst 96: ptr1, +field_decl str1: ptr1, +integer_cst 64: ptr1, +type_decl Data1: ptr1, +integer_cst 64: ptr1, +integer_cst 0: ptr1, eq_expr : ptr1, +var_decl k: ptr1, +integer_cst 5: ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +convert_expr : ptr1, +modify_expr : ptr1, +var_decl k: ptr1, +integer_cst 50: ptr1, +if_stmt : ptr1, +truth_orif_expr : ptr1, +eq_expr : ptr1, +test26.cpp:183:18: warning: Useless variable check 'ptr1'. It already was checked before + if (!ptr1 || k == 6) + ^ parm_decl ptr1: ptr1, pointer_type : ptr1, record_type : ptr1, @@ -14251,36 +14646,94 @@ integer_cst 64: ptr1, integer_cst 0: ptr1, eq_expr : var_decl k: -integer_cst 4: -return_expr : ptr1, +integer_cst 6: +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +convert_expr : ptr1, +modify_expr : ptr1, +var_decl k: ptr1, +integer_cst 60: ptr1, if_stmt : ptr1, -truth_orif_expr : ptr1, -ne_expr : -test26.cpp:157:22: warning: Useless variable check 'ptr1'. It already was checked before - if (ptr1 || k == 5) - ^ -parm_decl ptr1: -pointer_type : -record_type : -type_decl Data1: -field_decl val: -integer_cst 32: -field_decl ptrval: -integer_cst 64: -field_decl arr: -integer_cst 96: -field_decl str1: -integer_cst 64: -type_decl Data1: -integer_cst 64: -integer_cst 0: +truth_andif_expr : ptr1, +ne_expr : ptr1, +parm_decl ptr1: ptr1, +pointer_type : ptr1, +record_type : ptr1, +type_decl Data1: ptr1, +field_decl val: ptr1, +integer_cst 32: ptr1, +field_decl ptrval: ptr1, +integer_cst 64: ptr1, +field_decl arr: ptr1, +integer_cst 96: ptr1, +field_decl str1: ptr1, +integer_cst 64: ptr1, +type_decl Data1: ptr1, +integer_cst 64: ptr1, +integer_cst 0: ptr1, eq_expr : var_decl k: -integer_cst 5: -return_expr : ptr1, +integer_cst 7: +cleanup_point_expr : +expr_stmt : +convert_expr : +modify_expr : +var_decl k: +integer_cst 70: if_stmt : ptr1, truth_andif_expr : ptr1, -eq_expr : +eq_expr : ptr1, +test26.cpp:187:18: warning: Useless variable check 'ptr1'. It already was checked before + if (!ptr1 && k == 8) + ^ +parm_decl ptr1: ptr1, +pointer_type : ptr1, +record_type : ptr1, +type_decl Data1: ptr1, +field_decl val: ptr1, +integer_cst 32: ptr1, +field_decl ptrval: ptr1, +integer_cst 64: ptr1, +field_decl arr: ptr1, +integer_cst 96: ptr1, +field_decl str1: ptr1, +integer_cst 64: ptr1, +type_decl Data1: ptr1, +integer_cst 64: ptr1, +integer_cst 0: ptr1, +eq_expr : ptr1, +var_decl k: ptr1, +integer_cst 8: ptr1, +cleanup_point_expr : ptr1, +expr_stmt : ptr1, +convert_expr : ptr1, +modify_expr : ptr1, +var_decl k: ptr1, +integer_cst 80: ptr1, +function_decl func10: +if_stmt : ptr1, +ne_expr : ptr1, +parm_decl ptr1: ptr1, +pointer_type : ptr1, +record_type : ptr1, +type_decl Data1: ptr1, +field_decl val: ptr1, +integer_cst 32: ptr1, +field_decl ptrval: ptr1, +integer_cst 64: ptr1, +field_decl arr: ptr1, +integer_cst 96: ptr1, +field_decl str1: ptr1, +integer_cst 64: ptr1, +type_decl Data1: ptr1, +integer_cst 64: ptr1, +integer_cst 0: ptr1, +if_stmt : +ne_expr : +test26.cpp: In member function 'void Object1::func10(Data1*)': +test26.cpp:196:13: warning: Useless variable check 'ptr1'. It already was checked before + if (ptr1) + ^ parm_decl ptr1: pointer_type : record_type : @@ -14296,16 +14749,12 @@ integer_cst 64: type_decl Data1: integer_cst 64: integer_cst 0: -eq_expr : -var_decl k: -integer_cst 4: -return_expr : ptr1, -if_stmt : ptr1, -truth_andif_expr : ptr1, -ne_expr : -test26.cpp:161:22: warning: Useless variable check 'ptr1'. It already was checked before - if (ptr1 && k == 5) - ^ +cleanup_point_expr : +expr_stmt : +convert_expr : +modify_expr : +component_ref : +indirect_ref : parm_decl ptr1: pointer_type : record_type : @@ -14320,12 +14769,10 @@ field_decl str1: integer_cst 64: type_decl Data1: integer_cst 64: -integer_cst 0: -eq_expr : -var_decl k: -integer_cst 5: -return_expr : ptr1, -function_decl func9: +field_decl val: +integer_cst 32: +integer_cst 100: +function_decl func11: if_stmt : ptr1, truth_andif_expr : ptr1, ne_expr : ptr1, @@ -14352,15 +14799,13 @@ type_decl int: integer_cst 32: integer_cst -2147483648: integer_cst 2147483647: -integer_cst 3: -statement_list : +integer_cst 10: if_stmt : -truth_orif_expr : ne_expr : -test26.cpp: In member function 'void Object1::func9(Data1*)': -test26.cpp:170:22: warning: Useless variable check 'ptr1'. It already was checked before - if (ptr1 || k == 1) - ^ +test26.cpp: In member function 'void Object1::func11(Data1*)': +test26.cpp:205:13: warning: Useless variable check 'ptr1'. It already was checked before + if (ptr1) + ^ parm_decl ptr1: pointer_type : record_type : @@ -14376,13 +14821,12 @@ integer_cst 64: type_decl Data1: integer_cst 64: integer_cst 0: -eq_expr : -var_decl k: -integer_cst 1: -return_expr : -if_stmt : -truth_orif_expr : -eq_expr : +cleanup_point_expr : +expr_stmt : +convert_expr : +modify_expr : +component_ref : +indirect_ref : parm_decl ptr1: pointer_type : record_type : @@ -14397,17 +14841,60 @@ field_decl str1: integer_cst 64: type_decl Data1: integer_cst 64: -integer_cst 0: -eq_expr : -var_decl k: -integer_cst 2: -return_expr : -if_stmt : -truth_andif_expr : -ne_expr : -test26.cpp:174:22: warning: Useless variable check 'ptr1'. It already was checked before - if (ptr1 && k == 1) - ^ +field_decl val: +integer_cst 32: +integer_cst 100: +function_decl func12: +if_stmt : ptr1, +truth_orif_expr : ptr1, +ne_expr : ptr1, +parm_decl ptr1: ptr1, +pointer_type : ptr1, +record_type : ptr1, +type_decl Data1: ptr1, +field_decl val: ptr1, +integer_cst 32: ptr1, +field_decl ptrval: ptr1, +integer_cst 64: ptr1, +field_decl arr: ptr1, +integer_cst 96: ptr1, +field_decl str1: ptr1, +integer_cst 64: ptr1, +type_decl Data1: ptr1, +integer_cst 64: ptr1, +integer_cst 0: ptr1, +eq_expr : ptr1, +var_decl k: ptr1, +integer_cst 32: ptr1, +integer_type : ptr1, +type_decl int: ptr1, +integer_cst 32: ptr1, +integer_cst -2147483648: ptr1, +integer_cst 2147483647: ptr1, +integer_cst 10: ptr1, +if_stmt : ptr1, +ne_expr : ptr1, +parm_decl ptr1: ptr1, +pointer_type : ptr1, +record_type : ptr1, +type_decl Data1: ptr1, +field_decl val: ptr1, +integer_cst 32: ptr1, +field_decl ptrval: ptr1, +integer_cst 64: ptr1, +field_decl arr: ptr1, +integer_cst 96: ptr1, +field_decl str1: ptr1, +integer_cst 64: ptr1, +type_decl Data1: ptr1, +integer_cst 64: ptr1, +integer_cst 0: ptr1, +cleanup_point_expr : +expr_stmt : +convert_expr : +modify_expr : +component_ref : +indirect_ref : parm_decl ptr1: pointer_type : record_type : @@ -14422,14 +14909,61 @@ field_decl str1: integer_cst 64: type_decl Data1: integer_cst 64: -integer_cst 0: +field_decl val: +integer_cst 32: +integer_cst 100: +function_decl func13: +if_stmt : ptr1, +truth_andif_expr : ptr1, +ne_expr : ptr1, +parm_decl ptr1: ptr1, +pointer_type : ptr1, +record_type : ptr1, +type_decl Data1: ptr1, +field_decl val: ptr1, +integer_cst 32: ptr1, +field_decl ptrval: ptr1, +integer_cst 64: ptr1, +field_decl arr: ptr1, +integer_cst 96: ptr1, +field_decl str1: ptr1, +integer_cst 64: ptr1, +type_decl Data1: ptr1, +integer_cst 64: ptr1, +integer_cst 0: ptr1, eq_expr : var_decl k: -integer_cst 1: +integer_cst 32: +integer_type : +type_decl int: +integer_cst 32: +integer_cst -2147483648: +integer_cst 2147483647: +integer_cst 10: return_expr : -if_stmt : -truth_andif_expr : -eq_expr : +if_stmt : ptr1, +ne_expr : ptr1, +parm_decl ptr1: ptr1, +pointer_type : ptr1, +record_type : ptr1, +type_decl Data1: ptr1, +field_decl val: ptr1, +integer_cst 32: ptr1, +field_decl ptrval: ptr1, +integer_cst 64: ptr1, +field_decl arr: ptr1, +integer_cst 96: ptr1, +field_decl str1: ptr1, +integer_cst 64: ptr1, +type_decl Data1: ptr1, +integer_cst 64: ptr1, +integer_cst 0: ptr1, +cleanup_point_expr : +expr_stmt : +convert_expr : +modify_expr : +component_ref : +indirect_ref : parm_decl ptr1: pointer_type : record_type : @@ -14444,12 +14978,10 @@ field_decl str1: integer_cst 64: type_decl Data1: integer_cst 64: -integer_cst 0: -eq_expr : -var_decl k: -integer_cst 2: -return_expr : -statement_list : ptr1, +field_decl val: +integer_cst 32: +integer_cst 100: +function_decl func14: if_stmt : ptr1, truth_orif_expr : ptr1, ne_expr : ptr1, @@ -14470,14 +15002,16 @@ integer_cst 64: ptr1, integer_cst 0: ptr1, eq_expr : ptr1, var_decl k: ptr1, -integer_cst 4: ptr1, +integer_cst 32: ptr1, +integer_type : ptr1, +type_decl int: ptr1, +integer_cst 32: ptr1, +integer_cst -2147483648: ptr1, +integer_cst 2147483647: ptr1, +integer_cst 10: ptr1, return_expr : ptr1, if_stmt : ptr1, -truth_orif_expr : ptr1, -eq_expr : ptr1, -test26.cpp:183:18: warning: Useless variable check 'ptr1'. It already was checked before - if (!ptr1 || k == 5) - ^ +ne_expr : ptr1, parm_decl ptr1: ptr1, pointer_type : ptr1, record_type : ptr1, @@ -14493,13 +15027,12 @@ integer_cst 64: ptr1, type_decl Data1: ptr1, integer_cst 64: ptr1, integer_cst 0: ptr1, -eq_expr : -var_decl k: -integer_cst 5: -return_expr : ptr1, -if_stmt : ptr1, -truth_andif_expr : ptr1, -ne_expr : +cleanup_point_expr : +expr_stmt : +convert_expr : +modify_expr : +component_ref : +indirect_ref : parm_decl ptr1: pointer_type : record_type : @@ -14514,36 +15047,9 @@ field_decl str1: integer_cst 64: type_decl Data1: integer_cst 64: -integer_cst 0: -eq_expr : -var_decl k: -integer_cst 4: -return_expr : ptr1, -if_stmt : ptr1, -truth_andif_expr : ptr1, -eq_expr : -test26.cpp:187:18: warning: Useless variable check 'ptr1'. It already was checked before - if (!ptr1 && k == 5) - ^ -parm_decl ptr1: -pointer_type : -record_type : -type_decl Data1: field_decl val: integer_cst 32: -field_decl ptrval: -integer_cst 64: -field_decl arr: -integer_cst 96: -field_decl str1: -integer_cst 64: -type_decl Data1: -integer_cst 64: -integer_cst 0: -eq_expr : -var_decl k: -integer_cst 5: -return_expr : ptr1, +integer_cst 100: function_decl c_str: function_decl __stoa: bind_expr : __convf, __idx, __name, __str, diff --git a/test/test26-04.txt b/test/test26-04.txt index 39a0b1d..6f83e97 100644 --- a/test/test26-04.txt +++ b/test/test26-04.txt @@ -11,24 +11,38 @@ test26.cpp:144:18: warning: Useless variable check 'ptr1'. It already was checke if (!ptr1 || k == 1) ^ test26.cpp:148:18: warning: Useless variable check 'ptr1'. It already was checked before - if (!ptr1 && k == 1) + if (!ptr1 && k == 3) + ^ +test26.cpp:155:18: warning: Useless variable check 'ptr1'. It already was checked before + if (!ptr1 || k == 5) + ^ +test26.cpp:159:18: warning: Useless variable check 'ptr1'. It already was checked before + if (!ptr1 && k == 7) ^ -test26.cpp:157:22: warning: Useless variable check 'ptr1'. It already was checked before - if (ptr1 || k == 5) - ^ -test26.cpp:161:22: warning: Useless variable check 'ptr1'. It already was checked before - if (ptr1 && k == 5) - ^ test26.cpp: In member function 'void Object1::func9(Data1*)': test26.cpp:170:22: warning: Useless variable check 'ptr1'. It already was checked before if (ptr1 || k == 1) ^ +test26.cpp:172:18: warning: Useless variable check 'ptr1'. It already was checked before + if (!ptr1 || k == 2) + ^ test26.cpp:174:22: warning: Useless variable check 'ptr1'. It already was checked before - if (ptr1 && k == 1) + if (ptr1 && k == 3) ^ +test26.cpp:176:18: warning: Useless variable check 'ptr1'. It already was checked before + if (!ptr1 && k == 4) + ^ test26.cpp:183:18: warning: Useless variable check 'ptr1'. It already was checked before - if (!ptr1 || k == 5) + if (!ptr1 || k == 6) ^ test26.cpp:187:18: warning: Useless variable check 'ptr1'. It already was checked before - if (!ptr1 && k == 5) + if (!ptr1 && k == 8) ^ +test26.cpp: In member function 'void Object1::func10(Data1*)': +test26.cpp:196:13: warning: Useless variable check 'ptr1'. It already was checked before + if (ptr1) + ^ +test26.cpp: In member function 'void Object1::func11(Data1*)': +test26.cpp:205:13: warning: Useless variable check 'ptr1'. It already was checked before + if (ptr1) + ^ diff --git a/test/test26-05.txt b/test/test26-05.txt index 39a0b1d..6f83e97 100644 --- a/test/test26-05.txt +++ b/test/test26-05.txt @@ -11,24 +11,38 @@ test26.cpp:144:18: warning: Useless variable check 'ptr1'. It already was checke if (!ptr1 || k == 1) ^ test26.cpp:148:18: warning: Useless variable check 'ptr1'. It already was checked before - if (!ptr1 && k == 1) + if (!ptr1 && k == 3) + ^ +test26.cpp:155:18: warning: Useless variable check 'ptr1'. It already was checked before + if (!ptr1 || k == 5) + ^ +test26.cpp:159:18: warning: Useless variable check 'ptr1'. It already was checked before + if (!ptr1 && k == 7) ^ -test26.cpp:157:22: warning: Useless variable check 'ptr1'. It already was checked before - if (ptr1 || k == 5) - ^ -test26.cpp:161:22: warning: Useless variable check 'ptr1'. It already was checked before - if (ptr1 && k == 5) - ^ test26.cpp: In member function 'void Object1::func9(Data1*)': test26.cpp:170:22: warning: Useless variable check 'ptr1'. It already was checked before if (ptr1 || k == 1) ^ +test26.cpp:172:18: warning: Useless variable check 'ptr1'. It already was checked before + if (!ptr1 || k == 2) + ^ test26.cpp:174:22: warning: Useless variable check 'ptr1'. It already was checked before - if (ptr1 && k == 1) + if (ptr1 && k == 3) ^ +test26.cpp:176:18: warning: Useless variable check 'ptr1'. It already was checked before + if (!ptr1 && k == 4) + ^ test26.cpp:183:18: warning: Useless variable check 'ptr1'. It already was checked before - if (!ptr1 || k == 5) + if (!ptr1 || k == 6) ^ test26.cpp:187:18: warning: Useless variable check 'ptr1'. It already was checked before - if (!ptr1 && k == 5) + if (!ptr1 && k == 8) ^ +test26.cpp: In member function 'void Object1::func10(Data1*)': +test26.cpp:196:13: warning: Useless variable check 'ptr1'. It already was checked before + if (ptr1) + ^ +test26.cpp: In member function 'void Object1::func11(Data1*)': +test26.cpp:205:13: warning: Useless variable check 'ptr1'. It already was checked before + if (ptr1) + ^ diff --git a/test/test26.cpp b/test/test26.cpp index e4113a0..3dc8026 100644 --- a/test/test26.cpp +++ b/test/test26.cpp @@ -90,24 +90,24 @@ class Object1 if (!ptr1 || k == 3) { if (!ptr1 && k == 1) - return; + k = 10; if (ptr1 && k == 2) - return; + k = 20; if (!ptr1 || k == 1) - return; + k = 30; if (ptr1 || k == 2) - return; + k = 40; } else { if (!ptr1 && k == 4) - return; + k = 50; if (ptr1 && k == 5) - return; + k = 60; if (!ptr1 || k == 4) - return; + k = 70; if (ptr1 || k == 5) - return; + k = 80; } } @@ -116,24 +116,24 @@ class Object1 if (ptr1 || k == 3) { if (ptr1 && k == 1) - return; + k = 10; if (!ptr1 && k == 2) - return; + k = 20; if (ptr1 || k == 1) - return; + k = 30; if (!ptr1 || k == 2) - return; + k = 40; } else { if (ptr1 && k == 4) - return; + k = 50; if (!ptr1 && k == 5) - return; + k = 60; if (ptr1 || k == 4) - return; + k = 70; if (!ptr1 || k == 5) - return; + k = 80; } } @@ -142,24 +142,24 @@ class Object1 if (!ptr1 && k == 3) { if (!ptr1 || k == 1) - return; + k = 10; if (ptr1 || k == 2) - return; - if (!ptr1 && k == 1) - return; - if (ptr1 && k == 2) - return; + k = 20; + if (!ptr1 && k == 3) + k = 30; + if (ptr1 && k == 4) + k = 40; } else { - if (!ptr1 || k == 4) - return; - if (ptr1 || k == 5) - return; - if (!ptr1 && k == 4) - return; - if (ptr1 && k == 5) - return; + if (!ptr1 || k == 5) + k = 50; + if (ptr1 || k == 6) + k = 60; + if (!ptr1 && k == 7) + k = 70; + if (ptr1 && k == 8) + k = 80; } } @@ -168,24 +168,77 @@ class Object1 if (ptr1 && k == 3) { if (ptr1 || k == 1) - return; + k = 10; if (!ptr1 || k == 2) - return; - if (ptr1 && k == 1) - return; - if (!ptr1 && k == 2) - return; + k = 20; + if (ptr1 && k == 3) + k = 30; + if (!ptr1 && k == 4) + k = 40; } else { - if (ptr1 || k == 4) - return; - if (!ptr1 || k == 5) - return; - if (ptr1 && k == 4) - return; - if (!ptr1 && k == 5) - return; + if (ptr1 || k == 5) + k = 50; + if (!ptr1 || k == 6) + k = 60; + if (ptr1 && k == 7) + k = 70; + if (!ptr1 && k == 8) + k = 80; + } + } + + void func10(Data1 *const ptr1) + { + if (ptr1) + { + if (ptr1) + ptr1->val = 100; + } + } + + void func11(Data1 *const ptr1) + { + if (ptr1 && k == 10) + { + if (ptr1) + ptr1->val = 100; + } + } + + void func12(Data1 *const ptr1) + { + if (ptr1 || k == 10) + { + if (ptr1) + ptr1->val = 100; + } + } + + void func13(Data1 *const ptr1) + { + if (ptr1 && k == 10) + { + return; + } + else + { + if (ptr1) + ptr1->val = 100; + } + } + + void func14(Data1 *const ptr1) + { + if (ptr1 || k == 10) + { + return; + } + else + { + if (ptr1) + ptr1->val = 100; } } }; |