Skip to content

Commit 08c2ec0

Browse files
authored
Merge branch 'develop' into loop_abstract
2 parents 31e5a35 + c764708 commit 08c2ec0

File tree

375 files changed

+5783
-3166
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

375 files changed

+5783
-3166
lines changed

.travis.yml

Lines changed: 21 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -49,18 +49,14 @@ jobs:
4949
env:
5050
NAME: "DOXYGEN-CHECK"
5151
DOXYGEN_VERSION: "1.8.14"
52-
addons:
53-
apt:
54-
sources:
55-
- sourceline: 'deb http://packages.cloud.google.com/apt cloud-sdk-trusty main'
56-
key_url: 'https://packages.cloud.google.com/apt/doc/apt-key.gpg'
57-
packages:
58-
- cmake
59-
- google-cloud-sdk
60-
- graphviz
6152
cache:
6253
directories:
6354
- ${TRAVIS_BUILD_DIR}/doxygen/build/bin
55+
before_install:
56+
- curl -sSL "https://packages.cloud.google.com/apt/doc/apt-key.gpg" | sudo -E apt-key add -
57+
- echo "deb http://packages.cloud.google.com/apt cloud-sdk-trusty main" | sudo tee -a /etc/apt/sources.list > /dev/null
58+
- sudo apt-get update --option Acquire::Retries=100 --option Acquire::http::Timeout="60"
59+
- sudo -E apt-get -yq --no-install-suggests --no-install-recommends --force-yes install cmake google-cloud-sdk graphviz
6460
install:
6561
- |
6662
# Build doxygen if it is not in Travis cache
@@ -90,7 +86,7 @@ jobs:
9086
# Ubuntu Linux with glibc using g++-5
9187
- stage: Linter + Doxygen + non-debug Ubuntu/gcc-5 test
9288
os: linux
93-
sudo: false
89+
sudo: true
9490
compiler: gcc
9591
cache: ccache
9692
addons:
@@ -125,7 +121,7 @@ jobs:
125121
# Ubuntu Linux with glibc using g++-5, debug mode
126122
- stage: Test different OS/CXX/Flags
127123
os: linux
128-
sudo: false
124+
sudo: true
129125
compiler: gcc
130126
cache: ccache
131127
addons:
@@ -149,22 +145,24 @@ jobs:
149145
# Ubuntu Linux with glibc using clang++-3.7, no-debug mode
150146
- stage: Test different OS/CXX/Flags
151147
os: linux
152-
sudo: false
148+
sudo: true
153149
compiler: clang
154150
cache: ccache
155151
addons:
156152
apt:
157153
sources:
158154
- ubuntu-toolchain-r-test
159-
- llvm-toolchain-precise-3.7
160155
packages:
161156
- libwww-perl
162-
- clang-3.7
163157
- g++-5
164158
- libstdc++-5-dev
165159
- libubsan0
166160
- parallel
167161
before_install:
162+
- curl -sSL "http://apt.llvm.org/llvm-snapshot.gpg.key" | sudo -E apt-key add -
163+
- echo "deb http://apt.llvm.org/precise/ llvm-toolchain-precise-3.7 main" | sudo tee -a /etc/apt/sources.list > /dev/null
164+
- sudo apt-get update --option Acquire::Retries=100 --option Acquire::http::Timeout="60"
165+
- sudo -E apt-get -yq --no-install-suggests --no-install-recommends --force-yes install clang-3.7
168166
- mkdir bin
169167
- ln -s /usr/bin/gcc-5 bin/gcc
170168
- ln -s /usr/bin/c++-5 bin/g++
@@ -178,21 +176,23 @@ jobs:
178176
# Ubuntu Linux with glibc using clang++-3.7, debug mode, disable USE_DSTRING
179177
- stage: Test different OS/CXX/Flags
180178
os: linux
181-
sudo: false
179+
sudo: true
182180
compiler: clang
183181
cache: ccache
184182
addons:
185183
apt:
186184
sources:
187185
- ubuntu-toolchain-r-test
188-
- llvm-toolchain-precise-3.7
189186
packages:
190187
- libwww-perl
191-
- clang-3.7
192188
- g++-5
193189
- libstdc++-5-dev
194190
- libubsan0
195191
before_install:
192+
- curl -sSL "http://apt.llvm.org/llvm-snapshot.gpg.key" | sudo -E apt-key add -
193+
- echo "deb http://apt.llvm.org/precise/ llvm-toolchain-precise-3.7 main" | sudo tee -a /etc/apt/sources.list > /dev/null
194+
- sudo apt-get update --option Acquire::Retries=100 --option Acquire::http::Timeout="60"
195+
- sudo -E apt-get -yq --no-install-suggests --no-install-recommends --force-yes install clang-3.7
196196
- mkdir bin
197197
- ln -s /usr/bin/gcc-5 bin/gcc
198198
- ln -s /usr/bin/g++-5 bin/g++
@@ -207,6 +207,7 @@ jobs:
207207
# cmake build using g++-5
208208
- stage: Test different OS/CXX/Flags
209209
os: linux
210+
sudo: true
210211
compiler: gcc
211212
cache: ccache
212213
env:
@@ -232,6 +233,7 @@ jobs:
232233
# cmake build using g++-7
233234
- stage: Test different OS/CXX/Flags
234235
os: linux
236+
sudo: true
235237
compiler: gcc
236238
cache: ccache
237239
env:
@@ -257,6 +259,7 @@ jobs:
257259
# cmake build using clang++-6
258260
- stage: Test different OS/CXX/Flags
259261
os: linux
262+
sudo: true
260263
compiler: clang
261264
cache: ccache
262265
env:
@@ -311,7 +314,7 @@ jobs:
311314
- stage: Test different OS/CXX/Flags
312315
if: type = cron
313316
os: linux
314-
sudo: false
317+
sudo: true
315318
compiler: gcc
316319
cache: ccache
317320
addons:

