| /* Test long long expression; test printing in general. |
| * |
| * /CLO/BUILD_ENV/Exports/cc -g +e -o long_long long_long.c |
| * |
| * or |
| * |
| * cc +e +DA2.0 -g -o long_long long_long.c |
| */ |
| |
| #ifdef PROTOTYPES |
| long long callee(long long i) |
| #else |
| long long callee( i ) |
| long long i; |
| #endif |
| { |
| register long long result; |
| |
| result = 0x12345678; |
| result = result << i; |
| result += 0x9abcdef0; |
| |
| return result; |
| } |
| |
| int known_types() |
| { |
| long long bin = 0, oct = 0, dec = 0, hex = 0; |
| |
| /* Known values, filling the full 64 bits. |
| */ |
| bin = 0x123456789abcdefLL; /* 64 bits = 16 hex digits */ |
| oct = 01234567123456701234567LL; /* = 21+ octal digits */ |
| dec = 12345678901234567890ULL; /* = 19+ decimal digits */ |
| |
| /* Stop here and look! |
| */ |
| hex = bin - dec | oct; |
| |
| return 0; |
| } |
| |
| int main() { |
| |
| register long long x, y; |
| register long long i; |
| |
| x = (long long) 0xfedcba9876543210LL; |
| y = x++; |
| x +=y; |
| i = 11; |
| x = callee( i ); |
| y += x; |
| |
| known_types(); |
| |
| return 0; |
| } |
| |
| |
| |