lio.h 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. /* copy of ftypes from the compiler */
  2. /* variable types
  3. * numeric assumptions:
  4. * int < reals < complexes
  5. * TYDREAL-TYREAL = TYDCOMPLEX-TYCOMPLEX
  6. */
  7. /* 0-10 retain their old (pre LOGICAL*1, etc.) */
  8. /* values to allow mixing old and new objects. */
  9. #define TYUNKNOWN 0
  10. #define TYADDR 1
  11. #define TYSHORT 2
  12. #define TYLONG 3
  13. #define TYREAL 4
  14. #define TYDREAL 5
  15. #define TYCOMPLEX 6
  16. #define TYDCOMPLEX 7
  17. #define TYLOGICAL 8
  18. #define TYCHAR 9
  19. #define TYSUBR 10
  20. #define TYINT1 11
  21. #define TYLOGICAL1 12
  22. #define TYLOGICAL2 13
  23. #ifdef Allow_TYQUAD
  24. #undef TYQUAD
  25. #define TYQUAD 14
  26. #endif
  27. #define LINTW 24
  28. #define LINE 80
  29. #define LLOGW 2
  30. #ifdef Old_list_output
  31. #define LLOW 1.0
  32. #define LHIGH 1.e9
  33. #define LEFMT " %# .8E"
  34. #define LFFMT " %# .9g"
  35. #else
  36. #define LGFMT "%.9G"
  37. #endif
  38. /* LEFBL 20 should suffice; 24 overcomes a NeXT bug. */
  39. #define LEFBL 24
  40. typedef union
  41. {
  42. char flchar;
  43. short flshort;
  44. ftnint flint;
  45. #ifdef Allow_TYQUAD
  46. longint fllongint;
  47. #endif
  48. real flreal;
  49. doublereal fldouble;
  50. } flex;
  51. #ifdef KR_headers
  52. extern int (*f__lioproc)(), (*l_getc)(), (*l_ungetc)();
  53. extern int l_read(), l_write();
  54. #else
  55. #ifdef __cplusplus
  56. extern "C" {
  57. #endif
  58. extern int (*f__lioproc)(ftnint*, char*, ftnlen, ftnint);
  59. extern int l_write(ftnint*, char*, ftnlen, ftnint);
  60. extern void x_wsne(cilist*);
  61. extern int c_le(cilist*), (*l_getc)(void), (*l_ungetc)(int,FILE*);
  62. extern int l_read(ftnint*,char*,ftnlen,ftnint);
  63. extern integer e_rsle(void), e_wsle(void), s_wsne(cilist*);
  64. extern int z_rnew(void);
  65. #endif
  66. extern ftnint L_len;
  67. extern int f__scale;
  68. #ifdef __cplusplus
  69. }
  70. #endif