450.tese
Warning, version 450 is not yet complete; most version-specific features are present, but some are missing.

Shader version: 450
input primitive = none
vertex spacing = none
triangle order = none
0:? Sequence
0:11  Function Definition: main( (global void)
0:11    Function Parameters: 
0:13    Sequence
0:13      move second child to first child (temp float)
0:13        direct index (temp float CullDistance)
0:13          gl_CullDistance: direct index for structure (out 3-element array of float CullDistance)
0:13            'anon@0' (out block{out 3-element array of float CullDistance gl_CullDistance})
0:13            Constant:
0:13              3 (const uint)
0:13          Constant:
0:13            2 (const int)
0:13        direct index (temp float CullDistance)
0:13          gl_CullDistance: direct index for structure (in 3-element array of float CullDistance)
0:13            direct index (temp block{in 3-element array of float CullDistance gl_CullDistance})
0:13              'gl_in' (in 32-element array of block{in 3-element array of float CullDistance gl_CullDistance})
0:13              Constant:
0:13                1 (const int)
0:13            Constant:
0:13              0 (const int)
0:13          Constant:
0:13            2 (const int)
0:?   Linker Objects
0:?     'gl_in' (in 32-element array of block{in 3-element array of float CullDistance gl_CullDistance})
0:?     'anon@0' (out block{out 3-element array of float CullDistance gl_CullDistance})


Linked tessellation evaluation stage:

ERROR: Linking tessellation evaluation stage: At least one shader must specify an input layout primitive

Shader version: 450
input primitive = none
vertex spacing = equal_spacing
triangle order = ccw
0:? Sequence
0:11  Function Definition: main( (global void)
0:11    Function Parameters: 
0:13    Sequence
0:13      move second child to first child (temp float)
0:13        direct index (temp float CullDistance)
0:13          gl_CullDistance: direct index for structure (out 3-element array of float CullDistance)
0:13            'anon@0' (out block{out 3-element array of float CullDistance gl_CullDistance})
0:13            Constant:
0:13              3 (const uint)
0:13          Constant:
0:13            2 (const int)
0:13        direct index (temp float CullDistance)
0:13          gl_CullDistance: direct index for structure (in 3-element array of float CullDistance)
0:13            direct index (temp block{in 3-element array of float CullDistance gl_CullDistance})
0:13              'gl_in' (in 32-element array of block{in 3-element array of float CullDistance gl_CullDistance})
0:13              Constant:
0:13                1 (const int)
0:13            Constant:
0:13              0 (const int)
0:13          Constant:
0:13            2 (const int)
0:?   Linker Objects
0:?     'gl_in' (in 32-element array of block{in 3-element array of float CullDistance gl_CullDistance})
0:?     'anon@0' (out block{out 3-element array of float CullDistance gl_CullDistance})

