+++ /dev/null
-/* PR c/6677 */
-/* Verify that GCC doesn't perform illegal simplifications
- when folding constants. */
-
-#include <limits.h>
-
-extern void abort (void);
-extern void exit (int);
-
-int main (void)
-{
- int i;
- signed char j;
- unsigned char k;
-
- i = SCHAR_MAX;
-
- j = ((signed char) (i << 1)) / 2;
-
- if (j != -1)
- abort();
-
- j = ((signed char) (i * 2)) / 2;
-
- if (j != -1)
- abort();
-
- i = UCHAR_MAX;
-
- k = ((unsigned char) (i << 1)) / 2;
-
- if (k != UCHAR_MAX/2)
- abort();
-
- k = ((unsigned char) (i * 2)) / 2;
-
- if (k != UCHAR_MAX/2)
- abort();
-
- exit(0);
-}