CBMC
Loading...
Searching...
No Matches
havoc_assigns_clause_targets.h
Go to the documentation of this file.
1/*******************************************************************\
2
3Module: Havoc multiple and possibly dependent targets simultaneously
4
5Author: Remi Delmas, delmasrd@amazon.com
6
7\*******************************************************************/
8
11
12#ifndef CPROVER_GOTO_INSTRUMENT_CONTRACTS_HAVOC_ASSIGNS_CLAUSE_TARGETS_H
13#define CPROVER_GOTO_INSTRUMENT_CONTRACTS_HAVOC_ASSIGNS_CLAUSE_TARGETS_H
14
16
18class goto_programt;
19class goto_functionst;
21
43{
44public:
72
75
76private:
116
119
120 const std::vector<exprt> &targets;
122};
123#endif // CPROVER_GOTO_INSTRUMENT_CONTRACTS_HAVOC_ASSIGNS_CLAUSE_TARGETS_H
ait supplies three of the four components needed: an abstract interpreter (in this case handling func...
Definition ai.h:562
Class that represents a normalized conditional address range, with:
Stores information about a goto function computed from its CFG.
Definition cfg_info.h:40
dstringt has one field, an unsigned integer no which is an index into a static table of strings.
Definition dstring.h:38
A collection of goto functions.
A generic container class for the GOTO intermediate representation of one function.
Class to generate havocking instructions for target expressions of a function contract's assign claus...
void havoc_if_valid(car_exprt car, goto_programt &dest)
Generates instructions to conditionally havoc the given conditional address range expression car,...
havoc_assigns_clause_targetst(const irep_idt &_function_id, const std::vector< exprt > &_targets, const goto_functionst &_functions, cfg_infot &_cfg_info, const source_locationt &_source_location, symbol_table_baset &_st, message_handlert &_message_handler)
void get_instructions(goto_programt &dest)
Generates the assigns clause replacement instructions in dest.
void havoc_static_local(car_exprt car, goto_programt &dest)
Havoc a static local expression.
A class that generates instrumentation for assigns clause checking.
The symbol table base class interface.
Specify write set in function contracts.