1e5c31af7Sopenharmony_ci# Generic invalid cases that don't fall into other categories
2e5c31af7Sopenharmony_ci
3e5c31af7Sopenharmony_cigroup c_cast "C-style casts"
4e5c31af7Sopenharmony_ci
5e5c31af7Sopenharmony_ci	case float_0
6e5c31af7Sopenharmony_ci		expect compile_fail
7e5c31af7Sopenharmony_ci		version 300 es
8e5c31af7Sopenharmony_ci		both ""
9e5c31af7Sopenharmony_ci			#version 300 es
10e5c31af7Sopenharmony_ci			precision highp float;
11e5c31af7Sopenharmony_ci			${DECLARATIONS}
12e5c31af7Sopenharmony_ci			void main ()
13e5c31af7Sopenharmony_ci			{
14e5c31af7Sopenharmony_ci				float a = 0.0;
15e5c31af7Sopenharmony_ci				float b = (float)a;
16e5c31af7Sopenharmony_ci				${POSITION_FRAG_COLOR} = vec4(0.0);
17e5c31af7Sopenharmony_ci			}
18e5c31af7Sopenharmony_ci		""
19e5c31af7Sopenharmony_ci	end
20e5c31af7Sopenharmony_ci
21e5c31af7Sopenharmony_ci	case float_1
22e5c31af7Sopenharmony_ci		expect compile_fail
23e5c31af7Sopenharmony_ci		version 300 es
24e5c31af7Sopenharmony_ci		both ""
25e5c31af7Sopenharmony_ci			#version 300 es
26e5c31af7Sopenharmony_ci			precision highp float;
27e5c31af7Sopenharmony_ci			${DECLARATIONS}
28e5c31af7Sopenharmony_ci			void main ()
29e5c31af7Sopenharmony_ci			{
30e5c31af7Sopenharmony_ci				int a = 0;
31e5c31af7Sopenharmony_ci				float b = (float)a;
32e5c31af7Sopenharmony_ci				${POSITION_FRAG_COLOR} = vec4(b);
33e5c31af7Sopenharmony_ci			}
34e5c31af7Sopenharmony_ci		""
35e5c31af7Sopenharmony_ci	end
36e5c31af7Sopenharmony_ci
37e5c31af7Sopenharmony_ci	case float_2
38e5c31af7Sopenharmony_ci		expect compile_fail
39e5c31af7Sopenharmony_ci		version 300 es
40e5c31af7Sopenharmony_ci		both ""
41e5c31af7Sopenharmony_ci			#version 300 es
42e5c31af7Sopenharmony_ci			${DECLARATIONS}
43e5c31af7Sopenharmony_ci			void main ()
44e5c31af7Sopenharmony_ci			{
45e5c31af7Sopenharmony_ci				highp float a = 0.0;
46e5c31af7Sopenharmony_ci				mediump float b = (mediump float)a;
47e5c31af7Sopenharmony_ci				${POSITION_FRAG_COLOR} = vec4(0.0);
48e5c31af7Sopenharmony_ci			}
49e5c31af7Sopenharmony_ci		""
50e5c31af7Sopenharmony_ci	end
51e5c31af7Sopenharmony_ci
52e5c31af7Sopenharmony_ci	case int
53e5c31af7Sopenharmony_ci		expect compile_fail
54e5c31af7Sopenharmony_ci		version 300 es
55e5c31af7Sopenharmony_ci		both ""
56e5c31af7Sopenharmony_ci			#version 300 es
57e5c31af7Sopenharmony_ci			precision highp float;
58e5c31af7Sopenharmony_ci			${DECLARATIONS}
59e5c31af7Sopenharmony_ci			void main ()
60e5c31af7Sopenharmony_ci			{
61e5c31af7Sopenharmony_ci				float a = 0.0;
62e5c31af7Sopenharmony_ci				int b = (int)a;
63e5c31af7Sopenharmony_ci				${POSITION_FRAG_COLOR} = vec4(0.0);
64e5c31af7Sopenharmony_ci			}
65e5c31af7Sopenharmony_ci		""
66e5c31af7Sopenharmony_ci	end
67e5c31af7Sopenharmony_ci
68e5c31af7Sopenharmony_ci	case uint
69e5c31af7Sopenharmony_ci		expect compile_fail
70e5c31af7Sopenharmony_ci		version 300 es
71e5c31af7Sopenharmony_ci		both ""
72e5c31af7Sopenharmony_ci			#version 300 es
73e5c31af7Sopenharmony_ci			precision highp float;
74e5c31af7Sopenharmony_ci			${DECLARATIONS}
75e5c31af7Sopenharmony_ci			void main ()
76e5c31af7Sopenharmony_ci			{
77e5c31af7Sopenharmony_ci				float a = 0.0;
78e5c31af7Sopenharmony_ci				uint b = (uint)a;
79e5c31af7Sopenharmony_ci				${POSITION_FRAG_COLOR} = vec4(0.0);
80e5c31af7Sopenharmony_ci			}
81e5c31af7Sopenharmony_ci		""
82e5c31af7Sopenharmony_ci	end
83e5c31af7Sopenharmony_ci
84e5c31af7Sopenharmony_ci	case bool
85e5c31af7Sopenharmony_ci		expect compile_fail
86e5c31af7Sopenharmony_ci		version 300 es
87e5c31af7Sopenharmony_ci		both ""
88e5c31af7Sopenharmony_ci			#version 300 es
89e5c31af7Sopenharmony_ci			precision highp float;
90e5c31af7Sopenharmony_ci			${DECLARATIONS}
91e5c31af7Sopenharmony_ci			void main ()
92e5c31af7Sopenharmony_ci			{
93e5c31af7Sopenharmony_ci				int a = 1;
94e5c31af7Sopenharmony_ci				bool b = (bool)a;
95e5c31af7Sopenharmony_ci				${POSITION_FRAG_COLOR} = vec4(0.0);
96e5c31af7Sopenharmony_ci			}
97e5c31af7Sopenharmony_ci		""
98e5c31af7Sopenharmony_ci	end
99e5c31af7Sopenharmony_ci
100e5c31af7Sopenharmony_ciend # casts
101