CBMC
configt::ansi_ct Struct Reference

#include <config.h>

+ Collaboration diagram for configt::ansi_ct:

Public Types

enum  c_standardt { c_standardt::C89, c_standardt::C99, c_standardt::C11 }
 
enum  endiannesst { endiannesst::NO_ENDIANNESS, endiannesst::IS_LITTLE_ENDIAN, endiannesst::IS_BIG_ENDIAN }
 
enum  ost { ost::NO_OS, ost::OS_LINUX, ost::OS_MACOS, ost::OS_WIN }
 
enum  flavourt {
  flavourt::NONE, flavourt::ANSI, flavourt::GCC, flavourt::ARM,
  flavourt::CLANG, flavourt::VISUAL_STUDIO, flavourt::CODEWARRIOR
}
 
enum  preprocessort {
  preprocessort::NONE, preprocessort::GCC, preprocessort::CLANG, preprocessort::VISUAL_STUDIO,
  preprocessort::CODEWARRIOR, preprocessort::ARM
}
 
enum  libt { libt::LIB_NONE, libt::LIB_FULL }
 
enum  malloc_failure_modet { malloc_failure_mode_none = 0, malloc_failure_mode_return_null = 1, malloc_failure_mode_assert_then_assume = 2 }
 

Public Member Functions

void set_c89 ()
 
void set_c99 ()
 
void set_c11 ()
 
void set_16 ()
 
void set_32 ()
 
void set_64 ()
 
void set_LP64 ()
 int=32, long=64, pointer=64 More...
 
void set_ILP64 ()
 int=64, long=64, pointer=64 More...
 
void set_LLP64 ()
 int=32, long=32, pointer=64 More...
 
void set_ILP32 ()
 int=32, long=32, pointer=32 More...
 
void set_LP32 ()
 int=16, long=32, pointer=32 More...
 
void set_arch_spec_i386 ()
 
void set_arch_spec_x86_64 ()
 
void set_arch_spec_power (const irep_idt &subarch)
 
void set_arch_spec_arm (const irep_idt &subarch)
 
void set_arch_spec_alpha ()
 
void set_arch_spec_mips (const irep_idt &subarch)
 
void set_arch_spec_riscv64 ()
 
void set_arch_spec_s390 ()
 
void set_arch_spec_s390x ()
 
void set_arch_spec_sparc (const irep_idt &subarch)
 
void set_arch_spec_ia64 ()
 
void set_arch_spec_x32 ()
 
void set_arch_spec_v850 ()
 Sets up the widths of variables for the Renesas V850. More...
 
void set_arch_spec_hppa ()
 
void set_arch_spec_sh4 ()
 

Static Public Member Functions

static c_standardt default_c_standard ()
 
static std::string os_to_string (ost)
 
static ost string_to_os (const std::string &)
 

Public Attributes

std::size_t int_width
 
std::size_t long_int_width
 
std::size_t bool_width
 
std::size_t char_width
 
std::size_t short_int_width
 
std::size_t long_long_int_width
 
std::size_t pointer_width
 
std::size_t single_width
 
std::size_t double_width
 
std::size_t long_double_width
 
std::size_t wchar_t_width
 
bool char_is_unsigned
 
bool wchar_t_is_unsigned
 
bool for_has_scope
 
bool ts_18661_3_Floatn_types
 
bool gcc__float128_type
 
bool single_precision_constant
 
enum configt::ansi_ct::c_standardt c_standard
 
ieee_floatt::rounding_modet rounding_mode
 
std::size_t alignment
 
std::size_t memory_operand_size
 
endiannesst endianness
 
ost os
 
irep_idt arch
 
bool NULL_is_zero
 
flavourt mode
 
preprocessort preprocessor
 
std::list< std::string > defines
 
std::list< std::string > undefines
 
std::list< std::string > preprocessor_options
 
std::list< std::string > include_paths
 
std::list< std::string > include_files
 
libt lib
 
bool string_abstraction
 
bool malloc_may_fail = false
 
malloc_failure_modet malloc_failure_mode = malloc_failure_mode_none
 
optionalt< mp_integermax_argc
 Maximum value of argc, which is operating-systems dependent: Windows limits the number of characters accepte by CreateProcess, and Unix systems have sysconf(ARG_MAX). More...
 

Static Public Attributes

static const std::size_t default_object_bits = 8
 

Detailed Description

Definition at line 121 of file config.h.

Member Enumeration Documentation

◆ c_standardt

Enumerator
C89 
C99 
C11 

Definition at line 142 of file config.h.

◆ endiannesst

Enumerator
NO_ENDIANNESS 
IS_LITTLE_ENDIAN 
IS_BIG_ENDIAN 

Definition at line 186 of file config.h.

◆ flavourt

Enumerator
NONE 
ANSI 
GCC 
ARM 
CLANG 
VISUAL_STUDIO 
CODEWARRIOR 

