home *** CD-ROM | disk | FTP | other *** search
/ APDL Public Domain 1 / APDL_PD1A.iso / program / language / perl / Source / H / Config < prev    next >
Encoding:
Text File  |  1990-11-15  |  17.9 KB  |  638 lines

  1. /* config.h
  2.  * This file was produced by running the config.h.SH script, which
  3.  * gets its values from config.sh, which is generally produced by
  4.  * running Configure.
  5.  *
  6.  * Feel free to modify any of this as the need arises.  Note, however,
  7.  * that running config.h.SH again will wipe out any changes you've made.
  8.  * For a more permanent change edit config.sh and rerun config.h.SH.
  9.  */
  10.  
  11.  
  12. /* EUNICE:
  13.  *    This symbol, if defined, indicates that the program is being compiled
  14.  *    under the EUNICE package under VMS.  The program will need to handle
  15.  *    things like files that don't go away the first time you unlink them,
  16.  *    due to version numbering.  It will also need to compensate for lack
  17.  *    of a respectable link() command.
  18.  */
  19. /* VMS:
  20.  *    This symbol, if defined, indicates that the program is running under
  21.  *    VMS.  It is currently only set in conjunction with the EUNICE symbol.
  22.  */
  23. #undef    EUNICE        /**/
  24. #undef    VMS        /**/
  25.  
  26. /* BIN:
  27.  *    This symbol holds the name of the directory in which the user wants
  28.  *    to put publicly executable images for the package in question.  It
  29.  *    is most often a local directory such as /usr/local/bin.
  30.  */
  31. #define BIN "adfs::HardDisc4.$.Library"             /**/
  32.  
  33. /* BYTEORDER:
  34.  *    This symbol contains an encoding of the order of bytes in a long.
  35.  *    Usual values (in octal) are 01234, 04321, 02143, 03412...
  36.  */
  37. #define BYTEORDER 0x1234        /**/
  38.  
  39. /* CPPSTDIN:
  40.  *    This symbol contains the first part of the string which will invoke
  41.  *    the C preprocessor on the standard input and produce to standard
  42.  *    output.     Typical value of "cc -E" or "/lib/cpp".
  43.  */
  44. /* CPPMINUS:
  45.  *    This symbol contains the second part of the string which will invoke
  46.  *    the C preprocessor on the standard input and produce to standard
  47.  *    output.  This symbol will have the value "-" if CPPSTDIN needs a minus
  48.  *    to specify standard input, otherwise the value is "".
  49.  */
  50. #define CPPSTDIN "cc -E"
  51. #define CPPMINUS "-"
  52.  
  53. /* BCMP:
  54.  *    This symbol, if defined, indicates that the bcmp routine is available
  55.  *    to compare blocks of memory.  If undefined, use memcmp.  If that's
  56.  *    not available, roll your own.
  57.  */
  58. #undef    BCMP        /**/
  59.  
  60. /* BCOPY:
  61.  *    This symbol, if defined, indicates that the bcopy routine is available
  62.  *    to copy blocks of memory.  Otherwise you should probably use memcpy().
  63.  */
  64. #undef    BCOPY        /**/
  65.  
  66. /* BZERO:
  67.  *    This symbol, if defined, indicates that the bzero routine is available
  68.  *    to zero blocks of memory.  Otherwise you should probably use memcpy().
  69.  */
  70. #undef    BZERO        /**/
  71.  
  72. /* CASTNEGFLOAT:
  73.  *    This symbol, if defined, indicates that this C compiler knows how to
  74.  *    cast negative numbers to unsigned longs, ints and shorts.
  75.  */
  76. #define    CASTNEGFLOAT    /**/
  77.  
  78. /* CHARSPRINTF:
  79.  *    This symbol is defined if this system declares "char *sprintf()" in
  80.  *    stdio.h.  The trend seems to be to declare it as "int sprintf()".  It
  81.  *    is up to the package author to declare sprintf correctly based on the
  82.  *    symbol.
  83.  */
  84. #undef    CHARSPRINTF     /**/
  85.  
  86. /* CRYPT:
  87.  *    This symbol, if defined, indicates that the crypt routine is available
  88.  *    to encrypt passwords and the like.
  89.  */
  90. #undef    CRYPT        /**/
  91.  
  92. /* CSH:
  93.  *    This symbol, if defined, indicates that the C-shell exists.
  94.  *    If defined, contains the full pathname of csh.
  95.  */
  96. #undef CSH        /**/
  97.  
  98. /* DOSUID:
  99.  *    This symbol, if defined, indicates that the C program should
  100.  *    check the script that it is executing for setuid/setgid bits, and
  101.  *    attempt to emulate setuid/setgid on systems that have disabled
  102.  *    setuid #! scripts because the kernel can't do it securely.
  103.  *    It is up to the package designer to make sure that this emulation
  104.  *    is done securely.  Among other things, it should do an fstat on
  105.  *    the script it just opened to make sure it really is a setuid/setgid
  106.  *    script, it should make sure the arguments passed correspond exactly
  107.  *    to the argument on the #! line, and it should not trust any
  108.  *    subprocesses to which it must pass the filename rather than the
  109.  *    file descriptor of the script to be executed.
  110.  */
  111. #undef DOSUID        /**/
  112.  
  113. /* DUP2:
  114.  *    This symbol, if defined, indicates that the dup2 routine is available
  115.  *    to dup file descriptors.  Otherwise you should use dup().
  116.  */
  117. #undef    DUP2        /**/
  118.  
  119. /* FCHMOD:
  120.  *    This symbol, if defined, indicates that the fchmod routine is available
  121.  *    to change mode of opened files.  If unavailable, use chmod().
  122.  */
  123. #undef    FCHMOD        /**/
  124.  
  125. /* FCHOWN:
  126.  *    This symbol, if defined, indicates that the fchown routine is available
  127.  *    to change ownership of opened files.  If unavailable, use chown().
  128.  */
  129. #undef    FCHOWN        /**/
  130.  
  131. /* FCNTL:
  132.  *    This symbol, if defined, indicates to the C program that it should
  133.  *    include fcntl.h.
  134.  */
  135. #undef    FCNTL        /**/
  136.  
  137. /* FLOCK:
  138.  *    This symbol, if defined, indicates that the flock() routine is
  139.  *    available to do file locking.
  140.  */
  141. #undef    FLOCK        /**/
  142.  
  143. /* GETGROUPS:
  144.  *    This symbol, if defined, indicates that the getgroups() routine is
  145.  *    available to get the list of process groups.  If unavailable, multiple
  146.  *    groups are probably not supported.
  147.  */
  148. #undef    GETGROUPS        /**/
  149.  
  150. /* GETHOSTENT:
  151.  *    This symbol, if defined, indicates that the gethostent() routine is
  152.  *    available to lookup host names in some data base or other.
  153.  */
  154. #undef    GETHOSTENT        /**/
  155.  
  156. /* GETPGRP:
  157.  *    This symbol, if defined, indicates that the getpgrp() routine is
  158.  *    available to get the current process group.
  159.  */
  160. #undef    GETPGRP        /**/
  161.  
  162. /* GETPGRP2:
  163.  *    This symbol, if defined, indicates that the getpgrp2() (as in DG/UX)
  164.  *    routine is available to get the current process group.
  165.  */
  166. #undef    GETPGRP2        /**/
  167.  
  168. /* GETPRIORITY:
  169.  *    This symbol, if defined, indicates that the getpriority() routine is
  170.  *    available to get a process's priority.
  171.  */
  172. #undef    GETPRIORITY        /**/
  173.  
  174. /* HTONS:
  175.  *    This symbol, if defined, indicates that the htons routine (and friends)
  176.  *    are available to do network order byte swapping.
  177.  */
  178. /* HTONL:
  179.  *    This symbol, if defined, indicates that the htonl routine (and friends)
  180.  *    are available to do network order byte swapping.
  181.  */
  182. /* NTOHS:
  183.  *    This symbol, if defined, indicates that the ntohs routine (and friends)
  184.  *    are available to do network order byte swapping.
  185.  */
  186. /* NTOHL:
  187.  *    This symbol, if defined, indicates that the ntohl routine (and friends)
  188.  *    are available to do network order byte swapping.
  189.  */
  190. #undef    HTONS        /**/
  191. #undef    HTONL        /**/
  192. #undef    NTOHS        /**/
  193. #undef    NTOHL        /**/
  194.  
  195. /* index:
  196.  *    This preprocessor symbol is defined, along with rindex, if the system
  197.  *    uses the strchr and strrchr routines instead.
  198.  */
  199. /* rindex:
  200.  *    This preprocessor symbol is defined, along with index, if the system
  201.  *    uses the strchr and strrchr routines instead.
  202.  */
  203. #define    index  strchr
  204. #define    rindex strrchr
  205.  
  206. /* IOCTL:
  207.  *    This symbol, if defined, indicates that sys/ioctl.h exists and should
  208.  *    be included.
  209.  */
  210. #undef    IOCTL        /**/
  211.  
  212. /* KILLPG:
  213.  *    This symbol, if defined, indicates that the killpg routine is available
  214.  *    to kill process groups.  If unavailable, you probably should use kill
  215.  *    with a negative process number.
  216.  */
  217. #undef    KILLPG        /**/
  218.  
  219. /* LSTAT:
  220.  *    This symbol, if defined, indicates that the lstat() routine is
  221.  *    available to do file locking.
  222.  */
  223. #undef    LSTAT        /**/
  224.  
  225. /* MEMCMP:
  226.  *    This symbol, if defined, indicates that the memcmp routine is available
  227.  *    to compare blocks of memory.  If undefined, roll your own.
  228.  */
  229. #define    MEMCMP        /**/
  230.  
  231. /* MEMCPY:
  232.  *    This symbol, if defined, indicates that the memcpy routine is available
  233.  *    to copy blocks of memory.  Otherwise you should probably use bcopy().
  234.  *    If neither is defined, roll your own.
  235.  */
  236. #define    MEMCPY        /**/
  237.  
  238. /* MKDIR:
  239.  *    This symbol, if defined, indicates that the mkdir routine is available
  240.  *    to create directories.  Otherwise you should fork off a new process to
  241.  *    exec /bin/mkdir.
  242.  */
  243. #define    MKDIR        /**/
  244.  
  245. /* GDBM:
  246.  *    This symbol, if defined, indicates that the gnu gdbm.h exists and
  247.  *    should be included.
  248.  */
  249. #define    GDBM        /**/
  250.  
  251. /* NDBM:
  252.  *    This symbol, if defined, indicates that ndbm.h exists and should
  253.  *    be included.
  254.  */
  255. #undef    NDBM        /**/
  256.  
  257. /* ODBM:
  258.  *    This symbol, if defined, indicates that dbm.h exists and should
  259.  *    be included.
  260.  */
  261. #undef    ODBM        /**/
  262.  
  263. /* READDIR:
  264.  *    This symbol, if defined, indicates that the readdir routine is available
  265.  *    from the C library to create directories.
  266.  */
  267. #define    READDIR        /**/
  268.  
  269. /* RENAME:
  270.  *    This symbol, if defined, indicates that the rename routine is available
  271.  *    to rename files.  Otherwise you should do the unlink(), link(), unlink()
  272.  *    trick.
  273.  */
  274. #define    RENAME        /**/
  275.  
  276. /* RMDIR:
  277.  *    This symbol, if defined, indicates that the rmdir routine is available
  278.  *    to remove directories.  Otherwise you should fork off a new process to
  279.  *    exec /bin/rmdir.
  280.  */
  281. #define    RMDIR        /**/
  282.  
  283. /* SETEGID:
  284.  *    This symbol, if defined, indicates that the setegid routine is available
  285.  *    to change the effective gid of the current program.
  286.  */
  287. #undef    SETEGID        /**/
  288.  
  289. /* SETEUID:
  290.  *    This symbol, if defined, indicates that the seteuid routine is available
  291.  *    to change the effective uid of the current program.
  292.  */
  293. #undef    SETEUID        /**/
  294.  
  295. /* SETPGRP:
  296.  *    This symbol, if defined, indicates that the setpgrp() routine is
  297.  *    available to set the current process group.
  298.  */
  299. #undef    SETPGRP        /**/
  300.  
  301. /* SETPGRP2:
  302.  *    This symbol, if defined, indicates that the setpgrp2() (as in DG/UX)
  303.  *    routine is available to set the current process group.
  304.  */
  305. #undef    SETPGRP2        /**/
  306.  
  307. /* SETPRIORITY:
  308.  *    This symbol, if defined, indicates that the setpriority() routine is
  309.  *    available to set a process's priority.
  310.  */
  311. #undef    SETPRIORITY        /**/
  312.  
  313. /* SETREGID:
  314.  *    This symbol, if defined, indicates that the setregid routine is
  315.  *    available to change the real and effective gid of the current program.
  316.  */
  317. /* SETRESGID:
  318.  *    This symbol, if defined, indicates that the setresgid routine is
  319.  *    available to change the real, effective and saved gid of the current
  320.  *    program.
  321.  */
  322. #undef    SETREGID        /**/
  323. #undef    SETRESGID        /**/
  324.  
  325. /* SETREUID:
  326.  *    This symbol, if defined, indicates that the setreuid routine is
  327.  *    available to change the real and effective uid of the current program.
  328.  */
  329. /* SETRESUID:
  330.  *    This symbol, if defined, indicates that the setresuid routine is
  331.  *    available to change the real, effective and saved uid of the current
  332.  *    program.
  333.  */
  334. #undef    SETREUID        /**/
  335. #undef    SETRESUID        /**/
  336.  
  337. /* SETRGID:
  338.  *    This symbol, if defined, indicates that the setrgid routine is available
  339.  *    to change the real gid of the current program.
  340.  */
  341. #undef    SETRGID        /**/
  342.  
  343. /* SETRUID:
  344.  *    This symbol, if defined, indicates that the setruid routine is available
  345.  *    to change the real uid of the current program.
  346.  */
  347. #undef    SETRUID        /**/
  348.  
  349. /* SOCKET:
  350.  *    This symbol, if defined, indicates that the BSD socket interface is
  351.  *    supported.
  352.  */
  353. /* SOCKETPAIR:
  354.  *    This symbol, if defined, indicates that the BSD socketpair call is
  355.  *    supported.
  356.  */
  357. /* OLDSOCKET:
  358.  *    This symbol, if defined, indicates that the 4.1c BSD socket interface
  359.  *    is supported instead of the 4.2/4.3 BSD socket interface.
  360.  */
  361. #undef    SOCKET        /**/
  362.  
  363. #undef    SOCKETPAIR    /**/
  364.  
  365. #undef    OLDSOCKET    /**/
  366.  
  367. /* STATBLOCKS:
  368.  *    This symbol is defined if this system has a stat structure declaring
  369.  *    st_blksize and st_blocks.
  370.  */
  371. #undef    STATBLOCKS     /**/
  372.  
  373. /* STDSTDIO:
  374.  *    This symbol is defined if this system has a FILE structure declaring
  375.  *    _ptr and _cnt in stdio.h.
  376.  */
  377. #undef    STDSTDIO     /**/
  378.  
  379. /* STRUCTCOPY:
  380.  *    This symbol, if defined, indicates that this C compiler knows how
  381.  *    to copy structures.  If undefined, you'll need to use a block copy
  382.  *    routine of some sort instead.
  383.  */
  384. #define    STRUCTCOPY    /**/
  385.  
  386. /* STRERROR:
  387.  *    This symbol, if defined, indicates that the strerror() routine is
  388.  *    available to translate error numbers to strings.
  389.  */
  390. #define    STRERROR        /**/
  391.  
  392. /* SYMLINK:
  393.  *    This symbol, if defined, indicates that the symlink routine is available
  394.  *    to create symbolic links.
  395.  */
  396. #undef    SYMLINK        /**/
  397.  
  398. /* SYSCALL:
  399.  *    This symbol, if defined, indicates that the syscall routine is available
  400.  *    to call arbitrary system calls.  If undefined, that's tough.
  401.  */
  402. #undef    SYSCALL        /**/
  403.  
  404. /* VARARGS:
  405.  *    This symbol, if defined, indicates to the C program that it should
  406.  *    include varargs.h.
  407.  */
  408. #undef    VARARGS        /**/
  409.  
  410. /* VFORK:
  411.  *    This symbol, if defined, indicates that vfork() exists.
  412.  */
  413. #undef    VFORK    /**/
  414.  
  415. /* VOIDSIG:
  416.  *    This symbol is defined if this system declares "void (*signal())()" in
  417.  *    signal.h.  The old way was to declare it as "int (*signal())()".  It
  418.  *    is up to the package author to declare things correctly based on the
  419.  *    symbol.
  420.  */
  421. #define    VOIDSIG     /**/
  422.  
  423. /* HASVOLATILE:
  424.  *    This symbol, if defined, indicates that this C compiler knows about
  425.  *    the volatile declaration.
  426.  */
  427. #define    HASVOLATILE    /**/
  428.  
  429. /* VPRINTF:
  430.  *    This symbol, if defined, indicates that the vprintf routine is available
  431.  *    to printf with a pointer to an argument list.  If unavailable, you
  432.  *    may need to write your own, probably in terms of _doprnt().
  433.  */
  434. /* CHARVSPRINTF:
  435.  *    This symbol is defined if this system has vsprintf() returning type
  436.  *    (char*).  The trend seems to be to declare it as "int vsprintf()".  It
  437.  *    is up to the package author to declare vsprintf correctly based on the
  438.  *    symbol.
  439.  */
  440. #define    VPRINTF        /**/
  441. #undef    CHARVSPRINTF     /**/
  442.  
  443. /* WAIT4:
  444.  *    This symbol, if defined, indicates that wait4() exists.
  445.  */
  446. #undef    WAIT4    /**/
  447.  
  448. /* GIDTYPE:
  449.  *    This symbol has a value like gid_t, int, ushort, or whatever type is
  450.  *    used to declare group ids in the kernel.
  451.  */
  452. #define GIDTYPE int    /**/
  453.  
  454. /* I_DIRENT:
  455.  *    This symbol, if defined, indicates to the C program that it should
  456.  *    include dirent.h.
  457.  */
  458. /* DIRNAMLEN:
  459.  *    This symbol, if defined, indicates to the C program that the length
  460.  *    of directory entry names is provided by a d_namlen field.  Otherwise
  461.  *    you need to do strlen() on the d_name field.
  462.  */
  463. #undef    I_DIRENT        /**/
  464. #define    DIRNAMLEN        /**/
  465.  
  466. /* I_FCNTL:
  467.  *    This symbol, if defined, indicates to the C program that it should
  468.  *    include fcntl.h.
  469.  */
  470. #undef    I_FCNTL        /**/
  471.  
  472. /* I_GRP:
  473.  *    This symbol, if defined, indicates to the C program that it should
  474.  *    include grp.h.
  475.  */
  476. #undef    I_GRP        /**/
  477.  
  478. /* I_NETINET_IN:
  479.  *    This symbol, if defined, indicates to the C program that it should
  480.  *    include netinet/in.h.
  481.  */
  482. #undef    I_NETINET_IN        /**/
  483.  
  484. /* I_PWD:
  485.  *    This symbol, if defined, indicates to the C program that it should
  486.  *    include pwd.h.
  487.  */
  488. /* PWQUOTA:
  489.  *    This symbol, if defined, indicates to the C program that struct passwd
  490.  *    contains pw_quota.
  491.  */
  492. /* PWAGE:
  493.  *    This symbol, if defined, indicates to the C program that struct passwd
  494.  *    contains pw_age.
  495.  */
  496. /* PWCHANGE:
  497.  *    This symbol, if defined, indicates to the C program that struct passwd
  498.  *    contains pw_change.
  499.  */
  500. /* PWCLASS:
  501.  *    This symbol, if defined, indicates to the C program that struct passwd
  502.  *    contains pw_class.
  503.  */
  504. /* PWEXPIRE:
  505.  *    This symbol, if defined, indicates to the C program that struct passwd
  506.  *    contains pw_expire.
  507.  */
  508. #undef    I_PWD        /**/
  509. #undef    PWQUOTA        /**/
  510. #undef    PWAGE        /**/
  511. #undef    PWCHANGE    /**/
  512. #undef    PWCLASS        /**/
  513. #undef    PWEXPIRE    /**/
  514.  
  515. /* I_SYSDIR:
  516.  *    This symbol, if defined, indicates to the C program that it should
  517.  *    include sys/dir.h.
  518.  */
  519. #define    I_SYSDIR        /**/
  520.  
  521. /* I_SYSIOCTL:
  522.  *    This symbol, if defined, indicates that sys/ioctl.h exists and should
  523.  *    be included.
  524.  */
  525. #undef    I_SYSIOCTL        /**/
  526.  
  527. /* I_SYSNDIR:
  528.  *    This symbol, if defined, indicates to the C program that it should
  529.  *    include sys/ndir.h.
  530.  */
  531. #undef    I_SYSNDIR        /**/
  532.  
  533. /* I_TIME:
  534.  *    This symbol is defined if the program should include <time.h>.
  535.  */
  536. /* I_SYSTIME:
  537.  *    This symbol is defined if the program should include <sys/time.h>.
  538.  */
  539. /* I_SYSTIMEKERNEL:
  540.  *    This symbol is defined if the program should include <sys/time.h>
  541.  *    with KERNEL defined.
  542.  */
  543. #define    I_TIME         /**/
  544. #undef    I_SYSTIME     /**/
  545. #undef    SYSTIMEKERNEL     /**/
  546.  
  547. /* I_UTIME:
  548.  *    This symbol, if defined, indicates to the C program that it should
  549.  *    include utime.h.
  550.  */
  551. #undef    I_UTIME        /**/
  552.  
  553. /* I_VARARGS:
  554.  *    This symbol, if defined, indicates to the C program that it should
  555.  *    include varargs.h.
  556.  */
  557. #undef    I_VARARGS    /**/
  558.  
  559. /* I_VFORK:
  560.  *    This symbol, if defined, indicates to the C program that it should
  561.  *    include vfork.h.
  562.  */
  563. #undef    I_VFORK        /**/
  564.  
  565. /* INTSIZE:
  566.  *    This symbol contains the size of an int, so that the C preprocessor
  567.  *    can make decisions based on it.
  568.  */
  569. #define INTSIZE 4    /**/
  570.  
  571. /* RANDBITS:
  572.  *    This symbol contains the number of bits of random number the rand()
  573.  *    function produces.  Usual values are 15, 16, and 31.
  574.  */
  575. #define RANDBITS 31    /**/
  576.  
  577. /* SIG_NAME:
  578.  *    This symbol contains an list of signal names in order.
  579.  */
  580. #define SIG_NAME "ZERO","ABRT","FPE","ILL","INT","SEGV","TERM","STAK"    /**/
  581.  
  582. /* STDCHAR:
  583.  *    This symbol is defined to be the type of char used in stdio.h.
  584.  *    It has the values "unsigned char" or "char".
  585.  */
  586. #define STDCHAR unsigned char    /**/
  587.  
  588. /* UIDTYPE:
  589.  *    This symbol has a value like uid_t, int, ushort, or whatever type is
  590.  *    used to declare user ids in the kernel.
  591.  */
  592. #define UIDTYPE int    /**/
  593.  
  594. /* VOIDFLAGS:
  595.  *    This symbol indicates how much support of the void type is given by this
  596.  *    compiler.  What various bits mean:
  597.  *
  598.  *        1 = supports declaration of void
  599.  *        2 = supports arrays of pointers to functions returning void
  600.  *        4 = supports comparisons between pointers to void functions and
  601.  *            addresses of void functions
  602.  *
  603.  *    The package designer should define VOIDUSED to indicate the requirements
  604.  *    of the package.  This can be done either by #defining VOIDUSED before
  605.  *    including config.h, or by defining defvoidused in Myinit.U.  If the
  606.  *    latter approach is taken, only those flags will be tested.  If the
  607.  *    level of void support necessary is not present, defines void to int.
  608.  */
  609. #ifndef VOIDUSED
  610. #define VOIDUSED 7
  611. #endif
  612. #define VOIDFLAGS 7
  613. #if (VOIDFLAGS & VOIDUSED) != VOIDUSED
  614. #define void int    /* is void to be avoided? */
  615. #define M_VOID        /* Xenix strikes again */
  616. #endif
  617.  
  618. /* PRIVLIB:
  619.  *    This symbol contains the name of the private library for this package.
  620.  *    The library is private in the sense that it needn't be in anyone's
  621.  *    execution path, but it should be accessible by the world.  The program
  622.  *    should be prepared to do ~ expansion.
  623.  */
  624. #define PRIVLIB "Lib:Perl"        /**/
  625.  
  626. /* STDARG:
  627.  *    This symbol, if defined, indicates to the C program that it should
  628.  *    use the ANSI <stdarg.h> system.
  629.  */
  630. #define    STDARG        /**/
  631.  
  632. /* I_STDARG:
  633.  *    This symbol, if defined, indicates to the C program that it should
  634.  *    include stdarg.h.
  635.  */
  636. #define    I_STDARG    /**/
  637.  
  638.