From: Nikolay Sivov nsivov@codeweavers.com
--- tests/hlsl/technique-fx_2.shader_test | 35 +++++++++++ tests/hlsl/technique-fx_4.shader_test | 35 +++++++++++ tests/hlsl/technique-fx_5.shader_test | 84 +++++++++++++++++++++++++++ 3 files changed, 154 insertions(+)
diff --git a/tests/hlsl/technique-fx_2.shader_test b/tests/hlsl/technique-fx_2.shader_test index b84bbc167..af4cfb794 100644 --- a/tests/hlsl/technique-fx_2.shader_test +++ b/tests/hlsl/technique-fx_2.shader_test @@ -169,3 +169,38 @@ fxgroup group { technique10 {} } + +[effect todo] +// Annotations on techniques +technique t1 < int a = 1; > {} +technique t2 < int a = 2; int t1 = 3; int t2 = 4; > {} + +[effect todo] +// Annotations on passes +technique t1 < int a = 1; > +{ + pass < int t1 = 2; > {} +} + +[effect todo] +// Using names from the global scope +float a; + +technique t1 < int a = 1; > +{ + pass < int a = 2; > {} +} + +[effect fail] +// Without closing semicolon +technique t1 < int a = 1 > {} + +[effect fail] +// Redefinition +technique < int a = 0; float a = 1.0; > {} + +[effect fail] +technique +{ + pass < int a = 0; float a = 1.0; > {} +} diff --git a/tests/hlsl/technique-fx_4.shader_test b/tests/hlsl/technique-fx_4.shader_test index cdc5746e0..fde5e045f 100644 --- a/tests/hlsl/technique-fx_4.shader_test +++ b/tests/hlsl/technique-fx_4.shader_test @@ -142,3 +142,38 @@ fxgroup group { technique10 {} } + +[effect todo] +// Annotations on techniques +technique10 t1 < int a = 1; > {} +technique10 t2 < int a = 2; int t1 = 3; int t2 = 4; > {} + +[effect todo] +// Annotations on passes +technique10 t1 < int a = 1; > +{ + pass < int t1 = 2; > {} +} + +[effect todo] +// Using names from the global scope +float a; + +technique10 t1 < int a = 1; > +{ + pass < int a = 2; > {} +} + +[effect fail] +// Without closing semicolon +technique10 t1 < int a = 1 > {} + +[effect fail] +// Redefinition +technique10 < int a = 0; float a = 1.0; > {} + +[effect fail] +technique10 +{ + pass < int a = 0; float a = 1.0; > {} +} diff --git a/tests/hlsl/technique-fx_5.shader_test b/tests/hlsl/technique-fx_5.shader_test index c1e37ff17..f7851f9a8 100644 --- a/tests/hlsl/technique-fx_5.shader_test +++ b/tests/hlsl/technique-fx_5.shader_test @@ -184,3 +184,87 @@ fxgroup group2 { technique11 tech0 {} } + +[effect todo] +// Annotations on groups +fxgroup group1 <> +{ + technique11 {} +} + +fxgroup group2 < int a = 0; > +{ + technique11 {} +} + +fxgroup group3 < int a = 0; > +{ + technique11 {} +} + +[effect todo] +struct s +{ + int a; +}; + +typedef struct s s_type; + +fxgroup group1 < struct s a = (struct s)0; > +{ + technique11 {} +} + +fxgroup group2 < s_type a = (s_type)0; > +{ + technique11 {} +} + +[effect todo] +// Annotations on techniques +fxgroup group1 < int a = 0; > +{ + technique11 t1 < int a = 1; > {} + technique11 t2 < int a = 2; int t1 = 3; int t2 = 4; > {} +} + +[effect todo] +// Annotations on passes +fxgroup group1 < int a = 0; > +{ + technique11 t1 < int a = 1; > + { + pass < int t1 = 2; int group1 = 3; > {} + } +} + +[effect todo] +// Using names from the global scope +float a; + +fxgroup group1 < int a = 0; > +{ + technique11 t1 < int a = 1; > + { + pass < int a = 2; > {} + } +} + +[effect fail] +// Without closing semicolon +fxgroup group1 < int a = 0 > +{ + technique11 {} +} + +[effect fail] +// Redefinition +fxgroup group1 < int a = 0; float a = 1.0; > +{ + technique11 {} +} + +fxgroup group1 +{ + technique11 < int a = 0; float a = 1.0; > {} +}