Definition at line 227 of file config.h.

◆ libt

Enumerator
LIB_NONE 
LIB_FULL 

Definition at line 256 of file config.h.

◆ malloc_failure_modet

Enumerator
malloc_failure_mode_none 
malloc_failure_mode_return_null 
malloc_failure_mode_assert_then_assume 

Definition at line 266 of file config.h.

◆ ost

enum configt::ansi_ct::ost
strong
Enumerator
NO_OS 
OS_LINUX 
OS_MACOS 
OS_WIN 

Definition at line 194 of file config.h.

◆ preprocessort

Enumerator
NONE 
GCC 
CLANG 
VISUAL_STUDIO 
CODEWARRIOR 
ARM 

Definition at line 239 of file config.h.

Member Function Documentation

◆ default_c_standard()

configt::ansi_ct::c_standardt configt::ansi_ct::default_c_standard ( )
static

Definition at line 675 of file config.cpp.

◆ os_to_string()

std::string configt::ansi_ct::os_to_string ( ost  os)
static

Definition at line 1175 of file config.cpp.

◆ set_16()

void configt::ansi_ct::set_16 ( )

Definition at line 27 of file config.cpp.

◆ set_32()

void configt::ansi_ct::set_32 ( )

Definition at line 32 of file config.cpp.

◆ set_64()

void configt::ansi_ct::set_64 ( )

Definition at line 37 of file config.cpp.

◆ set_arch_spec_alpha()

void configt::ansi_ct::set_arch_spec_alpha ( )

Definition at line 324 of file config.cpp.

◆ set_arch_spec_arm()

void configt::ansi_ct::set_arch_spec_arm ( const irep_idt subarch)

Definition at line 281 of file config.cpp.

◆ set_arch_spec_hppa()

void configt::ansi_ct::set_arch_spec_hppa ( )

Definition at line 616 of file config.cpp.

◆ set_arch_spec_i386()

void configt::ansi_ct::set_arch_spec_i386 ( )

Definition at line 150 of file config.cpp.

◆ set_arch_spec_ia64()

void configt::ansi_ct::set_arch_spec_ia64 ( )

Definition at line 526 of file config.cpp.

◆ set_arch_spec_mips()

void configt::ansi_ct::set_arch_spec_mips ( const irep_idt subarch)

Definition at line 353 of file config.cpp.

◆ set_arch_spec_power()

void configt::ansi_ct::set_arch_spec_power ( const irep_idt subarch)

Definition at line 220 of file config.cpp.

◆ set_arch_spec_riscv64()

void configt::ansi_ct::set_arch_spec_riscv64 ( )

Definition at line 403 of file config.cpp.

◆ set_arch_spec_s390()

void configt::ansi_ct::set_arch_spec_s390 ( )

Definition at line 429 of file config.cpp.

◆ set_arch_spec_s390x()

void configt::ansi_ct::set_arch_spec_s390x ( )

Definition at line 458 of file config.cpp.

◆ set_arch_spec_sh4()

void configt::ansi_ct::set_arch_spec_sh4 ( )

Definition at line 645 of file config.cpp.

◆ set_arch_spec_sparc()

void configt::ansi_ct::set_arch_spec_sparc ( const irep_idt subarch)

Definition at line 486 of file config.cpp.

◆ set_arch_spec_v850()

void configt::ansi_ct::set_arch_spec_v850 ( )

Sets up the widths of variables for the Renesas V850.

Definition at line 593 of file config.cpp.

◆ set_arch_spec_x32()

void configt::ansi_ct::set_arch_spec_x32 ( )

Definition at line 557 of file config.cpp.

◆ set_arch_spec_x86_64()

void configt::ansi_ct::set_arch_spec_x86_64 ( )

Definition at line 182 of file config.cpp.

◆ set_c11()

void configt::ansi_ct::set_c11 ( )
inline

Definition at line 160 of file config.h.

◆ set_c89()

void configt::ansi_ct::set_c89 ( )
inline

Definition at line 150 of file config.h.

◆ set_c99()

void configt::ansi_ct::set_c99 ( )
inline

Definition at line 155 of file config.h.

◆ set_ILP32()

void configt::ansi_ct::set_ILP32 ( )

int=32, long=32, pointer=32

Definition at line 111 of file config.cpp.

◆ set_ILP64()

void configt::ansi_ct::set_ILP64 ( )

int=64, long=64, pointer=64

Definition at line 71 of file config.cpp.

◆ set_LLP64()

void configt::ansi_ct::set_LLP64 ( )

int=32, long=32, pointer=64

Definition at line 91 of file config.cpp.

◆ set_LP32()

void configt::ansi_ct::set_LP32 ( )

int=16, long=32, pointer=32

Definition at line 131 of file config.cpp.

◆ set_LP64()

void configt::ansi_ct::set_LP64 ( )

