1e5c31af7Sopenharmony_cicase float_input
2e5c31af7Sopenharmony_ci	version 300 es
3e5c31af7Sopenharmony_ci	values
4e5c31af7Sopenharmony_ci	{
5e5c31af7Sopenharmony_ci		input float in0		= [ 1.123 | 0.75 | -512.0 | -72.13 | 199.91 | -1.123 | -0.75 | 512.0 | -72.13 | -199.91 ];
6e5c31af7Sopenharmony_ci		output float out0	= [ 1.123 | 0.75 | -512.0 | -72.13 | 199.91 | -1.123 | -0.75 | 512.0 | -72.13 | -199.91 ];
7e5c31af7Sopenharmony_ci	}
8e5c31af7Sopenharmony_ci
9e5c31af7Sopenharmony_ci	both ""
10e5c31af7Sopenharmony_ci		#version 300 es
11e5c31af7Sopenharmony_ci		precision highp float;
12e5c31af7Sopenharmony_ci		${DECLARATIONS}
13e5c31af7Sopenharmony_ci		void main()
14e5c31af7Sopenharmony_ci		{
15e5c31af7Sopenharmony_ci			out0 = in0;
16e5c31af7Sopenharmony_ci			${OUTPUT}
17e5c31af7Sopenharmony_ci		}
18e5c31af7Sopenharmony_ci	""
19e5c31af7Sopenharmony_ciend
20e5c31af7Sopenharmony_ci
21e5c31af7Sopenharmony_cicase float_uniform
22e5c31af7Sopenharmony_ci	version 300 es
23e5c31af7Sopenharmony_ci	values
24e5c31af7Sopenharmony_ci	{
25e5c31af7Sopenharmony_ci		uniform float uni0	= [ 1.123 | 0.75 | -512.0 | -72.13 | 199.91 ];
26e5c31af7Sopenharmony_ci		output float out0	= [ 1.123 | 0.75 | -512.0 | -72.13 | 199.91 ];
27e5c31af7Sopenharmony_ci	}
28e5c31af7Sopenharmony_ci
29e5c31af7Sopenharmony_ci	both ""
30e5c31af7Sopenharmony_ci		#version 300 es
31e5c31af7Sopenharmony_ci		precision highp float;
32e5c31af7Sopenharmony_ci		${DECLARATIONS}
33e5c31af7Sopenharmony_ci		uniform float uni0;
34e5c31af7Sopenharmony_ci		void main()
35e5c31af7Sopenharmony_ci		{
36e5c31af7Sopenharmony_ci			out0 = uni0;
37e5c31af7Sopenharmony_ci			${OUTPUT}
38e5c31af7Sopenharmony_ci		}
39e5c31af7Sopenharmony_ci	""
40e5c31af7Sopenharmony_ciend
41e5c31af7Sopenharmony_ci
42e5c31af7Sopenharmony_cicase float_0
43e5c31af7Sopenharmony_ci	version 300 es
44e5c31af7Sopenharmony_ci	values { output float out0 = 1.123; }
45e5c31af7Sopenharmony_ci	both ""
46e5c31af7Sopenharmony_ci		#version 300 es
47e5c31af7Sopenharmony_ci		precision highp float;
48e5c31af7Sopenharmony_ci		${DECLARATIONS}
49e5c31af7Sopenharmony_ci		void main()
50e5c31af7Sopenharmony_ci		{
51e5c31af7Sopenharmony_ci			out0 = +1.123;
52e5c31af7Sopenharmony_ci			${OUTPUT}
53e5c31af7Sopenharmony_ci		}
54e5c31af7Sopenharmony_ci	""
55e5c31af7Sopenharmony_ciend
56e5c31af7Sopenharmony_ci
57e5c31af7Sopenharmony_cicase float_1
58e5c31af7Sopenharmony_ci	version 300 es
59e5c31af7Sopenharmony_ci	values { output float out0 = -1.123; }
60e5c31af7Sopenharmony_ci	both ""
61e5c31af7Sopenharmony_ci		#version 300 es
62e5c31af7Sopenharmony_ci		precision highp float;
63e5c31af7Sopenharmony_ci		${DECLARATIONS}
64e5c31af7Sopenharmony_ci		void main()
65e5c31af7Sopenharmony_ci		{
66e5c31af7Sopenharmony_ci			out0 = -1.123;
67e5c31af7Sopenharmony_ci			${OUTPUT}
68e5c31af7Sopenharmony_ci		}
69e5c31af7Sopenharmony_ci	""
70e5c31af7Sopenharmony_ciend
71e5c31af7Sopenharmony_ci
72e5c31af7Sopenharmony_cicase float_2
73e5c31af7Sopenharmony_ci	version 300 es
74e5c31af7Sopenharmony_ci	values { output float out0 = 123.0; }
75e5c31af7Sopenharmony_ci	both ""
76e5c31af7Sopenharmony_ci		#version 300 es
77e5c31af7Sopenharmony_ci		precision highp float;
78e5c31af7Sopenharmony_ci		${DECLARATIONS}
79e5c31af7Sopenharmony_ci		void main()
80e5c31af7Sopenharmony_ci		{
81e5c31af7Sopenharmony_ci			out0 = 123.;
82e5c31af7Sopenharmony_ci			${OUTPUT}
83e5c31af7Sopenharmony_ci		}
84e5c31af7Sopenharmony_ci	""
85e5c31af7Sopenharmony_ciend
86e5c31af7Sopenharmony_ci
87e5c31af7Sopenharmony_cicase float_3
88e5c31af7Sopenharmony_ci	version 300 es
89e5c31af7Sopenharmony_ci	values { output float out0 = 0.123; }
90e5c31af7Sopenharmony_ci	both ""
91e5c31af7Sopenharmony_ci		#version 300 es
92e5c31af7Sopenharmony_ci		precision highp float;
93e5c31af7Sopenharmony_ci		${DECLARATIONS}
94e5c31af7Sopenharmony_ci		void main()
95e5c31af7Sopenharmony_ci		{
96e5c31af7Sopenharmony_ci			out0 = .123;
97e5c31af7Sopenharmony_ci			${OUTPUT}
98e5c31af7Sopenharmony_ci		}
99e5c31af7Sopenharmony_ci	""
100e5c31af7Sopenharmony_ciend
101e5c31af7Sopenharmony_ci
102e5c31af7Sopenharmony_cicase float_4
103e5c31af7Sopenharmony_ci	version 300 es
104e5c31af7Sopenharmony_ci	values { output float out0 = 123.0; }
105e5c31af7Sopenharmony_ci	both ""
106e5c31af7Sopenharmony_ci		#version 300 es
107e5c31af7Sopenharmony_ci		precision highp float;
108e5c31af7Sopenharmony_ci		${DECLARATIONS}
109e5c31af7Sopenharmony_ci		void main()
110e5c31af7Sopenharmony_ci		{
111e5c31af7Sopenharmony_ci			out0 = 1.23e+2;
112e5c31af7Sopenharmony_ci			${OUTPUT}
113e5c31af7Sopenharmony_ci		}
114e5c31af7Sopenharmony_ci	""
115e5c31af7Sopenharmony_ciend
116e5c31af7Sopenharmony_ci
117e5c31af7Sopenharmony_cicase float_5
118e5c31af7Sopenharmony_ci	version 300 es
119e5c31af7Sopenharmony_ci	values { output float out0 = -123.0; }
120e5c31af7Sopenharmony_ci	both ""
121e5c31af7Sopenharmony_ci		#version 300 es
122e5c31af7Sopenharmony_ci		precision highp float;
123e5c31af7Sopenharmony_ci		${DECLARATIONS}
124e5c31af7Sopenharmony_ci		void main()
125e5c31af7Sopenharmony_ci		{
126e5c31af7Sopenharmony_ci			out0 = -1.23E+2;
127e5c31af7Sopenharmony_ci			${OUTPUT}
128e5c31af7Sopenharmony_ci		}
129e5c31af7Sopenharmony_ci	""
130e5c31af7Sopenharmony_ciend
131e5c31af7Sopenharmony_ci
132e5c31af7Sopenharmony_cicase float_6
133e5c31af7Sopenharmony_ci	version 300 es
134e5c31af7Sopenharmony_ci	values { output float out0 = -123.0; }
135e5c31af7Sopenharmony_ci	both ""
136e5c31af7Sopenharmony_ci		#version 300 es
137e5c31af7Sopenharmony_ci		precision highp float;
138e5c31af7Sopenharmony_ci		${DECLARATIONS}
139e5c31af7Sopenharmony_ci		void main()
140e5c31af7Sopenharmony_ci		{
141e5c31af7Sopenharmony_ci			out0 = -1.23e2;
142e5c31af7Sopenharmony_ci			${OUTPUT}
143e5c31af7Sopenharmony_ci		}
144e5c31af7Sopenharmony_ci	""
145e5c31af7Sopenharmony_ciend
146e5c31af7Sopenharmony_ci
147e5c31af7Sopenharmony_cicase float_7
148e5c31af7Sopenharmony_ci	version 300 es
149e5c31af7Sopenharmony_ci	values { output float out0 = 0.123; }
150e5c31af7Sopenharmony_ci	both ""
151e5c31af7Sopenharmony_ci		#version 300 es
152e5c31af7Sopenharmony_ci		precision highp float;
153e5c31af7Sopenharmony_ci		${DECLARATIONS}
154e5c31af7Sopenharmony_ci		void main()
155e5c31af7Sopenharmony_ci		{
156e5c31af7Sopenharmony_ci			out0 = 1.23e-1;
157e5c31af7Sopenharmony_ci			${OUTPUT}
158e5c31af7Sopenharmony_ci		}
159e5c31af7Sopenharmony_ci	""
160e5c31af7Sopenharmony_ciend
161e5c31af7Sopenharmony_ci
162e5c31af7Sopenharmony_cicase float_8
163e5c31af7Sopenharmony_ci	version 300 es
164e5c31af7Sopenharmony_ci	values { output float out0 = 1000.0; }
165e5c31af7Sopenharmony_ci	both ""
166e5c31af7Sopenharmony_ci		#version 300 es
167e5c31af7Sopenharmony_ci		precision highp float;
168e5c31af7Sopenharmony_ci		${DECLARATIONS}
169e5c31af7Sopenharmony_ci		void main()
170e5c31af7Sopenharmony_ci		{
171e5c31af7Sopenharmony_ci			out0 = 1e3;
172e5c31af7Sopenharmony_ci			${OUTPUT}
173e5c31af7Sopenharmony_ci		}
174e5c31af7Sopenharmony_ci	""
175e5c31af7Sopenharmony_ciend
176e5c31af7Sopenharmony_ci
177e5c31af7Sopenharmony_cicase float_f_suffix_0
178e5c31af7Sopenharmony_ci	version 300 es
179e5c31af7Sopenharmony_ci	values { output float out0 = 1.0; }
180e5c31af7Sopenharmony_ci	both ""
181e5c31af7Sopenharmony_ci		#version 300 es
182e5c31af7Sopenharmony_ci		precision mediump float;
183e5c31af7Sopenharmony_ci		${DECLARATIONS}
184e5c31af7Sopenharmony_ci		void main ()
185e5c31af7Sopenharmony_ci		{
186e5c31af7Sopenharmony_ci			${SETUP}
187e5c31af7Sopenharmony_ci			float value = 1.0f;
188e5c31af7Sopenharmony_ci			out0 = value;
189e5c31af7Sopenharmony_ci			${OUTPUT}
190e5c31af7Sopenharmony_ci		}
191e5c31af7Sopenharmony_ci	""
192e5c31af7Sopenharmony_ciend
193e5c31af7Sopenharmony_ci
194e5c31af7Sopenharmony_cicase float_f_suffix_1
195e5c31af7Sopenharmony_ci	version 300 es
196e5c31af7Sopenharmony_ci	values { output float out0 = 1.0; }
197e5c31af7Sopenharmony_ci	both ""
198e5c31af7Sopenharmony_ci		#version 300 es
199e5c31af7Sopenharmony_ci		precision mediump float;
200e5c31af7Sopenharmony_ci		${DECLARATIONS}
201e5c31af7Sopenharmony_ci		void main ()
202e5c31af7Sopenharmony_ci		{
203e5c31af7Sopenharmony_ci			${SETUP}
204e5c31af7Sopenharmony_ci			float value = 1.0F;
205e5c31af7Sopenharmony_ci			out0 = value;
206e5c31af7Sopenharmony_ci			${OUTPUT}
207e5c31af7Sopenharmony_ci		}
208e5c31af7Sopenharmony_ci	""
209e5c31af7Sopenharmony_ciend
210e5c31af7Sopenharmony_ci
211e5c31af7Sopenharmony_cicase int_0
212e5c31af7Sopenharmony_ci	version 300 es
213e5c31af7Sopenharmony_ci	values { output int out0 = 123; }
214e5c31af7Sopenharmony_ci	both ""
215e5c31af7Sopenharmony_ci		#version 300 es
216e5c31af7Sopenharmony_ci		precision highp float;
217e5c31af7Sopenharmony_ci		${DECLARATIONS}
218e5c31af7Sopenharmony_ci		void main()
219e5c31af7Sopenharmony_ci		{
220e5c31af7Sopenharmony_ci			out0 = 123;
221e5c31af7Sopenharmony_ci			${OUTPUT}
222e5c31af7Sopenharmony_ci		}
223e5c31af7Sopenharmony_ci	""
224e5c31af7Sopenharmony_ciend
225e5c31af7Sopenharmony_ci
226e5c31af7Sopenharmony_cicase int_1
227e5c31af7Sopenharmony_ci	version 300 es
228e5c31af7Sopenharmony_ci	values { output int out0 = -321; }
229e5c31af7Sopenharmony_ci	both ""
230e5c31af7Sopenharmony_ci		#version 300 es
231e5c31af7Sopenharmony_ci		precision highp float;
232e5c31af7Sopenharmony_ci		${DECLARATIONS}
233e5c31af7Sopenharmony_ci		void main()
234e5c31af7Sopenharmony_ci		{
235e5c31af7Sopenharmony_ci			out0 = -321;
236e5c31af7Sopenharmony_ci			${OUTPUT}
237e5c31af7Sopenharmony_ci		}
238e5c31af7Sopenharmony_ci	""
239e5c31af7Sopenharmony_ciend
240e5c31af7Sopenharmony_ci
241e5c31af7Sopenharmony_cicase int_2
242e5c31af7Sopenharmony_ci	version 300 es
243e5c31af7Sopenharmony_ci	values { output int out0 = 123; }
244e5c31af7Sopenharmony_ci	both ""
245e5c31af7Sopenharmony_ci		#version 300 es
246e5c31af7Sopenharmony_ci		precision highp float;
247e5c31af7Sopenharmony_ci		${DECLARATIONS}
248e5c31af7Sopenharmony_ci		void main()
249e5c31af7Sopenharmony_ci		{
250e5c31af7Sopenharmony_ci			out0 = 0x7B;
251e5c31af7Sopenharmony_ci			${OUTPUT}
252e5c31af7Sopenharmony_ci		}
253e5c31af7Sopenharmony_ci	""
254e5c31af7Sopenharmony_ciend
255e5c31af7Sopenharmony_ci
256e5c31af7Sopenharmony_cicase int_3
257e5c31af7Sopenharmony_ci	version 300 es
258e5c31af7Sopenharmony_ci	values { output int out0 = 123; }
259e5c31af7Sopenharmony_ci	both ""
260e5c31af7Sopenharmony_ci		#version 300 es
261e5c31af7Sopenharmony_ci		precision highp float;
262e5c31af7Sopenharmony_ci		${DECLARATIONS}
263e5c31af7Sopenharmony_ci		void main()
264e5c31af7Sopenharmony_ci		{
265e5c31af7Sopenharmony_ci			out0 = 0X7b;
266e5c31af7Sopenharmony_ci			${OUTPUT}
267e5c31af7Sopenharmony_ci		}
268e5c31af7Sopenharmony_ci	""
269e5c31af7Sopenharmony_ciend
270e5c31af7Sopenharmony_ci
271e5c31af7Sopenharmony_cicase int_4
272e5c31af7Sopenharmony_ci	version 300 es
273e5c31af7Sopenharmony_ci	values { output int out0 = 123; }
274e5c31af7Sopenharmony_ci	both ""
275e5c31af7Sopenharmony_ci		#version 300 es
276e5c31af7Sopenharmony_ci		precision highp float;
277e5c31af7Sopenharmony_ci		${DECLARATIONS}
278e5c31af7Sopenharmony_ci		void main()
279e5c31af7Sopenharmony_ci		{
280e5c31af7Sopenharmony_ci			out0 = 0173;
281e5c31af7Sopenharmony_ci			${OUTPUT}
282e5c31af7Sopenharmony_ci		}
283e5c31af7Sopenharmony_ci	""
284e5c31af7Sopenharmony_ciend
285e5c31af7Sopenharmony_ci
286e5c31af7Sopenharmony_cicase bool_0
287e5c31af7Sopenharmony_ci	version 300 es
288e5c31af7Sopenharmony_ci	values { output bool out0 = true; }
289e5c31af7Sopenharmony_ci	both ""
290e5c31af7Sopenharmony_ci		#version 300 es
291e5c31af7Sopenharmony_ci		precision highp float;
292e5c31af7Sopenharmony_ci		${DECLARATIONS}
293e5c31af7Sopenharmony_ci		void main()
294e5c31af7Sopenharmony_ci		{
295e5c31af7Sopenharmony_ci			out0 = true;
296e5c31af7Sopenharmony_ci			${OUTPUT}
297e5c31af7Sopenharmony_ci		}
298e5c31af7Sopenharmony_ci	""
299e5c31af7Sopenharmony_ciend
300e5c31af7Sopenharmony_ci
301e5c31af7Sopenharmony_cicase bool_1
302e5c31af7Sopenharmony_ci	version 300 es
303e5c31af7Sopenharmony_ci	values { output bool out0 = false; }
304e5c31af7Sopenharmony_ci	both ""
305e5c31af7Sopenharmony_ci		#version 300 es
306e5c31af7Sopenharmony_ci		precision highp float;
307e5c31af7Sopenharmony_ci		${DECLARATIONS}
308e5c31af7Sopenharmony_ci		void main()
309e5c31af7Sopenharmony_ci		{
310e5c31af7Sopenharmony_ci			out0 = false;
311e5c31af7Sopenharmony_ci			${OUTPUT}
312e5c31af7Sopenharmony_ci		}
313e5c31af7Sopenharmony_ci	""
314e5c31af7Sopenharmony_ciend
315e5c31af7Sopenharmony_ci
316e5c31af7Sopenharmony_cicase const_float_global
317e5c31af7Sopenharmony_ci	 version 300 es
318e5c31af7Sopenharmony_ci	 values { output float out0 = 1000.0; }
319e5c31af7Sopenharmony_ci
320e5c31af7Sopenharmony_ci	 both ""
321e5c31af7Sopenharmony_ci			#version 300 es
322e5c31af7Sopenharmony_ci			precision mediump float;
323e5c31af7Sopenharmony_ci			${DECLARATIONS}
324e5c31af7Sopenharmony_ci			const float theConstant = 1000.0;
325e5c31af7Sopenharmony_ci			void main()
326e5c31af7Sopenharmony_ci			{
327e5c31af7Sopenharmony_ci				out0 = theConstant;
328e5c31af7Sopenharmony_ci				${OUTPUT}
329e5c31af7Sopenharmony_ci			}
330e5c31af7Sopenharmony_ci	 ""
331e5c31af7Sopenharmony_ciend
332e5c31af7Sopenharmony_ci
333e5c31af7Sopenharmony_cicase const_float_main
334e5c31af7Sopenharmony_ci	 version 300 es
335e5c31af7Sopenharmony_ci	 values { output float out0 = -1000.0; }
336e5c31af7Sopenharmony_ci
337e5c31af7Sopenharmony_ci	 both ""
338e5c31af7Sopenharmony_ci			#version 300 es
339e5c31af7Sopenharmony_ci			precision mediump float;
340e5c31af7Sopenharmony_ci			${DECLARATIONS}
341e5c31af7Sopenharmony_ci			void main()
342e5c31af7Sopenharmony_ci			{
343e5c31af7Sopenharmony_ci					const float theConstant = -1000.0;
344e5c31af7Sopenharmony_ci				out0 = theConstant;
345e5c31af7Sopenharmony_ci				${OUTPUT}
346e5c31af7Sopenharmony_ci			}
347e5c31af7Sopenharmony_ci	 ""
348e5c31af7Sopenharmony_ciend
349e5c31af7Sopenharmony_ci
350e5c31af7Sopenharmony_cicase const_float_function
351e5c31af7Sopenharmony_ci	 version 300 es
352e5c31af7Sopenharmony_ci	 values { output float out0 = -0.012; }
353e5c31af7Sopenharmony_ci
354e5c31af7Sopenharmony_ci	 both ""
355e5c31af7Sopenharmony_ci			#version 300 es
356e5c31af7Sopenharmony_ci			precision mediump float;
357e5c31af7Sopenharmony_ci			${DECLARATIONS}
358e5c31af7Sopenharmony_ci			float func()
359e5c31af7Sopenharmony_ci			{
360e5c31af7Sopenharmony_ci					const float theConstant = -0.012;
361e5c31af7Sopenharmony_ci				return theConstant;
362e5c31af7Sopenharmony_ci			}
363e5c31af7Sopenharmony_ci			void main()
364e5c31af7Sopenharmony_ci			{
365e5c31af7Sopenharmony_ci				out0 = func();
366e5c31af7Sopenharmony_ci				${OUTPUT}
367e5c31af7Sopenharmony_ci			}
368e5c31af7Sopenharmony_ci	 ""
369e5c31af7Sopenharmony_ciend
370e5c31af7Sopenharmony_ci
371e5c31af7Sopenharmony_cicase const_float_scope
372e5c31af7Sopenharmony_ci	 version 300 es
373e5c31af7Sopenharmony_ci	 values { output float out0 = 1.0; }
374e5c31af7Sopenharmony_ci
375e5c31af7Sopenharmony_ci	 both ""
376e5c31af7Sopenharmony_ci			#version 300 es
377e5c31af7Sopenharmony_ci			precision mediump float;
378e5c31af7Sopenharmony_ci			${DECLARATIONS}
379e5c31af7Sopenharmony_ci			void main()
380e5c31af7Sopenharmony_ci			{
381e5c31af7Sopenharmony_ci				{
382e5c31af7Sopenharmony_ci					 const float theConstant = 1.0;
383e5c31af7Sopenharmony_ci					 out0 = theConstant;
384e5c31af7Sopenharmony_ci				}
385e5c31af7Sopenharmony_ci				${OUTPUT}
386e5c31af7Sopenharmony_ci			}
387e5c31af7Sopenharmony_ci	 ""
388e5c31af7Sopenharmony_ciend
389e5c31af7Sopenharmony_ci
390e5c31af7Sopenharmony_cicase const_float_scope_shawdowing_1
391e5c31af7Sopenharmony_ci	 version 300 es
392e5c31af7Sopenharmony_ci	 values { output float out0 = 1.0; }
393e5c31af7Sopenharmony_ci
394e5c31af7Sopenharmony_ci	 both ""
395e5c31af7Sopenharmony_ci			#version 300 es
396e5c31af7Sopenharmony_ci			precision mediump float;
397e5c31af7Sopenharmony_ci			${DECLARATIONS}
398e5c31af7Sopenharmony_ci			void main()
399e5c31af7Sopenharmony_ci			{
400e5c31af7Sopenharmony_ci				const float theConstant = 100.0;
401e5c31af7Sopenharmony_ci				{
402e5c31af7Sopenharmony_ci					 const float theConstant = 1.0;
403e5c31af7Sopenharmony_ci					 out0 = theConstant;
404e5c31af7Sopenharmony_ci				}
405e5c31af7Sopenharmony_ci				${OUTPUT}
406e5c31af7Sopenharmony_ci			}
407e5c31af7Sopenharmony_ci	 ""
408e5c31af7Sopenharmony_ciend
409e5c31af7Sopenharmony_ci
410e5c31af7Sopenharmony_cicase const_float_scope_shawdowing_2
411e5c31af7Sopenharmony_ci	 version 300 es
412e5c31af7Sopenharmony_ci	 values { output float out0 = 1.0; }
413e5c31af7Sopenharmony_ci
414e5c31af7Sopenharmony_ci	 both ""
415e5c31af7Sopenharmony_ci			#version 300 es
416e5c31af7Sopenharmony_ci			precision mediump float;
417e5c31af7Sopenharmony_ci			${DECLARATIONS}
418e5c31af7Sopenharmony_ci			const float theConstant = 100.0;
419e5c31af7Sopenharmony_ci			void main()
420e5c31af7Sopenharmony_ci			{
421e5c31af7Sopenharmony_ci				{
422e5c31af7Sopenharmony_ci					 const float theConstant = 1.0;
423e5c31af7Sopenharmony_ci					 out0 = theConstant;
424e5c31af7Sopenharmony_ci				}
425e5c31af7Sopenharmony_ci				${OUTPUT}
426e5c31af7Sopenharmony_ci			}
427e5c31af7Sopenharmony_ci	 ""
428e5c31af7Sopenharmony_ciend
429e5c31af7Sopenharmony_ci
430e5c31af7Sopenharmony_cicase const_float_scope_shawdowing_3
431e5c31af7Sopenharmony_ci	 version 300 es
432e5c31af7Sopenharmony_ci	 values { output float out0 = 1.0; }
433e5c31af7Sopenharmony_ci
434e5c31af7Sopenharmony_ci	 both ""
435e5c31af7Sopenharmony_ci			#version 300 es
436e5c31af7Sopenharmony_ci			precision mediump float;
437e5c31af7Sopenharmony_ci			${DECLARATIONS}
438e5c31af7Sopenharmony_ci			const float theConstant = 100.0;
439e5c31af7Sopenharmony_ci			void main()
440e5c31af7Sopenharmony_ci			{
441e5c31af7Sopenharmony_ci				const float theConstant = -100.0;
442e5c31af7Sopenharmony_ci				{
443e5c31af7Sopenharmony_ci					 const float theConstant = 1.0;
444e5c31af7Sopenharmony_ci					 out0 = theConstant;
445e5c31af7Sopenharmony_ci				}
446e5c31af7Sopenharmony_ci				${OUTPUT}
447e5c31af7Sopenharmony_ci			}
448e5c31af7Sopenharmony_ci	 ""
449e5c31af7Sopenharmony_ciend
450e5c31af7Sopenharmony_ci
451e5c31af7Sopenharmony_cicase const_float_scope_shawdowing_4
452e5c31af7Sopenharmony_ci	 version 300 es
453e5c31af7Sopenharmony_ci	 values { output float out0 = 2.0; }
454e5c31af7Sopenharmony_ci
455e5c31af7Sopenharmony_ci	 both ""
456e5c31af7Sopenharmony_ci			#version 300 es
457e5c31af7Sopenharmony_ci			precision mediump float;
458e5c31af7Sopenharmony_ci			${DECLARATIONS}
459e5c31af7Sopenharmony_ci			const float theConstant = 100.0;
460e5c31af7Sopenharmony_ci			float func()
461e5c31af7Sopenharmony_ci			{
462e5c31af7Sopenharmony_ci				const float theConstant = 2.0;
463e5c31af7Sopenharmony_ci				return theConstant;
464e5c31af7Sopenharmony_ci			}
465e5c31af7Sopenharmony_ci			void main()
466e5c31af7Sopenharmony_ci			{
467e5c31af7Sopenharmony_ci				const float theConstant = -100.0;
468e5c31af7Sopenharmony_ci				{
469e5c31af7Sopenharmony_ci					 const float theConstant = 1.0;
470e5c31af7Sopenharmony_ci					 out0 = func();
471e5c31af7Sopenharmony_ci				}
472e5c31af7Sopenharmony_ci				${OUTPUT}
473e5c31af7Sopenharmony_ci			}
474e5c31af7Sopenharmony_ci	 ""
475e5c31af7Sopenharmony_ciend
476e5c31af7Sopenharmony_ci
477e5c31af7Sopenharmony_cicase const_float_operations_with_const
478e5c31af7Sopenharmony_ci	 version 300 es
479e5c31af7Sopenharmony_ci	 values { output float out0 = 21.0; }
480e5c31af7Sopenharmony_ci
481e5c31af7Sopenharmony_ci	 both ""
482e5c31af7Sopenharmony_ci			#version 300 es
483e5c31af7Sopenharmony_ci			precision mediump float;
484e5c31af7Sopenharmony_ci			${DECLARATIONS}
485e5c31af7Sopenharmony_ci			const float theGlobalConstant = 10.0;
486e5c31af7Sopenharmony_ci			float func()
487e5c31af7Sopenharmony_ci			{
488e5c31af7Sopenharmony_ci				const float theConstant = 2.0;
489e5c31af7Sopenharmony_ci				return theConstant;
490e5c31af7Sopenharmony_ci			}
491e5c31af7Sopenharmony_ci			void main()
492e5c31af7Sopenharmony_ci			{
493e5c31af7Sopenharmony_ci				const float theConstant = -100.0;
494e5c31af7Sopenharmony_ci				{
495e5c31af7Sopenharmony_ci					 const float theConstant = 1.0;
496e5c31af7Sopenharmony_ci					 out0 = func() * theGlobalConstant + theConstant;
497e5c31af7Sopenharmony_ci				}
498e5c31af7Sopenharmony_ci				${OUTPUT}
499e5c31af7Sopenharmony_ci			}
500e5c31af7Sopenharmony_ci	 ""
501e5c31af7Sopenharmony_ciend
502e5c31af7Sopenharmony_ci
503e5c31af7Sopenharmony_cicase const_float_assignment_1
504e5c31af7Sopenharmony_ci	 version 300 es
505e5c31af7Sopenharmony_ci	 values { output float out0 = 10.0; }
506e5c31af7Sopenharmony_ci
507e5c31af7Sopenharmony_ci	 both ""
508e5c31af7Sopenharmony_ci			#version 300 es
509e5c31af7Sopenharmony_ci			precision mediump float;
510e5c31af7Sopenharmony_ci			${DECLARATIONS}
511e5c31af7Sopenharmony_ci			void main()
512e5c31af7Sopenharmony_ci			{
513e5c31af7Sopenharmony_ci				const float theConstant1 = 10.0;
514e5c31af7Sopenharmony_ci				const float theConstant2 = theConstant1;
515e5c31af7Sopenharmony_ci				out0 = theConstant2;
516e5c31af7Sopenharmony_ci				${OUTPUT}
517e5c31af7Sopenharmony_ci			}
518e5c31af7Sopenharmony_ci	 ""
519e5c31af7Sopenharmony_ciend
520e5c31af7Sopenharmony_ci
521e5c31af7Sopenharmony_cicase const_float_assignment_2
522e5c31af7Sopenharmony_ci	 version 300 es
523e5c31af7Sopenharmony_ci	 values { output float out0 = 10.0; }
524e5c31af7Sopenharmony_ci
525e5c31af7Sopenharmony_ci	 both ""
526e5c31af7Sopenharmony_ci			#version 300 es
527e5c31af7Sopenharmony_ci			precision mediump float;
528e5c31af7Sopenharmony_ci			${DECLARATIONS}
529e5c31af7Sopenharmony_ci			void main()
530e5c31af7Sopenharmony_ci			{
531e5c31af7Sopenharmony_ci				const float theConstant1 = 10.0;
532e5c31af7Sopenharmony_ci				{
533e5c31af7Sopenharmony_ci					const float theConstant2 = theConstant1;
534e5c31af7Sopenharmony_ci					out0 = theConstant2;
535e5c31af7Sopenharmony_ci				}
536e5c31af7Sopenharmony_ci				${OUTPUT}
537e5c31af7Sopenharmony_ci			}
538e5c31af7Sopenharmony_ci	 ""
539e5c31af7Sopenharmony_ciend
540e5c31af7Sopenharmony_ci
541e5c31af7Sopenharmony_cicase const_float_assignment_3
542e5c31af7Sopenharmony_ci	 version 300 es
543e5c31af7Sopenharmony_ci	 values { output float out0 = 10.0; }
544e5c31af7Sopenharmony_ci
545e5c31af7Sopenharmony_ci	 both ""
546e5c31af7Sopenharmony_ci			#version 300 es
547e5c31af7Sopenharmony_ci			precision mediump float;
548e5c31af7Sopenharmony_ci			${DECLARATIONS}
549e5c31af7Sopenharmony_ci			const float theConstant1 = 10.0;
550e5c31af7Sopenharmony_ci			void main()
551e5c31af7Sopenharmony_ci			{
552e5c31af7Sopenharmony_ci				const float theConstant2 = theConstant1;
553e5c31af7Sopenharmony_ci				out0 = theConstant2;
554e5c31af7Sopenharmony_ci				${OUTPUT}
555e5c31af7Sopenharmony_ci			}
556e5c31af7Sopenharmony_ci	 ""
557e5c31af7Sopenharmony_ciend
558e5c31af7Sopenharmony_ci
559e5c31af7Sopenharmony_cicase const_float_assignment_4
560e5c31af7Sopenharmony_ci	 version 300 es
561e5c31af7Sopenharmony_ci	 values { output float out0 = 10.0; }
562e5c31af7Sopenharmony_ci
563e5c31af7Sopenharmony_ci	 both ""
564e5c31af7Sopenharmony_ci			#version 300 es
565e5c31af7Sopenharmony_ci			precision mediump float;
566e5c31af7Sopenharmony_ci			${DECLARATIONS}
567e5c31af7Sopenharmony_ci			const float theConstant1 = 10.0;
568e5c31af7Sopenharmony_ci			float func()
569e5c31af7Sopenharmony_ci			{
570e5c31af7Sopenharmony_ci				const float theConstant2 = theConstant1;
571e5c31af7Sopenharmony_ci				return theConstant2;
572e5c31af7Sopenharmony_ci			}
573e5c31af7Sopenharmony_ci			void main()
574e5c31af7Sopenharmony_ci			{
575e5c31af7Sopenharmony_ci				out0 = func();
576e5c31af7Sopenharmony_ci				${OUTPUT}
577e5c31af7Sopenharmony_ci			}
578e5c31af7Sopenharmony_ci	 ""
579e5c31af7Sopenharmony_ciend
580e5c31af7Sopenharmony_ci
581e5c31af7Sopenharmony_cicase const_float_assign_uniform
582e5c31af7Sopenharmony_ci	 version 300 es
583e5c31af7Sopenharmony_ci	 expect compile_fail
584e5c31af7Sopenharmony_ci	 values { output float out0 = 10.0; }
585e5c31af7Sopenharmony_ci	 both ""
586e5c31af7Sopenharmony_ci			#version 300 es
587e5c31af7Sopenharmony_ci			precision mediump float;
588e5c31af7Sopenharmony_ci			${DECLARATIONS}
589e5c31af7Sopenharmony_ci			uniform float theUniform;
590e5c31af7Sopenharmony_ci			void main()
591e5c31af7Sopenharmony_ci			{
592e5c31af7Sopenharmony_ci				const float theConstant = theUniform;
593e5c31af7Sopenharmony_ci				out0 = theConstant;
594e5c31af7Sopenharmony_ci				${OUTPUT}
595e5c31af7Sopenharmony_ci			}
596e5c31af7Sopenharmony_ci	 ""
597e5c31af7Sopenharmony_ciend
598e5c31af7Sopenharmony_ci
599e5c31af7Sopenharmony_cicase const_float_assign_varying
600e5c31af7Sopenharmony_ci	 version 300 es
601e5c31af7Sopenharmony_ci	 expect compile_fail
602e5c31af7Sopenharmony_ci	 values { output float out0 = 10.0; }
603e5c31af7Sopenharmony_ci	 vertex ""
604e5c31af7Sopenharmony_ci			#version 300 es
605e5c31af7Sopenharmony_ci			${VERTEX_DECLARATIONS}
606e5c31af7Sopenharmony_ci			out float theVarying;
607e5c31af7Sopenharmony_ci			void main()
608e5c31af7Sopenharmony_ci			{
609e5c31af7Sopenharmony_ci				theVarying = 1.0;
610e5c31af7Sopenharmony_ci				gl_Position = vec(1.0);
611e5c31af7Sopenharmony_ci			}
612e5c31af7Sopenharmony_ci	 ""
613e5c31af7Sopenharmony_ci	 fragment ""
614e5c31af7Sopenharmony_ci			#version 300 es
615e5c31af7Sopenharmony_ci			precision mediump float;
616e5c31af7Sopenharmony_ci			${FRAGMENT_DECLARATIONS}
617e5c31af7Sopenharmony_ci			in float theVarying;
618e5c31af7Sopenharmony_ci			void main()
619e5c31af7Sopenharmony_ci			{
620e5c31af7Sopenharmony_ci				const float theConstant = theVarying;
621e5c31af7Sopenharmony_ci				out0 = theConstant;
622e5c31af7Sopenharmony_ci				${FRAGMENT_OUTPUT}
623e5c31af7Sopenharmony_ci			}
624e5c31af7Sopenharmony_ci	 ""
625e5c31af7Sopenharmony_ciend
626e5c31af7Sopenharmony_ci
627e5c31af7Sopenharmony_cicase const_float_function_gotcha
628e5c31af7Sopenharmony_ci	 version 300 es
629e5c31af7Sopenharmony_ci	 desc "Function constant parameters are not really constants, so using them as constant expressions should fail."
630e5c31af7Sopenharmony_ci	 expect compile_fail
631e5c31af7Sopenharmony_ci	 values { output float out0 = 20.0; }
632e5c31af7Sopenharmony_ci	 both ""
633e5c31af7Sopenharmony_ci			#version 300 es
634e5c31af7Sopenharmony_ci			precision mediump float;
635e5c31af7Sopenharmony_ci			${DECLARATIONS}
636e5c31af7Sopenharmony_ci			float func(const float gotcha)
637e5c31af7Sopenharmony_ci			{
638e5c31af7Sopenharmony_ci				const float theConstant2 = gotcha;
639e5c31af7Sopenharmony_ci				return theConstant2*2.0;
640e5c31af7Sopenharmony_ci			}
641e5c31af7Sopenharmony_ci			void main()
642e5c31af7Sopenharmony_ci			{
643e5c31af7Sopenharmony_ci					const float theConstant = 10.0;
644e5c31af7Sopenharmony_ci				out0 = func(theConstant);
645e5c31af7Sopenharmony_ci				${OUTPUT}
646e5c31af7Sopenharmony_ci			}
647e5c31af7Sopenharmony_ci	 ""
648e5c31af7Sopenharmony_ciend
649e5c31af7Sopenharmony_ci
650e5c31af7Sopenharmony_cicase const_float_from_int
651e5c31af7Sopenharmony_ci	 version 300 es
652e5c31af7Sopenharmony_ci	 values { output float out0 = 10.0; }
653e5c31af7Sopenharmony_ci
654e5c31af7Sopenharmony_ci	 both ""
655e5c31af7Sopenharmony_ci			#version 300 es
656e5c31af7Sopenharmony_ci			precision mediump float;
657e5c31af7Sopenharmony_ci			${DECLARATIONS}
658e5c31af7Sopenharmony_ci			const float theConstant = float(10);
659e5c31af7Sopenharmony_ci			void main()
660e5c31af7Sopenharmony_ci			{
661e5c31af7Sopenharmony_ci				out0 = theConstant;
662e5c31af7Sopenharmony_ci				${OUTPUT}
663e5c31af7Sopenharmony_ci			}
664e5c31af7Sopenharmony_ci	 ""
665e5c31af7Sopenharmony_ciend
666e5c31af7Sopenharmony_ci
667e5c31af7Sopenharmony_cicase const_float_from_vec2
668e5c31af7Sopenharmony_ci	 version 300 es
669e5c31af7Sopenharmony_ci	 values { output float out0 = 10.0; }
670e5c31af7Sopenharmony_ci
671e5c31af7Sopenharmony_ci	 both ""
672e5c31af7Sopenharmony_ci			#version 300 es
673e5c31af7Sopenharmony_ci			precision mediump float;
674e5c31af7Sopenharmony_ci			${DECLARATIONS}
675e5c31af7Sopenharmony_ci			const float theConstant = vec2(1.0, 10.0).y;
676e5c31af7Sopenharmony_ci			void main()
677e5c31af7Sopenharmony_ci			{
678e5c31af7Sopenharmony_ci				out0 = theConstant;
679e5c31af7Sopenharmony_ci				${OUTPUT}
680e5c31af7Sopenharmony_ci			}
681e5c31af7Sopenharmony_ci	 ""
682e5c31af7Sopenharmony_ciend
683e5c31af7Sopenharmony_ci
684e5c31af7Sopenharmony_cicase const_float_from_vec3
685e5c31af7Sopenharmony_ci	 version 300 es
686e5c31af7Sopenharmony_ci	 values { output float out0 = 10.0; }
687e5c31af7Sopenharmony_ci
688e5c31af7Sopenharmony_ci	 both ""
689e5c31af7Sopenharmony_ci			#version 300 es
690e5c31af7Sopenharmony_ci			precision mediump float;
691e5c31af7Sopenharmony_ci			${DECLARATIONS}
692e5c31af7Sopenharmony_ci			const float theConstant = vec3(1.0, 10.0, 20.0).y;
693e5c31af7Sopenharmony_ci			void main()
694e5c31af7Sopenharmony_ci			{
695e5c31af7Sopenharmony_ci				out0 = theConstant;
696e5c31af7Sopenharmony_ci				${OUTPUT}
697e5c31af7Sopenharmony_ci			}
698e5c31af7Sopenharmony_ci	 ""
699e5c31af7Sopenharmony_ciend
700e5c31af7Sopenharmony_ci
701e5c31af7Sopenharmony_cicase const_float_from_vec4
702e5c31af7Sopenharmony_ci	 version 300 es
703e5c31af7Sopenharmony_ci	 values { output float out0 = 10.0; }
704e5c31af7Sopenharmony_ci
705e5c31af7Sopenharmony_ci	 both ""
706e5c31af7Sopenharmony_ci			#version 300 es
707e5c31af7Sopenharmony_ci			precision mediump float;
708e5c31af7Sopenharmony_ci			${DECLARATIONS}
709e5c31af7Sopenharmony_ci			const float theConstant = vec4(1.0, 10.0, 20.0, -10.0).y;
710e5c31af7Sopenharmony_ci			void main()
711e5c31af7Sopenharmony_ci			{
712e5c31af7Sopenharmony_ci				out0 = theConstant;
713e5c31af7Sopenharmony_ci				${OUTPUT}
714e5c31af7Sopenharmony_ci			}
715e5c31af7Sopenharmony_ci	 ""
716e5c31af7Sopenharmony_ciend
717e5c31af7Sopenharmony_ci
718e5c31af7Sopenharmony_cicase const_float_assign_variable_1
719e5c31af7Sopenharmony_ci	 version 300 es
720e5c31af7Sopenharmony_ci	 expect compile_fail
721e5c31af7Sopenharmony_ci	 values { output float out0 = 20.0; }
722e5c31af7Sopenharmony_ci	 both ""
723e5c31af7Sopenharmony_ci			#version 300 es
724e5c31af7Sopenharmony_ci			precision mediump float;
725e5c31af7Sopenharmony_ci			${DECLARATIONS}
726e5c31af7Sopenharmony_ci			void main()
727e5c31af7Sopenharmony_ci			{
728e5c31af7Sopenharmony_ci				float theVariable = 20.0;
729e5c31af7Sopenharmony_ci				const float theConstant = theVariable;
730e5c31af7Sopenharmony_ci				out0 = theConstant;
731e5c31af7Sopenharmony_ci				${OUTPUT}
732e5c31af7Sopenharmony_ci			}
733e5c31af7Sopenharmony_ci	 ""
734e5c31af7Sopenharmony_ciend
735e5c31af7Sopenharmony_ci
736e5c31af7Sopenharmony_cicase const_float_assign_variable_2
737e5c31af7Sopenharmony_ci	 version 300 es
738e5c31af7Sopenharmony_ci	 expect compile_fail
739e5c31af7Sopenharmony_ci	 values { output float out0 = 50.0; }
740e5c31af7Sopenharmony_ci	 both ""
741e5c31af7Sopenharmony_ci			#version 300 es
742e5c31af7Sopenharmony_ci			precision mediump float;
743e5c31af7Sopenharmony_ci			${DECLARATIONS}
744e5c31af7Sopenharmony_ci			void main()
745e5c31af7Sopenharmony_ci			{
746e5c31af7Sopenharmony_ci				float theVariable = 20.0;
747e5c31af7Sopenharmony_ci				theVariable += 30.0;
748e5c31af7Sopenharmony_ci				const float theConstant = theVariable;
749e5c31af7Sopenharmony_ci				out0 = theConstant;
750e5c31af7Sopenharmony_ci				${OUTPUT}
751e5c31af7Sopenharmony_ci			}
752e5c31af7Sopenharmony_ci	 ""
753e5c31af7Sopenharmony_ciend
754e5c31af7Sopenharmony_ci
755e5c31af7Sopenharmony_cicase const_float_assign_user_func
756e5c31af7Sopenharmony_ci	 version 300 es
757e5c31af7Sopenharmony_ci	 expect compile_fail
758e5c31af7Sopenharmony_ci	 values { output float out0 = 50.0; }
759e5c31af7Sopenharmony_ci	 both ""
760e5c31af7Sopenharmony_ci			#version 300 es
761e5c31af7Sopenharmony_ci			precision mediump float;
762e5c31af7Sopenharmony_ci			${DECLARATIONS}
763e5c31af7Sopenharmony_ci			float func()
764e5c31af7Sopenharmony_ci			{
765e5c31af7Sopenharmony_ci				return 50.0;
766e5c31af7Sopenharmony_ci			}
767e5c31af7Sopenharmony_ci			void main()
768e5c31af7Sopenharmony_ci			{
769e5c31af7Sopenharmony_ci				const float theConstant = func();
770e5c31af7Sopenharmony_ci				out0 = theConstant;
771e5c31af7Sopenharmony_ci				${OUTPUT}
772e5c31af7Sopenharmony_ci			}
773e5c31af7Sopenharmony_ci	 ""
774e5c31af7Sopenharmony_ciend
775e5c31af7Sopenharmony_ci
776e5c31af7Sopenharmony_cicase const_mat_multiply
777e5c31af7Sopenharmony_ci	version 300 es
778e5c31af7Sopenharmony_ci	values { output vec2 out0 = vec2(4.0, 4.0); }
779e5c31af7Sopenharmony_ci	both ""
780e5c31af7Sopenharmony_ci		#version 300 es
781e5c31af7Sopenharmony_ci		precision mediump float;
782e5c31af7Sopenharmony_ci		${DECLARATIONS}
783e5c31af7Sopenharmony_ci
784e5c31af7Sopenharmony_ci		const mat4x2 matA = mat4x2(2.0, 4.0, 8.0, 16.0, 32.0, 64.0, 128.0, 256.0);
785e5c31af7Sopenharmony_ci		const mat4x2 matB = mat4x2(1.0/2.0, 1.0/4.0, 1.0/8.0, 1.0/16.0, 1.0/32.0, 1.0/64.0, 1.0/128.0, 1.0/256.0);
786e5c31af7Sopenharmony_ci
787e5c31af7Sopenharmony_ci		void main()
788e5c31af7Sopenharmony_ci		{
789e5c31af7Sopenharmony_ci			mat4x2 result = matrixCompMult(matA, matB);
790e5c31af7Sopenharmony_ci			out0 = result * vec4(1.0, 1.0, 1.0, 1.0);
791e5c31af7Sopenharmony_ci			${OUTPUT}
792e5c31af7Sopenharmony_ci		}
793e5c31af7Sopenharmony_ci	""
794e5c31af7Sopenharmony_ciend
795e5c31af7Sopenharmony_ci
796e5c31af7Sopenharmony_cicase int_decimal
797e5c31af7Sopenharmony_ci	version 300 es
798e5c31af7Sopenharmony_ci	values { output int out0 = 7; }
799e5c31af7Sopenharmony_ci	both ""
800e5c31af7Sopenharmony_ci		#version 300 es
801e5c31af7Sopenharmony_ci		${DECLARATIONS}
802e5c31af7Sopenharmony_ci		void main ()
803e5c31af7Sopenharmony_ci		{
804e5c31af7Sopenharmony_ci			${SETUP}
805e5c31af7Sopenharmony_ci			int value = 7;
806e5c31af7Sopenharmony_ci			out0 = value;
807e5c31af7Sopenharmony_ci			${OUTPUT}
808e5c31af7Sopenharmony_ci		}
809e5c31af7Sopenharmony_ci	""
810e5c31af7Sopenharmony_ciend
811e5c31af7Sopenharmony_ci
812e5c31af7Sopenharmony_cicase int_octal
813e5c31af7Sopenharmony_ci	version 300 es
814e5c31af7Sopenharmony_ci	values { output int out0 = 15; }
815e5c31af7Sopenharmony_ci	both ""
816e5c31af7Sopenharmony_ci		#version 300 es
817e5c31af7Sopenharmony_ci		${DECLARATIONS}
818e5c31af7Sopenharmony_ci		void main ()
819e5c31af7Sopenharmony_ci		{
820e5c31af7Sopenharmony_ci			${SETUP}
821e5c31af7Sopenharmony_ci			int value = 017;
822e5c31af7Sopenharmony_ci			out0 = value;
823e5c31af7Sopenharmony_ci			${OUTPUT}
824e5c31af7Sopenharmony_ci		}
825e5c31af7Sopenharmony_ci	""
826e5c31af7Sopenharmony_ciend
827e5c31af7Sopenharmony_ci
828e5c31af7Sopenharmony_cicase int_hexadecimal_0
829e5c31af7Sopenharmony_ci	version 300 es
830e5c31af7Sopenharmony_ci	values { output int out0 = 47; }
831e5c31af7Sopenharmony_ci	both ""
832e5c31af7Sopenharmony_ci		#version 300 es
833e5c31af7Sopenharmony_ci		${DECLARATIONS}
834e5c31af7Sopenharmony_ci		void main ()
835e5c31af7Sopenharmony_ci		{
836e5c31af7Sopenharmony_ci			${SETUP}
837e5c31af7Sopenharmony_ci			int value = 0x2f;
838e5c31af7Sopenharmony_ci			out0 = value;
839e5c31af7Sopenharmony_ci			${OUTPUT}
840e5c31af7Sopenharmony_ci		}
841e5c31af7Sopenharmony_ci	""
842e5c31af7Sopenharmony_ciend
843e5c31af7Sopenharmony_ci
844e5c31af7Sopenharmony_cicase int_hexadecimal_1
845e5c31af7Sopenharmony_ci	version 300 es
846e5c31af7Sopenharmony_ci	values { output int out0 = 47; }
847e5c31af7Sopenharmony_ci	both ""
848e5c31af7Sopenharmony_ci		#version 300 es
849e5c31af7Sopenharmony_ci		${DECLARATIONS}
850e5c31af7Sopenharmony_ci		void main ()
851e5c31af7Sopenharmony_ci		{
852e5c31af7Sopenharmony_ci			${SETUP}
853e5c31af7Sopenharmony_ci			int value = 0X2f;
854e5c31af7Sopenharmony_ci			out0 = value;
855e5c31af7Sopenharmony_ci			${OUTPUT}
856e5c31af7Sopenharmony_ci		}
857e5c31af7Sopenharmony_ci	""
858e5c31af7Sopenharmony_ciend
859e5c31af7Sopenharmony_ci
860e5c31af7Sopenharmony_cicase uint_decimal_0
861e5c31af7Sopenharmony_ci	version 300 es
862e5c31af7Sopenharmony_ci	values { output uint out0 = 7; }
863e5c31af7Sopenharmony_ci	both ""
864e5c31af7Sopenharmony_ci		#version 300 es
865e5c31af7Sopenharmony_ci		${DECLARATIONS}
866e5c31af7Sopenharmony_ci		void main ()
867e5c31af7Sopenharmony_ci		{
868e5c31af7Sopenharmony_ci			${SETUP}
869e5c31af7Sopenharmony_ci			uint value = 7u;
870e5c31af7Sopenharmony_ci			out0 = value;
871e5c31af7Sopenharmony_ci			${OUTPUT}
872e5c31af7Sopenharmony_ci		}
873e5c31af7Sopenharmony_ci	""
874e5c31af7Sopenharmony_ciend
875e5c31af7Sopenharmony_ci
876e5c31af7Sopenharmony_cicase uint_decimal_1
877e5c31af7Sopenharmony_ci	version 300 es
878e5c31af7Sopenharmony_ci	values { output uint out0 = 7; }
879e5c31af7Sopenharmony_ci	both ""
880e5c31af7Sopenharmony_ci		#version 300 es
881e5c31af7Sopenharmony_ci		${DECLARATIONS}
882e5c31af7Sopenharmony_ci		void main ()
883e5c31af7Sopenharmony_ci		{
884e5c31af7Sopenharmony_ci			${SETUP}
885e5c31af7Sopenharmony_ci			uint value = 7U;
886e5c31af7Sopenharmony_ci			out0 = value;
887e5c31af7Sopenharmony_ci			${OUTPUT}
888e5c31af7Sopenharmony_ci		}
889e5c31af7Sopenharmony_ci	""
890e5c31af7Sopenharmony_ciend
891e5c31af7Sopenharmony_ci
892e5c31af7Sopenharmony_cicase uint_decimal_2
893e5c31af7Sopenharmony_ci	version 300 es
894e5c31af7Sopenharmony_ci	values { output uint out0 = 0; }
895e5c31af7Sopenharmony_ci	both ""
896e5c31af7Sopenharmony_ci		#version 300 es
897e5c31af7Sopenharmony_ci		${DECLARATIONS}
898e5c31af7Sopenharmony_ci		void main ()
899e5c31af7Sopenharmony_ci		{
900e5c31af7Sopenharmony_ci			${SETUP}
901e5c31af7Sopenharmony_ci			uint value = 0u;
902e5c31af7Sopenharmony_ci			out0 = value;
903e5c31af7Sopenharmony_ci			${OUTPUT}
904e5c31af7Sopenharmony_ci		}
905e5c31af7Sopenharmony_ci	""
906e5c31af7Sopenharmony_ciend
907e5c31af7Sopenharmony_ci
908e5c31af7Sopenharmony_cicase uint_decimal_3
909e5c31af7Sopenharmony_ci	version 300 es
910e5c31af7Sopenharmony_ci	values { output uint out0 = 0; }
911e5c31af7Sopenharmony_ci	both ""
912e5c31af7Sopenharmony_ci		#version 300 es
913e5c31af7Sopenharmony_ci		${DECLARATIONS}
914e5c31af7Sopenharmony_ci		void main ()
915e5c31af7Sopenharmony_ci		{
916e5c31af7Sopenharmony_ci			${SETUP}
917e5c31af7Sopenharmony_ci			uint value = 0U;
918e5c31af7Sopenharmony_ci			out0 = value;
919e5c31af7Sopenharmony_ci			${OUTPUT}
920e5c31af7Sopenharmony_ci		}
921e5c31af7Sopenharmony_ci	""
922e5c31af7Sopenharmony_ciend
923e5c31af7Sopenharmony_ci
924e5c31af7Sopenharmony_cicase uint_octal_0
925e5c31af7Sopenharmony_ci	version 300 es
926e5c31af7Sopenharmony_ci	values { output uint out0 = 15; }
927e5c31af7Sopenharmony_ci	both ""
928e5c31af7Sopenharmony_ci		#version 300 es
929e5c31af7Sopenharmony_ci		${DECLARATIONS}
930e5c31af7Sopenharmony_ci		void main ()
931e5c31af7Sopenharmony_ci		{
932e5c31af7Sopenharmony_ci			${SETUP}
933e5c31af7Sopenharmony_ci			uint value = 017u;
934e5c31af7Sopenharmony_ci			out0 = value;
935e5c31af7Sopenharmony_ci			${OUTPUT}
936e5c31af7Sopenharmony_ci		}
937e5c31af7Sopenharmony_ci	""
938e5c31af7Sopenharmony_ciend
939e5c31af7Sopenharmony_ci
940e5c31af7Sopenharmony_cicase uint_octal_1
941e5c31af7Sopenharmony_ci	version 300 es
942e5c31af7Sopenharmony_ci	values { output uint out0 = 15; }
943e5c31af7Sopenharmony_ci	both ""
944e5c31af7Sopenharmony_ci		#version 300 es
945e5c31af7Sopenharmony_ci		${DECLARATIONS}
946e5c31af7Sopenharmony_ci		void main ()
947e5c31af7Sopenharmony_ci		{
948e5c31af7Sopenharmony_ci			${SETUP}
949e5c31af7Sopenharmony_ci			uint value = 017U;
950e5c31af7Sopenharmony_ci			out0 = value;
951e5c31af7Sopenharmony_ci			${OUTPUT}
952e5c31af7Sopenharmony_ci		}
953e5c31af7Sopenharmony_ci	""
954e5c31af7Sopenharmony_ciend
955e5c31af7Sopenharmony_ci
956e5c31af7Sopenharmony_cicase uint_hexadecimal_0
957e5c31af7Sopenharmony_ci	version 300 es
958e5c31af7Sopenharmony_ci	values { output uint out0 = 47; }
959e5c31af7Sopenharmony_ci	both ""
960e5c31af7Sopenharmony_ci		#version 300 es
961e5c31af7Sopenharmony_ci		${DECLARATIONS}
962e5c31af7Sopenharmony_ci		void main ()
963e5c31af7Sopenharmony_ci		{
964e5c31af7Sopenharmony_ci			${SETUP}
965e5c31af7Sopenharmony_ci			uint value = 0x2fU;
966e5c31af7Sopenharmony_ci			out0 = value;
967e5c31af7Sopenharmony_ci			${OUTPUT}
968e5c31af7Sopenharmony_ci		}
969e5c31af7Sopenharmony_ci	""
970e5c31af7Sopenharmony_ciend
971e5c31af7Sopenharmony_ci
972e5c31af7Sopenharmony_cicase uint_hexadecimal_1
973e5c31af7Sopenharmony_ci	version 300 es
974e5c31af7Sopenharmony_ci	values { output uint out0 = 47; }
975e5c31af7Sopenharmony_ci	both ""
976e5c31af7Sopenharmony_ci		#version 300 es
977e5c31af7Sopenharmony_ci		${DECLARATIONS}
978e5c31af7Sopenharmony_ci		void main ()
979e5c31af7Sopenharmony_ci		{
980e5c31af7Sopenharmony_ci			${SETUP}
981e5c31af7Sopenharmony_ci			uint value = 0X2fu;
982e5c31af7Sopenharmony_ci			out0 = value;
983e5c31af7Sopenharmony_ci			${OUTPUT}
984e5c31af7Sopenharmony_ci		}
985e5c31af7Sopenharmony_ci	""
986e5c31af7Sopenharmony_ciend
987e5c31af7Sopenharmony_ci
988e5c31af7Sopenharmony_cicase int_from_uint
989e5c31af7Sopenharmony_ci	expect compile_fail
990e5c31af7Sopenharmony_ci	version 300 es
991e5c31af7Sopenharmony_ci	both ""
992e5c31af7Sopenharmony_ci		#version 300 es
993e5c31af7Sopenharmony_ci		${DECLARATIONS}
994e5c31af7Sopenharmony_ci		void main ()
995e5c31af7Sopenharmony_ci		{
996e5c31af7Sopenharmony_ci			int value = 7u;
997e5c31af7Sopenharmony_ci			${POSITION_FRAG_COLOR} = vec4(0.0);
998e5c31af7Sopenharmony_ci		}
999e5c31af7Sopenharmony_ci	""
1000e5c31af7Sopenharmony_ciend
1001e5c31af7Sopenharmony_ci
1002e5c31af7Sopenharmony_cicase int_from_uint_2
1003e5c31af7Sopenharmony_ci	expect compile_fail
1004e5c31af7Sopenharmony_ci	version 300 es
1005e5c31af7Sopenharmony_ci	both ""
1006e5c31af7Sopenharmony_ci		#version 300 es
1007e5c31af7Sopenharmony_ci		${DECLARATIONS}
1008e5c31af7Sopenharmony_ci		void main ()
1009e5c31af7Sopenharmony_ci		{
1010e5c31af7Sopenharmony_ci			int value = 0u;
1011e5c31af7Sopenharmony_ci			${POSITION_FRAG_COLOR} = vec4(0.0);
1012e5c31af7Sopenharmony_ci		}
1013e5c31af7Sopenharmony_ci	""
1014e5c31af7Sopenharmony_ciend
1015e5c31af7Sopenharmony_ci
1016e5c31af7Sopenharmony_cicase uint_from_int
1017e5c31af7Sopenharmony_ci	expect compile_fail
1018e5c31af7Sopenharmony_ci	version 300 es
1019e5c31af7Sopenharmony_ci	both ""
1020e5c31af7Sopenharmony_ci		#version 300 es
1021e5c31af7Sopenharmony_ci		${DECLARATIONS}
1022e5c31af7Sopenharmony_ci		void main ()
1023e5c31af7Sopenharmony_ci		{
1024e5c31af7Sopenharmony_ci			uint value = 7;
1025e5c31af7Sopenharmony_ci			${POSITION_FRAG_COLOR} = vec4(0.0);
1026e5c31af7Sopenharmony_ci		}
1027e5c31af7Sopenharmony_ci	""
1028e5c31af7Sopenharmony_ciend
1029e5c31af7Sopenharmony_ci
1030e5c31af7Sopenharmony_cicase uint_from_int_2
1031e5c31af7Sopenharmony_ci	expect compile_fail
1032e5c31af7Sopenharmony_ci	version 300 es
1033e5c31af7Sopenharmony_ci	both ""
1034e5c31af7Sopenharmony_ci		#version 300 es
1035e5c31af7Sopenharmony_ci		${DECLARATIONS}
1036e5c31af7Sopenharmony_ci		void main ()
1037e5c31af7Sopenharmony_ci		{
1038e5c31af7Sopenharmony_ci			uint value = 0;
1039e5c31af7Sopenharmony_ci			${POSITION_FRAG_COLOR} = vec4(0.0);
1040e5c31af7Sopenharmony_ci		}
1041e5c31af7Sopenharmony_ci	""
1042e5c31af7Sopenharmony_ciend
1043e5c31af7Sopenharmony_ci
1044e5c31af7Sopenharmony_cicase int_from_float
1045e5c31af7Sopenharmony_ci	expect compile_fail
1046e5c31af7Sopenharmony_ci	version 300 es
1047e5c31af7Sopenharmony_ci	both ""
1048e5c31af7Sopenharmony_ci		#version 300 es
1049e5c31af7Sopenharmony_ci		${DECLARATIONS}
1050e5c31af7Sopenharmony_ci		void main ()
1051e5c31af7Sopenharmony_ci		{
1052e5c31af7Sopenharmony_ci			int value = 7.0;
1053e5c31af7Sopenharmony_ci			${POSITION_FRAG_COLOR} = vec4(0.0);
1054e5c31af7Sopenharmony_ci		}
1055e5c31af7Sopenharmony_ci	""
1056e5c31af7Sopenharmony_ciend
1057e5c31af7Sopenharmony_ci
1058e5c31af7Sopenharmony_cicase uint_from_float
1059e5c31af7Sopenharmony_ci	expect compile_fail
1060e5c31af7Sopenharmony_ci	version 300 es
1061e5c31af7Sopenharmony_ci	both ""
1062e5c31af7Sopenharmony_ci		#version 300 es
1063e5c31af7Sopenharmony_ci		${DECLARATIONS}
1064e5c31af7Sopenharmony_ci		void main ()
1065e5c31af7Sopenharmony_ci		{
1066e5c31af7Sopenharmony_ci			uint value = 7.0;
1067e5c31af7Sopenharmony_ci			${POSITION_FRAG_COLOR} = vec4(0.0);
1068e5c31af7Sopenharmony_ci		}
1069e5c31af7Sopenharmony_ci	""
1070e5c31af7Sopenharmony_ciend
1071e5c31af7Sopenharmony_ci
1072e5c31af7Sopenharmony_cicase bool_from_int
1073e5c31af7Sopenharmony_ci	expect compile_fail
1074e5c31af7Sopenharmony_ci	version 300 es
1075e5c31af7Sopenharmony_ci	both ""
1076e5c31af7Sopenharmony_ci		#version 300 es
1077e5c31af7Sopenharmony_ci		${DECLARATIONS}
1078e5c31af7Sopenharmony_ci		void main ()
1079e5c31af7Sopenharmony_ci		{
1080e5c31af7Sopenharmony_ci			bool value = 1;
1081e5c31af7Sopenharmony_ci			${POSITION_FRAG_COLOR} = vec4(0.0);
1082e5c31af7Sopenharmony_ci		}
1083e5c31af7Sopenharmony_ci	""
1084e5c31af7Sopenharmony_ciend
1085e5c31af7Sopenharmony_ci
1086e5c31af7Sopenharmony_cicase bool_from_uint
1087e5c31af7Sopenharmony_ci	expect compile_fail
1088e5c31af7Sopenharmony_ci	version 300 es
1089e5c31af7Sopenharmony_ci	both ""
1090e5c31af7Sopenharmony_ci		#version 300 es
1091e5c31af7Sopenharmony_ci		${DECLARATIONS}
1092e5c31af7Sopenharmony_ci		void main ()
1093e5c31af7Sopenharmony_ci		{
1094e5c31af7Sopenharmony_ci			bool value = 1u;
1095e5c31af7Sopenharmony_ci			${POSITION_FRAG_COLOR} = vec4(0.0);
1096e5c31af7Sopenharmony_ci		}
1097e5c31af7Sopenharmony_ci	""
1098e5c31af7Sopenharmony_ciend
1099e5c31af7Sopenharmony_ci
1100e5c31af7Sopenharmony_cicase bool_from_float
1101e5c31af7Sopenharmony_ci	expect compile_fail
1102e5c31af7Sopenharmony_ci	version 300 es
1103e5c31af7Sopenharmony_ci	both ""
1104e5c31af7Sopenharmony_ci		#version 300 es
1105e5c31af7Sopenharmony_ci		${DECLARATIONS}
1106e5c31af7Sopenharmony_ci		void main ()
1107e5c31af7Sopenharmony_ci		{
1108e5c31af7Sopenharmony_ci			bool value = 1.0;
1109e5c31af7Sopenharmony_ci			${POSITION_FRAG_COLOR} = vec4(0.0);
1110e5c31af7Sopenharmony_ci		}
1111e5c31af7Sopenharmony_ci	""
1112e5c31af7Sopenharmony_ciend
1113e5c31af7Sopenharmony_ci
1114e5c31af7Sopenharmony_cicase float_int_f_suffix_0
1115e5c31af7Sopenharmony_ci	expect compile_fail
1116e5c31af7Sopenharmony_ci	version 300 es
1117e5c31af7Sopenharmony_ci	both ""
1118e5c31af7Sopenharmony_ci		#version 300 es
1119e5c31af7Sopenharmony_ci		precision mediump float;
1120e5c31af7Sopenharmony_ci		${DECLARATIONS}
1121e5c31af7Sopenharmony_ci		void main ()
1122e5c31af7Sopenharmony_ci		{
1123e5c31af7Sopenharmony_ci			${SETUP}
1124e5c31af7Sopenharmony_ci			float value = 1f;
1125e5c31af7Sopenharmony_ci			${POSITION_FRAG_COLOR} = vec4(0.0);
1126e5c31af7Sopenharmony_ci		}
1127e5c31af7Sopenharmony_ci	""
1128e5c31af7Sopenharmony_ciend
1129e5c31af7Sopenharmony_ci
1130e5c31af7Sopenharmony_cicase float_int_f_suffix_1
1131e5c31af7Sopenharmony_ci	expect compile_fail
1132e5c31af7Sopenharmony_ci	version 300 es
1133e5c31af7Sopenharmony_ci	both ""
1134e5c31af7Sopenharmony_ci		#version 300 es
1135e5c31af7Sopenharmony_ci		precision mediump float;
1136e5c31af7Sopenharmony_ci		${DECLARATIONS}
1137e5c31af7Sopenharmony_ci		void main ()
1138e5c31af7Sopenharmony_ci		{
1139e5c31af7Sopenharmony_ci			${SETUP}
1140e5c31af7Sopenharmony_ci			float value = 1F;
1141e5c31af7Sopenharmony_ci			${POSITION_FRAG_COLOR} = vec4(0.0);
1142e5c31af7Sopenharmony_ci		}
1143e5c31af7Sopenharmony_ci	""
1144e5c31af7Sopenharmony_ciend
1145e5c31af7Sopenharmony_ci
1146e5c31af7Sopenharmony_cicase int_l_suffix
1147e5c31af7Sopenharmony_ci	expect compile_fail
1148e5c31af7Sopenharmony_ci	version 300 es
1149e5c31af7Sopenharmony_ci	both ""
1150e5c31af7Sopenharmony_ci		#version 300 es
1151e5c31af7Sopenharmony_ci		${DECLARATIONS}
1152e5c31af7Sopenharmony_ci		void main ()
1153e5c31af7Sopenharmony_ci		{
1154e5c31af7Sopenharmony_ci			int value = 1l;
1155e5c31af7Sopenharmony_ci			${POSITION_FRAG_COLOR} = vec4(0.0);
1156e5c31af7Sopenharmony_ci		}
1157e5c31af7Sopenharmony_ci	""
1158e5c31af7Sopenharmony_ciend
1159e5c31af7Sopenharmony_ci
1160e5c31af7Sopenharmony_cicase uint_ul_suffix
1161e5c31af7Sopenharmony_ci	expect compile_fail
1162e5c31af7Sopenharmony_ci	version 300 es
1163e5c31af7Sopenharmony_ci	both ""
1164e5c31af7Sopenharmony_ci		#version 300 es
1165e5c31af7Sopenharmony_ci		${DECLARATIONS}
1166e5c31af7Sopenharmony_ci		void main ()
1167e5c31af7Sopenharmony_ci		{
1168e5c31af7Sopenharmony_ci			uint value = 1ul;
1169e5c31af7Sopenharmony_ci			${POSITION_FRAG_COLOR} = vec4(0.0);
1170e5c31af7Sopenharmony_ci		}
1171e5c31af7Sopenharmony_ci	""
1172e5c31af7Sopenharmony_ciend
1173e5c31af7Sopenharmony_ci
1174e5c31af7Sopenharmony_cicase invalid_octal_0
1175e5c31af7Sopenharmony_ci	expect compile_fail
1176e5c31af7Sopenharmony_ci	version 300 es
1177e5c31af7Sopenharmony_ci	both ""
1178e5c31af7Sopenharmony_ci		#version 300 es
1179e5c31af7Sopenharmony_ci		${DECLARATIONS}
1180e5c31af7Sopenharmony_ci		void main ()
1181e5c31af7Sopenharmony_ci		{
1182e5c31af7Sopenharmony_ci			int value = 018;
1183e5c31af7Sopenharmony_ci			${POSITION_FRAG_COLOR} = vec4(0.0);
1184e5c31af7Sopenharmony_ci		}
1185e5c31af7Sopenharmony_ci	""
1186e5c31af7Sopenharmony_ciend
1187e5c31af7Sopenharmony_ci
1188e5c31af7Sopenharmony_cicase invalid_octal_1
1189e5c31af7Sopenharmony_ci	expect compile_fail
1190e5c31af7Sopenharmony_ci	version 300 es
1191e5c31af7Sopenharmony_ci	both ""
1192e5c31af7Sopenharmony_ci		#version 300 es
1193e5c31af7Sopenharmony_ci		${DECLARATIONS}
1194e5c31af7Sopenharmony_ci		void main ()
1195e5c31af7Sopenharmony_ci		{
1196e5c31af7Sopenharmony_ci			uint value = 09U;
1197e5c31af7Sopenharmony_ci			${POSITION_FRAG_COLOR} = vec4(0.0);
1198e5c31af7Sopenharmony_ci		}
1199e5c31af7Sopenharmony_ci	""
1200e5c31af7Sopenharmony_ciend
1201e5c31af7Sopenharmony_ci
1202e5c31af7Sopenharmony_cicase invalid_hexadecimal_0
1203e5c31af7Sopenharmony_ci	expect compile_fail
1204e5c31af7Sopenharmony_ci	version 300 es
1205e5c31af7Sopenharmony_ci	both ""
1206e5c31af7Sopenharmony_ci		#version 300 es
1207e5c31af7Sopenharmony_ci		${DECLARATIONS}
1208e5c31af7Sopenharmony_ci		void main ()
1209e5c31af7Sopenharmony_ci		{
1210e5c31af7Sopenharmony_ci			int value = 0x2g7;
1211e5c31af7Sopenharmony_ci			${POSITION_FRAG_COLOR} = vec4(0.0);
1212e5c31af7Sopenharmony_ci		}
1213e5c31af7Sopenharmony_ci	""
1214e5c31af7Sopenharmony_ciend
1215e5c31af7Sopenharmony_ci
1216e5c31af7Sopenharmony_cicase invalid_hexadecimal_1
1217e5c31af7Sopenharmony_ci	expect compile_fail
1218e5c31af7Sopenharmony_ci	version 300 es
1219e5c31af7Sopenharmony_ci	both ""
1220e5c31af7Sopenharmony_ci		#version 300 es
1221e5c31af7Sopenharmony_ci		${DECLARATIONS}
1222e5c31af7Sopenharmony_ci		void main ()
1223e5c31af7Sopenharmony_ci		{
1224e5c31af7Sopenharmony_ci			uint value = 0X1h7u;
1225e5c31af7Sopenharmony_ci			${POSITION_FRAG_COLOR} = vec4(0.0);
1226e5c31af7Sopenharmony_ci		}
1227e5c31af7Sopenharmony_ci	""
1228e5c31af7Sopenharmony_ciend
1229