Fix detection of 32b platform at build time. Bug 2405
authorJeremy Harris <jgh146exb@wizmail.org>
Fri, 7 Jun 2019 10:54:10 +0000 (11:54 +0100)
committerJeremy Harris <jgh146exb@wizmail.org>
Fri, 7 Jun 2019 10:54:10 +0000 (11:54 +0100)
src/src/buildconfig.c
test/scripts/0000-Basic/0002
test/stdout/0002

index 71cf97b..a680b34 100644 (file)
@@ -111,6 +111,7 @@ unsigned long test_ulong_t = 0L;
 unsigned int test_uint_t = 0;
 #endif
 long test_long_t = 0;
+long long test_longlong_t = 0;
 int test_int_t = 0;
 FILE *base;
 FILE *new;
@@ -155,15 +156,16 @@ This assumption is known to be OK for the common operating systems. */
 
 fprintf(new, "#ifndef OFF_T_FMT\n");
 if (sizeof(test_off_t) > sizeof(test_long_t))
-  {
   fprintf(new, "# define OFF_T_FMT  \"%%lld\"\n");
-  fprintf(new, "# define LONGLONG_T long long int\n");
-  }
 else
-  {
   fprintf(new, "# define OFF_T_FMT  \"%%ld\"\n");
+fprintf(new, "#endif\n\n");
+
+fprintf(new, "#ifndef LONGLONG_T\n");
+if (sizeof(test_longlong_t) > sizeof(test_long_t))
+  fprintf(new, "# define LONGLONG_T long long int\n");
+else
   fprintf(new, "# define LONGLONG_T long int\n");
-  }
 fprintf(new, "#endif\n\n");
 
 /* Now do the same thing for time_t variables. If the length is greater than
index c738b09..9334e04 100644 (file)
@@ -45,6 +45,44 @@ x\
 +$11111111111111111111111111111111111
 +${11111111111111111111111111111111111}
 
+eval:   ${eval:0}
+eval:   ${eval:1}
+eval:   ${eval:-1}
+eval:   ${eval:+1}
+eval:   ${eval:1+1}
+eval:   ${eval:1+2*3}
+eval:   ${eval:(1+2)*3}
+eval:   ${eval:3/2*4}
+eval:   ${eval:3*4/2}
+eval:   ${eval:42}
+eval:   ${eval:}
+eval:   ${eval:-2}
+eval:   ${eval:-2 - -3}
+eval:   ${eval:-2 - (-3)}
+eval:   ${eval:-2 - (-3}
+eval:   ${eval:-2 - -3)}
+eval:   ${eval:-2 --3}
+eval:   ${eval:-2 -+3}
+eval:   ${eval:-2 -+-3}
+eval:   ${eval:(2*(1+1))/2 + 40K}
+eval:   ${eval:077}
+eval:   ${eval:08}
+eval10: ${eval10:077}
+eval10: ${eval10:08}
+eval10: ${eval10:0x1234}
+eval:   ${eval:2+42%5}
+eval:   ${eval:0xc&5}
+eval:   ${eval:0xc & 5 }
+eval:   ${eval:0x0c|5}
+eval:   ${eval:0xc^5}
+eval:   ${eval:0xc>>1}
+eval:   ${eval:0xc >> 2}
+eval:   ${eval:0xc >> 4 }
+eval:   ${eval:0xc<<1}
+eval:   ${eval:~255&0x1234}
+eval:   ${eval:~ 255&0x1234}
+eval:   ${eval: -(~255&0x1234)}
+
 # List operations
 
 filter: "${filter{a:b:c}{eq{1}{1}}}"
@@ -144,40 +182,6 @@ addresses: ${addresses:>}
 escape:     ${escape:B7·F2ò}
 excape8bit: ${escape8bit:undisturbed text\ttab\nnewline\ttab\\backslash \176tilde\177DEL\200\x81.}
 
-eval:   ${eval:1+1}
-eval:   ${eval:1+2*3}
-eval:   ${eval:(1+2)*3}
-eval:   ${eval:3/2*4}
-eval:   ${eval:3*4/2}
-eval:   ${eval:42}
-eval:   ${eval:}
-eval:   ${eval:-2}
-eval:   ${eval:-2 - -3}
-eval:   ${eval:-2 - (-3)}
-eval:   ${eval:-2 - (-3}
-eval:   ${eval:-2 - -3)}
-eval:   ${eval:-2 --3}
-eval:   ${eval:-2 -+3}
-eval:   ${eval:-2 -+-3}
-eval:   ${eval:(2*(1+1))/2 + 40K}
-eval:   ${eval:077}
-eval:   ${eval:08}
-eval10: ${eval10:077}
-eval10: ${eval10:08}
-eval10: ${eval10:0x1234}
-eval:   ${eval:2+42%5}
-eval:   ${eval:0xc&5}
-eval:   ${eval:0xc & 5 }
-eval:   ${eval:0x0c|5}
-eval:   ${eval:0xc^5}
-eval:   ${eval:0xc>>1}
-eval:   ${eval:0xc >> 2}
-eval:   ${eval:0xc >> 4 }
-eval:   ${eval:0xc<<1}
-eval:   ${eval:~255&0x1234}
-eval:   ${eval:~ 255&0x1234}
-eval:   ${eval: -(~255&0x1234)}
-
 expand: \$primary_hostname ${expand:\$primary_hostname}
 hash:   ${hash_3:monty} ${hash_5:monty} ${hash_4_62:monty python}
 hash:   ${hash_3:abc}X ${hash_3:ab}X ${hash_3:a}X ${hash_3:}X
index 3800fd3..c933786 100644 (file)
 > +
 > +
 > 
+> eval:   0
+> eval:   1
+> eval:   -1
+> eval:   1
+> eval:   2
+> eval:   7
+> eval:   9
+> eval:   4
+> eval:   6
+> eval:   42
+> Failed: error in expression evaluation: expecting number or opening parenthesis (after processing "")
+> eval:   -2
+> eval:   1
+> eval:   1
+> Failed: error in expression evaluation: expecting closing parenthesis (after processing "-2 - (-3")
+> Failed: error in expression evaluation: expecting operator (after processing "-2 - -3")
+> eval:   1
+> eval:   -5
+> eval:   1
+> eval:   40962
+> eval:   63
+> Failed: error in expression evaluation: expecting operator (after processing "0")
+> eval10: 77
+> eval10: 8
+> Failed: error in expression evaluation: expecting operator (after processing "0")
+> eval:   4
+> eval:   4
+> eval:   4
+> eval:   13
+> eval:   9
+> eval:   6
+> eval:   3
+> eval:   0
+> eval:   24
+> eval:   4608
+> eval:   4608
+> eval:   -4608
+> 
 > # List operations
 > 
 > filter: "a:b:c"
 > excape8bit: undisturbed text tab
 newline        tab\134backslash ~tilde\177DEL\200\201.
 > 
-> eval:   2
-> eval:   7
-> eval:   9
-> eval:   4
-> eval:   6
-> eval:   42
-> Failed: error in expression evaluation: expecting number or opening parenthesis (after processing "")
-> eval:   -2
-> eval:   1
-> eval:   1
-> Failed: error in expression evaluation: expecting closing parenthesis (after processing "-2 - (-3")
-> Failed: error in expression evaluation: expecting operator (after processing "-2 - -3")
-> eval:   1
-> eval:   -5
-> eval:   1
-> eval:   40962
-> eval:   63
-> Failed: error in expression evaluation: expecting operator (after processing "0")
-> eval10: 77
-> eval10: 8
-> Failed: error in expression evaluation: expecting operator (after processing "0")
-> eval:   4
-> eval:   4
-> eval:   4
-> eval:   13
-> eval:   9
-> eval:   6
-> eval:   3
-> eval:   0
-> eval:   24
-> eval:   4608
-> eval:   4608
-> eval:   -4608
-> 
 > expand: $primary_hostname myhost.test.ex
 > hash:   jmg monty fbWx
 > hash:   abcX abX aX X