1<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
2<html>
3<!-- Copyright (C) 1988-2021 Free Software Foundation, Inc.
4
5Permission is granted to copy, distribute and/or modify this document
6under the terms of the GNU Free Documentation License, Version 1.3 or
7any later version published by the Free Software Foundation; with the
8Invariant Sections being "Free Software" and "Free Software Needs
9Free Documentation", with the Front-Cover Texts being "A GNU Manual,"
10and with the Back-Cover Texts as in (a) below.
11
12(a) The FSF's Back-Cover Text is: "You are free to copy and modify
13this GNU Manual.  Buying copies from GNU Press supports the FSF in
14developing GNU and promoting software freedom." -->
15<!-- Created by GNU Texinfo 5.1, http://www.gnu.org/software/texinfo/ -->
16<head>
17<title>Debugging with GDB: Address Locations</title>
18
19<meta name="description" content="Debugging with GDB: Address Locations">
20<meta name="keywords" content="Debugging with GDB: Address Locations">
21<meta name="resource-type" content="document">
22<meta name="distribution" content="global">
23<meta name="Generator" content="makeinfo">
24<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
25<link href="index.html#Top" rel="start" title="Top">
26<link href="Concept-Index.html#Concept-Index" rel="index" title="Concept Index">
27<link href="index.html#SEC_Contents" rel="contents" title="Table of Contents">
28<link href="Specify-Location.html#Specify-Location" rel="up" title="Specify Location">
29<link href="Edit.html#Edit" rel="next" title="Edit">
30<link href="Explicit-Locations.html#Explicit-Locations" rel="previous" title="Explicit Locations">
31<style type="text/css">
32<!--
33a.summary-letter {text-decoration: none}
34blockquote.smallquotation {font-size: smaller}
35div.display {margin-left: 3.2em}
36div.example {margin-left: 3.2em}
37div.indentedblock {margin-left: 3.2em}
38div.lisp {margin-left: 3.2em}
39div.smalldisplay {margin-left: 3.2em}
40div.smallexample {margin-left: 3.2em}
41div.smallindentedblock {margin-left: 3.2em; font-size: smaller}
42div.smalllisp {margin-left: 3.2em}
43kbd {font-style:oblique}
44pre.display {font-family: inherit}
45pre.format {font-family: inherit}
46pre.menu-comment {font-family: serif}
47pre.menu-preformatted {font-family: serif}
48pre.smalldisplay {font-family: inherit; font-size: smaller}
49pre.smallexample {font-size: smaller}
50pre.smallformat {font-family: inherit; font-size: smaller}
51pre.smalllisp {font-size: smaller}
52span.nocodebreak {white-space:nowrap}
53span.nolinebreak {white-space:nowrap}
54span.roman {font-family:serif; font-weight:normal}
55span.sansserif {font-family:sans-serif; font-weight:normal}
56ul.no-bullet {list-style: none}
57-->
58</style>
59
60
61</head>
62
63<body lang="en" bgcolor="#FFFFFF" text="#000000" link="#0000FF" vlink="#800080" alink="#FF0000">
64<a name="Address-Locations"></a>
65<div class="header">
66<p>
67Previous: <a href="Explicit-Locations.html#Explicit-Locations" accesskey="p" rel="previous">Explicit Locations</a>, Up: <a href="Specify-Location.html#Specify-Location" accesskey="u" rel="up">Specify Location</a> &nbsp; [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="Concept-Index.html#Concept-Index" title="Index" rel="index">Index</a>]</p>
68</div>
69<hr>
70<a name="Address-Locations-1"></a>
71<h4 class="subsection">9.2.3 Address Locations</h4>
72<a name="index-address-locations"></a>
73
74<p><em>Address locations</em> indicate a specific program address.  They have
75the generalized form *<var>address</var>.
76</p>
77<p>For line-oriented commands, such as <code>list</code> and <code>edit</code>, this
78specifies a source line that contains <var>address</var>.  For <code>break</code> and
79other breakpoint-oriented commands, this can be used to set breakpoints in
80parts of your program which do not have debugging information or
81source files.
82</p>
83<p>Here <var>address</var> may be any expression valid in the current working
84language (see <a href="Languages.html#Languages">working language</a>) that specifies a code
85address.  In addition, as a convenience, <small>GDB</small> extends the
86semantics of expressions used in locations to cover several situations
87that frequently occur during debugging.  Here are the various forms
88of <var>address</var>:
89</p>
90<dl compact="compact">
91<dt><code><var>expression</var></code></dt>
92<dd><p>Any expression valid in the current working language.
93</p>
94</dd>
95<dt><code><var>funcaddr</var></code></dt>
96<dd><p>An address of a function or procedure derived from its name.  In C,
97C<tt>++</tt>, Objective-C, Fortran, minimal, and assembly, this is
98simply the function&rsquo;s name <var>function</var> (and actually a special case
99of a valid expression).  In Pascal and Modula-2, this is
100<code>&amp;<var>function</var></code>.  In Ada, this is <code><var>function</var>'Address</code>
101(although the Pascal form also works).
102</p>
103<p>This form specifies the address of the function&rsquo;s first instruction,
104before the stack frame and arguments have been set up.
105</p>
106</dd>
107<dt><code>'<var>filename</var>':<var>funcaddr</var></code></dt>
108<dd><p>Like <var>funcaddr</var> above, but also specifies the name of the source
109file explicitly.  This is useful if the name of the function does not
110specify the function unambiguously, e.g., if there are several
111functions with identical names in different source files.
112</p></dd>
113</dl>
114
115
116
117
118</body>
119</html>
120