long __Call_arcsin( CDSR_VMEval& /*vm*/, MMD_Address& addr, UniWord *arg )
{
#if _DEBUG
	if( addr.param2 < 0 )
		throw _T("__Call_(fun) : internal error, out of range");
#endif
	if( addr.param2 == 0 )	// DSRDATA_TYPE_REAL
		*(arg - 1) = CDSRReal( arcsin( (arg - 1)->getReal() ) );
	else					// DSRDATA_TYPE_COMPLEX
		*(arg - 1) = CDSRComplex( arcsin( (arg - 1)->getComplex() ) );
	return 1 - addr.param3;
}
Example #2
0
 double arcsin(long const &v)
 {
   return arcsin(static_cast<double>(v));
 }