diff --git a/psys/include/p2c/math.h b/psys/include/p2c/math.h index b5aebccf5ca05dc1e82d8a6de36e6ada7ff12b19..845b1c4099c15867675004146a2485228aac3baa 100644 --- a/psys/include/p2c/math.h +++ b/psys/include/p2c/math.h @@ -160,12 +160,12 @@ extern ma_complex ma_carcsinh (ma_complex a); extern ma_complex ma_carccosh (ma_complex a); extern ma_complex ma_carctanh (ma_complex a); extern char *ma_strcomplex (char *ma_Result, ma_complex a); -extern char *ma_strfmtcomplex (char *ma_Result, ma_complex a, long wid, +extern char *ma_strfmtcomplex (char *ma_Result, ma_complex a, size_t wid, long prec); -extern char *ma_strfmtcomplex2 (char *ma_Result, ma_complex a, long wid, +extern char *ma_strfmtcomplex2 (char *ma_Result, ma_complex a, size_t wid, long prec, long flags, double min, double max); -extern void ma_strsubreadcomplex (char *buf, long first, long *pos, +extern void ma_strsubreadcomplex (char *buf, size_t first, size_t *pos, ma_complex *a); extern ma_complex ma_strreadcomplex (char *buf); extern double ma_rrand () DEPRECATED; diff --git a/psys/src/math.c b/psys/src/math.c index 5fc5088521cb904f5baf317f43aae605852fe8e6..7be9e5cb09e24b4160ac52862119705c525769ae 100644 --- a/psys/src/math.c +++ b/psys/src/math.c @@ -1955,13 +1955,13 @@ ma_complex ma_carctanh(ma_complex a) } -char *ma_strfmtcomplex2(char *ma_Result, ma_complex a, long wid, long prec, long flags, double min, double max) +char *ma_strfmtcomplex2(char *ma_Result, ma_complex a, size_t wid, long prec, long flags, double min, double max) { char buf[256], buf2[256]; long i; int rz, iz, flag, usespace, useparen; long FORLIM; - char STR1[256]; + char STR1[268]; formatreal(buf, a.re, -1L, prec, flags, min, max); formatreal(buf2, a.im, -1L, prec, flags, min, max); @@ -2031,14 +2031,14 @@ char *ma_strfmtcomplex2(char *ma_Result, ma_complex a, long wid, long prec, long strcat(buf, buf2); } if (strlen(buf) < wid) { - sprintf(STR1, "%*s%s", (int)(wid - strlen(buf)), "", buf); + sprintf(STR1, "%ti%s%s", (ptrdiff_t)(wid - strlen(buf)), "", buf); strcpy(buf, STR1); } return strcpy(ma_Result, buf); } -char *ma_strfmtcomplex(char *ma_Result, ma_complex a, long wid, long prec) +char *ma_strfmtcomplex(char *ma_Result, ma_complex a, size_t wid, long prec) { return (ma_strfmtcomplex2(ma_Result, a, wid, prec, 0L, 1e-2, 0.0)); } @@ -2053,7 +2053,7 @@ char *ma_strcomplex(char *ma_Result, ma_complex a) struct LOC_ma_strsubreadcomplex { char *buf; double sign; - long i; + size_t i; } ; void skipspc(struct LOC_ma_strsubreadcomplex *LINK) @@ -2080,12 +2080,12 @@ void getsign(struct LOC_ma_strsubreadcomplex *LINK) LINK->sign = -1.0; } -void ma_strsubreadcomplex(char *buf_, long first, long *pos, ma_complex *a) +void ma_strsubreadcomplex(char *buf_, size_t first, size_t *pos, ma_complex *a) { struct LOC_ma_strsubreadcomplex V; double r; ma_complex val; - long j; + size_t j; int comma, parens, hasleft; char *STR1; @@ -2198,7 +2198,7 @@ ma_complex ma_strreadcomplex(char *buf_) { char buf[256]; ma_complex c; - long i; + size_t i; strcpy(buf, buf_); ma_strsubreadcomplex(buf, 1L, &i, &c); @@ -2294,7 +2294,8 @@ double ma_rrandom(void *s, double min, double max) long ma_irandom(void *s, long min, long max) { - long i, diff; + size_t i; + ptrdiff_t diff; rstaterec *WITH; if (max <= min)