22 const std::string &src,
23 bool force_integer_type,
30 if(src[0]==
'L' || src[0]==
'u' || src[0]==
'U')
35 std::basic_string<unsigned int> value=
47 else if(value.size()>=2 && value.size()<=4)
53 for(
unsigned i=0; i<value.size(); i++)
56 z = z << ((value.size() - i - 1) * CHAR_BIT);
66 " characters are not supported",
84 else if(value.size()>=2 && value.size()<=4)
88 for(
unsigned i=0; i<value.size(); i++)
91 z = z << ((value.size() - i - 1) * CHAR_BIT);
101 " characters are not supported",
signedbv_typet signed_int_type()
bitvector_typet char_type()
bitvector_typet wchar_t_type()
Base class for all expressions.
source_locationt & add_source_location()
Thrown when we can't handle something in an input source file.
The type of an expression, extends irept.
exprt convert_character_literal(const std::string &src, bool force_integer_type, const source_locationt &source_location)
#define CHECK_RETURN(CONDITION)
#define PRECONDITION(CONDITION)
std::string to_string(const string_not_contains_constraintt &expr)
Used for debug printing.
std::string unescape_string(const std::string &src)
std::basic_string< unsigned int > unescape_wide_string(const std::string &src)
ANSI-C Language Conversion.