1e5c31af7Sopenharmony_ci# WARNING: This file is auto-generated. Do NOT modify it manually, but rather 2e5c31af7Sopenharmony_ci# modify the generating script file. Otherwise changes will be lost! 3e5c31af7Sopenharmony_ci 4e5c31af7Sopenharmony_cigroup invalid_implicit_conversions "Invalid Implicit Conversions" 5e5c31af7Sopenharmony_ci 6e5c31af7Sopenharmony_ci case add_float_int_float 7e5c31af7Sopenharmony_ci expect compile_fail 8e5c31af7Sopenharmony_ci 9e5c31af7Sopenharmony_ci both "" 10e5c31af7Sopenharmony_ci precision mediump float; 11e5c31af7Sopenharmony_ci precision mediump int; 12e5c31af7Sopenharmony_ci 13e5c31af7Sopenharmony_ci ${DECLARATIONS} 14e5c31af7Sopenharmony_ci 15e5c31af7Sopenharmony_ci void main() 16e5c31af7Sopenharmony_ci { 17e5c31af7Sopenharmony_ci float c; 18e5c31af7Sopenharmony_ci float a; 19e5c31af7Sopenharmony_ci int b; 20e5c31af7Sopenharmony_ci float c = a + b; 21e5c31af7Sopenharmony_ci } 22e5c31af7Sopenharmony_ci "" 23e5c31af7Sopenharmony_ci end 24e5c31af7Sopenharmony_ci case add_float_int_int 25e5c31af7Sopenharmony_ci expect compile_fail 26e5c31af7Sopenharmony_ci 27e5c31af7Sopenharmony_ci both "" 28e5c31af7Sopenharmony_ci precision mediump float; 29e5c31af7Sopenharmony_ci precision mediump int; 30e5c31af7Sopenharmony_ci 31e5c31af7Sopenharmony_ci ${DECLARATIONS} 32e5c31af7Sopenharmony_ci 33e5c31af7Sopenharmony_ci void main() 34e5c31af7Sopenharmony_ci { 35e5c31af7Sopenharmony_ci int c; 36e5c31af7Sopenharmony_ci float a; 37e5c31af7Sopenharmony_ci int b; 38e5c31af7Sopenharmony_ci int c = a + b; 39e5c31af7Sopenharmony_ci } 40e5c31af7Sopenharmony_ci "" 41e5c31af7Sopenharmony_ci end 42e5c31af7Sopenharmony_ci case add_float_ivec2_float 43e5c31af7Sopenharmony_ci expect compile_fail 44e5c31af7Sopenharmony_ci 45e5c31af7Sopenharmony_ci both "" 46e5c31af7Sopenharmony_ci precision mediump float; 47e5c31af7Sopenharmony_ci precision mediump int; 48e5c31af7Sopenharmony_ci 49e5c31af7Sopenharmony_ci ${DECLARATIONS} 50e5c31af7Sopenharmony_ci 51e5c31af7Sopenharmony_ci void main() 52e5c31af7Sopenharmony_ci { 53e5c31af7Sopenharmony_ci float c; 54e5c31af7Sopenharmony_ci float a; 55e5c31af7Sopenharmony_ci ivec2 b; 56e5c31af7Sopenharmony_ci float c = a + b; 57e5c31af7Sopenharmony_ci } 58e5c31af7Sopenharmony_ci "" 59e5c31af7Sopenharmony_ci end 60e5c31af7Sopenharmony_ci case add_float_ivec2_ivec2 61e5c31af7Sopenharmony_ci expect compile_fail 62e5c31af7Sopenharmony_ci 63e5c31af7Sopenharmony_ci both "" 64e5c31af7Sopenharmony_ci precision mediump float; 65e5c31af7Sopenharmony_ci precision mediump int; 66e5c31af7Sopenharmony_ci 67e5c31af7Sopenharmony_ci ${DECLARATIONS} 68e5c31af7Sopenharmony_ci 69e5c31af7Sopenharmony_ci void main() 70e5c31af7Sopenharmony_ci { 71e5c31af7Sopenharmony_ci ivec2 c; 72e5c31af7Sopenharmony_ci float a; 73e5c31af7Sopenharmony_ci ivec2 b; 74e5c31af7Sopenharmony_ci ivec2 c = a + b; 75e5c31af7Sopenharmony_ci } 76e5c31af7Sopenharmony_ci "" 77e5c31af7Sopenharmony_ci end 78e5c31af7Sopenharmony_ci case add_float_ivec3_float 79e5c31af7Sopenharmony_ci expect compile_fail 80e5c31af7Sopenharmony_ci 81e5c31af7Sopenharmony_ci both "" 82e5c31af7Sopenharmony_ci precision mediump float; 83e5c31af7Sopenharmony_ci precision mediump int; 84e5c31af7Sopenharmony_ci 85e5c31af7Sopenharmony_ci ${DECLARATIONS} 86e5c31af7Sopenharmony_ci 87e5c31af7Sopenharmony_ci void main() 88e5c31af7Sopenharmony_ci { 89e5c31af7Sopenharmony_ci float c; 90e5c31af7Sopenharmony_ci float a; 91e5c31af7Sopenharmony_ci ivec3 b; 92e5c31af7Sopenharmony_ci float c = a + b; 93e5c31af7Sopenharmony_ci } 94e5c31af7Sopenharmony_ci "" 95e5c31af7Sopenharmony_ci end 96e5c31af7Sopenharmony_ci case add_float_ivec3_ivec3 97e5c31af7Sopenharmony_ci expect compile_fail 98e5c31af7Sopenharmony_ci 99e5c31af7Sopenharmony_ci both "" 100e5c31af7Sopenharmony_ci precision mediump float; 101e5c31af7Sopenharmony_ci precision mediump int; 102e5c31af7Sopenharmony_ci 103e5c31af7Sopenharmony_ci ${DECLARATIONS} 104e5c31af7Sopenharmony_ci 105e5c31af7Sopenharmony_ci void main() 106e5c31af7Sopenharmony_ci { 107e5c31af7Sopenharmony_ci ivec3 c; 108e5c31af7Sopenharmony_ci float a; 109e5c31af7Sopenharmony_ci ivec3 b; 110e5c31af7Sopenharmony_ci ivec3 c = a + b; 111e5c31af7Sopenharmony_ci } 112e5c31af7Sopenharmony_ci "" 113e5c31af7Sopenharmony_ci end 114e5c31af7Sopenharmony_ci case add_float_ivec4_float 115e5c31af7Sopenharmony_ci expect compile_fail 116e5c31af7Sopenharmony_ci 117e5c31af7Sopenharmony_ci both "" 118e5c31af7Sopenharmony_ci precision mediump float; 119e5c31af7Sopenharmony_ci precision mediump int; 120e5c31af7Sopenharmony_ci 121e5c31af7Sopenharmony_ci ${DECLARATIONS} 122e5c31af7Sopenharmony_ci 123e5c31af7Sopenharmony_ci void main() 124e5c31af7Sopenharmony_ci { 125e5c31af7Sopenharmony_ci float c; 126e5c31af7Sopenharmony_ci float a; 127e5c31af7Sopenharmony_ci ivec4 b; 128e5c31af7Sopenharmony_ci float c = a + b; 129e5c31af7Sopenharmony_ci } 130e5c31af7Sopenharmony_ci "" 131e5c31af7Sopenharmony_ci end 132e5c31af7Sopenharmony_ci case add_float_ivec4_ivec4 133e5c31af7Sopenharmony_ci expect compile_fail 134e5c31af7Sopenharmony_ci 135e5c31af7Sopenharmony_ci both "" 136e5c31af7Sopenharmony_ci precision mediump float; 137e5c31af7Sopenharmony_ci precision mediump int; 138e5c31af7Sopenharmony_ci 139e5c31af7Sopenharmony_ci ${DECLARATIONS} 140e5c31af7Sopenharmony_ci 141e5c31af7Sopenharmony_ci void main() 142e5c31af7Sopenharmony_ci { 143e5c31af7Sopenharmony_ci ivec4 c; 144e5c31af7Sopenharmony_ci float a; 145e5c31af7Sopenharmony_ci ivec4 b; 146e5c31af7Sopenharmony_ci ivec4 c = a + b; 147e5c31af7Sopenharmony_ci } 148e5c31af7Sopenharmony_ci "" 149e5c31af7Sopenharmony_ci end 150e5c31af7Sopenharmony_ci case add_vec2_int_vec2 151e5c31af7Sopenharmony_ci expect compile_fail 152e5c31af7Sopenharmony_ci 153e5c31af7Sopenharmony_ci both "" 154e5c31af7Sopenharmony_ci precision mediump float; 155e5c31af7Sopenharmony_ci precision mediump int; 156e5c31af7Sopenharmony_ci 157e5c31af7Sopenharmony_ci ${DECLARATIONS} 158e5c31af7Sopenharmony_ci 159e5c31af7Sopenharmony_ci void main() 160e5c31af7Sopenharmony_ci { 161e5c31af7Sopenharmony_ci vec2 c; 162e5c31af7Sopenharmony_ci vec2 a; 163e5c31af7Sopenharmony_ci int b; 164e5c31af7Sopenharmony_ci vec2 c = a + b; 165e5c31af7Sopenharmony_ci } 166e5c31af7Sopenharmony_ci "" 167e5c31af7Sopenharmony_ci end 168e5c31af7Sopenharmony_ci case add_vec2_int_int 169e5c31af7Sopenharmony_ci expect compile_fail 170e5c31af7Sopenharmony_ci 171e5c31af7Sopenharmony_ci both "" 172e5c31af7Sopenharmony_ci precision mediump float; 173e5c31af7Sopenharmony_ci precision mediump int; 174e5c31af7Sopenharmony_ci 175e5c31af7Sopenharmony_ci ${DECLARATIONS} 176e5c31af7Sopenharmony_ci 177e5c31af7Sopenharmony_ci void main() 178e5c31af7Sopenharmony_ci { 179e5c31af7Sopenharmony_ci int c; 180e5c31af7Sopenharmony_ci vec2 a; 181e5c31af7Sopenharmony_ci int b; 182e5c31af7Sopenharmony_ci int c = a + b; 183e5c31af7Sopenharmony_ci } 184e5c31af7Sopenharmony_ci "" 185e5c31af7Sopenharmony_ci end 186e5c31af7Sopenharmony_ci case add_vec2_ivec2_vec2 187e5c31af7Sopenharmony_ci expect compile_fail 188e5c31af7Sopenharmony_ci 189e5c31af7Sopenharmony_ci both "" 190e5c31af7Sopenharmony_ci precision mediump float; 191e5c31af7Sopenharmony_ci precision mediump int; 192e5c31af7Sopenharmony_ci 193e5c31af7Sopenharmony_ci ${DECLARATIONS} 194e5c31af7Sopenharmony_ci 195e5c31af7Sopenharmony_ci void main() 196e5c31af7Sopenharmony_ci { 197e5c31af7Sopenharmony_ci vec2 c; 198e5c31af7Sopenharmony_ci vec2 a; 199e5c31af7Sopenharmony_ci ivec2 b; 200e5c31af7Sopenharmony_ci vec2 c = a + b; 201e5c31af7Sopenharmony_ci } 202e5c31af7Sopenharmony_ci "" 203e5c31af7Sopenharmony_ci end 204e5c31af7Sopenharmony_ci case add_vec2_ivec2_ivec2 205e5c31af7Sopenharmony_ci expect compile_fail 206e5c31af7Sopenharmony_ci 207e5c31af7Sopenharmony_ci both "" 208e5c31af7Sopenharmony_ci precision mediump float; 209e5c31af7Sopenharmony_ci precision mediump int; 210e5c31af7Sopenharmony_ci 211e5c31af7Sopenharmony_ci ${DECLARATIONS} 212e5c31af7Sopenharmony_ci 213e5c31af7Sopenharmony_ci void main() 214e5c31af7Sopenharmony_ci { 215e5c31af7Sopenharmony_ci ivec2 c; 216e5c31af7Sopenharmony_ci vec2 a; 217e5c31af7Sopenharmony_ci ivec2 b; 218e5c31af7Sopenharmony_ci ivec2 c = a + b; 219e5c31af7Sopenharmony_ci } 220e5c31af7Sopenharmony_ci "" 221e5c31af7Sopenharmony_ci end 222e5c31af7Sopenharmony_ci case add_vec2_ivec3_vec2 223e5c31af7Sopenharmony_ci expect compile_fail 224e5c31af7Sopenharmony_ci 225e5c31af7Sopenharmony_ci both "" 226e5c31af7Sopenharmony_ci precision mediump float; 227e5c31af7Sopenharmony_ci precision mediump int; 228e5c31af7Sopenharmony_ci 229e5c31af7Sopenharmony_ci ${DECLARATIONS} 230e5c31af7Sopenharmony_ci 231e5c31af7Sopenharmony_ci void main() 232e5c31af7Sopenharmony_ci { 233e5c31af7Sopenharmony_ci vec2 c; 234e5c31af7Sopenharmony_ci vec2 a; 235e5c31af7Sopenharmony_ci ivec3 b; 236e5c31af7Sopenharmony_ci vec2 c = a + b; 237e5c31af7Sopenharmony_ci } 238e5c31af7Sopenharmony_ci "" 239e5c31af7Sopenharmony_ci end 240e5c31af7Sopenharmony_ci case add_vec2_ivec3_ivec3 241e5c31af7Sopenharmony_ci expect compile_fail 242e5c31af7Sopenharmony_ci 243e5c31af7Sopenharmony_ci both "" 244e5c31af7Sopenharmony_ci precision mediump float; 245e5c31af7Sopenharmony_ci precision mediump int; 246e5c31af7Sopenharmony_ci 247e5c31af7Sopenharmony_ci ${DECLARATIONS} 248e5c31af7Sopenharmony_ci 249e5c31af7Sopenharmony_ci void main() 250e5c31af7Sopenharmony_ci { 251e5c31af7Sopenharmony_ci ivec3 c; 252e5c31af7Sopenharmony_ci vec2 a; 253e5c31af7Sopenharmony_ci ivec3 b; 254e5c31af7Sopenharmony_ci ivec3 c = a + b; 255e5c31af7Sopenharmony_ci } 256e5c31af7Sopenharmony_ci "" 257e5c31af7Sopenharmony_ci end 258e5c31af7Sopenharmony_ci case add_vec2_ivec4_vec2 259e5c31af7Sopenharmony_ci expect compile_fail 260e5c31af7Sopenharmony_ci 261e5c31af7Sopenharmony_ci both "" 262e5c31af7Sopenharmony_ci precision mediump float; 263e5c31af7Sopenharmony_ci precision mediump int; 264e5c31af7Sopenharmony_ci 265e5c31af7Sopenharmony_ci ${DECLARATIONS} 266e5c31af7Sopenharmony_ci 267e5c31af7Sopenharmony_ci void main() 268e5c31af7Sopenharmony_ci { 269e5c31af7Sopenharmony_ci vec2 c; 270e5c31af7Sopenharmony_ci vec2 a; 271e5c31af7Sopenharmony_ci ivec4 b; 272e5c31af7Sopenharmony_ci vec2 c = a + b; 273e5c31af7Sopenharmony_ci } 274e5c31af7Sopenharmony_ci "" 275e5c31af7Sopenharmony_ci end 276e5c31af7Sopenharmony_ci case add_vec2_ivec4_ivec4 277e5c31af7Sopenharmony_ci expect compile_fail 278e5c31af7Sopenharmony_ci 279e5c31af7Sopenharmony_ci both "" 280e5c31af7Sopenharmony_ci precision mediump float; 281e5c31af7Sopenharmony_ci precision mediump int; 282e5c31af7Sopenharmony_ci 283e5c31af7Sopenharmony_ci ${DECLARATIONS} 284e5c31af7Sopenharmony_ci 285e5c31af7Sopenharmony_ci void main() 286e5c31af7Sopenharmony_ci { 287e5c31af7Sopenharmony_ci ivec4 c; 288e5c31af7Sopenharmony_ci vec2 a; 289e5c31af7Sopenharmony_ci ivec4 b; 290e5c31af7Sopenharmony_ci ivec4 c = a + b; 291e5c31af7Sopenharmony_ci } 292e5c31af7Sopenharmony_ci "" 293e5c31af7Sopenharmony_ci end 294e5c31af7Sopenharmony_ci case add_vec3_int_vec3 295e5c31af7Sopenharmony_ci expect compile_fail 296e5c31af7Sopenharmony_ci 297e5c31af7Sopenharmony_ci both "" 298e5c31af7Sopenharmony_ci precision mediump float; 299e5c31af7Sopenharmony_ci precision mediump int; 300e5c31af7Sopenharmony_ci 301e5c31af7Sopenharmony_ci ${DECLARATIONS} 302e5c31af7Sopenharmony_ci 303e5c31af7Sopenharmony_ci void main() 304e5c31af7Sopenharmony_ci { 305e5c31af7Sopenharmony_ci vec3 c; 306e5c31af7Sopenharmony_ci vec3 a; 307e5c31af7Sopenharmony_ci int b; 308e5c31af7Sopenharmony_ci vec3 c = a + b; 309e5c31af7Sopenharmony_ci } 310e5c31af7Sopenharmony_ci "" 311e5c31af7Sopenharmony_ci end 312e5c31af7Sopenharmony_ci case add_vec3_int_int 313e5c31af7Sopenharmony_ci expect compile_fail 314e5c31af7Sopenharmony_ci 315e5c31af7Sopenharmony_ci both "" 316e5c31af7Sopenharmony_ci precision mediump float; 317e5c31af7Sopenharmony_ci precision mediump int; 318e5c31af7Sopenharmony_ci 319e5c31af7Sopenharmony_ci ${DECLARATIONS} 320e5c31af7Sopenharmony_ci 321e5c31af7Sopenharmony_ci void main() 322e5c31af7Sopenharmony_ci { 323e5c31af7Sopenharmony_ci int c; 324e5c31af7Sopenharmony_ci vec3 a; 325e5c31af7Sopenharmony_ci int b; 326e5c31af7Sopenharmony_ci int c = a + b; 327e5c31af7Sopenharmony_ci } 328e5c31af7Sopenharmony_ci "" 329e5c31af7Sopenharmony_ci end 330e5c31af7Sopenharmony_ci case add_vec3_ivec2_vec3 331e5c31af7Sopenharmony_ci expect compile_fail 332e5c31af7Sopenharmony_ci 333e5c31af7Sopenharmony_ci both "" 334e5c31af7Sopenharmony_ci precision mediump float; 335e5c31af7Sopenharmony_ci precision mediump int; 336e5c31af7Sopenharmony_ci 337e5c31af7Sopenharmony_ci ${DECLARATIONS} 338e5c31af7Sopenharmony_ci 339e5c31af7Sopenharmony_ci void main() 340e5c31af7Sopenharmony_ci { 341e5c31af7Sopenharmony_ci vec3 c; 342e5c31af7Sopenharmony_ci vec3 a; 343e5c31af7Sopenharmony_ci ivec2 b; 344e5c31af7Sopenharmony_ci vec3 c = a + b; 345e5c31af7Sopenharmony_ci } 346e5c31af7Sopenharmony_ci "" 347e5c31af7Sopenharmony_ci end 348e5c31af7Sopenharmony_ci case add_vec3_ivec2_ivec2 349e5c31af7Sopenharmony_ci expect compile_fail 350e5c31af7Sopenharmony_ci 351e5c31af7Sopenharmony_ci both "" 352e5c31af7Sopenharmony_ci precision mediump float; 353e5c31af7Sopenharmony_ci precision mediump int; 354e5c31af7Sopenharmony_ci 355e5c31af7Sopenharmony_ci ${DECLARATIONS} 356e5c31af7Sopenharmony_ci 357e5c31af7Sopenharmony_ci void main() 358e5c31af7Sopenharmony_ci { 359e5c31af7Sopenharmony_ci ivec2 c; 360e5c31af7Sopenharmony_ci vec3 a; 361e5c31af7Sopenharmony_ci ivec2 b; 362e5c31af7Sopenharmony_ci ivec2 c = a + b; 363e5c31af7Sopenharmony_ci } 364e5c31af7Sopenharmony_ci "" 365e5c31af7Sopenharmony_ci end 366e5c31af7Sopenharmony_ci case add_vec3_ivec3_vec3 367e5c31af7Sopenharmony_ci expect compile_fail 368e5c31af7Sopenharmony_ci 369e5c31af7Sopenharmony_ci both "" 370e5c31af7Sopenharmony_ci precision mediump float; 371e5c31af7Sopenharmony_ci precision mediump int; 372e5c31af7Sopenharmony_ci 373e5c31af7Sopenharmony_ci ${DECLARATIONS} 374e5c31af7Sopenharmony_ci 375e5c31af7Sopenharmony_ci void main() 376e5c31af7Sopenharmony_ci { 377e5c31af7Sopenharmony_ci vec3 c; 378e5c31af7Sopenharmony_ci vec3 a; 379e5c31af7Sopenharmony_ci ivec3 b; 380e5c31af7Sopenharmony_ci vec3 c = a + b; 381e5c31af7Sopenharmony_ci } 382e5c31af7Sopenharmony_ci "" 383e5c31af7Sopenharmony_ci end 384e5c31af7Sopenharmony_ci case add_vec3_ivec3_ivec3 385e5c31af7Sopenharmony_ci expect compile_fail 386e5c31af7Sopenharmony_ci 387e5c31af7Sopenharmony_ci both "" 388e5c31af7Sopenharmony_ci precision mediump float; 389e5c31af7Sopenharmony_ci precision mediump int; 390e5c31af7Sopenharmony_ci 391e5c31af7Sopenharmony_ci ${DECLARATIONS} 392e5c31af7Sopenharmony_ci 393e5c31af7Sopenharmony_ci void main() 394e5c31af7Sopenharmony_ci { 395e5c31af7Sopenharmony_ci ivec3 c; 396e5c31af7Sopenharmony_ci vec3 a; 397e5c31af7Sopenharmony_ci ivec3 b; 398e5c31af7Sopenharmony_ci ivec3 c = a + b; 399e5c31af7Sopenharmony_ci } 400e5c31af7Sopenharmony_ci "" 401e5c31af7Sopenharmony_ci end 402e5c31af7Sopenharmony_ci case add_vec3_ivec4_vec3 403e5c31af7Sopenharmony_ci expect compile_fail 404e5c31af7Sopenharmony_ci 405e5c31af7Sopenharmony_ci both "" 406e5c31af7Sopenharmony_ci precision mediump float; 407e5c31af7Sopenharmony_ci precision mediump int; 408e5c31af7Sopenharmony_ci 409e5c31af7Sopenharmony_ci ${DECLARATIONS} 410e5c31af7Sopenharmony_ci 411e5c31af7Sopenharmony_ci void main() 412e5c31af7Sopenharmony_ci { 413e5c31af7Sopenharmony_ci vec3 c; 414e5c31af7Sopenharmony_ci vec3 a; 415e5c31af7Sopenharmony_ci ivec4 b; 416e5c31af7Sopenharmony_ci vec3 c = a + b; 417e5c31af7Sopenharmony_ci } 418e5c31af7Sopenharmony_ci "" 419e5c31af7Sopenharmony_ci end 420e5c31af7Sopenharmony_ci case add_vec3_ivec4_ivec4 421e5c31af7Sopenharmony_ci expect compile_fail 422e5c31af7Sopenharmony_ci 423e5c31af7Sopenharmony_ci both "" 424e5c31af7Sopenharmony_ci precision mediump float; 425e5c31af7Sopenharmony_ci precision mediump int; 426e5c31af7Sopenharmony_ci 427e5c31af7Sopenharmony_ci ${DECLARATIONS} 428e5c31af7Sopenharmony_ci 429e5c31af7Sopenharmony_ci void main() 430e5c31af7Sopenharmony_ci { 431e5c31af7Sopenharmony_ci ivec4 c; 432e5c31af7Sopenharmony_ci vec3 a; 433e5c31af7Sopenharmony_ci ivec4 b; 434e5c31af7Sopenharmony_ci ivec4 c = a + b; 435e5c31af7Sopenharmony_ci } 436e5c31af7Sopenharmony_ci "" 437e5c31af7Sopenharmony_ci end 438e5c31af7Sopenharmony_ci case add_vec4_int_vec4 439e5c31af7Sopenharmony_ci expect compile_fail 440e5c31af7Sopenharmony_ci 441e5c31af7Sopenharmony_ci both "" 442e5c31af7Sopenharmony_ci precision mediump float; 443e5c31af7Sopenharmony_ci precision mediump int; 444e5c31af7Sopenharmony_ci 445e5c31af7Sopenharmony_ci ${DECLARATIONS} 446e5c31af7Sopenharmony_ci 447e5c31af7Sopenharmony_ci void main() 448e5c31af7Sopenharmony_ci { 449e5c31af7Sopenharmony_ci vec4 c; 450e5c31af7Sopenharmony_ci vec4 a; 451e5c31af7Sopenharmony_ci int b; 452e5c31af7Sopenharmony_ci vec4 c = a + b; 453e5c31af7Sopenharmony_ci } 454e5c31af7Sopenharmony_ci "" 455e5c31af7Sopenharmony_ci end 456e5c31af7Sopenharmony_ci case add_vec4_int_int 457e5c31af7Sopenharmony_ci expect compile_fail 458e5c31af7Sopenharmony_ci 459e5c31af7Sopenharmony_ci both "" 460e5c31af7Sopenharmony_ci precision mediump float; 461e5c31af7Sopenharmony_ci precision mediump int; 462e5c31af7Sopenharmony_ci 463e5c31af7Sopenharmony_ci ${DECLARATIONS} 464e5c31af7Sopenharmony_ci 465e5c31af7Sopenharmony_ci void main() 466e5c31af7Sopenharmony_ci { 467e5c31af7Sopenharmony_ci int c; 468e5c31af7Sopenharmony_ci vec4 a; 469e5c31af7Sopenharmony_ci int b; 470e5c31af7Sopenharmony_ci int c = a + b; 471e5c31af7Sopenharmony_ci } 472e5c31af7Sopenharmony_ci "" 473e5c31af7Sopenharmony_ci end 474e5c31af7Sopenharmony_ci case add_vec4_ivec2_vec4 475e5c31af7Sopenharmony_ci expect compile_fail 476e5c31af7Sopenharmony_ci 477e5c31af7Sopenharmony_ci both "" 478e5c31af7Sopenharmony_ci precision mediump float; 479e5c31af7Sopenharmony_ci precision mediump int; 480e5c31af7Sopenharmony_ci 481e5c31af7Sopenharmony_ci ${DECLARATIONS} 482e5c31af7Sopenharmony_ci 483e5c31af7Sopenharmony_ci void main() 484e5c31af7Sopenharmony_ci { 485e5c31af7Sopenharmony_ci vec4 c; 486e5c31af7Sopenharmony_ci vec4 a; 487e5c31af7Sopenharmony_ci ivec2 b; 488e5c31af7Sopenharmony_ci vec4 c = a + b; 489e5c31af7Sopenharmony_ci } 490e5c31af7Sopenharmony_ci "" 491e5c31af7Sopenharmony_ci end 492e5c31af7Sopenharmony_ci case add_vec4_ivec2_ivec2 493e5c31af7Sopenharmony_ci expect compile_fail 494e5c31af7Sopenharmony_ci 495e5c31af7Sopenharmony_ci both "" 496e5c31af7Sopenharmony_ci precision mediump float; 497e5c31af7Sopenharmony_ci precision mediump int; 498e5c31af7Sopenharmony_ci 499e5c31af7Sopenharmony_ci ${DECLARATIONS} 500e5c31af7Sopenharmony_ci 501e5c31af7Sopenharmony_ci void main() 502e5c31af7Sopenharmony_ci { 503e5c31af7Sopenharmony_ci ivec2 c; 504e5c31af7Sopenharmony_ci vec4 a; 505e5c31af7Sopenharmony_ci ivec2 b; 506e5c31af7Sopenharmony_ci ivec2 c = a + b; 507e5c31af7Sopenharmony_ci } 508e5c31af7Sopenharmony_ci "" 509e5c31af7Sopenharmony_ci end 510e5c31af7Sopenharmony_ci case add_vec4_ivec3_vec4 511e5c31af7Sopenharmony_ci expect compile_fail 512e5c31af7Sopenharmony_ci 513e5c31af7Sopenharmony_ci both "" 514e5c31af7Sopenharmony_ci precision mediump float; 515e5c31af7Sopenharmony_ci precision mediump int; 516e5c31af7Sopenharmony_ci 517e5c31af7Sopenharmony_ci ${DECLARATIONS} 518e5c31af7Sopenharmony_ci 519e5c31af7Sopenharmony_ci void main() 520e5c31af7Sopenharmony_ci { 521e5c31af7Sopenharmony_ci vec4 c; 522e5c31af7Sopenharmony_ci vec4 a; 523e5c31af7Sopenharmony_ci ivec3 b; 524e5c31af7Sopenharmony_ci vec4 c = a + b; 525e5c31af7Sopenharmony_ci } 526e5c31af7Sopenharmony_ci "" 527e5c31af7Sopenharmony_ci end 528e5c31af7Sopenharmony_ci case add_vec4_ivec3_ivec3 529e5c31af7Sopenharmony_ci expect compile_fail 530e5c31af7Sopenharmony_ci 531e5c31af7Sopenharmony_ci both "" 532e5c31af7Sopenharmony_ci precision mediump float; 533e5c31af7Sopenharmony_ci precision mediump int; 534e5c31af7Sopenharmony_ci 535e5c31af7Sopenharmony_ci ${DECLARATIONS} 536e5c31af7Sopenharmony_ci 537e5c31af7Sopenharmony_ci void main() 538e5c31af7Sopenharmony_ci { 539e5c31af7Sopenharmony_ci ivec3 c; 540e5c31af7Sopenharmony_ci vec4 a; 541e5c31af7Sopenharmony_ci ivec3 b; 542e5c31af7Sopenharmony_ci ivec3 c = a + b; 543e5c31af7Sopenharmony_ci } 544e5c31af7Sopenharmony_ci "" 545e5c31af7Sopenharmony_ci end 546e5c31af7Sopenharmony_ci case add_vec4_ivec4_vec4 547e5c31af7Sopenharmony_ci expect compile_fail 548e5c31af7Sopenharmony_ci 549e5c31af7Sopenharmony_ci both "" 550e5c31af7Sopenharmony_ci precision mediump float; 551e5c31af7Sopenharmony_ci precision mediump int; 552e5c31af7Sopenharmony_ci 553e5c31af7Sopenharmony_ci ${DECLARATIONS} 554e5c31af7Sopenharmony_ci 555e5c31af7Sopenharmony_ci void main() 556e5c31af7Sopenharmony_ci { 557e5c31af7Sopenharmony_ci vec4 c; 558e5c31af7Sopenharmony_ci vec4 a; 559e5c31af7Sopenharmony_ci ivec4 b; 560e5c31af7Sopenharmony_ci vec4 c = a + b; 561e5c31af7Sopenharmony_ci } 562e5c31af7Sopenharmony_ci "" 563e5c31af7Sopenharmony_ci end 564e5c31af7Sopenharmony_ci case add_vec4_ivec4_ivec4 565e5c31af7Sopenharmony_ci expect compile_fail 566e5c31af7Sopenharmony_ci 567e5c31af7Sopenharmony_ci both "" 568e5c31af7Sopenharmony_ci precision mediump float; 569e5c31af7Sopenharmony_ci precision mediump int; 570e5c31af7Sopenharmony_ci 571e5c31af7Sopenharmony_ci ${DECLARATIONS} 572e5c31af7Sopenharmony_ci 573e5c31af7Sopenharmony_ci void main() 574e5c31af7Sopenharmony_ci { 575e5c31af7Sopenharmony_ci ivec4 c; 576e5c31af7Sopenharmony_ci vec4 a; 577e5c31af7Sopenharmony_ci ivec4 b; 578e5c31af7Sopenharmony_ci ivec4 c = a + b; 579e5c31af7Sopenharmony_ci } 580e5c31af7Sopenharmony_ci "" 581e5c31af7Sopenharmony_ci end 582e5c31af7Sopenharmony_ci case mul_float_int_float 583e5c31af7Sopenharmony_ci expect compile_fail 584e5c31af7Sopenharmony_ci 585e5c31af7Sopenharmony_ci both "" 586e5c31af7Sopenharmony_ci precision mediump float; 587e5c31af7Sopenharmony_ci precision mediump int; 588e5c31af7Sopenharmony_ci 589e5c31af7Sopenharmony_ci ${DECLARATIONS} 590e5c31af7Sopenharmony_ci 591e5c31af7Sopenharmony_ci void main() 592e5c31af7Sopenharmony_ci { 593e5c31af7Sopenharmony_ci float c; 594e5c31af7Sopenharmony_ci float a; 595e5c31af7Sopenharmony_ci int b; 596e5c31af7Sopenharmony_ci float c = a * b; 597e5c31af7Sopenharmony_ci } 598e5c31af7Sopenharmony_ci "" 599e5c31af7Sopenharmony_ci end 600e5c31af7Sopenharmony_ci case mul_float_int_int 601e5c31af7Sopenharmony_ci expect compile_fail 602e5c31af7Sopenharmony_ci 603e5c31af7Sopenharmony_ci both "" 604e5c31af7Sopenharmony_ci precision mediump float; 605e5c31af7Sopenharmony_ci precision mediump int; 606e5c31af7Sopenharmony_ci 607e5c31af7Sopenharmony_ci ${DECLARATIONS} 608e5c31af7Sopenharmony_ci 609e5c31af7Sopenharmony_ci void main() 610e5c31af7Sopenharmony_ci { 611e5c31af7Sopenharmony_ci int c; 612e5c31af7Sopenharmony_ci float a; 613e5c31af7Sopenharmony_ci int b; 614e5c31af7Sopenharmony_ci int c = a * b; 615e5c31af7Sopenharmony_ci } 616e5c31af7Sopenharmony_ci "" 617e5c31af7Sopenharmony_ci end 618e5c31af7Sopenharmony_ci case mul_float_ivec2_float 619e5c31af7Sopenharmony_ci expect compile_fail 620e5c31af7Sopenharmony_ci 621e5c31af7Sopenharmony_ci both "" 622e5c31af7Sopenharmony_ci precision mediump float; 623e5c31af7Sopenharmony_ci precision mediump int; 624e5c31af7Sopenharmony_ci 625e5c31af7Sopenharmony_ci ${DECLARATIONS} 626e5c31af7Sopenharmony_ci 627e5c31af7Sopenharmony_ci void main() 628e5c31af7Sopenharmony_ci { 629e5c31af7Sopenharmony_ci float c; 630e5c31af7Sopenharmony_ci float a; 631e5c31af7Sopenharmony_ci ivec2 b; 632e5c31af7Sopenharmony_ci float c = a * b; 633e5c31af7Sopenharmony_ci } 634e5c31af7Sopenharmony_ci "" 635e5c31af7Sopenharmony_ci end 636e5c31af7Sopenharmony_ci case mul_float_ivec2_ivec2 637e5c31af7Sopenharmony_ci expect compile_fail 638e5c31af7Sopenharmony_ci 639e5c31af7Sopenharmony_ci both "" 640e5c31af7Sopenharmony_ci precision mediump float; 641e5c31af7Sopenharmony_ci precision mediump int; 642e5c31af7Sopenharmony_ci 643e5c31af7Sopenharmony_ci ${DECLARATIONS} 644e5c31af7Sopenharmony_ci 645e5c31af7Sopenharmony_ci void main() 646e5c31af7Sopenharmony_ci { 647e5c31af7Sopenharmony_ci ivec2 c; 648e5c31af7Sopenharmony_ci float a; 649e5c31af7Sopenharmony_ci ivec2 b; 650e5c31af7Sopenharmony_ci ivec2 c = a * b; 651e5c31af7Sopenharmony_ci } 652e5c31af7Sopenharmony_ci "" 653e5c31af7Sopenharmony_ci end 654e5c31af7Sopenharmony_ci case mul_float_ivec3_float 655e5c31af7Sopenharmony_ci expect compile_fail 656e5c31af7Sopenharmony_ci 657e5c31af7Sopenharmony_ci both "" 658e5c31af7Sopenharmony_ci precision mediump float; 659e5c31af7Sopenharmony_ci precision mediump int; 660e5c31af7Sopenharmony_ci 661e5c31af7Sopenharmony_ci ${DECLARATIONS} 662e5c31af7Sopenharmony_ci 663e5c31af7Sopenharmony_ci void main() 664e5c31af7Sopenharmony_ci { 665e5c31af7Sopenharmony_ci float c; 666e5c31af7Sopenharmony_ci float a; 667e5c31af7Sopenharmony_ci ivec3 b; 668e5c31af7Sopenharmony_ci float c = a * b; 669e5c31af7Sopenharmony_ci } 670e5c31af7Sopenharmony_ci "" 671e5c31af7Sopenharmony_ci end 672e5c31af7Sopenharmony_ci case mul_float_ivec3_ivec3 673e5c31af7Sopenharmony_ci expect compile_fail 674e5c31af7Sopenharmony_ci 675e5c31af7Sopenharmony_ci both "" 676e5c31af7Sopenharmony_ci precision mediump float; 677e5c31af7Sopenharmony_ci precision mediump int; 678e5c31af7Sopenharmony_ci 679e5c31af7Sopenharmony_ci ${DECLARATIONS} 680e5c31af7Sopenharmony_ci 681e5c31af7Sopenharmony_ci void main() 682e5c31af7Sopenharmony_ci { 683e5c31af7Sopenharmony_ci ivec3 c; 684e5c31af7Sopenharmony_ci float a; 685e5c31af7Sopenharmony_ci ivec3 b; 686e5c31af7Sopenharmony_ci ivec3 c = a * b; 687e5c31af7Sopenharmony_ci } 688e5c31af7Sopenharmony_ci "" 689e5c31af7Sopenharmony_ci end 690e5c31af7Sopenharmony_ci case mul_float_ivec4_float 691e5c31af7Sopenharmony_ci expect compile_fail 692e5c31af7Sopenharmony_ci 693e5c31af7Sopenharmony_ci both "" 694e5c31af7Sopenharmony_ci precision mediump float; 695e5c31af7Sopenharmony_ci precision mediump int; 696e5c31af7Sopenharmony_ci 697e5c31af7Sopenharmony_ci ${DECLARATIONS} 698e5c31af7Sopenharmony_ci 699e5c31af7Sopenharmony_ci void main() 700e5c31af7Sopenharmony_ci { 701e5c31af7Sopenharmony_ci float c; 702e5c31af7Sopenharmony_ci float a; 703e5c31af7Sopenharmony_ci ivec4 b; 704e5c31af7Sopenharmony_ci float c = a * b; 705e5c31af7Sopenharmony_ci } 706e5c31af7Sopenharmony_ci "" 707e5c31af7Sopenharmony_ci end 708e5c31af7Sopenharmony_ci case mul_float_ivec4_ivec4 709e5c31af7Sopenharmony_ci expect compile_fail 710e5c31af7Sopenharmony_ci 711e5c31af7Sopenharmony_ci both "" 712e5c31af7Sopenharmony_ci precision mediump float; 713e5c31af7Sopenharmony_ci precision mediump int; 714e5c31af7Sopenharmony_ci 715e5c31af7Sopenharmony_ci ${DECLARATIONS} 716e5c31af7Sopenharmony_ci 717e5c31af7Sopenharmony_ci void main() 718e5c31af7Sopenharmony_ci { 719e5c31af7Sopenharmony_ci ivec4 c; 720e5c31af7Sopenharmony_ci float a; 721e5c31af7Sopenharmony_ci ivec4 b; 722e5c31af7Sopenharmony_ci ivec4 c = a * b; 723e5c31af7Sopenharmony_ci } 724e5c31af7Sopenharmony_ci "" 725e5c31af7Sopenharmony_ci end 726e5c31af7Sopenharmony_ci case mul_vec2_int_vec2 727e5c31af7Sopenharmony_ci expect compile_fail 728e5c31af7Sopenharmony_ci 729e5c31af7Sopenharmony_ci both "" 730e5c31af7Sopenharmony_ci precision mediump float; 731e5c31af7Sopenharmony_ci precision mediump int; 732e5c31af7Sopenharmony_ci 733e5c31af7Sopenharmony_ci ${DECLARATIONS} 734e5c31af7Sopenharmony_ci 735e5c31af7Sopenharmony_ci void main() 736e5c31af7Sopenharmony_ci { 737e5c31af7Sopenharmony_ci vec2 c; 738e5c31af7Sopenharmony_ci vec2 a; 739e5c31af7Sopenharmony_ci int b; 740e5c31af7Sopenharmony_ci vec2 c = a * b; 741e5c31af7Sopenharmony_ci } 742e5c31af7Sopenharmony_ci "" 743e5c31af7Sopenharmony_ci end 744e5c31af7Sopenharmony_ci case mul_vec2_int_int 745e5c31af7Sopenharmony_ci expect compile_fail 746e5c31af7Sopenharmony_ci 747e5c31af7Sopenharmony_ci both "" 748e5c31af7Sopenharmony_ci precision mediump float; 749e5c31af7Sopenharmony_ci precision mediump int; 750e5c31af7Sopenharmony_ci 751e5c31af7Sopenharmony_ci ${DECLARATIONS} 752e5c31af7Sopenharmony_ci 753e5c31af7Sopenharmony_ci void main() 754e5c31af7Sopenharmony_ci { 755e5c31af7Sopenharmony_ci int c; 756e5c31af7Sopenharmony_ci vec2 a; 757e5c31af7Sopenharmony_ci int b; 758e5c31af7Sopenharmony_ci int c = a * b; 759e5c31af7Sopenharmony_ci } 760e5c31af7Sopenharmony_ci "" 761e5c31af7Sopenharmony_ci end 762e5c31af7Sopenharmony_ci case mul_vec2_ivec2_vec2 763e5c31af7Sopenharmony_ci expect compile_fail 764e5c31af7Sopenharmony_ci 765e5c31af7Sopenharmony_ci both "" 766e5c31af7Sopenharmony_ci precision mediump float; 767e5c31af7Sopenharmony_ci precision mediump int; 768e5c31af7Sopenharmony_ci 769e5c31af7Sopenharmony_ci ${DECLARATIONS} 770e5c31af7Sopenharmony_ci 771e5c31af7Sopenharmony_ci void main() 772e5c31af7Sopenharmony_ci { 773e5c31af7Sopenharmony_ci vec2 c; 774e5c31af7Sopenharmony_ci vec2 a; 775e5c31af7Sopenharmony_ci ivec2 b; 776e5c31af7Sopenharmony_ci vec2 c = a * b; 777e5c31af7Sopenharmony_ci } 778e5c31af7Sopenharmony_ci "" 779e5c31af7Sopenharmony_ci end 780e5c31af7Sopenharmony_ci case mul_vec2_ivec2_ivec2 781e5c31af7Sopenharmony_ci expect compile_fail 782e5c31af7Sopenharmony_ci 783e5c31af7Sopenharmony_ci both "" 784e5c31af7Sopenharmony_ci precision mediump float; 785e5c31af7Sopenharmony_ci precision mediump int; 786e5c31af7Sopenharmony_ci 787e5c31af7Sopenharmony_ci ${DECLARATIONS} 788e5c31af7Sopenharmony_ci 789e5c31af7Sopenharmony_ci void main() 790e5c31af7Sopenharmony_ci { 791e5c31af7Sopenharmony_ci ivec2 c; 792e5c31af7Sopenharmony_ci vec2 a; 793e5c31af7Sopenharmony_ci ivec2 b; 794e5c31af7Sopenharmony_ci ivec2 c = a * b; 795e5c31af7Sopenharmony_ci } 796e5c31af7Sopenharmony_ci "" 797e5c31af7Sopenharmony_ci end 798e5c31af7Sopenharmony_ci case mul_vec2_ivec3_vec2 799e5c31af7Sopenharmony_ci expect compile_fail 800e5c31af7Sopenharmony_ci 801e5c31af7Sopenharmony_ci both "" 802e5c31af7Sopenharmony_ci precision mediump float; 803e5c31af7Sopenharmony_ci precision mediump int; 804e5c31af7Sopenharmony_ci 805e5c31af7Sopenharmony_ci ${DECLARATIONS} 806e5c31af7Sopenharmony_ci 807e5c31af7Sopenharmony_ci void main() 808e5c31af7Sopenharmony_ci { 809e5c31af7Sopenharmony_ci vec2 c; 810e5c31af7Sopenharmony_ci vec2 a; 811e5c31af7Sopenharmony_ci ivec3 b; 812e5c31af7Sopenharmony_ci vec2 c = a * b; 813e5c31af7Sopenharmony_ci } 814e5c31af7Sopenharmony_ci "" 815e5c31af7Sopenharmony_ci end 816e5c31af7Sopenharmony_ci case mul_vec2_ivec3_ivec3 817e5c31af7Sopenharmony_ci expect compile_fail 818e5c31af7Sopenharmony_ci 819e5c31af7Sopenharmony_ci both "" 820e5c31af7Sopenharmony_ci precision mediump float; 821e5c31af7Sopenharmony_ci precision mediump int; 822e5c31af7Sopenharmony_ci 823e5c31af7Sopenharmony_ci ${DECLARATIONS} 824e5c31af7Sopenharmony_ci 825e5c31af7Sopenharmony_ci void main() 826e5c31af7Sopenharmony_ci { 827e5c31af7Sopenharmony_ci ivec3 c; 828e5c31af7Sopenharmony_ci vec2 a; 829e5c31af7Sopenharmony_ci ivec3 b; 830e5c31af7Sopenharmony_ci ivec3 c = a * b; 831e5c31af7Sopenharmony_ci } 832e5c31af7Sopenharmony_ci "" 833e5c31af7Sopenharmony_ci end 834e5c31af7Sopenharmony_ci case mul_vec2_ivec4_vec2 835e5c31af7Sopenharmony_ci expect compile_fail 836e5c31af7Sopenharmony_ci 837e5c31af7Sopenharmony_ci both "" 838e5c31af7Sopenharmony_ci precision mediump float; 839e5c31af7Sopenharmony_ci precision mediump int; 840e5c31af7Sopenharmony_ci 841e5c31af7Sopenharmony_ci ${DECLARATIONS} 842e5c31af7Sopenharmony_ci 843e5c31af7Sopenharmony_ci void main() 844e5c31af7Sopenharmony_ci { 845e5c31af7Sopenharmony_ci vec2 c; 846e5c31af7Sopenharmony_ci vec2 a; 847e5c31af7Sopenharmony_ci ivec4 b; 848e5c31af7Sopenharmony_ci vec2 c = a * b; 849e5c31af7Sopenharmony_ci } 850e5c31af7Sopenharmony_ci "" 851e5c31af7Sopenharmony_ci end 852e5c31af7Sopenharmony_ci case mul_vec2_ivec4_ivec4 853e5c31af7Sopenharmony_ci expect compile_fail 854e5c31af7Sopenharmony_ci 855e5c31af7Sopenharmony_ci both "" 856e5c31af7Sopenharmony_ci precision mediump float; 857e5c31af7Sopenharmony_ci precision mediump int; 858e5c31af7Sopenharmony_ci 859e5c31af7Sopenharmony_ci ${DECLARATIONS} 860e5c31af7Sopenharmony_ci 861e5c31af7Sopenharmony_ci void main() 862e5c31af7Sopenharmony_ci { 863e5c31af7Sopenharmony_ci ivec4 c; 864e5c31af7Sopenharmony_ci vec2 a; 865e5c31af7Sopenharmony_ci ivec4 b; 866e5c31af7Sopenharmony_ci ivec4 c = a * b; 867e5c31af7Sopenharmony_ci } 868e5c31af7Sopenharmony_ci "" 869e5c31af7Sopenharmony_ci end 870e5c31af7Sopenharmony_ci case mul_vec3_int_vec3 871e5c31af7Sopenharmony_ci expect compile_fail 872e5c31af7Sopenharmony_ci 873e5c31af7Sopenharmony_ci both "" 874e5c31af7Sopenharmony_ci precision mediump float; 875e5c31af7Sopenharmony_ci precision mediump int; 876e5c31af7Sopenharmony_ci 877e5c31af7Sopenharmony_ci ${DECLARATIONS} 878e5c31af7Sopenharmony_ci 879e5c31af7Sopenharmony_ci void main() 880e5c31af7Sopenharmony_ci { 881e5c31af7Sopenharmony_ci vec3 c; 882e5c31af7Sopenharmony_ci vec3 a; 883e5c31af7Sopenharmony_ci int b; 884e5c31af7Sopenharmony_ci vec3 c = a * b; 885e5c31af7Sopenharmony_ci } 886e5c31af7Sopenharmony_ci "" 887e5c31af7Sopenharmony_ci end 888e5c31af7Sopenharmony_ci case mul_vec3_int_int 889e5c31af7Sopenharmony_ci expect compile_fail 890e5c31af7Sopenharmony_ci 891e5c31af7Sopenharmony_ci both "" 892e5c31af7Sopenharmony_ci precision mediump float; 893e5c31af7Sopenharmony_ci precision mediump int; 894e5c31af7Sopenharmony_ci 895e5c31af7Sopenharmony_ci ${DECLARATIONS} 896e5c31af7Sopenharmony_ci 897e5c31af7Sopenharmony_ci void main() 898e5c31af7Sopenharmony_ci { 899e5c31af7Sopenharmony_ci int c; 900e5c31af7Sopenharmony_ci vec3 a; 901e5c31af7Sopenharmony_ci int b; 902e5c31af7Sopenharmony_ci int c = a * b; 903e5c31af7Sopenharmony_ci } 904e5c31af7Sopenharmony_ci "" 905e5c31af7Sopenharmony_ci end 906e5c31af7Sopenharmony_ci case mul_vec3_ivec2_vec3 907e5c31af7Sopenharmony_ci expect compile_fail 908e5c31af7Sopenharmony_ci 909e5c31af7Sopenharmony_ci both "" 910e5c31af7Sopenharmony_ci precision mediump float; 911e5c31af7Sopenharmony_ci precision mediump int; 912e5c31af7Sopenharmony_ci 913e5c31af7Sopenharmony_ci ${DECLARATIONS} 914e5c31af7Sopenharmony_ci 915e5c31af7Sopenharmony_ci void main() 916e5c31af7Sopenharmony_ci { 917e5c31af7Sopenharmony_ci vec3 c; 918e5c31af7Sopenharmony_ci vec3 a; 919e5c31af7Sopenharmony_ci ivec2 b; 920e5c31af7Sopenharmony_ci vec3 c = a * b; 921e5c31af7Sopenharmony_ci } 922e5c31af7Sopenharmony_ci "" 923e5c31af7Sopenharmony_ci end 924e5c31af7Sopenharmony_ci case mul_vec3_ivec2_ivec2 925e5c31af7Sopenharmony_ci expect compile_fail 926e5c31af7Sopenharmony_ci 927e5c31af7Sopenharmony_ci both "" 928e5c31af7Sopenharmony_ci precision mediump float; 929e5c31af7Sopenharmony_ci precision mediump int; 930e5c31af7Sopenharmony_ci 931e5c31af7Sopenharmony_ci ${DECLARATIONS} 932e5c31af7Sopenharmony_ci 933e5c31af7Sopenharmony_ci void main() 934e5c31af7Sopenharmony_ci { 935e5c31af7Sopenharmony_ci ivec2 c; 936e5c31af7Sopenharmony_ci vec3 a; 937e5c31af7Sopenharmony_ci ivec2 b; 938e5c31af7Sopenharmony_ci ivec2 c = a * b; 939e5c31af7Sopenharmony_ci } 940e5c31af7Sopenharmony_ci "" 941e5c31af7Sopenharmony_ci end 942e5c31af7Sopenharmony_ci case mul_vec3_ivec3_vec3 943e5c31af7Sopenharmony_ci expect compile_fail 944e5c31af7Sopenharmony_ci 945e5c31af7Sopenharmony_ci both "" 946e5c31af7Sopenharmony_ci precision mediump float; 947e5c31af7Sopenharmony_ci precision mediump int; 948e5c31af7Sopenharmony_ci 949e5c31af7Sopenharmony_ci ${DECLARATIONS} 950e5c31af7Sopenharmony_ci 951e5c31af7Sopenharmony_ci void main() 952e5c31af7Sopenharmony_ci { 953e5c31af7Sopenharmony_ci vec3 c; 954e5c31af7Sopenharmony_ci vec3 a; 955e5c31af7Sopenharmony_ci ivec3 b; 956e5c31af7Sopenharmony_ci vec3 c = a * b; 957e5c31af7Sopenharmony_ci } 958e5c31af7Sopenharmony_ci "" 959e5c31af7Sopenharmony_ci end 960e5c31af7Sopenharmony_ci case mul_vec3_ivec3_ivec3 961e5c31af7Sopenharmony_ci expect compile_fail 962e5c31af7Sopenharmony_ci 963e5c31af7Sopenharmony_ci both "" 964e5c31af7Sopenharmony_ci precision mediump float; 965e5c31af7Sopenharmony_ci precision mediump int; 966e5c31af7Sopenharmony_ci 967e5c31af7Sopenharmony_ci ${DECLARATIONS} 968e5c31af7Sopenharmony_ci 969e5c31af7Sopenharmony_ci void main() 970e5c31af7Sopenharmony_ci { 971e5c31af7Sopenharmony_ci ivec3 c; 972e5c31af7Sopenharmony_ci vec3 a; 973e5c31af7Sopenharmony_ci ivec3 b; 974e5c31af7Sopenharmony_ci ivec3 c = a * b; 975e5c31af7Sopenharmony_ci } 976e5c31af7Sopenharmony_ci "" 977e5c31af7Sopenharmony_ci end 978e5c31af7Sopenharmony_ci case mul_vec3_ivec4_vec3 979e5c31af7Sopenharmony_ci expect compile_fail 980e5c31af7Sopenharmony_ci 981e5c31af7Sopenharmony_ci both "" 982e5c31af7Sopenharmony_ci precision mediump float; 983e5c31af7Sopenharmony_ci precision mediump int; 984e5c31af7Sopenharmony_ci 985e5c31af7Sopenharmony_ci ${DECLARATIONS} 986e5c31af7Sopenharmony_ci 987e5c31af7Sopenharmony_ci void main() 988e5c31af7Sopenharmony_ci { 989e5c31af7Sopenharmony_ci vec3 c; 990e5c31af7Sopenharmony_ci vec3 a; 991e5c31af7Sopenharmony_ci ivec4 b; 992e5c31af7Sopenharmony_ci vec3 c = a * b; 993e5c31af7Sopenharmony_ci } 994e5c31af7Sopenharmony_ci "" 995e5c31af7Sopenharmony_ci end 996e5c31af7Sopenharmony_ci case mul_vec3_ivec4_ivec4 997e5c31af7Sopenharmony_ci expect compile_fail 998e5c31af7Sopenharmony_ci 999e5c31af7Sopenharmony_ci both "" 1000e5c31af7Sopenharmony_ci precision mediump float; 1001e5c31af7Sopenharmony_ci precision mediump int; 1002e5c31af7Sopenharmony_ci 1003e5c31af7Sopenharmony_ci ${DECLARATIONS} 1004e5c31af7Sopenharmony_ci 1005e5c31af7Sopenharmony_ci void main() 1006e5c31af7Sopenharmony_ci { 1007e5c31af7Sopenharmony_ci ivec4 c; 1008e5c31af7Sopenharmony_ci vec3 a; 1009e5c31af7Sopenharmony_ci ivec4 b; 1010e5c31af7Sopenharmony_ci ivec4 c = a * b; 1011e5c31af7Sopenharmony_ci } 1012e5c31af7Sopenharmony_ci "" 1013e5c31af7Sopenharmony_ci end 1014e5c31af7Sopenharmony_ci case mul_vec4_int_vec4 1015e5c31af7Sopenharmony_ci expect compile_fail 1016e5c31af7Sopenharmony_ci 1017e5c31af7Sopenharmony_ci both "" 1018e5c31af7Sopenharmony_ci precision mediump float; 1019e5c31af7Sopenharmony_ci precision mediump int; 1020e5c31af7Sopenharmony_ci 1021e5c31af7Sopenharmony_ci ${DECLARATIONS} 1022e5c31af7Sopenharmony_ci 1023e5c31af7Sopenharmony_ci void main() 1024e5c31af7Sopenharmony_ci { 1025e5c31af7Sopenharmony_ci vec4 c; 1026e5c31af7Sopenharmony_ci vec4 a; 1027e5c31af7Sopenharmony_ci int b; 1028e5c31af7Sopenharmony_ci vec4 c = a * b; 1029e5c31af7Sopenharmony_ci } 1030e5c31af7Sopenharmony_ci "" 1031e5c31af7Sopenharmony_ci end 1032e5c31af7Sopenharmony_ci case mul_vec4_int_int 1033e5c31af7Sopenharmony_ci expect compile_fail 1034e5c31af7Sopenharmony_ci 1035e5c31af7Sopenharmony_ci both "" 1036e5c31af7Sopenharmony_ci precision mediump float; 1037e5c31af7Sopenharmony_ci precision mediump int; 1038e5c31af7Sopenharmony_ci 1039e5c31af7Sopenharmony_ci ${DECLARATIONS} 1040e5c31af7Sopenharmony_ci 1041e5c31af7Sopenharmony_ci void main() 1042e5c31af7Sopenharmony_ci { 1043e5c31af7Sopenharmony_ci int c; 1044e5c31af7Sopenharmony_ci vec4 a; 1045e5c31af7Sopenharmony_ci int b; 1046e5c31af7Sopenharmony_ci int c = a * b; 1047e5c31af7Sopenharmony_ci } 1048e5c31af7Sopenharmony_ci "" 1049e5c31af7Sopenharmony_ci end 1050e5c31af7Sopenharmony_ci case mul_vec4_ivec2_vec4 1051e5c31af7Sopenharmony_ci expect compile_fail 1052e5c31af7Sopenharmony_ci 1053e5c31af7Sopenharmony_ci both "" 1054e5c31af7Sopenharmony_ci precision mediump float; 1055e5c31af7Sopenharmony_ci precision mediump int; 1056e5c31af7Sopenharmony_ci 1057e5c31af7Sopenharmony_ci ${DECLARATIONS} 1058e5c31af7Sopenharmony_ci 1059e5c31af7Sopenharmony_ci void main() 1060e5c31af7Sopenharmony_ci { 1061e5c31af7Sopenharmony_ci vec4 c; 1062e5c31af7Sopenharmony_ci vec4 a; 1063e5c31af7Sopenharmony_ci ivec2 b; 1064e5c31af7Sopenharmony_ci vec4 c = a * b; 1065e5c31af7Sopenharmony_ci } 1066e5c31af7Sopenharmony_ci "" 1067e5c31af7Sopenharmony_ci end 1068e5c31af7Sopenharmony_ci case mul_vec4_ivec2_ivec2 1069e5c31af7Sopenharmony_ci expect compile_fail 1070e5c31af7Sopenharmony_ci 1071e5c31af7Sopenharmony_ci both "" 1072e5c31af7Sopenharmony_ci precision mediump float; 1073e5c31af7Sopenharmony_ci precision mediump int; 1074e5c31af7Sopenharmony_ci 1075e5c31af7Sopenharmony_ci ${DECLARATIONS} 1076e5c31af7Sopenharmony_ci 1077e5c31af7Sopenharmony_ci void main() 1078e5c31af7Sopenharmony_ci { 1079e5c31af7Sopenharmony_ci ivec2 c; 1080e5c31af7Sopenharmony_ci vec4 a; 1081e5c31af7Sopenharmony_ci ivec2 b; 1082e5c31af7Sopenharmony_ci ivec2 c = a * b; 1083e5c31af7Sopenharmony_ci } 1084e5c31af7Sopenharmony_ci "" 1085e5c31af7Sopenharmony_ci end 1086e5c31af7Sopenharmony_ci case mul_vec4_ivec3_vec4 1087e5c31af7Sopenharmony_ci expect compile_fail 1088e5c31af7Sopenharmony_ci 1089e5c31af7Sopenharmony_ci both "" 1090e5c31af7Sopenharmony_ci precision mediump float; 1091e5c31af7Sopenharmony_ci precision mediump int; 1092e5c31af7Sopenharmony_ci 1093e5c31af7Sopenharmony_ci ${DECLARATIONS} 1094e5c31af7Sopenharmony_ci 1095e5c31af7Sopenharmony_ci void main() 1096e5c31af7Sopenharmony_ci { 1097e5c31af7Sopenharmony_ci vec4 c; 1098e5c31af7Sopenharmony_ci vec4 a; 1099e5c31af7Sopenharmony_ci ivec3 b; 1100e5c31af7Sopenharmony_ci vec4 c = a * b; 1101e5c31af7Sopenharmony_ci } 1102e5c31af7Sopenharmony_ci "" 1103e5c31af7Sopenharmony_ci end 1104e5c31af7Sopenharmony_ci case mul_vec4_ivec3_ivec3 1105e5c31af7Sopenharmony_ci expect compile_fail 1106e5c31af7Sopenharmony_ci 1107e5c31af7Sopenharmony_ci both "" 1108e5c31af7Sopenharmony_ci precision mediump float; 1109e5c31af7Sopenharmony_ci precision mediump int; 1110e5c31af7Sopenharmony_ci 1111e5c31af7Sopenharmony_ci ${DECLARATIONS} 1112e5c31af7Sopenharmony_ci 1113e5c31af7Sopenharmony_ci void main() 1114e5c31af7Sopenharmony_ci { 1115e5c31af7Sopenharmony_ci ivec3 c; 1116e5c31af7Sopenharmony_ci vec4 a; 1117e5c31af7Sopenharmony_ci ivec3 b; 1118e5c31af7Sopenharmony_ci ivec3 c = a * b; 1119e5c31af7Sopenharmony_ci } 1120e5c31af7Sopenharmony_ci "" 1121e5c31af7Sopenharmony_ci end 1122e5c31af7Sopenharmony_ci case mul_vec4_ivec4_vec4 1123e5c31af7Sopenharmony_ci expect compile_fail 1124e5c31af7Sopenharmony_ci 1125e5c31af7Sopenharmony_ci both "" 1126e5c31af7Sopenharmony_ci precision mediump float; 1127e5c31af7Sopenharmony_ci precision mediump int; 1128e5c31af7Sopenharmony_ci 1129e5c31af7Sopenharmony_ci ${DECLARATIONS} 1130e5c31af7Sopenharmony_ci 1131e5c31af7Sopenharmony_ci void main() 1132e5c31af7Sopenharmony_ci { 1133e5c31af7Sopenharmony_ci vec4 c; 1134e5c31af7Sopenharmony_ci vec4 a; 1135e5c31af7Sopenharmony_ci ivec4 b; 1136e5c31af7Sopenharmony_ci vec4 c = a * b; 1137e5c31af7Sopenharmony_ci } 1138e5c31af7Sopenharmony_ci "" 1139e5c31af7Sopenharmony_ci end 1140e5c31af7Sopenharmony_ci case mul_vec4_ivec4_ivec4 1141e5c31af7Sopenharmony_ci expect compile_fail 1142e5c31af7Sopenharmony_ci 1143e5c31af7Sopenharmony_ci both "" 1144e5c31af7Sopenharmony_ci precision mediump float; 1145e5c31af7Sopenharmony_ci precision mediump int; 1146e5c31af7Sopenharmony_ci 1147e5c31af7Sopenharmony_ci ${DECLARATIONS} 1148e5c31af7Sopenharmony_ci 1149e5c31af7Sopenharmony_ci void main() 1150e5c31af7Sopenharmony_ci { 1151e5c31af7Sopenharmony_ci ivec4 c; 1152e5c31af7Sopenharmony_ci vec4 a; 1153e5c31af7Sopenharmony_ci ivec4 b; 1154e5c31af7Sopenharmony_ci ivec4 c = a * b; 1155e5c31af7Sopenharmony_ci } 1156e5c31af7Sopenharmony_ci "" 1157e5c31af7Sopenharmony_ci end 1158e5c31af7Sopenharmony_ci case sub_float_int_float 1159e5c31af7Sopenharmony_ci expect compile_fail 1160e5c31af7Sopenharmony_ci 1161e5c31af7Sopenharmony_ci both "" 1162e5c31af7Sopenharmony_ci precision mediump float; 1163e5c31af7Sopenharmony_ci precision mediump int; 1164e5c31af7Sopenharmony_ci 1165e5c31af7Sopenharmony_ci ${DECLARATIONS} 1166e5c31af7Sopenharmony_ci 1167e5c31af7Sopenharmony_ci void main() 1168e5c31af7Sopenharmony_ci { 1169e5c31af7Sopenharmony_ci float c; 1170e5c31af7Sopenharmony_ci float a; 1171e5c31af7Sopenharmony_ci int b; 1172e5c31af7Sopenharmony_ci float c = a - b; 1173e5c31af7Sopenharmony_ci } 1174e5c31af7Sopenharmony_ci "" 1175e5c31af7Sopenharmony_ci end 1176e5c31af7Sopenharmony_ci case sub_float_int_int 1177e5c31af7Sopenharmony_ci expect compile_fail 1178e5c31af7Sopenharmony_ci 1179e5c31af7Sopenharmony_ci both "" 1180e5c31af7Sopenharmony_ci precision mediump float; 1181e5c31af7Sopenharmony_ci precision mediump int; 1182e5c31af7Sopenharmony_ci 1183e5c31af7Sopenharmony_ci ${DECLARATIONS} 1184e5c31af7Sopenharmony_ci 1185e5c31af7Sopenharmony_ci void main() 1186e5c31af7Sopenharmony_ci { 1187e5c31af7Sopenharmony_ci int c; 1188e5c31af7Sopenharmony_ci float a; 1189e5c31af7Sopenharmony_ci int b; 1190e5c31af7Sopenharmony_ci int c = a - b; 1191e5c31af7Sopenharmony_ci } 1192e5c31af7Sopenharmony_ci "" 1193e5c31af7Sopenharmony_ci end 1194e5c31af7Sopenharmony_ci case sub_float_ivec2_float 1195e5c31af7Sopenharmony_ci expect compile_fail 1196e5c31af7Sopenharmony_ci 1197e5c31af7Sopenharmony_ci both "" 1198e5c31af7Sopenharmony_ci precision mediump float; 1199e5c31af7Sopenharmony_ci precision mediump int; 1200e5c31af7Sopenharmony_ci 1201e5c31af7Sopenharmony_ci ${DECLARATIONS} 1202e5c31af7Sopenharmony_ci 1203e5c31af7Sopenharmony_ci void main() 1204e5c31af7Sopenharmony_ci { 1205e5c31af7Sopenharmony_ci float c; 1206e5c31af7Sopenharmony_ci float a; 1207e5c31af7Sopenharmony_ci ivec2 b; 1208e5c31af7Sopenharmony_ci float c = a - b; 1209e5c31af7Sopenharmony_ci } 1210e5c31af7Sopenharmony_ci "" 1211e5c31af7Sopenharmony_ci end 1212e5c31af7Sopenharmony_ci case sub_float_ivec2_ivec2 1213e5c31af7Sopenharmony_ci expect compile_fail 1214e5c31af7Sopenharmony_ci 1215e5c31af7Sopenharmony_ci both "" 1216e5c31af7Sopenharmony_ci precision mediump float; 1217e5c31af7Sopenharmony_ci precision mediump int; 1218e5c31af7Sopenharmony_ci 1219e5c31af7Sopenharmony_ci ${DECLARATIONS} 1220e5c31af7Sopenharmony_ci 1221e5c31af7Sopenharmony_ci void main() 1222e5c31af7Sopenharmony_ci { 1223e5c31af7Sopenharmony_ci ivec2 c; 1224e5c31af7Sopenharmony_ci float a; 1225e5c31af7Sopenharmony_ci ivec2 b; 1226e5c31af7Sopenharmony_ci ivec2 c = a - b; 1227e5c31af7Sopenharmony_ci } 1228e5c31af7Sopenharmony_ci "" 1229e5c31af7Sopenharmony_ci end 1230e5c31af7Sopenharmony_ci case sub_float_ivec3_float 1231e5c31af7Sopenharmony_ci expect compile_fail 1232e5c31af7Sopenharmony_ci 1233e5c31af7Sopenharmony_ci both "" 1234e5c31af7Sopenharmony_ci precision mediump float; 1235e5c31af7Sopenharmony_ci precision mediump int; 1236e5c31af7Sopenharmony_ci 1237e5c31af7Sopenharmony_ci ${DECLARATIONS} 1238e5c31af7Sopenharmony_ci 1239e5c31af7Sopenharmony_ci void main() 1240e5c31af7Sopenharmony_ci { 1241e5c31af7Sopenharmony_ci float c; 1242e5c31af7Sopenharmony_ci float a; 1243e5c31af7Sopenharmony_ci ivec3 b; 1244e5c31af7Sopenharmony_ci float c = a - b; 1245e5c31af7Sopenharmony_ci } 1246e5c31af7Sopenharmony_ci "" 1247e5c31af7Sopenharmony_ci end 1248e5c31af7Sopenharmony_ci case sub_float_ivec3_ivec3 1249e5c31af7Sopenharmony_ci expect compile_fail 1250e5c31af7Sopenharmony_ci 1251e5c31af7Sopenharmony_ci both "" 1252e5c31af7Sopenharmony_ci precision mediump float; 1253e5c31af7Sopenharmony_ci precision mediump int; 1254e5c31af7Sopenharmony_ci 1255e5c31af7Sopenharmony_ci ${DECLARATIONS} 1256e5c31af7Sopenharmony_ci 1257e5c31af7Sopenharmony_ci void main() 1258e5c31af7Sopenharmony_ci { 1259e5c31af7Sopenharmony_ci ivec3 c; 1260e5c31af7Sopenharmony_ci float a; 1261e5c31af7Sopenharmony_ci ivec3 b; 1262e5c31af7Sopenharmony_ci ivec3 c = a - b; 1263e5c31af7Sopenharmony_ci } 1264e5c31af7Sopenharmony_ci "" 1265e5c31af7Sopenharmony_ci end 1266e5c31af7Sopenharmony_ci case sub_float_ivec4_float 1267e5c31af7Sopenharmony_ci expect compile_fail 1268e5c31af7Sopenharmony_ci 1269e5c31af7Sopenharmony_ci both "" 1270e5c31af7Sopenharmony_ci precision mediump float; 1271e5c31af7Sopenharmony_ci precision mediump int; 1272e5c31af7Sopenharmony_ci 1273e5c31af7Sopenharmony_ci ${DECLARATIONS} 1274e5c31af7Sopenharmony_ci 1275e5c31af7Sopenharmony_ci void main() 1276e5c31af7Sopenharmony_ci { 1277e5c31af7Sopenharmony_ci float c; 1278e5c31af7Sopenharmony_ci float a; 1279e5c31af7Sopenharmony_ci ivec4 b; 1280e5c31af7Sopenharmony_ci float c = a - b; 1281e5c31af7Sopenharmony_ci } 1282e5c31af7Sopenharmony_ci "" 1283e5c31af7Sopenharmony_ci end 1284e5c31af7Sopenharmony_ci case sub_float_ivec4_ivec4 1285e5c31af7Sopenharmony_ci expect compile_fail 1286e5c31af7Sopenharmony_ci 1287e5c31af7Sopenharmony_ci both "" 1288e5c31af7Sopenharmony_ci precision mediump float; 1289e5c31af7Sopenharmony_ci precision mediump int; 1290e5c31af7Sopenharmony_ci 1291e5c31af7Sopenharmony_ci ${DECLARATIONS} 1292e5c31af7Sopenharmony_ci 1293e5c31af7Sopenharmony_ci void main() 1294e5c31af7Sopenharmony_ci { 1295e5c31af7Sopenharmony_ci ivec4 c; 1296e5c31af7Sopenharmony_ci float a; 1297e5c31af7Sopenharmony_ci ivec4 b; 1298e5c31af7Sopenharmony_ci ivec4 c = a - b; 1299e5c31af7Sopenharmony_ci } 1300e5c31af7Sopenharmony_ci "" 1301e5c31af7Sopenharmony_ci end 1302e5c31af7Sopenharmony_ci case sub_vec2_int_vec2 1303e5c31af7Sopenharmony_ci expect compile_fail 1304e5c31af7Sopenharmony_ci 1305e5c31af7Sopenharmony_ci both "" 1306e5c31af7Sopenharmony_ci precision mediump float; 1307e5c31af7Sopenharmony_ci precision mediump int; 1308e5c31af7Sopenharmony_ci 1309e5c31af7Sopenharmony_ci ${DECLARATIONS} 1310e5c31af7Sopenharmony_ci 1311e5c31af7Sopenharmony_ci void main() 1312e5c31af7Sopenharmony_ci { 1313e5c31af7Sopenharmony_ci vec2 c; 1314e5c31af7Sopenharmony_ci vec2 a; 1315e5c31af7Sopenharmony_ci int b; 1316e5c31af7Sopenharmony_ci vec2 c = a - b; 1317e5c31af7Sopenharmony_ci } 1318e5c31af7Sopenharmony_ci "" 1319e5c31af7Sopenharmony_ci end 1320e5c31af7Sopenharmony_ci case sub_vec2_int_int 1321e5c31af7Sopenharmony_ci expect compile_fail 1322e5c31af7Sopenharmony_ci 1323e5c31af7Sopenharmony_ci both "" 1324e5c31af7Sopenharmony_ci precision mediump float; 1325e5c31af7Sopenharmony_ci precision mediump int; 1326e5c31af7Sopenharmony_ci 1327e5c31af7Sopenharmony_ci ${DECLARATIONS} 1328e5c31af7Sopenharmony_ci 1329e5c31af7Sopenharmony_ci void main() 1330e5c31af7Sopenharmony_ci { 1331e5c31af7Sopenharmony_ci int c; 1332e5c31af7Sopenharmony_ci vec2 a; 1333e5c31af7Sopenharmony_ci int b; 1334e5c31af7Sopenharmony_ci int c = a - b; 1335e5c31af7Sopenharmony_ci } 1336e5c31af7Sopenharmony_ci "" 1337e5c31af7Sopenharmony_ci end 1338e5c31af7Sopenharmony_ci case sub_vec2_ivec2_vec2 1339e5c31af7Sopenharmony_ci expect compile_fail 1340e5c31af7Sopenharmony_ci 1341e5c31af7Sopenharmony_ci both "" 1342e5c31af7Sopenharmony_ci precision mediump float; 1343e5c31af7Sopenharmony_ci precision mediump int; 1344e5c31af7Sopenharmony_ci 1345e5c31af7Sopenharmony_ci ${DECLARATIONS} 1346e5c31af7Sopenharmony_ci 1347e5c31af7Sopenharmony_ci void main() 1348e5c31af7Sopenharmony_ci { 1349e5c31af7Sopenharmony_ci vec2 c; 1350e5c31af7Sopenharmony_ci vec2 a; 1351e5c31af7Sopenharmony_ci ivec2 b; 1352e5c31af7Sopenharmony_ci vec2 c = a - b; 1353e5c31af7Sopenharmony_ci } 1354e5c31af7Sopenharmony_ci "" 1355e5c31af7Sopenharmony_ci end 1356e5c31af7Sopenharmony_ci case sub_vec2_ivec2_ivec2 1357e5c31af7Sopenharmony_ci expect compile_fail 1358e5c31af7Sopenharmony_ci 1359e5c31af7Sopenharmony_ci both "" 1360e5c31af7Sopenharmony_ci precision mediump float; 1361e5c31af7Sopenharmony_ci precision mediump int; 1362e5c31af7Sopenharmony_ci 1363e5c31af7Sopenharmony_ci ${DECLARATIONS} 1364e5c31af7Sopenharmony_ci 1365e5c31af7Sopenharmony_ci void main() 1366e5c31af7Sopenharmony_ci { 1367e5c31af7Sopenharmony_ci ivec2 c; 1368e5c31af7Sopenharmony_ci vec2 a; 1369e5c31af7Sopenharmony_ci ivec2 b; 1370e5c31af7Sopenharmony_ci ivec2 c = a - b; 1371e5c31af7Sopenharmony_ci } 1372e5c31af7Sopenharmony_ci "" 1373e5c31af7Sopenharmony_ci end 1374e5c31af7Sopenharmony_ci case sub_vec2_ivec3_vec2 1375e5c31af7Sopenharmony_ci expect compile_fail 1376e5c31af7Sopenharmony_ci 1377e5c31af7Sopenharmony_ci both "" 1378e5c31af7Sopenharmony_ci precision mediump float; 1379e5c31af7Sopenharmony_ci precision mediump int; 1380e5c31af7Sopenharmony_ci 1381e5c31af7Sopenharmony_ci ${DECLARATIONS} 1382e5c31af7Sopenharmony_ci 1383e5c31af7Sopenharmony_ci void main() 1384e5c31af7Sopenharmony_ci { 1385e5c31af7Sopenharmony_ci vec2 c; 1386e5c31af7Sopenharmony_ci vec2 a; 1387e5c31af7Sopenharmony_ci ivec3 b; 1388e5c31af7Sopenharmony_ci vec2 c = a - b; 1389e5c31af7Sopenharmony_ci } 1390e5c31af7Sopenharmony_ci "" 1391e5c31af7Sopenharmony_ci end 1392e5c31af7Sopenharmony_ci case sub_vec2_ivec3_ivec3 1393e5c31af7Sopenharmony_ci expect compile_fail 1394e5c31af7Sopenharmony_ci 1395e5c31af7Sopenharmony_ci both "" 1396e5c31af7Sopenharmony_ci precision mediump float; 1397e5c31af7Sopenharmony_ci precision mediump int; 1398e5c31af7Sopenharmony_ci 1399e5c31af7Sopenharmony_ci ${DECLARATIONS} 1400e5c31af7Sopenharmony_ci 1401e5c31af7Sopenharmony_ci void main() 1402e5c31af7Sopenharmony_ci { 1403e5c31af7Sopenharmony_ci ivec3 c; 1404e5c31af7Sopenharmony_ci vec2 a; 1405e5c31af7Sopenharmony_ci ivec3 b; 1406e5c31af7Sopenharmony_ci ivec3 c = a - b; 1407e5c31af7Sopenharmony_ci } 1408e5c31af7Sopenharmony_ci "" 1409e5c31af7Sopenharmony_ci end 1410e5c31af7Sopenharmony_ci case sub_vec2_ivec4_vec2 1411e5c31af7Sopenharmony_ci expect compile_fail 1412e5c31af7Sopenharmony_ci 1413e5c31af7Sopenharmony_ci both "" 1414e5c31af7Sopenharmony_ci precision mediump float; 1415e5c31af7Sopenharmony_ci precision mediump int; 1416e5c31af7Sopenharmony_ci 1417e5c31af7Sopenharmony_ci ${DECLARATIONS} 1418e5c31af7Sopenharmony_ci 1419e5c31af7Sopenharmony_ci void main() 1420e5c31af7Sopenharmony_ci { 1421e5c31af7Sopenharmony_ci vec2 c; 1422e5c31af7Sopenharmony_ci vec2 a; 1423e5c31af7Sopenharmony_ci ivec4 b; 1424e5c31af7Sopenharmony_ci vec2 c = a - b; 1425e5c31af7Sopenharmony_ci } 1426e5c31af7Sopenharmony_ci "" 1427e5c31af7Sopenharmony_ci end 1428e5c31af7Sopenharmony_ci case sub_vec2_ivec4_ivec4 1429e5c31af7Sopenharmony_ci expect compile_fail 1430e5c31af7Sopenharmony_ci 1431e5c31af7Sopenharmony_ci both "" 1432e5c31af7Sopenharmony_ci precision mediump float; 1433e5c31af7Sopenharmony_ci precision mediump int; 1434e5c31af7Sopenharmony_ci 1435e5c31af7Sopenharmony_ci ${DECLARATIONS} 1436e5c31af7Sopenharmony_ci 1437e5c31af7Sopenharmony_ci void main() 1438e5c31af7Sopenharmony_ci { 1439e5c31af7Sopenharmony_ci ivec4 c; 1440e5c31af7Sopenharmony_ci vec2 a; 1441e5c31af7Sopenharmony_ci ivec4 b; 1442e5c31af7Sopenharmony_ci ivec4 c = a - b; 1443e5c31af7Sopenharmony_ci } 1444e5c31af7Sopenharmony_ci "" 1445e5c31af7Sopenharmony_ci end 1446e5c31af7Sopenharmony_ci case sub_vec3_int_vec3 1447e5c31af7Sopenharmony_ci expect compile_fail 1448e5c31af7Sopenharmony_ci 1449e5c31af7Sopenharmony_ci both "" 1450e5c31af7Sopenharmony_ci precision mediump float; 1451e5c31af7Sopenharmony_ci precision mediump int; 1452e5c31af7Sopenharmony_ci 1453e5c31af7Sopenharmony_ci ${DECLARATIONS} 1454e5c31af7Sopenharmony_ci 1455e5c31af7Sopenharmony_ci void main() 1456e5c31af7Sopenharmony_ci { 1457e5c31af7Sopenharmony_ci vec3 c; 1458e5c31af7Sopenharmony_ci vec3 a; 1459e5c31af7Sopenharmony_ci int b; 1460e5c31af7Sopenharmony_ci vec3 c = a - b; 1461e5c31af7Sopenharmony_ci } 1462e5c31af7Sopenharmony_ci "" 1463e5c31af7Sopenharmony_ci end 1464e5c31af7Sopenharmony_ci case sub_vec3_int_int 1465e5c31af7Sopenharmony_ci expect compile_fail 1466e5c31af7Sopenharmony_ci 1467e5c31af7Sopenharmony_ci both "" 1468e5c31af7Sopenharmony_ci precision mediump float; 1469e5c31af7Sopenharmony_ci precision mediump int; 1470e5c31af7Sopenharmony_ci 1471e5c31af7Sopenharmony_ci ${DECLARATIONS} 1472e5c31af7Sopenharmony_ci 1473e5c31af7Sopenharmony_ci void main() 1474e5c31af7Sopenharmony_ci { 1475e5c31af7Sopenharmony_ci int c; 1476e5c31af7Sopenharmony_ci vec3 a; 1477e5c31af7Sopenharmony_ci int b; 1478e5c31af7Sopenharmony_ci int c = a - b; 1479e5c31af7Sopenharmony_ci } 1480e5c31af7Sopenharmony_ci "" 1481e5c31af7Sopenharmony_ci end 1482e5c31af7Sopenharmony_ci case sub_vec3_ivec2_vec3 1483e5c31af7Sopenharmony_ci expect compile_fail 1484e5c31af7Sopenharmony_ci 1485e5c31af7Sopenharmony_ci both "" 1486e5c31af7Sopenharmony_ci precision mediump float; 1487e5c31af7Sopenharmony_ci precision mediump int; 1488e5c31af7Sopenharmony_ci 1489e5c31af7Sopenharmony_ci ${DECLARATIONS} 1490e5c31af7Sopenharmony_ci 1491e5c31af7Sopenharmony_ci void main() 1492e5c31af7Sopenharmony_ci { 1493e5c31af7Sopenharmony_ci vec3 c; 1494e5c31af7Sopenharmony_ci vec3 a; 1495e5c31af7Sopenharmony_ci ivec2 b; 1496e5c31af7Sopenharmony_ci vec3 c = a - b; 1497e5c31af7Sopenharmony_ci } 1498e5c31af7Sopenharmony_ci "" 1499e5c31af7Sopenharmony_ci end 1500e5c31af7Sopenharmony_ci case sub_vec3_ivec2_ivec2 1501e5c31af7Sopenharmony_ci expect compile_fail 1502e5c31af7Sopenharmony_ci 1503e5c31af7Sopenharmony_ci both "" 1504e5c31af7Sopenharmony_ci precision mediump float; 1505e5c31af7Sopenharmony_ci precision mediump int; 1506e5c31af7Sopenharmony_ci 1507e5c31af7Sopenharmony_ci ${DECLARATIONS} 1508e5c31af7Sopenharmony_ci 1509e5c31af7Sopenharmony_ci void main() 1510e5c31af7Sopenharmony_ci { 1511e5c31af7Sopenharmony_ci ivec2 c; 1512e5c31af7Sopenharmony_ci vec3 a; 1513e5c31af7Sopenharmony_ci ivec2 b; 1514e5c31af7Sopenharmony_ci ivec2 c = a - b; 1515e5c31af7Sopenharmony_ci } 1516e5c31af7Sopenharmony_ci "" 1517e5c31af7Sopenharmony_ci end 1518e5c31af7Sopenharmony_ci case sub_vec3_ivec3_vec3 1519e5c31af7Sopenharmony_ci expect compile_fail 1520e5c31af7Sopenharmony_ci 1521e5c31af7Sopenharmony_ci both "" 1522e5c31af7Sopenharmony_ci precision mediump float; 1523e5c31af7Sopenharmony_ci precision mediump int; 1524e5c31af7Sopenharmony_ci 1525e5c31af7Sopenharmony_ci ${DECLARATIONS} 1526e5c31af7Sopenharmony_ci 1527e5c31af7Sopenharmony_ci void main() 1528e5c31af7Sopenharmony_ci { 1529e5c31af7Sopenharmony_ci vec3 c; 1530e5c31af7Sopenharmony_ci vec3 a; 1531e5c31af7Sopenharmony_ci ivec3 b; 1532e5c31af7Sopenharmony_ci vec3 c = a - b; 1533e5c31af7Sopenharmony_ci } 1534e5c31af7Sopenharmony_ci "" 1535e5c31af7Sopenharmony_ci end 1536e5c31af7Sopenharmony_ci case sub_vec3_ivec3_ivec3 1537e5c31af7Sopenharmony_ci expect compile_fail 1538e5c31af7Sopenharmony_ci 1539e5c31af7Sopenharmony_ci both "" 1540e5c31af7Sopenharmony_ci precision mediump float; 1541e5c31af7Sopenharmony_ci precision mediump int; 1542e5c31af7Sopenharmony_ci 1543e5c31af7Sopenharmony_ci ${DECLARATIONS} 1544e5c31af7Sopenharmony_ci 1545e5c31af7Sopenharmony_ci void main() 1546e5c31af7Sopenharmony_ci { 1547e5c31af7Sopenharmony_ci ivec3 c; 1548e5c31af7Sopenharmony_ci vec3 a; 1549e5c31af7Sopenharmony_ci ivec3 b; 1550e5c31af7Sopenharmony_ci ivec3 c = a - b; 1551e5c31af7Sopenharmony_ci } 1552e5c31af7Sopenharmony_ci "" 1553e5c31af7Sopenharmony_ci end 1554e5c31af7Sopenharmony_ci case sub_vec3_ivec4_vec3 1555e5c31af7Sopenharmony_ci expect compile_fail 1556e5c31af7Sopenharmony_ci 1557e5c31af7Sopenharmony_ci both "" 1558e5c31af7Sopenharmony_ci precision mediump float; 1559e5c31af7Sopenharmony_ci precision mediump int; 1560e5c31af7Sopenharmony_ci 1561e5c31af7Sopenharmony_ci ${DECLARATIONS} 1562e5c31af7Sopenharmony_ci 1563e5c31af7Sopenharmony_ci void main() 1564e5c31af7Sopenharmony_ci { 1565e5c31af7Sopenharmony_ci vec3 c; 1566e5c31af7Sopenharmony_ci vec3 a; 1567e5c31af7Sopenharmony_ci ivec4 b; 1568e5c31af7Sopenharmony_ci vec3 c = a - b; 1569e5c31af7Sopenharmony_ci } 1570e5c31af7Sopenharmony_ci "" 1571e5c31af7Sopenharmony_ci end 1572e5c31af7Sopenharmony_ci case sub_vec3_ivec4_ivec4 1573e5c31af7Sopenharmony_ci expect compile_fail 1574e5c31af7Sopenharmony_ci 1575e5c31af7Sopenharmony_ci both "" 1576e5c31af7Sopenharmony_ci precision mediump float; 1577e5c31af7Sopenharmony_ci precision mediump int; 1578e5c31af7Sopenharmony_ci 1579e5c31af7Sopenharmony_ci ${DECLARATIONS} 1580e5c31af7Sopenharmony_ci 1581e5c31af7Sopenharmony_ci void main() 1582e5c31af7Sopenharmony_ci { 1583e5c31af7Sopenharmony_ci ivec4 c; 1584e5c31af7Sopenharmony_ci vec3 a; 1585e5c31af7Sopenharmony_ci ivec4 b; 1586e5c31af7Sopenharmony_ci ivec4 c = a - b; 1587e5c31af7Sopenharmony_ci } 1588e5c31af7Sopenharmony_ci "" 1589e5c31af7Sopenharmony_ci end 1590e5c31af7Sopenharmony_ci case sub_vec4_int_vec4 1591e5c31af7Sopenharmony_ci expect compile_fail 1592e5c31af7Sopenharmony_ci 1593e5c31af7Sopenharmony_ci both "" 1594e5c31af7Sopenharmony_ci precision mediump float; 1595e5c31af7Sopenharmony_ci precision mediump int; 1596e5c31af7Sopenharmony_ci 1597e5c31af7Sopenharmony_ci ${DECLARATIONS} 1598e5c31af7Sopenharmony_ci 1599e5c31af7Sopenharmony_ci void main() 1600e5c31af7Sopenharmony_ci { 1601e5c31af7Sopenharmony_ci vec4 c; 1602e5c31af7Sopenharmony_ci vec4 a; 1603e5c31af7Sopenharmony_ci int b; 1604e5c31af7Sopenharmony_ci vec4 c = a - b; 1605e5c31af7Sopenharmony_ci } 1606e5c31af7Sopenharmony_ci "" 1607e5c31af7Sopenharmony_ci end 1608e5c31af7Sopenharmony_ci case sub_vec4_int_int 1609e5c31af7Sopenharmony_ci expect compile_fail 1610e5c31af7Sopenharmony_ci 1611e5c31af7Sopenharmony_ci both "" 1612e5c31af7Sopenharmony_ci precision mediump float; 1613e5c31af7Sopenharmony_ci precision mediump int; 1614e5c31af7Sopenharmony_ci 1615e5c31af7Sopenharmony_ci ${DECLARATIONS} 1616e5c31af7Sopenharmony_ci 1617e5c31af7Sopenharmony_ci void main() 1618e5c31af7Sopenharmony_ci { 1619e5c31af7Sopenharmony_ci int c; 1620e5c31af7Sopenharmony_ci vec4 a; 1621e5c31af7Sopenharmony_ci int b; 1622e5c31af7Sopenharmony_ci int c = a - b; 1623e5c31af7Sopenharmony_ci } 1624e5c31af7Sopenharmony_ci "" 1625e5c31af7Sopenharmony_ci end 1626e5c31af7Sopenharmony_ci case sub_vec4_ivec2_vec4 1627e5c31af7Sopenharmony_ci expect compile_fail 1628e5c31af7Sopenharmony_ci 1629e5c31af7Sopenharmony_ci both "" 1630e5c31af7Sopenharmony_ci precision mediump float; 1631e5c31af7Sopenharmony_ci precision mediump int; 1632e5c31af7Sopenharmony_ci 1633e5c31af7Sopenharmony_ci ${DECLARATIONS} 1634e5c31af7Sopenharmony_ci 1635e5c31af7Sopenharmony_ci void main() 1636e5c31af7Sopenharmony_ci { 1637e5c31af7Sopenharmony_ci vec4 c; 1638e5c31af7Sopenharmony_ci vec4 a; 1639e5c31af7Sopenharmony_ci ivec2 b; 1640e5c31af7Sopenharmony_ci vec4 c = a - b; 1641e5c31af7Sopenharmony_ci } 1642e5c31af7Sopenharmony_ci "" 1643e5c31af7Sopenharmony_ci end 1644e5c31af7Sopenharmony_ci case sub_vec4_ivec2_ivec2 1645e5c31af7Sopenharmony_ci expect compile_fail 1646e5c31af7Sopenharmony_ci 1647e5c31af7Sopenharmony_ci both "" 1648e5c31af7Sopenharmony_ci precision mediump float; 1649e5c31af7Sopenharmony_ci precision mediump int; 1650e5c31af7Sopenharmony_ci 1651e5c31af7Sopenharmony_ci ${DECLARATIONS} 1652e5c31af7Sopenharmony_ci 1653e5c31af7Sopenharmony_ci void main() 1654e5c31af7Sopenharmony_ci { 1655e5c31af7Sopenharmony_ci ivec2 c; 1656e5c31af7Sopenharmony_ci vec4 a; 1657e5c31af7Sopenharmony_ci ivec2 b; 1658e5c31af7Sopenharmony_ci ivec2 c = a - b; 1659e5c31af7Sopenharmony_ci } 1660e5c31af7Sopenharmony_ci "" 1661e5c31af7Sopenharmony_ci end 1662e5c31af7Sopenharmony_ci case sub_vec4_ivec3_vec4 1663e5c31af7Sopenharmony_ci expect compile_fail 1664e5c31af7Sopenharmony_ci 1665e5c31af7Sopenharmony_ci both "" 1666e5c31af7Sopenharmony_ci precision mediump float; 1667e5c31af7Sopenharmony_ci precision mediump int; 1668e5c31af7Sopenharmony_ci 1669e5c31af7Sopenharmony_ci ${DECLARATIONS} 1670e5c31af7Sopenharmony_ci 1671e5c31af7Sopenharmony_ci void main() 1672e5c31af7Sopenharmony_ci { 1673e5c31af7Sopenharmony_ci vec4 c; 1674e5c31af7Sopenharmony_ci vec4 a; 1675e5c31af7Sopenharmony_ci ivec3 b; 1676e5c31af7Sopenharmony_ci vec4 c = a - b; 1677e5c31af7Sopenharmony_ci } 1678e5c31af7Sopenharmony_ci "" 1679e5c31af7Sopenharmony_ci end 1680e5c31af7Sopenharmony_ci case sub_vec4_ivec3_ivec3 1681e5c31af7Sopenharmony_ci expect compile_fail 1682e5c31af7Sopenharmony_ci 1683e5c31af7Sopenharmony_ci both "" 1684e5c31af7Sopenharmony_ci precision mediump float; 1685e5c31af7Sopenharmony_ci precision mediump int; 1686e5c31af7Sopenharmony_ci 1687e5c31af7Sopenharmony_ci ${DECLARATIONS} 1688e5c31af7Sopenharmony_ci 1689e5c31af7Sopenharmony_ci void main() 1690e5c31af7Sopenharmony_ci { 1691e5c31af7Sopenharmony_ci ivec3 c; 1692e5c31af7Sopenharmony_ci vec4 a; 1693e5c31af7Sopenharmony_ci ivec3 b; 1694e5c31af7Sopenharmony_ci ivec3 c = a - b; 1695e5c31af7Sopenharmony_ci } 1696e5c31af7Sopenharmony_ci "" 1697e5c31af7Sopenharmony_ci end 1698e5c31af7Sopenharmony_ci case sub_vec4_ivec4_vec4 1699e5c31af7Sopenharmony_ci expect compile_fail 1700e5c31af7Sopenharmony_ci 1701e5c31af7Sopenharmony_ci both "" 1702e5c31af7Sopenharmony_ci precision mediump float; 1703e5c31af7Sopenharmony_ci precision mediump int; 1704e5c31af7Sopenharmony_ci 1705e5c31af7Sopenharmony_ci ${DECLARATIONS} 1706e5c31af7Sopenharmony_ci 1707e5c31af7Sopenharmony_ci void main() 1708e5c31af7Sopenharmony_ci { 1709e5c31af7Sopenharmony_ci vec4 c; 1710e5c31af7Sopenharmony_ci vec4 a; 1711e5c31af7Sopenharmony_ci ivec4 b; 1712e5c31af7Sopenharmony_ci vec4 c = a - b; 1713e5c31af7Sopenharmony_ci } 1714e5c31af7Sopenharmony_ci "" 1715e5c31af7Sopenharmony_ci end 1716e5c31af7Sopenharmony_ci case sub_vec4_ivec4_ivec4 1717e5c31af7Sopenharmony_ci expect compile_fail 1718e5c31af7Sopenharmony_ci 1719e5c31af7Sopenharmony_ci both "" 1720e5c31af7Sopenharmony_ci precision mediump float; 1721e5c31af7Sopenharmony_ci precision mediump int; 1722e5c31af7Sopenharmony_ci 1723e5c31af7Sopenharmony_ci ${DECLARATIONS} 1724e5c31af7Sopenharmony_ci 1725e5c31af7Sopenharmony_ci void main() 1726e5c31af7Sopenharmony_ci { 1727e5c31af7Sopenharmony_ci ivec4 c; 1728e5c31af7Sopenharmony_ci vec4 a; 1729e5c31af7Sopenharmony_ci ivec4 b; 1730e5c31af7Sopenharmony_ci ivec4 c = a - b; 1731e5c31af7Sopenharmony_ci } 1732e5c31af7Sopenharmony_ci "" 1733e5c31af7Sopenharmony_ci end 1734e5c31af7Sopenharmony_ci case div_float_int_float 1735e5c31af7Sopenharmony_ci expect compile_fail 1736e5c31af7Sopenharmony_ci 1737e5c31af7Sopenharmony_ci both "" 1738e5c31af7Sopenharmony_ci precision mediump float; 1739e5c31af7Sopenharmony_ci precision mediump int; 1740e5c31af7Sopenharmony_ci 1741e5c31af7Sopenharmony_ci ${DECLARATIONS} 1742e5c31af7Sopenharmony_ci 1743e5c31af7Sopenharmony_ci void main() 1744e5c31af7Sopenharmony_ci { 1745e5c31af7Sopenharmony_ci float c; 1746e5c31af7Sopenharmony_ci float a; 1747e5c31af7Sopenharmony_ci int b; 1748e5c31af7Sopenharmony_ci float c = a / b; 1749e5c31af7Sopenharmony_ci } 1750e5c31af7Sopenharmony_ci "" 1751e5c31af7Sopenharmony_ci end 1752e5c31af7Sopenharmony_ci case div_float_int_int 1753e5c31af7Sopenharmony_ci expect compile_fail 1754e5c31af7Sopenharmony_ci 1755e5c31af7Sopenharmony_ci both "" 1756e5c31af7Sopenharmony_ci precision mediump float; 1757e5c31af7Sopenharmony_ci precision mediump int; 1758e5c31af7Sopenharmony_ci 1759e5c31af7Sopenharmony_ci ${DECLARATIONS} 1760e5c31af7Sopenharmony_ci 1761e5c31af7Sopenharmony_ci void main() 1762e5c31af7Sopenharmony_ci { 1763e5c31af7Sopenharmony_ci int c; 1764e5c31af7Sopenharmony_ci float a; 1765e5c31af7Sopenharmony_ci int b; 1766e5c31af7Sopenharmony_ci int c = a / b; 1767e5c31af7Sopenharmony_ci } 1768e5c31af7Sopenharmony_ci "" 1769e5c31af7Sopenharmony_ci end 1770e5c31af7Sopenharmony_ci case div_float_ivec2_float 1771e5c31af7Sopenharmony_ci expect compile_fail 1772e5c31af7Sopenharmony_ci 1773e5c31af7Sopenharmony_ci both "" 1774e5c31af7Sopenharmony_ci precision mediump float; 1775e5c31af7Sopenharmony_ci precision mediump int; 1776e5c31af7Sopenharmony_ci 1777e5c31af7Sopenharmony_ci ${DECLARATIONS} 1778e5c31af7Sopenharmony_ci 1779e5c31af7Sopenharmony_ci void main() 1780e5c31af7Sopenharmony_ci { 1781e5c31af7Sopenharmony_ci float c; 1782e5c31af7Sopenharmony_ci float a; 1783e5c31af7Sopenharmony_ci ivec2 b; 1784e5c31af7Sopenharmony_ci float c = a / b; 1785e5c31af7Sopenharmony_ci } 1786e5c31af7Sopenharmony_ci "" 1787e5c31af7Sopenharmony_ci end 1788e5c31af7Sopenharmony_ci case div_float_ivec2_ivec2 1789e5c31af7Sopenharmony_ci expect compile_fail 1790e5c31af7Sopenharmony_ci 1791e5c31af7Sopenharmony_ci both "" 1792e5c31af7Sopenharmony_ci precision mediump float; 1793e5c31af7Sopenharmony_ci precision mediump int; 1794e5c31af7Sopenharmony_ci 1795e5c31af7Sopenharmony_ci ${DECLARATIONS} 1796e5c31af7Sopenharmony_ci 1797e5c31af7Sopenharmony_ci void main() 1798e5c31af7Sopenharmony_ci { 1799e5c31af7Sopenharmony_ci ivec2 c; 1800e5c31af7Sopenharmony_ci float a; 1801e5c31af7Sopenharmony_ci ivec2 b; 1802e5c31af7Sopenharmony_ci ivec2 c = a / b; 1803e5c31af7Sopenharmony_ci } 1804e5c31af7Sopenharmony_ci "" 1805e5c31af7Sopenharmony_ci end 1806e5c31af7Sopenharmony_ci case div_float_ivec3_float 1807e5c31af7Sopenharmony_ci expect compile_fail 1808e5c31af7Sopenharmony_ci 1809e5c31af7Sopenharmony_ci both "" 1810e5c31af7Sopenharmony_ci precision mediump float; 1811e5c31af7Sopenharmony_ci precision mediump int; 1812e5c31af7Sopenharmony_ci 1813e5c31af7Sopenharmony_ci ${DECLARATIONS} 1814e5c31af7Sopenharmony_ci 1815e5c31af7Sopenharmony_ci void main() 1816e5c31af7Sopenharmony_ci { 1817e5c31af7Sopenharmony_ci float c; 1818e5c31af7Sopenharmony_ci float a; 1819e5c31af7Sopenharmony_ci ivec3 b; 1820e5c31af7Sopenharmony_ci float c = a / b; 1821e5c31af7Sopenharmony_ci } 1822e5c31af7Sopenharmony_ci "" 1823e5c31af7Sopenharmony_ci end 1824e5c31af7Sopenharmony_ci case div_float_ivec3_ivec3 1825e5c31af7Sopenharmony_ci expect compile_fail 1826e5c31af7Sopenharmony_ci 1827e5c31af7Sopenharmony_ci both "" 1828e5c31af7Sopenharmony_ci precision mediump float; 1829e5c31af7Sopenharmony_ci precision mediump int; 1830e5c31af7Sopenharmony_ci 1831e5c31af7Sopenharmony_ci ${DECLARATIONS} 1832e5c31af7Sopenharmony_ci 1833e5c31af7Sopenharmony_ci void main() 1834e5c31af7Sopenharmony_ci { 1835e5c31af7Sopenharmony_ci ivec3 c; 1836e5c31af7Sopenharmony_ci float a; 1837e5c31af7Sopenharmony_ci ivec3 b; 1838e5c31af7Sopenharmony_ci ivec3 c = a / b; 1839e5c31af7Sopenharmony_ci } 1840e5c31af7Sopenharmony_ci "" 1841e5c31af7Sopenharmony_ci end 1842e5c31af7Sopenharmony_ci case div_float_ivec4_float 1843e5c31af7Sopenharmony_ci expect compile_fail 1844e5c31af7Sopenharmony_ci 1845e5c31af7Sopenharmony_ci both "" 1846e5c31af7Sopenharmony_ci precision mediump float; 1847e5c31af7Sopenharmony_ci precision mediump int; 1848e5c31af7Sopenharmony_ci 1849e5c31af7Sopenharmony_ci ${DECLARATIONS} 1850e5c31af7Sopenharmony_ci 1851e5c31af7Sopenharmony_ci void main() 1852e5c31af7Sopenharmony_ci { 1853e5c31af7Sopenharmony_ci float c; 1854e5c31af7Sopenharmony_ci float a; 1855e5c31af7Sopenharmony_ci ivec4 b; 1856e5c31af7Sopenharmony_ci float c = a / b; 1857e5c31af7Sopenharmony_ci } 1858e5c31af7Sopenharmony_ci "" 1859e5c31af7Sopenharmony_ci end 1860e5c31af7Sopenharmony_ci case div_float_ivec4_ivec4 1861e5c31af7Sopenharmony_ci expect compile_fail 1862e5c31af7Sopenharmony_ci 1863e5c31af7Sopenharmony_ci both "" 1864e5c31af7Sopenharmony_ci precision mediump float; 1865e5c31af7Sopenharmony_ci precision mediump int; 1866e5c31af7Sopenharmony_ci 1867e5c31af7Sopenharmony_ci ${DECLARATIONS} 1868e5c31af7Sopenharmony_ci 1869e5c31af7Sopenharmony_ci void main() 1870e5c31af7Sopenharmony_ci { 1871e5c31af7Sopenharmony_ci ivec4 c; 1872e5c31af7Sopenharmony_ci float a; 1873e5c31af7Sopenharmony_ci ivec4 b; 1874e5c31af7Sopenharmony_ci ivec4 c = a / b; 1875e5c31af7Sopenharmony_ci } 1876e5c31af7Sopenharmony_ci "" 1877e5c31af7Sopenharmony_ci end 1878e5c31af7Sopenharmony_ci case div_vec2_int_vec2 1879e5c31af7Sopenharmony_ci expect compile_fail 1880e5c31af7Sopenharmony_ci 1881e5c31af7Sopenharmony_ci both "" 1882e5c31af7Sopenharmony_ci precision mediump float; 1883e5c31af7Sopenharmony_ci precision mediump int; 1884e5c31af7Sopenharmony_ci 1885e5c31af7Sopenharmony_ci ${DECLARATIONS} 1886e5c31af7Sopenharmony_ci 1887e5c31af7Sopenharmony_ci void main() 1888e5c31af7Sopenharmony_ci { 1889e5c31af7Sopenharmony_ci vec2 c; 1890e5c31af7Sopenharmony_ci vec2 a; 1891e5c31af7Sopenharmony_ci int b; 1892e5c31af7Sopenharmony_ci vec2 c = a / b; 1893e5c31af7Sopenharmony_ci } 1894e5c31af7Sopenharmony_ci "" 1895e5c31af7Sopenharmony_ci end 1896e5c31af7Sopenharmony_ci case div_vec2_int_int 1897e5c31af7Sopenharmony_ci expect compile_fail 1898e5c31af7Sopenharmony_ci 1899e5c31af7Sopenharmony_ci both "" 1900e5c31af7Sopenharmony_ci precision mediump float; 1901e5c31af7Sopenharmony_ci precision mediump int; 1902e5c31af7Sopenharmony_ci 1903e5c31af7Sopenharmony_ci ${DECLARATIONS} 1904e5c31af7Sopenharmony_ci 1905e5c31af7Sopenharmony_ci void main() 1906e5c31af7Sopenharmony_ci { 1907e5c31af7Sopenharmony_ci int c; 1908e5c31af7Sopenharmony_ci vec2 a; 1909e5c31af7Sopenharmony_ci int b; 1910e5c31af7Sopenharmony_ci int c = a / b; 1911e5c31af7Sopenharmony_ci } 1912e5c31af7Sopenharmony_ci "" 1913e5c31af7Sopenharmony_ci end 1914e5c31af7Sopenharmony_ci case div_vec2_ivec2_vec2 1915e5c31af7Sopenharmony_ci expect compile_fail 1916e5c31af7Sopenharmony_ci 1917e5c31af7Sopenharmony_ci both "" 1918e5c31af7Sopenharmony_ci precision mediump float; 1919e5c31af7Sopenharmony_ci precision mediump int; 1920e5c31af7Sopenharmony_ci 1921e5c31af7Sopenharmony_ci ${DECLARATIONS} 1922e5c31af7Sopenharmony_ci 1923e5c31af7Sopenharmony_ci void main() 1924e5c31af7Sopenharmony_ci { 1925e5c31af7Sopenharmony_ci vec2 c; 1926e5c31af7Sopenharmony_ci vec2 a; 1927e5c31af7Sopenharmony_ci ivec2 b; 1928e5c31af7Sopenharmony_ci vec2 c = a / b; 1929e5c31af7Sopenharmony_ci } 1930e5c31af7Sopenharmony_ci "" 1931e5c31af7Sopenharmony_ci end 1932e5c31af7Sopenharmony_ci case div_vec2_ivec2_ivec2 1933e5c31af7Sopenharmony_ci expect compile_fail 1934e5c31af7Sopenharmony_ci 1935e5c31af7Sopenharmony_ci both "" 1936e5c31af7Sopenharmony_ci precision mediump float; 1937e5c31af7Sopenharmony_ci precision mediump int; 1938e5c31af7Sopenharmony_ci 1939e5c31af7Sopenharmony_ci ${DECLARATIONS} 1940e5c31af7Sopenharmony_ci 1941e5c31af7Sopenharmony_ci void main() 1942e5c31af7Sopenharmony_ci { 1943e5c31af7Sopenharmony_ci ivec2 c; 1944e5c31af7Sopenharmony_ci vec2 a; 1945e5c31af7Sopenharmony_ci ivec2 b; 1946e5c31af7Sopenharmony_ci ivec2 c = a / b; 1947e5c31af7Sopenharmony_ci } 1948e5c31af7Sopenharmony_ci "" 1949e5c31af7Sopenharmony_ci end 1950e5c31af7Sopenharmony_ci case div_vec2_ivec3_vec2 1951e5c31af7Sopenharmony_ci expect compile_fail 1952e5c31af7Sopenharmony_ci 1953e5c31af7Sopenharmony_ci both "" 1954e5c31af7Sopenharmony_ci precision mediump float; 1955e5c31af7Sopenharmony_ci precision mediump int; 1956e5c31af7Sopenharmony_ci 1957e5c31af7Sopenharmony_ci ${DECLARATIONS} 1958e5c31af7Sopenharmony_ci 1959e5c31af7Sopenharmony_ci void main() 1960e5c31af7Sopenharmony_ci { 1961e5c31af7Sopenharmony_ci vec2 c; 1962e5c31af7Sopenharmony_ci vec2 a; 1963e5c31af7Sopenharmony_ci ivec3 b; 1964e5c31af7Sopenharmony_ci vec2 c = a / b; 1965e5c31af7Sopenharmony_ci } 1966e5c31af7Sopenharmony_ci "" 1967e5c31af7Sopenharmony_ci end 1968e5c31af7Sopenharmony_ci case div_vec2_ivec3_ivec3 1969e5c31af7Sopenharmony_ci expect compile_fail 1970e5c31af7Sopenharmony_ci 1971e5c31af7Sopenharmony_ci both "" 1972e5c31af7Sopenharmony_ci precision mediump float; 1973e5c31af7Sopenharmony_ci precision mediump int; 1974e5c31af7Sopenharmony_ci 1975e5c31af7Sopenharmony_ci ${DECLARATIONS} 1976e5c31af7Sopenharmony_ci 1977e5c31af7Sopenharmony_ci void main() 1978e5c31af7Sopenharmony_ci { 1979e5c31af7Sopenharmony_ci ivec3 c; 1980e5c31af7Sopenharmony_ci vec2 a; 1981e5c31af7Sopenharmony_ci ivec3 b; 1982e5c31af7Sopenharmony_ci ivec3 c = a / b; 1983e5c31af7Sopenharmony_ci } 1984e5c31af7Sopenharmony_ci "" 1985e5c31af7Sopenharmony_ci end 1986e5c31af7Sopenharmony_ci case div_vec2_ivec4_vec2 1987e5c31af7Sopenharmony_ci expect compile_fail 1988e5c31af7Sopenharmony_ci 1989e5c31af7Sopenharmony_ci both "" 1990e5c31af7Sopenharmony_ci precision mediump float; 1991e5c31af7Sopenharmony_ci precision mediump int; 1992e5c31af7Sopenharmony_ci 1993e5c31af7Sopenharmony_ci ${DECLARATIONS} 1994e5c31af7Sopenharmony_ci 1995e5c31af7Sopenharmony_ci void main() 1996e5c31af7Sopenharmony_ci { 1997e5c31af7Sopenharmony_ci vec2 c; 1998e5c31af7Sopenharmony_ci vec2 a; 1999e5c31af7Sopenharmony_ci ivec4 b; 2000e5c31af7Sopenharmony_ci vec2 c = a / b; 2001e5c31af7Sopenharmony_ci } 2002e5c31af7Sopenharmony_ci "" 2003e5c31af7Sopenharmony_ci end 2004e5c31af7Sopenharmony_ci case div_vec2_ivec4_ivec4 2005e5c31af7Sopenharmony_ci expect compile_fail 2006e5c31af7Sopenharmony_ci 2007e5c31af7Sopenharmony_ci both "" 2008e5c31af7Sopenharmony_ci precision mediump float; 2009e5c31af7Sopenharmony_ci precision mediump int; 2010e5c31af7Sopenharmony_ci 2011e5c31af7Sopenharmony_ci ${DECLARATIONS} 2012e5c31af7Sopenharmony_ci 2013e5c31af7Sopenharmony_ci void main() 2014e5c31af7Sopenharmony_ci { 2015e5c31af7Sopenharmony_ci ivec4 c; 2016e5c31af7Sopenharmony_ci vec2 a; 2017e5c31af7Sopenharmony_ci ivec4 b; 2018e5c31af7Sopenharmony_ci ivec4 c = a / b; 2019e5c31af7Sopenharmony_ci } 2020e5c31af7Sopenharmony_ci "" 2021e5c31af7Sopenharmony_ci end 2022e5c31af7Sopenharmony_ci case div_vec3_int_vec3 2023e5c31af7Sopenharmony_ci expect compile_fail 2024e5c31af7Sopenharmony_ci 2025e5c31af7Sopenharmony_ci both "" 2026e5c31af7Sopenharmony_ci precision mediump float; 2027e5c31af7Sopenharmony_ci precision mediump int; 2028e5c31af7Sopenharmony_ci 2029e5c31af7Sopenharmony_ci ${DECLARATIONS} 2030e5c31af7Sopenharmony_ci 2031e5c31af7Sopenharmony_ci void main() 2032e5c31af7Sopenharmony_ci { 2033e5c31af7Sopenharmony_ci vec3 c; 2034e5c31af7Sopenharmony_ci vec3 a; 2035e5c31af7Sopenharmony_ci int b; 2036e5c31af7Sopenharmony_ci vec3 c = a / b; 2037e5c31af7Sopenharmony_ci } 2038e5c31af7Sopenharmony_ci "" 2039e5c31af7Sopenharmony_ci end 2040e5c31af7Sopenharmony_ci case div_vec3_int_int 2041e5c31af7Sopenharmony_ci expect compile_fail 2042e5c31af7Sopenharmony_ci 2043e5c31af7Sopenharmony_ci both "" 2044e5c31af7Sopenharmony_ci precision mediump float; 2045e5c31af7Sopenharmony_ci precision mediump int; 2046e5c31af7Sopenharmony_ci 2047e5c31af7Sopenharmony_ci ${DECLARATIONS} 2048e5c31af7Sopenharmony_ci 2049e5c31af7Sopenharmony_ci void main() 2050e5c31af7Sopenharmony_ci { 2051e5c31af7Sopenharmony_ci int c; 2052e5c31af7Sopenharmony_ci vec3 a; 2053e5c31af7Sopenharmony_ci int b; 2054e5c31af7Sopenharmony_ci int c = a / b; 2055e5c31af7Sopenharmony_ci } 2056e5c31af7Sopenharmony_ci "" 2057e5c31af7Sopenharmony_ci end 2058e5c31af7Sopenharmony_ci case div_vec3_ivec2_vec3 2059e5c31af7Sopenharmony_ci expect compile_fail 2060e5c31af7Sopenharmony_ci 2061e5c31af7Sopenharmony_ci both "" 2062e5c31af7Sopenharmony_ci precision mediump float; 2063e5c31af7Sopenharmony_ci precision mediump int; 2064e5c31af7Sopenharmony_ci 2065e5c31af7Sopenharmony_ci ${DECLARATIONS} 2066e5c31af7Sopenharmony_ci 2067e5c31af7Sopenharmony_ci void main() 2068e5c31af7Sopenharmony_ci { 2069e5c31af7Sopenharmony_ci vec3 c; 2070e5c31af7Sopenharmony_ci vec3 a; 2071e5c31af7Sopenharmony_ci ivec2 b; 2072e5c31af7Sopenharmony_ci vec3 c = a / b; 2073e5c31af7Sopenharmony_ci } 2074e5c31af7Sopenharmony_ci "" 2075e5c31af7Sopenharmony_ci end 2076e5c31af7Sopenharmony_ci case div_vec3_ivec2_ivec2 2077e5c31af7Sopenharmony_ci expect compile_fail 2078e5c31af7Sopenharmony_ci 2079e5c31af7Sopenharmony_ci both "" 2080e5c31af7Sopenharmony_ci precision mediump float; 2081e5c31af7Sopenharmony_ci precision mediump int; 2082e5c31af7Sopenharmony_ci 2083e5c31af7Sopenharmony_ci ${DECLARATIONS} 2084e5c31af7Sopenharmony_ci 2085e5c31af7Sopenharmony_ci void main() 2086e5c31af7Sopenharmony_ci { 2087e5c31af7Sopenharmony_ci ivec2 c; 2088e5c31af7Sopenharmony_ci vec3 a; 2089e5c31af7Sopenharmony_ci ivec2 b; 2090e5c31af7Sopenharmony_ci ivec2 c = a / b; 2091e5c31af7Sopenharmony_ci } 2092e5c31af7Sopenharmony_ci "" 2093e5c31af7Sopenharmony_ci end 2094e5c31af7Sopenharmony_ci case div_vec3_ivec3_vec3 2095e5c31af7Sopenharmony_ci expect compile_fail 2096e5c31af7Sopenharmony_ci 2097e5c31af7Sopenharmony_ci both "" 2098e5c31af7Sopenharmony_ci precision mediump float; 2099e5c31af7Sopenharmony_ci precision mediump int; 2100e5c31af7Sopenharmony_ci 2101e5c31af7Sopenharmony_ci ${DECLARATIONS} 2102e5c31af7Sopenharmony_ci 2103e5c31af7Sopenharmony_ci void main() 2104e5c31af7Sopenharmony_ci { 2105e5c31af7Sopenharmony_ci vec3 c; 2106e5c31af7Sopenharmony_ci vec3 a; 2107e5c31af7Sopenharmony_ci ivec3 b; 2108e5c31af7Sopenharmony_ci vec3 c = a / b; 2109e5c31af7Sopenharmony_ci } 2110e5c31af7Sopenharmony_ci "" 2111e5c31af7Sopenharmony_ci end 2112e5c31af7Sopenharmony_ci case div_vec3_ivec3_ivec3 2113e5c31af7Sopenharmony_ci expect compile_fail 2114e5c31af7Sopenharmony_ci 2115e5c31af7Sopenharmony_ci both "" 2116e5c31af7Sopenharmony_ci precision mediump float; 2117e5c31af7Sopenharmony_ci precision mediump int; 2118e5c31af7Sopenharmony_ci 2119e5c31af7Sopenharmony_ci ${DECLARATIONS} 2120e5c31af7Sopenharmony_ci 2121e5c31af7Sopenharmony_ci void main() 2122e5c31af7Sopenharmony_ci { 2123e5c31af7Sopenharmony_ci ivec3 c; 2124e5c31af7Sopenharmony_ci vec3 a; 2125e5c31af7Sopenharmony_ci ivec3 b; 2126e5c31af7Sopenharmony_ci ivec3 c = a / b; 2127e5c31af7Sopenharmony_ci } 2128e5c31af7Sopenharmony_ci "" 2129e5c31af7Sopenharmony_ci end 2130e5c31af7Sopenharmony_ci case div_vec3_ivec4_vec3 2131e5c31af7Sopenharmony_ci expect compile_fail 2132e5c31af7Sopenharmony_ci 2133e5c31af7Sopenharmony_ci both "" 2134e5c31af7Sopenharmony_ci precision mediump float; 2135e5c31af7Sopenharmony_ci precision mediump int; 2136e5c31af7Sopenharmony_ci 2137e5c31af7Sopenharmony_ci ${DECLARATIONS} 2138e5c31af7Sopenharmony_ci 2139e5c31af7Sopenharmony_ci void main() 2140e5c31af7Sopenharmony_ci { 2141e5c31af7Sopenharmony_ci vec3 c; 2142e5c31af7Sopenharmony_ci vec3 a; 2143e5c31af7Sopenharmony_ci ivec4 b; 2144e5c31af7Sopenharmony_ci vec3 c = a / b; 2145e5c31af7Sopenharmony_ci } 2146e5c31af7Sopenharmony_ci "" 2147e5c31af7Sopenharmony_ci end 2148e5c31af7Sopenharmony_ci case div_vec3_ivec4_ivec4 2149e5c31af7Sopenharmony_ci expect compile_fail 2150e5c31af7Sopenharmony_ci 2151e5c31af7Sopenharmony_ci both "" 2152e5c31af7Sopenharmony_ci precision mediump float; 2153e5c31af7Sopenharmony_ci precision mediump int; 2154e5c31af7Sopenharmony_ci 2155e5c31af7Sopenharmony_ci ${DECLARATIONS} 2156e5c31af7Sopenharmony_ci 2157e5c31af7Sopenharmony_ci void main() 2158e5c31af7Sopenharmony_ci { 2159e5c31af7Sopenharmony_ci ivec4 c; 2160e5c31af7Sopenharmony_ci vec3 a; 2161e5c31af7Sopenharmony_ci ivec4 b; 2162e5c31af7Sopenharmony_ci ivec4 c = a / b; 2163e5c31af7Sopenharmony_ci } 2164e5c31af7Sopenharmony_ci "" 2165e5c31af7Sopenharmony_ci end 2166e5c31af7Sopenharmony_ci case div_vec4_int_vec4 2167e5c31af7Sopenharmony_ci expect compile_fail 2168e5c31af7Sopenharmony_ci 2169e5c31af7Sopenharmony_ci both "" 2170e5c31af7Sopenharmony_ci precision mediump float; 2171e5c31af7Sopenharmony_ci precision mediump int; 2172e5c31af7Sopenharmony_ci 2173e5c31af7Sopenharmony_ci ${DECLARATIONS} 2174e5c31af7Sopenharmony_ci 2175e5c31af7Sopenharmony_ci void main() 2176e5c31af7Sopenharmony_ci { 2177e5c31af7Sopenharmony_ci vec4 c; 2178e5c31af7Sopenharmony_ci vec4 a; 2179e5c31af7Sopenharmony_ci int b; 2180e5c31af7Sopenharmony_ci vec4 c = a / b; 2181e5c31af7Sopenharmony_ci } 2182e5c31af7Sopenharmony_ci "" 2183e5c31af7Sopenharmony_ci end 2184e5c31af7Sopenharmony_ci case div_vec4_int_int 2185e5c31af7Sopenharmony_ci expect compile_fail 2186e5c31af7Sopenharmony_ci 2187e5c31af7Sopenharmony_ci both "" 2188e5c31af7Sopenharmony_ci precision mediump float; 2189e5c31af7Sopenharmony_ci precision mediump int; 2190e5c31af7Sopenharmony_ci 2191e5c31af7Sopenharmony_ci ${DECLARATIONS} 2192e5c31af7Sopenharmony_ci 2193e5c31af7Sopenharmony_ci void main() 2194e5c31af7Sopenharmony_ci { 2195e5c31af7Sopenharmony_ci int c; 2196e5c31af7Sopenharmony_ci vec4 a; 2197e5c31af7Sopenharmony_ci int b; 2198e5c31af7Sopenharmony_ci int c = a / b; 2199e5c31af7Sopenharmony_ci } 2200e5c31af7Sopenharmony_ci "" 2201e5c31af7Sopenharmony_ci end 2202e5c31af7Sopenharmony_ci case div_vec4_ivec2_vec4 2203e5c31af7Sopenharmony_ci expect compile_fail 2204e5c31af7Sopenharmony_ci 2205e5c31af7Sopenharmony_ci both "" 2206e5c31af7Sopenharmony_ci precision mediump float; 2207e5c31af7Sopenharmony_ci precision mediump int; 2208e5c31af7Sopenharmony_ci 2209e5c31af7Sopenharmony_ci ${DECLARATIONS} 2210e5c31af7Sopenharmony_ci 2211e5c31af7Sopenharmony_ci void main() 2212e5c31af7Sopenharmony_ci { 2213e5c31af7Sopenharmony_ci vec4 c; 2214e5c31af7Sopenharmony_ci vec4 a; 2215e5c31af7Sopenharmony_ci ivec2 b; 2216e5c31af7Sopenharmony_ci vec4 c = a / b; 2217e5c31af7Sopenharmony_ci } 2218e5c31af7Sopenharmony_ci "" 2219e5c31af7Sopenharmony_ci end 2220e5c31af7Sopenharmony_ci case div_vec4_ivec2_ivec2 2221e5c31af7Sopenharmony_ci expect compile_fail 2222e5c31af7Sopenharmony_ci 2223e5c31af7Sopenharmony_ci both "" 2224e5c31af7Sopenharmony_ci precision mediump float; 2225e5c31af7Sopenharmony_ci precision mediump int; 2226e5c31af7Sopenharmony_ci 2227e5c31af7Sopenharmony_ci ${DECLARATIONS} 2228e5c31af7Sopenharmony_ci 2229e5c31af7Sopenharmony_ci void main() 2230e5c31af7Sopenharmony_ci { 2231e5c31af7Sopenharmony_ci ivec2 c; 2232e5c31af7Sopenharmony_ci vec4 a; 2233e5c31af7Sopenharmony_ci ivec2 b; 2234e5c31af7Sopenharmony_ci ivec2 c = a / b; 2235e5c31af7Sopenharmony_ci } 2236e5c31af7Sopenharmony_ci "" 2237e5c31af7Sopenharmony_ci end 2238e5c31af7Sopenharmony_ci case div_vec4_ivec3_vec4 2239e5c31af7Sopenharmony_ci expect compile_fail 2240e5c31af7Sopenharmony_ci 2241e5c31af7Sopenharmony_ci both "" 2242e5c31af7Sopenharmony_ci precision mediump float; 2243e5c31af7Sopenharmony_ci precision mediump int; 2244e5c31af7Sopenharmony_ci 2245e5c31af7Sopenharmony_ci ${DECLARATIONS} 2246e5c31af7Sopenharmony_ci 2247e5c31af7Sopenharmony_ci void main() 2248e5c31af7Sopenharmony_ci { 2249e5c31af7Sopenharmony_ci vec4 c; 2250e5c31af7Sopenharmony_ci vec4 a; 2251e5c31af7Sopenharmony_ci ivec3 b; 2252e5c31af7Sopenharmony_ci vec4 c = a / b; 2253e5c31af7Sopenharmony_ci } 2254e5c31af7Sopenharmony_ci "" 2255e5c31af7Sopenharmony_ci end 2256e5c31af7Sopenharmony_ci case div_vec4_ivec3_ivec3 2257e5c31af7Sopenharmony_ci expect compile_fail 2258e5c31af7Sopenharmony_ci 2259e5c31af7Sopenharmony_ci both "" 2260e5c31af7Sopenharmony_ci precision mediump float; 2261e5c31af7Sopenharmony_ci precision mediump int; 2262e5c31af7Sopenharmony_ci 2263e5c31af7Sopenharmony_ci ${DECLARATIONS} 2264e5c31af7Sopenharmony_ci 2265e5c31af7Sopenharmony_ci void main() 2266e5c31af7Sopenharmony_ci { 2267e5c31af7Sopenharmony_ci ivec3 c; 2268e5c31af7Sopenharmony_ci vec4 a; 2269e5c31af7Sopenharmony_ci ivec3 b; 2270e5c31af7Sopenharmony_ci ivec3 c = a / b; 2271e5c31af7Sopenharmony_ci } 2272e5c31af7Sopenharmony_ci "" 2273e5c31af7Sopenharmony_ci end 2274e5c31af7Sopenharmony_ci case div_vec4_ivec4_vec4 2275e5c31af7Sopenharmony_ci expect compile_fail 2276e5c31af7Sopenharmony_ci 2277e5c31af7Sopenharmony_ci both "" 2278e5c31af7Sopenharmony_ci precision mediump float; 2279e5c31af7Sopenharmony_ci precision mediump int; 2280e5c31af7Sopenharmony_ci 2281e5c31af7Sopenharmony_ci ${DECLARATIONS} 2282e5c31af7Sopenharmony_ci 2283e5c31af7Sopenharmony_ci void main() 2284e5c31af7Sopenharmony_ci { 2285e5c31af7Sopenharmony_ci vec4 c; 2286e5c31af7Sopenharmony_ci vec4 a; 2287e5c31af7Sopenharmony_ci ivec4 b; 2288e5c31af7Sopenharmony_ci vec4 c = a / b; 2289e5c31af7Sopenharmony_ci } 2290e5c31af7Sopenharmony_ci "" 2291e5c31af7Sopenharmony_ci end 2292e5c31af7Sopenharmony_ci case div_vec4_ivec4_ivec4 2293e5c31af7Sopenharmony_ci expect compile_fail 2294e5c31af7Sopenharmony_ci 2295e5c31af7Sopenharmony_ci both "" 2296e5c31af7Sopenharmony_ci precision mediump float; 2297e5c31af7Sopenharmony_ci precision mediump int; 2298e5c31af7Sopenharmony_ci 2299e5c31af7Sopenharmony_ci ${DECLARATIONS} 2300e5c31af7Sopenharmony_ci 2301e5c31af7Sopenharmony_ci void main() 2302e5c31af7Sopenharmony_ci { 2303e5c31af7Sopenharmony_ci ivec4 c; 2304e5c31af7Sopenharmony_ci vec4 a; 2305e5c31af7Sopenharmony_ci ivec4 b; 2306e5c31af7Sopenharmony_ci ivec4 c = a / b; 2307e5c31af7Sopenharmony_ci } 2308e5c31af7Sopenharmony_ci "" 2309e5c31af7Sopenharmony_ci end 2310e5c31af7Sopenharmony_ci 2311e5c31af7Sopenharmony_ciend # invalid_implicit_conversions 2312