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 version 300 es 9e5c31af7Sopenharmony_ci 10e5c31af7Sopenharmony_ci both "" 11e5c31af7Sopenharmony_ci #version 300 es 12e5c31af7Sopenharmony_ci precision mediump float; 13e5c31af7Sopenharmony_ci precision mediump int; 14e5c31af7Sopenharmony_ci 15e5c31af7Sopenharmony_ci ${DECLARATIONS} 16e5c31af7Sopenharmony_ci 17e5c31af7Sopenharmony_ci void main() 18e5c31af7Sopenharmony_ci { 19e5c31af7Sopenharmony_ci float c; 20e5c31af7Sopenharmony_ci float a; 21e5c31af7Sopenharmony_ci int b; 22e5c31af7Sopenharmony_ci float c = a + b; 23e5c31af7Sopenharmony_ci } 24e5c31af7Sopenharmony_ci "" 25e5c31af7Sopenharmony_ci end 26e5c31af7Sopenharmony_ci case add_float_int_int 27e5c31af7Sopenharmony_ci expect compile_fail 28e5c31af7Sopenharmony_ci version 300 es 29e5c31af7Sopenharmony_ci 30e5c31af7Sopenharmony_ci both "" 31e5c31af7Sopenharmony_ci #version 300 es 32e5c31af7Sopenharmony_ci precision mediump float; 33e5c31af7Sopenharmony_ci precision mediump int; 34e5c31af7Sopenharmony_ci 35e5c31af7Sopenharmony_ci ${DECLARATIONS} 36e5c31af7Sopenharmony_ci 37e5c31af7Sopenharmony_ci void main() 38e5c31af7Sopenharmony_ci { 39e5c31af7Sopenharmony_ci int c; 40e5c31af7Sopenharmony_ci float a; 41e5c31af7Sopenharmony_ci int b; 42e5c31af7Sopenharmony_ci int c = a + b; 43e5c31af7Sopenharmony_ci } 44e5c31af7Sopenharmony_ci "" 45e5c31af7Sopenharmony_ci end 46e5c31af7Sopenharmony_ci case add_float_ivec2_float 47e5c31af7Sopenharmony_ci expect compile_fail 48e5c31af7Sopenharmony_ci version 300 es 49e5c31af7Sopenharmony_ci 50e5c31af7Sopenharmony_ci both "" 51e5c31af7Sopenharmony_ci #version 300 es 52e5c31af7Sopenharmony_ci precision mediump float; 53e5c31af7Sopenharmony_ci precision mediump int; 54e5c31af7Sopenharmony_ci 55e5c31af7Sopenharmony_ci ${DECLARATIONS} 56e5c31af7Sopenharmony_ci 57e5c31af7Sopenharmony_ci void main() 58e5c31af7Sopenharmony_ci { 59e5c31af7Sopenharmony_ci float c; 60e5c31af7Sopenharmony_ci float a; 61e5c31af7Sopenharmony_ci ivec2 b; 62e5c31af7Sopenharmony_ci float c = a + b; 63e5c31af7Sopenharmony_ci } 64e5c31af7Sopenharmony_ci "" 65e5c31af7Sopenharmony_ci end 66e5c31af7Sopenharmony_ci case add_float_ivec2_ivec2 67e5c31af7Sopenharmony_ci expect compile_fail 68e5c31af7Sopenharmony_ci version 300 es 69e5c31af7Sopenharmony_ci 70e5c31af7Sopenharmony_ci both "" 71e5c31af7Sopenharmony_ci #version 300 es 72e5c31af7Sopenharmony_ci precision mediump float; 73e5c31af7Sopenharmony_ci precision mediump int; 74e5c31af7Sopenharmony_ci 75e5c31af7Sopenharmony_ci ${DECLARATIONS} 76e5c31af7Sopenharmony_ci 77e5c31af7Sopenharmony_ci void main() 78e5c31af7Sopenharmony_ci { 79e5c31af7Sopenharmony_ci ivec2 c; 80e5c31af7Sopenharmony_ci float a; 81e5c31af7Sopenharmony_ci ivec2 b; 82e5c31af7Sopenharmony_ci ivec2 c = a + b; 83e5c31af7Sopenharmony_ci } 84e5c31af7Sopenharmony_ci "" 85e5c31af7Sopenharmony_ci end 86e5c31af7Sopenharmony_ci case add_float_ivec3_float 87e5c31af7Sopenharmony_ci expect compile_fail 88e5c31af7Sopenharmony_ci version 300 es 89e5c31af7Sopenharmony_ci 90e5c31af7Sopenharmony_ci both "" 91e5c31af7Sopenharmony_ci #version 300 es 92e5c31af7Sopenharmony_ci precision mediump float; 93e5c31af7Sopenharmony_ci precision mediump int; 94e5c31af7Sopenharmony_ci 95e5c31af7Sopenharmony_ci ${DECLARATIONS} 96e5c31af7Sopenharmony_ci 97e5c31af7Sopenharmony_ci void main() 98e5c31af7Sopenharmony_ci { 99e5c31af7Sopenharmony_ci float c; 100e5c31af7Sopenharmony_ci float a; 101e5c31af7Sopenharmony_ci ivec3 b; 102e5c31af7Sopenharmony_ci float c = a + b; 103e5c31af7Sopenharmony_ci } 104e5c31af7Sopenharmony_ci "" 105e5c31af7Sopenharmony_ci end 106e5c31af7Sopenharmony_ci case add_float_ivec3_ivec3 107e5c31af7Sopenharmony_ci expect compile_fail 108e5c31af7Sopenharmony_ci version 300 es 109e5c31af7Sopenharmony_ci 110e5c31af7Sopenharmony_ci both "" 111e5c31af7Sopenharmony_ci #version 300 es 112e5c31af7Sopenharmony_ci precision mediump float; 113e5c31af7Sopenharmony_ci precision mediump int; 114e5c31af7Sopenharmony_ci 115e5c31af7Sopenharmony_ci ${DECLARATIONS} 116e5c31af7Sopenharmony_ci 117e5c31af7Sopenharmony_ci void main() 118e5c31af7Sopenharmony_ci { 119e5c31af7Sopenharmony_ci ivec3 c; 120e5c31af7Sopenharmony_ci float a; 121e5c31af7Sopenharmony_ci ivec3 b; 122e5c31af7Sopenharmony_ci ivec3 c = a + b; 123e5c31af7Sopenharmony_ci } 124e5c31af7Sopenharmony_ci "" 125e5c31af7Sopenharmony_ci end 126e5c31af7Sopenharmony_ci case add_float_ivec4_float 127e5c31af7Sopenharmony_ci expect compile_fail 128e5c31af7Sopenharmony_ci version 300 es 129e5c31af7Sopenharmony_ci 130e5c31af7Sopenharmony_ci both "" 131e5c31af7Sopenharmony_ci #version 300 es 132e5c31af7Sopenharmony_ci precision mediump float; 133e5c31af7Sopenharmony_ci precision mediump int; 134e5c31af7Sopenharmony_ci 135e5c31af7Sopenharmony_ci ${DECLARATIONS} 136e5c31af7Sopenharmony_ci 137e5c31af7Sopenharmony_ci void main() 138e5c31af7Sopenharmony_ci { 139e5c31af7Sopenharmony_ci float c; 140e5c31af7Sopenharmony_ci float a; 141e5c31af7Sopenharmony_ci ivec4 b; 142e5c31af7Sopenharmony_ci float c = a + b; 143e5c31af7Sopenharmony_ci } 144e5c31af7Sopenharmony_ci "" 145e5c31af7Sopenharmony_ci end 146e5c31af7Sopenharmony_ci case add_float_ivec4_ivec4 147e5c31af7Sopenharmony_ci expect compile_fail 148e5c31af7Sopenharmony_ci version 300 es 149e5c31af7Sopenharmony_ci 150e5c31af7Sopenharmony_ci both "" 151e5c31af7Sopenharmony_ci #version 300 es 152e5c31af7Sopenharmony_ci precision mediump float; 153e5c31af7Sopenharmony_ci precision mediump int; 154e5c31af7Sopenharmony_ci 155e5c31af7Sopenharmony_ci ${DECLARATIONS} 156e5c31af7Sopenharmony_ci 157e5c31af7Sopenharmony_ci void main() 158e5c31af7Sopenharmony_ci { 159e5c31af7Sopenharmony_ci ivec4 c; 160e5c31af7Sopenharmony_ci float a; 161e5c31af7Sopenharmony_ci ivec4 b; 162e5c31af7Sopenharmony_ci ivec4 c = a + b; 163e5c31af7Sopenharmony_ci } 164e5c31af7Sopenharmony_ci "" 165e5c31af7Sopenharmony_ci end 166e5c31af7Sopenharmony_ci case add_vec2_int_vec2 167e5c31af7Sopenharmony_ci expect compile_fail 168e5c31af7Sopenharmony_ci version 300 es 169e5c31af7Sopenharmony_ci 170e5c31af7Sopenharmony_ci both "" 171e5c31af7Sopenharmony_ci #version 300 es 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 vec2 c; 180e5c31af7Sopenharmony_ci vec2 a; 181e5c31af7Sopenharmony_ci int b; 182e5c31af7Sopenharmony_ci vec2 c = a + b; 183e5c31af7Sopenharmony_ci } 184e5c31af7Sopenharmony_ci "" 185e5c31af7Sopenharmony_ci end 186e5c31af7Sopenharmony_ci case add_vec2_int_int 187e5c31af7Sopenharmony_ci expect compile_fail 188e5c31af7Sopenharmony_ci version 300 es 189e5c31af7Sopenharmony_ci 190e5c31af7Sopenharmony_ci both "" 191e5c31af7Sopenharmony_ci #version 300 es 192e5c31af7Sopenharmony_ci precision mediump float; 193e5c31af7Sopenharmony_ci precision mediump int; 194e5c31af7Sopenharmony_ci 195e5c31af7Sopenharmony_ci ${DECLARATIONS} 196e5c31af7Sopenharmony_ci 197e5c31af7Sopenharmony_ci void main() 198e5c31af7Sopenharmony_ci { 199e5c31af7Sopenharmony_ci int c; 200e5c31af7Sopenharmony_ci vec2 a; 201e5c31af7Sopenharmony_ci int b; 202e5c31af7Sopenharmony_ci int c = a + b; 203e5c31af7Sopenharmony_ci } 204e5c31af7Sopenharmony_ci "" 205e5c31af7Sopenharmony_ci end 206e5c31af7Sopenharmony_ci case add_vec2_ivec2_vec2 207e5c31af7Sopenharmony_ci expect compile_fail 208e5c31af7Sopenharmony_ci version 300 es 209e5c31af7Sopenharmony_ci 210e5c31af7Sopenharmony_ci both "" 211e5c31af7Sopenharmony_ci #version 300 es 212e5c31af7Sopenharmony_ci precision mediump float; 213e5c31af7Sopenharmony_ci precision mediump int; 214e5c31af7Sopenharmony_ci 215e5c31af7Sopenharmony_ci ${DECLARATIONS} 216e5c31af7Sopenharmony_ci 217e5c31af7Sopenharmony_ci void main() 218e5c31af7Sopenharmony_ci { 219e5c31af7Sopenharmony_ci vec2 c; 220e5c31af7Sopenharmony_ci vec2 a; 221e5c31af7Sopenharmony_ci ivec2 b; 222e5c31af7Sopenharmony_ci vec2 c = a + b; 223e5c31af7Sopenharmony_ci } 224e5c31af7Sopenharmony_ci "" 225e5c31af7Sopenharmony_ci end 226e5c31af7Sopenharmony_ci case add_vec2_ivec2_ivec2 227e5c31af7Sopenharmony_ci expect compile_fail 228e5c31af7Sopenharmony_ci version 300 es 229e5c31af7Sopenharmony_ci 230e5c31af7Sopenharmony_ci both "" 231e5c31af7Sopenharmony_ci #version 300 es 232e5c31af7Sopenharmony_ci precision mediump float; 233e5c31af7Sopenharmony_ci precision mediump int; 234e5c31af7Sopenharmony_ci 235e5c31af7Sopenharmony_ci ${DECLARATIONS} 236e5c31af7Sopenharmony_ci 237e5c31af7Sopenharmony_ci void main() 238e5c31af7Sopenharmony_ci { 239e5c31af7Sopenharmony_ci ivec2 c; 240e5c31af7Sopenharmony_ci vec2 a; 241e5c31af7Sopenharmony_ci ivec2 b; 242e5c31af7Sopenharmony_ci ivec2 c = a + b; 243e5c31af7Sopenharmony_ci } 244e5c31af7Sopenharmony_ci "" 245e5c31af7Sopenharmony_ci end 246e5c31af7Sopenharmony_ci case add_vec2_ivec3_vec2 247e5c31af7Sopenharmony_ci expect compile_fail 248e5c31af7Sopenharmony_ci version 300 es 249e5c31af7Sopenharmony_ci 250e5c31af7Sopenharmony_ci both "" 251e5c31af7Sopenharmony_ci #version 300 es 252e5c31af7Sopenharmony_ci precision mediump float; 253e5c31af7Sopenharmony_ci precision mediump int; 254e5c31af7Sopenharmony_ci 255e5c31af7Sopenharmony_ci ${DECLARATIONS} 256e5c31af7Sopenharmony_ci 257e5c31af7Sopenharmony_ci void main() 258e5c31af7Sopenharmony_ci { 259e5c31af7Sopenharmony_ci vec2 c; 260e5c31af7Sopenharmony_ci vec2 a; 261e5c31af7Sopenharmony_ci ivec3 b; 262e5c31af7Sopenharmony_ci vec2 c = a + b; 263e5c31af7Sopenharmony_ci } 264e5c31af7Sopenharmony_ci "" 265e5c31af7Sopenharmony_ci end 266e5c31af7Sopenharmony_ci case add_vec2_ivec3_ivec3 267e5c31af7Sopenharmony_ci expect compile_fail 268e5c31af7Sopenharmony_ci version 300 es 269e5c31af7Sopenharmony_ci 270e5c31af7Sopenharmony_ci both "" 271e5c31af7Sopenharmony_ci #version 300 es 272e5c31af7Sopenharmony_ci precision mediump float; 273e5c31af7Sopenharmony_ci precision mediump int; 274e5c31af7Sopenharmony_ci 275e5c31af7Sopenharmony_ci ${DECLARATIONS} 276e5c31af7Sopenharmony_ci 277e5c31af7Sopenharmony_ci void main() 278e5c31af7Sopenharmony_ci { 279e5c31af7Sopenharmony_ci ivec3 c; 280e5c31af7Sopenharmony_ci vec2 a; 281e5c31af7Sopenharmony_ci ivec3 b; 282e5c31af7Sopenharmony_ci ivec3 c = a + b; 283e5c31af7Sopenharmony_ci } 284e5c31af7Sopenharmony_ci "" 285e5c31af7Sopenharmony_ci end 286e5c31af7Sopenharmony_ci case add_vec2_ivec4_vec2 287e5c31af7Sopenharmony_ci expect compile_fail 288e5c31af7Sopenharmony_ci version 300 es 289e5c31af7Sopenharmony_ci 290e5c31af7Sopenharmony_ci both "" 291e5c31af7Sopenharmony_ci #version 300 es 292e5c31af7Sopenharmony_ci precision mediump float; 293e5c31af7Sopenharmony_ci precision mediump int; 294e5c31af7Sopenharmony_ci 295e5c31af7Sopenharmony_ci ${DECLARATIONS} 296e5c31af7Sopenharmony_ci 297e5c31af7Sopenharmony_ci void main() 298e5c31af7Sopenharmony_ci { 299e5c31af7Sopenharmony_ci vec2 c; 300e5c31af7Sopenharmony_ci vec2 a; 301e5c31af7Sopenharmony_ci ivec4 b; 302e5c31af7Sopenharmony_ci vec2 c = a + b; 303e5c31af7Sopenharmony_ci } 304e5c31af7Sopenharmony_ci "" 305e5c31af7Sopenharmony_ci end 306e5c31af7Sopenharmony_ci case add_vec2_ivec4_ivec4 307e5c31af7Sopenharmony_ci expect compile_fail 308e5c31af7Sopenharmony_ci version 300 es 309e5c31af7Sopenharmony_ci 310e5c31af7Sopenharmony_ci both "" 311e5c31af7Sopenharmony_ci #version 300 es 312e5c31af7Sopenharmony_ci precision mediump float; 313e5c31af7Sopenharmony_ci precision mediump int; 314e5c31af7Sopenharmony_ci 315e5c31af7Sopenharmony_ci ${DECLARATIONS} 316e5c31af7Sopenharmony_ci 317e5c31af7Sopenharmony_ci void main() 318e5c31af7Sopenharmony_ci { 319e5c31af7Sopenharmony_ci ivec4 c; 320e5c31af7Sopenharmony_ci vec2 a; 321e5c31af7Sopenharmony_ci ivec4 b; 322e5c31af7Sopenharmony_ci ivec4 c = a + b; 323e5c31af7Sopenharmony_ci } 324e5c31af7Sopenharmony_ci "" 325e5c31af7Sopenharmony_ci end 326e5c31af7Sopenharmony_ci case add_vec3_int_vec3 327e5c31af7Sopenharmony_ci expect compile_fail 328e5c31af7Sopenharmony_ci version 300 es 329e5c31af7Sopenharmony_ci 330e5c31af7Sopenharmony_ci both "" 331e5c31af7Sopenharmony_ci #version 300 es 332e5c31af7Sopenharmony_ci precision mediump float; 333e5c31af7Sopenharmony_ci precision mediump int; 334e5c31af7Sopenharmony_ci 335e5c31af7Sopenharmony_ci ${DECLARATIONS} 336e5c31af7Sopenharmony_ci 337e5c31af7Sopenharmony_ci void main() 338e5c31af7Sopenharmony_ci { 339e5c31af7Sopenharmony_ci vec3 c; 340e5c31af7Sopenharmony_ci vec3 a; 341e5c31af7Sopenharmony_ci int b; 342e5c31af7Sopenharmony_ci vec3 c = a + b; 343e5c31af7Sopenharmony_ci } 344e5c31af7Sopenharmony_ci "" 345e5c31af7Sopenharmony_ci end 346e5c31af7Sopenharmony_ci case add_vec3_int_int 347e5c31af7Sopenharmony_ci expect compile_fail 348e5c31af7Sopenharmony_ci version 300 es 349e5c31af7Sopenharmony_ci 350e5c31af7Sopenharmony_ci both "" 351e5c31af7Sopenharmony_ci #version 300 es 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 int c; 360e5c31af7Sopenharmony_ci vec3 a; 361e5c31af7Sopenharmony_ci int b; 362e5c31af7Sopenharmony_ci int c = a + b; 363e5c31af7Sopenharmony_ci } 364e5c31af7Sopenharmony_ci "" 365e5c31af7Sopenharmony_ci end 366e5c31af7Sopenharmony_ci case add_vec3_ivec2_vec3 367e5c31af7Sopenharmony_ci expect compile_fail 368e5c31af7Sopenharmony_ci version 300 es 369e5c31af7Sopenharmony_ci 370e5c31af7Sopenharmony_ci both "" 371e5c31af7Sopenharmony_ci #version 300 es 372e5c31af7Sopenharmony_ci precision mediump float; 373e5c31af7Sopenharmony_ci precision mediump int; 374e5c31af7Sopenharmony_ci 375e5c31af7Sopenharmony_ci ${DECLARATIONS} 376e5c31af7Sopenharmony_ci 377e5c31af7Sopenharmony_ci void main() 378e5c31af7Sopenharmony_ci { 379e5c31af7Sopenharmony_ci vec3 c; 380e5c31af7Sopenharmony_ci vec3 a; 381e5c31af7Sopenharmony_ci ivec2 b; 382e5c31af7Sopenharmony_ci vec3 c = a + b; 383e5c31af7Sopenharmony_ci } 384e5c31af7Sopenharmony_ci "" 385e5c31af7Sopenharmony_ci end 386e5c31af7Sopenharmony_ci case add_vec3_ivec2_ivec2 387e5c31af7Sopenharmony_ci expect compile_fail 388e5c31af7Sopenharmony_ci version 300 es 389e5c31af7Sopenharmony_ci 390e5c31af7Sopenharmony_ci both "" 391e5c31af7Sopenharmony_ci #version 300 es 392e5c31af7Sopenharmony_ci precision mediump float; 393e5c31af7Sopenharmony_ci precision mediump int; 394e5c31af7Sopenharmony_ci 395e5c31af7Sopenharmony_ci ${DECLARATIONS} 396e5c31af7Sopenharmony_ci 397e5c31af7Sopenharmony_ci void main() 398e5c31af7Sopenharmony_ci { 399e5c31af7Sopenharmony_ci ivec2 c; 400e5c31af7Sopenharmony_ci vec3 a; 401e5c31af7Sopenharmony_ci ivec2 b; 402e5c31af7Sopenharmony_ci ivec2 c = a + b; 403e5c31af7Sopenharmony_ci } 404e5c31af7Sopenharmony_ci "" 405e5c31af7Sopenharmony_ci end 406e5c31af7Sopenharmony_ci case add_vec3_ivec3_vec3 407e5c31af7Sopenharmony_ci expect compile_fail 408e5c31af7Sopenharmony_ci version 300 es 409e5c31af7Sopenharmony_ci 410e5c31af7Sopenharmony_ci both "" 411e5c31af7Sopenharmony_ci #version 300 es 412e5c31af7Sopenharmony_ci precision mediump float; 413e5c31af7Sopenharmony_ci precision mediump int; 414e5c31af7Sopenharmony_ci 415e5c31af7Sopenharmony_ci ${DECLARATIONS} 416e5c31af7Sopenharmony_ci 417e5c31af7Sopenharmony_ci void main() 418e5c31af7Sopenharmony_ci { 419e5c31af7Sopenharmony_ci vec3 c; 420e5c31af7Sopenharmony_ci vec3 a; 421e5c31af7Sopenharmony_ci ivec3 b; 422e5c31af7Sopenharmony_ci vec3 c = a + b; 423e5c31af7Sopenharmony_ci } 424e5c31af7Sopenharmony_ci "" 425e5c31af7Sopenharmony_ci end 426e5c31af7Sopenharmony_ci case add_vec3_ivec3_ivec3 427e5c31af7Sopenharmony_ci expect compile_fail 428e5c31af7Sopenharmony_ci version 300 es 429e5c31af7Sopenharmony_ci 430e5c31af7Sopenharmony_ci both "" 431e5c31af7Sopenharmony_ci #version 300 es 432e5c31af7Sopenharmony_ci precision mediump float; 433e5c31af7Sopenharmony_ci precision mediump int; 434e5c31af7Sopenharmony_ci 435e5c31af7Sopenharmony_ci ${DECLARATIONS} 436e5c31af7Sopenharmony_ci 437e5c31af7Sopenharmony_ci void main() 438e5c31af7Sopenharmony_ci { 439e5c31af7Sopenharmony_ci ivec3 c; 440e5c31af7Sopenharmony_ci vec3 a; 441e5c31af7Sopenharmony_ci ivec3 b; 442e5c31af7Sopenharmony_ci ivec3 c = a + b; 443e5c31af7Sopenharmony_ci } 444e5c31af7Sopenharmony_ci "" 445e5c31af7Sopenharmony_ci end 446e5c31af7Sopenharmony_ci case add_vec3_ivec4_vec3 447e5c31af7Sopenharmony_ci expect compile_fail 448e5c31af7Sopenharmony_ci version 300 es 449e5c31af7Sopenharmony_ci 450e5c31af7Sopenharmony_ci both "" 451e5c31af7Sopenharmony_ci #version 300 es 452e5c31af7Sopenharmony_ci precision mediump float; 453e5c31af7Sopenharmony_ci precision mediump int; 454e5c31af7Sopenharmony_ci 455e5c31af7Sopenharmony_ci ${DECLARATIONS} 456e5c31af7Sopenharmony_ci 457e5c31af7Sopenharmony_ci void main() 458e5c31af7Sopenharmony_ci { 459e5c31af7Sopenharmony_ci vec3 c; 460e5c31af7Sopenharmony_ci vec3 a; 461e5c31af7Sopenharmony_ci ivec4 b; 462e5c31af7Sopenharmony_ci vec3 c = a + b; 463e5c31af7Sopenharmony_ci } 464e5c31af7Sopenharmony_ci "" 465e5c31af7Sopenharmony_ci end 466e5c31af7Sopenharmony_ci case add_vec3_ivec4_ivec4 467e5c31af7Sopenharmony_ci expect compile_fail 468e5c31af7Sopenharmony_ci version 300 es 469e5c31af7Sopenharmony_ci 470e5c31af7Sopenharmony_ci both "" 471e5c31af7Sopenharmony_ci #version 300 es 472e5c31af7Sopenharmony_ci precision mediump float; 473e5c31af7Sopenharmony_ci precision mediump int; 474e5c31af7Sopenharmony_ci 475e5c31af7Sopenharmony_ci ${DECLARATIONS} 476e5c31af7Sopenharmony_ci 477e5c31af7Sopenharmony_ci void main() 478e5c31af7Sopenharmony_ci { 479e5c31af7Sopenharmony_ci ivec4 c; 480e5c31af7Sopenharmony_ci vec3 a; 481e5c31af7Sopenharmony_ci ivec4 b; 482e5c31af7Sopenharmony_ci ivec4 c = a + b; 483e5c31af7Sopenharmony_ci } 484e5c31af7Sopenharmony_ci "" 485e5c31af7Sopenharmony_ci end 486e5c31af7Sopenharmony_ci case add_vec4_int_vec4 487e5c31af7Sopenharmony_ci expect compile_fail 488e5c31af7Sopenharmony_ci version 300 es 489e5c31af7Sopenharmony_ci 490e5c31af7Sopenharmony_ci both "" 491e5c31af7Sopenharmony_ci #version 300 es 492e5c31af7Sopenharmony_ci precision mediump float; 493e5c31af7Sopenharmony_ci precision mediump int; 494e5c31af7Sopenharmony_ci 495e5c31af7Sopenharmony_ci ${DECLARATIONS} 496e5c31af7Sopenharmony_ci 497e5c31af7Sopenharmony_ci void main() 498e5c31af7Sopenharmony_ci { 499e5c31af7Sopenharmony_ci vec4 c; 500e5c31af7Sopenharmony_ci vec4 a; 501e5c31af7Sopenharmony_ci int b; 502e5c31af7Sopenharmony_ci vec4 c = a + b; 503e5c31af7Sopenharmony_ci } 504e5c31af7Sopenharmony_ci "" 505e5c31af7Sopenharmony_ci end 506e5c31af7Sopenharmony_ci case add_vec4_int_int 507e5c31af7Sopenharmony_ci expect compile_fail 508e5c31af7Sopenharmony_ci version 300 es 509e5c31af7Sopenharmony_ci 510e5c31af7Sopenharmony_ci both "" 511e5c31af7Sopenharmony_ci #version 300 es 512e5c31af7Sopenharmony_ci precision mediump float; 513e5c31af7Sopenharmony_ci precision mediump int; 514e5c31af7Sopenharmony_ci 515e5c31af7Sopenharmony_ci ${DECLARATIONS} 516e5c31af7Sopenharmony_ci 517e5c31af7Sopenharmony_ci void main() 518e5c31af7Sopenharmony_ci { 519e5c31af7Sopenharmony_ci int c; 520e5c31af7Sopenharmony_ci vec4 a; 521e5c31af7Sopenharmony_ci int b; 522e5c31af7Sopenharmony_ci int c = a + b; 523e5c31af7Sopenharmony_ci } 524e5c31af7Sopenharmony_ci "" 525e5c31af7Sopenharmony_ci end 526e5c31af7Sopenharmony_ci case add_vec4_ivec2_vec4 527e5c31af7Sopenharmony_ci expect compile_fail 528e5c31af7Sopenharmony_ci version 300 es 529e5c31af7Sopenharmony_ci 530e5c31af7Sopenharmony_ci both "" 531e5c31af7Sopenharmony_ci #version 300 es 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 vec4 c; 540e5c31af7Sopenharmony_ci vec4 a; 541e5c31af7Sopenharmony_ci ivec2 b; 542e5c31af7Sopenharmony_ci vec4 c = a + b; 543e5c31af7Sopenharmony_ci } 544e5c31af7Sopenharmony_ci "" 545e5c31af7Sopenharmony_ci end 546e5c31af7Sopenharmony_ci case add_vec4_ivec2_ivec2 547e5c31af7Sopenharmony_ci expect compile_fail 548e5c31af7Sopenharmony_ci version 300 es 549e5c31af7Sopenharmony_ci 550e5c31af7Sopenharmony_ci both "" 551e5c31af7Sopenharmony_ci #version 300 es 552e5c31af7Sopenharmony_ci precision mediump float; 553e5c31af7Sopenharmony_ci precision mediump int; 554e5c31af7Sopenharmony_ci 555e5c31af7Sopenharmony_ci ${DECLARATIONS} 556e5c31af7Sopenharmony_ci 557e5c31af7Sopenharmony_ci void main() 558e5c31af7Sopenharmony_ci { 559e5c31af7Sopenharmony_ci ivec2 c; 560e5c31af7Sopenharmony_ci vec4 a; 561e5c31af7Sopenharmony_ci ivec2 b; 562e5c31af7Sopenharmony_ci ivec2 c = a + b; 563e5c31af7Sopenharmony_ci } 564e5c31af7Sopenharmony_ci "" 565e5c31af7Sopenharmony_ci end 566e5c31af7Sopenharmony_ci case add_vec4_ivec3_vec4 567e5c31af7Sopenharmony_ci expect compile_fail 568e5c31af7Sopenharmony_ci version 300 es 569e5c31af7Sopenharmony_ci 570e5c31af7Sopenharmony_ci both "" 571e5c31af7Sopenharmony_ci #version 300 es 572e5c31af7Sopenharmony_ci precision mediump float; 573e5c31af7Sopenharmony_ci precision mediump int; 574e5c31af7Sopenharmony_ci 575e5c31af7Sopenharmony_ci ${DECLARATIONS} 576e5c31af7Sopenharmony_ci 577e5c31af7Sopenharmony_ci void main() 578e5c31af7Sopenharmony_ci { 579e5c31af7Sopenharmony_ci vec4 c; 580e5c31af7Sopenharmony_ci vec4 a; 581e5c31af7Sopenharmony_ci ivec3 b; 582e5c31af7Sopenharmony_ci vec4 c = a + b; 583e5c31af7Sopenharmony_ci } 584e5c31af7Sopenharmony_ci "" 585e5c31af7Sopenharmony_ci end 586e5c31af7Sopenharmony_ci case add_vec4_ivec3_ivec3 587e5c31af7Sopenharmony_ci expect compile_fail 588e5c31af7Sopenharmony_ci version 300 es 589e5c31af7Sopenharmony_ci 590e5c31af7Sopenharmony_ci both "" 591e5c31af7Sopenharmony_ci #version 300 es 592e5c31af7Sopenharmony_ci precision mediump float; 593e5c31af7Sopenharmony_ci precision mediump int; 594e5c31af7Sopenharmony_ci 595e5c31af7Sopenharmony_ci ${DECLARATIONS} 596e5c31af7Sopenharmony_ci 597e5c31af7Sopenharmony_ci void main() 598e5c31af7Sopenharmony_ci { 599e5c31af7Sopenharmony_ci ivec3 c; 600e5c31af7Sopenharmony_ci vec4 a; 601e5c31af7Sopenharmony_ci ivec3 b; 602e5c31af7Sopenharmony_ci ivec3 c = a + b; 603e5c31af7Sopenharmony_ci } 604e5c31af7Sopenharmony_ci "" 605e5c31af7Sopenharmony_ci end 606e5c31af7Sopenharmony_ci case add_vec4_ivec4_vec4 607e5c31af7Sopenharmony_ci expect compile_fail 608e5c31af7Sopenharmony_ci version 300 es 609e5c31af7Sopenharmony_ci 610e5c31af7Sopenharmony_ci both "" 611e5c31af7Sopenharmony_ci #version 300 es 612e5c31af7Sopenharmony_ci precision mediump float; 613e5c31af7Sopenharmony_ci precision mediump int; 614e5c31af7Sopenharmony_ci 615e5c31af7Sopenharmony_ci ${DECLARATIONS} 616e5c31af7Sopenharmony_ci 617e5c31af7Sopenharmony_ci void main() 618e5c31af7Sopenharmony_ci { 619e5c31af7Sopenharmony_ci vec4 c; 620e5c31af7Sopenharmony_ci vec4 a; 621e5c31af7Sopenharmony_ci ivec4 b; 622e5c31af7Sopenharmony_ci vec4 c = a + b; 623e5c31af7Sopenharmony_ci } 624e5c31af7Sopenharmony_ci "" 625e5c31af7Sopenharmony_ci end 626e5c31af7Sopenharmony_ci case add_vec4_ivec4_ivec4 627e5c31af7Sopenharmony_ci expect compile_fail 628e5c31af7Sopenharmony_ci version 300 es 629e5c31af7Sopenharmony_ci 630e5c31af7Sopenharmony_ci both "" 631e5c31af7Sopenharmony_ci #version 300 es 632e5c31af7Sopenharmony_ci precision mediump float; 633e5c31af7Sopenharmony_ci precision mediump int; 634e5c31af7Sopenharmony_ci 635e5c31af7Sopenharmony_ci ${DECLARATIONS} 636e5c31af7Sopenharmony_ci 637e5c31af7Sopenharmony_ci void main() 638e5c31af7Sopenharmony_ci { 639e5c31af7Sopenharmony_ci ivec4 c; 640e5c31af7Sopenharmony_ci vec4 a; 641e5c31af7Sopenharmony_ci ivec4 b; 642e5c31af7Sopenharmony_ci ivec4 c = a + b; 643e5c31af7Sopenharmony_ci } 644e5c31af7Sopenharmony_ci "" 645e5c31af7Sopenharmony_ci end 646e5c31af7Sopenharmony_ci case add_float_uint_float 647e5c31af7Sopenharmony_ci expect compile_fail 648e5c31af7Sopenharmony_ci version 300 es 649e5c31af7Sopenharmony_ci 650e5c31af7Sopenharmony_ci both "" 651e5c31af7Sopenharmony_ci #version 300 es 652e5c31af7Sopenharmony_ci precision mediump float; 653e5c31af7Sopenharmony_ci precision mediump int; 654e5c31af7Sopenharmony_ci 655e5c31af7Sopenharmony_ci ${DECLARATIONS} 656e5c31af7Sopenharmony_ci 657e5c31af7Sopenharmony_ci void main() 658e5c31af7Sopenharmony_ci { 659e5c31af7Sopenharmony_ci float c; 660e5c31af7Sopenharmony_ci float a; 661e5c31af7Sopenharmony_ci uint b; 662e5c31af7Sopenharmony_ci float c = a + b; 663e5c31af7Sopenharmony_ci } 664e5c31af7Sopenharmony_ci "" 665e5c31af7Sopenharmony_ci end 666e5c31af7Sopenharmony_ci case add_float_uint_uint 667e5c31af7Sopenharmony_ci expect compile_fail 668e5c31af7Sopenharmony_ci version 300 es 669e5c31af7Sopenharmony_ci 670e5c31af7Sopenharmony_ci both "" 671e5c31af7Sopenharmony_ci #version 300 es 672e5c31af7Sopenharmony_ci precision mediump float; 673e5c31af7Sopenharmony_ci precision mediump int; 674e5c31af7Sopenharmony_ci 675e5c31af7Sopenharmony_ci ${DECLARATIONS} 676e5c31af7Sopenharmony_ci 677e5c31af7Sopenharmony_ci void main() 678e5c31af7Sopenharmony_ci { 679e5c31af7Sopenharmony_ci uint c; 680e5c31af7Sopenharmony_ci float a; 681e5c31af7Sopenharmony_ci uint b; 682e5c31af7Sopenharmony_ci uint c = a + b; 683e5c31af7Sopenharmony_ci } 684e5c31af7Sopenharmony_ci "" 685e5c31af7Sopenharmony_ci end 686e5c31af7Sopenharmony_ci case add_float_uvec2_float 687e5c31af7Sopenharmony_ci expect compile_fail 688e5c31af7Sopenharmony_ci version 300 es 689e5c31af7Sopenharmony_ci 690e5c31af7Sopenharmony_ci both "" 691e5c31af7Sopenharmony_ci #version 300 es 692e5c31af7Sopenharmony_ci precision mediump float; 693e5c31af7Sopenharmony_ci precision mediump int; 694e5c31af7Sopenharmony_ci 695e5c31af7Sopenharmony_ci ${DECLARATIONS} 696e5c31af7Sopenharmony_ci 697e5c31af7Sopenharmony_ci void main() 698e5c31af7Sopenharmony_ci { 699e5c31af7Sopenharmony_ci float c; 700e5c31af7Sopenharmony_ci float a; 701e5c31af7Sopenharmony_ci uvec2 b; 702e5c31af7Sopenharmony_ci float c = a + b; 703e5c31af7Sopenharmony_ci } 704e5c31af7Sopenharmony_ci "" 705e5c31af7Sopenharmony_ci end 706e5c31af7Sopenharmony_ci case add_float_uvec2_uvec2 707e5c31af7Sopenharmony_ci expect compile_fail 708e5c31af7Sopenharmony_ci version 300 es 709e5c31af7Sopenharmony_ci 710e5c31af7Sopenharmony_ci both "" 711e5c31af7Sopenharmony_ci #version 300 es 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 uvec2 c; 720e5c31af7Sopenharmony_ci float a; 721e5c31af7Sopenharmony_ci uvec2 b; 722e5c31af7Sopenharmony_ci uvec2 c = a + b; 723e5c31af7Sopenharmony_ci } 724e5c31af7Sopenharmony_ci "" 725e5c31af7Sopenharmony_ci end 726e5c31af7Sopenharmony_ci case add_float_uvec3_float 727e5c31af7Sopenharmony_ci expect compile_fail 728e5c31af7Sopenharmony_ci version 300 es 729e5c31af7Sopenharmony_ci 730e5c31af7Sopenharmony_ci both "" 731e5c31af7Sopenharmony_ci #version 300 es 732e5c31af7Sopenharmony_ci precision mediump float; 733e5c31af7Sopenharmony_ci precision mediump int; 734e5c31af7Sopenharmony_ci 735e5c31af7Sopenharmony_ci ${DECLARATIONS} 736e5c31af7Sopenharmony_ci 737e5c31af7Sopenharmony_ci void main() 738e5c31af7Sopenharmony_ci { 739e5c31af7Sopenharmony_ci float c; 740e5c31af7Sopenharmony_ci float a; 741e5c31af7Sopenharmony_ci uvec3 b; 742e5c31af7Sopenharmony_ci float c = a + b; 743e5c31af7Sopenharmony_ci } 744e5c31af7Sopenharmony_ci "" 745e5c31af7Sopenharmony_ci end 746e5c31af7Sopenharmony_ci case add_float_uvec3_uvec3 747e5c31af7Sopenharmony_ci expect compile_fail 748e5c31af7Sopenharmony_ci version 300 es 749e5c31af7Sopenharmony_ci 750e5c31af7Sopenharmony_ci both "" 751e5c31af7Sopenharmony_ci #version 300 es 752e5c31af7Sopenharmony_ci precision mediump float; 753e5c31af7Sopenharmony_ci precision mediump int; 754e5c31af7Sopenharmony_ci 755e5c31af7Sopenharmony_ci ${DECLARATIONS} 756e5c31af7Sopenharmony_ci 757e5c31af7Sopenharmony_ci void main() 758e5c31af7Sopenharmony_ci { 759e5c31af7Sopenharmony_ci uvec3 c; 760e5c31af7Sopenharmony_ci float a; 761e5c31af7Sopenharmony_ci uvec3 b; 762e5c31af7Sopenharmony_ci uvec3 c = a + b; 763e5c31af7Sopenharmony_ci } 764e5c31af7Sopenharmony_ci "" 765e5c31af7Sopenharmony_ci end 766e5c31af7Sopenharmony_ci case add_float_uvec4_float 767e5c31af7Sopenharmony_ci expect compile_fail 768e5c31af7Sopenharmony_ci version 300 es 769e5c31af7Sopenharmony_ci 770e5c31af7Sopenharmony_ci both "" 771e5c31af7Sopenharmony_ci #version 300 es 772e5c31af7Sopenharmony_ci precision mediump float; 773e5c31af7Sopenharmony_ci precision mediump int; 774e5c31af7Sopenharmony_ci 775e5c31af7Sopenharmony_ci ${DECLARATIONS} 776e5c31af7Sopenharmony_ci 777e5c31af7Sopenharmony_ci void main() 778e5c31af7Sopenharmony_ci { 779e5c31af7Sopenharmony_ci float c; 780e5c31af7Sopenharmony_ci float a; 781e5c31af7Sopenharmony_ci uvec4 b; 782e5c31af7Sopenharmony_ci float c = a + b; 783e5c31af7Sopenharmony_ci } 784e5c31af7Sopenharmony_ci "" 785e5c31af7Sopenharmony_ci end 786e5c31af7Sopenharmony_ci case add_float_uvec4_uvec4 787e5c31af7Sopenharmony_ci expect compile_fail 788e5c31af7Sopenharmony_ci version 300 es 789e5c31af7Sopenharmony_ci 790e5c31af7Sopenharmony_ci both "" 791e5c31af7Sopenharmony_ci #version 300 es 792e5c31af7Sopenharmony_ci precision mediump float; 793e5c31af7Sopenharmony_ci precision mediump int; 794e5c31af7Sopenharmony_ci 795e5c31af7Sopenharmony_ci ${DECLARATIONS} 796e5c31af7Sopenharmony_ci 797e5c31af7Sopenharmony_ci void main() 798e5c31af7Sopenharmony_ci { 799e5c31af7Sopenharmony_ci uvec4 c; 800e5c31af7Sopenharmony_ci float a; 801e5c31af7Sopenharmony_ci uvec4 b; 802e5c31af7Sopenharmony_ci uvec4 c = a + b; 803e5c31af7Sopenharmony_ci } 804e5c31af7Sopenharmony_ci "" 805e5c31af7Sopenharmony_ci end 806e5c31af7Sopenharmony_ci case add_vec2_uint_vec2 807e5c31af7Sopenharmony_ci expect compile_fail 808e5c31af7Sopenharmony_ci version 300 es 809e5c31af7Sopenharmony_ci 810e5c31af7Sopenharmony_ci both "" 811e5c31af7Sopenharmony_ci #version 300 es 812e5c31af7Sopenharmony_ci precision mediump float; 813e5c31af7Sopenharmony_ci precision mediump int; 814e5c31af7Sopenharmony_ci 815e5c31af7Sopenharmony_ci ${DECLARATIONS} 816e5c31af7Sopenharmony_ci 817e5c31af7Sopenharmony_ci void main() 818e5c31af7Sopenharmony_ci { 819e5c31af7Sopenharmony_ci vec2 c; 820e5c31af7Sopenharmony_ci vec2 a; 821e5c31af7Sopenharmony_ci uint b; 822e5c31af7Sopenharmony_ci vec2 c = a + b; 823e5c31af7Sopenharmony_ci } 824e5c31af7Sopenharmony_ci "" 825e5c31af7Sopenharmony_ci end 826e5c31af7Sopenharmony_ci case add_vec2_uint_uint 827e5c31af7Sopenharmony_ci expect compile_fail 828e5c31af7Sopenharmony_ci version 300 es 829e5c31af7Sopenharmony_ci 830e5c31af7Sopenharmony_ci both "" 831e5c31af7Sopenharmony_ci #version 300 es 832e5c31af7Sopenharmony_ci precision mediump float; 833e5c31af7Sopenharmony_ci precision mediump int; 834e5c31af7Sopenharmony_ci 835e5c31af7Sopenharmony_ci ${DECLARATIONS} 836e5c31af7Sopenharmony_ci 837e5c31af7Sopenharmony_ci void main() 838e5c31af7Sopenharmony_ci { 839e5c31af7Sopenharmony_ci uint c; 840e5c31af7Sopenharmony_ci vec2 a; 841e5c31af7Sopenharmony_ci uint b; 842e5c31af7Sopenharmony_ci uint c = a + b; 843e5c31af7Sopenharmony_ci } 844e5c31af7Sopenharmony_ci "" 845e5c31af7Sopenharmony_ci end 846e5c31af7Sopenharmony_ci case add_vec2_uvec2_vec2 847e5c31af7Sopenharmony_ci expect compile_fail 848e5c31af7Sopenharmony_ci version 300 es 849e5c31af7Sopenharmony_ci 850e5c31af7Sopenharmony_ci both "" 851e5c31af7Sopenharmony_ci #version 300 es 852e5c31af7Sopenharmony_ci precision mediump float; 853e5c31af7Sopenharmony_ci precision mediump int; 854e5c31af7Sopenharmony_ci 855e5c31af7Sopenharmony_ci ${DECLARATIONS} 856e5c31af7Sopenharmony_ci 857e5c31af7Sopenharmony_ci void main() 858e5c31af7Sopenharmony_ci { 859e5c31af7Sopenharmony_ci vec2 c; 860e5c31af7Sopenharmony_ci vec2 a; 861e5c31af7Sopenharmony_ci uvec2 b; 862e5c31af7Sopenharmony_ci vec2 c = a + b; 863e5c31af7Sopenharmony_ci } 864e5c31af7Sopenharmony_ci "" 865e5c31af7Sopenharmony_ci end 866e5c31af7Sopenharmony_ci case add_vec2_uvec2_uvec2 867e5c31af7Sopenharmony_ci expect compile_fail 868e5c31af7Sopenharmony_ci version 300 es 869e5c31af7Sopenharmony_ci 870e5c31af7Sopenharmony_ci both "" 871e5c31af7Sopenharmony_ci #version 300 es 872e5c31af7Sopenharmony_ci precision mediump float; 873e5c31af7Sopenharmony_ci precision mediump int; 874e5c31af7Sopenharmony_ci 875e5c31af7Sopenharmony_ci ${DECLARATIONS} 876e5c31af7Sopenharmony_ci 877e5c31af7Sopenharmony_ci void main() 878e5c31af7Sopenharmony_ci { 879e5c31af7Sopenharmony_ci uvec2 c; 880e5c31af7Sopenharmony_ci vec2 a; 881e5c31af7Sopenharmony_ci uvec2 b; 882e5c31af7Sopenharmony_ci uvec2 c = a + b; 883e5c31af7Sopenharmony_ci } 884e5c31af7Sopenharmony_ci "" 885e5c31af7Sopenharmony_ci end 886e5c31af7Sopenharmony_ci case add_vec2_uvec3_vec2 887e5c31af7Sopenharmony_ci expect compile_fail 888e5c31af7Sopenharmony_ci version 300 es 889e5c31af7Sopenharmony_ci 890e5c31af7Sopenharmony_ci both "" 891e5c31af7Sopenharmony_ci #version 300 es 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 vec2 c; 900e5c31af7Sopenharmony_ci vec2 a; 901e5c31af7Sopenharmony_ci uvec3 b; 902e5c31af7Sopenharmony_ci vec2 c = a + b; 903e5c31af7Sopenharmony_ci } 904e5c31af7Sopenharmony_ci "" 905e5c31af7Sopenharmony_ci end 906e5c31af7Sopenharmony_ci case add_vec2_uvec3_uvec3 907e5c31af7Sopenharmony_ci expect compile_fail 908e5c31af7Sopenharmony_ci version 300 es 909e5c31af7Sopenharmony_ci 910e5c31af7Sopenharmony_ci both "" 911e5c31af7Sopenharmony_ci #version 300 es 912e5c31af7Sopenharmony_ci precision mediump float; 913e5c31af7Sopenharmony_ci precision mediump int; 914e5c31af7Sopenharmony_ci 915e5c31af7Sopenharmony_ci ${DECLARATIONS} 916e5c31af7Sopenharmony_ci 917e5c31af7Sopenharmony_ci void main() 918e5c31af7Sopenharmony_ci { 919e5c31af7Sopenharmony_ci uvec3 c; 920e5c31af7Sopenharmony_ci vec2 a; 921e5c31af7Sopenharmony_ci uvec3 b; 922e5c31af7Sopenharmony_ci uvec3 c = a + b; 923e5c31af7Sopenharmony_ci } 924e5c31af7Sopenharmony_ci "" 925e5c31af7Sopenharmony_ci end 926e5c31af7Sopenharmony_ci case add_vec2_uvec4_vec2 927e5c31af7Sopenharmony_ci expect compile_fail 928e5c31af7Sopenharmony_ci version 300 es 929e5c31af7Sopenharmony_ci 930e5c31af7Sopenharmony_ci both "" 931e5c31af7Sopenharmony_ci #version 300 es 932e5c31af7Sopenharmony_ci precision mediump float; 933e5c31af7Sopenharmony_ci precision mediump int; 934e5c31af7Sopenharmony_ci 935e5c31af7Sopenharmony_ci ${DECLARATIONS} 936e5c31af7Sopenharmony_ci 937e5c31af7Sopenharmony_ci void main() 938e5c31af7Sopenharmony_ci { 939e5c31af7Sopenharmony_ci vec2 c; 940e5c31af7Sopenharmony_ci vec2 a; 941e5c31af7Sopenharmony_ci uvec4 b; 942e5c31af7Sopenharmony_ci vec2 c = a + b; 943e5c31af7Sopenharmony_ci } 944e5c31af7Sopenharmony_ci "" 945e5c31af7Sopenharmony_ci end 946e5c31af7Sopenharmony_ci case add_vec2_uvec4_uvec4 947e5c31af7Sopenharmony_ci expect compile_fail 948e5c31af7Sopenharmony_ci version 300 es 949e5c31af7Sopenharmony_ci 950e5c31af7Sopenharmony_ci both "" 951e5c31af7Sopenharmony_ci #version 300 es 952e5c31af7Sopenharmony_ci precision mediump float; 953e5c31af7Sopenharmony_ci precision mediump int; 954e5c31af7Sopenharmony_ci 955e5c31af7Sopenharmony_ci ${DECLARATIONS} 956e5c31af7Sopenharmony_ci 957e5c31af7Sopenharmony_ci void main() 958e5c31af7Sopenharmony_ci { 959e5c31af7Sopenharmony_ci uvec4 c; 960e5c31af7Sopenharmony_ci vec2 a; 961e5c31af7Sopenharmony_ci uvec4 b; 962e5c31af7Sopenharmony_ci uvec4 c = a + b; 963e5c31af7Sopenharmony_ci } 964e5c31af7Sopenharmony_ci "" 965e5c31af7Sopenharmony_ci end 966e5c31af7Sopenharmony_ci case add_vec3_uint_vec3 967e5c31af7Sopenharmony_ci expect compile_fail 968e5c31af7Sopenharmony_ci version 300 es 969e5c31af7Sopenharmony_ci 970e5c31af7Sopenharmony_ci both "" 971e5c31af7Sopenharmony_ci #version 300 es 972e5c31af7Sopenharmony_ci precision mediump float; 973e5c31af7Sopenharmony_ci precision mediump int; 974e5c31af7Sopenharmony_ci 975e5c31af7Sopenharmony_ci ${DECLARATIONS} 976e5c31af7Sopenharmony_ci 977e5c31af7Sopenharmony_ci void main() 978e5c31af7Sopenharmony_ci { 979e5c31af7Sopenharmony_ci vec3 c; 980e5c31af7Sopenharmony_ci vec3 a; 981e5c31af7Sopenharmony_ci uint b; 982e5c31af7Sopenharmony_ci vec3 c = a + b; 983e5c31af7Sopenharmony_ci } 984e5c31af7Sopenharmony_ci "" 985e5c31af7Sopenharmony_ci end 986e5c31af7Sopenharmony_ci case add_vec3_uint_uint 987e5c31af7Sopenharmony_ci expect compile_fail 988e5c31af7Sopenharmony_ci version 300 es 989e5c31af7Sopenharmony_ci 990e5c31af7Sopenharmony_ci both "" 991e5c31af7Sopenharmony_ci #version 300 es 992e5c31af7Sopenharmony_ci precision mediump float; 993e5c31af7Sopenharmony_ci precision mediump int; 994e5c31af7Sopenharmony_ci 995e5c31af7Sopenharmony_ci ${DECLARATIONS} 996e5c31af7Sopenharmony_ci 997e5c31af7Sopenharmony_ci void main() 998e5c31af7Sopenharmony_ci { 999e5c31af7Sopenharmony_ci uint c; 1000e5c31af7Sopenharmony_ci vec3 a; 1001e5c31af7Sopenharmony_ci uint b; 1002e5c31af7Sopenharmony_ci uint c = a + b; 1003e5c31af7Sopenharmony_ci } 1004e5c31af7Sopenharmony_ci "" 1005e5c31af7Sopenharmony_ci end 1006e5c31af7Sopenharmony_ci case add_vec3_uvec2_vec3 1007e5c31af7Sopenharmony_ci expect compile_fail 1008e5c31af7Sopenharmony_ci version 300 es 1009e5c31af7Sopenharmony_ci 1010e5c31af7Sopenharmony_ci both "" 1011e5c31af7Sopenharmony_ci #version 300 es 1012e5c31af7Sopenharmony_ci precision mediump float; 1013e5c31af7Sopenharmony_ci precision mediump int; 1014e5c31af7Sopenharmony_ci 1015e5c31af7Sopenharmony_ci ${DECLARATIONS} 1016e5c31af7Sopenharmony_ci 1017e5c31af7Sopenharmony_ci void main() 1018e5c31af7Sopenharmony_ci { 1019e5c31af7Sopenharmony_ci vec3 c; 1020e5c31af7Sopenharmony_ci vec3 a; 1021e5c31af7Sopenharmony_ci uvec2 b; 1022e5c31af7Sopenharmony_ci vec3 c = a + b; 1023e5c31af7Sopenharmony_ci } 1024e5c31af7Sopenharmony_ci "" 1025e5c31af7Sopenharmony_ci end 1026e5c31af7Sopenharmony_ci case add_vec3_uvec2_uvec2 1027e5c31af7Sopenharmony_ci expect compile_fail 1028e5c31af7Sopenharmony_ci version 300 es 1029e5c31af7Sopenharmony_ci 1030e5c31af7Sopenharmony_ci both "" 1031e5c31af7Sopenharmony_ci #version 300 es 1032e5c31af7Sopenharmony_ci precision mediump float; 1033e5c31af7Sopenharmony_ci precision mediump int; 1034e5c31af7Sopenharmony_ci 1035e5c31af7Sopenharmony_ci ${DECLARATIONS} 1036e5c31af7Sopenharmony_ci 1037e5c31af7Sopenharmony_ci void main() 1038e5c31af7Sopenharmony_ci { 1039e5c31af7Sopenharmony_ci uvec2 c; 1040e5c31af7Sopenharmony_ci vec3 a; 1041e5c31af7Sopenharmony_ci uvec2 b; 1042e5c31af7Sopenharmony_ci uvec2 c = a + b; 1043e5c31af7Sopenharmony_ci } 1044e5c31af7Sopenharmony_ci "" 1045e5c31af7Sopenharmony_ci end 1046e5c31af7Sopenharmony_ci case add_vec3_uvec3_vec3 1047e5c31af7Sopenharmony_ci expect compile_fail 1048e5c31af7Sopenharmony_ci version 300 es 1049e5c31af7Sopenharmony_ci 1050e5c31af7Sopenharmony_ci both "" 1051e5c31af7Sopenharmony_ci #version 300 es 1052e5c31af7Sopenharmony_ci precision mediump float; 1053e5c31af7Sopenharmony_ci precision mediump int; 1054e5c31af7Sopenharmony_ci 1055e5c31af7Sopenharmony_ci ${DECLARATIONS} 1056e5c31af7Sopenharmony_ci 1057e5c31af7Sopenharmony_ci void main() 1058e5c31af7Sopenharmony_ci { 1059e5c31af7Sopenharmony_ci vec3 c; 1060e5c31af7Sopenharmony_ci vec3 a; 1061e5c31af7Sopenharmony_ci uvec3 b; 1062e5c31af7Sopenharmony_ci vec3 c = a + b; 1063e5c31af7Sopenharmony_ci } 1064e5c31af7Sopenharmony_ci "" 1065e5c31af7Sopenharmony_ci end 1066e5c31af7Sopenharmony_ci case add_vec3_uvec3_uvec3 1067e5c31af7Sopenharmony_ci expect compile_fail 1068e5c31af7Sopenharmony_ci version 300 es 1069e5c31af7Sopenharmony_ci 1070e5c31af7Sopenharmony_ci both "" 1071e5c31af7Sopenharmony_ci #version 300 es 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 uvec3 c; 1080e5c31af7Sopenharmony_ci vec3 a; 1081e5c31af7Sopenharmony_ci uvec3 b; 1082e5c31af7Sopenharmony_ci uvec3 c = a + b; 1083e5c31af7Sopenharmony_ci } 1084e5c31af7Sopenharmony_ci "" 1085e5c31af7Sopenharmony_ci end 1086e5c31af7Sopenharmony_ci case add_vec3_uvec4_vec3 1087e5c31af7Sopenharmony_ci expect compile_fail 1088e5c31af7Sopenharmony_ci version 300 es 1089e5c31af7Sopenharmony_ci 1090e5c31af7Sopenharmony_ci both "" 1091e5c31af7Sopenharmony_ci #version 300 es 1092e5c31af7Sopenharmony_ci precision mediump float; 1093e5c31af7Sopenharmony_ci precision mediump int; 1094e5c31af7Sopenharmony_ci 1095e5c31af7Sopenharmony_ci ${DECLARATIONS} 1096e5c31af7Sopenharmony_ci 1097e5c31af7Sopenharmony_ci void main() 1098e5c31af7Sopenharmony_ci { 1099e5c31af7Sopenharmony_ci vec3 c; 1100e5c31af7Sopenharmony_ci vec3 a; 1101e5c31af7Sopenharmony_ci uvec4 b; 1102e5c31af7Sopenharmony_ci vec3 c = a + b; 1103e5c31af7Sopenharmony_ci } 1104e5c31af7Sopenharmony_ci "" 1105e5c31af7Sopenharmony_ci end 1106e5c31af7Sopenharmony_ci case add_vec3_uvec4_uvec4 1107e5c31af7Sopenharmony_ci expect compile_fail 1108e5c31af7Sopenharmony_ci version 300 es 1109e5c31af7Sopenharmony_ci 1110e5c31af7Sopenharmony_ci both "" 1111e5c31af7Sopenharmony_ci #version 300 es 1112e5c31af7Sopenharmony_ci precision mediump float; 1113e5c31af7Sopenharmony_ci precision mediump int; 1114e5c31af7Sopenharmony_ci 1115e5c31af7Sopenharmony_ci ${DECLARATIONS} 1116e5c31af7Sopenharmony_ci 1117e5c31af7Sopenharmony_ci void main() 1118e5c31af7Sopenharmony_ci { 1119e5c31af7Sopenharmony_ci uvec4 c; 1120e5c31af7Sopenharmony_ci vec3 a; 1121e5c31af7Sopenharmony_ci uvec4 b; 1122e5c31af7Sopenharmony_ci uvec4 c = a + b; 1123e5c31af7Sopenharmony_ci } 1124e5c31af7Sopenharmony_ci "" 1125e5c31af7Sopenharmony_ci end 1126e5c31af7Sopenharmony_ci case add_vec4_uint_vec4 1127e5c31af7Sopenharmony_ci expect compile_fail 1128e5c31af7Sopenharmony_ci version 300 es 1129e5c31af7Sopenharmony_ci 1130e5c31af7Sopenharmony_ci both "" 1131e5c31af7Sopenharmony_ci #version 300 es 1132e5c31af7Sopenharmony_ci precision mediump float; 1133e5c31af7Sopenharmony_ci precision mediump int; 1134e5c31af7Sopenharmony_ci 1135e5c31af7Sopenharmony_ci ${DECLARATIONS} 1136e5c31af7Sopenharmony_ci 1137e5c31af7Sopenharmony_ci void main() 1138e5c31af7Sopenharmony_ci { 1139e5c31af7Sopenharmony_ci vec4 c; 1140e5c31af7Sopenharmony_ci vec4 a; 1141e5c31af7Sopenharmony_ci uint b; 1142e5c31af7Sopenharmony_ci vec4 c = a + b; 1143e5c31af7Sopenharmony_ci } 1144e5c31af7Sopenharmony_ci "" 1145e5c31af7Sopenharmony_ci end 1146e5c31af7Sopenharmony_ci case add_vec4_uint_uint 1147e5c31af7Sopenharmony_ci expect compile_fail 1148e5c31af7Sopenharmony_ci version 300 es 1149e5c31af7Sopenharmony_ci 1150e5c31af7Sopenharmony_ci both "" 1151e5c31af7Sopenharmony_ci #version 300 es 1152e5c31af7Sopenharmony_ci precision mediump float; 1153e5c31af7Sopenharmony_ci precision mediump int; 1154e5c31af7Sopenharmony_ci 1155e5c31af7Sopenharmony_ci ${DECLARATIONS} 1156e5c31af7Sopenharmony_ci 1157e5c31af7Sopenharmony_ci void main() 1158e5c31af7Sopenharmony_ci { 1159e5c31af7Sopenharmony_ci uint c; 1160e5c31af7Sopenharmony_ci vec4 a; 1161e5c31af7Sopenharmony_ci uint b; 1162e5c31af7Sopenharmony_ci uint c = a + b; 1163e5c31af7Sopenharmony_ci } 1164e5c31af7Sopenharmony_ci "" 1165e5c31af7Sopenharmony_ci end 1166e5c31af7Sopenharmony_ci case add_vec4_uvec2_vec4 1167e5c31af7Sopenharmony_ci expect compile_fail 1168e5c31af7Sopenharmony_ci version 300 es 1169e5c31af7Sopenharmony_ci 1170e5c31af7Sopenharmony_ci both "" 1171e5c31af7Sopenharmony_ci #version 300 es 1172e5c31af7Sopenharmony_ci precision mediump float; 1173e5c31af7Sopenharmony_ci precision mediump int; 1174e5c31af7Sopenharmony_ci 1175e5c31af7Sopenharmony_ci ${DECLARATIONS} 1176e5c31af7Sopenharmony_ci 1177e5c31af7Sopenharmony_ci void main() 1178e5c31af7Sopenharmony_ci { 1179e5c31af7Sopenharmony_ci vec4 c; 1180e5c31af7Sopenharmony_ci vec4 a; 1181e5c31af7Sopenharmony_ci uvec2 b; 1182e5c31af7Sopenharmony_ci vec4 c = a + b; 1183e5c31af7Sopenharmony_ci } 1184e5c31af7Sopenharmony_ci "" 1185e5c31af7Sopenharmony_ci end 1186e5c31af7Sopenharmony_ci case add_vec4_uvec2_uvec2 1187e5c31af7Sopenharmony_ci expect compile_fail 1188e5c31af7Sopenharmony_ci version 300 es 1189e5c31af7Sopenharmony_ci 1190e5c31af7Sopenharmony_ci both "" 1191e5c31af7Sopenharmony_ci #version 300 es 1192e5c31af7Sopenharmony_ci precision mediump float; 1193e5c31af7Sopenharmony_ci precision mediump int; 1194e5c31af7Sopenharmony_ci 1195e5c31af7Sopenharmony_ci ${DECLARATIONS} 1196e5c31af7Sopenharmony_ci 1197e5c31af7Sopenharmony_ci void main() 1198e5c31af7Sopenharmony_ci { 1199e5c31af7Sopenharmony_ci uvec2 c; 1200e5c31af7Sopenharmony_ci vec4 a; 1201e5c31af7Sopenharmony_ci uvec2 b; 1202e5c31af7Sopenharmony_ci uvec2 c = a + b; 1203e5c31af7Sopenharmony_ci } 1204e5c31af7Sopenharmony_ci "" 1205e5c31af7Sopenharmony_ci end 1206e5c31af7Sopenharmony_ci case add_vec4_uvec3_vec4 1207e5c31af7Sopenharmony_ci expect compile_fail 1208e5c31af7Sopenharmony_ci version 300 es 1209e5c31af7Sopenharmony_ci 1210e5c31af7Sopenharmony_ci both "" 1211e5c31af7Sopenharmony_ci #version 300 es 1212e5c31af7Sopenharmony_ci precision mediump float; 1213e5c31af7Sopenharmony_ci precision mediump int; 1214e5c31af7Sopenharmony_ci 1215e5c31af7Sopenharmony_ci ${DECLARATIONS} 1216e5c31af7Sopenharmony_ci 1217e5c31af7Sopenharmony_ci void main() 1218e5c31af7Sopenharmony_ci { 1219e5c31af7Sopenharmony_ci vec4 c; 1220e5c31af7Sopenharmony_ci vec4 a; 1221e5c31af7Sopenharmony_ci uvec3 b; 1222e5c31af7Sopenharmony_ci vec4 c = a + b; 1223e5c31af7Sopenharmony_ci } 1224e5c31af7Sopenharmony_ci "" 1225e5c31af7Sopenharmony_ci end 1226e5c31af7Sopenharmony_ci case add_vec4_uvec3_uvec3 1227e5c31af7Sopenharmony_ci expect compile_fail 1228e5c31af7Sopenharmony_ci version 300 es 1229e5c31af7Sopenharmony_ci 1230e5c31af7Sopenharmony_ci both "" 1231e5c31af7Sopenharmony_ci #version 300 es 1232e5c31af7Sopenharmony_ci precision mediump float; 1233e5c31af7Sopenharmony_ci precision mediump int; 1234e5c31af7Sopenharmony_ci 1235e5c31af7Sopenharmony_ci ${DECLARATIONS} 1236e5c31af7Sopenharmony_ci 1237e5c31af7Sopenharmony_ci void main() 1238e5c31af7Sopenharmony_ci { 1239e5c31af7Sopenharmony_ci uvec3 c; 1240e5c31af7Sopenharmony_ci vec4 a; 1241e5c31af7Sopenharmony_ci uvec3 b; 1242e5c31af7Sopenharmony_ci uvec3 c = a + b; 1243e5c31af7Sopenharmony_ci } 1244e5c31af7Sopenharmony_ci "" 1245e5c31af7Sopenharmony_ci end 1246e5c31af7Sopenharmony_ci case add_vec4_uvec4_vec4 1247e5c31af7Sopenharmony_ci expect compile_fail 1248e5c31af7Sopenharmony_ci version 300 es 1249e5c31af7Sopenharmony_ci 1250e5c31af7Sopenharmony_ci both "" 1251e5c31af7Sopenharmony_ci #version 300 es 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 vec4 c; 1260e5c31af7Sopenharmony_ci vec4 a; 1261e5c31af7Sopenharmony_ci uvec4 b; 1262e5c31af7Sopenharmony_ci vec4 c = a + b; 1263e5c31af7Sopenharmony_ci } 1264e5c31af7Sopenharmony_ci "" 1265e5c31af7Sopenharmony_ci end 1266e5c31af7Sopenharmony_ci case add_vec4_uvec4_uvec4 1267e5c31af7Sopenharmony_ci expect compile_fail 1268e5c31af7Sopenharmony_ci version 300 es 1269e5c31af7Sopenharmony_ci 1270e5c31af7Sopenharmony_ci both "" 1271e5c31af7Sopenharmony_ci #version 300 es 1272e5c31af7Sopenharmony_ci precision mediump float; 1273e5c31af7Sopenharmony_ci precision mediump int; 1274e5c31af7Sopenharmony_ci 1275e5c31af7Sopenharmony_ci ${DECLARATIONS} 1276e5c31af7Sopenharmony_ci 1277e5c31af7Sopenharmony_ci void main() 1278e5c31af7Sopenharmony_ci { 1279e5c31af7Sopenharmony_ci uvec4 c; 1280e5c31af7Sopenharmony_ci vec4 a; 1281e5c31af7Sopenharmony_ci uvec4 b; 1282e5c31af7Sopenharmony_ci uvec4 c = a + b; 1283e5c31af7Sopenharmony_ci } 1284e5c31af7Sopenharmony_ci "" 1285e5c31af7Sopenharmony_ci end 1286e5c31af7Sopenharmony_ci case add_int_uint_int 1287e5c31af7Sopenharmony_ci expect compile_fail 1288e5c31af7Sopenharmony_ci version 300 es 1289e5c31af7Sopenharmony_ci 1290e5c31af7Sopenharmony_ci both "" 1291e5c31af7Sopenharmony_ci #version 300 es 1292e5c31af7Sopenharmony_ci precision mediump float; 1293e5c31af7Sopenharmony_ci precision mediump int; 1294e5c31af7Sopenharmony_ci 1295e5c31af7Sopenharmony_ci ${DECLARATIONS} 1296e5c31af7Sopenharmony_ci 1297e5c31af7Sopenharmony_ci void main() 1298e5c31af7Sopenharmony_ci { 1299e5c31af7Sopenharmony_ci int c; 1300e5c31af7Sopenharmony_ci int a; 1301e5c31af7Sopenharmony_ci uint b; 1302e5c31af7Sopenharmony_ci int c = a + b; 1303e5c31af7Sopenharmony_ci } 1304e5c31af7Sopenharmony_ci "" 1305e5c31af7Sopenharmony_ci end 1306e5c31af7Sopenharmony_ci case add_int_uint_uint 1307e5c31af7Sopenharmony_ci expect compile_fail 1308e5c31af7Sopenharmony_ci version 300 es 1309e5c31af7Sopenharmony_ci 1310e5c31af7Sopenharmony_ci both "" 1311e5c31af7Sopenharmony_ci #version 300 es 1312e5c31af7Sopenharmony_ci precision mediump float; 1313e5c31af7Sopenharmony_ci precision mediump int; 1314e5c31af7Sopenharmony_ci 1315e5c31af7Sopenharmony_ci ${DECLARATIONS} 1316e5c31af7Sopenharmony_ci 1317e5c31af7Sopenharmony_ci void main() 1318e5c31af7Sopenharmony_ci { 1319e5c31af7Sopenharmony_ci uint c; 1320e5c31af7Sopenharmony_ci int a; 1321e5c31af7Sopenharmony_ci uint b; 1322e5c31af7Sopenharmony_ci uint c = a + b; 1323e5c31af7Sopenharmony_ci } 1324e5c31af7Sopenharmony_ci "" 1325e5c31af7Sopenharmony_ci end 1326e5c31af7Sopenharmony_ci case add_int_uvec2_int 1327e5c31af7Sopenharmony_ci expect compile_fail 1328e5c31af7Sopenharmony_ci version 300 es 1329e5c31af7Sopenharmony_ci 1330e5c31af7Sopenharmony_ci both "" 1331e5c31af7Sopenharmony_ci #version 300 es 1332e5c31af7Sopenharmony_ci precision mediump float; 1333e5c31af7Sopenharmony_ci precision mediump int; 1334e5c31af7Sopenharmony_ci 1335e5c31af7Sopenharmony_ci ${DECLARATIONS} 1336e5c31af7Sopenharmony_ci 1337e5c31af7Sopenharmony_ci void main() 1338e5c31af7Sopenharmony_ci { 1339e5c31af7Sopenharmony_ci int c; 1340e5c31af7Sopenharmony_ci int a; 1341e5c31af7Sopenharmony_ci uvec2 b; 1342e5c31af7Sopenharmony_ci int c = a + b; 1343e5c31af7Sopenharmony_ci } 1344e5c31af7Sopenharmony_ci "" 1345e5c31af7Sopenharmony_ci end 1346e5c31af7Sopenharmony_ci case add_int_uvec2_uvec2 1347e5c31af7Sopenharmony_ci expect compile_fail 1348e5c31af7Sopenharmony_ci version 300 es 1349e5c31af7Sopenharmony_ci 1350e5c31af7Sopenharmony_ci both "" 1351e5c31af7Sopenharmony_ci #version 300 es 1352e5c31af7Sopenharmony_ci precision mediump float; 1353e5c31af7Sopenharmony_ci precision mediump int; 1354e5c31af7Sopenharmony_ci 1355e5c31af7Sopenharmony_ci ${DECLARATIONS} 1356e5c31af7Sopenharmony_ci 1357e5c31af7Sopenharmony_ci void main() 1358e5c31af7Sopenharmony_ci { 1359e5c31af7Sopenharmony_ci uvec2 c; 1360e5c31af7Sopenharmony_ci int a; 1361e5c31af7Sopenharmony_ci uvec2 b; 1362e5c31af7Sopenharmony_ci uvec2 c = a + b; 1363e5c31af7Sopenharmony_ci } 1364e5c31af7Sopenharmony_ci "" 1365e5c31af7Sopenharmony_ci end 1366e5c31af7Sopenharmony_ci case add_int_uvec3_int 1367e5c31af7Sopenharmony_ci expect compile_fail 1368e5c31af7Sopenharmony_ci version 300 es 1369e5c31af7Sopenharmony_ci 1370e5c31af7Sopenharmony_ci both "" 1371e5c31af7Sopenharmony_ci #version 300 es 1372e5c31af7Sopenharmony_ci precision mediump float; 1373e5c31af7Sopenharmony_ci precision mediump int; 1374e5c31af7Sopenharmony_ci 1375e5c31af7Sopenharmony_ci ${DECLARATIONS} 1376e5c31af7Sopenharmony_ci 1377e5c31af7Sopenharmony_ci void main() 1378e5c31af7Sopenharmony_ci { 1379e5c31af7Sopenharmony_ci int c; 1380e5c31af7Sopenharmony_ci int a; 1381e5c31af7Sopenharmony_ci uvec3 b; 1382e5c31af7Sopenharmony_ci int c = a + b; 1383e5c31af7Sopenharmony_ci } 1384e5c31af7Sopenharmony_ci "" 1385e5c31af7Sopenharmony_ci end 1386e5c31af7Sopenharmony_ci case add_int_uvec3_uvec3 1387e5c31af7Sopenharmony_ci expect compile_fail 1388e5c31af7Sopenharmony_ci version 300 es 1389e5c31af7Sopenharmony_ci 1390e5c31af7Sopenharmony_ci both "" 1391e5c31af7Sopenharmony_ci #version 300 es 1392e5c31af7Sopenharmony_ci precision mediump float; 1393e5c31af7Sopenharmony_ci precision mediump int; 1394e5c31af7Sopenharmony_ci 1395e5c31af7Sopenharmony_ci ${DECLARATIONS} 1396e5c31af7Sopenharmony_ci 1397e5c31af7Sopenharmony_ci void main() 1398e5c31af7Sopenharmony_ci { 1399e5c31af7Sopenharmony_ci uvec3 c; 1400e5c31af7Sopenharmony_ci int a; 1401e5c31af7Sopenharmony_ci uvec3 b; 1402e5c31af7Sopenharmony_ci uvec3 c = a + b; 1403e5c31af7Sopenharmony_ci } 1404e5c31af7Sopenharmony_ci "" 1405e5c31af7Sopenharmony_ci end 1406e5c31af7Sopenharmony_ci case add_int_uvec4_int 1407e5c31af7Sopenharmony_ci expect compile_fail 1408e5c31af7Sopenharmony_ci version 300 es 1409e5c31af7Sopenharmony_ci 1410e5c31af7Sopenharmony_ci both "" 1411e5c31af7Sopenharmony_ci #version 300 es 1412e5c31af7Sopenharmony_ci precision mediump float; 1413e5c31af7Sopenharmony_ci precision mediump int; 1414e5c31af7Sopenharmony_ci 1415e5c31af7Sopenharmony_ci ${DECLARATIONS} 1416e5c31af7Sopenharmony_ci 1417e5c31af7Sopenharmony_ci void main() 1418e5c31af7Sopenharmony_ci { 1419e5c31af7Sopenharmony_ci int c; 1420e5c31af7Sopenharmony_ci int a; 1421e5c31af7Sopenharmony_ci uvec4 b; 1422e5c31af7Sopenharmony_ci int c = a + b; 1423e5c31af7Sopenharmony_ci } 1424e5c31af7Sopenharmony_ci "" 1425e5c31af7Sopenharmony_ci end 1426e5c31af7Sopenharmony_ci case add_int_uvec4_uvec4 1427e5c31af7Sopenharmony_ci expect compile_fail 1428e5c31af7Sopenharmony_ci version 300 es 1429e5c31af7Sopenharmony_ci 1430e5c31af7Sopenharmony_ci both "" 1431e5c31af7Sopenharmony_ci #version 300 es 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 uvec4 c; 1440e5c31af7Sopenharmony_ci int a; 1441e5c31af7Sopenharmony_ci uvec4 b; 1442e5c31af7Sopenharmony_ci uvec4 c = a + b; 1443e5c31af7Sopenharmony_ci } 1444e5c31af7Sopenharmony_ci "" 1445e5c31af7Sopenharmony_ci end 1446e5c31af7Sopenharmony_ci case add_ivec2_uint_ivec2 1447e5c31af7Sopenharmony_ci expect compile_fail 1448e5c31af7Sopenharmony_ci version 300 es 1449e5c31af7Sopenharmony_ci 1450e5c31af7Sopenharmony_ci both "" 1451e5c31af7Sopenharmony_ci #version 300 es 1452e5c31af7Sopenharmony_ci precision mediump float; 1453e5c31af7Sopenharmony_ci precision mediump int; 1454e5c31af7Sopenharmony_ci 1455e5c31af7Sopenharmony_ci ${DECLARATIONS} 1456e5c31af7Sopenharmony_ci 1457e5c31af7Sopenharmony_ci void main() 1458e5c31af7Sopenharmony_ci { 1459e5c31af7Sopenharmony_ci ivec2 c; 1460e5c31af7Sopenharmony_ci ivec2 a; 1461e5c31af7Sopenharmony_ci uint b; 1462e5c31af7Sopenharmony_ci ivec2 c = a + b; 1463e5c31af7Sopenharmony_ci } 1464e5c31af7Sopenharmony_ci "" 1465e5c31af7Sopenharmony_ci end 1466e5c31af7Sopenharmony_ci case add_ivec2_uint_uint 1467e5c31af7Sopenharmony_ci expect compile_fail 1468e5c31af7Sopenharmony_ci version 300 es 1469e5c31af7Sopenharmony_ci 1470e5c31af7Sopenharmony_ci both "" 1471e5c31af7Sopenharmony_ci #version 300 es 1472e5c31af7Sopenharmony_ci precision mediump float; 1473e5c31af7Sopenharmony_ci precision mediump int; 1474e5c31af7Sopenharmony_ci 1475e5c31af7Sopenharmony_ci ${DECLARATIONS} 1476e5c31af7Sopenharmony_ci 1477e5c31af7Sopenharmony_ci void main() 1478e5c31af7Sopenharmony_ci { 1479e5c31af7Sopenharmony_ci uint c; 1480e5c31af7Sopenharmony_ci ivec2 a; 1481e5c31af7Sopenharmony_ci uint b; 1482e5c31af7Sopenharmony_ci uint c = a + b; 1483e5c31af7Sopenharmony_ci } 1484e5c31af7Sopenharmony_ci "" 1485e5c31af7Sopenharmony_ci end 1486e5c31af7Sopenharmony_ci case add_ivec2_uvec2_ivec2 1487e5c31af7Sopenharmony_ci expect compile_fail 1488e5c31af7Sopenharmony_ci version 300 es 1489e5c31af7Sopenharmony_ci 1490e5c31af7Sopenharmony_ci both "" 1491e5c31af7Sopenharmony_ci #version 300 es 1492e5c31af7Sopenharmony_ci precision mediump float; 1493e5c31af7Sopenharmony_ci precision mediump int; 1494e5c31af7Sopenharmony_ci 1495e5c31af7Sopenharmony_ci ${DECLARATIONS} 1496e5c31af7Sopenharmony_ci 1497e5c31af7Sopenharmony_ci void main() 1498e5c31af7Sopenharmony_ci { 1499e5c31af7Sopenharmony_ci ivec2 c; 1500e5c31af7Sopenharmony_ci ivec2 a; 1501e5c31af7Sopenharmony_ci uvec2 b; 1502e5c31af7Sopenharmony_ci ivec2 c = a + b; 1503e5c31af7Sopenharmony_ci } 1504e5c31af7Sopenharmony_ci "" 1505e5c31af7Sopenharmony_ci end 1506e5c31af7Sopenharmony_ci case add_ivec2_uvec2_uvec2 1507e5c31af7Sopenharmony_ci expect compile_fail 1508e5c31af7Sopenharmony_ci version 300 es 1509e5c31af7Sopenharmony_ci 1510e5c31af7Sopenharmony_ci both "" 1511e5c31af7Sopenharmony_ci #version 300 es 1512e5c31af7Sopenharmony_ci precision mediump float; 1513e5c31af7Sopenharmony_ci precision mediump int; 1514e5c31af7Sopenharmony_ci 1515e5c31af7Sopenharmony_ci ${DECLARATIONS} 1516e5c31af7Sopenharmony_ci 1517e5c31af7Sopenharmony_ci void main() 1518e5c31af7Sopenharmony_ci { 1519e5c31af7Sopenharmony_ci uvec2 c; 1520e5c31af7Sopenharmony_ci ivec2 a; 1521e5c31af7Sopenharmony_ci uvec2 b; 1522e5c31af7Sopenharmony_ci uvec2 c = a + b; 1523e5c31af7Sopenharmony_ci } 1524e5c31af7Sopenharmony_ci "" 1525e5c31af7Sopenharmony_ci end 1526e5c31af7Sopenharmony_ci case add_ivec2_uvec3_ivec2 1527e5c31af7Sopenharmony_ci expect compile_fail 1528e5c31af7Sopenharmony_ci version 300 es 1529e5c31af7Sopenharmony_ci 1530e5c31af7Sopenharmony_ci both "" 1531e5c31af7Sopenharmony_ci #version 300 es 1532e5c31af7Sopenharmony_ci precision mediump float; 1533e5c31af7Sopenharmony_ci precision mediump int; 1534e5c31af7Sopenharmony_ci 1535e5c31af7Sopenharmony_ci ${DECLARATIONS} 1536e5c31af7Sopenharmony_ci 1537e5c31af7Sopenharmony_ci void main() 1538e5c31af7Sopenharmony_ci { 1539e5c31af7Sopenharmony_ci ivec2 c; 1540e5c31af7Sopenharmony_ci ivec2 a; 1541e5c31af7Sopenharmony_ci uvec3 b; 1542e5c31af7Sopenharmony_ci ivec2 c = a + b; 1543e5c31af7Sopenharmony_ci } 1544e5c31af7Sopenharmony_ci "" 1545e5c31af7Sopenharmony_ci end 1546e5c31af7Sopenharmony_ci case add_ivec2_uvec3_uvec3 1547e5c31af7Sopenharmony_ci expect compile_fail 1548e5c31af7Sopenharmony_ci version 300 es 1549e5c31af7Sopenharmony_ci 1550e5c31af7Sopenharmony_ci both "" 1551e5c31af7Sopenharmony_ci #version 300 es 1552e5c31af7Sopenharmony_ci precision mediump float; 1553e5c31af7Sopenharmony_ci precision mediump int; 1554e5c31af7Sopenharmony_ci 1555e5c31af7Sopenharmony_ci ${DECLARATIONS} 1556e5c31af7Sopenharmony_ci 1557e5c31af7Sopenharmony_ci void main() 1558e5c31af7Sopenharmony_ci { 1559e5c31af7Sopenharmony_ci uvec3 c; 1560e5c31af7Sopenharmony_ci ivec2 a; 1561e5c31af7Sopenharmony_ci uvec3 b; 1562e5c31af7Sopenharmony_ci uvec3 c = a + b; 1563e5c31af7Sopenharmony_ci } 1564e5c31af7Sopenharmony_ci "" 1565e5c31af7Sopenharmony_ci end 1566e5c31af7Sopenharmony_ci case add_ivec2_uvec4_ivec2 1567e5c31af7Sopenharmony_ci expect compile_fail 1568e5c31af7Sopenharmony_ci version 300 es 1569e5c31af7Sopenharmony_ci 1570e5c31af7Sopenharmony_ci both "" 1571e5c31af7Sopenharmony_ci #version 300 es 1572e5c31af7Sopenharmony_ci precision mediump float; 1573e5c31af7Sopenharmony_ci precision mediump int; 1574e5c31af7Sopenharmony_ci 1575e5c31af7Sopenharmony_ci ${DECLARATIONS} 1576e5c31af7Sopenharmony_ci 1577e5c31af7Sopenharmony_ci void main() 1578e5c31af7Sopenharmony_ci { 1579e5c31af7Sopenharmony_ci ivec2 c; 1580e5c31af7Sopenharmony_ci ivec2 a; 1581e5c31af7Sopenharmony_ci uvec4 b; 1582e5c31af7Sopenharmony_ci ivec2 c = a + b; 1583e5c31af7Sopenharmony_ci } 1584e5c31af7Sopenharmony_ci "" 1585e5c31af7Sopenharmony_ci end 1586e5c31af7Sopenharmony_ci case add_ivec2_uvec4_uvec4 1587e5c31af7Sopenharmony_ci expect compile_fail 1588e5c31af7Sopenharmony_ci version 300 es 1589e5c31af7Sopenharmony_ci 1590e5c31af7Sopenharmony_ci both "" 1591e5c31af7Sopenharmony_ci #version 300 es 1592e5c31af7Sopenharmony_ci precision mediump float; 1593e5c31af7Sopenharmony_ci precision mediump int; 1594e5c31af7Sopenharmony_ci 1595e5c31af7Sopenharmony_ci ${DECLARATIONS} 1596e5c31af7Sopenharmony_ci 1597e5c31af7Sopenharmony_ci void main() 1598e5c31af7Sopenharmony_ci { 1599e5c31af7Sopenharmony_ci uvec4 c; 1600e5c31af7Sopenharmony_ci ivec2 a; 1601e5c31af7Sopenharmony_ci uvec4 b; 1602e5c31af7Sopenharmony_ci uvec4 c = a + b; 1603e5c31af7Sopenharmony_ci } 1604e5c31af7Sopenharmony_ci "" 1605e5c31af7Sopenharmony_ci end 1606e5c31af7Sopenharmony_ci case add_ivec3_uint_ivec3 1607e5c31af7Sopenharmony_ci expect compile_fail 1608e5c31af7Sopenharmony_ci version 300 es 1609e5c31af7Sopenharmony_ci 1610e5c31af7Sopenharmony_ci both "" 1611e5c31af7Sopenharmony_ci #version 300 es 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 ivec3 c; 1620e5c31af7Sopenharmony_ci ivec3 a; 1621e5c31af7Sopenharmony_ci uint b; 1622e5c31af7Sopenharmony_ci ivec3 c = a + b; 1623e5c31af7Sopenharmony_ci } 1624e5c31af7Sopenharmony_ci "" 1625e5c31af7Sopenharmony_ci end 1626e5c31af7Sopenharmony_ci case add_ivec3_uint_uint 1627e5c31af7Sopenharmony_ci expect compile_fail 1628e5c31af7Sopenharmony_ci version 300 es 1629e5c31af7Sopenharmony_ci 1630e5c31af7Sopenharmony_ci both "" 1631e5c31af7Sopenharmony_ci #version 300 es 1632e5c31af7Sopenharmony_ci precision mediump float; 1633e5c31af7Sopenharmony_ci precision mediump int; 1634e5c31af7Sopenharmony_ci 1635e5c31af7Sopenharmony_ci ${DECLARATIONS} 1636e5c31af7Sopenharmony_ci 1637e5c31af7Sopenharmony_ci void main() 1638e5c31af7Sopenharmony_ci { 1639e5c31af7Sopenharmony_ci uint c; 1640e5c31af7Sopenharmony_ci ivec3 a; 1641e5c31af7Sopenharmony_ci uint b; 1642e5c31af7Sopenharmony_ci uint c = a + b; 1643e5c31af7Sopenharmony_ci } 1644e5c31af7Sopenharmony_ci "" 1645e5c31af7Sopenharmony_ci end 1646e5c31af7Sopenharmony_ci case add_ivec3_uvec2_ivec3 1647e5c31af7Sopenharmony_ci expect compile_fail 1648e5c31af7Sopenharmony_ci version 300 es 1649e5c31af7Sopenharmony_ci 1650e5c31af7Sopenharmony_ci both "" 1651e5c31af7Sopenharmony_ci #version 300 es 1652e5c31af7Sopenharmony_ci precision mediump float; 1653e5c31af7Sopenharmony_ci precision mediump int; 1654e5c31af7Sopenharmony_ci 1655e5c31af7Sopenharmony_ci ${DECLARATIONS} 1656e5c31af7Sopenharmony_ci 1657e5c31af7Sopenharmony_ci void main() 1658e5c31af7Sopenharmony_ci { 1659e5c31af7Sopenharmony_ci ivec3 c; 1660e5c31af7Sopenharmony_ci ivec3 a; 1661e5c31af7Sopenharmony_ci uvec2 b; 1662e5c31af7Sopenharmony_ci ivec3 c = a + b; 1663e5c31af7Sopenharmony_ci } 1664e5c31af7Sopenharmony_ci "" 1665e5c31af7Sopenharmony_ci end 1666e5c31af7Sopenharmony_ci case add_ivec3_uvec2_uvec2 1667e5c31af7Sopenharmony_ci expect compile_fail 1668e5c31af7Sopenharmony_ci version 300 es 1669e5c31af7Sopenharmony_ci 1670e5c31af7Sopenharmony_ci both "" 1671e5c31af7Sopenharmony_ci #version 300 es 1672e5c31af7Sopenharmony_ci precision mediump float; 1673e5c31af7Sopenharmony_ci precision mediump int; 1674e5c31af7Sopenharmony_ci 1675e5c31af7Sopenharmony_ci ${DECLARATIONS} 1676e5c31af7Sopenharmony_ci 1677e5c31af7Sopenharmony_ci void main() 1678e5c31af7Sopenharmony_ci { 1679e5c31af7Sopenharmony_ci uvec2 c; 1680e5c31af7Sopenharmony_ci ivec3 a; 1681e5c31af7Sopenharmony_ci uvec2 b; 1682e5c31af7Sopenharmony_ci uvec2 c = a + b; 1683e5c31af7Sopenharmony_ci } 1684e5c31af7Sopenharmony_ci "" 1685e5c31af7Sopenharmony_ci end 1686e5c31af7Sopenharmony_ci case add_ivec3_uvec3_ivec3 1687e5c31af7Sopenharmony_ci expect compile_fail 1688e5c31af7Sopenharmony_ci version 300 es 1689e5c31af7Sopenharmony_ci 1690e5c31af7Sopenharmony_ci both "" 1691e5c31af7Sopenharmony_ci #version 300 es 1692e5c31af7Sopenharmony_ci precision mediump float; 1693e5c31af7Sopenharmony_ci precision mediump int; 1694e5c31af7Sopenharmony_ci 1695e5c31af7Sopenharmony_ci ${DECLARATIONS} 1696e5c31af7Sopenharmony_ci 1697e5c31af7Sopenharmony_ci void main() 1698e5c31af7Sopenharmony_ci { 1699e5c31af7Sopenharmony_ci ivec3 c; 1700e5c31af7Sopenharmony_ci ivec3 a; 1701e5c31af7Sopenharmony_ci uvec3 b; 1702e5c31af7Sopenharmony_ci ivec3 c = a + b; 1703e5c31af7Sopenharmony_ci } 1704e5c31af7Sopenharmony_ci "" 1705e5c31af7Sopenharmony_ci end 1706e5c31af7Sopenharmony_ci case add_ivec3_uvec3_uvec3 1707e5c31af7Sopenharmony_ci expect compile_fail 1708e5c31af7Sopenharmony_ci version 300 es 1709e5c31af7Sopenharmony_ci 1710e5c31af7Sopenharmony_ci both "" 1711e5c31af7Sopenharmony_ci #version 300 es 1712e5c31af7Sopenharmony_ci precision mediump float; 1713e5c31af7Sopenharmony_ci precision mediump int; 1714e5c31af7Sopenharmony_ci 1715e5c31af7Sopenharmony_ci ${DECLARATIONS} 1716e5c31af7Sopenharmony_ci 1717e5c31af7Sopenharmony_ci void main() 1718e5c31af7Sopenharmony_ci { 1719e5c31af7Sopenharmony_ci uvec3 c; 1720e5c31af7Sopenharmony_ci ivec3 a; 1721e5c31af7Sopenharmony_ci uvec3 b; 1722e5c31af7Sopenharmony_ci uvec3 c = a + b; 1723e5c31af7Sopenharmony_ci } 1724e5c31af7Sopenharmony_ci "" 1725e5c31af7Sopenharmony_ci end 1726e5c31af7Sopenharmony_ci case add_ivec3_uvec4_ivec3 1727e5c31af7Sopenharmony_ci expect compile_fail 1728e5c31af7Sopenharmony_ci version 300 es 1729e5c31af7Sopenharmony_ci 1730e5c31af7Sopenharmony_ci both "" 1731e5c31af7Sopenharmony_ci #version 300 es 1732e5c31af7Sopenharmony_ci precision mediump float; 1733e5c31af7Sopenharmony_ci precision mediump int; 1734e5c31af7Sopenharmony_ci 1735e5c31af7Sopenharmony_ci ${DECLARATIONS} 1736e5c31af7Sopenharmony_ci 1737e5c31af7Sopenharmony_ci void main() 1738e5c31af7Sopenharmony_ci { 1739e5c31af7Sopenharmony_ci ivec3 c; 1740e5c31af7Sopenharmony_ci ivec3 a; 1741e5c31af7Sopenharmony_ci uvec4 b; 1742e5c31af7Sopenharmony_ci ivec3 c = a + b; 1743e5c31af7Sopenharmony_ci } 1744e5c31af7Sopenharmony_ci "" 1745e5c31af7Sopenharmony_ci end 1746e5c31af7Sopenharmony_ci case add_ivec3_uvec4_uvec4 1747e5c31af7Sopenharmony_ci expect compile_fail 1748e5c31af7Sopenharmony_ci version 300 es 1749e5c31af7Sopenharmony_ci 1750e5c31af7Sopenharmony_ci both "" 1751e5c31af7Sopenharmony_ci #version 300 es 1752e5c31af7Sopenharmony_ci precision mediump float; 1753e5c31af7Sopenharmony_ci precision mediump int; 1754e5c31af7Sopenharmony_ci 1755e5c31af7Sopenharmony_ci ${DECLARATIONS} 1756e5c31af7Sopenharmony_ci 1757e5c31af7Sopenharmony_ci void main() 1758e5c31af7Sopenharmony_ci { 1759e5c31af7Sopenharmony_ci uvec4 c; 1760e5c31af7Sopenharmony_ci ivec3 a; 1761e5c31af7Sopenharmony_ci uvec4 b; 1762e5c31af7Sopenharmony_ci uvec4 c = a + b; 1763e5c31af7Sopenharmony_ci } 1764e5c31af7Sopenharmony_ci "" 1765e5c31af7Sopenharmony_ci end 1766e5c31af7Sopenharmony_ci case add_ivec4_uint_ivec4 1767e5c31af7Sopenharmony_ci expect compile_fail 1768e5c31af7Sopenharmony_ci version 300 es 1769e5c31af7Sopenharmony_ci 1770e5c31af7Sopenharmony_ci both "" 1771e5c31af7Sopenharmony_ci #version 300 es 1772e5c31af7Sopenharmony_ci precision mediump float; 1773e5c31af7Sopenharmony_ci precision mediump int; 1774e5c31af7Sopenharmony_ci 1775e5c31af7Sopenharmony_ci ${DECLARATIONS} 1776e5c31af7Sopenharmony_ci 1777e5c31af7Sopenharmony_ci void main() 1778e5c31af7Sopenharmony_ci { 1779e5c31af7Sopenharmony_ci ivec4 c; 1780e5c31af7Sopenharmony_ci ivec4 a; 1781e5c31af7Sopenharmony_ci uint b; 1782e5c31af7Sopenharmony_ci ivec4 c = a + b; 1783e5c31af7Sopenharmony_ci } 1784e5c31af7Sopenharmony_ci "" 1785e5c31af7Sopenharmony_ci end 1786e5c31af7Sopenharmony_ci case add_ivec4_uint_uint 1787e5c31af7Sopenharmony_ci expect compile_fail 1788e5c31af7Sopenharmony_ci version 300 es 1789e5c31af7Sopenharmony_ci 1790e5c31af7Sopenharmony_ci both "" 1791e5c31af7Sopenharmony_ci #version 300 es 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 uint c; 1800e5c31af7Sopenharmony_ci ivec4 a; 1801e5c31af7Sopenharmony_ci uint b; 1802e5c31af7Sopenharmony_ci uint c = a + b; 1803e5c31af7Sopenharmony_ci } 1804e5c31af7Sopenharmony_ci "" 1805e5c31af7Sopenharmony_ci end 1806e5c31af7Sopenharmony_ci case add_ivec4_uvec2_ivec4 1807e5c31af7Sopenharmony_ci expect compile_fail 1808e5c31af7Sopenharmony_ci version 300 es 1809e5c31af7Sopenharmony_ci 1810e5c31af7Sopenharmony_ci both "" 1811e5c31af7Sopenharmony_ci #version 300 es 1812e5c31af7Sopenharmony_ci precision mediump float; 1813e5c31af7Sopenharmony_ci precision mediump int; 1814e5c31af7Sopenharmony_ci 1815e5c31af7Sopenharmony_ci ${DECLARATIONS} 1816e5c31af7Sopenharmony_ci 1817e5c31af7Sopenharmony_ci void main() 1818e5c31af7Sopenharmony_ci { 1819e5c31af7Sopenharmony_ci ivec4 c; 1820e5c31af7Sopenharmony_ci ivec4 a; 1821e5c31af7Sopenharmony_ci uvec2 b; 1822e5c31af7Sopenharmony_ci ivec4 c = a + b; 1823e5c31af7Sopenharmony_ci } 1824e5c31af7Sopenharmony_ci "" 1825e5c31af7Sopenharmony_ci end 1826e5c31af7Sopenharmony_ci case add_ivec4_uvec2_uvec2 1827e5c31af7Sopenharmony_ci expect compile_fail 1828e5c31af7Sopenharmony_ci version 300 es 1829e5c31af7Sopenharmony_ci 1830e5c31af7Sopenharmony_ci both "" 1831e5c31af7Sopenharmony_ci #version 300 es 1832e5c31af7Sopenharmony_ci precision mediump float; 1833e5c31af7Sopenharmony_ci precision mediump int; 1834e5c31af7Sopenharmony_ci 1835e5c31af7Sopenharmony_ci ${DECLARATIONS} 1836e5c31af7Sopenharmony_ci 1837e5c31af7Sopenharmony_ci void main() 1838e5c31af7Sopenharmony_ci { 1839e5c31af7Sopenharmony_ci uvec2 c; 1840e5c31af7Sopenharmony_ci ivec4 a; 1841e5c31af7Sopenharmony_ci uvec2 b; 1842e5c31af7Sopenharmony_ci uvec2 c = a + b; 1843e5c31af7Sopenharmony_ci } 1844e5c31af7Sopenharmony_ci "" 1845e5c31af7Sopenharmony_ci end 1846e5c31af7Sopenharmony_ci case add_ivec4_uvec3_ivec4 1847e5c31af7Sopenharmony_ci expect compile_fail 1848e5c31af7Sopenharmony_ci version 300 es 1849e5c31af7Sopenharmony_ci 1850e5c31af7Sopenharmony_ci both "" 1851e5c31af7Sopenharmony_ci #version 300 es 1852e5c31af7Sopenharmony_ci precision mediump float; 1853e5c31af7Sopenharmony_ci precision mediump int; 1854e5c31af7Sopenharmony_ci 1855e5c31af7Sopenharmony_ci ${DECLARATIONS} 1856e5c31af7Sopenharmony_ci 1857e5c31af7Sopenharmony_ci void main() 1858e5c31af7Sopenharmony_ci { 1859e5c31af7Sopenharmony_ci ivec4 c; 1860e5c31af7Sopenharmony_ci ivec4 a; 1861e5c31af7Sopenharmony_ci uvec3 b; 1862e5c31af7Sopenharmony_ci ivec4 c = a + b; 1863e5c31af7Sopenharmony_ci } 1864e5c31af7Sopenharmony_ci "" 1865e5c31af7Sopenharmony_ci end 1866e5c31af7Sopenharmony_ci case add_ivec4_uvec3_uvec3 1867e5c31af7Sopenharmony_ci expect compile_fail 1868e5c31af7Sopenharmony_ci version 300 es 1869e5c31af7Sopenharmony_ci 1870e5c31af7Sopenharmony_ci both "" 1871e5c31af7Sopenharmony_ci #version 300 es 1872e5c31af7Sopenharmony_ci precision mediump float; 1873e5c31af7Sopenharmony_ci precision mediump int; 1874e5c31af7Sopenharmony_ci 1875e5c31af7Sopenharmony_ci ${DECLARATIONS} 1876e5c31af7Sopenharmony_ci 1877e5c31af7Sopenharmony_ci void main() 1878e5c31af7Sopenharmony_ci { 1879e5c31af7Sopenharmony_ci uvec3 c; 1880e5c31af7Sopenharmony_ci ivec4 a; 1881e5c31af7Sopenharmony_ci uvec3 b; 1882e5c31af7Sopenharmony_ci uvec3 c = a + b; 1883e5c31af7Sopenharmony_ci } 1884e5c31af7Sopenharmony_ci "" 1885e5c31af7Sopenharmony_ci end 1886e5c31af7Sopenharmony_ci case add_ivec4_uvec4_ivec4 1887e5c31af7Sopenharmony_ci expect compile_fail 1888e5c31af7Sopenharmony_ci version 300 es 1889e5c31af7Sopenharmony_ci 1890e5c31af7Sopenharmony_ci both "" 1891e5c31af7Sopenharmony_ci #version 300 es 1892e5c31af7Sopenharmony_ci precision mediump float; 1893e5c31af7Sopenharmony_ci precision mediump int; 1894e5c31af7Sopenharmony_ci 1895e5c31af7Sopenharmony_ci ${DECLARATIONS} 1896e5c31af7Sopenharmony_ci 1897e5c31af7Sopenharmony_ci void main() 1898e5c31af7Sopenharmony_ci { 1899e5c31af7Sopenharmony_ci ivec4 c; 1900e5c31af7Sopenharmony_ci ivec4 a; 1901e5c31af7Sopenharmony_ci uvec4 b; 1902e5c31af7Sopenharmony_ci ivec4 c = a + b; 1903e5c31af7Sopenharmony_ci } 1904e5c31af7Sopenharmony_ci "" 1905e5c31af7Sopenharmony_ci end 1906e5c31af7Sopenharmony_ci case add_ivec4_uvec4_uvec4 1907e5c31af7Sopenharmony_ci expect compile_fail 1908e5c31af7Sopenharmony_ci version 300 es 1909e5c31af7Sopenharmony_ci 1910e5c31af7Sopenharmony_ci both "" 1911e5c31af7Sopenharmony_ci #version 300 es 1912e5c31af7Sopenharmony_ci precision mediump float; 1913e5c31af7Sopenharmony_ci precision mediump int; 1914e5c31af7Sopenharmony_ci 1915e5c31af7Sopenharmony_ci ${DECLARATIONS} 1916e5c31af7Sopenharmony_ci 1917e5c31af7Sopenharmony_ci void main() 1918e5c31af7Sopenharmony_ci { 1919e5c31af7Sopenharmony_ci uvec4 c; 1920e5c31af7Sopenharmony_ci ivec4 a; 1921e5c31af7Sopenharmony_ci uvec4 b; 1922e5c31af7Sopenharmony_ci uvec4 c = a + b; 1923e5c31af7Sopenharmony_ci } 1924e5c31af7Sopenharmony_ci "" 1925e5c31af7Sopenharmony_ci end 1926e5c31af7Sopenharmony_ci case mul_float_int_float 1927e5c31af7Sopenharmony_ci expect compile_fail 1928e5c31af7Sopenharmony_ci version 300 es 1929e5c31af7Sopenharmony_ci 1930e5c31af7Sopenharmony_ci both "" 1931e5c31af7Sopenharmony_ci #version 300 es 1932e5c31af7Sopenharmony_ci precision mediump float; 1933e5c31af7Sopenharmony_ci precision mediump int; 1934e5c31af7Sopenharmony_ci 1935e5c31af7Sopenharmony_ci ${DECLARATIONS} 1936e5c31af7Sopenharmony_ci 1937e5c31af7Sopenharmony_ci void main() 1938e5c31af7Sopenharmony_ci { 1939e5c31af7Sopenharmony_ci float c; 1940e5c31af7Sopenharmony_ci float a; 1941e5c31af7Sopenharmony_ci int b; 1942e5c31af7Sopenharmony_ci float c = a * b; 1943e5c31af7Sopenharmony_ci } 1944e5c31af7Sopenharmony_ci "" 1945e5c31af7Sopenharmony_ci end 1946e5c31af7Sopenharmony_ci case mul_float_int_int 1947e5c31af7Sopenharmony_ci expect compile_fail 1948e5c31af7Sopenharmony_ci version 300 es 1949e5c31af7Sopenharmony_ci 1950e5c31af7Sopenharmony_ci both "" 1951e5c31af7Sopenharmony_ci #version 300 es 1952e5c31af7Sopenharmony_ci precision mediump float; 1953e5c31af7Sopenharmony_ci precision mediump int; 1954e5c31af7Sopenharmony_ci 1955e5c31af7Sopenharmony_ci ${DECLARATIONS} 1956e5c31af7Sopenharmony_ci 1957e5c31af7Sopenharmony_ci void main() 1958e5c31af7Sopenharmony_ci { 1959e5c31af7Sopenharmony_ci int c; 1960e5c31af7Sopenharmony_ci float a; 1961e5c31af7Sopenharmony_ci int b; 1962e5c31af7Sopenharmony_ci int c = a * b; 1963e5c31af7Sopenharmony_ci } 1964e5c31af7Sopenharmony_ci "" 1965e5c31af7Sopenharmony_ci end 1966e5c31af7Sopenharmony_ci case mul_float_ivec2_float 1967e5c31af7Sopenharmony_ci expect compile_fail 1968e5c31af7Sopenharmony_ci version 300 es 1969e5c31af7Sopenharmony_ci 1970e5c31af7Sopenharmony_ci both "" 1971e5c31af7Sopenharmony_ci #version 300 es 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 float c; 1980e5c31af7Sopenharmony_ci float a; 1981e5c31af7Sopenharmony_ci ivec2 b; 1982e5c31af7Sopenharmony_ci float c = a * b; 1983e5c31af7Sopenharmony_ci } 1984e5c31af7Sopenharmony_ci "" 1985e5c31af7Sopenharmony_ci end 1986e5c31af7Sopenharmony_ci case mul_float_ivec2_ivec2 1987e5c31af7Sopenharmony_ci expect compile_fail 1988e5c31af7Sopenharmony_ci version 300 es 1989e5c31af7Sopenharmony_ci 1990e5c31af7Sopenharmony_ci both "" 1991e5c31af7Sopenharmony_ci #version 300 es 1992e5c31af7Sopenharmony_ci precision mediump float; 1993e5c31af7Sopenharmony_ci precision mediump int; 1994e5c31af7Sopenharmony_ci 1995e5c31af7Sopenharmony_ci ${DECLARATIONS} 1996e5c31af7Sopenharmony_ci 1997e5c31af7Sopenharmony_ci void main() 1998e5c31af7Sopenharmony_ci { 1999e5c31af7Sopenharmony_ci ivec2 c; 2000e5c31af7Sopenharmony_ci float a; 2001e5c31af7Sopenharmony_ci ivec2 b; 2002e5c31af7Sopenharmony_ci ivec2 c = a * b; 2003e5c31af7Sopenharmony_ci } 2004e5c31af7Sopenharmony_ci "" 2005e5c31af7Sopenharmony_ci end 2006e5c31af7Sopenharmony_ci case mul_float_ivec3_float 2007e5c31af7Sopenharmony_ci expect compile_fail 2008e5c31af7Sopenharmony_ci version 300 es 2009e5c31af7Sopenharmony_ci 2010e5c31af7Sopenharmony_ci both "" 2011e5c31af7Sopenharmony_ci #version 300 es 2012e5c31af7Sopenharmony_ci precision mediump float; 2013e5c31af7Sopenharmony_ci precision mediump int; 2014e5c31af7Sopenharmony_ci 2015e5c31af7Sopenharmony_ci ${DECLARATIONS} 2016e5c31af7Sopenharmony_ci 2017e5c31af7Sopenharmony_ci void main() 2018e5c31af7Sopenharmony_ci { 2019e5c31af7Sopenharmony_ci float c; 2020e5c31af7Sopenharmony_ci float a; 2021e5c31af7Sopenharmony_ci ivec3 b; 2022e5c31af7Sopenharmony_ci float c = a * b; 2023e5c31af7Sopenharmony_ci } 2024e5c31af7Sopenharmony_ci "" 2025e5c31af7Sopenharmony_ci end 2026e5c31af7Sopenharmony_ci case mul_float_ivec3_ivec3 2027e5c31af7Sopenharmony_ci expect compile_fail 2028e5c31af7Sopenharmony_ci version 300 es 2029e5c31af7Sopenharmony_ci 2030e5c31af7Sopenharmony_ci both "" 2031e5c31af7Sopenharmony_ci #version 300 es 2032e5c31af7Sopenharmony_ci precision mediump float; 2033e5c31af7Sopenharmony_ci precision mediump int; 2034e5c31af7Sopenharmony_ci 2035e5c31af7Sopenharmony_ci ${DECLARATIONS} 2036e5c31af7Sopenharmony_ci 2037e5c31af7Sopenharmony_ci void main() 2038e5c31af7Sopenharmony_ci { 2039e5c31af7Sopenharmony_ci ivec3 c; 2040e5c31af7Sopenharmony_ci float a; 2041e5c31af7Sopenharmony_ci ivec3 b; 2042e5c31af7Sopenharmony_ci ivec3 c = a * b; 2043e5c31af7Sopenharmony_ci } 2044e5c31af7Sopenharmony_ci "" 2045e5c31af7Sopenharmony_ci end 2046e5c31af7Sopenharmony_ci case mul_float_ivec4_float 2047e5c31af7Sopenharmony_ci expect compile_fail 2048e5c31af7Sopenharmony_ci version 300 es 2049e5c31af7Sopenharmony_ci 2050e5c31af7Sopenharmony_ci both "" 2051e5c31af7Sopenharmony_ci #version 300 es 2052e5c31af7Sopenharmony_ci precision mediump float; 2053e5c31af7Sopenharmony_ci precision mediump int; 2054e5c31af7Sopenharmony_ci 2055e5c31af7Sopenharmony_ci ${DECLARATIONS} 2056e5c31af7Sopenharmony_ci 2057e5c31af7Sopenharmony_ci void main() 2058e5c31af7Sopenharmony_ci { 2059e5c31af7Sopenharmony_ci float c; 2060e5c31af7Sopenharmony_ci float a; 2061e5c31af7Sopenharmony_ci ivec4 b; 2062e5c31af7Sopenharmony_ci float c = a * b; 2063e5c31af7Sopenharmony_ci } 2064e5c31af7Sopenharmony_ci "" 2065e5c31af7Sopenharmony_ci end 2066e5c31af7Sopenharmony_ci case mul_float_ivec4_ivec4 2067e5c31af7Sopenharmony_ci expect compile_fail 2068e5c31af7Sopenharmony_ci version 300 es 2069e5c31af7Sopenharmony_ci 2070e5c31af7Sopenharmony_ci both "" 2071e5c31af7Sopenharmony_ci #version 300 es 2072e5c31af7Sopenharmony_ci precision mediump float; 2073e5c31af7Sopenharmony_ci precision mediump int; 2074e5c31af7Sopenharmony_ci 2075e5c31af7Sopenharmony_ci ${DECLARATIONS} 2076e5c31af7Sopenharmony_ci 2077e5c31af7Sopenharmony_ci void main() 2078e5c31af7Sopenharmony_ci { 2079e5c31af7Sopenharmony_ci ivec4 c; 2080e5c31af7Sopenharmony_ci float a; 2081e5c31af7Sopenharmony_ci ivec4 b; 2082e5c31af7Sopenharmony_ci ivec4 c = a * b; 2083e5c31af7Sopenharmony_ci } 2084e5c31af7Sopenharmony_ci "" 2085e5c31af7Sopenharmony_ci end 2086e5c31af7Sopenharmony_ci case mul_vec2_int_vec2 2087e5c31af7Sopenharmony_ci expect compile_fail 2088e5c31af7Sopenharmony_ci version 300 es 2089e5c31af7Sopenharmony_ci 2090e5c31af7Sopenharmony_ci both "" 2091e5c31af7Sopenharmony_ci #version 300 es 2092e5c31af7Sopenharmony_ci precision mediump float; 2093e5c31af7Sopenharmony_ci precision mediump int; 2094e5c31af7Sopenharmony_ci 2095e5c31af7Sopenharmony_ci ${DECLARATIONS} 2096e5c31af7Sopenharmony_ci 2097e5c31af7Sopenharmony_ci void main() 2098e5c31af7Sopenharmony_ci { 2099e5c31af7Sopenharmony_ci vec2 c; 2100e5c31af7Sopenharmony_ci vec2 a; 2101e5c31af7Sopenharmony_ci int b; 2102e5c31af7Sopenharmony_ci vec2 c = a * b; 2103e5c31af7Sopenharmony_ci } 2104e5c31af7Sopenharmony_ci "" 2105e5c31af7Sopenharmony_ci end 2106e5c31af7Sopenharmony_ci case mul_vec2_int_int 2107e5c31af7Sopenharmony_ci expect compile_fail 2108e5c31af7Sopenharmony_ci version 300 es 2109e5c31af7Sopenharmony_ci 2110e5c31af7Sopenharmony_ci both "" 2111e5c31af7Sopenharmony_ci #version 300 es 2112e5c31af7Sopenharmony_ci precision mediump float; 2113e5c31af7Sopenharmony_ci precision mediump int; 2114e5c31af7Sopenharmony_ci 2115e5c31af7Sopenharmony_ci ${DECLARATIONS} 2116e5c31af7Sopenharmony_ci 2117e5c31af7Sopenharmony_ci void main() 2118e5c31af7Sopenharmony_ci { 2119e5c31af7Sopenharmony_ci int c; 2120e5c31af7Sopenharmony_ci vec2 a; 2121e5c31af7Sopenharmony_ci int b; 2122e5c31af7Sopenharmony_ci int c = a * b; 2123e5c31af7Sopenharmony_ci } 2124e5c31af7Sopenharmony_ci "" 2125e5c31af7Sopenharmony_ci end 2126e5c31af7Sopenharmony_ci case mul_vec2_ivec2_vec2 2127e5c31af7Sopenharmony_ci expect compile_fail 2128e5c31af7Sopenharmony_ci version 300 es 2129e5c31af7Sopenharmony_ci 2130e5c31af7Sopenharmony_ci both "" 2131e5c31af7Sopenharmony_ci #version 300 es 2132e5c31af7Sopenharmony_ci precision mediump float; 2133e5c31af7Sopenharmony_ci precision mediump int; 2134e5c31af7Sopenharmony_ci 2135e5c31af7Sopenharmony_ci ${DECLARATIONS} 2136e5c31af7Sopenharmony_ci 2137e5c31af7Sopenharmony_ci void main() 2138e5c31af7Sopenharmony_ci { 2139e5c31af7Sopenharmony_ci vec2 c; 2140e5c31af7Sopenharmony_ci vec2 a; 2141e5c31af7Sopenharmony_ci ivec2 b; 2142e5c31af7Sopenharmony_ci vec2 c = a * b; 2143e5c31af7Sopenharmony_ci } 2144e5c31af7Sopenharmony_ci "" 2145e5c31af7Sopenharmony_ci end 2146e5c31af7Sopenharmony_ci case mul_vec2_ivec2_ivec2 2147e5c31af7Sopenharmony_ci expect compile_fail 2148e5c31af7Sopenharmony_ci version 300 es 2149e5c31af7Sopenharmony_ci 2150e5c31af7Sopenharmony_ci both "" 2151e5c31af7Sopenharmony_ci #version 300 es 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 ivec2 c; 2160e5c31af7Sopenharmony_ci vec2 a; 2161e5c31af7Sopenharmony_ci ivec2 b; 2162e5c31af7Sopenharmony_ci ivec2 c = a * b; 2163e5c31af7Sopenharmony_ci } 2164e5c31af7Sopenharmony_ci "" 2165e5c31af7Sopenharmony_ci end 2166e5c31af7Sopenharmony_ci case mul_vec2_ivec3_vec2 2167e5c31af7Sopenharmony_ci expect compile_fail 2168e5c31af7Sopenharmony_ci version 300 es 2169e5c31af7Sopenharmony_ci 2170e5c31af7Sopenharmony_ci both "" 2171e5c31af7Sopenharmony_ci #version 300 es 2172e5c31af7Sopenharmony_ci precision mediump float; 2173e5c31af7Sopenharmony_ci precision mediump int; 2174e5c31af7Sopenharmony_ci 2175e5c31af7Sopenharmony_ci ${DECLARATIONS} 2176e5c31af7Sopenharmony_ci 2177e5c31af7Sopenharmony_ci void main() 2178e5c31af7Sopenharmony_ci { 2179e5c31af7Sopenharmony_ci vec2 c; 2180e5c31af7Sopenharmony_ci vec2 a; 2181e5c31af7Sopenharmony_ci ivec3 b; 2182e5c31af7Sopenharmony_ci vec2 c = a * b; 2183e5c31af7Sopenharmony_ci } 2184e5c31af7Sopenharmony_ci "" 2185e5c31af7Sopenharmony_ci end 2186e5c31af7Sopenharmony_ci case mul_vec2_ivec3_ivec3 2187e5c31af7Sopenharmony_ci expect compile_fail 2188e5c31af7Sopenharmony_ci version 300 es 2189e5c31af7Sopenharmony_ci 2190e5c31af7Sopenharmony_ci both "" 2191e5c31af7Sopenharmony_ci #version 300 es 2192e5c31af7Sopenharmony_ci precision mediump float; 2193e5c31af7Sopenharmony_ci precision mediump int; 2194e5c31af7Sopenharmony_ci 2195e5c31af7Sopenharmony_ci ${DECLARATIONS} 2196e5c31af7Sopenharmony_ci 2197e5c31af7Sopenharmony_ci void main() 2198e5c31af7Sopenharmony_ci { 2199e5c31af7Sopenharmony_ci ivec3 c; 2200e5c31af7Sopenharmony_ci vec2 a; 2201e5c31af7Sopenharmony_ci ivec3 b; 2202e5c31af7Sopenharmony_ci ivec3 c = a * b; 2203e5c31af7Sopenharmony_ci } 2204e5c31af7Sopenharmony_ci "" 2205e5c31af7Sopenharmony_ci end 2206e5c31af7Sopenharmony_ci case mul_vec2_ivec4_vec2 2207e5c31af7Sopenharmony_ci expect compile_fail 2208e5c31af7Sopenharmony_ci version 300 es 2209e5c31af7Sopenharmony_ci 2210e5c31af7Sopenharmony_ci both "" 2211e5c31af7Sopenharmony_ci #version 300 es 2212e5c31af7Sopenharmony_ci precision mediump float; 2213e5c31af7Sopenharmony_ci precision mediump int; 2214e5c31af7Sopenharmony_ci 2215e5c31af7Sopenharmony_ci ${DECLARATIONS} 2216e5c31af7Sopenharmony_ci 2217e5c31af7Sopenharmony_ci void main() 2218e5c31af7Sopenharmony_ci { 2219e5c31af7Sopenharmony_ci vec2 c; 2220e5c31af7Sopenharmony_ci vec2 a; 2221e5c31af7Sopenharmony_ci ivec4 b; 2222e5c31af7Sopenharmony_ci vec2 c = a * b; 2223e5c31af7Sopenharmony_ci } 2224e5c31af7Sopenharmony_ci "" 2225e5c31af7Sopenharmony_ci end 2226e5c31af7Sopenharmony_ci case mul_vec2_ivec4_ivec4 2227e5c31af7Sopenharmony_ci expect compile_fail 2228e5c31af7Sopenharmony_ci version 300 es 2229e5c31af7Sopenharmony_ci 2230e5c31af7Sopenharmony_ci both "" 2231e5c31af7Sopenharmony_ci #version 300 es 2232e5c31af7Sopenharmony_ci precision mediump float; 2233e5c31af7Sopenharmony_ci precision mediump int; 2234e5c31af7Sopenharmony_ci 2235e5c31af7Sopenharmony_ci ${DECLARATIONS} 2236e5c31af7Sopenharmony_ci 2237e5c31af7Sopenharmony_ci void main() 2238e5c31af7Sopenharmony_ci { 2239e5c31af7Sopenharmony_ci ivec4 c; 2240e5c31af7Sopenharmony_ci vec2 a; 2241e5c31af7Sopenharmony_ci ivec4 b; 2242e5c31af7Sopenharmony_ci ivec4 c = a * b; 2243e5c31af7Sopenharmony_ci } 2244e5c31af7Sopenharmony_ci "" 2245e5c31af7Sopenharmony_ci end 2246e5c31af7Sopenharmony_ci case mul_vec3_int_vec3 2247e5c31af7Sopenharmony_ci expect compile_fail 2248e5c31af7Sopenharmony_ci version 300 es 2249e5c31af7Sopenharmony_ci 2250e5c31af7Sopenharmony_ci both "" 2251e5c31af7Sopenharmony_ci #version 300 es 2252e5c31af7Sopenharmony_ci precision mediump float; 2253e5c31af7Sopenharmony_ci precision mediump int; 2254e5c31af7Sopenharmony_ci 2255e5c31af7Sopenharmony_ci ${DECLARATIONS} 2256e5c31af7Sopenharmony_ci 2257e5c31af7Sopenharmony_ci void main() 2258e5c31af7Sopenharmony_ci { 2259e5c31af7Sopenharmony_ci vec3 c; 2260e5c31af7Sopenharmony_ci vec3 a; 2261e5c31af7Sopenharmony_ci int b; 2262e5c31af7Sopenharmony_ci vec3 c = a * b; 2263e5c31af7Sopenharmony_ci } 2264e5c31af7Sopenharmony_ci "" 2265e5c31af7Sopenharmony_ci end 2266e5c31af7Sopenharmony_ci case mul_vec3_int_int 2267e5c31af7Sopenharmony_ci expect compile_fail 2268e5c31af7Sopenharmony_ci version 300 es 2269e5c31af7Sopenharmony_ci 2270e5c31af7Sopenharmony_ci both "" 2271e5c31af7Sopenharmony_ci #version 300 es 2272e5c31af7Sopenharmony_ci precision mediump float; 2273e5c31af7Sopenharmony_ci precision mediump int; 2274e5c31af7Sopenharmony_ci 2275e5c31af7Sopenharmony_ci ${DECLARATIONS} 2276e5c31af7Sopenharmony_ci 2277e5c31af7Sopenharmony_ci void main() 2278e5c31af7Sopenharmony_ci { 2279e5c31af7Sopenharmony_ci int c; 2280e5c31af7Sopenharmony_ci vec3 a; 2281e5c31af7Sopenharmony_ci int b; 2282e5c31af7Sopenharmony_ci int c = a * b; 2283e5c31af7Sopenharmony_ci } 2284e5c31af7Sopenharmony_ci "" 2285e5c31af7Sopenharmony_ci end 2286e5c31af7Sopenharmony_ci case mul_vec3_ivec2_vec3 2287e5c31af7Sopenharmony_ci expect compile_fail 2288e5c31af7Sopenharmony_ci version 300 es 2289e5c31af7Sopenharmony_ci 2290e5c31af7Sopenharmony_ci both "" 2291e5c31af7Sopenharmony_ci #version 300 es 2292e5c31af7Sopenharmony_ci precision mediump float; 2293e5c31af7Sopenharmony_ci precision mediump int; 2294e5c31af7Sopenharmony_ci 2295e5c31af7Sopenharmony_ci ${DECLARATIONS} 2296e5c31af7Sopenharmony_ci 2297e5c31af7Sopenharmony_ci void main() 2298e5c31af7Sopenharmony_ci { 2299e5c31af7Sopenharmony_ci vec3 c; 2300e5c31af7Sopenharmony_ci vec3 a; 2301e5c31af7Sopenharmony_ci ivec2 b; 2302e5c31af7Sopenharmony_ci vec3 c = a * b; 2303e5c31af7Sopenharmony_ci } 2304e5c31af7Sopenharmony_ci "" 2305e5c31af7Sopenharmony_ci end 2306e5c31af7Sopenharmony_ci case mul_vec3_ivec2_ivec2 2307e5c31af7Sopenharmony_ci expect compile_fail 2308e5c31af7Sopenharmony_ci version 300 es 2309e5c31af7Sopenharmony_ci 2310e5c31af7Sopenharmony_ci both "" 2311e5c31af7Sopenharmony_ci #version 300 es 2312e5c31af7Sopenharmony_ci precision mediump float; 2313e5c31af7Sopenharmony_ci precision mediump int; 2314e5c31af7Sopenharmony_ci 2315e5c31af7Sopenharmony_ci ${DECLARATIONS} 2316e5c31af7Sopenharmony_ci 2317e5c31af7Sopenharmony_ci void main() 2318e5c31af7Sopenharmony_ci { 2319e5c31af7Sopenharmony_ci ivec2 c; 2320e5c31af7Sopenharmony_ci vec3 a; 2321e5c31af7Sopenharmony_ci ivec2 b; 2322e5c31af7Sopenharmony_ci ivec2 c = a * b; 2323e5c31af7Sopenharmony_ci } 2324e5c31af7Sopenharmony_ci "" 2325e5c31af7Sopenharmony_ci end 2326e5c31af7Sopenharmony_ci case mul_vec3_ivec3_vec3 2327e5c31af7Sopenharmony_ci expect compile_fail 2328e5c31af7Sopenharmony_ci version 300 es 2329e5c31af7Sopenharmony_ci 2330e5c31af7Sopenharmony_ci both "" 2331e5c31af7Sopenharmony_ci #version 300 es 2332e5c31af7Sopenharmony_ci precision mediump float; 2333e5c31af7Sopenharmony_ci precision mediump int; 2334e5c31af7Sopenharmony_ci 2335e5c31af7Sopenharmony_ci ${DECLARATIONS} 2336e5c31af7Sopenharmony_ci 2337e5c31af7Sopenharmony_ci void main() 2338e5c31af7Sopenharmony_ci { 2339e5c31af7Sopenharmony_ci vec3 c; 2340e5c31af7Sopenharmony_ci vec3 a; 2341e5c31af7Sopenharmony_ci ivec3 b; 2342e5c31af7Sopenharmony_ci vec3 c = a * b; 2343e5c31af7Sopenharmony_ci } 2344e5c31af7Sopenharmony_ci "" 2345e5c31af7Sopenharmony_ci end 2346e5c31af7Sopenharmony_ci case mul_vec3_ivec3_ivec3 2347e5c31af7Sopenharmony_ci expect compile_fail 2348e5c31af7Sopenharmony_ci version 300 es 2349e5c31af7Sopenharmony_ci 2350e5c31af7Sopenharmony_ci both "" 2351e5c31af7Sopenharmony_ci #version 300 es 2352e5c31af7Sopenharmony_ci precision mediump float; 2353e5c31af7Sopenharmony_ci precision mediump int; 2354e5c31af7Sopenharmony_ci 2355e5c31af7Sopenharmony_ci ${DECLARATIONS} 2356e5c31af7Sopenharmony_ci 2357e5c31af7Sopenharmony_ci void main() 2358e5c31af7Sopenharmony_ci { 2359e5c31af7Sopenharmony_ci ivec3 c; 2360e5c31af7Sopenharmony_ci vec3 a; 2361e5c31af7Sopenharmony_ci ivec3 b; 2362e5c31af7Sopenharmony_ci ivec3 c = a * b; 2363e5c31af7Sopenharmony_ci } 2364e5c31af7Sopenharmony_ci "" 2365e5c31af7Sopenharmony_ci end 2366e5c31af7Sopenharmony_ci case mul_vec3_ivec4_vec3 2367e5c31af7Sopenharmony_ci expect compile_fail 2368e5c31af7Sopenharmony_ci version 300 es 2369e5c31af7Sopenharmony_ci 2370e5c31af7Sopenharmony_ci both "" 2371e5c31af7Sopenharmony_ci #version 300 es 2372e5c31af7Sopenharmony_ci precision mediump float; 2373e5c31af7Sopenharmony_ci precision mediump int; 2374e5c31af7Sopenharmony_ci 2375e5c31af7Sopenharmony_ci ${DECLARATIONS} 2376e5c31af7Sopenharmony_ci 2377e5c31af7Sopenharmony_ci void main() 2378e5c31af7Sopenharmony_ci { 2379e5c31af7Sopenharmony_ci vec3 c; 2380e5c31af7Sopenharmony_ci vec3 a; 2381e5c31af7Sopenharmony_ci ivec4 b; 2382e5c31af7Sopenharmony_ci vec3 c = a * b; 2383e5c31af7Sopenharmony_ci } 2384e5c31af7Sopenharmony_ci "" 2385e5c31af7Sopenharmony_ci end 2386e5c31af7Sopenharmony_ci case mul_vec3_ivec4_ivec4 2387e5c31af7Sopenharmony_ci expect compile_fail 2388e5c31af7Sopenharmony_ci version 300 es 2389e5c31af7Sopenharmony_ci 2390e5c31af7Sopenharmony_ci both "" 2391e5c31af7Sopenharmony_ci #version 300 es 2392e5c31af7Sopenharmony_ci precision mediump float; 2393e5c31af7Sopenharmony_ci precision mediump int; 2394e5c31af7Sopenharmony_ci 2395e5c31af7Sopenharmony_ci ${DECLARATIONS} 2396e5c31af7Sopenharmony_ci 2397e5c31af7Sopenharmony_ci void main() 2398e5c31af7Sopenharmony_ci { 2399e5c31af7Sopenharmony_ci ivec4 c; 2400e5c31af7Sopenharmony_ci vec3 a; 2401e5c31af7Sopenharmony_ci ivec4 b; 2402e5c31af7Sopenharmony_ci ivec4 c = a * b; 2403e5c31af7Sopenharmony_ci } 2404e5c31af7Sopenharmony_ci "" 2405e5c31af7Sopenharmony_ci end 2406e5c31af7Sopenharmony_ci case mul_vec4_int_vec4 2407e5c31af7Sopenharmony_ci expect compile_fail 2408e5c31af7Sopenharmony_ci version 300 es 2409e5c31af7Sopenharmony_ci 2410e5c31af7Sopenharmony_ci both "" 2411e5c31af7Sopenharmony_ci #version 300 es 2412e5c31af7Sopenharmony_ci precision mediump float; 2413e5c31af7Sopenharmony_ci precision mediump int; 2414e5c31af7Sopenharmony_ci 2415e5c31af7Sopenharmony_ci ${DECLARATIONS} 2416e5c31af7Sopenharmony_ci 2417e5c31af7Sopenharmony_ci void main() 2418e5c31af7Sopenharmony_ci { 2419e5c31af7Sopenharmony_ci vec4 c; 2420e5c31af7Sopenharmony_ci vec4 a; 2421e5c31af7Sopenharmony_ci int b; 2422e5c31af7Sopenharmony_ci vec4 c = a * b; 2423e5c31af7Sopenharmony_ci } 2424e5c31af7Sopenharmony_ci "" 2425e5c31af7Sopenharmony_ci end 2426e5c31af7Sopenharmony_ci case mul_vec4_int_int 2427e5c31af7Sopenharmony_ci expect compile_fail 2428e5c31af7Sopenharmony_ci version 300 es 2429e5c31af7Sopenharmony_ci 2430e5c31af7Sopenharmony_ci both "" 2431e5c31af7Sopenharmony_ci #version 300 es 2432e5c31af7Sopenharmony_ci precision mediump float; 2433e5c31af7Sopenharmony_ci precision mediump int; 2434e5c31af7Sopenharmony_ci 2435e5c31af7Sopenharmony_ci ${DECLARATIONS} 2436e5c31af7Sopenharmony_ci 2437e5c31af7Sopenharmony_ci void main() 2438e5c31af7Sopenharmony_ci { 2439e5c31af7Sopenharmony_ci int c; 2440e5c31af7Sopenharmony_ci vec4 a; 2441e5c31af7Sopenharmony_ci int b; 2442e5c31af7Sopenharmony_ci int c = a * b; 2443e5c31af7Sopenharmony_ci } 2444e5c31af7Sopenharmony_ci "" 2445e5c31af7Sopenharmony_ci end 2446e5c31af7Sopenharmony_ci case mul_vec4_ivec2_vec4 2447e5c31af7Sopenharmony_ci expect compile_fail 2448e5c31af7Sopenharmony_ci version 300 es 2449e5c31af7Sopenharmony_ci 2450e5c31af7Sopenharmony_ci both "" 2451e5c31af7Sopenharmony_ci #version 300 es 2452e5c31af7Sopenharmony_ci precision mediump float; 2453e5c31af7Sopenharmony_ci precision mediump int; 2454e5c31af7Sopenharmony_ci 2455e5c31af7Sopenharmony_ci ${DECLARATIONS} 2456e5c31af7Sopenharmony_ci 2457e5c31af7Sopenharmony_ci void main() 2458e5c31af7Sopenharmony_ci { 2459e5c31af7Sopenharmony_ci vec4 c; 2460e5c31af7Sopenharmony_ci vec4 a; 2461e5c31af7Sopenharmony_ci ivec2 b; 2462e5c31af7Sopenharmony_ci vec4 c = a * b; 2463e5c31af7Sopenharmony_ci } 2464e5c31af7Sopenharmony_ci "" 2465e5c31af7Sopenharmony_ci end 2466e5c31af7Sopenharmony_ci case mul_vec4_ivec2_ivec2 2467e5c31af7Sopenharmony_ci expect compile_fail 2468e5c31af7Sopenharmony_ci version 300 es 2469e5c31af7Sopenharmony_ci 2470e5c31af7Sopenharmony_ci both "" 2471e5c31af7Sopenharmony_ci #version 300 es 2472e5c31af7Sopenharmony_ci precision mediump float; 2473e5c31af7Sopenharmony_ci precision mediump int; 2474e5c31af7Sopenharmony_ci 2475e5c31af7Sopenharmony_ci ${DECLARATIONS} 2476e5c31af7Sopenharmony_ci 2477e5c31af7Sopenharmony_ci void main() 2478e5c31af7Sopenharmony_ci { 2479e5c31af7Sopenharmony_ci ivec2 c; 2480e5c31af7Sopenharmony_ci vec4 a; 2481e5c31af7Sopenharmony_ci ivec2 b; 2482e5c31af7Sopenharmony_ci ivec2 c = a * b; 2483e5c31af7Sopenharmony_ci } 2484e5c31af7Sopenharmony_ci "" 2485e5c31af7Sopenharmony_ci end 2486e5c31af7Sopenharmony_ci case mul_vec4_ivec3_vec4 2487e5c31af7Sopenharmony_ci expect compile_fail 2488e5c31af7Sopenharmony_ci version 300 es 2489e5c31af7Sopenharmony_ci 2490e5c31af7Sopenharmony_ci both "" 2491e5c31af7Sopenharmony_ci #version 300 es 2492e5c31af7Sopenharmony_ci precision mediump float; 2493e5c31af7Sopenharmony_ci precision mediump int; 2494e5c31af7Sopenharmony_ci 2495e5c31af7Sopenharmony_ci ${DECLARATIONS} 2496e5c31af7Sopenharmony_ci 2497e5c31af7Sopenharmony_ci void main() 2498e5c31af7Sopenharmony_ci { 2499e5c31af7Sopenharmony_ci vec4 c; 2500e5c31af7Sopenharmony_ci vec4 a; 2501e5c31af7Sopenharmony_ci ivec3 b; 2502e5c31af7Sopenharmony_ci vec4 c = a * b; 2503e5c31af7Sopenharmony_ci } 2504e5c31af7Sopenharmony_ci "" 2505e5c31af7Sopenharmony_ci end 2506e5c31af7Sopenharmony_ci case mul_vec4_ivec3_ivec3 2507e5c31af7Sopenharmony_ci expect compile_fail 2508e5c31af7Sopenharmony_ci version 300 es 2509e5c31af7Sopenharmony_ci 2510e5c31af7Sopenharmony_ci both "" 2511e5c31af7Sopenharmony_ci #version 300 es 2512e5c31af7Sopenharmony_ci precision mediump float; 2513e5c31af7Sopenharmony_ci precision mediump int; 2514e5c31af7Sopenharmony_ci 2515e5c31af7Sopenharmony_ci ${DECLARATIONS} 2516e5c31af7Sopenharmony_ci 2517e5c31af7Sopenharmony_ci void main() 2518e5c31af7Sopenharmony_ci { 2519e5c31af7Sopenharmony_ci ivec3 c; 2520e5c31af7Sopenharmony_ci vec4 a; 2521e5c31af7Sopenharmony_ci ivec3 b; 2522e5c31af7Sopenharmony_ci ivec3 c = a * b; 2523e5c31af7Sopenharmony_ci } 2524e5c31af7Sopenharmony_ci "" 2525e5c31af7Sopenharmony_ci end 2526e5c31af7Sopenharmony_ci case mul_vec4_ivec4_vec4 2527e5c31af7Sopenharmony_ci expect compile_fail 2528e5c31af7Sopenharmony_ci version 300 es 2529e5c31af7Sopenharmony_ci 2530e5c31af7Sopenharmony_ci both "" 2531e5c31af7Sopenharmony_ci #version 300 es 2532e5c31af7Sopenharmony_ci precision mediump float; 2533e5c31af7Sopenharmony_ci precision mediump int; 2534e5c31af7Sopenharmony_ci 2535e5c31af7Sopenharmony_ci ${DECLARATIONS} 2536e5c31af7Sopenharmony_ci 2537e5c31af7Sopenharmony_ci void main() 2538e5c31af7Sopenharmony_ci { 2539e5c31af7Sopenharmony_ci vec4 c; 2540e5c31af7Sopenharmony_ci vec4 a; 2541e5c31af7Sopenharmony_ci ivec4 b; 2542e5c31af7Sopenharmony_ci vec4 c = a * b; 2543e5c31af7Sopenharmony_ci } 2544e5c31af7Sopenharmony_ci "" 2545e5c31af7Sopenharmony_ci end 2546e5c31af7Sopenharmony_ci case mul_vec4_ivec4_ivec4 2547e5c31af7Sopenharmony_ci expect compile_fail 2548e5c31af7Sopenharmony_ci version 300 es 2549e5c31af7Sopenharmony_ci 2550e5c31af7Sopenharmony_ci both "" 2551e5c31af7Sopenharmony_ci #version 300 es 2552e5c31af7Sopenharmony_ci precision mediump float; 2553e5c31af7Sopenharmony_ci precision mediump int; 2554e5c31af7Sopenharmony_ci 2555e5c31af7Sopenharmony_ci ${DECLARATIONS} 2556e5c31af7Sopenharmony_ci 2557e5c31af7Sopenharmony_ci void main() 2558e5c31af7Sopenharmony_ci { 2559e5c31af7Sopenharmony_ci ivec4 c; 2560e5c31af7Sopenharmony_ci vec4 a; 2561e5c31af7Sopenharmony_ci ivec4 b; 2562e5c31af7Sopenharmony_ci ivec4 c = a * b; 2563e5c31af7Sopenharmony_ci } 2564e5c31af7Sopenharmony_ci "" 2565e5c31af7Sopenharmony_ci end 2566e5c31af7Sopenharmony_ci case mul_float_uint_float 2567e5c31af7Sopenharmony_ci expect compile_fail 2568e5c31af7Sopenharmony_ci version 300 es 2569e5c31af7Sopenharmony_ci 2570e5c31af7Sopenharmony_ci both "" 2571e5c31af7Sopenharmony_ci #version 300 es 2572e5c31af7Sopenharmony_ci precision mediump float; 2573e5c31af7Sopenharmony_ci precision mediump int; 2574e5c31af7Sopenharmony_ci 2575e5c31af7Sopenharmony_ci ${DECLARATIONS} 2576e5c31af7Sopenharmony_ci 2577e5c31af7Sopenharmony_ci void main() 2578e5c31af7Sopenharmony_ci { 2579e5c31af7Sopenharmony_ci float c; 2580e5c31af7Sopenharmony_ci float a; 2581e5c31af7Sopenharmony_ci uint b; 2582e5c31af7Sopenharmony_ci float c = a * b; 2583e5c31af7Sopenharmony_ci } 2584e5c31af7Sopenharmony_ci "" 2585e5c31af7Sopenharmony_ci end 2586e5c31af7Sopenharmony_ci case mul_float_uint_uint 2587e5c31af7Sopenharmony_ci expect compile_fail 2588e5c31af7Sopenharmony_ci version 300 es 2589e5c31af7Sopenharmony_ci 2590e5c31af7Sopenharmony_ci both "" 2591e5c31af7Sopenharmony_ci #version 300 es 2592e5c31af7Sopenharmony_ci precision mediump float; 2593e5c31af7Sopenharmony_ci precision mediump int; 2594e5c31af7Sopenharmony_ci 2595e5c31af7Sopenharmony_ci ${DECLARATIONS} 2596e5c31af7Sopenharmony_ci 2597e5c31af7Sopenharmony_ci void main() 2598e5c31af7Sopenharmony_ci { 2599e5c31af7Sopenharmony_ci uint c; 2600e5c31af7Sopenharmony_ci float a; 2601e5c31af7Sopenharmony_ci uint b; 2602e5c31af7Sopenharmony_ci uint c = a * b; 2603e5c31af7Sopenharmony_ci } 2604e5c31af7Sopenharmony_ci "" 2605e5c31af7Sopenharmony_ci end 2606e5c31af7Sopenharmony_ci case mul_float_uvec2_float 2607e5c31af7Sopenharmony_ci expect compile_fail 2608e5c31af7Sopenharmony_ci version 300 es 2609e5c31af7Sopenharmony_ci 2610e5c31af7Sopenharmony_ci both "" 2611e5c31af7Sopenharmony_ci #version 300 es 2612e5c31af7Sopenharmony_ci precision mediump float; 2613e5c31af7Sopenharmony_ci precision mediump int; 2614e5c31af7Sopenharmony_ci 2615e5c31af7Sopenharmony_ci ${DECLARATIONS} 2616e5c31af7Sopenharmony_ci 2617e5c31af7Sopenharmony_ci void main() 2618e5c31af7Sopenharmony_ci { 2619e5c31af7Sopenharmony_ci float c; 2620e5c31af7Sopenharmony_ci float a; 2621e5c31af7Sopenharmony_ci uvec2 b; 2622e5c31af7Sopenharmony_ci float c = a * b; 2623e5c31af7Sopenharmony_ci } 2624e5c31af7Sopenharmony_ci "" 2625e5c31af7Sopenharmony_ci end 2626e5c31af7Sopenharmony_ci case mul_float_uvec2_uvec2 2627e5c31af7Sopenharmony_ci expect compile_fail 2628e5c31af7Sopenharmony_ci version 300 es 2629e5c31af7Sopenharmony_ci 2630e5c31af7Sopenharmony_ci both "" 2631e5c31af7Sopenharmony_ci #version 300 es 2632e5c31af7Sopenharmony_ci precision mediump float; 2633e5c31af7Sopenharmony_ci precision mediump int; 2634e5c31af7Sopenharmony_ci 2635e5c31af7Sopenharmony_ci ${DECLARATIONS} 2636e5c31af7Sopenharmony_ci 2637e5c31af7Sopenharmony_ci void main() 2638e5c31af7Sopenharmony_ci { 2639e5c31af7Sopenharmony_ci uvec2 c; 2640e5c31af7Sopenharmony_ci float a; 2641e5c31af7Sopenharmony_ci uvec2 b; 2642e5c31af7Sopenharmony_ci uvec2 c = a * b; 2643e5c31af7Sopenharmony_ci } 2644e5c31af7Sopenharmony_ci "" 2645e5c31af7Sopenharmony_ci end 2646e5c31af7Sopenharmony_ci case mul_float_uvec3_float 2647e5c31af7Sopenharmony_ci expect compile_fail 2648e5c31af7Sopenharmony_ci version 300 es 2649e5c31af7Sopenharmony_ci 2650e5c31af7Sopenharmony_ci both "" 2651e5c31af7Sopenharmony_ci #version 300 es 2652e5c31af7Sopenharmony_ci precision mediump float; 2653e5c31af7Sopenharmony_ci precision mediump int; 2654e5c31af7Sopenharmony_ci 2655e5c31af7Sopenharmony_ci ${DECLARATIONS} 2656e5c31af7Sopenharmony_ci 2657e5c31af7Sopenharmony_ci void main() 2658e5c31af7Sopenharmony_ci { 2659e5c31af7Sopenharmony_ci float c; 2660e5c31af7Sopenharmony_ci float a; 2661e5c31af7Sopenharmony_ci uvec3 b; 2662e5c31af7Sopenharmony_ci float c = a * b; 2663e5c31af7Sopenharmony_ci } 2664e5c31af7Sopenharmony_ci "" 2665e5c31af7Sopenharmony_ci end 2666e5c31af7Sopenharmony_ci case mul_float_uvec3_uvec3 2667e5c31af7Sopenharmony_ci expect compile_fail 2668e5c31af7Sopenharmony_ci version 300 es 2669e5c31af7Sopenharmony_ci 2670e5c31af7Sopenharmony_ci both "" 2671e5c31af7Sopenharmony_ci #version 300 es 2672e5c31af7Sopenharmony_ci precision mediump float; 2673e5c31af7Sopenharmony_ci precision mediump int; 2674e5c31af7Sopenharmony_ci 2675e5c31af7Sopenharmony_ci ${DECLARATIONS} 2676e5c31af7Sopenharmony_ci 2677e5c31af7Sopenharmony_ci void main() 2678e5c31af7Sopenharmony_ci { 2679e5c31af7Sopenharmony_ci uvec3 c; 2680e5c31af7Sopenharmony_ci float a; 2681e5c31af7Sopenharmony_ci uvec3 b; 2682e5c31af7Sopenharmony_ci uvec3 c = a * b; 2683e5c31af7Sopenharmony_ci } 2684e5c31af7Sopenharmony_ci "" 2685e5c31af7Sopenharmony_ci end 2686e5c31af7Sopenharmony_ci case mul_float_uvec4_float 2687e5c31af7Sopenharmony_ci expect compile_fail 2688e5c31af7Sopenharmony_ci version 300 es 2689e5c31af7Sopenharmony_ci 2690e5c31af7Sopenharmony_ci both "" 2691e5c31af7Sopenharmony_ci #version 300 es 2692e5c31af7Sopenharmony_ci precision mediump float; 2693e5c31af7Sopenharmony_ci precision mediump int; 2694e5c31af7Sopenharmony_ci 2695e5c31af7Sopenharmony_ci ${DECLARATIONS} 2696e5c31af7Sopenharmony_ci 2697e5c31af7Sopenharmony_ci void main() 2698e5c31af7Sopenharmony_ci { 2699e5c31af7Sopenharmony_ci float c; 2700e5c31af7Sopenharmony_ci float a; 2701e5c31af7Sopenharmony_ci uvec4 b; 2702e5c31af7Sopenharmony_ci float c = a * b; 2703e5c31af7Sopenharmony_ci } 2704e5c31af7Sopenharmony_ci "" 2705e5c31af7Sopenharmony_ci end 2706e5c31af7Sopenharmony_ci case mul_float_uvec4_uvec4 2707e5c31af7Sopenharmony_ci expect compile_fail 2708e5c31af7Sopenharmony_ci version 300 es 2709e5c31af7Sopenharmony_ci 2710e5c31af7Sopenharmony_ci both "" 2711e5c31af7Sopenharmony_ci #version 300 es 2712e5c31af7Sopenharmony_ci precision mediump float; 2713e5c31af7Sopenharmony_ci precision mediump int; 2714e5c31af7Sopenharmony_ci 2715e5c31af7Sopenharmony_ci ${DECLARATIONS} 2716e5c31af7Sopenharmony_ci 2717e5c31af7Sopenharmony_ci void main() 2718e5c31af7Sopenharmony_ci { 2719e5c31af7Sopenharmony_ci uvec4 c; 2720e5c31af7Sopenharmony_ci float a; 2721e5c31af7Sopenharmony_ci uvec4 b; 2722e5c31af7Sopenharmony_ci uvec4 c = a * b; 2723e5c31af7Sopenharmony_ci } 2724e5c31af7Sopenharmony_ci "" 2725e5c31af7Sopenharmony_ci end 2726e5c31af7Sopenharmony_ci case mul_vec2_uint_vec2 2727e5c31af7Sopenharmony_ci expect compile_fail 2728e5c31af7Sopenharmony_ci version 300 es 2729e5c31af7Sopenharmony_ci 2730e5c31af7Sopenharmony_ci both "" 2731e5c31af7Sopenharmony_ci #version 300 es 2732e5c31af7Sopenharmony_ci precision mediump float; 2733e5c31af7Sopenharmony_ci precision mediump int; 2734e5c31af7Sopenharmony_ci 2735e5c31af7Sopenharmony_ci ${DECLARATIONS} 2736e5c31af7Sopenharmony_ci 2737e5c31af7Sopenharmony_ci void main() 2738e5c31af7Sopenharmony_ci { 2739e5c31af7Sopenharmony_ci vec2 c; 2740e5c31af7Sopenharmony_ci vec2 a; 2741e5c31af7Sopenharmony_ci uint b; 2742e5c31af7Sopenharmony_ci vec2 c = a * b; 2743e5c31af7Sopenharmony_ci } 2744e5c31af7Sopenharmony_ci "" 2745e5c31af7Sopenharmony_ci end 2746e5c31af7Sopenharmony_ci case mul_vec2_uint_uint 2747e5c31af7Sopenharmony_ci expect compile_fail 2748e5c31af7Sopenharmony_ci version 300 es 2749e5c31af7Sopenharmony_ci 2750e5c31af7Sopenharmony_ci both "" 2751e5c31af7Sopenharmony_ci #version 300 es 2752e5c31af7Sopenharmony_ci precision mediump float; 2753e5c31af7Sopenharmony_ci precision mediump int; 2754e5c31af7Sopenharmony_ci 2755e5c31af7Sopenharmony_ci ${DECLARATIONS} 2756e5c31af7Sopenharmony_ci 2757e5c31af7Sopenharmony_ci void main() 2758e5c31af7Sopenharmony_ci { 2759e5c31af7Sopenharmony_ci uint c; 2760e5c31af7Sopenharmony_ci vec2 a; 2761e5c31af7Sopenharmony_ci uint b; 2762e5c31af7Sopenharmony_ci uint c = a * b; 2763e5c31af7Sopenharmony_ci } 2764e5c31af7Sopenharmony_ci "" 2765e5c31af7Sopenharmony_ci end 2766e5c31af7Sopenharmony_ci case mul_vec2_uvec2_vec2 2767e5c31af7Sopenharmony_ci expect compile_fail 2768e5c31af7Sopenharmony_ci version 300 es 2769e5c31af7Sopenharmony_ci 2770e5c31af7Sopenharmony_ci both "" 2771e5c31af7Sopenharmony_ci #version 300 es 2772e5c31af7Sopenharmony_ci precision mediump float; 2773e5c31af7Sopenharmony_ci precision mediump int; 2774e5c31af7Sopenharmony_ci 2775e5c31af7Sopenharmony_ci ${DECLARATIONS} 2776e5c31af7Sopenharmony_ci 2777e5c31af7Sopenharmony_ci void main() 2778e5c31af7Sopenharmony_ci { 2779e5c31af7Sopenharmony_ci vec2 c; 2780e5c31af7Sopenharmony_ci vec2 a; 2781e5c31af7Sopenharmony_ci uvec2 b; 2782e5c31af7Sopenharmony_ci vec2 c = a * b; 2783e5c31af7Sopenharmony_ci } 2784e5c31af7Sopenharmony_ci "" 2785e5c31af7Sopenharmony_ci end 2786e5c31af7Sopenharmony_ci case mul_vec2_uvec2_uvec2 2787e5c31af7Sopenharmony_ci expect compile_fail 2788e5c31af7Sopenharmony_ci version 300 es 2789e5c31af7Sopenharmony_ci 2790e5c31af7Sopenharmony_ci both "" 2791e5c31af7Sopenharmony_ci #version 300 es 2792e5c31af7Sopenharmony_ci precision mediump float; 2793e5c31af7Sopenharmony_ci precision mediump int; 2794e5c31af7Sopenharmony_ci 2795e5c31af7Sopenharmony_ci ${DECLARATIONS} 2796e5c31af7Sopenharmony_ci 2797e5c31af7Sopenharmony_ci void main() 2798e5c31af7Sopenharmony_ci { 2799e5c31af7Sopenharmony_ci uvec2 c; 2800e5c31af7Sopenharmony_ci vec2 a; 2801e5c31af7Sopenharmony_ci uvec2 b; 2802e5c31af7Sopenharmony_ci uvec2 c = a * b; 2803e5c31af7Sopenharmony_ci } 2804e5c31af7Sopenharmony_ci "" 2805e5c31af7Sopenharmony_ci end 2806e5c31af7Sopenharmony_ci case mul_vec2_uvec3_vec2 2807e5c31af7Sopenharmony_ci expect compile_fail 2808e5c31af7Sopenharmony_ci version 300 es 2809e5c31af7Sopenharmony_ci 2810e5c31af7Sopenharmony_ci both "" 2811e5c31af7Sopenharmony_ci #version 300 es 2812e5c31af7Sopenharmony_ci precision mediump float; 2813e5c31af7Sopenharmony_ci precision mediump int; 2814e5c31af7Sopenharmony_ci 2815e5c31af7Sopenharmony_ci ${DECLARATIONS} 2816e5c31af7Sopenharmony_ci 2817e5c31af7Sopenharmony_ci void main() 2818e5c31af7Sopenharmony_ci { 2819e5c31af7Sopenharmony_ci vec2 c; 2820e5c31af7Sopenharmony_ci vec2 a; 2821e5c31af7Sopenharmony_ci uvec3 b; 2822e5c31af7Sopenharmony_ci vec2 c = a * b; 2823e5c31af7Sopenharmony_ci } 2824e5c31af7Sopenharmony_ci "" 2825e5c31af7Sopenharmony_ci end 2826e5c31af7Sopenharmony_ci case mul_vec2_uvec3_uvec3 2827e5c31af7Sopenharmony_ci expect compile_fail 2828e5c31af7Sopenharmony_ci version 300 es 2829e5c31af7Sopenharmony_ci 2830e5c31af7Sopenharmony_ci both "" 2831e5c31af7Sopenharmony_ci #version 300 es 2832e5c31af7Sopenharmony_ci precision mediump float; 2833e5c31af7Sopenharmony_ci precision mediump int; 2834e5c31af7Sopenharmony_ci 2835e5c31af7Sopenharmony_ci ${DECLARATIONS} 2836e5c31af7Sopenharmony_ci 2837e5c31af7Sopenharmony_ci void main() 2838e5c31af7Sopenharmony_ci { 2839e5c31af7Sopenharmony_ci uvec3 c; 2840e5c31af7Sopenharmony_ci vec2 a; 2841e5c31af7Sopenharmony_ci uvec3 b; 2842e5c31af7Sopenharmony_ci uvec3 c = a * b; 2843e5c31af7Sopenharmony_ci } 2844e5c31af7Sopenharmony_ci "" 2845e5c31af7Sopenharmony_ci end 2846e5c31af7Sopenharmony_ci case mul_vec2_uvec4_vec2 2847e5c31af7Sopenharmony_ci expect compile_fail 2848e5c31af7Sopenharmony_ci version 300 es 2849e5c31af7Sopenharmony_ci 2850e5c31af7Sopenharmony_ci both "" 2851e5c31af7Sopenharmony_ci #version 300 es 2852e5c31af7Sopenharmony_ci precision mediump float; 2853e5c31af7Sopenharmony_ci precision mediump int; 2854e5c31af7Sopenharmony_ci 2855e5c31af7Sopenharmony_ci ${DECLARATIONS} 2856e5c31af7Sopenharmony_ci 2857e5c31af7Sopenharmony_ci void main() 2858e5c31af7Sopenharmony_ci { 2859e5c31af7Sopenharmony_ci vec2 c; 2860e5c31af7Sopenharmony_ci vec2 a; 2861e5c31af7Sopenharmony_ci uvec4 b; 2862e5c31af7Sopenharmony_ci vec2 c = a * b; 2863e5c31af7Sopenharmony_ci } 2864e5c31af7Sopenharmony_ci "" 2865e5c31af7Sopenharmony_ci end 2866e5c31af7Sopenharmony_ci case mul_vec2_uvec4_uvec4 2867e5c31af7Sopenharmony_ci expect compile_fail 2868e5c31af7Sopenharmony_ci version 300 es 2869e5c31af7Sopenharmony_ci 2870e5c31af7Sopenharmony_ci both "" 2871e5c31af7Sopenharmony_ci #version 300 es 2872e5c31af7Sopenharmony_ci precision mediump float; 2873e5c31af7Sopenharmony_ci precision mediump int; 2874e5c31af7Sopenharmony_ci 2875e5c31af7Sopenharmony_ci ${DECLARATIONS} 2876e5c31af7Sopenharmony_ci 2877e5c31af7Sopenharmony_ci void main() 2878e5c31af7Sopenharmony_ci { 2879e5c31af7Sopenharmony_ci uvec4 c; 2880e5c31af7Sopenharmony_ci vec2 a; 2881e5c31af7Sopenharmony_ci uvec4 b; 2882e5c31af7Sopenharmony_ci uvec4 c = a * b; 2883e5c31af7Sopenharmony_ci } 2884e5c31af7Sopenharmony_ci "" 2885e5c31af7Sopenharmony_ci end 2886e5c31af7Sopenharmony_ci case mul_vec3_uint_vec3 2887e5c31af7Sopenharmony_ci expect compile_fail 2888e5c31af7Sopenharmony_ci version 300 es 2889e5c31af7Sopenharmony_ci 2890e5c31af7Sopenharmony_ci both "" 2891e5c31af7Sopenharmony_ci #version 300 es 2892e5c31af7Sopenharmony_ci precision mediump float; 2893e5c31af7Sopenharmony_ci precision mediump int; 2894e5c31af7Sopenharmony_ci 2895e5c31af7Sopenharmony_ci ${DECLARATIONS} 2896e5c31af7Sopenharmony_ci 2897e5c31af7Sopenharmony_ci void main() 2898e5c31af7Sopenharmony_ci { 2899e5c31af7Sopenharmony_ci vec3 c; 2900e5c31af7Sopenharmony_ci vec3 a; 2901e5c31af7Sopenharmony_ci uint b; 2902e5c31af7Sopenharmony_ci vec3 c = a * b; 2903e5c31af7Sopenharmony_ci } 2904e5c31af7Sopenharmony_ci "" 2905e5c31af7Sopenharmony_ci end 2906e5c31af7Sopenharmony_ci case mul_vec3_uint_uint 2907e5c31af7Sopenharmony_ci expect compile_fail 2908e5c31af7Sopenharmony_ci version 300 es 2909e5c31af7Sopenharmony_ci 2910e5c31af7Sopenharmony_ci both "" 2911e5c31af7Sopenharmony_ci #version 300 es 2912e5c31af7Sopenharmony_ci precision mediump float; 2913e5c31af7Sopenharmony_ci precision mediump int; 2914e5c31af7Sopenharmony_ci 2915e5c31af7Sopenharmony_ci ${DECLARATIONS} 2916e5c31af7Sopenharmony_ci 2917e5c31af7Sopenharmony_ci void main() 2918e5c31af7Sopenharmony_ci { 2919e5c31af7Sopenharmony_ci uint c; 2920e5c31af7Sopenharmony_ci vec3 a; 2921e5c31af7Sopenharmony_ci uint b; 2922e5c31af7Sopenharmony_ci uint c = a * b; 2923e5c31af7Sopenharmony_ci } 2924e5c31af7Sopenharmony_ci "" 2925e5c31af7Sopenharmony_ci end 2926e5c31af7Sopenharmony_ci case mul_vec3_uvec2_vec3 2927e5c31af7Sopenharmony_ci expect compile_fail 2928e5c31af7Sopenharmony_ci version 300 es 2929e5c31af7Sopenharmony_ci 2930e5c31af7Sopenharmony_ci both "" 2931e5c31af7Sopenharmony_ci #version 300 es 2932e5c31af7Sopenharmony_ci precision mediump float; 2933e5c31af7Sopenharmony_ci precision mediump int; 2934e5c31af7Sopenharmony_ci 2935e5c31af7Sopenharmony_ci ${DECLARATIONS} 2936e5c31af7Sopenharmony_ci 2937e5c31af7Sopenharmony_ci void main() 2938e5c31af7Sopenharmony_ci { 2939e5c31af7Sopenharmony_ci vec3 c; 2940e5c31af7Sopenharmony_ci vec3 a; 2941e5c31af7Sopenharmony_ci uvec2 b; 2942e5c31af7Sopenharmony_ci vec3 c = a * b; 2943e5c31af7Sopenharmony_ci } 2944e5c31af7Sopenharmony_ci "" 2945e5c31af7Sopenharmony_ci end 2946e5c31af7Sopenharmony_ci case mul_vec3_uvec2_uvec2 2947e5c31af7Sopenharmony_ci expect compile_fail 2948e5c31af7Sopenharmony_ci version 300 es 2949e5c31af7Sopenharmony_ci 2950e5c31af7Sopenharmony_ci both "" 2951e5c31af7Sopenharmony_ci #version 300 es 2952e5c31af7Sopenharmony_ci precision mediump float; 2953e5c31af7Sopenharmony_ci precision mediump int; 2954e5c31af7Sopenharmony_ci 2955e5c31af7Sopenharmony_ci ${DECLARATIONS} 2956e5c31af7Sopenharmony_ci 2957e5c31af7Sopenharmony_ci void main() 2958e5c31af7Sopenharmony_ci { 2959e5c31af7Sopenharmony_ci uvec2 c; 2960e5c31af7Sopenharmony_ci vec3 a; 2961e5c31af7Sopenharmony_ci uvec2 b; 2962e5c31af7Sopenharmony_ci uvec2 c = a * b; 2963e5c31af7Sopenharmony_ci } 2964e5c31af7Sopenharmony_ci "" 2965e5c31af7Sopenharmony_ci end 2966e5c31af7Sopenharmony_ci case mul_vec3_uvec3_vec3 2967e5c31af7Sopenharmony_ci expect compile_fail 2968e5c31af7Sopenharmony_ci version 300 es 2969e5c31af7Sopenharmony_ci 2970e5c31af7Sopenharmony_ci both "" 2971e5c31af7Sopenharmony_ci #version 300 es 2972e5c31af7Sopenharmony_ci precision mediump float; 2973e5c31af7Sopenharmony_ci precision mediump int; 2974e5c31af7Sopenharmony_ci 2975e5c31af7Sopenharmony_ci ${DECLARATIONS} 2976e5c31af7Sopenharmony_ci 2977e5c31af7Sopenharmony_ci void main() 2978e5c31af7Sopenharmony_ci { 2979e5c31af7Sopenharmony_ci vec3 c; 2980e5c31af7Sopenharmony_ci vec3 a; 2981e5c31af7Sopenharmony_ci uvec3 b; 2982e5c31af7Sopenharmony_ci vec3 c = a * b; 2983e5c31af7Sopenharmony_ci } 2984e5c31af7Sopenharmony_ci "" 2985e5c31af7Sopenharmony_ci end 2986e5c31af7Sopenharmony_ci case mul_vec3_uvec3_uvec3 2987e5c31af7Sopenharmony_ci expect compile_fail 2988e5c31af7Sopenharmony_ci version 300 es 2989e5c31af7Sopenharmony_ci 2990e5c31af7Sopenharmony_ci both "" 2991e5c31af7Sopenharmony_ci #version 300 es 2992e5c31af7Sopenharmony_ci precision mediump float; 2993e5c31af7Sopenharmony_ci precision mediump int; 2994e5c31af7Sopenharmony_ci 2995e5c31af7Sopenharmony_ci ${DECLARATIONS} 2996e5c31af7Sopenharmony_ci 2997e5c31af7Sopenharmony_ci void main() 2998e5c31af7Sopenharmony_ci { 2999e5c31af7Sopenharmony_ci uvec3 c; 3000e5c31af7Sopenharmony_ci vec3 a; 3001e5c31af7Sopenharmony_ci uvec3 b; 3002e5c31af7Sopenharmony_ci uvec3 c = a * b; 3003e5c31af7Sopenharmony_ci } 3004e5c31af7Sopenharmony_ci "" 3005e5c31af7Sopenharmony_ci end 3006e5c31af7Sopenharmony_ci case mul_vec3_uvec4_vec3 3007e5c31af7Sopenharmony_ci expect compile_fail 3008e5c31af7Sopenharmony_ci version 300 es 3009e5c31af7Sopenharmony_ci 3010e5c31af7Sopenharmony_ci both "" 3011e5c31af7Sopenharmony_ci #version 300 es 3012e5c31af7Sopenharmony_ci precision mediump float; 3013e5c31af7Sopenharmony_ci precision mediump int; 3014e5c31af7Sopenharmony_ci 3015e5c31af7Sopenharmony_ci ${DECLARATIONS} 3016e5c31af7Sopenharmony_ci 3017e5c31af7Sopenharmony_ci void main() 3018e5c31af7Sopenharmony_ci { 3019e5c31af7Sopenharmony_ci vec3 c; 3020e5c31af7Sopenharmony_ci vec3 a; 3021e5c31af7Sopenharmony_ci uvec4 b; 3022e5c31af7Sopenharmony_ci vec3 c = a * b; 3023e5c31af7Sopenharmony_ci } 3024e5c31af7Sopenharmony_ci "" 3025e5c31af7Sopenharmony_ci end 3026e5c31af7Sopenharmony_ci case mul_vec3_uvec4_uvec4 3027e5c31af7Sopenharmony_ci expect compile_fail 3028e5c31af7Sopenharmony_ci version 300 es 3029e5c31af7Sopenharmony_ci 3030e5c31af7Sopenharmony_ci both "" 3031e5c31af7Sopenharmony_ci #version 300 es 3032e5c31af7Sopenharmony_ci precision mediump float; 3033e5c31af7Sopenharmony_ci precision mediump int; 3034e5c31af7Sopenharmony_ci 3035e5c31af7Sopenharmony_ci ${DECLARATIONS} 3036e5c31af7Sopenharmony_ci 3037e5c31af7Sopenharmony_ci void main() 3038e5c31af7Sopenharmony_ci { 3039e5c31af7Sopenharmony_ci uvec4 c; 3040e5c31af7Sopenharmony_ci vec3 a; 3041e5c31af7Sopenharmony_ci uvec4 b; 3042e5c31af7Sopenharmony_ci uvec4 c = a * b; 3043e5c31af7Sopenharmony_ci } 3044e5c31af7Sopenharmony_ci "" 3045e5c31af7Sopenharmony_ci end 3046e5c31af7Sopenharmony_ci case mul_vec4_uint_vec4 3047e5c31af7Sopenharmony_ci expect compile_fail 3048e5c31af7Sopenharmony_ci version 300 es 3049e5c31af7Sopenharmony_ci 3050e5c31af7Sopenharmony_ci both "" 3051e5c31af7Sopenharmony_ci #version 300 es 3052e5c31af7Sopenharmony_ci precision mediump float; 3053e5c31af7Sopenharmony_ci precision mediump int; 3054e5c31af7Sopenharmony_ci 3055e5c31af7Sopenharmony_ci ${DECLARATIONS} 3056e5c31af7Sopenharmony_ci 3057e5c31af7Sopenharmony_ci void main() 3058e5c31af7Sopenharmony_ci { 3059e5c31af7Sopenharmony_ci vec4 c; 3060e5c31af7Sopenharmony_ci vec4 a; 3061e5c31af7Sopenharmony_ci uint b; 3062e5c31af7Sopenharmony_ci vec4 c = a * b; 3063e5c31af7Sopenharmony_ci } 3064e5c31af7Sopenharmony_ci "" 3065e5c31af7Sopenharmony_ci end 3066e5c31af7Sopenharmony_ci case mul_vec4_uint_uint 3067e5c31af7Sopenharmony_ci expect compile_fail 3068e5c31af7Sopenharmony_ci version 300 es 3069e5c31af7Sopenharmony_ci 3070e5c31af7Sopenharmony_ci both "" 3071e5c31af7Sopenharmony_ci #version 300 es 3072e5c31af7Sopenharmony_ci precision mediump float; 3073e5c31af7Sopenharmony_ci precision mediump int; 3074e5c31af7Sopenharmony_ci 3075e5c31af7Sopenharmony_ci ${DECLARATIONS} 3076e5c31af7Sopenharmony_ci 3077e5c31af7Sopenharmony_ci void main() 3078e5c31af7Sopenharmony_ci { 3079e5c31af7Sopenharmony_ci uint c; 3080e5c31af7Sopenharmony_ci vec4 a; 3081e5c31af7Sopenharmony_ci uint b; 3082e5c31af7Sopenharmony_ci uint c = a * b; 3083e5c31af7Sopenharmony_ci } 3084e5c31af7Sopenharmony_ci "" 3085e5c31af7Sopenharmony_ci end 3086e5c31af7Sopenharmony_ci case mul_vec4_uvec2_vec4 3087e5c31af7Sopenharmony_ci expect compile_fail 3088e5c31af7Sopenharmony_ci version 300 es 3089e5c31af7Sopenharmony_ci 3090e5c31af7Sopenharmony_ci both "" 3091e5c31af7Sopenharmony_ci #version 300 es 3092e5c31af7Sopenharmony_ci precision mediump float; 3093e5c31af7Sopenharmony_ci precision mediump int; 3094e5c31af7Sopenharmony_ci 3095e5c31af7Sopenharmony_ci ${DECLARATIONS} 3096e5c31af7Sopenharmony_ci 3097e5c31af7Sopenharmony_ci void main() 3098e5c31af7Sopenharmony_ci { 3099e5c31af7Sopenharmony_ci vec4 c; 3100e5c31af7Sopenharmony_ci vec4 a; 3101e5c31af7Sopenharmony_ci uvec2 b; 3102e5c31af7Sopenharmony_ci vec4 c = a * b; 3103e5c31af7Sopenharmony_ci } 3104e5c31af7Sopenharmony_ci "" 3105e5c31af7Sopenharmony_ci end 3106e5c31af7Sopenharmony_ci case mul_vec4_uvec2_uvec2 3107e5c31af7Sopenharmony_ci expect compile_fail 3108e5c31af7Sopenharmony_ci version 300 es 3109e5c31af7Sopenharmony_ci 3110e5c31af7Sopenharmony_ci both "" 3111e5c31af7Sopenharmony_ci #version 300 es 3112e5c31af7Sopenharmony_ci precision mediump float; 3113e5c31af7Sopenharmony_ci precision mediump int; 3114e5c31af7Sopenharmony_ci 3115e5c31af7Sopenharmony_ci ${DECLARATIONS} 3116e5c31af7Sopenharmony_ci 3117e5c31af7Sopenharmony_ci void main() 3118e5c31af7Sopenharmony_ci { 3119e5c31af7Sopenharmony_ci uvec2 c; 3120e5c31af7Sopenharmony_ci vec4 a; 3121e5c31af7Sopenharmony_ci uvec2 b; 3122e5c31af7Sopenharmony_ci uvec2 c = a * b; 3123e5c31af7Sopenharmony_ci } 3124e5c31af7Sopenharmony_ci "" 3125e5c31af7Sopenharmony_ci end 3126e5c31af7Sopenharmony_ci case mul_vec4_uvec3_vec4 3127e5c31af7Sopenharmony_ci expect compile_fail 3128e5c31af7Sopenharmony_ci version 300 es 3129e5c31af7Sopenharmony_ci 3130e5c31af7Sopenharmony_ci both "" 3131e5c31af7Sopenharmony_ci #version 300 es 3132e5c31af7Sopenharmony_ci precision mediump float; 3133e5c31af7Sopenharmony_ci precision mediump int; 3134e5c31af7Sopenharmony_ci 3135e5c31af7Sopenharmony_ci ${DECLARATIONS} 3136e5c31af7Sopenharmony_ci 3137e5c31af7Sopenharmony_ci void main() 3138e5c31af7Sopenharmony_ci { 3139e5c31af7Sopenharmony_ci vec4 c; 3140e5c31af7Sopenharmony_ci vec4 a; 3141e5c31af7Sopenharmony_ci uvec3 b; 3142e5c31af7Sopenharmony_ci vec4 c = a * b; 3143e5c31af7Sopenharmony_ci } 3144e5c31af7Sopenharmony_ci "" 3145e5c31af7Sopenharmony_ci end 3146e5c31af7Sopenharmony_ci case mul_vec4_uvec3_uvec3 3147e5c31af7Sopenharmony_ci expect compile_fail 3148e5c31af7Sopenharmony_ci version 300 es 3149e5c31af7Sopenharmony_ci 3150e5c31af7Sopenharmony_ci both "" 3151e5c31af7Sopenharmony_ci #version 300 es 3152e5c31af7Sopenharmony_ci precision mediump float; 3153e5c31af7Sopenharmony_ci precision mediump int; 3154e5c31af7Sopenharmony_ci 3155e5c31af7Sopenharmony_ci ${DECLARATIONS} 3156e5c31af7Sopenharmony_ci 3157e5c31af7Sopenharmony_ci void main() 3158e5c31af7Sopenharmony_ci { 3159e5c31af7Sopenharmony_ci uvec3 c; 3160e5c31af7Sopenharmony_ci vec4 a; 3161e5c31af7Sopenharmony_ci uvec3 b; 3162e5c31af7Sopenharmony_ci uvec3 c = a * b; 3163e5c31af7Sopenharmony_ci } 3164e5c31af7Sopenharmony_ci "" 3165e5c31af7Sopenharmony_ci end 3166e5c31af7Sopenharmony_ci case mul_vec4_uvec4_vec4 3167e5c31af7Sopenharmony_ci expect compile_fail 3168e5c31af7Sopenharmony_ci version 300 es 3169e5c31af7Sopenharmony_ci 3170e5c31af7Sopenharmony_ci both "" 3171e5c31af7Sopenharmony_ci #version 300 es 3172e5c31af7Sopenharmony_ci precision mediump float; 3173e5c31af7Sopenharmony_ci precision mediump int; 3174e5c31af7Sopenharmony_ci 3175e5c31af7Sopenharmony_ci ${DECLARATIONS} 3176e5c31af7Sopenharmony_ci 3177e5c31af7Sopenharmony_ci void main() 3178e5c31af7Sopenharmony_ci { 3179e5c31af7Sopenharmony_ci vec4 c; 3180e5c31af7Sopenharmony_ci vec4 a; 3181e5c31af7Sopenharmony_ci uvec4 b; 3182e5c31af7Sopenharmony_ci vec4 c = a * b; 3183e5c31af7Sopenharmony_ci } 3184e5c31af7Sopenharmony_ci "" 3185e5c31af7Sopenharmony_ci end 3186e5c31af7Sopenharmony_ci case mul_vec4_uvec4_uvec4 3187e5c31af7Sopenharmony_ci expect compile_fail 3188e5c31af7Sopenharmony_ci version 300 es 3189e5c31af7Sopenharmony_ci 3190e5c31af7Sopenharmony_ci both "" 3191e5c31af7Sopenharmony_ci #version 300 es 3192e5c31af7Sopenharmony_ci precision mediump float; 3193e5c31af7Sopenharmony_ci precision mediump int; 3194e5c31af7Sopenharmony_ci 3195e5c31af7Sopenharmony_ci ${DECLARATIONS} 3196e5c31af7Sopenharmony_ci 3197e5c31af7Sopenharmony_ci void main() 3198e5c31af7Sopenharmony_ci { 3199e5c31af7Sopenharmony_ci uvec4 c; 3200e5c31af7Sopenharmony_ci vec4 a; 3201e5c31af7Sopenharmony_ci uvec4 b; 3202e5c31af7Sopenharmony_ci uvec4 c = a * b; 3203e5c31af7Sopenharmony_ci } 3204e5c31af7Sopenharmony_ci "" 3205e5c31af7Sopenharmony_ci end 3206e5c31af7Sopenharmony_ci case mul_int_uint_int 3207e5c31af7Sopenharmony_ci expect compile_fail 3208e5c31af7Sopenharmony_ci version 300 es 3209e5c31af7Sopenharmony_ci 3210e5c31af7Sopenharmony_ci both "" 3211e5c31af7Sopenharmony_ci #version 300 es 3212e5c31af7Sopenharmony_ci precision mediump float; 3213e5c31af7Sopenharmony_ci precision mediump int; 3214e5c31af7Sopenharmony_ci 3215e5c31af7Sopenharmony_ci ${DECLARATIONS} 3216e5c31af7Sopenharmony_ci 3217e5c31af7Sopenharmony_ci void main() 3218e5c31af7Sopenharmony_ci { 3219e5c31af7Sopenharmony_ci int c; 3220e5c31af7Sopenharmony_ci int a; 3221e5c31af7Sopenharmony_ci uint b; 3222e5c31af7Sopenharmony_ci int c = a * b; 3223e5c31af7Sopenharmony_ci } 3224e5c31af7Sopenharmony_ci "" 3225e5c31af7Sopenharmony_ci end 3226e5c31af7Sopenharmony_ci case mul_int_uint_uint 3227e5c31af7Sopenharmony_ci expect compile_fail 3228e5c31af7Sopenharmony_ci version 300 es 3229e5c31af7Sopenharmony_ci 3230e5c31af7Sopenharmony_ci both "" 3231e5c31af7Sopenharmony_ci #version 300 es 3232e5c31af7Sopenharmony_ci precision mediump float; 3233e5c31af7Sopenharmony_ci precision mediump int; 3234e5c31af7Sopenharmony_ci 3235e5c31af7Sopenharmony_ci ${DECLARATIONS} 3236e5c31af7Sopenharmony_ci 3237e5c31af7Sopenharmony_ci void main() 3238e5c31af7Sopenharmony_ci { 3239e5c31af7Sopenharmony_ci uint c; 3240e5c31af7Sopenharmony_ci int a; 3241e5c31af7Sopenharmony_ci uint b; 3242e5c31af7Sopenharmony_ci uint c = a * b; 3243e5c31af7Sopenharmony_ci } 3244e5c31af7Sopenharmony_ci "" 3245e5c31af7Sopenharmony_ci end 3246e5c31af7Sopenharmony_ci case mul_int_uvec2_int 3247e5c31af7Sopenharmony_ci expect compile_fail 3248e5c31af7Sopenharmony_ci version 300 es 3249e5c31af7Sopenharmony_ci 3250e5c31af7Sopenharmony_ci both "" 3251e5c31af7Sopenharmony_ci #version 300 es 3252e5c31af7Sopenharmony_ci precision mediump float; 3253e5c31af7Sopenharmony_ci precision mediump int; 3254e5c31af7Sopenharmony_ci 3255e5c31af7Sopenharmony_ci ${DECLARATIONS} 3256e5c31af7Sopenharmony_ci 3257e5c31af7Sopenharmony_ci void main() 3258e5c31af7Sopenharmony_ci { 3259e5c31af7Sopenharmony_ci int c; 3260e5c31af7Sopenharmony_ci int a; 3261e5c31af7Sopenharmony_ci uvec2 b; 3262e5c31af7Sopenharmony_ci int c = a * b; 3263e5c31af7Sopenharmony_ci } 3264e5c31af7Sopenharmony_ci "" 3265e5c31af7Sopenharmony_ci end 3266e5c31af7Sopenharmony_ci case mul_int_uvec2_uvec2 3267e5c31af7Sopenharmony_ci expect compile_fail 3268e5c31af7Sopenharmony_ci version 300 es 3269e5c31af7Sopenharmony_ci 3270e5c31af7Sopenharmony_ci both "" 3271e5c31af7Sopenharmony_ci #version 300 es 3272e5c31af7Sopenharmony_ci precision mediump float; 3273e5c31af7Sopenharmony_ci precision mediump int; 3274e5c31af7Sopenharmony_ci 3275e5c31af7Sopenharmony_ci ${DECLARATIONS} 3276e5c31af7Sopenharmony_ci 3277e5c31af7Sopenharmony_ci void main() 3278e5c31af7Sopenharmony_ci { 3279e5c31af7Sopenharmony_ci uvec2 c; 3280e5c31af7Sopenharmony_ci int a; 3281e5c31af7Sopenharmony_ci uvec2 b; 3282e5c31af7Sopenharmony_ci uvec2 c = a * b; 3283e5c31af7Sopenharmony_ci } 3284e5c31af7Sopenharmony_ci "" 3285e5c31af7Sopenharmony_ci end 3286e5c31af7Sopenharmony_ci case mul_int_uvec3_int 3287e5c31af7Sopenharmony_ci expect compile_fail 3288e5c31af7Sopenharmony_ci version 300 es 3289e5c31af7Sopenharmony_ci 3290e5c31af7Sopenharmony_ci both "" 3291e5c31af7Sopenharmony_ci #version 300 es 3292e5c31af7Sopenharmony_ci precision mediump float; 3293e5c31af7Sopenharmony_ci precision mediump int; 3294e5c31af7Sopenharmony_ci 3295e5c31af7Sopenharmony_ci ${DECLARATIONS} 3296e5c31af7Sopenharmony_ci 3297e5c31af7Sopenharmony_ci void main() 3298e5c31af7Sopenharmony_ci { 3299e5c31af7Sopenharmony_ci int c; 3300e5c31af7Sopenharmony_ci int a; 3301e5c31af7Sopenharmony_ci uvec3 b; 3302e5c31af7Sopenharmony_ci int c = a * b; 3303e5c31af7Sopenharmony_ci } 3304e5c31af7Sopenharmony_ci "" 3305e5c31af7Sopenharmony_ci end 3306e5c31af7Sopenharmony_ci case mul_int_uvec3_uvec3 3307e5c31af7Sopenharmony_ci expect compile_fail 3308e5c31af7Sopenharmony_ci version 300 es 3309e5c31af7Sopenharmony_ci 3310e5c31af7Sopenharmony_ci both "" 3311e5c31af7Sopenharmony_ci #version 300 es 3312e5c31af7Sopenharmony_ci precision mediump float; 3313e5c31af7Sopenharmony_ci precision mediump int; 3314e5c31af7Sopenharmony_ci 3315e5c31af7Sopenharmony_ci ${DECLARATIONS} 3316e5c31af7Sopenharmony_ci 3317e5c31af7Sopenharmony_ci void main() 3318e5c31af7Sopenharmony_ci { 3319e5c31af7Sopenharmony_ci uvec3 c; 3320e5c31af7Sopenharmony_ci int a; 3321e5c31af7Sopenharmony_ci uvec3 b; 3322e5c31af7Sopenharmony_ci uvec3 c = a * b; 3323e5c31af7Sopenharmony_ci } 3324e5c31af7Sopenharmony_ci "" 3325e5c31af7Sopenharmony_ci end 3326e5c31af7Sopenharmony_ci case mul_int_uvec4_int 3327e5c31af7Sopenharmony_ci expect compile_fail 3328e5c31af7Sopenharmony_ci version 300 es 3329e5c31af7Sopenharmony_ci 3330e5c31af7Sopenharmony_ci both "" 3331e5c31af7Sopenharmony_ci #version 300 es 3332e5c31af7Sopenharmony_ci precision mediump float; 3333e5c31af7Sopenharmony_ci precision mediump int; 3334e5c31af7Sopenharmony_ci 3335e5c31af7Sopenharmony_ci ${DECLARATIONS} 3336e5c31af7Sopenharmony_ci 3337e5c31af7Sopenharmony_ci void main() 3338e5c31af7Sopenharmony_ci { 3339e5c31af7Sopenharmony_ci int c; 3340e5c31af7Sopenharmony_ci int a; 3341e5c31af7Sopenharmony_ci uvec4 b; 3342e5c31af7Sopenharmony_ci int c = a * b; 3343e5c31af7Sopenharmony_ci } 3344e5c31af7Sopenharmony_ci "" 3345e5c31af7Sopenharmony_ci end 3346e5c31af7Sopenharmony_ci case mul_int_uvec4_uvec4 3347e5c31af7Sopenharmony_ci expect compile_fail 3348e5c31af7Sopenharmony_ci version 300 es 3349e5c31af7Sopenharmony_ci 3350e5c31af7Sopenharmony_ci both "" 3351e5c31af7Sopenharmony_ci #version 300 es 3352e5c31af7Sopenharmony_ci precision mediump float; 3353e5c31af7Sopenharmony_ci precision mediump int; 3354e5c31af7Sopenharmony_ci 3355e5c31af7Sopenharmony_ci ${DECLARATIONS} 3356e5c31af7Sopenharmony_ci 3357e5c31af7Sopenharmony_ci void main() 3358e5c31af7Sopenharmony_ci { 3359e5c31af7Sopenharmony_ci uvec4 c; 3360e5c31af7Sopenharmony_ci int a; 3361e5c31af7Sopenharmony_ci uvec4 b; 3362e5c31af7Sopenharmony_ci uvec4 c = a * b; 3363e5c31af7Sopenharmony_ci } 3364e5c31af7Sopenharmony_ci "" 3365e5c31af7Sopenharmony_ci end 3366e5c31af7Sopenharmony_ci case mul_ivec2_uint_ivec2 3367e5c31af7Sopenharmony_ci expect compile_fail 3368e5c31af7Sopenharmony_ci version 300 es 3369e5c31af7Sopenharmony_ci 3370e5c31af7Sopenharmony_ci both "" 3371e5c31af7Sopenharmony_ci #version 300 es 3372e5c31af7Sopenharmony_ci precision mediump float; 3373e5c31af7Sopenharmony_ci precision mediump int; 3374e5c31af7Sopenharmony_ci 3375e5c31af7Sopenharmony_ci ${DECLARATIONS} 3376e5c31af7Sopenharmony_ci 3377e5c31af7Sopenharmony_ci void main() 3378e5c31af7Sopenharmony_ci { 3379e5c31af7Sopenharmony_ci ivec2 c; 3380e5c31af7Sopenharmony_ci ivec2 a; 3381e5c31af7Sopenharmony_ci uint b; 3382e5c31af7Sopenharmony_ci ivec2 c = a * b; 3383e5c31af7Sopenharmony_ci } 3384e5c31af7Sopenharmony_ci "" 3385e5c31af7Sopenharmony_ci end 3386e5c31af7Sopenharmony_ci case mul_ivec2_uint_uint 3387e5c31af7Sopenharmony_ci expect compile_fail 3388e5c31af7Sopenharmony_ci version 300 es 3389e5c31af7Sopenharmony_ci 3390e5c31af7Sopenharmony_ci both "" 3391e5c31af7Sopenharmony_ci #version 300 es 3392e5c31af7Sopenharmony_ci precision mediump float; 3393e5c31af7Sopenharmony_ci precision mediump int; 3394e5c31af7Sopenharmony_ci 3395e5c31af7Sopenharmony_ci ${DECLARATIONS} 3396e5c31af7Sopenharmony_ci 3397e5c31af7Sopenharmony_ci void main() 3398e5c31af7Sopenharmony_ci { 3399e5c31af7Sopenharmony_ci uint c; 3400e5c31af7Sopenharmony_ci ivec2 a; 3401e5c31af7Sopenharmony_ci uint b; 3402e5c31af7Sopenharmony_ci uint c = a * b; 3403e5c31af7Sopenharmony_ci } 3404e5c31af7Sopenharmony_ci "" 3405e5c31af7Sopenharmony_ci end 3406e5c31af7Sopenharmony_ci case mul_ivec2_uvec2_ivec2 3407e5c31af7Sopenharmony_ci expect compile_fail 3408e5c31af7Sopenharmony_ci version 300 es 3409e5c31af7Sopenharmony_ci 3410e5c31af7Sopenharmony_ci both "" 3411e5c31af7Sopenharmony_ci #version 300 es 3412e5c31af7Sopenharmony_ci precision mediump float; 3413e5c31af7Sopenharmony_ci precision mediump int; 3414e5c31af7Sopenharmony_ci 3415e5c31af7Sopenharmony_ci ${DECLARATIONS} 3416e5c31af7Sopenharmony_ci 3417e5c31af7Sopenharmony_ci void main() 3418e5c31af7Sopenharmony_ci { 3419e5c31af7Sopenharmony_ci ivec2 c; 3420e5c31af7Sopenharmony_ci ivec2 a; 3421e5c31af7Sopenharmony_ci uvec2 b; 3422e5c31af7Sopenharmony_ci ivec2 c = a * b; 3423e5c31af7Sopenharmony_ci } 3424e5c31af7Sopenharmony_ci "" 3425e5c31af7Sopenharmony_ci end 3426e5c31af7Sopenharmony_ci case mul_ivec2_uvec2_uvec2 3427e5c31af7Sopenharmony_ci expect compile_fail 3428e5c31af7Sopenharmony_ci version 300 es 3429e5c31af7Sopenharmony_ci 3430e5c31af7Sopenharmony_ci both "" 3431e5c31af7Sopenharmony_ci #version 300 es 3432e5c31af7Sopenharmony_ci precision mediump float; 3433e5c31af7Sopenharmony_ci precision mediump int; 3434e5c31af7Sopenharmony_ci 3435e5c31af7Sopenharmony_ci ${DECLARATIONS} 3436e5c31af7Sopenharmony_ci 3437e5c31af7Sopenharmony_ci void main() 3438e5c31af7Sopenharmony_ci { 3439e5c31af7Sopenharmony_ci uvec2 c; 3440e5c31af7Sopenharmony_ci ivec2 a; 3441e5c31af7Sopenharmony_ci uvec2 b; 3442e5c31af7Sopenharmony_ci uvec2 c = a * b; 3443e5c31af7Sopenharmony_ci } 3444e5c31af7Sopenharmony_ci "" 3445e5c31af7Sopenharmony_ci end 3446e5c31af7Sopenharmony_ci case mul_ivec2_uvec3_ivec2 3447e5c31af7Sopenharmony_ci expect compile_fail 3448e5c31af7Sopenharmony_ci version 300 es 3449e5c31af7Sopenharmony_ci 3450e5c31af7Sopenharmony_ci both "" 3451e5c31af7Sopenharmony_ci #version 300 es 3452e5c31af7Sopenharmony_ci precision mediump float; 3453e5c31af7Sopenharmony_ci precision mediump int; 3454e5c31af7Sopenharmony_ci 3455e5c31af7Sopenharmony_ci ${DECLARATIONS} 3456e5c31af7Sopenharmony_ci 3457e5c31af7Sopenharmony_ci void main() 3458e5c31af7Sopenharmony_ci { 3459e5c31af7Sopenharmony_ci ivec2 c; 3460e5c31af7Sopenharmony_ci ivec2 a; 3461e5c31af7Sopenharmony_ci uvec3 b; 3462e5c31af7Sopenharmony_ci ivec2 c = a * b; 3463e5c31af7Sopenharmony_ci } 3464e5c31af7Sopenharmony_ci "" 3465e5c31af7Sopenharmony_ci end 3466e5c31af7Sopenharmony_ci case mul_ivec2_uvec3_uvec3 3467e5c31af7Sopenharmony_ci expect compile_fail 3468e5c31af7Sopenharmony_ci version 300 es 3469e5c31af7Sopenharmony_ci 3470e5c31af7Sopenharmony_ci both "" 3471e5c31af7Sopenharmony_ci #version 300 es 3472e5c31af7Sopenharmony_ci precision mediump float; 3473e5c31af7Sopenharmony_ci precision mediump int; 3474e5c31af7Sopenharmony_ci 3475e5c31af7Sopenharmony_ci ${DECLARATIONS} 3476e5c31af7Sopenharmony_ci 3477e5c31af7Sopenharmony_ci void main() 3478e5c31af7Sopenharmony_ci { 3479e5c31af7Sopenharmony_ci uvec3 c; 3480e5c31af7Sopenharmony_ci ivec2 a; 3481e5c31af7Sopenharmony_ci uvec3 b; 3482e5c31af7Sopenharmony_ci uvec3 c = a * b; 3483e5c31af7Sopenharmony_ci } 3484e5c31af7Sopenharmony_ci "" 3485e5c31af7Sopenharmony_ci end 3486e5c31af7Sopenharmony_ci case mul_ivec2_uvec4_ivec2 3487e5c31af7Sopenharmony_ci expect compile_fail 3488e5c31af7Sopenharmony_ci version 300 es 3489e5c31af7Sopenharmony_ci 3490e5c31af7Sopenharmony_ci both "" 3491e5c31af7Sopenharmony_ci #version 300 es 3492e5c31af7Sopenharmony_ci precision mediump float; 3493e5c31af7Sopenharmony_ci precision mediump int; 3494e5c31af7Sopenharmony_ci 3495e5c31af7Sopenharmony_ci ${DECLARATIONS} 3496e5c31af7Sopenharmony_ci 3497e5c31af7Sopenharmony_ci void main() 3498e5c31af7Sopenharmony_ci { 3499e5c31af7Sopenharmony_ci ivec2 c; 3500e5c31af7Sopenharmony_ci ivec2 a; 3501e5c31af7Sopenharmony_ci uvec4 b; 3502e5c31af7Sopenharmony_ci ivec2 c = a * b; 3503e5c31af7Sopenharmony_ci } 3504e5c31af7Sopenharmony_ci "" 3505e5c31af7Sopenharmony_ci end 3506e5c31af7Sopenharmony_ci case mul_ivec2_uvec4_uvec4 3507e5c31af7Sopenharmony_ci expect compile_fail 3508e5c31af7Sopenharmony_ci version 300 es 3509e5c31af7Sopenharmony_ci 3510e5c31af7Sopenharmony_ci both "" 3511e5c31af7Sopenharmony_ci #version 300 es 3512e5c31af7Sopenharmony_ci precision mediump float; 3513e5c31af7Sopenharmony_ci precision mediump int; 3514e5c31af7Sopenharmony_ci 3515e5c31af7Sopenharmony_ci ${DECLARATIONS} 3516e5c31af7Sopenharmony_ci 3517e5c31af7Sopenharmony_ci void main() 3518e5c31af7Sopenharmony_ci { 3519e5c31af7Sopenharmony_ci uvec4 c; 3520e5c31af7Sopenharmony_ci ivec2 a; 3521e5c31af7Sopenharmony_ci uvec4 b; 3522e5c31af7Sopenharmony_ci uvec4 c = a * b; 3523e5c31af7Sopenharmony_ci } 3524e5c31af7Sopenharmony_ci "" 3525e5c31af7Sopenharmony_ci end 3526e5c31af7Sopenharmony_ci case mul_ivec3_uint_ivec3 3527e5c31af7Sopenharmony_ci expect compile_fail 3528e5c31af7Sopenharmony_ci version 300 es 3529e5c31af7Sopenharmony_ci 3530e5c31af7Sopenharmony_ci both "" 3531e5c31af7Sopenharmony_ci #version 300 es 3532e5c31af7Sopenharmony_ci precision mediump float; 3533e5c31af7Sopenharmony_ci precision mediump int; 3534e5c31af7Sopenharmony_ci 3535e5c31af7Sopenharmony_ci ${DECLARATIONS} 3536e5c31af7Sopenharmony_ci 3537e5c31af7Sopenharmony_ci void main() 3538e5c31af7Sopenharmony_ci { 3539e5c31af7Sopenharmony_ci ivec3 c; 3540e5c31af7Sopenharmony_ci ivec3 a; 3541e5c31af7Sopenharmony_ci uint b; 3542e5c31af7Sopenharmony_ci ivec3 c = a * b; 3543e5c31af7Sopenharmony_ci } 3544e5c31af7Sopenharmony_ci "" 3545e5c31af7Sopenharmony_ci end 3546e5c31af7Sopenharmony_ci case mul_ivec3_uint_uint 3547e5c31af7Sopenharmony_ci expect compile_fail 3548e5c31af7Sopenharmony_ci version 300 es 3549e5c31af7Sopenharmony_ci 3550e5c31af7Sopenharmony_ci both "" 3551e5c31af7Sopenharmony_ci #version 300 es 3552e5c31af7Sopenharmony_ci precision mediump float; 3553e5c31af7Sopenharmony_ci precision mediump int; 3554e5c31af7Sopenharmony_ci 3555e5c31af7Sopenharmony_ci ${DECLARATIONS} 3556e5c31af7Sopenharmony_ci 3557e5c31af7Sopenharmony_ci void main() 3558e5c31af7Sopenharmony_ci { 3559e5c31af7Sopenharmony_ci uint c; 3560e5c31af7Sopenharmony_ci ivec3 a; 3561e5c31af7Sopenharmony_ci uint b; 3562e5c31af7Sopenharmony_ci uint c = a * b; 3563e5c31af7Sopenharmony_ci } 3564e5c31af7Sopenharmony_ci "" 3565e5c31af7Sopenharmony_ci end 3566e5c31af7Sopenharmony_ci case mul_ivec3_uvec2_ivec3 3567e5c31af7Sopenharmony_ci expect compile_fail 3568e5c31af7Sopenharmony_ci version 300 es 3569e5c31af7Sopenharmony_ci 3570e5c31af7Sopenharmony_ci both "" 3571e5c31af7Sopenharmony_ci #version 300 es 3572e5c31af7Sopenharmony_ci precision mediump float; 3573e5c31af7Sopenharmony_ci precision mediump int; 3574e5c31af7Sopenharmony_ci 3575e5c31af7Sopenharmony_ci ${DECLARATIONS} 3576e5c31af7Sopenharmony_ci 3577e5c31af7Sopenharmony_ci void main() 3578e5c31af7Sopenharmony_ci { 3579e5c31af7Sopenharmony_ci ivec3 c; 3580e5c31af7Sopenharmony_ci ivec3 a; 3581e5c31af7Sopenharmony_ci uvec2 b; 3582e5c31af7Sopenharmony_ci ivec3 c = a * b; 3583e5c31af7Sopenharmony_ci } 3584e5c31af7Sopenharmony_ci "" 3585e5c31af7Sopenharmony_ci end 3586e5c31af7Sopenharmony_ci case mul_ivec3_uvec2_uvec2 3587e5c31af7Sopenharmony_ci expect compile_fail 3588e5c31af7Sopenharmony_ci version 300 es 3589e5c31af7Sopenharmony_ci 3590e5c31af7Sopenharmony_ci both "" 3591e5c31af7Sopenharmony_ci #version 300 es 3592e5c31af7Sopenharmony_ci precision mediump float; 3593e5c31af7Sopenharmony_ci precision mediump int; 3594e5c31af7Sopenharmony_ci 3595e5c31af7Sopenharmony_ci ${DECLARATIONS} 3596e5c31af7Sopenharmony_ci 3597e5c31af7Sopenharmony_ci void main() 3598e5c31af7Sopenharmony_ci { 3599e5c31af7Sopenharmony_ci uvec2 c; 3600e5c31af7Sopenharmony_ci ivec3 a; 3601e5c31af7Sopenharmony_ci uvec2 b; 3602e5c31af7Sopenharmony_ci uvec2 c = a * b; 3603e5c31af7Sopenharmony_ci } 3604e5c31af7Sopenharmony_ci "" 3605e5c31af7Sopenharmony_ci end 3606e5c31af7Sopenharmony_ci case mul_ivec3_uvec3_ivec3 3607e5c31af7Sopenharmony_ci expect compile_fail 3608e5c31af7Sopenharmony_ci version 300 es 3609e5c31af7Sopenharmony_ci 3610e5c31af7Sopenharmony_ci both "" 3611e5c31af7Sopenharmony_ci #version 300 es 3612e5c31af7Sopenharmony_ci precision mediump float; 3613e5c31af7Sopenharmony_ci precision mediump int; 3614e5c31af7Sopenharmony_ci 3615e5c31af7Sopenharmony_ci ${DECLARATIONS} 3616e5c31af7Sopenharmony_ci 3617e5c31af7Sopenharmony_ci void main() 3618e5c31af7Sopenharmony_ci { 3619e5c31af7Sopenharmony_ci ivec3 c; 3620e5c31af7Sopenharmony_ci ivec3 a; 3621e5c31af7Sopenharmony_ci uvec3 b; 3622e5c31af7Sopenharmony_ci ivec3 c = a * b; 3623e5c31af7Sopenharmony_ci } 3624e5c31af7Sopenharmony_ci "" 3625e5c31af7Sopenharmony_ci end 3626e5c31af7Sopenharmony_ci case mul_ivec3_uvec3_uvec3 3627e5c31af7Sopenharmony_ci expect compile_fail 3628e5c31af7Sopenharmony_ci version 300 es 3629e5c31af7Sopenharmony_ci 3630e5c31af7Sopenharmony_ci both "" 3631e5c31af7Sopenharmony_ci #version 300 es 3632e5c31af7Sopenharmony_ci precision mediump float; 3633e5c31af7Sopenharmony_ci precision mediump int; 3634e5c31af7Sopenharmony_ci 3635e5c31af7Sopenharmony_ci ${DECLARATIONS} 3636e5c31af7Sopenharmony_ci 3637e5c31af7Sopenharmony_ci void main() 3638e5c31af7Sopenharmony_ci { 3639e5c31af7Sopenharmony_ci uvec3 c; 3640e5c31af7Sopenharmony_ci ivec3 a; 3641e5c31af7Sopenharmony_ci uvec3 b; 3642e5c31af7Sopenharmony_ci uvec3 c = a * b; 3643e5c31af7Sopenharmony_ci } 3644e5c31af7Sopenharmony_ci "" 3645e5c31af7Sopenharmony_ci end 3646e5c31af7Sopenharmony_ci case mul_ivec3_uvec4_ivec3 3647e5c31af7Sopenharmony_ci expect compile_fail 3648e5c31af7Sopenharmony_ci version 300 es 3649e5c31af7Sopenharmony_ci 3650e5c31af7Sopenharmony_ci both "" 3651e5c31af7Sopenharmony_ci #version 300 es 3652e5c31af7Sopenharmony_ci precision mediump float; 3653e5c31af7Sopenharmony_ci precision mediump int; 3654e5c31af7Sopenharmony_ci 3655e5c31af7Sopenharmony_ci ${DECLARATIONS} 3656e5c31af7Sopenharmony_ci 3657e5c31af7Sopenharmony_ci void main() 3658e5c31af7Sopenharmony_ci { 3659e5c31af7Sopenharmony_ci ivec3 c; 3660e5c31af7Sopenharmony_ci ivec3 a; 3661e5c31af7Sopenharmony_ci uvec4 b; 3662e5c31af7Sopenharmony_ci ivec3 c = a * b; 3663e5c31af7Sopenharmony_ci } 3664e5c31af7Sopenharmony_ci "" 3665e5c31af7Sopenharmony_ci end 3666e5c31af7Sopenharmony_ci case mul_ivec3_uvec4_uvec4 3667e5c31af7Sopenharmony_ci expect compile_fail 3668e5c31af7Sopenharmony_ci version 300 es 3669e5c31af7Sopenharmony_ci 3670e5c31af7Sopenharmony_ci both "" 3671e5c31af7Sopenharmony_ci #version 300 es 3672e5c31af7Sopenharmony_ci precision mediump float; 3673e5c31af7Sopenharmony_ci precision mediump int; 3674e5c31af7Sopenharmony_ci 3675e5c31af7Sopenharmony_ci ${DECLARATIONS} 3676e5c31af7Sopenharmony_ci 3677e5c31af7Sopenharmony_ci void main() 3678e5c31af7Sopenharmony_ci { 3679e5c31af7Sopenharmony_ci uvec4 c; 3680e5c31af7Sopenharmony_ci ivec3 a; 3681e5c31af7Sopenharmony_ci uvec4 b; 3682e5c31af7Sopenharmony_ci uvec4 c = a * b; 3683e5c31af7Sopenharmony_ci } 3684e5c31af7Sopenharmony_ci "" 3685e5c31af7Sopenharmony_ci end 3686e5c31af7Sopenharmony_ci case mul_ivec4_uint_ivec4 3687e5c31af7Sopenharmony_ci expect compile_fail 3688e5c31af7Sopenharmony_ci version 300 es 3689e5c31af7Sopenharmony_ci 3690e5c31af7Sopenharmony_ci both "" 3691e5c31af7Sopenharmony_ci #version 300 es 3692e5c31af7Sopenharmony_ci precision mediump float; 3693e5c31af7Sopenharmony_ci precision mediump int; 3694e5c31af7Sopenharmony_ci 3695e5c31af7Sopenharmony_ci ${DECLARATIONS} 3696e5c31af7Sopenharmony_ci 3697e5c31af7Sopenharmony_ci void main() 3698e5c31af7Sopenharmony_ci { 3699e5c31af7Sopenharmony_ci ivec4 c; 3700e5c31af7Sopenharmony_ci ivec4 a; 3701e5c31af7Sopenharmony_ci uint b; 3702e5c31af7Sopenharmony_ci ivec4 c = a * b; 3703e5c31af7Sopenharmony_ci } 3704e5c31af7Sopenharmony_ci "" 3705e5c31af7Sopenharmony_ci end 3706e5c31af7Sopenharmony_ci case mul_ivec4_uint_uint 3707e5c31af7Sopenharmony_ci expect compile_fail 3708e5c31af7Sopenharmony_ci version 300 es 3709e5c31af7Sopenharmony_ci 3710e5c31af7Sopenharmony_ci both "" 3711e5c31af7Sopenharmony_ci #version 300 es 3712e5c31af7Sopenharmony_ci precision mediump float; 3713e5c31af7Sopenharmony_ci precision mediump int; 3714e5c31af7Sopenharmony_ci 3715e5c31af7Sopenharmony_ci ${DECLARATIONS} 3716e5c31af7Sopenharmony_ci 3717e5c31af7Sopenharmony_ci void main() 3718e5c31af7Sopenharmony_ci { 3719e5c31af7Sopenharmony_ci uint c; 3720e5c31af7Sopenharmony_ci ivec4 a; 3721e5c31af7Sopenharmony_ci uint b; 3722e5c31af7Sopenharmony_ci uint c = a * b; 3723e5c31af7Sopenharmony_ci } 3724e5c31af7Sopenharmony_ci "" 3725e5c31af7Sopenharmony_ci end 3726e5c31af7Sopenharmony_ci case mul_ivec4_uvec2_ivec4 3727e5c31af7Sopenharmony_ci expect compile_fail 3728e5c31af7Sopenharmony_ci version 300 es 3729e5c31af7Sopenharmony_ci 3730e5c31af7Sopenharmony_ci both "" 3731e5c31af7Sopenharmony_ci #version 300 es 3732e5c31af7Sopenharmony_ci precision mediump float; 3733e5c31af7Sopenharmony_ci precision mediump int; 3734e5c31af7Sopenharmony_ci 3735e5c31af7Sopenharmony_ci ${DECLARATIONS} 3736e5c31af7Sopenharmony_ci 3737e5c31af7Sopenharmony_ci void main() 3738e5c31af7Sopenharmony_ci { 3739e5c31af7Sopenharmony_ci ivec4 c; 3740e5c31af7Sopenharmony_ci ivec4 a; 3741e5c31af7Sopenharmony_ci uvec2 b; 3742e5c31af7Sopenharmony_ci ivec4 c = a * b; 3743e5c31af7Sopenharmony_ci } 3744e5c31af7Sopenharmony_ci "" 3745e5c31af7Sopenharmony_ci end 3746e5c31af7Sopenharmony_ci case mul_ivec4_uvec2_uvec2 3747e5c31af7Sopenharmony_ci expect compile_fail 3748e5c31af7Sopenharmony_ci version 300 es 3749e5c31af7Sopenharmony_ci 3750e5c31af7Sopenharmony_ci both "" 3751e5c31af7Sopenharmony_ci #version 300 es 3752e5c31af7Sopenharmony_ci precision mediump float; 3753e5c31af7Sopenharmony_ci precision mediump int; 3754e5c31af7Sopenharmony_ci 3755e5c31af7Sopenharmony_ci ${DECLARATIONS} 3756e5c31af7Sopenharmony_ci 3757e5c31af7Sopenharmony_ci void main() 3758e5c31af7Sopenharmony_ci { 3759e5c31af7Sopenharmony_ci uvec2 c; 3760e5c31af7Sopenharmony_ci ivec4 a; 3761e5c31af7Sopenharmony_ci uvec2 b; 3762e5c31af7Sopenharmony_ci uvec2 c = a * b; 3763e5c31af7Sopenharmony_ci } 3764e5c31af7Sopenharmony_ci "" 3765e5c31af7Sopenharmony_ci end 3766e5c31af7Sopenharmony_ci case mul_ivec4_uvec3_ivec4 3767e5c31af7Sopenharmony_ci expect compile_fail 3768e5c31af7Sopenharmony_ci version 300 es 3769e5c31af7Sopenharmony_ci 3770e5c31af7Sopenharmony_ci both "" 3771e5c31af7Sopenharmony_ci #version 300 es 3772e5c31af7Sopenharmony_ci precision mediump float; 3773e5c31af7Sopenharmony_ci precision mediump int; 3774e5c31af7Sopenharmony_ci 3775e5c31af7Sopenharmony_ci ${DECLARATIONS} 3776e5c31af7Sopenharmony_ci 3777e5c31af7Sopenharmony_ci void main() 3778e5c31af7Sopenharmony_ci { 3779e5c31af7Sopenharmony_ci ivec4 c; 3780e5c31af7Sopenharmony_ci ivec4 a; 3781e5c31af7Sopenharmony_ci uvec3 b; 3782e5c31af7Sopenharmony_ci ivec4 c = a * b; 3783e5c31af7Sopenharmony_ci } 3784e5c31af7Sopenharmony_ci "" 3785e5c31af7Sopenharmony_ci end 3786e5c31af7Sopenharmony_ci case mul_ivec4_uvec3_uvec3 3787e5c31af7Sopenharmony_ci expect compile_fail 3788e5c31af7Sopenharmony_ci version 300 es 3789e5c31af7Sopenharmony_ci 3790e5c31af7Sopenharmony_ci both "" 3791e5c31af7Sopenharmony_ci #version 300 es 3792e5c31af7Sopenharmony_ci precision mediump float; 3793e5c31af7Sopenharmony_ci precision mediump int; 3794e5c31af7Sopenharmony_ci 3795e5c31af7Sopenharmony_ci ${DECLARATIONS} 3796e5c31af7Sopenharmony_ci 3797e5c31af7Sopenharmony_ci void main() 3798e5c31af7Sopenharmony_ci { 3799e5c31af7Sopenharmony_ci uvec3 c; 3800e5c31af7Sopenharmony_ci ivec4 a; 3801e5c31af7Sopenharmony_ci uvec3 b; 3802e5c31af7Sopenharmony_ci uvec3 c = a * b; 3803e5c31af7Sopenharmony_ci } 3804e5c31af7Sopenharmony_ci "" 3805e5c31af7Sopenharmony_ci end 3806e5c31af7Sopenharmony_ci case mul_ivec4_uvec4_ivec4 3807e5c31af7Sopenharmony_ci expect compile_fail 3808e5c31af7Sopenharmony_ci version 300 es 3809e5c31af7Sopenharmony_ci 3810e5c31af7Sopenharmony_ci both "" 3811e5c31af7Sopenharmony_ci #version 300 es 3812e5c31af7Sopenharmony_ci precision mediump float; 3813e5c31af7Sopenharmony_ci precision mediump int; 3814e5c31af7Sopenharmony_ci 3815e5c31af7Sopenharmony_ci ${DECLARATIONS} 3816e5c31af7Sopenharmony_ci 3817e5c31af7Sopenharmony_ci void main() 3818e5c31af7Sopenharmony_ci { 3819e5c31af7Sopenharmony_ci ivec4 c; 3820e5c31af7Sopenharmony_ci ivec4 a; 3821e5c31af7Sopenharmony_ci uvec4 b; 3822e5c31af7Sopenharmony_ci ivec4 c = a * b; 3823e5c31af7Sopenharmony_ci } 3824e5c31af7Sopenharmony_ci "" 3825e5c31af7Sopenharmony_ci end 3826e5c31af7Sopenharmony_ci case mul_ivec4_uvec4_uvec4 3827e5c31af7Sopenharmony_ci expect compile_fail 3828e5c31af7Sopenharmony_ci version 300 es 3829e5c31af7Sopenharmony_ci 3830e5c31af7Sopenharmony_ci both "" 3831e5c31af7Sopenharmony_ci #version 300 es 3832e5c31af7Sopenharmony_ci precision mediump float; 3833e5c31af7Sopenharmony_ci precision mediump int; 3834e5c31af7Sopenharmony_ci 3835e5c31af7Sopenharmony_ci ${DECLARATIONS} 3836e5c31af7Sopenharmony_ci 3837e5c31af7Sopenharmony_ci void main() 3838e5c31af7Sopenharmony_ci { 3839e5c31af7Sopenharmony_ci uvec4 c; 3840e5c31af7Sopenharmony_ci ivec4 a; 3841e5c31af7Sopenharmony_ci uvec4 b; 3842e5c31af7Sopenharmony_ci uvec4 c = a * b; 3843e5c31af7Sopenharmony_ci } 3844e5c31af7Sopenharmony_ci "" 3845e5c31af7Sopenharmony_ci end 3846e5c31af7Sopenharmony_ci case sub_float_int_float 3847e5c31af7Sopenharmony_ci expect compile_fail 3848e5c31af7Sopenharmony_ci version 300 es 3849e5c31af7Sopenharmony_ci 3850e5c31af7Sopenharmony_ci both "" 3851e5c31af7Sopenharmony_ci #version 300 es 3852e5c31af7Sopenharmony_ci precision mediump float; 3853e5c31af7Sopenharmony_ci precision mediump int; 3854e5c31af7Sopenharmony_ci 3855e5c31af7Sopenharmony_ci ${DECLARATIONS} 3856e5c31af7Sopenharmony_ci 3857e5c31af7Sopenharmony_ci void main() 3858e5c31af7Sopenharmony_ci { 3859e5c31af7Sopenharmony_ci float c; 3860e5c31af7Sopenharmony_ci float a; 3861e5c31af7Sopenharmony_ci int b; 3862e5c31af7Sopenharmony_ci float c = a - b; 3863e5c31af7Sopenharmony_ci } 3864e5c31af7Sopenharmony_ci "" 3865e5c31af7Sopenharmony_ci end 3866e5c31af7Sopenharmony_ci case sub_float_int_int 3867e5c31af7Sopenharmony_ci expect compile_fail 3868e5c31af7Sopenharmony_ci version 300 es 3869e5c31af7Sopenharmony_ci 3870e5c31af7Sopenharmony_ci both "" 3871e5c31af7Sopenharmony_ci #version 300 es 3872e5c31af7Sopenharmony_ci precision mediump float; 3873e5c31af7Sopenharmony_ci precision mediump int; 3874e5c31af7Sopenharmony_ci 3875e5c31af7Sopenharmony_ci ${DECLARATIONS} 3876e5c31af7Sopenharmony_ci 3877e5c31af7Sopenharmony_ci void main() 3878e5c31af7Sopenharmony_ci { 3879e5c31af7Sopenharmony_ci int c; 3880e5c31af7Sopenharmony_ci float a; 3881e5c31af7Sopenharmony_ci int b; 3882e5c31af7Sopenharmony_ci int c = a - b; 3883e5c31af7Sopenharmony_ci } 3884e5c31af7Sopenharmony_ci "" 3885e5c31af7Sopenharmony_ci end 3886e5c31af7Sopenharmony_ci case sub_float_ivec2_float 3887e5c31af7Sopenharmony_ci expect compile_fail 3888e5c31af7Sopenharmony_ci version 300 es 3889e5c31af7Sopenharmony_ci 3890e5c31af7Sopenharmony_ci both "" 3891e5c31af7Sopenharmony_ci #version 300 es 3892e5c31af7Sopenharmony_ci precision mediump float; 3893e5c31af7Sopenharmony_ci precision mediump int; 3894e5c31af7Sopenharmony_ci 3895e5c31af7Sopenharmony_ci ${DECLARATIONS} 3896e5c31af7Sopenharmony_ci 3897e5c31af7Sopenharmony_ci void main() 3898e5c31af7Sopenharmony_ci { 3899e5c31af7Sopenharmony_ci float c; 3900e5c31af7Sopenharmony_ci float a; 3901e5c31af7Sopenharmony_ci ivec2 b; 3902e5c31af7Sopenharmony_ci float c = a - b; 3903e5c31af7Sopenharmony_ci } 3904e5c31af7Sopenharmony_ci "" 3905e5c31af7Sopenharmony_ci end 3906e5c31af7Sopenharmony_ci case sub_float_ivec2_ivec2 3907e5c31af7Sopenharmony_ci expect compile_fail 3908e5c31af7Sopenharmony_ci version 300 es 3909e5c31af7Sopenharmony_ci 3910e5c31af7Sopenharmony_ci both "" 3911e5c31af7Sopenharmony_ci #version 300 es 3912e5c31af7Sopenharmony_ci precision mediump float; 3913e5c31af7Sopenharmony_ci precision mediump int; 3914e5c31af7Sopenharmony_ci 3915e5c31af7Sopenharmony_ci ${DECLARATIONS} 3916e5c31af7Sopenharmony_ci 3917e5c31af7Sopenharmony_ci void main() 3918e5c31af7Sopenharmony_ci { 3919e5c31af7Sopenharmony_ci ivec2 c; 3920e5c31af7Sopenharmony_ci float a; 3921e5c31af7Sopenharmony_ci ivec2 b; 3922e5c31af7Sopenharmony_ci ivec2 c = a - b; 3923e5c31af7Sopenharmony_ci } 3924e5c31af7Sopenharmony_ci "" 3925e5c31af7Sopenharmony_ci end 3926e5c31af7Sopenharmony_ci case sub_float_ivec3_float 3927e5c31af7Sopenharmony_ci expect compile_fail 3928e5c31af7Sopenharmony_ci version 300 es 3929e5c31af7Sopenharmony_ci 3930e5c31af7Sopenharmony_ci both "" 3931e5c31af7Sopenharmony_ci #version 300 es 3932e5c31af7Sopenharmony_ci precision mediump float; 3933e5c31af7Sopenharmony_ci precision mediump int; 3934e5c31af7Sopenharmony_ci 3935e5c31af7Sopenharmony_ci ${DECLARATIONS} 3936e5c31af7Sopenharmony_ci 3937e5c31af7Sopenharmony_ci void main() 3938e5c31af7Sopenharmony_ci { 3939e5c31af7Sopenharmony_ci float c; 3940e5c31af7Sopenharmony_ci float a; 3941e5c31af7Sopenharmony_ci ivec3 b; 3942e5c31af7Sopenharmony_ci float c = a - b; 3943e5c31af7Sopenharmony_ci } 3944e5c31af7Sopenharmony_ci "" 3945e5c31af7Sopenharmony_ci end 3946e5c31af7Sopenharmony_ci case sub_float_ivec3_ivec3 3947e5c31af7Sopenharmony_ci expect compile_fail 3948e5c31af7Sopenharmony_ci version 300 es 3949e5c31af7Sopenharmony_ci 3950e5c31af7Sopenharmony_ci both "" 3951e5c31af7Sopenharmony_ci #version 300 es 3952e5c31af7Sopenharmony_ci precision mediump float; 3953e5c31af7Sopenharmony_ci precision mediump int; 3954e5c31af7Sopenharmony_ci 3955e5c31af7Sopenharmony_ci ${DECLARATIONS} 3956e5c31af7Sopenharmony_ci 3957e5c31af7Sopenharmony_ci void main() 3958e5c31af7Sopenharmony_ci { 3959e5c31af7Sopenharmony_ci ivec3 c; 3960e5c31af7Sopenharmony_ci float a; 3961e5c31af7Sopenharmony_ci ivec3 b; 3962e5c31af7Sopenharmony_ci ivec3 c = a - b; 3963e5c31af7Sopenharmony_ci } 3964e5c31af7Sopenharmony_ci "" 3965e5c31af7Sopenharmony_ci end 3966e5c31af7Sopenharmony_ci case sub_float_ivec4_float 3967e5c31af7Sopenharmony_ci expect compile_fail 3968e5c31af7Sopenharmony_ci version 300 es 3969e5c31af7Sopenharmony_ci 3970e5c31af7Sopenharmony_ci both "" 3971e5c31af7Sopenharmony_ci #version 300 es 3972e5c31af7Sopenharmony_ci precision mediump float; 3973e5c31af7Sopenharmony_ci precision mediump int; 3974e5c31af7Sopenharmony_ci 3975e5c31af7Sopenharmony_ci ${DECLARATIONS} 3976e5c31af7Sopenharmony_ci 3977e5c31af7Sopenharmony_ci void main() 3978e5c31af7Sopenharmony_ci { 3979e5c31af7Sopenharmony_ci float c; 3980e5c31af7Sopenharmony_ci float a; 3981e5c31af7Sopenharmony_ci ivec4 b; 3982e5c31af7Sopenharmony_ci float c = a - b; 3983e5c31af7Sopenharmony_ci } 3984e5c31af7Sopenharmony_ci "" 3985e5c31af7Sopenharmony_ci end 3986e5c31af7Sopenharmony_ci case sub_float_ivec4_ivec4 3987e5c31af7Sopenharmony_ci expect compile_fail 3988e5c31af7Sopenharmony_ci version 300 es 3989e5c31af7Sopenharmony_ci 3990e5c31af7Sopenharmony_ci both "" 3991e5c31af7Sopenharmony_ci #version 300 es 3992e5c31af7Sopenharmony_ci precision mediump float; 3993e5c31af7Sopenharmony_ci precision mediump int; 3994e5c31af7Sopenharmony_ci 3995e5c31af7Sopenharmony_ci ${DECLARATIONS} 3996e5c31af7Sopenharmony_ci 3997e5c31af7Sopenharmony_ci void main() 3998e5c31af7Sopenharmony_ci { 3999e5c31af7Sopenharmony_ci ivec4 c; 4000e5c31af7Sopenharmony_ci float a; 4001e5c31af7Sopenharmony_ci ivec4 b; 4002e5c31af7Sopenharmony_ci ivec4 c = a - b; 4003e5c31af7Sopenharmony_ci } 4004e5c31af7Sopenharmony_ci "" 4005e5c31af7Sopenharmony_ci end 4006e5c31af7Sopenharmony_ci case sub_vec2_int_vec2 4007e5c31af7Sopenharmony_ci expect compile_fail 4008e5c31af7Sopenharmony_ci version 300 es 4009e5c31af7Sopenharmony_ci 4010e5c31af7Sopenharmony_ci both "" 4011e5c31af7Sopenharmony_ci #version 300 es 4012e5c31af7Sopenharmony_ci precision mediump float; 4013e5c31af7Sopenharmony_ci precision mediump int; 4014e5c31af7Sopenharmony_ci 4015e5c31af7Sopenharmony_ci ${DECLARATIONS} 4016e5c31af7Sopenharmony_ci 4017e5c31af7Sopenharmony_ci void main() 4018e5c31af7Sopenharmony_ci { 4019e5c31af7Sopenharmony_ci vec2 c; 4020e5c31af7Sopenharmony_ci vec2 a; 4021e5c31af7Sopenharmony_ci int b; 4022e5c31af7Sopenharmony_ci vec2 c = a - b; 4023e5c31af7Sopenharmony_ci } 4024e5c31af7Sopenharmony_ci "" 4025e5c31af7Sopenharmony_ci end 4026e5c31af7Sopenharmony_ci case sub_vec2_int_int 4027e5c31af7Sopenharmony_ci expect compile_fail 4028e5c31af7Sopenharmony_ci version 300 es 4029e5c31af7Sopenharmony_ci 4030e5c31af7Sopenharmony_ci both "" 4031e5c31af7Sopenharmony_ci #version 300 es 4032e5c31af7Sopenharmony_ci precision mediump float; 4033e5c31af7Sopenharmony_ci precision mediump int; 4034e5c31af7Sopenharmony_ci 4035e5c31af7Sopenharmony_ci ${DECLARATIONS} 4036e5c31af7Sopenharmony_ci 4037e5c31af7Sopenharmony_ci void main() 4038e5c31af7Sopenharmony_ci { 4039e5c31af7Sopenharmony_ci int c; 4040e5c31af7Sopenharmony_ci vec2 a; 4041e5c31af7Sopenharmony_ci int b; 4042e5c31af7Sopenharmony_ci int c = a - b; 4043e5c31af7Sopenharmony_ci } 4044e5c31af7Sopenharmony_ci "" 4045e5c31af7Sopenharmony_ci end 4046e5c31af7Sopenharmony_ci case sub_vec2_ivec2_vec2 4047e5c31af7Sopenharmony_ci expect compile_fail 4048e5c31af7Sopenharmony_ci version 300 es 4049e5c31af7Sopenharmony_ci 4050e5c31af7Sopenharmony_ci both "" 4051e5c31af7Sopenharmony_ci #version 300 es 4052e5c31af7Sopenharmony_ci precision mediump float; 4053e5c31af7Sopenharmony_ci precision mediump int; 4054e5c31af7Sopenharmony_ci 4055e5c31af7Sopenharmony_ci ${DECLARATIONS} 4056e5c31af7Sopenharmony_ci 4057e5c31af7Sopenharmony_ci void main() 4058e5c31af7Sopenharmony_ci { 4059e5c31af7Sopenharmony_ci vec2 c; 4060e5c31af7Sopenharmony_ci vec2 a; 4061e5c31af7Sopenharmony_ci ivec2 b; 4062e5c31af7Sopenharmony_ci vec2 c = a - b; 4063e5c31af7Sopenharmony_ci } 4064e5c31af7Sopenharmony_ci "" 4065e5c31af7Sopenharmony_ci end 4066e5c31af7Sopenharmony_ci case sub_vec2_ivec2_ivec2 4067e5c31af7Sopenharmony_ci expect compile_fail 4068e5c31af7Sopenharmony_ci version 300 es 4069e5c31af7Sopenharmony_ci 4070e5c31af7Sopenharmony_ci both "" 4071e5c31af7Sopenharmony_ci #version 300 es 4072e5c31af7Sopenharmony_ci precision mediump float; 4073e5c31af7Sopenharmony_ci precision mediump int; 4074e5c31af7Sopenharmony_ci 4075e5c31af7Sopenharmony_ci ${DECLARATIONS} 4076e5c31af7Sopenharmony_ci 4077e5c31af7Sopenharmony_ci void main() 4078e5c31af7Sopenharmony_ci { 4079e5c31af7Sopenharmony_ci ivec2 c; 4080e5c31af7Sopenharmony_ci vec2 a; 4081e5c31af7Sopenharmony_ci ivec2 b; 4082e5c31af7Sopenharmony_ci ivec2 c = a - b; 4083e5c31af7Sopenharmony_ci } 4084e5c31af7Sopenharmony_ci "" 4085e5c31af7Sopenharmony_ci end 4086e5c31af7Sopenharmony_ci case sub_vec2_ivec3_vec2 4087e5c31af7Sopenharmony_ci expect compile_fail 4088e5c31af7Sopenharmony_ci version 300 es 4089e5c31af7Sopenharmony_ci 4090e5c31af7Sopenharmony_ci both "" 4091e5c31af7Sopenharmony_ci #version 300 es 4092e5c31af7Sopenharmony_ci precision mediump float; 4093e5c31af7Sopenharmony_ci precision mediump int; 4094e5c31af7Sopenharmony_ci 4095e5c31af7Sopenharmony_ci ${DECLARATIONS} 4096e5c31af7Sopenharmony_ci 4097e5c31af7Sopenharmony_ci void main() 4098e5c31af7Sopenharmony_ci { 4099e5c31af7Sopenharmony_ci vec2 c; 4100e5c31af7Sopenharmony_ci vec2 a; 4101e5c31af7Sopenharmony_ci ivec3 b; 4102e5c31af7Sopenharmony_ci vec2 c = a - b; 4103e5c31af7Sopenharmony_ci } 4104e5c31af7Sopenharmony_ci "" 4105e5c31af7Sopenharmony_ci end 4106e5c31af7Sopenharmony_ci case sub_vec2_ivec3_ivec3 4107e5c31af7Sopenharmony_ci expect compile_fail 4108e5c31af7Sopenharmony_ci version 300 es 4109e5c31af7Sopenharmony_ci 4110e5c31af7Sopenharmony_ci both "" 4111e5c31af7Sopenharmony_ci #version 300 es 4112e5c31af7Sopenharmony_ci precision mediump float; 4113e5c31af7Sopenharmony_ci precision mediump int; 4114e5c31af7Sopenharmony_ci 4115e5c31af7Sopenharmony_ci ${DECLARATIONS} 4116e5c31af7Sopenharmony_ci 4117e5c31af7Sopenharmony_ci void main() 4118e5c31af7Sopenharmony_ci { 4119e5c31af7Sopenharmony_ci ivec3 c; 4120e5c31af7Sopenharmony_ci vec2 a; 4121e5c31af7Sopenharmony_ci ivec3 b; 4122e5c31af7Sopenharmony_ci ivec3 c = a - b; 4123e5c31af7Sopenharmony_ci } 4124e5c31af7Sopenharmony_ci "" 4125e5c31af7Sopenharmony_ci end 4126e5c31af7Sopenharmony_ci case sub_vec2_ivec4_vec2 4127e5c31af7Sopenharmony_ci expect compile_fail 4128e5c31af7Sopenharmony_ci version 300 es 4129e5c31af7Sopenharmony_ci 4130e5c31af7Sopenharmony_ci both "" 4131e5c31af7Sopenharmony_ci #version 300 es 4132e5c31af7Sopenharmony_ci precision mediump float; 4133e5c31af7Sopenharmony_ci precision mediump int; 4134e5c31af7Sopenharmony_ci 4135e5c31af7Sopenharmony_ci ${DECLARATIONS} 4136e5c31af7Sopenharmony_ci 4137e5c31af7Sopenharmony_ci void main() 4138e5c31af7Sopenharmony_ci { 4139e5c31af7Sopenharmony_ci vec2 c; 4140e5c31af7Sopenharmony_ci vec2 a; 4141e5c31af7Sopenharmony_ci ivec4 b; 4142e5c31af7Sopenharmony_ci vec2 c = a - b; 4143e5c31af7Sopenharmony_ci } 4144e5c31af7Sopenharmony_ci "" 4145e5c31af7Sopenharmony_ci end 4146e5c31af7Sopenharmony_ci case sub_vec2_ivec4_ivec4 4147e5c31af7Sopenharmony_ci expect compile_fail 4148e5c31af7Sopenharmony_ci version 300 es 4149e5c31af7Sopenharmony_ci 4150e5c31af7Sopenharmony_ci both "" 4151e5c31af7Sopenharmony_ci #version 300 es 4152e5c31af7Sopenharmony_ci precision mediump float; 4153e5c31af7Sopenharmony_ci precision mediump int; 4154e5c31af7Sopenharmony_ci 4155e5c31af7Sopenharmony_ci ${DECLARATIONS} 4156e5c31af7Sopenharmony_ci 4157e5c31af7Sopenharmony_ci void main() 4158e5c31af7Sopenharmony_ci { 4159e5c31af7Sopenharmony_ci ivec4 c; 4160e5c31af7Sopenharmony_ci vec2 a; 4161e5c31af7Sopenharmony_ci ivec4 b; 4162e5c31af7Sopenharmony_ci ivec4 c = a - b; 4163e5c31af7Sopenharmony_ci } 4164e5c31af7Sopenharmony_ci "" 4165e5c31af7Sopenharmony_ci end 4166e5c31af7Sopenharmony_ci case sub_vec3_int_vec3 4167e5c31af7Sopenharmony_ci expect compile_fail 4168e5c31af7Sopenharmony_ci version 300 es 4169e5c31af7Sopenharmony_ci 4170e5c31af7Sopenharmony_ci both "" 4171e5c31af7Sopenharmony_ci #version 300 es 4172e5c31af7Sopenharmony_ci precision mediump float; 4173e5c31af7Sopenharmony_ci precision mediump int; 4174e5c31af7Sopenharmony_ci 4175e5c31af7Sopenharmony_ci ${DECLARATIONS} 4176e5c31af7Sopenharmony_ci 4177e5c31af7Sopenharmony_ci void main() 4178e5c31af7Sopenharmony_ci { 4179e5c31af7Sopenharmony_ci vec3 c; 4180e5c31af7Sopenharmony_ci vec3 a; 4181e5c31af7Sopenharmony_ci int b; 4182e5c31af7Sopenharmony_ci vec3 c = a - b; 4183e5c31af7Sopenharmony_ci } 4184e5c31af7Sopenharmony_ci "" 4185e5c31af7Sopenharmony_ci end 4186e5c31af7Sopenharmony_ci case sub_vec3_int_int 4187e5c31af7Sopenharmony_ci expect compile_fail 4188e5c31af7Sopenharmony_ci version 300 es 4189e5c31af7Sopenharmony_ci 4190e5c31af7Sopenharmony_ci both "" 4191e5c31af7Sopenharmony_ci #version 300 es 4192e5c31af7Sopenharmony_ci precision mediump float; 4193e5c31af7Sopenharmony_ci precision mediump int; 4194e5c31af7Sopenharmony_ci 4195e5c31af7Sopenharmony_ci ${DECLARATIONS} 4196e5c31af7Sopenharmony_ci 4197e5c31af7Sopenharmony_ci void main() 4198e5c31af7Sopenharmony_ci { 4199e5c31af7Sopenharmony_ci int c; 4200e5c31af7Sopenharmony_ci vec3 a; 4201e5c31af7Sopenharmony_ci int b; 4202e5c31af7Sopenharmony_ci int c = a - b; 4203e5c31af7Sopenharmony_ci } 4204e5c31af7Sopenharmony_ci "" 4205e5c31af7Sopenharmony_ci end 4206e5c31af7Sopenharmony_ci case sub_vec3_ivec2_vec3 4207e5c31af7Sopenharmony_ci expect compile_fail 4208e5c31af7Sopenharmony_ci version 300 es 4209e5c31af7Sopenharmony_ci 4210e5c31af7Sopenharmony_ci both "" 4211e5c31af7Sopenharmony_ci #version 300 es 4212e5c31af7Sopenharmony_ci precision mediump float; 4213e5c31af7Sopenharmony_ci precision mediump int; 4214e5c31af7Sopenharmony_ci 4215e5c31af7Sopenharmony_ci ${DECLARATIONS} 4216e5c31af7Sopenharmony_ci 4217e5c31af7Sopenharmony_ci void main() 4218e5c31af7Sopenharmony_ci { 4219e5c31af7Sopenharmony_ci vec3 c; 4220e5c31af7Sopenharmony_ci vec3 a; 4221e5c31af7Sopenharmony_ci ivec2 b; 4222e5c31af7Sopenharmony_ci vec3 c = a - b; 4223e5c31af7Sopenharmony_ci } 4224e5c31af7Sopenharmony_ci "" 4225e5c31af7Sopenharmony_ci end 4226e5c31af7Sopenharmony_ci case sub_vec3_ivec2_ivec2 4227e5c31af7Sopenharmony_ci expect compile_fail 4228e5c31af7Sopenharmony_ci version 300 es 4229e5c31af7Sopenharmony_ci 4230e5c31af7Sopenharmony_ci both "" 4231e5c31af7Sopenharmony_ci #version 300 es 4232e5c31af7Sopenharmony_ci precision mediump float; 4233e5c31af7Sopenharmony_ci precision mediump int; 4234e5c31af7Sopenharmony_ci 4235e5c31af7Sopenharmony_ci ${DECLARATIONS} 4236e5c31af7Sopenharmony_ci 4237e5c31af7Sopenharmony_ci void main() 4238e5c31af7Sopenharmony_ci { 4239e5c31af7Sopenharmony_ci ivec2 c; 4240e5c31af7Sopenharmony_ci vec3 a; 4241e5c31af7Sopenharmony_ci ivec2 b; 4242e5c31af7Sopenharmony_ci ivec2 c = a - b; 4243e5c31af7Sopenharmony_ci } 4244e5c31af7Sopenharmony_ci "" 4245e5c31af7Sopenharmony_ci end 4246e5c31af7Sopenharmony_ci case sub_vec3_ivec3_vec3 4247e5c31af7Sopenharmony_ci expect compile_fail 4248e5c31af7Sopenharmony_ci version 300 es 4249e5c31af7Sopenharmony_ci 4250e5c31af7Sopenharmony_ci both "" 4251e5c31af7Sopenharmony_ci #version 300 es 4252e5c31af7Sopenharmony_ci precision mediump float; 4253e5c31af7Sopenharmony_ci precision mediump int; 4254e5c31af7Sopenharmony_ci 4255e5c31af7Sopenharmony_ci ${DECLARATIONS} 4256e5c31af7Sopenharmony_ci 4257e5c31af7Sopenharmony_ci void main() 4258e5c31af7Sopenharmony_ci { 4259e5c31af7Sopenharmony_ci vec3 c; 4260e5c31af7Sopenharmony_ci vec3 a; 4261e5c31af7Sopenharmony_ci ivec3 b; 4262e5c31af7Sopenharmony_ci vec3 c = a - b; 4263e5c31af7Sopenharmony_ci } 4264e5c31af7Sopenharmony_ci "" 4265e5c31af7Sopenharmony_ci end 4266e5c31af7Sopenharmony_ci case sub_vec3_ivec3_ivec3 4267e5c31af7Sopenharmony_ci expect compile_fail 4268e5c31af7Sopenharmony_ci version 300 es 4269e5c31af7Sopenharmony_ci 4270e5c31af7Sopenharmony_ci both "" 4271e5c31af7Sopenharmony_ci #version 300 es 4272e5c31af7Sopenharmony_ci precision mediump float; 4273e5c31af7Sopenharmony_ci precision mediump int; 4274e5c31af7Sopenharmony_ci 4275e5c31af7Sopenharmony_ci ${DECLARATIONS} 4276e5c31af7Sopenharmony_ci 4277e5c31af7Sopenharmony_ci void main() 4278e5c31af7Sopenharmony_ci { 4279e5c31af7Sopenharmony_ci ivec3 c; 4280e5c31af7Sopenharmony_ci vec3 a; 4281e5c31af7Sopenharmony_ci ivec3 b; 4282e5c31af7Sopenharmony_ci ivec3 c = a - b; 4283e5c31af7Sopenharmony_ci } 4284e5c31af7Sopenharmony_ci "" 4285e5c31af7Sopenharmony_ci end 4286e5c31af7Sopenharmony_ci case sub_vec3_ivec4_vec3 4287e5c31af7Sopenharmony_ci expect compile_fail 4288e5c31af7Sopenharmony_ci version 300 es 4289e5c31af7Sopenharmony_ci 4290e5c31af7Sopenharmony_ci both "" 4291e5c31af7Sopenharmony_ci #version 300 es 4292e5c31af7Sopenharmony_ci precision mediump float; 4293e5c31af7Sopenharmony_ci precision mediump int; 4294e5c31af7Sopenharmony_ci 4295e5c31af7Sopenharmony_ci ${DECLARATIONS} 4296e5c31af7Sopenharmony_ci 4297e5c31af7Sopenharmony_ci void main() 4298e5c31af7Sopenharmony_ci { 4299e5c31af7Sopenharmony_ci vec3 c; 4300e5c31af7Sopenharmony_ci vec3 a; 4301e5c31af7Sopenharmony_ci ivec4 b; 4302e5c31af7Sopenharmony_ci vec3 c = a - b; 4303e5c31af7Sopenharmony_ci } 4304e5c31af7Sopenharmony_ci "" 4305e5c31af7Sopenharmony_ci end 4306e5c31af7Sopenharmony_ci case sub_vec3_ivec4_ivec4 4307e5c31af7Sopenharmony_ci expect compile_fail 4308e5c31af7Sopenharmony_ci version 300 es 4309e5c31af7Sopenharmony_ci 4310e5c31af7Sopenharmony_ci both "" 4311e5c31af7Sopenharmony_ci #version 300 es 4312e5c31af7Sopenharmony_ci precision mediump float; 4313e5c31af7Sopenharmony_ci precision mediump int; 4314e5c31af7Sopenharmony_ci 4315e5c31af7Sopenharmony_ci ${DECLARATIONS} 4316e5c31af7Sopenharmony_ci 4317e5c31af7Sopenharmony_ci void main() 4318e5c31af7Sopenharmony_ci { 4319e5c31af7Sopenharmony_ci ivec4 c; 4320e5c31af7Sopenharmony_ci vec3 a; 4321e5c31af7Sopenharmony_ci ivec4 b; 4322e5c31af7Sopenharmony_ci ivec4 c = a - b; 4323e5c31af7Sopenharmony_ci } 4324e5c31af7Sopenharmony_ci "" 4325e5c31af7Sopenharmony_ci end 4326e5c31af7Sopenharmony_ci case sub_vec4_int_vec4 4327e5c31af7Sopenharmony_ci expect compile_fail 4328e5c31af7Sopenharmony_ci version 300 es 4329e5c31af7Sopenharmony_ci 4330e5c31af7Sopenharmony_ci both "" 4331e5c31af7Sopenharmony_ci #version 300 es 4332e5c31af7Sopenharmony_ci precision mediump float; 4333e5c31af7Sopenharmony_ci precision mediump int; 4334e5c31af7Sopenharmony_ci 4335e5c31af7Sopenharmony_ci ${DECLARATIONS} 4336e5c31af7Sopenharmony_ci 4337e5c31af7Sopenharmony_ci void main() 4338e5c31af7Sopenharmony_ci { 4339e5c31af7Sopenharmony_ci vec4 c; 4340e5c31af7Sopenharmony_ci vec4 a; 4341e5c31af7Sopenharmony_ci int b; 4342e5c31af7Sopenharmony_ci vec4 c = a - b; 4343e5c31af7Sopenharmony_ci } 4344e5c31af7Sopenharmony_ci "" 4345e5c31af7Sopenharmony_ci end 4346e5c31af7Sopenharmony_ci case sub_vec4_int_int 4347e5c31af7Sopenharmony_ci expect compile_fail 4348e5c31af7Sopenharmony_ci version 300 es 4349e5c31af7Sopenharmony_ci 4350e5c31af7Sopenharmony_ci both "" 4351e5c31af7Sopenharmony_ci #version 300 es 4352e5c31af7Sopenharmony_ci precision mediump float; 4353e5c31af7Sopenharmony_ci precision mediump int; 4354e5c31af7Sopenharmony_ci 4355e5c31af7Sopenharmony_ci ${DECLARATIONS} 4356e5c31af7Sopenharmony_ci 4357e5c31af7Sopenharmony_ci void main() 4358e5c31af7Sopenharmony_ci { 4359e5c31af7Sopenharmony_ci int c; 4360e5c31af7Sopenharmony_ci vec4 a; 4361e5c31af7Sopenharmony_ci int b; 4362e5c31af7Sopenharmony_ci int c = a - b; 4363e5c31af7Sopenharmony_ci } 4364e5c31af7Sopenharmony_ci "" 4365e5c31af7Sopenharmony_ci end 4366e5c31af7Sopenharmony_ci case sub_vec4_ivec2_vec4 4367e5c31af7Sopenharmony_ci expect compile_fail 4368e5c31af7Sopenharmony_ci version 300 es 4369e5c31af7Sopenharmony_ci 4370e5c31af7Sopenharmony_ci both "" 4371e5c31af7Sopenharmony_ci #version 300 es 4372e5c31af7Sopenharmony_ci precision mediump float; 4373e5c31af7Sopenharmony_ci precision mediump int; 4374e5c31af7Sopenharmony_ci 4375e5c31af7Sopenharmony_ci ${DECLARATIONS} 4376e5c31af7Sopenharmony_ci 4377e5c31af7Sopenharmony_ci void main() 4378e5c31af7Sopenharmony_ci { 4379e5c31af7Sopenharmony_ci vec4 c; 4380e5c31af7Sopenharmony_ci vec4 a; 4381e5c31af7Sopenharmony_ci ivec2 b; 4382e5c31af7Sopenharmony_ci vec4 c = a - b; 4383e5c31af7Sopenharmony_ci } 4384e5c31af7Sopenharmony_ci "" 4385e5c31af7Sopenharmony_ci end 4386e5c31af7Sopenharmony_ci case sub_vec4_ivec2_ivec2 4387e5c31af7Sopenharmony_ci expect compile_fail 4388e5c31af7Sopenharmony_ci version 300 es 4389e5c31af7Sopenharmony_ci 4390e5c31af7Sopenharmony_ci both "" 4391e5c31af7Sopenharmony_ci #version 300 es 4392e5c31af7Sopenharmony_ci precision mediump float; 4393e5c31af7Sopenharmony_ci precision mediump int; 4394e5c31af7Sopenharmony_ci 4395e5c31af7Sopenharmony_ci ${DECLARATIONS} 4396e5c31af7Sopenharmony_ci 4397e5c31af7Sopenharmony_ci void main() 4398e5c31af7Sopenharmony_ci { 4399e5c31af7Sopenharmony_ci ivec2 c; 4400e5c31af7Sopenharmony_ci vec4 a; 4401e5c31af7Sopenharmony_ci ivec2 b; 4402e5c31af7Sopenharmony_ci ivec2 c = a - b; 4403e5c31af7Sopenharmony_ci } 4404e5c31af7Sopenharmony_ci "" 4405e5c31af7Sopenharmony_ci end 4406e5c31af7Sopenharmony_ci case sub_vec4_ivec3_vec4 4407e5c31af7Sopenharmony_ci expect compile_fail 4408e5c31af7Sopenharmony_ci version 300 es 4409e5c31af7Sopenharmony_ci 4410e5c31af7Sopenharmony_ci both "" 4411e5c31af7Sopenharmony_ci #version 300 es 4412e5c31af7Sopenharmony_ci precision mediump float; 4413e5c31af7Sopenharmony_ci precision mediump int; 4414e5c31af7Sopenharmony_ci 4415e5c31af7Sopenharmony_ci ${DECLARATIONS} 4416e5c31af7Sopenharmony_ci 4417e5c31af7Sopenharmony_ci void main() 4418e5c31af7Sopenharmony_ci { 4419e5c31af7Sopenharmony_ci vec4 c; 4420e5c31af7Sopenharmony_ci vec4 a; 4421e5c31af7Sopenharmony_ci ivec3 b; 4422e5c31af7Sopenharmony_ci vec4 c = a - b; 4423e5c31af7Sopenharmony_ci } 4424e5c31af7Sopenharmony_ci "" 4425e5c31af7Sopenharmony_ci end 4426e5c31af7Sopenharmony_ci case sub_vec4_ivec3_ivec3 4427e5c31af7Sopenharmony_ci expect compile_fail 4428e5c31af7Sopenharmony_ci version 300 es 4429e5c31af7Sopenharmony_ci 4430e5c31af7Sopenharmony_ci both "" 4431e5c31af7Sopenharmony_ci #version 300 es 4432e5c31af7Sopenharmony_ci precision mediump float; 4433e5c31af7Sopenharmony_ci precision mediump int; 4434e5c31af7Sopenharmony_ci 4435e5c31af7Sopenharmony_ci ${DECLARATIONS} 4436e5c31af7Sopenharmony_ci 4437e5c31af7Sopenharmony_ci void main() 4438e5c31af7Sopenharmony_ci { 4439e5c31af7Sopenharmony_ci ivec3 c; 4440e5c31af7Sopenharmony_ci vec4 a; 4441e5c31af7Sopenharmony_ci ivec3 b; 4442e5c31af7Sopenharmony_ci ivec3 c = a - b; 4443e5c31af7Sopenharmony_ci } 4444e5c31af7Sopenharmony_ci "" 4445e5c31af7Sopenharmony_ci end 4446e5c31af7Sopenharmony_ci case sub_vec4_ivec4_vec4 4447e5c31af7Sopenharmony_ci expect compile_fail 4448e5c31af7Sopenharmony_ci version 300 es 4449e5c31af7Sopenharmony_ci 4450e5c31af7Sopenharmony_ci both "" 4451e5c31af7Sopenharmony_ci #version 300 es 4452e5c31af7Sopenharmony_ci precision mediump float; 4453e5c31af7Sopenharmony_ci precision mediump int; 4454e5c31af7Sopenharmony_ci 4455e5c31af7Sopenharmony_ci ${DECLARATIONS} 4456e5c31af7Sopenharmony_ci 4457e5c31af7Sopenharmony_ci void main() 4458e5c31af7Sopenharmony_ci { 4459e5c31af7Sopenharmony_ci vec4 c; 4460e5c31af7Sopenharmony_ci vec4 a; 4461e5c31af7Sopenharmony_ci ivec4 b; 4462e5c31af7Sopenharmony_ci vec4 c = a - b; 4463e5c31af7Sopenharmony_ci } 4464e5c31af7Sopenharmony_ci "" 4465e5c31af7Sopenharmony_ci end 4466e5c31af7Sopenharmony_ci case sub_vec4_ivec4_ivec4 4467e5c31af7Sopenharmony_ci expect compile_fail 4468e5c31af7Sopenharmony_ci version 300 es 4469e5c31af7Sopenharmony_ci 4470e5c31af7Sopenharmony_ci both "" 4471e5c31af7Sopenharmony_ci #version 300 es 4472e5c31af7Sopenharmony_ci precision mediump float; 4473e5c31af7Sopenharmony_ci precision mediump int; 4474e5c31af7Sopenharmony_ci 4475e5c31af7Sopenharmony_ci ${DECLARATIONS} 4476e5c31af7Sopenharmony_ci 4477e5c31af7Sopenharmony_ci void main() 4478e5c31af7Sopenharmony_ci { 4479e5c31af7Sopenharmony_ci ivec4 c; 4480e5c31af7Sopenharmony_ci vec4 a; 4481e5c31af7Sopenharmony_ci ivec4 b; 4482e5c31af7Sopenharmony_ci ivec4 c = a - b; 4483e5c31af7Sopenharmony_ci } 4484e5c31af7Sopenharmony_ci "" 4485e5c31af7Sopenharmony_ci end 4486e5c31af7Sopenharmony_ci case sub_float_uint_float 4487e5c31af7Sopenharmony_ci expect compile_fail 4488e5c31af7Sopenharmony_ci version 300 es 4489e5c31af7Sopenharmony_ci 4490e5c31af7Sopenharmony_ci both "" 4491e5c31af7Sopenharmony_ci #version 300 es 4492e5c31af7Sopenharmony_ci precision mediump float; 4493e5c31af7Sopenharmony_ci precision mediump int; 4494e5c31af7Sopenharmony_ci 4495e5c31af7Sopenharmony_ci ${DECLARATIONS} 4496e5c31af7Sopenharmony_ci 4497e5c31af7Sopenharmony_ci void main() 4498e5c31af7Sopenharmony_ci { 4499e5c31af7Sopenharmony_ci float c; 4500e5c31af7Sopenharmony_ci float a; 4501e5c31af7Sopenharmony_ci uint b; 4502e5c31af7Sopenharmony_ci float c = a - b; 4503e5c31af7Sopenharmony_ci } 4504e5c31af7Sopenharmony_ci "" 4505e5c31af7Sopenharmony_ci end 4506e5c31af7Sopenharmony_ci case sub_float_uint_uint 4507e5c31af7Sopenharmony_ci expect compile_fail 4508e5c31af7Sopenharmony_ci version 300 es 4509e5c31af7Sopenharmony_ci 4510e5c31af7Sopenharmony_ci both "" 4511e5c31af7Sopenharmony_ci #version 300 es 4512e5c31af7Sopenharmony_ci precision mediump float; 4513e5c31af7Sopenharmony_ci precision mediump int; 4514e5c31af7Sopenharmony_ci 4515e5c31af7Sopenharmony_ci ${DECLARATIONS} 4516e5c31af7Sopenharmony_ci 4517e5c31af7Sopenharmony_ci void main() 4518e5c31af7Sopenharmony_ci { 4519e5c31af7Sopenharmony_ci uint c; 4520e5c31af7Sopenharmony_ci float a; 4521e5c31af7Sopenharmony_ci uint b; 4522e5c31af7Sopenharmony_ci uint c = a - b; 4523e5c31af7Sopenharmony_ci } 4524e5c31af7Sopenharmony_ci "" 4525e5c31af7Sopenharmony_ci end 4526e5c31af7Sopenharmony_ci case sub_float_uvec2_float 4527e5c31af7Sopenharmony_ci expect compile_fail 4528e5c31af7Sopenharmony_ci version 300 es 4529e5c31af7Sopenharmony_ci 4530e5c31af7Sopenharmony_ci both "" 4531e5c31af7Sopenharmony_ci #version 300 es 4532e5c31af7Sopenharmony_ci precision mediump float; 4533e5c31af7Sopenharmony_ci precision mediump int; 4534e5c31af7Sopenharmony_ci 4535e5c31af7Sopenharmony_ci ${DECLARATIONS} 4536e5c31af7Sopenharmony_ci 4537e5c31af7Sopenharmony_ci void main() 4538e5c31af7Sopenharmony_ci { 4539e5c31af7Sopenharmony_ci float c; 4540e5c31af7Sopenharmony_ci float a; 4541e5c31af7Sopenharmony_ci uvec2 b; 4542e5c31af7Sopenharmony_ci float c = a - b; 4543e5c31af7Sopenharmony_ci } 4544e5c31af7Sopenharmony_ci "" 4545e5c31af7Sopenharmony_ci end 4546e5c31af7Sopenharmony_ci case sub_float_uvec2_uvec2 4547e5c31af7Sopenharmony_ci expect compile_fail 4548e5c31af7Sopenharmony_ci version 300 es 4549e5c31af7Sopenharmony_ci 4550e5c31af7Sopenharmony_ci both "" 4551e5c31af7Sopenharmony_ci #version 300 es 4552e5c31af7Sopenharmony_ci precision mediump float; 4553e5c31af7Sopenharmony_ci precision mediump int; 4554e5c31af7Sopenharmony_ci 4555e5c31af7Sopenharmony_ci ${DECLARATIONS} 4556e5c31af7Sopenharmony_ci 4557e5c31af7Sopenharmony_ci void main() 4558e5c31af7Sopenharmony_ci { 4559e5c31af7Sopenharmony_ci uvec2 c; 4560e5c31af7Sopenharmony_ci float a; 4561e5c31af7Sopenharmony_ci uvec2 b; 4562e5c31af7Sopenharmony_ci uvec2 c = a - b; 4563e5c31af7Sopenharmony_ci } 4564e5c31af7Sopenharmony_ci "" 4565e5c31af7Sopenharmony_ci end 4566e5c31af7Sopenharmony_ci case sub_float_uvec3_float 4567e5c31af7Sopenharmony_ci expect compile_fail 4568e5c31af7Sopenharmony_ci version 300 es 4569e5c31af7Sopenharmony_ci 4570e5c31af7Sopenharmony_ci both "" 4571e5c31af7Sopenharmony_ci #version 300 es 4572e5c31af7Sopenharmony_ci precision mediump float; 4573e5c31af7Sopenharmony_ci precision mediump int; 4574e5c31af7Sopenharmony_ci 4575e5c31af7Sopenharmony_ci ${DECLARATIONS} 4576e5c31af7Sopenharmony_ci 4577e5c31af7Sopenharmony_ci void main() 4578e5c31af7Sopenharmony_ci { 4579e5c31af7Sopenharmony_ci float c; 4580e5c31af7Sopenharmony_ci float a; 4581e5c31af7Sopenharmony_ci uvec3 b; 4582e5c31af7Sopenharmony_ci float c = a - b; 4583e5c31af7Sopenharmony_ci } 4584e5c31af7Sopenharmony_ci "" 4585e5c31af7Sopenharmony_ci end 4586e5c31af7Sopenharmony_ci case sub_float_uvec3_uvec3 4587e5c31af7Sopenharmony_ci expect compile_fail 4588e5c31af7Sopenharmony_ci version 300 es 4589e5c31af7Sopenharmony_ci 4590e5c31af7Sopenharmony_ci both "" 4591e5c31af7Sopenharmony_ci #version 300 es 4592e5c31af7Sopenharmony_ci precision mediump float; 4593e5c31af7Sopenharmony_ci precision mediump int; 4594e5c31af7Sopenharmony_ci 4595e5c31af7Sopenharmony_ci ${DECLARATIONS} 4596e5c31af7Sopenharmony_ci 4597e5c31af7Sopenharmony_ci void main() 4598e5c31af7Sopenharmony_ci { 4599e5c31af7Sopenharmony_ci uvec3 c; 4600e5c31af7Sopenharmony_ci float a; 4601e5c31af7Sopenharmony_ci uvec3 b; 4602e5c31af7Sopenharmony_ci uvec3 c = a - b; 4603e5c31af7Sopenharmony_ci } 4604e5c31af7Sopenharmony_ci "" 4605e5c31af7Sopenharmony_ci end 4606e5c31af7Sopenharmony_ci case sub_float_uvec4_float 4607e5c31af7Sopenharmony_ci expect compile_fail 4608e5c31af7Sopenharmony_ci version 300 es 4609e5c31af7Sopenharmony_ci 4610e5c31af7Sopenharmony_ci both "" 4611e5c31af7Sopenharmony_ci #version 300 es 4612e5c31af7Sopenharmony_ci precision mediump float; 4613e5c31af7Sopenharmony_ci precision mediump int; 4614e5c31af7Sopenharmony_ci 4615e5c31af7Sopenharmony_ci ${DECLARATIONS} 4616e5c31af7Sopenharmony_ci 4617e5c31af7Sopenharmony_ci void main() 4618e5c31af7Sopenharmony_ci { 4619e5c31af7Sopenharmony_ci float c; 4620e5c31af7Sopenharmony_ci float a; 4621e5c31af7Sopenharmony_ci uvec4 b; 4622e5c31af7Sopenharmony_ci float c = a - b; 4623e5c31af7Sopenharmony_ci } 4624e5c31af7Sopenharmony_ci "" 4625e5c31af7Sopenharmony_ci end 4626e5c31af7Sopenharmony_ci case sub_float_uvec4_uvec4 4627e5c31af7Sopenharmony_ci expect compile_fail 4628e5c31af7Sopenharmony_ci version 300 es 4629e5c31af7Sopenharmony_ci 4630e5c31af7Sopenharmony_ci both "" 4631e5c31af7Sopenharmony_ci #version 300 es 4632e5c31af7Sopenharmony_ci precision mediump float; 4633e5c31af7Sopenharmony_ci precision mediump int; 4634e5c31af7Sopenharmony_ci 4635e5c31af7Sopenharmony_ci ${DECLARATIONS} 4636e5c31af7Sopenharmony_ci 4637e5c31af7Sopenharmony_ci void main() 4638e5c31af7Sopenharmony_ci { 4639e5c31af7Sopenharmony_ci uvec4 c; 4640e5c31af7Sopenharmony_ci float a; 4641e5c31af7Sopenharmony_ci uvec4 b; 4642e5c31af7Sopenharmony_ci uvec4 c = a - b; 4643e5c31af7Sopenharmony_ci } 4644e5c31af7Sopenharmony_ci "" 4645e5c31af7Sopenharmony_ci end 4646e5c31af7Sopenharmony_ci case sub_vec2_uint_vec2 4647e5c31af7Sopenharmony_ci expect compile_fail 4648e5c31af7Sopenharmony_ci version 300 es 4649e5c31af7Sopenharmony_ci 4650e5c31af7Sopenharmony_ci both "" 4651e5c31af7Sopenharmony_ci #version 300 es 4652e5c31af7Sopenharmony_ci precision mediump float; 4653e5c31af7Sopenharmony_ci precision mediump int; 4654e5c31af7Sopenharmony_ci 4655e5c31af7Sopenharmony_ci ${DECLARATIONS} 4656e5c31af7Sopenharmony_ci 4657e5c31af7Sopenharmony_ci void main() 4658e5c31af7Sopenharmony_ci { 4659e5c31af7Sopenharmony_ci vec2 c; 4660e5c31af7Sopenharmony_ci vec2 a; 4661e5c31af7Sopenharmony_ci uint b; 4662e5c31af7Sopenharmony_ci vec2 c = a - b; 4663e5c31af7Sopenharmony_ci } 4664e5c31af7Sopenharmony_ci "" 4665e5c31af7Sopenharmony_ci end 4666e5c31af7Sopenharmony_ci case sub_vec2_uint_uint 4667e5c31af7Sopenharmony_ci expect compile_fail 4668e5c31af7Sopenharmony_ci version 300 es 4669e5c31af7Sopenharmony_ci 4670e5c31af7Sopenharmony_ci both "" 4671e5c31af7Sopenharmony_ci #version 300 es 4672e5c31af7Sopenharmony_ci precision mediump float; 4673e5c31af7Sopenharmony_ci precision mediump int; 4674e5c31af7Sopenharmony_ci 4675e5c31af7Sopenharmony_ci ${DECLARATIONS} 4676e5c31af7Sopenharmony_ci 4677e5c31af7Sopenharmony_ci void main() 4678e5c31af7Sopenharmony_ci { 4679e5c31af7Sopenharmony_ci uint c; 4680e5c31af7Sopenharmony_ci vec2 a; 4681e5c31af7Sopenharmony_ci uint b; 4682e5c31af7Sopenharmony_ci uint c = a - b; 4683e5c31af7Sopenharmony_ci } 4684e5c31af7Sopenharmony_ci "" 4685e5c31af7Sopenharmony_ci end 4686e5c31af7Sopenharmony_ci case sub_vec2_uvec2_vec2 4687e5c31af7Sopenharmony_ci expect compile_fail 4688e5c31af7Sopenharmony_ci version 300 es 4689e5c31af7Sopenharmony_ci 4690e5c31af7Sopenharmony_ci both "" 4691e5c31af7Sopenharmony_ci #version 300 es 4692e5c31af7Sopenharmony_ci precision mediump float; 4693e5c31af7Sopenharmony_ci precision mediump int; 4694e5c31af7Sopenharmony_ci 4695e5c31af7Sopenharmony_ci ${DECLARATIONS} 4696e5c31af7Sopenharmony_ci 4697e5c31af7Sopenharmony_ci void main() 4698e5c31af7Sopenharmony_ci { 4699e5c31af7Sopenharmony_ci vec2 c; 4700e5c31af7Sopenharmony_ci vec2 a; 4701e5c31af7Sopenharmony_ci uvec2 b; 4702e5c31af7Sopenharmony_ci vec2 c = a - b; 4703e5c31af7Sopenharmony_ci } 4704e5c31af7Sopenharmony_ci "" 4705e5c31af7Sopenharmony_ci end 4706e5c31af7Sopenharmony_ci case sub_vec2_uvec2_uvec2 4707e5c31af7Sopenharmony_ci expect compile_fail 4708e5c31af7Sopenharmony_ci version 300 es 4709e5c31af7Sopenharmony_ci 4710e5c31af7Sopenharmony_ci both "" 4711e5c31af7Sopenharmony_ci #version 300 es 4712e5c31af7Sopenharmony_ci precision mediump float; 4713e5c31af7Sopenharmony_ci precision mediump int; 4714e5c31af7Sopenharmony_ci 4715e5c31af7Sopenharmony_ci ${DECLARATIONS} 4716e5c31af7Sopenharmony_ci 4717e5c31af7Sopenharmony_ci void main() 4718e5c31af7Sopenharmony_ci { 4719e5c31af7Sopenharmony_ci uvec2 c; 4720e5c31af7Sopenharmony_ci vec2 a; 4721e5c31af7Sopenharmony_ci uvec2 b; 4722e5c31af7Sopenharmony_ci uvec2 c = a - b; 4723e5c31af7Sopenharmony_ci } 4724e5c31af7Sopenharmony_ci "" 4725e5c31af7Sopenharmony_ci end 4726e5c31af7Sopenharmony_ci case sub_vec2_uvec3_vec2 4727e5c31af7Sopenharmony_ci expect compile_fail 4728e5c31af7Sopenharmony_ci version 300 es 4729e5c31af7Sopenharmony_ci 4730e5c31af7Sopenharmony_ci both "" 4731e5c31af7Sopenharmony_ci #version 300 es 4732e5c31af7Sopenharmony_ci precision mediump float; 4733e5c31af7Sopenharmony_ci precision mediump int; 4734e5c31af7Sopenharmony_ci 4735e5c31af7Sopenharmony_ci ${DECLARATIONS} 4736e5c31af7Sopenharmony_ci 4737e5c31af7Sopenharmony_ci void main() 4738e5c31af7Sopenharmony_ci { 4739e5c31af7Sopenharmony_ci vec2 c; 4740e5c31af7Sopenharmony_ci vec2 a; 4741e5c31af7Sopenharmony_ci uvec3 b; 4742e5c31af7Sopenharmony_ci vec2 c = a - b; 4743e5c31af7Sopenharmony_ci } 4744e5c31af7Sopenharmony_ci "" 4745e5c31af7Sopenharmony_ci end 4746e5c31af7Sopenharmony_ci case sub_vec2_uvec3_uvec3 4747e5c31af7Sopenharmony_ci expect compile_fail 4748e5c31af7Sopenharmony_ci version 300 es 4749e5c31af7Sopenharmony_ci 4750e5c31af7Sopenharmony_ci both "" 4751e5c31af7Sopenharmony_ci #version 300 es 4752e5c31af7Sopenharmony_ci precision mediump float; 4753e5c31af7Sopenharmony_ci precision mediump int; 4754e5c31af7Sopenharmony_ci 4755e5c31af7Sopenharmony_ci ${DECLARATIONS} 4756e5c31af7Sopenharmony_ci 4757e5c31af7Sopenharmony_ci void main() 4758e5c31af7Sopenharmony_ci { 4759e5c31af7Sopenharmony_ci uvec3 c; 4760e5c31af7Sopenharmony_ci vec2 a; 4761e5c31af7Sopenharmony_ci uvec3 b; 4762e5c31af7Sopenharmony_ci uvec3 c = a - b; 4763e5c31af7Sopenharmony_ci } 4764e5c31af7Sopenharmony_ci "" 4765e5c31af7Sopenharmony_ci end 4766e5c31af7Sopenharmony_ci case sub_vec2_uvec4_vec2 4767e5c31af7Sopenharmony_ci expect compile_fail 4768e5c31af7Sopenharmony_ci version 300 es 4769e5c31af7Sopenharmony_ci 4770e5c31af7Sopenharmony_ci both "" 4771e5c31af7Sopenharmony_ci #version 300 es 4772e5c31af7Sopenharmony_ci precision mediump float; 4773e5c31af7Sopenharmony_ci precision mediump int; 4774e5c31af7Sopenharmony_ci 4775e5c31af7Sopenharmony_ci ${DECLARATIONS} 4776e5c31af7Sopenharmony_ci 4777e5c31af7Sopenharmony_ci void main() 4778e5c31af7Sopenharmony_ci { 4779e5c31af7Sopenharmony_ci vec2 c; 4780e5c31af7Sopenharmony_ci vec2 a; 4781e5c31af7Sopenharmony_ci uvec4 b; 4782e5c31af7Sopenharmony_ci vec2 c = a - b; 4783e5c31af7Sopenharmony_ci } 4784e5c31af7Sopenharmony_ci "" 4785e5c31af7Sopenharmony_ci end 4786e5c31af7Sopenharmony_ci case sub_vec2_uvec4_uvec4 4787e5c31af7Sopenharmony_ci expect compile_fail 4788e5c31af7Sopenharmony_ci version 300 es 4789e5c31af7Sopenharmony_ci 4790e5c31af7Sopenharmony_ci both "" 4791e5c31af7Sopenharmony_ci #version 300 es 4792e5c31af7Sopenharmony_ci precision mediump float; 4793e5c31af7Sopenharmony_ci precision mediump int; 4794e5c31af7Sopenharmony_ci 4795e5c31af7Sopenharmony_ci ${DECLARATIONS} 4796e5c31af7Sopenharmony_ci 4797e5c31af7Sopenharmony_ci void main() 4798e5c31af7Sopenharmony_ci { 4799e5c31af7Sopenharmony_ci uvec4 c; 4800e5c31af7Sopenharmony_ci vec2 a; 4801e5c31af7Sopenharmony_ci uvec4 b; 4802e5c31af7Sopenharmony_ci uvec4 c = a - b; 4803e5c31af7Sopenharmony_ci } 4804e5c31af7Sopenharmony_ci "" 4805e5c31af7Sopenharmony_ci end 4806e5c31af7Sopenharmony_ci case sub_vec3_uint_vec3 4807e5c31af7Sopenharmony_ci expect compile_fail 4808e5c31af7Sopenharmony_ci version 300 es 4809e5c31af7Sopenharmony_ci 4810e5c31af7Sopenharmony_ci both "" 4811e5c31af7Sopenharmony_ci #version 300 es 4812e5c31af7Sopenharmony_ci precision mediump float; 4813e5c31af7Sopenharmony_ci precision mediump int; 4814e5c31af7Sopenharmony_ci 4815e5c31af7Sopenharmony_ci ${DECLARATIONS} 4816e5c31af7Sopenharmony_ci 4817e5c31af7Sopenharmony_ci void main() 4818e5c31af7Sopenharmony_ci { 4819e5c31af7Sopenharmony_ci vec3 c; 4820e5c31af7Sopenharmony_ci vec3 a; 4821e5c31af7Sopenharmony_ci uint b; 4822e5c31af7Sopenharmony_ci vec3 c = a - b; 4823e5c31af7Sopenharmony_ci } 4824e5c31af7Sopenharmony_ci "" 4825e5c31af7Sopenharmony_ci end 4826e5c31af7Sopenharmony_ci case sub_vec3_uint_uint 4827e5c31af7Sopenharmony_ci expect compile_fail 4828e5c31af7Sopenharmony_ci version 300 es 4829e5c31af7Sopenharmony_ci 4830e5c31af7Sopenharmony_ci both "" 4831e5c31af7Sopenharmony_ci #version 300 es 4832e5c31af7Sopenharmony_ci precision mediump float; 4833e5c31af7Sopenharmony_ci precision mediump int; 4834e5c31af7Sopenharmony_ci 4835e5c31af7Sopenharmony_ci ${DECLARATIONS} 4836e5c31af7Sopenharmony_ci 4837e5c31af7Sopenharmony_ci void main() 4838e5c31af7Sopenharmony_ci { 4839e5c31af7Sopenharmony_ci uint c; 4840e5c31af7Sopenharmony_ci vec3 a; 4841e5c31af7Sopenharmony_ci uint b; 4842e5c31af7Sopenharmony_ci uint c = a - b; 4843e5c31af7Sopenharmony_ci } 4844e5c31af7Sopenharmony_ci "" 4845e5c31af7Sopenharmony_ci end 4846e5c31af7Sopenharmony_ci case sub_vec3_uvec2_vec3 4847e5c31af7Sopenharmony_ci expect compile_fail 4848e5c31af7Sopenharmony_ci version 300 es 4849e5c31af7Sopenharmony_ci 4850e5c31af7Sopenharmony_ci both "" 4851e5c31af7Sopenharmony_ci #version 300 es 4852e5c31af7Sopenharmony_ci precision mediump float; 4853e5c31af7Sopenharmony_ci precision mediump int; 4854e5c31af7Sopenharmony_ci 4855e5c31af7Sopenharmony_ci ${DECLARATIONS} 4856e5c31af7Sopenharmony_ci 4857e5c31af7Sopenharmony_ci void main() 4858e5c31af7Sopenharmony_ci { 4859e5c31af7Sopenharmony_ci vec3 c; 4860e5c31af7Sopenharmony_ci vec3 a; 4861e5c31af7Sopenharmony_ci uvec2 b; 4862e5c31af7Sopenharmony_ci vec3 c = a - b; 4863e5c31af7Sopenharmony_ci } 4864e5c31af7Sopenharmony_ci "" 4865e5c31af7Sopenharmony_ci end 4866e5c31af7Sopenharmony_ci case sub_vec3_uvec2_uvec2 4867e5c31af7Sopenharmony_ci expect compile_fail 4868e5c31af7Sopenharmony_ci version 300 es 4869e5c31af7Sopenharmony_ci 4870e5c31af7Sopenharmony_ci both "" 4871e5c31af7Sopenharmony_ci #version 300 es 4872e5c31af7Sopenharmony_ci precision mediump float; 4873e5c31af7Sopenharmony_ci precision mediump int; 4874e5c31af7Sopenharmony_ci 4875e5c31af7Sopenharmony_ci ${DECLARATIONS} 4876e5c31af7Sopenharmony_ci 4877e5c31af7Sopenharmony_ci void main() 4878e5c31af7Sopenharmony_ci { 4879e5c31af7Sopenharmony_ci uvec2 c; 4880e5c31af7Sopenharmony_ci vec3 a; 4881e5c31af7Sopenharmony_ci uvec2 b; 4882e5c31af7Sopenharmony_ci uvec2 c = a - b; 4883e5c31af7Sopenharmony_ci } 4884e5c31af7Sopenharmony_ci "" 4885e5c31af7Sopenharmony_ci end 4886e5c31af7Sopenharmony_ci case sub_vec3_uvec3_vec3 4887e5c31af7Sopenharmony_ci expect compile_fail 4888e5c31af7Sopenharmony_ci version 300 es 4889e5c31af7Sopenharmony_ci 4890e5c31af7Sopenharmony_ci both "" 4891e5c31af7Sopenharmony_ci #version 300 es 4892e5c31af7Sopenharmony_ci precision mediump float; 4893e5c31af7Sopenharmony_ci precision mediump int; 4894e5c31af7Sopenharmony_ci 4895e5c31af7Sopenharmony_ci ${DECLARATIONS} 4896e5c31af7Sopenharmony_ci 4897e5c31af7Sopenharmony_ci void main() 4898e5c31af7Sopenharmony_ci { 4899e5c31af7Sopenharmony_ci vec3 c; 4900e5c31af7Sopenharmony_ci vec3 a; 4901e5c31af7Sopenharmony_ci uvec3 b; 4902e5c31af7Sopenharmony_ci vec3 c = a - b; 4903e5c31af7Sopenharmony_ci } 4904e5c31af7Sopenharmony_ci "" 4905e5c31af7Sopenharmony_ci end 4906e5c31af7Sopenharmony_ci case sub_vec3_uvec3_uvec3 4907e5c31af7Sopenharmony_ci expect compile_fail 4908e5c31af7Sopenharmony_ci version 300 es 4909e5c31af7Sopenharmony_ci 4910e5c31af7Sopenharmony_ci both "" 4911e5c31af7Sopenharmony_ci #version 300 es 4912e5c31af7Sopenharmony_ci precision mediump float; 4913e5c31af7Sopenharmony_ci precision mediump int; 4914e5c31af7Sopenharmony_ci 4915e5c31af7Sopenharmony_ci ${DECLARATIONS} 4916e5c31af7Sopenharmony_ci 4917e5c31af7Sopenharmony_ci void main() 4918e5c31af7Sopenharmony_ci { 4919e5c31af7Sopenharmony_ci uvec3 c; 4920e5c31af7Sopenharmony_ci vec3 a; 4921e5c31af7Sopenharmony_ci uvec3 b; 4922e5c31af7Sopenharmony_ci uvec3 c = a - b; 4923e5c31af7Sopenharmony_ci } 4924e5c31af7Sopenharmony_ci "" 4925e5c31af7Sopenharmony_ci end 4926e5c31af7Sopenharmony_ci case sub_vec3_uvec4_vec3 4927e5c31af7Sopenharmony_ci expect compile_fail 4928e5c31af7Sopenharmony_ci version 300 es 4929e5c31af7Sopenharmony_ci 4930e5c31af7Sopenharmony_ci both "" 4931e5c31af7Sopenharmony_ci #version 300 es 4932e5c31af7Sopenharmony_ci precision mediump float; 4933e5c31af7Sopenharmony_ci precision mediump int; 4934e5c31af7Sopenharmony_ci 4935e5c31af7Sopenharmony_ci ${DECLARATIONS} 4936e5c31af7Sopenharmony_ci 4937e5c31af7Sopenharmony_ci void main() 4938e5c31af7Sopenharmony_ci { 4939e5c31af7Sopenharmony_ci vec3 c; 4940e5c31af7Sopenharmony_ci vec3 a; 4941e5c31af7Sopenharmony_ci uvec4 b; 4942e5c31af7Sopenharmony_ci vec3 c = a - b; 4943e5c31af7Sopenharmony_ci } 4944e5c31af7Sopenharmony_ci "" 4945e5c31af7Sopenharmony_ci end 4946e5c31af7Sopenharmony_ci case sub_vec3_uvec4_uvec4 4947e5c31af7Sopenharmony_ci expect compile_fail 4948e5c31af7Sopenharmony_ci version 300 es 4949e5c31af7Sopenharmony_ci 4950e5c31af7Sopenharmony_ci both "" 4951e5c31af7Sopenharmony_ci #version 300 es 4952e5c31af7Sopenharmony_ci precision mediump float; 4953e5c31af7Sopenharmony_ci precision mediump int; 4954e5c31af7Sopenharmony_ci 4955e5c31af7Sopenharmony_ci ${DECLARATIONS} 4956e5c31af7Sopenharmony_ci 4957e5c31af7Sopenharmony_ci void main() 4958e5c31af7Sopenharmony_ci { 4959e5c31af7Sopenharmony_ci uvec4 c; 4960e5c31af7Sopenharmony_ci vec3 a; 4961e5c31af7Sopenharmony_ci uvec4 b; 4962e5c31af7Sopenharmony_ci uvec4 c = a - b; 4963e5c31af7Sopenharmony_ci } 4964e5c31af7Sopenharmony_ci "" 4965e5c31af7Sopenharmony_ci end 4966e5c31af7Sopenharmony_ci case sub_vec4_uint_vec4 4967e5c31af7Sopenharmony_ci expect compile_fail 4968e5c31af7Sopenharmony_ci version 300 es 4969e5c31af7Sopenharmony_ci 4970e5c31af7Sopenharmony_ci both "" 4971e5c31af7Sopenharmony_ci #version 300 es 4972e5c31af7Sopenharmony_ci precision mediump float; 4973e5c31af7Sopenharmony_ci precision mediump int; 4974e5c31af7Sopenharmony_ci 4975e5c31af7Sopenharmony_ci ${DECLARATIONS} 4976e5c31af7Sopenharmony_ci 4977e5c31af7Sopenharmony_ci void main() 4978e5c31af7Sopenharmony_ci { 4979e5c31af7Sopenharmony_ci vec4 c; 4980e5c31af7Sopenharmony_ci vec4 a; 4981e5c31af7Sopenharmony_ci uint b; 4982e5c31af7Sopenharmony_ci vec4 c = a - b; 4983e5c31af7Sopenharmony_ci } 4984e5c31af7Sopenharmony_ci "" 4985e5c31af7Sopenharmony_ci end 4986e5c31af7Sopenharmony_ci case sub_vec4_uint_uint 4987e5c31af7Sopenharmony_ci expect compile_fail 4988e5c31af7Sopenharmony_ci version 300 es 4989e5c31af7Sopenharmony_ci 4990e5c31af7Sopenharmony_ci both "" 4991e5c31af7Sopenharmony_ci #version 300 es 4992e5c31af7Sopenharmony_ci precision mediump float; 4993e5c31af7Sopenharmony_ci precision mediump int; 4994e5c31af7Sopenharmony_ci 4995e5c31af7Sopenharmony_ci ${DECLARATIONS} 4996e5c31af7Sopenharmony_ci 4997e5c31af7Sopenharmony_ci void main() 4998e5c31af7Sopenharmony_ci { 4999e5c31af7Sopenharmony_ci uint c; 5000e5c31af7Sopenharmony_ci vec4 a; 5001e5c31af7Sopenharmony_ci uint b; 5002e5c31af7Sopenharmony_ci uint c = a - b; 5003e5c31af7Sopenharmony_ci } 5004e5c31af7Sopenharmony_ci "" 5005e5c31af7Sopenharmony_ci end 5006e5c31af7Sopenharmony_ci case sub_vec4_uvec2_vec4 5007e5c31af7Sopenharmony_ci expect compile_fail 5008e5c31af7Sopenharmony_ci version 300 es 5009e5c31af7Sopenharmony_ci 5010e5c31af7Sopenharmony_ci both "" 5011e5c31af7Sopenharmony_ci #version 300 es 5012e5c31af7Sopenharmony_ci precision mediump float; 5013e5c31af7Sopenharmony_ci precision mediump int; 5014e5c31af7Sopenharmony_ci 5015e5c31af7Sopenharmony_ci ${DECLARATIONS} 5016e5c31af7Sopenharmony_ci 5017e5c31af7Sopenharmony_ci void main() 5018e5c31af7Sopenharmony_ci { 5019e5c31af7Sopenharmony_ci vec4 c; 5020e5c31af7Sopenharmony_ci vec4 a; 5021e5c31af7Sopenharmony_ci uvec2 b; 5022e5c31af7Sopenharmony_ci vec4 c = a - b; 5023e5c31af7Sopenharmony_ci } 5024e5c31af7Sopenharmony_ci "" 5025e5c31af7Sopenharmony_ci end 5026e5c31af7Sopenharmony_ci case sub_vec4_uvec2_uvec2 5027e5c31af7Sopenharmony_ci expect compile_fail 5028e5c31af7Sopenharmony_ci version 300 es 5029e5c31af7Sopenharmony_ci 5030e5c31af7Sopenharmony_ci both "" 5031e5c31af7Sopenharmony_ci #version 300 es 5032e5c31af7Sopenharmony_ci precision mediump float; 5033e5c31af7Sopenharmony_ci precision mediump int; 5034e5c31af7Sopenharmony_ci 5035e5c31af7Sopenharmony_ci ${DECLARATIONS} 5036e5c31af7Sopenharmony_ci 5037e5c31af7Sopenharmony_ci void main() 5038e5c31af7Sopenharmony_ci { 5039e5c31af7Sopenharmony_ci uvec2 c; 5040e5c31af7Sopenharmony_ci vec4 a; 5041e5c31af7Sopenharmony_ci uvec2 b; 5042e5c31af7Sopenharmony_ci uvec2 c = a - b; 5043e5c31af7Sopenharmony_ci } 5044e5c31af7Sopenharmony_ci "" 5045e5c31af7Sopenharmony_ci end 5046e5c31af7Sopenharmony_ci case sub_vec4_uvec3_vec4 5047e5c31af7Sopenharmony_ci expect compile_fail 5048e5c31af7Sopenharmony_ci version 300 es 5049e5c31af7Sopenharmony_ci 5050e5c31af7Sopenharmony_ci both "" 5051e5c31af7Sopenharmony_ci #version 300 es 5052e5c31af7Sopenharmony_ci precision mediump float; 5053e5c31af7Sopenharmony_ci precision mediump int; 5054e5c31af7Sopenharmony_ci 5055e5c31af7Sopenharmony_ci ${DECLARATIONS} 5056e5c31af7Sopenharmony_ci 5057e5c31af7Sopenharmony_ci void main() 5058e5c31af7Sopenharmony_ci { 5059e5c31af7Sopenharmony_ci vec4 c; 5060e5c31af7Sopenharmony_ci vec4 a; 5061e5c31af7Sopenharmony_ci uvec3 b; 5062e5c31af7Sopenharmony_ci vec4 c = a - b; 5063e5c31af7Sopenharmony_ci } 5064e5c31af7Sopenharmony_ci "" 5065e5c31af7Sopenharmony_ci end 5066e5c31af7Sopenharmony_ci case sub_vec4_uvec3_uvec3 5067e5c31af7Sopenharmony_ci expect compile_fail 5068e5c31af7Sopenharmony_ci version 300 es 5069e5c31af7Sopenharmony_ci 5070e5c31af7Sopenharmony_ci both "" 5071e5c31af7Sopenharmony_ci #version 300 es 5072e5c31af7Sopenharmony_ci precision mediump float; 5073e5c31af7Sopenharmony_ci precision mediump int; 5074e5c31af7Sopenharmony_ci 5075e5c31af7Sopenharmony_ci ${DECLARATIONS} 5076e5c31af7Sopenharmony_ci 5077e5c31af7Sopenharmony_ci void main() 5078e5c31af7Sopenharmony_ci { 5079e5c31af7Sopenharmony_ci uvec3 c; 5080e5c31af7Sopenharmony_ci vec4 a; 5081e5c31af7Sopenharmony_ci uvec3 b; 5082e5c31af7Sopenharmony_ci uvec3 c = a - b; 5083e5c31af7Sopenharmony_ci } 5084e5c31af7Sopenharmony_ci "" 5085e5c31af7Sopenharmony_ci end 5086e5c31af7Sopenharmony_ci case sub_vec4_uvec4_vec4 5087e5c31af7Sopenharmony_ci expect compile_fail 5088e5c31af7Sopenharmony_ci version 300 es 5089e5c31af7Sopenharmony_ci 5090e5c31af7Sopenharmony_ci both "" 5091e5c31af7Sopenharmony_ci #version 300 es 5092e5c31af7Sopenharmony_ci precision mediump float; 5093e5c31af7Sopenharmony_ci precision mediump int; 5094e5c31af7Sopenharmony_ci 5095e5c31af7Sopenharmony_ci ${DECLARATIONS} 5096e5c31af7Sopenharmony_ci 5097e5c31af7Sopenharmony_ci void main() 5098e5c31af7Sopenharmony_ci { 5099e5c31af7Sopenharmony_ci vec4 c; 5100e5c31af7Sopenharmony_ci vec4 a; 5101e5c31af7Sopenharmony_ci uvec4 b; 5102e5c31af7Sopenharmony_ci vec4 c = a - b; 5103e5c31af7Sopenharmony_ci } 5104e5c31af7Sopenharmony_ci "" 5105e5c31af7Sopenharmony_ci end 5106e5c31af7Sopenharmony_ci case sub_vec4_uvec4_uvec4 5107e5c31af7Sopenharmony_ci expect compile_fail 5108e5c31af7Sopenharmony_ci version 300 es 5109e5c31af7Sopenharmony_ci 5110e5c31af7Sopenharmony_ci both "" 5111e5c31af7Sopenharmony_ci #version 300 es 5112e5c31af7Sopenharmony_ci precision mediump float; 5113e5c31af7Sopenharmony_ci precision mediump int; 5114e5c31af7Sopenharmony_ci 5115e5c31af7Sopenharmony_ci ${DECLARATIONS} 5116e5c31af7Sopenharmony_ci 5117e5c31af7Sopenharmony_ci void main() 5118e5c31af7Sopenharmony_ci { 5119e5c31af7Sopenharmony_ci uvec4 c; 5120e5c31af7Sopenharmony_ci vec4 a; 5121e5c31af7Sopenharmony_ci uvec4 b; 5122e5c31af7Sopenharmony_ci uvec4 c = a - b; 5123e5c31af7Sopenharmony_ci } 5124e5c31af7Sopenharmony_ci "" 5125e5c31af7Sopenharmony_ci end 5126e5c31af7Sopenharmony_ci case sub_int_uint_int 5127e5c31af7Sopenharmony_ci expect compile_fail 5128e5c31af7Sopenharmony_ci version 300 es 5129e5c31af7Sopenharmony_ci 5130e5c31af7Sopenharmony_ci both "" 5131e5c31af7Sopenharmony_ci #version 300 es 5132e5c31af7Sopenharmony_ci precision mediump float; 5133e5c31af7Sopenharmony_ci precision mediump int; 5134e5c31af7Sopenharmony_ci 5135e5c31af7Sopenharmony_ci ${DECLARATIONS} 5136e5c31af7Sopenharmony_ci 5137e5c31af7Sopenharmony_ci void main() 5138e5c31af7Sopenharmony_ci { 5139e5c31af7Sopenharmony_ci int c; 5140e5c31af7Sopenharmony_ci int a; 5141e5c31af7Sopenharmony_ci uint b; 5142e5c31af7Sopenharmony_ci int c = a - b; 5143e5c31af7Sopenharmony_ci } 5144e5c31af7Sopenharmony_ci "" 5145e5c31af7Sopenharmony_ci end 5146e5c31af7Sopenharmony_ci case sub_int_uint_uint 5147e5c31af7Sopenharmony_ci expect compile_fail 5148e5c31af7Sopenharmony_ci version 300 es 5149e5c31af7Sopenharmony_ci 5150e5c31af7Sopenharmony_ci both "" 5151e5c31af7Sopenharmony_ci #version 300 es 5152e5c31af7Sopenharmony_ci precision mediump float; 5153e5c31af7Sopenharmony_ci precision mediump int; 5154e5c31af7Sopenharmony_ci 5155e5c31af7Sopenharmony_ci ${DECLARATIONS} 5156e5c31af7Sopenharmony_ci 5157e5c31af7Sopenharmony_ci void main() 5158e5c31af7Sopenharmony_ci { 5159e5c31af7Sopenharmony_ci uint c; 5160e5c31af7Sopenharmony_ci int a; 5161e5c31af7Sopenharmony_ci uint b; 5162e5c31af7Sopenharmony_ci uint c = a - b; 5163e5c31af7Sopenharmony_ci } 5164e5c31af7Sopenharmony_ci "" 5165e5c31af7Sopenharmony_ci end 5166e5c31af7Sopenharmony_ci case sub_int_uvec2_int 5167e5c31af7Sopenharmony_ci expect compile_fail 5168e5c31af7Sopenharmony_ci version 300 es 5169e5c31af7Sopenharmony_ci 5170e5c31af7Sopenharmony_ci both "" 5171e5c31af7Sopenharmony_ci #version 300 es 5172e5c31af7Sopenharmony_ci precision mediump float; 5173e5c31af7Sopenharmony_ci precision mediump int; 5174e5c31af7Sopenharmony_ci 5175e5c31af7Sopenharmony_ci ${DECLARATIONS} 5176e5c31af7Sopenharmony_ci 5177e5c31af7Sopenharmony_ci void main() 5178e5c31af7Sopenharmony_ci { 5179e5c31af7Sopenharmony_ci int c; 5180e5c31af7Sopenharmony_ci int a; 5181e5c31af7Sopenharmony_ci uvec2 b; 5182e5c31af7Sopenharmony_ci int c = a - b; 5183e5c31af7Sopenharmony_ci } 5184e5c31af7Sopenharmony_ci "" 5185e5c31af7Sopenharmony_ci end 5186e5c31af7Sopenharmony_ci case sub_int_uvec2_uvec2 5187e5c31af7Sopenharmony_ci expect compile_fail 5188e5c31af7Sopenharmony_ci version 300 es 5189e5c31af7Sopenharmony_ci 5190e5c31af7Sopenharmony_ci both "" 5191e5c31af7Sopenharmony_ci #version 300 es 5192e5c31af7Sopenharmony_ci precision mediump float; 5193e5c31af7Sopenharmony_ci precision mediump int; 5194e5c31af7Sopenharmony_ci 5195e5c31af7Sopenharmony_ci ${DECLARATIONS} 5196e5c31af7Sopenharmony_ci 5197e5c31af7Sopenharmony_ci void main() 5198e5c31af7Sopenharmony_ci { 5199e5c31af7Sopenharmony_ci uvec2 c; 5200e5c31af7Sopenharmony_ci int a; 5201e5c31af7Sopenharmony_ci uvec2 b; 5202e5c31af7Sopenharmony_ci uvec2 c = a - b; 5203e5c31af7Sopenharmony_ci } 5204e5c31af7Sopenharmony_ci "" 5205e5c31af7Sopenharmony_ci end 5206e5c31af7Sopenharmony_ci case sub_int_uvec3_int 5207e5c31af7Sopenharmony_ci expect compile_fail 5208e5c31af7Sopenharmony_ci version 300 es 5209e5c31af7Sopenharmony_ci 5210e5c31af7Sopenharmony_ci both "" 5211e5c31af7Sopenharmony_ci #version 300 es 5212e5c31af7Sopenharmony_ci precision mediump float; 5213e5c31af7Sopenharmony_ci precision mediump int; 5214e5c31af7Sopenharmony_ci 5215e5c31af7Sopenharmony_ci ${DECLARATIONS} 5216e5c31af7Sopenharmony_ci 5217e5c31af7Sopenharmony_ci void main() 5218e5c31af7Sopenharmony_ci { 5219e5c31af7Sopenharmony_ci int c; 5220e5c31af7Sopenharmony_ci int a; 5221e5c31af7Sopenharmony_ci uvec3 b; 5222e5c31af7Sopenharmony_ci int c = a - b; 5223e5c31af7Sopenharmony_ci } 5224e5c31af7Sopenharmony_ci "" 5225e5c31af7Sopenharmony_ci end 5226e5c31af7Sopenharmony_ci case sub_int_uvec3_uvec3 5227e5c31af7Sopenharmony_ci expect compile_fail 5228e5c31af7Sopenharmony_ci version 300 es 5229e5c31af7Sopenharmony_ci 5230e5c31af7Sopenharmony_ci both "" 5231e5c31af7Sopenharmony_ci #version 300 es 5232e5c31af7Sopenharmony_ci precision mediump float; 5233e5c31af7Sopenharmony_ci precision mediump int; 5234e5c31af7Sopenharmony_ci 5235e5c31af7Sopenharmony_ci ${DECLARATIONS} 5236e5c31af7Sopenharmony_ci 5237e5c31af7Sopenharmony_ci void main() 5238e5c31af7Sopenharmony_ci { 5239e5c31af7Sopenharmony_ci uvec3 c; 5240e5c31af7Sopenharmony_ci int a; 5241e5c31af7Sopenharmony_ci uvec3 b; 5242e5c31af7Sopenharmony_ci uvec3 c = a - b; 5243e5c31af7Sopenharmony_ci } 5244e5c31af7Sopenharmony_ci "" 5245e5c31af7Sopenharmony_ci end 5246e5c31af7Sopenharmony_ci case sub_int_uvec4_int 5247e5c31af7Sopenharmony_ci expect compile_fail 5248e5c31af7Sopenharmony_ci version 300 es 5249e5c31af7Sopenharmony_ci 5250e5c31af7Sopenharmony_ci both "" 5251e5c31af7Sopenharmony_ci #version 300 es 5252e5c31af7Sopenharmony_ci precision mediump float; 5253e5c31af7Sopenharmony_ci precision mediump int; 5254e5c31af7Sopenharmony_ci 5255e5c31af7Sopenharmony_ci ${DECLARATIONS} 5256e5c31af7Sopenharmony_ci 5257e5c31af7Sopenharmony_ci void main() 5258e5c31af7Sopenharmony_ci { 5259e5c31af7Sopenharmony_ci int c; 5260e5c31af7Sopenharmony_ci int a; 5261e5c31af7Sopenharmony_ci uvec4 b; 5262e5c31af7Sopenharmony_ci int c = a - b; 5263e5c31af7Sopenharmony_ci } 5264e5c31af7Sopenharmony_ci "" 5265e5c31af7Sopenharmony_ci end 5266e5c31af7Sopenharmony_ci case sub_int_uvec4_uvec4 5267e5c31af7Sopenharmony_ci expect compile_fail 5268e5c31af7Sopenharmony_ci version 300 es 5269e5c31af7Sopenharmony_ci 5270e5c31af7Sopenharmony_ci both "" 5271e5c31af7Sopenharmony_ci #version 300 es 5272e5c31af7Sopenharmony_ci precision mediump float; 5273e5c31af7Sopenharmony_ci precision mediump int; 5274e5c31af7Sopenharmony_ci 5275e5c31af7Sopenharmony_ci ${DECLARATIONS} 5276e5c31af7Sopenharmony_ci 5277e5c31af7Sopenharmony_ci void main() 5278e5c31af7Sopenharmony_ci { 5279e5c31af7Sopenharmony_ci uvec4 c; 5280e5c31af7Sopenharmony_ci int a; 5281e5c31af7Sopenharmony_ci uvec4 b; 5282e5c31af7Sopenharmony_ci uvec4 c = a - b; 5283e5c31af7Sopenharmony_ci } 5284e5c31af7Sopenharmony_ci "" 5285e5c31af7Sopenharmony_ci end 5286e5c31af7Sopenharmony_ci case sub_ivec2_uint_ivec2 5287e5c31af7Sopenharmony_ci expect compile_fail 5288e5c31af7Sopenharmony_ci version 300 es 5289e5c31af7Sopenharmony_ci 5290e5c31af7Sopenharmony_ci both "" 5291e5c31af7Sopenharmony_ci #version 300 es 5292e5c31af7Sopenharmony_ci precision mediump float; 5293e5c31af7Sopenharmony_ci precision mediump int; 5294e5c31af7Sopenharmony_ci 5295e5c31af7Sopenharmony_ci ${DECLARATIONS} 5296e5c31af7Sopenharmony_ci 5297e5c31af7Sopenharmony_ci void main() 5298e5c31af7Sopenharmony_ci { 5299e5c31af7Sopenharmony_ci ivec2 c; 5300e5c31af7Sopenharmony_ci ivec2 a; 5301e5c31af7Sopenharmony_ci uint b; 5302e5c31af7Sopenharmony_ci ivec2 c = a - b; 5303e5c31af7Sopenharmony_ci } 5304e5c31af7Sopenharmony_ci "" 5305e5c31af7Sopenharmony_ci end 5306e5c31af7Sopenharmony_ci case sub_ivec2_uint_uint 5307e5c31af7Sopenharmony_ci expect compile_fail 5308e5c31af7Sopenharmony_ci version 300 es 5309e5c31af7Sopenharmony_ci 5310e5c31af7Sopenharmony_ci both "" 5311e5c31af7Sopenharmony_ci #version 300 es 5312e5c31af7Sopenharmony_ci precision mediump float; 5313e5c31af7Sopenharmony_ci precision mediump int; 5314e5c31af7Sopenharmony_ci 5315e5c31af7Sopenharmony_ci ${DECLARATIONS} 5316e5c31af7Sopenharmony_ci 5317e5c31af7Sopenharmony_ci void main() 5318e5c31af7Sopenharmony_ci { 5319e5c31af7Sopenharmony_ci uint c; 5320e5c31af7Sopenharmony_ci ivec2 a; 5321e5c31af7Sopenharmony_ci uint b; 5322e5c31af7Sopenharmony_ci uint c = a - b; 5323e5c31af7Sopenharmony_ci } 5324e5c31af7Sopenharmony_ci "" 5325e5c31af7Sopenharmony_ci end 5326e5c31af7Sopenharmony_ci case sub_ivec2_uvec2_ivec2 5327e5c31af7Sopenharmony_ci expect compile_fail 5328e5c31af7Sopenharmony_ci version 300 es 5329e5c31af7Sopenharmony_ci 5330e5c31af7Sopenharmony_ci both "" 5331e5c31af7Sopenharmony_ci #version 300 es 5332e5c31af7Sopenharmony_ci precision mediump float; 5333e5c31af7Sopenharmony_ci precision mediump int; 5334e5c31af7Sopenharmony_ci 5335e5c31af7Sopenharmony_ci ${DECLARATIONS} 5336e5c31af7Sopenharmony_ci 5337e5c31af7Sopenharmony_ci void main() 5338e5c31af7Sopenharmony_ci { 5339e5c31af7Sopenharmony_ci ivec2 c; 5340e5c31af7Sopenharmony_ci ivec2 a; 5341e5c31af7Sopenharmony_ci uvec2 b; 5342e5c31af7Sopenharmony_ci ivec2 c = a - b; 5343e5c31af7Sopenharmony_ci } 5344e5c31af7Sopenharmony_ci "" 5345e5c31af7Sopenharmony_ci end 5346e5c31af7Sopenharmony_ci case sub_ivec2_uvec2_uvec2 5347e5c31af7Sopenharmony_ci expect compile_fail 5348e5c31af7Sopenharmony_ci version 300 es 5349e5c31af7Sopenharmony_ci 5350e5c31af7Sopenharmony_ci both "" 5351e5c31af7Sopenharmony_ci #version 300 es 5352e5c31af7Sopenharmony_ci precision mediump float; 5353e5c31af7Sopenharmony_ci precision mediump int; 5354e5c31af7Sopenharmony_ci 5355e5c31af7Sopenharmony_ci ${DECLARATIONS} 5356e5c31af7Sopenharmony_ci 5357e5c31af7Sopenharmony_ci void main() 5358e5c31af7Sopenharmony_ci { 5359e5c31af7Sopenharmony_ci uvec2 c; 5360e5c31af7Sopenharmony_ci ivec2 a; 5361e5c31af7Sopenharmony_ci uvec2 b; 5362e5c31af7Sopenharmony_ci uvec2 c = a - b; 5363e5c31af7Sopenharmony_ci } 5364e5c31af7Sopenharmony_ci "" 5365e5c31af7Sopenharmony_ci end 5366e5c31af7Sopenharmony_ci case sub_ivec2_uvec3_ivec2 5367e5c31af7Sopenharmony_ci expect compile_fail 5368e5c31af7Sopenharmony_ci version 300 es 5369e5c31af7Sopenharmony_ci 5370e5c31af7Sopenharmony_ci both "" 5371e5c31af7Sopenharmony_ci #version 300 es 5372e5c31af7Sopenharmony_ci precision mediump float; 5373e5c31af7Sopenharmony_ci precision mediump int; 5374e5c31af7Sopenharmony_ci 5375e5c31af7Sopenharmony_ci ${DECLARATIONS} 5376e5c31af7Sopenharmony_ci 5377e5c31af7Sopenharmony_ci void main() 5378e5c31af7Sopenharmony_ci { 5379e5c31af7Sopenharmony_ci ivec2 c; 5380e5c31af7Sopenharmony_ci ivec2 a; 5381e5c31af7Sopenharmony_ci uvec3 b; 5382e5c31af7Sopenharmony_ci ivec2 c = a - b; 5383e5c31af7Sopenharmony_ci } 5384e5c31af7Sopenharmony_ci "" 5385e5c31af7Sopenharmony_ci end 5386e5c31af7Sopenharmony_ci case sub_ivec2_uvec3_uvec3 5387e5c31af7Sopenharmony_ci expect compile_fail 5388e5c31af7Sopenharmony_ci version 300 es 5389e5c31af7Sopenharmony_ci 5390e5c31af7Sopenharmony_ci both "" 5391e5c31af7Sopenharmony_ci #version 300 es 5392e5c31af7Sopenharmony_ci precision mediump float; 5393e5c31af7Sopenharmony_ci precision mediump int; 5394e5c31af7Sopenharmony_ci 5395e5c31af7Sopenharmony_ci ${DECLARATIONS} 5396e5c31af7Sopenharmony_ci 5397e5c31af7Sopenharmony_ci void main() 5398e5c31af7Sopenharmony_ci { 5399e5c31af7Sopenharmony_ci uvec3 c; 5400e5c31af7Sopenharmony_ci ivec2 a; 5401e5c31af7Sopenharmony_ci uvec3 b; 5402e5c31af7Sopenharmony_ci uvec3 c = a - b; 5403e5c31af7Sopenharmony_ci } 5404e5c31af7Sopenharmony_ci "" 5405e5c31af7Sopenharmony_ci end 5406e5c31af7Sopenharmony_ci case sub_ivec2_uvec4_ivec2 5407e5c31af7Sopenharmony_ci expect compile_fail 5408e5c31af7Sopenharmony_ci version 300 es 5409e5c31af7Sopenharmony_ci 5410e5c31af7Sopenharmony_ci both "" 5411e5c31af7Sopenharmony_ci #version 300 es 5412e5c31af7Sopenharmony_ci precision mediump float; 5413e5c31af7Sopenharmony_ci precision mediump int; 5414e5c31af7Sopenharmony_ci 5415e5c31af7Sopenharmony_ci ${DECLARATIONS} 5416e5c31af7Sopenharmony_ci 5417e5c31af7Sopenharmony_ci void main() 5418e5c31af7Sopenharmony_ci { 5419e5c31af7Sopenharmony_ci ivec2 c; 5420e5c31af7Sopenharmony_ci ivec2 a; 5421e5c31af7Sopenharmony_ci uvec4 b; 5422e5c31af7Sopenharmony_ci ivec2 c = a - b; 5423e5c31af7Sopenharmony_ci } 5424e5c31af7Sopenharmony_ci "" 5425e5c31af7Sopenharmony_ci end 5426e5c31af7Sopenharmony_ci case sub_ivec2_uvec4_uvec4 5427e5c31af7Sopenharmony_ci expect compile_fail 5428e5c31af7Sopenharmony_ci version 300 es 5429e5c31af7Sopenharmony_ci 5430e5c31af7Sopenharmony_ci both "" 5431e5c31af7Sopenharmony_ci #version 300 es 5432e5c31af7Sopenharmony_ci precision mediump float; 5433e5c31af7Sopenharmony_ci precision mediump int; 5434e5c31af7Sopenharmony_ci 5435e5c31af7Sopenharmony_ci ${DECLARATIONS} 5436e5c31af7Sopenharmony_ci 5437e5c31af7Sopenharmony_ci void main() 5438e5c31af7Sopenharmony_ci { 5439e5c31af7Sopenharmony_ci uvec4 c; 5440e5c31af7Sopenharmony_ci ivec2 a; 5441e5c31af7Sopenharmony_ci uvec4 b; 5442e5c31af7Sopenharmony_ci uvec4 c = a - b; 5443e5c31af7Sopenharmony_ci } 5444e5c31af7Sopenharmony_ci "" 5445e5c31af7Sopenharmony_ci end 5446e5c31af7Sopenharmony_ci case sub_ivec3_uint_ivec3 5447e5c31af7Sopenharmony_ci expect compile_fail 5448e5c31af7Sopenharmony_ci version 300 es 5449e5c31af7Sopenharmony_ci 5450e5c31af7Sopenharmony_ci both "" 5451e5c31af7Sopenharmony_ci #version 300 es 5452e5c31af7Sopenharmony_ci precision mediump float; 5453e5c31af7Sopenharmony_ci precision mediump int; 5454e5c31af7Sopenharmony_ci 5455e5c31af7Sopenharmony_ci ${DECLARATIONS} 5456e5c31af7Sopenharmony_ci 5457e5c31af7Sopenharmony_ci void main() 5458e5c31af7Sopenharmony_ci { 5459e5c31af7Sopenharmony_ci ivec3 c; 5460e5c31af7Sopenharmony_ci ivec3 a; 5461e5c31af7Sopenharmony_ci uint b; 5462e5c31af7Sopenharmony_ci ivec3 c = a - b; 5463e5c31af7Sopenharmony_ci } 5464e5c31af7Sopenharmony_ci "" 5465e5c31af7Sopenharmony_ci end 5466e5c31af7Sopenharmony_ci case sub_ivec3_uint_uint 5467e5c31af7Sopenharmony_ci expect compile_fail 5468e5c31af7Sopenharmony_ci version 300 es 5469e5c31af7Sopenharmony_ci 5470e5c31af7Sopenharmony_ci both "" 5471e5c31af7Sopenharmony_ci #version 300 es 5472e5c31af7Sopenharmony_ci precision mediump float; 5473e5c31af7Sopenharmony_ci precision mediump int; 5474e5c31af7Sopenharmony_ci 5475e5c31af7Sopenharmony_ci ${DECLARATIONS} 5476e5c31af7Sopenharmony_ci 5477e5c31af7Sopenharmony_ci void main() 5478e5c31af7Sopenharmony_ci { 5479e5c31af7Sopenharmony_ci uint c; 5480e5c31af7Sopenharmony_ci ivec3 a; 5481e5c31af7Sopenharmony_ci uint b; 5482e5c31af7Sopenharmony_ci uint c = a - b; 5483e5c31af7Sopenharmony_ci } 5484e5c31af7Sopenharmony_ci "" 5485e5c31af7Sopenharmony_ci end 5486e5c31af7Sopenharmony_ci case sub_ivec3_uvec2_ivec3 5487e5c31af7Sopenharmony_ci expect compile_fail 5488e5c31af7Sopenharmony_ci version 300 es 5489e5c31af7Sopenharmony_ci 5490e5c31af7Sopenharmony_ci both "" 5491e5c31af7Sopenharmony_ci #version 300 es 5492e5c31af7Sopenharmony_ci precision mediump float; 5493e5c31af7Sopenharmony_ci precision mediump int; 5494e5c31af7Sopenharmony_ci 5495e5c31af7Sopenharmony_ci ${DECLARATIONS} 5496e5c31af7Sopenharmony_ci 5497e5c31af7Sopenharmony_ci void main() 5498e5c31af7Sopenharmony_ci { 5499e5c31af7Sopenharmony_ci ivec3 c; 5500e5c31af7Sopenharmony_ci ivec3 a; 5501e5c31af7Sopenharmony_ci uvec2 b; 5502e5c31af7Sopenharmony_ci ivec3 c = a - b; 5503e5c31af7Sopenharmony_ci } 5504e5c31af7Sopenharmony_ci "" 5505e5c31af7Sopenharmony_ci end 5506e5c31af7Sopenharmony_ci case sub_ivec3_uvec2_uvec2 5507e5c31af7Sopenharmony_ci expect compile_fail 5508e5c31af7Sopenharmony_ci version 300 es 5509e5c31af7Sopenharmony_ci 5510e5c31af7Sopenharmony_ci both "" 5511e5c31af7Sopenharmony_ci #version 300 es 5512e5c31af7Sopenharmony_ci precision mediump float; 5513e5c31af7Sopenharmony_ci precision mediump int; 5514e5c31af7Sopenharmony_ci 5515e5c31af7Sopenharmony_ci ${DECLARATIONS} 5516e5c31af7Sopenharmony_ci 5517e5c31af7Sopenharmony_ci void main() 5518e5c31af7Sopenharmony_ci { 5519e5c31af7Sopenharmony_ci uvec2 c; 5520e5c31af7Sopenharmony_ci ivec3 a; 5521e5c31af7Sopenharmony_ci uvec2 b; 5522e5c31af7Sopenharmony_ci uvec2 c = a - b; 5523e5c31af7Sopenharmony_ci } 5524e5c31af7Sopenharmony_ci "" 5525e5c31af7Sopenharmony_ci end 5526e5c31af7Sopenharmony_ci case sub_ivec3_uvec3_ivec3 5527e5c31af7Sopenharmony_ci expect compile_fail 5528e5c31af7Sopenharmony_ci version 300 es 5529e5c31af7Sopenharmony_ci 5530e5c31af7Sopenharmony_ci both "" 5531e5c31af7Sopenharmony_ci #version 300 es 5532e5c31af7Sopenharmony_ci precision mediump float; 5533e5c31af7Sopenharmony_ci precision mediump int; 5534e5c31af7Sopenharmony_ci 5535e5c31af7Sopenharmony_ci ${DECLARATIONS} 5536e5c31af7Sopenharmony_ci 5537e5c31af7Sopenharmony_ci void main() 5538e5c31af7Sopenharmony_ci { 5539e5c31af7Sopenharmony_ci ivec3 c; 5540e5c31af7Sopenharmony_ci ivec3 a; 5541e5c31af7Sopenharmony_ci uvec3 b; 5542e5c31af7Sopenharmony_ci ivec3 c = a - b; 5543e5c31af7Sopenharmony_ci } 5544e5c31af7Sopenharmony_ci "" 5545e5c31af7Sopenharmony_ci end 5546e5c31af7Sopenharmony_ci case sub_ivec3_uvec3_uvec3 5547e5c31af7Sopenharmony_ci expect compile_fail 5548e5c31af7Sopenharmony_ci version 300 es 5549e5c31af7Sopenharmony_ci 5550e5c31af7Sopenharmony_ci both "" 5551e5c31af7Sopenharmony_ci #version 300 es 5552e5c31af7Sopenharmony_ci precision mediump float; 5553e5c31af7Sopenharmony_ci precision mediump int; 5554e5c31af7Sopenharmony_ci 5555e5c31af7Sopenharmony_ci ${DECLARATIONS} 5556e5c31af7Sopenharmony_ci 5557e5c31af7Sopenharmony_ci void main() 5558e5c31af7Sopenharmony_ci { 5559e5c31af7Sopenharmony_ci uvec3 c; 5560e5c31af7Sopenharmony_ci ivec3 a; 5561e5c31af7Sopenharmony_ci uvec3 b; 5562e5c31af7Sopenharmony_ci uvec3 c = a - b; 5563e5c31af7Sopenharmony_ci } 5564e5c31af7Sopenharmony_ci "" 5565e5c31af7Sopenharmony_ci end 5566e5c31af7Sopenharmony_ci case sub_ivec3_uvec4_ivec3 5567e5c31af7Sopenharmony_ci expect compile_fail 5568e5c31af7Sopenharmony_ci version 300 es 5569e5c31af7Sopenharmony_ci 5570e5c31af7Sopenharmony_ci both "" 5571e5c31af7Sopenharmony_ci #version 300 es 5572e5c31af7Sopenharmony_ci precision mediump float; 5573e5c31af7Sopenharmony_ci precision mediump int; 5574e5c31af7Sopenharmony_ci 5575e5c31af7Sopenharmony_ci ${DECLARATIONS} 5576e5c31af7Sopenharmony_ci 5577e5c31af7Sopenharmony_ci void main() 5578e5c31af7Sopenharmony_ci { 5579e5c31af7Sopenharmony_ci ivec3 c; 5580e5c31af7Sopenharmony_ci ivec3 a; 5581e5c31af7Sopenharmony_ci uvec4 b; 5582e5c31af7Sopenharmony_ci ivec3 c = a - b; 5583e5c31af7Sopenharmony_ci } 5584e5c31af7Sopenharmony_ci "" 5585e5c31af7Sopenharmony_ci end 5586e5c31af7Sopenharmony_ci case sub_ivec3_uvec4_uvec4 5587e5c31af7Sopenharmony_ci expect compile_fail 5588e5c31af7Sopenharmony_ci version 300 es 5589e5c31af7Sopenharmony_ci 5590e5c31af7Sopenharmony_ci both "" 5591e5c31af7Sopenharmony_ci #version 300 es 5592e5c31af7Sopenharmony_ci precision mediump float; 5593e5c31af7Sopenharmony_ci precision mediump int; 5594e5c31af7Sopenharmony_ci 5595e5c31af7Sopenharmony_ci ${DECLARATIONS} 5596e5c31af7Sopenharmony_ci 5597e5c31af7Sopenharmony_ci void main() 5598e5c31af7Sopenharmony_ci { 5599e5c31af7Sopenharmony_ci uvec4 c; 5600e5c31af7Sopenharmony_ci ivec3 a; 5601e5c31af7Sopenharmony_ci uvec4 b; 5602e5c31af7Sopenharmony_ci uvec4 c = a - b; 5603e5c31af7Sopenharmony_ci } 5604e5c31af7Sopenharmony_ci "" 5605e5c31af7Sopenharmony_ci end 5606e5c31af7Sopenharmony_ci case sub_ivec4_uint_ivec4 5607e5c31af7Sopenharmony_ci expect compile_fail 5608e5c31af7Sopenharmony_ci version 300 es 5609e5c31af7Sopenharmony_ci 5610e5c31af7Sopenharmony_ci both "" 5611e5c31af7Sopenharmony_ci #version 300 es 5612e5c31af7Sopenharmony_ci precision mediump float; 5613e5c31af7Sopenharmony_ci precision mediump int; 5614e5c31af7Sopenharmony_ci 5615e5c31af7Sopenharmony_ci ${DECLARATIONS} 5616e5c31af7Sopenharmony_ci 5617e5c31af7Sopenharmony_ci void main() 5618e5c31af7Sopenharmony_ci { 5619e5c31af7Sopenharmony_ci ivec4 c; 5620e5c31af7Sopenharmony_ci ivec4 a; 5621e5c31af7Sopenharmony_ci uint b; 5622e5c31af7Sopenharmony_ci ivec4 c = a - b; 5623e5c31af7Sopenharmony_ci } 5624e5c31af7Sopenharmony_ci "" 5625e5c31af7Sopenharmony_ci end 5626e5c31af7Sopenharmony_ci case sub_ivec4_uint_uint 5627e5c31af7Sopenharmony_ci expect compile_fail 5628e5c31af7Sopenharmony_ci version 300 es 5629e5c31af7Sopenharmony_ci 5630e5c31af7Sopenharmony_ci both "" 5631e5c31af7Sopenharmony_ci #version 300 es 5632e5c31af7Sopenharmony_ci precision mediump float; 5633e5c31af7Sopenharmony_ci precision mediump int; 5634e5c31af7Sopenharmony_ci 5635e5c31af7Sopenharmony_ci ${DECLARATIONS} 5636e5c31af7Sopenharmony_ci 5637e5c31af7Sopenharmony_ci void main() 5638e5c31af7Sopenharmony_ci { 5639e5c31af7Sopenharmony_ci uint c; 5640e5c31af7Sopenharmony_ci ivec4 a; 5641e5c31af7Sopenharmony_ci uint b; 5642e5c31af7Sopenharmony_ci uint c = a - b; 5643e5c31af7Sopenharmony_ci } 5644e5c31af7Sopenharmony_ci "" 5645e5c31af7Sopenharmony_ci end 5646e5c31af7Sopenharmony_ci case sub_ivec4_uvec2_ivec4 5647e5c31af7Sopenharmony_ci expect compile_fail 5648e5c31af7Sopenharmony_ci version 300 es 5649e5c31af7Sopenharmony_ci 5650e5c31af7Sopenharmony_ci both "" 5651e5c31af7Sopenharmony_ci #version 300 es 5652e5c31af7Sopenharmony_ci precision mediump float; 5653e5c31af7Sopenharmony_ci precision mediump int; 5654e5c31af7Sopenharmony_ci 5655e5c31af7Sopenharmony_ci ${DECLARATIONS} 5656e5c31af7Sopenharmony_ci 5657e5c31af7Sopenharmony_ci void main() 5658e5c31af7Sopenharmony_ci { 5659e5c31af7Sopenharmony_ci ivec4 c; 5660e5c31af7Sopenharmony_ci ivec4 a; 5661e5c31af7Sopenharmony_ci uvec2 b; 5662e5c31af7Sopenharmony_ci ivec4 c = a - b; 5663e5c31af7Sopenharmony_ci } 5664e5c31af7Sopenharmony_ci "" 5665e5c31af7Sopenharmony_ci end 5666e5c31af7Sopenharmony_ci case sub_ivec4_uvec2_uvec2 5667e5c31af7Sopenharmony_ci expect compile_fail 5668e5c31af7Sopenharmony_ci version 300 es 5669e5c31af7Sopenharmony_ci 5670e5c31af7Sopenharmony_ci both "" 5671e5c31af7Sopenharmony_ci #version 300 es 5672e5c31af7Sopenharmony_ci precision mediump float; 5673e5c31af7Sopenharmony_ci precision mediump int; 5674e5c31af7Sopenharmony_ci 5675e5c31af7Sopenharmony_ci ${DECLARATIONS} 5676e5c31af7Sopenharmony_ci 5677e5c31af7Sopenharmony_ci void main() 5678e5c31af7Sopenharmony_ci { 5679e5c31af7Sopenharmony_ci uvec2 c; 5680e5c31af7Sopenharmony_ci ivec4 a; 5681e5c31af7Sopenharmony_ci uvec2 b; 5682e5c31af7Sopenharmony_ci uvec2 c = a - b; 5683e5c31af7Sopenharmony_ci } 5684e5c31af7Sopenharmony_ci "" 5685e5c31af7Sopenharmony_ci end 5686e5c31af7Sopenharmony_ci case sub_ivec4_uvec3_ivec4 5687e5c31af7Sopenharmony_ci expect compile_fail 5688e5c31af7Sopenharmony_ci version 300 es 5689e5c31af7Sopenharmony_ci 5690e5c31af7Sopenharmony_ci both "" 5691e5c31af7Sopenharmony_ci #version 300 es 5692e5c31af7Sopenharmony_ci precision mediump float; 5693e5c31af7Sopenharmony_ci precision mediump int; 5694e5c31af7Sopenharmony_ci 5695e5c31af7Sopenharmony_ci ${DECLARATIONS} 5696e5c31af7Sopenharmony_ci 5697e5c31af7Sopenharmony_ci void main() 5698e5c31af7Sopenharmony_ci { 5699e5c31af7Sopenharmony_ci ivec4 c; 5700e5c31af7Sopenharmony_ci ivec4 a; 5701e5c31af7Sopenharmony_ci uvec3 b; 5702e5c31af7Sopenharmony_ci ivec4 c = a - b; 5703e5c31af7Sopenharmony_ci } 5704e5c31af7Sopenharmony_ci "" 5705e5c31af7Sopenharmony_ci end 5706e5c31af7Sopenharmony_ci case sub_ivec4_uvec3_uvec3 5707e5c31af7Sopenharmony_ci expect compile_fail 5708e5c31af7Sopenharmony_ci version 300 es 5709e5c31af7Sopenharmony_ci 5710e5c31af7Sopenharmony_ci both "" 5711e5c31af7Sopenharmony_ci #version 300 es 5712e5c31af7Sopenharmony_ci precision mediump float; 5713e5c31af7Sopenharmony_ci precision mediump int; 5714e5c31af7Sopenharmony_ci 5715e5c31af7Sopenharmony_ci ${DECLARATIONS} 5716e5c31af7Sopenharmony_ci 5717e5c31af7Sopenharmony_ci void main() 5718e5c31af7Sopenharmony_ci { 5719e5c31af7Sopenharmony_ci uvec3 c; 5720e5c31af7Sopenharmony_ci ivec4 a; 5721e5c31af7Sopenharmony_ci uvec3 b; 5722e5c31af7Sopenharmony_ci uvec3 c = a - b; 5723e5c31af7Sopenharmony_ci } 5724e5c31af7Sopenharmony_ci "" 5725e5c31af7Sopenharmony_ci end 5726e5c31af7Sopenharmony_ci case sub_ivec4_uvec4_ivec4 5727e5c31af7Sopenharmony_ci expect compile_fail 5728e5c31af7Sopenharmony_ci version 300 es 5729e5c31af7Sopenharmony_ci 5730e5c31af7Sopenharmony_ci both "" 5731e5c31af7Sopenharmony_ci #version 300 es 5732e5c31af7Sopenharmony_ci precision mediump float; 5733e5c31af7Sopenharmony_ci precision mediump int; 5734e5c31af7Sopenharmony_ci 5735e5c31af7Sopenharmony_ci ${DECLARATIONS} 5736e5c31af7Sopenharmony_ci 5737e5c31af7Sopenharmony_ci void main() 5738e5c31af7Sopenharmony_ci { 5739e5c31af7Sopenharmony_ci ivec4 c; 5740e5c31af7Sopenharmony_ci ivec4 a; 5741e5c31af7Sopenharmony_ci uvec4 b; 5742e5c31af7Sopenharmony_ci ivec4 c = a - b; 5743e5c31af7Sopenharmony_ci } 5744e5c31af7Sopenharmony_ci "" 5745e5c31af7Sopenharmony_ci end 5746e5c31af7Sopenharmony_ci case sub_ivec4_uvec4_uvec4 5747e5c31af7Sopenharmony_ci expect compile_fail 5748e5c31af7Sopenharmony_ci version 300 es 5749e5c31af7Sopenharmony_ci 5750e5c31af7Sopenharmony_ci both "" 5751e5c31af7Sopenharmony_ci #version 300 es 5752e5c31af7Sopenharmony_ci precision mediump float; 5753e5c31af7Sopenharmony_ci precision mediump int; 5754e5c31af7Sopenharmony_ci 5755e5c31af7Sopenharmony_ci ${DECLARATIONS} 5756e5c31af7Sopenharmony_ci 5757e5c31af7Sopenharmony_ci void main() 5758e5c31af7Sopenharmony_ci { 5759e5c31af7Sopenharmony_ci uvec4 c; 5760e5c31af7Sopenharmony_ci ivec4 a; 5761e5c31af7Sopenharmony_ci uvec4 b; 5762e5c31af7Sopenharmony_ci uvec4 c = a - b; 5763e5c31af7Sopenharmony_ci } 5764e5c31af7Sopenharmony_ci "" 5765e5c31af7Sopenharmony_ci end 5766e5c31af7Sopenharmony_ci case div_float_int_float 5767e5c31af7Sopenharmony_ci expect compile_fail 5768e5c31af7Sopenharmony_ci version 300 es 5769e5c31af7Sopenharmony_ci 5770e5c31af7Sopenharmony_ci both "" 5771e5c31af7Sopenharmony_ci #version 300 es 5772e5c31af7Sopenharmony_ci precision mediump float; 5773e5c31af7Sopenharmony_ci precision mediump int; 5774e5c31af7Sopenharmony_ci 5775e5c31af7Sopenharmony_ci ${DECLARATIONS} 5776e5c31af7Sopenharmony_ci 5777e5c31af7Sopenharmony_ci void main() 5778e5c31af7Sopenharmony_ci { 5779e5c31af7Sopenharmony_ci float c; 5780e5c31af7Sopenharmony_ci float a; 5781e5c31af7Sopenharmony_ci int b; 5782e5c31af7Sopenharmony_ci float c = a / b; 5783e5c31af7Sopenharmony_ci } 5784e5c31af7Sopenharmony_ci "" 5785e5c31af7Sopenharmony_ci end 5786e5c31af7Sopenharmony_ci case div_float_int_int 5787e5c31af7Sopenharmony_ci expect compile_fail 5788e5c31af7Sopenharmony_ci version 300 es 5789e5c31af7Sopenharmony_ci 5790e5c31af7Sopenharmony_ci both "" 5791e5c31af7Sopenharmony_ci #version 300 es 5792e5c31af7Sopenharmony_ci precision mediump float; 5793e5c31af7Sopenharmony_ci precision mediump int; 5794e5c31af7Sopenharmony_ci 5795e5c31af7Sopenharmony_ci ${DECLARATIONS} 5796e5c31af7Sopenharmony_ci 5797e5c31af7Sopenharmony_ci void main() 5798e5c31af7Sopenharmony_ci { 5799e5c31af7Sopenharmony_ci int c; 5800e5c31af7Sopenharmony_ci float a; 5801e5c31af7Sopenharmony_ci int b; 5802e5c31af7Sopenharmony_ci int c = a / b; 5803e5c31af7Sopenharmony_ci } 5804e5c31af7Sopenharmony_ci "" 5805e5c31af7Sopenharmony_ci end 5806e5c31af7Sopenharmony_ci case div_float_ivec2_float 5807e5c31af7Sopenharmony_ci expect compile_fail 5808e5c31af7Sopenharmony_ci version 300 es 5809e5c31af7Sopenharmony_ci 5810e5c31af7Sopenharmony_ci both "" 5811e5c31af7Sopenharmony_ci #version 300 es 5812e5c31af7Sopenharmony_ci precision mediump float; 5813e5c31af7Sopenharmony_ci precision mediump int; 5814e5c31af7Sopenharmony_ci 5815e5c31af7Sopenharmony_ci ${DECLARATIONS} 5816e5c31af7Sopenharmony_ci 5817e5c31af7Sopenharmony_ci void main() 5818e5c31af7Sopenharmony_ci { 5819e5c31af7Sopenharmony_ci float c; 5820e5c31af7Sopenharmony_ci float a; 5821e5c31af7Sopenharmony_ci ivec2 b; 5822e5c31af7Sopenharmony_ci float c = a / b; 5823e5c31af7Sopenharmony_ci } 5824e5c31af7Sopenharmony_ci "" 5825e5c31af7Sopenharmony_ci end 5826e5c31af7Sopenharmony_ci case div_float_ivec2_ivec2 5827e5c31af7Sopenharmony_ci expect compile_fail 5828e5c31af7Sopenharmony_ci version 300 es 5829e5c31af7Sopenharmony_ci 5830e5c31af7Sopenharmony_ci both "" 5831e5c31af7Sopenharmony_ci #version 300 es 5832e5c31af7Sopenharmony_ci precision mediump float; 5833e5c31af7Sopenharmony_ci precision mediump int; 5834e5c31af7Sopenharmony_ci 5835e5c31af7Sopenharmony_ci ${DECLARATIONS} 5836e5c31af7Sopenharmony_ci 5837e5c31af7Sopenharmony_ci void main() 5838e5c31af7Sopenharmony_ci { 5839e5c31af7Sopenharmony_ci ivec2 c; 5840e5c31af7Sopenharmony_ci float a; 5841e5c31af7Sopenharmony_ci ivec2 b; 5842e5c31af7Sopenharmony_ci ivec2 c = a / b; 5843e5c31af7Sopenharmony_ci } 5844e5c31af7Sopenharmony_ci "" 5845e5c31af7Sopenharmony_ci end 5846e5c31af7Sopenharmony_ci case div_float_ivec3_float 5847e5c31af7Sopenharmony_ci expect compile_fail 5848e5c31af7Sopenharmony_ci version 300 es 5849e5c31af7Sopenharmony_ci 5850e5c31af7Sopenharmony_ci both "" 5851e5c31af7Sopenharmony_ci #version 300 es 5852e5c31af7Sopenharmony_ci precision mediump float; 5853e5c31af7Sopenharmony_ci precision mediump int; 5854e5c31af7Sopenharmony_ci 5855e5c31af7Sopenharmony_ci ${DECLARATIONS} 5856e5c31af7Sopenharmony_ci 5857e5c31af7Sopenharmony_ci void main() 5858e5c31af7Sopenharmony_ci { 5859e5c31af7Sopenharmony_ci float c; 5860e5c31af7Sopenharmony_ci float a; 5861e5c31af7Sopenharmony_ci ivec3 b; 5862e5c31af7Sopenharmony_ci float c = a / b; 5863e5c31af7Sopenharmony_ci } 5864e5c31af7Sopenharmony_ci "" 5865e5c31af7Sopenharmony_ci end 5866e5c31af7Sopenharmony_ci case div_float_ivec3_ivec3 5867e5c31af7Sopenharmony_ci expect compile_fail 5868e5c31af7Sopenharmony_ci version 300 es 5869e5c31af7Sopenharmony_ci 5870e5c31af7Sopenharmony_ci both "" 5871e5c31af7Sopenharmony_ci #version 300 es 5872e5c31af7Sopenharmony_ci precision mediump float; 5873e5c31af7Sopenharmony_ci precision mediump int; 5874e5c31af7Sopenharmony_ci 5875e5c31af7Sopenharmony_ci ${DECLARATIONS} 5876e5c31af7Sopenharmony_ci 5877e5c31af7Sopenharmony_ci void main() 5878e5c31af7Sopenharmony_ci { 5879e5c31af7Sopenharmony_ci ivec3 c; 5880e5c31af7Sopenharmony_ci float a; 5881e5c31af7Sopenharmony_ci ivec3 b; 5882e5c31af7Sopenharmony_ci ivec3 c = a / b; 5883e5c31af7Sopenharmony_ci } 5884e5c31af7Sopenharmony_ci "" 5885e5c31af7Sopenharmony_ci end 5886e5c31af7Sopenharmony_ci case div_float_ivec4_float 5887e5c31af7Sopenharmony_ci expect compile_fail 5888e5c31af7Sopenharmony_ci version 300 es 5889e5c31af7Sopenharmony_ci 5890e5c31af7Sopenharmony_ci both "" 5891e5c31af7Sopenharmony_ci #version 300 es 5892e5c31af7Sopenharmony_ci precision mediump float; 5893e5c31af7Sopenharmony_ci precision mediump int; 5894e5c31af7Sopenharmony_ci 5895e5c31af7Sopenharmony_ci ${DECLARATIONS} 5896e5c31af7Sopenharmony_ci 5897e5c31af7Sopenharmony_ci void main() 5898e5c31af7Sopenharmony_ci { 5899e5c31af7Sopenharmony_ci float c; 5900e5c31af7Sopenharmony_ci float a; 5901e5c31af7Sopenharmony_ci ivec4 b; 5902e5c31af7Sopenharmony_ci float c = a / b; 5903e5c31af7Sopenharmony_ci } 5904e5c31af7Sopenharmony_ci "" 5905e5c31af7Sopenharmony_ci end 5906e5c31af7Sopenharmony_ci case div_float_ivec4_ivec4 5907e5c31af7Sopenharmony_ci expect compile_fail 5908e5c31af7Sopenharmony_ci version 300 es 5909e5c31af7Sopenharmony_ci 5910e5c31af7Sopenharmony_ci both "" 5911e5c31af7Sopenharmony_ci #version 300 es 5912e5c31af7Sopenharmony_ci precision mediump float; 5913e5c31af7Sopenharmony_ci precision mediump int; 5914e5c31af7Sopenharmony_ci 5915e5c31af7Sopenharmony_ci ${DECLARATIONS} 5916e5c31af7Sopenharmony_ci 5917e5c31af7Sopenharmony_ci void main() 5918e5c31af7Sopenharmony_ci { 5919e5c31af7Sopenharmony_ci ivec4 c; 5920e5c31af7Sopenharmony_ci float a; 5921e5c31af7Sopenharmony_ci ivec4 b; 5922e5c31af7Sopenharmony_ci ivec4 c = a / b; 5923e5c31af7Sopenharmony_ci } 5924e5c31af7Sopenharmony_ci "" 5925e5c31af7Sopenharmony_ci end 5926e5c31af7Sopenharmony_ci case div_vec2_int_vec2 5927e5c31af7Sopenharmony_ci expect compile_fail 5928e5c31af7Sopenharmony_ci version 300 es 5929e5c31af7Sopenharmony_ci 5930e5c31af7Sopenharmony_ci both "" 5931e5c31af7Sopenharmony_ci #version 300 es 5932e5c31af7Sopenharmony_ci precision mediump float; 5933e5c31af7Sopenharmony_ci precision mediump int; 5934e5c31af7Sopenharmony_ci 5935e5c31af7Sopenharmony_ci ${DECLARATIONS} 5936e5c31af7Sopenharmony_ci 5937e5c31af7Sopenharmony_ci void main() 5938e5c31af7Sopenharmony_ci { 5939e5c31af7Sopenharmony_ci vec2 c; 5940e5c31af7Sopenharmony_ci vec2 a; 5941e5c31af7Sopenharmony_ci int b; 5942e5c31af7Sopenharmony_ci vec2 c = a / b; 5943e5c31af7Sopenharmony_ci } 5944e5c31af7Sopenharmony_ci "" 5945e5c31af7Sopenharmony_ci end 5946e5c31af7Sopenharmony_ci case div_vec2_int_int 5947e5c31af7Sopenharmony_ci expect compile_fail 5948e5c31af7Sopenharmony_ci version 300 es 5949e5c31af7Sopenharmony_ci 5950e5c31af7Sopenharmony_ci both "" 5951e5c31af7Sopenharmony_ci #version 300 es 5952e5c31af7Sopenharmony_ci precision mediump float; 5953e5c31af7Sopenharmony_ci precision mediump int; 5954e5c31af7Sopenharmony_ci 5955e5c31af7Sopenharmony_ci ${DECLARATIONS} 5956e5c31af7Sopenharmony_ci 5957e5c31af7Sopenharmony_ci void main() 5958e5c31af7Sopenharmony_ci { 5959e5c31af7Sopenharmony_ci int c; 5960e5c31af7Sopenharmony_ci vec2 a; 5961e5c31af7Sopenharmony_ci int b; 5962e5c31af7Sopenharmony_ci int c = a / b; 5963e5c31af7Sopenharmony_ci } 5964e5c31af7Sopenharmony_ci "" 5965e5c31af7Sopenharmony_ci end 5966e5c31af7Sopenharmony_ci case div_vec2_ivec2_vec2 5967e5c31af7Sopenharmony_ci expect compile_fail 5968e5c31af7Sopenharmony_ci version 300 es 5969e5c31af7Sopenharmony_ci 5970e5c31af7Sopenharmony_ci both "" 5971e5c31af7Sopenharmony_ci #version 300 es 5972e5c31af7Sopenharmony_ci precision mediump float; 5973e5c31af7Sopenharmony_ci precision mediump int; 5974e5c31af7Sopenharmony_ci 5975e5c31af7Sopenharmony_ci ${DECLARATIONS} 5976e5c31af7Sopenharmony_ci 5977e5c31af7Sopenharmony_ci void main() 5978e5c31af7Sopenharmony_ci { 5979e5c31af7Sopenharmony_ci vec2 c; 5980e5c31af7Sopenharmony_ci vec2 a; 5981e5c31af7Sopenharmony_ci ivec2 b; 5982e5c31af7Sopenharmony_ci vec2 c = a / b; 5983e5c31af7Sopenharmony_ci } 5984e5c31af7Sopenharmony_ci "" 5985e5c31af7Sopenharmony_ci end 5986e5c31af7Sopenharmony_ci case div_vec2_ivec2_ivec2 5987e5c31af7Sopenharmony_ci expect compile_fail 5988e5c31af7Sopenharmony_ci version 300 es 5989e5c31af7Sopenharmony_ci 5990e5c31af7Sopenharmony_ci both "" 5991e5c31af7Sopenharmony_ci #version 300 es 5992e5c31af7Sopenharmony_ci precision mediump float; 5993e5c31af7Sopenharmony_ci precision mediump int; 5994e5c31af7Sopenharmony_ci 5995e5c31af7Sopenharmony_ci ${DECLARATIONS} 5996e5c31af7Sopenharmony_ci 5997e5c31af7Sopenharmony_ci void main() 5998e5c31af7Sopenharmony_ci { 5999e5c31af7Sopenharmony_ci ivec2 c; 6000e5c31af7Sopenharmony_ci vec2 a; 6001e5c31af7Sopenharmony_ci ivec2 b; 6002e5c31af7Sopenharmony_ci ivec2 c = a / b; 6003e5c31af7Sopenharmony_ci } 6004e5c31af7Sopenharmony_ci "" 6005e5c31af7Sopenharmony_ci end 6006e5c31af7Sopenharmony_ci case div_vec2_ivec3_vec2 6007e5c31af7Sopenharmony_ci expect compile_fail 6008e5c31af7Sopenharmony_ci version 300 es 6009e5c31af7Sopenharmony_ci 6010e5c31af7Sopenharmony_ci both "" 6011e5c31af7Sopenharmony_ci #version 300 es 6012e5c31af7Sopenharmony_ci precision mediump float; 6013e5c31af7Sopenharmony_ci precision mediump int; 6014e5c31af7Sopenharmony_ci 6015e5c31af7Sopenharmony_ci ${DECLARATIONS} 6016e5c31af7Sopenharmony_ci 6017e5c31af7Sopenharmony_ci void main() 6018e5c31af7Sopenharmony_ci { 6019e5c31af7Sopenharmony_ci vec2 c; 6020e5c31af7Sopenharmony_ci vec2 a; 6021e5c31af7Sopenharmony_ci ivec3 b; 6022e5c31af7Sopenharmony_ci vec2 c = a / b; 6023e5c31af7Sopenharmony_ci } 6024e5c31af7Sopenharmony_ci "" 6025e5c31af7Sopenharmony_ci end 6026e5c31af7Sopenharmony_ci case div_vec2_ivec3_ivec3 6027e5c31af7Sopenharmony_ci expect compile_fail 6028e5c31af7Sopenharmony_ci version 300 es 6029e5c31af7Sopenharmony_ci 6030e5c31af7Sopenharmony_ci both "" 6031e5c31af7Sopenharmony_ci #version 300 es 6032e5c31af7Sopenharmony_ci precision mediump float; 6033e5c31af7Sopenharmony_ci precision mediump int; 6034e5c31af7Sopenharmony_ci 6035e5c31af7Sopenharmony_ci ${DECLARATIONS} 6036e5c31af7Sopenharmony_ci 6037e5c31af7Sopenharmony_ci void main() 6038e5c31af7Sopenharmony_ci { 6039e5c31af7Sopenharmony_ci ivec3 c; 6040e5c31af7Sopenharmony_ci vec2 a; 6041e5c31af7Sopenharmony_ci ivec3 b; 6042e5c31af7Sopenharmony_ci ivec3 c = a / b; 6043e5c31af7Sopenharmony_ci } 6044e5c31af7Sopenharmony_ci "" 6045e5c31af7Sopenharmony_ci end 6046e5c31af7Sopenharmony_ci case div_vec2_ivec4_vec2 6047e5c31af7Sopenharmony_ci expect compile_fail 6048e5c31af7Sopenharmony_ci version 300 es 6049e5c31af7Sopenharmony_ci 6050e5c31af7Sopenharmony_ci both "" 6051e5c31af7Sopenharmony_ci #version 300 es 6052e5c31af7Sopenharmony_ci precision mediump float; 6053e5c31af7Sopenharmony_ci precision mediump int; 6054e5c31af7Sopenharmony_ci 6055e5c31af7Sopenharmony_ci ${DECLARATIONS} 6056e5c31af7Sopenharmony_ci 6057e5c31af7Sopenharmony_ci void main() 6058e5c31af7Sopenharmony_ci { 6059e5c31af7Sopenharmony_ci vec2 c; 6060e5c31af7Sopenharmony_ci vec2 a; 6061e5c31af7Sopenharmony_ci ivec4 b; 6062e5c31af7Sopenharmony_ci vec2 c = a / b; 6063e5c31af7Sopenharmony_ci } 6064e5c31af7Sopenharmony_ci "" 6065e5c31af7Sopenharmony_ci end 6066e5c31af7Sopenharmony_ci case div_vec2_ivec4_ivec4 6067e5c31af7Sopenharmony_ci expect compile_fail 6068e5c31af7Sopenharmony_ci version 300 es 6069e5c31af7Sopenharmony_ci 6070e5c31af7Sopenharmony_ci both "" 6071e5c31af7Sopenharmony_ci #version 300 es 6072e5c31af7Sopenharmony_ci precision mediump float; 6073e5c31af7Sopenharmony_ci precision mediump int; 6074e5c31af7Sopenharmony_ci 6075e5c31af7Sopenharmony_ci ${DECLARATIONS} 6076e5c31af7Sopenharmony_ci 6077e5c31af7Sopenharmony_ci void main() 6078e5c31af7Sopenharmony_ci { 6079e5c31af7Sopenharmony_ci ivec4 c; 6080e5c31af7Sopenharmony_ci vec2 a; 6081e5c31af7Sopenharmony_ci ivec4 b; 6082e5c31af7Sopenharmony_ci ivec4 c = a / b; 6083e5c31af7Sopenharmony_ci } 6084e5c31af7Sopenharmony_ci "" 6085e5c31af7Sopenharmony_ci end 6086e5c31af7Sopenharmony_ci case div_vec3_int_vec3 6087e5c31af7Sopenharmony_ci expect compile_fail 6088e5c31af7Sopenharmony_ci version 300 es 6089e5c31af7Sopenharmony_ci 6090e5c31af7Sopenharmony_ci both "" 6091e5c31af7Sopenharmony_ci #version 300 es 6092e5c31af7Sopenharmony_ci precision mediump float; 6093e5c31af7Sopenharmony_ci precision mediump int; 6094e5c31af7Sopenharmony_ci 6095e5c31af7Sopenharmony_ci ${DECLARATIONS} 6096e5c31af7Sopenharmony_ci 6097e5c31af7Sopenharmony_ci void main() 6098e5c31af7Sopenharmony_ci { 6099e5c31af7Sopenharmony_ci vec3 c; 6100e5c31af7Sopenharmony_ci vec3 a; 6101e5c31af7Sopenharmony_ci int b; 6102e5c31af7Sopenharmony_ci vec3 c = a / b; 6103e5c31af7Sopenharmony_ci } 6104e5c31af7Sopenharmony_ci "" 6105e5c31af7Sopenharmony_ci end 6106e5c31af7Sopenharmony_ci case div_vec3_int_int 6107e5c31af7Sopenharmony_ci expect compile_fail 6108e5c31af7Sopenharmony_ci version 300 es 6109e5c31af7Sopenharmony_ci 6110e5c31af7Sopenharmony_ci both "" 6111e5c31af7Sopenharmony_ci #version 300 es 6112e5c31af7Sopenharmony_ci precision mediump float; 6113e5c31af7Sopenharmony_ci precision mediump int; 6114e5c31af7Sopenharmony_ci 6115e5c31af7Sopenharmony_ci ${DECLARATIONS} 6116e5c31af7Sopenharmony_ci 6117e5c31af7Sopenharmony_ci void main() 6118e5c31af7Sopenharmony_ci { 6119e5c31af7Sopenharmony_ci int c; 6120e5c31af7Sopenharmony_ci vec3 a; 6121e5c31af7Sopenharmony_ci int b; 6122e5c31af7Sopenharmony_ci int c = a / b; 6123e5c31af7Sopenharmony_ci } 6124e5c31af7Sopenharmony_ci "" 6125e5c31af7Sopenharmony_ci end 6126e5c31af7Sopenharmony_ci case div_vec3_ivec2_vec3 6127e5c31af7Sopenharmony_ci expect compile_fail 6128e5c31af7Sopenharmony_ci version 300 es 6129e5c31af7Sopenharmony_ci 6130e5c31af7Sopenharmony_ci both "" 6131e5c31af7Sopenharmony_ci #version 300 es 6132e5c31af7Sopenharmony_ci precision mediump float; 6133e5c31af7Sopenharmony_ci precision mediump int; 6134e5c31af7Sopenharmony_ci 6135e5c31af7Sopenharmony_ci ${DECLARATIONS} 6136e5c31af7Sopenharmony_ci 6137e5c31af7Sopenharmony_ci void main() 6138e5c31af7Sopenharmony_ci { 6139e5c31af7Sopenharmony_ci vec3 c; 6140e5c31af7Sopenharmony_ci vec3 a; 6141e5c31af7Sopenharmony_ci ivec2 b; 6142e5c31af7Sopenharmony_ci vec3 c = a / b; 6143e5c31af7Sopenharmony_ci } 6144e5c31af7Sopenharmony_ci "" 6145e5c31af7Sopenharmony_ci end 6146e5c31af7Sopenharmony_ci case div_vec3_ivec2_ivec2 6147e5c31af7Sopenharmony_ci expect compile_fail 6148e5c31af7Sopenharmony_ci version 300 es 6149e5c31af7Sopenharmony_ci 6150e5c31af7Sopenharmony_ci both "" 6151e5c31af7Sopenharmony_ci #version 300 es 6152e5c31af7Sopenharmony_ci precision mediump float; 6153e5c31af7Sopenharmony_ci precision mediump int; 6154e5c31af7Sopenharmony_ci 6155e5c31af7Sopenharmony_ci ${DECLARATIONS} 6156e5c31af7Sopenharmony_ci 6157e5c31af7Sopenharmony_ci void main() 6158e5c31af7Sopenharmony_ci { 6159e5c31af7Sopenharmony_ci ivec2 c; 6160e5c31af7Sopenharmony_ci vec3 a; 6161e5c31af7Sopenharmony_ci ivec2 b; 6162e5c31af7Sopenharmony_ci ivec2 c = a / b; 6163e5c31af7Sopenharmony_ci } 6164e5c31af7Sopenharmony_ci "" 6165e5c31af7Sopenharmony_ci end 6166e5c31af7Sopenharmony_ci case div_vec3_ivec3_vec3 6167e5c31af7Sopenharmony_ci expect compile_fail 6168e5c31af7Sopenharmony_ci version 300 es 6169e5c31af7Sopenharmony_ci 6170e5c31af7Sopenharmony_ci both "" 6171e5c31af7Sopenharmony_ci #version 300 es 6172e5c31af7Sopenharmony_ci precision mediump float; 6173e5c31af7Sopenharmony_ci precision mediump int; 6174e5c31af7Sopenharmony_ci 6175e5c31af7Sopenharmony_ci ${DECLARATIONS} 6176e5c31af7Sopenharmony_ci 6177e5c31af7Sopenharmony_ci void main() 6178e5c31af7Sopenharmony_ci { 6179e5c31af7Sopenharmony_ci vec3 c; 6180e5c31af7Sopenharmony_ci vec3 a; 6181e5c31af7Sopenharmony_ci ivec3 b; 6182e5c31af7Sopenharmony_ci vec3 c = a / b; 6183e5c31af7Sopenharmony_ci } 6184e5c31af7Sopenharmony_ci "" 6185e5c31af7Sopenharmony_ci end 6186e5c31af7Sopenharmony_ci case div_vec3_ivec3_ivec3 6187e5c31af7Sopenharmony_ci expect compile_fail 6188e5c31af7Sopenharmony_ci version 300 es 6189e5c31af7Sopenharmony_ci 6190e5c31af7Sopenharmony_ci both "" 6191e5c31af7Sopenharmony_ci #version 300 es 6192e5c31af7Sopenharmony_ci precision mediump float; 6193e5c31af7Sopenharmony_ci precision mediump int; 6194e5c31af7Sopenharmony_ci 6195e5c31af7Sopenharmony_ci ${DECLARATIONS} 6196e5c31af7Sopenharmony_ci 6197e5c31af7Sopenharmony_ci void main() 6198e5c31af7Sopenharmony_ci { 6199e5c31af7Sopenharmony_ci ivec3 c; 6200e5c31af7Sopenharmony_ci vec3 a; 6201e5c31af7Sopenharmony_ci ivec3 b; 6202e5c31af7Sopenharmony_ci ivec3 c = a / b; 6203e5c31af7Sopenharmony_ci } 6204e5c31af7Sopenharmony_ci "" 6205e5c31af7Sopenharmony_ci end 6206e5c31af7Sopenharmony_ci case div_vec3_ivec4_vec3 6207e5c31af7Sopenharmony_ci expect compile_fail 6208e5c31af7Sopenharmony_ci version 300 es 6209e5c31af7Sopenharmony_ci 6210e5c31af7Sopenharmony_ci both "" 6211e5c31af7Sopenharmony_ci #version 300 es 6212e5c31af7Sopenharmony_ci precision mediump float; 6213e5c31af7Sopenharmony_ci precision mediump int; 6214e5c31af7Sopenharmony_ci 6215e5c31af7Sopenharmony_ci ${DECLARATIONS} 6216e5c31af7Sopenharmony_ci 6217e5c31af7Sopenharmony_ci void main() 6218e5c31af7Sopenharmony_ci { 6219e5c31af7Sopenharmony_ci vec3 c; 6220e5c31af7Sopenharmony_ci vec3 a; 6221e5c31af7Sopenharmony_ci ivec4 b; 6222e5c31af7Sopenharmony_ci vec3 c = a / b; 6223e5c31af7Sopenharmony_ci } 6224e5c31af7Sopenharmony_ci "" 6225e5c31af7Sopenharmony_ci end 6226e5c31af7Sopenharmony_ci case div_vec3_ivec4_ivec4 6227e5c31af7Sopenharmony_ci expect compile_fail 6228e5c31af7Sopenharmony_ci version 300 es 6229e5c31af7Sopenharmony_ci 6230e5c31af7Sopenharmony_ci both "" 6231e5c31af7Sopenharmony_ci #version 300 es 6232e5c31af7Sopenharmony_ci precision mediump float; 6233e5c31af7Sopenharmony_ci precision mediump int; 6234e5c31af7Sopenharmony_ci 6235e5c31af7Sopenharmony_ci ${DECLARATIONS} 6236e5c31af7Sopenharmony_ci 6237e5c31af7Sopenharmony_ci void main() 6238e5c31af7Sopenharmony_ci { 6239e5c31af7Sopenharmony_ci ivec4 c; 6240e5c31af7Sopenharmony_ci vec3 a; 6241e5c31af7Sopenharmony_ci ivec4 b; 6242e5c31af7Sopenharmony_ci ivec4 c = a / b; 6243e5c31af7Sopenharmony_ci } 6244e5c31af7Sopenharmony_ci "" 6245e5c31af7Sopenharmony_ci end 6246e5c31af7Sopenharmony_ci case div_vec4_int_vec4 6247e5c31af7Sopenharmony_ci expect compile_fail 6248e5c31af7Sopenharmony_ci version 300 es 6249e5c31af7Sopenharmony_ci 6250e5c31af7Sopenharmony_ci both "" 6251e5c31af7Sopenharmony_ci #version 300 es 6252e5c31af7Sopenharmony_ci precision mediump float; 6253e5c31af7Sopenharmony_ci precision mediump int; 6254e5c31af7Sopenharmony_ci 6255e5c31af7Sopenharmony_ci ${DECLARATIONS} 6256e5c31af7Sopenharmony_ci 6257e5c31af7Sopenharmony_ci void main() 6258e5c31af7Sopenharmony_ci { 6259e5c31af7Sopenharmony_ci vec4 c; 6260e5c31af7Sopenharmony_ci vec4 a; 6261e5c31af7Sopenharmony_ci int b; 6262e5c31af7Sopenharmony_ci vec4 c = a / b; 6263e5c31af7Sopenharmony_ci } 6264e5c31af7Sopenharmony_ci "" 6265e5c31af7Sopenharmony_ci end 6266e5c31af7Sopenharmony_ci case div_vec4_int_int 6267e5c31af7Sopenharmony_ci expect compile_fail 6268e5c31af7Sopenharmony_ci version 300 es 6269e5c31af7Sopenharmony_ci 6270e5c31af7Sopenharmony_ci both "" 6271e5c31af7Sopenharmony_ci #version 300 es 6272e5c31af7Sopenharmony_ci precision mediump float; 6273e5c31af7Sopenharmony_ci precision mediump int; 6274e5c31af7Sopenharmony_ci 6275e5c31af7Sopenharmony_ci ${DECLARATIONS} 6276e5c31af7Sopenharmony_ci 6277e5c31af7Sopenharmony_ci void main() 6278e5c31af7Sopenharmony_ci { 6279e5c31af7Sopenharmony_ci int c; 6280e5c31af7Sopenharmony_ci vec4 a; 6281e5c31af7Sopenharmony_ci int b; 6282e5c31af7Sopenharmony_ci int c = a / b; 6283e5c31af7Sopenharmony_ci } 6284e5c31af7Sopenharmony_ci "" 6285e5c31af7Sopenharmony_ci end 6286e5c31af7Sopenharmony_ci case div_vec4_ivec2_vec4 6287e5c31af7Sopenharmony_ci expect compile_fail 6288e5c31af7Sopenharmony_ci version 300 es 6289e5c31af7Sopenharmony_ci 6290e5c31af7Sopenharmony_ci both "" 6291e5c31af7Sopenharmony_ci #version 300 es 6292e5c31af7Sopenharmony_ci precision mediump float; 6293e5c31af7Sopenharmony_ci precision mediump int; 6294e5c31af7Sopenharmony_ci 6295e5c31af7Sopenharmony_ci ${DECLARATIONS} 6296e5c31af7Sopenharmony_ci 6297e5c31af7Sopenharmony_ci void main() 6298e5c31af7Sopenharmony_ci { 6299e5c31af7Sopenharmony_ci vec4 c; 6300e5c31af7Sopenharmony_ci vec4 a; 6301e5c31af7Sopenharmony_ci ivec2 b; 6302e5c31af7Sopenharmony_ci vec4 c = a / b; 6303e5c31af7Sopenharmony_ci } 6304e5c31af7Sopenharmony_ci "" 6305e5c31af7Sopenharmony_ci end 6306e5c31af7Sopenharmony_ci case div_vec4_ivec2_ivec2 6307e5c31af7Sopenharmony_ci expect compile_fail 6308e5c31af7Sopenharmony_ci version 300 es 6309e5c31af7Sopenharmony_ci 6310e5c31af7Sopenharmony_ci both "" 6311e5c31af7Sopenharmony_ci #version 300 es 6312e5c31af7Sopenharmony_ci precision mediump float; 6313e5c31af7Sopenharmony_ci precision mediump int; 6314e5c31af7Sopenharmony_ci 6315e5c31af7Sopenharmony_ci ${DECLARATIONS} 6316e5c31af7Sopenharmony_ci 6317e5c31af7Sopenharmony_ci void main() 6318e5c31af7Sopenharmony_ci { 6319e5c31af7Sopenharmony_ci ivec2 c; 6320e5c31af7Sopenharmony_ci vec4 a; 6321e5c31af7Sopenharmony_ci ivec2 b; 6322e5c31af7Sopenharmony_ci ivec2 c = a / b; 6323e5c31af7Sopenharmony_ci } 6324e5c31af7Sopenharmony_ci "" 6325e5c31af7Sopenharmony_ci end 6326e5c31af7Sopenharmony_ci case div_vec4_ivec3_vec4 6327e5c31af7Sopenharmony_ci expect compile_fail 6328e5c31af7Sopenharmony_ci version 300 es 6329e5c31af7Sopenharmony_ci 6330e5c31af7Sopenharmony_ci both "" 6331e5c31af7Sopenharmony_ci #version 300 es 6332e5c31af7Sopenharmony_ci precision mediump float; 6333e5c31af7Sopenharmony_ci precision mediump int; 6334e5c31af7Sopenharmony_ci 6335e5c31af7Sopenharmony_ci ${DECLARATIONS} 6336e5c31af7Sopenharmony_ci 6337e5c31af7Sopenharmony_ci void main() 6338e5c31af7Sopenharmony_ci { 6339e5c31af7Sopenharmony_ci vec4 c; 6340e5c31af7Sopenharmony_ci vec4 a; 6341e5c31af7Sopenharmony_ci ivec3 b; 6342e5c31af7Sopenharmony_ci vec4 c = a / b; 6343e5c31af7Sopenharmony_ci } 6344e5c31af7Sopenharmony_ci "" 6345e5c31af7Sopenharmony_ci end 6346e5c31af7Sopenharmony_ci case div_vec4_ivec3_ivec3 6347e5c31af7Sopenharmony_ci expect compile_fail 6348e5c31af7Sopenharmony_ci version 300 es 6349e5c31af7Sopenharmony_ci 6350e5c31af7Sopenharmony_ci both "" 6351e5c31af7Sopenharmony_ci #version 300 es 6352e5c31af7Sopenharmony_ci precision mediump float; 6353e5c31af7Sopenharmony_ci precision mediump int; 6354e5c31af7Sopenharmony_ci 6355e5c31af7Sopenharmony_ci ${DECLARATIONS} 6356e5c31af7Sopenharmony_ci 6357e5c31af7Sopenharmony_ci void main() 6358e5c31af7Sopenharmony_ci { 6359e5c31af7Sopenharmony_ci ivec3 c; 6360e5c31af7Sopenharmony_ci vec4 a; 6361e5c31af7Sopenharmony_ci ivec3 b; 6362e5c31af7Sopenharmony_ci ivec3 c = a / b; 6363e5c31af7Sopenharmony_ci } 6364e5c31af7Sopenharmony_ci "" 6365e5c31af7Sopenharmony_ci end 6366e5c31af7Sopenharmony_ci case div_vec4_ivec4_vec4 6367e5c31af7Sopenharmony_ci expect compile_fail 6368e5c31af7Sopenharmony_ci version 300 es 6369e5c31af7Sopenharmony_ci 6370e5c31af7Sopenharmony_ci both "" 6371e5c31af7Sopenharmony_ci #version 300 es 6372e5c31af7Sopenharmony_ci precision mediump float; 6373e5c31af7Sopenharmony_ci precision mediump int; 6374e5c31af7Sopenharmony_ci 6375e5c31af7Sopenharmony_ci ${DECLARATIONS} 6376e5c31af7Sopenharmony_ci 6377e5c31af7Sopenharmony_ci void main() 6378e5c31af7Sopenharmony_ci { 6379e5c31af7Sopenharmony_ci vec4 c; 6380e5c31af7Sopenharmony_ci vec4 a; 6381e5c31af7Sopenharmony_ci ivec4 b; 6382e5c31af7Sopenharmony_ci vec4 c = a / b; 6383e5c31af7Sopenharmony_ci } 6384e5c31af7Sopenharmony_ci "" 6385e5c31af7Sopenharmony_ci end 6386e5c31af7Sopenharmony_ci case div_vec4_ivec4_ivec4 6387e5c31af7Sopenharmony_ci expect compile_fail 6388e5c31af7Sopenharmony_ci version 300 es 6389e5c31af7Sopenharmony_ci 6390e5c31af7Sopenharmony_ci both "" 6391e5c31af7Sopenharmony_ci #version 300 es 6392e5c31af7Sopenharmony_ci precision mediump float; 6393e5c31af7Sopenharmony_ci precision mediump int; 6394e5c31af7Sopenharmony_ci 6395e5c31af7Sopenharmony_ci ${DECLARATIONS} 6396e5c31af7Sopenharmony_ci 6397e5c31af7Sopenharmony_ci void main() 6398e5c31af7Sopenharmony_ci { 6399e5c31af7Sopenharmony_ci ivec4 c; 6400e5c31af7Sopenharmony_ci vec4 a; 6401e5c31af7Sopenharmony_ci ivec4 b; 6402e5c31af7Sopenharmony_ci ivec4 c = a / b; 6403e5c31af7Sopenharmony_ci } 6404e5c31af7Sopenharmony_ci "" 6405e5c31af7Sopenharmony_ci end 6406e5c31af7Sopenharmony_ci case div_float_uint_float 6407e5c31af7Sopenharmony_ci expect compile_fail 6408e5c31af7Sopenharmony_ci version 300 es 6409e5c31af7Sopenharmony_ci 6410e5c31af7Sopenharmony_ci both "" 6411e5c31af7Sopenharmony_ci #version 300 es 6412e5c31af7Sopenharmony_ci precision mediump float; 6413e5c31af7Sopenharmony_ci precision mediump int; 6414e5c31af7Sopenharmony_ci 6415e5c31af7Sopenharmony_ci ${DECLARATIONS} 6416e5c31af7Sopenharmony_ci 6417e5c31af7Sopenharmony_ci void main() 6418e5c31af7Sopenharmony_ci { 6419e5c31af7Sopenharmony_ci float c; 6420e5c31af7Sopenharmony_ci float a; 6421e5c31af7Sopenharmony_ci uint b; 6422e5c31af7Sopenharmony_ci float c = a / b; 6423e5c31af7Sopenharmony_ci } 6424e5c31af7Sopenharmony_ci "" 6425e5c31af7Sopenharmony_ci end 6426e5c31af7Sopenharmony_ci case div_float_uint_uint 6427e5c31af7Sopenharmony_ci expect compile_fail 6428e5c31af7Sopenharmony_ci version 300 es 6429e5c31af7Sopenharmony_ci 6430e5c31af7Sopenharmony_ci both "" 6431e5c31af7Sopenharmony_ci #version 300 es 6432e5c31af7Sopenharmony_ci precision mediump float; 6433e5c31af7Sopenharmony_ci precision mediump int; 6434e5c31af7Sopenharmony_ci 6435e5c31af7Sopenharmony_ci ${DECLARATIONS} 6436e5c31af7Sopenharmony_ci 6437e5c31af7Sopenharmony_ci void main() 6438e5c31af7Sopenharmony_ci { 6439e5c31af7Sopenharmony_ci uint c; 6440e5c31af7Sopenharmony_ci float a; 6441e5c31af7Sopenharmony_ci uint b; 6442e5c31af7Sopenharmony_ci uint c = a / b; 6443e5c31af7Sopenharmony_ci } 6444e5c31af7Sopenharmony_ci "" 6445e5c31af7Sopenharmony_ci end 6446e5c31af7Sopenharmony_ci case div_float_uvec2_float 6447e5c31af7Sopenharmony_ci expect compile_fail 6448e5c31af7Sopenharmony_ci version 300 es 6449e5c31af7Sopenharmony_ci 6450e5c31af7Sopenharmony_ci both "" 6451e5c31af7Sopenharmony_ci #version 300 es 6452e5c31af7Sopenharmony_ci precision mediump float; 6453e5c31af7Sopenharmony_ci precision mediump int; 6454e5c31af7Sopenharmony_ci 6455e5c31af7Sopenharmony_ci ${DECLARATIONS} 6456e5c31af7Sopenharmony_ci 6457e5c31af7Sopenharmony_ci void main() 6458e5c31af7Sopenharmony_ci { 6459e5c31af7Sopenharmony_ci float c; 6460e5c31af7Sopenharmony_ci float a; 6461e5c31af7Sopenharmony_ci uvec2 b; 6462e5c31af7Sopenharmony_ci float c = a / b; 6463e5c31af7Sopenharmony_ci } 6464e5c31af7Sopenharmony_ci "" 6465e5c31af7Sopenharmony_ci end 6466e5c31af7Sopenharmony_ci case div_float_uvec2_uvec2 6467e5c31af7Sopenharmony_ci expect compile_fail 6468e5c31af7Sopenharmony_ci version 300 es 6469e5c31af7Sopenharmony_ci 6470e5c31af7Sopenharmony_ci both "" 6471e5c31af7Sopenharmony_ci #version 300 es 6472e5c31af7Sopenharmony_ci precision mediump float; 6473e5c31af7Sopenharmony_ci precision mediump int; 6474e5c31af7Sopenharmony_ci 6475e5c31af7Sopenharmony_ci ${DECLARATIONS} 6476e5c31af7Sopenharmony_ci 6477e5c31af7Sopenharmony_ci void main() 6478e5c31af7Sopenharmony_ci { 6479e5c31af7Sopenharmony_ci uvec2 c; 6480e5c31af7Sopenharmony_ci float a; 6481e5c31af7Sopenharmony_ci uvec2 b; 6482e5c31af7Sopenharmony_ci uvec2 c = a / b; 6483e5c31af7Sopenharmony_ci } 6484e5c31af7Sopenharmony_ci "" 6485e5c31af7Sopenharmony_ci end 6486e5c31af7Sopenharmony_ci case div_float_uvec3_float 6487e5c31af7Sopenharmony_ci expect compile_fail 6488e5c31af7Sopenharmony_ci version 300 es 6489e5c31af7Sopenharmony_ci 6490e5c31af7Sopenharmony_ci both "" 6491e5c31af7Sopenharmony_ci #version 300 es 6492e5c31af7Sopenharmony_ci precision mediump float; 6493e5c31af7Sopenharmony_ci precision mediump int; 6494e5c31af7Sopenharmony_ci 6495e5c31af7Sopenharmony_ci ${DECLARATIONS} 6496e5c31af7Sopenharmony_ci 6497e5c31af7Sopenharmony_ci void main() 6498e5c31af7Sopenharmony_ci { 6499e5c31af7Sopenharmony_ci float c; 6500e5c31af7Sopenharmony_ci float a; 6501e5c31af7Sopenharmony_ci uvec3 b; 6502e5c31af7Sopenharmony_ci float c = a / b; 6503e5c31af7Sopenharmony_ci } 6504e5c31af7Sopenharmony_ci "" 6505e5c31af7Sopenharmony_ci end 6506e5c31af7Sopenharmony_ci case div_float_uvec3_uvec3 6507e5c31af7Sopenharmony_ci expect compile_fail 6508e5c31af7Sopenharmony_ci version 300 es 6509e5c31af7Sopenharmony_ci 6510e5c31af7Sopenharmony_ci both "" 6511e5c31af7Sopenharmony_ci #version 300 es 6512e5c31af7Sopenharmony_ci precision mediump float; 6513e5c31af7Sopenharmony_ci precision mediump int; 6514e5c31af7Sopenharmony_ci 6515e5c31af7Sopenharmony_ci ${DECLARATIONS} 6516e5c31af7Sopenharmony_ci 6517e5c31af7Sopenharmony_ci void main() 6518e5c31af7Sopenharmony_ci { 6519e5c31af7Sopenharmony_ci uvec3 c; 6520e5c31af7Sopenharmony_ci float a; 6521e5c31af7Sopenharmony_ci uvec3 b; 6522e5c31af7Sopenharmony_ci uvec3 c = a / b; 6523e5c31af7Sopenharmony_ci } 6524e5c31af7Sopenharmony_ci "" 6525e5c31af7Sopenharmony_ci end 6526e5c31af7Sopenharmony_ci case div_float_uvec4_float 6527e5c31af7Sopenharmony_ci expect compile_fail 6528e5c31af7Sopenharmony_ci version 300 es 6529e5c31af7Sopenharmony_ci 6530e5c31af7Sopenharmony_ci both "" 6531e5c31af7Sopenharmony_ci #version 300 es 6532e5c31af7Sopenharmony_ci precision mediump float; 6533e5c31af7Sopenharmony_ci precision mediump int; 6534e5c31af7Sopenharmony_ci 6535e5c31af7Sopenharmony_ci ${DECLARATIONS} 6536e5c31af7Sopenharmony_ci 6537e5c31af7Sopenharmony_ci void main() 6538e5c31af7Sopenharmony_ci { 6539e5c31af7Sopenharmony_ci float c; 6540e5c31af7Sopenharmony_ci float a; 6541e5c31af7Sopenharmony_ci uvec4 b; 6542e5c31af7Sopenharmony_ci float c = a / b; 6543e5c31af7Sopenharmony_ci } 6544e5c31af7Sopenharmony_ci "" 6545e5c31af7Sopenharmony_ci end 6546e5c31af7Sopenharmony_ci case div_float_uvec4_uvec4 6547e5c31af7Sopenharmony_ci expect compile_fail 6548e5c31af7Sopenharmony_ci version 300 es 6549e5c31af7Sopenharmony_ci 6550e5c31af7Sopenharmony_ci both "" 6551e5c31af7Sopenharmony_ci #version 300 es 6552e5c31af7Sopenharmony_ci precision mediump float; 6553e5c31af7Sopenharmony_ci precision mediump int; 6554e5c31af7Sopenharmony_ci 6555e5c31af7Sopenharmony_ci ${DECLARATIONS} 6556e5c31af7Sopenharmony_ci 6557e5c31af7Sopenharmony_ci void main() 6558e5c31af7Sopenharmony_ci { 6559e5c31af7Sopenharmony_ci uvec4 c; 6560e5c31af7Sopenharmony_ci float a; 6561e5c31af7Sopenharmony_ci uvec4 b; 6562e5c31af7Sopenharmony_ci uvec4 c = a / b; 6563e5c31af7Sopenharmony_ci } 6564e5c31af7Sopenharmony_ci "" 6565e5c31af7Sopenharmony_ci end 6566e5c31af7Sopenharmony_ci case div_vec2_uint_vec2 6567e5c31af7Sopenharmony_ci expect compile_fail 6568e5c31af7Sopenharmony_ci version 300 es 6569e5c31af7Sopenharmony_ci 6570e5c31af7Sopenharmony_ci both "" 6571e5c31af7Sopenharmony_ci #version 300 es 6572e5c31af7Sopenharmony_ci precision mediump float; 6573e5c31af7Sopenharmony_ci precision mediump int; 6574e5c31af7Sopenharmony_ci 6575e5c31af7Sopenharmony_ci ${DECLARATIONS} 6576e5c31af7Sopenharmony_ci 6577e5c31af7Sopenharmony_ci void main() 6578e5c31af7Sopenharmony_ci { 6579e5c31af7Sopenharmony_ci vec2 c; 6580e5c31af7Sopenharmony_ci vec2 a; 6581e5c31af7Sopenharmony_ci uint b; 6582e5c31af7Sopenharmony_ci vec2 c = a / b; 6583e5c31af7Sopenharmony_ci } 6584e5c31af7Sopenharmony_ci "" 6585e5c31af7Sopenharmony_ci end 6586e5c31af7Sopenharmony_ci case div_vec2_uint_uint 6587e5c31af7Sopenharmony_ci expect compile_fail 6588e5c31af7Sopenharmony_ci version 300 es 6589e5c31af7Sopenharmony_ci 6590e5c31af7Sopenharmony_ci both "" 6591e5c31af7Sopenharmony_ci #version 300 es 6592e5c31af7Sopenharmony_ci precision mediump float; 6593e5c31af7Sopenharmony_ci precision mediump int; 6594e5c31af7Sopenharmony_ci 6595e5c31af7Sopenharmony_ci ${DECLARATIONS} 6596e5c31af7Sopenharmony_ci 6597e5c31af7Sopenharmony_ci void main() 6598e5c31af7Sopenharmony_ci { 6599e5c31af7Sopenharmony_ci uint c; 6600e5c31af7Sopenharmony_ci vec2 a; 6601e5c31af7Sopenharmony_ci uint b; 6602e5c31af7Sopenharmony_ci uint c = a / b; 6603e5c31af7Sopenharmony_ci } 6604e5c31af7Sopenharmony_ci "" 6605e5c31af7Sopenharmony_ci end 6606e5c31af7Sopenharmony_ci case div_vec2_uvec2_vec2 6607e5c31af7Sopenharmony_ci expect compile_fail 6608e5c31af7Sopenharmony_ci version 300 es 6609e5c31af7Sopenharmony_ci 6610e5c31af7Sopenharmony_ci both "" 6611e5c31af7Sopenharmony_ci #version 300 es 6612e5c31af7Sopenharmony_ci precision mediump float; 6613e5c31af7Sopenharmony_ci precision mediump int; 6614e5c31af7Sopenharmony_ci 6615e5c31af7Sopenharmony_ci ${DECLARATIONS} 6616e5c31af7Sopenharmony_ci 6617e5c31af7Sopenharmony_ci void main() 6618e5c31af7Sopenharmony_ci { 6619e5c31af7Sopenharmony_ci vec2 c; 6620e5c31af7Sopenharmony_ci vec2 a; 6621e5c31af7Sopenharmony_ci uvec2 b; 6622e5c31af7Sopenharmony_ci vec2 c = a / b; 6623e5c31af7Sopenharmony_ci } 6624e5c31af7Sopenharmony_ci "" 6625e5c31af7Sopenharmony_ci end 6626e5c31af7Sopenharmony_ci case div_vec2_uvec2_uvec2 6627e5c31af7Sopenharmony_ci expect compile_fail 6628e5c31af7Sopenharmony_ci version 300 es 6629e5c31af7Sopenharmony_ci 6630e5c31af7Sopenharmony_ci both "" 6631e5c31af7Sopenharmony_ci #version 300 es 6632e5c31af7Sopenharmony_ci precision mediump float; 6633e5c31af7Sopenharmony_ci precision mediump int; 6634e5c31af7Sopenharmony_ci 6635e5c31af7Sopenharmony_ci ${DECLARATIONS} 6636e5c31af7Sopenharmony_ci 6637e5c31af7Sopenharmony_ci void main() 6638e5c31af7Sopenharmony_ci { 6639e5c31af7Sopenharmony_ci uvec2 c; 6640e5c31af7Sopenharmony_ci vec2 a; 6641e5c31af7Sopenharmony_ci uvec2 b; 6642e5c31af7Sopenharmony_ci uvec2 c = a / b; 6643e5c31af7Sopenharmony_ci } 6644e5c31af7Sopenharmony_ci "" 6645e5c31af7Sopenharmony_ci end 6646e5c31af7Sopenharmony_ci case div_vec2_uvec3_vec2 6647e5c31af7Sopenharmony_ci expect compile_fail 6648e5c31af7Sopenharmony_ci version 300 es 6649e5c31af7Sopenharmony_ci 6650e5c31af7Sopenharmony_ci both "" 6651e5c31af7Sopenharmony_ci #version 300 es 6652e5c31af7Sopenharmony_ci precision mediump float; 6653e5c31af7Sopenharmony_ci precision mediump int; 6654e5c31af7Sopenharmony_ci 6655e5c31af7Sopenharmony_ci ${DECLARATIONS} 6656e5c31af7Sopenharmony_ci 6657e5c31af7Sopenharmony_ci void main() 6658e5c31af7Sopenharmony_ci { 6659e5c31af7Sopenharmony_ci vec2 c; 6660e5c31af7Sopenharmony_ci vec2 a; 6661e5c31af7Sopenharmony_ci uvec3 b; 6662e5c31af7Sopenharmony_ci vec2 c = a / b; 6663e5c31af7Sopenharmony_ci } 6664e5c31af7Sopenharmony_ci "" 6665e5c31af7Sopenharmony_ci end 6666e5c31af7Sopenharmony_ci case div_vec2_uvec3_uvec3 6667e5c31af7Sopenharmony_ci expect compile_fail 6668e5c31af7Sopenharmony_ci version 300 es 6669e5c31af7Sopenharmony_ci 6670e5c31af7Sopenharmony_ci both "" 6671e5c31af7Sopenharmony_ci #version 300 es 6672e5c31af7Sopenharmony_ci precision mediump float; 6673e5c31af7Sopenharmony_ci precision mediump int; 6674e5c31af7Sopenharmony_ci 6675e5c31af7Sopenharmony_ci ${DECLARATIONS} 6676e5c31af7Sopenharmony_ci 6677e5c31af7Sopenharmony_ci void main() 6678e5c31af7Sopenharmony_ci { 6679e5c31af7Sopenharmony_ci uvec3 c; 6680e5c31af7Sopenharmony_ci vec2 a; 6681e5c31af7Sopenharmony_ci uvec3 b; 6682e5c31af7Sopenharmony_ci uvec3 c = a / b; 6683e5c31af7Sopenharmony_ci } 6684e5c31af7Sopenharmony_ci "" 6685e5c31af7Sopenharmony_ci end 6686e5c31af7Sopenharmony_ci case div_vec2_uvec4_vec2 6687e5c31af7Sopenharmony_ci expect compile_fail 6688e5c31af7Sopenharmony_ci version 300 es 6689e5c31af7Sopenharmony_ci 6690e5c31af7Sopenharmony_ci both "" 6691e5c31af7Sopenharmony_ci #version 300 es 6692e5c31af7Sopenharmony_ci precision mediump float; 6693e5c31af7Sopenharmony_ci precision mediump int; 6694e5c31af7Sopenharmony_ci 6695e5c31af7Sopenharmony_ci ${DECLARATIONS} 6696e5c31af7Sopenharmony_ci 6697e5c31af7Sopenharmony_ci void main() 6698e5c31af7Sopenharmony_ci { 6699e5c31af7Sopenharmony_ci vec2 c; 6700e5c31af7Sopenharmony_ci vec2 a; 6701e5c31af7Sopenharmony_ci uvec4 b; 6702e5c31af7Sopenharmony_ci vec2 c = a / b; 6703e5c31af7Sopenharmony_ci } 6704e5c31af7Sopenharmony_ci "" 6705e5c31af7Sopenharmony_ci end 6706e5c31af7Sopenharmony_ci case div_vec2_uvec4_uvec4 6707e5c31af7Sopenharmony_ci expect compile_fail 6708e5c31af7Sopenharmony_ci version 300 es 6709e5c31af7Sopenharmony_ci 6710e5c31af7Sopenharmony_ci both "" 6711e5c31af7Sopenharmony_ci #version 300 es 6712e5c31af7Sopenharmony_ci precision mediump float; 6713e5c31af7Sopenharmony_ci precision mediump int; 6714e5c31af7Sopenharmony_ci 6715e5c31af7Sopenharmony_ci ${DECLARATIONS} 6716e5c31af7Sopenharmony_ci 6717e5c31af7Sopenharmony_ci void main() 6718e5c31af7Sopenharmony_ci { 6719e5c31af7Sopenharmony_ci uvec4 c; 6720e5c31af7Sopenharmony_ci vec2 a; 6721e5c31af7Sopenharmony_ci uvec4 b; 6722e5c31af7Sopenharmony_ci uvec4 c = a / b; 6723e5c31af7Sopenharmony_ci } 6724e5c31af7Sopenharmony_ci "" 6725e5c31af7Sopenharmony_ci end 6726e5c31af7Sopenharmony_ci case div_vec3_uint_vec3 6727e5c31af7Sopenharmony_ci expect compile_fail 6728e5c31af7Sopenharmony_ci version 300 es 6729e5c31af7Sopenharmony_ci 6730e5c31af7Sopenharmony_ci both "" 6731e5c31af7Sopenharmony_ci #version 300 es 6732e5c31af7Sopenharmony_ci precision mediump float; 6733e5c31af7Sopenharmony_ci precision mediump int; 6734e5c31af7Sopenharmony_ci 6735e5c31af7Sopenharmony_ci ${DECLARATIONS} 6736e5c31af7Sopenharmony_ci 6737e5c31af7Sopenharmony_ci void main() 6738e5c31af7Sopenharmony_ci { 6739e5c31af7Sopenharmony_ci vec3 c; 6740e5c31af7Sopenharmony_ci vec3 a; 6741e5c31af7Sopenharmony_ci uint b; 6742e5c31af7Sopenharmony_ci vec3 c = a / b; 6743e5c31af7Sopenharmony_ci } 6744e5c31af7Sopenharmony_ci "" 6745e5c31af7Sopenharmony_ci end 6746e5c31af7Sopenharmony_ci case div_vec3_uint_uint 6747e5c31af7Sopenharmony_ci expect compile_fail 6748e5c31af7Sopenharmony_ci version 300 es 6749e5c31af7Sopenharmony_ci 6750e5c31af7Sopenharmony_ci both "" 6751e5c31af7Sopenharmony_ci #version 300 es 6752e5c31af7Sopenharmony_ci precision mediump float; 6753e5c31af7Sopenharmony_ci precision mediump int; 6754e5c31af7Sopenharmony_ci 6755e5c31af7Sopenharmony_ci ${DECLARATIONS} 6756e5c31af7Sopenharmony_ci 6757e5c31af7Sopenharmony_ci void main() 6758e5c31af7Sopenharmony_ci { 6759e5c31af7Sopenharmony_ci uint c; 6760e5c31af7Sopenharmony_ci vec3 a; 6761e5c31af7Sopenharmony_ci uint b; 6762e5c31af7Sopenharmony_ci uint c = a / b; 6763e5c31af7Sopenharmony_ci } 6764e5c31af7Sopenharmony_ci "" 6765e5c31af7Sopenharmony_ci end 6766e5c31af7Sopenharmony_ci case div_vec3_uvec2_vec3 6767e5c31af7Sopenharmony_ci expect compile_fail 6768e5c31af7Sopenharmony_ci version 300 es 6769e5c31af7Sopenharmony_ci 6770e5c31af7Sopenharmony_ci both "" 6771e5c31af7Sopenharmony_ci #version 300 es 6772e5c31af7Sopenharmony_ci precision mediump float; 6773e5c31af7Sopenharmony_ci precision mediump int; 6774e5c31af7Sopenharmony_ci 6775e5c31af7Sopenharmony_ci ${DECLARATIONS} 6776e5c31af7Sopenharmony_ci 6777e5c31af7Sopenharmony_ci void main() 6778e5c31af7Sopenharmony_ci { 6779e5c31af7Sopenharmony_ci vec3 c; 6780e5c31af7Sopenharmony_ci vec3 a; 6781e5c31af7Sopenharmony_ci uvec2 b; 6782e5c31af7Sopenharmony_ci vec3 c = a / b; 6783e5c31af7Sopenharmony_ci } 6784e5c31af7Sopenharmony_ci "" 6785e5c31af7Sopenharmony_ci end 6786e5c31af7Sopenharmony_ci case div_vec3_uvec2_uvec2 6787e5c31af7Sopenharmony_ci expect compile_fail 6788e5c31af7Sopenharmony_ci version 300 es 6789e5c31af7Sopenharmony_ci 6790e5c31af7Sopenharmony_ci both "" 6791e5c31af7Sopenharmony_ci #version 300 es 6792e5c31af7Sopenharmony_ci precision mediump float; 6793e5c31af7Sopenharmony_ci precision mediump int; 6794e5c31af7Sopenharmony_ci 6795e5c31af7Sopenharmony_ci ${DECLARATIONS} 6796e5c31af7Sopenharmony_ci 6797e5c31af7Sopenharmony_ci void main() 6798e5c31af7Sopenharmony_ci { 6799e5c31af7Sopenharmony_ci uvec2 c; 6800e5c31af7Sopenharmony_ci vec3 a; 6801e5c31af7Sopenharmony_ci uvec2 b; 6802e5c31af7Sopenharmony_ci uvec2 c = a / b; 6803e5c31af7Sopenharmony_ci } 6804e5c31af7Sopenharmony_ci "" 6805e5c31af7Sopenharmony_ci end 6806e5c31af7Sopenharmony_ci case div_vec3_uvec3_vec3 6807e5c31af7Sopenharmony_ci expect compile_fail 6808e5c31af7Sopenharmony_ci version 300 es 6809e5c31af7Sopenharmony_ci 6810e5c31af7Sopenharmony_ci both "" 6811e5c31af7Sopenharmony_ci #version 300 es 6812e5c31af7Sopenharmony_ci precision mediump float; 6813e5c31af7Sopenharmony_ci precision mediump int; 6814e5c31af7Sopenharmony_ci 6815e5c31af7Sopenharmony_ci ${DECLARATIONS} 6816e5c31af7Sopenharmony_ci 6817e5c31af7Sopenharmony_ci void main() 6818e5c31af7Sopenharmony_ci { 6819e5c31af7Sopenharmony_ci vec3 c; 6820e5c31af7Sopenharmony_ci vec3 a; 6821e5c31af7Sopenharmony_ci uvec3 b; 6822e5c31af7Sopenharmony_ci vec3 c = a / b; 6823e5c31af7Sopenharmony_ci } 6824e5c31af7Sopenharmony_ci "" 6825e5c31af7Sopenharmony_ci end 6826e5c31af7Sopenharmony_ci case div_vec3_uvec3_uvec3 6827e5c31af7Sopenharmony_ci expect compile_fail 6828e5c31af7Sopenharmony_ci version 300 es 6829e5c31af7Sopenharmony_ci 6830e5c31af7Sopenharmony_ci both "" 6831e5c31af7Sopenharmony_ci #version 300 es 6832e5c31af7Sopenharmony_ci precision mediump float; 6833e5c31af7Sopenharmony_ci precision mediump int; 6834e5c31af7Sopenharmony_ci 6835e5c31af7Sopenharmony_ci ${DECLARATIONS} 6836e5c31af7Sopenharmony_ci 6837e5c31af7Sopenharmony_ci void main() 6838e5c31af7Sopenharmony_ci { 6839e5c31af7Sopenharmony_ci uvec3 c; 6840e5c31af7Sopenharmony_ci vec3 a; 6841e5c31af7Sopenharmony_ci uvec3 b; 6842e5c31af7Sopenharmony_ci uvec3 c = a / b; 6843e5c31af7Sopenharmony_ci } 6844e5c31af7Sopenharmony_ci "" 6845e5c31af7Sopenharmony_ci end 6846e5c31af7Sopenharmony_ci case div_vec3_uvec4_vec3 6847e5c31af7Sopenharmony_ci expect compile_fail 6848e5c31af7Sopenharmony_ci version 300 es 6849e5c31af7Sopenharmony_ci 6850e5c31af7Sopenharmony_ci both "" 6851e5c31af7Sopenharmony_ci #version 300 es 6852e5c31af7Sopenharmony_ci precision mediump float; 6853e5c31af7Sopenharmony_ci precision mediump int; 6854e5c31af7Sopenharmony_ci 6855e5c31af7Sopenharmony_ci ${DECLARATIONS} 6856e5c31af7Sopenharmony_ci 6857e5c31af7Sopenharmony_ci void main() 6858e5c31af7Sopenharmony_ci { 6859e5c31af7Sopenharmony_ci vec3 c; 6860e5c31af7Sopenharmony_ci vec3 a; 6861e5c31af7Sopenharmony_ci uvec4 b; 6862e5c31af7Sopenharmony_ci vec3 c = a / b; 6863e5c31af7Sopenharmony_ci } 6864e5c31af7Sopenharmony_ci "" 6865e5c31af7Sopenharmony_ci end 6866e5c31af7Sopenharmony_ci case div_vec3_uvec4_uvec4 6867e5c31af7Sopenharmony_ci expect compile_fail 6868e5c31af7Sopenharmony_ci version 300 es 6869e5c31af7Sopenharmony_ci 6870e5c31af7Sopenharmony_ci both "" 6871e5c31af7Sopenharmony_ci #version 300 es 6872e5c31af7Sopenharmony_ci precision mediump float; 6873e5c31af7Sopenharmony_ci precision mediump int; 6874e5c31af7Sopenharmony_ci 6875e5c31af7Sopenharmony_ci ${DECLARATIONS} 6876e5c31af7Sopenharmony_ci 6877e5c31af7Sopenharmony_ci void main() 6878e5c31af7Sopenharmony_ci { 6879e5c31af7Sopenharmony_ci uvec4 c; 6880e5c31af7Sopenharmony_ci vec3 a; 6881e5c31af7Sopenharmony_ci uvec4 b; 6882e5c31af7Sopenharmony_ci uvec4 c = a / b; 6883e5c31af7Sopenharmony_ci } 6884e5c31af7Sopenharmony_ci "" 6885e5c31af7Sopenharmony_ci end 6886e5c31af7Sopenharmony_ci case div_vec4_uint_vec4 6887e5c31af7Sopenharmony_ci expect compile_fail 6888e5c31af7Sopenharmony_ci version 300 es 6889e5c31af7Sopenharmony_ci 6890e5c31af7Sopenharmony_ci both "" 6891e5c31af7Sopenharmony_ci #version 300 es 6892e5c31af7Sopenharmony_ci precision mediump float; 6893e5c31af7Sopenharmony_ci precision mediump int; 6894e5c31af7Sopenharmony_ci 6895e5c31af7Sopenharmony_ci ${DECLARATIONS} 6896e5c31af7Sopenharmony_ci 6897e5c31af7Sopenharmony_ci void main() 6898e5c31af7Sopenharmony_ci { 6899e5c31af7Sopenharmony_ci vec4 c; 6900e5c31af7Sopenharmony_ci vec4 a; 6901e5c31af7Sopenharmony_ci uint b; 6902e5c31af7Sopenharmony_ci vec4 c = a / b; 6903e5c31af7Sopenharmony_ci } 6904e5c31af7Sopenharmony_ci "" 6905e5c31af7Sopenharmony_ci end 6906e5c31af7Sopenharmony_ci case div_vec4_uint_uint 6907e5c31af7Sopenharmony_ci expect compile_fail 6908e5c31af7Sopenharmony_ci version 300 es 6909e5c31af7Sopenharmony_ci 6910e5c31af7Sopenharmony_ci both "" 6911e5c31af7Sopenharmony_ci #version 300 es 6912e5c31af7Sopenharmony_ci precision mediump float; 6913e5c31af7Sopenharmony_ci precision mediump int; 6914e5c31af7Sopenharmony_ci 6915e5c31af7Sopenharmony_ci ${DECLARATIONS} 6916e5c31af7Sopenharmony_ci 6917e5c31af7Sopenharmony_ci void main() 6918e5c31af7Sopenharmony_ci { 6919e5c31af7Sopenharmony_ci uint c; 6920e5c31af7Sopenharmony_ci vec4 a; 6921e5c31af7Sopenharmony_ci uint b; 6922e5c31af7Sopenharmony_ci uint c = a / b; 6923e5c31af7Sopenharmony_ci } 6924e5c31af7Sopenharmony_ci "" 6925e5c31af7Sopenharmony_ci end 6926e5c31af7Sopenharmony_ci case div_vec4_uvec2_vec4 6927e5c31af7Sopenharmony_ci expect compile_fail 6928e5c31af7Sopenharmony_ci version 300 es 6929e5c31af7Sopenharmony_ci 6930e5c31af7Sopenharmony_ci both "" 6931e5c31af7Sopenharmony_ci #version 300 es 6932e5c31af7Sopenharmony_ci precision mediump float; 6933e5c31af7Sopenharmony_ci precision mediump int; 6934e5c31af7Sopenharmony_ci 6935e5c31af7Sopenharmony_ci ${DECLARATIONS} 6936e5c31af7Sopenharmony_ci 6937e5c31af7Sopenharmony_ci void main() 6938e5c31af7Sopenharmony_ci { 6939e5c31af7Sopenharmony_ci vec4 c; 6940e5c31af7Sopenharmony_ci vec4 a; 6941e5c31af7Sopenharmony_ci uvec2 b; 6942e5c31af7Sopenharmony_ci vec4 c = a / b; 6943e5c31af7Sopenharmony_ci } 6944e5c31af7Sopenharmony_ci "" 6945e5c31af7Sopenharmony_ci end 6946e5c31af7Sopenharmony_ci case div_vec4_uvec2_uvec2 6947e5c31af7Sopenharmony_ci expect compile_fail 6948e5c31af7Sopenharmony_ci version 300 es 6949e5c31af7Sopenharmony_ci 6950e5c31af7Sopenharmony_ci both "" 6951e5c31af7Sopenharmony_ci #version 300 es 6952e5c31af7Sopenharmony_ci precision mediump float; 6953e5c31af7Sopenharmony_ci precision mediump int; 6954e5c31af7Sopenharmony_ci 6955e5c31af7Sopenharmony_ci ${DECLARATIONS} 6956e5c31af7Sopenharmony_ci 6957e5c31af7Sopenharmony_ci void main() 6958e5c31af7Sopenharmony_ci { 6959e5c31af7Sopenharmony_ci uvec2 c; 6960e5c31af7Sopenharmony_ci vec4 a; 6961e5c31af7Sopenharmony_ci uvec2 b; 6962e5c31af7Sopenharmony_ci uvec2 c = a / b; 6963e5c31af7Sopenharmony_ci } 6964e5c31af7Sopenharmony_ci "" 6965e5c31af7Sopenharmony_ci end 6966e5c31af7Sopenharmony_ci case div_vec4_uvec3_vec4 6967e5c31af7Sopenharmony_ci expect compile_fail 6968e5c31af7Sopenharmony_ci version 300 es 6969e5c31af7Sopenharmony_ci 6970e5c31af7Sopenharmony_ci both "" 6971e5c31af7Sopenharmony_ci #version 300 es 6972e5c31af7Sopenharmony_ci precision mediump float; 6973e5c31af7Sopenharmony_ci precision mediump int; 6974e5c31af7Sopenharmony_ci 6975e5c31af7Sopenharmony_ci ${DECLARATIONS} 6976e5c31af7Sopenharmony_ci 6977e5c31af7Sopenharmony_ci void main() 6978e5c31af7Sopenharmony_ci { 6979e5c31af7Sopenharmony_ci vec4 c; 6980e5c31af7Sopenharmony_ci vec4 a; 6981e5c31af7Sopenharmony_ci uvec3 b; 6982e5c31af7Sopenharmony_ci vec4 c = a / b; 6983e5c31af7Sopenharmony_ci } 6984e5c31af7Sopenharmony_ci "" 6985e5c31af7Sopenharmony_ci end 6986e5c31af7Sopenharmony_ci case div_vec4_uvec3_uvec3 6987e5c31af7Sopenharmony_ci expect compile_fail 6988e5c31af7Sopenharmony_ci version 300 es 6989e5c31af7Sopenharmony_ci 6990e5c31af7Sopenharmony_ci both "" 6991e5c31af7Sopenharmony_ci #version 300 es 6992e5c31af7Sopenharmony_ci precision mediump float; 6993e5c31af7Sopenharmony_ci precision mediump int; 6994e5c31af7Sopenharmony_ci 6995e5c31af7Sopenharmony_ci ${DECLARATIONS} 6996e5c31af7Sopenharmony_ci 6997e5c31af7Sopenharmony_ci void main() 6998e5c31af7Sopenharmony_ci { 6999e5c31af7Sopenharmony_ci uvec3 c; 7000e5c31af7Sopenharmony_ci vec4 a; 7001e5c31af7Sopenharmony_ci uvec3 b; 7002e5c31af7Sopenharmony_ci uvec3 c = a / b; 7003e5c31af7Sopenharmony_ci } 7004e5c31af7Sopenharmony_ci "" 7005e5c31af7Sopenharmony_ci end 7006e5c31af7Sopenharmony_ci case div_vec4_uvec4_vec4 7007e5c31af7Sopenharmony_ci expect compile_fail 7008e5c31af7Sopenharmony_ci version 300 es 7009e5c31af7Sopenharmony_ci 7010e5c31af7Sopenharmony_ci both "" 7011e5c31af7Sopenharmony_ci #version 300 es 7012e5c31af7Sopenharmony_ci precision mediump float; 7013e5c31af7Sopenharmony_ci precision mediump int; 7014e5c31af7Sopenharmony_ci 7015e5c31af7Sopenharmony_ci ${DECLARATIONS} 7016e5c31af7Sopenharmony_ci 7017e5c31af7Sopenharmony_ci void main() 7018e5c31af7Sopenharmony_ci { 7019e5c31af7Sopenharmony_ci vec4 c; 7020e5c31af7Sopenharmony_ci vec4 a; 7021e5c31af7Sopenharmony_ci uvec4 b; 7022e5c31af7Sopenharmony_ci vec4 c = a / b; 7023e5c31af7Sopenharmony_ci } 7024e5c31af7Sopenharmony_ci "" 7025e5c31af7Sopenharmony_ci end 7026e5c31af7Sopenharmony_ci case div_vec4_uvec4_uvec4 7027e5c31af7Sopenharmony_ci expect compile_fail 7028e5c31af7Sopenharmony_ci version 300 es 7029e5c31af7Sopenharmony_ci 7030e5c31af7Sopenharmony_ci both "" 7031e5c31af7Sopenharmony_ci #version 300 es 7032e5c31af7Sopenharmony_ci precision mediump float; 7033e5c31af7Sopenharmony_ci precision mediump int; 7034e5c31af7Sopenharmony_ci 7035e5c31af7Sopenharmony_ci ${DECLARATIONS} 7036e5c31af7Sopenharmony_ci 7037e5c31af7Sopenharmony_ci void main() 7038e5c31af7Sopenharmony_ci { 7039e5c31af7Sopenharmony_ci uvec4 c; 7040e5c31af7Sopenharmony_ci vec4 a; 7041e5c31af7Sopenharmony_ci uvec4 b; 7042e5c31af7Sopenharmony_ci uvec4 c = a / b; 7043e5c31af7Sopenharmony_ci } 7044e5c31af7Sopenharmony_ci "" 7045e5c31af7Sopenharmony_ci end 7046e5c31af7Sopenharmony_ci case div_int_uint_int 7047e5c31af7Sopenharmony_ci expect compile_fail 7048e5c31af7Sopenharmony_ci version 300 es 7049e5c31af7Sopenharmony_ci 7050e5c31af7Sopenharmony_ci both "" 7051e5c31af7Sopenharmony_ci #version 300 es 7052e5c31af7Sopenharmony_ci precision mediump float; 7053e5c31af7Sopenharmony_ci precision mediump int; 7054e5c31af7Sopenharmony_ci 7055e5c31af7Sopenharmony_ci ${DECLARATIONS} 7056e5c31af7Sopenharmony_ci 7057e5c31af7Sopenharmony_ci void main() 7058e5c31af7Sopenharmony_ci { 7059e5c31af7Sopenharmony_ci int c; 7060e5c31af7Sopenharmony_ci int a; 7061e5c31af7Sopenharmony_ci uint b; 7062e5c31af7Sopenharmony_ci int c = a / b; 7063e5c31af7Sopenharmony_ci } 7064e5c31af7Sopenharmony_ci "" 7065e5c31af7Sopenharmony_ci end 7066e5c31af7Sopenharmony_ci case div_int_uint_uint 7067e5c31af7Sopenharmony_ci expect compile_fail 7068e5c31af7Sopenharmony_ci version 300 es 7069e5c31af7Sopenharmony_ci 7070e5c31af7Sopenharmony_ci both "" 7071e5c31af7Sopenharmony_ci #version 300 es 7072e5c31af7Sopenharmony_ci precision mediump float; 7073e5c31af7Sopenharmony_ci precision mediump int; 7074e5c31af7Sopenharmony_ci 7075e5c31af7Sopenharmony_ci ${DECLARATIONS} 7076e5c31af7Sopenharmony_ci 7077e5c31af7Sopenharmony_ci void main() 7078e5c31af7Sopenharmony_ci { 7079e5c31af7Sopenharmony_ci uint c; 7080e5c31af7Sopenharmony_ci int a; 7081e5c31af7Sopenharmony_ci uint b; 7082e5c31af7Sopenharmony_ci uint c = a / b; 7083e5c31af7Sopenharmony_ci } 7084e5c31af7Sopenharmony_ci "" 7085e5c31af7Sopenharmony_ci end 7086e5c31af7Sopenharmony_ci case div_int_uvec2_int 7087e5c31af7Sopenharmony_ci expect compile_fail 7088e5c31af7Sopenharmony_ci version 300 es 7089e5c31af7Sopenharmony_ci 7090e5c31af7Sopenharmony_ci both "" 7091e5c31af7Sopenharmony_ci #version 300 es 7092e5c31af7Sopenharmony_ci precision mediump float; 7093e5c31af7Sopenharmony_ci precision mediump int; 7094e5c31af7Sopenharmony_ci 7095e5c31af7Sopenharmony_ci ${DECLARATIONS} 7096e5c31af7Sopenharmony_ci 7097e5c31af7Sopenharmony_ci void main() 7098e5c31af7Sopenharmony_ci { 7099e5c31af7Sopenharmony_ci int c; 7100e5c31af7Sopenharmony_ci int a; 7101e5c31af7Sopenharmony_ci uvec2 b; 7102e5c31af7Sopenharmony_ci int c = a / b; 7103e5c31af7Sopenharmony_ci } 7104e5c31af7Sopenharmony_ci "" 7105e5c31af7Sopenharmony_ci end 7106e5c31af7Sopenharmony_ci case div_int_uvec2_uvec2 7107e5c31af7Sopenharmony_ci expect compile_fail 7108e5c31af7Sopenharmony_ci version 300 es 7109e5c31af7Sopenharmony_ci 7110e5c31af7Sopenharmony_ci both "" 7111e5c31af7Sopenharmony_ci #version 300 es 7112e5c31af7Sopenharmony_ci precision mediump float; 7113e5c31af7Sopenharmony_ci precision mediump int; 7114e5c31af7Sopenharmony_ci 7115e5c31af7Sopenharmony_ci ${DECLARATIONS} 7116e5c31af7Sopenharmony_ci 7117e5c31af7Sopenharmony_ci void main() 7118e5c31af7Sopenharmony_ci { 7119e5c31af7Sopenharmony_ci uvec2 c; 7120e5c31af7Sopenharmony_ci int a; 7121e5c31af7Sopenharmony_ci uvec2 b; 7122e5c31af7Sopenharmony_ci uvec2 c = a / b; 7123e5c31af7Sopenharmony_ci } 7124e5c31af7Sopenharmony_ci "" 7125e5c31af7Sopenharmony_ci end 7126e5c31af7Sopenharmony_ci case div_int_uvec3_int 7127e5c31af7Sopenharmony_ci expect compile_fail 7128e5c31af7Sopenharmony_ci version 300 es 7129e5c31af7Sopenharmony_ci 7130e5c31af7Sopenharmony_ci both "" 7131e5c31af7Sopenharmony_ci #version 300 es 7132e5c31af7Sopenharmony_ci precision mediump float; 7133e5c31af7Sopenharmony_ci precision mediump int; 7134e5c31af7Sopenharmony_ci 7135e5c31af7Sopenharmony_ci ${DECLARATIONS} 7136e5c31af7Sopenharmony_ci 7137e5c31af7Sopenharmony_ci void main() 7138e5c31af7Sopenharmony_ci { 7139e5c31af7Sopenharmony_ci int c; 7140e5c31af7Sopenharmony_ci int a; 7141e5c31af7Sopenharmony_ci uvec3 b; 7142e5c31af7Sopenharmony_ci int c = a / b; 7143e5c31af7Sopenharmony_ci } 7144e5c31af7Sopenharmony_ci "" 7145e5c31af7Sopenharmony_ci end 7146e5c31af7Sopenharmony_ci case div_int_uvec3_uvec3 7147e5c31af7Sopenharmony_ci expect compile_fail 7148e5c31af7Sopenharmony_ci version 300 es 7149e5c31af7Sopenharmony_ci 7150e5c31af7Sopenharmony_ci both "" 7151e5c31af7Sopenharmony_ci #version 300 es 7152e5c31af7Sopenharmony_ci precision mediump float; 7153e5c31af7Sopenharmony_ci precision mediump int; 7154e5c31af7Sopenharmony_ci 7155e5c31af7Sopenharmony_ci ${DECLARATIONS} 7156e5c31af7Sopenharmony_ci 7157e5c31af7Sopenharmony_ci void main() 7158e5c31af7Sopenharmony_ci { 7159e5c31af7Sopenharmony_ci uvec3 c; 7160e5c31af7Sopenharmony_ci int a; 7161e5c31af7Sopenharmony_ci uvec3 b; 7162e5c31af7Sopenharmony_ci uvec3 c = a / b; 7163e5c31af7Sopenharmony_ci } 7164e5c31af7Sopenharmony_ci "" 7165e5c31af7Sopenharmony_ci end 7166e5c31af7Sopenharmony_ci case div_int_uvec4_int 7167e5c31af7Sopenharmony_ci expect compile_fail 7168e5c31af7Sopenharmony_ci version 300 es 7169e5c31af7Sopenharmony_ci 7170e5c31af7Sopenharmony_ci both "" 7171e5c31af7Sopenharmony_ci #version 300 es 7172e5c31af7Sopenharmony_ci precision mediump float; 7173e5c31af7Sopenharmony_ci precision mediump int; 7174e5c31af7Sopenharmony_ci 7175e5c31af7Sopenharmony_ci ${DECLARATIONS} 7176e5c31af7Sopenharmony_ci 7177e5c31af7Sopenharmony_ci void main() 7178e5c31af7Sopenharmony_ci { 7179e5c31af7Sopenharmony_ci int c; 7180e5c31af7Sopenharmony_ci int a; 7181e5c31af7Sopenharmony_ci uvec4 b; 7182e5c31af7Sopenharmony_ci int c = a / b; 7183e5c31af7Sopenharmony_ci } 7184e5c31af7Sopenharmony_ci "" 7185e5c31af7Sopenharmony_ci end 7186e5c31af7Sopenharmony_ci case div_int_uvec4_uvec4 7187e5c31af7Sopenharmony_ci expect compile_fail 7188e5c31af7Sopenharmony_ci version 300 es 7189e5c31af7Sopenharmony_ci 7190e5c31af7Sopenharmony_ci both "" 7191e5c31af7Sopenharmony_ci #version 300 es 7192e5c31af7Sopenharmony_ci precision mediump float; 7193e5c31af7Sopenharmony_ci precision mediump int; 7194e5c31af7Sopenharmony_ci 7195e5c31af7Sopenharmony_ci ${DECLARATIONS} 7196e5c31af7Sopenharmony_ci 7197e5c31af7Sopenharmony_ci void main() 7198e5c31af7Sopenharmony_ci { 7199e5c31af7Sopenharmony_ci uvec4 c; 7200e5c31af7Sopenharmony_ci int a; 7201e5c31af7Sopenharmony_ci uvec4 b; 7202e5c31af7Sopenharmony_ci uvec4 c = a / b; 7203e5c31af7Sopenharmony_ci } 7204e5c31af7Sopenharmony_ci "" 7205e5c31af7Sopenharmony_ci end 7206e5c31af7Sopenharmony_ci case div_ivec2_uint_ivec2 7207e5c31af7Sopenharmony_ci expect compile_fail 7208e5c31af7Sopenharmony_ci version 300 es 7209e5c31af7Sopenharmony_ci 7210e5c31af7Sopenharmony_ci both "" 7211e5c31af7Sopenharmony_ci #version 300 es 7212e5c31af7Sopenharmony_ci precision mediump float; 7213e5c31af7Sopenharmony_ci precision mediump int; 7214e5c31af7Sopenharmony_ci 7215e5c31af7Sopenharmony_ci ${DECLARATIONS} 7216e5c31af7Sopenharmony_ci 7217e5c31af7Sopenharmony_ci void main() 7218e5c31af7Sopenharmony_ci { 7219e5c31af7Sopenharmony_ci ivec2 c; 7220e5c31af7Sopenharmony_ci ivec2 a; 7221e5c31af7Sopenharmony_ci uint b; 7222e5c31af7Sopenharmony_ci ivec2 c = a / b; 7223e5c31af7Sopenharmony_ci } 7224e5c31af7Sopenharmony_ci "" 7225e5c31af7Sopenharmony_ci end 7226e5c31af7Sopenharmony_ci case div_ivec2_uint_uint 7227e5c31af7Sopenharmony_ci expect compile_fail 7228e5c31af7Sopenharmony_ci version 300 es 7229e5c31af7Sopenharmony_ci 7230e5c31af7Sopenharmony_ci both "" 7231e5c31af7Sopenharmony_ci #version 300 es 7232e5c31af7Sopenharmony_ci precision mediump float; 7233e5c31af7Sopenharmony_ci precision mediump int; 7234e5c31af7Sopenharmony_ci 7235e5c31af7Sopenharmony_ci ${DECLARATIONS} 7236e5c31af7Sopenharmony_ci 7237e5c31af7Sopenharmony_ci void main() 7238e5c31af7Sopenharmony_ci { 7239e5c31af7Sopenharmony_ci uint c; 7240e5c31af7Sopenharmony_ci ivec2 a; 7241e5c31af7Sopenharmony_ci uint b; 7242e5c31af7Sopenharmony_ci uint c = a / b; 7243e5c31af7Sopenharmony_ci } 7244e5c31af7Sopenharmony_ci "" 7245e5c31af7Sopenharmony_ci end 7246e5c31af7Sopenharmony_ci case div_ivec2_uvec2_ivec2 7247e5c31af7Sopenharmony_ci expect compile_fail 7248e5c31af7Sopenharmony_ci version 300 es 7249e5c31af7Sopenharmony_ci 7250e5c31af7Sopenharmony_ci both "" 7251e5c31af7Sopenharmony_ci #version 300 es 7252e5c31af7Sopenharmony_ci precision mediump float; 7253e5c31af7Sopenharmony_ci precision mediump int; 7254e5c31af7Sopenharmony_ci 7255e5c31af7Sopenharmony_ci ${DECLARATIONS} 7256e5c31af7Sopenharmony_ci 7257e5c31af7Sopenharmony_ci void main() 7258e5c31af7Sopenharmony_ci { 7259e5c31af7Sopenharmony_ci ivec2 c; 7260e5c31af7Sopenharmony_ci ivec2 a; 7261e5c31af7Sopenharmony_ci uvec2 b; 7262e5c31af7Sopenharmony_ci ivec2 c = a / b; 7263e5c31af7Sopenharmony_ci } 7264e5c31af7Sopenharmony_ci "" 7265e5c31af7Sopenharmony_ci end 7266e5c31af7Sopenharmony_ci case div_ivec2_uvec2_uvec2 7267e5c31af7Sopenharmony_ci expect compile_fail 7268e5c31af7Sopenharmony_ci version 300 es 7269e5c31af7Sopenharmony_ci 7270e5c31af7Sopenharmony_ci both "" 7271e5c31af7Sopenharmony_ci #version 300 es 7272e5c31af7Sopenharmony_ci precision mediump float; 7273e5c31af7Sopenharmony_ci precision mediump int; 7274e5c31af7Sopenharmony_ci 7275e5c31af7Sopenharmony_ci ${DECLARATIONS} 7276e5c31af7Sopenharmony_ci 7277e5c31af7Sopenharmony_ci void main() 7278e5c31af7Sopenharmony_ci { 7279e5c31af7Sopenharmony_ci uvec2 c; 7280e5c31af7Sopenharmony_ci ivec2 a; 7281e5c31af7Sopenharmony_ci uvec2 b; 7282e5c31af7Sopenharmony_ci uvec2 c = a / b; 7283e5c31af7Sopenharmony_ci } 7284e5c31af7Sopenharmony_ci "" 7285e5c31af7Sopenharmony_ci end 7286e5c31af7Sopenharmony_ci case div_ivec2_uvec3_ivec2 7287e5c31af7Sopenharmony_ci expect compile_fail 7288e5c31af7Sopenharmony_ci version 300 es 7289e5c31af7Sopenharmony_ci 7290e5c31af7Sopenharmony_ci both "" 7291e5c31af7Sopenharmony_ci #version 300 es 7292e5c31af7Sopenharmony_ci precision mediump float; 7293e5c31af7Sopenharmony_ci precision mediump int; 7294e5c31af7Sopenharmony_ci 7295e5c31af7Sopenharmony_ci ${DECLARATIONS} 7296e5c31af7Sopenharmony_ci 7297e5c31af7Sopenharmony_ci void main() 7298e5c31af7Sopenharmony_ci { 7299e5c31af7Sopenharmony_ci ivec2 c; 7300e5c31af7Sopenharmony_ci ivec2 a; 7301e5c31af7Sopenharmony_ci uvec3 b; 7302e5c31af7Sopenharmony_ci ivec2 c = a / b; 7303e5c31af7Sopenharmony_ci } 7304e5c31af7Sopenharmony_ci "" 7305e5c31af7Sopenharmony_ci end 7306e5c31af7Sopenharmony_ci case div_ivec2_uvec3_uvec3 7307e5c31af7Sopenharmony_ci expect compile_fail 7308e5c31af7Sopenharmony_ci version 300 es 7309e5c31af7Sopenharmony_ci 7310e5c31af7Sopenharmony_ci both "" 7311e5c31af7Sopenharmony_ci #version 300 es 7312e5c31af7Sopenharmony_ci precision mediump float; 7313e5c31af7Sopenharmony_ci precision mediump int; 7314e5c31af7Sopenharmony_ci 7315e5c31af7Sopenharmony_ci ${DECLARATIONS} 7316e5c31af7Sopenharmony_ci 7317e5c31af7Sopenharmony_ci void main() 7318e5c31af7Sopenharmony_ci { 7319e5c31af7Sopenharmony_ci uvec3 c; 7320e5c31af7Sopenharmony_ci ivec2 a; 7321e5c31af7Sopenharmony_ci uvec3 b; 7322e5c31af7Sopenharmony_ci uvec3 c = a / b; 7323e5c31af7Sopenharmony_ci } 7324e5c31af7Sopenharmony_ci "" 7325e5c31af7Sopenharmony_ci end 7326e5c31af7Sopenharmony_ci case div_ivec2_uvec4_ivec2 7327e5c31af7Sopenharmony_ci expect compile_fail 7328e5c31af7Sopenharmony_ci version 300 es 7329e5c31af7Sopenharmony_ci 7330e5c31af7Sopenharmony_ci both "" 7331e5c31af7Sopenharmony_ci #version 300 es 7332e5c31af7Sopenharmony_ci precision mediump float; 7333e5c31af7Sopenharmony_ci precision mediump int; 7334e5c31af7Sopenharmony_ci 7335e5c31af7Sopenharmony_ci ${DECLARATIONS} 7336e5c31af7Sopenharmony_ci 7337e5c31af7Sopenharmony_ci void main() 7338e5c31af7Sopenharmony_ci { 7339e5c31af7Sopenharmony_ci ivec2 c; 7340e5c31af7Sopenharmony_ci ivec2 a; 7341e5c31af7Sopenharmony_ci uvec4 b; 7342e5c31af7Sopenharmony_ci ivec2 c = a / b; 7343e5c31af7Sopenharmony_ci } 7344e5c31af7Sopenharmony_ci "" 7345e5c31af7Sopenharmony_ci end 7346e5c31af7Sopenharmony_ci case div_ivec2_uvec4_uvec4 7347e5c31af7Sopenharmony_ci expect compile_fail 7348e5c31af7Sopenharmony_ci version 300 es 7349e5c31af7Sopenharmony_ci 7350e5c31af7Sopenharmony_ci both "" 7351e5c31af7Sopenharmony_ci #version 300 es 7352e5c31af7Sopenharmony_ci precision mediump float; 7353e5c31af7Sopenharmony_ci precision mediump int; 7354e5c31af7Sopenharmony_ci 7355e5c31af7Sopenharmony_ci ${DECLARATIONS} 7356e5c31af7Sopenharmony_ci 7357e5c31af7Sopenharmony_ci void main() 7358e5c31af7Sopenharmony_ci { 7359e5c31af7Sopenharmony_ci uvec4 c; 7360e5c31af7Sopenharmony_ci ivec2 a; 7361e5c31af7Sopenharmony_ci uvec4 b; 7362e5c31af7Sopenharmony_ci uvec4 c = a / b; 7363e5c31af7Sopenharmony_ci } 7364e5c31af7Sopenharmony_ci "" 7365e5c31af7Sopenharmony_ci end 7366e5c31af7Sopenharmony_ci case div_ivec3_uint_ivec3 7367e5c31af7Sopenharmony_ci expect compile_fail 7368e5c31af7Sopenharmony_ci version 300 es 7369e5c31af7Sopenharmony_ci 7370e5c31af7Sopenharmony_ci both "" 7371e5c31af7Sopenharmony_ci #version 300 es 7372e5c31af7Sopenharmony_ci precision mediump float; 7373e5c31af7Sopenharmony_ci precision mediump int; 7374e5c31af7Sopenharmony_ci 7375e5c31af7Sopenharmony_ci ${DECLARATIONS} 7376e5c31af7Sopenharmony_ci 7377e5c31af7Sopenharmony_ci void main() 7378e5c31af7Sopenharmony_ci { 7379e5c31af7Sopenharmony_ci ivec3 c; 7380e5c31af7Sopenharmony_ci ivec3 a; 7381e5c31af7Sopenharmony_ci uint b; 7382e5c31af7Sopenharmony_ci ivec3 c = a / b; 7383e5c31af7Sopenharmony_ci } 7384e5c31af7Sopenharmony_ci "" 7385e5c31af7Sopenharmony_ci end 7386e5c31af7Sopenharmony_ci case div_ivec3_uint_uint 7387e5c31af7Sopenharmony_ci expect compile_fail 7388e5c31af7Sopenharmony_ci version 300 es 7389e5c31af7Sopenharmony_ci 7390e5c31af7Sopenharmony_ci both "" 7391e5c31af7Sopenharmony_ci #version 300 es 7392e5c31af7Sopenharmony_ci precision mediump float; 7393e5c31af7Sopenharmony_ci precision mediump int; 7394e5c31af7Sopenharmony_ci 7395e5c31af7Sopenharmony_ci ${DECLARATIONS} 7396e5c31af7Sopenharmony_ci 7397e5c31af7Sopenharmony_ci void main() 7398e5c31af7Sopenharmony_ci { 7399e5c31af7Sopenharmony_ci uint c; 7400e5c31af7Sopenharmony_ci ivec3 a; 7401e5c31af7Sopenharmony_ci uint b; 7402e5c31af7Sopenharmony_ci uint c = a / b; 7403e5c31af7Sopenharmony_ci } 7404e5c31af7Sopenharmony_ci "" 7405e5c31af7Sopenharmony_ci end 7406e5c31af7Sopenharmony_ci case div_ivec3_uvec2_ivec3 7407e5c31af7Sopenharmony_ci expect compile_fail 7408e5c31af7Sopenharmony_ci version 300 es 7409e5c31af7Sopenharmony_ci 7410e5c31af7Sopenharmony_ci both "" 7411e5c31af7Sopenharmony_ci #version 300 es 7412e5c31af7Sopenharmony_ci precision mediump float; 7413e5c31af7Sopenharmony_ci precision mediump int; 7414e5c31af7Sopenharmony_ci 7415e5c31af7Sopenharmony_ci ${DECLARATIONS} 7416e5c31af7Sopenharmony_ci 7417e5c31af7Sopenharmony_ci void main() 7418e5c31af7Sopenharmony_ci { 7419e5c31af7Sopenharmony_ci ivec3 c; 7420e5c31af7Sopenharmony_ci ivec3 a; 7421e5c31af7Sopenharmony_ci uvec2 b; 7422e5c31af7Sopenharmony_ci ivec3 c = a / b; 7423e5c31af7Sopenharmony_ci } 7424e5c31af7Sopenharmony_ci "" 7425e5c31af7Sopenharmony_ci end 7426e5c31af7Sopenharmony_ci case div_ivec3_uvec2_uvec2 7427e5c31af7Sopenharmony_ci expect compile_fail 7428e5c31af7Sopenharmony_ci version 300 es 7429e5c31af7Sopenharmony_ci 7430e5c31af7Sopenharmony_ci both "" 7431e5c31af7Sopenharmony_ci #version 300 es 7432e5c31af7Sopenharmony_ci precision mediump float; 7433e5c31af7Sopenharmony_ci precision mediump int; 7434e5c31af7Sopenharmony_ci 7435e5c31af7Sopenharmony_ci ${DECLARATIONS} 7436e5c31af7Sopenharmony_ci 7437e5c31af7Sopenharmony_ci void main() 7438e5c31af7Sopenharmony_ci { 7439e5c31af7Sopenharmony_ci uvec2 c; 7440e5c31af7Sopenharmony_ci ivec3 a; 7441e5c31af7Sopenharmony_ci uvec2 b; 7442e5c31af7Sopenharmony_ci uvec2 c = a / b; 7443e5c31af7Sopenharmony_ci } 7444e5c31af7Sopenharmony_ci "" 7445e5c31af7Sopenharmony_ci end 7446e5c31af7Sopenharmony_ci case div_ivec3_uvec3_ivec3 7447e5c31af7Sopenharmony_ci expect compile_fail 7448e5c31af7Sopenharmony_ci version 300 es 7449e5c31af7Sopenharmony_ci 7450e5c31af7Sopenharmony_ci both "" 7451e5c31af7Sopenharmony_ci #version 300 es 7452e5c31af7Sopenharmony_ci precision mediump float; 7453e5c31af7Sopenharmony_ci precision mediump int; 7454e5c31af7Sopenharmony_ci 7455e5c31af7Sopenharmony_ci ${DECLARATIONS} 7456e5c31af7Sopenharmony_ci 7457e5c31af7Sopenharmony_ci void main() 7458e5c31af7Sopenharmony_ci { 7459e5c31af7Sopenharmony_ci ivec3 c; 7460e5c31af7Sopenharmony_ci ivec3 a; 7461e5c31af7Sopenharmony_ci uvec3 b; 7462e5c31af7Sopenharmony_ci ivec3 c = a / b; 7463e5c31af7Sopenharmony_ci } 7464e5c31af7Sopenharmony_ci "" 7465e5c31af7Sopenharmony_ci end 7466e5c31af7Sopenharmony_ci case div_ivec3_uvec3_uvec3 7467e5c31af7Sopenharmony_ci expect compile_fail 7468e5c31af7Sopenharmony_ci version 300 es 7469e5c31af7Sopenharmony_ci 7470e5c31af7Sopenharmony_ci both "" 7471e5c31af7Sopenharmony_ci #version 300 es 7472e5c31af7Sopenharmony_ci precision mediump float; 7473e5c31af7Sopenharmony_ci precision mediump int; 7474e5c31af7Sopenharmony_ci 7475e5c31af7Sopenharmony_ci ${DECLARATIONS} 7476e5c31af7Sopenharmony_ci 7477e5c31af7Sopenharmony_ci void main() 7478e5c31af7Sopenharmony_ci { 7479e5c31af7Sopenharmony_ci uvec3 c; 7480e5c31af7Sopenharmony_ci ivec3 a; 7481e5c31af7Sopenharmony_ci uvec3 b; 7482e5c31af7Sopenharmony_ci uvec3 c = a / b; 7483e5c31af7Sopenharmony_ci } 7484e5c31af7Sopenharmony_ci "" 7485e5c31af7Sopenharmony_ci end 7486e5c31af7Sopenharmony_ci case div_ivec3_uvec4_ivec3 7487e5c31af7Sopenharmony_ci expect compile_fail 7488e5c31af7Sopenharmony_ci version 300 es 7489e5c31af7Sopenharmony_ci 7490e5c31af7Sopenharmony_ci both "" 7491e5c31af7Sopenharmony_ci #version 300 es 7492e5c31af7Sopenharmony_ci precision mediump float; 7493e5c31af7Sopenharmony_ci precision mediump int; 7494e5c31af7Sopenharmony_ci 7495e5c31af7Sopenharmony_ci ${DECLARATIONS} 7496e5c31af7Sopenharmony_ci 7497e5c31af7Sopenharmony_ci void main() 7498e5c31af7Sopenharmony_ci { 7499e5c31af7Sopenharmony_ci ivec3 c; 7500e5c31af7Sopenharmony_ci ivec3 a; 7501e5c31af7Sopenharmony_ci uvec4 b; 7502e5c31af7Sopenharmony_ci ivec3 c = a / b; 7503e5c31af7Sopenharmony_ci } 7504e5c31af7Sopenharmony_ci "" 7505e5c31af7Sopenharmony_ci end 7506e5c31af7Sopenharmony_ci case div_ivec3_uvec4_uvec4 7507e5c31af7Sopenharmony_ci expect compile_fail 7508e5c31af7Sopenharmony_ci version 300 es 7509e5c31af7Sopenharmony_ci 7510e5c31af7Sopenharmony_ci both "" 7511e5c31af7Sopenharmony_ci #version 300 es 7512e5c31af7Sopenharmony_ci precision mediump float; 7513e5c31af7Sopenharmony_ci precision mediump int; 7514e5c31af7Sopenharmony_ci 7515e5c31af7Sopenharmony_ci ${DECLARATIONS} 7516e5c31af7Sopenharmony_ci 7517e5c31af7Sopenharmony_ci void main() 7518e5c31af7Sopenharmony_ci { 7519e5c31af7Sopenharmony_ci uvec4 c; 7520e5c31af7Sopenharmony_ci ivec3 a; 7521e5c31af7Sopenharmony_ci uvec4 b; 7522e5c31af7Sopenharmony_ci uvec4 c = a / b; 7523e5c31af7Sopenharmony_ci } 7524e5c31af7Sopenharmony_ci "" 7525e5c31af7Sopenharmony_ci end 7526e5c31af7Sopenharmony_ci case div_ivec4_uint_ivec4 7527e5c31af7Sopenharmony_ci expect compile_fail 7528e5c31af7Sopenharmony_ci version 300 es 7529e5c31af7Sopenharmony_ci 7530e5c31af7Sopenharmony_ci both "" 7531e5c31af7Sopenharmony_ci #version 300 es 7532e5c31af7Sopenharmony_ci precision mediump float; 7533e5c31af7Sopenharmony_ci precision mediump int; 7534e5c31af7Sopenharmony_ci 7535e5c31af7Sopenharmony_ci ${DECLARATIONS} 7536e5c31af7Sopenharmony_ci 7537e5c31af7Sopenharmony_ci void main() 7538e5c31af7Sopenharmony_ci { 7539e5c31af7Sopenharmony_ci ivec4 c; 7540e5c31af7Sopenharmony_ci ivec4 a; 7541e5c31af7Sopenharmony_ci uint b; 7542e5c31af7Sopenharmony_ci ivec4 c = a / b; 7543e5c31af7Sopenharmony_ci } 7544e5c31af7Sopenharmony_ci "" 7545e5c31af7Sopenharmony_ci end 7546e5c31af7Sopenharmony_ci case div_ivec4_uint_uint 7547e5c31af7Sopenharmony_ci expect compile_fail 7548e5c31af7Sopenharmony_ci version 300 es 7549e5c31af7Sopenharmony_ci 7550e5c31af7Sopenharmony_ci both "" 7551e5c31af7Sopenharmony_ci #version 300 es 7552e5c31af7Sopenharmony_ci precision mediump float; 7553e5c31af7Sopenharmony_ci precision mediump int; 7554e5c31af7Sopenharmony_ci 7555e5c31af7Sopenharmony_ci ${DECLARATIONS} 7556e5c31af7Sopenharmony_ci 7557e5c31af7Sopenharmony_ci void main() 7558e5c31af7Sopenharmony_ci { 7559e5c31af7Sopenharmony_ci uint c; 7560e5c31af7Sopenharmony_ci ivec4 a; 7561e5c31af7Sopenharmony_ci uint b; 7562e5c31af7Sopenharmony_ci uint c = a / b; 7563e5c31af7Sopenharmony_ci } 7564e5c31af7Sopenharmony_ci "" 7565e5c31af7Sopenharmony_ci end 7566e5c31af7Sopenharmony_ci case div_ivec4_uvec2_ivec4 7567e5c31af7Sopenharmony_ci expect compile_fail 7568e5c31af7Sopenharmony_ci version 300 es 7569e5c31af7Sopenharmony_ci 7570e5c31af7Sopenharmony_ci both "" 7571e5c31af7Sopenharmony_ci #version 300 es 7572e5c31af7Sopenharmony_ci precision mediump float; 7573e5c31af7Sopenharmony_ci precision mediump int; 7574e5c31af7Sopenharmony_ci 7575e5c31af7Sopenharmony_ci ${DECLARATIONS} 7576e5c31af7Sopenharmony_ci 7577e5c31af7Sopenharmony_ci void main() 7578e5c31af7Sopenharmony_ci { 7579e5c31af7Sopenharmony_ci ivec4 c; 7580e5c31af7Sopenharmony_ci ivec4 a; 7581e5c31af7Sopenharmony_ci uvec2 b; 7582e5c31af7Sopenharmony_ci ivec4 c = a / b; 7583e5c31af7Sopenharmony_ci } 7584e5c31af7Sopenharmony_ci "" 7585e5c31af7Sopenharmony_ci end 7586e5c31af7Sopenharmony_ci case div_ivec4_uvec2_uvec2 7587e5c31af7Sopenharmony_ci expect compile_fail 7588e5c31af7Sopenharmony_ci version 300 es 7589e5c31af7Sopenharmony_ci 7590e5c31af7Sopenharmony_ci both "" 7591e5c31af7Sopenharmony_ci #version 300 es 7592e5c31af7Sopenharmony_ci precision mediump float; 7593e5c31af7Sopenharmony_ci precision mediump int; 7594e5c31af7Sopenharmony_ci 7595e5c31af7Sopenharmony_ci ${DECLARATIONS} 7596e5c31af7Sopenharmony_ci 7597e5c31af7Sopenharmony_ci void main() 7598e5c31af7Sopenharmony_ci { 7599e5c31af7Sopenharmony_ci uvec2 c; 7600e5c31af7Sopenharmony_ci ivec4 a; 7601e5c31af7Sopenharmony_ci uvec2 b; 7602e5c31af7Sopenharmony_ci uvec2 c = a / b; 7603e5c31af7Sopenharmony_ci } 7604e5c31af7Sopenharmony_ci "" 7605e5c31af7Sopenharmony_ci end 7606e5c31af7Sopenharmony_ci case div_ivec4_uvec3_ivec4 7607e5c31af7Sopenharmony_ci expect compile_fail 7608e5c31af7Sopenharmony_ci version 300 es 7609e5c31af7Sopenharmony_ci 7610e5c31af7Sopenharmony_ci both "" 7611e5c31af7Sopenharmony_ci #version 300 es 7612e5c31af7Sopenharmony_ci precision mediump float; 7613e5c31af7Sopenharmony_ci precision mediump int; 7614e5c31af7Sopenharmony_ci 7615e5c31af7Sopenharmony_ci ${DECLARATIONS} 7616e5c31af7Sopenharmony_ci 7617e5c31af7Sopenharmony_ci void main() 7618e5c31af7Sopenharmony_ci { 7619e5c31af7Sopenharmony_ci ivec4 c; 7620e5c31af7Sopenharmony_ci ivec4 a; 7621e5c31af7Sopenharmony_ci uvec3 b; 7622e5c31af7Sopenharmony_ci ivec4 c = a / b; 7623e5c31af7Sopenharmony_ci } 7624e5c31af7Sopenharmony_ci "" 7625e5c31af7Sopenharmony_ci end 7626e5c31af7Sopenharmony_ci case div_ivec4_uvec3_uvec3 7627e5c31af7Sopenharmony_ci expect compile_fail 7628e5c31af7Sopenharmony_ci version 300 es 7629e5c31af7Sopenharmony_ci 7630e5c31af7Sopenharmony_ci both "" 7631e5c31af7Sopenharmony_ci #version 300 es 7632e5c31af7Sopenharmony_ci precision mediump float; 7633e5c31af7Sopenharmony_ci precision mediump int; 7634e5c31af7Sopenharmony_ci 7635e5c31af7Sopenharmony_ci ${DECLARATIONS} 7636e5c31af7Sopenharmony_ci 7637e5c31af7Sopenharmony_ci void main() 7638e5c31af7Sopenharmony_ci { 7639e5c31af7Sopenharmony_ci uvec3 c; 7640e5c31af7Sopenharmony_ci ivec4 a; 7641e5c31af7Sopenharmony_ci uvec3 b; 7642e5c31af7Sopenharmony_ci uvec3 c = a / b; 7643e5c31af7Sopenharmony_ci } 7644e5c31af7Sopenharmony_ci "" 7645e5c31af7Sopenharmony_ci end 7646e5c31af7Sopenharmony_ci case div_ivec4_uvec4_ivec4 7647e5c31af7Sopenharmony_ci expect compile_fail 7648e5c31af7Sopenharmony_ci version 300 es 7649e5c31af7Sopenharmony_ci 7650e5c31af7Sopenharmony_ci both "" 7651e5c31af7Sopenharmony_ci #version 300 es 7652e5c31af7Sopenharmony_ci precision mediump float; 7653e5c31af7Sopenharmony_ci precision mediump int; 7654e5c31af7Sopenharmony_ci 7655e5c31af7Sopenharmony_ci ${DECLARATIONS} 7656e5c31af7Sopenharmony_ci 7657e5c31af7Sopenharmony_ci void main() 7658e5c31af7Sopenharmony_ci { 7659e5c31af7Sopenharmony_ci ivec4 c; 7660e5c31af7Sopenharmony_ci ivec4 a; 7661e5c31af7Sopenharmony_ci uvec4 b; 7662e5c31af7Sopenharmony_ci ivec4 c = a / b; 7663e5c31af7Sopenharmony_ci } 7664e5c31af7Sopenharmony_ci "" 7665e5c31af7Sopenharmony_ci end 7666e5c31af7Sopenharmony_ci case div_ivec4_uvec4_uvec4 7667e5c31af7Sopenharmony_ci expect compile_fail 7668e5c31af7Sopenharmony_ci version 300 es 7669e5c31af7Sopenharmony_ci 7670e5c31af7Sopenharmony_ci both "" 7671e5c31af7Sopenharmony_ci #version 300 es 7672e5c31af7Sopenharmony_ci precision mediump float; 7673e5c31af7Sopenharmony_ci precision mediump int; 7674e5c31af7Sopenharmony_ci 7675e5c31af7Sopenharmony_ci ${DECLARATIONS} 7676e5c31af7Sopenharmony_ci 7677e5c31af7Sopenharmony_ci void main() 7678e5c31af7Sopenharmony_ci { 7679e5c31af7Sopenharmony_ci uvec4 c; 7680e5c31af7Sopenharmony_ci ivec4 a; 7681e5c31af7Sopenharmony_ci uvec4 b; 7682e5c31af7Sopenharmony_ci uvec4 c = a / b; 7683e5c31af7Sopenharmony_ci } 7684e5c31af7Sopenharmony_ci "" 7685e5c31af7Sopenharmony_ci end 7686e5c31af7Sopenharmony_ci 7687e5c31af7Sopenharmony_ciend # invalid_implicit_conversions 7688