<!DOCTYPE refentry [ <!ENTITY % mathent SYSTEM "math.ent"> %mathent; ]>

<!-- Converted by db4-upgrade version 1.1 -->

<refentry xmlns="http://docbook.org/ns/docbook" version="5.0" xml:id="glDeleteShader">
    <info>
        <copyright>
            <year>2003-2005</year>
            <holder>3Dlabs Inc. Ltd.</holder>
        </copyright>
        <copyright>
            <year>2010-2015</year>
            <holder>Khronos Group</holder>
        </copyright>
    </info>
    <refmeta>
        <refentrytitle>glDeleteShader</refentrytitle>
        <manvolnum>3G</manvolnum>
    </refmeta>
    <refnamediv>
        <refname>glDeleteShader</refname>
        <refpurpose>Deletes a shader object</refpurpose>
    </refnamediv>
    <refsynopsisdiv>
        <title>C Specification</title>
    <funcsynopsis>
        <funcprototype>
        <funcdef>void <function>glDeleteShader</function></funcdef>
        <paramdef>GLuint <parameter>shader</parameter></paramdef>
        </funcprototype>
    </funcsynopsis>
    </refsynopsisdiv>
    <refsect1 xml:id="parameters"><title>Parameters</title>
    <variablelist>
        <varlistentry>
        <term><parameter>shader</parameter></term>
        <listitem>
            <para>Specifies the shader object to be deleted.</para>
        </listitem>
        </varlistentry>
    </variablelist>
    </refsect1>
    <refsect1 xml:id="description"><title>Description</title>
    <para><function>glDeleteShader</function> frees the memory and
    invalidates the name associated with the shader object specified
    by <parameter>shader</parameter>. This command effectively
    undoes the effects of a call to
    <citerefentry><refentrytitle>glCreateShader</refentrytitle></citerefentry>.</para>

    <para>If a shader object to be deleted is attached to a program
    object, it will be flagged for deletion, but it will not be
    deleted until it is no longer attached to any program object,
    for any rendering context (i.e., it must be detached from
    wherever it was attached before it will be deleted). A value of
    0 for <parameter>shader</parameter> will be silently
    ignored.</para>

    <para>To determine whether an object has been flagged for
    deletion, call
    <citerefentry><refentrytitle>glGetShaderiv</refentrytitle></citerefentry>
    with arguments <parameter>shader</parameter> and
    <constant>GL_DELETE_STATUS</constant>.</para>
    </refsect1>
    <refsect1 xml:id="errors"><title>Errors</title>
    <para><constant>GL_INVALID_VALUE</constant> is generated if
    <parameter>shader</parameter> is not a value generated by
    OpenGL.</para>

    </refsect1>
    <refsect1 xml:id="associatedgets"><title>Associated Gets</title>
    <para><citerefentry><refentrytitle>glGetAttachedShaders</refentrytitle></citerefentry>
    with the program object to be queried</para>

    <para><citerefentry><refentrytitle>glGetShaderiv</refentrytitle></citerefentry>
    with arguments <parameter>shader</parameter> and
    <constant>GL_DELETE_STATUS</constant></para>

    <para><citerefentry><refentrytitle>glIsShader</refentrytitle></citerefentry></para>
    </refsect1>
    <refsect1 xml:id="versions">
        <title>API Version Support</title>
        <informaltable>
            <tgroup cols="5" align="left">
                <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="apifunchead.xml" xpointer="xpointer(/*/*)"/>
                <tbody>
                    <row>
                        <entry>glDeleteShader</entry>
                        <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="apiversion.xml" xpointer="xpointer(/*/*[@role='es20']/*)"/>
                    </row>
                </tbody>
            </tgroup>
        </informaltable>
    </refsect1>
    <refsect1 xml:id="seealso"><title>See Also</title>
    <para><citerefentry><refentrytitle>glCreateProgram</refentrytitle></citerefentry>,
    <citerefentry><refentrytitle>glCreateShader</refentrytitle></citerefentry>,
    <citerefentry><refentrytitle>glDetachShader</refentrytitle></citerefentry>,
    <citerefentry><refentrytitle>glUseProgram</refentrytitle></citerefentry></para>
    </refsect1>
    <refsect1 xml:id="Copyright"><title>Copyright</title>
        <para>
            Copyright <trademark class="copyright"/> 2003-2005 3Dlabs Inc. Ltd.
            Copyright <trademark class="copyright"/> 2010-2015 Khronos Group.
            This material may be distributed subject to the terms and conditions set forth in
            the Open Publication License, v 1.0, 8 June 1999.
            <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://opencontent.org/openpub/">http://opencontent.org/openpub/</link>.
        </para>
    </refsect1>
</refentry>
