4 <meta http-equiv=
"Content-Type" content=
"text/html">
5 <meta name=
"description" content=
"STABS">
6 <meta name=
"generator" content=
"makeinfo 4.3">
7 <link href=
"http://www.gnu.org/software/texinfo/" rel=
"generator-home">
12 Node:
<a name=
"Class%20Names">Class Names
</a>,
13 Next:
<a rel=
"next" accesskey=
"n" href=
"Nested-Symbols.html#Nested%20Symbols">Nested Symbols
</a>,
14 Up:
<a rel=
"up" accesskey=
"u" href=
"Cplusplus.html#Cplusplus">Cplusplus
</a>
18 <h3 class=
"section">C++ Class Names
</h3>
20 <p>In C++, a class name which is declared with
<code>class
</code>,
<code>struct
</code>,
21 or
<code>union
</code>, is not only a tag, as in C, but also a type name. Thus
22 there should be stabs with both
<code>t
</code> and
<code>T
</code> symbol descriptors
23 (see
<a href=
"Typedefs.html#Typedefs">Typedefs
</a>).
25 <p>To save space, there is a special abbreviation for this case. If the
26 <code>T
</code> symbol descriptor is followed by
<code>t
</code>, then the stab
27 defines both a type name and a tag.
29 <p>For example, the C++ code
31 <pre class=
"example"> struct foo {int x;};
34 <p>can be represented as either
36 <pre class=
"example"> .stabs
"foo:T19=s4x:1,0,32;;",
128,
0,
0,
0 #
128 is N_LSYM
37 .stabs
"foo:t19",
128,
0,
0,
0
42 <pre class=
"example"> .stabs
"foo:Tt19=s4x:1,0,32;;",
128,
0,
0,
0