Skip to content

Commit ba3cdb0

Browse files
committed
Adds a code contract module to goto-instrument
Signed-off-by: Felipe R. Monteiro <[email protected]>
1 parent 58612c4 commit ba3cdb0

10 files changed

+24
-18
lines changed

CODEOWNERS

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -45,8 +45,8 @@
4545
/src/goto-analyzer/ @martin-cs @chrisr-diffblue @peterschrammel
4646
/src/goto-harness/ @martin-cs @chrisr-diffblue @peterschrammel
4747
/src/goto-instrument/ @martin-cs @chrisr-diffblue @peterschrammel
48-
/src/goto-instrument/code_contracts.* @tautschnig @feliperodri @SaswatPadhi
49-
doc/cprover-manual/contracts* @tautschnig @feliperodri @SaswatPadhi
48+
/src/goto-instrument/contracts/ @tautschnig @feliperodri @SaswatPadhi
49+
/doc/cprover-manual/contracts* @tautschnig @feliperodri @SaswatPadhi
5050
/src/goto-diff/ @tautschnig @peterschrammel
5151
/src/jsil/ @kroening @tautschnig
5252
/src/memory-analyzer/ @tautschnig @chrisr-diffblue

src/goto-instrument/Makefile

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,9 @@ SRC = accelerate/accelerate.cpp \
1616
alignment_checks.cpp \
1717
branch.cpp \
1818
call_sequences.cpp \
19-
contracts_assigns.cpp \
20-
contracts_memory_predicates.cpp \
21-
contracts.cpp \
19+
contracts/assigns.cpp \
20+
contracts/memory_predicates.cpp \
21+
contracts/contracts.cpp \
2222
concurrency.cpp \
2323
count_eloc.cpp \
2424
cover.cpp \

src/goto-instrument/contracts_assigns.cpp renamed to src/goto-instrument/contracts/assigns.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ Date: July 2021
1111
/// \file
1212
/// Specify write set in function contracts
1313

14-
#include "contracts_assigns.h"
14+
#include "assigns.h"
1515

1616
#include <util/arith_tools.h>
1717
#include <util/c_types.h>

src/goto-instrument/contracts.cpp renamed to src/goto-instrument/contracts/contracts.cpp

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,8 @@ Date: February 2016
1111
/// \file
1212
/// Verify and use annotated invariants and pre/post-conditions
1313

14-
#include "contracts_assigns.h"
15-
#include "contracts_memory_predicates.h"
14+
#include "assigns.h"
15+
#include "memory_predicates.h"
1616

1717
#include <algorithm>
1818
#include <map>
@@ -21,8 +21,6 @@ Date: February 2016
2121

2222
#include <ansi-c/c_expr.h>
2323

24-
#include <goto-instrument/contracts_memory_predicates.h>
25-
2624
#include <goto-programs/remove_skip.h>
2725

2826
#include <util/c_types.h>
@@ -162,8 +160,8 @@ void code_contractst::check_apply_loop_contracts(
162160

163161
// Generate: an assignment to store the decreases clause's value before the
164162
// loop
165-
code_assignt old_decreases_assignment{
166-
old_decreases_symbol, decreases_clause};
163+
code_assignt old_decreases_assignment{old_decreases_symbol,
164+
decreases_clause};
167165
old_decreases_assignment.add_source_location() = loop_head->source_location;
168166
converter.goto_convert(old_decreases_assignment, havoc_code, mode);
169167
}
@@ -200,8 +198,8 @@ void code_contractst::check_apply_loop_contracts(
200198

201199
// Generate: an assignment to store the decreases clause's value after one
202200
// iteration of the loop
203-
code_assignt new_decreases_assignment{
204-
new_decreases_symbol, decreases_clause};
201+
code_assignt new_decreases_assignment{new_decreases_symbol,
202+
decreases_clause};
205203
new_decreases_assignment.add_source_location() = loop_head->source_location;
206204
converter.goto_convert(new_decreases_assignment, havoc_code, mode);
207205

src/goto-instrument/contracts.h renamed to src/goto-instrument/contracts/contracts.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,8 @@ Date: February 2016
1919
#include <string>
2020
#include <unordered_set>
2121

22+
#include <goto-instrument/loop_utils.h>
23+
2224
#include <goto-programs/goto_convert_class.h>
2325
#include <goto-programs/goto_functions.h>
2426
#include <goto-programs/goto_model.h>
@@ -29,8 +31,6 @@ Date: February 2016
2931
#include <util/namespace.h>
3032
#include <util/pointer_expr.h>
3133

32-
#include "loop_utils.h"
33-
3434
#define FLAG_LOOP_CONTRACTS "apply-loop-contracts"
3535
#define HELP_LOOP_CONTRACTS \
3636
" --apply-loop-contracts\n" \

src/goto-instrument/contracts_memory_predicates.cpp renamed to src/goto-instrument/contracts/memory_predicates.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ Date: July 2021
1111
/// \file
1212
/// Predicates to specify memory footprint in function contracts
1313

14-
#include "contracts_memory_predicates.h"
14+
#include "memory_predicates.h"
1515

1616
#include <ansi-c/ansi_c_language.h>
1717
#include <ansi-c/expr2c.h>
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
analyses
2+
ansi-c
3+
goto-instrument/contracts
4+
goto-instrument
5+
goto-programs
6+
langapi
7+
linking
8+
util

src/goto-instrument/goto_instrument_parse_options.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ Author: Daniel Kroening, [email protected]
2929
#include <analyses/goto_check.h>
3030

3131
#include "aggressive_slicer.h"
32-
#include "contracts.h"
32+
#include "contracts/contracts.h"
3333
#include "generate_function_bodies.h"
3434
#include "insert_final_assert_false.h"
3535
#include "nondet_volatile.h"

0 commit comments

Comments
 (0)