Home | History | Annotate | Download | only in Test
      1 #version 400
      2 
      3 void main()
      4 {
      5     int o00 = 00;
      6     int o000 = 000;
      7     int o0000 = 0000;
      8     int o5 = 05;
      9     int o05 = 005;
     10     int o006 = 0006;
     11     int o7 = 07;
     12     int o58 = 072;
     13     int omax = 037777777777;
     14     int o8 = 08;                      // ERROR
     15     int o08 = 008;                    // ERROR
     16     int o009 = 0009;                  // ERROR
     17     int obig = 07324327323472347234;  // ERROR
     18     int omax1 = 040000000000;         // ERROR
     19 
     20     uint uo5 = 05u;
     21     uint uo6 = 06u;
     22     uint uo7 = 07u;
     23     uint uo8 = 08u;                   // ERROR
     24     uint uo9 = 09u;                   // ERROR
     25 
     26     int h0 = 0x0;
     27     int h00 = 0x00;
     28     int h000 = 0x000;
     29     int h1 = 0x1;
     30     int h2 = 0x00000002;
     31     int h300 = 0x000300;
     32     int hABCDEF = 0xAbCdEF;
     33     int hFFFFFFFF = 0xFFFFFFFF;
     34     int h12345678 = 0xBC614E;
     35     int hToBeOrNotToBe = 0x2b | ~0x2B;
     36 
     37     uint uh0 = 0x0u;
     38     uint uhg = (0xcu);
     39     uint uh000 = 0x000u;
     40     uint uh1 = 0x1u;
     41     uint uh2 = 0x00000002u;
     42     uint uh300 = 0x000300u;
     43     uint uhABCDEF = 0xAbCdEFu;
     44     uint uhFFFFFFFF = 0xFFFFFFFFu;
     45     uint uh12345678 = 0xBC614Eu;
     46     uint uhToBeOrNotToBe = 0x2bu | ~0x2BU;
     47 
     48     //int he1 = 0xG;                     // ERROR
     49     int he2 = 0x;                      // ERROR
     50     int hbig = 0xFFFFFFFF1;            // ERROR
     51 
     52     float f1 = 1.0;
     53     float f2 = 2.;
     54     float f3 = 3e0;
     55     float f4 = 40e-1;
     56     float f5 = 05.;
     57     float f6 = 006.;
     58     float f7 = .7e1;
     59     float f8 = 08e0;
     60     float f9 = .9e+1;
     61     float f10 = 10.0;
     62     float f11 = .011e+3;
     63     float f12 = .0012e4;
     64     float f543 = 000000543.;
     65     float f6789 = 00006789.;
     66     float f88 = 0000088.;
     67 
     68     float g1 = 5.3876e4;
     69     float g2 = 4000000000e-11;
     70     float g3 = 1e+5;
     71     float g4 = 7.321E-3;
     72     float g5 = 3.2E+4;
     73     float g6 = 0.5e-5;
     74     float g7 = 0.45;
     75     float g8 = 6.e10;
     76 
     77     double gf1 = 1.0lf;
     78     double gf2 = 2.Lf;
     79     double gf3 = .3e1lF;
     80     double gf4 = .4e1LF;
     81     float gf5 = 5.f;
     82     float gf6 = 6.F;
     83 
     84     //float e1 = 1..;        // ERROR
     85     //float e2 = 2.l;        // ERROR
     86     //float e3 = ..3;        // ERROR
     87     //float e4 = 4ee1;       // ERROR
     88     float e5 = 5f;         // ERROR
     89 }
     90 
     91 layout (location = 2) out vec4 c2;
     92 layout (location = 3u) out vec4 c3;
     93 layout (location = 04) out vec4 c4;
     94 layout (location = 005u) out vec4 c5;
     95 layout (location = 0x6) out vec4 c6;
     96 layout (location = 0x7u) out vec4 c7;
     97 
     98 uint g1 = 4294967296u; // ERROR, too big
     99 uint g2 = 4294967295u;
    100 uint g3 = 4294967294u;
    101 int g4 = 4294967296;   // ERROR, too big
    102 int g5 = 4294967295;
    103 int g6 = 4294967294;
    104 float inf1 = -1.#INF;
    105 float inf2 =  1.#INF;
    106 float inf3 = +1.#INF;
    107