1 /* PR c/65830 */
2 /* { dg-do compile } */
3 /* { dg-options "-O -Wno-shift-count-negative -Wno-shift-count-overflow" } */
4
5 int
foo(int x)6 foo (int x)
7 {
8 const int a = sizeof (int) * __CHAR_BIT__;
9 const int b = -7;
10 int c = 0;
11 c += x << a; /* { dg-bogus "left shift count >= width of type" } */
12 c += x << b; /* { dg-bogus "left shift count is negative" } */
13 c += x >> a; /* { dg-bogus "right shift count >= width of type" } */
14 c += x >> b; /* { dg-bogus "right shift count is negative" } */
15 return c;
16 }
17