1// This will test having the PCF input to the domain shader not be given at the end of
2// the argument list.  We must move it to the end of the linkage in this case.
3
4struct ds_in_t
5{
6    float4 pos  : POSITION;
7    float3 norm : TEXCOORD0;
8};
9
10struct pcf_in_t
11{
12    float flTessFactor [3]   : SV_TessFactor;
13    float flInsideTessFactor : SV_InsideTessFactor;
14    float foo : PCF_FOO;
15};
16
17struct gs_in_t
18{
19    float4 pos  : POSITION;
20    float3 norm : TEXCOORD0;
21};
22
23[domain ( "tri" )]
24gs_in_t main (pcf_in_t pcf_data, const OutputPatch <ds_in_t, 3> i, float3 tesscoord : SV_DomainLocation)
25{
26    gs_in_t o;
27
28    o.pos  = i[0].pos + tesscoord.x;
29    o.norm = i[0].norm + tesscoord.y;
30
31    tesscoord.z;
32
33    return o;
34}
35
36