1a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar// RUN: %clang_cc1 -triple s390x-linux-gnu -fzvector \ 2a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar// RUN: -fno-lax-vector-conversions -W -Wall -Wconversion \ 3a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar// RUN: -Werror -fsyntax-only -verify %s 4a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 5a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainarvector signed char sc, sc2; 6a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainarvector unsigned char uc, uc2; 7a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainarvector bool char bc, bc2; 8a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 9a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainarvector signed short ss, ss2; 10a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainarvector unsigned short us, us2; 11a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainarvector bool short bs, bs2; 12a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 13a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainarvector signed int si, si2; 14a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainarvector unsigned int ui, ui2; 15a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainarvector bool int bi, bi2; 16a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 17a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainarvector signed long long sl, sl2; 18a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainarvector unsigned long long ul, ul2; 19a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainarvector bool long long bl, bl2; 20a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 21a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainarvector double fd, fd2; 22a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 23a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainarvector long ll; // expected-error {{cannot use 'long' with '__vector'}} 24a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainarvector float ff; // expected-error {{cannot use 'float' with '__vector'}} 25a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 26a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainarsigned char sc_scalar; 27a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainarunsigned char uc_scalar; 28a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 29a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainarsigned short ss_scalar; 30a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainarunsigned short us_scalar; 31a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 32a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainarsigned int si_scalar; 33a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainarunsigned int ui_scalar; 34a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 35a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainarsigned long sl_scalar; 36a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainarunsigned long ul_scalar; 37a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 38a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainardouble fd_scalar; 39a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 40a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainarvoid foo(void) 41a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar{ 42a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // ------------------------------------------------------------------------- 43a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // Test assignment. 44a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // ------------------------------------------------------------------------- 45a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 46a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = sc2; 47a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc = uc2; 48a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bc = bc2; 49a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 50a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ss = ss2; 51a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar us = us2; 52a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bs = bs2; 53a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 54a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar si = si2; 55a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ui = ui2; 56a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bi = bi2; 57a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 58a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sl = sl2; 59a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ul = ul2; 60a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bl = bl2; 61a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar fd = fd2; 62a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 63a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = uc2; // expected-error {{incompatible type}} 64a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = bc2; // expected-error {{incompatible type}} 65a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc = sc2; // expected-error {{incompatible type}} 66a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc = bc2; // expected-error {{incompatible type}} 67a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bc = sc2; // expected-error {{incompatible type}} 68a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bc = uc2; // expected-error {{incompatible type}} 69a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 70a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = sc_scalar; // expected-error {{incompatible type}} 71a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = uc_scalar; // expected-error {{incompatible type}} 72a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc = sc_scalar; // expected-error {{incompatible type}} 73a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc = uc_scalar; // expected-error {{incompatible type}} 74a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bc = sc_scalar; // expected-error {{incompatible type}} 75a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bc = uc_scalar; // expected-error {{incompatible type}} 76a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 77a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = ss2; // expected-error {{incompatible type}} 78a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = si2; // expected-error {{incompatible type}} 79a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = sl2; // expected-error {{incompatible type}} 80a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = fd2; // expected-error {{incompatible type}} 81a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 82a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ss = sc2; // expected-error {{incompatible type}} 83a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar si = sc2; // expected-error {{incompatible type}} 84a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sl = sc2; // expected-error {{incompatible type}} 85a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar fd = sc2; // expected-error {{incompatible type}} 86a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 87a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc = us2; // expected-error {{incompatible type}} 88a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc = ui2; // expected-error {{incompatible type}} 89a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc = ul2; // expected-error {{incompatible type}} 90a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc = fd2; // expected-error {{incompatible type}} 91a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 92a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar us = uc2; // expected-error {{incompatible type}} 93a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ui = uc2; // expected-error {{incompatible type}} 94a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ul = uc2; // expected-error {{incompatible type}} 95a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar fd = uc2; // expected-error {{incompatible type}} 96a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 97a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bc = us2; // expected-error {{incompatible type}} 98a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bc = ui2; // expected-error {{incompatible type}} 99a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bc = ul2; // expected-error {{incompatible type}} 100a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bc = fd2; // expected-error {{incompatible type}} 101a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 102a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bs = bc2; // expected-error {{incompatible type}} 103a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bi = bc2; // expected-error {{incompatible type}} 104a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bl = bc2; // expected-error {{incompatible type}} 105a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar fd = bc2; // expected-error {{incompatible type}} 106a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 107a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // ------------------------------------------------------------------------- 108a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // Test casts to same element width. 109a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // ------------------------------------------------------------------------- 110a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 111a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = (vector signed char)bc2; 112a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bc = (vector bool char)uc2; 113a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc = (vector unsigned char)sc2; 114a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 115a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ss = (vector signed short)bs2; 116a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bs = (vector bool short)us2; 117a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar us = (vector unsigned short)ss2; 118a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 119a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar si = (vector signed int)bi2; 120a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bi = (vector bool int)ui2; 121a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ui = (vector unsigned int)si2; 122a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 123a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sl = (vector signed long long)bl2; 124a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bl = (vector bool long long)ul2; 125a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ul = (vector unsigned long long)fd2; 126a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar fd = (vector double)sl2; 127a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 128a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // ------------------------------------------------------------------------- 129a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // Test casts to different element width. 130a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // ------------------------------------------------------------------------- 131a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 132a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = (vector signed char)bs2; 133a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bc = (vector bool char)us2; 134a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc = (vector unsigned char)fd2; 135a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 136a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ss = (vector signed short)bi2; 137a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bs = (vector bool short)ui2; 138a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar us = (vector unsigned short)fd2; 139a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 140a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar si = (vector signed int)bl2; 141a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bi = (vector bool int)ul2; 142a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ui = (vector unsigned int)fd2; 143a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 144a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sl = (vector signed long long)bc2; 145a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bl = (vector bool long long)uc2; 146a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ul = (vector unsigned long long)sc2; 147a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar fd = (vector double)sc2; 148a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 149a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // ------------------------------------------------------------------------- 150a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // Test ++. 151a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // ------------------------------------------------------------------------- 152a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 153a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ++sc2; 154a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ++uc2; 155a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ++bc2; // expected-error {{cannot increment}} 156a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 157a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ++ss2; 158a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ++us2; 159a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ++bs2; // expected-error {{cannot increment}} 160a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 161a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ++si2; 162a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ++ui2; 163a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ++bi2; // expected-error {{cannot increment}} 164a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 165a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ++sl2; 166a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ++ul2; 167a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ++bl2; // expected-error {{cannot increment}} 168a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 169a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ++fd2; 170a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 171a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc++; 172a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc++; 173a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bc++; // expected-error {{cannot increment}} 174a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 175a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ss++; 176a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar us++; 177a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bs++; // expected-error {{cannot increment}} 178a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 179a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar si++; 180a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ui++; 181a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bi++; // expected-error {{cannot increment}} 182a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 183a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sl++; 184a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ul++; 185a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bl++; // expected-error {{cannot increment}} 186a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 187a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar fd++; 188a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 189a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // ------------------------------------------------------------------------- 190a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // Test --. 191a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // ------------------------------------------------------------------------- 192a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 193a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar --sc2; 194a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar --uc2; 195a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar --bc2; // expected-error {{cannot decrement}} 196a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 197a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar --ss2; 198a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar --us2; 199a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar --bs2; // expected-error {{cannot decrement}} 200a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 201a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar --si2; 202a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar --ui2; 203a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar --bi2; // expected-error {{cannot decrement}} 204a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 205a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar --sl2; 206a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar --ul2; 207a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar --bl2; // expected-error {{cannot decrement}} 208a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 209a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar --fd2; 210a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 211a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc--; 212a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc--; 213a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bc--; // expected-error {{cannot decrement}} 214a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 215a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ss--; 216a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar us--; 217a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bs--; // expected-error {{cannot decrement}} 218a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 219a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar si--; 220a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ui--; 221a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bi--; // expected-error {{cannot decrement}} 222a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 223a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sl--; 224a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ul--; 225a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bl--; // expected-error {{cannot decrement}} 226a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 227a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar fd--; 228a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 229a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // ------------------------------------------------------------------------- 230a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // Test unary +. 231a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // ------------------------------------------------------------------------- 232a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 233a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = +sc2; 234a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc = +uc2; 235a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bc = +bc2; // expected-error {{invalid argument type}} 236a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 237a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ss = +ss2; 238a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar us = +us2; 239a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bs = +bs2; // expected-error {{invalid argument type}} 240a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 241a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar si = +si2; 242a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ui = +ui2; 243a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bi = +bi2; // expected-error {{invalid argument type}} 244a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 245a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sl = +sl2; 246a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ul = +ul2; 247a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bl = +bl2; // expected-error {{invalid argument type}} 248a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 249a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar fd = +fd2; 250a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 251a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = +si2; // expected-error {{assigning to}} 252a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ui = +si2; // expected-error {{assigning to}} 253a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ui = +bi2; // expected-error {{invalid argument type}} 254a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 255a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // ------------------------------------------------------------------------- 256a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // Test unary -. 257a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // ------------------------------------------------------------------------- 258a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 259a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = -sc2; 260a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc = -uc2; 261a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bc = -bc2; // expected-error {{invalid argument type}} 262a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 263a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ss = -ss2; 264a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar us = -us2; 265a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bs = -bs2; // expected-error {{invalid argument type}} 266a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 267a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar si = -si2; 268a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ui = -ui2; 269a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bi = -bi2; // expected-error {{invalid argument type}} 270a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 271a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sl = -sl2; 272a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ul = -ul2; 273a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bl = -bl2; // expected-error {{invalid argument type}} 274a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 275a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar fd = -fd2; 276a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 277a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = -si2; // expected-error {{assigning to}} 278a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ui = -si2; // expected-error {{assigning to}} 279a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ui = -bi2; // expected-error {{invalid argument type}} 280a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 281a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // ------------------------------------------------------------------------- 282a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // Test ~. 283a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // ------------------------------------------------------------------------- 284a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 285a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = ~sc2; 286a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc = ~uc2; 287a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bc = ~bc2; 288a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 289a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ss = ~ss2; 290a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar us = ~us2; 291a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bs = ~bs2; 292a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 293a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar si = ~si2; 294a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ui = ~ui2; 295a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bi = ~bi2; 296a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 297a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sl = ~sl2; 298a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ul = ~ul2; 299a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bl = ~bl2; 300a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 301a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar fd = ~fd2; // expected-error {{invalid argument}} 302a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 303a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = ~si2; // expected-error {{assigning to}} 304a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ui = ~si2; // expected-error {{assigning to}} 305a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ui = ~bi2; // expected-error {{assigning to}} 306a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 307a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // ------------------------------------------------------------------------- 308a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // Test binary +. 309a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // ------------------------------------------------------------------------- 310a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 311a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = sc + sc2; 312a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = sc + uc2; // expected-error {{cannot convert}} 313a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = uc + sc2; // expected-error {{cannot convert}} 314a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = sc + bc2; 315a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = bc + sc2; 316a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 317a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc = uc + uc2; 318a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc = sc + uc2; // expected-error {{cannot convert}} 319a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc = uc + sc2; // expected-error {{cannot convert}} 320a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc = bc + uc2; 321a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc = uc + bc2; 322a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 323a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bc = bc + bc2; // expected-error {{invalid operands}} 324a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bc = bc + uc2; // expected-error {{incompatible type}} 325a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bc = uc + bc2; // expected-error {{incompatible type}} 326a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bc = bc + sc2; // expected-error {{incompatible type}} 327a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bc = sc + bc2; // expected-error {{incompatible type}} 328a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 329a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = sc + sc_scalar; // expected-error {{cannot convert}} 330a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = sc + uc_scalar; // expected-error {{cannot convert}} 331a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = sc_scalar + sc; // expected-error {{cannot convert}} 332a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = uc_scalar + sc; // expected-error {{cannot convert}} 333a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc = uc + sc_scalar; // expected-error {{cannot convert}} 334a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc = uc + uc_scalar; // expected-error {{cannot convert}} 335a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc = sc_scalar + uc; // expected-error {{cannot convert}} 336a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc = uc_scalar + uc; // expected-error {{cannot convert}} 337a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 338a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ss = ss + ss2; 339a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar us = us + us2; 340a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bs = bs + bs2; // expected-error {{invalid operands}} 341a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 342a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar si = si + si2; 343a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ui = ui + ui2; 344a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bi = bi + bi2; // expected-error {{invalid operands}} 345a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 346a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sl = sl + sl2; 347a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ul = ul + ul2; 348a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bl = bl + bl2; // expected-error {{invalid operands}} 349a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 350a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar fd = fd + fd2; 351a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar fd = fd + ul2; // expected-error {{cannot convert}} 352a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar fd = sl + fd2; // expected-error {{cannot convert}} 353a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 354a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc += sc2; 355a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc += uc2; // expected-error {{cannot convert}} 356a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc += bc2; 357a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 358a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc += uc2; 359a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc += sc2; // expected-error {{cannot convert}} 360a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc += bc2; 361a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 362a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bc += bc2; // expected-error {{invalid operands}} 363a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bc += sc2; // expected-error {{cannot convert}} 364a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bc += uc2; // expected-error {{cannot convert}} 365a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 366a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc += ss2; // expected-error {{cannot convert}} 367a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc += si2; // expected-error {{cannot convert}} 368a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc += sl2; // expected-error {{cannot convert}} 369a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc += fd2; // expected-error {{cannot convert}} 370a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 371a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc += sc_scalar; // expected-error {{cannot convert}} 372a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc += uc_scalar; // expected-error {{cannot convert}} 373a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc += sc_scalar; // expected-error {{cannot convert}} 374a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc += uc_scalar; // expected-error {{cannot convert}} 375a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 376a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ss += ss2; 377a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar us += us2; 378a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bs += bs2; // expected-error {{invalid operands}} 379a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 380a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar si += si2; 381a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ui += ui2; 382a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bi += bi2; // expected-error {{invalid operands}} 383a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 384a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sl += sl2; 385a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ul += ul2; 386a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bl += bl2; // expected-error {{invalid operands}} 387a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 388a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar fd += fd2; 389a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 390a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // ------------------------------------------------------------------------- 391a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // Test that binary + rules apply to binary - too. 392a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // ------------------------------------------------------------------------- 393a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 394a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = sc - sc2; 395a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc = uc - uc2; 396a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bc = bc - bc2; // expected-error {{invalid operands}} 397a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 398a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = uc - sc2; // expected-error {{cannot convert}} 399a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = sc - bc2; 400a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc = bc - uc2; 401a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 402a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc -= sc2; 403a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc -= uc2; 404a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bc -= bc2; // expected-error {{invalid operands}} 405a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 406a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc -= uc2; // expected-error {{cannot convert}} 407a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc -= bc2; 408a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bc -= sc2; // expected-error {{cannot convert}} 409a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 410a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ss -= ss2; 411a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar us -= us2; 412a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bs -= bs2; // expected-error {{invalid operands}} 413a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 414a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar si -= si2; 415a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ui -= ui2; 416a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bi -= bi2; // expected-error {{invalid operands}} 417a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 418a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sl -= sl2; 419a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ul -= ul2; 420a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bl -= bl2; // expected-error {{invalid operands}} 421a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 422a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar fd -= fd2; 423a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 424a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // ------------------------------------------------------------------------- 425a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // Test that binary + rules apply to * too. 64-bit integer multiplication 426a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // is not required by the spec and so isn't tested here. 427a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // ------------------------------------------------------------------------- 428a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 429a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = sc * sc2; 430a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc = uc * uc2; 431a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bc = bc * bc2; // expected-error {{invalid operands}} 432a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 433a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = uc * sc2; // expected-error {{cannot convert}} 434a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = sc * bc2; // expected-error {{cannot convert}} 435a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc = bc * uc2; // expected-error {{cannot convert}} 436a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 437a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc *= sc2; 438a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc *= uc2; 439a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bc *= bc2; // expected-error {{invalid operands}} 440a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 441a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc *= uc2; // expected-error {{cannot convert}} 442a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc *= bc2; // expected-error {{cannot convert}} 443a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bc *= sc2; // expected-error {{cannot convert}} 444a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 445a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ss *= ss2; 446a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar us *= us2; 447a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bs *= bs2; // expected-error {{invalid operands}} 448a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 449a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar si *= si2; 450a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ui *= ui2; 451a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bi *= bi2; // expected-error {{invalid operands}} 452a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 453a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sl *= sl2; 454a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ul *= ul2; 455a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bl *= bl2; // expected-error {{invalid operands}} 456a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 457a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar fd *= fd2; 458a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 459a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // ------------------------------------------------------------------------- 460a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // Test that * rules apply to / too. 461a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // ------------------------------------------------------------------------- 462a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 463a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = sc / sc2; 464a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc = uc / uc2; 465a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bc = bc / bc2; // expected-error {{invalid operands}} 466a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 467a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = uc / sc2; // expected-error {{cannot convert}} 468a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = sc / bc2; // expected-error {{cannot convert}} 469a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc = bc / uc2; // expected-error {{cannot convert}} 470a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 471a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc /= sc2; 472a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc /= uc2; 473a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bc /= bc2; // expected-error {{invalid operands}} 474a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 475a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc /= uc2; // expected-error {{cannot convert}} 476a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc /= bc2; // expected-error {{cannot convert}} 477a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bc /= sc2; // expected-error {{cannot convert}} 478a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 479a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ss /= ss2; 480a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar us /= us2; 481a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bs /= bs2; // expected-error {{invalid operands}} 482a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 483a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar si /= si2; 484a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ui /= ui2; 485a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bi /= bi2; // expected-error {{invalid operands}} 486a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 487a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sl /= sl2; 488a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ul /= ul2; 489a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bl /= bl2; // expected-error {{invalid operands}} 490a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 491a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar fd /= fd2; 492a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 493a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // ------------------------------------------------------------------------- 494a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // Test that / rules apply to % too, except that doubles are not allowed. 495a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // ------------------------------------------------------------------------- 496a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 497a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = sc % sc2; 498a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc = uc % uc2; 499a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bc = bc % bc2; // expected-error {{invalid operands}} 500a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 501a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = uc % sc2; // expected-error {{cannot convert}} 502a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = sc % bc2; // expected-error {{cannot convert}} 503a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc = bc % uc2; // expected-error {{cannot convert}} 504a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 505a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc %= sc2; 506a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc %= uc2; 507a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bc %= bc2; // expected-error {{invalid operands}} 508a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 509a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc %= uc2; // expected-error {{cannot convert}} 510a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc %= bc2; // expected-error {{cannot convert}} 511a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bc %= sc2; // expected-error {{cannot convert}} 512a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 513a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ss %= ss2; 514a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar us %= us2; 515a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bs %= bs2; // expected-error {{invalid operands}} 516a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 517a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar si %= si2; 518a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ui %= ui2; 519a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bi %= bi2; // expected-error {{invalid operands}} 520a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 521a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sl %= sl2; 522a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ul %= ul2; 523a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bl %= bl2; // expected-error {{invalid operands}} 524a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 525a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar fd %= fd2; // expected-error {{invalid operands}} 526a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 527a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // ------------------------------------------------------------------------- 528a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // Test &. 529a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // ------------------------------------------------------------------------- 530a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 531a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = sc & sc2; 532a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = sc & uc2; // expected-error {{cannot convert}} 533a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = uc & sc2; // expected-error {{cannot convert}} 534a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = sc & bc2; 535a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = bc & sc2; 536a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 537a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc = uc & uc2; 538a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc = sc & uc2; // expected-error {{cannot convert}} 539a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc = uc & sc2; // expected-error {{cannot convert}} 540a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc = bc & uc2; 541a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc = uc & bc2; 542a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 543a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bc = bc & bc2; 544a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bc = bc & uc2; // expected-error {{incompatible type}} 545a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bc = uc & bc2; // expected-error {{incompatible type}} 546a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bc = bc & sc2; // expected-error {{incompatible type}} 547a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bc = sc & bc2; // expected-error {{incompatible type}} 548a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 549a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar fd = fd & fd2; // expected-error {{invalid operands}} 550a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar fd = bl & fd2; // expected-error {{invalid operands}} 551a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar fd = fd & bl2; // expected-error {{invalid operands}} 552a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar fd = fd & sl2; // expected-error {{invalid operands}} 553a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar fd = fd & ul2; // expected-error {{invalid operands}} 554a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 555a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc &= sc2; 556a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc &= uc2; // expected-error {{cannot convert}} 557a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc &= bc2; 558a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 559a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc &= uc2; 560a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc &= sc2; // expected-error {{cannot convert}} 561a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc &= bc2; 562a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 563a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bc &= bc2; 564a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bc &= sc2; // expected-error {{cannot convert}} 565a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bc &= uc2; // expected-error {{cannot convert}} 566a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 567a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc &= ss2; // expected-error {{cannot convert}} 568a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc &= si2; // expected-error {{cannot convert}} 569a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc &= sl2; // expected-error {{cannot convert}} 570a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc &= fd2; // expected-error {{invalid operands}} 571a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 572a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar us &= bc2; // expected-error {{cannot convert}} 573a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ui &= bc2; // expected-error {{cannot convert}} 574a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ul &= bc2; // expected-error {{cannot convert}} 575a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar fd &= bc2; // expected-error {{invalid operands}} 576a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 577a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ss &= ss2; 578a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar us &= us2; 579a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bs &= bs2; 580a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 581a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar si &= si2; 582a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ui &= ui2; 583a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bi &= bi2; 584a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 585a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sl &= sl2; 586a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ul &= ul2; 587a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bl &= bl2; 588a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 589a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // ------------------------------------------------------------------------- 590a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // Test that & rules apply to | too. 591a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // ------------------------------------------------------------------------- 592a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 593a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = sc | sc2; 594a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = sc | uc2; // expected-error {{cannot convert}} 595a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = sc | bc2; 596a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 597a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc = uc | uc2; 598a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc = sc | uc2; // expected-error {{cannot convert}} 599a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc = bc | uc2; 600a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 601a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bc = bc | bc2; 602a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bc = uc | bc2; // expected-error {{incompatible type}} 603a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bc = bc | sc2; // expected-error {{incompatible type}} 604a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 605a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar fd = fd | fd2; // expected-error {{invalid operands}} 606a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar fd = bl | fd2; // expected-error {{invalid operands}} 607a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 608a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ss |= ss2; 609a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar us |= us2; 610a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bs |= bs2; 611a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 612a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar si |= si2; 613a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ui |= ui2; 614a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bi |= bi2; 615a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 616a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sl |= sl2; 617a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ul |= ul2; 618a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bl |= bl2; 619a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 620a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar fd |= bl2; // expected-error {{invalid operands}} 621a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar fd |= fd2; // expected-error {{invalid operands}} 622a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 623a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // ------------------------------------------------------------------------- 624a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // Test that & rules apply to ^ too. 625a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // ------------------------------------------------------------------------- 626a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 627a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = sc ^ sc2; 628a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = sc ^ uc2; // expected-error {{cannot convert}} 629a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = sc ^ bc2; 630a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 631a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc = uc ^ uc2; 632a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc = sc ^ uc2; // expected-error {{cannot convert}} 633a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc = bc ^ uc2; 634a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 635a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bc = bc ^ bc2; 636a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bc = uc ^ bc2; // expected-error {{incompatible type}} 637a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bc = bc ^ sc2; // expected-error {{incompatible type}} 638a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 639a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar fd = fd ^ fd2; // expected-error {{invalid operands}} 640a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar fd = bl ^ fd2; // expected-error {{invalid operands}} 641a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 642a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ss ^= ss2; 643a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar us ^= us2; 644a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bs ^= bs2; 645a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 646a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar si ^= si2; 647a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ui ^= ui2; 648a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bi ^= bi2; 649a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 650a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sl ^= sl2; 651a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ul ^= ul2; 652a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bl ^= bl2; 653a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 654a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar fd ^= bl2; // expected-error {{invalid operands}} 655a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar fd ^= fd2; // expected-error {{invalid operands}} 656a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 657a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // ------------------------------------------------------------------------- 658a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // Test <<. 659a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // ------------------------------------------------------------------------- 660a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 661a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = sc << sc2; 662a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = sc << uc2; 663a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = uc << sc2; // expected-error {{incompatible type}} 664a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = sc << bc2; // expected-error {{invalid operands}} 665a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = bc << sc2; // expected-error {{invalid operands}} 666a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 667a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc = uc << uc2; 668a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc = sc << uc2; // expected-error {{assigning to}} 669a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc = uc << sc2; 670a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc = bc << uc2; // expected-error {{invalid operands}} 671a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc = uc << bc2; // expected-error {{invalid operands}} 672a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 673a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bc = bc << bc2; // expected-error {{invalid operands}} 674a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bc = bc << uc2; // expected-error {{invalid operands}} 675a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bc = uc << bc2; // expected-error {{invalid operands}} 676a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bc = bc << sc2; // expected-error {{invalid operands}} 677a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bc = sc << bc2; // expected-error {{invalid operands}} 678a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 679a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = sc << 1; 680a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = sc << 1.0f; // expected-error {{integer is required}} 681a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = sc << sc_scalar; 682a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = sc << uc_scalar; 683a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = sc << ss_scalar; 684a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = sc << us_scalar; 685a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = sc << si_scalar; 686a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = sc << ui_scalar; 687a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = sc << sl_scalar; 688a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = sc << ul_scalar; 689a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = sc_scalar << sc; // expected-error {{first operand is not a vector}} 690a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = uc_scalar << sc; // expected-error {{first operand is not a vector}} 691a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc = uc << sc_scalar; 692a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc = uc << uc_scalar; 693a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc = sc_scalar << uc; // expected-error {{first operand is not a vector}} 694a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc = uc_scalar << uc; // expected-error {{first operand is not a vector}} 695a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 696a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ss = ss << ss2; 697a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ss = ss << ss_scalar; 698a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar us = us << us2; 699a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar us = us << us_scalar; 700a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bs = bs << bs2; // expected-error {{invalid operands}} 701a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 702a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar si = si << si2; 703a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar si = si << si_scalar; 704a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ui = ui << ui2; 705a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ui = ui << ui_scalar; 706a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bi = bi << bi2; // expected-error {{invalid operands}} 707a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 708a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sl = sl << sl2; 709a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sl = sl << sl_scalar; 710a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ul = ul << ul2; 711a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ul = ul << ul_scalar; 712a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bl = bl << bl2; // expected-error {{invalid operands}} 713a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 714a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar fd = fd << fd2; // expected-error {{integer is required}} 715a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar fd = fd << ul2; // expected-error {{integer is required}} 716a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar fd = sl << fd2; // expected-error {{integer is required}} 717a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 718a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc <<= sc2; 719a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc <<= uc2; 720a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc <<= bc2; // expected-error {{invalid operands}} 721a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc <<= sc_scalar; 722a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 723a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc <<= uc2; 724a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc <<= sc2; 725a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc <<= bc2; // expected-error {{invalid operands}} 726a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc <<= uc_scalar; 727a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 728a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bc <<= bc2; // expected-error {{invalid operands}} 729a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bc <<= sc2; // expected-error {{invalid operands}} 730a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bc <<= uc2; // expected-error {{invalid operands}} 731a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 732a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc <<= ss2; // expected-error {{vector operands do not have the same number of elements}} 733a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc <<= si2; // expected-error {{vector operands do not have the same number of elements}} 734a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc <<= sl2; // expected-error {{vector operands do not have the same number of elements}} 735a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc <<= fd2; // expected-error {{integer is required}} 736a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 737a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ss <<= ss2; 738a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ss <<= ss_scalar; 739a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar us <<= us2; 740a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar us <<= us_scalar; 741a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bs <<= bs2; // expected-error {{invalid operands}} 742a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 743a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar si <<= si2; 744a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar si <<= si_scalar; 745a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ui <<= ui2; 746a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ui <<= ui_scalar; 747a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bi <<= bi2; // expected-error {{invalid operands}} 748a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 749a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sl <<= sl2; 750a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sl <<= sl_scalar; 751a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ul <<= ul2; 752a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ul <<= ul_scalar; 753a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bl <<= bl2; // expected-error {{invalid operands}} 754a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 755a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar fd <<= fd2; // expected-error {{integer is required}} 756a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 757a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // ------------------------------------------------------------------------- 758a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // Test >>. 759a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // ------------------------------------------------------------------------- 760a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 761a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = sc >> sc2; 762a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = sc >> uc2; 763a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = uc >> sc2; // expected-error {{incompatible type}} 764a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = sc >> bc2; // expected-error {{invalid operands}} 765a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = bc >> sc2; // expected-error {{invalid operands}} 766a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 767a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc = uc >> uc2; 768a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc = sc >> uc2; // expected-error {{assigning to}} 769a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc = uc >> sc2; 770a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc = bc >> uc2; // expected-error {{invalid operands}} 771a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc = uc >> bc2; // expected-error {{invalid operands}} 772a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 773a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bc = bc >> bc2; // expected-error {{invalid operands}} 774a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bc = bc >> uc2; // expected-error {{invalid operands}} 775a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bc = uc >> bc2; // expected-error {{invalid operands}} 776a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bc = bc >> sc2; // expected-error {{invalid operands}} 777a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bc = sc >> bc2; // expected-error {{invalid operands}} 778a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 779a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = sc >> 1; 780a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = sc >> 1.0f; // expected-error {{integer is required}} 781a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = sc >> sc_scalar; 782a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = sc >> uc_scalar; 783a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = sc >> ss_scalar; 784a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = sc >> us_scalar; 785a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = sc >> si_scalar; 786a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = sc >> ui_scalar; 787a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = sc >> sl_scalar; 788a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = sc >> ul_scalar; 789a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = sc_scalar >> sc; // expected-error {{first operand is not a vector}} 790a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc = uc_scalar >> sc; // expected-error {{first operand is not a vector}} 791a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc = uc >> sc_scalar; 792a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc = uc >> uc_scalar; 793a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc = sc_scalar >> uc; // expected-error {{first operand is not a vector}} 794a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc = uc_scalar >> uc; // expected-error {{first operand is not a vector}} 795a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 796a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ss = ss >> ss2; 797a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ss = ss >> ss_scalar; 798a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar us = us >> us2; 799a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar us = us >> us_scalar; 800a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bs = bs >> bs2; // expected-error {{invalid operands}} 801a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 802a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar si = si >> si2; 803a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar si = si >> si_scalar; 804a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ui = ui >> ui2; 805a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ui = ui >> ui_scalar; 806a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bi = bi >> bi2; // expected-error {{invalid operands}} 807a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 808a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sl = sl >> sl2; 809a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sl = sl >> sl_scalar; 810a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ul = ul >> ul2; 811a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ul = ul >> ul_scalar; 812a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bl = bl >> bl2; // expected-error {{invalid operands}} 813a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 814a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar fd = fd >> fd2; // expected-error {{integer is required}} 815a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar fd = fd >> ul2; // expected-error {{integer is required}} 816a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar fd = sl >> fd2; // expected-error {{integer is required}} 817a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 818a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc >>= sc2; 819a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc >>= uc2; 820a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc >>= bc2; // expected-error {{invalid operands}} 821a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc >>= sc_scalar; 822a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 823a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc >>= uc2; 824a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc >>= sc2; 825a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc >>= bc2; // expected-error {{invalid operands}} 826a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar uc >>= uc_scalar; 827a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 828a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bc >>= bc2; // expected-error {{invalid operands}} 829a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bc >>= sc2; // expected-error {{invalid operands}} 830a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bc >>= uc2; // expected-error {{invalid operands}} 831a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 832a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc >>= ss2; // expected-error {{vector operands do not have the same number of elements}} 833a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc >>= si2; // expected-error {{vector operands do not have the same number of elements}} 834a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc >>= sl2; // expected-error {{vector operands do not have the same number of elements}} 835a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sc >>= fd2; // expected-error {{integer is required}} 836a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 837a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ss >>= ss2; 838a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ss >>= ss_scalar; 839a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar us >>= us2; 840a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar us >>= us_scalar; 841a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bs >>= bs2; // expected-error {{invalid operands}} 842a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 843a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar si >>= si2; 844a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar si >>= si_scalar; 845a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ui >>= ui2; 846a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ui >>= ui_scalar; 847a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bi >>= bi2; // expected-error {{invalid operands}} 848a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 849a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sl >>= sl2; 850a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar sl >>= sl_scalar; 851a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ul >>= ul2; 852a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar ul >>= ul_scalar; 853a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar bl >>= bl2; // expected-error {{invalid operands}} 854a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 855a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar fd >>= fd2; // expected-error {{integer is required}} 856a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 857a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // ------------------------------------------------------------------------- 858a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // Test ==. 859a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // ------------------------------------------------------------------------- 860a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 861a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(sc == sc2); 862a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(uc == uc2); 863a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(bc == bc2); 864a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 865a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(sc == uc); // expected-error {{cannot convert}} 866a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(sc == bc); 867a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 868a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(uc == sc); // expected-error {{cannot convert}} 869a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(uc == bc); 870a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 871a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(bc == sc); 872a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(bc == uc); 873a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 874a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(ss == ss2); 875a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(us == us2); 876a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(bs == bs2); 877a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 878a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(si == si2); 879a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(ui == ui2); 880a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(bi == bi2); 881a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 882a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(sl == sl2); 883a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(ul == ul2); 884a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(bl == bl2); 885a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(fd == fd2); 886a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 887a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(fd == ul); // expected-error {{cannot convert}} 888a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(ul == fd); // expected-error {{cannot convert}} 889a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 890a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // ------------------------------------------------------------------------- 891a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // Test that == rules apply to != too. 892a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // ------------------------------------------------------------------------- 893a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 894a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(sc != sc2); 895a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(uc != uc2); 896a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(bc != bc2); 897a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 898a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(sc != uc); // expected-error {{cannot convert}} 899a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(sc != bc); 900a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 901a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(ss != ss2); 902a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(us != us2); 903a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(bs != bs2); 904a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 905a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(si != si2); 906a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(ui != ui2); 907a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(bi != bi2); 908a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 909a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(sl != sl2); 910a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(ul != ul2); 911a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(bl != bl2); 912a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(fd != fd2); 913a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 914a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // ------------------------------------------------------------------------- 915a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // Test that == rules apply to <= too. 916a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // ------------------------------------------------------------------------- 917a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 918a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(sc <= sc2); 919a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(uc <= uc2); 920a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(bc <= bc2); 921a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 922a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(sc <= uc); // expected-error {{cannot convert}} 923a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(sc <= bc); 924a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 925a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(ss <= ss2); 926a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(us <= us2); 927a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(bs <= bs2); 928a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 929a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(si <= si2); 930a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(ui <= ui2); 931a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(bi <= bi2); 932a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 933a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(sl <= sl2); 934a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(ul <= ul2); 935a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(bl <= bl2); 936a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(fd <= fd2); 937a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 938a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // ------------------------------------------------------------------------- 939a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // Test that == rules apply to >= too. 940a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // ------------------------------------------------------------------------- 941a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 942a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(sc >= sc2); 943a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(uc >= uc2); 944a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(bc >= bc2); 945a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 946a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(sc >= uc); // expected-error {{cannot convert}} 947a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(sc >= bc); 948a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 949a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(ss >= ss2); 950a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(us >= us2); 951a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(bs >= bs2); 952a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 953a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(si >= si2); 954a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(ui >= ui2); 955a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(bi >= bi2); 956a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 957a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(sl >= sl2); 958a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(ul >= ul2); 959a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(bl >= bl2); 960a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(fd >= fd2); 961a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 962a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // ------------------------------------------------------------------------- 963a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // Test that == rules apply to < too. 964a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // ------------------------------------------------------------------------- 965a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 966a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(sc < sc2); 967a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(uc < uc2); 968a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(bc < bc2); 969a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 970a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(sc < uc); // expected-error {{cannot convert}} 971a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(sc < bc); 972a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 973a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(ss < ss2); 974a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(us < us2); 975a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(bs < bs2); 976a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 977a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(si < si2); 978a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(ui < ui2); 979a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(bi < bi2); 980a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 981a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(sl < sl2); 982a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(ul < ul2); 983a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(bl < bl2); 984a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(fd < fd2); 985a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 986a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // ------------------------------------------------------------------------- 987a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // Test that == rules apply to > too. 988a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar // ------------------------------------------------------------------------- 989a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 990a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(sc > sc2); 991a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(uc > uc2); 992a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(bc > bc2); 993a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 994a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(sc > uc); // expected-error {{cannot convert}} 995a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(sc > bc); 996a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 997a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(ss > ss2); 998a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(us > us2); 999a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(bs > bs2); 1000a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 1001a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(si > si2); 1002a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(ui > ui2); 1003a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(bi > bi2); 1004a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar 1005a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(sl > sl2); 1006a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(ul > ul2); 1007a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(bl > bl2); 1008a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar (void)(fd > fd2); 1009a4de17562d13d7a8188108243c4cfbd52f33229aPirama Arumuga Nainar} 1010