+++ /dev/null
-extern void abort (void);
-
-int
-main ()
-{
- int i, j;
- unsigned long u, r1, r2;
-
- i = -16;
- j = 1;
- u = i + j;
-
- /* no sign extension upon shift */
- r1 = u >> 1;
- /* sign extension upon shift, but there shouldn't be */
- r2 = ((unsigned long) (i + j)) >> 1;
-
- if (r1 != r2)
- abort ();
-
- return 0;
-}