1 |
/* Copyright (C) 1995,1996,1997,1998,1999,2000,2001 Free Software Foundation, Inc. |
/* Copyright (C) 1995,1996,1997,1998,1999,2000,2001, 2002 Free Software Foundation, Inc. |
2 |
* |
* |
3 |
* Portions Copyright 1990, 1991, 1992, 1993 by AT&T Bell Laboratories |
* Portions Copyright 1990, 1991, 1992, 1993 by AT&T Bell Laboratories |
4 |
* and Bellcore. See scm_divide. |
* and Bellcore. See scm_divide. |
1120 |
SCM acc = SCM_MAKINUM (1L); |
SCM acc = SCM_MAKINUM (1L); |
1121 |
int i2; |
int i2; |
1122 |
#ifdef SCM_BIGDIG |
#ifdef SCM_BIGDIG |
1123 |
|
/* 0^0 == 1 according to R5RS */ |
1124 |
if (SCM_EQ_P (n, SCM_INUM0) || SCM_EQ_P (n, acc)) |
if (SCM_EQ_P (n, SCM_INUM0) || SCM_EQ_P (n, acc)) |
1125 |
return acc; |
return SCM_EQ_P (k, SCM_INUM0)? acc : n; |
1126 |
else if (SCM_EQ_P (n, SCM_MAKINUM (-1L))) |
else if (SCM_EQ_P (n, SCM_MAKINUM (-1L))) |
1127 |
return SCM_FALSEP (scm_even_p (k)) ? n : acc; |
return SCM_FALSEP (scm_even_p (k)) ? n : acc; |
1128 |
#endif |
#endif |