1 long long
signed_poly(long long sum,long x)2 signed_poly (long long sum, long x)
3 {
4   sum += (long long) (long) sum * (long long) x;
5   return sum;
6 }
7 
8 unsigned long long
unsigned_poly(unsigned long long sum,unsigned long x)9 unsigned_poly (unsigned long long sum, unsigned long x)
10 {
11   sum += (unsigned long long) (unsigned long) sum * (unsigned long long) x;
12   return sum;
13 }
14 
15 int
main(void)16 main (void)
17 {
18   if (signed_poly (2LL, -3) != -4LL)
19     abort ();
20 
21   if (unsigned_poly (2ULL, 3) != 8ULL)
22     abort ();
23 
24   exit (0);
25 }
26