110scope.vert
ERROR: 0:5: 'a' : redefinition 
ERROR: 0:34: 'f' : can't call user function from global scope 
ERROR: 0:57: 'z' : undeclared identifier 
ERROR: 0:57: 'z' : redefinition 
ERROR: 4 compilation errors.  No code generated.


Shader version: 110
ERROR: node is still EOpNull!
0:3  Function Definition: f(i1;i1;i1; (global int)
0:3    Function Parameters: 
0:3      'a' (in int)
0:3      'b' (in int)
0:3      'c' (in int)
0:?     Sequence
0:8      Sequence
0:8        Sequence
0:8          move second child to first child (temp float)
0:8            'a' (temp float)
0:8            add (temp float)
0:8              Convert int to float (temp float)
0:8                'a' (in int)
0:8              Constant:
0:8                1.000000
0:11      Branch: Return with expression
0:11        'a' (in int)
0:25  Function Definition: cos(f1; (global float)
0:25    Function Parameters: 
0:25      'x' (in float)
0:27    Sequence
0:27      Branch: Return with expression
0:27        Constant:
0:27          1.000000
0:29  Function Definition: radians(b1; (global bool)
0:29    Function Parameters: 
0:29      'x' (in bool)
0:31    Sequence
0:31      Branch: Return with expression
0:31        Constant:
0:31          true (const bool)
0:34  Sequence
0:34    move second child to first child (temp int)
0:34      'gi' (global int)
0:34      Function Call: f(i1;i1;i1; (global int)
0:34        Constant:
0:34          1 (const int)
0:34        Constant:
0:34          2 (const int)
0:34        Constant:
0:34          3 (const int)
0:36  Function Definition: main( (global void)
0:36    Function Parameters: 
0:?     Sequence
0:39      Function Call: g( (temp int)
0:42      'sin' (temp float)
0:43      Function Call: sin(f1; (global float)
0:43        Constant:
0:43          0.700000
0:44      Function Call: f(i1;i1;i1; (global int)
0:44        Constant:
0:44          1 (const int)
0:44        Constant:
0:44          2 (const int)
0:44        Constant:
0:44          3 (const int)
0:47      move second child to first child (temp float)
0:47        'f' (temp float)
0:47        Constant:
0:47          3.000000
0:49      move second child to first child (temp 4-component vector of float)
0:49        'gl_Position' (gl_Position 4-component vector of float Position)
0:49        Construct vec4 (temp 4-component vector of float)
0:49          'f' (temp float)
0:51      Sequence
0:51        Sequence
0:51          move second child to first child (temp int)
0:51            'f' (temp int)
0:51            Constant:
0:51              0 (const int)
0:51        Loop with condition tested first
0:51          Loop Condition
0:51          Compare Less Than (temp bool)
0:51            'f' (temp int)
0:51            Constant:
0:51              10 (const int)
0:51          Loop Body
0:52          Pre-Increment (temp int)
0:52            'f' (temp int)
0:51          Loop Terminal Expression
0:51          Pre-Increment (temp int)
0:51            'f' (temp int)
0:54      Sequence
0:54        move second child to first child (temp int)
0:54          'x' (temp int)
0:54          Constant:
0:54            1 (const int)
0:56      Sequence
0:56        Sequence
0:56          move second child to first child (temp float)
0:56            'x' (temp float)
0:56            Constant:
0:56              2.000000
0:56          move second child to first child (temp float)
0:56            'y' (temp float)
0:56            'x' (temp float)
0:60      Sequence
0:60        Sequence
0:60          move second child to first child (temp int)
0:60            'x' (temp int)
0:60            'x' (temp int)
0:68      Sequence
0:68        Sequence
0:68          move second child to first child (temp structure{temp int x})
0:68            'S' (temp structure{temp int x})
0:68            Constant:
0:68              0 (const int)
0:69        x: direct index for structure (temp int)
0:69          'S' (temp structure{temp int x})
0:69          Constant:
0:69            0 (const int)
0:73      Constant:
0:73        183.346494
0:?   Linker Objects
0:?     'b' (global bool)
0:?     'c' (global bool)
0:?     'f' (global float)
0:?     'tan' (global float)
0:?     'gi' (global int)


Linked vertex stage:


Shader version: 110
ERROR: node is still EOpNull!
0:3  Function Definition: f(i1;i1;i1; (global int)
0:3    Function Parameters: 
0:3      'a' (in int)
0:3      'b' (in int)
0:3      'c' (in int)
0:?     Sequence
0:8      Sequence
0:8        Sequence
0:8          move second child to first child (temp float)
0:8            'a' (temp float)
0:8            add (temp float)
0:8              Convert int to float (temp float)
0:8                'a' (in int)
0:8              Constant:
0:8                1.000000
0:11      Branch: Return with expression
0:11        'a' (in int)
0:25  Function Definition: cos(f1; (global float)
0:25    Function Parameters: 
0:25      'x' (in float)
0:27    Sequence
0:27      Branch: Return with expression
0:27        Constant:
0:27          1.000000
0:29  Function Definition: radians(b1; (global bool)
0:29    Function Parameters: 
0:29      'x' (in bool)
0:31    Sequence
0:31      Branch: Return with expression
0:31        Constant:
0:31          true (const bool)
0:34  Sequence
0:34    move second child to first child (temp int)
0:34      'gi' (global int)
0:34      Function Call: f(i1;i1;i1; (global int)
0:34        Constant:
0:34          1 (const int)
0:34        Constant:
0:34          2 (const int)
0:34        Constant:
0:34          3 (const int)
0:36  Function Definition: main( (global void)
0:36    Function Parameters: 
0:?     Sequence
0:39      Function Call: g( (temp int)
0:42      'sin' (temp float)
0:43      Function Call: sin(f1; (global float)
0:43        Constant:
0:43          0.700000
0:44      Function Call: f(i1;i1;i1; (global int)
0:44        Constant:
0:44          1 (const int)
0:44        Constant:
0:44          2 (const int)
0:44        Constant:
0:44          3 (const int)
0:47      move second child to first child (temp float)
0:47        'f' (temp float)
0:47        Constant:
0:47          3.000000
0:49      move second child to first child (temp 4-component vector of float)
0:49        'gl_Position' (gl_Position 4-component vector of float Position)
0:49        Construct vec4 (temp 4-component vector of float)
0:49          'f' (temp float)
0:51      Sequence
0:51        Sequence
0:51          move second child to first child (temp int)
0:51            'f' (temp int)
0:51            Constant:
0:51              0 (const int)
0:51        Loop with condition tested first
0:51          Loop Condition
0:51          Compare Less Than (temp bool)
0:51            'f' (temp int)
0:51            Constant:
0:51              10 (const int)
0:51          Loop Body
0:52          Pre-Increment (temp int)
0:52            'f' (temp int)
0:51          Loop Terminal Expression
0:51          Pre-Increment (temp int)
0:51            'f' (temp int)
0:54      Sequence
0:54        move second child to first child (temp int)
0:54          'x' (temp int)
0:54          Constant:
0:54            1 (const int)
0:56      Sequence
0:56        Sequence
0:56          move second child to first child (temp float)
0:56            'x' (temp float)
0:56            Constant:
0:56              2.000000
0:56          move second child to first child (temp float)
0:56            'y' (temp float)
0:56            'x' (temp float)
0:60      Sequence
0:60        Sequence
0:60          move second child to first child (temp int)
0:60            'x' (temp int)
0:60            'x' (temp int)
0:68      Sequence
0:68        Sequence
0:68          move second child to first child (temp structure{temp int x})
0:68            'S' (temp structure{temp int x})
0:68            Constant:
0:68              0 (const int)
0:69        x: direct index for structure (temp int)
0:69          'S' (temp structure{temp int x})
0:69          Constant:
0:69            0 (const int)
0:73      Constant:
0:73        183.346494
0:?   Linker Objects
0:?     'b' (global bool)
0:?     'c' (global bool)
0:?     'f' (global float)
0:?     'tan' (global float)
0:?     'gi' (global int)

