@@ -64,7 +64,9 @@ void log_value_set(
64
64
const messaget &log,
65
65
const std::vector<exprt> &value_set);
66
66
67
- // / Log a match between a value in the value set of a given expression, and
67
+ // / Log a match between an address and a value the value set. This version of
68
+ // / the function reports more details, including the base address, the pointer
69
+ // / and the shadow value.
68
70
void log_value_set_match (
69
71
const namespacet &ns,
70
72
const messaget &log,
@@ -74,7 +76,7 @@ void log_value_set_match(
74
76
const exprt &expr,
75
77
const value_set_dereferencet::valuet &shadow_dereference);
76
78
77
- // TODO: doxygen
79
+ // / Logs a successful match between an address and a value within the value set.
78
80
void log_value_set_match (
79
81
const namespacet &ns,
80
82
const messaget &log,
@@ -87,17 +89,27 @@ void log_try_shadow_address(
87
89
const messaget &log,
88
90
const shadow_memory_statet::shadowed_addresst &shadowed_address);
89
91
90
- // TODO: doxygen
92
+ // / Generic logging function that will log depending on the configured
93
+ // / verbosity. Will log a specific message given to it, along with an expression
94
+ // / passed along to it.
91
95
void log_cond (
92
96
const namespacet &ns,
93
97
const messaget &log,
94
98
const char *cond_text,
95
99
const exprt &cond);
96
100
97
- // TODO: doxygen
101
+ // / Replace an invalid object by a null pointer. Works recursively on the
102
+ // / operands (child nodes) of the expression, as well.
103
+ // / \param expr The (root) expression where substitution will happen.
98
104
void replace_invalid_object_by_null (exprt &expr);
99
105
100
- // TODO: doxygen
106
+ // / Retrieve the expression that a field was initialised with within a given
107
+ // / symex state.
108
+ // / \param field_name The field whose initialisation expression we want to
109
+ // / retrieve.
110
+ // / \param state The goto symex state within which we want to search for the
111
+ // / expression.
112
+ // / \returns The expression the field was initialised with.
101
113
const exprt &
102
114
get_field_init_expr (const irep_idt &field_name, const goto_symex_statet &state);
103
115
@@ -155,7 +167,7 @@ exprt compute_max_over_cells(
155
167
// / \param conds_values Contains pairs <e1, e2>, where `e1` is going to be
156
168
// / used as an antecedent for an if_expr, and `e2` is going to be used
157
169
// / as the consequent.
158
- // / \returns An if_exprt of the form `if e1 then e2 else < if e3 then e4 else ...`
170
+ // / \returns An if_exprt of the form `if e1 then e2 else if e3 then e4 else ...`
159
171
exprt build_if_else_expr (
160
172
const std::vector<std::pair<exprt, exprt>> &conds_values);
161
173
@@ -170,9 +182,9 @@ bool set_field_check_null(
170
182
// / Get shadow memory values for a given expression within a specified value
171
183
// / set.
172
184
// / \returns if potential values are present for that object inside the value
173
- // / set, then we get back an `if e1 then e2 else (if e3 else e4...` expression,
174
- // / where `e1`, `e3`, ... are guards (conditions) and `e2`, `e4`, etc are
175
- // / the possible values of the object within the value set.
185
+ // / set, then we get back an `if e1 then e2 else (if e3 else e4...`
186
+ // / expression, where `e1`, `e3`, ... are guards (conditions) and `e2`, `e4`,
187
+ // / etc are the possible values of the object within the value set.
176
188
optionalt<exprt> get_shadow_memory (
177
189
const exprt &expr,
178
190
const std::vector<exprt> &value_set,
0 commit comments