]> git.ipfire.org Git - thirdparty/openssh-portable.git/commitdiff
Test multiplying two long long ints.
authorDarren Tucker <dtucker@zip.com.au>
Wed, 17 Aug 2016 03:35:43 +0000 (13:35 +1000)
committerDarren Tucker <dtucker@zip.com.au>
Wed, 17 Aug 2016 03:35:43 +0000 (13:35 +1000)
When using clang with -ftrapv or -sanitize=integer the tests would pass
but linking would fail with "undefined reference to __mulodi4".
Explicitly test for this before enabling -trapv.

aclocal.m4

index 1640683e1d1d7c447e163183cbadb666019401ae..ac6b6684a51b00991d51c16d0ebafcbf2d23da91 100644 (file)
@@ -1,5 +1,3 @@
-dnl $Id: aclocal.m4,v 1.13 2014/01/22 10:30:12 djm Exp $
-dnl
 dnl OpenSSH-specific autoconf macros
 dnl
 
@@ -59,7 +57,8 @@ int main(int argc, char **argv) {
        float l = i * 2.1;
        double m = l / 0.5;
        long long int n = argc * 12345LL, o = 12345LL * (long long int)argc;
-       printf("%d %d %d %f %f %lld %lld\n", i, j, k, l, m, n, o);
+       long long int p = n * o;
+       printf("%d %d %d %f %f %lld %lld %lld\n", i, j, k, l, m, n, o, p);
        exit(0);
 }
        ]])],
@@ -96,7 +95,8 @@ int main(int argc, char **argv) {
        float l = i * 2.1;
        double m = l / 0.5;
        long long int n = argc * 12345LL, o = 12345LL * (long long int)argc;
-       printf("%d %d %d %f %f %lld %lld\n", i, j, k, l, m, n, o);
+       long long p = n * o;
+       printf("%d %d %d %f %f %lld %lld %lld\n", i, j, k, l, m, n, o, p);
        exit(0);
 }
                ]])],