1#version 410 core
2
3void main()
4{
5    gl_ViewportIndex = 7;
6}
7
8in gl_PerVertex {
9    float gl_PointSize;
10} myIn[];  // ERROR, can't redeclare a different name
11
12in gl_PerVertex {
13    float gl_PointSize;
14} gl_myIn[];  // ERROR, can't redeclare a different name
15
16in gl_PerVertex {
17    float gl_PointSize;
18} gl_in[];
19
20in gl_PerVertex {
21    float gl_PointSize;
22} gl_in[];     // ERROR, can't do it again
23
24out gl_PerVertex {
25    float gl_PointSize;
26};
27
28void foo()
29{
30    float p = gl_in[1].gl_PointSize;  // use of redeclared
31    gl_PointSize = p;                 // use of redeclared
32    vec4 v = gl_in[1].gl_Position;    // ERROR, not included in the redeclaration
33    gl_Position = vec4(1.0);          // ERROR, not included in the redeclaration
34}
35
36float foo5()
37{
38    return 4;  // implicit conversion of return type
39}
40