Commit Graph

18250 Commits

Author SHA1 Message Date
Daniel Kroening 99d9f66405 manual: remove superflous dot 2019-03-23 15:13:02 +00:00
Daniel Kroening e6f133523e manual: end a sentence 2019-03-23 15:13:02 +00:00
Daniel Kroening f10ab3089b manual: remove unnecessary indentation 2019-03-23 15:13:02 +00:00
Daniel Kroening 3956d7597a manual: fix formatting of cbmc output 2019-03-23 15:13:02 +00:00
Daniel Kroening 8b7bcb6fa9 manual: fix references 2019-03-23 15:13:02 +00:00
Michael Tautschnig b5a998e9a4
Merge pull request #4422 from diffblue/manual-fixes2
Minor manual fixes
2019-03-23 14:26:31 +00:00
Michael Tautschnig 55b8fc066b
Merge pull request #4424 from tautschnig/deprecation-rules
Coding standard: Deprecation rules
2019-03-23 14:11:16 +00:00
Daniel Kroening fb3a7f50d0 manual: add return statement to file1.c 2019-03-23 13:44:49 +00:00
Daniel Kroening d6032f10d1 manual: provide download for "file2.c" 2019-03-23 13:44:49 +00:00
Daniel Kroening 344a074719 manual: remove unneeded indentation 2019-03-23 13:43:03 +00:00
Daniel Kroening 25cfb65f1e manual: fix highlighting of commands 2019-03-23 13:43:03 +00:00
Daniel Kroening 7d57062670 manual: fix references 2019-03-23 13:43:03 +00:00
Daniel Kroening b321a4e906 manual: fix cbmc message 2019-03-23 13:43:03 +00:00
Daniel Kroening d891335a2a manual: fix reference to uninterpreted functions 2019-03-23 13:43:03 +00:00
Michael Tautschnig f3a837166a Make explicit that we care about interfaces
This provides a broad guideline what an interface is and how to maintain
it.
2019-03-23 13:26:24 +00:00
Michael Tautschnig 0dae0464c7 Coding standard: Deprecation rules
Thus far, we operated an informal deprecation policy. This codifies our
informal six-months rule.
2019-03-23 13:26:21 +00:00
Michael Tautschnig 857e67f82f
Merge pull request #4419 from martin-cs/refactor/ait_visit_edge
Refactor/ait visit edge
2019-03-23 08:47:15 +00:00
Michael Tautschnig c699b69be0
Merge pull request #4421 from allredj/smt2_string_nonconst_tests
Tests for SMT2 strings with nondet arguments
2019-03-23 08:43:12 +00:00
Michael Tautschnig 2922bdd3bf
Merge pull request #4415 from romainbrenguier/fixes/cmake
Improve compilation with cmake Ninja
2019-03-23 08:18:23 +00:00
Joel Allred e4e2108592 SMT2 string tests for nondet strings 2019-03-22 18:07:30 +00:00
Joel Allred 07d157a6fe Rename regexp 'all' tests 2019-03-22 18:07:30 +00:00
Joel Allred f46e4ace4a Rename allchar tests
Remove "const" from name, as allchar does not take any argument.
2019-03-22 18:07:30 +00:00
antlechner 45e11860cd
Merge pull request #4416 from antlechner/antonia/nondet-int-refactor
De-duplicate "generate a nondet int in a given range" logic
2019-03-22 17:40:10 +00:00
martin aa0671850f Refactor visit and call_function to use visit_edge
Based on this refactoring, it might look like having a
working_set as a parameter of visit_edge is wrong.  This is an
artefact of how functions are handled by recursion at the
moment.  This will be addressed by later patches.
2019-03-22 16:39:40 +00:00
martin a26fc31752 Add a function to visit an edge (i.e. one step) in the AI
This is part of a refactoring so that calling of transform and merge
aren't duplicated all over the code base.
2019-03-22 16:39:40 +00:00
Peter Schrammel 72e54f3ae5
Merge pull request #4417 from martin-cs/fix/stupid-typos
Fix/stupid typos
2019-03-22 16:22:00 +00:00
Romain Brenguier b79624836f Build Cudd at the cmake configuration phase
This makes Cudd be configured and build at the configuration phase. This
simplifies a bit the logic for dependencies of cudd and cudd-cplusplus
targets.
This is the only way I found to make Ninja build flawlessly.
2019-03-22 13:24:25 +00:00
Romain Brenguier 200f70879f Check md5 of minisat and glucose archive download
Downloading a library without checking it can be trusted could be
harmful.
2019-03-22 13:24:16 +00:00
Antonia Lechner 63d9f50077 Remove duplicate helper function in object factory
Calls to java_object_factoryt::gen_nondet_int_init can be replaced with
equivalent calls to generate_nondet_int from nondet.h.
2019-03-22 12:37:27 +00:00
Antonia Lechner eeb9f22341 Tidy up includes
Specifying "util" is not necessary as nondet.cpp is itself in the util
folder.
Forward declarations can be used in nondet.h.
2019-03-22 12:37:26 +00:00
Antonia Lechner f6e6ad62cd Use allocate_objects to manage new symbol creation
This simplifies the code in generate_nondet_init and reduces code
duplication.
2019-03-22 12:37:25 +00:00
Antonia Lechner 9e243c9ed8 Parameterize basename_prefix
This will make the functions more re-usable in parts of the code that
use different prefixes.
2019-03-22 12:37:24 +00:00
Antonia Lechner cbd00e62a0 Make precondition on min/max values less strict
There is no reason why this function shouldn't work to "choose" between
just one value.
2019-03-22 12:37:23 +00:00
Antonia Lechner 6278e42e9d Split generate_nondet_int into two functions
We will be able to use the exprt version in other parts of the code.
2019-03-22 12:37:22 +00:00
Antonia Lechner 0d32a43dc7 Move nondet documentation to header file
Following the new coding standard
2019-03-22 12:37:21 +00:00
martin 9004dfc96a END_FUNCTION is drastic but I would hardly describe it as atomic 2019-03-22 09:53:01 +00:00
martin 2e3b6c8209 Quotes are unnecessary around this option 2019-03-22 09:53:01 +00:00
antlechner 870bfd73fd
Merge pull request #4373 from antlechner/antonia/code-assign-loc-constructor
Define constructors that take a source location argument
2019-03-21 16:07:36 +00:00
Antonia Lechner ac20b47509 Use new code_assignt constructor
The new constructor can immediately be used in existing code, and the
get_null_assignment function in the Java object factory is now
unnecessary since the call to it can be replaced with just one
constructor call.
2019-03-21 14:43:31 +00:00
Peter Schrammel 2e04b54cfc
Merge pull request #4217 from peterschrammel/move-bmct-jbmc
Move cbmc/bmc and all_properties to jbmc
2019-03-21 14:15:43 +00:00
Daniel Poetzl 039ac77841
Merge pull request #4413 from danpoe/refactor/sharing-map
Sharing map refactorings
2019-03-21 12:20:27 +00:00
Daniel Poetzl 468717f39e Make the shared pointers and write_* methods of the sharing nodes protected
The data member and the write_* methods of sharing_node_innert and
sharing_node_leaft are made protected and existing external callers are
refactored to not use write_* directly.
2019-03-21 11:15:12 +00:00
Daniel Poetzl 380028419e Remove the empty_data static field of sharing_node_innert/sharing_node_leaft
A sharing node is now considered empty when its contained shared pointer is
empty.
2019-03-21 10:59:59 +00:00
Daniel Poetzl 2614c5bac9 Add reset() method to small_shared_two_way_ptrt
This adds a reset() method which clears the contents of the shared pointer.
Furthermore, the code to remove a reference to the pointed-to object is factored
out into a method destruct(). The method is used both by the destructor and by
reset().
2019-03-21 10:59:59 +00:00
Michael Tautschnig d61900d41c
Merge pull request #4370 from tautschnig/fix-cudd-Makefile-build
Fix Makefile-based build for with CUDD
2019-03-21 10:12:16 +00:00
Peter Schrammel 14109a48ba Fix path explorer unit test
Cannot use deprecated bmct anymore.
2019-03-21 09:57:38 +00:00
Peter Schrammel c94d0afbd0 Clang-format 2019-03-21 09:54:49 +00:00
Peter Schrammel 90a041da9c Move bmct and all_properties to jbmc/
These aren't used by CBMC anymore, but only
for the symex-driven lazy-loading mode of JBMC.
2019-03-21 09:54:48 +00:00
Michael Tautschnig 7e79130032
Merge pull request #4388 from martin-cs/fix/function-is-main
There is no need for argc and argv to be new
2019-03-21 08:46:19 +00:00
Michael Tautschnig fed95284bb
Merge pull request #4387 from owen-jones-diffblue/feature/temp_variable_for_this_in_virtual_method_dispatch_tables
Use temp variable for `this` in virtual method dispatch tables
2019-03-21 07:27:33 +00:00