blob: f9d82dddcd85edc3d0329ed85a5287f5561c4b6a (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
|
<div class="subsection-level-extent" id="Solaris-Pragmas"> <div class="nav-panel"> <p> Next: <a href="symbol-renaming-pragmas" accesskey="n" rel="next">Symbol-Renaming Pragmas</a>, Previous: <a href="darwin-pragmas" accesskey="p" rel="prev">Darwin Pragmas</a>, Up: <a href="pragmas" accesskey="u" rel="up">Pragmas Accepted by GCC</a> [<a href="index#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="indices" title="Index" rel="index">Index</a>]</p> </div> <h1 class="subsection" id="Solaris-Pragmas-1"><span>6.62.8 Solaris Pragmas<a class="copiable-link" href="#Solaris-Pragmas-1"> ¶</a></span></h1> <p>The Solaris target supports <code class="code">#pragma redefine_extname</code> (see <a class="pxref" href="symbol-renaming-pragmas">Symbol-Renaming Pragmas</a>). It also supports additional <code class="code">#pragma</code> directives for compatibility with the system compiler. </p> <dl class="table"> <dt>
<span><code class="code">align <var class="var">alignment</var> (<var class="var">variable</var> [, <var class="var">variable</var>]...)</code><a class="copiable-link" href="#index-pragma_002c-align"> ¶</a></span>
</dt> <dd> <p>Increase the minimum alignment of each <var class="var">variable</var> to <var class="var">alignment</var>. This is the same as GCC’s <code class="code">aligned</code> attribute see <a class="pxref" href="variable-attributes">Specifying Attributes of Variables</a>). Macro expansion occurs on the arguments to this pragma when compiling C and Objective-C. It does not currently occur when compiling C++, but this is a bug which may be fixed in a future release. </p> </dd> <dt>
<span><code class="code">fini (<var class="var">function</var> [, <var class="var">function</var>]...)</code><a class="copiable-link" href="#index-pragma_002c-fini"> ¶</a></span>
</dt> <dd> <p>This pragma causes each listed <var class="var">function</var> to be called after main, or during shared module unloading, by adding a call to the <code class="code">.fini</code> section. </p> </dd> <dt>
<span><code class="code">init (<var class="var">function</var> [, <var class="var">function</var>]...)</code><a class="copiable-link" href="#index-pragma_002c-init"> ¶</a></span>
</dt> <dd> <p>This pragma causes each listed <var class="var">function</var> to be called during initialization (before <code class="code">main</code>) or during shared module loading, by adding a call to the <code class="code">.init</code> section. </p> </dd> </dl> </div><div class="_attribution">
<p class="_attribution-p">
© Free Software Foundation<br>Licensed under the GNU Free Documentation License, Version 1.3.<br>
<a href="https://gcc.gnu.org/onlinedocs/gcc-13.1.0/gcc/Solaris-Pragmas.html" class="_attribution-link">https://gcc.gnu.org/onlinedocs/gcc-13.1.0/gcc/Solaris-Pragmas.html</a>
</p>
</div>
|