CBMC
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
cprover.h
Go to the documentation of this file.
1/*******************************************************************\
2
3Module:
4
5Author: Daniel Kroening, kroening@kroening.com
6
7\*******************************************************************/
8
9#ifndef CPROVER_CPP_LIBRARY_CPROVER_H
10#define CPROVER_CPP_LIBRARY_CPROVER_H
11
12// NOLINTNEXTLINE(readability/identifiers)
13typedef __typeof__(sizeof(int)) __CPROVER_size_t;
15extern const void *__CPROVER_deallocated;
16extern const void *__CPROVER_memory_leak;
17
19void __CPROVER_assert(__CPROVER_bool assertion, const char *description);
20void __CPROVER_precondition(__CPROVER_bool assertion, const char *description);
21void __CPROVER_postcondition(__CPROVER_bool assertion, const char *description);
22
23void __CPROVER_input(const char *description, ...);
24void __CPROVER_output(const char *description, ...);
25
26// concurrency-related
29void __CPROVER_fence(const char *kind, ...);
30
31// pointers
32unsigned __CPROVER_POINTER_OBJECT(const void *p);
33signed __CPROVER_POINTER_OFFSET(const void *p);
35
36// arrays
37// __CPROVER_bool __CPROVER_array_equal(const void *array1, const void *array2);
38void __CPROVER_array_copy(const void *dest, const void *src);
39void __CPROVER_array_set(const void *dest, ...);
40void __CPROVER_array_replace(const void *dest, const void *src);
41
42void __CPROVER_set_must(const void *, const char *);
43void __CPROVER_set_may(const void *, const char *);
44void __CPROVER_clear_must(const void *, const char *);
45void __CPROVER_clear_may(const void *, const char *);
46void __CPROVER_cleanup(const void *, void (*)(void *));
47__CPROVER_bool __CPROVER_get_must(const void *, const char *);
48__CPROVER_bool __CPROVER_get_may(const void *, const char *);
49
50#endif // CPROVER_CPP_LIBRARY_CPROVER_H
typedef __typeof__(sizeof(int)) __CPROVER_size_t
void * __CPROVER_allocate(__CPROVER_size_t size, __CPROVER_bool zero)
const void * __CPROVER_deallocated
const void * __CPROVER_memory_leak
ait supplies three of the four components needed: an abstract interpreter (in this case handling func...
Definition ai.h:562
void __CPROVER_clear_must(const void *, const char *)
void __CPROVER_assert(__CPROVER_bool assertion, const char *description)
void __CPROVER_array_replace(const void *dest, const void *src)
void __CPROVER_array_set(const void *dest,...)
signed __CPROVER_POINTER_OFFSET(const void *p)
void __CPROVER_fence(const char *kind,...)
void __CPROVER_output(const char *description,...)
__CPROVER_bool __CPROVER_get_must(const void *, const char *)
unsigned __CPROVER_POINTER_OBJECT(const void *p)
void __CPROVER_set_may(const void *, const char *)
void __CPROVER_precondition(__CPROVER_bool assertion, const char *description)
__CPROVER_bool __CPROVER_DYNAMIC_OBJECT(const void *p)
void __CPROVER_cleanup(const void *, void(*)(void *))
void __CPROVER_clear_may(const void *, const char *)
__CPROVER_bool __CPROVER_get_may(const void *, const char *)
void __CPROVER_atomic_begin(void)
void __CPROVER_set_must(const void *, const char *)
void __CPROVER_atomic_end(void)
void __CPROVER_array_copy(const void *dest, const void *src)
void __CPROVER_assume(__CPROVER_bool assumption) __attribute__((__noreturn__))
void __CPROVER_postcondition(__CPROVER_bool assertion, const char *description)
void __CPROVER_input(const char *description,...)
int __gcc_m64 __attribute__((__vector_size__(8), __may_alias__))