--- capa/capa51/pProj/capaFunction.c 2000/08/22 16:00:25 1.10 +++ capa/capa51/pProj/capaFunction.c 2000/12/13 17:15:54 1.13 @@ -788,7 +788,8 @@ ArgNode_t *argp; /* random_multivariate_normal(return_array,item_cnt,seed,dimen,mean_vector,covariance_vector) */ /* the dimension of both mean_vector and covariance_vector should be the same as item_cnt */ /* It will return item_cnt numbers in standard normal deviate in return_array */ - /* */ + /* item_cnt, seed, dimen, mean_vec, cov_vec + are all destroyed after this function !!!*/ { char *mean_vec_str, *cov_vec_str, *seed_str, *out_vec_str; int dimen, item_cnt, tmp_int; long tmp_long; @@ -829,10 +830,10 @@ ArgNode_t *argp; errCode = 1; break; case S_VAR: case S_CONSTANT: - mean_vec_str = SECOND_ARGSTR(argp); + mean_vec_str = strsave( SECOND_ARGSTR(argp) ); break; case IDENTIFIER: - mean_vec_str = SECOND_ARGNAME(argp); + mean_vec_str = strsave( SECOND_ARGNAME(argp) ); /* resultp->s_type = S_CONSTANT; resultp->s_str = strsave("<>"); @@ -1160,7 +1161,7 @@ ArgNode_t *argp; break; } /* end second switch */ } break; - case ARRAY_MOMENTS_F: /* */ + case ARRAY_MOMENTS_F: /* array_moments(output,input) */ { char *tmp_input; Symbol *r_p; @@ -1610,7 +1611,7 @@ ArgNode_t *argp; sprintf(tmpS,"%s()'s arg. cannot be less than zero.\n",FuncStack[Func_idx].s_name); capa_msg(MESSAGE_ERROR,tmpS); } else { - if( FIRST_ARGINT(argp) <= 20 ) { + if( FIRST_ARGINT(argp) <= 13 ) { resultp->s_type = I_CONSTANT; l_fac = 1; for(ii=2; ii <= FIRST_ARGINT(argp); ii++) { l_fac *= ii; } @@ -1633,7 +1634,7 @@ ArgNode_t *argp; sprintf(tmpS,"%s()'s arg. cannot be less than zero.\n", FuncStack[Func_idx].s_name); capa_msg(MESSAGE_ERROR,tmpS); } else { - if( FIRST_ARGREAL(argp) <= 20.0 ) { + if( FIRST_ARGREAL(argp) <= 13.0 ) { resultp->s_type = I_CONSTANT; l_fac = 1; for(ii=2; ii <= FIRST_ARGREAL(argp); ii++) { l_fac *= ii; }