1
2float PixelShaderFunction()
3{
4    // TODO: All of the below should fail, although presently the first failure
5    // aborts compilation and the rest are skipped.  Having a separate test for
6    // each would be cumbersome.
7
8    vector<void, 2>    r00;  // cannot declare vectors of voids
9    matrix<void, 2, 3> r01;  // cannot declare matrices of voids
10
11    vector<float, 2, 3> r02;  // too many parameters to vector
12    matrix<float, 2>    r03;  // not enough parameters to matrix
13
14    int three = 3;
15    vector<void, three> r04; // size must be a literal constant integer
16    matrix<void, three, three> r05; // size must be a literal constant integer
17
18    vector<vector<int, 3>, 3> r06;  // type must be a simple scalar
19    vector<float3, 3> r07;          // type must be a simple scalar
20
21    return 0.0;
22}
23
24