0
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
1 /* Copyright 1990-2011, Jsoftware Inc. All rights reserved. */ |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
2 /* License in license.txt. */ |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
3 /* */ |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
4 /* Global Definitions */ |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
5 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
6 #include "js.h" |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
7 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
8 #if SY_WINCE |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
9 #include "..\cesrc\cecompat.h" |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
10 #endif |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
11 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
12 #if (SYS & SYS_PCWIN) |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
13 #define HEAPCHECK heapcheck() |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
14 #else |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
15 #define HEAPCHECK |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
16 #endif |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
17 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
18 #if (SYS & SYS_ATARIST) |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
19 #define __NO_INLINE__ 1 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
20 #endif |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
21 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
22 #if (SYS & SYS_UNIX - SYS_SGI) |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
23 #include <memory.h> |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
24 #include <sys/types.h> |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
25 #endif |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
26 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
27 #if (SYS & SYS_ANSILIB) |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
28 #include <float.h> |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
29 #include <limits.h> |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
30 #define link unused_syscall_link |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
31 #define qdiv unused_netbsd_qdiv |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
32 #include <stdlib.h> |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
33 #undef link |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
34 #undef qdiv |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
35 #else |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
36 #define const /*nothing*/ /* blame rx.h */ |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
37 #endif |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
38 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
39 #if ! SY_WINCE |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
40 #include <errno.h> |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
41 #include <stdio.h> |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
42 #endif |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
43 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
44 #include <math.h> |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
45 #include <string.h> |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
46 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
47 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
48 #if SY_64 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
49 #define IMAX 9223372036854775807L |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
50 #define FMTI "%lli" |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
51 #define FMTI02 "%02lli" |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
52 #define FMTI04 "%04lli" |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
53 #define FMTI05 "%05lli" |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
54 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
55 #else |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
56 #define IMAX 2147483647L |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
57 #define FMTI "%li" |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
58 #define FMTI02 "%02li" |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
59 #define FMTI04 "%04li" |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
60 #define FMTI05 "%05li" |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
61 #endif |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
62 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
63 #define IMIN (~IMAX) /* ANSI C LONG_MIN is -LONG_MAX */ |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
64 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
65 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
66 #if (SYS & SYS_AMIGA) |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
67 #define XINF "\177\377\000\000\000\000\000\000" |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
68 #define XNAN "\177\361\000\000\000\000\000\000" |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
69 #endif |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
70 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
71 #if (SYS & SYS_ARCHIMEDES) |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
72 #define XINF "\000\000\360\177\000\000\000\000" |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
73 #define XNAN "\000\000\370\377\000\000\000\000" |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
74 #endif |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
75 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
76 #if (SYS & SYS_DEC5500) || SY_WINCE_SH |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
77 #define XINF "\000\000\000\000\000\000\360\177" |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
78 #define XNAN "\000\000\000\000\000\000\370\377" |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
79 #endif |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
80 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
81 #if (SYS & SYS_MACINTOSH) |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
82 /* for old versions of ThinkC */ |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
83 /* #define XINF "\177\377\000\000\000\000\000\000\000\000\000\000" */ |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
84 /* #define XNAN "\377\377\100\000\100\000\000\000\000\000\000\000" */ |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
85 /* for ThinkC 7.0 or later */ |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
86 #define XINF "\177\377\177\377\000\000\000\000\000\000\000\000" |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
87 #define XNAN "\377\377\377\377\100\000\000\000\000\000\000\000" |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
88 #endif |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
89 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
90 #if (SYS & SYS_SUN4+SYS_SUNSOL2) |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
91 #define XINF "\177\360\000\000\000\000\000\000" |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
92 #define XNAN "\177\377\377\377\377\377\377\377" |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
93 #endif |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
94 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
95 #if (SYS & SYS_VAX) |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
96 #define XINF "\377\177\377\377\377\377\377\377" |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
97 #define XNAN "\377\177\377\377\377\377\377\376" /* not right */ |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
98 #endif |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
99 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
100 #if (SY_WINCE_MIPS || SY_WINCE_SH) |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
101 #if WIN32_PLATFORM_PSPC |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
102 #define XINF "\000\000\000\000\000\000\360\177" |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
103 #define XNAN "\377\377\377\377\377\377\367\177" |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
104 #else |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
105 #define XINF "\000\000\000\000\000\000\360\177" |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
106 #define XNAN "\001\000\000\000\000\000\360\177" |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
107 #endif |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
108 #endif |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
109 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
110 #if SY_WINCE_ARM |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
111 #define XINF "\000\000\000\000\000\000\360\177" |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
112 #define XNAN "\000\000\000\000\000\000\370\177" |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
113 #endif |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
114 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
115 #if (SYS & SYS_LILENDIAN) |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
116 #ifndef XINF |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
117 #define XINF "\000\000\000\000\000\000\360\177" |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
118 #define XNAN "\000\000\000\000\000\000\370\377" |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
119 #endif |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
120 #endif |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
121 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
122 #ifndef XINF |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
123 #define XINF "\177\360\000\000\000\000\000\000" |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
124 #define XNAN "\177\370\000\000\000\000\000\000" |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
125 #endif |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
126 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
127 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
128 #ifndef PI |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
129 #define PI ((D)3.14159265358979323846) |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
130 #endif |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
131 #define P2 ((D)6.28318530717958647693) |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
132 #ifndef OVERFLOW |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
133 #define OVERFLOW ((D)8.988465674311578e307) |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
134 #endif |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
135 #ifndef UNDERFLOW |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
136 #define UNDERFLOW ((D)4.450147717014403e-308) |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
137 #endif |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
138 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
139 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
140 #define NALP 256 /* size of alphabet */ |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
141 #define NETX 2000 /* size of error display buffer */ |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
142 #define NPP 20 /* max value for quad pp */ |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
143 #define RMAX IMAX /* max rank */ |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
144 #define NPATH 1024 /* max length for path names, */ |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
145 /* including trailing 0 byte */ |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
146 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
147 #if SY_WINCE |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
148 #define NFCALL 100L /* wince named fn call depth */ |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
149 #define NFDEP 200L /* wince fn call depth */ |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
150 #endif |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
151 #if SYS & SYS_MACOSX |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
152 #define NFCALL 9000L /* darwin named fn call depth */ |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
153 #define NFDEP 18000L /* darwin fn call depth */ |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
154 #endif |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
155 #ifndef NFCALL |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
156 #define NFCALL 10000L /* all other named fn call depth */ |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
157 #define NFDEP 20000L /* all other fn call depth */ |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
158 #endif |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
159 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
160 #define NTSTACK 2000L /* size of stack for temps */ |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
161 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
162 #define IIDOT 0 /* modes for indexofsub() */ |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
163 #define IICO 1 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
164 #define INUBSV 2 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
165 #define INUB 3 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
166 #define ILESS 4 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
167 #define INUBI 5 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
168 #define IEPS 6 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
169 #define II0EPS 7 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
170 #define II1EPS 8 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
171 #define IJ0EPS 9 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
172 #define IJ1EPS 10 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
173 #define ISUMEPS 11 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
174 #define IANYEPS 12 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
175 #define IALLEPS 13 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
176 #define IIFBEPS 14 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
177 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
178 #define IPHOFFSET 30 /* offset for prehashed versions */ |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
179 #define IPHIDOT 30 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
180 #define IPHICO 31 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
181 #define IPHLESS 34 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
182 #define IPHEPS 36 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
183 #define IPHI0EPS 37 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
184 #define IPHI1EPS 38 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
185 #define IPHJ0EPS 39 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
186 #define IPHJ1EPS 40 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
187 #define IPHSUMEPS 41 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
188 #define IPHANYEPS 42 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
189 #define IPHALLEPS 43 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
190 #define IPHIFBEPS 44 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
191 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
192 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
193 #if SY_64 && SY_WIN32 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
194 #define jfloor jfloor1 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
195 #else |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
196 #define jfloor floor |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
197 #endif |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
198 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
199 #define BB 8 /* # bits in a byte */ |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
200 #if SY_64 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
201 #define BW 64 /* # bits in a word */ |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
202 #else |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
203 #define BW 32 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
204 #endif |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
205 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
206 #define ABS(a) (0<=(a)?(a):-(a)) |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
207 #define ACX(a) {AC(a)=IMAX/2;} |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
208 #define ASSERT(b,e) {if(!(b)){jsignal(e); R 0;}} |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
209 #define ASSERTD(b,s) {if(!(b)){jsigd((s)); R 0;}} |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
210 #define ASSERTMTV(w) {RZ(w); ASSERT(1==AR(w),EVRANK); ASSERT(!AN(w),EVLENGTH);} |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
211 #define ASSERTN(b,e,nm) {if(!(b)){jt->curname=(nm); jsignal(e); R 0;}} |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
212 #define ASSERTSYS(b,s) {if(!(b)){jsignal(EVSYSTEM); jtwri(jt,MTYOSYS,"",(I)strlen(s),s); R 0;}} |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
213 #define ASSERTW(b,e) {if(!(b)){if((e)<=NEVM)jsignal(e); else jt->jerr=(e); R;}} |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
214 #define CALL1(f,w,fs) ((f)(jt, (w),(A)(fs))) |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
215 #define CALL2(f,a,w,fs) ((f)(jt,(a),(w),(A)(fs))) |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
216 #define DF1(f) A f(J jt, A w,A self) |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
217 #define DF2(f) A f(J jt,A a,A w,A self) |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
218 #define DO(n,stm) {I i=0,_n=(n); for(;i<_n;i++){stm}} |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
219 #define DQ(n,stm) {I i=(n)-1; for(;i>=0;--i){stm}} |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
220 #define ds(c) pst[(UC)(c)] |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
221 #define EPILOG(z) R gc(z,_ttop) |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
222 #define FDEPDEC(d) {jt->fdepi-=d;} |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
223 #define FDEPINC(d) {ASSERT(jt->fdepn>=d+jt->fdepi,EVSTACK); jt->fdepi+=d;} |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
224 #define FCONS(x) fdef(CFCONS,VERB,jtnum1,jtnum2,0L,0L,(x),0L,RMAX,RMAX,RMAX) |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
225 #define FEQ(u,v) (ABS((u)-(v))<=jt->fuzz*MAX(ABS(u),ABS(v))) |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
226 #define F1(f) A f(J jt, A w) |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
227 #define F2(f) A f(J jt,A a,A w) |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
228 #define F1RANK(m,f,self) {RZ( w); if(m<AR(w) )R rank1ex( w,(A)self,(I)m, f);} |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
229 #define F2RANK(l,r,f,self) {RZ(a&&w); if(l<AR(a)||r<AR(w))R rank2ex(a,w,(A)self,(I)l,(I)r,f);} |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
230 #define GA(v,t,n,r,s) RZ(v=ga(t,(I)(n),(I)(r),(I*)(s))) |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
231 #define HN 3L |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
232 #define IC(w) (AR(w) ? *AS(w) : 1L) |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
233 #define ICMP(z,w,n) memcmp((z),(w),(n)*SZI) |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
234 #define ICPY(z,w,n) memcpy((z),(w),(n)*SZI) |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
235 #define INF(x) ((x)==inf||(x)==infm) |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
236 #define IX(n) apv((n),0L,1L) |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
237 #define JATTN {if(*jt->adbreak&&!jt->breakignore){jsignal(EVATTN); R 0;}} |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
238 #define JBREAK0 {if(2<=*jt->adbreak&&!jt->breakignore){jsignal(EVBREAK); R 0;}} |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
239 #define MAX(a,b) ((a)>(b)?(a):(b)) |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
240 #define MC memcpy |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
241 #define MIN(a,b) ((a)<(b)?(a):(b)) |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
242 #define MLEN (SY_64?63:31) |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
243 #define NAN0 (_clearfp()) |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
244 #define NAN1 {if(_SW_INVALID&_clearfp()){jsignal(EVNAN); R 0;}} |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
245 #define NAN1V {if(_SW_INVALID&_clearfp()){jsignal(EVNAN); R ;}} |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
246 #define PROLOG I _ttop=jt->tbase+jt->ttop |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
247 #define R return |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
248 #define RE(exp) {if((exp),jt->jerr)R 0;} |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
249 #define RER {if(er){jt->jerr=er; R;}} |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
250 #define RESETERR {jt->etxn=jt->jerr=0;} |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
251 #define RNE(exp) {R jt->jerr?0:(exp);} |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
252 #define RZ(exp) {if(!(exp))R 0;} |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
253 #define SBSV(x) (jt->sbsv+(I)(x)) |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
254 #define SBUV(x) (jt->sbuv+(I)(x)) |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
255 #define SGN(a) ((0<(a))-(0>(a))) |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
256 #define SMAX 65535 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
257 #define SMIN (-65536) |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
258 #define SZA ((I)sizeof(A)) |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
259 #define SZD ((I)sizeof(D)) |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
260 #define SZI ((I)sizeof(I)) |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
261 #define VAL1 '\001' |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
262 #define VAL2 '\002' |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
263 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
264 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
265 #if SYS & SYS_LILENDIAN |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
266 #define B0000 0x00000000 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
267 #define B0001 0x01000000 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
268 #define B0010 0x00010000 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
269 #define B0011 0x01010000 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
270 #define B0100 0x00000100 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
271 #define B0101 0x01000100 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
272 #define B0110 0x00010100 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
273 #define B0111 0x01010100 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
274 #define B1000 0x00000001 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
275 #define B1001 0x01000001 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
276 #define B1010 0x00010001 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
277 #define B1011 0x01010001 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
278 #define B1100 0x00000101 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
279 #define B1101 0x01000101 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
280 #define B1110 0x00010101 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
281 #define B1111 0x01010101 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
282 #define BS00 0x0000 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
283 #define BS01 0x0100 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
284 #define BS10 0x0001 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
285 #define BS11 0x0101 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
286 #else |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
287 #define B0000 0x00000000 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
288 #define B0001 0x00000001 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
289 #define B0010 0x00000100 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
290 #define B0011 0x00000101 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
291 #define B0100 0x00010000 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
292 #define B0101 0x00010001 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
293 #define B0110 0x00010100 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
294 #define B0111 0x00010101 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
295 #define B1000 0x01000000 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
296 #define B1001 0x01000001 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
297 #define B1010 0x01000100 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
298 #define B1011 0x01000101 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
299 #define B1100 0x01010000 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
300 #define B1101 0x01010001 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
301 #define B1110 0x01010100 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
302 #define B1111 0x01010101 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
303 #define BS00 0x0000 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
304 #define BS01 0x0001 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
305 #define BS10 0x0100 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
306 #define BS11 0x0101 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
307 #endif |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
308 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
309 #include "ja.h" |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
310 #include "jc.h" |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
311 #include "jtype.h" |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
312 #include "jt.h" |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
313 #include "jlib.h" |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
314 #include "je.h" |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
315 #include "jerr.h" |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
316 #include "va.h" |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
317 #include "vq.h" |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
318 #include "vx.h" |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
319 #include "vz.h" |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
320 #include "vdx.h" |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
321 #include "m.h" |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
322 #include "a.h" |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
323 #include "s.h" |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
324 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
325 // JPFX("here we are\n") |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
326 // JPF("size is %i\n", v) |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
327 // JPF("size and extra: %i %i\n", (v,x)) |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
328 #define JPFX(s) {char b[1000]; sprintf(b, s); jsto(gjt,MTYOFM,b);} |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
329 #define JPF(s,v) {char b[1000]; sprintf(b, s, v); jsto(gjt,MTYOFM,b);} |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
330 extern J gjt; // global for JPF (procs without jt) |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
331 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
332 #if SY_WINCE_MIPS |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
333 /* strchr fails for CE MIPS - neg chars - spellit fails in ws.c for f=.+. */ |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
334 #define strchr(a,b) strchr(a, (UC)b) |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
335 #endif |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
336 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
337 #if SYS & SYS_UNIX |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
338 #include <fenv.h> |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
339 #define _isnan isnan |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
340 #define _SW_INVALID FE_INVALID |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
341 |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
342 static inline UINT _clearfp(void){int r=fetestexcept(FE_ALL_EXCEPT); |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
343 feclearexcept(FE_ALL_EXCEPT); return r; |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
344 } |
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
diff
changeset
|
345 #endif |