Cthulhu
0.2.10
Cthulhu compiler collection
|
Go to the source code of this file.
Macros | |
#define | RET_DOMAIN(cmp, it) |
annotate the return value as being bounded by the expression of cmp and it RET_DOMAIN(!=, 0) means the returned value will never be 0 More... | |
#define | RET_NOTNULL |
annotate the return value as not being null More... | |
#define | RET_INSPECT |
annotate the return value as needing to be inspected this is the same as CT_NODISCARD but implies that the return value must be checked for errors More... | |
#define | IN_NOTNULL |
annotate a parameter as not being null More... | |
#define | IN_STRING |
annotate a parameter as being a null terminated string More... | |
#define | IN_DOMAIN(cmp, it) |
annotate a parameter as being bounded by the expression of cmp and it More... | |
#define | OUT_NOTNULL |
#define | INOUT_NOTNULL |
#define | STA_DECL |
sal2 annotation on function implementations to copy annotations from the declaration More... | |
#define | STA_RET_NEVER |
#define | STA_RET_RANGE(lo, hi) |
#define | STA_RET_NOTNULL |
#define | STA_RET_STRING |
annotate the return value as a null terminated string More... | |
#define | STA_SUCCESS(expr) |
#define | STA_SUCCESS_TYPE(expr) |
#define | STA_LAST_ERROR |
#define | STA_FIELD_SIZE(of) |
annotate a field as being an array of of elements More... | |
#define | STA_FIELD_STRING |
annotate a field as being a null terminated string More... | |
#define | STA_FIELD_RANGE(lo, hi) |
annotate a field as being bounded by the expression of cmp and it STA_FIELD_RANGE(!=, 0) means the field will never be 0 More... | |
#define | STA_UPDATES(size) |
#define | STA_READS(size) |
annotate a parameter as reading expr elements More... | |
#define | STA_WRITES(size) |
annotate a parameter as writing expr elements More... | |
#define | STA_UPDATES_CSTRING(size) |
#define | STA_READS_CSTRING(size) |
#define | STA_WRITES_CSTRING(size) |
#define | STA_FORMAT_STRING |
mark a function parameter as a printf format string More... | |
#define | STA_OUT_OPT |
#define | STA_OUT_CSTRING |
#define | STA_OUT_RANGE(lo, hi) |
#define | STA_OUT_INVALID |
#define | STA_IN_RANGE(lo, hi) |
#define | STA_INOUT |
#define | STA_INOUT_OPT |
#define | STA_INOUT_CSTRING |
#define | CT_NORETURN STA_RET_NEVER CT_NORETURN_IMPL |
#define | STA_RELEASE IN_NOTNULL STA_OUT_INVALID |
annotate a pointer as invalid after the function returns More... | |
#define | STA_PRINTF(a, b) |
mark a function as a printf style function More... | |
#define | CT_ATTRIB(...) |
any attribute that both gcc and clang support More... | |
#define | CT_GNU_ATTRIB(...) |
gcc only attributes More... | |
#define | CT_CLANG_ATTRIB(...) |
clang only attributes More... | |
#define | CT_DECLSPEC(...) |
#define | CT_NODISCARD CT_ATTRIB(warn_unused_result) |
mark a function as returning a value that must be used More... | |
#define | CT_NOALIAS CT_DECLSPEC(noalias) |
mark a function as only modifying pointers passed to it the same as CT_CONSTFN but allowed to modify/inspect pointers passed to it More... | |
#define | CT_CONSTFN CT_ATTRIB(const) |
mark a function as const, has no side effects and always returns the same value for the same arguments More... | |
#define | CT_PUREFN CT_ATTRIB(pure) |
mark a function as pure, always returns the same value for the same arguments More... | |
#define | CT_ALLOC(...) |
mark a function as allocating memory More... | |
#define | CT_ALLOC_SIZE(...) CT_ATTRIB(alloc_size(__VA_ARGS__)) |
mark a function as allocating memory with a specific size More... | |
#define | CT_RESTRICT restrict |
#define | CT_HOTFN CT_ATTRIB(hot) |
mark a function as hot, it is likely to be called often More... | |
#define | CT_COLDFN CT_ATTRIB(cold) |
mark a function as cold, it is unlikely to be called often More... | |
#define | CT_NODISCARD 0 |
mark a function as returning a value that must be used More... | |
#define | RET_NOTNULL 0 |
annotate the return value as not being null More... | |
#define | IN_NOTNULL 0 |
annotate a parameter as not being null More... | |