4115
|
1 2002-10-22 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2 |
|
3 * version.h (OCTAVE_VERSION): Now 2.1.37. |
|
4 (OCTAVE_CONTRIB_STATEMENT): New macro. |
|
5 (OCTAVE_STARTUP_MESSAGE): Use it. |
|
6 |
4110
|
7 2002-10-17 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
8 |
4114
|
9 * data.cc (fill_matrix): If nargin is zero, use val, not 0.0. |
|
10 |
4113
|
11 * main.c: New file. |
|
12 * octave.h: New file. |
|
13 * octave.cc (octave_main): Rename from main. |
|
14 Include octave.h. |
|
15 * Makefile.in (OBJECTS): Add octave.o, builtins.o, and ops.o to |
|
16 the list. |
|
17 (octave): Depend on and link main.o, not octave.o, builtins.o, and |
|
18 ops.o (they are now in liboctinterp). |
|
19 (DEP_5): Add main.c here. |
|
20 |
4110
|
21 * oct-conf.h.in: No need to substitute OCTAVE_CONF_OCTAVE_LITE. |
|
22 * toplev.cc (octave_config_info): Likewise, don't include it in |
|
23 struct. |
|
24 |
|
25 * mkbuiltins: Remove check for OCTAVE_LITE, since it is now |
|
26 implied by WITH_DYNAMIC_LINKING. |
|
27 * Makefile.in: Likewise, replace tests for OCTAVE_LITE with tests |
|
28 for WITH_DYNAMIC_LINKING instead. |
|
29 |
|
30 * oct-conf.h.in: Use OCTAVE_CONF_HAVE_DLOPEN_API, |
|
31 OCTAVE_CONF_HAVE_LOADLIBRARY_API, and |
|
32 OCTAVE_CONF_HAVE_SHL_LOAD_API instead of OCTAVE_CONF_WITH_DL and |
|
33 OCTAVE_CONF_WITH_SHL. |
|
34 * toplev.cc (octave_config_info): Likewise. |
|
35 |
4107
|
36 2002-10-16 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
37 |
4108
|
38 * help.cc (display_help_text): Quote output file name for Cygwin. |
|
39 |
|
40 * Makefile.in (install-lib): Don't bother with versions for |
|
41 $(SHLBIN) files. |
|
42 |
|
43 * help.cc (display_help_text): Match zero or more comment |
|
44 characters instead of one or more. |
|
45 |
4107
|
46 * Makefile.in (install-oct): Process files from $(DLD_DEF_FILES), |
|
47 not $(DLD_SRC). Look for them in current directory, not $(srcdir). |
|
48 |
4104
|
49 2002-10-15 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
50 |
|
51 * ov-mapper.cc (octave_mapper::apply): Handle real and complex |
|
52 types first. If the arg is something else, try ch_map_fcn if it |
|
53 is defined. |
|
54 |
|
55 2002-10-15 Paul Kienzle <pkienzle@users.sf.net> |
|
56 |
|
57 * Makefile.in: If building shared but not static libs, only set |
|
58 XERBLA to the location of the pic object file if FPICFLAG is |
|
59 defined. |
|
60 |
4102
|
61 2002-10-14 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
62 |
|
63 * DLD-FUNCTIONS/minmax.cc, DLD-FUNCTIONS/getrusage.cc, data.cc, |
|
64 file-io.cc, ov-base.cc, ov-bool-mat.cc, ov-ch-mat.cc, |
|
65 ov-complex.cc, ov-cx-mat.cc, ov-range.cc, ov-re-mat.cc, |
|
66 ov-re-nd-array.cc: Change all uses of octave_Inf, octave_NA, and |
|
67 octave_NaN to be calls to lo_ieee_Inf_value, lo_ieee_NA_value, and |
|
68 lo_ieee_NaN_value instead of using the constants directly to avoid |
|
69 linking problem with Cygwin. |
|
70 |
|
71 * Makefile.in (install): No need to use cd to create links. |
|
72 |
|
73 2002-10-14 Paul Kienzle <pkienzle@users.sf.net> |
|
74 |
|
75 * Makefile.in: Merge liboctave with liboct-readline and |
|
76 liboct-pathsearch. |
|
77 Use link dependencies for shared libs if INCLUDE_LINK_DEPS. |
|
78 (LIBRARIES): If doing shared libs, include versioned library in list. |
|
79 (liboctinterp.$(SHLEXT), liboctinterp.$(SHLEXT_VER)): Reverse |
|
80 actions -- build unversioned library, symbolic link adds version |
|
81 info. |
|
82 (install, uninstall): Handle link and load forms of the library |
|
83 separately. |
|
84 |
|
85 * toplev.cc (octave_config_info): Remove LIBOCT_READLINE and |
|
86 LIBOCT_PATHSEARCH, add LIBREADLINE. |
|
87 * oct-conf.h.in: Likewise. |
|
88 |
4100
|
89 2002-10-11 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
90 |
4101
|
91 * lex.l (handle_identifier): Don't enter token in local symbol |
|
92 table if the following token is a dot and it looks like a binary |
|
93 operator. |
|
94 (force_local_variable): If name is not a variable, clear it before |
|
95 defining. |
|
96 |
|
97 * oct-procbuf.cc (Vkluge_procbuf_delay): Make default 0 for all |
|
98 systems. |
|
99 |
|
100 * octave.cc (execute_startup_files, initialize_pathsearch): |
|
101 Use file_ops::dir_sep_str instead of OCTAVE_DIR_SEP_STR. |
|
102 (main): Use file_ops::dir_sep_chars instead of OCTAVE_DIR_SEP_CHARS. |
|
103 |
4100
|
104 * ov-re-mat.cc (octave_matrix::convert_to_str): Warn for out of |
|
105 range conversions. For negative values, set to 0. |
|
106 * ov-scalar.cc (octave_scalar:convert_to_str): Likewise. |
|
107 |
|
108 * mappers.cc (xabs): New static function. |
|
109 (install_mapper_functions): Use it for abs for character matrices. |
|
110 Handle ch_map_flag separately from can_ret_cmplx_for_real in |
|
111 all uses of DEFUN_MAPPER. |
|
112 * defun.h (DEFUN_MAPPER): Handle ch_map_flag separately from |
|
113 can_ret_cmplx_for_real. |
|
114 * defun-int.h (DEFUN_MAPPER_INTERNAL): Likewise. |
|
115 * mkbuiltins: Likewise. |
|
116 * mkgendoc: Likewise. |
|
117 * ov-mapper.cc (octave_mapper::apply): Use ch_map_flag and |
|
118 can_ret_cmplx_for_real instead of flag. |
|
119 * ov-mapper.h (octave_mapper::ch_map_flag): Rename from flag. |
|
120 (octave_mapper::can_ret_cmplx_for_real): New data member. |
|
121 (octave_mapper::octave_mapper): Handle it here. |
|
122 |
4098
|
123 2002-10-10 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
124 |
4100
|
125 * octave.cc (execute_startup_files): Don't forget directory |
|
126 separator for local initfile. |
|
127 |
4098
|
128 * move-if-change: Delete. |
|
129 * Makefile.in (DISTFILES): Delete it from the list. |
|
130 |
4097
|
131 2002-10-09 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
132 |
4098
|
133 * Makefile.in: Use $(EXEEXT) and $(BUILD_EXEEXT) as appropriate. |
|
134 |
|
135 * pt-plot.cc (Vgnuplot_binary): Use GNUPLOT_BINARY as default. |
|
136 |
4097
|
137 * octave.cc (execute_startup_files): |
|
138 Use octave_env::getcwd instead of "./". |
|
139 Use OCTAVE_DIR_SEP_STR instead of "/". |
|
140 (initialize_pathsearch): Use OCTAVE_DIR_SEP_STR instead of /. |
|
141 (main): Look for OCTAVE_DIR_SEP_CHARS, not '/'. |
|
142 |
4093
|
143 2002-10-08 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
144 |
|
145 * Makefile.in (gendoc): Use $(BUILD_CXX), not $(CXX). |
|
146 |
|
147 2002-10-07 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
148 |
|
149 * utils.cc (octave_sleep): Cast result of modf to unsigned int. |
|
150 |
4092
|
151 2002-10-07 Paul Kienzle <pkienzle@users.sf.net> |
|
152 |
|
153 * sighandlers.cc (my_friendly_exit): If kill is unavailable, use |
|
154 raise. |
|
155 |
4090
|
156 2002-10-06 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
157 |
4091
|
158 * sysdep.cc (CYGWIN_init): New function. |
|
159 (sysdep_init) [__CYGWIN__]: Call it. |
|
160 |
4090
|
161 * pt-plot.cc (subplot::handle_plot_data): Surround file names in |
|
162 single quotes, not double (for Windows). |
|
163 (do_external_plotter_cd): Likewise. |
|
164 |
4086
|
165 2002-10-03 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
166 |
|
167 * cutils.c (octave_usleep): Call octave_sleep, not sleep. |
|
168 |
|
169 * utils.cc (octave_sleep (double)): New function. |
|
170 * utils.h: Provide decl. |
|
171 * sysdep.cc (Fpause, Fsleep): Use it. |
|
172 |
|
173 * cutils.c (do_octave_usleep): Merge with octave_usleep. |
|
174 (octave_usleep): Make it work for Windows systems. From Paul |
|
175 Kienzle <pkienzle@users.sf.net>. |
|
176 |
|
177 2002-10-03 Paul Kienzle <pkienzle@users.sf.net> |
|
178 |
|
179 * cutils.c (octave_usleep): Make it work for Windows systems. |
|
180 |
|
181 * toplev.cc (Fsystem): Error message if fork is not available. |
|
182 |
4084
|
183 2002-10-02 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
184 |
|
185 * cutils.c (octave_sleep): Handle Windows, which may not have |
|
186 sleep, but should have Sleep. |
|
187 |
|
188 * oct-conf.h.in (OCTAVE_CONF_SED): Add an entry for SED. |
|
189 * toplev.cc (octave_config_info): Likewise. |
|
190 * Makefile.in (oct-gperf.h): Use $(SED), not sed. |
|
191 |
4070
|
192 2002-09-27 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
193 |
|
194 * file-io.cc (fopen_mode_to_ios_mode): Set ios::ate instead of |
|
195 ios::app for "a+" mode. |
|
196 * oct-stream.cc (octave_stream::mode_as_string): Recognize |
|
197 ios::ate, not ios::app as "a+" mode. |
4078
|
198 (octave_stream::mode_as_string): Use parens since | has lower |
|
199 precedence than ==. |
4070
|
200 |
4067
|
201 2002-09-26 Paul Kienzle <pkienzle@users.sf.net> |
|
202 |
|
203 * sysdep.cc: Include conio.h if it exists. |
|
204 (octave_kbhit): Rename from kbhit. Implement with _kbhit if it |
|
205 exists. Change all callers. |
|
206 * cutils.c (octave_sleep): New function. |
|
207 Change all callers of sleep to use octave_sleep instead. |
|
208 |
4066
|
209 2002-09-26 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
210 |
|
211 * BaseSLList.cc, BaseSLList.h, Cell.cc, Cell.h, DLList.cc, |
|
212 DLList.h, Map.cc, Map.h, OPERATORS/op-b-b.cc, |
|
213 OPERATORS/op-bm-b.cc, OPERATORS/op-bm-bm.cc, OPERATORS/op-cell.cc, |
|
214 OPERATORS/op-chm.cc, OPERATORS/op-cm-cm.cc, OPERATORS/op-cm-cs.cc, |
|
215 OPERATORS/op-cm-m.cc, OPERATORS/op-cm-s.cc, OPERATORS/op-cs-cm.cc, |
|
216 OPERATORS/op-cs-cs.cc, OPERATORS/op-cs-m.cc, OPERATORS/op-cs-s.cc, |
|
217 OPERATORS/op-fil-b.cc, OPERATORS/op-fil-bm.cc, |
|
218 OPERATORS/op-fil-cm.cc, OPERATORS/op-fil-cs.cc, |
|
219 OPERATORS/op-fil-lis.cc, OPERATORS/op-fil-m.cc, |
|
220 OPERATORS/op-fil-rec.cc, OPERATORS/op-fil-s.cc, |
|
221 OPERATORS/op-fil-str.cc, OPERATORS/op-list.cc, |
|
222 OPERATORS/op-m-cm.cc, OPERATORS/op-m-cs.cc, OPERATORS/op-m-m.cc, |
|
223 OPERATORS/op-m-s.cc, OPERATORS/op-range.cc, OPERATORS/op-s-cm.cc, |
|
224 OPERATORS/op-s-cs.cc, OPERATORS/op-s-m.cc, OPERATORS/op-s-s.cc, |
|
225 OPERATORS/op-str-str.cc, SLList.cc, SLList.h, SLStack.cc, |
|
226 SLStack.h, Stack.cc, Stack.h, c-file-ptr-stream.cc, |
|
227 c-file-ptr-stream.h, comment-list.cc, comment-list.h, oct-map.cc, |
|
228 oct-map.h, oct-obj.cc, oct-obj.h, ov-base-mat.cc, ov-base-mat.h, |
|
229 ov-base-nd-array.cc, ov-base-nd-array.h, ov-base-scalar.cc, |
|
230 ov-base-scalar.h, ov-base.cc, ov-base.h, ov-bool-mat.cc, |
|
231 ov-bool-mat.h, ov-bool.cc, ov-bool.h, ov-builtin.cc, ov-builtin.h, |
|
232 ov-cell.cc, ov-cell.h, ov-ch-mat.cc, ov-ch-mat.h, ov-colon.cc, |
|
233 ov-complex.cc, ov-complex.h, ov-cs-list.cc ov-cs-list.h, |
|
234 ov-cx-mat.cc, ov-cx-mat.h, ov-dld-fcn.cc, ov-dld-fcn.h, ov-fcn.cc, |
|
235 ov-fcn.h, ov-file.cc, ov-file.h, ov-list.cc, ov-list.h, |
|
236 ov-mapper.cc, ov-mapper.h, ov-range.cc, ov-range.h, ov-re-mat.cc, |
|
237 ov-re-mat.h, ov-re-nd-array.cc, ov-re-nd-array.h, ov-scalar.cc, |
|
238 ov-scalar.h, ov-str-mat.cc, ov-str-mat.h, ov-struct.cc, |
|
239 ov-struct.h, ov-typeinfo.cc, ov-typeinfo.h, ov-usr-fcn.cc, |
|
240 ov-usr-fcn.h, ov-va-args.cc, ov.cc, ov.h, procstream.cc, |
|
241 procstream.h, pt-arg-list.cc, pt-arg-list.h, pt-assign.cc, |
|
242 pt-assign.h, pt-binop.cc, pt-binop.h, pt-bp.cc, pt-bp.h, |
|
243 pt-cell.cc, pt-cell.h, pt-check.cc, pt-check.h, pt-cmd.cc, |
|
244 pt-cmd.h, pt-colon.cc, pt-colon.h, pt-const.cc, pt-const.h, |
|
245 pt-decl.cc, pt-decl.h, pt-except.cc, pt-except.h, pt-exp.cc, |
|
246 pt-exp.h, pt-id.cc, pt-id.h, pt-idx.cc, pt-idx.h, pt-jump.cc, |
|
247 pt-jump.h, pt-loop.cc, pt-loop.h, pt-mat.cc, pt-mat.h, pt-misc.cc, |
|
248 pt-misc.h, pt-plot.cc, pt-plot.h, pt-pr-code.cc, pt-pr-code.h, |
|
249 pt-select.cc, pt-select.h, pt-stmt.cc, pt-stmt.h, pt-unop.cc, |
|
250 pt-unop.h, pt.cc, pt.h, symtab.cc, symtab.h, token.cc, token.h, |
|
251 unwind-prot.cc, unwind-prot.h: |
|
252 If __GNUG__, use pragma interface/implementation. Allow this to |
|
253 be turned off by defining NO_PRAGMA_INTERFACE_IMPLEMENTATION. |
|
254 |
4064
|
255 2002-09-26 Paul Kienzle <pkienzle@users.sf.net> |
|
256 |
4065
|
257 * mappers.cc (install_mapper_functions): Install erf, not xerf. |
|
258 Install erfc, not xerfc. |
|
259 |
4064
|
260 * pt-bp.cc (tree_breakpoint::visit_unwind_protect_command): |
|
261 Rename lst1 and lst2 to avoid dlgs.h conflict. |
|
262 |
|
263 * parse.y: Replace TEXT with STRING to avoid winnt.h conflict. |
|
264 * lex.l: Ditto. |
|
265 |
|
266 * sysdep.cc (raw_mode): Non-fatal warning if raw_mode is not |
|
267 supported. |
|
268 |
|
269 * sighandlers.cc: Don't define handlers for non-existent signals. |
|
270 |
|
271 * utils.cc: Don't include unneeded termio headers. |
|
272 |
4061
|
273 2002-09-19 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
274 |
|
275 * BaseSLList.cc, BaseSLList.h, Cell.cc, Cell.h, DLList.cc, |
|
276 DLList.h, Map.cc, Map.h, OPERATORS/op-b-b.cc, |
|
277 OPERATORS/op-bm-b.cc, OPERATORS/op-bm-bm.cc, OPERATORS/op-cell.cc, |
|
278 OPERATORS/op-chm.cc, OPERATORS/op-cm-cm.cc, OPERATORS/op-cm-cs.cc, |
|
279 OPERATORS/op-cm-m.cc, OPERATORS/op-cm-s.cc, OPERATORS/op-cs-cm.cc, |
|
280 OPERATORS/op-cs-cs.cc, OPERATORS/op-cs-m.cc, OPERATORS/op-cs-s.cc, |
|
281 OPERATORS/op-fil-b.cc, OPERATORS/op-fil-bm.cc, |
|
282 OPERATORS/op-fil-cm.cc, OPERATORS/op-fil-cs.cc, |
|
283 OPERATORS/op-fil-lis.cc, OPERATORS/op-fil-m.cc, |
|
284 OPERATORS/op-fil-rec.cc, OPERATORS/op-fil-s.cc, |
|
285 OPERATORS/op-fil-str.cc, OPERATORS/op-list.cc, |
|
286 OPERATORS/op-m-cm.cc, OPERATORS/op-m-cs.cc, OPERATORS/op-m-m.cc, |
|
287 OPERATORS/op-m-s.cc, OPERATORS/op-range.cc, OPERATORS/op-s-cm.cc, |
|
288 OPERATORS/op-s-cs.cc, OPERATORS/op-s-m.cc, OPERATORS/op-s-s.cc, |
|
289 OPERATORS/op-str-str.cc, SLList.cc, SLList.h, SLStack.cc, |
|
290 SLStack.h, Stack.cc, Stack.h, c-file-ptr-stream.cc, |
|
291 c-file-ptr-stream.h, comment-list.cc, comment-list.h, oct-map.cc, |
|
292 oct-map.h, oct-obj.cc, oct-obj.h, ov-base-mat.cc, ov-base-mat.h, |
|
293 ov-base-nd-array.cc, ov-base-nd-array.h, ov-base-scalar.cc, |
|
294 ov-base-scalar.h, ov-base.cc, ov-base.h, ov-bool-mat.cc, |
|
295 ov-bool-mat.h, ov-bool.cc, ov-bool.h, ov-builtin.cc, ov-builtin.h, |
|
296 ov-cell.cc, ov-cell.h, ov-ch-mat.cc, ov-ch-mat.h, ov-colon.cc, |
|
297 ov-complex.cc, ov-complex.h, ov-cs-list.cc ov-cs-list.h, |
|
298 ov-cx-mat.cc, ov-cx-mat.h, ov-dld-fcn.cc, ov-dld-fcn.h, ov-fcn.cc, |
|
299 ov-fcn.h, ov-file.cc, ov-file.h, ov-list.cc, ov-list.h, |
|
300 ov-mapper.cc, ov-mapper.h, ov-range.cc, ov-range.h, ov-re-mat.cc, |
|
301 ov-re-mat.h, ov-re-nd-array.cc, ov-re-nd-array.h, ov-scalar.cc, |
|
302 ov-scalar.h, ov-str-mat.cc, ov-str-mat.h, ov-struct.cc, |
|
303 ov-struct.h, ov-typeinfo.cc, ov-typeinfo.h, ov-usr-fcn.cc, |
|
304 ov-usr-fcn.h, ov-va-args.cc, ov.cc, ov.h, procstream.cc, |
|
305 procstream.h, pt-arg-list.cc, pt-arg-list.h, pt-assign.cc, |
|
306 pt-assign.h, pt-binop.cc, pt-binop.h, pt-bp.cc, pt-bp.h, |
|
307 pt-cell.cc, pt-cell.h, pt-check.cc, pt-check.h, pt-cmd.cc, |
|
308 pt-cmd.h, pt-colon.cc, pt-colon.h, pt-const.cc, pt-const.h, |
|
309 pt-decl.cc, pt-decl.h, pt-except.cc, pt-except.h, pt-exp.cc, |
|
310 pt-exp.h, pt-id.cc, pt-id.h, pt-idx.cc, pt-idx.h, pt-jump.cc, |
|
311 pt-jump.h, pt-loop.cc, pt-loop.h, pt-mat.cc, pt-mat.h, pt-misc.cc, |
|
312 pt-misc.h, pt-plot.cc, pt-plot.h, pt-pr-code.cc, pt-pr-code.h, |
|
313 pt-select.cc, pt-select.h, pt-stmt.cc, pt-stmt.h, pt-unop.cc, |
|
314 pt-unop.h, pt.cc, pt.h, symtab.cc, symtab.h, token.cc, token.h, |
|
315 unwind-prot.cc, unwind-prot.h: |
|
316 Use USE_PRAGMA_INTERFACE_IMPLEMENTATION instead of __GNUG__ to |
|
317 decide whether to use the interface/implementation pragmas. |
|
318 |
4059
|
319 2002-09-18 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
320 |
4060
|
321 * load-save.cc: Undo previous change. |
|
322 |
4059
|
323 * ov-struct.cc (octave_struct::subsasgn): Ensure that indexed |
|
324 object is not shared before calling subsasgn. |
|
325 |
4057
|
326 2002-09-04 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
327 |
|
328 * load-save.cc: Use % instead of # as comment character in ascii |
|
329 data files. |
|
330 |
4055
|
331 2002-08-17 Mumit Khan <khan@nanotech.wisc.edu> |
|
332 |
|
333 * c-file-ptr-stream.h (c_file_ptr_buf::c_file_ptr_buf): Add Intel |
|
334 C++ runtime support. |
|
335 |
|
336 * Cell.h, gripes.cc, ov-base-scalar.cc, ov-colon.cc, ov-fcn.cc, |
|
337 ov-file.cc, ov-mapper.h, ov-va-args.cc, token.cc, xpow.cc, |
|
338 OPERATORS/op-b-b.cc, OPERATORS/op-bm-b.cc, OPERATORS/op-bm-bm.cc, |
|
339 OPERATORS/op-cell.cc, OPERATORS/op-chm.cc, OPERATORS/op-cm-cm.cc, |
|
340 OPERATORS/op-cm-cs.cc, OPERATORS/op-cm-m.cc, OPERATORS/op-cm-s.cc, |
|
341 OPERATORS/op-cs-cm.cc, OPERATORS/op-cs-cs.cc, OPERATORS/op-cs-m.cc, |
|
342 OPERATORS/op-cs-s.cc, OPERATORS/op-fil-b.cc, OPERATORS/op-fil-bm.cc, |
|
343 OPERATORS/op-fil-cm.cc, OPERATORS/op-fil-cs.cc, |
|
344 OPERATORS/op-fil-lis.cc, OPERATORS/op-fil-m.cc, |
|
345 OPERATORS/op-fil-rec.cc, OPERATORS/op-fil-s.cc, |
|
346 OPERATORS/op-fil-str.cc, OPERATORS/op-list.cc, OPERATORS/op-m-cm.cc, |
|
347 OPERATORS/op-m-cs.cc, OPERATORS/op-m-m.cc, OPERATORS/op-m-s.cc, |
|
348 OPERATORS/op-range.cc, OPERATORS/op-s-cm.cc, OPERATORS/op-s-cs.cc, |
|
349 OPERATORS/op-s-m.cc, OPERATORS/op-s-s.cc, OPERATORS/op-str-str.cc, |
|
350 TEMPLATE-INST/Array-sym.cc, TEMPLATE-INST/Array-tc.cc, |
|
351 TEMPLATE-INST/Map-tc.cc, TEMPLATE-INST/SLList-expr.cc, |
|
352 TEMPLATE-INST/SLList-tc.cc, TEMPLATE-INST/SLList-tm.cc, |
|
353 TEMPLATE-INST/SLStack-sym.cc: Make the implementation of |
|
354 octave_value_list visibile for template instantiation. |
|
355 |
4051
|
356 2002-08-17 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
357 |
4052
|
358 * DLD-FUNCTIONS/dasrt.cc: Include <iostream> not <iostream.h>. |
|
359 |
4051
|
360 * pager.h: Include lo-sstream.h and use macros instead of using |
|
361 strstreambuf class directly. |
|
362 |
|
363 * load-save.cc (read_mat_ascii_data): Handle istrstream here too. |
|
364 |
|
365 * procstream.h (procstream::procstream): Also accept std::string arg. |
|
366 (iprocstream::iprocstream, iprocstream::open): Likewise. |
|
367 (oprocstream::oprocstream, oprocstream::open): Likewise. |
|
368 (procstreambase::procstreambase, procstreambase::open): Likewise. |
|
369 |
|
370 * pt-plot.cc (gnuplot_terminal_type): Now std::string&, not char*. |
|
371 (send_to_plot_stream): Likewise, for cmd arg. |
|
372 |
|
373 * pt-plot.h, pt-plot.cc: Include lo-sstream.h and use macros |
|
374 instead of using strstream classes directly. |
|
375 * oct-strstrm.h: Likewise. |
|
376 * error.h, error.cc: Likewise. |
|
377 * oct-stream.h, oct-stream.cc: Likewise. |
|
378 * lex.l: Likewise. |
|
379 * toplev.cc: Likewise. |
|
380 * utils.cc: Likewise. |
|
381 * pt.cc: Likewise. |
|
382 * pr-output.cc: Likewise. |
|
383 * ov-list.cc: Likewise. |
|
384 * ov-cs-list.cc: Likewise. |
|
385 * ov-cell.cc: Likewise. |
|
386 * load-save.cc: Likewise. |
|
387 * help.cc: Likewise. |
|
388 * dirfns.cc: Likewise. |
|
389 |
4048
|
390 2002-08-15 Paul Kienzle <pkienzle@jazz.ncnr.nist.gov> |
|
391 |
|
392 * input.cc (octave_read): Do a better job of buffering. |
|
393 |
4044
|
394 2002-08-15 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
395 |
4045
|
396 * Makefile.in (DLD_DEF_FILES): New macro. |
|
397 (DEF_5): Delete. |
|
398 (DEF_4): Now only includes $(SOURCES). |
|
399 (DEF_FILES): Append $(DLD_DEF_FILES) here. |
|
400 (stamp-oct-links): Pass $(DLD_DEF_FILES) to mk-oct-links instead |
|
401 of a list of source files. |
|
402 * mk-oct-links: Work on .df files instead of .cc files. |
|
403 |
4044
|
404 * parse.y (case_list): Allow it to be empty. |
|
405 |
|
406 * ov.cc, ov.h (octave_value::int_vector_value): New function. |
|
407 |
4038
|
408 2002-08-14 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
409 |
|
410 * Makefile.in (OCTAVE_LIBS): Only include $(LIBKPATHSEA) if not |
|
411 using shared libraries. |
|
412 |
|
413 * ov.cc (octave_value::octave_value (const octave_value_list&, bool)): |
|
414 Don't forget to assign rep. |
|
415 |
4036
|
416 2002-08-12 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
417 |
4037
|
418 * lex.l: Warn for various Matlab-incompatibilities. |
|
419 No longer accept <> for NOTEQ. |
|
420 (gripe_matlab_incompatible): New function. |
|
421 (maybe_gripe_matlab_incompatible_comment): Likewise. |
|
422 (gripe_matlab_incompatible_continuation): Likewise. |
|
423 (gripe_matlab_incompatible_operator): Likewise. |
|
424 (warn_matlab_incompatible): New function. |
|
425 (Vwarn_matlab_incompatible): New static variable. |
|
426 (symbols_of_lex): Add a DEFVAR for it. |
|
427 |
|
428 |
4036
|
429 * file-io.cc (fopen_mode_to_ios_mode): Default value is std::ios::in. |
|
430 Return std::ios::openmode instead of int. |
|
431 |
4035
|
432 2002-08-10 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
433 |
|
434 * DLD-FUNCTIONS/dasrt.cc (DASRT_ABORT1, DASRT_ABORT2): |
|
435 "##" pastes tokens, not strings. |
|
436 |
|
437 * DLD-FUNCTIONS/odessa.cc: Add std:: qualifiers as needed. |
|
438 |
4025
|
439 2002-08-09 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
440 |
4028
|
441 * variables.cc (Fisglobal): Rename from Fis_global. |
|
442 * file-io.cc (Fisstream): Rename from Fis_stream. |
|
443 * data.cc (Fisbool): Rename from Fis_bool. |
|
444 (Fiscomplex): Rename from Fis_complex. |
|
445 (Fislist): Rename from Fis_list. |
|
446 (Fismatrix): Rename from Fis_matrix. |
|
447 (Fisstruct): Rename from Fis_struct. |
|
448 |
4025
|
449 * parse.y (switch_case): Make list of command optional. |
|
450 |
|
451 2002-08-08 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
452 |
|
453 * pr-output.cc (pr_max_internal): Use octave_is_NaN_or_NA instead |
|
454 of xisnan. |
|
455 (pr_min_internal): Likewise. |
|
456 (output_max_field_width): Likewise. |
|
457 (output_precision): Likewise. |
|
458 (pr_any_float): Handle NA. |
|
459 * mappers.cc (Fisna, F_is_nan_or_na): New functions. |
|
460 * data.cc (symbols_of_data): New constant, NA. |
|
461 |
4023
|
462 2002-08-07 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
463 |
|
464 * pt-binop.h (tree_binary_expression::is_binary_expression): |
|
465 New function, return true. |
|
466 (tree_boolean_expression::is_boolean_expression): New function, |
|
467 return true. |
|
468 * pt-exp.h (tree_expression::is_binary_expression): New function. |
|
469 (tree_expression::is_boolean_expression): Likewise. |
|
470 * parse.y (EXPR_OR_OR): Now lower precedence than EXPR_AND_AND. |
|
471 (EXPR_OR): Now lower precedence than EXPR_AND. |
|
472 (make_boolean_op): Maybe warn about change in precedence. |
|
473 (make_binary_op): Likewise. |
|
474 (Vwarn_precedence_change): New static variable. |
|
475 (warn_precedence_change): New function. |
|
476 (Vwarn_precedence_change): New DEFVAR. |
|
477 |
4021
|
478 2002-08-05 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
479 |
|
480 * data.cc (ANY_ALL): Improve arg checks. |
|
481 |
4018
|
482 2002-08-04 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
483 |
|
484 * ov.h (octave_value::assign_op): New enum values, op_pow_eq and |
|
485 op_el_pow_eq. |
|
486 * ov.cc (octave_value::assign_op_as_string): Handle them here. |
|
487 (ocatave_value::op_eq_to_binary_op): And here. |
|
488 * parse.y (POW_EQ, EPOW_EQ): New tokens. |
|
489 (assign_expr): Handle them here too. |
|
490 (make_assign_op): And here. |
|
491 |
|
492 * lex.l: Recognize {POW}= and {EPOW}=. |
|
493 |
4015
|
494 2002-08-02 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
495 |
4017
|
496 * ov-base-scalar.h (octave_base_scalar::all): New int arg. |
|
497 (octave_base_scalar::any): Likewise. |
|
498 * ov-range.h (octave_range::all): Likewise. |
|
499 (octave_range::any): Likewise. |
|
500 |
4016
|
501 * Makefile.in (doc-files): Use mv, not move-if-change here. |
|
502 |
|
503 * variables.cc (symbol_exist): New function. |
|
504 (Fexist): Use it. Handle optional type arg. Make return codes |
|
505 more compatible with Matlab. |
|
506 |
4015
|
507 * data.cc (ANY_ALL): New macro. |
|
508 (Fany, Fall): Replace guts with ANY_ALL. |
|
509 |
4011
|
510 2002-08-01 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
511 |
4015
|
512 * data.cc (Fall, Fany): Handle optional DIM argument. |
|
513 |
|
514 * ov.h (octave_value::any): New arg, dim. |
|
515 (octave_value::all): Likewise. |
|
516 * ov-base.h (octave_base_value::any): Likewise. |
|
517 (octave_base_value::all): Likewise. |
|
518 * ov-base-mat.h (octave_base_matrix::any): Likewise. |
|
519 (octave_base_matrix::all): Likewise. |
|
520 |
4014
|
521 * Makefile.in: Use $@-t instead of $@.t. |
|
522 (doc-files): Use move-if-change when creating doc-files. |
|
523 |
|
524 * error.cc (warning): Don't print warning backtrace at top level. |
|
525 |
4011
|
526 * ov-cell.cc (octave_cell::print_raw): Print empty dimensions too. |
|
527 (octave_cell::print_name_tag): Don't print new line if cell is empty. |
|
528 |
|
529 * octave.cc (intern_argv): Don't install __argv__. |
|
530 |
|
531 * defun-int.h (UNDERSCORIFY): Delete. |
|
532 (DEFCONST_INTERNAL): Don't install double underscore versions of |
|
533 constants since they aren't really needed. |
|
534 (DEFCONSTX_INTERNAL): Likewise. |
|
535 |
4009
|
536 2002-07-31 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
537 |
|
538 * symtab.cc (symbol_table::clear (void)): Clear all records. |
|
539 (symbol_table::clear (const std::string&)): Delete second arg. |
|
540 Clear any symbol that matches, regardless of type. |
|
541 |
|
542 * symtab.h (symbol_table::variable_name_list): New function. |
|
543 (symbol_table::global_variable_name_list): Likewise. |
|
544 (symbol_table::user_function_name_list): Likewise. |
|
545 |
|
546 * symtab.h, symtab.cc (symbol_table::clear_variables): New function. |
|
547 (symbol_table::clear_functions): Likewise. |
|
548 (symbol_table::clear_globals): Likewise. |
|
549 (symbol_table::clear_variable): New function. |
|
550 (symbol_table::clear_function): Likewise. |
|
551 (symbol_table::clear_global): Likewise. |
|
552 (symbol_table::clear_variable_pattern): New function. |
|
553 (symbol_table::clear_function_pattern): Likewise. |
|
554 (symbol_table::clear_global_pattern): Likewise. |
|
555 |
|
556 * variables.cc (name_matches_any_pattern): Rename from |
|
557 var_matches_any_pattern. |
|
558 (is_local_variable): New static inline function. |
|
559 (maybe_warn_exclusive): Likewise. |
|
560 (do_clear_all): Likewise. |
|
561 (do_clear_functions): Likewise. |
|
562 (do_clear_globals): Likewise. |
|
563 (do_clear_variables): Likewise. |
|
564 (do_clear_function): Likewise. |
|
565 (do_clear_global): Likewise. |
|
566 (do_clear_variable): Likewise. |
|
567 (do_clear_symbol): Likewise. |
|
568 (do_clear_function_pattern): Likewise. |
|
569 (do_clear_global_pattern): Likewise. |
|
570 (do_clear_variable_pattern): Likewise. |
|
571 (do_clear_symbol_pattern): Likewise. |
|
572 (do_clear_functions): Likewise. |
|
573 (do_clear_functions): Likewise. |
|
574 (do_clear_globals): Likewise. |
|
575 (do_clear_variables): Likewise. |
|
576 (do_clear_symbols): Likewise. |
|
577 (do_matlab_compatible_clear): Likewise. |
|
578 (CLEAR_OPTION_ERROR): New macro. |
|
579 (Fclear): Rewrite for Matlab compatibility and to cope with new |
|
580 symbol table semantics. |
|
581 |
|
582 2002-07-30 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
583 |
|
584 * symtab.cc (symbol_table::clear): Simply clear everything. |
|
585 (symbol_table::clear_functions, symbol_table::clear_globals, |
|
586 symbol_table::clear_all): New functions. |
|
587 |
|
588 * symtab.h (symbol_record::symbol_def::next_elem): Delete. |
|
589 (symbol_record::symbol_def::symbol_def): Delete intializer. |
|
590 |
|
591 * symtab.h, symtab.cc (symbol_record::push_def): Delete. |
|
592 (symbol_record::remove_top_def): Delete. |
|
593 (symbol_record::replace_all_defs): Delete. |
|
594 (symbol_record::hides_fcn): Delete. |
|
595 (symbol_record::hides_builtin): Delete. |
|
596 |
|
597 * symtab.h (symbol_table::~symbol_table): Call clear before |
|
598 deleting the table. |
|
599 |
|
600 * variables.cc (initialize_symbol_tables): Create fbi_sym_tab too. |
|
601 (Fexist): Look in fbi_sym_tab, not global_sym_tab. |
|
602 |
|
603 * parse.y (function_symtab): Rename from global_symtab. |
|
604 Set curr_sym_tab to fbi_sym_tab, not global_sym_tab. |
|
605 Change all uses of global_symtab to be function_symtab instead. |
|
606 (frob_function): Rename and look for function name in fbi_sym_tab, |
|
607 not global_sym_tab. |
|
608 (parse_fcn_file): Clear function name from fbi_sym_tab, not |
|
609 global_sym_tab. |
|
610 |
|
611 * load-save.cc (save_vars): Look for built-in vars in fbi_sym_tab. |
|
612 * symtab.cc (symbol_record::link_to_builtin_variable): Likewise. |
|
613 * variables.cc (is_builtin_variable): Likewise. |
|
614 (bind_ans): Likewise. |
|
615 (bind_builtin_constant): Likewise. |
|
616 (bind_builtin_variable): Likewise. |
|
617 (builtin_string_variable): Likewise. |
|
618 (builtin_real_scalar_variable): Likewise. |
|
619 (builtin_any_variable): Likewise. |
|
620 (is_text_function_name): Likewise, for functions. |
|
621 (force_link_to_function): Likewise. |
|
622 (is_builtin_function_name): Likewise. |
|
623 (is_mapper_function_name): Likewise. |
|
624 (is_valid_function): Likewise. |
|
625 (Fclear): Likewise. |
|
626 (F__print_symtab_info__): Likewise. |
|
627 * defun.cc (print_usage): Likewise. |
|
628 (install_builtin_mapper): Likewise. |
|
629 (install_builtin_function): Likewise. |
|
630 (install_dld_function): Likewise. |
|
631 (Falias): Likewise. |
|
632 * dynamic-ld.cc (clear_function): Likewise. |
|
633 * variables.cc (do_who): Likewise, for built-ins and functions. |
|
634 (link_to_builtin_or_function): Likewise. |
|
635 * help.cc (LIST_SYMBOLS): Likewise. |
|
636 (make_name_list): Handle fbi_sym_tab too. |
|
637 |
|
638 * variables.cc (fbi_sym_tab): New symbol table. |
|
639 * variables.h (fbi_sym_tab): Provide decl. |
|
640 |
|
641 2002-07-29 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
642 |
|
643 * symtab.h (symbol_record::alias): Delete unused arg force. |
|
644 Change all callers. |
|
645 |
|
646 * variables.cc (link_to_global_variable): Give local variable |
|
647 global value. |
|
648 |
|
649 * pt-id.cc (tree_identifier::link_to_global): Warn about global |
|
650 variables that have been defined before being declared global. |
|
651 for a global variable to be used before it is declared global. |
|
652 * pt-decl.cc (tree_global_command::do_init): Handle possible error |
|
653 from tree_identifier::link_to_global. |
|
654 |
4005
|
655 2002-07-25 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
656 |
|
657 * ov.cc (silent_functions, Vsilent_functions): Move here. |
|
658 (octave_value::print_with_name): Don't print anything if we are |
|
659 evaluating a function and Vsilent_functions is true. |
|
660 |
|
661 * pt-stmt.cc: From here. |
|
662 (symbols_of_pt_stmt): Delete. |
|
663 (tree_statement_list::eval): Don't bother with Vsilent_functions here. |
|
664 |
3998
|
665 2002-07-24 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
666 |
|
667 * Makefile.in (OPT_HANDLERS): New targets. |
4002
|
668 (doc-files): New target. |
|
669 (gendoc.cc): Depend on doc-files, not $(DOC_FILES). |
3998
|
670 |
|
671 * DLD-FUNCTIONS/daspk.cc, DLD-FUNCTIONS/dasrt.cc, |
|
672 DLD-FUNCTIONS/dassl.cc, DLD-FUNCTIONS/fsolve.cc, |
|
673 DLD-FUNCTIONS/lsode.cc, DLD-FUNCTIONS/odessa.cc |
|
674 DLD-FUNCTIONS/quad.cc: Replace option handling code with include |
|
675 directive. |
|
676 |
|
677 2002-07-22 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
678 |
|
679 * pt-loop.cc (tree_simple_for_command::eval): Once we know the RHS |
|
680 is a matrix type check for real_type, not real_matrix. |
|
681 |
|
682 2002-07-19 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
683 |
|
684 * DLD-FUNCTIONS/quad.cc (quad): Cope with changes to Quad constructors. |
|
685 |
3997
|
686 2002-07-17 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
687 |
|
688 * DLD-FUNCTIONS/daspk.cc (Fdaspk): Also return istate and error |
|
689 message. Only generate error if user is not at least requesting |
|
690 the istate output. |
|
691 * DLD-FUNCTIONS/dasrt.cc (Fdasrt): Likewise. |
|
692 * DLD-FUNCTIONS/dassl.cc (Fdassl): Likewise. |
|
693 * DLD-FUNCTIONS/lsode.cc (Fodessa): Likewise. |
|
694 |
3990
|
695 2002-07-16 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
696 |
3992
|
697 * DLD-FUNCTIONS/dasrt.cc (Fdasrt): No need to find ng here. |
3993
|
698 (dasrt_user_j): New function. |
|
699 (Fdasrt): Handle Jacobian function. |
3992
|
700 |
3991
|
701 * DLD-FUNCTIONS/dassl.cc (dassl_user_jacobian): New function. |
|
702 (Fdassl): Handle Jacobian function. |
|
703 |
3990
|
704 * DLD-FUNCTIONS/dasrt.cc: New file. |
|
705 * Makefile.in (DLD_XSRC): Add it to the list. |
|
706 |
3988
|
707 2002-07-12 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
708 |
|
709 * lex.l (@): Handle new token. |
|
710 * parse.y (constant): Accept function handle syntax. |
|
711 (make_constant): Create function handles here. |
|
712 |
3986
|
713 2002-07-11 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
714 |
|
715 * defun.cc (check_version): Improve error message. |
|
716 * error.cc (warning): Only print backtrace once per warning series. |
|
717 Print backtrace before warning messages. |
|
718 |
3984
|
719 2002-07-10 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
720 |
3985
|
721 * lex.l (maybe_unput_comma): Also handle '{' as an indexing op. |
|
722 |
3984
|
723 * DLD-FUNCTIONS/odessa.cc: New file. |
|
724 * Makefile.in (DLD_XSRC): Add it to the list. |
|
725 |
3977
|
726 2002-07-05 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
727 |
|
728 * pt-assign.cc (tree_multi_assignment::rvalue): Call |
|
729 lhs->nargout_count, not lhs->length. |
|
730 |
|
731 * pt-arg-list.cc (tree_argument_list::convert_to_const_vector): |
|
732 Handle cs-list objects here. |
|
733 (tree_argument_list::nargout_count): New function. |
|
734 * pt-arg-list.h: Provide decl. |
|
735 |
|
736 * ov-cs-list.h, ov-cs-list.cc: New files. |
|
737 * Makefile.in: Add them to the appropriate lists. |
|
738 |
|
739 * ov.cc: Include ov-cs-list.h. |
|
740 New arg, is_cs_list for constructor taking octave_value_list arg. |
|
741 (install_types): Register ov_cs_list. |
|
742 * ov.h (octave_value::is_cs_list): New function. |
|
743 * ov-base.h (octave_base_value::is_cs_list): Likewise. |
|
744 * ov-cell.cc (octave_cell::subsref): Return cs-list for "{" indexing. |
|
745 |
3974
|
746 2002-07-04 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
747 |
3976
|
748 * pt-mat.cc (Vempty_list_elements_ok): Default value is now 1. |
|
749 * octave.cc (maximum_braindamage): No longer need to set value here. |
|
750 |
3975
|
751 * ov-usr-fcn.cc (Fva_arg, Fva_start, Fvr_val): Warn that these |
|
752 functions are deprecated. |
3974
|
753 * lex.l (EL): Warn that `...' is deprecated. |
|
754 * ov-usr-fcn.cc (octave_user_function::varargout_to_vr_val, |
|
755 octave_user_function::has_varargout): New functions. |
|
756 (Fvr_val): Ensure varargout is not defined. |
|
757 (octave_user_function::do_multi_index_op): Copy values from |
|
758 varargout here. |
|
759 |
3972
|
760 2002-07-03 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
761 |
3974
|
762 * ov-usr-fcn.h (octave_user_function::varargin_sr): New data member. |
|
763 * ov-usr-fcn.cc (octave_user_function::octave_user_function): |
|
764 Initialize it. |
|
765 (bind_automatic_vars): Handle varargin. Change all callers. |
|
766 |
|
767 * octave.gperf: Handle varargin and varargout as keywords. |
|
768 * lex.l (is_keyword): Likewise. |
|
769 (IDENT): Move all actions into handle_identifier. |
|
770 (handle_identifier): Now takes no args. |
|
771 |
3973
|
772 * lex.l (EL): Return VARARGIN or VARARGOUT, not ELLIPSIS. |
|
773 * parse.y (param_list): Use VARARGIN instead of ELLIPSIS. |
|
774 (return_list): Use VARARGOUT instead of ELLIPSIS. |
|
775 |
3972
|
776 * data.cc (make_diag const octave_value&, const octave_value&): |
|
777 Allow first arg to be 1x0 or 0x1. |
|
778 |
3971
|
779 2002-07-02 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
780 |
|
781 * defaults.cc (loadpath): Comment out previous change. |
|
782 |
|
783 * DLD-FUNCTIONS/fsolve.cc (Ffsolve): Return message too. Only |
|
784 generate error if user is not at least requesting the info output. |
|
785 |
|
786 * DLD-FUNCTIONS/lsode.cc (Flsode): Fix typos in setting return value. |
|
787 |
3968
|
788 2002-07-01 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
789 |
3969
|
790 * oct-stream.cc (printf_value_cache::double_value): If the current |
|
791 element is empty and there are no more elements in the value list, |
|
792 set curr_state to conversion_error. |
|
793 |
3968
|
794 * input.cc (initialize_command_input): Include (, ), {, and } as |
|
795 word break characters. |
|
796 |
|
797 * variables.cc (looks_like_struct): Don't evaluate text if it is a |
3969
|
798 function. From Ben Sapp <bsapp@lanl.gov>. |
3968
|
799 |
|
800 * symtab.h (symbol_record::is_function): Also return true if |
|
801 symbol is a text function or a mapper function. |
|
802 |
3965
|
803 2002-06-28 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
804 |
3967
|
805 * defaults.cc (loadpath): Warn if loadpath doesn't contain |
|
806 leading, trailing, or doubled colon. |
|
807 |
3965
|
808 * pt-decl.cc (tree_static_command::eval, tree_global_command::eval): |
|
809 Call error for any non-zero value of error_state. |
|
810 * pt-select.cc (tree_if_command::eval): Likewise. |
|
811 * pt-loop.cc (tree_while_command::eval_error): Don't check error_state. |
|
812 (tree_do_until_command::eval_error): Likewise. |
|
813 (tree_simple_for_command::eval_error): Likewise. |
|
814 (tree_complex_for_command::eval_error): Likewise. |
|
815 * pt-assign.cc (tree_multi_assignment::eval_error): Likewise. |
|
816 (tree_simple_assignment::eval_error): Likewise. |
|
817 * pt-idx.cc (tree_index_expression::eval_error): Likewise. |
|
818 * pt-colon.cc (tree_colon_expression::eval_error): Likewise. |
|
819 (tree_colon_expression::rvalue): Delete rendundant error_state check. |
|
820 |
3962
|
821 2002-06-26 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
822 |
|
823 * ov-mapper.cc (MAPPER_LOOP, MAPPER_LOOP_1, MAPPER_LOOP_2): New macros. |
|
824 (octave_mapper::apply): Use them to inline the mapper loops. |
|
825 |
|
826 * pt-unop.cc (tree_prefix_expression::rvalue): Ensure that the |
|
827 operand is defined for op_incr and op_decr. |
|
828 (tree_postfix_expression::rvalue): Likewise. |
|
829 From Ben Sapp <bsapp@lanl.gov>. |
|
830 |
|
831 2002-06-25 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
832 |
|
833 * ov-mapper.cc (octave_mapper::apply): Exit loops on error. |
|
834 |
|
835 2002-06-03 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
836 |
|
837 * ov-struct.cc (octave_struct::print_raw): Print field names with |
|
838 data types if Vstruct_levels_to_print is 0. |
|
839 (octave_struct::print_name_tag): Don't emit newline if |
|
840 Vstruct_levels_to_print is negative. |
|
841 * ov.cc (struct_levels_to_print): Allow negative values too. |
|
842 |
3956
|
843 2002-05-24 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
844 |
3959
|
845 * DLD-FUNCTIONS/lsode.cc (Flsode): Also return istate and error |
|
846 message. Only generate error if user is not at least requesting |
|
847 the istate output. |
|
848 |
3956
|
849 * load-save.cc (hdf5_import_multidim, hdf5_check_attr, |
|
850 hdf5_callback_data, hdf5_read_next_data, read_hdf5_data, |
|
851 add_hdf5_data): Use 0, not NULL in calls to HDF routines. |
|
852 |
|
853 * oct-procbuf.cc (octave_procbuf::open): Use NULL, not 0 as last |
|
854 arg in call to execl.xo |
|
855 |
|
856 * debug.cc (get_user_function): Initialise dbg_fcn to 0, not NULL. |
|
857 |
3952
|
858 2002-05-23 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
859 |
|
860 * DLD-FUNCTIONS/lsode.cc (LSODE_options::da_set_opt_mf, |
|
861 LSODE_options::da_get_opt_mf): New typedefs. |
|
862 (LSODE_OPTIONS::da_set_fcn, LSODE_OPTIONS::da_get_fcn): New fields. |
|
863 (lsode_option_table): Fill them in. |
|
864 (set_lsode_option (const Array<double>&)): New function. |
|
865 (print_lsode_option_list): Handle vector options. |
|
866 (show_lsode_option_list): Likewise. |
|
867 (Flsode_options): Likewise. |
|
868 |
3955
|
869 * DLD-FUNCTIONS/lsode.cc (LSODE_options::s_set_opt_mf, |
|
870 LSODE_options::s_get_opt_mf): New typedefs. |
|
871 (LSODE_OPTIONS::s_set_fcn, LSODE_OPTIONS::s_get_fcn): New fields. |
|
872 (lsode_option_table): Fill them in. |
|
873 (set_lsode_option (const std::string&)): New function. |
|
874 (print_lsode_option_list): Handle string options. |
|
875 (show_lsode_option_list): Likewise. |
|
876 (Flsode_options): Likewise. |
|
877 |
3948
|
878 2002-05-22 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
879 |
3951
|
880 * c-file-ptr-stream.h (c_file_ptr_buf::fclose): New function. |
|
881 (c_file_ptr_buf::c_file_ptr_buf): Use it as default argument |
|
882 instead of extern "C" fclose function. |
|
883 (i_c_file_ptr_stream::i_c_file_ptr_stream): Likewise. |
|
884 (o_c_file_ptr_stream::o_c_file_ptr_stream): Likewise. |
|
885 * oct-stdstrm.h (octave_istdiostream::octave_istdiostream): Likewise. |
|
886 (octave_istdiostream::create): Likewise. |
|
887 * oct-stdstrm.h (octave_ostdiostream::octave_ostdiostream): Likewise. |
|
888 (octave_ostdiostream::create): Likewise. |
|
889 |
|
890 * oct-prcstrm.cc (cxx_pclose): New static function. |
|
891 (octave_iprocstream::octave_iprocstream): Pass it to |
|
892 octave_istdiostream constructor instead of extern "C" pclose function. |
|
893 (octave_oprocstream::octave_oprocstream): Pass it to |
|
894 octave_ostdiostream constructor instead of extern "C" pclose function. |
|
895 |
3948
|
896 * debug.cc (Fdbtype): Use C++ strings, not C strings. |
|
897 |
3946
|
898 2002-05-22 Mumit Khan <khan@nanotech.wisc.edu> |
|
899 |
|
900 * debug.cc: Include cstdlib instead of stdlib.h. Include cstring. |
|
901 (dbtype): Use strchr instead of index. |
|
902 * TEMPLATE-INST/Array-tc.cc (Array<octave_value>::resize_fill_value): |
|
903 Fix template specialization syntax. |
|
904 |
3944
|
905 2002-05-17 Mumit Khan <khan@nanotech.wisc.edu> |
|
906 |
|
907 * c-file-ptr-stream.h (OCTAVE_STD_FILEBUF): New macro to handle |
|
908 various forms of extensions to std::filebuf. |
|
909 (c_file_ptr_buf::c_file_ptr_buf): Use. |
|
910 * pt-idx.cc (tree_index_expression::tree_index_expression): Remove |
|
911 default arguments are from definition. |
|
912 * symtab.cc (SYMBOL_DEF::print_info): Add std::. |
|
913 (symbol_record::print_info): Likewise. |
|
914 (symbol_table::print_info): Likewise. |
|
915 |
3936
|
916 2002-05-16 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
917 |
3943
|
918 * oct-map.cc (Octave_map::assign): Resize RHS if it is shorter |
|
919 than existing struct array. |
|
920 |
3940
|
921 * ov-cell.cc (octave_cell::subsasgn): If an error has occurred, |
|
922 skip final assignment step. |
|
923 * ov-list.cc (octave_list::subsasgn): Likewise. |
|
924 * oct-lvalue.cc (octave_lvalue::assign): Add parens to clarify intent. |
|
925 (octave_lvalue::do_unary_op): Likewise. |
|
926 |
3939
|
927 * parse.y (function_end): Also accept end of input as end of |
|
928 function if input is coming from an eval string. |
|
929 |
3936
|
930 * pr-output.cc (pr_any_float): Don't convert -0 to 0. |
|
931 |
3934
|
932 2002-05-15 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
933 |
3935
|
934 * input.cc (generate_completion): If it looks like we are |
|
935 completing a struct, set completion append char to '\0'. |
|
936 |
|
937 * variables.cc (generate_struct_completions): Temporarily set |
|
938 warnings off here. |
|
939 |
3934
|
940 * error.cc (warning): Don't do anything if Vdebug_option == "off". |
|
941 Only print backtrace if Vdebug_option == "backtrace". |
|
942 (handle_message): Now returns a string containing the text of the |
|
943 formatted message. Change all callers. |
|
944 (Fwarning): Now a text-style function. Handle Matlab-compatible |
|
945 warning options. |
3935
|
946 (Flasterr, Flastwarn, set_warning_option): New functions. |
|
947 (Vlast_error_message, Vlast_warning_message, Vwarning_frequency, |
|
948 Vwarning_option): New static variables. |
3934
|
949 (vwarning): Set Vlast_warning_message here too. |
3935
|
950 (verror): Set Vlast_error_message here too. |
3934
|
951 |
3933
|
952 2002-05-14 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
953 |
|
954 * ov.h (octave_value::get_count): Now const. |
|
955 |
|
956 * ov.h, ov.cc (octave_value::do_non_const_unary_op, |
|
957 octave_value::assign): Idx is now a list of octave_value_list |
|
958 objects. |
|
959 |
|
960 * ov-base.cc, ov-base.h (octave_base_value::do_struct_elt_index_op, |
|
961 octave_base_value::struct_elt_ref): Delete. |
|
962 * ov-struct.cc, ov-struct.h (octave_sruct::do_struct_elt_index_op, |
|
963 octave_struct::struct_elt_ref): Delete. |
|
964 * ov.cc, ov.h (octave_value::do_struct_elt_index_op, |
|
965 octave_value::struct_elt_ref, octave_value::assign_struct_elt, |
|
966 octave_value::convert_and_assign, octave_value::try_assignment, |
|
967 octave_value::try_assignment_with_conversion, |
|
968 octave_value::simple_assign): Delete. |
|
969 |
|
970 * parse.y (make_index_expression): Type is now a single |
|
971 character. Change all callers. If expr is already an index |
|
972 expression, append index to it. |
|
973 (make_indirect_ref): Likewise. |
|
974 |
|
975 * pt-pr-code.cc (octave_print_internal (std::ostream&, const |
|
976 Cell&, bool, int)): Now just a dummy function, panic if called. |
|
977 |
|
978 * pt-idx.cc (tree_index_expression::make_arg_struct): New function. |
|
979 (tree_index_expression::type): Delete enum, rename from itype, now |
|
980 a string. |
|
981 (tree_index_expression::arg_nm): Now a list of string_vector objects. |
|
982 (tree_index_expression::idx): Now a list of tree_argument_list* |
|
983 objects. |
|
984 (tree_index_expression::is_index_expression): Always return true. |
|
985 (tree_index_expression::apend, make_value_list, make_subs_cell): |
|
986 New functions. |
|
987 |
|
988 * pt-pr-code.cc (visit_index_expression): Handle new definition of |
|
989 tree_index_expression object. |
|
990 * pt-check.cc (visit_index_expression): Likewise. |
|
991 * pt-bp.cc (visit_index_expression): Likewise. |
|
992 |
|
993 * ov-usr-fcn.h (octave_user_function::restore_args_passed): |
|
994 Clear args_passed even if nothing was saved. |
|
995 |
|
996 * ov-base.cc (octave_base_value::subsasgn, |
|
997 octave_base_value::map_keys, octave_base_value::print_info): |
|
998 New functions. |
|
999 |
|
1000 * ov.h, ov.cc (octave_value::map_keys, octave_value::print_info, |
|
1001 octave_value::subsref, octave_value::subsasgn, |
|
1002 octave_value::numeric_assign, octave_value::next_subsref): |
|
1003 New functions. |
|
1004 (octave_value::empty_conv): New static function. |
|
1005 (octave_value (octave_value *, int)): New arg, count. |
|
1006 |
|
1007 * ov-base-mat.cc (octave_base_matrix<MT>::subsref, |
|
1008 octave_base_matrix<MT>::subsasgn): New functions. |
|
1009 * ov-base-mat.h: Provide decls. |
|
1010 |
|
1011 * ov-builtin.cc (octave_builtin::subsref): New function. |
|
1012 * ov-builtin.h: Provide decl. |
|
1013 |
|
1014 * ov-range.cc (octave_range::subsref): New function. |
|
1015 * ov-range.h: Provide decl. |
|
1016 |
|
1017 * ov-cell.cc (octave_cell::subsref, octave_cell::subsasgn, |
|
1018 octave_cell::list_value, octave_cell::print, |
|
1019 octave_cell::print_raw, octave_cell::print_name_tag): New functions. |
|
1020 * ov-cell.h: Provide decls. |
|
1021 |
|
1022 * ov-struct.cc (octave_struct::dotref, octave_struct::subsref, |
|
1023 octave_struct::subsasgn, gripe_invalid_index, |
|
1024 gripe_invalid_index_for_assignment, grip_invalid_index_type, |
|
1025 gripe_failed_assignment): New functions. |
|
1026 (octave_struct::numeric_conv): New static function. |
|
1027 * ov-struct.h: Provide decls. |
|
1028 (octave_struct::is_constant): Return true. |
|
1029 (octave_struct::map_keys): New function. |
|
1030 |
|
1031 * ov-list.cc (octave_list::subsref, octave_list::subsasgn): |
|
1032 New functions. |
|
1033 * ov-list.h: Provide decls. |
|
1034 |
|
1035 * ov-usr-fcn.cc (octave_user_function::subsref, |
|
1036 octave_user_function::print_symtab_info): New functions. |
|
1037 * ov-usr-fcn.h: Provide decl. |
|
1038 |
|
1039 * ov-mapper.cc (octave_mapper::subsref): New function. |
|
1040 * ov-mapper.h: Provide decl. |
|
1041 |
|
1042 * ov-base.cc (octave_base_value::subsref, |
|
1043 octave_base_value::subsasgn): New functions. |
|
1044 * ov-base.h: Provide decls. |
|
1045 |
|
1046 * ov-base.cc (octave_base_value::do_index_op): New arg, resize_ok. |
|
1047 * ov-base-mat.cc (octave_base_matrix<MT>::do_index_op): Likewise. |
|
1048 * ov-base-nd-array.cc (octave_base_nd_array<AT>::do_index_op): Ditto. |
|
1049 * ov-bool-mat.cc (octave_bool::do_index_op): Ditto. |
|
1050 * ov-str-mat.cc (octave_char_matrix_str::do_index_op): Ditto. |
|
1051 * ov-range.cc (octave_range::do_index_op): Ditto. |
|
1052 * ov-list.cc (octave_list::do_index_op): Ditto. |
|
1053 * ov.cc (octave_value::do_index_op): Ditto. |
|
1054 |
|
1055 * ov-base-mat.cc (octave_base_matrix<MT>::print_info): New function. |
|
1056 |
|
1057 * ov-base-mat.h (octave_base_matrix<MT>::empty_clone): New function. |
|
1058 * ov-base-nd-array.h (octave_base_nd_array<AT>::empty_clone): Ditto. |
|
1059 * ov-base.h (octave_base_value::empty_clone): Ditto. |
|
1060 * ov-bool-mat.h (octave_bool::empty_clone): Ditto. |
|
1061 * ov-ch-mat.h (octave_char_matrix::empty_clone): Likewise. |
|
1062 * ov-colon.h (octave_magic_colon::empty_clone): Likewise. |
|
1063 * ov-complex.h (octave_complex::empty_clone): Likewise. |
|
1064 * ov-cx-mat.h (octave_complex_matrix::empty_clone): Likewise. |
|
1065 * ov-fcn.cc (octave_function::empty_clone): Likewise. |
|
1066 * ov-file.h (octave_file::empty_clone): Likewise. |
|
1067 * ov-range.h (octave_range::empty_clone): Likewise. |
|
1068 * ov-list.h (octave_list::empty_clone): Likewise. |
|
1069 * ov-re-mat.h (octave_matrix::empty_clone): Likewise. |
|
1070 * ov-re-nd-array.h (octave_double_nd_array::empty_clone): Likewise. |
|
1071 * ov-str-mat.h (octave_char_matrix_str::empty_clone): Likewise. |
|
1072 * ov-struct.h (octave_struct::empty_clone): Likewise. |
|
1073 * ov-va_args.h (octave_all_va_args::empty_clone): Likewise. |
|
1074 * ov.h (octave_value::empty_clone): Likewise. |
|
1075 |
|
1076 * ov-base-mat.h (octave_base_matrix<MT>::clone): Now const. |
|
1077 * ov-base-nd-array.h (octave_base_nd_array<AT>::clone): Likewise. |
|
1078 * ov-base.h (octave_base_value::clone): Likewise. |
|
1079 * ov-bool-mat.h (octave_bool::clone): Likewise. |
|
1080 * ov-ch-mat.h (octave_char_matrix::clone): Likewise. |
|
1081 * ov-colon.h (octave_magic_colon::clone): Likewise. |
|
1082 * ov-complex.h (octave_complex::clone): Likewise. |
|
1083 * ov-cx-mat.h (octave_complex_matrix::clone): Likewise. |
|
1084 * ov-fcn.h (octave_function::clone): Likewise. |
|
1085 * ov-file.h (octave_file::clone): Likewise. |
|
1086 * ov-range.h (octave_range::clone): Likewise. |
|
1087 * ov-list.h (octave_list::clone): Likewise. |
|
1088 * ov-re-mat.h (octave_matrix::clone): Likewise. |
|
1089 * ov-re-nd-array.h (octave_double_nd_array::clone): Likewise. |
|
1090 * ov-str-mat.h (octave_char_matrix_str::clone): Likewise. |
|
1091 * ov-struct.h (octave_struct::clone): Likewise. |
|
1092 * ov-va_args.h (octave_all_va_args::clone): Likewise. |
|
1093 * ov.h (octave_value::clone): Likewise. |
|
1094 |
|
1095 * oct-lvalue.cc (octave_lvalue::assign, octave_lvalue::set_index, |
|
1096 octave_lvalue::do_unary_op): Idx is now a list of indices. Simplify. |
|
1097 * oct-lvalue.h (octave_lvalue::value): Simplify. |
|
1098 (octave_lvalue::struct_elt_names): Delete data member. |
|
1099 (octave_lvalue::type): Now string |
|
1100 Update decls. |
|
1101 |
|
1102 * pt-exp.h (tree_expression::is_indirect_ref): |
|
1103 Delete virtual function. |
|
1104 |
|
1105 * pt-plot.cc (subplot::extract_plot_data): Use subsref, instead of |
|
1106 do_index_op. |
|
1107 |
|
1108 * pt-stmt.cc (tree_statement::eval): Don't try to avoid binding |
|
1109 ans for structure references. |
|
1110 |
|
1111 * symtab.cc (symbol_record::symbol_def::print_info): Rename from |
|
1112 symbol_record::symbol_def::dump_symbol_info. |
|
1113 (symbol_record::print_info): Rename from |
|
1114 symbol_record::dump_symbol_info. Now const.. |
|
1115 (symbol_record::print_symbol_info_line): Now const. |
|
1116 (symbol_table::print_info): Rename from print_stats. Accept |
|
1117 ostream arg. Now const. Print more info. |
|
1118 * symtab.h: Update decls. |
|
1119 |
|
1120 * toplev.cc (octave_config_info): Indexing a map now returns a |
|
1121 list, but we only want to return the first element. |
|
1122 |
|
1123 * variables.cc (generate_struct_completions, looks_like_struct): |
|
1124 Simplify using eval_string. |
|
1125 (F__print_symtab_info__): Rename from F__dump_symtab_info__. |
|
1126 Handle "top-level" and individual function names in addition to |
|
1127 "global". |
|
1128 (F__print_symbol_info__): Rename from F___dump_symbol_info__. |
|
1129 |
|
1130 * octave.cc (intern_argv): Built-in variable argv is now a cell array. |
|
1131 |
|
1132 * ov-complex.cc (valid_scalar_indices): Delete. |
|
1133 * ov-scalar.cc (valid_scalar_indices): Delete. |
|
1134 |
|
1135 * oct-obj.cc (octave_value_list::valid_scalar_indices): New function. |
|
1136 (octave_value_list::index): New arg, resize_ok. |
|
1137 * oct-obj.h: Provide decls. |
|
1138 |
|
1139 * oct-map.cc (Octave_map::keys): Rename from make_name_list. |
|
1140 Change all uses. |
|
1141 (Octave_map::assign, Octave_map::index): New functions. |
|
1142 * oct-map.h: Provide decls. |
|
1143 |
|
1144 * data.cc (Fstruct_contains): Use map_value instead of |
|
1145 do_struct_elt_index_op. |
|
1146 |
|
1147 * Cell.h (Cell (const Array2<octave_value>&, int, int)): |
|
1148 New constructor. |
|
1149 (Cell::resize_fill_value): New static function. |
|
1150 |
|
1151 * input.cc (initialize_command_input): Set basic and completer |
|
1152 word break characters. |
|
1153 |
3932
|
1154 2002-05-07 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1155 |
3933
|
1156 * ov.h (octave_value::subsref): New function. |
|
1157 * ov-base.cc (octave_base_value::subsref): Likewise. |
|
1158 |
3932
|
1159 * ov-struct.cc (octave_struct::print_raw): Print scalar struct |
|
1160 arrays more compactly. |
|
1161 |
|
1162 * DLD-FUNCTIONS/time.cc (extract_tm): Handle new struct array def. |
|
1163 |
|
1164 * oct-map.cc (Octave_map::array_len): New data member. |
|
1165 (Octave_map::operator[], Octave_map::contsnts): Return |
|
1166 octave_value_list, not Octave_value. Change callers as necessary. |
|
1167 (Octave_map::assign): New function. |
|
1168 (Octave_map::array_length): New fucntion. |
|
1169 * oct-obj.cc (octave_value_list::assign): New function. |
|
1170 |
3930
|
1171 2002-05-06 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1172 |
3931
|
1173 * TEMPLATE-INST/Map-oct-obj.cc: New file. |
|
1174 * Makefile.in (TI_XSRC): Add it to the list. |
|
1175 |
|
1176 * oct-map.h (Octave_map): Make CHMap<octave_value_list> a data |
|
1177 member instead of deriving from CHMap<octave_value>, in |
|
1178 preparation for structure arrays. |
|
1179 |
3930
|
1180 * pt-indir.h, pt-indir.cc: Delete. |
|
1181 |
|
1182 * pt-all.h: Don't include pt-indir.h. |
|
1183 |
|
1184 * Makefile.in (PT_SRC): Delete pt-indir.cc from the list. |
|
1185 (PT_INCLUDES): Delete pt-indir.h from the list. |
|
1186 |
|
1187 * pt-walk.h (tree_walker::visit_indirect_ref): Delete. |
|
1188 * pt-pr-code.h, pt-pr-code.cc (tree_print_code::visit_indirect_ref): |
|
1189 Likewise. |
|
1190 * pt-check.h, pt-check.cc (tree_checker::visit_indirect_ref): Likewise. |
|
1191 * pt-bp.h, pt-bp.cc (tree_breakpoint::visit_indirect_ref): Likewise. |
|
1192 |
|
1193 * pt-walk.h: Delete forward decl for tree_indirect_ref. |
|
1194 * variables.h: Likewise. |
|
1195 |
|
1196 * parse.y (make_indirect_ref): Return tree_index_expression, not |
|
1197 tree_indirect_ref. |
|
1198 |
|
1199 * pt-idx.h (tree_index_expression::struct_elt_name): New function. |
|
1200 |
|
1201 * pt-idx.cc (tree_index_expression::lvalue): Handle dot case too. |
|
1202 (tree_index_expression::name): Likewise. |
|
1203 (tree_index_expression rvalue (int)): Likewise. |
|
1204 (tree_index_expression::eval_error): Likewise. |
|
1205 * pt-pr-code.cc (visit_index_expression): Likewise. |
|
1206 * pt-bp.cc (tree_breakpoint::visit_index_expression): Likewise. |
|
1207 |
|
1208 * pt-idx.h (tree_index_expression::dot): New type enum element. |
|
1209 (tree_index_expression::expr_type): New function. |
|
1210 (tree_index_expression::tree_index_expression (tree_expression*, |
|
1211 const std::string&, int, int)): New constructor. |
|
1212 (tree_index_expression::is_index_expression): Return value is now |
|
1213 conditional on itype. |
|
1214 (tree_index_expression::is_indirect_ref): New function. |
|
1215 (tree_index_expression::lvalue_ok): Also return true if itype is dot. |
|
1216 |
3928
|
1217 2002-05-03 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1218 |
3929
|
1219 * parse.y (ABORT_PARSE): Maybe restore symbol table context too. |
|
1220 |
|
1221 * pt-idx.h (tree_index_expression::type): New enum. |
|
1222 (tree_index_expression::etype): New data member. |
|
1223 * pt-idx.h (tree_index_expression::tree_index_expression): |
|
1224 New arg, t, to set type of index. |
|
1225 * parse.y (make_index_expression): Likewise. |
|
1226 Change all callers. |
|
1227 |
3928
|
1228 * ov-base.cc (cell_conv): New conversion function. |
|
1229 (install_base_type_conversions): Install it. |
|
1230 Install conversion for indexed assignment of octave_cells to |
|
1231 undefined values. |
|
1232 |
|
1233 * TEMPLATE-INST/Array-tc.cc: Instantiate assign functions too. |
|
1234 (Array<octave_value>::resize_fill_value (void)): |
|
1235 Provide specialization for octave_value. |
|
1236 |
|
1237 * ov-cell.cc (octave_cell::assign (const octave_value_list&, |
|
1238 const octave_value&)): New function. |
|
1239 * Cell.h (Cell::Cell (const octave_value&)): New function. |
|
1240 |
|
1241 * OPERATORS/op-cell.cc (install_list_ops): Use DEFASSIGNANYOP_FN |
|
1242 and INSTALL_ASSIGNANYOP, not DEFASSIGNOP_FN and INSTALL_ASSIGNOP. |
|
1243 |
|
1244 2002-05-03 Cai Jianming <caijianming@yahoo.co.uk> |
|
1245 |
|
1246 * OPERATORS/op-cell.cc: New file. |
|
1247 * src/Makefile.in (OP_XSRC): Include it in the list. |
|
1248 |
|
1249 * parse.y (cell): Return a cell type instead of Matrix type. |
|
1250 |
|
1251 * ov.cc (install_types): Install octave_cell type. |
|
1252 |
|
1253 * pr-output.cc (octave_print_internal): Handle Cells. |
|
1254 * pr-output.h (octave_print_internal): Provide decl. |
|
1255 |
|
1256 * ov-cell.h (octave_cell): Derive from octave_base_matrix<Cell>. |
|
1257 * ov-cell.cc (do_index_op, assign, print, print_raw, |
|
1258 print_name_tag): Delete. |
|
1259 |
|
1260 * Cell.cc (allocator, index): Delete. |
|
1261 * Cell.h (Cell): Derive from Array2<octave_value>. |
|
1262 Most functions removed since we can use those from Array2 instead. |
|
1263 |
|
1264 2002-05-02 Cai Jianming <caijianming@yahoo.co.uk> |
|
1265 |
|
1266 * ov-base-mat.cc (octave_base_matrix<MT>::assign): |
|
1267 New function. |
|
1268 * ov-base-mat.h (octave_base_matrix<MT>::assign): Provide decl. |
|
1269 * ov-bool-mat.cc (octave_bool_matrix::assign): Delete. |
|
1270 * ov-bool-mat.h (octave_bool_matrix:assign): Delete decl |
|
1271 * ov-cx-mat.cc (octave_complex_matrix::assign (const |
|
1272 octave_value_list& idx, const ComplexMatrix&)): Delete. |
|
1273 * ov-cx-mat.h (octave_complex_matrix:assign (const |
|
1274 octave_value_list& idx, const ComplexMatrix&)): Replace decl with |
|
1275 function. |
|
1276 * ov-re-mat.cc (octave_bool_matrix::assign): Delete. |
|
1277 * ov-re-mat.h (octave_bool_matrix:assign): Delete decl. |
|
1278 |
3927
|
1279 2002-05-02 Cai Jianming <caijianming@yahoo.co.uk> |
|
1280 |
|
1281 * OPERATORS/op-bm-b.cc: New file.x |
|
1282 * Makefile.in (OP_XSRC): Add it to the list. |
|
1283 |
3920
|
1284 2002-04-30 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1285 |
3922
|
1286 * octave.cc (print_version_and_exit): Use |
|
1287 OCTAVE_NAME_VERSION_COPYRIGHT_COPYING_AND_WARRANTY, not |
|
1288 OCTAVE_NAME_AND_VERSION. |
|
1289 |
|
1290 * octave.cc (verbose_usage): |
|
1291 Use OCTAVE_NAME_VERSION_COPYRIGHT_COPYING_AND_WARRANTY, not |
|
1292 OCTAVE_NAME_VERSION_AND_COPYRIGHT. |
|
1293 |
|
1294 * version.h (OCTAVE_COPYING_STATEMENT, OCTAVE_WARRANTY_STATEMENT, |
|
1295 OCTAVE_NAME_VERSION_COPYRIGHT_COPYING_AND_WARRANTY, |
|
1296 X_OCTAVE_NAME_VERSION_COPYRIGHT_COPYING_WARRANTY_AND_BUGS, |
|
1297 OCTAVE_NAME_VERSION_COPYRIGHT_COPYING_WARRANTY_AND_BUGS, |
|
1298 OCTAVE_BUGS_STATEMENT): New macros. |
|
1299 (OCTAVE_STARTUP_MESSAGE): Define in terms of |
|
1300 X_OCTAVE_NAME_VERSION_COPYRIGHT_COPYING_WARRANTY_AND_BUGS |
|
1301 to include bugs address and amplified warranty information. |
|
1302 |
3920
|
1303 * DLD-FUNCTIONS/lsode.cc (Flsode): Delete unused variable nsteps. |
|
1304 |
3917
|
1305 2002-04-29 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1306 |
|
1307 * help.cc (additional_help_message): Use www.octave.org, not |
|
1308 www.che.wisc.edu/octave/octave.html. |
|
1309 * octave.cc (verbose_usage): Likewise. |
|
1310 |
3912
|
1311 2002-04-27 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1312 |
|
1313 * DLD-FUNCTIONS/daspk.cc: New file. |
|
1314 * Makefile.in (DLD_XSRC): Add it to the list. |
|
1315 |
3910
|
1316 2002-04-25 Paul Kienzle <pkienzle@users.sf.net> |
|
1317 |
|
1318 * DLD-FUNCTIONS/kron.cc: New file. |
|
1319 * Makefile.in (DLD_SRC): Add it to the list. |
|
1320 |
3903
|
1321 2002-04-22 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1322 |
|
1323 * parse.y (save_symtab): New non-terminal. Save current symbol |
|
1324 table context here. |
|
1325 (function_beg): Use it. |
|
1326 (symtab_context): New file-scope variable. |
|
1327 (recover_from_parsing_function): Restore symbol table context here. |
|
1328 |
3901
|
1329 2002-04-17 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1330 |
|
1331 * load-save.cc (get_lines_and_columns): Handle CRLF as line |
|
1332 separator in addition to LF. |
|
1333 |
3897
|
1334 2002-04-11 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1335 |
|
1336 * load-save.cc (hdf5_ofstream::hdf5_ofstream): |
|
1337 Explicitly List std::ostream(0) in constructor. |
|
1338 (hdf5_ifstream::hdf5_ifstream): |
|
1339 Explicitly List std::istream(0) in constructor. |
|
1340 (hdf5_fstreambase::hdf5_fstreambase): Use std::ios::setstate, not set. |
|
1341 (hdf5_fstreambase::close): Likewise. |
|
1342 (hdf5_fstreambase::open): Likewise. |
|
1343 |
3895
|
1344 2002-04-10 Ben Sapp <bsapp@lanl.gov> |
|
1345 |
|
1346 * pt-stmt.cc (delete_breakpoint): List breakpoints if line < 0. |
|
1347 * debug.cc (get_user_function): Check symbol by name first. |
|
1348 (Fdbstop): Rename from Fdbg_set. |
|
1349 (Fdbclear): Rename from Fdbg_delete. |
|
1350 (Fdbstatus): Rename from Fdbg_list. |
|
1351 (Fdbg_where): Rename from Fdbwhere. |
|
1352 (do_dbtype, Fdbtype): New functions. |
|
1353 |
|
1354 2002-04-10 Peter Van Wieren <peter.vanwiere@avlna.com> |
|
1355 |
|
1356 * load-save.cc (save_mat5_binary_element): Save elements of 2d |
|
1357 character matrices in proper order. |
|
1358 |
3893
|
1359 2002-04-09 Paul Kienzle <pkienzle@users.sf.net> |
|
1360 |
|
1361 * utils.cc (do_string_escapes): Handle \0 too. |
|
1362 (undo_string_escape): Likewise. |
|
1363 |
3892
|
1364 2002-04-04 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1365 |
|
1366 * toplev.cc (octave_config_info): Define struct member EXEEXT, not EXE. |
|
1367 * Makefile.in (install-bin): Use $(EXEEXT), not $(EXE). |
|
1368 * oct-conf.h.in (OCTAVE_CONF_EXEEXT): Define and substitute |
|
1369 OCTAVE_CONF_EXEEXT, not OCTAVE_CONF_EXE. |
|
1370 |
3887
|
1371 2002-04-03 Steven G. Johnson <stevenj@alum.mit.edu> |
|
1372 |
|
1373 * DLD-FUNCTIONS/balance.cc: Use F77_FUNC instead of F77_FCN. |
|
1374 * DLD-FUNCTIONS/qz.cc: Likewise. |
|
1375 * DLD-FUNCTIONS/rand.cc: Likewise. |
|
1376 * octave.cc: Likewise. |
3910
|
1377 * toplev.cc (Foctave_config_info): Delete use of FORTRAN_MAIN_FLAG. |
3887
|
1378 * oct-conf.h.in: Delete use of OCTAVE_CONF_FORTRAN_MAIN_FLAG. |
|
1379 * syscalls.cc (mk_stat_map): |
|
1380 Use HAVE_STRUCT_STAT_ST_RDEV instead of HAVE_ST_RDEV. |
|
1381 Use HAVE_STRUCT_STAT_ST_BLKSIZE instead of HAVE_ST_BLKSIZE. |
|
1382 Use HAVE_STRUCT_STAT_ST_BLOCKS instead of HAVE_ST_BLOCKS. |
|
1383 |
3881
|
1384 2002-04-02 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1385 |
3883
|
1386 * lex.l, lex.h (parser_end_of_input): New global variable. |
|
1387 (reset_parser): Reset it here. |
|
1388 * parse.y (input): Set it to TRUE on EOF. |
|
1389 (parse_and_executed): Save and restore it, check it to correctly |
|
1390 break out of parse-execute loop. |
|
1391 (parse_fcn_file): Likewise. |
|
1392 (eval_string): Likewise. |
3884
|
1393 * toplev.cc (main_loop): Likewise. |
3883
|
1394 |
3881
|
1395 * parse.y (input): Call YYACCEPT for END_OF_INPUT. |
3883
|
1396 Return no-op command for bare newline. |
3881
|
1397 (parse_and_execute): Handle change in yyparse return value semantics. |
3883
|
1398 |
3881
|
1399 * toplev.cc (main_loop): Likewise. |
|
1400 |
3880
|
1401 2002-03-25 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1402 |
|
1403 * parse.y (parse_fcn_file): Call error if there is no input file. |
|
1404 (parse_and_execute (FILE *): Protect get_input_from_eval_string. |
|
1405 Set get_input_from_eval_string to false before calling yyparse. |
|
1406 * lex.l (reset_parser): Also skip yyrestart (stdin) if |
|
1407 reading_script_file is true. |
|
1408 |
3877
|
1409 2002-03-07 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1410 |
|
1411 * pt-loop.cc (evaluating_looping_command): New global. |
|
1412 (tree_while_command::eval): Protect evaluating_looping_command. |
|
1413 Set it to true while evaluating loop. |
|
1414 (tree_do_until_command::eval): Ditto. |
|
1415 (tree_simple_for_command::eval): Ditto. |
|
1416 (tree_complex_for_command::eval): Ditto. |
|
1417 * pt-loop.h (evaluating_looping_command): Provide decl. |
|
1418 * parse.y (parse_fcn_file): Protect get_input_from_eval_string. |
|
1419 Set get_input_from_eval_string to false before calling yyparse. |
|
1420 (make_break_command): Also check evaluating_looping_command. |
|
1421 (make_continue_command): Also check evaluating_looping_command. |
|
1422 (eval_string (const std::string&, bool, int&, int)): Loop over |
|
1423 yyparse to handle multi-line strings. |
|
1424 Move call to unwind_protect::run_frame to end of function. |
|
1425 Don't reset parser before calling yyparse. |
|
1426 Correctly handle return, break, and continue. |
|
1427 |
|
1428 * input.cc (input_from_eval_string_pending): New global variable. |
|
1429 (get_usr_input): Use it. |
|
1430 * input.h (input_from_eval_string_pending): Provide decl. |
|
1431 |
3876
|
1432 2002-03-06 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1433 |
|
1434 * ov-usr-fcn.cc (octave_user_function::do_multi_index_op): |
|
1435 Don't unwind_protect num_named_args (it doesn't change on |
|
1436 recursive calls). |
|
1437 Do re-initialize curr_va_arg_number to num_named_args after |
|
1438 unwind_protecting. |
|
1439 |
|
1440 * ov-usr-fcn.h (octave_user_function::clear_args_passed): Delete. |
|
1441 (octave_user_function::saved_args): New data member. |
|
1442 (octave_user_function::save_args_passed): New function. |
|
1443 (octave_user_function::restore_args_passed): Ditto. |
|
1444 * ov-usr-fcn.cc (clear_args_passed): Delete. |
|
1445 (restore_args_passed): New function. |
|
1446 (octave_user_function::do_multi_index_op): Correctly save and |
|
1447 restore args passed for recursive calls. |
|
1448 |
|
1449 * TEMPLATE-INST/SLStack-ovl.cc: New file. |
|
1450 * Makefile.in: Add it to the list. |
|
1451 |
3870
|
1452 2002-02-22 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1453 |
3871
|
1454 * ov-usr-fcn.cc (octave_user_function::do_multi_index_op): |
|
1455 Handle define_all_return_values after function is evaluated. |
|
1456 From Paul Kienzle <pkienzle@jazz.ncnr.nist.gov>. |
|
1457 |
|
1458 * ov-scalar.cc (convert_to_str): Use octave_value (std::string) |
|
1459 constructor instead of octave_value (char *) constructor so that |
|
1460 setstr (0) will work. |
|
1461 |
3870
|
1462 * pager.cc (octave_pager_buf::sync): Set pointer to beginning |
|
1463 of buffer after calling flush_currnt_contents_to_diary. |
|
1464 (octave_diary_buf::sync): Call eback only once. |
|
1465 |
3867
|
1466 2002-01-03 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1467 |
|
1468 * lex.l (.): Remove test for EOF since it is already handled |
|
1469 separately. |
|
1470 |
3866
|
1471 2001-12-05 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1472 |
|
1473 * load-save.cc (save_mat5_binary_element): |
|
1474 Extract dimensions directly from tc. |
|
1475 Handle ranges the same as real matrices. |
|
1476 |
3864
|
1477 2001-11-16 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1478 |
|
1479 * data.cc (DATA_REDUCTION): If no DIM arg, pass -1 to FCN. |
|
1480 |
3859
|
1481 2001-11-09 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1482 |
|
1483 * oct-conf.h.in (FFTW_LIBS, LD_CXX, LIBOCT_PATHSEARCH, |
|
1484 LIBOCT_READLINE, MKOCTFILE_LFLAGS): Substitute. |
|
1485 * toplev.cc (octave_config_info): Add them to the map. |
|
1486 |
|
1487 2001-11-08 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1488 |
|
1489 * DLD-FUNCTIONS/lsode.cc (Flsode): Don't bother to give OUTPUT |
|
1490 matrix a size before calling integration function. |
|
1491 |
3857
|
1492 2001-11-06 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1493 |
|
1494 Makefile.in (OCTAVE_LIBS): Add $(LIBOCT_READLINE) and |
|
1495 $(LIBOCT_PATHSEARCH) to the list. |
|
1496 |
3849
|
1497 2001-10-08 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1498 |
|
1499 * DLD-FUNCTIONS/dassl.cc (dassl_user_function): Allow user |
|
1500 supplied RES function to return IDID as second value. |
|
1501 |
3844
|
1502 2001-07-23 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1503 |
|
1504 * parse.y: Clear help_buf after documenting function. |
|
1505 |
3842
|
1506 2001-06-29 Mumit Khan <khan@nanotech.wisc.edu> |
|
1507 |
|
1508 * defun-int.h (DEFINE_FUN_INSTALLER_FUN{2,3}): New macros. |
|
1509 (DEFINE_FUN_INSTALLER_FUN): Use. |
|
1510 * dynamic-ld.cc ({STRINGIFY, STRINGIFY1}): New macros. |
|
1511 (octave_dynamic_loader::mangle_name): Support dynamic linking |
|
1512 for GNU v3 and Sun C++ ABI. |
|
1513 |
3841
|
1514 2001-06-26 Mumit Khan <khan@nanotech.wisc.edu> |
|
1515 |
|
1516 * c-file-ptr-stream.h (c_file_ptr_buf::c_file_ptr_buf): Add GCC3 |
|
1517 libstdc++-v3 support. |
|
1518 * load-save.cc (save_mat5_binary_element): Cast arguments to the |
|
1519 correct type. |
|
1520 (save_ascii_data): Eliminate compiler warning. |
|
1521 * toplev.cc (system): Prefix std::. |
|
1522 |
3836
|
1523 2001-05-31 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1524 |
|
1525 * ov-cx-mat.cc: Deleve unnecessary instantiation of assign function. |
|
1526 * ov-re-mat.cc: Likewise. |
|
1527 * ov-re-nd-array.cc: Likewise. |
|
1528 * ov-str-mat.cc: Likewise. |
|
1529 * ov-bool-mat.cc: Likewise. |
|
1530 |
|
1531 * load-save.cc (save_ascii_data): When saving string data, get raw |
|
1532 string value for matrix row since there may be embedded nuls. |
|
1533 |
|
1534 * pt-mat.cc (Vstring_fill_char): No longer static. |
|
1535 * pt-mat.h: Provide declaration. |
|
1536 |
3834
|
1537 2001-05-17 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1538 |
|
1539 * octave.cc (initialize_pathsearch): Save initial value of the |
|
1540 TEXMFDBS environment variable here. |
|
1541 * toplev.cc (restore_texmfdbs_envvar): New function. |
|
1542 (Fsystem): Set TEXMFDBS back to original value before running |
|
1543 subprocesses. |
|
1544 |
3827
|
1545 2001-05-02 Mumit Khan <khan@nanotech.wisc.edu> |
|
1546 |
|
1547 * Makefile.in (octave): Add $(FFTW_LIBS). |
|
1548 |
3826
|
1549 2001-04-27 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1550 |
|
1551 * DLD-FUNCTIONS/sort.cc (mx_sort): Check for NaNs in comparisons. |
|
1552 |
3822
|
1553 2001-04-26 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1554 |
|
1555 * Makefile.in (OCTAVE_LIBS): Delete $(LIBREADLINE) from the list. |
|
1556 (octave): Delete TERMLIBS from link command. |
|
1557 * oct-conf.h.in: Delete references to LIBREADLINE, TERMLIBS. |
|
1558 * toplev.cc (octave_config_info): Delete entries for LIBREADLINE, |
|
1559 TERMLIBS. |
|
1560 |
3821
|
1561 2001-04-25 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1562 |
|
1563 * Makefile.in (install-lib): Don't use mk-libdir-link. |
|
1564 (install-inc): Don't use mk-includedir-link. |
|
1565 |
3815
|
1566 2001-04-19 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1567 |
|
1568 * parse.y (fold (tree_binary_expression *)): |
|
1569 Set discard_error_messages here instead of buffer_error_messages. |
|
1570 Don't add clear_global_error_variable to the unwind_protect stack. |
|
1571 (fold (tree_unary_expression *)): Likewise. |
|
1572 (finish_colon_expression): Likewise. |
|
1573 (finish_matrix): Likewise. |
|
1574 |
|
1575 * error.cc (panic): Set discard_error_messages to false here. |
|
1576 (verror): Return immediately if discard_error_messages is true. |
|
1577 |
|
1578 * error.cc (discard_error_messages): New global variable. |
|
1579 * error.h: Provide declaration. |
|
1580 |
3813
|
1581 2001-04-18 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1582 |
|
1583 * lex.l: If unexpected character is EOF, report EOF error instead |
|
1584 of invalid character error. |
|
1585 |
3812
|
1586 2001-04-18 Mumit Khan <khan@nanotech.wisc.edu> |
|
1587 |
|
1588 * load-save.cc (read_mat5_binary_element): Cast arguments to the |
|
1589 correct type when adding stream positions. |
|
1590 * DLD-FUNCTIONS/det.cc (det): Explicity create a Complex value to |
|
1591 work around a Sun C++ type conversion bug. |
|
1592 |
3811
|
1593 2001-04-17 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1594 |
|
1595 * symtab.cc (define_builtin_const): Don't call replace_all_defs |
|
1596 here. |
|
1597 |
|
1598 * error.cc (error_message_buffer): Now static. |
|
1599 * error.h (error_message_buffer): Delete extern declaration. |
|
1600 |
3810
|
1601 2001-03-29 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1602 |
|
1603 * DLD-FUNCTIONS/besselj.cc (besselh): Use K arg. |
|
1604 From: Thomas Stuart <tstuart@ing.sun.ac.za>. |
|
1605 |
|
1606 * oct-stream.cc (get_size): Don't allow [Inf, N] as a size |
|
1607 specification for the read and scanf functions. |
|
1608 (get_size): SIZE is now an Array<double> instead of a Matrix object. |
|
1609 (read): Likewise. Change all callers. |
|
1610 (scanf): Likewise. Change all callers. |
|
1611 |
3808
|
1612 2001-03-26 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1613 |
|
1614 * DLD-FUNCTIONS/det.cc (Fdet): Only return rcond if nargout > 1. |
|
1615 * DLD-FUNCTIONS/inv.cc (Finv): Only return rcond if nargout > 1. |
|
1616 |
|
1617 2001-03-26 Paul Kienzle <pkienzle@kienzle.powernet.co.uk> |
|
1618 |
|
1619 * DLD-FUNCTIONS/det.cc (Fdet): Suppress warning, but return rcond. |
|
1620 * DLD_FUNCTIONS/inv.cc (Finv): Return rcond if requested. |
|
1621 |
3804
|
1622 2001-02-28 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1623 |
3805
|
1624 * pt.h (tree::break_statement): New static member. |
|
1625 (tree::break_function): Make const. |
|
1626 * pt.cc (tree::break_statement): Initialize here. |
|
1627 (tree::break_function): Make const. |
|
1628 * pb-bp.h (break_statement): Delete global varaible declaration. |
|
1629 * pt-bp.cc (break_statement): Delete global variable definition. |
|
1630 |
|
1631 * pt-bp.h (tree_breakpoint::bp_list): Rename from lst. |
|
1632 |
|
1633 * pt.h: Don't inlcude ov-usr-fcn.h. |
|
1634 Provide forward declaration of octave_user_function class. |
|
1635 |
|
1636 2001-02-28 Ben Sapp <bsapp@lanl.gov> |
|
1637 |
|
1638 * debug.cc (get_user_function): Simplify by using curr_function. |
|
1639 (Fdbg_where): New function. |
|
1640 (Fdbg_list): Now DLD_TEXT instead of DLD_FCN. |
|
1641 (Fdbg_set): Likewise. |
|
1642 (Fdbg_delete): Likewise. |
|
1643 |
|
1644 * pt-bp.h (break_statement): New global variable. |
|
1645 (MAYBE_DO_BREAKPOINT): Check for dbg_next and dbg_step. |
|
1646 Print line, column, and current statement. |
|
1647 * pt-bp.cc (break_statement): New global variable |
|
1648 (tree_breakpoint::visit_do_until_command): Return immediately if |
|
1649 we've already found the line. |
|
1650 (tree_breakpoint::visit_colon_expression): Set breakpoint info here. |
|
1651 (tree_breakpoint::visit_binary_expression): Recurse here when |
|
1652 checking for breakpoints. |
|
1653 |
|
1654 * debug.cc: Move here from DLD-FUNCTIONS/debug.cc. |
|
1655 * Makefile.in (DIST_SRC): Add it to the list. |
|
1656 (DLD_XSRC): Delete it from the list. |
|
1657 |
|
1658 * pt.h (tree::last_line, tree::break_function): New static members. |
|
1659 * pt.cc(tree::last_line, tree::break_function): Initialize them. |
|
1660 |
|
1661 * pt-cell.h (tree_cell::tree_cell): Accept line and column info. |
|
1662 * pt-mat.h (tree_matrix::tree_matrix): Likewise. |
|
1663 |
|
1664 * ov-usr-fcn.h (octave_user_function::sym_tab): Delete. |
|
1665 |
|
1666 * input.cc (get_user_input): Handle dbg_next. |
|
1667 Set tree:break_function and tree::last_line when doing dbg_step. |
|
1668 |
|
1669 2001-02-28 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1670 |
|
1671 * lex.l (handle_string): Save line and column information in token. |
|
1672 (is_keyword): Save line and column information for plot style and |
|
1673 axes tokens. |
|
1674 |
3804
|
1675 * toplev.cc (main_loop): Set retval to non-zero value if error |
|
1676 occurs when not interactive. |
|
1677 |
3802
|
1678 2001-02-26 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1679 |
|
1680 * parse.y (gobble_leading_white_space): Handle CRLF here too. |
|
1681 * lex.l (check_for_garbage_after_fcn_def): Likewise. |
|
1682 |
|
1683 * lex.l: Add numeric value of character to error message for |
|
1684 unrecognized characters. |
|
1685 |
3800
|
1686 2001-02-22 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1687 |
|
1688 * DLD-FUNCTIONS/minmax.cc (EMPTY_RETURN_CHECK): For empty matrix |
|
1689 args, make Octave's min and max behave like Matlab. |
|
1690 |
3799
|
1691 2001-02-18 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1692 |
|
1693 * OPERATORS/op-s-s.cc (el_or, el_and): Return bool value. |
|
1694 |
3798
|
1695 2001-02-14 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1696 |
|
1697 * pt-binop.cc (tree_boolean_expression::rvalue): |
|
1698 Don't cast result to double. |
|
1699 |
|
1700 * OPERATORS/op-b-b.cc: Allow & and | operators to return bool values. |
|
1701 |
|
1702 2001-02-09 John W. Eaton <jwe@bevo.che.wisc.edu> |
3797
|
1703 |
|
1704 * data.cc (DATA_REDUCTION): Undo previous change. |
|
1705 |
|
1706 2001-02-13 Matthew W. Roberts <matt@nephi.tamu.edu> |
|
1707 |
|
1708 * load-save.cc (Fload): Accept -4 as an alias for -v4 and -mat4-binary. |
|
1709 (Fsave): Likewise. |
|
1710 |
3796
|
1711 2001-02-13 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1712 |
|
1713 * lex.l (lexical_feedbac::init): |
|
1714 Initialize looking_at_matrix_or_assign_lhs too. |
|
1715 |
3795
|
1716 2001-02-09 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1717 |
|
1718 * data.cc (DATA_REDUCTION): Allow FCN(x,0) to be equivalent to FCN(x). |
|
1719 |
3779
|
1720 2001-02-06 Mumit Khan <khan@nanotech.wisc.edu> |
|
1721 |
|
1722 * oct-stream.cc (octave_scan): Partially implement and specialize |
|
1723 for char*. Delete the old template instantiations. |
|
1724 (BEGIN_S_CONVERSION): Use strings instead of ostrstreambuf. |
|
1725 (octave_base_stream::do_scanf): Pass correct parameter to |
|
1726 do_scan_conv. |
|
1727 |
3775
|
1728 2001-02-05 Mumit Khan <khan@nanotech.wisc.edu> |
|
1729 |
3776
|
1730 * pr-output.cc (set_format): Add std:: namespace qualifier as |
|
1731 needed. |
|
1732 |
3775
|
1733 * oct-stream.cc (octave_scan): Implement, and specialize for |
|
1734 char*. Delete the old template instantiations. |
|
1735 (BEGIN_S_CONVERSION): Use strings instead of ostrstreambuf. |
|
1736 (octave_base_stream::do_scanf): Pass correct parameter to |
|
1737 do_scan_conv. |
|
1738 |
|
1739 * Makefile.in (TEMPLATE_AR, TEMPLATE_ARFLAGS): Use to create |
|
1740 archive libraries containing templates. |
|
1741 |
|
1742 * c-file-ptr-stream.h: Include <fstream>. Use <cstdio> instead of |
|
1743 <stdio.h> |
|
1744 (c_file_ptr_buf::int_type): Compat typedef for non-ISO libstdc++. |
|
1745 (c_file_ptr_buf::{overflow, underflow, uflow, pbackfail): Use. |
|
1746 (c_file_ptr_buf::c_file_ptr_buf): Handle various compilers. |
|
1747 (c_file_ptr_buf::file_number): New member function. |
|
1748 (c_file_ptr_buf::fd): New private data. |
|
1749 (i_c_file_ptr_stream::i_c_file_ptr_stream): Initialize stream |
|
1750 correctly. |
|
1751 (o_c_file_ptr_stream::o_c_file_ptr_stream): Likewise. |
|
1752 * c-file-ptr-stream.cc |
|
1753 (c_file_ptr_buf::{overflow, underflow, uflow, pbackfail): Add |
|
1754 ISO-compliant EOF handling. |
|
1755 * oct-stream.cc (octave_base_stream::file_number): Use |
|
1756 c_file_ptr_buf::file_number to get underlying file descriptor. |
|
1757 |
|
1758 * comment-list.cc: Add missing class qualifier. |
|
1759 |
|
1760 * file-io.cc, load-save.cc, mappers.cc, oct-fstrm.cc, oct-fstrm.h, |
|
1761 oct-iostrm.cc, oct-iostrm.h, oct-stdstrm.cc, oct-stdstrm.h, |
|
1762 oct-stream.cc, oct-stream.h, oct-strstrm.cc, oct-strstrm.h, |
|
1763 ov-base-nd-array.cc, ov-base-scalar.h, ov-complex.cc, ov-cx-mat.cc, |
|
1764 pager.cc, pr-output.cc, procstream.h, pt-bp.h, utils.cc: |
|
1765 Add std:: namespace qualifier as needed, and replace |
|
1766 deprecated or invalid libstdc++-v2 names with standard ones |
|
1767 where appropriate. |
|
1768 |
|
1769 * DLD-FUNCTIONS/minmax.cc: Fix docstring. |
|
1770 |
|
1771 * oct-fstrm.cc (octave_fstream::octave_fstream): Maintain fix for |
|
1772 libstdc++-v2. |
|
1773 |
|
1774 * oct-stdstrm.cc (octave_ostdiostream::create): Remove default |
|
1775 parameter value in definition. |
|
1776 |
|
1777 * oct-stream.cc (octave_stream::mode_as_string): Don't assume |
|
1778 std::iso::openmode is an integral quantity. |
|
1779 |
|
1780 * pager.cc, procstream.h: Initialize streams correctly. |
|
1781 |
|
1782 * utils.cc: Use CXX_ISO_COMPLIANT_LIBRARY guard. |
|
1783 |
|
1784 * ov-base-nd-array.cc (idx_list_to_idx_array): Inline. |
|
1785 |
|
1786 * ov-base-scalar.h (octave_base_scalar::octave_base_scalar): Use |
|
1787 ``const ST& s'' instead of ST to workaround gcc3 complex bug. |
|
1788 |
3774
|
1789 2001-02-05 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1790 |
|
1791 * lex.l (next_token_is_bin_op): Remove Checks for spacing except |
|
1792 for ops that begin with +, - but are not ++, --, +=, or -=. |
|
1793 |
3772
|
1794 2001-02-02 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1795 |
|
1796 * input.cc (get_user_input): Handle dbg_cont and dbg_step here. |
|
1797 * debug.cc (Fdbg_cont): Delete. |
|
1798 * pt-bp.h (MAYBE_DO_BREAKPOINT): Check tree::break_next here. |
|
1799 * pt.h (tree::break_next): New static member. |
|
1800 * pt.cc: Initialize it. |
|
1801 |
|
1802 * parse.h (feval (const octave_value_list&, int)): |
|
1803 Set default value for nargout. |
|
1804 (feval (const std::string&, const octave_value_list&, int)): |
|
1805 Set default values for args and nargout. |
|
1806 |
3770
|
1807 2001-02-01 Ben Sapp <bsapp@lanl.gov> |
|
1808 |
|
1809 * DLD-FUNCTIONS/debug.cc: New file. |
|
1810 * pt-bp.h, pt-bp.cc: New files, for breakpoints. |
|
1811 * Makefile.in: Add them to the appropriate lists. |
|
1812 |
|
1813 * pt-stmt.cc (tree_statement_list::set_breakpoint, |
|
1814 tree_statement_list::delete_breakpoint, |
|
1815 tree_statement_list::list_breakpoints): New functions. |
|
1816 |
|
1817 * pt.h (tree::break_point): New data member. |
|
1818 (tree::set_breakpoint, tree::delete_breakpoint, tree::is_breakpoint): |
|
1819 New virtual functions. |
|
1820 |
|
1821 * pt-mat.cc (tree_matrix::rvalue): Check for breakpoint here. |
|
1822 * pt-unop.cc (tree_prefix_expression::rvalue): Likewise. |
|
1823 (tree_postfix_expression::rvalue): Likewise. |
|
1824 * pt-loop.cc (tree_do_until_command::eval): Likewise. |
|
1825 (DO_LOOP): Likewise. |
|
1826 (tree_simple_for_command::eval): Likewise. |
|
1827 (tree_complex_for_command::eval): Likewise. |
|
1828 * pt-assign.cc (tree_simple_assignment::rvalue): Likewise. |
|
1829 * pt-binop.cc (tree_binary_expression::rvalue): Likewise. |
|
1830 (tree_boolean_expression::rvalue): Likewise. |
|
1831 * pt-cell.cc (tree_cell::rvalue): Likewise. |
|
1832 * pt-colon.cc (tree_colon_expression::rvalue): Likewise. |
|
1833 * pt-except.cc (tree_try_catch_command::eval): Likewise. |
|
1834 (tree_unwind_protect_command::eval): Likewise. |
|
1835 * pt-id.cc (tree_identifier::rvalue): Likewise. |
|
1836 (tree_identifier::lvalue): Likewise. |
|
1837 * pt-indir.cc (tree_indirect_ref::rvalue): Likewise. |
|
1838 * pt-jump.cc (tree_break_command::eval): Likewise. |
|
1839 (tree_continue_command::eval): Likewise. |
|
1840 (tree_return_command::eval): Likewise. |
|
1841 |
3767
|
1842 2001-01-29 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1843 |
|
1844 * Map.h, Map.cc (CHMap<C>::operator = (const CHMap&)): New function. |
|
1845 (Map<C>::operator = (const Map&)): Likewise. |
|
1846 (Map<C> (const Map&)): Likewise. |
|
1847 |
|
1848 * OPERATORS/op-cm-cs.cc, OPERATORS/op-cm-s.cc, |
|
1849 OPERATORS/op-m-cs.cc, OPERATORS/op-m-s.cc: |
|
1850 Make ldiv operator work for row vector by scalar ops. |
|
1851 |
|
1852 * OPERATORS/op-cs-cm.cc, OPERATORS/op-cs-m.cc, |
|
1853 OPERATORS/op-s-cm.cc, OPERATORS/op-s-m.cc: |
|
1854 Make div operator work for scalar by column vector ops. |
|
1855 |
3765
|
1856 2001-01-17 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1857 |
|
1858 * parse.y (safe_fclose): Discard comments at the end of a file. |
|
1859 |
3764
|
1860 2001-01-16 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1861 |
|
1862 * error.cc (pr_where): Call pr_where_1 with two args, not one, to |
|
1863 avoid processing format escapes that might appear in formatted code. |
|
1864 |
3762
|
1865 2001-01-05 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1866 |
|
1867 * error.cc (vwarning): Write to output_buf, then send formatted |
|
1868 message to diary and error streams. |
|
1869 |
3760
|
1870 2001-01-02 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1871 |
|
1872 * ov-cx-mat.cc (octave_complex_matrix::try_narrowing_conversion): |
|
1873 Handle empty matrix dimensions correctly. |
|
1874 |
3756
|
1875 2000-12-14 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1876 |
|
1877 * pager.h (octave_pager_buf::diary_skip): New data member. |
|
1878 (octave_pager_buf::octave_pager_buf): Initialize it. |
|
1879 * pager.cc (octave_pager_buf::set_diary_skip): New function. |
|
1880 (octave_pager_stream::set_diary_skip): New function. |
|
1881 (octave_pager_buf::sync): Call flush_current_contents_to_diary |
|
1882 instead of octave_diary.write. |
|
1883 (octave_pager_buf::flush_current_contents_to_diary): Use |
|
1884 diary_skip, reset when done. |
|
1885 (open_diary_file): Call octave_stdout.set_diary_skip here. |
|
1886 |
3747
|
1887 2000-12-06 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1888 |
|
1889 * DLD-FUNCTIONS/minmax.cc (EMPTY_RETURN_CHECK): New macro. |
|
1890 (min, max): Use it. |
|
1891 |
|
1892 * DLD-FUNCTIONS/minmax.cc (MINMAX_BODY): New macro. If single arg |
|
1893 is empty, return empty matrix result and empty matrix for index. |
|
1894 (Fmin, Fmax): Use MINMAX_BODY, so we have consistent definition |
|
1895 for min and max functions. |
|
1896 |
|
1897 2000-11-30 Joerg Specht <joerg.specht@ins.uni-stuttgart.de> |
|
1898 |
|
1899 * help.cc (display_help_text): Append new line at end of doc string. |
|
1900 |
|
1901 2000-11-30 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1902 |
|
1903 * DLD-FUNCTIONS/lsode.cc (LSODE_ABORT1, LSODE_ABORT2): Omit `##' |
|
1904 in macro definition since they are not needed to paste strings |
|
1905 together and picky compilers choke on them. |
|
1906 * DLD-FUNCTIONS/quad.cc (QUAD_ABORT1, QUAD_ABORT2): Likewise. |
|
1907 * DLD-FUNCTIONS/fsolve.cc (FSOLVE_ABORT1, FSOLVE_ABORT2): Likewise. |
|
1908 * DLD-FUNCTIONS/dassl.cc (DASSL_ABORT1, DASSL_ABORT2): Likewise. |
|
1909 |
3741
|
1910 2000-11-29 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1911 |
3744
|
1912 * mkbuiltins (XDEFUNX_INTERNAL): New macro. |
3746
|
1913 * mkgendoc (XDEFUNX_INTERNAL): Likewise. |
3744
|
1914 * defun-int.h (DEFUNX_INTERNAL): Use it. |
|
1915 |
3743
|
1916 * defun.h (DEFUNX): New macro. |
|
1917 * defun-int.h (DEFUNX_INTERNAL, DECLARE_FUNX): New macro. |
|
1918 (DECLARE_FUN): Define in terms of DECLARE_FUNX. |
|
1919 |
3742
|
1920 * mkdefs: Read and print one line at a time, so we can force |
|
1921 patterns to match only at the beginning of a line. |
|
1922 |
3741
|
1923 * defun-int.h (UNDERSCORIFY): Omit `##' in macro definition since |
|
1924 they are not needed to paste strings together and picky compilers |
|
1925 choke on them. |
|
1926 |
3738
|
1927 2000-11-17 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1928 |
|
1929 * load-save.cc (save_ascii_data_for_plotting): New function. |
|
1930 * pt-plot.cc (save_in_tmp_file): Use it instead of save_ascii_data. |
|
1931 |
|
1932 * load-save.cc (save_ascii_data): Warn if saving Inf or NaN values. |
|
1933 New arg, infnan_warned. Use it to warn just once per set. |
|
1934 Now static. |
|
1935 (do_save): New arg, infnan_warned. Pass to save_ascii_data. |
|
1936 (save_vars): Initialize infnan_warned here, pass to do_save. |
|
1937 |
3737
|
1938 2000-11-16 Paul Kienzle <pkienzle@kienzle.powernet.co.uk> |
|
1939 |
|
1940 * file-io.cc (Ffprintf): If no file id parameter, don't return |
|
1941 count of characters if nargout is 0 (for compatibility with |
|
1942 Matlab). |
|
1943 |
|
1944 2000-11-16 Ben Sapp <bsapp@lanl.gov> |
|
1945 |
|
1946 * DLD-FUNCTIONS/rand.cc (do_rand): Declare loop counter as |
|
1947 volatile int, not just volatile. |
|
1948 |
3731
|
1949 2000-10-31 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1950 |
|
1951 * load-save.cc (skip_comments): Allow % as comment character too. |
|
1952 (extract_keyword): Likewise. |
|
1953 |
|
1954 * Makefile.in (oct-gperf.h): Remove -a, -g, and -p flags for gperf. |
|
1955 |
3727
|
1956 2000-10-30 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1957 |
|
1958 * load-save.cc (do_load): Allow result to be returned instead of |
|
1959 inserting variables in the symbol table. Change patterned after |
|
1960 patch by Kian Ming Adam Chai <caijianming@yahoo.co.uk>. |
|
1961 |
3726
|
1962 2000-10-27 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1963 |
|
1964 * Makefile.in (ops.cc): Don't substitute BLAS_LIBS and LIBS here. |
|
1965 |
|
1966 * oct-conf.h.in (OCTAVE_CONF_SPECIAL_MATH_LIB): Delete. |
|
1967 (OCTAVE_CONF_BLAS_LIBS): Add. |
|
1968 * toplev.cc (octave_config_info): Likewise, add BLAS_LIBS and |
|
1969 remove SPECIAL_MATH_LIB from the struct. |
|
1970 |
|
1971 * parse.y (feval (const octave_value_list&, int)): Don't panic |
|
1972 while processing arg names if arg.length() and arg_names.length() |
|
1973 differ. |
|
1974 |
3724
|
1975 2000-10-12 Paul Kienzle <pkienzle@kienzle.powernet.co.uk> |
|
1976 |
|
1977 * ov-cell.h (octave_cell::is_cell): New function. |
|
1978 |
|
1979 * pt-select.cc (equal): New static function. |
|
1980 (tree_switch_case::label_matches): Use it to compare case label |
|
1981 against arg. Handle cell arrays as case labels. |
|
1982 |
3723
|
1983 2000-10-12 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1984 |
|
1985 Change patterned after patch by Cai Jianming |
|
1986 <caijianming@yahoo.co.uk> to support for DIM arg in 2.0.x sources. |
|
1987 |
|
1988 * data.cc (DATA_REDUCTION): New macro. Handle second DIM arg here. |
|
1989 (Fcumprod): Replace function body with DATA_REDUCTION. |
|
1990 (Fcumsum): Likewise. |
|
1991 (Fprod): Likewise. |
|
1992 (Fsum): Likewise. |
|
1993 (Fsumsq): Likewise. |
|
1994 |
3719
|
1995 2000-10-10 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1996 |
|
1997 * error.cc (pr_where_2): New function. |
|
1998 (pr_where_1): Use it instead of error_1 to avoid setting error_state. |
|
1999 |
|
2000 2000-10-02 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2001 |
|
2002 * xdiv.cc (xdiv): Warn if execution falls through to lssolve. |
|
2003 |
3716
|
2004 2000-09-06 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2005 |
|
2006 * utils.cc (FERRNO): New function (currently commented out). |
|
2007 |
|
2008 * c-file-ptr-stream.cc (c_file_ptr_buf::close): Call flush here. |
|
2009 (c_file_ptr_buf::~c_file_ptr_buf): Not here. |
|
2010 * c-file-ptr-stream.h (c_fie_ptr_buf::close_fcn): New typedef. |
|
2011 (c_file_ptr_buf::cf): New data member. Add default constructor arg. |
|
2012 (class c_file_ptr_buf): Derive from filebuf, not streambuf. |
|
2013 (i_c_file_ptr_stream, o_c_file_ptr_stream): Handle close function here. |
|
2014 * oct-procstrm.cc (octave_iprocstream, octave_oprocstream): Likewise. |
|
2015 (octave_iprocstream::do_close, octave_oprocstream::do_close): Delete. |
|
2016 * oct-stdstrm.cc (octave_base_stdiostream::~octave_base_stdiostream): |
|
2017 Don't do anything. |
|
2018 (octave_istdiostream::create): Handle close function here. |
|
2019 (octave_istdiostream::octave_istdiostream): Likewise. |
|
2020 (octave_ostdiostream::create): Likewise. |
|
2021 (octave_ostdiostream::octave_ostdiostream): Likewise. |
|
2022 (class octave_base_stdiostream): Don't cache FILE pointer here. |
|
2023 |
3715
|
2024 2000-09-01 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2025 |
|
2026 * syscalls.cc (Ffcntl): Don't assume that the file id passed in is |
|
2027 the same as the underlying system file id. |
|
2028 |
3712
|
2029 2000-08-22 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2030 |
|
2031 * parse.y: Use octave_time, not time. |
|
2032 |
3711
|
2033 2000-08-03 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2034 |
|
2035 * oct-stream.cc (printf_value_cache::double_value): Also set |
|
2036 curr_stat to conversion_error if there are no values at all. |
|
2037 |
3710
|
2038 2000-08-02 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2039 |
|
2040 * dirfns.cc (Flink, Fsymlink, Freadlink): New functions. |
|
2041 |
3709
|
2042 2000-08-01 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2043 |
|
2044 * load-save.cc (Vsave_header_format_string): New variable. |
|
2045 (symbols_of_load_save): DEFVAR it. |
|
2046 (save_header_format, default_save_header_format): New functions. |
|
2047 (write_header): Use Vsave_header_format_string here. |
|
2048 |
3707
|
2049 2000-07-28 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2050 |
3708
|
2051 * pt-pr-code.h (tree_print_code::curr_print_indent_level, |
|
2052 (tree_print_code::beginning_of_line): No longer static. |
|
2053 (tree_print_code::tree_print_code): Initialize them here. |
|
2054 * pt-pr-code.cc: Not here. |
|
2055 |
|
2056 * pt-stmt.cc (tree_statement::eval): Set curr_statement here. |
|
2057 (tree_statement_list::eval): Not here. |
|
2058 |
3707
|
2059 Debug-on-error stuff based on a patch submitted by Paul Kienzle |
|
2060 <pkienzle@kienzle.powernet.co.uk> for 2.0.x. |
|
2061 |
|
2062 * error.cc (Vdebug_on_warning): New static flag variable. |
|
2063 (debug_on_warning): New function. |
|
2064 (symbols_of_warning): DEFVAR debug_on_warning. |
|
2065 (warning): Handle debug_on_warning here. |
|
2066 |
|
2067 * input.cc (do_keyboard): New function. |
|
2068 (Fkeyboard): Use it to do the real work. |
|
2069 * pt-stmt.cc (curr_statement): New static variable. |
|
2070 (tree_statement::eval): Save and restore it here. |
|
2071 * error.cc (Vdebug_on_error): New static flag variable. |
|
2072 (debug_on_error): New function. |
|
2073 (symbols_of_error): DEFVAR debug_on_error. |
|
2074 (pr_where, pr_where_1): New functions. |
|
2075 (error): Handle debug_on_error here. |
|
2076 |
3705
|
2077 2000-07-20 Joao Cardoso <jcardoso@inescporto.pt> |
|
2078 |
|
2079 * Makefile.in (octave): Link with $(LD_CXX) instead of $(CXX) |
|
2080 |
3704
|
2081 2000-07-20 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2082 |
|
2083 * oct-stream.cc (octave_base_stream::oscanf): Advance to next |
|
2084 format element before attempting to pick up any trailing stuff. |
|
2085 |
3697
|
2086 2000-07-17 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2087 |
3698
|
2088 * lex.l (next_token_is_bin_op): Don't recognize `..' as a binary op. |
|
2089 |
3697
|
2090 * load-save.cc (get_file_format): Call read_mat5_binary_file_header |
|
2091 with third arg true instead of false, so we don't barf if the file |
|
2092 is not a matlab v5 binary file. |
|
2093 |
3695
|
2094 2000-07-14 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2095 |
|
2096 * Makefile.in (octave): Link to ../libcruft/blas-xtra/xerbla.o here. |
|
2097 |
|
2098 * octave.cc (main): Remove kluge to attempt linking our version of |
|
2099 xerbla. |
|
2100 |
|
2101 2000-07-07 Steven G. Johnson <stevenj@alum.mit.edu> |
|
2102 |
|
2103 * load-save.cc (have_h5giterate_bug): New file-scope variable. |
|
2104 (hdf5_read_next_data): Only increment current_item if |
|
2105 have_h5giterate_bug is true. |
|
2106 (read_hdf5_data): Set have_h5giterate_bug here. |
|
2107 Only increment hs.current_item if have_h5giterate_bug is true. |
|
2108 |
3693
|
2109 2000-07-05 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2110 |
|
2111 * c-file-ptr-stream.cc (c_file_ptr_buf::close): |
|
2112 Return -1 if file pointer is NULL. |
|
2113 Set file pointer to 0 after closing. |
|
2114 (c_file_ptr_buf::~c_file_ptr_buf): Call close after flushing. |
|
2115 |
3694
|
2116 2000-07-05 Steven G. Johnson <stevenj@alum.mit.edu> |
3692
|
2117 |
|
2118 * Makefile.in (BLAS_LIBS): Substitute here. |
|
2119 (octave): Use $(BLAS_LIBS) in the final link command. |
|
2120 |
3694
|
2121 2000-06-30 Steven G. Johnson <stevenj@alum.mit.edu> |
3690
|
2122 |
|
2123 * Makefile.in (octave): Link $(FLIBS) last. |
|
2124 * octave.cc (main): Force our own xerbla to be linked instead of |
|
2125 some system version. |
|
2126 |
3688
|
2127 2000-06-29 James R. Van Zandt <jrv@vanzandt.mv.com> |
|
2128 |
3689
|
2129 * load-save.cc (load_save_format): New value, LS_MAT5_BINARY. |
3688
|
2130 (arrayclasstype, mat5_data_type): New enums. |
|
2131 (read_mat5_binary_data): New function. |
|
2132 (read_mat5_tag): New function. |
|
2133 (read_mat5_binary_element): New function. |
|
2134 (read_mat5_binary_file_header): New function. |
|
2135 (get_file_format): Check for mat5 binary format too. |
|
2136 (do_load): Handle mat5 binary format. |
|
2137 (write_mat5_tag): New function. |
|
2138 (write_mat5_array): New function. |
|
2139 (class mat5_callback): New class. |
|
2140 (save_mat5_binary_element): New functnon. |
|
2141 (do_save): Handle mat5 binary format. |
|
2142 (write_header): Handle LS_MAT5_BINARY case too. |
|
2143 (save_user_variables): Handle LS_MAT5_BINARY case too. |
|
2144 (Fsave): Handle LS_MAT5_BINARY case too. |
|
2145 (Fload): Handle LS_MAT5_BINARY case too. |
|
2146 |
3694
|
2147 2000-06-29 Steven G. Johnson <stevenj@alum.mit.edu> |
3687
|
2148 |
|
2149 All of the following changes are protected by #ifdef HAVE_HDF5. |
|
2150 |
|
2151 * load-save.cc (load_save_format): New value, LS_HDF5. |
|
2152 (make_valid_identifier): New function. |
|
2153 (class hdf5_fstreambase, class hdf5_ifstream, class hdf5_ofstream): |
|
2154 New classes for reading and writing hdf5 data. |
|
2155 (hdf5_types_compatible): New function. |
|
2156 (hdf5_import_multidim): New function. |
|
2157 (hdf5_check_attr): New function. |
|
2158 (hdf5_read_next_data): New function. |
|
2159 (hdf5_make_complex_type): New function. |
|
2160 (hdf5_make_range_type): New function. |
|
2161 (read_hdf5_data): New function. |
|
2162 (get_file_format): Handle HDF5 format. |
|
2163 (do_load): Handle LS_HDF5 case. |
|
2164 (Fload): Handle HDF5 format. |
|
2165 (hdf5_add_attr): New function. |
|
2166 (save_type_to_hdf5): New function. |
|
2167 (add_hdf5_data): New function. |
|
2168 (do_save): Handle HDF5 format. |
|
2169 (get_default_save_format): Handle LS_HDF5 case. |
|
2170 (write_header): Handle LS_HDF5 case. |
|
2171 (save_user_variables): Handle HDF5 format. |
|
2172 (Fsave): Handle HDF5 format. |
|
2173 |
3686
|
2174 2000-06-28 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2175 |
|
2176 * help.cc (display_help_text): If writing to filter fails, send |
|
2177 unformatted text to output stream. |
|
2178 |
3683
|
2179 2000-06-27 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2180 |
3685
|
2181 * OPERATORS/op-bm-bm.cc (eq): Define using mx_el_eq, not operator ==. |
|
2182 (ne): Likewise, use mx_el_ne, not operator !=. |
|
2183 |
3683
|
2184 * pr-output.cc (Fdisp): Delete. |
|
2185 |
3681
|
2186 2000-06-26 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2187 |
3682
|
2188 * pr-output.cc (float_format::float_format): Set default values |
|
2189 for width and precision to -1. |
|
2190 (operator << (ostream&, pr_formatted_float&): Set width and |
|
2191 precision if values are >= 0. |
|
2192 (set_real_format, set_real_matrix_format, set_range_format, |
|
2193 set_complex_format, set_complex_matrix_format): If we have all |
|
2194 integers, infinities, or nans, set precision equal to field width. |
|
2195 |
|
2196 * load-save.cc (read_ascii_data): Allow empty strings and string |
|
2197 vectors to be restored. |
|
2198 |
3681
|
2199 * variables.cc (var_matches_any_pattern): New function. |
|
2200 (Fclear): Use it to make exclusive clear work correctly. |
|
2201 |
3676
|
2202 2000-06-08 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2203 |
3678
|
2204 * ov-range.h (octave_range::is_numeric_type): New function. |
|
2205 |
3676
|
2206 * sysdep.cc (Fkbhit): Also ask for input if forced_interactive. |
|
2207 |
3675
|
2208 2000-06-07 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2209 |
|
2210 * Makefile.in (oct-gperf.h): Use $(GPERF) instead of gperf. |
|
2211 |
3671
|
2212 2000-05-31 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2213 |
|
2214 * DLD-FUNCTIONS/qz.cc (Fqz): When computing finite generalized |
|
2215 eigenvalues, don't write past the end of the array. |
|
2216 |
3665
|
2217 2000-05-11 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2218 |
|
2219 * ov-base-nd-array.h, ov-base-nd-array.cc, ov-re-nd-array.h, |
|
2220 ov-re-nd-array.h: New files. |
|
2221 * Makefile.in: Add them to the appropriate lists. |
|
2222 |
|
2223 * pt-stmt.h, pt-stmt.cc (class tree_statement): |
|
2224 Store comments associated with this parse tree element. |
|
2225 * pt-select.h, pt-select.cc (class tree_if_clause, |
|
2226 class tree_if_command, class tree_switch_case |
|
2227 class tree_switch_command): Likewise. |
|
2228 * pt-loop.h, pt-loop.cc (class tree_while_command, |
|
2229 class tree_do_until_command, class tree_simple_for_command, |
|
2230 class tree_complex_for_command): Likewise. |
|
2231 * pt-except.h, pt-except.cc (class tree_try_catch_command, |
|
2232 class tree_unwind_protect_command): Likewise. |
|
2233 * ov-usr-fcn.h, ov-usr-fcn.cc (class octave_user_function): Likewise. |
|
2234 * pt-pr-code.h, pt-pr-code.cc (tree_print_code::print_comment_elt, |
|
2235 tree_print_code::print_comment_list, |
|
2236 tree_print_code::print_indented_comment): New functions. |
|
2237 (tree_print_code::visit_simple_for_command, |
|
2238 tree_print_code::visit_complex_for_command, |
|
2239 tree_print_code::visit_octave_user_function_header, |
|
2240 tree_print_code::visit_octave_user_function_trailer, |
|
2241 tree_print_code::visit_if_command, tree_print_code::visit_statement, |
|
2242 tree_print_code::visit_switch_case, |
|
2243 tree_print_code::visit_switch_command, |
|
2244 tree_print_code::visit_try_catch_command, |
|
2245 tree_print_code::visit_unwind_protect_command |
|
2246 tree_print_code::visit_while_command, |
|
2247 tree_print_code::visit_do_until_command): Handle comments. |
|
2248 * lex.l, parse.y: Handle comments in parse trees. |
|
2249 * comment-list.h, comment-list.cc: New files. |
|
2250 * Makefile.in: Add them to the appropriate lists. |
|
2251 |
3661
|
2252 2000-04-23 etienne grossmann <etienne@anonimo.isr.ist.utl.pt> |
|
2253 |
|
2254 * pt-mat.cc (tm_row_const::tm_row_const_rep::eval_error): |
|
2255 New args x and y, for dimension mismatch info. |
|
2256 Change callers where appropriate. |
|
2257 (tm_const::init): Report mismatched column dimensions. |
|
2258 |
3658
|
2259 2000-04-11 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2260 |
|
2261 * sysdep.cc (kbhit): Also clear cin if at EOF. |
|
2262 |
3657
|
2263 2000-04-11 Joao Cardoso <jcardoso@inescn.pt> |
|
2264 |
|
2265 * sysdep.cc (kbhit): New arg, wait. |
|
2266 (raw_mode): Ditto. |
|
2267 (Fkbhit): If given an arg, call kbhit with wait = false. |
|
2268 |
|
2269 * DLD-FUNCTIONS/minmax.cc (Fmax, Fmin): Fix doc string. |
|
2270 |
3656
|
2271 2000-04-04 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2272 |
|
2273 * dynamic-ld.cc (octave_dynamic_loader::do_load): Undo previous change. |
|
2274 |
3655
|
2275 2000-04-03 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2276 |
|
2277 * dynamic-ld.cc (octave_dynamic_loader::do_load): Also fail with |
|
2278 error message if we don't find the mangled function name in the |
|
2279 file. |
|
2280 |
3652
|
2281 2000-03-31 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2282 |
3653
|
2283 * oct-stream.cc (printf_value_cache::string_value): Return string |
|
2284 matrices in a Matlab-compatible way. |
|
2285 (printf_value_cache): Redesign the way list_exhausted works. |
|
2286 |
3652
|
2287 * oct-fstrm.cc (octave_fstream::do_close): New function. |
|
2288 * oct-stdstrm.cc (octave_istdiostream::do_close): Ditto. |
|
2289 (octave_ostdiostream::do_close): Ditto. |
|
2290 * c-file-ptr-stream.cc (c_file_ptr_buf::close): Ditto. |
|
2291 (i_c_file_ptr_stream::close): Ditto. |
|
2292 (o_c_file_ptr_stream::close): Ditto. |
|
2293 * oct-prcstrm.cc (octave_iprocstream::do_close): Ditto. |
|
2294 (octave_oprocstream::do_close): Ditto. |
|
2295 (octave_iprocstram::~octave_iprocstram): Call do_close here. |
|
2296 (octave_iprocstram::~octave_oprocstram): Likewise. |
|
2297 |
|
2298 * oct-stream.h (octave_base_stream::do_close): New virtual function. |
|
2299 (octave_base_stream::close): If stream is open, call do_close. |
|
2300 |
|
2301 * c-file-ptr-stream.cc (c_file_ptr_buf::flush): New function. |
|
2302 (c_file_ptr_buf::~c_file_ptr_buf): Use it. |
|
2303 (c_file_ptr_buf::overflow): Ditto. |
|
2304 (c_file_ptr_buf::sync): Ditto. |
|
2305 |
3649
|
2306 2000-03-30 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2307 |
|
2308 * oct-procbuf.cc (octave_procbuf::open): Make output streams line |
|
2309 buffered. |
|
2310 |
3640
|
2311 2000-03-24 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2312 |
3644
|
2313 * sighandlers.cc (my_friendly_exit): Prefix failure messages with |
|
2314 panic instead of error. |
|
2315 |
3642
|
2316 * c-file-ptr-stream.cc (c_file_ptr_buf::~c_file_ptr_buf): |
|
2317 Avoid dereferencing NULL pointer. |
|
2318 |
3640
|
2319 * oct-stream.cc (printf_format_list::add_elt_to_list, |
|
2320 printf_format_list::process_conversion, |
|
2321 printf_format_list::finish_conversion): New args, flags, fw, and prec. |
|
2322 (printf_format_list::printf_format_list): Save more complete info. |
|
2323 (printf_format_list::printme): Print flags, fw, and prec. |
|
2324 (octave_base_stream::printf): Simplify. |
|
2325 (do_printf_conv): Delete have_arg arg, since it is always true now. |
|
2326 (octave_base_stream::do_printf): Handle case of no args and % |
|
2327 directly instead of using do_printf_conv. |
|
2328 (printf_value_cache::exhausted): Rename from no_more_values. |
|
2329 (DO_PCT_CONVERSION): New macro |
|
2330 (octave_base_streain::do_scanf, octave_base_streain::do_oscanf): |
|
2331 Use it. |
|
2332 (scanf_format_list::finish_conversion): `%' counts as a conversion too. |
|
2333 Also don't forget to set type for it. |
|
2334 (OCTAVE_SCAN_0): Delete. |
|
2335 (OCTAVE_SCAN): Rename from OCTAVE_SCAN_1. |
|
2336 (octave_base_stream::scanf, octave_base_stream::oscanf): Don't |
|
2337 special-case number of conversions here. |
|
2338 (octave_base_stream::oscanf, octave_base_stream::do_oscanf): Only |
|
2339 cycle through fmt elements if the number of conversions is greater |
|
2340 than 0. |
|
2341 |
|
2342 * oct-stream.h (scanf_format_list::next): New arg, `cycle'. |
|
2343 (printf_format_list::next): New arg, `cycle'. |
|
2344 (printf_format_list::last_elt_p): New function. |
|
2345 (printf_format_elt): New fields fw, prec, and flags. |
|
2346 Define copy constructor and assignment operator. |
|
2347 (scanf_format_elt): Define copy constructor and assignment operator. |
|
2348 |
3627
|
2349 2000-03-23 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2350 |
3639
|
2351 * oct-stream.cc (OCTAVE_SCAN_0, OCTAVE_SCAN_1): New macros. |
|
2352 (do_scanf_conv, BEGIN_S_CONVERSION, BEGIN_CHAR_CLASS_CONVERSION, |
|
2353 do_scanf, scanf, do_oscanf, do_oscanf, oscanf): Use them instead |
|
2354 of calling istream::scan directly. |
|
2355 (octave_scan): New function. |
|
2356 (do_scanf_conv): Second arg is now scanf_format_elt instead of char*. |
|
2357 Change all callers. |
|
2358 |
3631
|
2359 * oct-procbuf.h, oct-procbuf.cc (octave_procbuf): |
|
2360 Derive from c_file_ptr_buf instead of filebuf. |
|
2361 |
3627
|
2362 * oct-stream.cc (octave_base_stream::printf): Use octave_format |
|
2363 instead of ostream::form. Return number of characters written. |
|
2364 |
3618
|
2365 2000-03-22 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2366 |
3620
|
2367 * oct-stream.cc (do_printf_conv): Use octave_format instead of |
|
2368 ostream::form. Return number of characters written. |
|
2369 (octave_base_stream::do_printf): Return number of characters written. |
|
2370 |
|
2371 * error.cc (verror, vwarning): Use octave_format instead of |
|
2372 ostream::vform. |
|
2373 |
|
2374 * utils.cc (octave_format, octave_vformat): New functions. |
|
2375 * cutils.c (octave_snprintf, octave_vsnprintf): New functions. |
|
2376 |
3618
|
2377 * oct-lvalue.h (dummy_val): New static variable. |
|
2378 (octave_lvalue::octave_lvalue): Use it to initialize val. |
|
2379 |
|
2380 * variables.cc (is_valid_function): Look in the global symbol |
|
2381 table for functions. |
|
2382 |
3615
|
2383 2000-03-21 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2384 |
3770
|
2385 * Makefile.in (LIBRARIES): Conditionally define. |
3615
|
2386 (libraries): Depend on $(LIBRARIES). |
|
2387 (octave): Depend on $(LIBRARIES), not libraries. Also depend on |
|
2388 stamp-prereq and stamp-oct-links. |
|
2389 (all): Don't depend on stamp-prereq or stamp-oct-links. |
|
2390 (liboctinterp.$(LIBEXT), liboctinterp.$(SHELXT)): Delete target |
|
2391 before rebuilding. |
|
2392 |
|
2393 2000-03-21 Ben Sapp <bsapp@nua.lampf.lanl.gov>: |
|
2394 |
3770
|
2395 * Makefile.in (libraries): Depend only on library targets, not |
3615
|
2396 archive members. |
|
2397 |
3611
|
2398 2000-03-17 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2399 |
3613
|
2400 * Makefile.in (objects): New target |
|
2401 |
3611
|
2402 * c_file_ptr_stream.h, c_file_ptr_stream.cc: New files. |
|
2403 * oct-stdstrm.h, oct-stdstrm.cc, oct-prcstrm.cc: |
|
2404 Use c_file_ptr_buf, i_c_file_ptr_stream, and o_c_fie_ptr_stream |
|
2405 instead of stdiobuf, istdiostream, and ostdiostream. |
|
2406 |
|
2407 * pr-output.cc (set_real_format, set_real_matrix_format, |
|
2408 set_complex_format, set_complex_matrix_format, set_range_format): |
|
2409 Do the right thing again for int, NaN, and Inf values. |
|
2410 |
3608
|
2411 2000-03-14 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2412 |
|
2413 * pr-output.cc (pr_plus_format): Rename from do_plus_format. |
|
2414 Change all callers. |
|
2415 (pr_float, pr_complex): New arg, scale. Handle scaling here. |
|
2416 (float_format): New class for managing details of formatting |
|
2417 floats. Use it instead of character string formats and the |
|
2418 nonstandard form() function from the GNU iostream library. |
|
2419 |
3601
|
2420 2000-02-23 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2421 |
|
2422 * Makefile.in (clean): Also delete gendoc. |
|
2423 |
3598
|
2424 2000-02-18 James R. Van Zandt <jrv@vanzandt.mv.com> |
|
2425 |
|
2426 * load-save.cc (Vcrash_dumps_octave_core): Fix comment for this var. |
|
2427 |
|
2428 2000-02-18 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2429 |
|
2430 * lex.l (handle_number): Don't transorm `[Dd]' to `e' if reading |
|
2431 hex. |
|
2432 |
3597
|
2433 2000-02-11 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2434 |
|
2435 * Makefile.in (install-inc): Install files in |
|
2436 $(octincludedir)/octave. |
|
2437 (uninstall): Remove them from the correct directory too. |
|
2438 |
|
2439 * defaults.h, defaults.cc (Vlocal_ver_arch_lib_dir): New variable. |
|
2440 * defaults.cc (set_default_local_ver_arch_lib_dir): New function. |
|
2441 (install_defaults): Call it. |
|
2442 (exec_path): Prepend the versioned form of the local arch lib |
|
2443 directory to the standard path. |
|
2444 * defaults.h.in (OCTAVE_LOCALVERARCHLIBDIR, |
|
2445 OCTAVE_LOCALVERFCNFILEDIR, OCTAVE_LOCALVEROCTFILEDIR): |
|
2446 Substitute these too. |
|
2447 * toplev.cc (Foctave_config_info): Add them to the struct. |
|
2448 |
3591
|
2449 2000-02-08 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2450 |
3597
|
2451 * toplev.cc (Foctave_config_info): Add MKOCTFILE_INCFLAGS to the |
|
2452 struct. |
3591
|
2453 * oct-conf.h.in (OCTAVE_CONF_MKOCTFILE_INCFLAGS): Define. |
|
2454 |
3584
|
2455 2000-02-07 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2456 |
3587
|
2457 * DLD-FUNCTIONS/balance.cc (Fbalance): Explicitly request |
|
2458 conversion from Matrix to ComplexMatrix. |
|
2459 * DLD-FUNCTIONS/qz.cc (Fqz): Likewise. |
|
2460 |
|
2461 * ov-re-mat.h (octave_matrix::complex_matrix_value): Explicitly |
|
2462 request conversion from Matrix type. |
|
2463 |
|
2464 * ov-ch-mat.h (octave_char_matrix::matrix_value): Explicitly |
|
2465 request conversion from charMatrix type. |
|
2466 (octave_char_matrix::complex_matrix_value): Likewise. |
|
2467 * ov-bool-mat.h (octave_bool_matrix::matrix_value): Likewise. |
|
2468 (octave_bool_matrix::complex_matrix_value): Likewise. |
|
2469 |
|
2470 * ov-range.h (octave_range::complex_matrix_value): Explicitly |
|
2471 request conversion from Matrix type. |
|
2472 |
|
2473 * ov-cx-mat.h, ov-re-mat.h: Explicitly request conversions from |
|
2474 diagonal matrix types in constructors. |
|
2475 |
3586
|
2476 * mappers.cc (ximag, xreal): Return double, not Complex. |
|
2477 |
3585
|
2478 * error.cc (panic): Turn off buffering of error messages. |
|
2479 Don't call flush_octave_stdout here, verror will do it for us. |
|
2480 (verror): Don't call flush_octave_stdout if buffering error messages. |
|
2481 |
3584
|
2482 * pt-except.cc (tree_try_catch_command::eval): Only restore |
|
2483 buffer_error_message value (by running the unwind_protect element |
|
2484 for it) if it has been saved. |
|
2485 |
|
2486 * help.cc (Ftype): Return value if nargout is NOT equal to zero. |
|
2487 Delete unnecessary unwind_protect::begin_frame(). |
|
2488 |
|
2489 * toplev.cc (octave_config_info): Stuff lots of new config info in |
|
2490 the struct. |
|
2491 |
|
2492 * oct-conf.h.in: Delete TARGET_HOST_TYPE. |
|
2493 |
3574
|
2494 2000-02-04 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2495 |
3579
|
2496 * siglist.c: Include <signal.h>. |
|
2497 |
3575
|
2498 * lex.l (is_plot_keyword): Add minimum match length in call to |
|
2499 almost_match. |
|
2500 |
3574
|
2501 * Makefile.in (%.df : %.cc): Don't pass -c to compiler. |
|
2502 |
3564
|
2503 2000-02-03 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2504 |
3572
|
2505 * ov-base-mat.cc: Include pr-output.h here. |
|
2506 |
3571
|
2507 * DLD-FUNCTIONS/rand.cc (curr_rand_dist): Return const char * |
|
2508 instead of char *. |
|
2509 |
3570
|
2510 * oct-fstrm.cc (octave_fstream::seek, octave_fstream::tell): |
|
2511 Call pubseekoff instead of seekoff. |
|
2512 |
3568
|
2513 * DLD-FUNCTIONS/dassl.cc (print_dassl_option_list): Use stream |
|
2514 manipulators instead of GNU iostream-specific form function. |
|
2515 * DLD-FUNCTIONS/fsolve.cc (print_fsolve_option_list): Ditto. |
|
2516 * DLD-FUNCTIONS/lsode.cc (print_lsode_option_list): Ditto. |
|
2517 * DLD-FUNCTIONS/quad.cc (print_quad_option_list): Ditto. |
|
2518 * pr-output.cc (pr_scale_header): Ditto. |
|
2519 |
3566
|
2520 * sighandlers.h: Include signal.h here. |
|
2521 * sighandlers.cc: Not here. |
|
2522 |
|
2523 * utils.cc: Include setjmp.h, not csetjmp. |
|
2524 * toplev.cc: Ditto. |
|
2525 |
|
2526 * sighandlers.cc: Include signal.h, not csignal. |
|
2527 |
|
2528 * pt-plot.h: Don't include csignal. |
|
2529 * toplev.cc: Ditto. |
|
2530 * oct-hist.cc: Ditto. |
|
2531 * octave.cc: Ditto. |
|
2532 * pager.cc: Ditto. |
|
2533 * input.cc: Ditto. |
|
2534 * help.cc: Ditto. |
|
2535 |
3565
|
2536 * pt-plot.cc (send_to_plot_stream): Use operator== and substr |
|
2537 method to do limited-length string comparison. |
|
2538 * input.cc (generate_completion): Likewise. |
|
2539 * ov-dld-fcn.cc (octave_dld_function::octave_dld_function): Likewise. |
|
2540 * ov-usr-fcn.cc (octave_user_function::mark_as_system_fcn_file): |
|
2541 Likewise. |
|
2542 |
|
2543 * utils.cc (check_preference): Expect exact string matches. |
|
2544 * variables.cc (ignore_function_time_stamp): Likewise. |
|
2545 * lex.l (whitespace_in_literal_matrix): Likewise. |
|
2546 |
3564
|
2547 * mappers.cc (xconj, ximag, xreal): New functions. Use them in |
|
2548 DEFUN_MAPPER calls. |
|
2549 |
|
2550 * defun-int.h (DEFUN_MAPPER_INTERNAL): Cast function pointer args |
|
2551 to octave_mapper constructor. |
|
2552 |
3523
|
2553 2000-02-02 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2554 |
3564
|
2555 * procstream.cc (procstreambase::procstreambase, |
|
2556 procstreambase::open, procstreambase::close): |
|
2557 Call std::ios::setstate, not set. |
|
2558 |
3561
|
2559 * lex.l (plot_axes_token): Declare plot_axes as const char *. |
|
2560 Declare tmp const char **. |
|
2561 |
3560
|
2562 * oct-procbuf.h: Include fstream, not streambuf.h. |
|
2563 |
3570
|
2564 * load-save.cc (Fsave): Call pubseekoff instead of seekoff. |
3558
|
2565 * oct-strstrm.cc (octave_base_strstream::tell): Likewise. |
|
2566 (octave_base_strstream::seek): Likewise. |
|
2567 |
3553
|
2568 * oct-stream.cc (octave_base_stream::read): Rename count to char_count. |
|
2569 (octave_base_stream::do_gets): Likewise. |
|
2570 |
|
2571 * octave-stream.cc (octave_base_stream::write): Rename flt_fmt to ffmt. |
|
2572 (octave_base_stream::read): Likewise. |
|
2573 |
3552
|
2574 * TEMPLATE-INST/SLStack-sym.cc: Delete meaningless `extern |
|
2575 template' declarations. |
|
2576 * TEMPLATE-INST/Array-tc.cc: Ditto. |
|
2577 |
|
2578 * TEMPLATE-INST/Map-fnc.cc: Don't try to instantiate goodCHptr or |
|
2579 CHptr_to_index here. |
|
2580 * TEMPLATE-INST/Map-tc.cc: Likewise. |
3554
|
2581 * Map.h (CHNode::goodCHptr, CHNode::CHptr_to_index): Now member |
|
2582 functions. Change all callers. |
3552
|
2583 |
|
2584 * load-save.cc (read_binary_file_header): Declare magic_len `const'. |
|
2585 |
|
2586 * token.h (token::token (const token&), token::operator=): |
|
2587 Delete unnecessary definitions. |
|
2588 |
|
2589 * oct-stream.cc (octave_stream::mode_as_string): Use |
|
2590 std::ios::binary, not std::ios::bin. |
|
2591 * load-save.cc (Fsave, Fload, save_user_variables): Likewise. |
|
2592 |
3550
|
2593 * DLD-FUNCTIONS/qz.cc (Fqz): Use Array<int> class instead of |
|
2594 trying to create automatic int array with variable size. |
|
2595 |
3548
|
2596 * variables.cc (F__dump_symbol_info__): Fix continuation char. |
3552
|
2597 * mappers.cc (Ftoupper): Likewise. |
3548
|
2598 * DLD-FUNCTIONS/besselj.cc (Fairy, Fbesselj): Likewise. |
|
2599 * DLD-FUNCTIONS/chol.cc (Fchol): Likewise. |
|
2600 * DLD-FUNCTIONS/det.cc (Fdet): Likewise. |
|
2601 * DLD-FUNCTIONS/eig.cc (Feig): Likewise. |
|
2602 * DLD-FUNCTIONS/gammainc.cc (gammainc): Likewise. |
|
2603 * DLD-FUNCTIONS/givens.cc (givens): Likewise. |
|
2604 * DLD-FUNCTIONS/hess.cc (hess): Likewise. |
|
2605 * DLD-FUNCTIONS/inv.cc (inv): Likewise. |
|
2606 * DLD-FUNCTIONS/log.cc (logm): Likewise. |
|
2607 * DLD-FUNCTIONS/lu.cc (lu): Likewise. |
|
2608 * DLD-FUNCTIONS/qr.cc (qr): Likewise. |
|
2609 * DLD-FUNCTIONS/schur.cc (schur): Likewise. |
|
2610 * DLD-FUNCTIONS/balance.cc (balance): Likewise. |
|
2611 * DLD-FUNCTIONS/svd.cc (svd): Likewise. |
|
2612 * DLD-FUNCTIONS/syl.cc (syl): Likewise. |
|
2613 * DLD-FUNCTIONS/expm.cc (Fexpm): Likewise. |
|
2614 |
|
2615 * token.h (token::token_type, token::end_tok_type, |
|
2616 token::plot_tok_type): Delete extraneous comma from enum decls. |
3552
|
2617 * load-save.cc (load_save_format): Likewise. |
3548
|
2618 |
3546
|
2619 * pt-idx.cc (tree_index_expression::tree_index_expression): |
|
2620 Delete default arg values. |
3552
|
2621 * oct-fstrm.cc (octave_fstream::octave_fstream): Likewise. |
|
2622 * oct-stream.cc (octave_stream::octave_stream): Likewise. |
3546
|
2623 |
|
2624 * siglist.h, siglist.c: New files. |
|
2625 * Makefile.in: Add them to the appropriate lists. |
|
2626 * siglist.c (sys_siglist): Move definition here from sighandlers.cc. |
|
2627 * siglist.h (sys_siglist): Move declaration here from sighandlers.h. |
|
2628 |
3545
|
2629 * ov.h, ov-bool.h, ov-bool-mat.h (bool_matrix_value): |
|
2630 Delete unnecessary arg. |
|
2631 |
3544
|
2632 * ov.h (octave_value::do_multi_index_op): Rename from do_index_op. |
|
2633 |
|
2634 * ov-fcn.h (octave_function::is_system_fcn_file): Now const. |
|
2635 |
3529
|
2636 * Map.cc (index_to_CHptr): Now a macro. |
3530
|
2637 (CHMap<C>::hash): Now a member function. |
3529
|
2638 |
3528
|
2639 * defun-int.h (UNDERSCORIFY): New macro. |
|
2640 (DEFCONST_INTERNAL, DEFCONSTX_INTERNAL): Use it. |
|
2641 |
3526
|
2642 * data.cc (Fis_list): Fix continuation char. |
3532
|
2643 * defaults.cc (IMAGEPATH): Likewise. |
3526
|
2644 |
|
2645 * Map.cc (CHptr_to_index, goodCHptr): Delete static decl. |
|
2646 |
3525
|
2647 * ov.h (unary_op, binary_op, assign_op): Prepend `op_' to elts. |
|
2648 Change all usses |
|
2649 |
3523
|
2650 * All source files: Sprinkle with std:: qualifier as needed. |
|
2651 |
3503
|
2652 2000-01-31 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2653 |
|
2654 * sighandlers.cc (install_signal_handlers): Add std:: qualifier |
|
2655 for set_net_handler. |
|
2656 |
|
2657 * All source files: Include iostream, fstream, strstream, |
|
2658 etc. as needed instead of using forward declarations for these |
|
2659 classes. |
|
2660 |
3498
|
2661 2000-01-30 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2662 |
|
2663 * input.cc (input_event_hook, Finput_event_hook): New functions. |
|
2664 (hook_fcn, user_data): New static variables. |
|
2665 |
3489
|
2666 2000-01-28 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2667 |
3491
|
2668 * pt-except.cc (do_catch_code): Don't do anything special for |
|
2669 tree_return_command::returning, or tree_break_command::breaking. |
|
2670 |
|
2671 * error.cc (vwarning): New function. |
|
2672 (warning): Use it instead of calling verror. |
|
2673 |
|
2674 * oct-stream.cc (octave_base_stream::oscanf): |
|
2675 Result is now always nconv+1 elements. Return count of successful |
|
2676 conversions in last element. |
|
2677 * file-io.cc (Ffscanf, Fsscanf, Fscanf): Fix doc string. |
|
2678 |
3490
|
2679 * pt-except.cc (do_catch_code): Unwind-protect buffer_error_messages. |
|
2680 Be sure to run all unwind-protects before returning. |
|
2681 (tree_try_catch_command::eval): Add do_catch_code cleanup function |
|
2682 to unwind-protect stack before resetting buffer_error_messages. |
|
2683 Use unwind-protect to save and restore buffer_error_messages. |
|
2684 If there is no catch code, discard the cleanup function and run |
|
2685 the unwind-protect for buffer_error_messages. |
|
2686 |
|
2687 * error.cc (bind_global_error_variable): Avoid dereferencing |
|
2688 error_message_buffer if it is NULL. |
|
2689 |
3489
|
2690 * parse.y (evaluating_function_body): New global flag. |
|
2691 * ov-usr-fcn.cc (octave_user_function::do_index_op): |
|
2692 Protect and set it here. |
|
2693 * parse.y (make_break_command, make_return_command): Check it here. |
|
2694 |
|
2695 * error.cc (warning_state): New global flag. |
|
2696 (warning): Set it here. |
|
2697 * lex.l (reset_parser): Clear it here. |
|
2698 * parse.y (fold): Check it here. |
|
2699 |
3484
|
2700 2000-01-27 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2701 |
3485
|
2702 * pt-walk.h (tree_walker::visit_do_until_command): New pure virtual. |
|
2703 * pt-pr-code.cc (tree_print_code::visit_do_until_command): |
3484
|
2704 New function. |
3485
|
2705 * pt-loop.h (tree_do_until_command): New class. |
3484
|
2706 (tree_while_command::expr, tree_while_command::list): |
|
2707 Now protected instead of private. |
3485
|
2708 * parse.y (make_do_until_command): New function. |
|
2709 (loop_command): Recognize do-until statement. |
3484
|
2710 (DO, UNTIL): New tokens. |
|
2711 |
|
2712 * input.cc (match_sans_spaces): Require non-blank part of test |
|
2713 string to match standard string exactly. |
|
2714 |
3483
|
2715 2000-01-26 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2716 |
|
2717 * oct-stream.h (scanf_format_elt::char_class): New struct elt. |
|
2718 Add arg to constructor. |
|
2719 (scanf_format_elt::special_conversion): New enum. |
|
2720 * oct-stream.cc (scanf_format_list::add_elt_to_list): New arg, |
|
2721 char_class. Pass it to scanf_format_elt constructor. |
|
2722 (scanf_format_list::scanf_format_list): Create separate list |
|
2723 elements for whitespace and literal conversions. |
|
2724 (expand_char_class): New function. |
|
2725 (scanf_format_list::finish_conversion): Extract character class |
|
2726 (not including the delimiting brackets) and expand the list of |
|
2727 characters. Pass the result to add_elt_to_list. |
|
2728 (scanf_format_list::all_character_conversions): Also accept '^', |
|
2729 scanf_format_elt::literal_conversion, and |
|
2730 scanf_format_elt::whitespace_conversion types too. |
|
2731 (DO_WHITESPACE_CONVERSION, BEGIN_CHAR_CLASS_CONVERSION, |
|
2732 BEGIN_C_CONVERSION, BEGIN_S_CONVERSION, DO_LITERAL_CONVERSION): |
|
2733 New macros. |
|
2734 (octave_base_stream::do_scanf, octave_base_stream::do_oscanf): |
|
2735 Use them to avoid code duplication. |
|
2736 Handle whitespace, literal text, and character class conversions. |
|
2737 (octave_base_stream::oscanf): Loop over all format list elements, |
|
2738 not just the first nconv elements. Clear status flags on is for |
|
2739 all streams. |
|
2740 |
3476
|
2741 2000-01-25 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2742 |
3480
|
2743 * xdiv.cc (result_ok): Just check value of info. |
|
2744 (solve_singularity_warning): New function. |
|
2745 (xleftdiv, xdiv): Pass pointer to solve_singularity_warning to |
|
2746 solve function. |
|
2747 |
|
2748 * lex.l (handle_identifier): Set next_tok_is_eq if we are looking |
|
2749 at `=', but not if we are looking at `=='. |
|
2750 |
3478
|
2751 * pt-pr-code.cc (tree_print_code::visit_unwind_protect_command): |
|
2752 Print `unwind_protect_cleanup', not `cleanup_code'. |
|
2753 |
3477
|
2754 * pager.cc (octave_pager_buf::flush_current_contents_to_diary): |
|
2755 New function. |
|
2756 (octave_pager_stream::flush_current_contents_to_diary): |
|
2757 Ditto. |
|
2758 (close_diary_file): Use the new octave_pager_stream function to |
|
2759 try to flush the current buffer to the diary when it is closed. |
|
2760 |
3476
|
2761 * variables.cc (Fexist): Return 6 for built-in constants. |
|
2762 |
|
2763 * pt-plot.cc (Fgshow): Don't append " " after last arg. |
|
2764 (Fgset): Likewise. |
|
2765 |
3472
|
2766 2000-01-23 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2767 |
|
2768 * ov-base-mat.h (octave_base_matrix::length): Return 0 for empty |
|
2769 arrays. |
|
2770 |
3465
|
2771 2000-01-20 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2772 |
|
2773 * DLD-FUNCTIONS/time.cc (Fstrptime): New function. |
|
2774 |
|
2775 * load-save.cc (Fsave): Add missing else. |
|
2776 |
3442
|
2777 2000-01-17 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2778 |
3444
|
2779 * DLD-FUNCTIONS/gammainc.cc (Fgammainc): Texinfoize doc string. |
3445
|
2780 * ov-typeinfo.cc (Ftypeinfo): Ditto. |
3446
|
2781 * parse.y (Vwarn_future_time_stamp): Ditto. |
|
2782 * DLD-FUNCTIONS/minmax.cc (Fmax, Fmin): Ditto. |
3445
|
2783 * ov-usr-fcn.cc (Fva_arg, Fva_start, Fvr_val): Ditto. |
3446
|
2784 * defaults.cc (VOCTAVE_HOME, Frehash): Ditto. |
|
2785 * toplev.cc (Fwarranty, Fcasesen): Ditto. |
|
2786 * utils.cc (Fdo_string_escapes, Ffile_in_loadpath): Ditto. |
|
2787 * variables.cc (F__dump_symtab_info__, F__dump_symbol_info__): Ditto. |
3447
|
2788 * ov-list.cc (Flist, Fappend, Fnth, Freverse, Fsplice): Ditto. |
3448
|
2789 * input.cc (Fread_readline_init_file): Ditto. |
|
2790 * file-io.cc (Fis_stream): Ditto. |
|
2791 * ov-cell.cc (Fiscell, Fcell): Ditto. |
|
2792 * pt-assign.cc (Vprint_rhs_assign_val): Ditto. |
|
2793 * pt-decl.cc (Vinitialize_global_variables): Ditto. |
|
2794 * symtab.cc (Vvariables_can_hide_functions): Ditto. |
3443
|
2795 |
3442
|
2796 * pt-plot.cc (Fgraw, Fgset, Fgshow, Vgnuplot_command_plot, |
|
2797 Vgnuplot_command_replot, Vgnuplot_command_splot, |
|
2798 Vgnuplot_command_using, Vgnuplot_command_with, |
|
2799 Vgnuplot_command_axes, Vgnuplot_command_title, |
|
2800 Vgnuplot_command_end): Texinfoize doc strings. |
|
2801 |
3447
|
2802 * oct-procbuf.cc (__kluge_procbuf_delay__): Rename from |
|
2803 kluge_procbuf_delay. Texinfoize doc string. |
|
2804 |
3427
|
2805 2000-01-13 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2806 |
|
2807 * parse.y (gobble_leading_whitespace): Discard first space character |
|
2808 after consecutive comment characters. |
|
2809 * lex.l (grab_help_text): Ditto. |
|
2810 |
3428
|
2811 * lex.l (Vwhitespace_in_literal_matrix, Vwarn_separator_insert, |
|
2812 Vwarn_single_quote_string): Texinfoize doc string. |
|
2813 |
3418
|
2814 2000-01-11 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2815 |
3419
|
2816 * ov.h, ov.cc (octave_value::column_vector_value, |
|
2817 octave_value::row_vector_value, |
|
2818 octave_value::complex_column_vector_value, |
|
2819 octave_value::complex_row_vector_value): New functions. |
|
2820 (octave_value::vector_value): Now returns Array<double>. |
|
2821 (octave_value::complex_vector_value): Now returns Array<Complex>. |
|
2822 Sprinkle conversions where necessary. |
|
2823 |
3418
|
2824 * ov.cc (Vprefer_column_vectors): Now static. |
|
2825 * ov.h (octave_value (const ComplexRowVector&), |
|
2826 octave_value (const ComplexColumnVector&), |
|
2827 octave_value (const RowVector&), octave_value (const ColumnVector&)): |
|
2828 Delete second arg. Change all callers. |
3419
|
2829 |
3418
|
2830 * oct-obj.h (octave_value_list (const RowVector&), |
|
2831 octave_value_list (const ColumnVector&), |
|
2832 octave_value_list (const ComplexRowVector&), |
|
2833 octave_value_list (const ComplexColumnVector&)): Likewise. |
|
2834 * ov-cx-mat.h, ov-cx-mat.cc |
|
2835 (octave_complex_matrix (const ComplexRowVector&), |
|
2836 (octave_complex_matrix (const ComplexColumnVector&)): |
|
2837 Delete second arg, simply create object with orientation |
|
2838 corresponding to vector arg. Move constructors to class decl. |
|
2839 * ov-re-mat.h, ov-re-mat.cc (octave_matrix (const RowVector&), |
|
2840 (octave_matrix (const ColumnVector&)): |
|
2841 Delete second arg, simply create object with orientation |
|
2842 corresponding to vector arg. Move constructors to class decl. |
|
2843 |
3411
|
2844 2000-01-07 Ben Sapp <bsapp@nua.lampf.lanl.gov> |
|
2845 |
|
2846 * mappers.cc (Fconj, Ferf, Ferfc, Fgamma, Fimag, Flgamma, Flog10, |
|
2847 Freal, Fround): Add @seealso{...} to doc strings. |
|
2848 |
3408
|
2849 2000-01-06 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2850 |
3410
|
2851 * oct-stream.cc (do_scanf): Do the right thing again for character |
|
2852 conversions. |
|
2853 |
3408
|
2854 * help.cc (display_help_text): Also strip out leading spaces |
|
2855 before Texinfo @-commands before sending doc string to makeinfo. |
|
2856 (display_help_text): Improve format of `See also' string. |
|
2857 |
3405
|
2858 2000-01-05 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2859 |
|
2860 * help.cc (display_help_text): Pass a definition for @seealso |
|
2861 through the filter. |
|
2862 |
3400
|
2863 1999-12-22 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2864 |
|
2865 * lex.l (Vwarn_single_quote_string): New variable. |
|
2866 (syms_of_lex): DEFVAR it. |
|
2867 (warn_single_quote_string): New function. |
|
2868 (gripe_single_quote_string): New function. |
|
2869 Use new stuff to allow warnings for code that uses single quote |
|
2870 characters to introduce string constants. |
|
2871 |
3399
|
2872 1999-12-20 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2873 |
|
2874 * mkbuiltins: Add #undef quad to generated file. |
|
2875 |
3388
|
2876 1999-12-15 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2877 |
|
2878 * lex.l (Vwarn_separator_insert): New variable. |
|
2879 (syms_of_lex): DEFVAR it. |
|
2880 (warn_separator_insert): New function. |
|
2881 (maybe_warn_separator_insert): New function. |
|
2882 Use new stuff to allow warnings for code that might result in |
|
2883 auto-insertion of commas or semicolons, depending on the value of |
|
2884 whitespace_in_literal_matrix. |
|
2885 |
|
2886 * parse.y (Fsource): Record function file name here too. |
|
2887 |
3377
|
2888 1999-12-13 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2889 |
|
2890 * variables.cc (link_to_global_variable): If the local symbol is |
|
2891 not a variable, don't bother to clear it. Instead, just redefine |
|
2892 it by aliasing to the global symbol. |
|
2893 |
3372
|
2894 1999-11-23 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2895 |
3373
|
2896 * DLD-FUNCTIONS/balance.cc (Fbalance): Texinfoize doc string. |
|
2897 * DLD-FUNCTIONS/det.cc (Fdet): Ditto. |
|
2898 * DLD-FUNCTIONS/eig.cc (Feig): Ditto. |
|
2899 * DLD-FUNCTIONS/givens.cc (Fgivens): Ditto. |
|
2900 * DLD-FUNCTIONS/inv.cc (Finv): Ditto. |
|
2901 * DLD-FUNCTIONS/chol.cc (Fchol): Ditto. |
|
2902 * DLD-FUNCTIONS/hess.cc (Fhess): Ditto. |
|
2903 * DLD-FUNCTIONS/lu.cc (Flu): Ditto. |
|
2904 * DLD-FUNCTIONS/qr.cc (Fqr): Ditto. |
|
2905 * DLD-FUNCTIONS/schur.cc (Fschur): Ditto. |
|
2906 * DLD-FUNCTIONS/svd.cc (Fsvd): Ditto. |
|
2907 * DLD-FUNCTIONS/expm.cc (Fexpm): Ditto. |
|
2908 * DLD-FUNCTIONS/log.cc (Flogm, Fsqrtm): Ditto. |
|
2909 * DLD-FUNCTIONS/syl.cc (Fsyl): Ditto. |
|
2910 * DLD-FUNCTIONS/pinv.cc (Fpinv): Ditto. |
|
2911 * DLD-FUNCTIONS/qz.cc (Fqz): Ditto. |
|
2912 * DLD-FUNCTIONS/dassl.cc (Fdassl, Fdassl_options): Ditto. |
|
2913 * DLD-FUNCTIONS/lsode.cc (Flsode, Flsode_options): Ditto. |
|
2914 * data.cc (Flength, Fsize, Fisempty): Ditto. |
3372
|
2915 * sysdep.cc (Fkbhit): Ditto. |
|
2916 * input.cc (Fkeyboard, Finput): Ditto. |
|
2917 * variables.cc (ans): Ditto. |
|
2918 * pr-output.cc (Fdisp, Fformat): Ditto. |
|
2919 * ov.cc (Vprint_answer_id_name): Ditto. |
3373
|
2920 * defaults.cc (IMAGEPATH): Ditto. |
|
2921 * error.cc (Ferror, Fwarning, Fusage, error_text, beep_on_error): |
|
2922 Ditto. |
3372
|
2923 * load-save.cc (Fload, Fsave, Vdefault_save_format, |
|
2924 Vsave_precision): Ditto. |
|
2925 * file-io.cc (Ffflush, Ffopen, Ffclose, Ffputs, Ffgetl, Ffgets, |
|
2926 Ffprintf, Fsprintf, Fscanf, Ffscanf, Fsscanf, Ffread, Ffwrite, |
|
2927 Ffseek, Fftell, Ffeof, Fferror, Ffreport, Ftmpnam, Vstdin_file, |
|
2928 Vstdout_file, Vstderr_file, SEEK_SET, SEEK_CUR, SEEK_END): Ditto. |
|
2929 * pager.cc (Vpager_binary, Vpage_output_immediately, |
|
2930 Vpage_screen_output, Fmore): Ditto. |
|
2931 |
3369
|
2932 1999-11-21 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2933 |
|
2934 * utils.cc (Vtreat_neg_dim_as_zero): Texinfoize doc string. |
|
2935 * DLD-FUNCTIONS/find.cc (Ffind): Ditto. |
|
2936 * DLD-FUNCTIONS/rand.cc (Frand, Frandn): Ditto. |
|
2937 * DLD-FUNCTIONS/sort.cc (Fsort): Ditto. |
|
2938 * mappers.cc (Fisinf, Fisnan, Ffinite): Ditto. |
|
2939 * data.cc (Fall, Fany, Fdiag, Fones, Fzeros, Feye, Flinspace): Ditto. |
3371
|
2940 * defaults.cc (Vloadpath, Vdefault_loadpath): Ditto. |
|
2941 * parse.y (Feval, Ffeval, Vdefault_eval_print_flag, |
|
2942 Vwarn_missing_semicolon, Vwarn_function_name_clash, Fsource): Ditto. |
|
2943 * ov-usr-fcn.cc (Vmax_recursion_depth, Vdefault_return_value, |
|
2944 Vdefine_all_return_values, Vreturn_last_computed_value): Ditto. |
|
2945 * ov.cc (Vok_to_lose_imaginary_part, Vdo_fortran_indexing, |
|
2946 Vprefer_column_vectors, Vresize_on_range_error, |
|
2947 Vwarn_divide_by_zero): Ditto. |
|
2948 * pt-stmt.cc (Vsilent_functions): Ditto. |
|
2949 * variables.cc (Vignore_function_time_stamp): Ditto. |
|
2950 * dynamic-ld.cc (Vwarn_reload_forces_clear): Ditto. |
3369
|
2951 |
3367
|
2952 1999-11-20 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2953 |
3368
|
2954 * DLD-FUNCTIONS/fft.cc (Ffft): Texinfoize doc string. |
|
2955 * DLD-FUNCTIONS/ifft.cc (Fifft): Ditto. |
|
2956 * DLD-FUNCTIONS/fft2.cc (Ffft2): Ditto. |
|
2957 * DLD-FUNCTIONS/ifft2.cc (Fifft2): Ditto. |
|
2958 * DLD-FUNCTIONS/filter.cc (Ffilter): Ditto. |
|
2959 * DLD-FUNCTIONS/quad.cc (Fquad, Fquad_options): Ditto. |
|
2960 * DLD-FUNCTIONS/colloc.cc (Fcolloc): Ditto. |
|
2961 * DLD-FUNCTIONS/fsolve.cc (Ffsolve, Ffsolve_options): Ditto. |
|
2962 * defaults.cc (Veditor): Ditto. |
|
2963 * pt-plot.cc (Vautomatic_replot, Vgnuplot_binary, |
|
2964 Vgnuplot_has_frames, Vgnuplot_has_multiplot, Fclearplot, |
|
2965 Fcloseplot, Fpurge_tmp_files, Fishold, Fhold): |
3367
|
2966 |
|
2967 * Makefile.in (parse.cc): Expect 11 shift/reduce conflicts now. |
|
2968 |
3361
|
2969 1999-11-19 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2970 |
3366
|
2971 * parse.y (Vwarn_assign_as_truth_value, Vwarn_variable_switch_label): |
|
2972 Texinfoize doc strings. |
|
2973 |
3365
|
2974 * DLD-FUNCTIONS/pinv.cc (Fpinv): Texinfoize doc string. |
|
2975 |
3364
|
2976 * defun-int.h (DEFUN_DLD_INTERNAL): New macro. |
|
2977 * defun-dld.h [MAKE_BUILTINS] (DEFUN_DLD): Simply expand to |
|
2978 DEFUN_DLD_INTERNAL. |
|
2979 * mkbuiltins: Generate code to define DEFUN_DLD_INTERNAL. |
|
2980 * mkgendoc: Likewise. |
|
2981 |
3363
|
2982 * Makefile.in (gendoc.o): Don't optimize when creating gendoc. |
3364
|
2983 (%.dc : %.cc): Delete rule. |
3363
|
2984 |
3361
|
2985 * pt-decl.cc (Vdefault_global_variable_value): Texinofize doc string. |
|
2986 * variables.cc (Fclear, Fdocument, Fexist, Fis_global, Fwho): Ditto. |
|
2987 * help.cc (Ftype, Fwhich): Ditto. |
|
2988 * ov.cc (Vstruct_levels_to_print, Vimplicit_str_to_num_ok): Ditto. |
|
2989 * data.cc (Fis_struct, Fstruct_elements, Fstruct_constains): Ditto. |
|
2990 * strfns.cc (Fisstr, Fsetstr): Ditto. |
|
2991 * pt-mat.cc: (Fimplicit_num_to_str_ok, Fstring_fill_char): Ditto. |
|
2992 * utils.cc (Fundo_string_escapes): Ditto. |
|
2993 * mappers.cc: (Fisalnum, Fisalpha, Fisascii, Fiscntrl, Fisdigit, |
|
2994 Fisgraph, Fislower, Fisprint, Fispunct, Fisspace, Fisupper, |
|
2995 Fisxdigit, Ftoascii, Ftolower, Ftoupper): Ditto. |
|
2996 |
3357
|
2997 1999-11-18 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2998 |
3360
|
2999 * syscalls.cc (symbols_of_syscalls): Use DEFCONSTX to define |
|
3000 Octave constants for C macros like O_WRONLY. |
|
3001 |
3357
|
3002 * oct-lvalue.cc (octave_lvalue::set_index): Disallow expressions |
|
3003 like x(i)(j) = rhs. |
|
3004 |
3355
|
3005 1999-11-17 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3006 |
3356
|
3007 * symtab.cc (symbol_record::type_as_string): New function. |
3355
|
3008 |
|
3009 * symtab.cc (symbol_record::which): New functions. |
|
3010 * help.cc (do_which): New functions. |
|
3011 (Fwhich): Use them. |
|
3012 |
|
3013 * help.cc (help_from_symbol_table, help_from_file): New functions. |
|
3014 (builtin_help): Use them. |
|
3015 |
|
3016 * help.cc (do_type): New function. |
3356
|
3017 (symbol_record::type): New function. |
3355
|
3018 (Ftype): Use them. |
|
3019 |
|
3020 * help.cc (print_symbol_type): Delete. |
|
3021 |
|
3022 * symtab.cc (symbol_table::name_list): Delete count arg. |
|
3023 (symbol_table::symbol_list): Likewise. |
|
3024 (symbol_table::glob): Likewise. Also return Array<symbol_record *> |
|
3025 instead of symbol_record **. |
|
3026 Change all callers. |
|
3027 * help.cc (names, display_symtab_names): Delete count arg. |
|
3028 |
|
3029 * help.cc (print_symbol_type, Ftype): No longer need to look up |
|
3030 fcn_file_name in the loadpath. |
|
3031 |
|
3032 * help.cc (print_symbol_type): Handle dld functions. |
|
3033 (help_from_symbol_table, help_from_file): New functions. |
|
3034 (builtin_help): Use them. |
|
3035 |
3354
|
3036 1999-11-16 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3037 |
|
3038 * ov-cell.cc (Fiscell, Fcell): New Functions. |
|
3039 (octave_cell::do_index_op): New function. |
|
3040 |
|
3041 * utils.cc (get_dimensions): Move here from data.cc and make extern. |
|
3042 (Vtreat_neg_dim_as_zero, treat_neg_dim_as_zero): Likewise. |
|
3043 (symbols_of_utils): New function. |
|
3044 |
|
3045 * data.cc (fill_matrix (const octave_value_list&, double, |
|
3046 const char*)): New function. |
|
3047 (Fones, Fzeros): Use it to avoid some code duplication. |
|
3048 |
3352
|
3049 1999-11-15 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3050 |
|
3051 * pt-cell.h, pt-cell.cc, ov-cell.h, ov-cell.cc, Cell.h, Cell.cc: |
|
3052 New files. |
|
3053 * Makefile.in: Add them to the appropriate lists. |
|
3054 * pt-walk.h (visit_cell (tree_cell&): New pure virtual. |
|
3055 * pt-pr-code.cc (tree_print_code::visit_cell (tree_cell&)): New |
|
3056 function. |
|
3057 * TEMPLATE-INST/Array-tc.cc: Instantiate 2D arrays of octave_value |
|
3058 objects. |
|
3059 * pt-all.h: Include pt-cell.h. |
|
3060 * ov.h, ov.cc (octave_value::is_cell, octave_value::cell_value): |
|
3061 New functions. |
|
3062 * ov-base.h, ov-base.cc (octave_value::is_cell, |
|
3063 octave_value::cell_value): Provide defaults. |
|
3064 * lex.h, lex.l: Handle `{' and `}' tokens (for cell arrays). |
|
3065 (bracketflag): Rename from braceflag. |
|
3066 (handle_close_bracket): Rename from handle_close_brace. |
|
3067 (class bracket_brace_paren_nesting_level): Rename from |
|
3068 brace_paren_nesting_level. |
|
3069 (bracket_brace_paren_nesting_level::bracket, |
|
3070 bracket_brace_paren_nesting_level::is_bracket): New functions to |
|
3071 keep count of nesting level for `[' and `]'. |
|
3072 (bracket_brace_paren_nesting_level::brace, |
|
3073 bracket_brace_paren_nesting_level::is_brace): Now keeps count of |
|
3074 nesting level for `{' and `}'. |
|
3075 * parse.y (tree_cell_type): New type. |
|
3076 Give '{' the same precedence and associativity as '(' and '.' |
|
3077 (matrix_rows, matrix_rows1): Rename from rows, rows1. |
|
3078 (cell, cell_rows, cell_rows1): New non-terminals. |
|
3079 (cell_or_matrix_row): Rename from matrix_row. |
|
3080 (primary_expr): Accept cell here. |
|
3081 (postfix_expr): Allow indexing using '{' arg_list '}'. |
|
3082 (finish_cell): New function. |
|
3083 |
3350
|
3084 1999-11-12 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3085 |
|
3086 * utils.cc (jump_to_top_level): No longer declared extern "C". |
|
3087 |
|
3088 * cutils.c (octave_strcasecmp, octave_strncasecmp): New functions. |
|
3089 * utils.cc (almost_match): Call octave_strncasecmp instead of |
|
3090 calling strncasecmp directly. |
|
3091 |
3347
|
3092 1999-11-10 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3093 |
|
3094 * parse.y: Don't define warn_reload_forces_clear here. |
|
3095 |
|
3096 * Makefile.in (DISTFILES): Include DOCSTRINGS. |
|
3097 |
3340
|
3098 1999-11-05 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3099 |
3343
|
3100 * sighandlers.cc (install_signal_handlers): Don't install |
|
3101 sigwinch_handler. |
|
3102 |
3342
|
3103 * oct-iostrm.h (octave_istream::eof, octave_ostream::eof): Provide |
|
3104 implementation for these. |
|
3105 |
|
3106 * oct-stream.cc (octave_base_stream::do_scanf): |
|
3107 The stdin stream is only special if we are interactive. |
|
3108 (octave_base_stream::scanf): Ditto. |
|
3109 (octave_base_stream::do_oscanf): Ditto. |
|
3110 (octave_base_stream::oscanf): Ditto. |
|
3111 |
3340
|
3112 * ov.h (octave_value::is_stream): New predicate. |
|
3113 * ov-file.h (octave_file::is_stream): Return true. |
|
3114 * file-io.cc (Fis_stream): New function. |
|
3115 |
|
3116 * ov-file.h (class octave_file): stream is now an object instead |
|
3117 of pointer. |
|
3118 * ov-file.cc (octave_file::print_raw): Handle stream as object |
|
3119 instead of pointer. Also print stream status. |
|
3120 |
|
3121 * ov-base.cc (octave_base_value::stream_value): Return object |
|
3122 instead of pointer. |
|
3123 |
|
3124 * ov.cc (octave_value::stream_value): Return object instead of pointer. |
|
3125 (octave_value::octave_value (const octave_stream&)): Take const |
|
3126 reference instead of pointer arg. |
|
3127 |
|
3128 * TEMPLATE-INST/Array-os.cc: Instantiate Arrays of octave_stream |
|
3129 objects, not pointers to them. |
|
3130 |
|
3131 * OPERATORS/op-fil-b.cc: Cope with octave_stream class changes. |
|
3132 * OPERATORS/op-fil-bm.cc: Likewise. |
|
3133 * OPERATORS/op-fil-cm.cc: Likewise. |
|
3134 * OPERATORS/op-fil-cs.cc: Likewise. |
|
3135 * OPERATORS/op-fil-lis.cc: Likewise. |
|
3136 * OPERATORS/op-fil-m.cc: Likewise. |
|
3137 * OPERATORS/op-fil-rec.cc: Likewise. |
|
3138 * OPERATORS/op-fil-s.cc: Likewise. |
|
3139 * OPERATORS/op-fil-str.cc: Likewise. |
|
3140 * file-io.cc: Likewise. |
|
3141 * syscalls.cc (Fdup): Likewise. |
|
3142 |
|
3143 * oct-fstrm.cc, oct-fstrm.h, oct-iostrm.cc, oct-iostrm.h, |
|
3144 oct-prcstrm.cc, oct-prcstrm.h, oct-stdstrm.cc, oct-stdstrm.h, |
|
3145 oct-stream.cc, oct-stream.h, oct-strstrm.cc, oct-strstrm.h: |
|
3146 Rewrite to allow octave_stream objects to be used like values |
|
3147 instead of having to use pointers. |
|
3148 |
3337
|
3149 1999-11-03 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3150 |
|
3151 * oct-stream.cc (octave_base_stream::do_scanf): If it looks like |
|
3152 we have a matching failure, then reset the failbit in the stream |
|
3153 state. |
|
3154 (octave_base_stream::do_oscanf): Likewise. |
|
3155 |
3332
|
3156 1999-11-02 Ben Sapp <bsapp@nua.lampf.lanl.gov> |
|
3157 |
3361
|
3158 * help.cc (Fhelp): Texinfoize doc string. |
|
3159 * input.cc (Fecho, Fcompletion_matches): Ditto. |
|
3160 * oct-hist.cc (Fedit_history, Fhistory, Frun_history): Ditto. |
|
3161 * pager.cc (Fdiary): Ditto. |
|
3162 * sysdep.cc (Fclc): Ditto. |
|
3163 * toplev.cc (Fquit, Fatexit): Ditto. |
3332
|
3164 |
|
3165 1999-11-02 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3166 |
|
3167 * lex.l (yywrap): No longer static. |
|
3168 (have_continuation): Declare input character as int, not char, so |
|
3169 comparison to EOF will work. |
|
3170 |
3330
|
3171 1999-11-01 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3172 |
|
3173 * defun.cc (print_usage): Use display_help_text instead of sending |
|
3174 help message directly to octave_stdout. |
|
3175 |
3325
|
3176 1999-10-29 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3177 |
|
3178 * defun-dld.h (INSTALL_DLD_FCNS, INSTALL_DLD_FCN): Delete definitions. |
|
3179 * DLD-FUNCTIONS/dassl.cc: Don't use INSTALL_DLD_FCN or |
|
3180 INSTALL_DLD_FCNS macros. They are not necessary with the new code |
|
3181 in dynamic-ld.cc. |
|
3182 * DLD-FUNCTIONS/lsode.cc: Ditto. |
|
3183 * DLD-FUNCTIONS/fsolve.cc: Ditto. |
|
3184 * DLD-FUNCTIONS/quad.cc: Ditto. |
|
3185 * DLD-FUNCTIONS/time.cc: Ditto. |
|
3186 * DLD-FUNCTIONS/besselj.cc: Ditto. |
|
3187 * DLD-FUNCTIONS/getgrent.cc: Ditto. |
|
3188 * DLD-FUNCTIONS/getpwent.cc: Ditto. |
|
3189 * DLD-FUNCTIONS/inv.cc: Ditto. |
|
3190 * DLD-FUNCTIONS/log.cc: Ditto. |
|
3191 * DLD-FUNCTIONS/minmax.cc: Ditto. |
|
3192 * DLD-FUNCTIONS/rand.cc: Ditto. |
|
3193 |
|
3194 * dynamic-ld.cc, dynamic-ld.h: Major rewrite to allow reloading of |
|
3195 dynamically linked functions. |
|
3196 |
|
3197 * symtab.cc (symbol_record::replace_all_defs): Don't allow top |
|
3198 definition to be NULL. |
|
3199 (symbol_table::clear): Allow dynamically linked functions to be |
|
3200 cleared. |
|
3201 |
|
3202 * symtab.h (TYPE): New enum value, DLD_FUCTION. |
|
3203 (symbol_type): Now 8 bits wide. |
|
3204 (SYMTAB_ALL_TYPES): Include DLD_FUNCTION. |
|
3205 (symbol_record::symbol_def::is_function): Also recognize dld functions. |
|
3206 (symbol_record::symbol_def::is_dld_function): New function. |
|
3207 (symbol_record::is_dld_function): Ditto. |
|
3208 |
|
3209 * defun.cc (install_dld_function): New function. |
|
3210 * defun-int.h: Provide declaration here. |
|
3211 (octave_dld_fcn_installer): New typedef. |
|
3212 (DEFINE_FUN_INSTALLER_FUN): Installer function now takes an |
|
3213 oct_shlib object as an arg. Allow installation of a function to |
|
3214 happen more than once. |
|
3215 |
|
3216 * octave.cc (initialize_error_handlers): Call |
|
3217 set_liboctave_warning_handler here too. |
|
3218 |
|
3219 * ov-builtin.h (is_builtin_function): Return true. |
|
3220 Data member is now protected, not private. |
|
3221 |
|
3222 * ov-fcn.h (is_dynamically_loaded_function): New predicate. |
|
3223 (unload): New function. |
|
3224 Data members are now protected, not private. |
|
3225 |
|
3226 * ov.h (is_builtin_function, is_dld_function): New predicates. |
|
3227 * ov-base.h (is_builtin_function, is_dld_function): Ditto. |
|
3228 |
|
3229 * parse.y (Vwarn_reload_forces_clear): New static flag. |
|
3230 (warn_reload_forces_clear): New function. |
|
3231 (symbols_of_parse): DEFVAR warn_reload_forces_clear. |
|
3232 |
|
3233 * variables.cc (Fclear): Look for dld functions too. |
|
3234 |
3770
|
3235 * ov-dld-fcn.cc, ov-dld-fcn.h: New files. |
3325
|
3236 * Makefile.in (OV_INCLUDES, OV_SRC): Add them to the lists. |
|
3237 |
|
3238 * Makefile.in (DEFVAR_PATTERN): Also match DEFCONSTX. |
|
3239 |
3321
|
3240 1999-10-26 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3241 |
3325
|
3242 * DLList.h, DLList.cc: New files. |
|
3243 * Makefile.in (INCLUDES, DIST_SRC): Add them to the lists. |
|
3244 |
3323
|
3245 * DLD-FUNCTIONS/lsode.cc (Flsode): Be sure to call |
|
3246 unwind_protect::run_frame before returning. |
|
3247 * DLD-FUNCTIONS/quad.cc (Fquad): Likewise. |
|
3248 * DLD-FUNCTIONS/fsolve.cc (Ffsolve): Likewise. |
|
3249 * DLD-FUNCTIONS/dassl.cc (Fdassl): Likewise. |
|
3250 |
|
3251 * load-save.cc (read_mat_ascii_data): When reading from |
|
3252 tmp_stream, check its state, not the state of is. |
|
3253 |
|
3254 * defun-dld.h (INSTALL_DLD_FCN, INSTALL_DLD_FCNS): New macros. |
|
3255 * DLD-FUNCTIONS/dassl.cc: Use them. |
|
3256 * DLD-FUNCTIONS/lsode.cc: Ditto. |
|
3257 * DLD-FUNCTIONS/fsolve.cc: Ditto. |
|
3258 * DLD-FUNCTIONS/quad.cc: Ditto. |
|
3259 * DLD-FUNCTIONS/time.cc: Ditto. |
|
3260 * DLD-FUNCTIONS/besselj.cc: Ditto. |
|
3261 * DLD-FUNCTIONS/getgrent.cc: Ditto. |
|
3262 * DLD-FUNCTIONS/getpwent.cc: Ditto. |
|
3263 * DLD-FUNCTIONS/inv.cc: Ditto. |
|
3264 * DLD-FUNCTIONS/log.cc: Ditto. |
|
3265 * DLD-FUNCTIONS/minmax.cc: Ditto. |
|
3266 * DLD-FUNCTIONS/rand.cc: Ditto. |
|
3267 |
3322
|
3268 * data.cc (Flinspace): Let linspace functions handle errors. |
|
3269 |
3321
|
3270 * mkgendoc (print_doc_string): Handle quoted names. |
|
3271 |
|
3272 * file-io.cc (symbols_of_file_io): Use DEFCONSTX for SEEK_SET, |
|
3273 SEEK_CUR, and SEEK_END. |
|
3274 |
|
3275 * defun.h (DEFCONST): Just pass name, defn, and doc to |
|
3276 DEFCONST_INTERNAL. |
|
3277 (DEFCONSTX): Likewise, pass name, defn, and doc to DEFCONSTX_INTERNAL. |
|
3278 * defun-int.h [MKBUILTINS] (DEFCONST_INTERNAL): Likewise, pass |
|
3279 name, defn, and doc to XDEFCONST_INTERNAL. |
|
3280 [MKBUILTINS] (DEFCONSTX_INTERNAL): New macro. |
|
3281 (INSTALL_CONST): New macro. |
|
3282 [! MKBUILTINS] (DEFCONST_INTERNAL): Use it to handle details here. |
|
3283 [! MKBUILTINS] (DEFCONSTX_INTERNAL): Ditto. |
|
3284 * mkgendoc: Fix definition of XDEFCONST_INTERNAL to match. |
|
3285 * mkbuiltins: Ditto. |
|
3286 |
|
3287 * mkdefs: Match spaces before BEGIN_INSTALL_BUILTIN. |
|
3288 |
|
3289 * Makefile.in (DEFUN_PATTERN): Also match DEFUN_MAPPER. |
|
3290 |
|
3291 1999-10-26 Ben Sapp <bsapp@nua.lampf.lanl.gov> |
|
3292 |
|
3293 * data.cc (VI, VInf, VJ, VNaN, Ve, Veps, Vfalse, Vi, Vinf, Vj, |
|
3294 Vnan, Vpi, Vrealmax, Vrealmin): Texinfoize doc strings. |
|
3295 * mappers.cc (Fabs, Facos, Facosh, Fangle, Farg, Fasin, Fasinh, |
|
3296 Fatan, Fatanh, Fceil, Fconj, Fcos, Fcosh, Ferf, Ferfc, Fexp, |
|
3297 Ffinite, Ffix, Ffloor, Fgamma, Fimag, Flgamma, Flog, Flog10, |
|
3298 Freal, Fround, Fsign, Fsin, Fsinh, Fsqrt, Ftan, Ftanh): Ditto. |
|
3299 |
|
3300 1999-10-23 Ben Sapp <bsapp@nua.lampf.lanl.gov> |
|
3301 |
3361
|
3302 * data.cc (Fis_matrix): Texinfoize doc string. |
|
3303 * ov.cc (Vpropagate_empty_matrices): Ditto. |
|
3304 * pt-mat.cc: (Vempty_list_elements_ok): Ditto. |
|
3305 * pr-output.cc (Vfixed_point_format, Voutput_max_field_width, |
|
3306 Voutput_precision, Vprint_empty_dimensions, Vsplit_long_rows): |
|
3307 Ditto. |
3321
|
3308 |
|
3309 1999-10-22 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3310 |
3323
|
3311 * ov-usr-fcn.cc (octave_user_function::do_index_op): If |
|
3312 Vmax_recursion_depth is exceeded, call unwind_protect::run_frame |
|
3313 before returning. |
3321
|
3314 |
3308
|
3315 1999-10-21 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3316 |
3317
|
3317 * cutils.c (do_octave_usleep): Handle useconds > 1e6. |
|
3318 |
3308
|
3319 * variables.h (is_valid_function): Provide default values for the |
|
3320 string argument. |
|
3321 |
|
3322 * symtab.cc (variable_reference): Maybe print warning (or error) |
|
3323 about variables that hide functions of the same name. |
|
3324 (symbol_record::define (const octave_value&, unsigned int)): Ditto. |
|
3325 (Vvariables_can_hide_functions): New static variable. |
|
3326 (variables_can_hide_functions, symbols_of_symtab): New functions. |
|
3327 |
|
3328 * cutils.c: New file. |
|
3329 * Makefile.in (SOURCES): Add it to the list. |
|
3330 * utils.h: Declare octave_usleep here. |
|
3331 * dirfns.cc (Fls): Simply all octave_usleep. |
|
3332 * oct-procbuf.cc (octave_procbuf::open): Ditto. |
|
3333 * sysdep.cc (Fusleep): Ditto. |
|
3334 * toplev.cc (run_command_and_return_output): Ditto. |
|
3335 |
3305
|
3336 1999-10-20 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3337 |
3307
|
3338 * data.cc (make_diag (const octave_value&, const octave_value&)): |
|
3339 Delete special cases for scalars and simply attempt conversion of |
|
3340 first arg to a matrix value. If that fails, we will still see an |
|
3341 error message. |
|
3342 |
3305
|
3343 * Makefile.in (DISTFILES): Add mkgendoc to the list. |
|
3344 |
3296
|
3345 1999-10-19 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3346 |
3301
|
3347 * Makefile.in (stmp-pic): New target. |
|
3348 ($(PICOBJS)): Depend on stmp-pic, not pic. |
|
3349 |
|
3350 * ov.h (get_rep): New function. |
|
3351 |
|
3352 * help.cc (display_help_text): Pass definitions for VERSION, |
|
3353 OCTAVE_HOME, and TARGETHOSTTYPE to makeinfo. |
|
3354 |
|
3355 * DLD-FUNCTIONS/getgrent.cc: Texinfoize all doc strings. |
|
3356 * DLD-FUNCTIONS/getpwent.cc: Ditto. |
|
3357 * DLD-FUNCTIONS/getrusage.cc: Ditto. |
|
3358 * DLD-FUNCTIONS/time.cc: Ditto. |
|
3359 |
|
3360 * defaults.cc (EXEC_PATH, OCTAVE_VERSION): Texinfoize doc strings. |
|
3361 * dirfns.cc (Fcd, Fls, Fpwd, Freaddir, Fmkdir, Frmdir, Frename, |
|
3362 Fglob, Ffnmatch): Ditto. |
|
3363 * file-io.cc (Fpopen, Fpclose, Fumask): Ditto. |
|
3364 * sysdep.cc (Fgetenv, Fputenv, Fpause, Fsleep, Fusleep, Fisieee, |
|
3365 Ftilde_expand): Ditto. |
|
3366 * toplev.cc (Fcomputer, Fsystem, Foctave_config_info): Ditto. |
|
3367 * utils.cc (Ffile_in_path): Ditto. |
|
3368 * syscalls.cc (Fdup2, Fexec, Ffcntl, Ffork, Fgetpgrp, Fgetpid, |
|
3369 Fgetppid, Fgetegid, Fgetgid, Fgeteuid, Fgetuid, Fmkfifo, Fpipe, |
|
3370 Fstat, Funlink, Fwaitpid, F): Ditto. |
|
3371 (Flstat): Refer to stat for doc. |
|
3372 |
|
3373 |
3296
|
3374 * help.cc (looks_like_texinfo): New function. |
|
3375 (display_help_text): Use it to see if the doc string looks like |
|
3376 Texinfo source. If so, use makeinfo to format the text before |
|
3377 displaying it. |
|
3378 |
|
3379 * mkgendoc: New script. |
|
3380 * Makefile.in: Use it to create gendoc.cc, which is compiled and |
|
3381 run to create DOCSTRINGS file from sources. |
|
3382 |
3295
|
3383 1999-10-18 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3384 |
|
3385 * help.cc (help_from_info): Print `unable to find info' message if |
|
3386 try_info returns 127; otherwise, print `not indexed' message. |
|
3387 Don't sleep after printing `not indexed' message. |
|
3388 |
3292
|
3389 1999-10-14 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3390 |
|
3391 * parse.y (fold (tree_unary_expression *)): New function. |
|
3392 (make_prefix_op, make_postfix_op): Use it. |
|
3393 |
3281
|
3394 1999-10-13 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3395 |
3288
|
3396 * Makefile.in (oct-gperf.h): Ask for ANSI-C output from gperf |
|
3397 (requires gperf-2.7 or later). |
|
3398 |
3281
|
3399 * sighandlers.cc (sigwinch_handler): New function. |
|
3400 (install_signal_handlers): Install it. |
|
3401 |
3273
|
3402 Thu Sep 23 19:49:36 1999 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3403 |
|
3404 * toplev.cc (Fsystem): For async case, use execl instead of |
|
3405 system, avoiding the need to exit after executing the subprocess. |
|
3406 |
3268
|
3407 Thu Sep 9 17:09:23 1999 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3408 |
|
3409 * oct-stream.cc (get_size): Allow zero values. |
|
3410 (get_size): New arg, one_elt_size_spec. |
|
3411 (do_scanf_conv): New arg, `conv_count'. Change instantiation |
|
3412 requests and all callers. |
|
3413 (octave_base_stream::do_scanf): Improve scanning of strings. |
|
3414 (octave_base_stream::do_oscanf): Remove size limit on %s conversions. |
|
3415 |
|
3416 * oct-stream.cc (scanf_format_list::all_character_conversions): |
|
3417 Don't count %p as a character conversion. |
|
3418 |
|
3419 Tue Sep 7 08:31:04 1999 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3420 |
|
3421 * pr-output.cc (set_real_matrix_format, set_complex_matrix_format): |
|
3422 Move check for fixed_point_format ahead of check for |
|
3423 int_or_inf_or_nan. |
|
3424 |
3264
|
3425 Thu Sep 2 11:54:51 1999 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3426 |
|
3427 * oct-obj.cc (make_argv): Correctly handle empty strings as args. |
|
3428 |
3263
|
3429 Fri Aug 20 08:17:52 1999 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3430 |
|
3431 * DLD-FUNCTIONS/quad.cc (quad): Delete unused label. |
|
3432 |
|
3433 * unwind-prot.cc (saved_variable::~saved_variable): Don't try to |
|
3434 delete gen_ptr_value here. |
|
3435 |
|
3436 Mon Aug 16 21:34:33 1999 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3437 |
|
3438 * lex.l (next_token_is_sep_op): New function. |
|
3439 (handle_close_brace, maybe_unput_comma): Use it. |
|
3440 (have_continuation): Also handle CRLF here. |
|
3441 |
|
3442 Wed Aug 11 16:06:57 1999 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3443 |
|
3444 * file-io.cc (Ffopen): Make fopen ("filename") work and imply that |
|
3445 MODE = "r". |
|
3446 |
3258
|
3447 Wed Jul 21 15:38:52 1999 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3448 |
3259
|
3449 * help.cc (display_names_from_help_list): Sort names before |
|
3450 listing them. |
|
3451 (print_symbol_type, Ftype): Also handle built-in constants. |
|
3452 (LIST_SYMBOLS): Correct call to symbol_table::name_list. |
|
3453 (simple_help): List constants here too. List constants and |
|
3454 variables before functions, not after. Sort names before listing |
|
3455 them. |
|
3456 |
|
3457 * variables.cc (do_who): Display built-in constants in a separate |
|
3458 section. |
|
3459 |
|
3460 * error.cc (bind_global_error_variable, clear_global_error_variable): |
|
3461 Call bind_builtin_constant, not bind_builtin_variable to set |
|
3462 __error_text__. |
|
3463 * octave.cc (intern_argv): Likewise, for argv and __argv__. |
|
3464 |
|
3465 * defun.cc (install_builtin_constant): Move function guts to |
|
3466 bind_builtin_constant in variables.cc. |
|
3467 * variables.cc (bind_builtin_constant): New function. |
|
3468 |
3258
|
3469 * symtab.cc (symbol_record::define, symbol_record::variable_reference): |
|
3470 Handle constants the same as functions. |
|
3471 (symbol_record::link_to_builtin_variable): New function. |
|
3472 (symbol_record::define_builtin_const): New function. |
|
3473 (symbol_record::define_as_fcn): Delete unused function. |
|
3474 (symbol_record::read_only_error): |
|
3475 Handle constants the same as variables. |
|
3476 * symtab.h (symbol_record::BUILTIN_CONSTANT): New enum value. |
|
3477 (symbol_record::symbol_type): Increase width to 7 bits. |
|
3478 (symbol_record::symbol_def::is_constant): New function. |
|
3479 (symbol_record::symbol_def::is_builtin_constant): New function. |
|
3480 (symbol_record::is_constant): New function. |
|
3481 (symbol_record::is_builtin_constant): New function. |
|
3482 (SYMTAB_ALL_TYPES): Add symbol_record::BUILTIN_CONSTANT. |
|
3483 * variables.cc (link_to_builtin_variable): Delete unused function. |
|
3484 (link_to_builtin_or_function): Handle built-in constants here too. |
|
3485 |
|
3486 * defun.cc (install_builtin_variable): Delete inst_as_fcn arg. |
|
3487 (install_builtin_constant): New function. |
|
3488 (install_builtin_variable_as_function): Delete unused function. |
|
3489 * defun.h (DEFVAR_INTERNAL): Delete inst_as_fcn arg. |
|
3490 (DEFCONST_INTERNAL): New macro. |
|
3491 * defun.h (DEFVAR): Delete inst_as_fcn arg. |
|
3492 (DEFCONST, DEFCONSTX): Define using DEFCONST_INTERNAL instead of |
|
3493 DEFVAR_INTERNAL. |
|
3494 * data.cc, defaults.cc, error.cc, help.cc, input.cc, lex.l, |
|
3495 load-save.cc, oct-hist.cc, oct-procbuf.cc, ov-fcn.h, |
|
3496 ov-usr-fcn.cc, ov.cc, pager.cc, parse.y, pr-output.cc, |
|
3497 pt-assign.cc, pt-decl.cc, pt-mat.cc, pt-plot.cc, pt-stmt.cc, |
|
3498 toplev.cc, variables.cc: |
|
3499 Change all invocations of DEFVAR to match new definition. |
|
3500 |
|
3501 * data.cc (symbols_of_data): Add DEFCONSTs for true and false. |
|
3502 |
3255
|
3503 Thu Jul 15 10:59:42 1999 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3504 |
3258
|
3505 * data.cc (Fis_bool, Fis_complex, Fisempty, Fisnumeric, Fis_list, |
|
3506 Fis_map, Fis_struct): Return bool object. |
|
3507 (Fisreal): New function. |
|
3508 |
|
3509 * ov-str-mat.h (octave_char_matrix_str): Only return true if |
|
3510 Vimplicit_str_to_num_ok is also true. |
|
3511 |
3255
|
3512 * DLD-FUNCTIONS/time.cc (Ftime): Print usage message if any |
|
3513 arguments are supplied. |
|
3514 |
|
3515 * variables.cc (symbol_out_of_date): Call octave_time for time stamps. |
|
3516 |
|
3517 * fn-cache.h (octave_fcn_file_name_cache::timestamp): |
|
3518 Now octave_time object. |
|
3519 |
|
3520 * strftime.c: Move to liboctave directory. |
|
3521 * Makefile.in (DIST_SRC): Delete from list. |
|
3522 |
|
3523 * ov-usr-fcn.h (octave_user_function::t_parsed, |
|
3524 octave_user_function::t_checked): Now octave_time objects. |
|
3525 (octave_user_function::time_parsed, |
|
3526 (octave_user_function::time_checked): |
|
3527 Return value is now octave_time object. |
|
3528 (octave_user_function::mark_fcn_file_up_to_date)): |
|
3529 Arg is now octave_time object. |
|
3530 |
|
3531 * ov-fcn.h (octave_function::mark_fcn_file_up_to_date)): |
|
3532 Arg is now octave_time object. |
|
3533 (octave_function::time_parsed, octave_function::time_checked): |
|
3534 Return value is now octave_time object. |
|
3535 |
|
3536 * input.cc (Vlast_prompt_time): Now an octave_time object. |
|
3537 (octave_gets): Call octave_time::stamp() to set Vlast_prompt_time. |
|
3538 |
|
3539 * DLD-FUNCTIONS/time.cc (mk_tm_map, extract_tm, Ftime, Fgmtime, |
|
3540 Flocaltime, Fmktime, Fstrftime): Use new classes defined in |
|
3541 liboctave/oct-time.cc instead of accessing C functions directly. |
|
3542 |
3252
|
3543 Wed Jul 14 17:38:46 1999 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3544 |
|
3545 * systime.h: Move to liboctave directory. |
|
3546 * Makefile.in (INCLUDES): Delete it from the list |
|
3547 |
|
3548 Tue Jul 13 14:34:57 1999 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3549 |
|
3550 * sighandlers.cc (sigchld_handler): Only wait for processes in |
|
3551 octave_child_list. |
|
3552 * toplev.cc (cmd_status): Delete unused static variable. |
|
3553 (cmd_death_handler): Delete unused function. |
|
3554 (run_command_and_return_output): Don't add cmd_death_handler to |
|
3555 octave_child_list. Simply extract command exit status from |
|
3556 calling close() on the procstream object. |
|
3557 |
3249
|
3558 Mon Jul 12 22:38:50 1999 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3559 |
|
3560 * defun.h (DEFUN_MAPPER): Handle new args, d_b_map and c_b_map. |
|
3561 * defun-int.h (DEFUN_MAPPER_INTERNAL): Likewise. |
|
3562 * mappers.cc (install_mapper_functions): Supply new args to |
|
3563 all uses of DEFUN_MAPPER. |
|
3564 * ov-mapper.cc (octave_mapper::apply): Handle mapper functions |
|
3565 that return bool objects. |
|
3566 * ov-mapper.h (octave_mapper::d_b_mapper, octave_mapper::c_b_mapper): |
|
3567 New typedefs. |
|
3568 (octave_mapper::octave_mapper): Handle new mapper function types. |
|
3569 |
|
3570 * DLD-FUNCTIONS/minmax.cc: Do a better job of handling NaNs. |
|
3571 |
|
3572 Sun Jul 11 13:15:17 1999 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3573 |
|
3574 * pr-output.cc (do_plus_format (ostream&, double)): New function. |
|
3575 (octave_print_internal (ostream&, double, bool)): Use it. |
|
3576 (octave_print_internal (ostream&, const Matrix&, bool, int)): Ditto. |
|
3577 |
|
3578 * pr-output.cc (do_plus_format (ostream&, const Complex&)): |
|
3579 New function. |
|
3580 (octave_print_internal (ostream&, const Complex&, bool)): Use it. |
|
3581 (octave_print_internal (ostream&, const ComplexMatrix&, bool, int)): |
|
3582 Ditto. |
|
3583 |
|
3584 Sun Jun 20 23:04:00 1999 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3585 |
|
3586 * sysdep.cc: Include sys/ioctl.h if available. |
|
3587 |
|
3588 Sat Jun 19 12:07:16 1999 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3589 |
|
3590 * variables.cc (do_who): Make pattern and multiple non-option |
|
3591 arguments work. |
|
3592 |
3246
|
3593 Mon Jun 7 09:54:51 1999 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3594 |
|
3595 * lex.l (next_token_is_bin_op, next_token_is_postfix_unary_op, |
|
3596 handle_number): Delete yytext arg. Change all callers. |
|
3597 (next_token_is_postfix_unary_op): Check the first character |
|
3598 obtained from yyinput before calling it again. |
|
3599 (next_token_is_bin_op): Do a more thorough check. |
|
3600 (handle_identifier): Also enter token in local symbol table if the |
|
3601 following token is a dot and it looks like a binary operator. |
|
3602 (whitespace_in_literal_matrix): Now static. |
|
3603 |
|
3604 * lex.l: Always use unput, not yyunput. |
|
3605 |
3244
|
3606 Fri May 28 11:02:37 1999 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3607 |
|
3608 * DLD-FUNCTIONS/chol.cc (Fchol): If two output arguments, never |
|
3609 produce error message. |
|
3610 |
3243
|
3611 Thu May 27 18:28:35 1999 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3612 |
|
3613 * DLD-FUNCTIONS/chol.cc (Fchol): Also return info as second output. |
|
3614 |
|
3615 * DLD-FUNCTIONS/minmax.cc (max (const ComplexMatrix&, const |
|
3616 ComplexMatrix&)): Correct test for real columns only. |
|
3617 (min (const ComplexMatrix&, const ComplexMatrix&)): Likewise. |
|
3618 |
|
3619 Wed Apr 14 12:54:25 1999 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3620 |
|
3621 * DLD-FUNCTIONS/dassl.cc (Fdassl): Prevent recursive calls. |
|
3622 * DLD-FUNCTIONS/fsolve.cc (Ffsolve): Likewise. |
|
3623 * DLD-FUNCTIONS/lsode.cc (Flsode): Likewise. |
|
3624 * DLD-FUNCTIONS/quad.cc (Fquad): Likewise. |
|
3625 |
|
3626 * file-io.cc (Fsscanf, Ffscanf): Doc fix. |
|
3627 |
3239
|
3628 Sat Mar 27 11:07:51 1999 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3629 |
|
3630 * ov.h (octave_value::count): New function. |
|
3631 * symtab.cc (symbol_record::dump_symbol_info): New function. |
|
3632 * symtab.cc (symbol_record::symbol_def::dump_symbol_info): Ditto. |
|
3633 * variables.cc (F__dump_symbol_info__): Ditto. |
|
3634 |
|
3635 * pt-misc.cc (tree_parameter_list::clear): New function. |
|
3636 * ov-usr-fcn.h (octave_user_function::clear_args_passed): Ditto. |
|
3637 * ov-usr-fcn.cc (clear_param_list): New function. |
|
3638 (clear_args_passed): New function. |
|
3639 (octave_user_function::do_index_op): Use them to decrement |
|
3640 reference counts on local variables. |
|
3641 |
3238
|
3642 Fri Mar 26 00:51:53 1999 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3643 |
|
3644 * Makefile.in (libraries): Use the libfoo.a(objects) method of |
|
3645 creating static libs. |
|
3646 |
|
3647 * defaults.cc (symbols_of_defaults): Initialize LOADPATH to |
|
3648 Vload_path, not ":". |
|
3649 |
|
3650 Thu Mar 18 12:09:23 1999 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3651 |
|
3652 * data.cc (Fisnumeric): Fix typo. |
|
3653 |
|
3654 Thu Mar 4 02:17:04 1999 James Macnicol <jamesm@evans.ee.adfa.oz.au> |
|
3655 |
|
3656 * file-io.cc (Ffread, Ffwrite): Add uint16 and uint32 data types |
|
3657 to doc string. |
|
3658 |
|
3659 Wed Mar 3 11:55:17 1999 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3660 |
|
3661 * lex.l (handle_string): Allow "" to pass through unchanged if |
|
3662 working on a gset command. |
|
3663 |
|
3664 Tue Mar 2 01:36:29 1999 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3665 |
|
3666 * variables.cc (Fexist): If a variable isn't defined, only go on |
|
3667 to look for a global by the same name if we are at the top level. |
|
3668 |
|
3669 Fri Jan 29 02:18:36 1999 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3670 |
|
3671 * version.h (OCTAVE_NAME_AND_VERSION): Say `GNU Octave', not just |
|
3672 Octave. |
|
3673 |
3234
|
3674 Thu Jan 28 21:29:16 1999 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3675 |
|
3676 * toplev.cc (Fcomputer): Use CANONICAL_HOST_TYPE, not TARGET_HOST_TYPE. |
|
3677 (octave_config_info): Likewise. |
|
3678 * version.h: Ditto. |
|
3679 |
|
3680 * sysdep.cc (Fpause): Flush output before getting user input. |
|
3681 |
3233
|
3682 Wed Jan 27 14:18:29 1999 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3683 |
|
3684 * Makefile.in (DEFFUN_PATTERN, DEFVAR_PATTERN): Use egrep again. |
|
3685 Make the patterns work with stupid egreps that don't like empty |
|
3686 elements in alternation patterns. |
|
3687 |
|
3688 Fri Jan 22 04:41:48 1999 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3689 |
|
3690 * load-save.cc (save_ascii_data): Check for string type first, |
|
3691 then range, then the rest. |
|
3692 (save_binary_data): Ditto. |
|
3693 |
|
3694 * pager.cc (more_than_a_screenful): Accept length as second arg. |
|
3695 Handle long lines properly, assuming the terminal wraps long lines. |
|
3696 (octave_pager_buf::do_sync): Accept length of data as second arg. |
|
3697 Use write instead of << to put characters on output stream. |
|
3698 (octave_pager_buf::sync): Don't assume data ends at first NUL. |
|
3699 (octave_diary_buf::sync): Ditto. |
|
3700 |
|
3701 Thu Jan 21 22:15:23 1999 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3702 |
|
3703 * load-save.cc (save_mat_binary_data): Check for string type |
|
3704 first, then range, then the rest. |
|
3705 |
|
3706 Wed Jan 20 12:01:14 1999 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3707 |
|
3708 * oct-stream.cc (octave_base_stream::do_scanf): Handle short and |
|
3709 long ints correctly. |
|
3710 |
|
3711 Fri Jan 15 13:04:58 1999 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3712 |
|
3713 * parse.y (end_error): Handle case of endswitch too. |
|
3714 |
|
3715 * Makefile.in: Use basic regular expressions and grep instead of |
|
3716 egrep to find files that contain DEFVAR, DEFCONST, or DEFUN. |
|
3717 |
|
3718 Wed Dec 9 14:14:11 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3719 |
|
3720 * Makefile.in (octave): Add $(RDYNAMIC_FLAG) to link command. |
|
3721 |
|
3722 Fri Dec 4 20:26:33 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3723 |
|
3724 * DLD-FUNCTIONS/time.cc (Fstrftime): Make it work even when not |
|
3725 using the GNU version of strftime, which allows passing NULL for |
|
3726 the buffer to determine the required size of the buffer. |
|
3727 |
3225
|
3728 Wed Dec 2 22:38:40 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3729 |
|
3730 * utils.cc (file_in_loadpath): Expect argc == 2, not 3. |
|
3731 |
|
3732 Tue Nov 24 23:38:19 1998 Eric Norum <eric@skatter.USask.Ca> |
|
3733 |
|
3734 * mkbuiltins: Also strip off leading `./' from file names. |
|
3735 * mkops: Ditto. |
|
3736 |
|
3737 Tue Nov 24 23:24:26 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3738 |
|
3739 * strftime.c: Surround everything with #ifdef HAVE_STRFTIME / #endif. |
|
3740 |
|
3741 * lex.h (YY_FATAL_ERROR): Call yy_falta_error after |
|
3742 jump_to_top_level to avoid gcc warning. |
|
3743 |
|
3744 Fri Nov 20 13:34:47 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3745 |
|
3746 * ov-bool.h, ov-bool.cc (class octave_bool): Derive from |
|
3747 octave_base_scalar and get common functions via derivation. |
|
3748 * ov-scalar.h, ov-scalar.cc (class octave_scalar): Ditto. |
|
3749 * ov-complex.h, ov-complex.cc (class octave_complex): Ditto. |
|
3750 |
|
3751 * ov-base-scalar.h, ov-base-scalar.cc (class octave_base_scalar): |
|
3752 New files for new class definition. Put common scalar data type |
|
3753 stuff here. |
|
3754 * Makefile.in (OV_INCLUDES, OV_SRC): Add them to the lists. |
|
3755 |
3221
|
3756 Thu Nov 19 14:30:25 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
3225
|
3757 |
3222
|
3758 * dynamic-ld.cc (octave_dynamic_loader::mangle_name): |
|
3759 Prepend underscore here. |
|
3760 (octave_dynamic_loader::load_fcn_from_dot_oct_file): Not here. |
|
3761 |
3221
|
3762 * ov-re-mat.h (octave_matrix_value): Delete experimental code for |
|
3763 handling structure references for things like .rows, .cols, etc. |
|
3764 |
3220
|
3765 Wed Nov 18 01:18:46 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3766 |
3221
|
3767 * Makefile.in (VAR_FILES): Be more careful about matching. |
|
3768 (DEF_FILES): Likewise. |
|
3769 |
|
3770 * ov-base-mat.h, ov-base-mat.cc, ov-bool-mat.h, ov-bool-mat.cc, |
|
3771 ov-ch-mat.h, ov-ch-mat.cc, ov-cx-mat.h, ov-cx-mat.cc, |
|
3772 ov-re-mat.h, ov-re-mat.cc: Move default definition of all, any, |
|
3773 is_matrix_type, is_numeric_type, valid_as_zero_index, and |
|
3774 do_index_op to base class. |
|
3775 Provide definitions that override the defaults where necessary. |
3220
|
3776 |
|
3777 * mappers.cc: Don't include lo-specfun.h. |
|
3778 |
|
3779 Tue Nov 17 14:35:56 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3780 |
|
3781 * besselj.cc (Fbesselh, Fairy); New functions. |
|
3782 (Fbesselj, Fbessely, Fbesselk, Fbesseli): Update doc strings. |
|
3783 (do_bessel): Handle additional args. |
|
3784 |
|
3785 Fri Nov 13 14:47:11 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3786 |
|
3787 * lex.l (NUMBER): Allow hexadecimal constants. |
|
3788 (looks_like_hex): New function. |
|
3789 (handle_number): Check for hexadecimal constants and convert them |
|
3790 to unsigned integer values. |
|
3791 |
3219
|
3792 Thu Nov 12 11:13:24 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3793 |
|
3794 * input.cc (gnu_readline): Check for EOF from command_editor::readline. |
|
3795 |
|
3796 * ov-str-mat.h, ov-str-mat.cc (class octave_char_matrix_str): |
|
3797 Get common functions via new derivation scheme. |
|
3798 |
|
3799 * ov-bool-mat.h, ov-bool-mat.cc (class octave_bool_matrix): |
|
3800 Derive from octave_base_matrix and get common functions via derivation. |
|
3801 * ov-ch-mat.h, ov-ch-mat.cc (class octave_char_matrix): Ditto. |
|
3802 * ov-cx-mat.h, ov-cx-mat.cc (class octave_complex_matrix): Ditto. |
|
3803 * ov-re-mat.h, ov-re-mat.cc (class octave_real_matrix): Ditto. |
|
3804 |
|
3805 * ov-base-mat.h, ov-base-mat.cc (class octave_base_matrix): New |
|
3806 files for new class definition. Put common matrix data type |
|
3807 stuff here. |
|
3808 |
|
3809 * ov-list.cc (Fnth): New function. |
|
3810 |
|
3811 * ov-list.cc (octave_list::do_index_op): Allow more complex indexing. |
|
3812 |
|
3813 * oct-obj.cc (octave_value_list::index): New function. |
|
3814 (octave_value_list::octve_value_list (Array<octave_value>)): |
|
3815 New private constructor. |
|
3816 |
|
3817 * ov-list.cc (Fsplice): Fix docstring to match. |
|
3818 * oct-obj.cc (octave_value_list::splice): Allow special case |
|
3819 splice (x, length(x)+1, 0, y) to be equivalent to append (x, y). |
|
3820 |
|
3821 * ov-list.cc (Fappend): If an arg is a list, concatenate the lists |
|
3822 instead of appending arg as a single element. |
|
3823 |
|
3824 Wed Nov 11 14:07:27 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3825 |
|
3826 * load-save.cc (get_mat_data_input_line): New function. |
|
3827 (get_lines_and_columns): Use it here. |
|
3828 (read_mat_ascii_data): And here and do our own reading instead of |
|
3829 using Matrix::operator<<. |
|
3830 |
|
3831 Tue Nov 10 16:12:25 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3832 |
|
3833 * parse.y (make_constant): Initialize retval to 0. |
|
3834 |
|
3835 * toplev.h (clean_up_and_exit (void)): Delete declaration. |
|
3836 * toplev.cc (do_octave_atexit): Move guts of clean_up_for_exit |
|
3837 here, but ensure that the actions are only executed once. |
|
3838 * octave.cc (main): Don't register cleanup_tmp_files with atexit. |
|
3839 |
|
3840 * ov.h, ov.cc (class octave_value): Use DECLARE_OCTAVE_ALLOCATOR |
|
3841 and DEFINE_OCTAVE_ALLOCATOR for uniform declaration and definition |
|
3842 of allocator functions. Use DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA |
|
3843 and DEFINE_OV_TYPEID_FUNCTIONS_AND_DATA for uniform declaration |
|
3844 and definition of type id functions and data. |
|
3845 * ov-usr-fcn.h, ov-usr-fcn.cc (class octave_user_function): Ditto. |
|
3846 * ov-scalar.h, ov-scalar.cc (class octave_scalar): Ditto. |
|
3847 * ov-re-mat.h ov-re-mat.cc (class octave_matrix): Ditto. |
|
3848 * ov-range.h, ov-range.cc (class octave_range): Ditto. |
|
3849 * ov-mapper.h, ov-mapper.cc (class octave_mapper): Ditto. |
|
3850 * ov-list.h, ov-list.cc (class octave_list): Ditto. |
|
3851 * ov-file.h, ov-file.cc (class octave_file): Ditto. |
|
3852 * ov-fcn.h, ov-fcn.cc (class octave_function): Ditto. |
|
3853 * ov-cx-mat.h, ov-cx-mat.cc (class octave_complex_matrix): Ditto. |
|
3854 * ov-complex.h, ov-complex.cc (class octave_complex): Ditto. |
|
3855 * ov-ch-mat.h, ov-ch-mat.cc (octave_char_matrix): Ditto. |
|
3856 * ov-builtin.h, ov-builtin.cc (class octave_builtin): Ditto. |
|
3857 * ov-bool.h, ov-bool.cc (class octave_bool): Ditto. |
|
3858 * ov-bool-mat.h, ov-bool-mat.cc (octave_bool_matrix): Ditto. |
|
3859 |
|
3860 * ov.h (DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA): New macro. |
|
3861 (DEFINE_OV_TYPEID_FUNCTIONS_AND_DATA): Ditto. |
|
3862 |
3215
|
3863 Mon Nov 9 16:12:37 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3864 |
|
3865 * pr-output.cc (octave_print_internal): Reorder default args for |
|
3866 charMatrix version. |
|
3867 (octave_print_internal): New function for boolMatrix. |
|
3868 |
|
3869 * version.h (OCTAVE_STARTUP_MESSAGE): Note that this is a |
|
3870 development release. |
|
3871 |
|
3872 * toplev.cc (do_octave_atexit): Call flush_octave_stdout here. |
|
3873 (clean_up_for_exit): And here. |
|
3874 |
|
3875 Mon Nov 9 15:20:53 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3876 |
|
3877 * input.cc (get_user_input): Check retval.length(), not retval.length. |
|
3878 |
|
3879 Sun Nov 8 19:30:33 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3880 |
|
3881 * pt-assign.cc (tree_simple_assignment::rvalue): If etype is |
|
3882 asn_eq, don't evaluate ult again because retval is just rhs value. |
|
3883 (tree_multi_assignment::rvalue): Likewise. |
|
3884 |
|
3885 Fri Nov 6 12:14:29 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3886 |
|
3887 * pt-loop.cc (tree_for_command::eval): Move code for string RHS |
|
3888 outside if clause for matrix types. |
|
3889 |
|
3890 * pt-idx.cc: Don't forget to define arg_nm. |
|
3891 Move contstructor here. |
|
3892 * pt-idx.h: From here. |
|
3893 |
|
3894 * data.cc (Fisempty): Also return true for empty strings. |
|
3895 |
3212
|
3896 Wed Nov 4 17:21:41 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3897 |
|
3898 * ov-base.cc (octave_base_value::rows, octave_base_value::columns, |
|
3899 octave_base_value::length): Delete. |
|
3900 * ov-base.h (octave_base_value::rows, octave_base_value::columns, |
|
3901 octave_base_value::length): Define here. All return -1 if not |
|
3902 defined in a derived class. |
|
3903 |
|
3904 * data.cc (Fis_matrix): Also return true if the arg is a range. |
|
3905 |
3209
|
3906 Tue Nov 3 09:40:24 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3907 |
|
3908 * data.cc (Fis_bool): New function. |
|
3909 Also add alias for islogical. |
|
3910 |
|
3911 * ov.h (octave_value::is_bool_type): New function. |
|
3912 * ov-base.h (octave_base_value::is_bool_type): Likewise. |
|
3913 * ov-bool.h (octave_bool::is_bool_type): Likewise. |
|
3914 * ov-bool-mat.h (octave_bool_matrix::is_bool_type): Likewise. |
|
3915 |
3206
|
3916 Mon Nov 2 13:36:04 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3917 |
3208
|
3918 * lex.l (handle_close_brace): Also handle case of ']' followed by |
|
3919 other assignment ops (+=, -=, ...). |
|
3920 |
|
3921 * pt-assign.cc (tree_simple_assignment::rvalue): Correctly handle |
|
3922 return value and printing for operators other than `='. |
|
3923 (tree_multi_assignment::rvalue): Likewise. |
|
3924 |
|
3925 * pt-assign.h (tree_multi_assignment::etype): New data member. |
|
3926 * pt-assign.cc (tree_multi_assignment::rvalue): Use it instead of |
|
3927 assuming `='. |
|
3928 (tree_multi_assignment::oper): New function. |
|
3929 * pt-pr-code.cc (tree_print_code::visit_multi_assignment): Use |
|
3930 it instead of always printing `='. |
|
3931 * parse.y (make_assign_op): Pass expression type to |
|
3932 tree_multi_assignment constructor. |
|
3933 |
3206
|
3934 * Makefile.in (stmp-pic): New target. |
|
3935 ($(PICOBJ)): Depend on stmp-pic, not pic. |
|
3936 (clean): Delete stmp-pic. |
|
3937 |
|
3938 Sun Nov 1 23:24:55 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3939 |
|
3940 * mappers.cc (install_mapper_functions): Add alias for isfinite. |
|
3941 |
|
3942 Sat Oct 31 08:46:55 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3943 |
|
3944 * data.cc (Fisnumeric): New function. |
|
3945 |
3203
|
3946 Fri Oct 30 08:39:30 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3947 |
3205
|
3948 * oct-lvalue.cc (octave_lvalue::do_unary_op): Make it work for |
|
3949 indexed ops too. |
|
3950 * ov.cc (octave_value::unary_op_to_assign_op): New function. |
|
3951 (octave_value::do_non_const_unary_op): New function for indexed ops. |
|
3952 |
3204
|
3953 * parse.y (LEFTDIV_EQ, ELEFTDIV_EQ): New tokens. |
|
3954 (assign_expr): Add rules for them. |
|
3955 (make_assign_op): Handle them here too. |
|
3956 * lex.l: Recognize them. |
|
3957 * ov.h (octave_value::assign_op): Add ldiv_eq and el_ldiv_eq. |
|
3958 * ov.cc (octave_value::assign_op_as_string): Ditto. |
|
3959 (octave_value::op_eq_to_binary_op): Ditto. |
|
3960 (octave_value::assign): Handle OP= style operators with brute force. |
|
3961 (octave_value::simple_assign): New function. |
|
3962 |
3203
|
3963 * parse.y (matrix): Dont' forget to reset |
|
3964 lexer_flags.looking_at_matrix_or_assign_lhs. |
|
3965 |
|
3966 * oct-lvalue.cc (octave_lvalue::assign): Don't call change |
|
3967 function if error occurs. |
|
3968 (octave_lvalue::do_unary_op): If we have an index, fail with message. |
|
3969 |
3202
|
3970 Thu Oct 29 09:27:04 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3971 |
3203
|
3972 * ov.cc (do_binary_op): Protect against invalid type conversions. |
|
3973 (try_assignment_with_conversion): Likewise. |
|
3974 (do_unary_op): Likewise. |
|
3975 |
|
3976 * ov.h (OV_UNOP_FN, OV_UNOP_OP, OV_UNOP_FN_OP): New macros. |
|
3977 Use them to define not, uminus, transpose, hermitian functions |
|
3978 and operators ! and -. |
|
3979 (OV_BINOP_FN, OV_BINOP_OP, OV_BINOP_FN_OP): New macros. |
|
3980 Use them to define add, sub, mul, div, pow, ldiv, lshift, rshift, |
|
3981 lt, le, eq, ge, gt, ne, el_mul, el_div, el_pow, el_ldiv, el_and, |
|
3982 el_or, struct_ref, functions and operators <, <=, ==, >=, >, !=, |
|
3983 +, -, *, and /. |
|
3984 |
|
3985 * ops.h (CONVDECLX): New macro. |
|
3986 * ov-base.cc (matrix_conv, complex_matrix_conv, string_conv): |
|
3987 Use it to declare these functions. |
|
3988 |
|
3989 * ops.h (CONVDECL, INSTALL_WIDENOP): |
|
3990 Prefix function name with `oct_conv_'. |
|
3991 (INSTALL_BINOP, BINOPDECL): Prefix function name with `oct_binop_'. |
|
3992 (INSTALL_ASSIGNOP, INSTALL_ASSIGNANYOP, ASSIGNOPDECL): |
|
3993 Prefix function name with `oct_assignop_'. |
|
3994 (UNOPDECL, DEFNCUNOP_METHOD, INSTALL_UNOP, INSTALL_NCUNOP): |
|
3995 Prefix function name with `oct_unop_'. |
|
3996 |
|
3997 * ov-str-mat.cc (default_numeric_conversion_function): |
|
3998 Return 0 if conversion fails. |
|
3999 |
|
4000 * parse.y (make_prefix_op, make_postfix_op): Use |
|
4001 octave_value::unary_op enum. |
|
4002 |
|
4003 * pt-unop.cc (tree_prefix_expression::rvalue): Use new unary_op |
|
4004 functions from octave_value and octave_lvalue classes. |
|
4005 (tree_prefix_expression::rvalue): Likewise. |
|
4006 |
|
4007 * pt-unop.cc (tree_unary_expression::oper): Move here. |
|
4008 (tree_prefix_expression::oper, tree_postfix_expression): From here. |
|
4009 |
|
4010 * pt-unop.h (tree_prefix_expression, tree_postfix_expression): |
|
4011 Delete enums. |
|
4012 (tree_unary_expression): Use octave_value::unary_op enum. |
|
4013 * parse.y (make_prefix_op, make_postfix_op): Likewise. |
|
4014 |
|
4015 * oct-lvalue.h (octave_lvalue::do_unary_op): New function. |
|
4016 (octave_lvalue::increment, octave_lvalue::decrement): Delete. |
|
4017 |
|
4018 * ov-typeinfo.h (octave_value_typeinfo::non_const_unary_ops): |
|
4019 New data member. |
|
4020 * ov-typeinfo.h (octave_value_typeinfo::lookup_non_const_unary_op): |
|
4021 New function. |
|
4022 * ov-typeinfo.cc (octave_value_typeinfo::register_non_const_unary_op): |
|
4023 New function. |
|
4024 (octave_value_typeinfo::do_register_non_const_unary_op): Ditto. |
|
4025 (octave_value_typeinfo::do_lookup_non_const_unary_op): Ditto. |
|
4026 |
|
4027 * ov.cc (octave_value::do_non_const_unary_op): New function. |
|
4028 |
|
4029 * Makefile.in (OP_XSRC): Add op-chm.cc and op-range.cc to the list. |
|
4030 |
|
4031 * OPERATORS/op-str-str.cc: Define string matrix unary operators here. |
|
4032 (install_str_str_ops): Install them here. |
|
4033 * ov-bool-mat.h (octave_bool_matrix::transpose, |
|
4034 octave_bool_matrix_value::hermitian): Delete. |
|
4035 |
|
4036 * OPERATORS/op-chm.cc: New file. Define char matrix unary operators. |
|
4037 (install_chm_ops): Install them here. |
|
4038 * ov-ch-mat.h (octave_char_matrix::transpose, |
|
4039 octave_char_matrix_value::hermitian): Delete. |
|
4040 * ops.cc (install_ops): Call install_chm_ops. |
|
4041 |
|
4042 * OPERATORS/op-bm-bm.cc: Define bool matrix unary operators here. |
|
4043 (install_bm_bm_ops): Install them here. |
|
4044 * ov-bool-mat.h (octave_bool_matrix::transpose, |
|
4045 octave_bool_matrix_value::hermitian): Delete. |
|
4046 |
|
4047 * ov-bool.h (octave_bool::not, octave_bool::uminus, |
|
4048 octave_bool::transpose, octave_bool::hermitian): Delete. |
|
4049 |
|
4050 * OPERATORS/op-cs-cs.cc: Define complex scalar unary operators here. |
|
4051 (install_cs_cs_ops): Install them here. |
|
4052 * ov-complex.h (octave_complex::not, octave_complex::uminus, |
|
4053 octave_complex::transpose, octave_complex::hermitian): Delete. |
|
4054 |
|
4055 * OPERATORS/op-cm-cm.cc: Define complex matrix unary operators here. |
|
4056 (install_cm_cm_ops): Install them here. |
|
4057 * ov-cx-mat.h (octave_complex_matrix::not, |
|
4058 octave_complex_matrix::uminus, octave_complex_matrix::transpose, |
|
4059 octave_complex_matrix::hermitian): Delete. |
|
4060 |
|
4061 * OPERATORS/op-m-m.cc: Define matrix unary operators here. |
|
4062 (install_m_m_ops): Install them here. |
|
4063 * ov-re-mat.h (octave_matrix::not, octave_matrix::uminus, |
|
4064 octave_matrix::transpose, octave_matrix::hermitian): Delete. |
|
4065 |
|
4066 * OPERATORS/op-range.cc: New file. Define range unary operators. |
|
4067 (install_range_ops): Install them here. |
|
4068 * ov-range.h (octave_range::not, octave_range::uminus, |
|
4069 octave_range::transpose, octave_range::hermitian): Delete. |
|
4070 * ops.cc (install_ops): Call install_range_ops. |
|
4071 |
|
4072 * OPERATORS/op-s-s.cc: Define scalar unary operators here. |
|
4073 (install_s_s_ops): Install them here. |
|
4074 * ov-scalar.h (octave_scalar::not, octave_scalar::uminus, |
|
4075 octave_scalar::transpose, octave_scalar::hermitian): Delete. |
|
4076 |
|
4077 * ops.h (INSTALL_UNOP, CAST_UNOP_ARG, UNOPDECL, DEFUNOPX, DEFUNOP, |
|
4078 DEFUNOP_OP, DEFUNOP_FN): New macros. |
|
4079 |
|
4080 * ov.h (unary_op_fcn): New typedef. |
|
4081 (octave_value::unary_op): New enum. |
|
4082 * ov.cc (octave_value::octave_value): New function. |
|
4083 |
|
4084 * ov.h (octave_value::not, octave_value::uminus, |
|
4085 octave_value::transpose, octave_value::hermitian, |
|
4086 octave_value::increment, octave_value::decrement): Delete. |
|
4087 |
|
4088 * ov-base.cc (octave_base_value::not, octave_base_value::uminus, |
|
4089 octave_base_value::transpose, octave_base_value::hermitian, |
|
4090 octave_base_value::increment, octave_base_value::decrement): Delete. |
|
4091 |
|
4092 * ov.cc (gripe_unary_op): New function. |
|
4093 (do_unary_op): New function. |
|
4094 * ov-typeinfo.h (octave_value_typeinfo::unary_ops): |
|
4095 New data member. |
|
4096 * ov-typeinfo.cc (octave_value_info::register_unary_op, |
|
4097 octave_value_info::do_register_unary_op, |
|
4098 octave_value_info::lookup_unary_op, |
|
4099 octave_value_info::do_lookup_unary_op): |
|
4100 New functions. |
|
4101 |
3202
|
4102 * ov-list.cc (Fsplice): Use new octave_value::int_value function here. |
|
4103 (octave_list::do_index_op): Likewise. |
|
4104 (octave_list::assign): Likewise. |
|
4105 * toplev.cc (Fquit): Likewise. |
|
4106 * syscalls.cc (Fwaitpid): Likewise. |
|
4107 (Ffcntl): Likewise. |
|
4108 * file-io.cc (do_fread): Likewise. |
|
4109 (do_fwrite): Likewise. |
|
4110 * data.cc (make_diag): Likewise. |
|
4111 (Fsize): Likewise. |
|
4112 (get_dimensions): Likewise. |
|
4113 (Flinspace): |
|
4114 |
|
4115 * ov-base.cc (octave_base_value::int_value): New function. |
|
4116 (octave_base_value::nint_value): Ditto. |
|
4117 * ov.h (octave_value::int_value): Ditto. |
|
4118 (octave_value::nint_value): Ditto. |
|
4119 |
|
4120 * ov-list.cc (octave_list::assign): Fix off-by-one error. |
|
4121 |
3196
|
4122 Wed Oct 28 11:01:37 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4123 |
3202
|
4124 * load-save.cc (read_mat_ascii_data): Try harder to convert file |
|
4125 name to valid variable name. |
|
4126 |
|
4127 * data.cc (Fisempty, Fis_matrix): New functions. |
|
4128 |
|
4129 * ov-str-mat.h (octave_char_matrix_str::is_matrix_type): New function. |
|
4130 |
3196
|
4131 * OPERATORS/op-list.cc: New file. |
|
4132 * Makefile.in (OP_XSRC): Add it to the list. |
|
4133 |
|
4134 * ov-list.cc (octave_list::assign): New function. |
|
4135 |
|
4136 * ov-typeinfo.h (octave_value_typeinfo::assignany_ops): |
|
4137 New data member. |
|
4138 * ov-typeinfo.cc (octave_value_info::register_assignany_op, |
|
4139 octave_value_info::do_register_assignany_op, |
|
4140 octave_value_info::lookup_assignany_op, |
|
4141 octave_value_info::do_lookup_assignany_op): |
|
4142 New functions. |
|
4143 * ov.cc (octave_value::try_assignment (octave_value::assign_op, |
|
4144 const octave_value_list&, const octave_value&)): If no assignment |
|
4145 operator for particular RHS type exists, try finding one for |
|
4146 generic octave_value as RHS type. |
|
4147 * ops.h (DEFASSIGNANYOP_FN): New macro. |
|
4148 |
|
4149 * ov-list.cc (Fsplice): New function. |
|
4150 * oct-obj.cc (octave_value_list::splice): New function. |
|
4151 |
|
4152 * ov.cc (Vresize_on_range_error): No longer static. |
|
4153 * ov.h (Vresize_on_range_error): Provide extern declaration. |
|
4154 |
|
4155 * oct-procbuf.cc (symbols_of_oct_procbuf): Don't declare static. |
|
4156 |
|
4157 * data.cc (Flength): New function. |
|
4158 * ov.h (octave_value::length): New virtual function. |
|
4159 * ov-base.cc (octave_base_value::length): New function. |
|
4160 (octave_base_value::rows, octave_base_value::columns): Move |
|
4161 definitions here, from ov-base.h. Don't return -1. Instead, |
|
4162 gripe about wrong argument type. |
|
4163 * ov-bool-mat.h (octave_bool_matrix::length): New function. |
|
4164 * ov-bool.h (octave_bool::length): Ditto. |
|
4165 * ov-ch-mat.h (octave_char_matrix::length): Ditto. |
|
4166 * ov-complex.h (octave_complex::length): Ditto. |
|
4167 * ov-cx-mat.h (octave_complex_matrix::length): Ditto. |
|
4168 * ov-list.h (octave_list::length): Ditto. |
|
4169 * ov-range.h (octave_range::length): Ditto. |
|
4170 * ov-re-mat.h (octave_matrix::length): Ditto. |
|
4171 * ov-scalar.h (octave_scalar::length): Ditto. |
|
4172 |
|
4173 Tue Oct 27 22:19:24 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4174 |
|
4175 * ov-list.cc (octave_list::print_raw): Handle case of empty list. |
|
4176 (octave_list::print_name_tag): Likewise. |
|
4177 |
|
4178 * octave.cc (intern_argv): Built-in variable argv is now a list of |
|
4179 strings instead of a string vector. |
|
4180 Always bind argv, making it an empty list if there are no args. |
|
4181 |
|
4182 Mon Oct 26 08:41:46 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4183 |
|
4184 * xdiv.cc (mx_leftdiv_conform): Explicitly declare args to be |
|
4185 passed as references to const objects. Fix explicit instantiation |
|
4186 requests to match. |
|
4187 (mx_div_conform): Likewise. |
|
4188 |
|
4189 * pt-unop.h (tree_prefix_expression): Reorder constructor args to |
|
4190 put those with default values last. |
|
4191 (tree_postfix_expression): Likewise. |
|
4192 * parse.y: Change all callers. |
|
4193 |
3192
|
4194 Fri Oct 23 12:07:32 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4195 |
3196
|
4196 * utils.cc (Ffile_in_loadpath): New function. |
|
4197 |
|
4198 * defaults.cc (Vload_path, Vdefault_load_path): Now static. |
|
4199 |
|
4200 * help.cc (simple_help): Use Vload_path_dir_path here instead of |
|
4201 trying to reconstruct it from Vload_path. |
|
4202 * fn-cache.cc (octave_fcn_file_name_cache::do_list): Likewise. |
|
4203 (octave_fcn_file_name_cache::update): Likewise. |
|
4204 |
|
4205 * defaults.cc (octave_loadpath): Construct Vload_path_dir_path |
|
4206 using Vdefault_load_path. |
|
4207 (set_default_path): Likewise. |
|
4208 |
|
4209 * defaults.h, defaults.cc (maybe_add_default_load_path): Delete. |
|
4210 |
3192
|
4211 * defaults.cc (Vdefault_load_path): New static variable. |
|
4212 (set_default_path): Set it. |
|
4213 (maybe_add_default_load_path): Use it. |
|
4214 (symbols_of_defaults): Add DEFCONST for DEFAULT_LOADPATH. |
|
4215 Thanks to Rafael Laboissiere <rafael@icp.inpg.fr>. |
|
4216 |
|
4217 * defaults.cc (set_default_path): If OCTAVE_PATH is set in the |
|
4218 environment, call maybe_add_default_load_path on it. |
|
4219 |
|
4220 Tue Oct 20 20:58:04 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4221 |
|
4222 * defaults.cc (maybe_add_default_load_path): If LOADPATH contains |
|
4223 an embedded "::", insert the default path there too. |
|
4224 |
3189
|
4225 Fri Oct 16 00:52:15 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4226 |
|
4227 * parse.y (in_matrix_or_assign_lhs): New subroutine for lexical |
|
4228 feedback. |
|
4229 (matrix): Use it. |
|
4230 (assign_lhs): Ditto. |
|
4231 * lex.h (lexical_feedback::looking_at_matrix_or_assign_lhs): New |
|
4232 data member. |
|
4233 * lex.l (handle_identifier): Use it to handle keywords like `cd' |
|
4234 as variables in contexts like [ab, cd] = foo (). |
|
4235 |
|
4236 * ov-str-mat.h |
|
4237 (octave_char_matrix_str::octave_char_matrix_str (char c)): |
|
4238 New constructor. |
|
4239 * ov-ch-mat.h (octave_char_matrix::octave_char_matrix (char c)): |
|
4240 New constructor. |
|
4241 * ov.cc (octave_value::octave_value (char c): New constructor. |
|
4242 |
|
4243 * pt-loop.cc (tree_simple_for_command::eval): Handle case of RHS |
|
4244 as string. |
|
4245 |
|
4246 Thu Oct 15 00:56:47 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4247 |
|
4248 * DLD-FUNCTIONS/rand.cc: Declare Fortran subroutines as returning |
|
4249 int, not int*. |
|
4250 |
|
4251 Wed Oct 14 23:51:31 1998 Georg Thimm <thimm@idiap.ch> |
|
4252 |
|
4253 * load-save.cc (Vcrash_dumps_octave_core): New static variable. |
|
4254 (save_user_variables): Only save variables if |
|
4255 Vcrash_dumps_octave_core is true. |
|
4256 (symbols_of_load_save): Add DEFVAR for it here. |
|
4257 (crash_dumps_octave_core): New function. |
|
4258 * octave.cc (maximum_braindamage): Bind crash_dumps_octave_core to |
|
4259 0.0 here. |
|
4260 |
|
4261 Tue Oct 13 22:05:55 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4262 |
|
4263 * input.cc (read_readline_init_file): New function. |
|
4264 |
|
4265 Thu Oct 8 13:47:55 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4266 |
|
4267 * oct-procbuf.h (octave_procbuf::wstatus): New data member. |
|
4268 Initialize in constructors. |
|
4269 (octave_procbuf::wait_status): New member function. |
|
4270 * oct-procbuf.cc (octave_procbuf::sys_close): Use class data |
|
4271 member wstatus, not local variable. |
|
4272 * procstream.cc (procstreambase::close): Don't call sys_close directly. |
|
4273 Get subprocess exit status by calling wait_status for our procbuf. |
|
4274 * pt-plot.cc (close_plot_stream): Send "quit" command to gnuplot |
|
4275 before deleting plot_stream. |
|
4276 |
|
4277 |
|
4278 Thu Oct 1 22:39:44 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4279 |
|
4280 * data.cc (Fis_complex): New function. |
|
4281 |
3185
|
4282 Fri Sep 25 11:50:44 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4283 |
|
4284 * load-save.cc (write_header): Rename from write_binary_header. |
|
4285 Also write header for Octave ASCII files. |
|
4286 |
|
4287 * load-save.cc (Fsave): Implement -append option. |
|
4288 |
|
4289 * defaults.cc (Frehash): New function. |
|
4290 |
|
4291 Fri Sep 25 11:50:44 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4292 |
|
4293 * help.cc (help_from_info): Improve error message in case that |
|
4294 info doesn't work. |
|
4295 |
3180
|
4296 Thu Sep 24 10:48:12 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4297 |
3185
|
4298 * Makefile.in (DLD_XSRC): Replace qzval.cc with qz.cc |
|
4299 |
|
4300 * DLD-FUNCTIONS/balance.cc: Update from A. S. Hodel |
|
4301 <scotte@eng.auburn.edu>. |
|
4302 |
|
4303 * DLD-FUNCTIONS/qz.cc: New file. |
|
4304 |
|
4305 * DLD-FUNCTIONS/qzval.cc: Delete. |
|
4306 |
3180
|
4307 * parse.y (plot_command1): Don't allow it to be empty. |
|
4308 (plot_command): Handle simple `PLOT' and `PLOT ranges' as special |
|
4309 cases here. |
|
4310 |
|
4311 Wed Sep 23 21:10:08 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4312 |
|
4313 * lex.l: Change <MATRIX>{SNLCMT}*\n{SNLCMT}* pattern |
|
4314 to <MATRIX>{S}*{COMMENT}{SNLCMT}* | <MATRIX>{S}*{NL}{SNLCMT}*. |
|
4315 |
|
4316 Fri Sep 4 10:50:00 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4317 |
|
4318 * file-io.cc (Ffwrite): Fix doc string. |
|
4319 |
|
4320 Wed Sep 2 16:22:23 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4321 |
|
4322 * input.cc (match_sans_spaces): Make it work. |
|
4323 |
|
4324 * toplev.cc (quit): Require nargout == 0. |
|
4325 |
|
4326 * input.cc (get_user_input): Only try matching "exit", "quit", and |
|
4327 "return" if debugging. |
|
4328 |
|
4329 Tue Sep 1 12:50:24 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4330 |
|
4331 * octave.cc: Use -H as single character equivalent of --no-history. |
|
4332 |
|
4333 Sat Aug 29 12:23:12 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4334 |
|
4335 * oct-obj.cc (octave_value_list::make_argv): If some values are |
|
4336 string vectors, insert all the elements, not just the first. |
|
4337 |
|
4338 Tue Aug 18 16:39:50 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4339 |
|
4340 * oct-stream.cc (octave_base_stream::do_gets): Accept last line of |
|
4341 file even if it doesn't end in a newline character. |
|
4342 |
|
4343 Tue Aug 18 16:25:49 1998 Mumit Khan <khan@xraylith.wisc.edu> |
|
4344 |
|
4345 * xdiv.cc (mx_leftdiv_conform, mx_div_conform): Instantiate correct |
|
4346 templates. |
|
4347 |
|
4348 Thu Jul 30 00:37:43 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4349 |
|
4350 * pt-loop.cc (tree_for_command::eval): Check for range first. |
|
4351 If error occurs when extracting matrix value, return early. |
|
4352 Don't bother to check for string type. |
|
4353 |
|
4354 * ov-ch-mat.h (octave_char_matrix::is_real_matrix): New function. |
|
4355 |
|
4356 Tue Jun 23 15:09:54 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4357 |
|
4358 * parse.y (clear_current_script_file_name): New function. |
|
4359 (parse_fcn_file): Bind current_script_file_name while script is |
|
4360 executing. Use unwind_protect to clear it once the script is |
|
4361 finished. |
|
4362 |
|
4363 * pt-plot.cc (Fgraw): New function. |
|
4364 |
3178
|
4365 Mon Jun 22 22:13:38 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4366 |
|
4367 * variables.cc (is_valid_function): Provide version that takes |
|
4368 function name as string. |
|
4369 |
|
4370 * parse.y (binary_expr): Fix thinko that resulted in incorrect |
|
4371 evaluation of -x^y. Thanks to Richard Allan Holcombe |
|
4372 <raholcom@unity.ncsu.edu>. |
|
4373 (feval): Don't attempt to copy nonexistent arg names. |
|
4374 |
|
4375 Mon Jun 22 21:35:50 1998 Richard Allan Holcombe <raholcom@unity.ncsu.edu> |
|
4376 |
|
4377 * xpow.cc (xpow): Improve efficiency for matrix^(scalar int) case. |
|
4378 |
|
4379 Thu Jun 4 12:42:46 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4380 |
|
4381 * ov-usr-fcn.cc (octave_user_function::octave_all_va_args): |
|
4382 If num_args_passed < num_named_args, create zero length list. |
|
4383 |
3176
|
4384 Thu May 14 16:23:15 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4385 |
|
4386 * DLD-FUNCTIONS/getrusage.cc: Include sys/types.h too. |
|
4387 |
|
4388 Mon May 11 00:38:45 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4389 |
|
4390 * pager.cc (Fdiary): Don't forget to set write_to_diary file if |
|
4391 just given a file name. |
|
4392 |
|
4393 * input.cc (octave_gets): Only send new line character to |
|
4394 octave_diary if current_input_line is empty or doesn't already end |
|
4395 with a new line character.. |
|
4396 Don't send input from function files or scripts to octave_diary. |
|
4397 |
3174
|
4398 Sun May 3 19:54:38 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4399 |
|
4400 * lex.l (reset_parser): Also call yyrestart if forced_interactive |
|
4401 is true, but not if input_from_startup_file is true. |
|
4402 |
|
4403 Tue Apr 28 14:06:20 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4404 |
|
4405 * oct-procbuf.cc (Vkluge_procbuf_delay): New static variable. |
|
4406 (kluge_procbuf_delay): New function. |
|
4407 (symbols_of_oct_procbuf): New function. |
|
4408 (octave_procbuf::open): Delay Vkluge_procbuf_delay microseconds |
|
4409 after forking. |
|
4410 |
|
4411 Thu Apr 23 15:41:08 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4412 |
|
4413 * defaults.cc (Vload_path_dir_path): New variable. |
|
4414 * utils.cc (file_in_path): Use it. |
|
4415 |
|
4416 * utils.cc (search_path_for_file): Undo previous change. |
|
4417 (file_in_path): Undo previous change. |
|
4418 * defaults.cc (loadpath): Undo previous change. Tilde expansion |
|
4419 is once again handled correctly by the code in |
|
4420 liboctave/pathsearch.cc. |
|
4421 |
|
4422 Mon Apr 20 21:50:34 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4423 |
|
4424 * data.cc (get_dimensions): Allow zeros ([], 3) to work, for |
|
4425 compatibility with Matlab. |
|
4426 |
|
4427 * dynamic-ld.cc [WITH_DL && ! HAVE_DLFCN_H]: Add declarations for |
|
4428 dlopen, dlerror, dlsym, and dlclose. |
|
4429 |
|
4430 * octave.gperf: Handle __FILE__ and __LINE__. |
|
4431 * lex.l (is_keyword): Likewise. |
|
4432 * Makefile.in (oct-gperf.h): Pass -D option to gperf. |
|
4433 Postprocess output of gperf to convert name of static variable |
|
4434 from lookup to gperf_lookup, to avoid conflict with our function |
|
4435 of the same name defined in variables.cc. |
|
4436 |
3168
|
4437 Sat Apr 18 20:17:10 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4438 |
|
4439 * help.cc (USE_GNU_INFO): Delete uses of this macro. |
|
4440 |
3167
|
4441 Thu Apr 16 01:00:12 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4442 |
|
4443 * dynamic-ld.cc: Only include dlfcn.h if HAVE_DLFCN_H. |
|
4444 |
3165
|
4445 Wed Apr 15 01:03:05 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4446 |
|
4447 * input.cc (Vlast_prompt_time): New global variable. |
|
4448 (octave_gets): Set it. |
3166
|
4449 * ov-fcn.h (octave_function::time_checked): New virtual function |
|
4450 (octave_function::mark_fcn_file_up_to_date): Ditto. |
3165
|
4451 * ov-usr-fcn.h (octave_user_function::time_checked): New function. |
|
4452 (octave_user_function::mark_fcn_file_up_to_date): Ditto. |
|
4453 (octave_user_function::t_checked): New data member. |
|
4454 * variables.cc (symbol_out_of_date): Only check file time stamp if |
|
4455 a prompt has been printed since the last time check. |
|
4456 |
|
4457 * pt-plot.h, pt-plot.cc (subplot_axes): New class. |
|
4458 (subplot): Handle axes. |
|
4459 (Vgnuplot_command_axes): New static variable. |
|
4460 (gnuplot_command_axes): New function. |
|
4461 (symbols_of_pt_plot): DEFVAR gnuplot_command_axes. |
|
4462 * pt-walk.h (tree_walker::visit_subplot_axes): New virtual function. |
|
4463 * parse.y (plot_options): Handle axes. |
|
4464 * lex.l (plot_axes_token): New function. |
|
4465 (is_keyword): Use it. |
|
4466 (is_plot_keyword): Recognize "axes" and "axis". |
|
4467 * lex.h (class lexical_feedback): New field, in_plot_axes. |
|
4468 (lexical_feedback::init): Reset it. |
|
4469 |
|
4470 Tue Apr 14 23:32:27 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4471 |
|
4472 * parse.y (parse_fcn_file): New arg, force_script. Change callers. |
|
4473 |
3164
|
4474 Fri Apr 10 11:01:27 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4475 |
|
4476 * help.cc (type): Also print values of variables. |
|
4477 |
3162
|
4478 Wed Apr 8 01:00:58 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4479 |
3164
|
4480 * pr-output.cc (set_format): Set scale to 1.0 if all elements are |
|
4481 int or inf or nan. |
|
4482 |
3162
|
4483 * parse.y (Vwarn_future_time_stamp): New variable. |
|
4484 (symbols_of_parse): Add DEFVAR for it. |
|
4485 (warn_future_time_stamp): New function. |
|
4486 (frob_function_def): Maybe warn about files with future time stamps. |
|
4487 |
|
4488 Thu Apr 2 20:43:45 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4489 |
|
4490 * pt-arg-list.cc (tree_argument_list::convert_to_const_vector): In |
|
4491 error messages, print element numbers starting with 1, not 0. |
|
4492 |
|
4493 Sat Mar 28 15:25:44 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4494 |
|
4495 * toplev.cc (clean_up_for_exit): New function. |
|
4496 (clean_up_and_exit): Use it. |
|
4497 * sighandlers.cc (my_friendly_exit): Call it instead of |
|
4498 clean_up_and_exit, then do default action for signal. |
|
4499 |
|
4500 * sighandlers.cc (octave_new_handler): Call my_friendly_exit with |
|
4501 signal set to SIGABRT if it is defined, or -1 otherwise. |
|
4502 |
|
4503 * error.cc (verror): Fix thinko in attempt to skip `error: ' tag |
|
4504 when buffering error messages. |
|
4505 * pt-except.cc (tree_try_catch::eval): Reset buffer_error_messages |
|
4506 here if just discarding unwind_protect frame. |
|
4507 |
|
4508 Wed Mar 18 12:35:18 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4509 |
|
4510 * xpow.cc (elem_xpow): For real-scalar .^ matrix case, result is |
|
4511 complex only if real-scalar is negative and matrix has some |
|
4512 non-integer values. |
|
4513 |
|
4514 Tue Mar 17 17:47:50 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4515 |
|
4516 * pt-plot.cc (Vgnuplot_command_plot, Vgnuplot_command_replot, |
|
4517 Vgnuplot_command_splot, Vgnuplot_command_using, |
|
4518 Vgnuplot_command_with, Vgnuplot_command_title, |
|
4519 Vgnuplot_command_end): New static variables. |
|
4520 (symbols_of_pt_plot): DEFVAR them. |
|
4521 (gnuplot_command_plot, gnuplot_command_replot, |
|
4522 gnuplot_command_splot, gnuplot_command_using, |
|
4523 gnuplot_command_with, gnuplot_command_title, |
|
4524 gnuplot_command_end): New functions. |
|
4525 (open_plot_stream, send_to_plot_stream, tree_plot_command::eval, |
|
4526 subplot_using::print, subplot_style::print, subplot::print, |
|
4527 do_external_plotter_cd, Fgset, Fgshow): Use them instead of the |
|
4528 GPLOT_CMD_PLOT, GPLOT_CMD_REPLOT, GPLOT_CMD_SPLOT, |
|
4529 GPLOT_CMD_USING, GPLOT_CMD_WITH, GPLOT_CMD_TITLE, and |
|
4530 GPLOT_CMD_END macros. |
|
4531 |
3160
|
4532 Fri Feb 27 12:25:27 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4533 |
|
4534 * help.cc (additional_help_message): Fix www address. |
|
4535 |
|
4536 Tue Feb 24 00:42:59 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4537 |
|
4538 * help.cc (simple_help): Put additional help message first. |
|
4539 (additional_help_message): Add information about web site and |
|
4540 mailing list. |
|
4541 |
3156
|
4542 Fri Feb 20 00:41:06 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4543 |
|
4544 * pt-plot.cc (GPLOT_CMD_REPLOT): Clear before replot. |
|
4545 |
|
4546 * Makefile.in: Better handling of lib flags for linking. |
|
4547 |
|
4548 Thu Feb 19 21:14:30 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4549 |
|
4550 * pt-decl.cc (Vinitialize_global_values): New static variable. |
|
4551 (initialize_global_variables): New function. |
|
4552 (symbols_of_pt_decl): New function. |
|
4553 DEFVAR Vinitialize_global_values and initialize_global_variables. |
|
4554 (tree_global_command::do_init): If initialize_global_variables is |
|
4555 not true and the variable doesn't have an explicit initializer, don't |
|
4556 initialize it. If we are giving it a default value, use the value |
|
4557 of the variable defualt_global_variable_value. |
|
4558 * octave.cc (maximum_braindamage): Set default_global_variable_value |
|
4559 and initialize_global_variables to Matlab-compatible values. |
|
4560 |
|
4561 Wed Feb 18 04:35:31 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4562 |
|
4563 * DLD-FUNCTIONS/besselj.cc: Rename from bessel.cc. |
|
4564 * Makefile.in (DLD_XSRC): Likewise. |
|
4565 |
|
4566 * syscalls.cc (Fvfork): Delete. |
|
4567 |
|
4568 * oct-procbuf.cc: Just use fork. |
|
4569 |
|
4570 * parse.y (feval): Provide version that takes function name |
|
4571 separate from other args. |
|
4572 * parse.h: Declare it. |
|
4573 |
|
4574 * oct-procbuf.cc (octave_procbuf::open): Move declaration of |
|
4575 child_std_end outside of child scope and declare volatile. |
|
4576 |
|
4577 Mon Feb 16 15:04:28 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4578 |
|
4579 * parse.y: Include cstdio, for SEEK_SET. |
|
4580 |
3153
|
4581 Thu Feb 12 22:07:00 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4582 |
|
4583 * system.c: New file. |
|
4584 * Makefile.in (SOURCES): Add it to the list. |
|
4585 |
3148
|
4586 Fri Feb 6 01:23:18 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4587 |
|
4588 * oct-stream.cc (octave_base_stream::file_number): Rename from fileno. |
|
4589 Change all uses. |
|
4590 |
|
4591 * fsolve.cc (fsolve_option_table): Add missing & to function names. |
|
4592 |
3145
|
4593 Thu Feb 5 02:27:18 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4594 |
3147
|
4595 * dirfns.cc (Fls): If first attempt at reading process output |
|
4596 fails, sleep once and try again. |
|
4597 * toplev.cc (run_command_and_return_output): Likewise. |
|
4598 |
|
4599 * oct-procbuf.cc (octave_procbuf::open): Use vfork if it is available. |
|
4600 |
|
4601 * syscalls.cc (Fvfork): New function. |
|
4602 |
3145
|
4603 * ov-bool-mat.cc: Only declare assign function if |
|
4604 CXX_NEW_FRIEND_TEMPLATE_DECL is not defined. |
|
4605 |
|
4606 * ov-base.h, ov-bool-mat.h, ov-bool.h, ov-ch-mat.h, ov-complex.h, |
|
4607 ov-cx-mat.h, ov-range.h, ov-re-mat.h, ov-scalar.h: Handle default |
|
4608 args for *_value functions consistently. |
|
4609 |
|
4610 * symtab.cc (maybe_list_cmp_fcn): Declare args as void*, not |
|
4611 void**, then use X_CAST. |
|
4612 |
|
4613 * OPERATORS/op-s-cm.cc: Include mx-cm-s.h. |
|
4614 |
|
4615 * defun-int.h: Include ov-builtin.h, ov-mapper.h, and symtab.h. |
|
4616 (install_builtin_mapper, install_builtin_function, |
|
4617 install_builtin_variable) Use specific types rather than void * in |
|
4618 declaration. |
|
4619 * defun.cc (install_builtin_mapper, install_builtin_function, |
|
4620 install_builtin_variable): Likewise. Eliminate casts. |
|
4621 |
|
4622 * load-save.cc (read_binary_data, read_mat_file_header, |
|
4623 save_binary_data): Use X_CAST, not static_cast. |
|
4624 * unwind-prot.h (unwind_protect::save_ptr): Likewise. |
|
4625 * Map.cc (goodCHptr, index_to_CHptr, CHptr_to_index): Likewise. |
|
4626 * dynamic-ld.cc (octave_dlopen_dynamic_loder::resolve_reference): |
|
4627 Likewise. |
|
4628 |
|
4629 * pt-mat.cc (tm_const::operator bool ()): |
|
4630 (tm_row_const::operator bool ()): Likewise. |
|
4631 * oct-stream.cc (printf_value_cache::operator bool ()): Likewise. |
|
4632 (scanf_format_list::operator bool ()): Likewise. |
|
4633 (printf_format_list::operator bool ()): Likewise. |
|
4634 (octave_stream::operator bool ()): Likewise. |
|
4635 |
|
4636 Wed Feb 4 13:08:29 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4637 |
|
4638 * DLD-FUNCTIONS/minmax.cc: Include cmath, not oct-math.h. |
|
4639 |
|
4640 * syscalls.cc (Fdup2): Convert stream to actual system file id. |
|
4641 |
|
4642 * oct-stream.cc (octave_base_stream::fileno, octave_stream::fileno): |
|
4643 New functions. |
|
4644 |
3141
|
4645 Tue Feb 3 00:24:44 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4646 |
|
4647 * defaults.cc (exec_path): Append Vbin_dir to std_path. |
|
4648 |
|
4649 * octave.cc (initialize_pathsearch): Set TEXMFDBS, not TEXMF. |
|
4650 Look for OCTAVE_DB_PATH in environment. |
|
4651 Simplify using Vdata_dir and Vlibexec_dir. |
|
4652 |
|
4653 * defaults.h.in (Vdata_dir, Vlibexecdir): Declare new vars. |
|
4654 defaults.cc: Define them. |
|
4655 (set_default_data_dir, set_default_libexecdir): New functions. |
|
4656 (install_defaults): Call them. |
|
4657 |
|
4658 * defaults.h.in (OCTAVE_LIBEXECDIR): Define. |
|
4659 |
|
4660 Mon Feb 2 02:43:16 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4661 |
|
4662 * Makefile.in (install, uninstall): Use $(octlibdir), not $(libdir). |
|
4663 Use mk-libdir-link. |
|
4664 |
|
4665 * defaults.h.in (OCTAVE_OCTLIBDIR): Substitute value. |
|
4666 (Vlib_dir): Delete declaration. |
|
4667 * defaults.cc (Vlib_dir): Delete. |
|
4668 (set_default_lib_dir): Delete. |
|
4669 (install_defaults): Don't call set_default_lib_dir. |
|
4670 (set_default_info_prog): If oct_info_prog is empty, set default to |
|
4671 "info" -- we expect it to be somewhere in the user's path. |
|
4672 |
|
4673 * defun.h (DEFCONST, DEFCONSTX): Eliminate inst_as_fcn and chg_fcn |
|
4674 args. Always pass true for inst_as_fcn and 0 for chg_fcn to |
|
4675 DEFVAR when creating built-in values like `e' or `stderr' that can |
|
4676 be redefined. Change all uses. |
|
4677 |
|
4678 * help.cc (Ftype): Handle script files too. |
|
4679 (Fwhich): Likewise. |
|
4680 |
3136
|
4681 Sat Jan 31 00:00:26 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4682 |
|
4683 * ov-ch-mat.cc (octave_char_matrix::is_true): Make it work. |
|
4684 * ov-str-mat.h, ov-str-mat.cc (octave_char_matrix_str::is_true): |
|
4685 Delete. |
|
4686 |
|
4687 * load-save.cc (read_ascii_data): Allow strings of length 0. |
|
4688 If we don't find data on the first call, fail with error message. |
|
4689 (do_load): Pass count of items read to read_ascii_data. |
|
4690 Allow `load foo xyz' to work when foo contains only numbers. |
|
4691 |
|
4692 Fri Jan 30 23:46:42 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4693 |
|
4694 * ov-str-mat.h (octave_char_matrix_str::all): Delete. |
|
4695 (octave_char_matrix_str::any): Delete. |
|
4696 * ov-ch-mat.h (octave_char_matrix::all, octave_char_matrix::any): |
|
4697 Call charMatrix::all, charMatrix::any. |
|
4698 |
|
4699 Thu Jan 29 16:25:46 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4700 |
|
4701 * load-save.cc (read_mat_binary_data): Handle third digit of MOPT |
|
4702 as flag indicating row or column major ordering. |
|
4703 |
3131
|
4704 Wed Jan 28 00:18:17 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4705 |
|
4706 * DLD-FUNCTIONS/dassl.cc (lsode_option_table): |
|
4707 Add missing & to function names. |
|
4708 * DLD-FUNCTIONS/lsode.cc (lsode_option_table): Likewise. |
|
4709 * DLD-FUNCTIONS/quad.cc (quad_option_table): Likewise. |
|
4710 |
|
4711 * Makefile.in (oct-gperf.h): Add -G option to gperf. |
|
4712 |
|
4713 * load-save.cc (get_save_type): Add `UL' and `L' suffixes to large |
|
4714 constant values. For LS_INT, use <= and >= for comparison. |
|
4715 |
|
4716 Mon Jan 26 13:17:59 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4717 |
|
4718 * ov-usr-fcn.cc (Vmax_recursion_depth): New static variable. |
|
4719 (max_recursion_depth): New fucnction |
|
4720 (symbols_of_ov_usr_fcn): DEFVAR max_recursion_depth. |
|
4721 (octave_user_function::do_index_op): Check Vmax_recursion_depth. |
|
4722 |
3130
|
4723 Thu Jan 22 13:45:26 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4724 |
|
4725 * dynamic-ld.cc (make_dynamic_loader): Fix typo. |
|
4726 |
|
4727 Tue Jan 20 17:02:19 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4728 |
|
4729 * variables.cc (Fexist): If local symbol is undefined, check |
|
4730 global table. |
|
4731 |
|
4732 * pr-output.cc (pr_max_internal): Initial value for result is |
|
4733 -DBL_MAX, not DBL_MIN. |
|
4734 |
3125
|
4735 Thu Jan 8 11:54:33 1998 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4736 |
|
4737 * xpow.cc (elem_xpow): If second arg of pow is complex, make sure |
|
4738 first arg is also complex. |
|
4739 |
|
4740 * symtab.cc (symbol_table::rename): Properly insert new item at |
|
4741 the front of the list to avoid losing the rest of the items. |
|
4742 |
|
4743 Thu Dec 11 23:30:03 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4744 |
|
4745 * variables.cc (Fclear): Increment index to skip -x arg. |
|
4746 |
3124
|
4747 Tue Dec 9 02:45:35 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4748 |
|
4749 * Makefile.in (INCLUDES): Don't forget Pix.h. |
|
4750 |
|
4751 * BaseSLList.cc: Don't include nonstandard libg++ header files. |
|
4752 |
3119
|
4753 Sun Nov 30 14:58:56 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4754 |
3124
|
4755 * pr-output.cc: Include cmath, not oct-math. |
|
4756 * sysdep.cc: Likewise. |
|
4757 |
3119
|
4758 * DLD-FUNCTIONS/bessel.cc: New file. |
|
4759 * Makefile.in (DLD_XSRC): Add it to the list. |
|
4760 |
3113
|
4761 Thu Nov 27 23:28:59 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4762 |
|
4763 * lex.l (handle_string): Constructor for string class takes |
|
4764 (size_t, char) args, not (char, size_t). |
|
4765 |
3111
|
4766 Wed Nov 26 00:39:34 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4767 |
|
4768 * Makefile.in (OCTAVE_LIBS): Include $(SPECIAL_MATH_LIB) just |
|
4769 ahead of -lcruft. |
|
4770 |
3110
|
4771 Thu Nov 20 15:16:22 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4772 |
|
4773 * octave.cc (maximum_braindamage): Bind implicit_num_to_str_ok to 1. |
|
4774 * pt-mat.cc (Vimplicit_num_to_str_ok): New static variable. |
|
4775 (implicit_num_to_str_ok): New function. |
|
4776 (symbols_of_pt_mat): DEFVAR implicit_num_to_str_ok. |
|
4777 (tm_row_const::some_str): New data member. |
|
4778 (tm_row_const::some_strings_p): New function. |
|
4779 (tm_row_const::init): Set some_str. |
|
4780 (tm_const::some_str): New data member. |
|
4781 (tm_const::some_strings_p): New function. |
|
4782 (tm_const::init): Set some_str. |
|
4783 (tree_matrix::eval): If Vimplicit_num_to_str_ok is true and some |
|
4784 of the elements are strings, force a string conversion before |
|
4785 returning. |
|
4786 |
|
4787 * parse.y (fold, finish_colon_expression, finish_matrix): |
|
4788 If an error occurs, return the original expression. |
|
4789 Use unwind_protect to restore error_state. |
|
4790 |
|
4791 * ov-ch-mat.h (octave_char_matrix::convert_to_str): Result is |
|
4792 char_matrix_str, not just char_matrix. |
|
4793 |
3107
|
4794 Wed Nov 19 02:05:40 1997 Mumit Khan <khan@dhaka.xraylith.wisc.edu> |
|
4795 |
|
4796 * DLD-FUNCTIONS/filter.cc: Don't include extern template decls if |
3109
|
4797 CXX_NEW_FRIEND_TEMPLATE_DECL is defined. |
3107
|
4798 * ov-cx-mat.cc: Likewise. |
|
4799 * ov-re-mat.cc: Likewise. |
|
4800 * ov-str-mat.cc: Likewise. |
|
4801 |
|
4802 * ov-cx-mat.h (octave_complex_matrix::decrement, |
|
4803 octave_complex_matrix): Use explicit Complex constructor. |
|
4804 |
|
4805 Wed Nov 19 00:08:13 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4806 |
|
4807 * pt-decl.cc (tree_global_command::do_init): Initialize global |
|
4808 values to `[]'. Only perform explicit initialization once. |
|
4809 |
3103
|
4810 Tue Nov 18 04:27:55 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4811 |
3105
|
4812 * pr-output.cc (Vfixed_point_format): New variable. |
|
4813 (fixed_point_format): New fucntion. |
|
4814 (symbols_of_pr_output): Add DEFVAR for fixed_point_format. |
|
4815 (set_real_matrix_format): Handle fixed point format |
|
4816 (set_complex_matrix_format): Handle fixed point format |
|
4817 (set_format): New arg, scale in Matrix, ComplexMatrix, Range versions. |
|
4818 (pr_scale_header): New function. |
|
4819 (octave_print_internal): Handle fixed point format in Matrix, |
|
4820 ComplexMatrix, and Range versions. |
|
4821 * octave.cc (maximum_braindamage): Set fixed_point_format to 1.0. |
|
4822 |
3103
|
4823 * utils.cc (do_string_escapes): Move here, from lex.l. |
|
4824 Arg is now const string& instead of char*. |
|
4825 Return new string object instead of modifying arg in place. |
|
4826 (Fdo_string_escapes): New function. |
|
4827 * lex.l (handle_string): Use new version of do_string_escapes. |
3105
|
4828 |
|
4829 * lex.l (Vbackslash_escapes): Delete. |
|
4830 (backslash_escapes): Delete. |
|
4831 (do_string_escapes): Undo previous change. |
|
4832 (eat_whitespace, eat_continuation): Undo previous change. |
|
4833 (handle_string): Undo previous change. |
|
4834 (symbols_of_lex): Undo previous change. |
|
4835 * octave.cc (maximum_braindamage): Undo previous change. |
3103
|
4836 |
3096
|
4837 Fri Nov 14 01:53:13 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4838 |
3100
|
4839 * parse.y (eval_string (const string&, bool, int&, int)): No |
|
4840 longer static. |
|
4841 * parse.h: Provide declaration. |
|
4842 * input.cc (get_user_input (const octave_value_list&, bool, int)): |
|
4843 New arg, nargout. Pass it to eval_string. |
|
4844 (keyboard): Pass nargout = 0 to get_user_input. |
|
4845 (input): Pass nargout to get_user_input. |
|
4846 |
3098
|
4847 * input.cc (get_user_input (const octave_value_list&, bool)): |
3100
|
4848 Return octave_value_list() if user enters `quit', `exit', or `return'. |
3098
|
4849 If debugging, let eval_string handle the printing chores and |
|
4850 reset error_state before asking for more input. |
|
4851 |
|
4852 * input.cc (Fkeyboard): Unconditionally turn on history here. |
|
4853 |
3096
|
4854 * lex.l (have_continuation, have_ellipsis_continuation): Declare |
|
4855 arg as bool, not int. Change callers. |
|
4856 |
|
4857 * lex.l (Vbackslash_escapes): New static variable. |
|
4858 (backslash_escapes): New function. |
|
4859 (do_string_escapes): Return immediately if ! Vbackslash_escapes. |
|
4860 (eat_whitespace, eat_continuation): Only call have_continuation if |
|
4861 Vbackslash_escapes. |
|
4862 (handle_string): Backslash is only special if Vbackslash_escapes. |
|
4863 (symbols_of_lex): Add DEFVAR for backslash_escapes. |
|
4864 * octave.cc (maximum_braindamage): Set backslash_escapes to 0. |
|
4865 |
3095
|
4866 Thu Nov 13 16:20:40 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4867 |
3096
|
4868 * variables.cc (Fexist): Also return 2 if NAME is a regular file |
|
4869 somewhere in the LOADPATH. |
|
4870 |
3095
|
4871 * data.cc (sumsq): Fix doc string. |
|
4872 |
|
4873 * parse.y (Fsource): Call parse_fcn_file, not parse_and_execute. |
|
4874 |
3092
|
4875 Tue Oct 7 16:51:01 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4876 |
|
4877 * defun-int.h (DEFINE_FUN_INSTALLER_FUN): Set installed to true |
|
4878 after installing the function. |
|
4879 |
3088
|
4880 Thu Sep 25 10:17:26 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4881 |
|
4882 * DLD-FUNCTIONS/filter.cc (Ffilter): Return second output value |
|
4883 even when called with only 3 arguments. |
|
4884 |
3086
|
4885 Mon Sep 22 16:44:27 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4886 |
|
4887 * DLD-FUNCTIONS/rand.cc (do_rand): Print error if first of two |
|
4888 args is a string but doesn't match "seed". |
3088
|
4889 (Frand, Frandn): Fix doc string. |
3086
|
4890 |
3081
|
4891 Mon Aug 25 10:42:07 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4892 |
|
4893 * input.cc (get_user_input): Return an empty string if the user |
|
4894 just types RET. |
|
4895 |
3079
|
4896 Thu Jul 31 22:59:04 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4897 |
|
4898 * lex.l <TEXT_FCN>: Ensure that we handle words that begin with |
|
4899 single or double quotes as strings. |
|
4900 |
3074
|
4901 Thu Jul 17 13:06:48 1997 Klaus Gebhardt <gebhardt@crunch.ikp.physik.th-darmstadt.de> |
|
4902 |
|
4903 * DLD-FUNCTIONS/rand.cc (Frand): Use F77_XFCN to call getsd, |
|
4904 setsd, setall, setcgn, dgenunf, and dgennor since they can call |
|
4905 XSTOPX. |
|
4906 |
3072
|
4907 Mon Jul 14 12:54:23 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4908 |
|
4909 * dynamic-ld.cc (octave_dynamic_loader::load_fcn_from_dot_oct_file): |
|
4910 If first attempt to load function fails, prepend and underscore |
|
4911 and try again. |
|
4912 |
|
4913 * Makefile.in (install-inc): If defaults.h, oct-conf.h, or |
|
4914 oct-gperf.h don't exist in the current directory, look in $(srcdir). |
|
4915 |
3068
|
4916 Mon Jul 7 21:14:07 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4917 |
|
4918 * DLD-FUNCTIONS/qr.cc (Fqr): Correctly handle nargout == 0. |
|
4919 |
3067
|
4920 Wed Jul 2 16:47:09 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4921 |
|
4922 * matherr.c: New file. Move matherr function here. |
|
4923 * sysdep.cc: From here. |
|
4924 * Makefile.in (DIST_SRC): Add matherr.c to the list. |
|
4925 |
|
4926 * error.cc (handle_message): Avoid bug in g++ snapshot. |
|
4927 |
3065
|
4928 Thu Jun 26 22:04:09 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4929 |
|
4930 * utils.cc (file_in_path): Add default load path to PATH arg if |
|
4931 it begins or ends with a colon. |
|
4932 |
3060
|
4933 Wed Jun 25 13:31:06 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4934 |
|
4935 * oct-lvalue.h (octave_lvalue::struct_elt_ref): Ensure val is unique. |
|
4936 |
|
4937 Fri Jun 20 12:33:35 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4938 |
|
4939 * toplev.cc (cmd_death_handler): New function. |
|
4940 (run_command_and_return_output): Insert pid of command in |
|
4941 octave_child_list along with pointer to cmd_death_handler so we |
|
4942 can get the exit status without having to block SIGCHLD. |
|
4943 (cleanup_iprocstream): Remove pid of command from octave_child_list. |
|
4944 |
3053
|
4945 Sun Jun 15 16:11:13 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4946 |
3054
|
4947 * OPERATORS/op-cs-s.cc (ldiv): Doh, v1 is complex, v2 is real. |
|
4948 |
3053
|
4949 * Makefile.in (DISTFILES): Add mkops to the list. |
|
4950 (dist): Correctly link files in DLD-FUNCTIONS, OPERATORS, and |
|
4951 TEMPLATE-INST subdirectories. |
|
4952 |
3040
|
4953 Fri Jun 6 04:30:57 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4954 |
3042
|
4955 * DLD-FUNCTIONS/npsol.cc, DLD-FUNCTIONS/qpsol.cc, |
|
4956 DLD-FUNCTIONS/fsqp.cc: Delete. |
|
4957 * Makefile.in (DLD_XSRC): Remove them from the list. |
|
4958 |
3040
|
4959 * utils.cc (search_path_for_file): New arg, do_tilde_expansion. |
|
4960 If TRUE, perform tilde expansion on path before searching. |
|
4961 (file_in_path): Call search_path_for_file with do_tilde_expansion |
|
4962 set to false, since we've already performed tilde expansion on the |
|
4963 load path. |
|
4964 |
|
4965 * defaults.cc (loadpath): Perform tilde expansion here. |
|
4966 |
3029
|
4967 Thu Jun 5 01:42:39 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4968 |
3034
|
4969 * Makefile.in: Make building of static library optional. |
3036
|
4970 (liboctave.$(SHLEXT_VER)): Add $(SONAME_FLAGS) to command. |
3034
|
4971 |
3033
|
4972 * dynamic-ld.cc (octave_shl_load_dynamic_loader::resolve_reference): |
|
4973 Call shl_findsym with type set to TYPE_UNDEFINED. |
|
4974 |
3029
|
4975 * Makefile.in (stamp-picdir): Delete. |
|
4976 (pic): New target. Don't worry so much about creating pic |
|
4977 directory only when it is really needed. |
|
4978 (stamp-interp): Delete. |
|
4979 (libraries): New target. Depend on shared library directly. |
|
4980 |
3024
|
4981 Wed Jun 4 00:09:42 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4982 |
|
4983 * octave.cc (main): Call dir_path::set_program_name here. |
|
4984 |
3021
|
4985 Tue Jun 3 16:47:34 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
4986 |
3022
|
4987 * variables.cc (symbol_out_of_date): Make it work again. |
|
4988 |
3021
|
4989 * parse.y (parse_and_execute): Move here from toplev.cc |
|
4990 (default_eval_print_flag): Likewise. |
|
4991 (safe_fclose): Likewise. |
|
4992 (eval_string): Likewise. |
|
4993 (Fsource): Likewise. |
|
4994 (Ffeval): Likewise. |
|
4995 (feval): Likewise. |
|
4996 (Feval): Likewise. |
|
4997 (symbols_of_parse): Define default_eval_print_flag here instead of |
|
4998 in varaibles.cc. |
|
4999 (looks_like_octave_copyright): Move here from variables.cc |
|
5000 (gobble_leading_whitespace): Likeiwse. |
|
5001 (is_function_file): Likewise. |
|
5002 (restore_input_stream): Likewise. |
|
5003 (parse_fcn_file): Likewise. |
|
5004 (load_fcn_from_file): Likewise. |
|
5005 (get_help_from_file): Likewise. |
|
5006 |
|
5007 * toplev.cc (syms_of_toplev): Define argv, program_name, and |
|
5008 program_invocation_name here instead of in variables.cc. |
|
5009 |
|
5010 * parse.h (line_editing): Move here from toplev.h. Now bool, not int. |
|
5011 (reading_startup_message_printed) Likewise. |
|
5012 (input_from_startup_file): Likewise. |
|
5013 (input_from_command_line_file): Likewise. |
|
5014 |
|
5015 * load-save.cc: Use bool instead of int where appropriate. |
|
5016 |
|
5017 * input.h (enum echo_state): Move here from variables.h. |
|
5018 (Vecho_executing_commands): Likewise. Now bool, not int. |
|
5019 * input.cc (echo_executing_commands): Move here from variables.cc. |
|
5020 (symbols_of_input): Define echo_executing_commands here instead of |
|
5021 in variables.cc. |
|
5022 |
|
5023 * octave.cc (program_invocation_name): Don't define. |
|
5024 (intern_argv): Don't set program_invocation_name here. |
|
5025 (main): Call octave_env::set_program_name here, not in intern_argv. |
|
5026 |
|
5027 * toplev.cc (quitting_gracefully): Move here from octave.h and |
|
5028 make static bool instead of extern int. |
|
5029 |
|
5030 * error.cc (bind_global_error_variable, clear_global_error_variable): |
|
5031 Move here from variables.cc. |
|
5032 (symbols_of_error): Define error_text here instead of in variables.cc. |
|
5033 |
|
5034 * pager.cc (write_to_diary_file): Now bool, not int. |
|
5035 (really_flush_to_pager): Likewise. |
|
5036 (flushing_to_pager): Likewise. |
|
5037 * sighandlers.h (can_interrupt): Likewise. |
|
5038 * error.h (buffer_error_messages): Likewise. |
|
5039 * oct-hist.h (input_from_tmp_history_file, Vsaving_history): Likewise. |
|
5040 * input.h (forced_interactive): Likewise. |
|
5041 (get_input_from_eval_string): Likeiwse. |
|
5042 (reading_script_file): Likeiwse. |
|
5043 (reading_fcn_file): Likeiwse. |
|
5044 (interactive): Likewise. |
|
5045 |
|
5046 * unwind-prot.cc (saved_variable::saved_variable (bool *, bool)): |
|
5047 Set type_tag to boolean, not int. |
|
5048 |
3016
|
5049 Mon Jun 2 00:40:10 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
5050 |
|
5051 * variables.h (Octave_builtin_fcn): Delete typedef. |
|
5052 |
|
5053 * help.cc (make_name_list): Move here from variables.cc. |
|
5054 (keyword_help, names): Now static. |
|
5055 (struct help_list): Move declaration here from help.h. |
|
5056 |
|
5057 * oct-hist.cc (Vhistory_file, Vhistory_size, Vsaving_history): |
|
5058 Move here from variables.cc. |
|
5059 (symbols_of_oct_hist): New function. |
|
5060 |
|
5061 * version.h: Protect against multiple inclusion. |
|
5062 |
|
5063 * defun.cc (check_version): New function. |
|
5064 * defun-int.h (DEFINE_FUN_INSTALLER_FUN): Use it. |
|
5065 |
|
5066 * help.h, help.cc (additional_help_message): Now extern. |
|
5067 (operator_help): Now static. |
|
5068 |
|
5069 * defun.cc (print_usage): Move here from help.cc |
|
5070 * DLD-FUNCTIONS/*.cc, data.cc, dirfns.cc, file-io.cc, input.cc, |
|
5071 load-save.cc, octave.cc, ov-list.cc, ov-typeinfo.cc, |
|
5072 ov-usr-fcn.cc, pager.cc, pr-output.cc, pt-plot.cc, strfns.cc, |
|
5073 syscalls.cc, sysdep.cc, utils.cc, toplev.cc: |
|
5074 Don't include help.h. |
|
5075 |
|
5076 * TEMPLATE-INST/Array-sym.cc: New file. |
|
5077 |
|
5078 * load-save.cc (do_load): Don't use ostream::form. |
|
5079 * pr-output.cc: Likewise, at least where it is easy to do so. |
|
5080 * oct-stream.cc: Ditto. |
|
5081 |
|
5082 * symtab.h (symbol_record::symbol_def::rows): New function. |
|
5083 (symbol_record::symbol_def::columns): Ditto. |
|
5084 (symbol_record::symbol_def::type_name): Ditto. |
|
5085 (symbol_record::rows): Ditto |
|
5086 (symbol_record::columns): Ditto |
|
5087 (symbol_record::type_name): Ditto |
|
5088 |
|
5089 * symtab.h, symtab.cc (symbol_record::hides_fcn): New function. |
|
5090 (symbol_record::hides_builtin): Ditto. |
|
5091 (symbol_record::print_symbol_info_line): Ditto. |
|
5092 (symbol_table::long_list): Delete. |
|
5093 (symbol_table::symbol_list): New function. |
|
5094 (symbol_table::maybe_list): Delete argc arg. |
|
5095 (symbol_table::name_list): Rename from symbol_table::list. |
|
5096 Change all callers. |
|
5097 |
|
5098 * symtab.h, symtab.cc (class symbol_record_info): Delete. |
|
5099 |
|
5100 * symtab.cc (matches_patterns): Use vector form of glob_match. |
|
5101 |
|
5102 Sun Jun 1 14:04:26 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
5103 |
|
5104 * pt-check.h, pt-check.cc: New files, for semantic checking of |
|
5105 parse trees. |
|
5106 |
|
5107 * symtab.h (class symbol_def): Now nested in symbol_record class. |
|
5108 (enum TYPE): Move from symbol_def to symbol record class. Change |
|
5109 all uses. |
|
5110 |
|
5111 * symtab.h, symtab.cc (symbol_table::maybe_list): New function, |
|
5112 from variables.cc. Change all uses. |
|
5113 |
|
5114 * pt-idx.h (tree_identifier::lvalue_ok): New function. |
|
5115 * pt-id.h (tree_index_expression::lvalue_ok): Likewise. |
|
5116 * pt-indir.h (tree_indirect_ref::lvalue_ok): Likewise. |
|
5117 |
|
5118 * pt-pr-code.h, pt-pr-code.cc (tree_print_code::visit_oct_obj): Delete. |
|
5119 * pt-walk.h (tree_walker::visit_oct_obj): Delete declaration. |
|
5120 |
|
5121 * lex.h (class lexical_feedback): Delete maybe_screwed_again. |
|
5122 * lex.l (lexical_feedback::init): Don't set it. |
|
5123 |
|
5124 Fri May 30 16:07:22 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
5125 |
|
5126 * mappers.cc: Include <cfloat> here. |
|
5127 |
|
5128 Tue May 27 10:08:43 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
5129 |
|
5130 * toplev.cc (eval_string): Don't index tmp if it is empty. |
|
5131 |
|
5132 Sat May 24 00:18:41 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
5133 |
|
5134 * load-save.cc (valid_identifier): Move here and make static. |
|
5135 * symtab.h, symtab.cc (valid_identifier): Delete declaration and |
|
5136 definition. |
|
5137 |
|
5138 Fri May 23 22:54:28 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
5139 |
|
5140 * symtab.h (symbol_def::symbol_def): Use initializer list instead |
|
5141 of calling init_state. |
|
5142 (symbol_def::init_state): Delete. |
|
5143 |
|
5144 * symtab.cc (symbol_table::print_stats): New function. |
|
5145 * variables.cc (F__dump_symtab_info__): New function. |
|
5146 |
|
5147 * symtab.h, symtab.cc (symbol_table::hash): Return masked value. |
|
5148 (symbol_table::table_size): New data member. |
|
5149 (symbol_table::symbol_table): Set size of table in constructor. |
|
5150 (HASH_TABLE_SIZE): Replace uses with table_size. |
|
5151 (HASH_MASK): Delete. |
|
5152 * variables.cc (initialize_symbol_tables): Set top-level and |
|
5153 global symbol table sizes here. |
|
5154 |
2994
|
5155 Thu May 22 13:32:55 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
5156 |
|
5157 * dynamic-ld.cc (octave_shl_load_dynamic_loader::resolve_reference): |
|
5158 Call shl_findsym with type set to TYPE_PROCEDURE. Pass the |
|
5159 address of the pointer we want to define. |
|
5160 |
2993
|
5161 Wed May 21 16:30:25 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
5162 |
|
5163 * DLD-FUNCTIONS/time.cc (extract_tm): Avoid memory leak in dealing |
|
5164 with time zone. |
|
5165 |
|
5166 * Makefile.in (install-in): Use new mk-includedir-link macro. |
|
5167 (install-lib): Install in $octlibdir. Use new mk-libdir-link macro. |
|
5168 |
|
5169 Tue May 20 01:24:11 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
5170 |
|
5171 * ov-list.cc (Flist): Rename from Fmake_list. |
|
5172 |
|
5173 Mon May 19 14:45:58 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
5174 |
|
5175 * octave.cc (maximum_braindamage): Set default_eval_print_flag to 0. |
|
5176 |
|
5177 Sat May 17 16:32:23 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
5178 |
|
5179 * defaults.cc (set_default_editor): Default is now Emacs, not vi. |
|
5180 |
2984
|
5181 Fri May 16 00:07:11 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
5182 |
2991
|
5183 * pt-idx.cc (tree_index_expression::name): New function. |
|
5184 |
|
5185 * pt.cc (tree::str_print_code): New file, new convenience function. |
|
5186 * pt-arg-list.cc (tree_argument_list::get_arg_names): Use it. |
|
5187 * pt-assign.cc (tree_simple_assignment::rvalue): Likewise. |
|
5188 (tree_multi_assignment::rvalue): Likewise. |
|
5189 |
2990
|
5190 * pt-colon.h (tree_colon_expression::save_base): New data memmber. |
|
5191 (tree_colon_expression::preserve_base): New function. |
|
5192 * parse.y (finish_colon_expression): When converting to a simple |
|
5193 expression, be sure to delete the original colon expression but |
|
5194 not the base value. |
|
5195 |
|
5196 * pt-mat.cc (tree_matrix::~tree_matrix): Actually do something. |
|
5197 |
2987
|
5198 * pt-all.h: New file. |
|
5199 * parse.y, lex.l, pt-pr-code.cc: Use it. |
|
5200 |
|
5201 * pt.h: Rename from pt-base.h. |
|
5202 |
|
5203 * All parse tree classes: Add private copy constructors and |
|
5204 assignment operators to prevent copying. |
|
5205 |
|
5206 * pt-base.cc: Delete. |
|
5207 |
2985
|
5208 * unwind-prot.h, unwind-prot.cc: Make a bit more object-oriented. |
|
5209 Change all uses of unwind_protect stuff to match. |
|
5210 |
|
5211 * pt-jump.h, pt-jump.cc (breaking, continuing, returning): |
|
5212 Make these flags static members of the corresponding class. |
|
5213 Change all uses. |
|
5214 |
2984
|
5215 * pt-assign.cc (tree_simple_assignment_expression::eval, |
|
5216 tree_multi_assignment_expression::eval): Clear lvalue index here. |
|
5217 |
|
5218 * oct-lvalue.cc (octave_lvalue::assign): Don't clear index here. |
|
5219 * oct-lvalue.h (octave_lvalue::clear_index): New function. |
|
5220 (octave_lvalue::set_index): Rename from octave_lvalue::index. |
|
5221 Change all callers. |
|
5222 |
2976
|
5223 Thu May 15 11:48:10 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
5224 |
2983
|
5225 * pt-select.h, pt-select.cc (class tree_if_command_list, |
|
5226 class tree_if_clause, class tree_switch_case_list, |
|
5227 class tree_switch_case): Move here from pt-misc.h, pt-misc.cc. |
|
5228 * pt-decl.h, pt-decl.cc (class tree_decl_init_list, |
|
5229 class tree_decl_elt): Move here from pt-mist.h, pt-misc.cc |
|
5230 |
|
5231 * pt-arg-list.h, pt-stmt.h: New files, extracted from pt-misc.h. |
|
5232 * pt-arg-list.cc, pt-stmt.cc: New files, extracted from pt-misc.cc. |
|
5233 |
|
5234 * pt-decl.h, pt-except.h, pt-jump.h, pt-loop.h, pt-select.h: |
|
5235 New files, extraced from pt-cmd.h. |
|
5236 * pt-decl.cc, pt-except.cc, pt-jump.cc, pt-loop.cc, pt-select.cc: |
|
5237 New files, extraced from pt-cmd.cc. |
|
5238 |
2980
|
5239 * pt-unop.h, pt-binop.h, pt-colon.h, pt-idx.h, pt-assign.h: |
|
5240 New files, extracted from pt-exp.h |
|
5241 * pt-unop.cc, pt-binop.cc, pt-colon.cc, pt-idx.cc, pt-assign.cc: |
|
5242 New files, extracted from pt-exp.cc |
|
5243 * pt-exp.h, pt-exp.cc: Rename from pt-exp-base.h, pt-exp-base.cc. |
|
5244 |
2979
|
5245 * oct-lvalue.h: Rename from oct-var-ref.h. Rename class from |
|
5246 octave_variable_reference to octave_lvalue. Change all uses. |
|
5247 * oct-lvalue.cc: Rename from oct-var-ref.cc. |
|
5248 |
2978
|
5249 * variables.cc (bind_ans): Only bind ans and print result if value |
|
5250 is defined. |
|
5251 |
2976
|
5252 * defun.cc: New file. Move functions for installing objects in |
|
5253 the symbol table here from variables.cc. |
|
5254 |
|
5255 * oct-obj.h, oct-obj.cc: Add custom allocator, fwiw. |
|
5256 |
|
5257 * toplev.cc (main_loop): Correctly increment command number. |
|
5258 |
|
5259 * TEMPLATE-INST/SLList-tm.cc: Don't instantiate lists of pointers |
|
5260 to tree_matrix_row objects. |
|
5261 * TEMPLATE-INST/SLList-misc.cc: Do instantiate lists of pointers |
|
5262 to tree_argument_list objects. |
|
5263 |
|
5264 * DLD-FUNCTIONS/dassl.cc: Update to use new octave_function |
|
5265 interface to user-supplied functions. |
|
5266 * DLD-FUNCTIONS/fsolve.cc: Likewise. |
|
5267 * DLD-FUNCTIONS/lsode.cc: Likewise. |
|
5268 * DLD-FUNCTIONS/npsol.cc: Likewise. |
|
5269 * DLD-FUNCTIONS/quad.cc: Likewise. |
|
5270 |
|
5271 * dynamic-ld.h, dynamic-ld.cc (builtin_fcn_installer typedef): |
|
5272 Rename from builtin_fcn. |
|
5273 (octave_dynamic_loader::load_fcn_from_dot_oct_file): |
|
5274 Simplify by using new installer function defined by DEFUN_DLD. |
|
5275 |
|
5276 * defun-dld.h (DEFUN_DLD): Use DEFINE_FUN_INSTALLER_FUN instead of |
|
5277 DEFINE_FUN_STRUCT_FUN. |
|
5278 * defun.h (DEFUN_MAPPER): Use DEFUN_MAPPER_INTERNAL. |
|
5279 * defun-int.h (DEFVAR_INTERNAL): Rename from DEFVAR_INT and move |
|
5280 here from defun.h. Change all uses. |
|
5281 (DEFUN_MAPPER_INTERNAL): New macro. |
|
5282 (DEFINE_FUN_INSTALLER_FUN): New macro to define function that the |
|
5283 dynamic loader calls to do all the work of installing a new function. |
|
5284 (DEFINE_FUN_STRUCT_FUN): Delete. |
|
5285 |
|
5286 * parse.y: Rewrite to handle more general expressions. |
|
5287 * lex.l: Corresponding changes. |
|
5288 |
|
5289 * pt-walk.h, pt-pr-code.h, pt-pr-code.cc: Cope with new parse tree |
|
5290 object structure. |
|
5291 |
|
5292 * pt-misc.cc (class tree_for_command): Split into |
|
5293 tree_simple_for_command and tree_complex_for_command classes. |
|
5294 |
|
5295 * pt-misc.h, pt-misc.cc (tree_statement::eval): Handle identifier |
|
5296 lookup and printing and binding ans here. |
|
5297 (tree_statement_list::eval): Simplify. |
|
5298 (tree_argument_list::all_elements_are_constant): New function. |
|
5299 (class tree_decl_elt): Now contains id and expr, not an assignment |
|
5300 expression. |
|
5301 |
|
5302 * pt-exp-base.h pt-exp.h pt-id.h pt-indir.h pt-mat.h pt-const.h, |
|
5303 pt-exp-base.cc pt-exp.cc pt-id.cc pt-indir.cc pt-mat.cc pt-const.cc: |
|
5304 Replace eval functions with rvalue and lvalue functions. |
|
5305 Change all uses. |
|
5306 (lvalue_ok, rvalue_ok): New functions, for future compile-time |
|
5307 semantic checks. |
|
5308 |
|
5309 * oct-var-ref.h (is_defined, is_map): New functions. |
|
5310 |
|
5311 * pt-exp.h (class tree_oct_obj): Delete. |
|
5312 |
|
5313 * variables.cc (extract_function, is_valid_function): Return |
|
5314 pointer to octave_function, not octave_symbol. |
|
5315 (link_to_global_variable): Rewrite. Handle errors in |
|
5316 symbol_record::mark_as_linked_to_global. |
|
5317 |
|
5318 * symtab.h, symtab.cc (class symbol_def, class symbol_record): |
|
5319 Symbols are now stored as octave_value objects only. |
|
5320 |
|
5321 * ov.cc (install_types): Register function types here. |
|
5322 * ov-fcn.h, ov-fcn.cc, ov-builtin.h, ov-builtin.cc, ov-mapper.h, |
|
5323 ov-mapper.cc, ov-usr-fcn.h, ov-usr-fcn.cc: New classes for |
|
5324 functions as values. |
|
5325 * ov.h (class octave_value): Don't derive from octave_symbol. |
|
5326 * oct-fcn.h, oct-fcn.cc, oct-builtin.h, oct-builtin.cc, |
|
5327 oct-mapper.h, oct-mapper.cc, oct-usr-fcn.h, oct-usr-fcn.cc, |
|
5328 oct-sym.h, oct-sym.cc: Delete. |
|
5329 |
2963
|
5330 Sun May 11 17:51:22 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
5331 |
|
5332 * help.cc (Ftype): Make it work again for functions. |
|
5333 |
|
5334 * pt-pr-code.cc (tree_print_code::print_parens): New function. |
|
5335 Use it in other tree_print_code functions to handle printing all |
|
5336 the parens that we found when parsing the expression, not just one |
|
5337 pair. |
|
5338 * pt-exp-base.h (tree_expression::paren_count): Rename from |
|
5339 is_in_parens. |
|
5340 * parse.y (maybe_warn_assign_as_truth_value): Use new name. |
|
5341 |
|
5342 * parse.y (constant): New non-terminal. |
|
5343 (simple_expr1): Use it. |
|
5344 |
|
5345 * parse.y (make_unary_op): Delete. |
|
5346 (simple_expr1): Where appropriate, use make_prefix_op and |
|
5347 make_postfix_op instead of make_unary_op. Allow increment and |
|
5348 decrement ops to work on expressions, not just identifiers. |
|
5349 (make_prefix_op, make_postfix_op): Arg is expression, not identifier. |
|
5350 Handle old unary_op cases too. |
|
5351 (fold (tree_unary_expression *)): Delete. |
|
5352 * pt-exp.h, pt-exp.cc (tree_prefix_expression::eval): Handle unary |
|
5353 minus and not here. |
|
5354 (tree_postfix_expression::eval): Likewise, for transpose and hermitian. |
|
5355 (class tree_prefix_expression, class tree_postfix_expression): |
|
5356 Derive from tree_unary_expression. Delete identifier member. |
|
5357 Delete ident member function. |
|
5358 (tree_unary_expression): Don't handle evaluation here. |
|
5359 * pt-exp-base.h (mark_in_parens): No longer virtual. Return this. |
|
5360 (reference): New virtual function. |
|
5361 (class tree_expression): Don't handle expression type here. |
|
5362 * pt-mvr-base.h (tree_multi_val_ret::tree_multi_val_ret): Likewise. |
|
5363 * pt-mvr.h, pt-mvr.cc (tree_multi_assignment_expression): Likewise. |
|
5364 * pt-walk.h (visit_unary_expression): Delete declaration. |
|
5365 * pt-pr-code.h, pt-pr-code.cc (visit_unary_expression): Delete. |
|
5366 (visit_prefix_expression): Use operand(), not ident(). |
|
5367 new, visit_postfix_expression): |
|
5368 * pt-id.h, pt-id.cc (increment, decrement): Delete. |
|
5369 |
|
5370 * pt-misc.cc (tree_parameter_list::define_from_arg_vector): Get a |
|
5371 reference to each element and use the assignment operator instead |
|
5372 of tree_identifier::define. |
|
5373 * pt-id.h, pt-id.cc (tree_identifier::define): Delete versions |
|
5374 that take octave_value and octave_symbol args. |
|
5375 |
|
5376 Sat May 10 23:32:13 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
5377 |
|
5378 * pt-indir.h, pt-indir.cc (tree_indirect_reference::value): Delete. |
|
5379 |
|
5380 * oct-var-ref.cc (octave_variable_ref::assign): Clear idx after |
|
5381 assignment. |
|
5382 |
2976
|
5383 * octave_value classes: Add is_constant, is_function, and |
|
5384 function_value functions. |
|
5385 |
2963
|
5386 * ov.h, ov.cc (assign): Return void, not reference to octave_value. |
|
5387 (do_index_op): Rename, from index. |
|
5388 (do_struct_elt_index_op): Rename, from struct_elt_val. |
|
5389 Add version that accepts index arg. |
|
5390 Change all uses and derived classes to match. |
|
5391 * pt-const.h (index): Delete. |
|
5392 * oct-var-ref.h, oct-var-ref.cc (value): Handle indexed structure |
|
5393 ops here too. |
|
5394 |
2949
|
5395 Fri May 9 07:40:59 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
5396 |
2958
|
5397 * pt-exp.cc (print_rhs_assign_val, symbols_of_pt_exp): New functions. |
|
5398 (Vprint_rhs_assign_val): New static variable. |
|
5399 (tree_simple_assignment_expression::eval): Use it to optionally |
|
5400 allow the rhs (which is the result) of an assignment to be printed |
|
5401 instead of the left. |
|
5402 |
2955
|
5403 * pt-exp.cc (tree_simple_assignment_expression::eval): Use new |
|
5404 octave_variabl_reference::index function to handle indexing. |
|
5405 |
|
5406 * oct-var-ref.h, oct-var-ref.cc (idx): New data member. |
|
5407 (octave_variable_reference::index): Set it. |
|
5408 (octave_variable_reference::assign): Handle indexing here. |
|
5409 Delete version of this function htat takes index arg. |
|
5410 |
|
5411 * variables.h (struct builtin_varaible): Delete. |
|
5412 * variables.cc (install_builtin_variable): Take all elts of |
|
5413 builtin_variable struct directly. |
|
5414 * defun.h (DEFVAR_INT): Call install_builtin_variable directly. |
|
5415 |
|
5416 * symtab.h, defun-int.h: Don't include variables.h. |
|
5417 |
|
5418 * symtab.h (symbol_record::sv_function): Move typedef here. |
|
5419 * variables.h: From here. |
|
5420 |
|
5421 * oct-var-ref.h, oct-var-ref.cc: New files for |
|
5422 octave_variable_reference class, extracted from variables.h and |
|
5423 variables.cc |
2956
|
5424 * Makefile.in: Add them to the appropriate lists. |
2955
|
5425 |
|
5426 * oct-obj.h (octave_value_list::empty): New function. |
|
5427 |
2949
|
5428 * variables.h (class octave_variable_reference): Rewrite to work |
|
5429 as a proxy class to store a pointer to octave_value and, |
|
5430 optionally, the change function to call and the name of the |
|
5431 structure element we are referencing. Handle assignment, |
|
5432 increment, decrement, and value operations. |
|
5433 |
2956
|
5434 Thu May 8 23:40:59 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
5435 |
2949
|
5436 * ov-re-mat.h, ov-re-mat.cc (struct_elt_ref, struct_elt_val, |
|
5437 assign_struct_elt): Provide functions for looking up and setting |
|
5438 matrix dimensions. |
|
5439 |
|
5440 * symtab.cc (symbol_record::define): Don't call sv_fcn here. |
|
5441 Don't save and restore value here. |
|
5442 (symbol_record::define_builtin_var): Do call sv_fcn here. |
|
5443 (symbol_record::variable_reference): Don't make value unique here. |
|
5444 Return pointer to sv_fcn in octave_variable_reference. |
|
5445 |
|
5446 * pt-misc.cc (tree_parameter_list::initialize_undefined_elements): |
|
5447 Simplify. |
|
5448 |
|
5449 * pt-id.h, pt-id.cc (tree_identifier::reference): Return |
|
5450 octave_variable_reference, not octave_value&. |
|
5451 * symtab.h, symtab.cc (symbol_record::variable_reference): Ditto. |
|
5452 * pt-indir.h, pt-indir.cc (tree_indirect_ref::reference): Ditto. |
|
5453 Simplify too. |
|
5454 |
|
5455 * pt-const.h (tree_constant::reference, tree_constant::value, |
|
5456 tree_constant::assign): Delete unnecessary functions. |
|
5457 * pt-id.h, pt-id.cc (tree_identifier::assign): Ditto. |
|
5458 |
|
5459 * pt-cmd.cc (tree_for_command::do_for_loop_once): Simplify. |
|
5460 |
|
5461 * ov.h, ov.cc, ov-base.h, ov-base.cc, ov-struct.h, ov-struct.cc |
|
5462 (struct_elt_ref): New arg, octave_value* parent. |
|
5463 Allow deferred lookup. Return octave_variable_reference, not |
|
5464 octave_value&. |
|
5465 |
|
5466 * ov.h, ov.cc, ov-re-mat.h, ov-re-mat.cc (assign_struct_elt): |
|
5467 New virtual functions. |
|
5468 |
|
5469 * ov.h, ov.cc (Vresize_on_range_error): Now static. |
|
5470 |
|
5471 * pt-mvr.cc (tree_index_expression::eval): Delete redundant check |
|
5472 of error_state. |
|
5473 |
2944
|
5474 Wed May 7 21:17:00 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
5475 |
|
5476 * input.cc (generate_completion): Rename from command_generator. |
|
5477 Use string objects instead of char*. |
|
5478 (generate_possible_completions): Let qsort also make matches unique. |
|
5479 (initialize_command_input): Register generate_completion with the |
|
5480 command_editor class. |
|
5481 (completion_matches): Simplify using generate_completion. |
|
5482 |
|
5483 * pt-pr-code.cc (tree_print_code::visit_constant): For val, call |
|
5484 print_raw, not print. |
|
5485 |
|
5486 * oct-usr-fcn.h (octave_user_function::argn_sr): New data member. |
|
5487 (octave_user_function::install_automatic_vars): Rename from |
|
5488 install_nargin_and_nargout. |
|
5489 (octave_user_function::bind_automatic_vars): Rename from |
|
5490 bind_nargin_and_nargout. |
|
5491 * oct-usr-fcn.cc (octave_user_function::eval): Extract arg names |
|
5492 from args vector and bind them to argn. |
|
5493 * oct-obj.h (octave_value_list::names): New data member. |
|
5494 * oct-obj.cc (octave_value_list::stash_name_tags): New function. |
|
5495 (octave_value_list::name_tags): Ditto. |
|
5496 * pt-const.h, pt-const.cc (tree_constant::print_raw): New function. |
|
5497 * pt-misc.h, pt-misc.cc (tree_argument_list::get_arg_names): |
|
5498 New function. |
|
5499 * pt-mvr.h, pt-mvr.cc (class index_expression): Cache arg names. |
|
5500 * toplev.cc (feval): Now static. Handle arg names. |
|
5501 |
|
5502 * mkops: Cope with moving files defining operators to OPERATORS |
|
5503 subdirectory. |
|
5504 |
2937
|
5505 Tue May 6 00:48:59 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
5506 |
|
5507 * DLD-FUNCTIONS/getgrent.cc: Use new octave_group class. |
|
5508 * DLD-FUNCTIONS/getpwent.cc: Use new octave_passwd class. |
|
5509 |
|
5510 * syscalls.cc: Simplify by using new functions defined in |
|
5511 liboctave/oct-syscalls.cc. |
|
5512 |
|
5513 * file-io.cc (Ftmpnam): Accept DIR and PREFIX args. |
|
5514 |
2929
|
5515 Mon May 5 00:54:03 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
5516 |
2932
|
5517 * ov-str-mat.cc (octave_char_matrix_str::print_name_tag): Print |
|
5518 empty strings on one line. |
|
5519 |
2929
|
5520 * DLD-FUNCTIONS, OPERATORS, and TEMPLATE-INST: New subdirectories. |
|
5521 Move appropriate files to new directories. |
|
5522 * Makefile.in: Add DLD-FUNCTIONS, OPERATORS, and TEMPLATE-INST |
|
5523 directories to VPATH. Fix rules to work with new directory |
|
5524 structure. |
|
5525 |
2927
|
5526 Sun May 4 22:40:45 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
5527 |
|
5528 * input.cc (initialize_command_input): Rename from |
|
5529 initialize_readline. |
|
5530 (gnu_readline, octave_gets, get_user_input): Simplify, return |
|
5531 string, not char *. |
|
5532 |
|
5533 * Many of other files: Miscellaneous changes to go along with the |
|
5534 changes described in the liboctave/ChangeLog for May 4. More code |
|
5535 moved from here to liboctave. |
|
5536 |
|
5537 Fri May 2 19:50:33 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
5538 |
|
5539 * pathlen.h: Move to ../liboctave. |
|
5540 |
2921
|
5541 Thu May 1 21:50:44 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
5542 |
|
5543 * variables.cc (get_struct_elts): New fucntion. |
|
5544 (looks_like_struct, generate_struct_completions): Move here from |
|
5545 input.cc, rewrite, and make work again. |
|
5546 |
2916
|
5547 Wed Apr 30 00:24:05 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
5548 |
|
5549 * ov-base.h, ov-bool-mat.cc, ov-bool-mat.h, ov-bool.cc, ov-bool.h, |
|
5550 ov-ch-mat.cc, ov-ch-mat.h, ov-complex.cc, ov-complex.h, |
|
5551 ov-cx-mat.cc, ov-cx-mat.h, ov-file.cc, ov-file.h, ov-list.cc, |
|
5552 ov-range.cc, ov-range.h, ov-re-mat.cc, ov-re-mat.h, ov-scalar.cc, |
|
5553 ov-scalar.h, ov-str-mat.cc, ov-struct.cc, ov.h (scalar_value): |
|
5554 New function. Same as double_value, but name is consistent with |
|
5555 octave_scalar class. |
|
5556 |
|
5557 * op-fil-b.cc, op-fil-cm.cc, op-fil-lis.cc, op-fil-rec.cc, |
|
5558 op-fil-str.cc, op-fil-bm.cc, op-fil-cs.cc, op-fil-m.cc, |
|
5559 op-fil-s.cc: New files. |
|
5560 |
|
5561 * ops.h (ASSIGNOPDECL, DEFASSIGNOP, DEFASSIGNOP_FN, CONVDECL, |
|
5562 DEFCONV, BINOPDECL, DEFBINOPX, DEFBINOP, DEFBINOP_OP, DEFBINOP_FN, |
|
5563 BINOP_NONCONFORMANT): New macros. |
|
5564 * op-b-b.cc, op-bm-bm.cc, op-cm-cm.cc, op-cm-cs.cc, op-cm-m.cc, |
|
5565 op-cm-s.cc, op-cs-cm.cc, op-cs-cs.cc, op-cs-m.cc, op-cs-s.cc, |
|
5566 op-m-cm.cc, op-m-cs.cc, op-m-m.cc, op-m-s.cc, op-s-cm.cc, |
|
5567 op-s-cs.cc, op-s-m.cc, op-s-s.cc, op-str-str.cc: Use them. |
|
5568 |
|
5569 * Makefile.in (octave): Also depend on ops.o. |
|
5570 |
|
5571 * builtins.h: Delete. |
|
5572 * octave.cc: Add extern declaration here. |
|
5573 |
|
5574 * mappers.h: Delete. |
|
5575 * Makefile.in (INCLUDES): Delete from list. |
|
5576 * mkbuiltins: Add extern declaration in builtins.cc. |
|
5577 |
|
5578 * mkops: New file. |
|
5579 * ops.cc: Delete. |
|
5580 * Makefile.in (SOURCES): Delete from the list. |
|
5581 (ops.cc): New target. |
|
5582 (OP_SOURCES): New list. Move all op-*.cc files here from SOURCES. |
|
5583 Add $(OP_SOURCES) to SOURCES list. |
|
5584 |
|
5585 * variables.cc (symbols_of_variables): No longer static. |
|
5586 * ov.cc (symbols_of_ov): Rename from symbols_of_value. |
|
5587 |
|
5588 * ov-base.h: Delete declaration for install_base_type_conversions. |
|
5589 * op-b-b.h, op-bm-bm.h, op-cm-cm.h, op-cm-cs.h, op-cm-m.h, |
|
5590 op-cm-s.h, op-cs-cm.h, op-cs-cs.h, op-cs-m.h, op-cs-s.h, |
|
5591 op-m-cm.h, op-m-cs.h, op-m-m.h, op-m-s.h, op-s-cm.h, op-s-cs.h, |
|
5592 op-s-m.h, op-s-s.h, op-str-str.h: Delete. |
|
5593 * Makefile.in (INCLUDES): Delete them from the list. |
|
5594 |
|
5595 Tue Apr 29 22:27:49 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
5596 |
|
5597 * variables.h, variables.cc (install_builtin_variables): Delete. |
|
5598 * mkbuiltins: Also generate install_builtin_variables function. |
|
5599 * Makefile.in: Fix rule to call mkbuiltins with correct args. |
|
5600 (clean): Also delete def-files and var-files. |
|
5601 * defaults.h.in, dirfns.h, error.h, file-io.h, help.h, input.h, |
|
5602 lex.h, load-save.h, oct-usr-fcn.h, pager.h, parse.h, pr-output.cc, |
|
5603 pr-output.h, pt-mat.h, pt-misc.h, pt-plot.h, toplev.h: |
|
5604 Delete declarations of symbols_of_* functions. |
|
5605 * data.h, syscalls.h: Delete. |
|
5606 |
|
5607 * pr-output.cc (octave_print_internal): Leave printing of final |
|
5608 new line up to the caller. |
|
5609 |
|
5610 * ov.h, ov.cc (reset_indent_level, increment_indent_level, |
|
5611 decrement_indent_level, newline, indent, reset, |
|
5612 curr_print_indent_level, beginning_of_line): |
|
5613 New functions and static data to manage indent level for printing. |
|
5614 (print_as_scalar): Delete. |
|
5615 (print, print_with_name): Always require stream arg. |
|
5616 Change all callers. |
|
5617 |
|
5618 * oct-stream.h (octave_stream::input_stream): Make publicly available. |
|
5619 (octave_stream::output_stream): Likewise. |
|
5620 |
|
5621 * ov-base.h, ov-base.cc, ov.h, ov.cc, ov-file.h ov-base.h |
|
5622 (is_file, stream_value, stream_number): New functions. |
|
5623 * ov-file.h, ov-file.cc: New files for value class to manage files. |
|
5624 * file-io.cc (symbols_of_file_io): Define stdin, stdout, and |
|
5625 stderr as octve_file objects, not just integers. |
|
5626 (Ffopen, Fpopen): Return octave_file objects, not integer file ids. |
|
5627 * syscalls.cc (Fpipe): Likewise. |
|
5628 * oct-stream.h, oct-stream.cc (octave_stream_list::insert): |
|
5629 Return octave_file object, not integer file id. |
|
5630 |
|
5631 * ov-base.cc, ov-bool-mat.cc, ov-bool.cc, ov-ch-mat.cc, |
|
5632 ov-complex.cc, ov-cx-mat.cc, ov-file.cc, ov-list.cc, ov-range.cc, |
|
5633 ov-re-mat.cc, ov-scalar.cc, ov-str-mat.cc, ov-struct.cc, ov.cc |
|
5634 (print_name_tag, print_raw): New functions. |
|
5635 |
|
5636 * help.cc (Ftype): Don't cast symbol definition to tree_constant *. |
|
5637 |
|
5638 * variables.cc (link_to_global_variable): Don't try to define |
|
5639 symbol with tree_constant objects. |
|
5640 (bind_ans): Call symbol_record::define directly and then |
|
5641 octave_value::print_with_name instead of creating a temporary |
|
5642 assignment expression. |
|
5643 |
|
5644 * pt-pr-code.cc (tree_print_code::indent): Don't use ostream::form. |
|
5645 |
|
5646 * pt-exp-base.h, pt-exp.h, pt-exp.cc (oper): Return string, not |
|
5647 char *. Change all where necessary. |
|
5648 |
|
5649 Mon Apr 28 16:33:49 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
5650 |
|
5651 * ov.h (octave_value binary_op enum): Add lshift and rshift. |
|
5652 (octave_value assign_op enum): Add lshift_eq and rshift_eq. |
|
5653 * ov.cc (assign_op_as_string, binary_op_as_string): Include them. |
|
5654 * parse.y (LSHIFT_EQ RSHIFT_EQ LSHIFT RSHIFT): New tokens. |
|
5655 Add them to the precedence list. |
|
5656 (simple_expr): Add new operators. |
|
5657 (make_assign_op, make_binary_op): Handle new operators. |
|
5658 * lex.l: Recognize new operators. |
|
5659 |
|
5660 * lex.l: Recognize them. |
|
5661 |
|
5662 Sun Apr 27 20:17:49 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
2898
|
5663 |
|
5664 * pt-misc.cc (Vsilent_functions, silent_functions): |
|
5665 Move here from oct-usr-fcn.cc. |
|
5666 (symbols_of_pt_misc): New function. DEFVAR silent_functions. |
|
5667 (tree_statement_list::eval): Handle Vsilent_functions here instead |
|
5668 of in octave_user_function::eval. |
|
5669 (tree_statement::eval): New functions. |
|
5670 (tree_statement_list::eval): Use them. |
|
5671 Change print flag arg to silent flag. Change all callers. |
|
5672 * variables.cc (install_builtin_variables): Call symbols_of_pt_misc. |
|
5673 * toplev.cc (parse_and_execute): Delete print arg. Change all callers. |
|
5674 (eval_string): Change print flag arg to silent flag. Change callers. |
|
5675 |
|
5676 * dynamic-ld.h, dynamic-ld.cc: Rewrite to use singleton class. |
|
5677 * variables.cc (load_fcn_from_file): Use new dynamic linking class. |
|
5678 |
2893
|
5679 * dynamic-ld.h (Octave_builtin_fcn): Delete typedef. |
|
5680 * dynamic-ld.cc: Simplify via the magic of function pointers. |
|
5681 |
|
5682 * pt-fcn.h pt-fcn.cc pt-fvc.h pt-fvc.cc pt-fvc-base.h pt-fvc-base.cc: |
|
5683 Delete obsolete files. |
|
5684 * Makefile.in: Remove them from various lists. |
|
5685 |
|
5686 * pt-walk.h (visit_octave_user_function): Rename from visit_function. |
|
5687 (visit_builtin): Delete. |
|
5688 * pt-pr-code.h, pt-pr-code.cc (visit_octave_user_function): |
|
5689 Rename from visit_function. |
|
5690 (visit_octave_user_function_header): Rename from visit_function_header. |
|
5691 (visit_octave_user_function_trailer): Rename from |
|
5692 visit_function_trailer. |
|
5693 |
|
5694 * ov.h, ov.cc (eval): New functions. |
|
5695 |
|
5696 * dassl.cc, fsolve.cc, lsode.cc, npsol.cc, qpsol.cc, quad.cc: |
|
5697 Declare user-defined functions as a pointer to an octave_symbol |
|
5698 object, not as a pointer to a tree_fvc object. |
|
5699 |
|
5700 * symtab.h, symtab.cc: Use new octave_symbol class. |
|
5701 * variables.cc (install_builtin_function, install_builtin_mapper, |
|
5702 install_builtin_variable, install_builtin_variable_as_function): |
|
5703 Make work with new octave_symbol class and symbol table structure. |
|
5704 |
|
5705 * variables.h: Delete declaration of builtin_function struct. |
|
5706 * defun-dld.h (DEFUN_DLD): Simplify. |
|
5707 * defun-int.h (DEFINE_FUN_STRUCT): Delete. |
|
5708 (DEFINE_FUN_STRUCT_FUN): Rewrite to not use static builtin_function |
|
5709 object. |
|
5710 |
|
5711 * mappers.h: Delete declaration of builtin_mapper_function struct. |
|
5712 * mappers.cc: Declare wrapper functions static. |
|
5713 * defun.h (DEFUN_MAPPER): Simplify. |
|
5714 |
|
5715 * oct-sym.h: New file. Declare base class for Octave symbols. |
|
5716 * ov.h: Derive octave_value class from octave_symbol. |
|
5717 * oct-fcn.h, oct-fcn.cc: New files to declare and define |
|
5718 base class for functions. |
|
5719 * oct-builtin.h, oct-builtin.cc: New files to declare and define |
|
5720 class for built-in functions. |
|
5721 * oct-mapper.h, oct-mapper.cc: New files to declare and define |
|
5722 class for mapper functions. |
|
5723 * oct-usr-fcn.h, oct-usr-fcn.cc: New files to declare and define |
|
5724 base class for user-defined functions. |
|
5725 * Makefile.in: Add new files to appropriate lists. |
|
5726 |
|
5727 * pt-id.h, pt-id.cc: Move tree_identifier class here. |
|
5728 * pt-fvc.h, pt-fvc.cc: From here. |
|
5729 |
|
5730 * pt-indir.h, pt-indir.cc: Move tree_indirect_ref class here. |
|
5731 * pt-fvc.h, pt-fvc.cc: From here. |
|
5732 |
2881
|
5733 Thu Apr 24 03:58:16 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
5734 |
2884
|
5735 * parse.y (magic_colon): New nonterminal. |
|
5736 (arg_list): Simplify using magic_colon. |
|
5737 |
2883
|
5738 * lex.h (class lexical_feedback): Delete maybe_screwed field. |
|
5739 New field, parsed_function name. |
|
5740 * lex.l (lexical_feedback::init): Initialize it. |
|
5741 (handle_identifier): Don't return SCREW. Handle switching |
|
5742 symbol table context properly for `function f ()' vs `function x ='. |
|
5743 (is_keyword): If looking at function keyword, don't set current |
|
5744 symbol table to point to the local table. |
|
5745 * parse.y (recover_from_parsing_function): New function. |
|
5746 (finish_function_def): Use identifier, not token. |
|
5747 Simplify parsing of functions. |
|
5748 |
|
5749 * ov-list.h, ov-list.cc: New files to implement generic list type. |
|
5750 * ov.cc (list_indent): New global variable. |
|
5751 (increment_list_indent, decrement_list_indent): New functions. |
|
5752 (install_types): Register octave_list type. |
|
5753 * ov-base.cc (octave_base_value::is_list): New function. |
|
5754 |
2881
|
5755 * oct-sym.h: New file. |
|
5756 * ov.h (class octave_value): Derive from octave_symbol class. |
|
5757 |
|
5758 * pt-const.h, pt-const.cc: Delete lots of old useless cruft. |
|
5759 |
|
5760 * pt-exp.h, pt-exp.cc (tree_binary_expression): Use type codes for |
|
5761 operators from octave_value instead of repeating them here. |
|
5762 |
|
5763 * pt-fvc-base.cc (tree_fvc::increment, tree_fvc::decrement): Delete. |
|
5764 * pt-fvc.cc (tree_identifier::increment): Get reference to value |
|
5765 and increment that instead of using virutal tree_fvc::increment |
|
5766 function. |
|
5767 |
|
5768 * lex.l: Handle +=, -=, *=, /=, .+=, .-=, .*=, ./=, &=, and |= ops. |
2883
|
5769 * parse.y (make_assign_op): Rename from make_simple_assignment and |
|
5770 handle different op types. |
|
5771 (simple_expr1): Do new ops. |
2881
|
5772 * pt-misc.cc (initialize_undefined_elements): Pass op to assign. |
|
5773 * pt-cmd.cc (tree_for_command::do_for_command_once): Likewise. |
|
5774 * pt-fvc.cc (tree_identifier::assign): Pass op. |
|
5775 * pt-exp.cc (tree_simple_assignment_expression): Handle new ops. |
|
5776 * variables.cc (octave_variable_reference::assign): Likewise. |
|
5777 * ov.h (class octave_value): Likewise. |
|
5778 * ov.cc (octave_value::assign_op_as_string): New function. |
|
5779 (octave_value::assign, octave_value::convert_and_assign, |
|
5780 octave_value::try_assignment_with_conversion, |
|
5781 octave_value::try_assignment): Pass op. |
|
5782 * pt-pr-code.cc (tree_print_code::visit_simple_assignment_expression): |
|
5783 Use expr.oper() instead of printing "=". |
|
5784 * op-cm-cm.cc, op-cm-cs.cc, op-cm-m.cc, op-cm-s.cc, op-m-m.cc, |
|
5785 op-m-s.cc, op-str-str.cc: Pass op to INSTALL_ASSIGNOP. |
|
5786 * ops.h (INSTALL_ASSIGNOP): Pass op. |
2883
|
5787 * ov-typeinfo.cc (do_register_assign_op): Include op type in table. |
|
5788 (do_lookup_assign_op): Use op in lookup. |
2881
|
5789 |
|
5790 * ops.h (INSTALL_UNOP): Delete. |
|
5791 |
|
5792 * input.cc (generate_struct_completions, looks_like_struct): |
|
5793 Disable, since they don't work now anyway. |
|
5794 |
|
5795 * help.cc (Ftype): Work with octave_value instead of a pointer to |
|
5796 tree_constant. |
|
5797 * symtab.cc (symbol_record_info::symbol_record_info): Likewise. |
|
5798 |
|
5799 |
|
5800 Tue Apr 22 22:59:55 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
5801 |
|
5802 * file-io.cc (Ffprintf): If first arg is a string, assume FID = 1. |
|
5803 |
|
5804 Fri Apr 18 20:16:34 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
5805 |
|
5806 * oct-obj.h, oct-obj.cc: Implement octave_value_list with |
|
5807 Array<octave_value> as a data member, not as a class derived from |
|
5808 Array<octave_value>. |
|
5809 (octave_value_list::length, octave_value_list::resize, |
|
5810 octave_value_list::prepend, octave_value_list::append, |
|
5811 octave_value_list::reverse): New functions. |
|
5812 |
|
5813 * op-cm-cm.cc, op-cm-cs.cc, op-cm-m.cc, op-cm-s.cc, op-cs-cm.cc, |
|
5814 op-cs-m.cc, op-m-cm.cc, op-m-cs.cc, op-m-m.cc, op-m-s.cc, |
|
5815 op-s-cm.cc, op-s-m.cc: Use new bool ops from liboctave instead of |
|
5816 the macros defined in ops.h. |
|
5817 |
2865
|
5818 Thu Apr 17 13:12:22 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
5819 |
|
5820 * parse.y (ABORT_PARSE): Handle forced_interactive the same as |
|
5821 interactive. |
|
5822 |
|
5823 Mon Apr 14 01:46:50 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
5824 |
|
5825 * input.cc (octave_read): Don't forget to free input buffer if it |
|
5826 exists and has zero length. |
|
5827 (gnu_readline): Free buf if fgets returns 0. |
|
5828 |
|
5829 Wed Apr 9 00:03:57 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
5830 |
|
5831 * time.cc (mk_tm_map): Only set zone field if HAVE_TM_ZONE or |
|
5832 HAVE_TZNAME are defined. |
|
5833 |
|
5834 Tue Apr 8 12:39:21 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
5835 |
|
5836 * time.cc (extract_tm): Set tm.tm_zone if HAVE_TM_ZONE is defined, |
|
5837 not if HAVE_TMZONE is defined. |
|
5838 |
|
5839 * Makefile.in (%.oct : %.o): Use $(SH_LD), not $(CXX). |
|
5840 |
|
5841 Wed Apr 2 21:32:16 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
5842 |
|
5843 * dynamic-ld.cc, dynamic-ld.h (init_dynamic_linker): Delete |
|
5844 function and declaration. |
|
5845 * octave.cc (main): Don't call it. |
|
5846 |
2856
|
5847 Mon Mar 31 00:37:48 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
5848 |
2859
|
5849 * pt-base-exp.h (tree_expression::eval): Give arg a default value. |
|
5850 * pt-const.h (tree_constant::eval): Likewise. |
|
5851 * pt-exp.h (tree_prefix_expression::eval, tree_colon_expression::eval, |
|
5852 tree_postfix_expression::eval, tree_unary_expression::eval, |
|
5853 tree_binary_expression::eval, tree_boolean_expression::eval, |
|
5854 tree_simple_assignment_expression::eval): Likewise. |
|
5855 * pt-fcn.h (tree_function::eval): Likewise. |
|
5856 * pt-fvc.h (tree_identifier::eval, tree_indirect_ref::eval, |
|
5857 tree_builtin::eval): Likewise. |
|
5858 * pt-mat.h (tree_matrix::eval): Likewise. |
|
5859 * pt-misc.h (tree_statement_list::eval): Likewise. |
|
5860 * pt-mvr-base.h (tree_multi_val_ret::eval): Likewise. |
|
5861 * pt-mvr.h (tree_oct_obj::eval, tree_index_expression::eval, |
|
5862 tree_multi_assignment_expression::eval): Likewise. |
|
5863 * dassl.cc, fsolve.cc, load-save.cc, lsode.cc, npsol.cc, parse.y, |
|
5864 pt-cmd.cc, pt-exp-base.cc, pt-exp.cc, pt-fvc.cc, pt-mat.cc, |
|
5865 pt-misc.cc, pt-mvr.cc, pt-plot.cc, quad.cc, toplev.cc, variables.cc: |
|
5866 Change callers of eval() to use bool instead of int and to make |
|
5867 use of default argument value. |
|
5868 |
|
5869 * toplev.h, toplev.cc (parse_and_execute, eval_string): Flag args |
|
5870 are now bool instead of int. |
|
5871 |
2856
|
5872 * symtab.h, symtab.cc: Use bool instead of int in more places. |
|
5873 * variables.h, variables.cc: Likewise. |
2857
|
5874 * lex.h, lex.l: Likewise. |
|
5875 * parse.y: Likewise. |
2856
|
5876 * help.cc, input.cc, lex.l, load-save.cc, parse.y, pt-fcn.cc: |
|
5877 Change callers of symbol_table::lookup to use bool instead of int, |
|
5878 and to make use of default arguments. |
|
5879 |
2850
|
5880 Fri Mar 28 15:33:11 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
5881 |
2852
|
5882 * parse.y (Vwarn_comma_in_declaration): Delete. |
|
5883 (symbols_of_parse): Delete DEFVAR for warn_comma_in_declaration. |
|
5884 (decl1): Don't allow commas in declarations. |
|
5885 |
2850
|
5886 * lsode.cc (struct LSODE_OPTIONS): Handle integer options. |
|
5887 (print_lsode_option_list, set_lsode_option, show_lsode_option): Ditto. |
|
5888 (lsode_option_table): Add element for step limit. |
|
5889 (lsode_user_jacobian): New function. |
|
5890 (Flsode): Allow function name arg to be a 2-element string array |
|
5891 specifying the function and jacobian function. |
|
5892 |
|
5893 * variables.cc (get_global_value, set_global_value): New functions. |
|
5894 |
2846
|
5895 Wed Mar 26 17:08:27 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
5896 |
|
5897 Implement static variable declaration: |
|
5898 |
|
5899 * lex.l (is_keyword): Handle static. |
|
5900 * octave.gperf: Likewise. |
|
5901 * parse.y (Vwarn_comma_in_declaration): Rename from |
|
5902 Vwarn_comma_in_global_decl. |
|
5903 Handle new static command. |
|
5904 * pt-cmd.h, pt-cmd.cc (class tree_decl_command): New base class |
|
5905 for static and global declaration commands. |
|
5906 (class tree_global_command): Derive from tree_decl_command. |
|
5907 (class tree_static_command): New class, derived from tree_decl_command. |
|
5908 * pt-fvc.cc, pt-fvc.h (tree_identifier::mark_as_static): New function. |
|
5909 * pt-misc.h, pt-misc.h (class tree_decl_elt): Rename from tree_global. |
|
5910 (class tree_decl_init_list): Rename from tree_global_init_list. |
|
5911 * pt-pr-code.cc, pt-pr-code.h (tree_print_code::visit_decl_command): |
|
5912 Rename from visit_global_command. |
|
5913 (tree_print_code::visit_decl_elt): Rename from visit_global. |
|
5914 (tree_print_code::visit_decl_init_list): Rename from |
|
5915 visit_global_init_list. |
|
5916 * pt-walk.h (tree_walker::visit_decl_command): Rename from |
|
5917 visit_global_command. |
|
5918 (tree_walker::visit_decl_elt): Rename from visit_tree_global. |
|
5919 (tree_walker::visit_decl_init_list): Rename from |
|
5920 visit_global_init_list. |
|
5921 * variables.cc (link_to_global_variable): Trying to make a static |
|
5922 variable global is an error. |
|
5923 * SLList-misc.cc: Instantiate lists of pointers to tree_decl_elt |
|
5924 objects, not tree_global objects. |
|
5925 * symtab.h, symtab.cc (symbol_record::tagged_static): New field. |
|
5926 (symbol_record::mark_as_static, symbol_record::is_static): |
|
5927 New functions. |
|
5928 * symtab.cc (symbol_record::init_state): Initialize tagged_static. |
|
5929 (symbol_record::clear): Don't clear static variables. |
|
5930 * symtab.cc (push_context): Don't do anything for static variables. |
|
5931 |
2825
|
5932 Tue Mar 25 17:17:17 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
5933 |
2881
|
5934 * ov-bool-mat.cc, ov-bool-mat.h, ov-bool.cc, ov-bool.h: New files. |
2832
|
5935 |
2831
|
5936 * defaults.cc (symbols_of_defaults): DEFCONST OCTAVE_HOME. |
|
5937 |
|
5938 * toplev.cc (octave_config_info): Delete use of CXXLIBS. |
|
5939 * oct-conf.h.in: Ditto. |
|
5940 |
2830
|
5941 * octave.cc (maximum_braindamage): Don't bind prefer_zero_one_indexing. |
|
5942 * ov.h: Don't declare Vprefer_zero_one_indexing. |
|
5943 * ov.cc: Don't define Vprefer_zero_one_indexing. |
|
5944 (prefer_zero_one_indexing): Delete. |
|
5945 (symbols_of_value): Delete DEFVAR for prefer_zero_one_indexing. |
|
5946 |
2825
|
5947 * ov.h, ov.cc, ov-base.h, ov-base.cc: Add constructors and |
|
5948 extractors for bool and boolMatrix types. |
|
5949 |
|
5950 * ov.cc (install_types): Register octave_bool and |
|
5951 octave_bool_matrix types. |
|
5952 |
|
5953 * op-cm-cm.cc, op-cm-cs.cc, op-cm-m.cc, op-cm-s.cc, op-cs-cm.cc, |
|
5954 op-cs-m.cc, op-m-cm.cc, op-m-cs.cc, op-m-m.cc, op-m-s.cc, |
|
5955 op-s-cm.cc, op-s-m.cc, op-s-s.cc, ov-re-mat.cc: |
|
5956 Return boolMatrix instead of Matrix object. |
|
5957 * ops.h (BOOL_OP3, MX_MX_BOOL_OP): Likewise. |
|
5958 |
|
5959 * op-b-b.h, op-b-b.cc, op-bm-bm.h, op-bm-bm.cc: New files. |
|
5960 * Makefile.in: Add them to the lists. |
|
5961 * ops.cc: Include header files here. |
|
5962 (install_ops): Call install_b_b_ops() and install_bm_bm_ops() here. |
|
5963 |
|
5964 * variables.cc (symbols_of_variables): Don't rely on default |
|
5965 conversion from int to double for value returned from |
|
5966 default_history_size(). |
|
5967 |
|
5968 * pr-output.cc: Include cstdio. |
|
5969 |
|
5970 * parse.y (param_list_end): Fix typo in last change. |
|
5971 |
|
5972 * quad.cc (quad): Cast integer return values to double. |
|
5973 * npsol.cc (show_npsol_option): Likewise. |
|
5974 * qpsol.cc (show_qpsol_option): Likewise. |
|
5975 * file-io.cc (Fsprintf, Ffwrite): Likewise. |
|
5976 |
|
5977 Mon Mar 24 13:11:47 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
5978 |
|
5979 * ov-typeinfo.cc (typeinfo): If invoked with an argument, return |
|
5980 the type of the argument as a string. Fix doc string. |
|
5981 |
2821
|
5982 Thu Mar 20 14:47:49 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
5983 |
|
5984 * mk-oct-links (links_dir): Don't use -h option for grep. It's |
|
5985 not needed since we are working on one file at a time anyway. |
|
5986 |
2819
|
5987 Mon Mar 17 10:53:29 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
5988 |
|
5989 * lex.l (handle_identifier): When handling indirect_ref, set |
|
5990 lexer_flags.quote_is_transpose to 1 so that a.b' to work as |
|
5991 expected. |
|
5992 |
|
5993 * parse.y (param_list_beg, param_list_end): New nonterminals. |
|
5994 (param_list, param_list1): Use them. |
|
5995 |
2811
|
5996 Wed Mar 12 16:57:28 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
5997 |
|
5998 * Makefile.in (install-strip): New target. |
|
5999 |
2806
|
6000 Mon Mar 10 22:38:16 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6001 |
|
6002 * Makefile.in (clean): Delete .oct files too. |
|
6003 |
|
6004 * toplev.cc (Vdefault_eval_print_flag): New static variable. |
|
6005 (eval_string): New arg, print. |
|
6006 (Feval): Pass Vdefault_eval_print_flag to eval_string. |
|
6007 (default_eval_print_flag): New function. |
|
6008 (symbols_of_toplev): New function. |
|
6009 |
|
6010 * variables.cc (install_builtin_variables): Call it. |
|
6011 |
|
6012 * pt-exp.h, pt-exp.cc (class tree_boolean_expression): Rename enum |
|
6013 fields `and' and `or' to `bool_and' and `bool_or'. |
|
6014 (tree_unary_expression): Rename enum field `not' to `unot'. |
|
6015 (class tree_binary_expression): Rename enum fields `and' and `or' |
|
6016 to `el_and' and `el_or'. |
|
6017 * parse.y: Change all uses. |
|
6018 |
|
6019 * time.cc (extract_tm): Truncate field values instead of rounding. |
|
6020 (gmtime, localtime): Likewise, for timeval. |
|
6021 |
|
6022 * ov.h (class octave_value): Delete unused variable freeptr. |
|
6023 |
|
6024 * mappers.cc: Delete functions that are already in |
|
6025 liboctave/lo-mappers.cc. |
|
6026 |
|
6027 * oct-strstrm.cc (octave_base_strstream::tell): Use const_cast, |
|
6028 not static_cast. |
|
6029 |
|
6030 * help.cc (help_from_list): Add missing const qualifiers. |
|
6031 * help.h (struct help_list): Likewise. |
|
6032 * lex.l (match_any, plot_style_token): Likewise. |
|
6033 * load-save.cc (extract_keyword, ascii_save_type): Likewise. |
|
6034 * oct-hist.cc (mk_tmp_hist_file): Likewise. |
|
6035 * octave.cc (execute_startup_files): Likewise. |
|
6036 * octave.gperf (struct octave_kw): Likewise. |
|
6037 * pr-output.cc (pr_any_float): Likewise. |
|
6038 * pt-mvr.cc (tree_index_expression::eval_error): Likewise. |
|
6039 * pt-exp-base.h, pt-exp.h, pt-exp.cc: Likewise. |
|
6040 * parse.y: Likewise. |
|
6041 |
2800
|
6042 Sun Mar 9 03:46:45 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6043 |
2806
|
6044 * pt-exp-base.h (tree_expression): Delete extra comma at end of list. |
|
6045 |
|
6046 * dirfns.cc error.cc file-io.cc fsolve.cc input.cc load-save.cc |
|
6047 npsol.cc pt-fcn.cc qpsol.cc quad.cc syscalls.cc toplev.cc |
|
6048 variables.cc: Eliminate embedded newlines in string constants. |
|
6049 |
|
6050 * Map.cc, data.cc, dirfns.cc, dynamic-ld.cc, file-io.cc, |
|
6051 fsolve.cc, getgrent.cc, getpwent.cc, getrusage.cc, help.cc, |
|
6052 input.cc, load-save.cc, mappers.cc, minmax.cc, npsol.cc, |
|
6053 oct-fstrm.cc, oct-procbuf.h, oct-stdstrm.cc, oct-stdstrm.h, |
|
6054 oct-stream.cc, oct-stream.h, oct-strstrm.cc, octave.cc, |
|
6055 ov-base.h, ov-range.cc, ov-typeinfo.cc, ov.cc, pr-output.cc, |
|
6056 pt-cmd.cc, pt-exp.cc, pt-fcn.cc, pt-fvc.cc, pt-mat.cc, |
|
6057 pt-misc.cc, pt-plot.cc, qpsol.cc, quad.cc, sort.cc, strfns.cc, |
|
6058 symtab.cc, syscalls.cc, sysdep.cc, time.cc, toplev.cc, |
|
6059 unwind-prot.cc, unwind-prot.h, variables.cc, xpow.cc: |
|
6060 Use `static_cast<T> (val)' instead of old C-style `(T) val' casts. |
2800
|
6061 |
2799
|
6062 Sat Mar 8 02:35:13 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6063 |
|
6064 * load-save.cc (save_ascii_data, save_three_d): Where appropriate, |
|
6065 use bool instead of int. |
|
6066 (save_binary_data, save_mat_binary_data, save_ascii_data): |
|
6067 Print warning instead of error for wrong type arg. |
|
6068 |
|
6069 * gripes.cc (gripe_wrong_type_arg): New arg, is_error. |
|
6070 |
|
6071 * pt-plot.cc (save_in_tmp_file): Call save_ascii_data with bool |
|
6072 arg, not int. |
|
6073 |
2797
|
6074 Fri Mar 7 00:56:16 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6075 |
|
6076 * dassl.cc (show_dassl_option): For values that are determined |
|
6077 automatically, return a string instead of a magic value (-1.0). |
|
6078 * fsolve.cc (show_fsolve_option): Likewise. |
|
6079 * lsode.cc (show_lsode_option): Likewise. |
|
6080 * npsol.cc (show_npsol_option): Likewise. |
|
6081 * qpsol.cc (show_qpsol_option): Likewise. |
|
6082 |
|
6083 * variables.cc (extract_function): New function. |
|
6084 * dassl.cc (Fdassl): Use it instead of is_valid_function. |
|
6085 * fsolve.cc (Ffsolve): Likewise. |
|
6086 * npsol.cc (Fnpsol): Likewise. |
|
6087 * qpsol.cc (Fqpsol): Likewise. |
|
6088 * quad.cc (Fquad): Likewise. |
|
6089 |
2795
|
6090 Thu Mar 6 20:07:24 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6091 |
|
6092 * sighandlers.cc (my_friendly_exit, octave_new_handler, |
|
6093 sigfpe_handler, sigpipe_handler): Don't all error() or warning(). |
|
6094 |
|
6095 * pager.cc (pager_death_handler): Don't try to clear pager, just |
|
6096 print message to cerr. |
|
6097 (do_sync): If the status of the pager is bad or it looks like it |
|
6098 is dead, restore the interrupt handler. |
|
6099 |
|
6100 * load-save.cc (extract_keyword (istream&, char*, int&)): |
|
6101 Move declaration of buf inside loop, to avoid deleting its guts |
|
6102 and then trying to reuse it. |
|
6103 (extract_keyword (istream&, char*)): Likewise. |
|
6104 |
2790
|
6105 Tue Mar 4 20:36:53 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6106 |
2791
|
6107 * pt-fcn.cc (tree_function::eval): Protect function from being |
|
6108 redefined while it is being evaluated. |
|
6109 (unprotect_function): New function, for use with unwind_protect stuff. |
|
6110 * pt-fcn.h (tree_function::symtab_entry): New data member. |
|
6111 (tree_function::init): Initialize it to 0. |
|
6112 (tree_function::stash_symtab_ptr): New function. |
|
6113 * parse.y (frob_function_def): Stash pointer to function's |
|
6114 symbol_record in the function definition. |
|
6115 |
|
6116 * symtab.cc (symbol_record::read_only_error): New argument, |
|
6117 action. Change all callers. |
|
6118 (symbol_record::rename): Don't allow read-only symbols to be renamed. |
|
6119 |
2790
|
6120 * variables.cc (Fexist): Don't let files with `.' in their names |
|
6121 confuse us. |
|
6122 |
|
6123 * symtab.cc (valid_identifier (const string&)): New function. |
|
6124 |
2779
|
6125 Sat Mar 1 15:23:14 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
2775
|
6126 |
|
6127 * Version 2.0.5 released. |
|
6128 |
2779
|
6129 Sat Mar 1 01:34:08 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6130 |
|
6131 * Makefile.in (stamp-oct-links): New target. Make links in build |
|
6132 directory too, so that the tests will work. |
|
6133 |
2777
|
6134 * quad.cc: If quad is defined, undefine it. |
|
6135 |
2775
|
6136 * octave.cc: If WITH_KPATHSEARCH is defined, don't define |
|
6137 program_invocation_name or program_invocation_short_name. |
2774
|
6138 |
|
6139 * strftime.c: Update to current version from FSF. |
|
6140 * time.cc (Fstrftime): Call strftime with buf = 0 to get buffer |
|
6141 size, then call again to actually format the time struct. |
|
6142 |
2762
|
6143 Fri Feb 28 01:49:48 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6144 |
2764
|
6145 Implement switch statement: |
|
6146 |
|
6147 * parse.y (Vwarn_variable_switch_label): New static variable. |
|
6148 (warn_variable_switch_label): New function. |
|
6149 (symbols_of_parse): Provide warn_variable_switch_label as Octave |
|
6150 variable here. |
|
6151 (make_switch_case, finish_switch_command): New functions. |
|
6152 (maybe_warn_variable_switch_label): New function. |
|
6153 (end_error): Handle endswitch. |
|
6154 (switch_command, case_list, case_list1, switch_case, default_case): |
|
6155 New nonterminals. |
|
6156 (command): Add switch_command here. |
|
6157 * lex.l (is_keyword): Handle switch, case, otherwise, and endswitch. |
|
6158 * octave_gperf: Recognize switch, case, otherwise, and endswitch. |
|
6159 * token.h (end_tok_type): New item, switch_end. |
|
6160 * pt-cmd.cc (tree_switch_command): New class. |
|
6161 * pt-misc.cc (tree_switch_case, tree_switch_case_list): New classes. |
|
6162 * pt-pr-code.cc (tree_print_code::visit_switch_case, |
|
6163 tree_print_code::visit_switch_case_list, |
|
6164 tree_print_code::visit_switch_command): New functions. |
|
6165 * pt-walk.h (tree_walker::visit_switch_case, |
|
6166 tree_walker::visit_switch_case_list, |
|
6167 tree_walker::visit_switch_command): New pure virtual declarations. |
|
6168 Implement new switch statement. |
|
6169 * SLList-misc.cc: Instantiate lists of pointers to |
|
6170 tree_switch_case objects too. |
|
6171 |
|
6172 * lex.h, lex.l, parse.y: Delete all references to lexer_flags::iffing. |
|
6173 |
2762
|
6174 * syswait.h: Include sys/wait.h on NeXT systems, but don't use the |
|
6175 WIFEXTED, WEXITSTATUS, and WIFSIGNALLED macros defined there. |
|
6176 Also define waitpid in terms of wait4. From Rex A. Dieter |
|
6177 <rdieter@math.unl.edu>. |
|
6178 |
2759
|
6179 Wed Feb 26 16:43:31 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6180 |
|
6181 * oct-stream.cc (octave_base_stream::do_scanf): Don't report an |
|
6182 error if a conversion fails or we reach EOF. |
|
6183 |
2745
|
6184 Tue Feb 25 22:21:05 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6185 |
|
6186 * time.cc (strftime): increase initial buffer size. |
|
6187 |
|
6188 Mon Feb 24 17:49:21 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6189 |
|
6190 * pt-fvc.cc (tree_builtin::eval): Enable checking for max number |
|
6191 of arguments. |
|
6192 |
|
6193 * error.cc (handle_message): Don't fail if args is empty. |
|
6194 |
|
6195 Sun Feb 23 22:42:52 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6196 |
|
6197 * lex.h (lexical_feedback::looking_at_return_list): New field. |
|
6198 (lexical_feedback::looking_at_parameter_list): Ditto. |
|
6199 * lex.l (lexical_feedback::init): Initialize them. |
|
6200 (handle_identifier): Use them. |
|
6201 * parse.y: Likewise. |
|
6202 |
2712
|
6203 Fri Feb 21 15:35:18 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6204 |
2716
|
6205 * lex.l: Require flex 2.5 or later (we really want 2.5.4 or later, |
|
6206 but there seems to be no good way to check the patchlevel). |
|
6207 |
2712
|
6208 * oct-stream.cc (octave_base_stream::oscanf): Instead of returning |
|
6209 an error, just quit processing after a conversion fails. |
|
6210 |
2709
|
6211 Thu Feb 20 02:58:05 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
2702
|
6212 |
|
6213 * Version 2.0.4 released. |
|
6214 |
2706
|
6215 Wed Feb 19 10:30:14 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6216 |
2705
|
6217 * sighandlers.cc (octave_ignore_interrupts, |
|
6218 octave_catch_interrupts, octave_set_interrupt_handler): |
|
6219 Return old value, not pointer to static data. Fix all uses. |
|
6220 |
|
6221 * sighandlers.h (octave_interrupt_handler): Move declaration here. |
|
6222 * sighandlers.cc: From here. |
|
6223 |
|
6224 * toplev.cc: Undo previous change. |
|
6225 |
2702
|
6226 * lex.l (handle_identifier): Allow commands like ls, save, etc. to |
|
6227 also be used as simple variable names. Also make it possible to |
|
6228 use the normal function call syntax to invoke them. |
|
6229 |
2693
|
6230 Tue Feb 18 09:22:04 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
2689
|
6231 |
2702
|
6232 * Makefile.in (%.oct:%.o, %.oct:pic/%.o): Use $(SH_LDFLAGS) here. |
|
6233 |
2690
|
6234 * Version 2.0.3 released. |
|
6235 |
2693
|
6236 Tue Feb 18 00:27:49 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6237 |
|
6238 * toplev.cc (run_command_and_return_output): |
|
6239 Block SIGCHLD while running subprocess. |
|
6240 (cleanup_iprocstream): Unblock it here. |
|
6241 |
|
6242 * sighandlers.h (BLOCK_SIGNAL, BLOCK_CHILD, UNBLOCK_CHILD): Move here. |
|
6243 * sighandlers.cc: From here. |
|
6244 |
2692
|
6245 * toplev.cc (system): Shift then mask exit status. |
|
6246 |
|
6247 * help.cc (try_info): Shift first, then mask exit status. |
|
6248 |
2689
|
6249 * toplev.cc (octave_config_info): Handle option argument. |
|
6250 |
2686
|
6251 Fri Feb 14 16:23:30 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6252 |
2687
|
6253 * oct-stream.cc (octave_base_stream::do_scanf): Don't forget to |
|
6254 check to see if the result matrix needs resizing! |
|
6255 |
2686
|
6256 * Makefile.in (bin-dist): Don't write empty strings to LIBRARIES. |
|
6257 |
2669
|
6258 Thu Feb 13 03:02:08 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6259 |
2676
|
6260 * Makefile.in (stamp-prereq): Depend on stamp-picdir. |
|
6261 (all): Don't depend on stamp-prereq or stamp-picdir. |
|
6262 (stamp-tinst, stamp-interp, libtinst.a, liboctinterp.a): |
|
6263 Do depend on stamp-prereq. |
|
6264 (stamp-picdir): Silence noise about making pic. |
|
6265 (stamp-tinst, stamp-interp): Use $(SH_LD) $(SH_LDFLAGS) instead of |
|
6266 $(CXX) -shared. |
|
6267 |
2675
|
6268 * oct-conf.h.in: Reinstate RLD_FLAG. |
|
6269 * toplev.cc (octave_config_info): Likewise. |
|
6270 |
2672
|
6271 * data.cc (map_d_m, map_m_d, map_m_m): Rename from map. |
|
6272 (Fatan2): Use new function names. |
|
6273 |
|
6274 * pt-fvc.cc (apply_mapper_fcn): Use member function map() instead |
|
6275 of friend function. |
|
6276 |
2669
|
6277 * gripes.cc (gripe_wrong_type_arg (const char*, const string&)): |
|
6278 New function. |
|
6279 |
|
6280 Wed Feb 12 17:27:53 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6281 |
|
6282 * syscalls.cc (symbols_of_syscalls): Add O_ASYNC and O_SYNC. |
|
6283 |
|
6284 Mon Feb 10 01:22:27 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6285 |
|
6286 * dirfns.cc (Freaddir, Fmkdir, Frmdir, Frename): |
|
6287 Also return status and error message. |
|
6288 |
|
6289 * syscalls.cc (Fdup2, Fexec, Ffork, Ffcntl, Funlink, Fmkfifo, |
|
6290 Fpipe, Fwaitpid): Also return error message. |
|
6291 |
2664
|
6292 Sat Feb 8 17:16:09 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6293 |
2665
|
6294 * pt-exp.cc (tree_simple_assignment_expression::eval): Return |
|
6295 value of RHS, but (if printing) print complete value of LHS. |
|
6296 |
2664
|
6297 * pr-output.cc (octave_print_internal): Print a new line for empty |
|
6298 string matrices. |
|
6299 |
2663
|
6300 Wed Feb 5 14:30:44 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6301 |
|
6302 * oct-stream.cc (scanf_format_list::process_conversion): Accept |
|
6303 but don't actually use h, l, and L modifiers. Always insert l |
|
6304 modifier for floating point conversions. |
|
6305 |
2652
|
6306 Fri Jan 31 13:55:10 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6307 |
|
6308 * pager.cc (do_sync): Always flush the cout stream after writing. |
|
6309 |
2643
|
6310 Wed Jan 29 08:25:29 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6311 |
2648
|
6312 * defaults.cc (exec_path): Don't include bin_dir in std_path. |
|
6313 |
2646
|
6314 * pager.cc (do_sync): Flush the cout stream after writing if |
|
6315 running in interactive or forced_interactive mode. |
|
6316 |
|
6317 * mk-oct-links: Rename from mk-oct-links.in. |
|
6318 Don't use symbolic links. |
|
6319 * Makefile.in: Distribute mk-oct-links, not mk-oct-links.in |
|
6320 (mk-oct-links): Delete target. |
|
6321 (install-oct, bin-dist): Don't depend on mk-oct-links. |
|
6322 Run $(srcdir)/mk-oct-links, not ./mk-oct-links. |
|
6323 |
2643
|
6324 * qr.cc (qr): Doc fix. |
|
6325 |
2638
|
6326 Tue Jan 28 10:48:28 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6327 |
|
6328 * Makefile.in (install-inc): Create a relative symbolic link. |
|
6329 (install-bin): Create a relative symbolic link. |
|
6330 |
2630
|
6331 Mon Jan 27 12:12:03 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6332 |
2634
|
6333 * Version 2.0.2 released. |
|
6334 |
|
6335 * Makefile.in (CXXFLAGS_NO_PT_FLAGS): Rename from XALL_CXXFLAGS. |
|
6336 Substitute bsd_gcc_kluge_targets_frag. |
|
6337 |
2630
|
6338 * sysdep.cc (Fsleep): New function. |
|
6339 (Fusleep): New function. |
|
6340 |
|
6341 * toplev.cc (octave_config_info): Don't include RLD_FLAG. |
|
6342 * oct-conf.h.in: Don't define RLD_FLAG |
|
6343 |
2626
|
6344 Sun Jan 26 19:41:48 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6345 |
|
6346 * sighandlers.cc (sigchld_handler): Block SIGCHLD while |
|
6347 sigchld_hander is running. |
|
6348 |
2624
|
6349 Sat Jan 25 22:36:39 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6350 |
|
6351 * Makefile.in (bin-dist): Update for 2.x. |
|
6352 |
2621
|
6353 Fri Jan 24 10:05:00 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6354 |
|
6355 * mk-oct-links.in: New arg, -p, to just print list of files to link. |
|
6356 |
|
6357 * lex.l (handle_number): Convert `D' or `d' exponents to `e' |
|
6358 before scanning. |
|
6359 |
2620
|
6360 Thu Jan 23 10:00:00 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6361 |
|
6362 * pt-pr-code.h, pt-pr-code.cc (tree_print_code::visit_no_op_command): |
|
6363 New function. |
|
6364 * pt-cmd.h, pt-cmd.cc (tree_no_op_command): New class. |
|
6365 * parse.y (make_break_command, make_continue_command, |
|
6366 make_return_command): Where they don't really make sense, turn |
|
6367 these commands into no-ops. Accept return and break if reading a |
|
6368 script file. |
|
6369 * toplev.cc (parse_and_execute): Handle return and break in script |
|
6370 files. Quit executing commands if an error occurs when reading a |
|
6371 script file. Set global_command to 0 after deleting it. |
|
6372 (main_loop): If not interactive or forced_interactive, handle |
|
6373 break and return, and quit executing commands if an error occurs. |
|
6374 Set global_command to 0 after deleting it. |
|
6375 * error.cc (Ferror): Doc fix. |
|
6376 * pt-walk.h (tree_walker): Add declaration for visit_no_op_command. |
|
6377 |
2618
|
6378 Wed Jan 22 20:54:12 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6379 |
|
6380 * input.cc (gnu_readline): If not using readline, flush |
|
6381 rl_outstream after printing prompt. |
|
6382 (octave_gets): Also call flush_octave_stdout() if |
|
6383 forced_interactive, not just if interactive. |
|
6384 (do_input_echo): If forced_interactive, only echo prompt and |
|
6385 command line if also reading a script file. |
|
6386 |
2616
|
6387 Tue Jan 21 23:02:34 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6388 |
|
6389 * SLList.h: Include "BaseSLList.h", not <BaseSLList.h>. |
|
6390 |
2610
|
6391 Mon Jan 20 11:11:12 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6392 |
2614
|
6393 * lex.l (token_stack): Don't declare static. |
|
6394 * pt-plot.cc (tmp_files): Likewise. |
|
6395 * toplev.cc (octave_atexit_functions): Likewise. |
|
6396 * unwind-prot.cc (unwind_protect_list): Likewise. |
|
6397 |
2613
|
6398 * ops.h (MX_MX_BOOL_OP): Correctly handle case of one or both |
|
6399 arguments being empty. Change all callers. |
|
6400 |
|
6401 * oct-stream.cc (printf_value_cache::looking_at_string): |
|
6402 Handle empty strings correctly now that they are 0x0. |
|
6403 |
2610
|
6404 * file-io.cc: Don't include "syswait.h" here. |
|
6405 |
|
6406 Sun Jan 19 22:38:45 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6407 |
|
6408 * oct-stream.h (octave_base_stream::seek): Declare offset arg as |
|
6409 streamoff, not streampos. |
|
6410 (octave_stream::seek): Likewise. |
|
6411 * oct-strstrm.h (octave_base_strstream::seek): Likewise. |
|
6412 * oct-stdstrm.h (octave_base_stdiostream::seek): Likewise. |
|
6413 * oct-iostrm.h (octave_base_iostream::seek): Likewise. |
|
6414 * oct-fstrm.h (octave_fstream::seek): Likewise. |
|
6415 |
2609
|
6416 Fri Jan 17 18:13:10 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6417 |
|
6418 * file-io.cc (Ffflush): Handle stdout as a special case. |
|
6419 |
|
6420 * oct-stream.cc (octave_stream_list::do_get_file_number): |
|
6421 Do the work for octave_stream::get_file_number. |
|
6422 (octave_stream_list::get_file_number): Convert to static function. |
|
6423 |
2608
|
6424 Wed Jan 8 11:42:44 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6425 |
|
6426 * log.cc (sqrtm): For complex arg case, compute sqrt, not log. |
|
6427 |
2602
|
6428 Tue Jan 7 00:16:41 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6429 |
|
6430 * Version 2.0.1 released. |
|
6431 |
|
6432 Mon Jan 6 00:00:07 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6433 |
|
6434 * pt-mat.cc (tm_row_const_rep::all_mt): New variable. |
|
6435 (tm_row_const::all_empty): New function. |
|
6436 (tm_row_const::tm_row_const_rep::init): Set all_mt here. |
|
6437 (tm_const::all_mt): New variable. |
|
6438 (tm_const::all_emtpy): New function. |
|
6439 (tm_const::init): Set all_mt here. |
|
6440 (tree_matrix::eval): Return an empty matrix if the list contains |
|
6441 only empty elements. If it contains only empty strings, return an |
|
6442 empty string. |
|
6443 |
2601
|
6444 Sun Jan 5 12:50:25 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6445 |
|
6446 * ops.h (SC_MX_BOOL_OP, MX_SC_BOOL_OP): New arg, empty_result. |
|
6447 * op-cm-cm.cc, op-cm-cs.cc, op-cm-m.cc, op-cm-s.cc, op-cs-cm.cc, |
|
6448 op-cs-m.cc, op-m-cm.cc, op-m-cs.cc, op-m-m.cc, op-m-s.cc, |
|
6449 op-s-cm.cc, op-s-m.cc, op-str-str.cc: Change all uses of |
|
6450 SC_MX_BOOL_OP and MX_SC_BOOL_OP macros. Return correct results |
|
6451 for empty matrix cases. |
|
6452 |
|
6453 * pt-fcn.cc (tree_function::eval): If Vdefine_all_return_values is |
|
6454 true, initialize return values before evaluating function, for |
|
6455 compatibility with Matlab. |
|
6456 |
|
6457 * oct-stream.cc (get_size): Correctly set size when arg is scalar. |
|
6458 |
|
6459 Thu Jan 2 12:40:10 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6460 |
|
6461 * Makefile.in (install-oct): Quote $(OCT_FILES) in for loop to |
|
6462 avoid syntax error from ksh. |
|
6463 |
|
6464 * pr-output.cc (octave_print_internal): Avoid unused parameter |
|
6465 warning from gcc. |
|
6466 |
2600
|
6467 Thu Dec 19 12:13:42 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6468 |
|
6469 * oct-stream.cc (octave_base_stream::do_scanf): |
|
6470 Don't treat %l{e,f,g} differently from %{e,f,g}. |
|
6471 (octave_base_stream::do_oscanf): Likewise. |
|
6472 |
|
6473 * sighandlers.cc (sigchld_handler): Fix typos. |
|
6474 |
2598
|
6475 Wed Dec 18 20:17:23 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6476 |
2599
|
6477 * file-io.cc (Ffgetl, Ffgets): Also return number of characters read. |
|
6478 |
|
6479 * ov-range.cc (octave_range::not): New function. |
|
6480 * ov-range.h (octave_range::uminus): New function. |
|
6481 |
2598
|
6482 * BaseSLList.cc: Include error.h. |
|
6483 (BaseSLList::error): Call ::error() to process error message. |
|
6484 |
2589
|
6485 Fri Dec 13 02:38:19 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6486 |
|
6487 * ov.cc (octave_value::convert_and_assign): Preserve lhs value if |
|
6488 assignment fails. |
|
6489 |
2586
|
6490 Wed Dec 11 12:33:16 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6491 |
|
6492 * pt-plot.cc (GPLOT_CMD_END): Don't put semicolons at the end of |
|
6493 each plot command; it causes trouble with gnuplot 3.5. |
|
6494 |
2580
|
6495 Tue Dec 10 00:31:13 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6496 |
2583
|
6497 * Version 2.0 released. |
|
6498 |
2584
|
6499 * pr-output.cc (set_format_style): Don't try to access argv unless |
|
6500 argc > 1. |
|
6501 |
2580
|
6502 * SLList-expr.cc SLList-misc.cc SLList-plot.cc SLList-str.cc |
|
6503 SLList-tc.cc SLList-tm.cc SLList.h SLStack-i.cc SLStack-pc.cc |
|
6504 SLStack-str.cc SLStack-sym.cc SLStack-tok.cc SLStack-ue.cc |
|
6505 SLStack-ui.cc, pt-mat.cc: Include Stack.h, Stack.cc, SLStack.cc, |
|
6506 and SLList.cc as necessary. |
|
6507 |
|
6508 * Stack.cc, SLStack.cc, SLList.cc: New files. |
|
6509 * Makefile.in (SOURCES): Add them to the list. |
|
6510 |
2575
|
6511 Mon Dec 9 12:03:45 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6512 |
2577
|
6513 * Makefile.in (install-bin): Use $(EXE) suffix so install will |
|
6514 find the right file on cygwin32 systems. |
|
6515 |
2575
|
6516 * ov.h: Declare proper form of do_binary_op as friend to |
|
6517 octave_value class. |
|
6518 |
2572
|
6519 Sat Dec 7 22:00:10 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6520 |
|
6521 * oct-stream.cc (do_printf_conv, do_scanf_conv, |
|
6522 do_oscanf_num_conv, do_oscanf_str_conv): Convert to real |
|
6523 functions instead of CPP macros, using templates where necessary. |
|
6524 (do_oscanf_num_conv, do_oscanf_str_conv): Correctly handle |
|
6525 discarded values. |
|
6526 |
2569
|
6527 Fri Dec 6 00:20:25 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6528 |
2572
|
6529 * Version 1.94. |
|
6530 |
2571
|
6531 * Map-*.cc, SLList-*.cc, SLStack-*.cc: Include config.h. |
|
6532 |
|
6533 * ov.h: Don't include SLList.h. |
|
6534 |
|
6535 * SLStack.cc: Delete. Move everything to SLStack.h. |
|
6536 |
|
6537 * BaseSLList.h, BaseSLList.cc: New files. Split out the |
|
6538 non-template base class parts of SLList. |
|
6539 |
2569
|
6540 * Makefile.in (TEMPLATE_SRC): Delete. Move files to SOURCES. |
|
6541 * Map.h, Map.cc: Add #pragma interface/implementation. |
|
6542 * SLStack.h, SLStack.cc: Add #pragma interface/implementation. |
|
6543 |
|
6544 * SLList.h, SLList.cc: New files, from libg++, but with #pragma |
|
6545 interface/implementation. |
|
6546 * Makefile.in (SOURCES): Add SLList.cc. |
|
6547 (INCLUDES): Add SLList.h. |
|
6548 |
2566
|
6549 Thu Dec 5 18:36:44 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6550 |
|
6551 * octave.cc: Don't include sun-utils.h. |
|
6552 |
2563
|
6553 Tue Dec 3 23:47:09 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6554 |
|
6555 * op-str-str.cc (eq, ne): Handle operations with scalars. |
|
6556 |
2555
|
6557 Thu Nov 21 12:30:36 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6558 |
|
6559 * ov-str-mat.h (octave_char_matrix_str): Provide transpose and |
|
6560 hermitian operators. |
|
6561 * ov-ch-mat.h (octave_char_matrix): Likewise. |
|
6562 |
2548
|
6563 Wed Nov 20 00:35:57 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6564 |
2554
|
6565 * sighandlers.h (struct octave_interrupt_handler): Provide |
|
6566 forward declaration here. |
|
6567 * sighandlers.cc (octave_interrupt_handler): New struct. |
|
6568 (octave_catch_interrupts): Rename from catch_interrupts. |
|
6569 (octave_ignore_interrupts, octave_set_interrupt_handler): |
|
6570 New functions. |
|
6571 * help.cc, oct-hist.cc, pager.cc, toplev.cc: Use new functions for |
|
6572 handling interrupts so that we can hide the details of whether or |
|
6573 not we have to deal with SIGBREAK. |
|
6574 |
|
6575 * pt-plot.cc [! HAVE_POSIX_SIGNALS] (open_plot_stream): |
|
6576 Simply ignore and restore the interrupt handler here. |
|
6577 |
|
6578 * sighandlers.cc (MAYBE_REINSTALL_SIGHANDLER): New macro. Use it |
|
6579 instead of always checking MUST_REINSTALL_SIGHANDLERS everywhere. |
|
6580 (sigchld_handler): If octave_child_list is empty, wait for any |
|
6581 child, but don't hang, and don't collect status info. |
|
6582 [__EMX__] (sigchld_handler): Save and restore handlers for SIGINT, |
|
6583 SIGBREAK, and SIGCHLD. Ignore them while waiting on children. |
|
6584 (install_signal_handlers): If SIGBREAK exists, handle it like SIGINT. |
|
6585 |
2552
|
6586 * toplev.cc [USE_READLINE] (clean_up_and_exit): |
|
6587 Call rl_deprep_terminal() to restore terminal settings. |
|
6588 |
|
6589 * sysdep.cc [__EMX__ && OS2] (Fextproc): New command. |
|
6590 [__EMX__ && OS2] (FEXTPROC): Alias for Fextproc. |
|
6591 |
|
6592 * Version 1.93. |
|
6593 |
2549
|
6594 * sysdep.cc (octave_chdir): [__EMX__]: Make copy of string before |
|
6595 converting to upper case. |
|
6596 |
2548
|
6597 * getgrent.cc (mk_gr_map): Only set the passwd field if |
|
6598 HAVE_GR_PASSWD is defined. |
|
6599 |
2533
|
6600 Tue Nov 19 12:01:13 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6601 |
2546
|
6602 * sysdep.cc (OS2_init): New function. |
|
6603 [__EMX__] (sysdep_init): Call it. |
|
6604 |
2542
|
6605 * lex.l (plot_style_token): Add new plot styles for gnuplot 3.6. |
2543
|
6606 * pt-plot.cc (subplot_style::columns_ok): Rename from |
|
6607 subplot_style::errorbars. Recognize more styles and do a better |
|
6608 job of diagnosing column number/style mismatches. |
2542
|
6609 |
2536
|
6610 * sighandlers.cc (my_friendly_exit): If we are called twice, try |
|
6611 to remove the signal handler for SIGABRT and the call abort (). |
|
6612 |
2534
|
6613 * help.cc (Ftype): If a function is defined from a file and |
|
6614 transformed text has not been requested, just print the contents |
|
6615 of the file. |
|
6616 |
2533
|
6617 * parse.y (fold): New functions for constant folding for binary |
|
6618 and unary expressions. Keep track of original text even when |
|
6619 transformations occur. |
|
6620 (make_binary_op, make_boolean_op, make_unary_op): Use them. |
|
6621 (finish_colon_expression, finish_matrix): Keep track of original |
|
6622 text even when transformations occur. |
|
6623 |
|
6624 * help.cc (Ftype): Don't mess with Vps4. |
|
6625 Handle new option `-transformed'. |
|
6626 |
|
6627 * pt-const.h, pt-const.cc (tree_constant::print): |
|
6628 New arg, pr_orig_text. |
|
6629 |
|
6630 * pt-exp.h, pt-exp.cc (tree_colon_expression::is_range_constant): |
|
6631 Delete. |
|
6632 |
|
6633 * pt-exp-base.h (tree_expression::original_text): New virtual function. |
|
6634 pt-exp-base.cc (tree_expression::original_text): Default version. |
|
6635 |
|
6636 * pt-pr-code.h (tree_print_code::print_original_text, |
|
6637 tree_print_code::prefix): New fields. |
|
6638 * pt-pr-code.cc (tree_print_code::visit_constant): Pass |
|
6639 print_original_text to tree_constant::print(). |
|
6640 (tree_print_code::indent): Use prefix instead of Vps4. |
|
6641 * pt-fcn.cc (tree_function::print_function_header, |
|
6642 tree_function::print_function_trailer): Pass Vps4 to |
|
6643 tree_print_code_constructor for prefix. |
|
6644 * pt-misc.cc (tree_statement::maybe_echo_code): Pass Vps4 to |
|
6645 tree_print_code_constructor for prefix. |
|
6646 |
|
6647 * pt-mat.h, pt-mat.cc (tree_matrix::all_elements_are_constant): |
|
6648 Rename from is_matrix_constant. |
|
6649 (tree_matrix_row::all_elements_are_constant): Likewise. |
|
6650 Change all callers. |
|
6651 |
|
6652 Mon Nov 18 14:13:32 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6653 |
|
6654 * Makefile.in (install-inc): Try harder to create the link from |
|
6655 include/octave to include/octave-VERSION. |
|
6656 |
2524
|
6657 Sun Nov 17 14:14:48 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6658 |
2527
|
6659 * Makefile.in (parse.cc): Expect 13 shift/reduce conflicts. |
2526
|
6660 |
2525
|
6661 * parse.y (set_stmt_print_flag): New function. |
|
6662 (sep_type): New member for bison %union declaration. |
|
6663 Simplify rules for statement lists keeping track of the type of |
|
6664 the first separator in the values associated with the |
|
6665 nonterminals for the separators. |
|
6666 |
2524
|
6667 * lex.l (handle_identifier): Set lexer_flags.doing_set if the |
|
6668 token is "gset", not "set". |
|
6669 |
|
6670 Sat Nov 16 21:41:26 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6671 |
|
6672 * Makefile.in (parse.cc, lex.cc): Add special rules for these files. |
|
6673 Delete pattern rules for .y and .l files. |
|
6674 |
2522
|
6675 Fri Nov 15 13:48:02 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6676 |
2523
|
6677 * pt-plot.cc: Put semicolons at the ends of all plot commands. |
|
6678 |
2522
|
6679 * defaults.cc (subst_octave_home): Start subsequent searchs from |
|
6680 the end of the replaced text. |
|
6681 |
|
6682 * pr-output.cc (pr_any_float): Kluge for SCO systems. |
|
6683 |
|
6684 * pr-output.cc (pr_any_float, pr_complex): Don't declare inline. |
|
6685 |
|
6686 * mappers.cc: Include lo-ieee.h, for isinf and isnan on SCO |
|
6687 systems. |
|
6688 |
2512
|
6689 Thu Nov 14 00:06:19 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6690 |
2520
|
6691 * pt-plot.cc (Fgset, Fgshow): New commands. |
|
6692 (Fshow): Print warning and call gshow. |
|
6693 (Fset): Print warning and call gset. |
|
6694 |
2517
|
6695 * variables.cc (parse_fcn_file): Add unwind-protect for file |
|
6696 pointer, so the file is always closed. |
|
6697 (get_help_from_file): Likewise. |
|
6698 * toplev.cc (parse_and_execute): Likewise. |
|
6699 |
2516
|
6700 * Makefile.in (install-oct): Depend on mk-oct-links. |
|
6701 (mk-oct-links): New target. |
|
6702 |
2512
|
6703 * Version 1.92. |
|
6704 |
2508
|
6705 Wed Nov 13 11:13:22 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6706 |
2512
|
6707 * sighandlers.cc (sys_siglist): [__EMX__]: Add definitions. |
|
6708 |
|
6709 * octave.cc (execute_startup_files): Allow init file name ot be |
|
6710 specified by an environment variable. |
|
6711 |
|
6712 * dirfns.cc (make_absolute): [__EMX__]: Path is already absolute |
|
6713 if it begins with any character followed by a colon. |
|
6714 |
2511
|
6715 * load-save.cc (read_mat_ascii_matrix, get_lines_and_columns, |
|
6716 get_complete_line): New functions, for reading headless text files. |
|
6717 (load_save_format): Add LS_MAT_ASCII, for headless text files. |
|
6718 (do_load): Handle LS_MAT_ASCII files. |
|
6719 Thanks to Mel Melchner <mjm@research.att.com> for initial version |
|
6720 of this code. |
|
6721 |
2508
|
6722 * sysdep.cc: Conditionally include ieeefp.h. |
|
6723 (BSD_init, SCO_init): New functions. |
|
6724 (sysdep_init): Conditionally call them here. |
|
6725 |
2499
|
6726 Tue Nov 12 00:14:56 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6727 |
2508
|
6728 * pt-plot.cc (open_plot_stream): Don't block SIGCHLD. |
|
6729 |
2499
|
6730 * load-save.cc (read_binary_data): When reading string arrays, be |
|
6731 sure to create an octave_char_matrix_str object, not just an |
|
6732 octave_char_matrix object. |
|
6733 (read_ascii_data): Likewise. |
|
6734 |
2497
|
6735 Mon Nov 11 22:52:58 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6736 |
|
6737 * load-save.cc (read_binary_data): Don't forget teminating NUL for |
|
6738 string that we plan to insert. |
|
6739 (read_ascii_data): Likewise. |
|
6740 |
2495
|
6741 Sun Nov 10 16:58:07 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6742 |
2496
|
6743 * dirfns.cc (Ffnmatch): New function. |
|
6744 |
2495
|
6745 * octave.cc (intern_argv): Use new string_vector constructor. |
|
6746 |
|
6747 * ov-str-mat.cc (octave_char_matrix_str::all_strings): Have |
|
6748 charMatrix::row_as_string() strip trailing whitespace. |
|
6749 |
|
6750 * dirfns.cc (Fglob): new function. |
|
6751 |
|
6752 * sysdep.cc (oct_tilde_expand): Provide version that works on |
|
6753 string vectors too. |
|
6754 (Ftilde_expand): Work on string vector args. |
|
6755 |
|
6756 * load-save.cc (save_binary_data): Call char_matrix_value() to |
|
6757 extract charMatrix from octave_value object, not all_strings(). |
|
6758 (save_ascii_data): Likewise. |
|
6759 * pt-mat.cc (tree_matrix::eval): Likewise. |
|
6760 |
|
6761 * ov.h (octave_value::all_strings): Return string_vector, not |
|
6762 charMatrix. |
|
6763 * ov-base.cc (octave_base_value::all_strings): Likewise. |
|
6764 * ov-str-mat.h, ov-str-mat.cc (octave_char_matrix_str::all_strings): |
|
6765 Likewise. |
|
6766 |
2487
|
6767 Fri Nov 8 09:54:59 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6768 |
2492
|
6769 * defaults.cc, dynamic-ld.cc, fn-cache.cc, help.cc, oct-hist.cc, |
|
6770 octave.cc, pager.cc, pt-fcn.cc, toplev.cc, utils.cc, variables.cc, |
|
6771 lex.l: Change #include "" to #include <> for defaults.h, |
|
6772 oct-conf.h, oct-gperf.h, y.tab.h, and version.h, to avoid getting |
|
6773 them from $srcdir when we really want the version from the build |
|
6774 directory. (Maybe this should be done for all the include files, |
|
6775 not just those that are auto-generated? Hmm.) |
|
6776 |
2488
|
6777 * defaults.h.in (CXXLIB_LIST, CXXLIB_PATH, FLIB_LIST, FLIB_PATH): |
|
6778 Delete. |
|
6779 |
2487
|
6780 * Makefile.in (install-oct): Use $(INSTALL_PROGRAM) for .oct files. |
|
6781 |
2477
|
6782 Thu Nov 7 07:59:07 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6783 |
2487
|
6784 * variables.cc (gobble_leading_white_space): New arg, update_pos. |
|
6785 * (is_function_file): Don't update file position information here. |
|
6786 |
2482
|
6787 * Version 1.91. |
|
6788 |
2479
|
6789 * pt-fvc.cc (tree_indirect_ref::reference): If the lhs object is |
|
6790 not a map, convert it to one. |
|
6791 |
|
6792 * ov-typeinfo.h (init_tab_sz): New static member. |
|
6793 |
2477
|
6794 * ov-struct.cc, ov-struct.h: Add hooks for custom memory management. |
|
6795 * ov-scalar.cc, ov-scalar.h: Likewise. |
|
6796 * ov-re-mat.cc, ov-re-mat.h: Likewise. |
|
6797 * ov-range.cc, ov-range.h: Likewise. |
|
6798 * ov-cx-mat.cc, ov-cx-mat.h: Likewise. |
|
6799 * ov-complex.cc, ov-complex.h: Likewise. |
|
6800 * ov-ch-mat.cc, ov-ch-mat.h: Likewise. |
|
6801 |
2474
|
6802 Wed Nov 6 12:32:48 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6803 |
2482
|
6804 * pager.cc (do_sync): Don't call clear_external_pager() here. |
2476
|
6805 |
2475
|
6806 * pt-const.h (tree_constant::allocator) New static member. |
|
6807 (tree_constant::operator new, tree_constant::operator delete): |
|
6808 Implement with custom allocator. |
|
6809 |
|
6810 * syscalls.cc (Fgetgid, Fgetegid): New functions. |
|
6811 |
|
6812 * sighandlers.cc (sigchld_handler): If necessary, reinstall |
|
6813 handler after call to waitpid(). |
|
6814 |
|
6815 * pager.cc (pager_death_handler): Don't use warning() to print |
|
6816 message. |
|
6817 |
|
6818 * getgrent.cc: New file. |
|
6819 * Makefile.in (DLD_SRC): Add it. |
|
6820 |
|
6821 * ov.cc (octave_value::print_with_name): Call is_map() instead of |
|
6822 print_as_structure(). |
|
6823 * ov-struct.cc (octave_struct::print): Likewise. |
|
6824 |
|
6825 * ov.h, ov.cc, pt-const.h: Delete force_numeric(), make_numeric(), |
|
6826 convert_to_matrix_type(), print_as_structure() member functions. |
|
6827 |
2474
|
6828 * variables.cc (is_function_file): Call gobble_leading_whitespace |
|
6829 here to strip all leading whitespace and comments. |
|
6830 (parse_fcn_file): If reading a function file, call |
|
6831 gobble_leading_whitespace again after resetting parser state to |
|
6832 grab help text. |
|
6833 |
2469
|
6834 Tue Nov 5 13:00:35 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6835 |
2472
|
6836 * syscalls.cc (Fgeteuid, Fgetuid): New functions. |
|
6837 |
|
6838 * getpwent.cc: Use gripe_not_supported from gripes.cc, instead of |
|
6839 local gripe_not_implemented function. |
|
6840 |
2470
|
6841 * input.cc, sysdep.cc, variables.cc: Only include readline.h and |
|
6842 history.h if USE_READLINE is defined. |
|
6843 |
|
6844 * help.cc: Make it compile without warnings even if USE_GNU_INFO |
|
6845 is not defined. |
|
6846 |
2469
|
6847 * sighandlers.h (octave_child_list): Don't define |
|
6848 HAVE_POSIX_SIGNALS HERE. |
|
6849 |
|
6850 * sighandlers.cc (SIGHANDLER_RETURN): New macro. |
|
6851 (generic_sig_handler, sigchld_handler, sigfpe_handler, |
|
6852 sigint_handler, sigpipe_handler): Use it. |
|
6853 (sigchld_handler, sigfpe_handler, sigint_handler, sigpipe_handler): |
|
6854 Only reinstall signal handler if MUST_REINSTALL_SIGHANDLER is defined. |
|
6855 |
2463
|
6856 Sun Nov 3 00:45:30 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6857 |
2466
|
6858 * pt-const.cc (tree_constant::print): Just call val.print(). |
|
6859 * ov-base.cc, ov-ch-mat.cc, ov-colon.cc, ov-complex.cc, |
|
6860 ov-cx-mat.cc, ov-range.cc, ov-re-mat.cc, ov-scalar.cc, |
|
6861 ov-str-mat.cc, ov-struct.cc ov-va-args.cc, ov.cc (print): |
|
6862 Handle pr_as_read_syntax arg. |
|
6863 |
|
6864 * defaults.cc (subst_octave_home): Search for prefix repeatedly in |
|
6865 retval, not s. |
|
6866 |
|
6867 * gripes.h: Make declaration of gripes_not_supported match |
|
6868 definition. |
|
6869 |
2465
|
6870 * mk-oct-links.in: In sed command, match "DEFUN_DLD *( *", not |
|
6871 "DEFUN_DLD_BUILTIN *( *". |
|
6872 |
|
6873 * chol.cc, colloc.cc, dassl.cc, det.cc, eig.cc, expm.cc, fft.cc, |
|
6874 fft2.cc, filter.cc, find.cc, fsolve.cc, fsqp.cc, getpwent.cc, |
|
6875 getrusage.cc, givens.cc, hess.cc, ifft.cc, ifft2.cc, inv.cc, |
|
6876 log.cc, lpsolve.cc, lsode.cc, lu.cc, minmax.cc, npsol.cc, pinv.cc, |
|
6877 qpsol.cc, qr.cc, quad.cc, qzval.cc, rand.cc, schur.cc, sort.cc, |
|
6878 svd.cc, syl.cc, time.cc: Change all uses of DEFUN_DLD_BUILTIN to |
|
6879 be just DEFUN_DLD. |
|
6880 |
|
6881 * defun-dld.h: Eliminate DEFUN_DLD_BUILTIN. |
|
6882 |
2464
|
6883 * syswait.h: Use #ifdef HAVE_SYS_WAIT_H, not #if HAVE_SYS_WAIT_H |
|
6884 to decide whether to include sys/wait.h. |
|
6885 |
|
6886 * pt-exp-base.h (tree_expression): Declare oper() here as a |
|
6887 virtual member function. |
|
6888 |
2463
|
6889 * pt-pr-code.cc (tree_print_code::visit_constant): Check for |
|
6890 string before checking for char_matrix. |
|
6891 |
|
6892 * ov-ch-mat.cc (octave_char_matrix::print): Supply correct number |
|
6893 of args to octave_print_internal(). |
|
6894 |
2457
|
6895 Sat Nov 2 20:44:55 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6896 |
2458
|
6897 * file-io.cc (Ftmpnam): Rename from Foctave_temp_file_name. |
|
6898 |
2457
|
6899 * Makefile.in (DLD_SRC): Move time.cc and getrusage.cc here from |
|
6900 SOURCES. Add getpwent.cc. |
|
6901 |
|
6902 * getrusage.cc: Rename from resource.cc. Make getrusage a |
|
6903 loadable function. |
|
6904 |
|
6905 * time.cc: Rename from timefns.cc. Make time functions loadable. |
|
6906 |
|
6907 * getpwent.cc: New file. |
|
6908 |
2439
|
6909 Wed Oct 30 01:06:19 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6910 |
2452
|
6911 * Version 1.90. |
|
6912 |
|
6913 * Makefile.in (DISTFILES): Add ChangeLog. |
|
6914 |
2449
|
6915 * ov-range.cc (octave_range::convert_to_str): New function. |
|
6916 |
|
6917 * ov-str-mat.h (octave_char_matrix_str::char_matrix_value): |
|
6918 Delete function. Already handled by octave_char_matrix class. |
|
6919 |
|
6920 * ov-ch-mat.h (octave_char_matrix::convert_to_str): New function. |
|
6921 |
2448
|
6922 * pager.cc (Fmore): Set page_screen_output to 1.0 or 0.0, not |
|
6923 "true" or "false". |
|
6924 |
2447
|
6925 * ov-ch-mat.cc, ov-struct.cc, ov-struct.h, pr-output.cc, |
|
6926 pt-cmd.cc, pt-const.cc, pt-const.h, pt-fcn.cc, pt-fvc-base.cc, |
|
6927 pt-fvc-base.h, pt-fvc.cc, pt-fvc.h, rand.cc, sighandlers.cc, |
|
6928 variables.cc, variables.h: Delete unused code. |
|
6929 |
2445
|
6930 * octave.cc: Only include pwd.h if HAVE_PWD_H. |
|
6931 |
|
6932 * oct-strstrm.h: Include <string>, not <string.h>. |
|
6933 |
2442
|
6934 * defaults.cc, dirfns.cc, file-io.cc, help.cc, input.cc, |
|
6935 oct-hist.cc, oct-procbuf.cc, oct-procbuf.h, octave.cc, pager.h, |
|
6936 procstream.h, pt-misc.cc, pt-plot.cc, sighandlers.cc, strftime.c, |
|
6937 syscalls.cc, sysdep.cc, syswait.h, toplev.cc, utils.cc, |
|
6938 variables.cc: Only include sys/types.h if HAVE_SYS_TYPES_H. |
|
6939 |
2440
|
6940 * error.h (panic): Use GCC_ATTR_NORETURN macro, not NORETURN. |
|
6941 * toplev.h (clean_up_and_exit): Likewise. |
|
6942 * utils.h (jump_to_top_level): Likewise. |
|
6943 |
2439
|
6944 * derfaults.h.in, defaults.cc (local_arch_lib_dir): New variable. |
|
6945 * defaults.cc (set_default_local_arch_lib_dir): New function. |
|
6946 (install_defaults): Call it. |
|
6947 (exec_path): Use Vlocal_arch_lib_dir here. |
|
6948 * toplev.cc (octave_config_info): Add localarchlibdir to structure. |
|
6949 |
2436
|
6950 Tue Oct 29 15:54:27 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6951 |
2437
|
6952 * Makefile.in (install-oct): Don't do anything if $(OCT_FILES) is |
|
6953 empty. |
|
6954 |
2436
|
6955 * ov-range.cc (octave_range::index): New Function. |
|
6956 (octave_range::all, octave_range::any, octave_range::is_true): |
|
6957 Make these functions work. |
|
6958 |
|
6959 * ov.cc (octave_value::try_assignment_with_conversion): Remove |
|
6960 left over debugging print statements. |
|
6961 |
|
6962 Mon Oct 28 10:49:03 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6963 |
|
6964 * strftime.c: Add missing #endif for previous change. |
|
6965 |
2435
|
6966 Sun Oct 27 14:06:44 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6967 |
|
6968 * oct-hist.cc (do_history): Rewite option parsing to avoid |
|
6969 (probably bogus) errors from g++ on cygwin32 system. |
|
6970 |
|
6971 * strftime.c: Use autoconf macros TIME_WITH_SYS_TIME and |
|
6972 HAVE_SYS_TIME_H to decide which time.h files to include. |
|
6973 |
|
6974 * oct-stream.h, oct-stream.cc (octave_stream::error, |
|
6975 octave_base_stream::error): Rename errno => err_num. |
|
6976 |
2432
|
6977 Sat Oct 26 10:40:05 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6978 |
2434
|
6979 * oct-hist.cc (do_history): Move declaration of file inside |
|
6980 conditional. |
|
6981 |
2432
|
6982 * defun.h (DEFVAR_INT): Set eternal flag with (svc_fcn != 0) |
|
6983 instead of (sv_fcn ? 1 : 0) |
|
6984 |
2427
|
6985 Fri Oct 25 01:10:51 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6986 |
2431
|
6987 * ov-ch-mat.h (octave_char_matrix::any): Return 0.0 instead of false. |
|
6988 (octave_char_matrix::all): Likewise. |
|
6989 |
|
6990 * input.cc (Fecho): When binding value of echo_executing_commands, |
|
6991 cast ECHO_* to double. |
|
6992 |
|
6993 * sighandlers.cc (octave_child_list::do_remove): Delete unused |
|
6994 variable `enlarge'. |
|
6995 |
|
6996 * pt-const.h (tree_constant::tree_constant (const tree_constant&)): |
|
6997 Don't pass arg to tree_fvc constructor. |
|
6998 |
2427
|
6999 * resource.cc (getrusage): [HAVE_GETRUSAGE && RUSAGE_TIMES_ONLY]: |
|
7000 Only fill in time values. |
|
7001 |
|
7002 Thu Oct 24 20:37:28 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
7003 |
|
7004 * parse.y: Comment out the %expect declaration so byacc can |
|
7005 compile this file. |
|
7006 (if_cmd_list): Add missing semicolon. |
|
7007 Include <cstdlib> for getenv if using byacc. |
|
7008 |
|
7009 * ov.h: Move typedefs outside of octave_value class scope to avoid |
|
7010 problem with cygwin32 beta16 compiler. |
|
7011 |
2421
|
7012 Fri Oct 18 13:44:33 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
7013 |
2423
|
7014 * ov.h (octave_value::index): Undo previous change. |
|
7015 * ov.cc (octave_value constructors): Call maybe_mutate() in most |
|
7016 cases. |
|
7017 |
|
7018 * ov-complex.cc (octave_complex::index): Avoid implicit type |
|
7019 conversion back to scalar type. |
|
7020 * ov-scalar.cc (octave_scalar::index): Likewise. |
|
7021 |
2421
|
7022 * ov.h (octave_value::index): Call maybe_mutate() on retval before |
|
7023 returning it. |
|
7024 |
2418
|
7025 Wed Oct 16 12:00:11 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
7026 |
2420
|
7027 * ov.h (octave_value::struct_elt_val): New optional arg, silent. |
|
7028 * ov-base.h, ov-base.cc, ov-struct.h, ov-struct.cc: Likewise, but |
|
7029 for the derived classes the arg is required. |
|
7030 |
|
7031 * data.cc (Fstruct_contains): Require arguments to be struct and |
|
7032 string, respectively. Call octave_value::struct_elt_val with |
|
7033 silent flag set. |
|
7034 |
2419
|
7035 * pt-mat.cc (tm_row_const::tm_row_const_rep::eval_error, |
|
7036 tm_row_const::tm_row_const_rep::eval_warning): New functions. |
|
7037 (tm_row_const::tm_row_const (const tree_matrix_row&): Use them to |
|
7038 give better error messages. |
|
7039 |
2418
|
7040 * pt-fvc.cc (tree_identifier::eval): Avoid dereferencing null |
|
7041 object_to_eval. |
|
7042 |
2412
|
7043 Tue Oct 15 11:35:51 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
7044 |
|
7045 * op-cs-cm.cc, op-cs-cs.cc, op-cs-m.cc, op-cs-s.cc |
|
7046 (complex_matrix_conv): New functions. |
|
7047 Install preferred assignment conversion and widening ops. |
|
7048 |
|
7049 * op-s-cm.cc, op-s-cs.cc (complex_matrix_conv): New functions. |
|
7050 Install preferred assignment conversion and widening ops. |
|
7051 |
|
7052 * op-s-m.cc, op-s-s.cc (matrix_conv): New functions. |
|
7053 Install preferred assignment conversion and widening ops. |
|
7054 |
|
7055 * ov.cc (octave_value::try_assignment_with_conversion, |
|
7056 octave_value::convert_and_assign, octave_value::try_assignment): |
|
7057 New functions. |
|
7058 (octave_value::assign): Use them to implement twisted logic for |
|
7059 type conversions in assigments. |
|
7060 |
|
7061 * pt-const.h (tree_constant::maybe_mutate): New function. |
|
7062 * ov.h (octave_value::maybe_mutate): New function. |
|
7063 (octave_value::try_narrowing_conversion): New function. |
|
7064 Use just one typedef for widening_op_fcn and numeric_conv_fcn. |
|
7065 Change all uses. |
|
7066 * ov-base.h, ov-complex.h, ov-complex.cc, ov-cx-mat.h, |
|
7067 ov-cx-mat.cc, ov-range.h, ov-range.cc, ov-re-mat.h, ov-re-mat.cc, |
|
7068 Provide derived class versions of try try_narrowing_conversion(). |
|
7069 |
|
7070 * pr-output.cc (octave_print_internal): Don't bother handing off |
|
7071 to scalar/real versions, even when it would seem appropriate. |
|
7072 |
|
7073 * symtab.cc (symbol_def::define (tree_constant *)): Call |
|
7074 maybe_mutate on constants here. |
|
7075 |
2405
|
7076 Mon Oct 14 11:05:24 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
7077 |
2407
|
7078 * pt-fvc.cc (tree_identifier::eval): If retval is undefined and |
|
7079 the object to eval is a constant, print error message. |
2406
|
7080 |
2405
|
7081 * Makefile (distclean): Remove *.oct too. |
|
7082 |
|
7083 * defun-int.h: Include variables.h here. |
|
7084 |
2403
|
7085 Sun Oct 13 10:52:28 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
7086 |
2404
|
7087 * variables.cc (print_symbol_info_line): Never print negative |
|
7088 diminsions. |
|
7089 |
|
7090 * symtab.h (octave_symbol_record_info): Store const_type as string. |
|
7091 (octave_symbol_record_info::init): Delete. Fix constructors. |
|
7092 (octave_symbol_record_info::type_name): Handle const_type as string. |
|
7093 |
2403
|
7094 * octave.cc (maximum_braindamage): Replace "true" with 1.0 and |
|
7095 "false" with 0.0 in calls to bind_builtin_variable(). |
|
7096 Include sun-utils.h here. |
2404
|
7097 (intern_argv): Also bind __argv__. |
2403
|
7098 |
2391
|
7099 Sat Oct 12 13:40:21 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
7100 |
2399
|
7101 * Makefile.in (distclean): Also delete mk-oct-links. |
|
7102 |
|
7103 Fri Oct 11 13:13:13 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
7104 |
2391
|
7105 Changes for Octave's new type system: |
|
7106 |
|
7107 * arith-ops.cc: Delete. |
|
7108 * pt-const.h, pt-const.cc: Massive changes. Most functionality |
|
7109 moved to ov.h, ov.cc, and derived classes. |
|
7110 |
|
7111 * variables.h, variables.cc (octave_variable_reference): New class |
|
7112 for getting references to variables and structure elements used in |
|
7113 assignments or value contexts. |
|
7114 |
|
7115 * symtab.h, symtab.cc (symbol_record::define (const octave_value&), |
|
7116 symbol_record::variable_value, symbol_record::variable_reference): |
|
7117 New functions. |
|
7118 (symbol_record_info::type_name): Rename from type_as_string. |
|
7119 |
|
7120 * pt-fvc-base.h, pt-fvc-base.cc (tree_fvc::increment, |
|
7121 tree_fvc::decrement): New functions to replace |
|
7122 tree_fvc::bump_value. |
|
7123 #if 0 assign and lookup_map_element functions. |
|
7124 |
|
7125 * pt-mvr.cc (tree_multi_assignment_expression::eval): |
|
7126 Generated RHS value is now a tree_constant. |
|
7127 |
|
7128 * pt-exp.h, pt-exp.cc (tree_boolean_expression): New class. |
|
7129 (tree_unary_expression, tree_binary_expression, |
|
7130 tree_boolean_expression): Move codes here from tree_expression. |
|
7131 (tree_simple_assignment_expression): Cope with changes to way of |
|
7132 doing assignments. |
|
7133 |
|
7134 * pt-exp-base.h, pt-exp-base.cc (enum type): Delete codes for |
|
7135 unary and binary ops. |
|
7136 (tree_expression::expression_type): Delete. |
|
7137 (tree_expression::is_logically_true): Hand off to |
|
7138 octave_value::is_true to do real work. |
|
7139 |
|
7140 * pr-output.h, pr-output.cc (any_element_is_inf_or_nan, |
|
7141 all_elements_are_ints): Delete. Call member new functions for |
|
7142 these operations. |
|
7143 (free_format, plus_format, bank_format, hex_format, |
|
7144 compact_format, print_e, print_big_e): Use bool, not int. |
|
7145 (octave_print_internal): Hand off to scalar/real versions when |
|
7146 appropriate. |
|
7147 |
|
7148 * octave.cc (main): Call initialize_types() and install_ops(). |
|
7149 (verbose_usage): Add WWW address to output. |
|
7150 |
|
7151 * parse.y (indirect_ref): Handle by making a tree instead of a |
|
7152 list using new version of tree_indirect_ref class. |
|
7153 |
|
7154 * parse.y (make_boolean_op): New function. Use it instead of |
|
7155 make_binary_op to create trees for && and || ops. |
|
7156 (make_binary_op): Codes come from tree_binary_expression now, |
|
7157 instead of tree_expression. |
|
7158 (make_unary_op): Codes come from tree_unary_expression now, |
|
7159 instead of tree_expression. |
|
7160 (make_boolean_op): Codes come from tree_boolean_expression. |
|
7161 |
|
7162 *parse.y (tree_constant_type): Change type to tree_constant* from |
|
7163 octave_value*, and rename from octave_value_type. Change uses. |
|
7164 |
|
7165 * defun.h (DEFVAR_INT): Pass octave_value not pointer to |
|
7166 octave_value for defn when creating builtin_variable. |
|
7167 |
|
7168 * gripes.h, gripes.cc (gripe_invalid_conversion): Args are |
|
7169 strings, not char*. |
|
7170 (gripe_implicit_conversion, gripe_divide_by_zero): New extern |
|
7171 gripe functions. |
|
7172 |
|
7173 * mkbuiltins: For each file, create a separate static function to |
|
7174 install builtins, then create another single extern function to |
|
7175 call all of them. |
|
7176 |
|
7177 * pt-fcn.cc (tree_function::bind_nargin_and_nargout): |
|
7178 Just pass doubles and let symbol_record::define handle creating |
|
7179 new value. |
|
7180 |
|
7181 * pt-pr-code.cc, pt-pr-code.h (visit_constant): Renamed from |
|
7182 visit_octave_value. |
|
7183 (visit_unary_expression): Use tree_expression::is_prefix_op() |
|
7184 instead of switch on op types. |
|
7185 |
|
7186 * pt-walk.h (visit_constant): Renamed from visit_octave_value. |
|
7187 |
|
7188 * pt-misc.cc (initialize_undefined_elements): Get reference to |
|
7189 tmp, then assign. |
|
7190 * pt-cmd.cc (do_for_loop_once): Likewise, for loop identifier. |
|
7191 |
|
7192 * input.cc (generate_struct_completions, looks_like_struct): Cast |
|
7193 tmp_fvc to tree_constant*, not octave_value*. |
|
7194 (get_user_input): Call print() on retval, not eval(1). |
|
7195 |
|
7196 * help.cc (Ftype): Cast defn to tree_constant*, not octave_value*. |
|
7197 |
|
7198 * balance.cc: Fix docstring. |
|
7199 |
|
7200 * dassl.cc, fsolve.cc, load-save.cc, lsode.cc, npsol.cc, qpsol.cc, |
|
7201 quad.cc: |
|
7202 Include pt-fvc.h. |
|
7203 |
|
7204 * data.cc (Fstruct_contains): call octave_value::struct_elt_val, |
|
7205 not octave_value::lookup_map_element. |
|
7206 |
|
7207 * dirfns.cc (Fcd): Pass directory name as string directly to |
|
7208 bind_builtin_variable instead of creating new octave_value. |
|
7209 |
|
7210 * toplev.cc: Include pt-fvc.h and lo-mappers.h |
|
7211 |
|
7212 * data.cc, error.cc, file-io.cc, load-save.cc, pager.cc, |
|
7213 pt-mat.cc, pt-plot.cc, syscalls.cc, toplev.cc: |
|
7214 Include variables.h. |
|
7215 |
|
7216 * Array-tc.cc, Map-tc.cc, SLList-misc.cc SLList-tc.cc, data.cc, |
|
7217 defaults.cc, dynamic-ld.cc, error.cc, gripes.cc, lex.l, octave.cc, |
|
7218 oct-map.h, oct-map.cc, oct-obj.h, pt-cmd.cc, pt-exp.cc, pt-fcn.cc, |
|
7219 pt-fvc-base.cc, pt-mat.cc, pt-misc.cc, pt-mvr-base.cc, pt-mvr.h, |
|
7220 resource.cc, strfns.cc, sysdep.cc, timefns.cc, toplev.cc: |
|
7221 Include ov.h instead of pt-const.h. |
|
7222 |
|
7223 * xpow.cc (any_element_is_negative): Delete. |
|
7224 (xpow and elem_xpow functions): Check conformance here. |
|
7225 |
|
7226 * xdiv.cc (mx_leftdiv_conform, mx_div_conform): |
|
7227 Now template-based, taking Matrices instead of dimensions as args. |
|
7228 Change all callers. |
|
7229 |
|
7230 * op-cm-cm.cc, op-cm-cm.h, op-cm-cs.cc, op-cm-cs.h, op-cm-m.cc, |
|
7231 op-cm-m.h, op-cm-s.cc, op-cm-s.h, op-cs-cm.cc, op-cs-cm.h, |
|
7232 op-cs-cs.cc, op-cs-cs.h, op-cs-m.cc, op-cs-m.h, op-cs-s.cc, |
|
7233 op-cs-s.h, op-m-cm.cc, op-m-cm.h, op-m-cs.cc, op-m-cs.h, op-m-m.cc, |
|
7234 op-m-m.h, op-m-s.cc, op-m-s.h, op-s-cm.cc, op-s-cm.h, op-s-cs.cc, |
|
7235 op-s-cs.h, op-s-m.cc, op-s-m.h, op-s-s.cc, op-s-s.h, |
|
7236 op-str-str.cc, op-str-str.h, ops.cc, ops.h, ov-base.cc, ov-base.h, |
|
7237 ov-ch-mat.cc, ov-ch-mat.h, ov-colon.cc, ov-colon.h, ov-complex.cc, |
|
7238 ov-complex.h, ov-cx-mat.cc, ov-cx-mat.h, ov-range.cc, ov-range.h, |
|
7239 ov-re-mat.cc, ov-re-mat.h, ov-scalar.cc, ov-scalar.h, ov-str-mat.cc, |
|
7240 ov-str-mat.h, ov-struct.cc, ov-struct.h, ov-typeinfo.cc, |
|
7241 ov-typeinfo.h, ov-va-args.cc, ov-va-args.h, ov.cc, ov.h: |
|
7242 New files for Octave's new type system. |
|
7243 * Makefile.in: Add them to the appropriate lists. |
|
7244 |
|
7245 Sat Sep 14 21:58:33 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
7246 |
|
7247 * mkbuiltins: Use .df instead of .def. |
|
7248 Write one function for each .df file, then call them |
|
7249 all in install_builtin_functions(). |
|
7250 * Makefile.in: Handle .df instead of .def. |
|
7251 |
|
7252 * balance.cc (balance): Fix typo in doc string. |
|
7253 |
|
7254 Wed Aug 28 21:01:49 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
7255 |
|
7256 * octave.cc (verbose_usage): Include WWW address and bug-octave |
|
7257 mailing list address. |
|
7258 |
2354
|
7259 Tue Aug 20 17:41:19 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
7260 |
2358
|
7261 * Makefile.in: Only define pattern rules for making .oct files if |
|
7262 OCTAVE_LITE is true. |
|
7263 Only add pic/ to $(TI_OBJ) if $(SHARED_LIBS) is true. |
|
7264 (stamp-picdir): Only create a pic subdirectory if SHARED_LIBS or |
|
7265 OCTAVE_LITE is true AND CPICFLAG or CXXPICFLAG is not empty. |
|
7266 |
2354
|
7267 * minmax.cc (Fmin, Fmax): Deal with changes to Matrix class |
|
7268 min/max methods. |
|
7269 |
2345
|
7270 Thu Jul 25 01:42:38 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
7271 |
2348
|
7272 * input.cc (generate_possible_completions): Force the names to be |
|
7273 unique. |
|
7274 |
2345
|
7275 * load-save.cc (read_mat_binary_data): Expect to read terminating |
|
7276 NUL character in the variable name. |
|
7277 (save_mat_binary_data): Likewise, save it here. |
|
7278 |
2341
|
7279 Wed Jul 24 05:08:07 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
7280 |
2343
|
7281 * lsode.cc (Flsode): Don't set the return value if an error |
|
7282 occurred during integration. |
2344
|
7283 * dassl.cc (Fdassl): Likewise. |
2343
|
7284 |
2341
|
7285 * file-io.cc (symbols_of_file_io): Redefine values of SEEK_SET, |
|
7286 SEEK_CUR, and SEEK_END for Matlab compatibility. |
|
7287 * oct-stream.cc (seek): Check for compatible values of ORIGIN arg. |
|
7288 Also handle "bof", "cof", and "eof". |
|
7289 |
2338
|
7290 Fri Jul 19 15:24:36 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
7291 |
|
7292 * pt-const.cc: When creating octave_value_reps from ComplexMatrix |
|
7293 values, check to see if all the elements are actually real. |
|
7294 |
2330
|
7295 Tue Jul 16 10:53:42 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
7296 |
2341
|
7297 * input.cc (decode_prompt_string): Swap meanings of \h and \H. |
2330
|
7298 |
|
7299 Mon Jul 15 16:01:51 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
7300 |
|
7301 * toplev.cc (run_command_and_return_output): Renamed from do_system. |
|
7302 (Fsystem): Make `system ("emacs")' work as one would expect. |
|
7303 |
|
7304 Sun Jul 14 17:34:33 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
7305 |
|
7306 * file-io.cc (Ffopen, Ffread, Ffwrite): Update doc strings, |
|
7307 correctly handle default architecture and precision args. |
|
7308 |
|
7309 * load-save.cc (mopt_digit_to_float_format): Rename from |
|
7310 get_floating_point_format. |
|
7311 (float_format_to_mopt_digit): New function. |
|
7312 |
|
7313 * oct-stream.cc (octave_base_stream::read, octave_base_stream::write): |
|
7314 Simplify by calling Matrix::read and Matrix::write to do real work |
|
7315 of reading, writing, and format conversion. |
|
7316 |
|
7317 * oct-stream.h (octave_base_stream): Move data_type enum to |
|
7318 liboctave/data-conv.h. Use float_format from |
|
7319 liboctave/mach-info.h instead of arch_type enum. |
|
7320 |
|
7321 * sysdep.h, sysdep.cc (octave_words_big_endian, ten_little_endians): |
|
7322 Delete. Now part of oct_mach_info class in liboctave. |
|
7323 |
|
7324 Tue Jul 9 11:18:59 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
7325 |
|
7326 * arith-ops.cc, balance.cc, dassl.cc, data.cc, filter.cc, find.cc, |
|
7327 fsolve.cc, load-save.cc, log.cc, lsode.cc, minmax.cc, npsol.cc, |
|
7328 oct-obj.cc, oct-stream.cc, pr-output.cc, pt-cmd.cc, pt-const.cc, |
|
7329 pt-fvc.cc, pt-plot.cc, quad.cc, rand.cc, sighandlers.cc, sort.cc, |
|
7330 syscalls.cc, unwind-prot.cc, xdiv.cc, xpow.cc: |
|
7331 When indexing arrays, use operator() instead of elem() so that |
|
7332 bounds checking can be done consistently. |
|
7333 |
|
7334 Mon Jun 24 02:13:27 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
7335 |
|
7336 * Makefile.in (install-oct): Use INSTALL_PROGRAM, instead of |
|
7337 INSTALL_DATA for installing shared libraries. |
|
7338 |
|
7339 * lex.l (grab_help_text): Ignore all initial comment characters, |
|
7340 not just the first. |
|
7341 * variables.cc (gobble_leading_white_space): Likewise. |
|
7342 |
|
7343 Sat Jun 22 22:43:45 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
7344 |
|
7345 * input.h, input.cc (octave_completion_matches_called): New varaible. |
|
7346 (Fcompletion_matches): Set it to true on a successful call. |
|
7347 * toplev.cc (main_loop): If octave_completion_matches_called is |
|
7348 true, don't increment current_command_number. |
|
7349 |
|
7350 Thu Jun 13 03:52:19 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
7351 |
|
7352 * variables.cc (is_mapper_function_name, |
|
7353 is_builtin_function_name): New functions. |
|
7354 (Fdocument): Use them. |
|
7355 Define as regular function, not a text style function. |
|
7356 |
|
7357 Thu Jun 6 00:09:25 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
7358 |
|
7359 * pt-plot.cc: Handle new built-in variable `gnuplot_has_frames'. |
|
7360 |
|
7361 Wed Jun 5 14:45:04 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
7362 |
|
7363 * input.cc (decode_prompt_string): \h now means the whole host |
|
7364 name and \H is the host name up to the first `.'. |
|
7365 |
|
7366 Thu May 30 23:41:51 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
7367 |
|
7368 * fn-cache.cc (octave_fcn_file_name_cache::do_list): Always |
|
7369 recompute the lists of function files instead of trying to cache |
|
7370 them. |
|
7371 |
|
7372 Tue May 28 12:05:24 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
7373 |
|
7374 * utils.cc (warn_old_style_preference): New function. |
|
7375 (check_preference): Use it. |
|
7376 |
|
7377 * fn-cache.h: Include <ctime> here. |
|
7378 |
|
7379 Fri May 24 00:57:14 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
7380 |
|
7381 * input.cc (completion_matches): Don't return empty string_vectors. |
|
7382 |
|
7383 * octave.cc (long_opts): Add braindead. |
|
7384 |
|
7385 Thu May 23 01:49:33 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
7386 |
|
7387 * input.cc (gnu_readline): New optional arg, force_readline. |
|
7388 (get_user_input): Use it. |
|
7389 |
|
7390 * pt-const.cc (OCT_VAL_REP::assign): If converting the rhs to a |
|
7391 numeric value, convert a copy, not the actual object. |
|
7392 (OCT_VAL_REP::do_index): Prevent s([]) from resulting in a string |
|
7393 with zero rows. |
|
7394 |
|
7395 * mappers.cc: Handle toascii here. |
|
7396 * strfns.cc: Not here. |
|
7397 |
|
7398 * mappers.cc: Handle tolower and toupper here. |
|
7399 * mappers.h: Rename can_return_complex_for_real to flag and |
|
7400 overload meaning for ch_mapper. |
|
7401 * pt-fvc.cc (apply_mapper_fcn): Handle overloaded meaning. |
|
7402 |
|
7403 * syscalls.cc (stat): Return 3 values instead of just 1. |
|
7404 (lstat): Likewise. |
|
7405 |
|
7406 Wed May 22 02:34:20 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
7407 |
|
7408 * pt-const.cc (OCT_VAL_REP::make_numeric): For string to number |
|
7409 conversions, correctly set type tag before calling force_numeric. |
|
7410 (do_binary_op): Force string to number conversion if both args are |
|
7411 strings and we are doing some sort of comparison operation. |
|
7412 |
|
7413 * Makefile.in (stamp-tinst, stamp-interp): Use SH_TERMLIBS and |
|
7414 SH_LIBS instead of TERMLIBS and LIBS. |
|
7415 |
|
7416 * pt-const.cc (do_unary_op): Add special case to handle |
|
7417 transposing strings. |
|
7418 |
|
7419 * pt-mat.cc (Vstring_fill_char): New variable. |
|
7420 (symbols_of_pt_mat): DEFVAR it. |
|
7421 |
|
7422 * input.cc (generate_struct_completions, |
|
7423 generate_possible_completions): Return string_vector, not char **. |
|
7424 Change all callers. |
|
7425 |
|
7426 * pt-const.cc (lookup_map_element): Use substr() correctly. |
|
7427 |
|
7428 Tue May 21 21:37:17 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
7429 |
|
7430 * oct.h: New file. |
|
7431 * Makefile.in (INCLUDES): Add it to the list. |
|
7432 |
|
7433 * octave.cc: New args --no-site-file and --no-init-file. Delete |
|
7434 --ignore-init-file. The flag --norc (-f) implies both |
|
7435 --no-site-file and --no-init-file. |
|
7436 |
|
7437 Fri May 17 01:54:51 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
7438 |
|
7439 * input.cc (Fcompletion_matches): New function. |
|
7440 |
|
7441 * utils.cc (get_fcn_file_names): Delete. |
|
7442 * help.cc (simple_help): Use new file name cache instead of |
|
7443 calling get_fcn_file_names. |
|
7444 * variables.cc (make_name_list): Likewise. |
|
7445 |
|
7446 * fn-cache.h, fn-cache.cc, Map-fnc.cc: New files. |
|
7447 * Makefile.in: Add them to the lists. |
|
7448 |
|
7449 * Makefile.in (uninstall): Install in octincludedir, not includedir. |
|
7450 |
|
7451 * pt-plot.h: Include <csignal> here. |
|
7452 |
|
7453 Thu May 16 10:52:51 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
7454 |
|
7455 * oct-stream.cc (octave_stream::oscanf, octave_base_stream::oscanf, |
|
7456 octave_base_stream::do_oscanf): New functions for backward |
|
7457 compatibility with older versions of Octave. |
|
7458 (scanf_format_elt, scanf_format_list): Keep track of width specifier. |
|
7459 * file-io.cc (Fscanf): New function. |
|
7460 (Fscanf, Ffscanf, Fsscanf): Handle compatibility arg. |
|
7461 |
|
7462 Wed May 15 01:00:12 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
7463 |
|
7464 * oct-stream.cc (do_scanf): If doing '%c' conversion, unset |
|
7465 ios::skipws on input stream. |
|
7466 |
|
7467 * sighandlers.h, sighandlers.cc (octave_child, octave_child_list): |
|
7468 New classes for keeping track of the child processes we create. |
|
7469 (sigchld_handler): Check in octave_child_list to see if there is |
|
7470 anything we can do for the child that died. |
|
7471 * pager.cc: Register child pager process. |
|
7472 * pt-plot.cc: Likewise, for the plotter. |
|
7473 * Array-oc.cc: New file |
|
7474 * Makefile.in (TI_SRC): Add it to the list. |
|
7475 |
|
7476 * pager.cc (do_sync): Don't check error_state. |
|
7477 (flushing_output_to_pager): New static variable. |
|
7478 (flush_octave_stdout): Use it to avoid doing anything if already |
|
7479 flushing output. |
|
7480 |
|
7481 * sighandlers.cc (sigchld_handler): Call warning instead of |
|
7482 writing directly to cerr. |
|
7483 (sigpipe_handler): Call warning instead of message. |
|
7484 |
|
7485 * octave.cc (main): Call install_signal_handlers, |
|
7486 initialize_file_io, initialize_symbol_tables, and install_builtins |
|
7487 before parsing command line options. |
|
7488 |
|
7489 * user-prefs.h, user-prefs.cc: Delete. |
|
7490 |
|
7491 * utils.cc (check_preference): Move here. |
|
7492 * user-prefs.cc: From here. |
|
7493 |
|
7494 * defaults.cc: New file. Move initialization stuff from |
|
7495 variables.cc. Move DEFVARS for EDITOR, EXEC_PATH, LOADPATH, |
|
7496 IMAGEPATH, and OCTAVE_VERSION here. |
|
7497 |
|
7498 * user-prefs.h, user-prefs.cc: Delete all stuff related to |
|
7499 INFO_FILE and INFO_PROGRAM. |
|
7500 * help.cc: Move all of that here. |
|
7501 (symbols_of_help): Add DEFVARS for INFO_FILE and INFO_PROGRAM. |
|
7502 |
|
7503 Tue May 14 00:23:06 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
7504 |
|
7505 * pager.cc (do_sync): Be more defensive about sending stuff to the |
|
7506 external pager. |
|
7507 * sighandlers.cc (sigchld_handler): For now, only wait for |
|
7508 octave_pager_pid. Don't call error(). Do set octave_pager_pid to |
|
7509 -1 if the pager process no longer exists. |
|
7510 |
|
7511 * user-prefs.h, user-prefs.cc: Delete all stuff related to |
|
7512 PWD. |
|
7513 * dirfns.cc: Move all of that here. |
|
7514 (symbols_of_dirfns): New function. |
|
7515 * variables.cc (install_builtin_variables): Call it. |
|
7516 |
|
7517 * user-prefs.h, user-prefs.cc: Delete all stuff related to |
|
7518 default_save_format and save_precision. |
|
7519 * load-save.cc: Move all of that here. |
|
7520 (symbols_of_load_save): New function. |
|
7521 * variables.cc (install_builtin_variables): Call it. |
|
7522 |
|
7523 * user-prefs.h, user-prefs.cc: Delete all stuff related to |
|
7524 warn_divide_by_zero. |
|
7525 * arith-ops.cc: Move all of that here. |
|
7526 (symbols_of_arith_ops): New function. |
|
7527 * variables.cc (install_builtin_variables): Call it. |
|
7528 |
|
7529 * mappers.cc: Add wrappers for ctype is* functions so that they |
|
7530 will work on systems that only define them as macros. |
|
7531 |
|
7532 Mon May 13 00:27:08 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
7533 |
|
7534 * user-prefs.h, user-prefs.cc: Delete all stuff related to |
|
7535 suppress_verbose_help_message. |
|
7536 * help.cc: Move all of that here. |
|
7537 (symbols_of_help): New function. |
|
7538 * variables.cc (install_builtin_variables): Call it. |
|
7539 |
|
7540 * user-prefs.h, user-prefs.cc: Delete all stuff related to |
|
7541 treat_neg_dim_as_zero. |
|
7542 * pt-const.cc: Move all of that here. |
|
7543 |
|
7544 * pager.cc (octave_pager_stream::do_sync): Don't return early if |
|
7545 not interactive. |
|
7546 |
|
7547 * data.h: New file. |
|
7548 * Makefile.in (INCLUDES): Add it to the list. |
|
7549 * data.cc (symbols_of_data): New function. Move definition of I, |
|
7550 Inf, J, NaN, e, eps, i, inf, j, nan, pi, realmin, and realmax here. |
|
7551 * variables.cc: From here. |
|
7552 (install_builtin_variables): Call symbols_of_data. |
|
7553 |
|
7554 * file-io.cc (symbols_of_file_io): New function. Move definition |
|
7555 of SEEK_CUR, SEEK_END, SEEK_SET, stdin, stdout, stderr here. |
|
7556 * variables.cc: From here. |
|
7557 (install_builtin_variables): Call symbols_of_file_io. |
|
7558 |
|
7559 * user-prefs.h, user-prefs.cc: Delete all stuff related to |
|
7560 do_fortran_indexing, implicit_str_to_num_ok, |
|
7561 ok_to_lose_imaginary_part, prefer_column_vectors, |
|
7562 prefer_zero_one_indexing, print_answer_id_name, |
|
7563 propagate_empty_matrices, resize_on_range_error, and |
|
7564 struct_levels_to_print. |
|
7565 * pt-const.cc: Move all of that here. |
|
7566 (symbols_of_pt_const): New function. |
|
7567 * variables.cc (install_builtin_variables): Call it. |
|
7568 * pt-fvc.cc (tree_identifier::assign): Use Vresize_on_range_error |
|
7569 instead of user_pref.resize_on_range_error here. |
|
7570 * load-save.cc (save_mat_binary_data): Use Vimplicit_str_to_num_ok |
|
7571 instead of user_pref.implicit_str_to_num_ok here. |
|
7572 * utils.cc (empty_arg): Use Vpropagate_empty_matrices instead of |
|
7573 user_pref.propagate_empty_matrices here. |
|
7574 * pt-exp-base.cc (tree_expression::is_logically_true): Likewise.. |
|
7575 |
|
7576 * pt-fcn.cc (symbols_of_pt_fcn): Also move DEFVAR for |
|
7577 default_return_value here. |
|
7578 |
|
7579 * user-prefs.h, user-prefs.cc: Delete all stuff related to |
|
7580 ps1, ps2, ps4, and completion_append_char. |
|
7581 * input.cc: Move all of that here. |
|
7582 (symbols_of_input): New function. |
|
7583 * variables.cc (install_builtin_variables): Call it. |
|
7584 * pt-pr-code.cc (indent): Use Vps4 instead of user_pref.ps4 here. |
|
7585 * help.cc (Ftype): Also here. |
|
7586 |
|
7587 * user-prefs.h, user-prefs.cc: Delete all stuff related to |
|
7588 automatic_replot, gnuplot_binary, and gnuplot_has_multiplot. |
|
7589 * pt-plot.cc: Move all of that here. |
|
7590 (symbols_of_pt_plot): New function. |
|
7591 * variables.cc (install_builtin_variables): Call it. |
|
7592 |
|
7593 * user-prefs.h, user-prefs.cc: Delete all stuff related to |
|
7594 beep_on_error. |
|
7595 * error.cc: Move all of that here. |
|
7596 (symbols_of_error): New function. |
|
7597 * variables.cc (install_builtin_variables): Call it. |
|
7598 |
|
7599 * user-prefs.h, user-prefs.cc: Delete all stuff related to |
|
7600 empty_list_elements_ok. |
|
7601 * pt-mat.cc: Move all of that here. |
|
7602 (symbols_of_pt_mat): New function. |
|
7603 * variables.cc (install_builtin_variables): Call it. |
|
7604 |
|
7605 * user-prefs.h, user-prefs.cc: Delete all stuff related to |
|
7606 define_all_return_values, return_last_computed_value, and |
|
7607 silent_functions. |
|
7608 * pt-fcn.cc: Move all of that here. |
|
7609 (symbols_of_pt_fcn): New function. |
|
7610 * variables.cc (install_builtin_variables): Call it. |
|
7611 |
|
7612 * user-prefs.h, user-prefs.cc: Delete all stuff related to |
|
7613 whitespace_in_literal_matrix. |
|
7614 * lex.l: Move all of that here. |
|
7615 (symbols_of_lex): New function. |
|
7616 * variables.cc (install_builtin_variables): Call it. |
|
7617 |
|
7618 * user-prefs.h, user-prefs.cc: Delete all stuff related to |
|
7619 warn_assign_as_truth_value, warn_comma_in_global_decl, |
|
7620 warn_function_name_clash, and warn_missing_semicolon. |
|
7621 * parse.y: Move all of that here. |
|
7622 (symbols_of_parse): New function. |
|
7623 * variables.cc (install_builtin_variables): Call it. |
|
7624 |
|
7625 * user-prefs.h, user-prefs.cc: Delete all stuff related to |
|
7626 output_precision, output_max_field_width, print_empty_dimensions, |
|
7627 and split_long_rows. |
|
7628 * pr-output.cc: Move all of that here. |
|
7629 (symbols_of_pr_output): New function. |
|
7630 * variables.cc (install_builtin_variables): Call it. |
|
7631 |
|
7632 * user-prefs.h, user-prefs.cc: Delete all stuff related to |
|
7633 page_screen_output, page_output_immediately, and pager_binary. |
|
7634 * pager.cc: Move all of that here. |
|
7635 |
|
7636 * user-prefs.h (check_preference): Provide declaration. |
|
7637 * user-prefs.cc (check_preference): Make external. |
|
7638 |
|
7639 * toplev.cc (Foctave_config_info): New function. |
|
7640 |
|
7641 * oct-conf.h.in: New file |
|
7642 * Makefile.in (oct-conf.h): New target. |
|
7643 Add it to the appropriate lists. |
|
7644 |
|
7645 * sighandlers.cc (sigchld_handler): Don't complain about wait |
|
7646 returning a negative value. |
|
7647 |
|
7648 * file-io.cc (Fsscanf, Fsprintf): Pass true for second arg of |
|
7649 octave_stream constructor. |
|
7650 |
|
7651 * oct-stream.h (octave_stream): New field, preserve. |
|
7652 (octave_stream::~octave_stream): If preserve, don't delete rep. |
|
7653 |
|
7654 * pager.cc (symbols_of_pager): Set default for |
|
7655 page_output_immediately to 0. |
|
7656 |
|
7657 * toplev.cc (do_system): Correctly handle return_output. |
|
7658 Append ends to output_buf before calling str(). |
|
7659 |
|
7660 * variables.cc: If M_PI and M_E are available, use them. |
|
7661 |
|
7662 * mk-oct-links.in (links_dir): If old link exists, delete it first. |
|
7663 |
|
7664 Sun May 12 01:46:07 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
7665 |
|
7666 * Makefile.in (DISTFILES): List defaults.h.in and oct-gperf.h here. |
|
7667 (INCLUDES): Not here. |
|
7668 (install-inc): New target. |
|
7669 (uninstall): Also delete libraries and include files. |
|
7670 (install-inc): If linkdir is a directory, leave it alone. |
|
7671 (TERMLIBS, LIBPLPLOT, LIBDLFCN): Don't substitute here (now in |
|
7672 Makeconf). |
|
7673 |
|
7674 * oct-stream.cc (octave_base_stream::do_read): Provide initial |
|
7675 value for tmp var. |
|
7676 |
|
7677 * pt-walk.h, pt-pr-code.h, pt-pr-code.cc: New tree-walking classes. |
|
7678 * Makefile.in: Add them to the appropriate lists. |
|
7679 * pt-fvc-base.h, pt-exp-base.cc, pt-fvc-base.cc, pt-mvr-base.cc, |
|
7680 pt-base.cc, pt-mvr.cc, pt-mat.h, pt-mat.cc, pt-fvc.cc, |
|
7681 pt-const.cc, pt-cmd.cc, pt-const.h, pt-misc.cc, pt-plot.cc, |
|
7682 pt-fcn.cc, pt-plot.h, pt-mvr.h, pt-mvr-base.h, pt-misc.h, |
|
7683 pt-fcn.h, pt-exp.h, pt-exp.cc, pt-exp-base.h, pt-fvc.h, pt-cmd.h, |
|
7684 pt-base.h: |
|
7685 Replace print_code stuff with accept() functions. |
|
7686 Add member access functions where necessary. |
|
7687 * help.cc (Ftype): Update to use new method of walking trees to |
|
7688 print text representation of user-defined functions. |
|
7689 |
|
7690 * file-io.cc (Ffscanf): Update doc string. |
|
7691 (Fsscanf): Likewise. |
|
7692 |
|
7693 * oct-stream.cc (octave_base_stream::do_read): Correctly set max_size. |
|
7694 Pad mval with zeros on final resize. |
|
7695 (octave_base_stream::do_scanf): Likewise. |
|
7696 (do_scanf_conv): Correctly resize mval. |
|
7697 |
|
7698 Sat May 11 05:14:09 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
7699 |
|
7700 * pager.cc (octave_pager_buf::sync): Correctly set bypass_pager. |
|
7701 |
|
7702 * lex.l (<MATRIX>{SNLCMT}*\]{S}*): Match SNLCMT, not just SNL. |
|
7703 |
|
7704 Fri May 3 11:05:30 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
7705 |
|
7706 * pt-const.cc (OCT_VAL_REP::set_index): Complain if type can't be |
|
7707 indexed. |
|
7708 |
|
7709 * input.cc (get_user_input): Don't increment input line number if |
|
7710 input is coming from eval string. |
|
7711 |
|
7712 * user-prefs.cc: Allow empty strings for prompts. |
|
7713 |
|
7714 Thu May 2 10:50:29 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
7715 |
|
7716 * pt-mvr.h (class tree_oct_obj): Declare values data member const. |
|
7717 |
|
7718 Sun Apr 28 03:16:52 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
7719 |
|
7720 * user-prefs.h (user_preferences): New field, |
|
7721 `page_output_immediately'. |
|
7722 * user-prefs.cc (init_user_prefs): Initialize it. |
|
7723 (page_output_immediately): New function. |
|
7724 * pager.cc (syms_of_pager): Add DEFVAR. |
|
7725 (really_flush_to_pager): New file-scope variable. |
|
7726 (flush_octave_stdout): Set and restore it. |
|
7727 (octave_pager_buf::sync): Check it, user_pref.page_screen_output, |
|
7728 and user_pref.page_output_immediately to decide when to really |
|
7729 flush output. |
|
7730 (more_than_a_screenful): New function. If paging but not |
|
7731 immediately, then check this too. |
|
7732 |
|
7733 * pager.cc (default_pager): Move here from variables.cc. If pager |
|
7734 is less and LESS is not in the environment, append useful flags. |
|
7735 (symbols_of_pager): New function. |
|
7736 * variables.cc (install_builtin_variables): Call it. |
|
7737 Delete pager-related DEFVARs. |
|
7738 |
|
7739 * syswait.h (WIFSIGNALLED): Define if sys/wait.h doesn't. |
|
7740 |
|
7741 * sighandlers.cc: Handle SIGCHLD. |
|
7742 |
|
7743 * pager.cc, pager.h: Rewrite. |
|
7744 * pt-mvr.cc, pt-misc.cc, pt-fcn.cc, pt-const.cc, oct-hist.cc, |
|
7745 file-io.cc, help.cc, variables.cc, qpsol.cc, dassl.cc, quad.cc, |
|
7746 npsol.cc, lsode.cc, fsolve.cc, load-save.cc, dirfns.cc, octave.cc, |
|
7747 toplev.cc, error.cc, input.cc: |
|
7748 Write to octave_stdout and octave_diary instead of calling |
|
7749 maybe_page_output() or maybe_write_to_diary_file(). |
|
7750 |
|
7751 * oct-procbuf.h, oct-procbuf.cc: New files. |
|
7752 * procstream.h (class procstreambase): Use octave_procbuf instead |
|
7753 of procbuf from libg++, so we can get pids of subprocesses. |
|
7754 |
|
7755 Fri Apr 26 01:21:29 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
7756 |
|
7757 * pt-const.cc (OCT_VAL_REP::do_index): Call maybe_mutate() before |
|
7758 returning. |
|
7759 |
|
7760 * mappers.h (struct Mapper_fcn): Delete. |
|
7761 (struct builtin_mapper_function): New field ch_mapper. |
|
7762 * pt-fvc.h (tree_builtin): Convert type of mapper_fcn from |
|
7763 Mapper_fcn to builtin_mapper_function. |
|
7764 * variables.cc (install_builtin_mapper): Likewise, for arg. |
|
7765 Simplify, since we don't have to do the copying ourselves now. |
|
7766 * pt-fvc.cc (apply_mapper_function): Handle ch_mapper case. |
|
7767 * defun.h (DEFUN_MAPPER): Likewise. |
|
7768 * mappers.cc (install_builtin_mappers): Likewise. |
|
7769 Add ctype is* functions here. |
|
7770 |
|
7771 Thu Apr 25 00:57:06 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
7772 |
|
7773 * arith-ops.h, defun-int.h, defun.h, dynamic-ld.h, gripes.h, |
|
7774 load-save.h, oct-map.h, oct-obj.h, oct-stream.h, pt-cmd.h, |
|
7775 pt-const.h, pt-exp-base.h, pt-exp.h, pt-fcn.h, pt-fvc-base.h, |
|
7776 pt-fvc.h, pt-mat.h, pt-misc.h, pt-mvr-base.h, pt-mvr.h, pt-plot.h, |
|
7777 symtab.h, toplev.h, utils.h, variables.h, xpow.h, Array-tc.cc, |
|
7778 Map-i.cc, Map-tc.cc, SLList-tc.cc, arith-ops.cc, balance.cc, |
|
7779 bogus.cc, chol.cc, colloc.cc, dassl.cc, data.cc, det.cc, |
|
7780 dirfns.cc, eig.cc, error.cc, expm.cc, fft.cc, fft2.cc, file-io.cc, |
|
7781 filter.cc, find.cc, fsolve.cc, fsqp.cc, givens.cc, gripes.cc, |
|
7782 help.cc, hess.cc, ifft.cc, ifft2.cc, input.cc, inv.cc, |
|
7783 load-save.cc, log.cc, lpsolve.cc, lsode.cc, lu.cc, minmax.cc, |
|
7784 npsol.cc, oct-hist.cc, oct-obj.cc, oct-stream.cc, pager.cc, |
|
7785 pinv.cc, pr-output.cc, pt-cmd.cc, pt-const.cc, pt-exp-base.cc, |
|
7786 pt-exp.cc, pt-fcn.cc, pt-fvc-base.cc, pt-fvc.cc, pt-mat.cc, |
|
7787 pt-misc.cc, pt-mvr-base.cc, pt-mvr.cc, pt-plot.cc, qpsol.cc, |
|
7788 qr.cc, quad.cc, qzval.cc, rand.cc, resource.cc, schur.cc, sort.cc, |
|
7789 strfns.cc, svd.cc, syl.cc, symtab.cc, syscalls.cc, sysdep.cc, |
|
7790 timefns.cc, toplev.cc, utils.cc, variables.cc, xpow.cc, parse.y: |
|
7791 Rename tree_constant -> octave_value. |
|
7792 Rename Octave_object -> octave_value_list. |
|
7793 |
|
7794 Wed Apr 24 22:15:34 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
7795 |
|
7796 * toplev.cc (Fsystem): Merge functionality of async_system and |
|
7797 sync_system. |
|
7798 |
|
7799 * oct-fstrm.h, oct-iostrm.h, oct-prcstrm.h, oct-stdstrm.h, |
|
7800 oct-stream.h, oct-strstrm.h, oct-fstrm.cc, oct-iostrm.cc, |
|
7801 oct-prcstrm.cc, oct-stdstrm.cc, oct-stream.cc, oct-strstrm.cc, |
|
7802 Array-os.cc: New files. |
|
7803 * Makefile.in: Add them to the appropriate lists. |
|
7804 * file-io.cc: Rewrite to use new stream classes. |
|
7805 |
|
7806 Tue Apr 23 18:59:25 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
7807 |
|
7808 * gripes.cc (gripe_not_supported): New function. |
|
7809 |
|
7810 * toplev.cc (do_octave_atexit, Fatexit): New functions. |
|
7811 (octave_atexit_functions): New file-scope variable. |
|
7812 * octave.cc (main): Register do_octave_atexit with atexit. |
|
7813 |
|
7814 * variables.cc (install_builtin_variables): Call |
|
7815 symbols_of_syscalls here. |
|
7816 |
|
7817 * syscalls.h, syscalls.cc: New files. |
|
7818 |
|
7819 Mon Apr 22 21:14:01 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
7820 |
|
7821 * syscalls.cc: New file. |
|
7822 (Flstat, Fmkfifo, Fstat, Funlink, Fwait, Fwaitpid): Move here. |
|
7823 * file-io.cc: From here. |
|
7824 * Makefile.in (SOURCES): Add syscalls.cc to the list. |
|
7825 |
|
7826 Wed Apr 17 18:34:10 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
7827 |
|
7828 * file-info.h, file-info.cc: Delete files. |
|
7829 * Makefile.in: Remove from lists. |
|
7830 |
|
7831 * toplev.cc (Fquit): Accept exit status argument. |
|
7832 (Fflops): Delete (now a function file). |
|
7833 |
|
7834 Thu Apr 11 16:20:20 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
7835 |
|
7836 * lex.l: Recognize `.'. |
|
7837 Update current_input_column even for unrecognized characters. |
|
7838 Return LEXICAL_ERROR for unrecognized characters. |
|
7839 |
|
7840 Mon Apr 8 19:59:01 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
7841 |
|
7842 * variables.cc (install_builtin_variables): Split into several |
|
7843 functions to make compiling with g++ go faster and consume less |
|
7844 memory. |
|
7845 |
|
7846 Sun Apr 7 16:25:35 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
7847 |
|
7848 * load-save.cc (Fsave): Print usage if i == argc. |
|
7849 (Fload): Likewise. |
|
7850 |
|
7851 Sat Apr 6 21:26:49 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
7852 |
|
7853 * Makefile.in (clean): Also delete pic/*.o |
|
7854 (maintainer-clean, distclean): Also remove stamp-picdir, |
|
7855 stamp-tinst, stamp-interp, and pic directory. |
|
7856 (stamp-prereq): New target. |
|
7857 |
|
7858 Wed Apr 3 11:19:30 1996 Rick Niles <niles@axp745.gsfc.nasa.gov> |
|
7859 |
|
7860 * resource.cc: Don't make including sys/resource.h and sys/times.h |
|
7861 mutually exclusive. |
|
7862 |
|
7863 Fri Mar 29 13:43:37 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
7864 |
|
7865 * Makefile.in (distclean): Delete so_locations, which is created |
|
7866 on DEC Alpha systems. |
|
7867 |
|
7868 Thu Mar 28 02:53:48 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
7869 |
|
7870 * utils.h (undo_string_escape): Provide extern declaration here. |
|
7871 |
|
7872 * lex.l (NL): Allow \r\n as new line character. |
|
7873 (.): Complain if invalid character is found on input |
|
7874 |
|
7875 Fri Mar 22 03:47:52 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
7876 |
|
7877 * resource.cc (getrusage): If getrusage is missing, try using |
|
7878 times to at least fill in the cpu time values. If neither one is |
|
7879 available, return 0 for cpu times instead of NaN. |
|
7880 |
|
7881 * sighandlers.cc (octave_signal_mask): New file-scope variable. |
|
7882 (octave_save_signal_mask, octave_restore_signal_mask): New functions. |
|
7883 * toplev.cc (main_loop): Use them. |
|
7884 |
|
7885 Wed Mar 20 01:21:28 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
7886 |
|
7887 * utils.cc (get_fcn_file_names (const string&, int)): Resize |
|
7888 retval to value of k, not i. |
|
7889 (get_fcn_file_names (int)): In loop for copying names to retval, |
|
7890 don't increment j twice. |
|
7891 |
|
7892 Mon Mar 18 22:27:19 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
7893 |
|
7894 * Makefile.in ($(MAKEDEPS)): Depend on oct-gperf.h. |
|
7895 |
|
7896 Fri Mar 1 18:15:52 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
7897 |
|
7898 * fsolve.cc (fsolve_options): Delete unused argument nargout. |
|
7899 |
|
7900 * filter.cc: Use MArray instead of Array so that automatic |
|
7901 conversions will work again. |
|
7902 |
|
7903 Tue Feb 27 04:49:51 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
7904 |
|
7905 * variables.cc (looks_like_octave_copyright): Make the strings |
|
7906 that we are trying to match both have length 29. |
|
7907 |
|
7908 * Makefile.in (install-bin): Use $(INSTALL_PROGRAM), not $(INSTALL). |
|
7909 |
|
7910 * load-save.cc (read_mat_binary_data): Make sure name is |
|
7911 NUL terminated. |
|
7912 |
|
7913 Mon Feb 26 18:18:45 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
7914 |
|
7915 * variables.cc (whos): Make argv from tmp_args, not args. |
|
7916 |
|
7917 * defun.h (DEFCONSTX): Don't stringify name. |
|
7918 |
|
7919 Sat Feb 24 01:12:59 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
7920 |
|
7921 * Makefile.in (install-oct): Make mk-oct-links executable. |
|
7922 * mk-oct-links.in (links_dir): Update to match new format of |
|
7923 DEFUN_DLD_BUILTIN macro. Use LN_S, not just LN. |
|
7924 (links_dir): |
|
7925 |
|
7926 * pr-output.cc (octave_print_internal): New arg, extra_indent, for |
|
7927 versions of this function that take matrices and ranges. |
|
7928 * pt-const.cc (TC_REP::print (ostream&)): Fix printing of structures. |
|
7929 Pass struct_indent to octave_print_internal as appropriate. |
|
7930 (print_with_name (ostream&, const string&, bool)): Handle spacing |
|
7931 around `=' differently for structures. |
|
7932 |
|
7933 Fri Feb 23 04:51:04 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
7934 |
|
7935 * token.cc (token (double, const string&, int, int)): Store orig_text. |
|
7936 |
|
7937 Tue Feb 20 20:36:01 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
7938 |
|
7939 * variables.cc (Fclear): Fix off-by-one error. |
|
7940 |
|
7941 Sat Feb 17 16:54:02 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
7942 |
|
7943 * oct-hist.cc (default_history_file): Append "/.octave_hist" to |
|
7944 return value, not to home_directory. |
|
7945 |
|
7946 Fri Feb 16 18:10:46 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
7947 |
|
7948 * utils.cc: (NINT, D_NINT): Move to liboctave. |
|
7949 |
|
7950 * sysdep.cc (octave_ieee_init): Move to liboctave. |
|
7951 |
|
7952 * procstream.h, procstream.cc: Rewrite. |
|
7953 |
|
7954 * pager.cc (cleanup_oprocstream): New static function. |
|
7955 * toplev.cc (cleanup_iprocstream): Likewise. |
|
7956 * dirfns.cc (cleanup_iprocstream): Likewise. |
|
7957 |
|
7958 * unwind-prot.cc (matrix_cleanup, complex_matrix_cleanup): Delete. |
|
7959 |
|
7960 Thu Feb 15 22:03:28 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
7961 |
|
7962 * oct-obj.cc, oct-obj.h: Move most code to the header. |
|
7963 |
|
7964 * oct-obj.cc (make_argv, all_strings): New member functions. |
|
7965 * utils.cc: Moved from here. |
|
7966 |
|
7967 * load-save.cc: Move byte swapping stuff to liboctave. |
|
7968 Move float format conversion stuff to liboctave. |
|
7969 (all_parts_int, too_large_for_float): Move to liboctave. |
|
7970 |
|
7971 * symtab.cc (valid_identifier): Move here. |
|
7972 * load-save.cc: From here. |
|
7973 |
|
7974 * sysdep.cc: Move floating-point format stuff to liboctave. |
|
7975 * pr-output.cc: Include float-fmt.h here. |
|
7976 |
|
7977 Wed Feb 14 01:49:20 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
7978 |
|
7979 * defun.h, defun-dld.h, defun-int.h: Simplify interface for DEFUN, |
|
7980 DEFUN_DLD, DEFVAR, and DEFCONST macros. Change all uses. |
|
7981 |
|
7982 * qzval.cc: Move guts to liboctave. |
|
7983 |
|
7984 Tue Feb 13 10:28:27 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
7985 |
|
7986 * variables.cc (parse_fcn_file): Also avoid saving history if |
|
7987 input is from a script file. |
|
7988 |
|
7989 * help.cc (Ftype): Call unwind_protect_str for user_pref.ps4. |
|
7990 |
|
7991 * npsol.cc (nonlinear_constraints_ok): Now static. |
|
7992 |
|
7993 * npsol.cc (linear_constraints_ok): Now static. |
|
7994 * qpsol.cc (linear_constraints_ok): Duplicate here. |
|
7995 |
|
7996 * data.cc (Flinspace): Don't print usage message if nargin == 2. |
|
7997 |
|
7998 Sun Feb 11 14:20:32 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
7999 |
|
8000 * mk-oct-links.in: Rename from mk-oct-links. |
|
8001 (LN_S): Use this variable instead of ln. |
|
8002 Set -e option for shell. |
|
8003 Exit with status of last command. |
|
8004 Print message when making link. |
|
8005 * Makefile.in (DISTFILES): Add mk-oct-links.in to the list. |
|
8006 (install-oct): Run ./mk-oct-links, not $(srcdir)/mk-oct-links. |
|
8007 |
|
8008 * variables.cc (install_builtin_variables): Restore accidentally |
|
8009 deleted DEFVAR for save_precision. |
|
8010 |
|
8011 Fri Feb 9 11:24:32 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
8012 |
|
8013 * Makefile.in (INCLUDES): Delete statdefs.h from the list (it's |
|
8014 now in the liboctave directory). |
|
8015 |
|
8016 * toplev.cc (toplevel): Define here. |
|
8017 * octave.cc (toplevel): Not here. |
|
8018 |
|
8019 * toplev.cc (main_loop): New function. |
|
8020 * octave.cc (main): Call it here instead of doing main loop |
|
8021 actions here. |
|
8022 |
|
8023 * user-prefs.cc (do_fortran_indexing): Also set liboctave_dfi_flag. |
|
8024 (prefer_column_vectors): Also set liboctave_pcv_flag. |
|
8025 (prefer_zero_one_indexing): Also set liboctave_pzo_flag. |
|
8026 (resize_on_range_error): Also set liboctave_rre_flag. |
|
8027 |
|
8028 * variables.cc (restore_command_history): New function. |
|
8029 (parse_fcn_file): Use it here in unwind_protect. |
|
8030 |
|
8031 * dynamic-ld.cc (load_octave_oct_file): Reverse sense of test. |
|
8032 (load_octave_builtin): Delete. |
|
8033 (mangle_octave_oct_file_name): Delete. |
|
8034 |
|
8035 * pt-fvc.cc (tree_builtin::eval): Don't try to dynamically load |
|
8036 functions here. |
|
8037 |
|
8038 * pr-output.cc (set_format_style): Decrement argc for first arg too. |
|
8039 |
|
8040 * input.cc (gnu_readline): If readline returns an empty string, |
|
8041 convert it to a string containing a single newline character. |
|
8042 |
|
8043 * octave.cc (octave_argv): Now a static string_vector. |
|
8044 (intern_argv): Use string_vector ops, not charMatrix ops. |
|
8045 * toplev.cc (octave_argv): Delete definition. |
|
8046 * toplev.h (octave_argv): Delete declaration. |
|
8047 |
|
8048 Thu Feb 8 10:58:24 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
8049 |
|
8050 * Makefile.in (conf-dist): New target. |
|
8051 |
|
8052 Tue Feb 6 10:59:45 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
8053 |
|
8054 * help.cc (Ftype): Correctly handle structure names. |
|
8055 |
|
8056 Sun Feb 4 02:02:20 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
8057 |
|
8058 * qpsol.cc (Fqpsol): Call set_options(), not copy() to set |
|
8059 options for QPSOL objects. |
|
8060 |
|
8061 * npsol.cc (Fnpsol): Call set_options(), not copy() to set |
|
8062 options for NPSOL objects. |
|
8063 |
|
8064 * quad.cc (Fquad): Call set_options(), not copy() to set |
|
8065 options for Quad objects. |
|
8066 |
|
8067 * dynamic-ld.cc (load_octave_builtin): Don't call destructor on string. |
|
8068 (load_octave_oct_file): Likewise. |
|
8069 Check oct_file.empty(), not just oct_file. |
|
8070 |
|
8071 * fsolve.cc (Ffsolve): Call set_options(), not copy() to set |
|
8072 options for NLEqn object. |
|
8073 |
|
8074 * variables.cc (do_who): Properly set match patterns from argument |
|
8075 vector for call to maybe_list. |
|
8076 |
|
8077 Sat Feb 3 03:29:33 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
8078 |
|
8079 * octave.cc (long_opts): Properly set second field using new enum. |
|
8080 |
|
8081 * lsode.cc: Change ODE to LSODE where appropriate. |
|
8082 Use LSODE_options, not ODE_options. |
|
8083 |
|
8084 * dassl.cc: Change DAE to DASSL where appropriate. |
|
8085 Use DASSL_options, not ODE_options. |
|
8086 |
|
8087 Fri Feb 2 01:41:37 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
8088 |
|
8089 * dirfns.cc: Include unistd.h. |
|
8090 |
|
8091 * parse.y, lex.l: Handle matrix lists without ml or mlnm stacks. |
|
8092 * pt-mat.h, pt-mat.cc (tree_matrix): |
|
8093 Rewrite to use SLList instead of home brew list. |
|
8094 * SLList-tm.cc: New file |
|
8095 * Makefile.in: Add it to the lists. |
|
8096 * SLStack-tm.cc: Delete. |
|
8097 * Makefile.in: Delete it from the lists. |
|
8098 |
|
8099 * All pt-* files: Use bool instead of int where appropriate. |
|
8100 |
|
8101 * Makefile.in (DEP_SOURCES_3): Add octave.cc. |
|
8102 |
|
8103 * pt-const.h (class tree_constant::tree_constant_rep): Make |
|
8104 everything in this class public, then it doesn't need to declare |
|
8105 the tree_constant class as a friend. |
|
8106 |
|
8107 Thu Feb 1 01:42:45 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
8108 |
|
8109 * lex.h, lex.l, parse.h, parse.y (class lexical_feedback): New |
|
8110 class for lexer flags. Replace lots of global vars with members |
|
8111 of this class. |
|
8112 |
|
8113 * lex.l (class brace_paren_nesting_level): New class to replace |
|
8114 nesting_level stack. nesting_level is now an instance of this |
|
8115 class. |
|
8116 |
|
8117 * lex.l (yum_yum): New typedef. |
|
8118 (ATE_NOTHING): New global var. |
|
8119 (ATE_SPACE_OR_TAB, ATE_NEWLINE): Don't #define these, declare them |
|
8120 as const yum_yum. |
|
8121 (eat_whitespace, eat_continuation): Return yum_yum, not int. |
|
8122 |
|
8123 * lex.l (SHORT_CIRCUIT_LOGICALS): Delete. Always do this for || |
|
8124 and && tokens. |
|
8125 (yy_flex_alloc, yy_flex_realloc, yy_flex_free, next_char_is_space): |
|
8126 Delete. |
|
8127 |
|
8128 * toplev.cc (verbose_flag): Delete definition. |
|
8129 * toplev.h (verbose_flag): And declaration. |
|
8130 * octave.cc (verbose_flag): Now static. |
|
8131 |
|
8132 * lex.l (lookup_identifier): Arg is now string, not char*. |
|
8133 (handle_identifier, is_plot_keyword, is_keyword): Likewise. |
|
8134 (strip_trailing_whitespace): Return value is now string, not char*. |
|
8135 (plot_style_token): Likewise, for both arg and return value. |
|
8136 |
|
8137 * input.cc (octave_gets_line): Delete. |
|
8138 (gnu_readline, octave_gets, octave_read): |
|
8139 Properly handle input when using_readline is either true or false. |
|
8140 Don't limit length of input lines to flex buffer size. |
|
8141 (get_user_input): New function. |
|
8142 |
|
8143 * octave.cc (main): Handle --no-line-editing. |
|
8144 * toplev.h (using_readline): Provide external declaration here. |
|
8145 * input.h: Not here. |
|
8146 * toplev.cc (using_readline): Define here. |
|
8147 * input.cc: Not here. |
|
8148 |
|
8149 * toplev.h (no_line_editing): Delete declaration. |
|
8150 * input.cc (no_line_editing): Delete definition. |
|
8151 |
|
8152 Wed Jan 31 05:28:45 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
8153 |
|
8154 * input.cc (DEFAULT_ARRAY_SIZE, PROMPT_GROWTH): Delete definitions |
|
8155 of unused macros. |
|
8156 (read_octal): Now static. |
|
8157 |
|
8158 * givens.cc (Fgivens): Use new functions from matrix classes |
|
8159 instead of calling Fortran functions directly. |
|
8160 * syl.cc (Fsyl): Likewise. |
|
8161 * expm.cc (Fexpm): Likewise. |
|
8162 |
|
8163 Mon Jan 29 00:00:48 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
8164 |
|
8165 * octave.cc: Use new prog_args class instead of calling getopt |
|
8166 directly. |
|
8167 |
|
8168 * getopt.h, getopt.c, getopt1.c: Move to liboctave directory. |
|
8169 * Makefile: Remove from lists. |
|
8170 |
|
8171 * utils.cc (strconcat, read_until, discard_until): Delete. |
|
8172 |
|
8173 * pager.cc (terminal_columns, terminal_rows): Move to |
|
8174 liboctave/oct-term.cc. |
|
8175 * pager.cc, pr-output.cc: Include oct-term.h. |
|
8176 |
|
8177 * utils.cc (list_in_columns): Moved to liboctave/str-vec.cc. |
|
8178 Change all callers to use new member function syntax. |
|
8179 |
|
8180 * dirfns.cc (absolute_program): Now static. |
|
8181 (absolute_pathname): Delete. |
|
8182 |
|
8183 * pt-plot.cc (save_in_tmp_file): Call oct_tempnam, not |
|
8184 octave_tmp_file_name. Include file-ops.h. |
|
8185 * file-io.cc (do_scanf, Foctave_tmp_file_name): Likewise. |
|
8186 * oct-hist.cc (mk_tmp_hist_file): Likewise. |
|
8187 |
|
8188 * file-io.cc (Foctave_tmp_file_name): Move here. |
|
8189 * utils.cc: From here. |
|
8190 |
|
8191 * utils.cc (octave_tmp_file_name): Move to liboctave/file-ops.cc. |
|
8192 |
|
8193 * tempname.c, tempnam.c: Move to liboctave directory. |
|
8194 * Makefile.in: Remove from lists. |
|
8195 |
|
8196 Sun Jan 28 19:00:52 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
8197 |
|
8198 * xdiv.cc (all xdiv functions): Return Matrix or ComplexMatrix, |
|
8199 not tree_constant. |
|
8200 |
|
8201 * oct-hist.h, oct-hist.cc, toplev.cc, octave.cc, input.cc, |
|
8202 file-io.cc, user-prefs.cc: Rewrite to use new command_history |
|
8203 class instead of calling readline history functions directly. |
|
8204 |
|
8205 * utils.cc (get_fcn_file_names): Delete num arg. |
|
8206 |
|
8207 Thu Jan 25 20:33:54 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
8208 |
|
8209 * load-save.cc (matches_patterns): Use new glob_match class |
|
8210 instead of calling fnmatch directly. |
|
8211 * symtab.cc (matches_patterns, symbol_table::glob): Likewise. |
|
8212 * variables.cc (Fclear): Likewise. |
|
8213 |
|
8214 Wed Jan 24 02:05:22 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
8215 |
|
8216 * fnmatch.h fnmatch.c: Delete. |
|
8217 * Makefile.in: Add glob stuff in the appropriate places, remove |
|
8218 fnmatch.h and fnmatch.c from lists. |
|
8219 |
|
8220 * octave.cc (program_invocation_name, program_invocation_short_name): |
|
8221 Maybe declare. |
|
8222 (initialize_globals): Maybe initialize them. |
|
8223 |
|
8224 * octave.cc (initialize_pathsearch): Define here, not in pathsearch.cc. |
|
8225 * pathsearch.h, pathsearch.cc: Remove files. |
|
8226 * Makefile.in: Remove them from the lists. |
|
8227 |
|
8228 * help.cc (simple_help): Ignore directories that don't have any .m |
|
8229 or .oct files. |
|
8230 |
|
8231 * utils.cc (search_path_for_file): Use new dir_path class instead |
|
8232 of calling kpathsea routines directly. |
|
8233 (get_fcn_file_names): Likewise. |
|
8234 * help.cc (simple_help): Likewise. |
|
8235 |
|
8236 * dirfns.cc (make_absolute): Don't convert empty arg to "./". |
|
8237 |
|
8238 * sysdir.h: Move to liboctave directory. |
|
8239 * Makefile.in: Remove from lists. |
|
8240 |
|
8241 * dirfns.cc (Freaddir): Use new dir_entry class instead of calling |
|
8242 readdir directly. Include dir-ops.h, not sysdir.h. |
|
8243 * utils.cc (get_fcn_file_names): Likewise. Delete unnecessary |
|
8244 first arg, change all callers. |
|
8245 |
|
8246 Tue Jan 23 00:43:12 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
8247 |
|
8248 * safe-xstat.hin, safe-xstat.cin, statdefs.h, file-ops.h, |
|
8249 file-ops.cc, filemode.c, mkdir.c, rmdir.c, rename.c: |
|
8250 Files moved to liboctave directory. |
|
8251 * Makefile.in: Remove them from lists. Move appropriate rules. |
|
8252 |
|
8253 * acosh.c, asinh.c, atanh.c, erf.c, erfc.c, gamma.c, lgamma.c: |
|
8254 Files moved to liboctave directory. |
|
8255 * Makefile.in: Remove them from lists. |
|
8256 * missing-math.h: Deleted. |
|
8257 * pr-output.cc, sysdep.cc, minmax.cc, mappers.cc, expm.cc, |
|
8258 arith-ops.cc: Include oct-math.h, not cmath or missing-math.h. |
|
8259 |
|
8260 Mon Jan 22 19:33:05 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
8261 |
|
8262 * variables.cc (Fexist): Use file_stat instead of calling stat |
|
8263 directly. Include file-ops.h, not statdefs.h. |
|
8264 * octave.cc (execute_startup_files): Likewise. |
|
8265 * file-io.cc (file_io_get_file, fopen_internal, popen_internal, Fstat): |
|
8266 Likewise. |
|
8267 (mk_stat_map): Likewise, use file_stat object, not struct stat. |
|
8268 * oct-hist.cc (do_history): Likewise. |
|
8269 |
|
8270 * file-ops.h, file-stat.cc: New files. |
|
8271 * Makefile.in: Include them. |
|
8272 * dirfns.cc: Delete is_newer. Don't include statdefs.h. |
|
8273 * toplev.cc: Don't include statdefs.h. |
|
8274 |
|
8275 Sun Jan 21 22:48:03 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
8276 |
|
8277 * pt-mvr.h, pt-fvc.h, Map.cc, Map.h, dynamic-ld.h, |
|
8278 pt-fvc-base.cc, SLList-str.cc, pt-fcn.h, pt-fvc-base.h, |
|
8279 SLStack-str.cc, pt-mvr.cc, pt-exp.cc, token.h, token.cc, |
|
8280 user-prefs.h, pt-base.cc, user-prefs.cc, dirfns.h, sysdep.h, |
|
8281 sysdep.cc, input.h, parse.h, lex.l, parse.y, defun.h, mappers.h, |
|
8282 pt-fvc.cc, pt-plot.h, load-save.h, octave.cc, defun-int.h, help.h, |
|
8283 variables.h, oct-map.h, oct-obj.h, oct-obj.cc, pt-const.cc, |
|
8284 oct-map.cc, input.cc, symtab.h, pt-const.h, pathsearch.cc, |
|
8285 pr-output.h, pr-output.cc, toplev.h, timefns.cc, schur.cc, |
|
8286 pt-plot.cc, pager.cc, load-save.cc, dynamic-ld.cc, dirfns.cc, |
|
8287 data.cc, file-info.h, file-info.cc, colloc.cc, utils.h, qpsol.cc, |
|
8288 quad.cc, npsol.cc, lsode.cc, fsolve.cc, dassl.cc, file-io.cc, |
|
8289 help.cc, utils.cc, oct-hist.h, oct-hist.cc, symtab.cc, toplev.cc, |
|
8290 pt-fcn.cc, unwind-prot.h, unwind-prot.cc, variables.cc: |
|
8291 Most functions in these files that deal with character strings |
|
8292 have been converted to use the string class insatead of char*. If |
|
8293 you want more detailed information, you'll have to figure it out |
|
8294 for yourself. |
|
8295 |
|
8296 Sat Jan 20 18:19:12 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
8297 |
|
8298 * dynamic-ld.cc [WITH_DL]: Define RTLD_LAZY to be 1 if it is not |
|
8299 already defined. |
|
8300 |
|
8301 Sun Jan 14 07:48:05 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
8302 |
|
8303 * pt-const.cc (print_as_scalar, print_as_structure): |
|
8304 Make these member functions. |
|
8305 (tree_constant::print_with_name): New function, moved here from |
|
8306 old tree-expr.cc file (where it was called print_constant) and |
|
8307 converted to member function. Change all callers. |
|
8308 |
|
8309 Fri Jan 12 01:54:49 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
8310 |
|
8311 * octave.cc (initialize_globals): Don't do kpathsearch stuff here. |
|
8312 (main): Call initialize_pathsearch() here. |
|
8313 |
|
8314 * pathsearch.cc: New file. |
|
8315 * Makefile.in (SOURCES): Add it to the list |
|
8316 |
|
8317 * oct-hist.h: Rename from octave-hist.h. |
|
8318 * oct-hist.cc: Rename from octave-hist.cc. |
|
8319 * Makefile.in, parse.y, other .cc files: Cope with it. |
|
8320 |
|
8321 * dynamic-ld.cc: Avoid warnings if !WITH_DYNAMIC_LINKING. |
|
8322 |
|
8323 * load-save.cc (save_ascii_data): string::data() returns const char*. |
|
8324 |
|
8325 * utils.h: Don't provide forward declaration for tree_constant. |
|
8326 |
|
8327 * oct-obj.h: Don't include mx-base.h or provide forward |
|
8328 declarations for Matrix and Range types. |
|
8329 |
|
8330 * file-info.h: Don't include oct-obj.h. Do include cstdio. |
|
8331 |
|
8332 * symtab.h: Don't provide forward declaration for ostream. |
|
8333 |
|
8334 * variables.h: Don't provide forward declarations for istream, |
|
8335 ostrstream, tree, builtin_function, or builtin_variable objects. |
|
8336 |
|
8337 * balance.cc, chol.cc, colloc.cc, dassl.cc, det.cc, eig.cc, |
|
8338 expm.cc, fft.cc, fft2.cc, filter.cc, find.cc, fsolve.cc, fsqp.cc, |
|
8339 givens.cc, hess.cc, ifft.cc, ifft2.cc, inv.cc, log.cc, lpsolve.cc, |
|
8340 lsode.cc, lu.cc, minmax.cc, npsol.cc, pinv.cc, qpsol.cc, qr.cc, |
|
8341 quad.cc, qzval.cc, rand.cc, schur.cc, sort.cc, svd.cc, syl.cc: |
|
8342 Clean up #include statements. |
|
8343 |
|
8344 * pt-const.h: Don't include oct-obj.h or tree-base.h. |
|
8345 Provide forward declaration of Octave_object here. |
|
8346 * pt-const.cc: Include oct-obj.h here. |
|
8347 |
|
8348 * pt-mat.h, pt-fcn.h, pt-const.h, pt-misc.h, pt-plot.h, |
|
8349 pt-exp-base.h, pt-cmd.h, pt-fvc-base.h, pt-mvr-base.h, pt-exp.h, |
|
8350 pt-mvr.h, pt-fvc.h: New files, split from tree-expr.h and/or |
|
8351 renamed from other tree-*.h files (pt == parse tree). |
|
8352 * pt-base.cc, pt-const.cc, pt-exp.cc, pt-fvc-base.cc, pt-mat.cc, |
|
8353 pt-mvr-base.cc, pt-plot.cc, pt-cmd.cc, pt-exp-base.cc, pt-fcn.cc, |
|
8354 pt-fvc.cc, pt-misc.cc, pt-mvr.cc: Likewse, split from tree-expr.cc |
|
8355 and/or other tree-*.cc files. |
|
8356 * Makefile.in: Include them in the appropriate lists. |
|
8357 * All: Fix #include statements to match. |
|
8358 |
|
8359 * Array-tc.cc: Don't instantiate ArrayRep objects. |
|
8360 |
|
8361 Thu Jan 11 02:35:19 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
8362 |
|
8363 * tree-const.cc (tree_constant::eval (int, int, const Octave_object&)): |
|
8364 Define here instead of in tree-const.h. |
|
8365 |
|
8366 Wed Jan 10 04:34:20 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
8367 |
|
8368 * tree-const.h (tree_constant::tree_constant (const string&): |
|
8369 * tree-const.cc (TC_REP::tree_constant_rep (const string&)): |
|
8370 New constructor. |
|
8371 |
|
8372 Tue Jan 9 04:10:29 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
8373 |
|
8374 * rand.cc (do_rand): Use string_value() result directly instead of |
|
8375 c_str() conversion. |
|
8376 * balance.cc (Fbalance): Likewise. |
|
8377 |
|
8378 * tree-const.cc (TC_REP::string_value()): |
|
8379 Handle new definition of charMatrix::row_as_string() |
|
8380 * load-save.cc (save_ascii_data): Ditto. |
|
8381 (save_binary_data): Ditto. |
|
8382 * pr-output.cc (octave_print_internal): Ditto. |
|
8383 |
|
8384 * balance.cc (Fbalance): |
|
8385 Handle new definition of TC_REP::string_value() |
|
8386 * colloc.cc (Fcolloc): Ditto. |
|
8387 * dassl.cc (Fdassl_options): Ditto. |
|
8388 * data.cc (Fstruct_contains): Ditto. |
|
8389 * dirfns.cc (Fmkdir): Ditto. |
|
8390 (Freaddir): Ditto. |
|
8391 (Frmdir): Ditto. |
|
8392 (Frename): Ditto. |
|
8393 * error.cc (handle_message): Ditto. |
|
8394 * file-io.cc (process_printf_format): Ditto. |
|
8395 (fopen_internal): Ditto. |
|
8396 (file_io_get_file): Ditto. |
|
8397 (return_valid_file): Ditto. |
|
8398 (Flstat): Ditto. |
|
8399 (Fstat): Ditto. |
|
8400 (unlink_internal): Ditto. |
|
8401 (mkfifo_internal): Ditto. |
|
8402 (async_system_internal): Ditto. |
|
8403 (sync_system_internal): Ditto. |
|
8404 (execute_internal): Ditto. |
|
8405 (popen_internal): Ditto. |
|
8406 (fwrite_internal): Ditto. |
|
8407 (fread_internal): Ditto. |
|
8408 (do_printf): Ditto. |
|
8409 (do_scanf): Ditto. |
|
8410 * input.cc (get_user_input): Ditto. |
|
8411 * lsode.cc (Flsode_options): Ditto. |
|
8412 * npsol.cc (Fnpsol_options):Ditto. |
|
8413 * qpsol.cc (Fqpsol_options):Ditto. |
|
8414 * quad.cc (Fquad_options): Ditto. |
|
8415 * rand.cc (do_rand): Ditto. |
|
8416 * schur.cc (Fschur): Ditto. |
|
8417 * sysdep.cc (Fputenv): Ditto. |
|
8418 (Fgetenv): Ditto. |
|
8419 * timefns.cc (extract_tm): Ditto. |
|
8420 (Fstrftime): Ditto. |
|
8421 * toplev.cc (Fsource): Ditto. |
|
8422 (eval_string): Ditto. |
|
8423 (Fsystem): Ditto. |
|
8424 * tree-plot.cc (subplot::handle_plot_data): Ditto. |
|
8425 * variables.cc (is_valid_function): Ditto. |
|
8426 (Fis_global): Ditto. |
|
8427 (Fexist): Ditto. |
|
8428 (builtin_string_variable): Ditto. |
|
8429 * utils.cc (make_argv): Ditto. |
|
8430 (Fundo_string_escapes): Ditto. |
|
8431 |
|
8432 Mon Jan 8 01:54:50 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
8433 |
|
8434 * Makefile.in (install-bin): Use $(LN_S), not just ln. |
|
8435 |
|
8436 * variables.cc (octave_fcn_file_dir): New function. |
|
8437 * tree-expr.cc (mark_as_system_fcn_file): Use it instead of |
|
8438 octave_lib_dir. |
|
8439 |
|
8440 * Makefile.in (clean): If $(SHARED_LIBS), also remove shared libs. |
|
8441 |
|
8442 * pr-output.cc (set_format (const ComplexMatrix&, int&, int&)): |
|
8443 Unconditionally call all_elements_are_int_or_inf_or_nan(). |
|
8444 (set_format (const Matrix&, int&, int&)): Likewise. |
|
8445 |
|
8446 Sun Jan 7 19:12:39 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
8447 |
|
8448 * utils.cc (oct_putenv): New function. |
|
8449 * sysdep.cc (Fputenv): Use oct_putenv. |
|
8450 * octave.cc (initialize_globals): Likewise. |
|
8451 |
|
8452 Sat Jan 6 23:22:37 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
8453 |
|
8454 * sysdep.cc (Fputenv): New function. |
|
8455 |
|
8456 * input.cc (initialize_readline): Call rl_initialize() here. |
|
8457 |
|
8458 * octave.cc: Conditionally define atexit to be on_exit here. |
|
8459 * toplev.cc: Not here. |
|
8460 |
|
8461 Fri Jan 5 14:01:02 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
8462 |
|
8463 * toplev.cc: Don't include <pwd.h> here. |
|
8464 |
|
8465 * octave-hist.cc, tree-plot.cc, utils.cc: Do include "sysdep.h". |
|
8466 |
|
8467 * dirfns.cc, file-io.cc, help.cc, load-save.cc, octave.cc, |
|
8468 octave-hist.cc, tree-plot.cc, utils.cc: |
|
8469 Don't include <readline/tilde.h>. |
|
8470 * sysdep.h: Do include it here. |
|
8471 |
|
8472 * tree-const.cc (TC_REP::assign (tree_constant&, Octave_object&)): |
|
8473 If we have a matrix or range, call maybe_mutate before returning. |
|
8474 |
|
8475 Sun Dec 31 15:56:18 1995 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
8476 |
|
8477 * npsol.cc (Fnpsol): Improve doc string. |
|
8478 * qpsol.cc (Fqpsol): Likewise. |
|
8479 |
|
8480 Fri Dec 29 21:46:58 1995 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
8481 |
|
8482 * defun-dld.h: Make work again for OCTAVE_LITE and |
|
8483 WITH_DYNAMIC_LINKING. |
|
8484 |
|
8485 * Makefile.in: Handle shared libraries. |
|
8486 |
|
8487 Wed Dec 27 17:47:51 1995 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
8488 |
|
8489 * mk-oct-links: New file. |
|
8490 * Makefile.in (install-oct): Use it. |
|
8491 * f-*.cc: Rename to *.cc. |
|
8492 |
|
8493 * Makefile.in (install-bin, install-lib, install-oct): New targets. |
|
8494 (install): Use them. |
|
8495 |
|
8496 Tue Dec 26 21:38:22 1995 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
8497 |
|
8498 * toplev.cc (reading_startup_message_printed): Move initialization |
|
8499 here and make extern. |
|
8500 |
|
8501 * dirfns.cc, dynamic-ld.cc, help.cc, input.cc, octave-hist.cc, |
|
8502 octave.cc, sighandlers.cc, sysdep.cc, tree-expr.cc, tree-misc.cc, |
|
8503 utils.cc, variables.cc, parse.y, lex.l: Include toplev.h instead |
|
8504 of octave.h. |
|
8505 * toplev.h: rename from octave.h. |
|
8506 |
|
8507 * octave.cc (main): Delete unused variable saved_sigint_handler. |
|
8508 |
|
8509 Sun Dec 24 00:26:54 1995 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
8510 |
|
8511 * dynamic-ld.cc: Massive re-write to handle dlopen/dlsym and |
|
8512 shl_load/shl_findsym methods of dynamic linking. |
|
8513 |
|
8514 * utils.cc (get_fcn_file_names): Check for .oct files if |
|
8515 WITH_DYNAMIC_LINKING, not WITH_DLD. |
|
8516 |
|
8517 * Makefile.in (LIB, TERMLIBS): Substitute values. |
|
8518 (octave): Add $(LIBS) to link command and use $(TERMLIBS) instead |
|
8519 of -ltermcap. |
|
8520 |
|
8521 Sat Dec 23 21:56:12 1995 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
8522 |
|
8523 * dynamic-ld.h, dynamic-ld.cc: Remove old unused code. |
|
8524 |
|
8525 * variables.cc (load_fcn_from_file): |
|
8526 Always call load_octave_oct_file. |
|
8527 |
|
8528 Wed Dec 20 00:56:57 1995 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
8529 |
|
8530 * pr-output.cc (set_real_format, set_real_matrix_format, |
|
8531 set_complex_format, set_complex_matrix_format, set_range_format): |
|
8532 New functions. Ensure the count of the digits to the right of the |
|
8533 decimal point is positive. |
|
8534 |
|
8535 * xpow.cc (xpow (const Matrix&, double)): Print warning if |
|
8536 inverting singular matrix (but return value anyway, in the name of |
|
8537 compatibility). |
|
8538 xpow (const ComplexMatrix&, double)): Likewise. |
|
8539 |
|
8540 * f-inv.cc (Finv): If matrix is singular, return result anyway, in |
|
8541 the name of compatibility. |
|
8542 |
|
8543 * symtab.cc (symbol_record::pop_context): |
|
8544 Don't assert (! context.empty ()). |
|
8545 |
|
8546 * tree-const.cc (TC_REP::char_matrix_value): Don't complain about |
|
8547 type conversion if object is an empty matrix.f |
|
8548 (TC_REP::assign): If rhs is a string, don't convert to numeric |
|
8549 type if rhs is empty or "". |
|
8550 Only widen if rhs is not empty. |
|
8551 Don't return 0x0 char_matrix if it is supposed to be a string. |
|
8552 |
|
8553 * arith-ops.h, mappers.h, pr-output.h, xdiv.h, xpow.h: Include |
|
8554 oct-cmplx.h in place of forward declaration for class Complex. |
|
8555 |
|
8556 * pr-output.cc, mappers.cc, arith-ops.cc, xdiv.cc, xpow.cc, |
|
8557 utils.cc: Include "oct-cmplx.h" instead of <Complex.h>. |
|
8558 |
|
8559 * octave.cc (initialize_error_handlers): Don't call |
|
8560 set_Complex_error_handler(). |
|
8561 (octave_Complex_error_handler): Delete unused function. |
|
8562 Delete declaration for set_Complex_error_handler(). |
|
8563 |
|
8564 * sighandlers.cc (catch_interrupts): New function. |
|
8565 * octave.cc (main): Call catch_interrupts() instead of calling |
|
8566 octave_set_signal_handler() directly. |
|
8567 |
|
8568 Tue Dec 19 03:22:37 1995 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
8569 |
|
8570 * variables.cc (looks_like_octave_copyright): Also recognize the |
|
8571 string " This program is free software". |
|
8572 |
|
8573 Thu Dec 14 01:54:06 1995 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
8574 |
|
8575 * octave-hist.cc (clean_up_history): Only write history file if |
|
8576 user_pref.saving_history. |
|
8577 |
|
8578 * octave-hist.cc (initialize_history, clean_up_history, |
|
8579 do_history): Perform tilde expansion on history file name. |
|
8580 |
|
8581 * octave.cc (main): Check `defined (HAVE_ON_EXIT)' not just |
|
8582 `(HAVE_ON_EXIT)'. |
|
8583 |
|
8584 * user-prefs.h (user_preferences): New fields, `history_file' and |
|
8585 `history_size'. |
|
8586 * user-prefs.cc (init_user_prefs): Initialize them. |
|
8587 (sv_history_file, history_size): New functions. |
|
8588 * variables.cc (install_builtin_variables): Initialize user-level |
|
8589 variables history_file and history_size. |
|
8590 * octave-hist.cc (default_history_size): Now extern. |
|
8591 (default_history_file): Likewise. |
|
8592 (octave_hist_size, octave_hist_file): Use user preference |
|
8593 variables instead. |
|
8594 * octave.cc (main): Call initialize_history after |
|
8595 execute_startup_files. |
|
8596 |
|
8597 Fri Dec 8 15:53:59 1995 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
8598 |
|
8599 * user-prefs.h (user_preferences): New field, `saving_history'. |
|
8600 * user-prefs.cc (init_user_prefs): Initialize it. |
|
8601 (saving_history): New function. |
|
8602 * variables.cc (install_builtin_variables): Initialize user-level |
|
8603 variable saving_history. |
|
8604 * octave.cc (parse_and_execute): Don't reset value of |
|
8605 saving_history here. |
|
8606 (main) Use user_pref.saving_history instead of saving_history. |
|
8607 * variables.cc (parse_fcn_file): Likewise. |
|
8608 * octave-hist.cc (maybe_save_history): Likewise. |
|
8609 Don't save history if input_from_startup_file. |
|
8610 |
|
8611 Mon Nov 27 23:05:52 1995 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
8612 |
|
8613 * resource.cc: Include systime.h before <sys/resource.h>. |
|
8614 |
|
8615 Tue Nov 14 14:09:40 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
8616 |
|
8617 * error.cc: Include cstring. |
|
8618 |
|
8619 * tree-expr.cc (print_code): Decrement indent level after printing |
|
8620 function body. |
|
8621 |
|
8622 * Makefile.in: Remove references to oct-str.cc, oct-str.h, and |
|
8623 Array-string.cc. |
|
8624 |
|
8625 * tree-const.h: Don't include oct-str.h. |
|
8626 |
|
8627 Mon Nov 6 11:16:49 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
8628 |
|
8629 * parse.y (make_plot_command, finish_colon_expression, |
|
8630 make_unwind_protect, make_try_command, make_for_command, |
|
8631 make_break_command, make_continue_command, make_return_command, |
|
8632 start_if_command, finish_if_command, make_elseif_clause, |
|
8633 make_simple_assignment, make_multi_val_ret, start_function_def, |
|
8634 frob_function_def, finish_function_def, start_matrix, |
|
8635 finish_matrix): New functions. Use them in the grammar to clean |
|
8636 things up a bit. Possibly convert matrix lists, colon |
|
8637 expressions, binary expressions, and unary expressions to constant |
|
8638 values. |
|
8639 (tree_matrix_type): Delete. |
|
8640 (simple_expr1): Handle all expression stuff here, including |
|
8641 assignments. |
|
8642 (simple_expr): Just check to see that simple_expr1 produced |
|
8643 something useful. |
|
8644 |
|
8645 * tree-plot.cc, tree-plot.h: Move most simple constructors to the |
|
8646 header file. |
|
8647 |
|
8648 * tree-expr.h (tree_expression::is_constant): Move virtual |
|
8649 function definition here. |
|
8650 (tree_fvc::is_constant): From here. |
|
8651 (tree_expression::is_matrix_constant): New virtual function. |
|
8652 (tree_expression::is_range_constant): New virtual function. |
|
8653 * tree-expr.cc (tree_matrix::is_matrix_constant): New function. |
|
8654 * tree-expr.cc (tree_colon_expression::is_range_constant): New |
|
8655 function. |
|
8656 |
|
8657 Fri Nov 3 03:42:04 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
8658 |
|
8659 * utils.cc, utils.h (jump_to_top_level): Declare as extern "C". |
|
8660 |
|
8661 * tree-const.h (tree_constant::eval ()): Only mutate if printing. |
|
8662 |
|
8663 * tree-const.cc (TC_REP::tree_constant_rep (const Complex&), |
|
8664 TC_REP::tree_constant_rep (const ComplexMatrix&), |
|
8665 TC_REP::tree_constant_rep (const ComplexDiagMatrix&), |
|
8666 TC_REP::tree_constant_rep (const ComplexRowVector&), |
|
8667 TC_REP::tree_constant_rep (const ComplexColumnVector&)): |
|
8668 Also check to see if we can convert to scalar_constant, not just |
|
8669 complex_scalar_constant. |
|
8670 |
|
8671 * user-prefs.h (user_preferences): New field, `exec_path'. |
|
8672 * user-prefs.cc (init_user_prefs): Initialize it. |
|
8673 (sv_exec_path): New function. |
|
8674 * variables.cc (install_builtin_variables): Add DEFUN for EXEC_PATH. |
|
8675 (default_exec_path): New function. |
|
8676 * octave.cc (exec_path): New global variable. |
|
8677 Don't set and putenv() exec path here. |
|
8678 (long_opts): Add --exec-path option. |
|
8679 (main): Handle it. |
|
8680 (initialize_globals): Set default value here. |
|
8681 |
|
8682 * user-prefs.h (user_preferences): New field, `info_prog'. |
|
8683 * user-prefs.cc (init_user_prefs): Initialize it. |
|
8684 (sv_info_prog): New function. |
|
8685 * variables.cc (install_builtin_variables): Add DEFUN for INFO_PROGRAM. |
|
8686 (default_info_prog): New function. |
|
8687 * octave.cc (info_prog): New global variable. |
|
8688 (initialize_globals): Set default value here. |
|
8689 (long_opts): Add --info-prog option. |
|
8690 (main): Handle it. |
|
8691 * help.cc (try_info): Use user_pref.info_prog here. |
|
8692 |
|
8693 * octave.cc (initialize_globals): Put arch_dir and bin_dir ahead |
|
8694 of shell_path when resetting PATH. |
|
8695 |
|
8696 Thu Nov 2 04:30:13 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
8697 |
|
8698 * f-rand.cc (Frandn): New function. |
|
8699 (do_initialization): New function. |
|
8700 (do_rand): New function for doing the real work. |
|
8701 (Frand): Use it. |
|
8702 |
|
8703 * octave.cc (parse_and_execute): New arg, warn_for. If given, |
|
8704 print message if file cannot be opened. |
|
8705 Set curr_fcn_file_full_name here. |
|
8706 (Fsource): Pass extra arg to parse_and_execute to get warning message. |
|
8707 |
|
8708 * tree-const.h: Handle line and column info for double, Complex, |
|
8709 and char* constants. |
|
8710 |
|
8711 * parse.y (maybe_convert_to_ans_assign): Pass along line and |
|
8712 column info from expression. |
|
8713 |
|
8714 * parse.y (make_constant): New function. |
|
8715 (simple_expr1, word_list): Use it. |
|
8716 |
|
8717 * input.cc, input.h (curr_fcn_file_full_name): New global. |
|
8718 * variables.cc (load_fcn_from_file): Set it here. |
|
8719 * parse.y (func_def2, yyerror, maybe_warn_missing_semi): Use it. |
|
8720 (func_def2): If !reading_fcn_file, don't call strcmp if |
|
8721 curr_fcn_file_name is 0. |
|
8722 |
|
8723 * octave.cc (Fsource): New function. |
|
8724 (parse_and_execute): Declare file name const char *. |
|
8725 * input.cc (get_input_from_file): Likewise. |
|
8726 |
|
8727 Wed Nov 1 13:54:34 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
8728 |
|
8729 * f-filter.cc: New file. |
|
8730 * Makefile.in (DLD_SRC): Add it to the list. |
|
8731 |
|
8732 * sysdep.h (gethostname): Change declaration to match definition |
|
8733 in sysdep.cc. |
|
8734 |
|
8735 * resource.cc: Include sysdep.h here, for octave_NaN. |
|
8736 |
|
8737 Tue Oct 31 02:12:18 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
8738 |
|
8739 * tree-const.cc (TC_REP::assign): After converting rhs to a |
|
8740 numeric type, use the converted value, not the original. |
|
8741 |
|
8742 * dirfns.cc (Fpwd): If nargout == 0, print the directory name |
|
8743 instead of returning it. |
|
8744 |
|
8745 * pager.cc (maybe_page_output): Call maybe_write_to_diary_file here. |
|
8746 (flush_output_to_pager): Not here. |
|
8747 |
|
8748 Mon Oct 30 23:39:43 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
8749 |
|
8750 * variables.cc (install_builtin_commands): Add DEFVAR for |
|
8751 echo_executing_commands. |
|
8752 |
|
8753 * octave-hist.cc (do_edit_history): Handle new echo stuff. |
|
8754 * variables.cc (parse_fcn_file): Likewise. |
|
8755 * octave.cc (parse_and_execute): Likewise. |
|
8756 (main): Likewise. |
|
8757 * input.cc (do_input_echo): |
|
8758 (Fecho): New function. |
|
8759 |
|
8760 * tree-expr.cc (tree_function::print_code_function_header, |
|
8761 tree_function::print_code_function_trailer): New functions. |
|
8762 (tree_function::print_code): Use them. |
|
8763 (tree_function::eval): Likewise, if echoing commands. |
|
8764 * tree-misc.cc (tree_statement::maybe_echo_code): New function. |
|
8765 |
|
8766 * user-prefs.h (user_preferences): New field, echo_executing_commands. |
|
8767 (echo_state): New enum, for various types of echoing we do. |
|
8768 * user-prefs.cc (echo_executing_commands): New function. |
|
8769 |
|
8770 * tree-base.cc (print_code_indent): Print PS4 as line prefix. |
|
8771 * help.cc (Ftype): Add unwind_protect for ps4 and set it to "" |
|
8772 before printing code. |
|
8773 |
|
8774 * tree-misc.h (tree_statement_list): New field, function_body. |
|
8775 (tree_statement_list::mark_as_function_body): New function. |
|
8776 * parse.y (func_def3): Mark function bodies. |
|
8777 |
|
8778 * pr-output.cc (octave_print_internal): Undo string escapes when |
|
8779 printing charMatrix as strings. |
|
8780 |
|
8781 Sat Oct 28 17:38:29 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
8782 |
|
8783 * utils.h (undo_string_escapes): Add missing const in declaration. |
|
8784 |
|
8785 Fri Oct 27 03:49:44 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
8786 |
|
8787 * file-io.cc (next_available_file_number): New stack for keeping |
|
8788 track of next available file number. |
|
8789 (get_next_avail_file_num): New function. |
|
8790 (fopen_file_for_user, fopen_internal, popen_internal, |
|
8791 execute_internal): Use it. |
|
8792 |
|
8793 Mon Oct 23 07:00:09 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
8794 |
|
8795 * tree-const.cc (TC_REP::convert_to_matrix_type, |
|
8796 tree_constant::convert_to_matrix_type): New arg, make_complex. |
|
8797 (TC_REP::set_index): New arg, rhs_is_complex. Pass it to |
|
8798 convert_to_matrix_type. |
|
8799 (TC_REP::assign): Pass rhs.is_complex_type() to set_index. |
|
8800 |
|
8801 Thu Oct 19 00:38:38 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
8802 |
|
8803 * xpow.cc: Include <climits>. |
|
8804 |
|
8805 * sysdep.cc (Fpause): Do pause even if not interactive. |
|
8806 |
|
8807 * tree-const.cc (TC_REP::assign): Don't make RHS numeric if both |
|
8808 RHS and LHS are strings. |
|
8809 |
|
8810 Wed Oct 18 22:19:16 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
8811 |
|
8812 * f-expm.cc (Fexpm): Avoid taking log of negative number. Also, |
|
8813 don't unnecessarily divide the input matrix by 1.0. |
|
8814 |
|
8815 * input.cc (decode_prompt_string): Recognize \[ and \] too. |
|
8816 (initialize_readline): Bind M-p to history-search-backward and M-n |
|
8817 to history-search-forward. |
|
8818 |
|
8819 Tue Oct 17 04:31:06 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
8820 |
|
8821 * xpow.cc (xpow): Handle integer powers better for complex^double. |
|
8822 (elem_xpow): Likewise. |
|
8823 |
|
8824 * lex.l ({CCHAR}): If nesting_level.top() is BRACE, return ';', |
|
8825 not '\n'. |
|
8826 |
|
8827 Mon Oct 16 19:03:45 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
8828 |
|
8829 * help.cc (Fwhich): Fix doc string. |
|
8830 |
|
8831 * variables.cc (Fexist): Update doc string. |
|
8832 |
|
8833 Sun Oct 15 22:19:16 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
8834 |
|
8835 * Another massive set of changes to support character matrices |
|
8836 with indexing. The Octave_str_object class is no longer used. |
|
8837 Anything having to do with Octave_str_object in the following |
|
8838 files has been changed to use charMatrix instead: octave.h, |
|
8839 load-save.cc, octave.cc, strfns.cc, data.cc, pr-output.h, |
|
8840 pr-output.cc, tree-const.h, dirfns.cc, tree-const.cc, |
|
8841 tree-expr.cc. |
|
8842 |
|
8843 Sat Oct 14 22:28:18 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
8844 |
|
8845 * f-sort.cc (mx_sort): Don't attempt to sort vectors that have |
|
8846 only one element, or matrices that have only one row. |
|
8847 |
|
8848 Thu Oct 12 02:16:58 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
8849 |
|
8850 * mappers.cc (install_mapper_functions): Add gammaln as an alias |
|
8851 for lgamma. |
|
8852 |
|
8853 * tree-const.h, tree-const.cc: Massive overhaul of indexing and |
|
8854 indexed assignment functions. |
|
8855 * tc-inlines.h, tc-rep.h: Remove files. |
|
8856 * Makefile.in: Remove mention of them here too. |
|
8857 |
|
8858 * Makefile.in: Include $(TI_SRC) in DEP_SOURCES_3, not |
|
8859 $(TI_SOURCES). |
|
8860 Include $(DLD_SRC) in DEP_SOURCES_3. |
|
8861 Include $(TI_SRC) in DEF_FILES_5. |
|
8862 |
|
8863 Wed Oct 11 01:26:18 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
8864 |
|
8865 * Makefile.in (INCLUDES): Remove tc-inlines.h and tc-rep.h from |
|
8866 the list. |
|
8867 |
|
8868 Mon Oct 9 08:31:04 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
8869 |
|
8870 * lex.l (next_token_is_bin_op): Do match `.+', `.*', etc. |
|
8871 |
|
8872 Sun Oct 8 18:19:56 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
8873 |
|
8874 * idx-vector.h, idx-vector.cc: Delete files. |
|
8875 * Makefile.in (SOURCES, INCLUDES): Remove them from lists. |
|
8876 |
|
8877 Fri Oct 6 00:52:06 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
8878 |
|
8879 * f-svd.cc (Fsvd): If nargout == 0 or nargout == 1, don't ask for |
|
8880 U and V. |
|
8881 |
|
8882 Wed Oct 4 00:04:57 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
8883 |
|
8884 * f-npsol.cc (Fnpsol, Fnpsol_options): Avoid unused variable |
|
8885 warnings if NPSOL_MISSING. |
|
8886 * f-qpsol.cc (Fqpsol, Fqpsol_options): Likewise for QPSOL_MISSING. |
|
8887 |
|
8888 * Makefile.in (DISTFILES): Add octave.gperf. |
|
8889 |
|
8890 * lex.l (next_token_is_bin_op): Don't ever return true for `.' |
|
8891 since that causes problems with things like [ .1 .1 ]. |
|
8892 |
|
8893 Tue Oct 3 05:30:24 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
8894 |
|
8895 * variables.cc (is_valid_function): Avoid setting error_state if |
|
8896 argument is not a string. |
|
8897 |
|
8898 * parse.y (maybe_warn_missing_semi): New function. |
|
8899 (list1, list): Call it if statement not terminated by semicolon. |
|
8900 * tree-misc.h (tree_statement::line, tree_statement::column): |
|
8901 New functions. |
|
8902 * octave.cc (input_from_command_line_file): New global variable. |
|
8903 (main): Set it. |
|
8904 (parse_and_execute): Unwind-protect it and set it to zero. |
|
8905 (eval_string): Likewise. |
|
8906 * variables.cc (parse_fcn_file): Likewise. |
|
8907 |
|
8908 * user-prefs.cc (warn_missing_semicolon): New function. |
|
8909 * user-prefs.h (user_preferences): New field, warn_missing_semicolon. |
|
8910 * variables.cc (install_builtin_variables): DEFVAR it. |
|
8911 |
|
8912 * tree-expr.cc (tree_expression::is_logically_true): Actually use |
|
8913 argument. |
|
8914 |
|
8915 Mon Oct 2 19:55:48 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
8916 |
|
8917 * variables.cc (install_builtin_variables): Reduce the default |
|
8918 value of save_precision to 15. |
|
8919 |
|
8920 * variables.cc (builtin_real_scalar_variable): Return 1 for |
|
8921 success, 0 for failure. |
|
8922 |
|
8923 * user-prefs.cc (struct_levels_to_print, set_save_precision, |
|
8924 set_output_max_field_width, set_output_precision): |
|
8925 Change sense of test for builtin_real_scalar_variable return value. |
|
8926 (check_preference): Rename from check_str_pref. Change all callers. |
|
8927 Accept value of 0 to be the same as "false" and nonzero to be the |
|
8928 same as "true". |
|
8929 Delete val to avoid memory leak. |
|
8930 * variables.cc (install_builtin_variables): Change initial values |
|
8931 from "true" to 1, "false" to 0. |
|
8932 |
|
8933 * variables.cc (install_builtin_variables): Add DEFVAR for |
|
8934 gnuplot_has_multiplot. |
|
8935 |
|
8936 * user-prefs.h (user_preferences): New field, |
|
8937 `gnuplot_has_multiplot'. |
|
8938 * user-prefs.cc (init_user_prefs): Initialize it. |
|
8939 (gnuplot_has_multiplot): New function. |
|
8940 |
|
8941 Sat Sep 30 16:52:57 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
8942 |
|
8943 * oct-gperf.h, octave.gperf: Newfiles. |
|
8944 * Makefile.in (DISTFILES): Add octave.gperf. |
|
8945 (INCLUDES): Add oct-gperf.h. |
|
8946 (oct-gperf.h): New rule. |
|
8947 (local-dist, dist): Depend on oct-gperf.h. |
|
8948 * lex.l (is_keyword): Use perfect hash function to lookup |
|
8949 keywords. |
|
8950 |
|
8951 Fri Sep 29 04:36:04 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
8952 |
|
8953 * version.h (OCTAVE_NAME_AND_VERSION): Add TARGET_HOST_TYPE to this. |
|
8954 |
|
8955 Thu Sep 28 00:03:51 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
8956 |
|
8957 * tree-expr.cc (tree_expression::is_logically_true): New function. |
|
8958 * tree-cmd.cc (tree_while_command::eval): Use it instead of |
|
8959 handling the test directly here. |
|
8960 * tree-misc.cc (tree_if_clause::eval): Likewise |
|
8961 |
|
8962 * tree-const.cc (TC_REP::force_numeric): Don't try to print value |
|
8963 of str_obj with %s. |
|
8964 |
|
8965 * error.cc (buffer_error_messages): Rename from |
|
8966 suppress_octave_error_messages. |
|
8967 (error_message_buffer): New global variable. |
|
8968 (verror): Handle buffering of messages. |
|
8969 (handle_message): New function. |
|
8970 (Ferror, Fwarning, Fusage): Use it instead of duplicating code. |
|
8971 |
|
8972 * octave.cc (Feval): Buffer error messages instead of supressing them. |
|
8973 |
|
8974 * lex.l (is_keyword): Recognize `try', `catch', and `end_try_catch'. |
|
8975 * parse.y (TRY, CATCH): New tokens. |
|
8976 (command): Recognize try-catch block. |
|
8977 (end_error): Add cases for unwind_protect_end and try_catch_end. |
|
8978 * token.h (end_tok_type): New field, try_catch_end. |
|
8979 * tree-cmd.h, tree-cmd.cc (tree_try_catch): New class. |
|
8980 * variables.cc (bind_global_error_variable): New Function. |
|
8981 (clear_global_error_variable): Likewise. |
|
8982 (install_builtin_variables): Add DEFCONST for __error_text__. |
|
8983 * help.cc (keywords): Add `try', `catch', and `end_try_catch'. |
|
8984 |
|
8985 * tree-cmd.cc (tree_unwind_protect::eval): Undo previous change. |
|
8986 |
|
8987 * dirfns.cc (Freaddir, Fmkdir, Frmdir): |
|
8988 Do tilde expansion on the argument. |
|
8989 |
|
8990 Tue Sep 26 00:10:29 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
8991 |
|
8992 * f-dassl.cc, f-fsolve.cc, f-lsode.cc, f-npsol.cc, f-quad.cc: |
|
8993 Don't try to figure out if the user-supplied functions take the |
|
8994 correct number of arguments. Simply let the call fail. |
|
8995 * variables.cc (takes_correct_nargs): Delete unused function. |
|
8996 * tree-expr.cc (tree_builtin::eval): Don't complain for too many |
|
8997 arguments to mapper functions. |
|
8998 * tree-expr.h, tree-expr.cc (tree_builtin, tree_function, tree_fvc): |
|
8999 Delete unused function max_expected_args. |
|
9000 |
|
9001 * defun.h (DEFUN): Delete unnecessary args nargin_min and nargout_max. |
|
9002 New arg unused_arg_flags. |
|
9003 (DEFUN_TEXT): Likewise. |
|
9004 * defun-dld.h (DEFUN_DLD_BUILTIN): Likewise. |
|
9005 * defun-int.h (DEFUN_INTERNAL, DECLARE_FUN, DEFINE_FUN_STRUCT): |
|
9006 Do the real work. |
|
9007 |
|
9008 * data.cc, dirfns.cc, dynamic-ld.cc, error.cc, f-balance.cc, |
|
9009 f-chol.cc, f-colloc.cc, f-dassl.cc, f-det.cc, f-eig.cc, f-expm.cc, |
|
9010 f-fft.cc, f-fft2.cc, f-find.cc, f-fsolve.cc, f-fsqp.cc, |
|
9011 f-givens.cc, f-hess.cc, f-ifft.cc, f-ifft2.cc, f-inv.cc, f-log.cc, |
|
9012 f-lpsolve.cc, f-lsode.cc, f-lu.cc, f-minmax.cc, f-npsol.cc, |
|
9013 f-pinv.cc, f-qpsol.cc, f-qr.cc, f-quad.cc, f-qzval.cc, f-rand.cc, |
|
9014 f-schur.cc, f-sort.cc, f-svd.cc, f-syl.cc, file-io.cc, help.cc, |
|
9015 input.cc, lex.l, load-save.cc, mappers.cc, octave-hist.cc, |
|
9016 octave.cc, octave.h, pager.cc, pr-output.cc, resource.cc, |
|
9017 sighandlers.cc, strfns.cc, sysdep.cc, timefns.cc, token.cc, |
|
9018 tree-const.cc, tree-expr.cc, tree-expr.h, tree-plot.cc, |
|
9019 unwind-prot.cc, unwind-prot.h, utils.cc, variables.cc, |
|
9020 variables.h, version.h, xdiv.cc: |
|
9021 Avoid unused variable warnings. |
|
9022 |
|
9023 * tree-expr.h (tree_oct_obj::print_value (ostream&)): |
|
9024 Delete name of unused arg. |
|
9025 (tree_fvc::save (ostream&, int, int): Likewise. |
|
9026 |
|
9027 * tree-const.h (tree_constant::tree_constant (magic_colon)): |
|
9028 Delete name of unused arg. |
|
9029 (tree_constant::tree_constant (all_va_args)): Likewise |
|
9030 (ColumnVector vector_value (int, int)): Likewise. |
|
9031 (ComplexColumnVector vector_value (int, int)): Likewise. |
|
9032 (Octave_object::eval (int, int, const Octave_object&): Likewise. |
|
9033 |
|
9034 * octave.cc (execute_startup_files): Look for octaverc first in |
|
9035 site/m, then in $(version)/m. |
|
9036 * variables.cc (get_local_site_defaults): New function. |
|
9037 * defaults.h.in (OCTAVE_LOCALFCNFILEDIR, OCTAVE_LOCALSTARTUPFILEDIR): |
|
9038 New macros. |
|
9039 * Makefile.in (defaults.h): Also substitute ${localfcndir}. |
|
9040 |
|
9041 Mon Sep 25 17:01:03 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
9042 |
|
9043 * variables.cc (install_builtin_variables): Add DEFCONST for "e". |
|
9044 |
|
9045 Fri Sep 22 02:18:45 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
9046 |
|
9047 * dirfns.cc (Fls): Delete ls_command after using it, not before. |
|
9048 |
|
9049 * input.h, input.cc (gnu_readline): Don't declare gnu_readline |
|
9050 `extern "C"'. |
|
9051 |
|
9052 * sysdep.h: Only declare gethostname if it is missing, then don't |
|
9053 declare it `extern "C"'. |
|
9054 |
|
9055 * dirfns.cc: Don't declare strerror(). |
|
9056 |
|
9057 * input.cc (command_generator): Use malloc, not xmalloc. Don't |
|
9058 declare xmalloc. |
|
9059 (gnu_readline): Don't declare this `extern "C"'. |
|
9060 |
|
9061 * octave-hist.cc: Don't declare history_get(). It is now in |
|
9062 readline/history.h. |
|
9063 |
|
9064 * input.cc: Don't declare history_get(). It is now in |
|
9065 readline/readline.h. |
|
9066 |
|
9067 * resource.cc: Don't surround include of sys/resource.h in |
|
9068 `extern "C" { }'. |
|
9069 |
|
9070 * fnmatch.h [__cplusplus]: Surround contents in `extern "C" { }'. |
|
9071 * load-save.cc, symtab.cc, variables.cc: Don't surround |
|
9072 fnmatch.h include in `extern "C" { }'. |
|
9073 |
|
9074 * help.cc: Don't #undef __FUNCTION_DEF before including |
|
9075 readline/tilde.h. |
|
9076 |
|
9077 * dirfuns.cc, file-io.cc, help.cc, load-save.cc, octave-hist.cc, |
|
9078 sysdep.cc, tree-plot.cc, utils.cc, variables.cc: |
|
9079 Don't surround readline includes in `extern "C" { }'. |
|
9080 |
|
9081 * sysdep.cc: Move all include statements to top of file. |
|
9082 |
|
9083 Tue Sep 19 01:58:21 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
9084 |
|
9085 * octave.cc (Fsystem): Use iprocstream *, and unwind_protect it. |
|
9086 * pager.cc (flush_output_to_pager): Likewise. |
|
9087 * dirfns.cc (Fls): Likewise. |
|
9088 * tree-plot.cc (plot_stream): Now a pointer. |
|
9089 (open_plot_stream): Deal with it. |
|
9090 (send_to_plot_stream, cleanup_tmp_files, do_external_plotter_cd): |
|
9091 Likewise. |
|
9092 |
|
9093 * procstream.cc (cleanup_iprocstream, cleanup_oprocstream): |
|
9094 New functions. |
|
9095 |
|
9096 * procstream.h, procstream.cc (class iprocstream, class oprocstream): |
|
9097 Keep track of pbuf. Initialize it to 0 in default constructors, |
|
9098 delete it in destructor. Don't call close in destructor. |
|
9099 |
|
9100 * sighandlers.cc (octave_set_signal_handler): New function. |
|
9101 Use this name instead of signal everywhere. |
|
9102 * help.cc (try_info): Likewise. |
|
9103 * pager.cc (flush_output_to_pager): Likewise. |
|
9104 * octave.cc (main): Likewise. |
|
9105 * octave-hist.cc (do_edit_history): Likewise. |
|
9106 |
|
9107 * input.cc (initialize_readline): Set rl_paren_string_delimiters |
|
9108 to avoid treating single quotes as string delimiters when doing |
|
9109 paren matching. |
|
9110 |
|
9111 * Makefile.in (SOURCES): Don't list Map.cc or SLStack.cc here. |
|
9112 |
|
9113 * tree-const.cc: Do include utils.h. |
|
9114 |
|
9115 * sysdep.cc: Don't surround terminal includes in extern "C". |
|
9116 Include them before readline.h. |
|
9117 |
|
9118 * Map.h: Don't include utils.h. |
|
9119 (CHNode::CHNode (const char*, const C&, CHNode *t): |
|
9120 Do strsave() inline. |
|
9121 |
|
9122 * input.cc (generate_possible_completions): Generate name list |
|
9123 even when text == 0. |
|
9124 (operate_and_get_next): Don't declare history_stifled, call |
|
9125 history_is_stifled () instead. |
|
9126 Don't declare history_length, or max_input_history either. |
|
9127 Check (where >= history_length - 1) too, as in recent versions of |
|
9128 bash. |
|
9129 |
|
9130 * user-prefs.h (user_prefs): New field, `completion_append_char'. |
|
9131 * user-prefs.cc (init_user_prefs): Initialize it. |
|
9132 (sv_completion_append_char): New function. |
|
9133 * variables.cc (install_builtin_variables): Install |
|
9134 completion_append_char. |
|
9135 * input.cc (command_generator): Use it. |
|
9136 |
|
9137 * SLList-expr.cc, SLList-misc.cc, SLList-plot.cc, SLList-tc.cc, |
|
9138 DLList-fi.cc: Include config.h. |
|
9139 * DLList-fi.cc: Include file-info.h, not file-io.h. |
|
9140 |
|
9141 Mon Sep 18 11:01:24 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
9142 |
|
9143 * octave.h (clean_up_and_exit): Tag with NORETURN instead of using |
|
9144 typedef trick. |
|
9145 * error.h (panic): Likewise. |
|
9146 * utils.h (jump_to_top_level): Likewise. |
|
9147 |
|
9148 * file-io.h: Protect from multiple includes with octave_file_io, |
|
9149 not octave_files. |
|
9150 |
|
9151 * file-info.h (class file_info): Convert to using std C++ string |
|
9152 class from char *. |
|
9153 * file-info.cc: Likewise. Don't include utils.h. |
|
9154 * file-io.cc (return_valid_file, fopen_file_for_user, |
|
9155 fflush_internal, do_scanf): Use operator ==, not strcmp. |
|
9156 (close_files): Call error with file.name ().data (), |
|
9157 not file.name (). |
|
9158 (freport_internal): Call form with file.mode ().data () and |
|
9159 file.name ().data (). |
|
9160 |
|
9161 * file-io.cc, file-io.h: Extract file_info class. |
|
9162 * file-info.cc, file-info.h: New files for file_info class. |
|
9163 |
|
9164 * user-prefs.h (user_prefs): New field, `beep_on_error'. |
|
9165 * user-prefs.cc (init_user_prefs): Initialize it. |
|
9166 (beep_on_error): New function. |
|
9167 * variables.cc (install_builtin_variables): Install beep_on_error. |
|
9168 * octave.cc (maximum_braindamage): Set beep_on_error to "true". |
|
9169 * error.cc (verror): Conditionally beep. |
|
9170 (error): Don't reset error_state until after verror is called. |
|
9171 |
|
9172 Sun Sep 17 16:41:25 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
9173 |
|
9174 * load-save.cc (read_mat_binary_data, read_ascii_data, |
|
9175 save_ascii_data, read_binary_data, save_binary_data): |
|
9176 Handle string arrays. |
|
9177 |
|
9178 Fri Sep 15 00:24:19 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
9179 |
|
9180 * user-prefs.cc (struct_levels_to_print, |
|
9181 set_output_max_field_width, set_output_precision, |
|
9182 set_save_precision): Eliminate unecessary kludge variable. |
|
9183 |
|
9184 * variables.cc (gobble_leading_white_space): New arg, |
|
9185 in_parts. Change all callers. |
|
9186 |
|
9187 * lex.l (HELP_FCN): Delete start state. The `help' command is now |
|
9188 handled the same as any other text-style function. |
|
9189 |
|
9190 * gripes.cc (gripe_invalid_value_specified): New function |
|
9191 * user-prefs.cc: Use it. |
|
9192 |
|
9193 * sysdep.cc (octave_words_big_endian): New global variable. |
|
9194 (ten_little_endians): New function. |
|
9195 (sysdep_init): Call it. |
|
9196 * load-save.cc (words_big_endian): Use this at run-time instead of |
|
9197 depending on WORDS_BIGENDIAN at compile-time. |
|
9198 |
|
9199 * symtab.h (SYMTAB_VARIABLES): New macro. |
|
9200 * variables.cc (Fclear): Use it instead of just |
|
9201 symbol_def::USER_VARIABLE when looking for variables. |
|
9202 |
|
9203 * octave.cc (main): If there is a file to execute, set |
|
9204 program_invocation_name and program_name to the name of the file |
|
9205 and argv to the remaining args. |
|
9206 (intern_argv): Only define argv if there are some remaining |
|
9207 arguments. |
|
9208 |
|
9209 * defun.h (DEFVAR_INT): New macro. |
|
9210 (DEFVAR): Define in terms of DEFVAR_INT. Delete args protect and |
|
9211 eternal. |
|
9212 (DEFCONST): New macro. |
|
9213 * variables.cc (install_builtin_variables): Use DEFCONST where |
|
9214 appropriate, change uses of DEFVAR to match new definition. |
|
9215 |
|
9216 * variables.cc (bind_builtin_variable): New variant that accepts |
|
9217 const tree_constant& value. |
|
9218 (install_builtin_variables): Properly alphabetize DEFVAR for this. |
|
9219 |
|
9220 * octave.cc (short_opts): Prefix with `+' to prevent argv |
|
9221 permutation. |
|
9222 (main): Don't use readline if forced_interactive. |
|
9223 (traditional): New file-scope variable. |
|
9224 (long_opts, usage_string, verbose_usage): Add `--traditional'. |
|
9225 (maximum_braindamage): New function. |
|
9226 (main): Call it if --traditional. |
|
9227 |
|
9228 * input.cc (do_input_echo): Print prompt correctly when |
|
9229 forced_interactive is either true or false. |
|
9230 |
|
9231 Thu Sep 14 00:54:06 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
9232 |
|
9233 * data.cc (Fstruct_elements): New function. |
|
9234 |
|
9235 * file-io.cc (Fumask): New function. |
|
9236 |
|
9237 * dirfns.cc (Fmkdir, Frmdir, Frename): New functions. |
|
9238 |
|
9239 * Makefile.in: Add rules and dependencies for building safe-stat.o |
|
9240 and safe-lstat.o. |
|
9241 |
|
9242 * mkdir.c, rename.c, rmdir.c: New files. |
|
9243 * Makefile.in (SOURCES): Include them in the list. |
|
9244 |
|
9245 * safe-xstat.hin, safe-xstat.cin: New files |
|
9246 * Makefile.in (DISTFILES): Include them in the list. |
|
9247 |
|
9248 * sighandlers.cc (octave_new_handler): Try to continue on memory |
|
9249 exhausted errors. |
|
9250 (sigfpe_handler): Improve error message. |
|
9251 |
|
9252 * Makefile.in: Use `ifndef omit_deps', not `ifndef $(omit_deps)'. |
|
9253 |
|
9254 * dirfns.cc (Freaddir): New function. |
|
9255 |
|
9256 * f-sort.cc: Complete rewrite. Now uses stable sort algorithm and |
|
9257 correctly handles complex matrices containing columns of all real |
|
9258 numbers. |
|
9259 |
|
9260 Wed Sep 13 03:16:40 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
9261 |
|
9262 * arith-ops.cc: Unconditionally #define DIVIDE_BY_ZERO_ERROR. |
|
9263 |
|
9264 * variables.cc (install_builtin_variables): Unconditionally |
|
9265 install NaN and nan. |
|
9266 |
|
9267 * mappers.cc (xisinf): Don't do bogus things if isinf, isnan, or |
|
9268 finite are missing. |
|
9269 (xfinite): Likewise. |
|
9270 |
|
9271 * sysdep.cc (octave_ieee_init): Don't set octave_NaN and |
|
9272 octave_Inf if values are not available. |
|
9273 |
|
9274 * resource.cc (mk_ru_map): Don't use ru_ or tv_ as prefixes to |
|
9275 Octave names for the structure members. |
|
9276 |
|
9277 Tue Sep 12 02:04:16 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
9278 |
|
9279 * procstream.h, procstream.cc: Rewrite. |
|
9280 |
|
9281 Mon Sep 11 18:42:05 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
9282 |
|
9283 * filemode.c: New file, from Emacs. |
|
9284 * Makefile.in (SOURCES): Add it to the list. |
|
9285 |
|
9286 * file-io.cc (Fstat, Flstat, mk_stat_map): New functions. |
|
9287 |
|
9288 * timefns.cc (mk_tm_map): Don't use tm_ as prefix to Octave names |
|
9289 for these structure members. |
|
9290 (extract_tm): Likewise. |
|
9291 (Flocaltime): Fix doc string to match. |
|
9292 |
|
9293 Thu Sep 7 02:04:27 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
9294 |
|
9295 * load-save.cc (save_user_variables): New function. |
|
9296 * sighandlers.cc (my_friendly_exit): Call it before exiting. |
|
9297 (sigfpe_handler): New function. |
|
9298 (install_signal_handlers) [__alpha__]: Install it. |
|
9299 |
|
9300 Wed Sep 6 14:35:10 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
9301 |
|
9302 * tree-cmd.cc (tree_unwind_protect::eval): Ignore errors and |
|
9303 suppress error messages while executing first block of |
|
9304 unwind_protect commands. |
|
9305 |
|
9306 * parse.y (end_error): Add missing case for unwind_protect_end. |
|
9307 |
|
9308 * tree-expr.cc (tree_builtin::eval): Complain if no arguments |
|
9309 given for mapper functions. |
|
9310 (tree_fvc::lookup_map_element): Print error message for invalid |
|
9311 structure reference. |
|
9312 |
|
9313 Tue Sep 5 02:04:12 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
9314 |
|
9315 * file-io.cc, input.cc, load-save.cc, octave.cc, sysdep.cc, |
|
9316 variables.cc, octave-hist.cc, utils.cc, f-schur.cc, f-rand.cc, |
|
9317 f-quad.cc, f-qpsol.cc, f-npsol.cc, f-lsode.cc, f-fsolve.cc, |
|
9318 f-dassl.cc, f-colloc.cc, f-balance.cc, error.cc, data.cc: |
|
9319 Add const qualifiers where appropriate. |
|
9320 |
|
9321 * dirfns.h: Include <ctime>, for time_t. |
|
9322 |
|
9323 * tempname.c, file-io.cc, help.cc, input.cc, octave-hist.cc, |
|
9324 octave.cc, sighandlers.cc, sysdep.cc, tree-expr.cc, tree-misc.cc, |
|
9325 tree-plot.cc, utils.cc, variables.cc, sysdir.h: |
|
9326 Move #include <sys/type.h> inside #ifdef HAVE_UNISTD_H. |
|
9327 |
|
9328 * syswait.h: New file. |
|
9329 * Makefile.in (INCLUDES): Add it to the list. |
|
9330 * file-io.cc, sighandlers.cc: Use it instead of including |
|
9331 sys/wait.h directly. |
|
9332 |
|
9333 * octave.cc: Include statdefs.h, not sys/stat.h. |
|
9334 |
|
9335 * sysdir.h: New file. |
|
9336 * Makefile.in (INCLUDES): Add it to the list. |
|
9337 * dirfns.cc, utils.cc: Use it instead of including the headers |
|
9338 directly. |
|
9339 |
|
9340 * pathlen.h: New file. |
|
9341 * Makefile.in (INCLUDES): Add it to the list. |
|
9342 * dirfns.cc, input.cc: Use it instead of including sys/param.h |
|
9343 directly. |
|
9344 * utils.cc: Don't include sys/param.h |
|
9345 |
|
9346 Sun Sep 3 18:52:59 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
9347 |
|
9348 * tree-const.cc (TC_REP::string_value): Return const char*, not |
|
9349 char *. |
|
9350 |
|
9351 * All .cc, .y, .l, .y files: Include <cctype>, not <ctype.h>, and |
|
9352 so on for all new C++ versions of these standard C headers. |
|
9353 |
|
9354 Thu Aug 31 17:09:38 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
9355 |
|
9356 * pathsearch.h: Also hide `string'. |
|
9357 |
|
9358 * oct-str.cc, oct-str.h: New files. |
|
9359 * Makefile.in: Add to the appropriate lists. |
|
9360 * tc-rep.h: Change char* to Octave_string* in anonymous union. |
|
9361 * tree-expr.cc (tree_matrix::eval): Handle multiple element strings. |
|
9362 * strfns.cc (toascii): Likewise. |
|
9363 * tree-const.cc (print_as_string): Likewise. |
|
9364 (TC_REP::force_numeric, TC_REP::rows, TC_REP::columns, |
|
9365 TC_REP::double_value, TC_REP::complex_value, TC_REP::matrix_value, |
|
9366 TC_REP::complex_matrix_value, TC_REP::convert_to_str): Likewise. |
|
9367 (TC_REP::print): Call octave_print_internal for string case. |
|
9368 (all_strings): New function. |
|
9369 Fix constructors to use new data structure. |
|
9370 * pr-output.cc (octave_print_internal): Add version for strings. |
|
9371 * Array-string.cc: New file. |
|
9372 |
|
9373 * octave.cc (octave_argv): New global variable. |
|
9374 (intern_argv): New function. |
|
9375 (main): Fix argument parsing to do the right thing for arguments |
|
9376 to executable scripts. |
|
9377 * variables.cc: Add DEFUNs for argv, program_invocation_name, and |
|
9378 program_name. |
|
9379 |
|
9380 * defun.h (DEFVAR): Fix comment. |
|
9381 |
|
9382 Thu Aug 24 00:02:00 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
9383 |
|
9384 * file-io.cc (fgets_internal): Make second arg optional. Add |
|
9385 optional arg `strip_final_newline'. |
|
9386 (Ffgets): Change to match new definition of fgets_internal. |
|
9387 (Ffgetl): Implement using the new fgets_internal. |
|
9388 |
|
9389 * f-rand.cc (Frand): Update code for sizing return value to match |
|
9390 that used by ones, zeros, and eye. |
|
9391 |
|
9392 Wed Aug 23 19:52:45 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
9393 |
|
9394 * tree-const.cc (do_vector_assign): Don't crash for |
|
9395 A(range) = scalar, or A(matrix) = scalar. |
|
9396 |
|
9397 * f-dassl.cc (set_dassl_option): Rename from do_dassl_option. |
|
9398 (show_dassl_option): New function. |
|
9399 (Fdassl_options): Handle single arg. |
|
9400 * f-fsolve.cc (set_fsolve_option): Rename from do_fsolve_option. |
|
9401 (show_fsolve_option): New function. |
|
9402 (Ffsolve_options): Handle single arg. |
|
9403 * f-fsqp.cc (set_fsqp_option): Rename from do_fsqp_option. |
|
9404 (show_fsqp_option): New function. |
|
9405 (Ffsqp_options): Handle single arg. |
|
9406 * f-lpsolve.cc (set_lpsolve_option): Rename from do_lpsolve_option. |
|
9407 (show_lpsolve_option): New function. |
|
9408 (Flpsolve_options): Handle single arg. |
|
9409 * f-lsode.cc (set_lsode_option): Rename from do_lsode_option. |
|
9410 (show_lsode_option): New function. |
|
9411 (Flsode_options): Handle single arg. |
|
9412 * f-npsol.cc (set_npsol_option): Rename from do_npsol_option. |
|
9413 (show_npsol_option): New function. |
|
9414 (Fnpsol_options): Handle single arg. |
|
9415 * f-qpsol.cc (set_qpsol_option): Rename from do_qpsol_option. |
|
9416 (show_qpsol_option): New function. |
|
9417 (Fqpsol_options): Handle single arg. |
|
9418 * f-quad.cc: (set_quad_option): Rename from do_quad_option. |
|
9419 (show_quad_option): New function. |
|
9420 (Fquad_options): Handle single arg. |
|
9421 (Fquad): Doc fix. |
|
9422 |
|
9423 Tue Aug 22 00:38:05 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
9424 |
|
9425 * tree-plot.cc (do_external_plotter_cd): New function. |
|
9426 * dirfns.cc (octave_change_to_directory): New function. If cd is |
|
9427 successful, also call do_external_plotter_cd(). |
|
9428 (Fcd): Call octave_change_to_directory(), not change_to_directory(). |
|
9429 |
|
9430 * pr-output.cc (pr_any_float): Change declaration of counter to |
|
9431 size_t to avoid gcc warnings. |
|
9432 |
|
9433 * idx-vector.cc, octave-hist.cc, tree-const.cc, tree-expr.cc, |
|
9434 tree-misc.cc, utils.cc, xpow.cc, Map.cc: |
|
9435 Update for change in for loop variable scope for gcc 2.7.0. |
|
9436 |
|
9437 Mon Aug 21 19:34:53 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
9438 |
|
9439 * tree-const.cc (fortran_style_matrix_assignment): Properly handle |
|
9440 case of complex LHS, real RHS. |
|
9441 |
|
9442 * Makefile.in: Only include dependency files if $(omit_deps) is |
|
9443 not set. |
|
9444 |
|
9445 Wed Jul 5 00:03:58 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
9446 |
|
9447 * sysdep.cc: Explicitly include string.h. |
|
9448 |
|
9449 Sun Jun 25 00:18:10 1995 John Eaton <jwe@schoch.che.utexas.edu> |
|
9450 |
|
9451 * load-save.cc (too_large_for_float (const Matrix&)): |
|
9452 Extract elements as doubles, not Complex. |
|
9453 |
|
9454 Sat Jun 24 22:59:15 1995 John Eaton <jwe@schoch.che.utexas.edu> |
|
9455 |
|
9456 * pr-output.cc (any_element_is_inf_or_nan): Declare extern, not static. |
|
9457 * f-svd.cc (Fsvd): Call here to avoid trying to take SVD of matrix |
|
9458 containing Inf or NaN values. |
|
9459 |
|
9460 * pr-output.cc (bit_format): New file-scope variable. |
|
9461 (set_format, pr_any_float): Handle bit_format. |
|
9462 (octave_print_internal): Handle bit_format like bank_format. |
|
9463 (init_format_state): Initialize bit_format. |
|
9464 (set_format_style): Allow `format bit' and `format native-bit'. |
|
9465 |
|
9466 Thu Jun 8 15:20:26 1995 John Eaton <jwe@schoch.che.utexas.edu> |
|
9467 |
|
9468 * mappers.cc (arg, imag, signum): If arg is NaN, return NaN. |
|
9469 |
|
9470 Mon May 15 14:47:04 1995 John Eaton <jwe@schoch.che.utexas.edu> |
|
9471 |
|
9472 * pager.cc (Fdiary): Initialize diary_file here, not in the |
|
9473 file-scope declaration. |
|
9474 |
|
9475 * tree-expr.cc (tree_index_expression::eval): |
|
9476 Handle nargin == 0 the same as other cases. |
|
9477 |
|
9478 Tue May 2 10:02:23 1995 John Eaton <jwe@schoch.che.utexas.edu> |
|
9479 |
|
9480 * load-save.cc (do_double_format_conversion): Add missing breaks. |
|
9481 (do_float_format_conversion): Likewise. |
|
9482 |
|
9483 Mon May 1 13:50:24 1995 John Eaton <jwe@schoch.che.utexas.edu> |
|
9484 |
|
9485 * Makefile.in (OCTAVE_LIBS): Add @LIBPLPLOT@ to the list. |
|
9486 |
|
9487 * timefns.cc (Ftime): Handle GETTIMEOFDAY_NO_TZ. |
|
9488 |
|
9489 * Makefile.in (SOURCES): Delete tc-rep.cc, tc-rep-ass.cc, and |
|
9490 tc-rep-idx.cc from the list. |
|
9491 |
|
9492 * tree-const.h: Add #pragma interface. |
|
9493 * tree-const.cc: Add contents of tc-rep.cc, tc-rep-ass.cc, and |
|
9494 tc-idx.cc to this file. Add #pragma implementation. This makes |
|
9495 tree-const.cc large, but makes the final binary smaller. |
|
9496 |
|
9497 * unwind-prot.h unwind-prot.cc token.cc token.h procstream.cc |
|
9498 procstream.h idx-vector.cc idx-vector.h symtab.cc symtab.h |
|
9499 oct-map.cc oct-map.h oct-obj.cc oct-obj.h tree-plot.h tree-plot.cc |
|
9500 tree-misc.cc tree-misc.h tree-expr.cc tree-expr.h tree-cmd.cc |
|
9501 tree-cmd.h tree-base.cc tree-base.h: |
|
9502 Add #pragma interface/implementation. |
|
9503 |
|
9504 * Makefile.in (OCTAVE_LIBS): Delete @LIBINFO@ from list. |
|
9505 * help.cc: Don't include info headers or extern declarations for |
|
9506 functions from info. |
|
9507 (try_info): Call info as a subprocess. Delete second arg. |
|
9508 Handle SIGINT here, not in help_from_info(). |
|
9509 (help_from_info): Complain if info doesn't work. |
|
9510 |
|
9511 * defun-dld.h (DEFUN_DLD_BUILTIN) [OCTAVE_LITE && MAKE_BUILTINS]: |
|
9512 If ! WITH_DLD, simply emit a character string constant. |
|
9513 |
|
9514 Fri Apr 28 15:23:06 1995 John Eaton <jwe@schoch.che.utexas.edu> |
|
9515 |
|
9516 * lex.l ({IDENT}{S}*): Don't delete tok. That's handled by |
|
9517 strip_trailing_whitespace() now. |
|
9518 (<HELP_FCN>[^ \t\n]*{S}*|<TEXT_FCN>[^ \t\n\;\,]*{S}*): Ditto. |
|
9519 |
|
9520 * pathsearch.h: Include kpathsea/progname.h. |
|
9521 * octave.cc (initialize_globals): Call kpse_set_progname(). |
|
9522 |
|
9523 * token.h: Declare copy constructor and operator = private. |
|
9524 * token.cc: Abort if copy constructor or operator = is used. |
|
9525 |
|
9526 Thu Apr 27 13:54:39 1995 John Eaton <jwe@schoch.che.utexas.edu> |
|
9527 |
|
9528 * tree-expr.cc (lookup_map_element): Don't list default argument |
|
9529 values here too. |
|
9530 |
|
9531 * pr-output.cc (hex_format): New file-scope variable. |
|
9532 (set_format, pr_any_float): Handle hex_format. |
|
9533 (octave_print_internal): Handle hex_format like bank_format. |
|
9534 (init_format_state): Initialize hex_format. |
|
9535 (set_format_style): Allow `format hex' and `format native-hex'. |
|
9536 |
|
9537 * variables.cc (bind_ans): Create ans_id each time with new and |
|
9538 ask tree_simple_assignment_expression to handle cleaning it up. |
|
9539 This apparently plugs a memory leak. |
|
9540 |
|
9541 * help.cc (Ftype): Don't try to print map constants. Handle |
|
9542 references to structure members. |
|
9543 |
|
9544 Wed Apr 26 12:40:59 1995 John Eaton <jwe@schoch.che.utexas.edu> |
|
9545 |
|
9546 * input.cc (generate_struct_completions): New function. |
|
9547 (generate_possible_completions): Likewise. |
|
9548 (looks_like_struct): Likewise. |
|
9549 (command_generator): Handle completion of struct variables. |
|
9550 |
|
9551 * tree-expr.h, tree-expr.cc (tree_fvc::lookup_map_element): |
|
9552 Add insert and silent args. |
|
9553 |
|
9554 * oct-map.cc: New file. |
|
9555 * Makefile.in (SOURCES): Add it to the list. |
|
9556 |
|
9557 Mon Apr 24 09:41:02 1995 John Eaton <jwe@schoch.che.utexas.edu> |
|
9558 |
|
9559 * variables.cc (Fexist): Handle structure references too. |
|
9560 |
|
9561 * tree-const.cc (lookup_map_element (const char*, int, int): |
|
9562 New function. |
|
9563 (lookup_map_element (SLList<char*>&, int, int): New arg, silent. |
|
9564 * tc-rep.cc (lookup_map_element): New arg, silent. If nonzero, |
|
9565 don't call error(). |
|
9566 |
|
9567 * tc-rep.h (is_empty): Define here. |
|
9568 * tree-const.h (is_empty): Hand off to TC_REP::is_empty(). |
|
9569 |
|
9570 * data.cc (Fstruct_contains): Call lookup_map_element on args(0) |
|
9571 instead of extracting the map and calling contains() on it. |
|
9572 |
|
9573 * parse.y (EPLUS, EMINUS): New tokens. |
|
9574 (simple_expr): Handle EPLUS, EMINUS the same as `+' and `-'. |
|
9575 * lex.l (".+", ".-"): New patterns. Match these separately to |
|
9576 disallow using them as unary operators. |
|
9577 |
|
9578 * lex.l (next_token_is_bin_op): Simplify by noting that spacing |
|
9579 only matters for those tokens that can also be unary ops. |
|
9580 |
|
9581 Fri Apr 21 14:34:45 1995 John Eaton <jwe@schoch.che.utexas.edu> |
|
9582 |
|
9583 * load-save.cc (read_ascii_data): Allow reading of empty |
|
9584 matrices. |
|
9585 |
|
9586 * tc-rep-ass.cc (vector_assignment): Only assert that we are not |
|
9587 doing fortran-style indexing and that nr <= 1 || nc <= 1. |
|
9588 (do_vector_assign): Handle assignment of [] when one dimension is |
|
9589 zero and the other is anything. |
|
9590 |
|
9591 Thu Apr 20 13:56:21 1995 John Eaton <jwe@schoch.che.utexas.edu> |
|
9592 |
|
9593 * tc-rep-ass.cc (delete_rows, delete_columns): Simply return if |
|
9594 num_to_delete is 0. |
|
9595 |
|
9596 * lex.l (handle_identifier): Don't match plot option keywords |
|
9597 inside parentheses or braces. |
|
9598 |
|
9599 * variables.cc (parse_fcn_file): Also delete tmp_help_txt if |
|
9600 running a script. |
|
9601 |
|
9602 * tree-cmd.h (tree_command): Add destructor. |
|
9603 |
|
9604 * tree-expr.h tree_simple_assignment_expression (lhs_idx_expr): |
|
9605 Hang on to idx_expr, not just its parts so it can be deleted. |
|
9606 (init): Initialize it. |
|
9607 * tree-expr.cc (~tree_simple_assignment_expression): Delete it. |
|
9608 |
|
9609 * tree-expr.h (tree_multi_val_ret, tree_oct_obj, tree_fvc, |
|
9610 tree_identifier, tree_builtin, tree_function): Add destructors. |
|
9611 * tree-expr.cc (tree_function::~tree_function): Delete some stuff. |
|
9612 |
|
9613 * tree-misc.h (tree_va_return_list): Add destructor. |
|
9614 |
|
9615 * octave.cc (__builtin_new, __builtin_delete): Provide our own, |
|
9616 for debugging. |
|
9617 |
|
9618 * utils.cc (strconcat): Don't depend on the return value from |
|
9619 strcat. |
|
9620 (file_in_path): Simplify logic. |
|
9621 |
|
9622 * parse.y (maybe_convert_to_ans_assign): Create ans_id each time |
|
9623 with new and ask tree_simple_assignment_expression to handle |
|
9624 cleaning it up. This apparently plugs a memory leak. |
|
9625 |
|
9626 * lex.l (strip_trailing_whitespace): Declare retval static. |
|
9627 Delete it before saving next string. |
|
9628 |
|
9629 * error.cc (Ferror): Do call error() for empty string args. |
|
9630 (error_1): Don't print anything if fmt is "" or "\n", but do set |
|
9631 the error state appropriately. |
|
9632 |
|
9633 * tree-cmd.cc (tree_unwind_protect::eval): Handle return and break |
|
9634 in the `try' part of the statement. |
|
9635 |
|
9636 Mon Apr 10 19:29:44 1995 John Eaton <jwe@schoch.che.utexas.edu> |
|
9637 |
|
9638 * f-expm.cc, f-givens.cc, f-qzval.cc, f-syl.cc, f-rand.cc: |
|
9639 Where appropriate, declare Fortran functions to take reference |
|
9640 instead of pointer args. Change callers. |
|
9641 |
|
9642 * mappers.cc: Declare Fortran functions to take reference instead |
|
9643 of pointer args. Change callers. |
|
9644 |
|
9645 * gamma.c, lgamma.c, erfc.c, erf.c, atanh.c, asinh.c, acosh.c: |
|
9646 Declare Fortran functions to take reference instead of pointer |
|
9647 args. |
|
9648 |
|
9649 Sun Apr 9 19:38:53 1995 John Eaton <jwe@schoch.che.utexas.edu> |
|
9650 |
|
9651 * file-io.cc (Fpopen, Fpclose, Fexecute, Fsync_system, |
|
9652 Fasync_system, Fwaitpid, Fmkfifo, Funlink): New functions. |
|
9653 |
|
9654 * sighandlers.cc (sigchld_handler): New function. |
|
9655 (install_signal_handlers): Add call to install |
|
9656 sigchld_handler. (This is #if 0'd out, waiting for code to help |
|
9657 determine which child exited and what to do about it). |
|
9658 |
|
9659 * tree-expr.h (tree_oct_obj): New class. |
|
9660 |
|
9661 * tree-expr.h (tree_multi_assignment_expression::preserve): New |
|
9662 data member. Add arg with default value to constructors. Change |
|
9663 callers as necessary. |
|
9664 * tree-expr.cc (~tree_multi_assignment_expression): Conditionally |
|
9665 delete lhs. |
|
9666 |
|
9667 * parse.y (make_multi_val_ret): Pass matrix instead of getting it |
|
9668 from the global matrix list. |
|
9669 (expression): Extract matrix from matrix list before calling |
|
9670 make_multi_val_ret(). |
|
9671 |
|
9672 * parse.y (command): Handle new for loop syntax for structures. |
|
9673 |
|
9674 * tree-plot.h (subplot_list): Include tree_print_code() in |
|
9675 initializer lists for constructors. |
|
9676 * tree-expr.h (tree_statement_list, tree_argument_list, |
|
9677 tree_parameter_list, tree_return_list, tree_global_init_list, |
|
9678 tree_if_command_list, ): Likewise. |
|
9679 |
|
9680 * tree-cmd.h (tree_for_command::id_list): New data member. |
|
9681 (tree_for_command (tree_return_list*, tree_expression*, |
|
9682 tree_statement_list*, int, int)): Likewise. |
|
9683 * tree-cmd.cc (tree_for_command::eval): Handle for loops with |
|
9684 structures. |
|
9685 (do_for_loop_once (tree_return_list*, Octave_object&, int&)): |
|
9686 New form for handling for loops with structures. |
|
9687 |
|
9688 * sysdep.cc (octave_ieee_init): Determine floating point format |
|
9689 here. |
|
9690 (native_float_format): New global variable. |
|
9691 (Fisieee): Compute return value from native_float_format, not by |
|
9692 using preprocessor macros. |
|
9693 * sysdep.h (enum floating_point_format): Move declaration here. |
|
9694 * load-save.cc: From here. |
|
9695 Always define all floating point format conversion routines. |
|
9696 (do_double_format_conversion, do_float_format_conversion): |
|
9697 Use native_float_format instead of preprocessor macros. |
|
9698 |
|
9699 Sat Apr 8 15:41:35 1995 John Eaton <jwe@schoch.che.utexas.edu> |
|
9700 |
|
9701 * Makefile (TEMPLATE_SRC): New variable. |
|
9702 (DISTFILES): Add $(TEMPLATE_SRC). |
|
9703 (SOURCES): Delete Map.cc and SLStack.cc from here. |
|
9704 |
|
9705 * variables.cc (install_builtin_variables): Use OCTAVE_VERSION |
|
9706 instead of version_string to initialize OCTAVE_VERSION. |
|
9707 * version.h (version_string): Delete. |
|
9708 |
|
9709 * getopt.c (_getopt_internal): Initialize indfound to avoid warning. |
|
9710 |
|
9711 Fri Apr 7 15:29:41 1995 John Eaton <jwe@schoch.che.utexas.edu> |
|
9712 |
|
9713 * tc-inlines.h (REP_RHS_MATRIX): Just check to see if tc is real |
|
9714 or complex. If conversion fails, return. |
|
9715 |
|
9716 Thu Apr 6 00:10:47 1995 John Eaton <jwe@schoch.che.utexas.edu> |
|
9717 |
|
9718 * data.cc (Fstruct_contains): New function. |
|
9719 |
|
9720 * tc-rep.cc (print_code): Add extra parens around while condition |
|
9721 to avoid warning. |
|
9722 * utils.cc (undo_string_escapes): Likewise. |
|
9723 * input.cc (decode_prompt_string): Likewise. Also rewrite if |
|
9724 statement to avoid warning. |
|
9725 |
|
9726 Tue Apr 4 22:54:17 1995 John Eaton <jwe@schoch.che.utexas.edu> |
|
9727 |
|
9728 * tree-expr.cc (tree_multi_assignment_expression::eval, |
|
9729 tree_simple_assignment_expression::eval): Call print_constant |
|
9730 even if user_pref.print_answer_id_name is false. |
|
9731 |
|
9732 Mon Apr 3 17:57:14 1995 John Eaton <jwe@schoch.che.utexas.edu> |
|
9733 |
|
9734 * tc-inlines.h (TC_REP): Avoid redefinition. |
|
9735 |
|
9736 * tree-const.h (do_binary_op, do_unary_op): Declare as friends of |
|
9737 tree_constant class too. |
|
9738 |
|
9739 * tree-plot.h (subplot_using::have_values): Delete data member. |
|
9740 * tree-plot.cc (subplot_using::eval): Always recompute values. |
|
9741 |
|
9742 Fri Mar 31 10:18:32 1995 John Eaton <jwe@schoch.che.utexas.edu> |
|
9743 |
|
9744 * tc-rep.cc (print): Print open brace for structures here. |
|
9745 * tree-expr.cc (print_constant): Not here. |
|
9746 |
|
9747 * symtab.cc (define): Don't delete arg if sv_fcn fails. |
|
9748 |
|
9749 * tree-const.cc (print): New function. Create ostrstream buffer |
|
9750 and pass it to rep->print(). |
|
9751 * tree-const.h (eval (int)): Call print(), not rep->print(). |
|
9752 * tc-rep.cc (structure_indent_level): New file-scope variable. |
|
9753 (print): New arg, output_buf, is stream to print to. |
|
9754 Print values of structure elements too. |
|
9755 |
|
9756 * user-prefs.h (user_preferences): New field, struct_levels_to_print. |
|
9757 * user-prefs.cc (struct_levels_to_print): New function. |
|
9758 * variables.cc (install_builtin_variables): Add DEFVAR for new |
|
9759 variable struct_levels_to_print. |
|
9760 |
|
9761 * tree-const.cc (print_as_scalar, print_as_structure): Move here |
|
9762 from tree-expr.cc and make extern. |
|
9763 |
|
9764 * tree-expr.cc (print_as_structure): New function. |
|
9765 (print_constant): Use it. |
|
9766 |
|
9767 * tree-expr.cc (print_constant): New arg, print_padding. |
|
9768 (tree_simple_assignment_expression::eval): Use print_constant |
|
9769 instead of duplicating code here. |
|
9770 (tree_multi_assignment_expression::eval): Likewise. |
|
9771 |
|
9772 Thu Mar 30 13:24:11 1995 John Eaton <jwe@schoch.che.utexas.edu> |
|
9773 |
|
9774 * Makefile.in (SOURCES): Add resource.cc. |
|
9775 * resource.cc: New file, extracted from timefns.cc. |
|
9776 (Fgetrusage): New function. |
|
9777 * timefns.cc (cputime): Delete (now implemented in a function file |
|
9778 using new getrusage function). |
|
9779 |
|
9780 Wed Mar 29 22:52:42 1995 John Eaton <jwe@schoch.che.utexas.edu> |
|
9781 |
|
9782 * Makefile.in (SOURCES): Add strftime.c. |
|
9783 * strftime.c: New file, from sh-utils distribution. |
|
9784 |
|
9785 * timefns.cc (mk_tm_map, extract_tm, Ftime, Fgmtime, Flocaltime, |
|
9786 Fmktime, Fstrftime): New basic time functions. |
|
9787 (Fclock, Fdate): Delete (now implemented in function files using new |
|
9788 time functions). |
|
9789 |
|
9790 Tue Mar 28 17:51:51 1995 John Eaton <jwe@schoch.che.utexas.edu> |
|
9791 |
|
9792 * file-io.cc (return_valid_file, do_printf, do_scanf, |
|
9793 fclose_internal, feof_internal, ferror_internal, fflush_internal, |
|
9794 fgets_internal, fopen_internal, fread_internal, freport_internal, |
|
9795 frewind_internal, fseek_internal, ftell_internal, |
|
9796 fwrite_internal): Declare static. |
|
9797 * file-io.h: Delete extern declarations for them. |
|
9798 |
|
9799 Fri Mar 24 09:52:50 1995 John Eaton <jwe@schoch.che.utexas.edu> |
|
9800 |
|
9801 * pr-output.cc (pr_col_num_header): New function. |
|
9802 (compact_format): New file-scope variable. |
|
9803 (set_format_style): Handle loose and compact formats. |
|
9804 (octave_print_internal (ostream&, const ComplexMatrix&, int)): |
|
9805 Replace duplicate code with call to pr_col_num_header(). |
|
9806 (octave_print_internal (ostream&, const Matrix&, int): Likewise. |
|
9807 (octave_print_internal (ostream&, const Range&, int): Likewise. |
|
9808 |
|
9809 Tue Mar 21 08:44:48 1995 John Eaton <jwe@schoch.che.utexas.edu> |
|
9810 |
|
9811 * mappers.cc (xgamma): Always use Slatec library function. |
|
9812 * (xlgamma): Likewise. |
|
9813 * Makefile.in (SOURCES): Don't include lgamma.c. |
|
9814 |
|
9815 Fri Mar 17 22:38:39 1995 John Eaton <jwe@schoch.che.utexas.edu> |
|
9816 |
|
9817 * tc-rep.cc (TC_REP::new): Don't try to keep track of newlist_tail. |
|
9818 Explicitly initialize newlist to zero. |
|
9819 * tree-const.cc (tree_constant::operator new): Likewise. |
|
9820 |
|
9821 Fri Mar 10 12:40:24 1995 John Eaton <jwe@schoch.che.utexas.edu> |
|
9822 |
|
9823 * tree-cmd.cc (quit_loop_now): Declare inline. |
|
9824 (tree_for_command::do_for_loop_once): Split into two versions, one |
|
9825 for the general case and one for when the loop variable is a |
|
9826 simple identifier. |
|
9827 (DO_LOOP): New macro. Move tests outside of loop. |
|
9828 (tree_for_command::eval): Speed up by checking to see if loop |
|
9829 variable is a simple identifier and by using DO_LOOP. |
|
9830 |
|
9831 * tree-const.h: New union of rep and freeptr. The freeptr element |
|
9832 is used for our custom memory management functions. |
|
9833 |
|
9834 * tc-rep.h: Add freeptr element to anonymous union (for our custom |
|
9835 memory management functions). |
|
9836 |
|
9837 * tree-const.cc (newlist, newlist_grow_size, newlist_tail): New |
|
9838 static variables. |
|
9839 (tree_constant::operator new): Always define to allow more |
|
9840 efficient allocation of single tree_constants. |
|
9841 (tree_constant::operator delete): Likewise, handle deletion of the |
|
9842 memory we allocate. |
|
9843 |
|
9844 * tc-rep.cc (newlist, newlist_grow_size, newlist_tail): New static |
|
9845 variables. |
|
9846 (tree_constant::operator new): Always define to allow more |
|
9847 efficient allocation of single tree_constants. |
|
9848 (tree_constant::operator delete): Likewise, handle deletion of the |
|
9849 memory we allocate. |
|
9850 |
|
9851 Fri Mar 3 14:00:08 1995 John Eaton <jwe@schoch.che.utexas.edu> |
|
9852 |
|
9853 * error.cc (verror): Terminate output_buf with ends. |
|
9854 |
|
9855 * statdefs.h: Use C-style comment in first line instead of |
|
9856 C++-style comment. |
|
9857 |
|
9858 Mon Feb 27 10:11:18 1995 John Eaton <jwe@schoch.che.utexas.edu> |
|
9859 |
|
9860 * parse.y (maybe_convert_to_ans_assign): Only lookup ans once. |
|
9861 * variables.cc (bind_ans): New function. |
|
9862 * tree-expr.cc (tree_identifier::eval (int)): Use it here. |
|
9863 (tree_identifier::eval (int, int, const Octave_object&): And here. |
|
9864 |
|
9865 * tree-expr.cc (install_nargin_and_nargout): New function. |
|
9866 * tree-expr.h (tree_function::tree_function (tree_statement_list *, |
|
9867 symbol_table *, int, int)): Call it. |
|
9868 |
|
9869 * tree-expr.cc (tree_function::bind_nargin_and_nargout): New function. |
|
9870 (tree_function::eval): Call it insead of the one from variables.cc. |
|
9871 |
|
9872 * variables.cc (bind_nargin_and_nargout): #if 0 out. |
|
9873 |
|
9874 Sun Feb 26 00:17:06 1995 John Eaton <jwe@schoch.che.utexas.edu> |
|
9875 |
|
9876 * load-save.cc (Fload, Fsave): Free fname returned by tilde_expand(). |
|
9877 * dirfns.cc (Fls): Likewise. |
|
9878 |
|
9879 * tree-expr.cc (tree_multi_assignment_expression::eval (int, int, |
|
9880 const Octave_object&)): Call tree_return_list::operator () (Pix) |
|
9881 explicitly. |
|
9882 |
|
9883 * octave.cc (initialize_globals): Put TEXMF in the environment for |
|
9884 kpthsea. |
|
9885 |
|
9886 * Makefile.in (OCTAVE_LIBS): Use @LIBINFO@ and @LIBREADLINE@, |
|
9887 substituted by configure. Use kpathsea.a, not libkpathsea, so we |
|
9888 don't have to modify the kpathsea Makefile. |
|
9889 |
|
9890 Sat Feb 25 18:59:26 1995 John Eaton <jwe@schoch.che.utexas.edu> |
|
9891 |
|
9892 * pathsearch.cc: New file. |
|
9893 * pathsearch.h: New file. |
|
9894 * Makefile.in (INCLUDES): Include it in the list. |
|
9895 * dynamic-ld.cc, help.cc, utils.cc: Use it instead of repeating |
|
9896 identical code multiple times. |
|
9897 |
|
9898 * variables.cc (install_builtin_variables): Only DEFVAR |
|
9899 suppress_verbose_help_message if USE_GNU_INFO. |
|
9900 |
|
9901 * help.cc (Fhelp): Only handle -i if USE_GNU_INFO. |
|
9902 (additional_help_message): Only print message if USE_GNU_INFO. |
|
9903 (builtin_help): New function. |
|
9904 (help_from_info): New function. Print warning if not USE_GNU_INFO. |
|
9905 |
|
9906 See ChangeLog.1 in the top level directory for earlier changes. |