Jim Meyering <j...@meyering.net> writes: Torbjorn Granlund wrote: > Jim Meyering <j...@meyering.net> writes: > > At least one other change may be interesting to you: > another scope-reduction one: > > - inline uintmax_t > + static inline uintmax_t > mulredc (uintmax_t a, uintmax_t b, uintmax_t m, uintmax_t mi) > > How about going all the way, making everything (but main) static? Please consider these additional changes:
*** .~/cu-factor.c.~1~ Mon Sep 17 11:26:31 2012 --- cu-factor.c Mon Sep 17 15:45:05 2012 *************** *** 134,139 **** --- 134,140 ---- #endif #define LONGLONG_STANDALONE /* Don't require GMP's longlong.h mdep files */ #define ASSERT(x) /* FIXME make longlong.h really standalone */ + #define __GMP_DECLSPEC /* FIXME make longlong.h really standalone */ #define __clz_tab factor_clz_tab /* Rename to avoid glibc collision */ #ifndef __GMP_GNUC_PREREQ #define __GMP_GNUC_PREREQ(a,b) 1 *************** *** 143,149 **** # endif # include "longlong.h" # ifdef COUNT_LEADING_ZEROS_NEED_CLZ_TAB ! const unsigned char factor_clz_tab[129] = { 1,2,3,3,4,4,4,4,5,5,5,5,5,5,5,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6, 7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7, --- 144,150 ---- #endif #include "longlong.h" #ifdef COUNT_LEADING_ZEROS_NEED_CLZ_TAB ! static const unsigned char factor_clz_tab[129] = { 1,2,3,3,4,4,4,4,5,5,5,5,5,5,5,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6, 7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7, *************** *** 1555,1561 **** { mpz_t x, z, y, P; mpz_t t, t2; - unsigned long long int k, l; if (flag_verbose > 0) { --- 1556,1561 ---- *************** *** 1567,1574 **** mpz_init_set_si (x, 2); mpz_init_set_si (z, 2); mpz_init_set_ui (P, 1); ! k = 1; ! l = 1; while (mpz_cmp_ui (n, 1) != 0) { --- 1567,1575 ---- mpz_init_set_si (x, 2); mpz_init_set_si (z, 2); mpz_init_set_ui (P, 1); ! ! unsigned long long int k = 1; ! unsigned long long int l = 1; while (mpz_cmp_ui (n, 1) != 0) { *************** *** 2287,2293 **** /* Read white-space delimited items. Return 1 on success, 0 on EOF. Exit on I/O errors. */ ! int read_item (struct inbuf *bufstruct) { int c; --- 2288,2294 ---- /* Read white-space delimited items. Return 1 on success, 0 on EOF. Exit on I/O errors. */ ! static int read_item (struct inbuf *bufstruct) { int c; -- Torbjörn