CBMC
cpp_typecastt Class Reference

#include <cpp_typecast.h>

+ Inheritance diagram for cpp_typecastt:
+ Collaboration diagram for cpp_typecastt:

Public Member Functions

 cpp_typecastt (cpp_typecheckt &cpp_typecheck)
 
virtual void implicit_typecast (exprt &expr, const typet &type)
 
virtual void implicit_typecast_arithmetic (exprt &expr)
 
virtual void implicit_typecast_arithmetic (exprt &expr1, exprt &expr2)
 
void check_qualifiers (const typet &from, const typet &to)
 
bool subtype_typecast (const typet &from, const typet &to, std::string &err)
 
bool integral_conversion (const typet &src_type, const typet &dest_type)
 
exprt subtype_offset (const struct_typet &from, const struct_typet &to)
 
void make_ptr_typecast (exprt &expr, const typet &src_type, const typet &dest_type)
 
- Public Member Functions inherited from c_typecastt
 c_typecastt (const namespacet &_ns)
 
virtual ~c_typecastt ()
 

Public Attributes

cpp_typechecktcpp_typecheck
 
- Public Attributes inherited from c_typecastt
std::list< std::string > errors
 
std::list< std::string > warnings
 

Protected Member Functions

virtual void implicit_typecast_followed (exprt &expr, const typet &src_type, const typet &dest_type)
 
void get_bases (const irep_idt &identifier, std::map< irep_idt, unsigned > &base_count)
 
- Protected Member Functions inherited from c_typecastt
c_typet get_c_type (const typet &type) const
 
void implicit_typecast_arithmetic (exprt &expr, c_typet c_type)
 
typet follow_with_qualifiers (const typet &src)
 
virtual void implicit_typecast_followed (exprt &expr, const typet &src_type, const typet &orig_dest_type, const typet &dest_type)
 
void do_typecast (exprt &dest, const typet &type)
 
c_typet minimum_promotion (const typet &type) const
 

Additional Inherited Members

- Protected Types inherited from c_typecastt
enum  c_typet {
  BOOL, CHAR, UCHAR, SHORT,
  USHORT, INT, UINT, LONG,
  ULONG, LONGLONG, ULONGLONG, LARGE_SIGNED_INT,
  LARGE_UNSIGNED_INT, INTEGER, FIXEDBV, SINGLE,
  DOUBLE, LONGDOUBLE, FLOAT128, RATIONAL,
  REAL, COMPLEX, VOIDPTR, PTR,
  OTHER
}
 
- Protected Attributes inherited from c_typecastt
const namespacetns
 

Detailed Description

Definition at line 17 of file cpp_typecast.h.

Constructor & Destructor Documentation

◆ cpp_typecastt()

cpp_typecastt::cpp_typecastt ( cpp_typecheckt cpp_typecheck)
explicit

Member Function Documentation

◆ check_qualifiers()

void cpp_typecastt::check_qualifiers ( const typet from,
const typet to 
)

◆ get_bases()

void cpp_typecastt::get_bases ( const irep_idt identifier,
std::map< irep_idt, unsigned > &  base_count 
)
protected

◆ implicit_typecast()

virtual void cpp_typecastt::implicit_typecast ( exprt expr,
const typet type 
)
virtual

Reimplemented from c_typecastt.

◆ implicit_typecast_arithmetic() [1/2]

virtual void cpp_typecastt::implicit_typecast_arithmetic ( exprt expr)
virtual

Reimplemented from c_typecastt.

◆ implicit_typecast_arithmetic() [2/2]

virtual void cpp_typecastt::implicit_typecast_arithmetic ( exprt expr1,
exprt expr2 
)
virtual

Reimplemented from c_typecastt.

◆ implicit_typecast_followed()

virtual void cpp_typecastt::implicit_typecast_followed ( exprt expr,
const typet src_type,
const typet dest_type 
)
protectedvirtual

◆ integral_conversion()

bool cpp_typecastt::integral_conversion ( const typet src_type,
const typet dest_type 
)

◆ make_ptr_typecast()

void cpp_typecastt::make_ptr_typecast ( exprt expr,
const typet src_type,
const typet dest_type 
)

◆ subtype_offset()

exprt cpp_typecastt::subtype_offset ( const struct_typet from,
const struct_typet to 
)

◆ subtype_typecast()

bool cpp_typecastt::subtype_typecast ( const typet from,
const typet to,
std::string &  err 
)

Member Data Documentation

◆ cpp_typecheck

cpp_typecheckt& cpp_typecastt::cpp_typecheck

Definition at line 66 of file cpp_typecast.h.


The documentation for this class was generated from the following file: