Use standard function declaration style instead of K&R in libbcmath

Fixes [-Wstrict-prototypes] warnings.
This commit is contained in:
George Peter Banyard committed 2021-05-12 15:33:55 +01:00
1 parent a6a95e3f51
commit 57a8bf62dd
5 files changed
+36 -76

No files matched your search

+23 -38
View File
@@ -88,66 +88,51 @@ typedef struct bc_struct
/* Function Prototypes */
/* Define the _PROTOTYPE macro if it is needed. */
void bc_init_numbers(void);
#ifndef _PROTOTYPE
#if defined(__STDC__) || defined(PHP_WIN32) && defined(__clang__)
#define _PROTOTYPE(func, args) func args
#else
#define _PROTOTYPE(func, args) func()
#endif
#endif
bc_num _bc_new_num_ex(int length, int scale, int persistent);
_PROTOTYPE(void bc_init_numbers, (void));
void _bc_free_num_ex(bc_num *num, int persistent);
_PROTOTYPE(bc_num _bc_new_num_ex, (int length, int scale, int persistent));
bc_num bc_copy_num(bc_num num);
_PROTOTYPE(void _bc_free_num_ex, (bc_num *num, int persistent));
void bc_init_num(bc_num *num);
_PROTOTYPE(bc_num bc_copy_num, (bc_num num));
int bc_str2num(bc_num *num, char *str, int scale);
_PROTOTYPE(void bc_init_num, (bc_num *num));
zend_string *bc_num2str_ex(bc_num num, int scale);
_PROTOTYPE(int bc_str2num, (bc_num *num, char *str, int scale));
void bc_int2num(bc_num *num, int val);
_PROTOTYPE(zend_string *bc_num2str_ex, (bc_num num, int scale));
long bc_num2long(bc_num num);
_PROTOTYPE(void bc_int2num, (bc_num *num, int val));
int bc_compare(bc_num n1, bc_num n2);
_PROTOTYPE(long bc_num2long, (bc_num num));
char bc_is_zero(bc_num num);
_PROTOTYPE(int bc_compare, (bc_num n1, bc_num n2));
char bc_is_near_zero(bc_num num, int scale);
_PROTOTYPE(char bc_is_zero, (bc_num num));
char bc_is_neg(bc_num num);
_PROTOTYPE(char bc_is_near_zero, (bc_num num, int scale));
void bc_add(bc_num n1, bc_num n2, bc_num *result, int scale_min);
_PROTOTYPE(char bc_is_neg, (bc_num num));
void bc_sub(bc_num n1, bc_num n2, bc_num *result, int scale_min);
_PROTOTYPE(void bc_add, (bc_num n1, bc_num n2, bc_num *result, int scale_min));
void bc_multiply(bc_num n1, bc_num n2, bc_num *prod, int scale);
_PROTOTYPE(void bc_sub, (bc_num n1, bc_num n2, bc_num *result, int scale_min));
int bc_divide(bc_num n1, bc_num n2, bc_num *quot, int scale);
_PROTOTYPE(void bc_multiply, (bc_num n1, bc_num n2, bc_num *prod, int scale));
int bc_modulo(bc_num num1, bc_num num2, bc_num *resul, int scale);
_PROTOTYPE(int bc_divide, (bc_num n1, bc_num n2, bc_num *quot, int scale));
int bc_divmod(bc_num num1, bc_num num2, bc_num *quo, bc_num *rem, int scale);
_PROTOTYPE(int bc_modulo, (bc_num num1, bc_num num2, bc_num *result,
int scale));
int bc_raisemod(bc_num base, bc_num expo, bc_num mo, bc_num *result, int scale);
_PROTOTYPE(int bc_divmod, (bc_num num1, bc_num num2, bc_num *quot,
bc_num *rem, int scale));
void bc_raise(bc_num num1, bc_num num2, bc_num *resul, int scale);
_PROTOTYPE(int bc_raisemod, (bc_num base, bc_num expo, bc_num mod,
bc_num *result, int scale));
int bc_sqrt(bc_num *num, int scale);
_PROTOTYPE(void bc_raise, (bc_num num1, bc_num num2, bc_num *result,
int scale));
_PROTOTYPE(int bc_sqrt, (bc_num *num, int scale));
_PROTOTYPE(void bc_out_num, (bc_num num, int o_base, void (* out_char)(int),
int leading_zero));
void bc_out_num(bc_num num, int o_base, void (* out_char)(char), int leading_zero);
/* Prototypes needed for external utility routines. */
#define bc_new_num(length, scale) _bc_new_num_ex((length), (scale), 0)
+4 -10
View File
@@ -39,27 +39,21 @@
/* pn prints the number NUM in base 10. */
static void
out_char (int c)
static void out_char (char c)
{
putchar(c);
}
void
pn (bc_num num)
void pn (bc_num num)
{
bc_out_num (num, 10, out_char, 0);
bc_out_num(num, 10, out_char, 0);
out_char ('\n');
}
/* pv prints a character array as if it was a string of bcd digits. */
void
pv (name, num, len)
char *name;
unsigned char *num;
int len;
void pv (char *name, unsigned char *num, int len)
{
int i;
printf ("%s=", name);
+1 -5
View File
@@ -43,11 +43,7 @@
placed into RESULT. It is written so that NUM and RESULT can be
the same pointers. */
static void
_one_mult (num, size, digit, result)
unsigned char *num;
int size, digit;
unsigned char *result;
static void _one_mult (unsigned char *num, int size, int digit, unsigned char *result)
{
int carry, value;
unsigned char *nptr, *rptr;
+7 -19
View File
@@ -56,18 +56,10 @@ static char ref_str[] = "0123456789ABCDEF";
non-zero, we must output one space before the number. OUT_CHAR
is the actual routine for writing the characters. */
void
bc_out_long (val, size, space, out_char)
long val;
int size, space;
#ifdef __STDC__
void (*out_char)(int);
#else
void (*out_char)();
#endif
void bc_out_long (long val, size_t size, bool space, void (*out_char)(char) )
{
char digits[40];
int len, ix;
size_t len, ix;
if (space) (*out_char) (' ');
snprintf(digits, sizeof(digits), "%ld", val);
@@ -84,15 +76,11 @@ bc_out_long (val, size, space, out_char)
/* Output of a bcd number. NUM is written in base O_BASE using OUT_CHAR
as the routine to do the actual output of the characters. */
void
#ifdef __STDC__
bc_out_num (bc_num num, int o_base, void (*out_char)(int), int leading_zero)
#else
bc_out_num (bc_num num, int o_base, void (*out_char)(), int leading_zero)
#endif
void bc_out_num (bc_num num, int o_base, void (*out_char)(char), int leading_zero)
{
char *nptr;
int index, fdigit, pre_space;
int index, fdigit;
bool pre_space;
stk_rec *digits, *temp;
bc_num int_part, frac_part, base, cur_dig, t_num, max_o_digit;
@@ -178,7 +166,7 @@ bc_out_num (bc_num num, int o_base, void (*out_char)(), int leading_zero)
if (num->n_scale > 0)
{
(*out_char) ('.');
pre_space = 0;
pre_space = false;
t_num = bc_copy_num (BCG(_one_));
while (t_num->n_len <= num->n_scale) {
bc_multiply (frac_part, base, &frac_part, num->n_scale);
@@ -189,7 +177,7 @@ bc_out_num (bc_num num, int o_base, void (*out_char)(), int leading_zero)
(*out_char) (ref_str[fdigit]);
else {
bc_out_long (fdigit, max_o_digit->n_len, pre_space, out_char);
pre_space = 1;
pre_space = true;
}
bc_multiply (t_num, base, &t_num, 0);
}
+1 -4
View File
@@ -50,10 +50,7 @@ int mul_base_digits = MUL_BASE_DIGITS;
/* Multiply utility routines */
static bc_num
new_sub_num (length, scale, value)
int length, scale;
char *value;
static bc_num new_sub_num(int length, int scale, char *value)
{
bc_num temp;