summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gcc.c-torture/execute/20000402-1.c
diff options
context:
space:
mode:
authorgeoffk <geoffk@138bc75d-0d04-0410-961f-82ee72b054a4>2000-04-03 21:29:03 +0000
committergeoffk <geoffk@138bc75d-0d04-0410-961f-82ee72b054a4>2000-04-03 21:29:03 +0000
commitd9e11b73cecaea692d75827425eb1f8f9a9ecb01 (patch)
tree62a4d87aba99fcde008334fbff605b21b31ac4e6 /gcc/testsuite/gcc.c-torture/execute/20000402-1.c
parent010ffee910f4d5a7e2a095605347bc3d1d323b55 (diff)
downloadgcc-d9e11b73cecaea692d75827425eb1f8f9a9ecb01.tar.gz
* execute/20000402-1.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@32889 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/testsuite/gcc.c-torture/execute/20000402-1.c')
-rw-r--r--gcc/testsuite/gcc.c-torture/execute/20000402-1.c33
1 files changed, 33 insertions, 0 deletions
diff --git a/gcc/testsuite/gcc.c-torture/execute/20000402-1.c b/gcc/testsuite/gcc.c-torture/execute/20000402-1.c
new file mode 100644
index 00000000000..2c9e04fda42
--- /dev/null
+++ b/gcc/testsuite/gcc.c-torture/execute/20000402-1.c
@@ -0,0 +1,33 @@
+#include <limits.h>
+
+#if ULONG_LONG_MAX != 18446744073709551615ull && ULONG_MAX != 18446744073709551615ull
+int main(void) { exit (0); }
+#else
+#if ULONG_MAX != 18446744073709551615ull
+typedef unsigned long long ull;
+#else
+typedef unsigned long ull;
+#endif
+
+#include <stdio.h>
+
+void checkit(int);
+
+main () {
+ const ull a = 0x1400000000ULL;
+ const ull b = 0x80000000ULL;
+ const ull c = a/b;
+ const ull d = 0x1400000000ULL / 0x80000000ULL;
+
+ checkit ((int) c);
+ checkit ((int) d);
+
+ exit(0);
+}
+
+void checkit (int a)
+{
+ if (a != 40)
+ abort();
+}
+#endif