Pointer Logic. More...
#include "pointer_offset_size.h"#include "arith_tools.h"#include "byte_operators.h"#include "c_types.h"#include "config.h"#include "invariant.h"#include "namespace.h"#include "pointer_expr.h"#include "simplify_expr.h"#include "ssa_expr.h"#include "std_expr.h"Go to the source code of this file.
type has effective width of zero bits. Pointer Logic.
Definition in file pointer_offset_size.cpp.
Definition at line 536 of file pointer_offset_size.cpp.
Definition at line 731 of file pointer_offset_size.cpp.
Definition at line 600 of file pointer_offset_size.cpp.
Definition at line 721 of file pointer_offset_size.cpp.
Returns true iff type has effective width of zero bits.
In addition to the obvious ID_empty, this recognises struct/union types whose components are all zero-width and arrays of zero-width elements, mirroring the semantics that the bit-blasting back-ends use to skip such types. Tag types (ID_struct_tag, ID_union_tag, ID_c_enum_tag) are unwrapped via ns before further recursion; ID_c_enum types recurse into their underlying integer type.
Definition at line 500 of file pointer_offset_size.cpp.
Definition at line 25 of file pointer_offset_size.cpp.
Definition at line 66 of file pointer_offset_size.cpp.
Definition at line 222 of file pointer_offset_size.cpp.
Definition at line 241 of file pointer_offset_size.cpp.
Definition at line 102 of file pointer_offset_size.cpp.
Compute the size of a type in bytes, rounding up to full bytes.
Definition at line 91 of file pointer_offset_size.cpp.
Definition at line 287 of file pointer_offset_size.cpp.