114
Chapter 14. Using gdb with Different Languages
For best results when using gnu C
++
, use the DWARF 2 debugging format; if it doesn’t work on
your system, try the stabs+ debugging format. You can select those formats explicitly with the
g++
command-line options
-gdwarf-2
and
-
. .
14.4.1.1. C and C
++
operators
Operators must be defined on values of specific types. For instance,
+
is defined on numbers, but not
on structures. Operators are often defined on groups of types.
For the purposes of C and C
++
, the following definitions hold:
•
Integral types
include
int
with any of its storage-class specifiers;
char
;
enum
; and, for C
++
,
bool
.
•
Floating-point types
include
float
,
double
, and
long double
(if supported by the target plat-
form).
•
Pointer types
include all types defined as
(
type
*)
.
•
Scalar types
include all of the above.
The following operators are supported. They are listed here in order of increasing precedence:
,
The comma or sequencing operator. Expressions in a comma-separated list are evaluated from
left to right, with the result of the entire expression being the last expression evaluated.
=
Assignment. The value of an assignment expression is the value assigned. Defined on scalar
types.
op
=
Used in an expression of the form
a op
=
b
, and translated to
a
=
a op b
.
op
=
and
=
have the
same precedence.
op
is any one of the operators
|
,
^
,
&
,
00
,
11
,
+
,
-
,
*
,
/
,
%
.
?:
The ternary operator.
a
?
b
:
c
can be thought of as: if
a
then
b
else
c
.
a
should be of an
integral type.
||
Logical or. Defined on integral types.
&&
Logical and. Defined on integral types.
|
Bitwise or. Defined on integral types.
^
Bitwise exclusive-or. Defined on integral types.
&
Bitwise and. Defined on integral types.
Summary of Contents for ENTERPRISE LINUX 4 - DEVELOPER TOOLS GUIDE
Page 1: ...Red Hat Enterprise Linux 4 Debugging with gdb ...
Page 12: ...2 Chapter 1 Debugging with gdb ...
Page 28: ...18 Chapter 4 Getting In and Out of gdb ...
Page 34: ...24 Chapter 5 gdb Commands ...
Page 44: ...34 Chapter 6 Running Programs Under gdb ...
Page 68: ...58 Chapter 8 Examining the Stack ...
Page 98: ...88 Chapter 10 Examining Data ...
Page 112: ...102 Chapter 12 Tracepoints ...
Page 118: ...108 Chapter 13 Debugging Programs That Use Overlays ...
Page 138: ...128 Chapter 14 Using gdb with Different Languages ...
Page 144: ...134 Chapter 15 Examining the Symbol Table ...
Page 170: ...160 Chapter 19 Debugging remote programs ...
Page 198: ...188 Chapter 21 Controlling gdb ...
Page 204: ...194 Chapter 22 Canned Sequences of Commands ...
Page 206: ...196 Chapter 23 Command Interpreters ...
Page 216: ...206 Chapter 25 Using gdb under gnu Emacs ...
Page 296: ...286 Chapter 27 gdb Annotations ...
Page 300: ...290 Chapter 28 Reporting Bugs in gdb ...
Page 322: ...312 Chapter 30 Using History Interactively ...
Page 362: ...352 Appendix D gdb Remote Serial Protocol ...
Page 380: ...370 Appendix F GNU GENERAL PUBLIC LICENSE ...
Page 386: ...376 Appendix G GNU Free Documentation License ...
Page 410: ......