File tree 1 file changed +7
-3
lines changed 1 file changed +7
-3
lines changed Original file line number Diff line number Diff line change @@ -68,7 +68,7 @@ void gdb_value_extractort::analyze_symbol(const irep_idt &symbol_name)
68
68
69
69
add_assignment (symbol_expr, target_expr);
70
70
}
71
- catch (gdb_interaction_exceptiont e)
71
+ catch (gdb_interaction_exceptiont & e)
72
72
{
73
73
throw analysis_exceptiont (e.what ());
74
74
}
@@ -248,7 +248,9 @@ exprt gdb_value_extractort::get_non_char_pointer_value(
248
248
}
249
249
else
250
250
{
251
- return it->second ;
251
+ const symbol_exprt typed_symbol_value = symbol_exprt{
252
+ to_symbol_expr (it->second ).get_identifier (), expr.type ().subtype ()};
253
+ return typed_symbol_value;
252
254
}
253
255
}
254
256
@@ -304,7 +306,9 @@ exprt gdb_value_extractort::get_pointer_value(
304
306
}
305
307
else
306
308
{
307
- return address_of_exprt (target_expr);
309
+ const auto result_expr = address_of_exprt (target_expr);
310
+ CHECK_RETURN (result_expr.type () == zero_expr.type ());
311
+ return result_expr;
308
312
}
309
313
}
310
314
}
You can’t perform that action at this time.
0 commit comments