COMPILING.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -202,9 +202,9 @@ helpful for GUI-based tasks, e.g., the class viewer, debugging, etc., and can
202202
be used for building with MSBuild. Note that you still need to run flex/bison
203203
using "make generated_files" before opening the project.
204204
205-
# WORKING WITH CMAKE (EXPERIMENTAL)
205+
# WORKING WITH CMAKE
206206
207-
There is an experimental build based on CMake instead of hand-written
207+
There is also a build based on CMake instead of hand-written
208208
makefiles. It should work on a wider variety of systems than the standard
209209
makefile build, and can integrate better with IDEs and static-analysis tools.
210210
On Windows, the CMake build does not depend on Cygwin or MinGW, and doesn't

doc/architectural/background-concepts.md

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -3,30 +3,30 @@
33

44
\author Martin Brain, Peter Schrammel
55

6-
# Representations #
6+
\section representations_section Representations
77

8-
## AST: types, globals, variables, functions, code blocks, language primitives, assignments, expressions, variables ##
8+
\subsection AST_section AST: types, globals, variables, functions, code blocks, language primitives, assignments, expressions, variables
99

1010
To be documented.
1111

12-
## CFG ##
12+
\subsection CFG_section CFG
1313

1414
To be documented.
1515

16-
## SSA ##
16+
\subsection SSA_section SSA
1717

1818
To be documented.
1919

20-
# Analysis techniques #
20+
\section analysis_techniques_section Analysis techniques
2121

22-
## Bounded model checking ##
22+
\subsection BMC_section Bounded model checking
2323

2424
To be documented (can copy from the CBMC manual).
2525

26-
## SAT and SMT ##
26+
\subsection SAT_section SAT and SMT
2727

2828
To be documented.
2929

30-
## Static analysis ##
30+
\subsection static_analysis_section Static analysis
3131

3232
To be documented.

doc/architectural/bmct-class.md

Lines changed: 0 additions & 8 deletions
This file was deleted.

doc/architectural/cbmc-architecture.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ be output to files (this is what `goto-cc` does) and are (informally)
5252
referred to as “goto binaries” or “goto programs”. The back-end are
5353
tools process this format, either directly from the front-end or from
5454
it’s saved output. These include a wide range of analysis and
55-
transformation tools (see \ref section-other-tools).
55+
transformation tools (see \ref other-tools).
5656

5757
# Concepts #
5858
## {C, java bytecode} → Parse tree → Symbol table → GOTO programs → GOTO program transformations → BMC → counterexample (goto_tracet) → printing ##

doc/architectural/code-walkthrough.md

Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
\ingroup module_hidden
2+
\page code-walkthrough Code Walkthrough
3+
4+
\author Cesar Rodriguez, Owen Jones
5+
6+
\section data-structures-core-structures-and-ast-section Data structures: core structures and AST
7+
8+
The core structures used for representing abstract syntax trees are all
9+
documented in \ref util.
10+
11+
\section data-structures-from-ast-to-goto-program-section Data structures: from AST to GOTO program
12+
13+
See \ref goto-programs, \ref goto_programt and [instructiont](\ref goto_programt::instructiont).
14+
15+
\section front-end-languages-generating-codet-from-multiple-languages-section Front-end languages: generating codet from multiple languages
16+
17+
\subsection language-uit-section language_uit, language_filest, languaget classes:
18+
19+
See \ref langapi.
20+
21+
\subsection languages-c-section C
22+
23+
See \ref ansi-c.
24+
25+
\subsection languages-cpp-section C++
26+
27+
See \ref cpp.
28+
29+
\subsection languages-java-section Java bytecode
30+
31+
See \ref java_bytecode.
32+
33+
\section bmct-class-section Bmct class
34+
35+
\subsection equation-section equation
36+
37+
See \ref symex-overview.
38+
39+
40+
\section symbolic-executors-section Symbolic executors
41+
42+
\subsection symbolic-execution-section Symbolic execution
43+
44+
See \ref symex-overview.
45+
46+
47+
\section solvers-infrastructure-section Solvers infrastructure
48+
49+
See \ref solvers-overview.
50+
51+
\section static-analysis-apis-section Static analysis APIs
52+
53+
See \ref analyses and \ref pointer-analysis.

0 commit comments

Comments
 (0)