<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- Copyright (C) 1987-2015 Free Software Foundation, Inc.

Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3 or
any later version published by the Free Software Foundation.  A copy of
the license is included in the
section entitled "GNU Free Documentation License".

This manual contains no Invariant Sections.  The Front-Cover Texts are
(a) (see below), and the Back-Cover Texts are (b) (see below).

(a) The FSF's Front-Cover Text is:

A GNU Manual

(b) The FSF's Back-Cover Text is:

You have freedom to copy and modify this GNU Manual, like GNU
     software.  Copies published by the Free Software Foundation raise
     funds for GNU development. -->
<!-- Created by GNU Texinfo 5.2, http://www.gnu.org/software/texinfo/ -->
<head>
<title>The C Preprocessor: Self-Referential Macros</title>

<meta name="description" content="The C Preprocessor: Self-Referential Macros">
<meta name="keywords" content="The C Preprocessor: Self-Referential Macros">
<meta name="resource-type" content="document">
<meta name="distribution" content="global">
<meta name="Generator" content="makeinfo">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<link href="index.html#Top" rel="start" title="Top">
<link href="Index-of-Directives.html#Index-of-Directives" rel="index" title="Index of Directives">
<link href="index.html#SEC_Contents" rel="contents" title="Table of Contents">
<link href="Macro-Pitfalls.html#Macro-Pitfalls" rel="up" title="Macro Pitfalls">
<link href="Argument-Prescan.html#Argument-Prescan" rel="next" title="Argument Prescan">
<link href="Duplication-of-Side-Effects.html#Duplication-of-Side-Effects" rel="prev" title="Duplication of Side Effects">
<style type="text/css">
<!--
a.summary-letter {text-decoration: none}
blockquote.smallquotation {font-size: smaller}
div.display {margin-left: 3.2em}
div.example {margin-left: 3.2em}
div.indentedblock {margin-left: 3.2em}
div.lisp {margin-left: 3.2em}
div.smalldisplay {margin-left: 3.2em}
div.smallexample {margin-left: 3.2em}
div.smallindentedblock {margin-left: 3.2em; font-size: smaller}
div.smalllisp {margin-left: 3.2em}
kbd {font-style:oblique}
pre.display {font-family: inherit}
pre.format {font-family: inherit}
pre.menu-comment {font-family: serif}
pre.menu-preformatted {font-family: serif}
pre.smalldisplay {font-family: inherit; font-size: smaller}
pre.smallexample {font-size: smaller}
pre.smallformat {font-family: inherit; font-size: smaller}
pre.smalllisp {font-size: smaller}
span.nocodebreak {white-space:nowrap}
span.nolinebreak {white-space:nowrap}
span.roman {font-family:serif; font-weight:normal}
span.sansserif {font-family:sans-serif; font-weight:normal}
ul.no-bullet {list-style: none}
-->
</style>


</head>

<body lang="en" bgcolor="#FFFFFF" text="#000000" link="#0000FF" vlink="#800080" alink="#FF0000">
<a name="Self_002dReferential-Macros"></a>
<div class="header">
<p>
Next: <a href="Argument-Prescan.html#Argument-Prescan" accesskey="n" rel="next">Argument Prescan</a>, Previous: <a href="Duplication-of-Side-Effects.html#Duplication-of-Side-Effects" accesskey="p" rel="prev">Duplication of Side Effects</a>, Up: <a href="Macro-Pitfalls.html#Macro-Pitfalls" accesskey="u" rel="up">Macro Pitfalls</a> &nbsp; [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="Index-of-Directives.html#Index-of-Directives" title="Index" rel="index">Index</a>]</p>
</div>
<hr>
<a name="Self_002dReferential-Macros-1"></a>
<h4 class="subsection">3.10.5 Self-Referential Macros</h4>
<a name="index-self_002dreference"></a>

<p>A <em>self-referential</em> macro is one whose name appears in its
definition.  Recall that all macro definitions are rescanned for more
macros to replace.  If the self-reference were considered a use of the
macro, it would produce an infinitely large expansion.  To prevent this,
the self-reference is not considered a macro call.  It is passed into
the preprocessor output unchanged.  Consider an example:
</p>
<div class="smallexample">
<pre class="smallexample">#define foo (4 + foo)
</pre></div>

<p>where <code>foo</code> is also a variable in your program.
</p>
<p>Following the ordinary rules, each reference to <code>foo</code> will expand
into <code>(4 + foo)</code>; then this will be rescanned and will expand into
<code>(4 + (4 + foo))</code>; and so on until the computer runs out of memory.
</p>
<p>The self-reference rule cuts this process short after one step, at
<code>(4 + foo)</code>.  Therefore, this macro definition has the possibly
useful effect of causing the program to add 4 to the value of <code>foo</code>
wherever <code>foo</code> is referred to.
</p>
<p>In most cases, it is a bad idea to take advantage of this feature.  A
person reading the program who sees that <code>foo</code> is a variable will
not expect that it is a macro as well.  The reader will come across the
identifier <code>foo</code> in the program and think its value should be that
of the variable <code>foo</code>, whereas in fact the value is four greater.
</p>
<p>One common, useful use of self-reference is to create a macro which
expands to itself.  If you write
</p>
<div class="smallexample">
<pre class="smallexample">#define EPERM EPERM
</pre></div>

<p>then the macro <code>EPERM</code> expands to <code>EPERM</code>.  Effectively, it is
left alone by the preprocessor whenever it&rsquo;s used in running text.  You
can tell that it&rsquo;s a macro with &lsquo;<samp>#ifdef</samp>&rsquo;.  You might do this if you
want to define numeric constants with an <code>enum</code>, but have
&lsquo;<samp>#ifdef</samp>&rsquo; be true for each constant.
</p>
<p>If a macro <code>x</code> expands to use a macro <code>y</code>, and the expansion of
<code>y</code> refers to the macro <code>x</code>, that is an <em>indirect
self-reference</em> of <code>x</code>.  <code>x</code> is not expanded in this case
either.  Thus, if we have
</p>
<div class="smallexample">
<pre class="smallexample">#define x (4 + y)
#define y (2 * x)
</pre></div>

<p>then <code>x</code> and <code>y</code> expand as follows:
</p>
<div class="smallexample">
<pre class="smallexample">x    &rarr; (4 + y)
     &rarr; (4 + (2 * x))

y    &rarr; (2 * x)
     &rarr; (2 * (4 + y))
</pre></div>

<p>Each macro is expanded when it appears in the definition of the other
macro, but not when it indirectly appears in its own definition.
</p>
<hr>
<div class="header">
<p>
Next: <a href="Argument-Prescan.html#Argument-Prescan" accesskey="n" rel="next">Argument Prescan</a>, Previous: <a href="Duplication-of-Side-Effects.html#Duplication-of-Side-Effects" accesskey="p" rel="prev">Duplication of Side Effects</a>, Up: <a href="Macro-Pitfalls.html#Macro-Pitfalls" accesskey="u" rel="up">Macro Pitfalls</a> &nbsp; [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="Index-of-Directives.html#Index-of-Directives" title="Index" rel="index">Index</a>]</p>
</div>



</body>
</html>
