• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1#version 450
2
3int nonuniformEXT;
4
5#extension GL_EXT_nonuniform_qualifier : enable
6
7nonuniformEXT in vec4 nu_inv4;
8nonuniformEXT float nu_gf;
9
10nonuniformEXT out vec4 nu_outv4;           // ERROR, out
11nonuniformEXT uniform vec4 nu_uv4;         // ERROR, uniform
12nonuniformEXT const float nu_constf = 1.0; // ERROR, const
13
14nonuniformEXT int foo(nonuniformEXT int nupi, nonuniformEXT out int f)
15{
16    return nupi;
17}
18
19void main()
20{
21    nonuniformEXT int nu_li;
22    nonuniformEXT const int nu_ci = 2; // ERROR, const
23
24    foo(nu_li, nu_li);
25    int table[5];
26    int a;
27    nu_li = nonuniformEXT(a) + nonuniformEXT(a * 2);
28    nu_li = nonuniformEXT(a, a);       // ERROR, too many arguments
29    nu_li = nonuniformEXT();           // ERROR, no arguments
30    nu_li = table[nonuniformEXT(3)];
31}
32layout(location=1) in struct S { float a; nonuniformEXT float b; } ins;  // ERROR, not on member
33layout(location=3) in inbName { float a; nonuniformEXT float b; } inb;   // ERROR, not on member
34