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