int=32, long=64, pointer=64

Definition at line 47 of file config.cpp.

◆ string_to_os()

configt::ansi_ct::ost configt::ansi_ct::string_to_os ( const std::string &  os)
static

Definition at line 1190 of file config.cpp.

Member Data Documentation

◆ alignment

std::size_t configt::ansi_ct::alignment

Definition at line 180 of file config.h.

◆ arch

irep_idt configt::ansi_ct::arch

Definition at line 206 of file config.h.

◆ bool_width

std::size_t configt::ansi_ct::bool_width

Definition at line 126 of file config.h.

◆ c_standard

enum configt::ansi_ct::c_standardt configt::ansi_ct::c_standard

◆ char_is_unsigned

bool configt::ansi_ct::char_is_unsigned

Definition at line 137 of file config.h.

◆ char_width

std::size_t configt::ansi_ct::char_width

Definition at line 127 of file config.h.

◆ default_object_bits

const std::size_t configt::ansi_ct::default_object_bits = 8
static

Definition at line 275 of file config.h.

◆ defines

std::list<std::string> configt::ansi_ct::defines

Definition at line 250 of file config.h.

◆ double_width

std::size_t configt::ansi_ct::double_width

Definition at line 132 of file config.h.

◆ endianness

endiannesst configt::ansi_ct::endianness

Definition at line 192 of file config.h.

◆ for_has_scope

bool configt::ansi_ct::for_has_scope

Definition at line 138 of file config.h.

◆ gcc__float128_type

bool configt::ansi_ct::gcc__float128_type

Definition at line 140 of file config.h.

◆ include_files

std::list<std::string> configt::ansi_ct::include_files

Definition at line 254 of file config.h.

◆ include_paths

std::list<std::string> configt::ansi_ct::include_paths

Definition at line 253 of file config.h.

◆ int_width

std::size_t configt::ansi_ct::int_width

Definition at line 124 of file config.h.

◆ lib

libt configt::ansi_ct::lib

Definition at line 261 of file config.h.

◆ long_double_width

std::size_t configt::ansi_ct::long_double_width

Definition at line 133 of file config.h.

◆ long_int_width

std::size_t configt::ansi_ct::long_int_width

Definition at line 125 of file config.h.

◆ long_long_int_width

std::size_t configt::ansi_ct::long_long_int_width

Definition at line 129 of file config.h.

◆ malloc_failure_mode

malloc_failure_modet configt::ansi_ct::malloc_failure_mode = malloc_failure_mode_none

Definition at line 273 of file config.h.

◆ malloc_may_fail

bool configt::ansi_ct::malloc_may_fail = false

Definition at line 264 of file config.h.

◆ max_argc

optionalt<mp_integer> configt::ansi_ct::max_argc

Maximum value of argc, which is operating-systems dependent: Windows limits the number of characters accepte by CreateProcess, and Unix systems have sysconf(ARG_MAX).

Definition at line 280 of file config.h.

◆ memory_operand_size

std::size_t configt::ansi_ct::memory_operand_size

Definition at line 184 of file config.h.

◆ mode

flavourt configt::ansi_ct::mode

Definition at line 237 of file config.h.

◆ NULL_is_zero

bool configt::ansi_ct::NULL_is_zero

Definition at line 209 of file config.h.

◆ os

ost configt::ansi_ct::os

Definition at line 201 of file config.h.

◆ pointer_width

std::size_t configt::ansi_ct::pointer_width

Definition at line 130 of file config.h.

◆ preprocessor

preprocessort configt::ansi_ct::preprocessor

Definition at line 248 of file config.h.

◆ preprocessor_options

std::list<std::string> configt::ansi_ct::preprocessor_options

Definition at line 252 of file config.h.

◆ rounding_mode

ieee_floatt::rounding_modet configt::ansi_ct::rounding_mode

Definition at line 166 of file config.h.

◆ short_int_width

std::size_t configt::ansi_ct::short_int_width

Definition at line 128 of file config.h.

◆ single_precision_constant

bool configt::ansi_ct::single_precision_constant

Definition at line 141 of file config.h.

◆ single_width

std::size_t configt::ansi_ct::single_width

Definition at line 131 of file config.h.

◆ string_abstraction

bool configt::ansi_ct::string_abstraction

Definition at line 263 of file config.h.

◆ ts_18661_3_Floatn_types

bool configt::ansi_ct::ts_18661_3_Floatn_types

Definition at line 139 of file config.h.

◆ undefines

std::list<std::string> configt::ansi_ct::undefines

Definition at line 251 of file config.h.

◆ wchar_t_is_unsigned

bool configt::ansi_ct::wchar_t_is_unsigned

Definition at line 137 of file config.h.

◆ wchar_t_width

std::size_t configt::ansi_ct::wchar_t_width

Definition at line 134 of file config.h.


The documentation for this struct was generated from the following files: