<html>
    <head>
      <base href="https://bugs.freedesktop.org/" />
    </head>
    <body><span class="vcard"><a class="email" href="mailto:dang@valvesoftware.com" title="Dan Ginsburg <dang@valvesoftware.com>"> <span class="fn">Dan Ginsburg</span></a>
</span> changed
              <a class="bz_bug_link 
          bz_status_RESOLVED  bz_closed"
   title="RESOLVED INVALID - interface blocks not working with #version 140 with #extension : GL_ARB_separate_shader_objects : enable"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=74852">bug 74852</a>
        <br>
             <table border="1" cellspacing="0" cellpadding="8">
          <tr>
            <th>What</th>
            <th>Removed</th>
            <th>Added</th>
          </tr>

         <tr>
           <td style="text-align:right;">Status</td>
           <td>NEW
           </td>
           <td>RESOLVED
           </td>
         </tr>

         <tr>
           <td style="text-align:right;">Resolution</td>
           <td>---
           </td>
           <td>INVALID
           </td>
         </tr></table>
      <p>
        <div>
            <b><a class="bz_bug_link 
          bz_status_RESOLVED  bz_closed"
   title="RESOLVED INVALID - interface blocks not working with #version 140 with #extension : GL_ARB_separate_shader_objects : enable"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=74852#c1">Comment # 1</a>
              on <a class="bz_bug_link 
          bz_status_RESOLVED  bz_closed"
   title="RESOLVED INVALID - interface blocks not working with #version 140 with #extension : GL_ARB_separate_shader_objects : enable"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=74852">bug 74852</a>
              from <span class="vcard"><a class="email" href="mailto:dang@valvesoftware.com" title="Dan Ginsburg <dang@valvesoftware.com>"> <span class="fn">Dan Ginsburg</span></a>
</span></b>
        <pre>I am completely wrong about this bug.  #version 140 and
GL_ARB_separate_shader_objects do not support redeclaration of interface
blocks.  I will fix this on our side.

The relevant language from the GL_ARB_separate_shader_objects spec:

      When using vertex or fragment shaders with version 140 or lower in
      separable programs, the language doesn't support input and output blocks
      or redeclaration of gl_PerVertex or gl_PerFragment.  In such cases, an
      implicit block redeclaration is formed from the set of vertex shader
      outputs or fragment shader inputs redeclared according to Section 7.7 of
      the OpenGL Shading Language Specification.  The order of individual
      variable redeclarations does not affect the resulting implicit block
      redeclaration.  The block matching rules described above are then
      applied to such implicit block redeclarations.  Note that an implicit
      block redeclaration is never considered to match with an explicit block
      redeclaration.

Certain other implementations require the interface block definition in
#version 140, but mesa has it right and the other implementations are
incorrect.</pre>
        </div>
      </p>
      <hr>
      <span>You are receiving this mail because:</span>
      
      <ul>
          <li>You are the QA Contact for the bug.</li>
      </ul>
    </body>
</html>