<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook MathML Module V1.1b1//EN"
              "http://www.oasis-open.org/docbook/xml/mathml/1.1CR1/dbmathml.dtd" [
<!ENTITY mathFunctionsInc SYSTEM "mathFunctionsInc.xml">
]>
<refentry>
    <refentryinfo>
        <keywordset>
            <keyword>nan</keyword>
        </keywordset>
    </refentryinfo>

    <refmeta>
        <refentrytitle>nan</refentrytitle>

        <refmiscinfo>
            <copyright>
                <year>2007-2011</year>
                <holder>The Khronos Group Inc.
 Permission is hereby granted, free of charge, to any person obtaining a
copy of this software and/or associated documentation files (the
"Materials"), to deal in the Materials without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Materials, and to
permit persons to whom the Materials are furnished to do so, subject to
the condition that this copyright notice and permission notice shall be included
in all copies or substantial portions of the Materials.</holder>
            </copyright>
        </refmiscinfo>
        <manvolnum>3</manvolnum>
    </refmeta>

<!-- ================================ SYNOPSIS -->

    <refnamediv id="nan">
        <refname>nan</refname>

        <refpurpose>
            Quiet NaN
        </refpurpose>
    </refnamediv>

    <refsynopsisdiv xmlns:xlink="http://www.w3.org/1999/xlink"><title></title>
        <funcsynopsis>
            <funcprototype>
                <funcdef>
                    <link xlink:href="vectorDataTypes.html">float<varname>n</varname></link>
                    <function>
                        nan
                    </function>
                </funcdef>
                <paramdef>
                    <link xlink:href="vectorDataTypes.html">uint<varname>n</varname></link>
                    <parameter>nancode</parameter>
                </paramdef>
            </funcprototype>
        </funcsynopsis>
        <funcsynopsis>
            <funcprototype>
                <funcdef>
                    <link xlink:href="vectorDataTypes.html">float</link>
                    <function>
                        nan
                    </function>
                </funcdef>
                <paramdef>
                    <link xlink:href="vectorDataTypes.html">uint</link>
                    <parameter>nancode</parameter>
                </paramdef>
            </funcprototype>
        </funcsynopsis>


        <funcsynopsis>
            <funcprototype>
                <funcdef>
                    <link xlink:href="vectorDataTypes.html">double<varname>n</varname></link>
                    <function>
                        nan
                    </function>
                </funcdef>
                <paramdef>
                    <link xlink:href="vectorDataTypes.html">ulong<varname>n</varname></link>
                    <parameter>nancode</parameter>
               </paramdef>
            </funcprototype>
        </funcsynopsis>
        <funcsynopsis>
            <funcprototype>
                <funcdef>
                    <link xlink:href="vectorDataTypes.html">double</link>
                    <function>
                        nan
                    </function>
                </funcdef>
                <paramdef>
                    <link xlink:href="vectorDataTypes.html">ulong</link>
                    <parameter>nancode</parameter>
               </paramdef>
            </funcprototype>
        </funcsynopsis>
    </refsynopsisdiv>

<!-- Optional Double and Half prototypes -->
 <refsect2 xmlns:xlink="http://www.w3.org/1999/xlink" id="double">
        <title></title>

        <informaltable frame="none">
            <tgroup cols="1" align="left" colsep="0" rowsep="0">
                <colspec colname="col1" colnum="1" />
                <tbody>
                    <row>
                        <entry>
<type><link xlink:href="vectorDataTypes.html">half<varname>n</varname></link></type> <function>nan</function> (<type><link xlink:href="vectorDataTypes.html">ushort<varname>n</varname></link></type> <varname>nancode</varname>)      // if half extension enabled
</entry>
                    </row>
                </tbody>
            </tgroup>
        </informaltable>
    </refsect2>

<!-- ================================ DESCRIPTION  -->

    <refsect1 id="description"><title>Description</title>
        <para>
          <function>nan</function> returns a quiet NaN. The <varname>nancode</varname> may be
          placed in the significand of the resulting NaN.
        </para>
    </refsect1>

<!-- ================================ NOTES  -->

    <refsect1 id="notes"><title>Notes</title>

        &mathFunctionsInc;

    </refsect1>

<!-- ================================ EXAMPLE  -->
<!-- DO NOT DELETE IN CASE AN EXAMPLE IS ADDED IN THE FUTURE -->
<!--
    <refsect2 id="example1">
        <title>
            Example
        </title>

        <informaltable frame="none">
            <tgroup cols="1" align="left" colsep="0" rowsep="0">
                <colspec colname="col1" colnum="1" />
                <tbody>
                    <row>
                        <entry>
                            Example goes here - it will be set in "code" type with white space preserved.
                        </entry>
                    </row>
                </tbody>
            </tgroup>
        </informaltable>
    </refsect2>
-->

<!-- ================================ SPECIFICATION  -->
<!-- Set the "uri" attribute in the <olink /> element to the "named destination" for the PDF page
-->
    <refsect1 id="specification"><title>Specification</title>
        <para>
            <imageobject>
                <imagedata fileref="pdficon_small1.gif" format="gif" />
            </imageobject>

            <olink uri="mathFunctions">OpenCL Specification</olink>
        </para>
    </refsect1>

<!-- ================================ ALSO SEE  -->

    <refsect1 id="seealso"><title>Also see</title>
        <para>
            <citerefentry href="mathFunctions"><refentrytitle>Math Functions</refentrytitle></citerefentry>
        </para>
    </refsect1>

<!-- ============================== COPYRIGHT -->
<!-- Content included from copyright.inc.xsl -->

    <refsect3 id="Copyright"><title></title>
        <imageobject>
                <imagedata fileref="KhronosLogo.jpg" format="jpg" />
        </imageobject>
        <para />
    </refsect3>

<!-- 14-Oct-2011 -->
</refentry>

