Go to the documentation of this file.
10 #ifndef CPROVER_ANSI_C_ANSI_C_PARSER_H
11 #define CPROVER_ANSI_C_ANSI_C_PARSER_H
124 assert(declaration.
id()==ID_declaration);
146 lookup(base_name, identifier,
false,
true);
155 for(
const auto &pragma : pragma_set)
166 #endif // CPROVER_ANSI_C_ANSI_C_PARSER_H
dstringt has one field, an unsigned integer no which is an index into a static table of strings.
source_locationt source_location
void add_declarator(exprt &declaration, irept &declarator)
The type of an expression, extends irept.
void add_pragma(const irep_idt &pragma)
Base class for all expressions.
configt::ansi_ct::flavourt modet
unsigned parenthesis_counter
void copy_item(const ansi_c_declarationt &declaration)
void new_scope(const std::string &prefix)
ansi_c_id_classt lookup(const irep_idt &base_name, irep_idt &identifier, bool tag, bool label)
int yyansi_cerror(const std::string &error)
std::list< exprt > pragma_pack
bool ts_18661_3_Floatn_types
irep_idt lookup_label(const irep_idt base_name)
void set_pragma_cprover()
static ansi_c_id_classt get_class(const typet &type)
std::list< std::set< irep_idt > > pragma_cprover
std::list< scopet > scopest
virtual void clear() override
ansi_c_parsert ansi_c_parser
void ansi_c_scanner_init()
std::string string_literal
const irep_idt & id() const
void remove(const irep_namet &name)
void add_tag_with_body(irept &tag)
ansi_c_parse_treet parse_tree
const scopet & root_scope() const
virtual bool parse() override
There are a large number of kinds of tree structured or tree-like data in CPROVER.
ansi_c_identifiert identifiert