Main Page | Class List | Directories | File List | Class Members | File Members

slarith2.inc

Go to the documentation of this file.
00001 /* ------------ char ---------- */
00002 DEFUN_1(copy_char_to_char,char,char)
00003 #define char_to_char    NULL
00004 #define copy_char_to_uchar      copy_char_to_char
00005 #define char_to_uchar   NULL
00006 DEFUN_1(copy_char_to_short,char,short)
00007 #define char_to_short   NULL
00008 DEFUN_1(copy_char_to_ushort,char,unsigned short)
00009 #define char_to_ushort  NULL
00010 DEFUN_1(copy_char_to_int,char,int)
00011 DEFUN_2(char_to_int,char,int,copy_char_to_int)
00012 DEFUN_1(copy_char_to_uint,char,unsigned int)
00013 DEFUN_2(char_to_uint,char,unsigned int,copy_char_to_uint)
00014 DEFUN_1(copy_char_to_long,char,long)
00015 DEFUN_2(char_to_long,char,long,copy_char_to_long)
00016 DEFUN_1(copy_char_to_ulong,char,unsigned long)
00017 DEFUN_2(char_to_ulong,char,unsigned long,copy_char_to_ulong)
00018 #if defined(HAVE_LONG_LONG)
00019 DEFUN_1(copy_char_to_llong,char,long long)
00020 DEFUN_2(char_to_llong,char,long long,copy_char_to_llong)
00021 #endif /* defined(HAVE_LONG_LONG) */
00022 #if defined(HAVE_LONG_LONG)
00023 DEFUN_1(copy_char_to_ullong,char,unsigned long long)
00024 DEFUN_2(char_to_ullong,char,unsigned long long,copy_char_to_ullong)
00025 #endif /* defined(HAVE_LONG_LONG) */
00026 #if SLANG_HAS_FLOAT
00027 DEFUN_1(copy_char_to_float,char,float)
00028 DEFUN_2(char_to_float,char,float,copy_char_to_float)
00029 #endif /* SLANG_HAS_FLOAT */
00030 #if SLANG_HAS_FLOAT
00031 DEFUN_1(copy_char_to_double,char,double)
00032 DEFUN_2(char_to_double,char,double,copy_char_to_double)
00033 #endif /* SLANG_HAS_FLOAT */
00034 #if defined(HAVE_LONG_DOUBLE)
00035 DEFUN_1(copy_char_to_ldouble,char,long double)
00036 DEFUN_2(char_to_ldouble,char,long double,copy_char_to_ldouble)
00037 #endif /* defined(HAVE_LONG_DOUBLE) */
00038 #if SLANG_HAS_FLOAT
00039 TO_DOUBLE_FUN(char_to_one_double,char)
00040 #endif
00041 
00042 
00043 /* ------------ unsigned char ---------- */
00044 #define copy_uchar_to_char      copy_char_to_char
00045 #define uchar_to_char   NULL
00046 #define copy_uchar_to_uchar     copy_char_to_char
00047 #define uchar_to_uchar  NULL
00048 DEFUN_1(copy_uchar_to_short,unsigned char,short)
00049 #define uchar_to_short  NULL
00050 DEFUN_1(copy_uchar_to_ushort,unsigned char,unsigned short)
00051 #define uchar_to_ushort NULL
00052 DEFUN_1(copy_uchar_to_int,unsigned char,int)
00053 DEFUN_2(uchar_to_int,unsigned char,int,copy_uchar_to_int)
00054 DEFUN_1(copy_uchar_to_uint,unsigned char,unsigned int)
00055 DEFUN_2(uchar_to_uint,unsigned char,unsigned int,copy_uchar_to_uint)
00056 DEFUN_1(copy_uchar_to_long,unsigned char,long)
00057 DEFUN_2(uchar_to_long,unsigned char,long,copy_uchar_to_long)
00058 DEFUN_1(copy_uchar_to_ulong,unsigned char,unsigned long)
00059 DEFUN_2(uchar_to_ulong,unsigned char,unsigned long,copy_uchar_to_ulong)
00060 #if defined(HAVE_LONG_LONG)
00061 DEFUN_1(copy_uchar_to_llong,unsigned char,long long)
00062 DEFUN_2(uchar_to_llong,unsigned char,long long,copy_uchar_to_llong)
00063 #endif /* defined(HAVE_LONG_LONG) */
00064 #if defined(HAVE_LONG_LONG)
00065 DEFUN_1(copy_uchar_to_ullong,unsigned char,unsigned long long)
00066 DEFUN_2(uchar_to_ullong,unsigned char,unsigned long long,copy_uchar_to_ullong)
00067 #endif /* defined(HAVE_LONG_LONG) */
00068 #if SLANG_HAS_FLOAT
00069 DEFUN_1(copy_uchar_to_float,unsigned char,float)
00070 DEFUN_2(uchar_to_float,unsigned char,float,copy_uchar_to_float)
00071 #endif /* SLANG_HAS_FLOAT */
00072 #if SLANG_HAS_FLOAT
00073 DEFUN_1(copy_uchar_to_double,unsigned char,double)
00074 DEFUN_2(uchar_to_double,unsigned char,double,copy_uchar_to_double)
00075 #endif /* SLANG_HAS_FLOAT */
00076 #if defined(HAVE_LONG_DOUBLE)
00077 DEFUN_1(copy_uchar_to_ldouble,unsigned char,long double)
00078 DEFUN_2(uchar_to_ldouble,unsigned char,long double,copy_uchar_to_ldouble)
00079 #endif /* defined(HAVE_LONG_DOUBLE) */
00080 #if SLANG_HAS_FLOAT
00081 TO_DOUBLE_FUN(uchar_to_one_double,unsigned char)
00082 #endif
00083 
00084 
00085 /* ------------ short ---------- */
00086 DEFUN_1(copy_short_to_char,short,char)
00087 #define short_to_char   NULL
00088 DEFUN_1(copy_short_to_uchar,short,unsigned char)
00089 #define short_to_uchar  NULL
00090 DEFUN_1(copy_short_to_short,short,short)
00091 #define short_to_short  NULL
00092 #define copy_short_to_ushort    copy_short_to_short
00093 #define short_to_ushort NULL
00094 DEFUN_1(copy_short_to_int,short,int)
00095 DEFUN_2(short_to_int,short,int,copy_short_to_int)
00096 DEFUN_1(copy_short_to_uint,short,unsigned int)
00097 DEFUN_2(short_to_uint,short,unsigned int,copy_short_to_uint)
00098 DEFUN_1(copy_short_to_long,short,long)
00099 DEFUN_2(short_to_long,short,long,copy_short_to_long)
00100 DEFUN_1(copy_short_to_ulong,short,unsigned long)
00101 DEFUN_2(short_to_ulong,short,unsigned long,copy_short_to_ulong)
00102 #if defined(HAVE_LONG_LONG)
00103 DEFUN_1(copy_short_to_llong,short,long long)
00104 DEFUN_2(short_to_llong,short,long long,copy_short_to_llong)
00105 #endif /* defined(HAVE_LONG_LONG) */
00106 #if defined(HAVE_LONG_LONG)
00107 DEFUN_1(copy_short_to_ullong,short,unsigned long long)
00108 DEFUN_2(short_to_ullong,short,unsigned long long,copy_short_to_ullong)
00109 #endif /* defined(HAVE_LONG_LONG) */
00110 #if SLANG_HAS_FLOAT
00111 DEFUN_1(copy_short_to_float,short,float)
00112 DEFUN_2(short_to_float,short,float,copy_short_to_float)
00113 #endif /* SLANG_HAS_FLOAT */
00114 #if SLANG_HAS_FLOAT
00115 DEFUN_1(copy_short_to_double,short,double)
00116 DEFUN_2(short_to_double,short,double,copy_short_to_double)
00117 #endif /* SLANG_HAS_FLOAT */
00118 #if defined(HAVE_LONG_DOUBLE)
00119 DEFUN_1(copy_short_to_ldouble,short,long double)
00120 DEFUN_2(short_to_ldouble,short,long double,copy_short_to_ldouble)
00121 #endif /* defined(HAVE_LONG_DOUBLE) */
00122 #if SLANG_HAS_FLOAT
00123 TO_DOUBLE_FUN(short_to_one_double,short)
00124 #endif
00125 
00126 
00127 /* ------------ unsigned short ---------- */
00128 DEFUN_1(copy_ushort_to_char,unsigned short,char)
00129 #define ushort_to_char  NULL
00130 DEFUN_1(copy_ushort_to_uchar,unsigned short,unsigned char)
00131 #define ushort_to_uchar NULL
00132 #define copy_ushort_to_short    copy_short_to_short
00133 #define ushort_to_short NULL
00134 #define copy_ushort_to_ushort   copy_short_to_short
00135 #define ushort_to_ushort        NULL
00136 DEFUN_1(copy_ushort_to_int,unsigned short,int)
00137 DEFUN_2(ushort_to_int,unsigned short,int,copy_ushort_to_int)
00138 DEFUN_1(copy_ushort_to_uint,unsigned short,unsigned int)
00139 DEFUN_2(ushort_to_uint,unsigned short,unsigned int,copy_ushort_to_uint)
00140 DEFUN_1(copy_ushort_to_long,unsigned short,long)
00141 DEFUN_2(ushort_to_long,unsigned short,long,copy_ushort_to_long)
00142 DEFUN_1(copy_ushort_to_ulong,unsigned short,unsigned long)
00143 DEFUN_2(ushort_to_ulong,unsigned short,unsigned long,copy_ushort_to_ulong)
00144 #if defined(HAVE_LONG_LONG)
00145 DEFUN_1(copy_ushort_to_llong,unsigned short,long long)
00146 DEFUN_2(ushort_to_llong,unsigned short,long long,copy_ushort_to_llong)
00147 #endif /* defined(HAVE_LONG_LONG) */
00148 #if defined(HAVE_LONG_LONG)
00149 DEFUN_1(copy_ushort_to_ullong,unsigned short,unsigned long long)
00150 DEFUN_2(ushort_to_ullong,unsigned short,unsigned long long,copy_ushort_to_ullong)
00151 #endif /* defined(HAVE_LONG_LONG) */
00152 #if SLANG_HAS_FLOAT
00153 DEFUN_1(copy_ushort_to_float,unsigned short,float)
00154 DEFUN_2(ushort_to_float,unsigned short,float,copy_ushort_to_float)
00155 #endif /* SLANG_HAS_FLOAT */
00156 #if SLANG_HAS_FLOAT
00157 DEFUN_1(copy_ushort_to_double,unsigned short,double)
00158 DEFUN_2(ushort_to_double,unsigned short,double,copy_ushort_to_double)
00159 #endif /* SLANG_HAS_FLOAT */
00160 #if defined(HAVE_LONG_DOUBLE)
00161 DEFUN_1(copy_ushort_to_ldouble,unsigned short,long double)
00162 DEFUN_2(ushort_to_ldouble,unsigned short,long double,copy_ushort_to_ldouble)
00163 #endif /* defined(HAVE_LONG_DOUBLE) */
00164 #if SLANG_HAS_FLOAT
00165 TO_DOUBLE_FUN(ushort_to_one_double,unsigned short)
00166 #endif
00167 
00168 
00169 /* ------------ int ---------- */
00170 DEFUN_1(copy_int_to_char,int,char)
00171 #define int_to_char     NULL
00172 DEFUN_1(copy_int_to_uchar,int,unsigned char)
00173 #define int_to_uchar    NULL
00174 DEFUN_1(copy_int_to_short,int,short)
00175 #define int_to_short    NULL
00176 DEFUN_1(copy_int_to_ushort,int,unsigned short)
00177 #define int_to_ushort   NULL
00178 DEFUN_1(copy_int_to_int,int,int)
00179 #define int_to_int      NULL
00180 #define copy_int_to_uint        copy_int_to_int
00181 #define int_to_uint     NULL
00182 DEFUN_1(copy_int_to_long,int,long)
00183 DEFUN_2(int_to_long,int,long,copy_int_to_long)
00184 DEFUN_1(copy_int_to_ulong,int,unsigned long)
00185 DEFUN_2(int_to_ulong,int,unsigned long,copy_int_to_ulong)
00186 #if defined(HAVE_LONG_LONG)
00187 DEFUN_1(copy_int_to_llong,int,long long)
00188 DEFUN_2(int_to_llong,int,long long,copy_int_to_llong)
00189 #endif /* defined(HAVE_LONG_LONG) */
00190 #if defined(HAVE_LONG_LONG)
00191 DEFUN_1(copy_int_to_ullong,int,unsigned long long)
00192 DEFUN_2(int_to_ullong,int,unsigned long long,copy_int_to_ullong)
00193 #endif /* defined(HAVE_LONG_LONG) */
00194 #if SLANG_HAS_FLOAT
00195 DEFUN_1(copy_int_to_float,int,float)
00196 DEFUN_2(int_to_float,int,float,copy_int_to_float)
00197 #endif /* SLANG_HAS_FLOAT */
00198 #if SLANG_HAS_FLOAT
00199 DEFUN_1(copy_int_to_double,int,double)
00200 DEFUN_2(int_to_double,int,double,copy_int_to_double)
00201 #endif /* SLANG_HAS_FLOAT */
00202 #if defined(HAVE_LONG_DOUBLE)
00203 DEFUN_1(copy_int_to_ldouble,int,long double)
00204 DEFUN_2(int_to_ldouble,int,long double,copy_int_to_ldouble)
00205 #endif /* defined(HAVE_LONG_DOUBLE) */
00206 #if SLANG_HAS_FLOAT
00207 TO_DOUBLE_FUN(int_to_one_double,int)
00208 #endif
00209 
00210 
00211 /* ------------ unsigned int ---------- */
00212 DEFUN_1(copy_uint_to_char,unsigned int,char)
00213 #define uint_to_char    NULL
00214 DEFUN_1(copy_uint_to_uchar,unsigned int,unsigned char)
00215 #define uint_to_uchar   NULL
00216 DEFUN_1(copy_uint_to_short,unsigned int,short)
00217 #define uint_to_short   NULL
00218 DEFUN_1(copy_uint_to_ushort,unsigned int,unsigned short)
00219 #define uint_to_ushort  NULL
00220 #define copy_uint_to_int        copy_int_to_int
00221 #define uint_to_int     NULL
00222 #define copy_uint_to_uint       copy_int_to_int
00223 #define uint_to_uint    NULL
00224 DEFUN_1(copy_uint_to_long,unsigned int,long)
00225 DEFUN_2(uint_to_long,unsigned int,long,copy_uint_to_long)
00226 DEFUN_1(copy_uint_to_ulong,unsigned int,unsigned long)
00227 DEFUN_2(uint_to_ulong,unsigned int,unsigned long,copy_uint_to_ulong)
00228 #if defined(HAVE_LONG_LONG)
00229 DEFUN_1(copy_uint_to_llong,unsigned int,long long)
00230 DEFUN_2(uint_to_llong,unsigned int,long long,copy_uint_to_llong)
00231 #endif /* defined(HAVE_LONG_LONG) */
00232 #if defined(HAVE_LONG_LONG)
00233 DEFUN_1(copy_uint_to_ullong,unsigned int,unsigned long long)
00234 DEFUN_2(uint_to_ullong,unsigned int,unsigned long long,copy_uint_to_ullong)
00235 #endif /* defined(HAVE_LONG_LONG) */
00236 #if SLANG_HAS_FLOAT
00237 DEFUN_1(copy_uint_to_float,unsigned int,float)
00238 DEFUN_2(uint_to_float,unsigned int,float,copy_uint_to_float)
00239 #endif /* SLANG_HAS_FLOAT */
00240 #if SLANG_HAS_FLOAT
00241 DEFUN_1(copy_uint_to_double,unsigned int,double)
00242 DEFUN_2(uint_to_double,unsigned int,double,copy_uint_to_double)
00243 #endif /* SLANG_HAS_FLOAT */
00244 #if defined(HAVE_LONG_DOUBLE)
00245 DEFUN_1(copy_uint_to_ldouble,unsigned int,long double)
00246 DEFUN_2(uint_to_ldouble,unsigned int,long double,copy_uint_to_ldouble)
00247 #endif /* defined(HAVE_LONG_DOUBLE) */
00248 #if SLANG_HAS_FLOAT
00249 TO_DOUBLE_FUN(uint_to_one_double,unsigned int)
00250 #endif
00251 
00252 
00253 /* ------------ long ---------- */
00254 DEFUN_1(copy_long_to_char,long,char)
00255 #define long_to_char    NULL
00256 DEFUN_1(copy_long_to_uchar,long,unsigned char)
00257 #define long_to_uchar   NULL
00258 DEFUN_1(copy_long_to_short,long,short)
00259 #define long_to_short   NULL
00260 DEFUN_1(copy_long_to_ushort,long,unsigned short)
00261 #define long_to_ushort  NULL
00262 DEFUN_1(copy_long_to_int,long,int)
00263 #define long_to_int     NULL
00264 DEFUN_1(copy_long_to_uint,long,unsigned int)
00265 #define long_to_uint    NULL
00266 DEFUN_1(copy_long_to_long,long,long)
00267 #define long_to_long    NULL
00268 #define copy_long_to_ulong      copy_long_to_long
00269 #define long_to_ulong   NULL
00270 #if defined(HAVE_LONG_LONG)
00271 DEFUN_1(copy_long_to_llong,long,long long)
00272 DEFUN_2(long_to_llong,long,long long,copy_long_to_llong)
00273 #endif /* defined(HAVE_LONG_LONG) */
00274 #if defined(HAVE_LONG_LONG)
00275 DEFUN_1(copy_long_to_ullong,long,unsigned long long)
00276 DEFUN_2(long_to_ullong,long,unsigned long long,copy_long_to_ullong)
00277 #endif /* defined(HAVE_LONG_LONG) */
00278 #if SLANG_HAS_FLOAT
00279 DEFUN_1(copy_long_to_float,long,float)
00280 DEFUN_2(long_to_float,long,float,copy_long_to_float)
00281 #endif /* SLANG_HAS_FLOAT */
00282 #if SLANG_HAS_FLOAT
00283 DEFUN_1(copy_long_to_double,long,double)
00284 DEFUN_2(long_to_double,long,double,copy_long_to_double)
00285 #endif /* SLANG_HAS_FLOAT */
00286 #if defined(HAVE_LONG_DOUBLE)
00287 DEFUN_1(copy_long_to_ldouble,long,long double)
00288 DEFUN_2(long_to_ldouble,long,long double,copy_long_to_ldouble)
00289 #endif /* defined(HAVE_LONG_DOUBLE) */
00290 #if SLANG_HAS_FLOAT
00291 TO_DOUBLE_FUN(long_to_one_double,long)
00292 #endif
00293 
00294 
00295 /* ------------ unsigned long ---------- */
00296 DEFUN_1(copy_ulong_to_char,unsigned long,char)
00297 #define ulong_to_char   NULL
00298 DEFUN_1(copy_ulong_to_uchar,unsigned long,unsigned char)
00299 #define ulong_to_uchar  NULL
00300 DEFUN_1(copy_ulong_to_short,unsigned long,short)
00301 #define ulong_to_short  NULL
00302 DEFUN_1(copy_ulong_to_ushort,unsigned long,unsigned short)
00303 #define ulong_to_ushort NULL
00304 DEFUN_1(copy_ulong_to_int,unsigned long,int)
00305 #define ulong_to_int    NULL
00306 DEFUN_1(copy_ulong_to_uint,unsigned long,unsigned int)
00307 #define ulong_to_uint   NULL
00308 #define copy_ulong_to_long      copy_long_to_long
00309 #define ulong_to_long   NULL
00310 #define copy_ulong_to_ulong     copy_long_to_long
00311 #define ulong_to_ulong  NULL
00312 #if defined(HAVE_LONG_LONG)
00313 DEFUN_1(copy_ulong_to_llong,unsigned long,long long)
00314 DEFUN_2(ulong_to_llong,unsigned long,long long,copy_ulong_to_llong)
00315 #endif /* defined(HAVE_LONG_LONG) */
00316 #if defined(HAVE_LONG_LONG)
00317 DEFUN_1(copy_ulong_to_ullong,unsigned long,unsigned long long)
00318 DEFUN_2(ulong_to_ullong,unsigned long,unsigned long long,copy_ulong_to_ullong)
00319 #endif /* defined(HAVE_LONG_LONG) */
00320 #if SLANG_HAS_FLOAT
00321 DEFUN_1(copy_ulong_to_float,unsigned long,float)
00322 DEFUN_2(ulong_to_float,unsigned long,float,copy_ulong_to_float)
00323 #endif /* SLANG_HAS_FLOAT */
00324 #if SLANG_HAS_FLOAT
00325 DEFUN_1(copy_ulong_to_double,unsigned long,double)
00326 DEFUN_2(ulong_to_double,unsigned long,double,copy_ulong_to_double)
00327 #endif /* SLANG_HAS_FLOAT */
00328 #if defined(HAVE_LONG_DOUBLE)
00329 DEFUN_1(copy_ulong_to_ldouble,unsigned long,long double)
00330 DEFUN_2(ulong_to_ldouble,unsigned long,long double,copy_ulong_to_ldouble)
00331 #endif /* defined(HAVE_LONG_DOUBLE) */
00332 #if SLANG_HAS_FLOAT
00333 TO_DOUBLE_FUN(ulong_to_one_double,unsigned long)
00334 #endif
00335 
00336 
00337 /* ------------ long long ---------- */
00338 #if defined(HAVE_LONG_LONG)
00339 DEFUN_1(copy_llong_to_char,long long,char)
00340 #define llong_to_char   NULL
00341 DEFUN_1(copy_llong_to_uchar,long long,unsigned char)
00342 #define llong_to_uchar  NULL
00343 DEFUN_1(copy_llong_to_short,long long,short)
00344 #define llong_to_short  NULL
00345 DEFUN_1(copy_llong_to_ushort,long long,unsigned short)
00346 #define llong_to_ushort NULL
00347 DEFUN_1(copy_llong_to_int,long long,int)
00348 #define llong_to_int    NULL
00349 DEFUN_1(copy_llong_to_uint,long long,unsigned int)
00350 #define llong_to_uint   NULL
00351 DEFUN_1(copy_llong_to_long,long long,long)
00352 #define llong_to_long   NULL
00353 DEFUN_1(copy_llong_to_ulong,long long,unsigned long)
00354 #define llong_to_ulong  NULL
00355 #if defined(HAVE_LONG_LONG)
00356 DEFUN_1(copy_llong_to_llong,long long,long long)
00357 #define llong_to_llong  NULL
00358 #endif /* defined(HAVE_LONG_LONG) */
00359 #if defined(HAVE_LONG_LONG)
00360 #define copy_llong_to_ullong    copy_llong_to_llong
00361 #define llong_to_ullong NULL
00362 #endif /* defined(HAVE_LONG_LONG) */
00363 #if SLANG_HAS_FLOAT
00364 DEFUN_1(copy_llong_to_float,long long,float)
00365 DEFUN_2(llong_to_float,long long,float,copy_llong_to_float)
00366 #endif /* SLANG_HAS_FLOAT */
00367 #if SLANG_HAS_FLOAT
00368 DEFUN_1(copy_llong_to_double,long long,double)
00369 DEFUN_2(llong_to_double,long long,double,copy_llong_to_double)
00370 #endif /* SLANG_HAS_FLOAT */
00371 #if defined(HAVE_LONG_DOUBLE)
00372 DEFUN_1(copy_llong_to_ldouble,long long,long double)
00373 DEFUN_2(llong_to_ldouble,long long,long double,copy_llong_to_ldouble)
00374 #endif /* defined(HAVE_LONG_DOUBLE) */
00375 #if SLANG_HAS_FLOAT
00376 TO_DOUBLE_FUN(llong_to_one_double,long long)
00377 #endif
00378 #endif /* defined(HAVE_LONG_LONG) */
00379 
00380 
00381 /* ------------ unsigned long long ---------- */
00382 #if defined(HAVE_LONG_LONG)
00383 DEFUN_1(copy_ullong_to_char,unsigned long long,char)
00384 #define ullong_to_char  NULL
00385 DEFUN_1(copy_ullong_to_uchar,unsigned long long,unsigned char)
00386 #define ullong_to_uchar NULL
00387 DEFUN_1(copy_ullong_to_short,unsigned long long,short)
00388 #define ullong_to_short NULL
00389 DEFUN_1(copy_ullong_to_ushort,unsigned long long,unsigned short)
00390 #define ullong_to_ushort        NULL
00391 DEFUN_1(copy_ullong_to_int,unsigned long long,int)
00392 #define ullong_to_int   NULL
00393 DEFUN_1(copy_ullong_to_uint,unsigned long long,unsigned int)
00394 #define ullong_to_uint  NULL
00395 DEFUN_1(copy_ullong_to_long,unsigned long long,long)
00396 #define ullong_to_long  NULL
00397 DEFUN_1(copy_ullong_to_ulong,unsigned long long,unsigned long)
00398 #define ullong_to_ulong NULL
00399 #if defined(HAVE_LONG_LONG)
00400 #define copy_ullong_to_llong    copy_llong_to_llong
00401 #define ullong_to_llong NULL
00402 #endif /* defined(HAVE_LONG_LONG) */
00403 #if defined(HAVE_LONG_LONG)
00404 #define copy_ullong_to_ullong   copy_llong_to_llong
00405 #define ullong_to_ullong        NULL
00406 #endif /* defined(HAVE_LONG_LONG) */
00407 #if SLANG_HAS_FLOAT
00408 DEFUN_1(copy_ullong_to_float,unsigned long long,float)
00409 DEFUN_2(ullong_to_float,unsigned long long,float,copy_ullong_to_float)
00410 #endif /* SLANG_HAS_FLOAT */
00411 #if SLANG_HAS_FLOAT
00412 DEFUN_1(copy_ullong_to_double,unsigned long long,double)
00413 DEFUN_2(ullong_to_double,unsigned long long,double,copy_ullong_to_double)
00414 #endif /* SLANG_HAS_FLOAT */
00415 #if defined(HAVE_LONG_DOUBLE)
00416 DEFUN_1(copy_ullong_to_ldouble,unsigned long long,long double)
00417 DEFUN_2(ullong_to_ldouble,unsigned long long,long double,copy_ullong_to_ldouble)
00418 #endif /* defined(HAVE_LONG_DOUBLE) */
00419 #if SLANG_HAS_FLOAT
00420 TO_DOUBLE_FUN(ullong_to_one_double,unsigned long long)
00421 #endif
00422 #endif /* defined(HAVE_LONG_LONG) */
00423 
00424 
00425 /* ------------ float ---------- */
00426 #if SLANG_HAS_FLOAT
00427 DEFUN_1(copy_float_to_char,float,char)
00428 #define float_to_char   NULL
00429 DEFUN_1(copy_float_to_uchar,float,unsigned char)
00430 #define float_to_uchar  NULL
00431 DEFUN_1(copy_float_to_short,float,short)
00432 #define float_to_short  NULL
00433 DEFUN_1(copy_float_to_ushort,float,unsigned short)
00434 #define float_to_ushort NULL
00435 DEFUN_1(copy_float_to_int,float,int)
00436 #define float_to_int    NULL
00437 DEFUN_1(copy_float_to_uint,float,unsigned int)
00438 #define float_to_uint   NULL
00439 DEFUN_1(copy_float_to_long,float,long)
00440 #define float_to_long   NULL
00441 DEFUN_1(copy_float_to_ulong,float,unsigned long)
00442 #define float_to_ulong  NULL
00443 #if defined(HAVE_LONG_LONG)
00444 DEFUN_1(copy_float_to_llong,float,long long)
00445 #define float_to_llong  NULL
00446 #endif /* defined(HAVE_LONG_LONG) */
00447 #if defined(HAVE_LONG_LONG)
00448 DEFUN_1(copy_float_to_ullong,float,unsigned long long)
00449 #define float_to_ullong NULL
00450 #endif /* defined(HAVE_LONG_LONG) */
00451 #if SLANG_HAS_FLOAT
00452 DEFUN_1(copy_float_to_float,float,float)
00453 #define float_to_float  NULL
00454 #endif /* SLANG_HAS_FLOAT */
00455 #if SLANG_HAS_FLOAT
00456 DEFUN_1(copy_float_to_double,float,double)
00457 DEFUN_2(float_to_double,float,double,copy_float_to_double)
00458 #endif /* SLANG_HAS_FLOAT */
00459 #if defined(HAVE_LONG_DOUBLE)
00460 DEFUN_1(copy_float_to_ldouble,float,long double)
00461 DEFUN_2(float_to_ldouble,float,long double,copy_float_to_ldouble)
00462 #endif /* defined(HAVE_LONG_DOUBLE) */
00463 #if SLANG_HAS_FLOAT
00464 TO_DOUBLE_FUN(float_to_one_double,float)
00465 #endif
00466 #endif /* SLANG_HAS_FLOAT */
00467 
00468 
00469 /* ------------ double ---------- */
00470 #if SLANG_HAS_FLOAT
00471 DEFUN_1(copy_double_to_char,double,char)
00472 #define double_to_char  NULL
00473 DEFUN_1(copy_double_to_uchar,double,unsigned char)
00474 #define double_to_uchar NULL
00475 DEFUN_1(copy_double_to_short,double,short)
00476 #define double_to_short NULL
00477 DEFUN_1(copy_double_to_ushort,double,unsigned short)
00478 #define double_to_ushort        NULL
00479 DEFUN_1(copy_double_to_int,double,int)
00480 #define double_to_int   NULL
00481 DEFUN_1(copy_double_to_uint,double,unsigned int)
00482 #define double_to_uint  NULL
00483 DEFUN_1(copy_double_to_long,double,long)
00484 #define double_to_long  NULL
00485 DEFUN_1(copy_double_to_ulong,double,unsigned long)
00486 #define double_to_ulong NULL
00487 #if defined(HAVE_LONG_LONG)
00488 DEFUN_1(copy_double_to_llong,double,long long)
00489 #define double_to_llong NULL
00490 #endif /* defined(HAVE_LONG_LONG) */
00491 #if defined(HAVE_LONG_LONG)
00492 DEFUN_1(copy_double_to_ullong,double,unsigned long long)
00493 #define double_to_ullong        NULL
00494 #endif /* defined(HAVE_LONG_LONG) */
00495 #if SLANG_HAS_FLOAT
00496 DEFUN_1(copy_double_to_float,double,float)
00497 #define double_to_float NULL
00498 #endif /* SLANG_HAS_FLOAT */
00499 #if SLANG_HAS_FLOAT
00500 DEFUN_1(copy_double_to_double,double,double)
00501 #define double_to_double        NULL
00502 #endif /* SLANG_HAS_FLOAT */
00503 #if defined(HAVE_LONG_DOUBLE)
00504 DEFUN_1(copy_double_to_ldouble,double,long double)
00505 DEFUN_2(double_to_ldouble,double,long double,copy_double_to_ldouble)
00506 #endif /* defined(HAVE_LONG_DOUBLE) */
00507 #if SLANG_HAS_FLOAT
00508 TO_DOUBLE_FUN(double_to_one_double,double)
00509 #endif
00510 #endif /* SLANG_HAS_FLOAT */
00511 
00512 
00513 /* ------------ long double ---------- */
00514 #if defined(HAVE_LONG_DOUBLE)
00515 DEFUN_1(copy_ldouble_to_char,long double,char)
00516 #define ldouble_to_char NULL
00517 DEFUN_1(copy_ldouble_to_uchar,long double,unsigned char)
00518 #define ldouble_to_uchar        NULL
00519 DEFUN_1(copy_ldouble_to_short,long double,short)
00520 #define ldouble_to_short        NULL
00521 DEFUN_1(copy_ldouble_to_ushort,long double,unsigned short)
00522 #define ldouble_to_ushort       NULL
00523 DEFUN_1(copy_ldouble_to_int,long double,int)
00524 #define ldouble_to_int  NULL
00525 DEFUN_1(copy_ldouble_to_uint,long double,unsigned int)
00526 #define ldouble_to_uint NULL
00527 DEFUN_1(copy_ldouble_to_long,long double,long)
00528 #define ldouble_to_long NULL
00529 DEFUN_1(copy_ldouble_to_ulong,long double,unsigned long)
00530 #define ldouble_to_ulong        NULL
00531 #if defined(HAVE_LONG_LONG)
00532 DEFUN_1(copy_ldouble_to_llong,long double,long long)
00533 #define ldouble_to_llong        NULL
00534 #endif /* defined(HAVE_LONG_LONG) */
00535 #if defined(HAVE_LONG_LONG)
00536 DEFUN_1(copy_ldouble_to_ullong,long double,unsigned long long)
00537 #define ldouble_to_ullong       NULL
00538 #endif /* defined(HAVE_LONG_LONG) */
00539 #if SLANG_HAS_FLOAT
00540 DEFUN_1(copy_ldouble_to_float,long double,float)
00541 #define ldouble_to_float        NULL
00542 #endif /* SLANG_HAS_FLOAT */
00543 #if SLANG_HAS_FLOAT
00544 DEFUN_1(copy_ldouble_to_double,long double,double)
00545 #define ldouble_to_double       NULL
00546 #endif /* SLANG_HAS_FLOAT */
00547 #if defined(HAVE_LONG_DOUBLE)
00548 DEFUN_1(copy_ldouble_to_ldouble,long double,long double)
00549 #define ldouble_to_ldouble      NULL
00550 #endif /* defined(HAVE_LONG_DOUBLE) */
00551 #if SLANG_HAS_FLOAT
00552 TO_DOUBLE_FUN(ldouble_to_one_double,long double)
00553 #endif
00554 #endif /* defined(HAVE_LONG_DOUBLE) */
00555 
00556 
00557 #if SLANG_HAS_FLOAT
00558 static To_Double_Fun_Table_Type To_Double_Fun_Table [MAX_ARITHMETIC_TYPES] =
00559 {
00560    {sizeof(char), char_to_one_double},
00561    {sizeof(unsigned char), uchar_to_one_double},
00562    {sizeof(short), short_to_one_double},
00563    {sizeof(unsigned short), ushort_to_one_double},
00564    {sizeof(int), int_to_one_double},
00565    {sizeof(unsigned int), uint_to_one_double},
00566    {sizeof(long), long_to_one_double},
00567    {sizeof(unsigned long), ulong_to_one_double},
00568 #if defined(HAVE_LONG_LONG)
00569    {sizeof(long long), llong_to_one_double},
00570 #else
00571    {0, NULL},
00572 #endif
00573 #if defined(HAVE_LONG_LONG)
00574    {sizeof(unsigned long long), ullong_to_one_double},
00575 #else
00576    {0, NULL},
00577 #endif
00578 #if SLANG_HAS_FLOAT
00579    {sizeof(float), float_to_one_double},
00580 #else
00581    {0, NULL},
00582 #endif
00583 #if SLANG_HAS_FLOAT
00584    {sizeof(double), double_to_one_double},
00585 #else
00586    {0, NULL},
00587 #endif
00588 #if defined(HAVE_LONG_DOUBLE)
00589    {sizeof(long double), ldouble_to_one_double},
00590 #else
00591    {0, NULL},
00592 #endif
00593 };
00594 #endif
00595 
00596 static Binary_Matrix_Type Binary_Matrix [MAX_ARITHMETIC_TYPES][MAX_ARITHMETIC_TYPES] =
00597 {
00598    /* char */
00599    {
00600      {(FVOID_STAR)copy_char_to_char, char_to_char},
00601      {(FVOID_STAR)copy_char_to_uchar, char_to_uchar},
00602      {(FVOID_STAR)copy_char_to_short, char_to_short},
00603      {(FVOID_STAR)copy_char_to_ushort, char_to_ushort},
00604      {(FVOID_STAR)copy_char_to_int, char_to_int},
00605      {(FVOID_STAR)copy_char_to_uint, char_to_uint},
00606      {(FVOID_STAR)copy_char_to_long, char_to_long},
00607      {(FVOID_STAR)copy_char_to_ulong, char_to_ulong},
00608 #if defined(HAVE_LONG_LONG)
00609      {(FVOID_STAR)copy_char_to_llong, char_to_llong},
00610 #else
00611      {NULL, NULL},
00612 #endif
00613 #if defined(HAVE_LONG_LONG)
00614      {(FVOID_STAR)copy_char_to_ullong, char_to_ullong},
00615 #else
00616      {NULL, NULL},
00617 #endif
00618 #if SLANG_HAS_FLOAT
00619      {(FVOID_STAR)copy_char_to_float, char_to_float},
00620 #else
00621      {NULL, NULL},
00622 #endif
00623 #if SLANG_HAS_FLOAT
00624      {(FVOID_STAR)copy_char_to_double, char_to_double},
00625 #else
00626      {NULL, NULL},
00627 #endif
00628 #if defined(HAVE_LONG_DOUBLE)
00629      {(FVOID_STAR)copy_char_to_ldouble, char_to_ldouble},
00630 #else
00631      {NULL, NULL},
00632 #endif
00633    },
00634    /* unsigned char */
00635    {
00636      {(FVOID_STAR)copy_uchar_to_char, uchar_to_char},
00637      {(FVOID_STAR)copy_uchar_to_uchar, uchar_to_uchar},
00638      {(FVOID_STAR)copy_uchar_to_short, uchar_to_short},
00639      {(FVOID_STAR)copy_uchar_to_ushort, uchar_to_ushort},
00640      {(FVOID_STAR)copy_uchar_to_int, uchar_to_int},
00641      {(FVOID_STAR)copy_uchar_to_uint, uchar_to_uint},
00642      {(FVOID_STAR)copy_uchar_to_long, uchar_to_long},
00643      {(FVOID_STAR)copy_uchar_to_ulong, uchar_to_ulong},
00644 #if defined(HAVE_LONG_LONG)
00645      {(FVOID_STAR)copy_uchar_to_llong, uchar_to_llong},
00646 #else
00647      {NULL, NULL},
00648 #endif
00649 #if defined(HAVE_LONG_LONG)
00650      {(FVOID_STAR)copy_uchar_to_ullong, uchar_to_ullong},
00651 #else
00652      {NULL, NULL},
00653 #endif
00654 #if SLANG_HAS_FLOAT
00655      {(FVOID_STAR)copy_uchar_to_float, uchar_to_float},
00656 #else
00657      {NULL, NULL},
00658 #endif
00659 #if SLANG_HAS_FLOAT
00660      {(FVOID_STAR)copy_uchar_to_double, uchar_to_double},
00661 #else
00662      {NULL, NULL},
00663 #endif
00664 #if defined(HAVE_LONG_DOUBLE)
00665      {(FVOID_STAR)copy_uchar_to_ldouble, uchar_to_ldouble},
00666 #else
00667      {NULL, NULL},
00668 #endif
00669    },
00670    /* short */
00671    {
00672      {(FVOID_STAR)copy_short_to_char, short_to_char},
00673      {(FVOID_STAR)copy_short_to_uchar, short_to_uchar},
00674      {(FVOID_STAR)copy_short_to_short, short_to_short},
00675      {(FVOID_STAR)copy_short_to_ushort, short_to_ushort},
00676      {(FVOID_STAR)copy_short_to_int, short_to_int},
00677      {(FVOID_STAR)copy_short_to_uint, short_to_uint},
00678      {(FVOID_STAR)copy_short_to_long, short_to_long},
00679      {(FVOID_STAR)copy_short_to_ulong, short_to_ulong},
00680 #if defined(HAVE_LONG_LONG)
00681      {(FVOID_STAR)copy_short_to_llong, short_to_llong},
00682 #else
00683      {NULL, NULL},
00684 #endif
00685 #if defined(HAVE_LONG_LONG)
00686      {(FVOID_STAR)copy_short_to_ullong, short_to_ullong},
00687 #else
00688      {NULL, NULL},
00689 #endif
00690 #if SLANG_HAS_FLOAT
00691      {(FVOID_STAR)copy_short_to_float, short_to_float},
00692 #else
00693      {NULL, NULL},
00694 #endif
00695 #if SLANG_HAS_FLOAT
00696      {(FVOID_STAR)copy_short_to_double, short_to_double},
00697 #else
00698      {NULL, NULL},
00699 #endif
00700 #if defined(HAVE_LONG_DOUBLE)
00701      {(FVOID_STAR)copy_short_to_ldouble, short_to_ldouble},
00702 #else
00703      {NULL, NULL},
00704 #endif
00705    },
00706    /* unsigned short */
00707    {
00708      {(FVOID_STAR)copy_ushort_to_char, ushort_to_char},
00709      {(FVOID_STAR)copy_ushort_to_uchar, ushort_to_uchar},
00710      {(FVOID_STAR)copy_ushort_to_short, ushort_to_short},
00711      {(FVOID_STAR)copy_ushort_to_ushort, ushort_to_ushort},
00712      {(FVOID_STAR)copy_ushort_to_int, ushort_to_int},
00713      {(FVOID_STAR)copy_ushort_to_uint, ushort_to_uint},
00714      {(FVOID_STAR)copy_ushort_to_long, ushort_to_long},
00715      {(FVOID_STAR)copy_ushort_to_ulong, ushort_to_ulong},
00716 #if defined(HAVE_LONG_LONG)
00717      {(FVOID_STAR)copy_ushort_to_llong, ushort_to_llong},
00718 #else
00719      {NULL, NULL},
00720 #endif
00721 #if defined(HAVE_LONG_LONG)
00722      {(FVOID_STAR)copy_ushort_to_ullong, ushort_to_ullong},
00723 #else
00724      {NULL, NULL},
00725 #endif
00726 #if SLANG_HAS_FLOAT
00727      {(FVOID_STAR)copy_ushort_to_float, ushort_to_float},
00728 #else
00729      {NULL, NULL},
00730 #endif
00731 #if SLANG_HAS_FLOAT
00732      {(FVOID_STAR)copy_ushort_to_double, ushort_to_double},
00733 #else
00734      {NULL, NULL},
00735 #endif
00736 #if defined(HAVE_LONG_DOUBLE)
00737      {(FVOID_STAR)copy_ushort_to_ldouble, ushort_to_ldouble},
00738 #else
00739      {NULL, NULL},
00740 #endif
00741    },
00742    /* int */
00743    {
00744      {(FVOID_STAR)copy_int_to_char, int_to_char},
00745      {(FVOID_STAR)copy_int_to_uchar, int_to_uchar},
00746      {(FVOID_STAR)copy_int_to_short, int_to_short},
00747      {(FVOID_STAR)copy_int_to_ushort, int_to_ushort},
00748      {(FVOID_STAR)copy_int_to_int, int_to_int},
00749      {(FVOID_STAR)copy_int_to_uint, int_to_uint},
00750      {(FVOID_STAR)copy_int_to_long, int_to_long},
00751      {(FVOID_STAR)copy_int_to_ulong, int_to_ulong},
00752 #if defined(HAVE_LONG_LONG)
00753      {(FVOID_STAR)copy_int_to_llong, int_to_llong},
00754 #else
00755      {NULL, NULL},
00756 #endif
00757 #if defined(HAVE_LONG_LONG)
00758      {(FVOID_STAR)copy_int_to_ullong, int_to_ullong},
00759 #else
00760      {NULL, NULL},
00761 #endif
00762 #if SLANG_HAS_FLOAT
00763      {(FVOID_STAR)copy_int_to_float, int_to_float},
00764 #else
00765      {NULL, NULL},
00766 #endif
00767 #if SLANG_HAS_FLOAT
00768      {(FVOID_STAR)copy_int_to_double, int_to_double},
00769 #else
00770      {NULL, NULL},
00771 #endif
00772 #if defined(HAVE_LONG_DOUBLE)
00773      {(FVOID_STAR)copy_int_to_ldouble, int_to_ldouble},
00774 #else
00775      {NULL, NULL},
00776 #endif
00777    },
00778    /* unsigned int */
00779    {
00780      {(FVOID_STAR)copy_uint_to_char, uint_to_char},
00781      {(FVOID_STAR)copy_uint_to_uchar, uint_to_uchar},
00782      {(FVOID_STAR)copy_uint_to_short, uint_to_short},
00783      {(FVOID_STAR)copy_uint_to_ushort, uint_to_ushort},
00784      {(FVOID_STAR)copy_uint_to_int, uint_to_int},
00785      {(FVOID_STAR)copy_uint_to_uint, uint_to_uint},
00786      {(FVOID_STAR)copy_uint_to_long, uint_to_long},
00787      {(FVOID_STAR)copy_uint_to_ulong, uint_to_ulong},
00788 #if defined(HAVE_LONG_LONG)
00789      {(FVOID_STAR)copy_uint_to_llong, uint_to_llong},
00790 #else
00791      {NULL, NULL},
00792 #endif
00793 #if defined(HAVE_LONG_LONG)
00794      {(FVOID_STAR)copy_uint_to_ullong, uint_to_ullong},
00795 #else
00796      {NULL, NULL},
00797 #endif
00798 #if SLANG_HAS_FLOAT
00799      {(FVOID_STAR)copy_uint_to_float, uint_to_float},
00800 #else
00801      {NULL, NULL},
00802 #endif
00803 #if SLANG_HAS_FLOAT
00804      {(FVOID_STAR)copy_uint_to_double, uint_to_double},
00805 #else
00806      {NULL, NULL},
00807 #endif
00808 #if defined(HAVE_LONG_DOUBLE)
00809      {(FVOID_STAR)copy_uint_to_ldouble, uint_to_ldouble},
00810 #else
00811      {NULL, NULL},
00812 #endif
00813    },
00814    /* long */
00815    {
00816      {(FVOID_STAR)copy_long_to_char, long_to_char},
00817      {(FVOID_STAR)copy_long_to_uchar, long_to_uchar},
00818      {(FVOID_STAR)copy_long_to_short, long_to_short},
00819      {(FVOID_STAR)copy_long_to_ushort, long_to_ushort},
00820      {(FVOID_STAR)copy_long_to_int, long_to_int},
00821      {(FVOID_STAR)copy_long_to_uint, long_to_uint},
00822      {(FVOID_STAR)copy_long_to_long, long_to_long},
00823      {(FVOID_STAR)copy_long_to_ulong, long_to_ulong},
00824 #if defined(HAVE_LONG_LONG)
00825      {(FVOID_STAR)copy_long_to_llong, long_to_llong},
00826 #else
00827      {NULL, NULL},
00828 #endif
00829 #if defined(HAVE_LONG_LONG)
00830      {(FVOID_STAR)copy_long_to_ullong, long_to_ullong},
00831 #else
00832      {NULL, NULL},
00833 #endif
00834 #if SLANG_HAS_FLOAT
00835      {(FVOID_STAR)copy_long_to_float, long_to_float},
00836 #else
00837      {NULL, NULL},
00838 #endif
00839 #if SLANG_HAS_FLOAT
00840      {(FVOID_STAR)copy_long_to_double, long_to_double},
00841 #else
00842      {NULL, NULL},
00843 #endif
00844 #if defined(HAVE_LONG_DOUBLE)
00845      {(FVOID_STAR)copy_long_to_ldouble, long_to_ldouble},
00846 #else
00847      {NULL, NULL},
00848 #endif
00849    },
00850    /* unsigned long */
00851    {
00852      {(FVOID_STAR)copy_ulong_to_char, ulong_to_char},
00853      {(FVOID_STAR)copy_ulong_to_uchar, ulong_to_uchar},
00854      {(FVOID_STAR)copy_ulong_to_short, ulong_to_short},
00855      {(FVOID_STAR)copy_ulong_to_ushort, ulong_to_ushort},
00856      {(FVOID_STAR)copy_ulong_to_int, ulong_to_int},
00857      {(FVOID_STAR)copy_ulong_to_uint, ulong_to_uint},
00858      {(FVOID_STAR)copy_ulong_to_long, ulong_to_long},
00859      {(FVOID_STAR)copy_ulong_to_ulong, ulong_to_ulong},
00860 #if defined(HAVE_LONG_LONG)
00861      {(FVOID_STAR)copy_ulong_to_llong, ulong_to_llong},
00862 #else
00863      {NULL, NULL},
00864 #endif
00865 #if defined(HAVE_LONG_LONG)
00866      {(FVOID_STAR)copy_ulong_to_ullong, ulong_to_ullong},
00867 #else
00868      {NULL, NULL},
00869 #endif
00870 #if SLANG_HAS_FLOAT
00871      {(FVOID_STAR)copy_ulong_to_float, ulong_to_float},
00872 #else
00873      {NULL, NULL},
00874 #endif
00875 #if SLANG_HAS_FLOAT
00876      {(FVOID_STAR)copy_ulong_to_double, ulong_to_double},
00877 #else
00878      {NULL, NULL},
00879 #endif
00880 #if defined(HAVE_LONG_DOUBLE)
00881      {(FVOID_STAR)copy_ulong_to_ldouble, ulong_to_ldouble},
00882 #else
00883      {NULL, NULL},
00884 #endif
00885    },
00886    /* long long */
00887 #if defined(HAVE_LONG_LONG)
00888    {
00889      {(FVOID_STAR)copy_llong_to_char, llong_to_char},
00890      {(FVOID_STAR)copy_llong_to_uchar, llong_to_uchar},
00891      {(FVOID_STAR)copy_llong_to_short, llong_to_short},
00892      {(FVOID_STAR)copy_llong_to_ushort, llong_to_ushort},
00893      {(FVOID_STAR)copy_llong_to_int, llong_to_int},
00894      {(FVOID_STAR)copy_llong_to_uint, llong_to_uint},
00895      {(FVOID_STAR)copy_llong_to_long, llong_to_long},
00896      {(FVOID_STAR)copy_llong_to_ulong, llong_to_ulong},
00897 #if defined(HAVE_LONG_LONG)
00898      {(FVOID_STAR)copy_llong_to_llong, llong_to_llong},
00899 #else
00900      {NULL, NULL},
00901 #endif
00902 #if defined(HAVE_LONG_LONG)
00903      {(FVOID_STAR)copy_llong_to_ullong, llong_to_ullong},
00904 #else
00905      {NULL, NULL},
00906 #endif
00907 #if SLANG_HAS_FLOAT
00908      {(FVOID_STAR)copy_llong_to_float, llong_to_float},
00909 #else
00910      {NULL, NULL},
00911 #endif
00912 #if SLANG_HAS_FLOAT
00913      {(FVOID_STAR)copy_llong_to_double, llong_to_double},
00914 #else
00915      {NULL, NULL},
00916 #endif
00917 #if defined(HAVE_LONG_DOUBLE)
00918      {(FVOID_STAR)copy_llong_to_ldouble, llong_to_ldouble},
00919 #else
00920      {NULL, NULL},
00921 #endif
00922    },
00923 #else
00924    {
00925      {NULL, NULL},
00926      {NULL, NULL},
00927      {NULL, NULL},
00928      {NULL, NULL},
00929      {NULL, NULL},
00930      {NULL, NULL},
00931      {NULL, NULL},
00932      {NULL, NULL},
00933      {NULL, NULL},
00934      {NULL, NULL},
00935      {NULL, NULL},
00936      {NULL, NULL},
00937      {NULL, NULL},
00938    },
00939 #endif /* defined(HAVE_LONG_LONG) */
00940 
00941    /* unsigned long long */
00942 #if defined(HAVE_LONG_LONG)
00943    {
00944      {(FVOID_STAR)copy_ullong_to_char, ullong_to_char},
00945      {(FVOID_STAR)copy_ullong_to_uchar, ullong_to_uchar},
00946      {(FVOID_STAR)copy_ullong_to_short, ullong_to_short},
00947      {(FVOID_STAR)copy_ullong_to_ushort, ullong_to_ushort},
00948      {(FVOID_STAR)copy_ullong_to_int, ullong_to_int},
00949      {(FVOID_STAR)copy_ullong_to_uint, ullong_to_uint},
00950      {(FVOID_STAR)copy_ullong_to_long, ullong_to_long},
00951      {(FVOID_STAR)copy_ullong_to_ulong, ullong_to_ulong},
00952 #if defined(HAVE_LONG_LONG)
00953      {(FVOID_STAR)copy_ullong_to_llong, ullong_to_llong},
00954 #else
00955      {NULL, NULL},
00956 #endif
00957 #if defined(HAVE_LONG_LONG)
00958      {(FVOID_STAR)copy_ullong_to_ullong, ullong_to_ullong},
00959 #else
00960      {NULL, NULL},
00961 #endif
00962 #if SLANG_HAS_FLOAT
00963      {(FVOID_STAR)copy_ullong_to_float, ullong_to_float},
00964 #else
00965      {NULL, NULL},
00966 #endif
00967 #if SLANG_HAS_FLOAT
00968      {(FVOID_STAR)copy_ullong_to_double, ullong_to_double},
00969 #else
00970      {NULL, NULL},
00971 #endif
00972 #if defined(HAVE_LONG_DOUBLE)
00973      {(FVOID_STAR)copy_ullong_to_ldouble, ullong_to_ldouble},
00974 #else
00975      {NULL, NULL},
00976 #endif
00977    },
00978 #else
00979    {
00980      {NULL, NULL},
00981      {NULL, NULL},
00982      {NULL, NULL},
00983      {NULL, NULL},
00984      {NULL, NULL},
00985      {NULL, NULL},
00986      {NULL, NULL},
00987      {NULL, NULL},
00988      {NULL, NULL},
00989      {NULL, NULL},
00990      {NULL, NULL},
00991      {NULL, NULL},
00992      {NULL, NULL},
00993    },
00994 #endif /* defined(HAVE_LONG_LONG) */
00995 
00996    /* float */
00997 #if SLANG_HAS_FLOAT
00998    {
00999      {(FVOID_STAR)copy_float_to_char, float_to_char},
01000      {(FVOID_STAR)copy_float_to_uchar, float_to_uchar},
01001      {(FVOID_STAR)copy_float_to_short, float_to_short},
01002      {(FVOID_STAR)copy_float_to_ushort, float_to_ushort},
01003      {(FVOID_STAR)copy_float_to_int, float_to_int},
01004      {(FVOID_STAR)copy_float_to_uint, float_to_uint},
01005      {(FVOID_STAR)copy_float_to_long, float_to_long},
01006      {(FVOID_STAR)copy_float_to_ulong, float_to_ulong},
01007 #if defined(HAVE_LONG_LONG)
01008      {(FVOID_STAR)copy_float_to_llong, float_to_llong},
01009 #else
01010      {NULL, NULL},
01011 #endif
01012 #if defined(HAVE_LONG_LONG)
01013      {(FVOID_STAR)copy_float_to_ullong, float_to_ullong},
01014 #else
01015      {NULL, NULL},
01016 #endif
01017 #if SLANG_HAS_FLOAT
01018      {(FVOID_STAR)copy_float_to_float, float_to_float},
01019 #else
01020      {NULL, NULL},
01021 #endif
01022 #if SLANG_HAS_FLOAT
01023      {(FVOID_STAR)copy_float_to_double, float_to_double},
01024 #else
01025      {NULL, NULL},
01026 #endif
01027 #if defined(HAVE_LONG_DOUBLE)
01028      {(FVOID_STAR)copy_float_to_ldouble, float_to_ldouble},
01029 #else
01030      {NULL, NULL},
01031 #endif
01032    },
01033 #else
01034    {
01035      {NULL, NULL},
01036      {NULL, NULL},
01037      {NULL, NULL},
01038      {NULL, NULL},
01039      {NULL, NULL},
01040      {NULL, NULL},
01041      {NULL, NULL},
01042      {NULL, NULL},
01043      {NULL, NULL},
01044      {NULL, NULL},
01045      {NULL, NULL},
01046      {NULL, NULL},
01047      {NULL, NULL},
01048    },
01049 #endif /* SLANG_HAS_FLOAT */
01050 
01051    /* double */
01052 #if SLANG_HAS_FLOAT
01053    {
01054      {(FVOID_STAR)copy_double_to_char, double_to_char},
01055      {(FVOID_STAR)copy_double_to_uchar, double_to_uchar},
01056      {(FVOID_STAR)copy_double_to_short, double_to_short},
01057      {(FVOID_STAR)copy_double_to_ushort, double_to_ushort},
01058      {(FVOID_STAR)copy_double_to_int, double_to_int},
01059      {(FVOID_STAR)copy_double_to_uint, double_to_uint},
01060      {(FVOID_STAR)copy_double_to_long, double_to_long},
01061      {(FVOID_STAR)copy_double_to_ulong, double_to_ulong},
01062 #if defined(HAVE_LONG_LONG)
01063      {(FVOID_STAR)copy_double_to_llong, double_to_llong},
01064 #else
01065      {NULL, NULL},
01066 #endif
01067 #if defined(HAVE_LONG_LONG)<