10 #ifndef CPROVER_CPP_CPP_TYPECAST_H
11 #define CPROVER_CPP_CPP_TYPECAST_H
36 const typet &src_type,
37 const typet &dest_type);
41 std::map<irep_idt, unsigned> &base_count);
54 const typet &src_type,
55 const typet &dest_type);
63 const typet &src_type,
64 const typet &dest_type);
bool integral_conversion(const typet &src_type, const typet &dest_type)
virtual void implicit_typecast_arithmetic(exprt &expr)
virtual void implicit_typecast_arithmetic(exprt &expr1, exprt &expr2)
cpp_typecastt(cpp_typecheckt &cpp_typecheck)
bool subtype_typecast(const typet &from, const typet &to, std::string &err)
void get_bases(const irep_idt &identifier, std::map< irep_idt, unsigned > &base_count)
exprt subtype_offset(const struct_typet &from, const struct_typet &to)
virtual void implicit_typecast_followed(exprt &expr, const typet &src_type, const typet &dest_type)
void check_qualifiers(const typet &from, const typet &to)
virtual void implicit_typecast(exprt &expr, const typet &type)
void make_ptr_typecast(exprt &expr, const typet &src_type, const typet &dest_type)
cpp_typecheckt & cpp_typecheck
dstringt has one field, an unsigned integer no which is an index into a static table of strings.
Base class for all expressions.
Structure type, corresponds to C style structs.
The type of an expression, extends irept.
void err(int eval, const char *fmt,...)