@@ -14,15 +14,15 @@ CPROVER codebase.
1414
1515See detailed documentation at \ref irept.
1616
17- [ irept] (\ref irept)s are generic tree nodes. You
18- should think of each node as holding a single string ([ data] (\ref irept::data),
19- actually an \ref irep_idt) and lots of child nodes, some of which are numbered
20- ( [ sub ] (\ref irept::dt::sub)) and some of which are labelled, and the label
21- can either start with a “\# ” ( [ comments ] (\ref irept::dt::comments)) or without
22- one ( [ named_sub ] (\ref irept::dt::named_sub)). The meaning of the “\# ” is that
23- this child shouldn't be counted when comparing two [ irept] (\ref irept)s for
24- equality; this is usually used when making an advisory annotation which does
25- not alter the semantics of the program.
17+ [ irept] (\ref irept)s are generic tree nodes. You should think of each node
18+ as holding a single string ([ data] (\ref irept::data), actually an \ref
19+ irep_idt) and lots of child nodes, some of which are numbered ( [ sub ] (\ref
20+ irept::dt::sub)) and some of which are labelled ( [ named_sub ] (\ref
21+ irept::dt::named_sub)). The the label can either start with a “\# ” or
22+ without one. The meaning of the “\# ” is that this child shouldn't be
23+ considered when comparing two [ irept] (\ref irept)s for equality; this is
24+ usually used when making an advisory annotation which does not alter the
25+ semantics of the program.
2626
2727They are used to represent many kinds of structured objects throughout the
2828CPROVER codebase, such as expressions, types and code. An \ref exprt represents
@@ -72,9 +72,8 @@ standard data structures as in irept.
7272
7373\subsection irep_idt_section Strings: dstringt, the string_container and the ID_ *
7474
75- Within cbmc, strings are represented using \ref irep_idt, or \ref irep_namet
76- for keys to [ named_sub] (\ref irept::dt::named_sub) or
77- [ comments] (\ref irept::dt::comments). By default these are both
75+ Within cbmc, strings are represented using \ref irep_idt or \ref irep_namet
76+ for keys to [ named_sub] (\ref irept::dt::named_sub). By default these are both
7877typedefed to \ref dstringt. For debugging purposes you can set ` USE_STD_STRING ` ,
7978in which case they are both typedefed to ` std::string ` . You can also easily
8079convert an [ irep_idt] (\ref irep_idt) or [ irep_namet] (\ref irep_namet) to a
@@ -91,11 +90,10 @@ in `irep_ids.def` is `“IREP_ID_ONE(type)”`, so the string “type” has ind
9190You can refer to this \ref irep_idt as ` ID_type ` . The other kind of line you
9291see is \c "IREP_ID_TWO(C_source_location, #source_location)", which means the
9392\ref irep_idt for the string “\# source_location” can be referred to as
94- ` ID_C_source_location ` . The “C” is for comment, meaning that it should be
95- stored in the [ comments] (\ref irept::dt::comments). Any strings that need
96- to be stored as [ irep_idt] (\ref irep_idt)s which aren't in ` irep_ids.def `
97- are added to the end of the table when they are first encountered, and the
98- same index is used for all instances.
93+ ` ID_C_source_location ` . The “C” is for comment, meaning that it starts with
94+ “\# ”. Any strings that need to be stored as [ irep_idt] (\ref irep_idt)s
95+ which aren't in ` irep_ids.def ` are added to the end of the table when they
96+ are first encountered, and the same index is used for all instances.
9997
10098See documentation at \ref dstringt.
10199
@@ -125,8 +123,8 @@ of size 2 (for the two arguments of minus).
125123
126124Recall that every \ref irept has one piece of data of its own, i.e. its
127125[ id()] (\ref irept::id()), and all other information is in its
128- [ named_sub] (\ref irept::dt::named_sub), [ comments ] (\ref irept::dt::comments)
129- or [ sub ] (\ref irept::dt::sub). For [ exprt] (\ref exprt)s, the
126+ [ named_sub] (\ref irept::dt::named_sub) or [ sub ] (\ref irept::dt::sub).
127+ For [ exprt] (\ref exprt)s, the
130128[ id()] (\ref irept::id()) is used to specify why kind of \ref exprt this is,
131129so a \ref minus_exprt has ` ID_minus ` as its [ id()] (\ref irept::id()). This
132130means that a \ref minus_exprt can be passed wherever an \ref exprt is
0 commit comments