@@ -44,56 +44,6 @@ goto_program_dereferencet::get_or_create_failed_symbol(const exprt &expr)
44
44
return nullptr ;
45
45
}
46
46
47
- // / \deprecated
48
- bool goto_program_dereferencet::is_valid_object (
49
- const irep_idt &identifier)
50
- {
51
- const symbolt &symbol=ns.lookup (identifier);
52
-
53
- if (symbol.type .id ()==ID_code)
54
- return true ;
55
-
56
- if (symbol.is_static_lifetime )
57
- return true ; // global/static
58
-
59
- #if 0
60
- return valid_local_variables->find(symbol.name)!=
61
- valid_local_variables->end(); // valid local
62
- #else
63
- return true ;
64
- #endif
65
- }
66
-
67
- // / \deprecated
68
- void goto_program_dereferencet::dereference_failure (
69
- const std::string &property,
70
- const std::string &msg,
71
- const guardt &guard)
72
- {
73
- exprt guard_expr=guard.as_expr ();
74
-
75
- if (assertions.insert (guard_expr).second )
76
- {
77
- guard_expr = boolean_negate (guard_expr);
78
-
79
- // first try simplifier on it
80
- if (options.get_bool_option (" simplify" ))
81
- simplify (guard_expr, ns);
82
-
83
- if (!guard_expr.is_true ())
84
- {
85
- goto_program_instruction_typet type=
86
- options.get_bool_option (" assert-to-assume" )?ASSUME:ASSERT;
87
-
88
- goto_programt::targett t=new_code.add_instruction (type);
89
- t->guard .swap (guard_expr);
90
- t->source_location =dereference_location;
91
- t->source_location .set_property_class (property);
92
- t->source_location .set_comment (" dereference failure: " +msg);
93
- }
94
- }
95
- }
96
-
97
47
// / Turn subexpression of `expr` of the form `&*p` into p
98
48
// / and use `dereference` on subexpressions of the form `*p`
99
49
// / \param expr: expression in which to remove dereferences
@@ -166,8 +116,6 @@ void goto_program_dereferencet::dereference_rec(exprt &expr)
166
116
if (expr.operands ().size ()!=1 )
167
117
throw " dereference expects one operand" ;
168
118
169
- dereference_location=expr.find_source_location ();
170
-
171
119
exprt tmp = dereference.dereference (expr.op0 ());
172
120
173
121
expr.swap (tmp);
@@ -181,8 +129,6 @@ void goto_program_dereferencet::dereference_rec(exprt &expr)
181
129
182
130
if (expr.op0 ().type ().id ()==ID_pointer)
183
131
{
184
- dereference_location=expr.find_source_location ();
185
-
186
132
exprt tmp1 (ID_plus, expr.op0 ().type ());
187
133
tmp1.operands ().swap (expr.operands ());
188
134
@@ -231,8 +177,6 @@ void goto_program_dereferencet::dereference_program(
231
177
it++)
232
178
{
233
179
new_code.clear ();
234
- assertions.clear ();
235
-
236
180
dereference_instruction (it, checks_only);
237
181
238
182
// insert new instructions
@@ -265,9 +209,6 @@ void goto_program_dereferencet::dereference_instruction(
265
209
bool checks_only)
266
210
{
267
211
current_target=target;
268
- #if 0
269
- valid_local_variables=&target->local_variables;
270
- #endif
271
212
goto_programt::instructiont &i=*target;
272
213
273
214
if (i.has_condition ())
@@ -329,45 +270,9 @@ void goto_program_dereferencet::dereference_expression(
329
270
{
330
271
current_function = function_id;
331
272
current_target=target;
332
- #if 0
333
- valid_local_variables=&target->local_variables;
334
- #endif
335
-
336
273
dereference_expr (expr, false );
337
274
}
338
275
339
- // / Throw an exception in case removing dereferences from the program would
340
- // / throw an exception.
341
- void goto_program_dereferencet::pointer_checks (
342
- goto_programt &goto_program)
343
- {
344
- dereference_program (goto_program, true );
345
- }
346
-
347
- // / Throw an exception in case removing dereferences from the program would
348
- // / throw an exception.
349
- void goto_program_dereferencet::pointer_checks (
350
- goto_functionst &goto_functions)
351
- {
352
- dereference_program (goto_functions, true );
353
- }
354
-
355
- // / \deprecated
356
- void remove_pointers (
357
- goto_programt &goto_program,
358
- symbol_tablet &symbol_table,
359
- value_setst &value_sets)
360
- {
361
- namespacet ns (symbol_table);
362
-
363
- optionst options;
364
-
365
- goto_program_dereferencet
366
- goto_program_dereference (ns, symbol_table, options, value_sets);
367
-
368
- goto_program_dereference.dereference_program (goto_program);
369
- }
370
-
371
276
// / Remove dereferences in all expressions contained in the program
372
277
// / `goto_model`. `value_sets` is used to determine to what objects the pointers
373
278
// / may be pointing to.
@@ -387,32 +292,6 @@ void remove_pointers(
387
292
goto_program_dereference.dereference_program (it->second .body );
388
293
}
389
294
390
- // / \deprecated
391
- void pointer_checks (
392
- goto_programt &goto_program,
393
- symbol_tablet &symbol_table,
394
- const optionst &options,
395
- value_setst &value_sets)
396
- {
397
- namespacet ns (symbol_table);
398
- goto_program_dereferencet
399
- goto_program_dereference (ns, symbol_table, options, value_sets);
400
- goto_program_dereference.pointer_checks (goto_program);
401
- }
402
-
403
- // / \deprecated
404
- void pointer_checks (
405
- goto_functionst &goto_functions,
406
- symbol_tablet &symbol_table,
407
- const optionst &options,
408
- value_setst &value_sets)
409
- {
410
- namespacet ns (symbol_table);
411
- goto_program_dereferencet
412
- goto_program_dereference (ns, symbol_table, options, value_sets);
413
- goto_program_dereference.pointer_checks (goto_functions);
414
- }
415
-
416
295
// / Remove dereferences in `expr` using `value_sets` to determine to what
417
296
// / objects the pointers may be pointing to.
418
297
void dereference (
0 commit comments