core: Remove make_number.
* mes.c (MAKE_NUMBER): New macro. (tmp_num_, tmp_num_2): New function. (make_number): Remove. Update callers.
This commit is contained in:
parent
c2a12c4f34
commit
c2bfeffe96
2
lib.c
2
lib.c
|
@ -40,7 +40,7 @@ length (SCM x)
|
|||
n++;
|
||||
x = cdr (x);
|
||||
}
|
||||
return make_number (n);
|
||||
return MAKE_NUMBER (n);
|
||||
}
|
||||
|
||||
SCM
|
||||
|
|
14
math.c
14
math.c
|
@ -76,7 +76,7 @@ minus (SCM x) ///((name . "-") (arity . n))
|
|||
n -= VALUE (car (x));
|
||||
x = cdr (x);
|
||||
}
|
||||
return make_number (n);
|
||||
return MAKE_NUMBER (n);
|
||||
}
|
||||
|
||||
SCM
|
||||
|
@ -89,7 +89,7 @@ plus (SCM x) ///((name . "+") (arity . n))
|
|||
n += VALUE (car (x));
|
||||
x = cdr (x);
|
||||
}
|
||||
return make_number (n);
|
||||
return MAKE_NUMBER (n);
|
||||
}
|
||||
|
||||
SCM
|
||||
|
@ -107,7 +107,7 @@ divide (SCM x) ///((name . "/") (arity . n))
|
|||
n /= VALUE (car (x));
|
||||
x = cdr (x);
|
||||
}
|
||||
return make_number (n);
|
||||
return MAKE_NUMBER (n);
|
||||
}
|
||||
|
||||
SCM
|
||||
|
@ -115,7 +115,7 @@ modulo (SCM a, SCM b)
|
|||
{
|
||||
assert (TYPE (a) == NUMBER);
|
||||
assert (TYPE (b) == NUMBER);
|
||||
return make_number (VALUE (a) % VALUE (b));
|
||||
return MAKE_NUMBER (VALUE (a) % VALUE (b));
|
||||
}
|
||||
|
||||
SCM
|
||||
|
@ -128,7 +128,7 @@ multiply (SCM x) ///((name . "*") (arity . n))
|
|||
n *= VALUE (car (x));
|
||||
x = cdr (x);
|
||||
}
|
||||
return make_number (n);
|
||||
return MAKE_NUMBER (n);
|
||||
}
|
||||
|
||||
SCM
|
||||
|
@ -141,7 +141,7 @@ logior (SCM x) ///((arity . n))
|
|||
n |= VALUE (car (x));
|
||||
x = cdr (x);
|
||||
}
|
||||
return make_number (n);
|
||||
return MAKE_NUMBER (n);
|
||||
}
|
||||
|
||||
SCM
|
||||
|
@ -151,5 +151,5 @@ ash (SCM n, SCM count)
|
|||
assert (TYPE (count) == NUMBER);
|
||||
int cn = VALUE (n);
|
||||
int ccount = VALUE (count);
|
||||
return make_number ((ccount < 0) ? cn >> -ccount : cn << ccount);
|
||||
return MAKE_NUMBER ((ccount < 0) ? cn >> -ccount : cn << ccount);
|
||||
}
|
||||
|
|
24
mes.c
24
mes.c
|
@ -181,6 +181,8 @@ SCM r3 = 0; // param 3
|
|||
#define CDADAR(x) CAR (CDR (CAR (CDR (x))))
|
||||
#define CADR(x) CAR (CDR (x))
|
||||
|
||||
#define MAKE_NUMBER(n) make_cell (tmp_num_ (NUMBER), 0, tmp_num2_ (n))
|
||||
|
||||
SCM display_ (FILE* f, SCM x);
|
||||
SCM vm_call (function0_t f, SCM p1, SCM p2, SCM a);
|
||||
|
||||
|
@ -684,11 +686,17 @@ make_char (int x)
|
|||
}
|
||||
|
||||
SCM
|
||||
make_number (int x)
|
||||
tmp_num_ (int x)
|
||||
{
|
||||
g_cells[tmp_num].value = x;
|
||||
return tmp_num;
|
||||
}
|
||||
|
||||
SCM
|
||||
tmp_num2_ (int x)
|
||||
{
|
||||
g_cells[tmp_num].value = NUMBER;
|
||||
g_cells[tmp_num2].value = x;
|
||||
return make_cell (tmp_num, tmp_num2, tmp_num2);
|
||||
return tmp_num2;
|
||||
}
|
||||
|
||||
SCM
|
||||
|
@ -760,7 +768,7 @@ SCM
|
|||
vector_length (SCM x)
|
||||
{
|
||||
assert (TYPE (x) == VECTOR);
|
||||
return make_number (LENGTH (x));
|
||||
return MAKE_NUMBER (LENGTH (x));
|
||||
}
|
||||
|
||||
SCM
|
||||
|
@ -771,7 +779,7 @@ vector_ref (SCM x, SCM i)
|
|||
SCM e = VECTOR (x) + VALUE (i);
|
||||
if (TYPE (e) == REF) e = g_cells[e].ref;
|
||||
if (TYPE (e) == CHAR) e = make_char (VALUE (e));
|
||||
if (TYPE (e) == NUMBER) e = make_number (VALUE (e));
|
||||
if (TYPE (e) == NUMBER) e = MAKE_NUMBER (VALUE (e));
|
||||
return e;
|
||||
}
|
||||
|
||||
|
@ -828,13 +836,13 @@ peekchar ()
|
|||
SCM
|
||||
peek_byte ()
|
||||
{
|
||||
return make_number (peekchar ());
|
||||
return MAKE_NUMBER (peekchar ());
|
||||
}
|
||||
|
||||
SCM
|
||||
read_byte ()
|
||||
{
|
||||
return make_number (getchar ());
|
||||
return MAKE_NUMBER (getchar ());
|
||||
}
|
||||
|
||||
SCM
|
||||
|
@ -868,7 +876,7 @@ SCM
|
|||
char_to_integer (SCM x)
|
||||
{
|
||||
assert (TYPE (x) == CHAR);
|
||||
return make_number (VALUE (x));
|
||||
return MAKE_NUMBER (VALUE (x));
|
||||
}
|
||||
|
||||
SCM
|
||||
|
|
4
posix.c
4
posix.c
|
@ -48,13 +48,13 @@ force_output (SCM p) ///((arity . n))
|
|||
SCM
|
||||
open_input_file (SCM file_name)
|
||||
{
|
||||
return make_number (open (string_to_cstring (file_name), O_RDONLY));
|
||||
return MAKE_NUMBER (open (string_to_cstring (file_name), O_RDONLY));
|
||||
}
|
||||
|
||||
SCM
|
||||
current_input_port ()
|
||||
{
|
||||
return make_number (fileno (g_stdin));
|
||||
return MAKE_NUMBER (fileno (g_stdin));
|
||||
}
|
||||
|
||||
SCM
|
||||
|
|
2
reader.c
2
reader.c
|
@ -103,7 +103,7 @@ lookup_ (SCM s, SCM a)
|
|||
n += VALUE (car (p)) - '0';
|
||||
p = cdr (p);
|
||||
}
|
||||
if (p == cell_nil) return make_number (n * sign);
|
||||
if (p == cell_nil) return MAKE_NUMBER (n * sign);
|
||||
}
|
||||
|
||||
SCM x = lookup_symbol_ (s);
|
||||
|
|
2
string.c
2
string.c
|
@ -48,7 +48,7 @@ SCM
|
|||
string_length (SCM x)
|
||||
{
|
||||
assert (TYPE (x) == STRING);
|
||||
return make_number (VALUE (length (STRING (x))));
|
||||
return MAKE_NUMBER (VALUE (length (STRING (x))));
|
||||
}
|
||||
|
||||
SCM
|
||||
|
|
Loading…
Reference in New Issue