3068
|
1 Mon Jul 7 21:14:07 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2 |
|
3 * DLD-FUNCTIONS/qr.cc (Fqr): Correctly handle nargout == 0. |
|
4 |
3067
|
5 Wed Jul 2 16:47:09 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
6 |
|
7 * matherr.c: New file. Move matherr function here. |
|
8 * sysdep.cc: From here. |
|
9 * Makefile.in (DIST_SRC): Add matherr.c to the list. |
|
10 |
|
11 * error.cc (handle_message): Avoid bug in g++ snapshot. |
|
12 |
3065
|
13 Thu Jun 26 22:04:09 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
14 |
|
15 * utils.cc (file_in_path): Add default load path to PATH arg if |
|
16 it begins or ends with a colon. |
|
17 |
3060
|
18 Wed Jun 25 13:31:06 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
19 |
|
20 * oct-lvalue.h (octave_lvalue::struct_elt_ref): Ensure val is unique. |
|
21 |
|
22 Fri Jun 20 12:33:35 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
23 |
|
24 * toplev.cc (cmd_death_handler): New function. |
|
25 (run_command_and_return_output): Insert pid of command in |
|
26 octave_child_list along with pointer to cmd_death_handler so we |
|
27 can get the exit status without having to block SIGCHLD. |
|
28 (cleanup_iprocstream): Remove pid of command from octave_child_list. |
|
29 |
3053
|
30 Sun Jun 15 16:11:13 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
31 |
3054
|
32 * OPERATORS/op-cs-s.cc (ldiv): Doh, v1 is complex, v2 is real. |
|
33 |
3053
|
34 * Makefile.in (DISTFILES): Add mkops to the list. |
|
35 (dist): Correctly link files in DLD-FUNCTIONS, OPERATORS, and |
|
36 TEMPLATE-INST subdirectories. |
|
37 |
3040
|
38 Fri Jun 6 04:30:57 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
39 |
3042
|
40 * DLD-FUNCTIONS/npsol.cc, DLD-FUNCTIONS/qpsol.cc, |
|
41 DLD-FUNCTIONS/fsqp.cc: Delete. |
|
42 * Makefile.in (DLD_XSRC): Remove them from the list. |
|
43 |
3040
|
44 * utils.cc (search_path_for_file): New arg, do_tilde_expansion. |
|
45 If TRUE, perform tilde expansion on path before searching. |
|
46 (file_in_path): Call search_path_for_file with do_tilde_expansion |
|
47 set to false, since we've already performed tilde expansion on the |
|
48 load path. |
|
49 |
|
50 * defaults.cc (loadpath): Perform tilde expansion here. |
|
51 |
3029
|
52 Thu Jun 5 01:42:39 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
53 |
3034
|
54 * Makefile.in: Make building of static library optional. |
3036
|
55 (liboctave.$(SHLEXT_VER)): Add $(SONAME_FLAGS) to command. |
3034
|
56 |
3033
|
57 * dynamic-ld.cc (octave_shl_load_dynamic_loader::resolve_reference): |
|
58 Call shl_findsym with type set to TYPE_UNDEFINED. |
|
59 |
3029
|
60 * Makefile.in (stamp-picdir): Delete. |
|
61 (pic): New target. Don't worry so much about creating pic |
|
62 directory only when it is really needed. |
|
63 (stamp-interp): Delete. |
|
64 (libraries): New target. Depend on shared library directly. |
|
65 |
3024
|
66 Wed Jun 4 00:09:42 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
67 |
|
68 * octave.cc (main): Call dir_path::set_program_name here. |
|
69 |
3021
|
70 Tue Jun 3 16:47:34 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
71 |
3022
|
72 * variables.cc (symbol_out_of_date): Make it work again. |
|
73 |
3021
|
74 * parse.y (parse_and_execute): Move here from toplev.cc |
|
75 (default_eval_print_flag): Likewise. |
|
76 (safe_fclose): Likewise. |
|
77 (eval_string): Likewise. |
|
78 (Fsource): Likewise. |
|
79 (Ffeval): Likewise. |
|
80 (feval): Likewise. |
|
81 (Feval): Likewise. |
|
82 (symbols_of_parse): Define default_eval_print_flag here instead of |
|
83 in varaibles.cc. |
|
84 (looks_like_octave_copyright): Move here from variables.cc |
|
85 (gobble_leading_whitespace): Likeiwse. |
|
86 (is_function_file): Likewise. |
|
87 (restore_input_stream): Likewise. |
|
88 (parse_fcn_file): Likewise. |
|
89 (load_fcn_from_file): Likewise. |
|
90 (get_help_from_file): Likewise. |
|
91 |
|
92 * toplev.cc (syms_of_toplev): Define argv, program_name, and |
|
93 program_invocation_name here instead of in variables.cc. |
|
94 |
|
95 * parse.h (line_editing): Move here from toplev.h. Now bool, not int. |
|
96 (reading_startup_message_printed) Likewise. |
|
97 (input_from_startup_file): Likewise. |
|
98 (input_from_command_line_file): Likewise. |
|
99 |
|
100 * load-save.cc: Use bool instead of int where appropriate. |
|
101 |
|
102 * input.h (enum echo_state): Move here from variables.h. |
|
103 (Vecho_executing_commands): Likewise. Now bool, not int. |
|
104 * input.cc (echo_executing_commands): Move here from variables.cc. |
|
105 (symbols_of_input): Define echo_executing_commands here instead of |
|
106 in variables.cc. |
|
107 |
|
108 * octave.cc (program_invocation_name): Don't define. |
|
109 (intern_argv): Don't set program_invocation_name here. |
|
110 (main): Call octave_env::set_program_name here, not in intern_argv. |
|
111 |
|
112 * toplev.cc (quitting_gracefully): Move here from octave.h and |
|
113 make static bool instead of extern int. |
|
114 |
|
115 * error.cc (bind_global_error_variable, clear_global_error_variable): |
|
116 Move here from variables.cc. |
|
117 (symbols_of_error): Define error_text here instead of in variables.cc. |
|
118 |
|
119 * pager.cc (write_to_diary_file): Now bool, not int. |
|
120 (really_flush_to_pager): Likewise. |
|
121 (flushing_to_pager): Likewise. |
|
122 * sighandlers.h (can_interrupt): Likewise. |
|
123 * error.h (buffer_error_messages): Likewise. |
|
124 * oct-hist.h (input_from_tmp_history_file, Vsaving_history): Likewise. |
|
125 * input.h (forced_interactive): Likewise. |
|
126 (get_input_from_eval_string): Likeiwse. |
|
127 (reading_script_file): Likeiwse. |
|
128 (reading_fcn_file): Likeiwse. |
|
129 (interactive): Likewise. |
|
130 |
|
131 * unwind-prot.cc (saved_variable::saved_variable (bool *, bool)): |
|
132 Set type_tag to boolean, not int. |
|
133 |
3016
|
134 Mon Jun 2 00:40:10 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
135 |
|
136 * variables.h (Octave_builtin_fcn): Delete typedef. |
|
137 |
|
138 * help.cc (make_name_list): Move here from variables.cc. |
|
139 (keyword_help, names): Now static. |
|
140 (struct help_list): Move declaration here from help.h. |
|
141 |
|
142 * oct-hist.cc (Vhistory_file, Vhistory_size, Vsaving_history): |
|
143 Move here from variables.cc. |
|
144 (symbols_of_oct_hist): New function. |
|
145 |
|
146 * version.h: Protect against multiple inclusion. |
|
147 |
|
148 * defun.cc (check_version): New function. |
|
149 * defun-int.h (DEFINE_FUN_INSTALLER_FUN): Use it. |
|
150 |
|
151 * help.h, help.cc (additional_help_message): Now extern. |
|
152 (operator_help): Now static. |
|
153 |
|
154 * defun.cc (print_usage): Move here from help.cc |
|
155 * DLD-FUNCTIONS/*.cc, data.cc, dirfns.cc, file-io.cc, input.cc, |
|
156 load-save.cc, octave.cc, ov-list.cc, ov-typeinfo.cc, |
|
157 ov-usr-fcn.cc, pager.cc, pr-output.cc, pt-plot.cc, strfns.cc, |
|
158 syscalls.cc, sysdep.cc, utils.cc, toplev.cc: |
|
159 Don't include help.h. |
|
160 |
|
161 * TEMPLATE-INST/Array-sym.cc: New file. |
|
162 |
|
163 * load-save.cc (do_load): Don't use ostream::form. |
|
164 * pr-output.cc: Likewise, at least where it is easy to do so. |
|
165 * oct-stream.cc: Ditto. |
|
166 |
|
167 * symtab.h (symbol_record::symbol_def::rows): New function. |
|
168 (symbol_record::symbol_def::columns): Ditto. |
|
169 (symbol_record::symbol_def::type_name): Ditto. |
|
170 (symbol_record::rows): Ditto |
|
171 (symbol_record::columns): Ditto |
|
172 (symbol_record::type_name): Ditto |
|
173 |
|
174 * symtab.h, symtab.cc (symbol_record::hides_fcn): New function. |
|
175 (symbol_record::hides_builtin): Ditto. |
|
176 (symbol_record::print_symbol_info_line): Ditto. |
|
177 (symbol_table::long_list): Delete. |
|
178 (symbol_table::symbol_list): New function. |
|
179 (symbol_table::maybe_list): Delete argc arg. |
|
180 (symbol_table::name_list): Rename from symbol_table::list. |
|
181 Change all callers. |
|
182 |
|
183 * symtab.h, symtab.cc (class symbol_record_info): Delete. |
|
184 |
|
185 * symtab.cc (matches_patterns): Use vector form of glob_match. |
|
186 |
|
187 Sun Jun 1 14:04:26 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
188 |
|
189 * pt-check.h, pt-check.cc: New files, for semantic checking of |
|
190 parse trees. |
|
191 |
|
192 * symtab.h (class symbol_def): Now nested in symbol_record class. |
|
193 (enum TYPE): Move from symbol_def to symbol record class. Change |
|
194 all uses. |
|
195 |
|
196 * symtab.h, symtab.cc (symbol_table::maybe_list): New function, |
|
197 from variables.cc. Change all uses. |
|
198 |
|
199 * pt-idx.h (tree_identifier::lvalue_ok): New function. |
|
200 * pt-id.h (tree_index_expression::lvalue_ok): Likewise. |
|
201 * pt-indir.h (tree_indirect_ref::lvalue_ok): Likewise. |
|
202 |
|
203 * pt-pr-code.h, pt-pr-code.cc (tree_print_code::visit_oct_obj): Delete. |
|
204 * pt-walk.h (tree_walker::visit_oct_obj): Delete declaration. |
|
205 |
|
206 * lex.h (class lexical_feedback): Delete maybe_screwed_again. |
|
207 * lex.l (lexical_feedback::init): Don't set it. |
|
208 |
|
209 Fri May 30 16:07:22 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
210 |
|
211 * mappers.cc: Include <cfloat> here. |
|
212 |
|
213 Tue May 27 10:08:43 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
214 |
|
215 * toplev.cc (eval_string): Don't index tmp if it is empty. |
|
216 |
|
217 Sat May 24 00:18:41 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
218 |
|
219 * load-save.cc (valid_identifier): Move here and make static. |
|
220 * symtab.h, symtab.cc (valid_identifier): Delete declaration and |
|
221 definition. |
|
222 |
|
223 Fri May 23 22:54:28 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
224 |
|
225 * symtab.h (symbol_def::symbol_def): Use initializer list instead |
|
226 of calling init_state. |
|
227 (symbol_def::init_state): Delete. |
|
228 |
|
229 * symtab.cc (symbol_table::print_stats): New function. |
|
230 * variables.cc (F__dump_symtab_info__): New function. |
|
231 |
|
232 * symtab.h, symtab.cc (symbol_table::hash): Return masked value. |
|
233 (symbol_table::table_size): New data member. |
|
234 (symbol_table::symbol_table): Set size of table in constructor. |
|
235 (HASH_TABLE_SIZE): Replace uses with table_size. |
|
236 (HASH_MASK): Delete. |
|
237 * variables.cc (initialize_symbol_tables): Set top-level and |
|
238 global symbol table sizes here. |
|
239 |
2994
|
240 Thu May 22 13:32:55 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
241 |
|
242 * dynamic-ld.cc (octave_shl_load_dynamic_loader::resolve_reference): |
|
243 Call shl_findsym with type set to TYPE_PROCEDURE. Pass the |
|
244 address of the pointer we want to define. |
|
245 |
2993
|
246 Wed May 21 16:30:25 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
247 |
|
248 * DLD-FUNCTIONS/time.cc (extract_tm): Avoid memory leak in dealing |
|
249 with time zone. |
|
250 |
|
251 * Makefile.in (install-in): Use new mk-includedir-link macro. |
|
252 (install-lib): Install in $octlibdir. Use new mk-libdir-link macro. |
|
253 |
|
254 Tue May 20 01:24:11 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
255 |
|
256 * ov-list.cc (Flist): Rename from Fmake_list. |
|
257 |
|
258 Mon May 19 14:45:58 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
259 |
|
260 * octave.cc (maximum_braindamage): Set default_eval_print_flag to 0. |
|
261 |
|
262 Sat May 17 16:32:23 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
263 |
|
264 * defaults.cc (set_default_editor): Default is now Emacs, not vi. |
|
265 |
2984
|
266 Fri May 16 00:07:11 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
267 |
2991
|
268 * pt-idx.cc (tree_index_expression::name): New function. |
|
269 |
|
270 * pt.cc (tree::str_print_code): New file, new convenience function. |
|
271 * pt-arg-list.cc (tree_argument_list::get_arg_names): Use it. |
|
272 * pt-assign.cc (tree_simple_assignment::rvalue): Likewise. |
|
273 (tree_multi_assignment::rvalue): Likewise. |
|
274 |
2990
|
275 * pt-colon.h (tree_colon_expression::save_base): New data memmber. |
|
276 (tree_colon_expression::preserve_base): New function. |
|
277 * parse.y (finish_colon_expression): When converting to a simple |
|
278 expression, be sure to delete the original colon expression but |
|
279 not the base value. |
|
280 |
|
281 * pt-mat.cc (tree_matrix::~tree_matrix): Actually do something. |
|
282 |
2987
|
283 * pt-all.h: New file. |
|
284 * parse.y, lex.l, pt-pr-code.cc: Use it. |
|
285 |
|
286 * pt.h: Rename from pt-base.h. |
|
287 |
|
288 * All parse tree classes: Add private copy constructors and |
|
289 assignment operators to prevent copying. |
|
290 |
|
291 * pt-base.cc: Delete. |
|
292 |
2985
|
293 * unwind-prot.h, unwind-prot.cc: Make a bit more object-oriented. |
|
294 Change all uses of unwind_protect stuff to match. |
|
295 |
|
296 * pt-jump.h, pt-jump.cc (breaking, continuing, returning): |
|
297 Make these flags static members of the corresponding class. |
|
298 Change all uses. |
|
299 |
2984
|
300 * pt-assign.cc (tree_simple_assignment_expression::eval, |
|
301 tree_multi_assignment_expression::eval): Clear lvalue index here. |
|
302 |
|
303 * oct-lvalue.cc (octave_lvalue::assign): Don't clear index here. |
|
304 * oct-lvalue.h (octave_lvalue::clear_index): New function. |
|
305 (octave_lvalue::set_index): Rename from octave_lvalue::index. |
|
306 Change all callers. |
|
307 |
2976
|
308 Thu May 15 11:48:10 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
309 |
2983
|
310 * pt-select.h, pt-select.cc (class tree_if_command_list, |
|
311 class tree_if_clause, class tree_switch_case_list, |
|
312 class tree_switch_case): Move here from pt-misc.h, pt-misc.cc. |
|
313 * pt-decl.h, pt-decl.cc (class tree_decl_init_list, |
|
314 class tree_decl_elt): Move here from pt-mist.h, pt-misc.cc |
|
315 |
|
316 * pt-arg-list.h, pt-stmt.h: New files, extracted from pt-misc.h. |
|
317 * pt-arg-list.cc, pt-stmt.cc: New files, extracted from pt-misc.cc. |
|
318 |
|
319 * pt-decl.h, pt-except.h, pt-jump.h, pt-loop.h, pt-select.h: |
|
320 New files, extraced from pt-cmd.h. |
|
321 * pt-decl.cc, pt-except.cc, pt-jump.cc, pt-loop.cc, pt-select.cc: |
|
322 New files, extraced from pt-cmd.cc. |
|
323 |
2980
|
324 * pt-unop.h, pt-binop.h, pt-colon.h, pt-idx.h, pt-assign.h: |
|
325 New files, extracted from pt-exp.h |
|
326 * pt-unop.cc, pt-binop.cc, pt-colon.cc, pt-idx.cc, pt-assign.cc: |
|
327 New files, extracted from pt-exp.cc |
|
328 * pt-exp.h, pt-exp.cc: Rename from pt-exp-base.h, pt-exp-base.cc. |
|
329 |
2979
|
330 * oct-lvalue.h: Rename from oct-var-ref.h. Rename class from |
|
331 octave_variable_reference to octave_lvalue. Change all uses. |
|
332 * oct-lvalue.cc: Rename from oct-var-ref.cc. |
|
333 |
2978
|
334 * variables.cc (bind_ans): Only bind ans and print result if value |
|
335 is defined. |
|
336 |
2976
|
337 * defun.cc: New file. Move functions for installing objects in |
|
338 the symbol table here from variables.cc. |
|
339 |
|
340 * oct-obj.h, oct-obj.cc: Add custom allocator, fwiw. |
|
341 |
|
342 * toplev.cc (main_loop): Correctly increment command number. |
|
343 |
|
344 * TEMPLATE-INST/SLList-tm.cc: Don't instantiate lists of pointers |
|
345 to tree_matrix_row objects. |
|
346 * TEMPLATE-INST/SLList-misc.cc: Do instantiate lists of pointers |
|
347 to tree_argument_list objects. |
|
348 |
|
349 * DLD-FUNCTIONS/dassl.cc: Update to use new octave_function |
|
350 interface to user-supplied functions. |
|
351 * DLD-FUNCTIONS/fsolve.cc: Likewise. |
|
352 * DLD-FUNCTIONS/lsode.cc: Likewise. |
|
353 * DLD-FUNCTIONS/npsol.cc: Likewise. |
|
354 * DLD-FUNCTIONS/quad.cc: Likewise. |
|
355 |
|
356 * dynamic-ld.h, dynamic-ld.cc (builtin_fcn_installer typedef): |
|
357 Rename from builtin_fcn. |
|
358 (octave_dynamic_loader::load_fcn_from_dot_oct_file): |
|
359 Simplify by using new installer function defined by DEFUN_DLD. |
|
360 |
|
361 * defun-dld.h (DEFUN_DLD): Use DEFINE_FUN_INSTALLER_FUN instead of |
|
362 DEFINE_FUN_STRUCT_FUN. |
|
363 * defun.h (DEFUN_MAPPER): Use DEFUN_MAPPER_INTERNAL. |
|
364 * defun-int.h (DEFVAR_INTERNAL): Rename from DEFVAR_INT and move |
|
365 here from defun.h. Change all uses. |
|
366 (DEFUN_MAPPER_INTERNAL): New macro. |
|
367 (DEFINE_FUN_INSTALLER_FUN): New macro to define function that the |
|
368 dynamic loader calls to do all the work of installing a new function. |
|
369 (DEFINE_FUN_STRUCT_FUN): Delete. |
|
370 |
|
371 * parse.y: Rewrite to handle more general expressions. |
|
372 * lex.l: Corresponding changes. |
|
373 |
|
374 * pt-walk.h, pt-pr-code.h, pt-pr-code.cc: Cope with new parse tree |
|
375 object structure. |
|
376 |
|
377 * pt-misc.cc (class tree_for_command): Split into |
|
378 tree_simple_for_command and tree_complex_for_command classes. |
|
379 |
|
380 * pt-misc.h, pt-misc.cc (tree_statement::eval): Handle identifier |
|
381 lookup and printing and binding ans here. |
|
382 (tree_statement_list::eval): Simplify. |
|
383 (tree_argument_list::all_elements_are_constant): New function. |
|
384 (class tree_decl_elt): Now contains id and expr, not an assignment |
|
385 expression. |
|
386 |
|
387 * pt-exp-base.h pt-exp.h pt-id.h pt-indir.h pt-mat.h pt-const.h, |
|
388 pt-exp-base.cc pt-exp.cc pt-id.cc pt-indir.cc pt-mat.cc pt-const.cc: |
|
389 Replace eval functions with rvalue and lvalue functions. |
|
390 Change all uses. |
|
391 (lvalue_ok, rvalue_ok): New functions, for future compile-time |
|
392 semantic checks. |
|
393 |
|
394 * oct-var-ref.h (is_defined, is_map): New functions. |
|
395 |
|
396 * pt-exp.h (class tree_oct_obj): Delete. |
|
397 |
|
398 * variables.cc (extract_function, is_valid_function): Return |
|
399 pointer to octave_function, not octave_symbol. |
|
400 (link_to_global_variable): Rewrite. Handle errors in |
|
401 symbol_record::mark_as_linked_to_global. |
|
402 |
|
403 * symtab.h, symtab.cc (class symbol_def, class symbol_record): |
|
404 Symbols are now stored as octave_value objects only. |
|
405 |
|
406 * ov.cc (install_types): Register function types here. |
|
407 * ov-fcn.h, ov-fcn.cc, ov-builtin.h, ov-builtin.cc, ov-mapper.h, |
|
408 ov-mapper.cc, ov-usr-fcn.h, ov-usr-fcn.cc: New classes for |
|
409 functions as values. |
|
410 * ov.h (class octave_value): Don't derive from octave_symbol. |
|
411 * oct-fcn.h, oct-fcn.cc, oct-builtin.h, oct-builtin.cc, |
|
412 oct-mapper.h, oct-mapper.cc, oct-usr-fcn.h, oct-usr-fcn.cc, |
|
413 oct-sym.h, oct-sym.cc: Delete. |
|
414 |
2963
|
415 Sun May 11 17:51:22 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
416 |
|
417 * help.cc (Ftype): Make it work again for functions. |
|
418 |
|
419 * pt-pr-code.cc (tree_print_code::print_parens): New function. |
|
420 Use it in other tree_print_code functions to handle printing all |
|
421 the parens that we found when parsing the expression, not just one |
|
422 pair. |
|
423 * pt-exp-base.h (tree_expression::paren_count): Rename from |
|
424 is_in_parens. |
|
425 * parse.y (maybe_warn_assign_as_truth_value): Use new name. |
|
426 |
|
427 * parse.y (constant): New non-terminal. |
|
428 (simple_expr1): Use it. |
|
429 |
|
430 * parse.y (make_unary_op): Delete. |
|
431 (simple_expr1): Where appropriate, use make_prefix_op and |
|
432 make_postfix_op instead of make_unary_op. Allow increment and |
|
433 decrement ops to work on expressions, not just identifiers. |
|
434 (make_prefix_op, make_postfix_op): Arg is expression, not identifier. |
|
435 Handle old unary_op cases too. |
|
436 (fold (tree_unary_expression *)): Delete. |
|
437 * pt-exp.h, pt-exp.cc (tree_prefix_expression::eval): Handle unary |
|
438 minus and not here. |
|
439 (tree_postfix_expression::eval): Likewise, for transpose and hermitian. |
|
440 (class tree_prefix_expression, class tree_postfix_expression): |
|
441 Derive from tree_unary_expression. Delete identifier member. |
|
442 Delete ident member function. |
|
443 (tree_unary_expression): Don't handle evaluation here. |
|
444 * pt-exp-base.h (mark_in_parens): No longer virtual. Return this. |
|
445 (reference): New virtual function. |
|
446 (class tree_expression): Don't handle expression type here. |
|
447 * pt-mvr-base.h (tree_multi_val_ret::tree_multi_val_ret): Likewise. |
|
448 * pt-mvr.h, pt-mvr.cc (tree_multi_assignment_expression): Likewise. |
|
449 * pt-walk.h (visit_unary_expression): Delete declaration. |
|
450 * pt-pr-code.h, pt-pr-code.cc (visit_unary_expression): Delete. |
|
451 (visit_prefix_expression): Use operand(), not ident(). |
|
452 new, visit_postfix_expression): |
|
453 * pt-id.h, pt-id.cc (increment, decrement): Delete. |
|
454 |
|
455 * pt-misc.cc (tree_parameter_list::define_from_arg_vector): Get a |
|
456 reference to each element and use the assignment operator instead |
|
457 of tree_identifier::define. |
|
458 * pt-id.h, pt-id.cc (tree_identifier::define): Delete versions |
|
459 that take octave_value and octave_symbol args. |
|
460 |
|
461 Sat May 10 23:32:13 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
462 |
|
463 * pt-indir.h, pt-indir.cc (tree_indirect_reference::value): Delete. |
|
464 |
|
465 * oct-var-ref.cc (octave_variable_ref::assign): Clear idx after |
|
466 assignment. |
|
467 |
2976
|
468 * octave_value classes: Add is_constant, is_function, and |
|
469 function_value functions. |
|
470 |
2963
|
471 * ov.h, ov.cc (assign): Return void, not reference to octave_value. |
|
472 (do_index_op): Rename, from index. |
|
473 (do_struct_elt_index_op): Rename, from struct_elt_val. |
|
474 Add version that accepts index arg. |
|
475 Change all uses and derived classes to match. |
|
476 * pt-const.h (index): Delete. |
|
477 * oct-var-ref.h, oct-var-ref.cc (value): Handle indexed structure |
|
478 ops here too. |
|
479 |
2949
|
480 Fri May 9 07:40:59 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
481 |
2958
|
482 * pt-exp.cc (print_rhs_assign_val, symbols_of_pt_exp): New functions. |
|
483 (Vprint_rhs_assign_val): New static variable. |
|
484 (tree_simple_assignment_expression::eval): Use it to optionally |
|
485 allow the rhs (which is the result) of an assignment to be printed |
|
486 instead of the left. |
|
487 |
2955
|
488 * pt-exp.cc (tree_simple_assignment_expression::eval): Use new |
|
489 octave_variabl_reference::index function to handle indexing. |
|
490 |
|
491 * oct-var-ref.h, oct-var-ref.cc (idx): New data member. |
|
492 (octave_variable_reference::index): Set it. |
|
493 (octave_variable_reference::assign): Handle indexing here. |
|
494 Delete version of this function htat takes index arg. |
|
495 |
|
496 * variables.h (struct builtin_varaible): Delete. |
|
497 * variables.cc (install_builtin_variable): Take all elts of |
|
498 builtin_variable struct directly. |
|
499 * defun.h (DEFVAR_INT): Call install_builtin_variable directly. |
|
500 |
|
501 * symtab.h, defun-int.h: Don't include variables.h. |
|
502 |
|
503 * symtab.h (symbol_record::sv_function): Move typedef here. |
|
504 * variables.h: From here. |
|
505 |
|
506 * oct-var-ref.h, oct-var-ref.cc: New files for |
|
507 octave_variable_reference class, extracted from variables.h and |
|
508 variables.cc |
2956
|
509 * Makefile.in: Add them to the appropriate lists. |
2955
|
510 |
|
511 * oct-obj.h (octave_value_list::empty): New function. |
|
512 |
2949
|
513 * variables.h (class octave_variable_reference): Rewrite to work |
|
514 as a proxy class to store a pointer to octave_value and, |
|
515 optionally, the change function to call and the name of the |
|
516 structure element we are referencing. Handle assignment, |
|
517 increment, decrement, and value operations. |
|
518 |
2956
|
519 Thu May 8 23:40:59 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
520 |
2949
|
521 * ov-re-mat.h, ov-re-mat.cc (struct_elt_ref, struct_elt_val, |
|
522 assign_struct_elt): Provide functions for looking up and setting |
|
523 matrix dimensions. |
|
524 |
|
525 * symtab.cc (symbol_record::define): Don't call sv_fcn here. |
|
526 Don't save and restore value here. |
|
527 (symbol_record::define_builtin_var): Do call sv_fcn here. |
|
528 (symbol_record::variable_reference): Don't make value unique here. |
|
529 Return pointer to sv_fcn in octave_variable_reference. |
|
530 |
|
531 * pt-misc.cc (tree_parameter_list::initialize_undefined_elements): |
|
532 Simplify. |
|
533 |
|
534 * pt-id.h, pt-id.cc (tree_identifier::reference): Return |
|
535 octave_variable_reference, not octave_value&. |
|
536 * symtab.h, symtab.cc (symbol_record::variable_reference): Ditto. |
|
537 * pt-indir.h, pt-indir.cc (tree_indirect_ref::reference): Ditto. |
|
538 Simplify too. |
|
539 |
|
540 * pt-const.h (tree_constant::reference, tree_constant::value, |
|
541 tree_constant::assign): Delete unnecessary functions. |
|
542 * pt-id.h, pt-id.cc (tree_identifier::assign): Ditto. |
|
543 |
|
544 * pt-cmd.cc (tree_for_command::do_for_loop_once): Simplify. |
|
545 |
|
546 * ov.h, ov.cc, ov-base.h, ov-base.cc, ov-struct.h, ov-struct.cc |
|
547 (struct_elt_ref): New arg, octave_value* parent. |
|
548 Allow deferred lookup. Return octave_variable_reference, not |
|
549 octave_value&. |
|
550 |
|
551 * ov.h, ov.cc, ov-re-mat.h, ov-re-mat.cc (assign_struct_elt): |
|
552 New virtual functions. |
|
553 |
|
554 * ov.h, ov.cc (Vresize_on_range_error): Now static. |
|
555 |
|
556 * pt-mvr.cc (tree_index_expression::eval): Delete redundant check |
|
557 of error_state. |
|
558 |
2944
|
559 Wed May 7 21:17:00 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
560 |
|
561 * input.cc (generate_completion): Rename from command_generator. |
|
562 Use string objects instead of char*. |
|
563 (generate_possible_completions): Let qsort also make matches unique. |
|
564 (initialize_command_input): Register generate_completion with the |
|
565 command_editor class. |
|
566 (completion_matches): Simplify using generate_completion. |
|
567 |
|
568 * pt-pr-code.cc (tree_print_code::visit_constant): For val, call |
|
569 print_raw, not print. |
|
570 |
|
571 * oct-usr-fcn.h (octave_user_function::argn_sr): New data member. |
|
572 (octave_user_function::install_automatic_vars): Rename from |
|
573 install_nargin_and_nargout. |
|
574 (octave_user_function::bind_automatic_vars): Rename from |
|
575 bind_nargin_and_nargout. |
|
576 * oct-usr-fcn.cc (octave_user_function::eval): Extract arg names |
|
577 from args vector and bind them to argn. |
|
578 * oct-obj.h (octave_value_list::names): New data member. |
|
579 * oct-obj.cc (octave_value_list::stash_name_tags): New function. |
|
580 (octave_value_list::name_tags): Ditto. |
|
581 * pt-const.h, pt-const.cc (tree_constant::print_raw): New function. |
|
582 * pt-misc.h, pt-misc.cc (tree_argument_list::get_arg_names): |
|
583 New function. |
|
584 * pt-mvr.h, pt-mvr.cc (class index_expression): Cache arg names. |
|
585 * toplev.cc (feval): Now static. Handle arg names. |
|
586 |
|
587 * mkops: Cope with moving files defining operators to OPERATORS |
|
588 subdirectory. |
|
589 |
2937
|
590 Tue May 6 00:48:59 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
591 |
|
592 * DLD-FUNCTIONS/getgrent.cc: Use new octave_group class. |
|
593 * DLD-FUNCTIONS/getpwent.cc: Use new octave_passwd class. |
|
594 |
|
595 * syscalls.cc: Simplify by using new functions defined in |
|
596 liboctave/oct-syscalls.cc. |
|
597 |
|
598 * file-io.cc (Ftmpnam): Accept DIR and PREFIX args. |
|
599 |
2929
|
600 Mon May 5 00:54:03 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
601 |
2932
|
602 * ov-str-mat.cc (octave_char_matrix_str::print_name_tag): Print |
|
603 empty strings on one line. |
|
604 |
2929
|
605 * DLD-FUNCTIONS, OPERATORS, and TEMPLATE-INST: New subdirectories. |
|
606 Move appropriate files to new directories. |
|
607 * Makefile.in: Add DLD-FUNCTIONS, OPERATORS, and TEMPLATE-INST |
|
608 directories to VPATH. Fix rules to work with new directory |
|
609 structure. |
|
610 |
2927
|
611 Sun May 4 22:40:45 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
612 |
|
613 * input.cc (initialize_command_input): Rename from |
|
614 initialize_readline. |
|
615 (gnu_readline, octave_gets, get_user_input): Simplify, return |
|
616 string, not char *. |
|
617 |
|
618 * Many of other files: Miscellaneous changes to go along with the |
|
619 changes described in the liboctave/ChangeLog for May 4. More code |
|
620 moved from here to liboctave. |
|
621 |
|
622 Fri May 2 19:50:33 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
623 |
|
624 * pathlen.h: Move to ../liboctave. |
|
625 |
2921
|
626 Thu May 1 21:50:44 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
627 |
|
628 * variables.cc (get_struct_elts): New fucntion. |
|
629 (looks_like_struct, generate_struct_completions): Move here from |
|
630 input.cc, rewrite, and make work again. |
|
631 |
2916
|
632 Wed Apr 30 00:24:05 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
633 |
|
634 * ov-base.h, ov-bool-mat.cc, ov-bool-mat.h, ov-bool.cc, ov-bool.h, |
|
635 ov-ch-mat.cc, ov-ch-mat.h, ov-complex.cc, ov-complex.h, |
|
636 ov-cx-mat.cc, ov-cx-mat.h, ov-file.cc, ov-file.h, ov-list.cc, |
|
637 ov-range.cc, ov-range.h, ov-re-mat.cc, ov-re-mat.h, ov-scalar.cc, |
|
638 ov-scalar.h, ov-str-mat.cc, ov-struct.cc, ov.h (scalar_value): |
|
639 New function. Same as double_value, but name is consistent with |
|
640 octave_scalar class. |
|
641 |
|
642 * op-fil-b.cc, op-fil-cm.cc, op-fil-lis.cc, op-fil-rec.cc, |
|
643 op-fil-str.cc, op-fil-bm.cc, op-fil-cs.cc, op-fil-m.cc, |
|
644 op-fil-s.cc: New files. |
|
645 |
|
646 * ops.h (ASSIGNOPDECL, DEFASSIGNOP, DEFASSIGNOP_FN, CONVDECL, |
|
647 DEFCONV, BINOPDECL, DEFBINOPX, DEFBINOP, DEFBINOP_OP, DEFBINOP_FN, |
|
648 BINOP_NONCONFORMANT): New macros. |
|
649 * op-b-b.cc, op-bm-bm.cc, op-cm-cm.cc, op-cm-cs.cc, op-cm-m.cc, |
|
650 op-cm-s.cc, op-cs-cm.cc, op-cs-cs.cc, op-cs-m.cc, op-cs-s.cc, |
|
651 op-m-cm.cc, op-m-cs.cc, op-m-m.cc, op-m-s.cc, op-s-cm.cc, |
|
652 op-s-cs.cc, op-s-m.cc, op-s-s.cc, op-str-str.cc: Use them. |
|
653 |
|
654 * Makefile.in (octave): Also depend on ops.o. |
|
655 |
|
656 * builtins.h: Delete. |
|
657 * octave.cc: Add extern declaration here. |
|
658 |
|
659 * mappers.h: Delete. |
|
660 * Makefile.in (INCLUDES): Delete from list. |
|
661 * mkbuiltins: Add extern declaration in builtins.cc. |
|
662 |
|
663 * mkops: New file. |
|
664 * ops.cc: Delete. |
|
665 * Makefile.in (SOURCES): Delete from the list. |
|
666 (ops.cc): New target. |
|
667 (OP_SOURCES): New list. Move all op-*.cc files here from SOURCES. |
|
668 Add $(OP_SOURCES) to SOURCES list. |
|
669 |
|
670 * variables.cc (symbols_of_variables): No longer static. |
|
671 * ov.cc (symbols_of_ov): Rename from symbols_of_value. |
|
672 |
|
673 * ov-base.h: Delete declaration for install_base_type_conversions. |
|
674 * op-b-b.h, op-bm-bm.h, op-cm-cm.h, op-cm-cs.h, op-cm-m.h, |
|
675 op-cm-s.h, op-cs-cm.h, op-cs-cs.h, op-cs-m.h, op-cs-s.h, |
|
676 op-m-cm.h, op-m-cs.h, op-m-m.h, op-m-s.h, op-s-cm.h, op-s-cs.h, |
|
677 op-s-m.h, op-s-s.h, op-str-str.h: Delete. |
|
678 * Makefile.in (INCLUDES): Delete them from the list. |
|
679 |
|
680 Tue Apr 29 22:27:49 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
681 |
|
682 * variables.h, variables.cc (install_builtin_variables): Delete. |
|
683 * mkbuiltins: Also generate install_builtin_variables function. |
|
684 * Makefile.in: Fix rule to call mkbuiltins with correct args. |
|
685 (clean): Also delete def-files and var-files. |
|
686 * defaults.h.in, dirfns.h, error.h, file-io.h, help.h, input.h, |
|
687 lex.h, load-save.h, oct-usr-fcn.h, pager.h, parse.h, pr-output.cc, |
|
688 pr-output.h, pt-mat.h, pt-misc.h, pt-plot.h, toplev.h: |
|
689 Delete declarations of symbols_of_* functions. |
|
690 * data.h, syscalls.h: Delete. |
|
691 |
|
692 * pr-output.cc (octave_print_internal): Leave printing of final |
|
693 new line up to the caller. |
|
694 |
|
695 * ov.h, ov.cc (reset_indent_level, increment_indent_level, |
|
696 decrement_indent_level, newline, indent, reset, |
|
697 curr_print_indent_level, beginning_of_line): |
|
698 New functions and static data to manage indent level for printing. |
|
699 (print_as_scalar): Delete. |
|
700 (print, print_with_name): Always require stream arg. |
|
701 Change all callers. |
|
702 |
|
703 * oct-stream.h (octave_stream::input_stream): Make publicly available. |
|
704 (octave_stream::output_stream): Likewise. |
|
705 |
|
706 * ov-base.h, ov-base.cc, ov.h, ov.cc, ov-file.h ov-base.h |
|
707 (is_file, stream_value, stream_number): New functions. |
|
708 * ov-file.h, ov-file.cc: New files for value class to manage files. |
|
709 * file-io.cc (symbols_of_file_io): Define stdin, stdout, and |
|
710 stderr as octve_file objects, not just integers. |
|
711 (Ffopen, Fpopen): Return octave_file objects, not integer file ids. |
|
712 * syscalls.cc (Fpipe): Likewise. |
|
713 * oct-stream.h, oct-stream.cc (octave_stream_list::insert): |
|
714 Return octave_file object, not integer file id. |
|
715 |
|
716 * ov-base.cc, ov-bool-mat.cc, ov-bool.cc, ov-ch-mat.cc, |
|
717 ov-complex.cc, ov-cx-mat.cc, ov-file.cc, ov-list.cc, ov-range.cc, |
|
718 ov-re-mat.cc, ov-scalar.cc, ov-str-mat.cc, ov-struct.cc, ov.cc |
|
719 (print_name_tag, print_raw): New functions. |
|
720 |
|
721 * help.cc (Ftype): Don't cast symbol definition to tree_constant *. |
|
722 |
|
723 * variables.cc (link_to_global_variable): Don't try to define |
|
724 symbol with tree_constant objects. |
|
725 (bind_ans): Call symbol_record::define directly and then |
|
726 octave_value::print_with_name instead of creating a temporary |
|
727 assignment expression. |
|
728 |
|
729 * pt-pr-code.cc (tree_print_code::indent): Don't use ostream::form. |
|
730 |
|
731 * pt-exp-base.h, pt-exp.h, pt-exp.cc (oper): Return string, not |
|
732 char *. Change all where necessary. |
|
733 |
|
734 Mon Apr 28 16:33:49 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
735 |
|
736 * ov.h (octave_value binary_op enum): Add lshift and rshift. |
|
737 (octave_value assign_op enum): Add lshift_eq and rshift_eq. |
|
738 * ov.cc (assign_op_as_string, binary_op_as_string): Include them. |
|
739 * parse.y (LSHIFT_EQ RSHIFT_EQ LSHIFT RSHIFT): New tokens. |
|
740 Add them to the precedence list. |
|
741 (simple_expr): Add new operators. |
|
742 (make_assign_op, make_binary_op): Handle new operators. |
|
743 * lex.l: Recognize new operators. |
|
744 |
|
745 * lex.l: Recognize them. |
|
746 |
|
747 Sun Apr 27 20:17:49 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
2898
|
748 |
|
749 * pt-misc.cc (Vsilent_functions, silent_functions): |
|
750 Move here from oct-usr-fcn.cc. |
|
751 (symbols_of_pt_misc): New function. DEFVAR silent_functions. |
|
752 (tree_statement_list::eval): Handle Vsilent_functions here instead |
|
753 of in octave_user_function::eval. |
|
754 (tree_statement::eval): New functions. |
|
755 (tree_statement_list::eval): Use them. |
|
756 Change print flag arg to silent flag. Change all callers. |
|
757 * variables.cc (install_builtin_variables): Call symbols_of_pt_misc. |
|
758 * toplev.cc (parse_and_execute): Delete print arg. Change all callers. |
|
759 (eval_string): Change print flag arg to silent flag. Change callers. |
|
760 |
|
761 * dynamic-ld.h, dynamic-ld.cc: Rewrite to use singleton class. |
|
762 * variables.cc (load_fcn_from_file): Use new dynamic linking class. |
|
763 |
2893
|
764 * dynamic-ld.h (Octave_builtin_fcn): Delete typedef. |
|
765 * dynamic-ld.cc: Simplify via the magic of function pointers. |
|
766 |
|
767 * pt-fcn.h pt-fcn.cc pt-fvc.h pt-fvc.cc pt-fvc-base.h pt-fvc-base.cc: |
|
768 Delete obsolete files. |
|
769 * Makefile.in: Remove them from various lists. |
|
770 |
|
771 * pt-walk.h (visit_octave_user_function): Rename from visit_function. |
|
772 (visit_builtin): Delete. |
|
773 * pt-pr-code.h, pt-pr-code.cc (visit_octave_user_function): |
|
774 Rename from visit_function. |
|
775 (visit_octave_user_function_header): Rename from visit_function_header. |
|
776 (visit_octave_user_function_trailer): Rename from |
|
777 visit_function_trailer. |
|
778 |
|
779 * ov.h, ov.cc (eval): New functions. |
|
780 |
|
781 * dassl.cc, fsolve.cc, lsode.cc, npsol.cc, qpsol.cc, quad.cc: |
|
782 Declare user-defined functions as a pointer to an octave_symbol |
|
783 object, not as a pointer to a tree_fvc object. |
|
784 |
|
785 * symtab.h, symtab.cc: Use new octave_symbol class. |
|
786 * variables.cc (install_builtin_function, install_builtin_mapper, |
|
787 install_builtin_variable, install_builtin_variable_as_function): |
|
788 Make work with new octave_symbol class and symbol table structure. |
|
789 |
|
790 * variables.h: Delete declaration of builtin_function struct. |
|
791 * defun-dld.h (DEFUN_DLD): Simplify. |
|
792 * defun-int.h (DEFINE_FUN_STRUCT): Delete. |
|
793 (DEFINE_FUN_STRUCT_FUN): Rewrite to not use static builtin_function |
|
794 object. |
|
795 |
|
796 * mappers.h: Delete declaration of builtin_mapper_function struct. |
|
797 * mappers.cc: Declare wrapper functions static. |
|
798 * defun.h (DEFUN_MAPPER): Simplify. |
|
799 |
|
800 * oct-sym.h: New file. Declare base class for Octave symbols. |
|
801 * ov.h: Derive octave_value class from octave_symbol. |
|
802 * oct-fcn.h, oct-fcn.cc: New files to declare and define |
|
803 base class for functions. |
|
804 * oct-builtin.h, oct-builtin.cc: New files to declare and define |
|
805 class for built-in functions. |
|
806 * oct-mapper.h, oct-mapper.cc: New files to declare and define |
|
807 class for mapper functions. |
|
808 * oct-usr-fcn.h, oct-usr-fcn.cc: New files to declare and define |
|
809 base class for user-defined functions. |
|
810 * Makefile.in: Add new files to appropriate lists. |
|
811 |
|
812 * pt-id.h, pt-id.cc: Move tree_identifier class here. |
|
813 * pt-fvc.h, pt-fvc.cc: From here. |
|
814 |
|
815 * pt-indir.h, pt-indir.cc: Move tree_indirect_ref class here. |
|
816 * pt-fvc.h, pt-fvc.cc: From here. |
|
817 |
2881
|
818 Thu Apr 24 03:58:16 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
819 |
2884
|
820 * parse.y (magic_colon): New nonterminal. |
|
821 (arg_list): Simplify using magic_colon. |
|
822 |
2883
|
823 * lex.h (class lexical_feedback): Delete maybe_screwed field. |
|
824 New field, parsed_function name. |
|
825 * lex.l (lexical_feedback::init): Initialize it. |
|
826 (handle_identifier): Don't return SCREW. Handle switching |
|
827 symbol table context properly for `function f ()' vs `function x ='. |
|
828 (is_keyword): If looking at function keyword, don't set current |
|
829 symbol table to point to the local table. |
|
830 * parse.y (recover_from_parsing_function): New function. |
|
831 (finish_function_def): Use identifier, not token. |
|
832 Simplify parsing of functions. |
|
833 |
|
834 * ov-list.h, ov-list.cc: New files to implement generic list type. |
|
835 * ov.cc (list_indent): New global variable. |
|
836 (increment_list_indent, decrement_list_indent): New functions. |
|
837 (install_types): Register octave_list type. |
|
838 * ov-base.cc (octave_base_value::is_list): New function. |
|
839 |
2881
|
840 * oct-sym.h: New file. |
|
841 * ov.h (class octave_value): Derive from octave_symbol class. |
|
842 |
|
843 * pt-const.h, pt-const.cc: Delete lots of old useless cruft. |
|
844 |
|
845 * pt-exp.h, pt-exp.cc (tree_binary_expression): Use type codes for |
|
846 operators from octave_value instead of repeating them here. |
|
847 |
|
848 * pt-fvc-base.cc (tree_fvc::increment, tree_fvc::decrement): Delete. |
|
849 * pt-fvc.cc (tree_identifier::increment): Get reference to value |
|
850 and increment that instead of using virutal tree_fvc::increment |
|
851 function. |
|
852 |
|
853 * lex.l: Handle +=, -=, *=, /=, .+=, .-=, .*=, ./=, &=, and |= ops. |
2883
|
854 * parse.y (make_assign_op): Rename from make_simple_assignment and |
|
855 handle different op types. |
|
856 (simple_expr1): Do new ops. |
2881
|
857 * pt-misc.cc (initialize_undefined_elements): Pass op to assign. |
|
858 * pt-cmd.cc (tree_for_command::do_for_command_once): Likewise. |
|
859 * pt-fvc.cc (tree_identifier::assign): Pass op. |
|
860 * pt-exp.cc (tree_simple_assignment_expression): Handle new ops. |
|
861 * variables.cc (octave_variable_reference::assign): Likewise. |
|
862 * ov.h (class octave_value): Likewise. |
|
863 * ov.cc (octave_value::assign_op_as_string): New function. |
|
864 (octave_value::assign, octave_value::convert_and_assign, |
|
865 octave_value::try_assignment_with_conversion, |
|
866 octave_value::try_assignment): Pass op. |
|
867 * pt-pr-code.cc (tree_print_code::visit_simple_assignment_expression): |
|
868 Use expr.oper() instead of printing "=". |
|
869 * op-cm-cm.cc, op-cm-cs.cc, op-cm-m.cc, op-cm-s.cc, op-m-m.cc, |
|
870 op-m-s.cc, op-str-str.cc: Pass op to INSTALL_ASSIGNOP. |
|
871 * ops.h (INSTALL_ASSIGNOP): Pass op. |
2883
|
872 * ov-typeinfo.cc (do_register_assign_op): Include op type in table. |
|
873 (do_lookup_assign_op): Use op in lookup. |
2881
|
874 |
|
875 * ops.h (INSTALL_UNOP): Delete. |
|
876 |
|
877 * input.cc (generate_struct_completions, looks_like_struct): |
|
878 Disable, since they don't work now anyway. |
|
879 |
|
880 * help.cc (Ftype): Work with octave_value instead of a pointer to |
|
881 tree_constant. |
|
882 * symtab.cc (symbol_record_info::symbol_record_info): Likewise. |
|
883 |
|
884 |
|
885 Tue Apr 22 22:59:55 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
886 |
|
887 * file-io.cc (Ffprintf): If first arg is a string, assume FID = 1. |
|
888 |
|
889 Fri Apr 18 20:16:34 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
890 |
|
891 * oct-obj.h, oct-obj.cc: Implement octave_value_list with |
|
892 Array<octave_value> as a data member, not as a class derived from |
|
893 Array<octave_value>. |
|
894 (octave_value_list::length, octave_value_list::resize, |
|
895 octave_value_list::prepend, octave_value_list::append, |
|
896 octave_value_list::reverse): New functions. |
|
897 |
|
898 * op-cm-cm.cc, op-cm-cs.cc, op-cm-m.cc, op-cm-s.cc, op-cs-cm.cc, |
|
899 op-cs-m.cc, op-m-cm.cc, op-m-cs.cc, op-m-m.cc, op-m-s.cc, |
|
900 op-s-cm.cc, op-s-m.cc: Use new bool ops from liboctave instead of |
|
901 the macros defined in ops.h. |
|
902 |
2865
|
903 Thu Apr 17 13:12:22 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
904 |
|
905 * parse.y (ABORT_PARSE): Handle forced_interactive the same as |
|
906 interactive. |
|
907 |
|
908 Mon Apr 14 01:46:50 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
909 |
|
910 * input.cc (octave_read): Don't forget to free input buffer if it |
|
911 exists and has zero length. |
|
912 (gnu_readline): Free buf if fgets returns 0. |
|
913 |
|
914 Wed Apr 9 00:03:57 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
915 |
|
916 * time.cc (mk_tm_map): Only set zone field if HAVE_TM_ZONE or |
|
917 HAVE_TZNAME are defined. |
|
918 |
|
919 Tue Apr 8 12:39:21 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
920 |
|
921 * time.cc (extract_tm): Set tm.tm_zone if HAVE_TM_ZONE is defined, |
|
922 not if HAVE_TMZONE is defined. |
|
923 |
|
924 * Makefile.in (%.oct : %.o): Use $(SH_LD), not $(CXX). |
|
925 |
|
926 Wed Apr 2 21:32:16 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
927 |
|
928 * dynamic-ld.cc, dynamic-ld.h (init_dynamic_linker): Delete |
|
929 function and declaration. |
|
930 * octave.cc (main): Don't call it. |
|
931 |
2856
|
932 Mon Mar 31 00:37:48 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
933 |
2859
|
934 * pt-base-exp.h (tree_expression::eval): Give arg a default value. |
|
935 * pt-const.h (tree_constant::eval): Likewise. |
|
936 * pt-exp.h (tree_prefix_expression::eval, tree_colon_expression::eval, |
|
937 tree_postfix_expression::eval, tree_unary_expression::eval, |
|
938 tree_binary_expression::eval, tree_boolean_expression::eval, |
|
939 tree_simple_assignment_expression::eval): Likewise. |
|
940 * pt-fcn.h (tree_function::eval): Likewise. |
|
941 * pt-fvc.h (tree_identifier::eval, tree_indirect_ref::eval, |
|
942 tree_builtin::eval): Likewise. |
|
943 * pt-mat.h (tree_matrix::eval): Likewise. |
|
944 * pt-misc.h (tree_statement_list::eval): Likewise. |
|
945 * pt-mvr-base.h (tree_multi_val_ret::eval): Likewise. |
|
946 * pt-mvr.h (tree_oct_obj::eval, tree_index_expression::eval, |
|
947 tree_multi_assignment_expression::eval): Likewise. |
|
948 * dassl.cc, fsolve.cc, load-save.cc, lsode.cc, npsol.cc, parse.y, |
|
949 pt-cmd.cc, pt-exp-base.cc, pt-exp.cc, pt-fvc.cc, pt-mat.cc, |
|
950 pt-misc.cc, pt-mvr.cc, pt-plot.cc, quad.cc, toplev.cc, variables.cc: |
|
951 Change callers of eval() to use bool instead of int and to make |
|
952 use of default argument value. |
|
953 |
|
954 * toplev.h, toplev.cc (parse_and_execute, eval_string): Flag args |
|
955 are now bool instead of int. |
|
956 |
2856
|
957 * symtab.h, symtab.cc: Use bool instead of int in more places. |
|
958 * variables.h, variables.cc: Likewise. |
2857
|
959 * lex.h, lex.l: Likewise. |
|
960 * parse.y: Likewise. |
2856
|
961 * help.cc, input.cc, lex.l, load-save.cc, parse.y, pt-fcn.cc: |
|
962 Change callers of symbol_table::lookup to use bool instead of int, |
|
963 and to make use of default arguments. |
|
964 |
2850
|
965 Fri Mar 28 15:33:11 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
966 |
2852
|
967 * parse.y (Vwarn_comma_in_declaration): Delete. |
|
968 (symbols_of_parse): Delete DEFVAR for warn_comma_in_declaration. |
|
969 (decl1): Don't allow commas in declarations. |
|
970 |
2850
|
971 * lsode.cc (struct LSODE_OPTIONS): Handle integer options. |
|
972 (print_lsode_option_list, set_lsode_option, show_lsode_option): Ditto. |
|
973 (lsode_option_table): Add element for step limit. |
|
974 (lsode_user_jacobian): New function. |
|
975 (Flsode): Allow function name arg to be a 2-element string array |
|
976 specifying the function and jacobian function. |
|
977 |
|
978 * variables.cc (get_global_value, set_global_value): New functions. |
|
979 |
2846
|
980 Wed Mar 26 17:08:27 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
981 |
|
982 Implement static variable declaration: |
|
983 |
|
984 * lex.l (is_keyword): Handle static. |
|
985 * octave.gperf: Likewise. |
|
986 * parse.y (Vwarn_comma_in_declaration): Rename from |
|
987 Vwarn_comma_in_global_decl. |
|
988 Handle new static command. |
|
989 * pt-cmd.h, pt-cmd.cc (class tree_decl_command): New base class |
|
990 for static and global declaration commands. |
|
991 (class tree_global_command): Derive from tree_decl_command. |
|
992 (class tree_static_command): New class, derived from tree_decl_command. |
|
993 * pt-fvc.cc, pt-fvc.h (tree_identifier::mark_as_static): New function. |
|
994 * pt-misc.h, pt-misc.h (class tree_decl_elt): Rename from tree_global. |
|
995 (class tree_decl_init_list): Rename from tree_global_init_list. |
|
996 * pt-pr-code.cc, pt-pr-code.h (tree_print_code::visit_decl_command): |
|
997 Rename from visit_global_command. |
|
998 (tree_print_code::visit_decl_elt): Rename from visit_global. |
|
999 (tree_print_code::visit_decl_init_list): Rename from |
|
1000 visit_global_init_list. |
|
1001 * pt-walk.h (tree_walker::visit_decl_command): Rename from |
|
1002 visit_global_command. |
|
1003 (tree_walker::visit_decl_elt): Rename from visit_tree_global. |
|
1004 (tree_walker::visit_decl_init_list): Rename from |
|
1005 visit_global_init_list. |
|
1006 * variables.cc (link_to_global_variable): Trying to make a static |
|
1007 variable global is an error. |
|
1008 * SLList-misc.cc: Instantiate lists of pointers to tree_decl_elt |
|
1009 objects, not tree_global objects. |
|
1010 * symtab.h, symtab.cc (symbol_record::tagged_static): New field. |
|
1011 (symbol_record::mark_as_static, symbol_record::is_static): |
|
1012 New functions. |
|
1013 * symtab.cc (symbol_record::init_state): Initialize tagged_static. |
|
1014 (symbol_record::clear): Don't clear static variables. |
|
1015 * symtab.cc (push_context): Don't do anything for static variables. |
|
1016 |
2825
|
1017 Tue Mar 25 17:17:17 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1018 |
2881
|
1019 * ov-bool-mat.cc, ov-bool-mat.h, ov-bool.cc, ov-bool.h: New files. |
2832
|
1020 |
2831
|
1021 * defaults.cc (symbols_of_defaults): DEFCONST OCTAVE_HOME. |
|
1022 |
|
1023 * toplev.cc (octave_config_info): Delete use of CXXLIBS. |
|
1024 * oct-conf.h.in: Ditto. |
|
1025 |
2830
|
1026 * octave.cc (maximum_braindamage): Don't bind prefer_zero_one_indexing. |
|
1027 * ov.h: Don't declare Vprefer_zero_one_indexing. |
|
1028 * ov.cc: Don't define Vprefer_zero_one_indexing. |
|
1029 (prefer_zero_one_indexing): Delete. |
|
1030 (symbols_of_value): Delete DEFVAR for prefer_zero_one_indexing. |
|
1031 |
2825
|
1032 * ov.h, ov.cc, ov-base.h, ov-base.cc: Add constructors and |
|
1033 extractors for bool and boolMatrix types. |
|
1034 |
|
1035 * ov.cc (install_types): Register octave_bool and |
|
1036 octave_bool_matrix types. |
|
1037 |
|
1038 * op-cm-cm.cc, op-cm-cs.cc, op-cm-m.cc, op-cm-s.cc, op-cs-cm.cc, |
|
1039 op-cs-m.cc, op-m-cm.cc, op-m-cs.cc, op-m-m.cc, op-m-s.cc, |
|
1040 op-s-cm.cc, op-s-m.cc, op-s-s.cc, ov-re-mat.cc: |
|
1041 Return boolMatrix instead of Matrix object. |
|
1042 * ops.h (BOOL_OP3, MX_MX_BOOL_OP): Likewise. |
|
1043 |
|
1044 * op-b-b.h, op-b-b.cc, op-bm-bm.h, op-bm-bm.cc: New files. |
|
1045 * Makefile.in: Add them to the lists. |
|
1046 * ops.cc: Include header files here. |
|
1047 (install_ops): Call install_b_b_ops() and install_bm_bm_ops() here. |
|
1048 |
|
1049 * variables.cc (symbols_of_variables): Don't rely on default |
|
1050 conversion from int to double for value returned from |
|
1051 default_history_size(). |
|
1052 |
|
1053 * pr-output.cc: Include cstdio. |
|
1054 |
|
1055 * parse.y (param_list_end): Fix typo in last change. |
|
1056 |
|
1057 * quad.cc (quad): Cast integer return values to double. |
|
1058 * npsol.cc (show_npsol_option): Likewise. |
|
1059 * qpsol.cc (show_qpsol_option): Likewise. |
|
1060 * file-io.cc (Fsprintf, Ffwrite): Likewise. |
|
1061 |
|
1062 Mon Mar 24 13:11:47 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1063 |
|
1064 * ov-typeinfo.cc (typeinfo): If invoked with an argument, return |
|
1065 the type of the argument as a string. Fix doc string. |
|
1066 |
2821
|
1067 Thu Mar 20 14:47:49 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1068 |
|
1069 * mk-oct-links (links_dir): Don't use -h option for grep. It's |
|
1070 not needed since we are working on one file at a time anyway. |
|
1071 |
2819
|
1072 Mon Mar 17 10:53:29 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1073 |
|
1074 * lex.l (handle_identifier): When handling indirect_ref, set |
|
1075 lexer_flags.quote_is_transpose to 1 so that a.b' to work as |
|
1076 expected. |
|
1077 |
|
1078 * parse.y (param_list_beg, param_list_end): New nonterminals. |
|
1079 (param_list, param_list1): Use them. |
|
1080 |
2811
|
1081 Wed Mar 12 16:57:28 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1082 |
|
1083 * Makefile.in (install-strip): New target. |
|
1084 |
2806
|
1085 Mon Mar 10 22:38:16 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1086 |
|
1087 * Makefile.in (clean): Delete .oct files too. |
|
1088 |
|
1089 * toplev.cc (Vdefault_eval_print_flag): New static variable. |
|
1090 (eval_string): New arg, print. |
|
1091 (Feval): Pass Vdefault_eval_print_flag to eval_string. |
|
1092 (default_eval_print_flag): New function. |
|
1093 (symbols_of_toplev): New function. |
|
1094 |
|
1095 * variables.cc (install_builtin_variables): Call it. |
|
1096 |
|
1097 * pt-exp.h, pt-exp.cc (class tree_boolean_expression): Rename enum |
|
1098 fields `and' and `or' to `bool_and' and `bool_or'. |
|
1099 (tree_unary_expression): Rename enum field `not' to `unot'. |
|
1100 (class tree_binary_expression): Rename enum fields `and' and `or' |
|
1101 to `el_and' and `el_or'. |
|
1102 * parse.y: Change all uses. |
|
1103 |
|
1104 * time.cc (extract_tm): Truncate field values instead of rounding. |
|
1105 (gmtime, localtime): Likewise, for timeval. |
|
1106 |
|
1107 * ov.h (class octave_value): Delete unused variable freeptr. |
|
1108 |
|
1109 * mappers.cc: Delete functions that are already in |
|
1110 liboctave/lo-mappers.cc. |
|
1111 |
|
1112 * oct-strstrm.cc (octave_base_strstream::tell): Use const_cast, |
|
1113 not static_cast. |
|
1114 |
|
1115 * help.cc (help_from_list): Add missing const qualifiers. |
|
1116 * help.h (struct help_list): Likewise. |
|
1117 * lex.l (match_any, plot_style_token): Likewise. |
|
1118 * load-save.cc (extract_keyword, ascii_save_type): Likewise. |
|
1119 * oct-hist.cc (mk_tmp_hist_file): Likewise. |
|
1120 * octave.cc (execute_startup_files): Likewise. |
|
1121 * octave.gperf (struct octave_kw): Likewise. |
|
1122 * pr-output.cc (pr_any_float): Likewise. |
|
1123 * pt-mvr.cc (tree_index_expression::eval_error): Likewise. |
|
1124 * pt-exp-base.h, pt-exp.h, pt-exp.cc: Likewise. |
|
1125 * parse.y: Likewise. |
|
1126 |
2800
|
1127 Sun Mar 9 03:46:45 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1128 |
2806
|
1129 * pt-exp-base.h (tree_expression): Delete extra comma at end of list. |
|
1130 |
|
1131 * dirfns.cc error.cc file-io.cc fsolve.cc input.cc load-save.cc |
|
1132 npsol.cc pt-fcn.cc qpsol.cc quad.cc syscalls.cc toplev.cc |
|
1133 variables.cc: Eliminate embedded newlines in string constants. |
|
1134 |
|
1135 * Map.cc, data.cc, dirfns.cc, dynamic-ld.cc, file-io.cc, |
|
1136 fsolve.cc, getgrent.cc, getpwent.cc, getrusage.cc, help.cc, |
|
1137 input.cc, load-save.cc, mappers.cc, minmax.cc, npsol.cc, |
|
1138 oct-fstrm.cc, oct-procbuf.h, oct-stdstrm.cc, oct-stdstrm.h, |
|
1139 oct-stream.cc, oct-stream.h, oct-strstrm.cc, octave.cc, |
|
1140 ov-base.h, ov-range.cc, ov-typeinfo.cc, ov.cc, pr-output.cc, |
|
1141 pt-cmd.cc, pt-exp.cc, pt-fcn.cc, pt-fvc.cc, pt-mat.cc, |
|
1142 pt-misc.cc, pt-plot.cc, qpsol.cc, quad.cc, sort.cc, strfns.cc, |
|
1143 symtab.cc, syscalls.cc, sysdep.cc, time.cc, toplev.cc, |
|
1144 unwind-prot.cc, unwind-prot.h, variables.cc, xpow.cc: |
|
1145 Use `static_cast<T> (val)' instead of old C-style `(T) val' casts. |
2800
|
1146 |
2799
|
1147 Sat Mar 8 02:35:13 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1148 |
|
1149 * load-save.cc (save_ascii_data, save_three_d): Where appropriate, |
|
1150 use bool instead of int. |
|
1151 (save_binary_data, save_mat_binary_data, save_ascii_data): |
|
1152 Print warning instead of error for wrong type arg. |
|
1153 |
|
1154 * gripes.cc (gripe_wrong_type_arg): New arg, is_error. |
|
1155 |
|
1156 * pt-plot.cc (save_in_tmp_file): Call save_ascii_data with bool |
|
1157 arg, not int. |
|
1158 |
2797
|
1159 Fri Mar 7 00:56:16 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1160 |
|
1161 * dassl.cc (show_dassl_option): For values that are determined |
|
1162 automatically, return a string instead of a magic value (-1.0). |
|
1163 * fsolve.cc (show_fsolve_option): Likewise. |
|
1164 * lsode.cc (show_lsode_option): Likewise. |
|
1165 * npsol.cc (show_npsol_option): Likewise. |
|
1166 * qpsol.cc (show_qpsol_option): Likewise. |
|
1167 |
|
1168 * variables.cc (extract_function): New function. |
|
1169 * dassl.cc (Fdassl): Use it instead of is_valid_function. |
|
1170 * fsolve.cc (Ffsolve): Likewise. |
|
1171 * npsol.cc (Fnpsol): Likewise. |
|
1172 * qpsol.cc (Fqpsol): Likewise. |
|
1173 * quad.cc (Fquad): Likewise. |
|
1174 |
2795
|
1175 Thu Mar 6 20:07:24 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1176 |
|
1177 * sighandlers.cc (my_friendly_exit, octave_new_handler, |
|
1178 sigfpe_handler, sigpipe_handler): Don't all error() or warning(). |
|
1179 |
|
1180 * pager.cc (pager_death_handler): Don't try to clear pager, just |
|
1181 print message to cerr. |
|
1182 (do_sync): If the status of the pager is bad or it looks like it |
|
1183 is dead, restore the interrupt handler. |
|
1184 |
|
1185 * load-save.cc (extract_keyword (istream&, char*, int&)): |
|
1186 Move declaration of buf inside loop, to avoid deleting its guts |
|
1187 and then trying to reuse it. |
|
1188 (extract_keyword (istream&, char*)): Likewise. |
|
1189 |
2790
|
1190 Tue Mar 4 20:36:53 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1191 |
2791
|
1192 * pt-fcn.cc (tree_function::eval): Protect function from being |
|
1193 redefined while it is being evaluated. |
|
1194 (unprotect_function): New function, for use with unwind_protect stuff. |
|
1195 * pt-fcn.h (tree_function::symtab_entry): New data member. |
|
1196 (tree_function::init): Initialize it to 0. |
|
1197 (tree_function::stash_symtab_ptr): New function. |
|
1198 * parse.y (frob_function_def): Stash pointer to function's |
|
1199 symbol_record in the function definition. |
|
1200 |
|
1201 * symtab.cc (symbol_record::read_only_error): New argument, |
|
1202 action. Change all callers. |
|
1203 (symbol_record::rename): Don't allow read-only symbols to be renamed. |
|
1204 |
2790
|
1205 * variables.cc (Fexist): Don't let files with `.' in their names |
|
1206 confuse us. |
|
1207 |
|
1208 * symtab.cc (valid_identifier (const string&)): New function. |
|
1209 |
2779
|
1210 Sat Mar 1 15:23:14 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
2775
|
1211 |
|
1212 * Version 2.0.5 released. |
|
1213 |
2779
|
1214 Sat Mar 1 01:34:08 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1215 |
|
1216 * Makefile.in (stamp-oct-links): New target. Make links in build |
|
1217 directory too, so that the tests will work. |
|
1218 |
2777
|
1219 * quad.cc: If quad is defined, undefine it. |
|
1220 |
2775
|
1221 * octave.cc: If WITH_KPATHSEARCH is defined, don't define |
|
1222 program_invocation_name or program_invocation_short_name. |
2774
|
1223 |
|
1224 * strftime.c: Update to current version from FSF. |
|
1225 * time.cc (Fstrftime): Call strftime with buf = 0 to get buffer |
|
1226 size, then call again to actually format the time struct. |
|
1227 |
2762
|
1228 Fri Feb 28 01:49:48 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1229 |
2764
|
1230 Implement switch statement: |
|
1231 |
|
1232 * parse.y (Vwarn_variable_switch_label): New static variable. |
|
1233 (warn_variable_switch_label): New function. |
|
1234 (symbols_of_parse): Provide warn_variable_switch_label as Octave |
|
1235 variable here. |
|
1236 (make_switch_case, finish_switch_command): New functions. |
|
1237 (maybe_warn_variable_switch_label): New function. |
|
1238 (end_error): Handle endswitch. |
|
1239 (switch_command, case_list, case_list1, switch_case, default_case): |
|
1240 New nonterminals. |
|
1241 (command): Add switch_command here. |
|
1242 * lex.l (is_keyword): Handle switch, case, otherwise, and endswitch. |
|
1243 * octave_gperf: Recognize switch, case, otherwise, and endswitch. |
|
1244 * token.h (end_tok_type): New item, switch_end. |
|
1245 * pt-cmd.cc (tree_switch_command): New class. |
|
1246 * pt-misc.cc (tree_switch_case, tree_switch_case_list): New classes. |
|
1247 * pt-pr-code.cc (tree_print_code::visit_switch_case, |
|
1248 tree_print_code::visit_switch_case_list, |
|
1249 tree_print_code::visit_switch_command): New functions. |
|
1250 * pt-walk.h (tree_walker::visit_switch_case, |
|
1251 tree_walker::visit_switch_case_list, |
|
1252 tree_walker::visit_switch_command): New pure virtual declarations. |
|
1253 Implement new switch statement. |
|
1254 * SLList-misc.cc: Instantiate lists of pointers to |
|
1255 tree_switch_case objects too. |
|
1256 |
|
1257 * lex.h, lex.l, parse.y: Delete all references to lexer_flags::iffing. |
|
1258 |
2762
|
1259 * syswait.h: Include sys/wait.h on NeXT systems, but don't use the |
|
1260 WIFEXTED, WEXITSTATUS, and WIFSIGNALLED macros defined there. |
|
1261 Also define waitpid in terms of wait4. From Rex A. Dieter |
|
1262 <rdieter@math.unl.edu>. |
|
1263 |
2759
|
1264 Wed Feb 26 16:43:31 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1265 |
|
1266 * oct-stream.cc (octave_base_stream::do_scanf): Don't report an |
|
1267 error if a conversion fails or we reach EOF. |
|
1268 |
2745
|
1269 Tue Feb 25 22:21:05 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1270 |
|
1271 * time.cc (strftime): increase initial buffer size. |
|
1272 |
|
1273 Mon Feb 24 17:49:21 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1274 |
|
1275 * pt-fvc.cc (tree_builtin::eval): Enable checking for max number |
|
1276 of arguments. |
|
1277 |
|
1278 * error.cc (handle_message): Don't fail if args is empty. |
|
1279 |
|
1280 Sun Feb 23 22:42:52 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1281 |
|
1282 * lex.h (lexical_feedback::looking_at_return_list): New field. |
|
1283 (lexical_feedback::looking_at_parameter_list): Ditto. |
|
1284 * lex.l (lexical_feedback::init): Initialize them. |
|
1285 (handle_identifier): Use them. |
|
1286 * parse.y: Likewise. |
|
1287 |
2712
|
1288 Fri Feb 21 15:35:18 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1289 |
2716
|
1290 * lex.l: Require flex 2.5 or later (we really want 2.5.4 or later, |
|
1291 but there seems to be no good way to check the patchlevel). |
|
1292 |
2712
|
1293 * oct-stream.cc (octave_base_stream::oscanf): Instead of returning |
|
1294 an error, just quit processing after a conversion fails. |
|
1295 |
2709
|
1296 Thu Feb 20 02:58:05 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
2702
|
1297 |
|
1298 * Version 2.0.4 released. |
|
1299 |
2706
|
1300 Wed Feb 19 10:30:14 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1301 |
2705
|
1302 * sighandlers.cc (octave_ignore_interrupts, |
|
1303 octave_catch_interrupts, octave_set_interrupt_handler): |
|
1304 Return old value, not pointer to static data. Fix all uses. |
|
1305 |
|
1306 * sighandlers.h (octave_interrupt_handler): Move declaration here. |
|
1307 * sighandlers.cc: From here. |
|
1308 |
|
1309 * toplev.cc: Undo previous change. |
|
1310 |
2702
|
1311 * lex.l (handle_identifier): Allow commands like ls, save, etc. to |
|
1312 also be used as simple variable names. Also make it possible to |
|
1313 use the normal function call syntax to invoke them. |
|
1314 |
2693
|
1315 Tue Feb 18 09:22:04 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
2689
|
1316 |
2702
|
1317 * Makefile.in (%.oct:%.o, %.oct:pic/%.o): Use $(SH_LDFLAGS) here. |
|
1318 |
2690
|
1319 * Version 2.0.3 released. |
|
1320 |
2693
|
1321 Tue Feb 18 00:27:49 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1322 |
|
1323 * toplev.cc (run_command_and_return_output): |
|
1324 Block SIGCHLD while running subprocess. |
|
1325 (cleanup_iprocstream): Unblock it here. |
|
1326 |
|
1327 * sighandlers.h (BLOCK_SIGNAL, BLOCK_CHILD, UNBLOCK_CHILD): Move here. |
|
1328 * sighandlers.cc: From here. |
|
1329 |
2692
|
1330 * toplev.cc (system): Shift then mask exit status. |
|
1331 |
|
1332 * help.cc (try_info): Shift first, then mask exit status. |
|
1333 |
2689
|
1334 * toplev.cc (octave_config_info): Handle option argument. |
|
1335 |
2686
|
1336 Fri Feb 14 16:23:30 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1337 |
2687
|
1338 * oct-stream.cc (octave_base_stream::do_scanf): Don't forget to |
|
1339 check to see if the result matrix needs resizing! |
|
1340 |
2686
|
1341 * Makefile.in (bin-dist): Don't write empty strings to LIBRARIES. |
|
1342 |
2669
|
1343 Thu Feb 13 03:02:08 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1344 |
2676
|
1345 * Makefile.in (stamp-prereq): Depend on stamp-picdir. |
|
1346 (all): Don't depend on stamp-prereq or stamp-picdir. |
|
1347 (stamp-tinst, stamp-interp, libtinst.a, liboctinterp.a): |
|
1348 Do depend on stamp-prereq. |
|
1349 (stamp-picdir): Silence noise about making pic. |
|
1350 (stamp-tinst, stamp-interp): Use $(SH_LD) $(SH_LDFLAGS) instead of |
|
1351 $(CXX) -shared. |
|
1352 |
2675
|
1353 * oct-conf.h.in: Reinstate RLD_FLAG. |
|
1354 * toplev.cc (octave_config_info): Likewise. |
|
1355 |
2672
|
1356 * data.cc (map_d_m, map_m_d, map_m_m): Rename from map. |
|
1357 (Fatan2): Use new function names. |
|
1358 |
|
1359 * pt-fvc.cc (apply_mapper_fcn): Use member function map() instead |
|
1360 of friend function. |
|
1361 |
2669
|
1362 * gripes.cc (gripe_wrong_type_arg (const char*, const string&)): |
|
1363 New function. |
|
1364 |
|
1365 Wed Feb 12 17:27:53 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1366 |
|
1367 * syscalls.cc (symbols_of_syscalls): Add O_ASYNC and O_SYNC. |
|
1368 |
|
1369 Mon Feb 10 01:22:27 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1370 |
|
1371 * dirfns.cc (Freaddir, Fmkdir, Frmdir, Frename): |
|
1372 Also return status and error message. |
|
1373 |
|
1374 * syscalls.cc (Fdup2, Fexec, Ffork, Ffcntl, Funlink, Fmkfifo, |
|
1375 Fpipe, Fwaitpid): Also return error message. |
|
1376 |
2664
|
1377 Sat Feb 8 17:16:09 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1378 |
2665
|
1379 * pt-exp.cc (tree_simple_assignment_expression::eval): Return |
|
1380 value of RHS, but (if printing) print complete value of LHS. |
|
1381 |
2664
|
1382 * pr-output.cc (octave_print_internal): Print a new line for empty |
|
1383 string matrices. |
|
1384 |
2663
|
1385 Wed Feb 5 14:30:44 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1386 |
|
1387 * oct-stream.cc (scanf_format_list::process_conversion): Accept |
|
1388 but don't actually use h, l, and L modifiers. Always insert l |
|
1389 modifier for floating point conversions. |
|
1390 |
2652
|
1391 Fri Jan 31 13:55:10 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1392 |
|
1393 * pager.cc (do_sync): Always flush the cout stream after writing. |
|
1394 |
2643
|
1395 Wed Jan 29 08:25:29 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1396 |
2648
|
1397 * defaults.cc (exec_path): Don't include bin_dir in std_path. |
|
1398 |
2646
|
1399 * pager.cc (do_sync): Flush the cout stream after writing if |
|
1400 running in interactive or forced_interactive mode. |
|
1401 |
|
1402 * mk-oct-links: Rename from mk-oct-links.in. |
|
1403 Don't use symbolic links. |
|
1404 * Makefile.in: Distribute mk-oct-links, not mk-oct-links.in |
|
1405 (mk-oct-links): Delete target. |
|
1406 (install-oct, bin-dist): Don't depend on mk-oct-links. |
|
1407 Run $(srcdir)/mk-oct-links, not ./mk-oct-links. |
|
1408 |
2643
|
1409 * qr.cc (qr): Doc fix. |
|
1410 |
2638
|
1411 Tue Jan 28 10:48:28 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1412 |
|
1413 * Makefile.in (install-inc): Create a relative symbolic link. |
|
1414 (install-bin): Create a relative symbolic link. |
|
1415 |
2630
|
1416 Mon Jan 27 12:12:03 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1417 |
2634
|
1418 * Version 2.0.2 released. |
|
1419 |
|
1420 * Makefile.in (CXXFLAGS_NO_PT_FLAGS): Rename from XALL_CXXFLAGS. |
|
1421 Substitute bsd_gcc_kluge_targets_frag. |
|
1422 |
2630
|
1423 * sysdep.cc (Fsleep): New function. |
|
1424 (Fusleep): New function. |
|
1425 |
|
1426 * toplev.cc (octave_config_info): Don't include RLD_FLAG. |
|
1427 * oct-conf.h.in: Don't define RLD_FLAG |
|
1428 |
2626
|
1429 Sun Jan 26 19:41:48 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1430 |
|
1431 * sighandlers.cc (sigchld_handler): Block SIGCHLD while |
|
1432 sigchld_hander is running. |
|
1433 |
2624
|
1434 Sat Jan 25 22:36:39 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1435 |
|
1436 * Makefile.in (bin-dist): Update for 2.x. |
|
1437 |
2621
|
1438 Fri Jan 24 10:05:00 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1439 |
|
1440 * mk-oct-links.in: New arg, -p, to just print list of files to link. |
|
1441 |
|
1442 * lex.l (handle_number): Convert `D' or `d' exponents to `e' |
|
1443 before scanning. |
|
1444 |
2620
|
1445 Thu Jan 23 10:00:00 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1446 |
|
1447 * pt-pr-code.h, pt-pr-code.cc (tree_print_code::visit_no_op_command): |
|
1448 New function. |
|
1449 * pt-cmd.h, pt-cmd.cc (tree_no_op_command): New class. |
|
1450 * parse.y (make_break_command, make_continue_command, |
|
1451 make_return_command): Where they don't really make sense, turn |
|
1452 these commands into no-ops. Accept return and break if reading a |
|
1453 script file. |
|
1454 * toplev.cc (parse_and_execute): Handle return and break in script |
|
1455 files. Quit executing commands if an error occurs when reading a |
|
1456 script file. Set global_command to 0 after deleting it. |
|
1457 (main_loop): If not interactive or forced_interactive, handle |
|
1458 break and return, and quit executing commands if an error occurs. |
|
1459 Set global_command to 0 after deleting it. |
|
1460 * error.cc (Ferror): Doc fix. |
|
1461 * pt-walk.h (tree_walker): Add declaration for visit_no_op_command. |
|
1462 |
2618
|
1463 Wed Jan 22 20:54:12 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1464 |
|
1465 * input.cc (gnu_readline): If not using readline, flush |
|
1466 rl_outstream after printing prompt. |
|
1467 (octave_gets): Also call flush_octave_stdout() if |
|
1468 forced_interactive, not just if interactive. |
|
1469 (do_input_echo): If forced_interactive, only echo prompt and |
|
1470 command line if also reading a script file. |
|
1471 |
2616
|
1472 Tue Jan 21 23:02:34 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1473 |
|
1474 * SLList.h: Include "BaseSLList.h", not <BaseSLList.h>. |
|
1475 |
2610
|
1476 Mon Jan 20 11:11:12 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1477 |
2614
|
1478 * lex.l (token_stack): Don't declare static. |
|
1479 * pt-plot.cc (tmp_files): Likewise. |
|
1480 * toplev.cc (octave_atexit_functions): Likewise. |
|
1481 * unwind-prot.cc (unwind_protect_list): Likewise. |
|
1482 |
2613
|
1483 * ops.h (MX_MX_BOOL_OP): Correctly handle case of one or both |
|
1484 arguments being empty. Change all callers. |
|
1485 |
|
1486 * oct-stream.cc (printf_value_cache::looking_at_string): |
|
1487 Handle empty strings correctly now that they are 0x0. |
|
1488 |
2610
|
1489 * file-io.cc: Don't include "syswait.h" here. |
|
1490 |
|
1491 Sun Jan 19 22:38:45 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1492 |
|
1493 * oct-stream.h (octave_base_stream::seek): Declare offset arg as |
|
1494 streamoff, not streampos. |
|
1495 (octave_stream::seek): Likewise. |
|
1496 * oct-strstrm.h (octave_base_strstream::seek): Likewise. |
|
1497 * oct-stdstrm.h (octave_base_stdiostream::seek): Likewise. |
|
1498 * oct-iostrm.h (octave_base_iostream::seek): Likewise. |
|
1499 * oct-fstrm.h (octave_fstream::seek): Likewise. |
|
1500 |
2609
|
1501 Fri Jan 17 18:13:10 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1502 |
|
1503 * file-io.cc (Ffflush): Handle stdout as a special case. |
|
1504 |
|
1505 * oct-stream.cc (octave_stream_list::do_get_file_number): |
|
1506 Do the work for octave_stream::get_file_number. |
|
1507 (octave_stream_list::get_file_number): Convert to static function. |
|
1508 |
2608
|
1509 Wed Jan 8 11:42:44 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1510 |
|
1511 * log.cc (sqrtm): For complex arg case, compute sqrt, not log. |
|
1512 |
2602
|
1513 Tue Jan 7 00:16:41 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1514 |
|
1515 * Version 2.0.1 released. |
|
1516 |
|
1517 Mon Jan 6 00:00:07 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1518 |
|
1519 * pt-mat.cc (tm_row_const_rep::all_mt): New variable. |
|
1520 (tm_row_const::all_empty): New function. |
|
1521 (tm_row_const::tm_row_const_rep::init): Set all_mt here. |
|
1522 (tm_const::all_mt): New variable. |
|
1523 (tm_const::all_emtpy): New function. |
|
1524 (tm_const::init): Set all_mt here. |
|
1525 (tree_matrix::eval): Return an empty matrix if the list contains |
|
1526 only empty elements. If it contains only empty strings, return an |
|
1527 empty string. |
|
1528 |
2601
|
1529 Sun Jan 5 12:50:25 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1530 |
|
1531 * ops.h (SC_MX_BOOL_OP, MX_SC_BOOL_OP): New arg, empty_result. |
|
1532 * op-cm-cm.cc, op-cm-cs.cc, op-cm-m.cc, op-cm-s.cc, op-cs-cm.cc, |
|
1533 op-cs-m.cc, op-m-cm.cc, op-m-cs.cc, op-m-m.cc, op-m-s.cc, |
|
1534 op-s-cm.cc, op-s-m.cc, op-str-str.cc: Change all uses of |
|
1535 SC_MX_BOOL_OP and MX_SC_BOOL_OP macros. Return correct results |
|
1536 for empty matrix cases. |
|
1537 |
|
1538 * pt-fcn.cc (tree_function::eval): If Vdefine_all_return_values is |
|
1539 true, initialize return values before evaluating function, for |
|
1540 compatibility with Matlab. |
|
1541 |
|
1542 * oct-stream.cc (get_size): Correctly set size when arg is scalar. |
|
1543 |
|
1544 Thu Jan 2 12:40:10 1997 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1545 |
|
1546 * Makefile.in (install-oct): Quote $(OCT_FILES) in for loop to |
|
1547 avoid syntax error from ksh. |
|
1548 |
|
1549 * pr-output.cc (octave_print_internal): Avoid unused parameter |
|
1550 warning from gcc. |
|
1551 |
2600
|
1552 Thu Dec 19 12:13:42 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1553 |
|
1554 * oct-stream.cc (octave_base_stream::do_scanf): |
|
1555 Don't treat %l{e,f,g} differently from %{e,f,g}. |
|
1556 (octave_base_stream::do_oscanf): Likewise. |
|
1557 |
|
1558 * sighandlers.cc (sigchld_handler): Fix typos. |
|
1559 |
2598
|
1560 Wed Dec 18 20:17:23 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1561 |
2599
|
1562 * file-io.cc (Ffgetl, Ffgets): Also return number of characters read. |
|
1563 |
|
1564 * ov-range.cc (octave_range::not): New function. |
|
1565 * ov-range.h (octave_range::uminus): New function. |
|
1566 |
2598
|
1567 * BaseSLList.cc: Include error.h. |
|
1568 (BaseSLList::error): Call ::error() to process error message. |
|
1569 |
2589
|
1570 Fri Dec 13 02:38:19 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1571 |
|
1572 * ov.cc (octave_value::convert_and_assign): Preserve lhs value if |
|
1573 assignment fails. |
|
1574 |
2586
|
1575 Wed Dec 11 12:33:16 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1576 |
|
1577 * pt-plot.cc (GPLOT_CMD_END): Don't put semicolons at the end of |
|
1578 each plot command; it causes trouble with gnuplot 3.5. |
|
1579 |
2580
|
1580 Tue Dec 10 00:31:13 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1581 |
2583
|
1582 * Version 2.0 released. |
|
1583 |
2584
|
1584 * pr-output.cc (set_format_style): Don't try to access argv unless |
|
1585 argc > 1. |
|
1586 |
2580
|
1587 * SLList-expr.cc SLList-misc.cc SLList-plot.cc SLList-str.cc |
|
1588 SLList-tc.cc SLList-tm.cc SLList.h SLStack-i.cc SLStack-pc.cc |
|
1589 SLStack-str.cc SLStack-sym.cc SLStack-tok.cc SLStack-ue.cc |
|
1590 SLStack-ui.cc, pt-mat.cc: Include Stack.h, Stack.cc, SLStack.cc, |
|
1591 and SLList.cc as necessary. |
|
1592 |
|
1593 * Stack.cc, SLStack.cc, SLList.cc: New files. |
|
1594 * Makefile.in (SOURCES): Add them to the list. |
|
1595 |
2575
|
1596 Mon Dec 9 12:03:45 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1597 |
2577
|
1598 * Makefile.in (install-bin): Use $(EXE) suffix so install will |
|
1599 find the right file on cygwin32 systems. |
|
1600 |
2575
|
1601 * ov.h: Declare proper form of do_binary_op as friend to |
|
1602 octave_value class. |
|
1603 |
2572
|
1604 Sat Dec 7 22:00:10 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1605 |
|
1606 * oct-stream.cc (do_printf_conv, do_scanf_conv, |
|
1607 do_oscanf_num_conv, do_oscanf_str_conv): Convert to real |
|
1608 functions instead of CPP macros, using templates where necessary. |
|
1609 (do_oscanf_num_conv, do_oscanf_str_conv): Correctly handle |
|
1610 discarded values. |
|
1611 |
2569
|
1612 Fri Dec 6 00:20:25 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1613 |
2572
|
1614 * Version 1.94. |
|
1615 |
2571
|
1616 * Map-*.cc, SLList-*.cc, SLStack-*.cc: Include config.h. |
|
1617 |
|
1618 * ov.h: Don't include SLList.h. |
|
1619 |
|
1620 * SLStack.cc: Delete. Move everything to SLStack.h. |
|
1621 |
|
1622 * BaseSLList.h, BaseSLList.cc: New files. Split out the |
|
1623 non-template base class parts of SLList. |
|
1624 |
2569
|
1625 * Makefile.in (TEMPLATE_SRC): Delete. Move files to SOURCES. |
|
1626 * Map.h, Map.cc: Add #pragma interface/implementation. |
|
1627 * SLStack.h, SLStack.cc: Add #pragma interface/implementation. |
|
1628 |
|
1629 * SLList.h, SLList.cc: New files, from libg++, but with #pragma |
|
1630 interface/implementation. |
|
1631 * Makefile.in (SOURCES): Add SLList.cc. |
|
1632 (INCLUDES): Add SLList.h. |
|
1633 |
2566
|
1634 Thu Dec 5 18:36:44 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1635 |
|
1636 * octave.cc: Don't include sun-utils.h. |
|
1637 |
2563
|
1638 Tue Dec 3 23:47:09 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1639 |
|
1640 * op-str-str.cc (eq, ne): Handle operations with scalars. |
|
1641 |
2555
|
1642 Thu Nov 21 12:30:36 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1643 |
|
1644 * ov-str-mat.h (octave_char_matrix_str): Provide transpose and |
|
1645 hermitian operators. |
|
1646 * ov-ch-mat.h (octave_char_matrix): Likewise. |
|
1647 |
2548
|
1648 Wed Nov 20 00:35:57 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1649 |
2554
|
1650 * sighandlers.h (struct octave_interrupt_handler): Provide |
|
1651 forward declaration here. |
|
1652 * sighandlers.cc (octave_interrupt_handler): New struct. |
|
1653 (octave_catch_interrupts): Rename from catch_interrupts. |
|
1654 (octave_ignore_interrupts, octave_set_interrupt_handler): |
|
1655 New functions. |
|
1656 * help.cc, oct-hist.cc, pager.cc, toplev.cc: Use new functions for |
|
1657 handling interrupts so that we can hide the details of whether or |
|
1658 not we have to deal with SIGBREAK. |
|
1659 |
|
1660 * pt-plot.cc [! HAVE_POSIX_SIGNALS] (open_plot_stream): |
|
1661 Simply ignore and restore the interrupt handler here. |
|
1662 |
|
1663 * sighandlers.cc (MAYBE_REINSTALL_SIGHANDLER): New macro. Use it |
|
1664 instead of always checking MUST_REINSTALL_SIGHANDLERS everywhere. |
|
1665 (sigchld_handler): If octave_child_list is empty, wait for any |
|
1666 child, but don't hang, and don't collect status info. |
|
1667 [__EMX__] (sigchld_handler): Save and restore handlers for SIGINT, |
|
1668 SIGBREAK, and SIGCHLD. Ignore them while waiting on children. |
|
1669 (install_signal_handlers): If SIGBREAK exists, handle it like SIGINT. |
|
1670 |
2552
|
1671 * toplev.cc [USE_READLINE] (clean_up_and_exit): |
|
1672 Call rl_deprep_terminal() to restore terminal settings. |
|
1673 |
|
1674 * sysdep.cc [__EMX__ && OS2] (Fextproc): New command. |
|
1675 [__EMX__ && OS2] (FEXTPROC): Alias for Fextproc. |
|
1676 |
|
1677 * Version 1.93. |
|
1678 |
2549
|
1679 * sysdep.cc (octave_chdir): [__EMX__]: Make copy of string before |
|
1680 converting to upper case. |
|
1681 |
2548
|
1682 * getgrent.cc (mk_gr_map): Only set the passwd field if |
|
1683 HAVE_GR_PASSWD is defined. |
|
1684 |
2533
|
1685 Tue Nov 19 12:01:13 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1686 |
2546
|
1687 * sysdep.cc (OS2_init): New function. |
|
1688 [__EMX__] (sysdep_init): Call it. |
|
1689 |
2542
|
1690 * lex.l (plot_style_token): Add new plot styles for gnuplot 3.6. |
2543
|
1691 * pt-plot.cc (subplot_style::columns_ok): Rename from |
|
1692 subplot_style::errorbars. Recognize more styles and do a better |
|
1693 job of diagnosing column number/style mismatches. |
2542
|
1694 |
2536
|
1695 * sighandlers.cc (my_friendly_exit): If we are called twice, try |
|
1696 to remove the signal handler for SIGABRT and the call abort (). |
|
1697 |
2534
|
1698 * help.cc (Ftype): If a function is defined from a file and |
|
1699 transformed text has not been requested, just print the contents |
|
1700 of the file. |
|
1701 |
2533
|
1702 * parse.y (fold): New functions for constant folding for binary |
|
1703 and unary expressions. Keep track of original text even when |
|
1704 transformations occur. |
|
1705 (make_binary_op, make_boolean_op, make_unary_op): Use them. |
|
1706 (finish_colon_expression, finish_matrix): Keep track of original |
|
1707 text even when transformations occur. |
|
1708 |
|
1709 * help.cc (Ftype): Don't mess with Vps4. |
|
1710 Handle new option `-transformed'. |
|
1711 |
|
1712 * pt-const.h, pt-const.cc (tree_constant::print): |
|
1713 New arg, pr_orig_text. |
|
1714 |
|
1715 * pt-exp.h, pt-exp.cc (tree_colon_expression::is_range_constant): |
|
1716 Delete. |
|
1717 |
|
1718 * pt-exp-base.h (tree_expression::original_text): New virtual function. |
|
1719 pt-exp-base.cc (tree_expression::original_text): Default version. |
|
1720 |
|
1721 * pt-pr-code.h (tree_print_code::print_original_text, |
|
1722 tree_print_code::prefix): New fields. |
|
1723 * pt-pr-code.cc (tree_print_code::visit_constant): Pass |
|
1724 print_original_text to tree_constant::print(). |
|
1725 (tree_print_code::indent): Use prefix instead of Vps4. |
|
1726 * pt-fcn.cc (tree_function::print_function_header, |
|
1727 tree_function::print_function_trailer): Pass Vps4 to |
|
1728 tree_print_code_constructor for prefix. |
|
1729 * pt-misc.cc (tree_statement::maybe_echo_code): Pass Vps4 to |
|
1730 tree_print_code_constructor for prefix. |
|
1731 |
|
1732 * pt-mat.h, pt-mat.cc (tree_matrix::all_elements_are_constant): |
|
1733 Rename from is_matrix_constant. |
|
1734 (tree_matrix_row::all_elements_are_constant): Likewise. |
|
1735 Change all callers. |
|
1736 |
|
1737 Mon Nov 18 14:13:32 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1738 |
|
1739 * Makefile.in (install-inc): Try harder to create the link from |
|
1740 include/octave to include/octave-VERSION. |
|
1741 |
2524
|
1742 Sun Nov 17 14:14:48 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1743 |
2527
|
1744 * Makefile.in (parse.cc): Expect 13 shift/reduce conflicts. |
2526
|
1745 |
2525
|
1746 * parse.y (set_stmt_print_flag): New function. |
|
1747 (sep_type): New member for bison %union declaration. |
|
1748 Simplify rules for statement lists keeping track of the type of |
|
1749 the first separator in the values associated with the |
|
1750 nonterminals for the separators. |
|
1751 |
2524
|
1752 * lex.l (handle_identifier): Set lexer_flags.doing_set if the |
|
1753 token is "gset", not "set". |
|
1754 |
|
1755 Sat Nov 16 21:41:26 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1756 |
|
1757 * Makefile.in (parse.cc, lex.cc): Add special rules for these files. |
|
1758 Delete pattern rules for .y and .l files. |
|
1759 |
2522
|
1760 Fri Nov 15 13:48:02 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1761 |
2523
|
1762 * pt-plot.cc: Put semicolons at the ends of all plot commands. |
|
1763 |
2522
|
1764 * defaults.cc (subst_octave_home): Start subsequent searchs from |
|
1765 the end of the replaced text. |
|
1766 |
|
1767 * pr-output.cc (pr_any_float): Kluge for SCO systems. |
|
1768 |
|
1769 * pr-output.cc (pr_any_float, pr_complex): Don't declare inline. |
|
1770 |
|
1771 * mappers.cc: Include lo-ieee.h, for isinf and isnan on SCO |
|
1772 systems. |
|
1773 |
2512
|
1774 Thu Nov 14 00:06:19 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1775 |
2520
|
1776 * pt-plot.cc (Fgset, Fgshow): New commands. |
|
1777 (Fshow): Print warning and call gshow. |
|
1778 (Fset): Print warning and call gset. |
|
1779 |
2517
|
1780 * variables.cc (parse_fcn_file): Add unwind-protect for file |
|
1781 pointer, so the file is always closed. |
|
1782 (get_help_from_file): Likewise. |
|
1783 * toplev.cc (parse_and_execute): Likewise. |
|
1784 |
2516
|
1785 * Makefile.in (install-oct): Depend on mk-oct-links. |
|
1786 (mk-oct-links): New target. |
|
1787 |
2512
|
1788 * Version 1.92. |
|
1789 |
2508
|
1790 Wed Nov 13 11:13:22 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1791 |
2512
|
1792 * sighandlers.cc (sys_siglist): [__EMX__]: Add definitions. |
|
1793 |
|
1794 * octave.cc (execute_startup_files): Allow init file name ot be |
|
1795 specified by an environment variable. |
|
1796 |
|
1797 * dirfns.cc (make_absolute): [__EMX__]: Path is already absolute |
|
1798 if it begins with any character followed by a colon. |
|
1799 |
2511
|
1800 * load-save.cc (read_mat_ascii_matrix, get_lines_and_columns, |
|
1801 get_complete_line): New functions, for reading headless text files. |
|
1802 (load_save_format): Add LS_MAT_ASCII, for headless text files. |
|
1803 (do_load): Handle LS_MAT_ASCII files. |
|
1804 Thanks to Mel Melchner <mjm@research.att.com> for initial version |
|
1805 of this code. |
|
1806 |
2508
|
1807 * sysdep.cc: Conditionally include ieeefp.h. |
|
1808 (BSD_init, SCO_init): New functions. |
|
1809 (sysdep_init): Conditionally call them here. |
|
1810 |
2499
|
1811 Tue Nov 12 00:14:56 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1812 |
2508
|
1813 * pt-plot.cc (open_plot_stream): Don't block SIGCHLD. |
|
1814 |
2499
|
1815 * load-save.cc (read_binary_data): When reading string arrays, be |
|
1816 sure to create an octave_char_matrix_str object, not just an |
|
1817 octave_char_matrix object. |
|
1818 (read_ascii_data): Likewise. |
|
1819 |
2497
|
1820 Mon Nov 11 22:52:58 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1821 |
|
1822 * load-save.cc (read_binary_data): Don't forget teminating NUL for |
|
1823 string that we plan to insert. |
|
1824 (read_ascii_data): Likewise. |
|
1825 |
2495
|
1826 Sun Nov 10 16:58:07 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1827 |
2496
|
1828 * dirfns.cc (Ffnmatch): New function. |
|
1829 |
2495
|
1830 * octave.cc (intern_argv): Use new string_vector constructor. |
|
1831 |
|
1832 * ov-str-mat.cc (octave_char_matrix_str::all_strings): Have |
|
1833 charMatrix::row_as_string() strip trailing whitespace. |
|
1834 |
|
1835 * dirfns.cc (Fglob): new function. |
|
1836 |
|
1837 * sysdep.cc (oct_tilde_expand): Provide version that works on |
|
1838 string vectors too. |
|
1839 (Ftilde_expand): Work on string vector args. |
|
1840 |
|
1841 * load-save.cc (save_binary_data): Call char_matrix_value() to |
|
1842 extract charMatrix from octave_value object, not all_strings(). |
|
1843 (save_ascii_data): Likewise. |
|
1844 * pt-mat.cc (tree_matrix::eval): Likewise. |
|
1845 |
|
1846 * ov.h (octave_value::all_strings): Return string_vector, not |
|
1847 charMatrix. |
|
1848 * ov-base.cc (octave_base_value::all_strings): Likewise. |
|
1849 * ov-str-mat.h, ov-str-mat.cc (octave_char_matrix_str::all_strings): |
|
1850 Likewise. |
|
1851 |
2487
|
1852 Fri Nov 8 09:54:59 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1853 |
2492
|
1854 * defaults.cc, dynamic-ld.cc, fn-cache.cc, help.cc, oct-hist.cc, |
|
1855 octave.cc, pager.cc, pt-fcn.cc, toplev.cc, utils.cc, variables.cc, |
|
1856 lex.l: Change #include "" to #include <> for defaults.h, |
|
1857 oct-conf.h, oct-gperf.h, y.tab.h, and version.h, to avoid getting |
|
1858 them from $srcdir when we really want the version from the build |
|
1859 directory. (Maybe this should be done for all the include files, |
|
1860 not just those that are auto-generated? Hmm.) |
|
1861 |
2488
|
1862 * defaults.h.in (CXXLIB_LIST, CXXLIB_PATH, FLIB_LIST, FLIB_PATH): |
|
1863 Delete. |
|
1864 |
2487
|
1865 * Makefile.in (install-oct): Use $(INSTALL_PROGRAM) for .oct files. |
|
1866 |
2477
|
1867 Thu Nov 7 07:59:07 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1868 |
2487
|
1869 * variables.cc (gobble_leading_white_space): New arg, update_pos. |
|
1870 * (is_function_file): Don't update file position information here. |
|
1871 |
2482
|
1872 * Version 1.91. |
|
1873 |
2479
|
1874 * pt-fvc.cc (tree_indirect_ref::reference): If the lhs object is |
|
1875 not a map, convert it to one. |
|
1876 |
|
1877 * ov-typeinfo.h (init_tab_sz): New static member. |
|
1878 |
2477
|
1879 * ov-struct.cc, ov-struct.h: Add hooks for custom memory management. |
|
1880 * ov-scalar.cc, ov-scalar.h: Likewise. |
|
1881 * ov-re-mat.cc, ov-re-mat.h: Likewise. |
|
1882 * ov-range.cc, ov-range.h: Likewise. |
|
1883 * ov-cx-mat.cc, ov-cx-mat.h: Likewise. |
|
1884 * ov-complex.cc, ov-complex.h: Likewise. |
|
1885 * ov-ch-mat.cc, ov-ch-mat.h: Likewise. |
|
1886 |
2474
|
1887 Wed Nov 6 12:32:48 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1888 |
2482
|
1889 * pager.cc (do_sync): Don't call clear_external_pager() here. |
2476
|
1890 |
2475
|
1891 * pt-const.h (tree_constant::allocator) New static member. |
|
1892 (tree_constant::operator new, tree_constant::operator delete): |
|
1893 Implement with custom allocator. |
|
1894 |
|
1895 * syscalls.cc (Fgetgid, Fgetegid): New functions. |
|
1896 |
|
1897 * sighandlers.cc (sigchld_handler): If necessary, reinstall |
|
1898 handler after call to waitpid(). |
|
1899 |
|
1900 * pager.cc (pager_death_handler): Don't use warning() to print |
|
1901 message. |
|
1902 |
|
1903 * getgrent.cc: New file. |
|
1904 * Makefile.in (DLD_SRC): Add it. |
|
1905 |
|
1906 * ov.cc (octave_value::print_with_name): Call is_map() instead of |
|
1907 print_as_structure(). |
|
1908 * ov-struct.cc (octave_struct::print): Likewise. |
|
1909 |
|
1910 * ov.h, ov.cc, pt-const.h: Delete force_numeric(), make_numeric(), |
|
1911 convert_to_matrix_type(), print_as_structure() member functions. |
|
1912 |
2474
|
1913 * variables.cc (is_function_file): Call gobble_leading_whitespace |
|
1914 here to strip all leading whitespace and comments. |
|
1915 (parse_fcn_file): If reading a function file, call |
|
1916 gobble_leading_whitespace again after resetting parser state to |
|
1917 grab help text. |
|
1918 |
2469
|
1919 Tue Nov 5 13:00:35 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1920 |
2472
|
1921 * syscalls.cc (Fgeteuid, Fgetuid): New functions. |
|
1922 |
|
1923 * getpwent.cc: Use gripe_not_supported from gripes.cc, instead of |
|
1924 local gripe_not_implemented function. |
|
1925 |
2470
|
1926 * input.cc, sysdep.cc, variables.cc: Only include readline.h and |
|
1927 history.h if USE_READLINE is defined. |
|
1928 |
|
1929 * help.cc: Make it compile without warnings even if USE_GNU_INFO |
|
1930 is not defined. |
|
1931 |
2469
|
1932 * sighandlers.h (octave_child_list): Don't define |
|
1933 HAVE_POSIX_SIGNALS HERE. |
|
1934 |
|
1935 * sighandlers.cc (SIGHANDLER_RETURN): New macro. |
|
1936 (generic_sig_handler, sigchld_handler, sigfpe_handler, |
|
1937 sigint_handler, sigpipe_handler): Use it. |
|
1938 (sigchld_handler, sigfpe_handler, sigint_handler, sigpipe_handler): |
|
1939 Only reinstall signal handler if MUST_REINSTALL_SIGHANDLER is defined. |
|
1940 |
2463
|
1941 Sun Nov 3 00:45:30 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1942 |
2466
|
1943 * pt-const.cc (tree_constant::print): Just call val.print(). |
|
1944 * ov-base.cc, ov-ch-mat.cc, ov-colon.cc, ov-complex.cc, |
|
1945 ov-cx-mat.cc, ov-range.cc, ov-re-mat.cc, ov-scalar.cc, |
|
1946 ov-str-mat.cc, ov-struct.cc ov-va-args.cc, ov.cc (print): |
|
1947 Handle pr_as_read_syntax arg. |
|
1948 |
|
1949 * defaults.cc (subst_octave_home): Search for prefix repeatedly in |
|
1950 retval, not s. |
|
1951 |
|
1952 * gripes.h: Make declaration of gripes_not_supported match |
|
1953 definition. |
|
1954 |
2465
|
1955 * mk-oct-links.in: In sed command, match "DEFUN_DLD *( *", not |
|
1956 "DEFUN_DLD_BUILTIN *( *". |
|
1957 |
|
1958 * chol.cc, colloc.cc, dassl.cc, det.cc, eig.cc, expm.cc, fft.cc, |
|
1959 fft2.cc, filter.cc, find.cc, fsolve.cc, fsqp.cc, getpwent.cc, |
|
1960 getrusage.cc, givens.cc, hess.cc, ifft.cc, ifft2.cc, inv.cc, |
|
1961 log.cc, lpsolve.cc, lsode.cc, lu.cc, minmax.cc, npsol.cc, pinv.cc, |
|
1962 qpsol.cc, qr.cc, quad.cc, qzval.cc, rand.cc, schur.cc, sort.cc, |
|
1963 svd.cc, syl.cc, time.cc: Change all uses of DEFUN_DLD_BUILTIN to |
|
1964 be just DEFUN_DLD. |
|
1965 |
|
1966 * defun-dld.h: Eliminate DEFUN_DLD_BUILTIN. |
|
1967 |
2464
|
1968 * syswait.h: Use #ifdef HAVE_SYS_WAIT_H, not #if HAVE_SYS_WAIT_H |
|
1969 to decide whether to include sys/wait.h. |
|
1970 |
|
1971 * pt-exp-base.h (tree_expression): Declare oper() here as a |
|
1972 virtual member function. |
|
1973 |
2463
|
1974 * pt-pr-code.cc (tree_print_code::visit_constant): Check for |
|
1975 string before checking for char_matrix. |
|
1976 |
|
1977 * ov-ch-mat.cc (octave_char_matrix::print): Supply correct number |
|
1978 of args to octave_print_internal(). |
|
1979 |
2457
|
1980 Sat Nov 2 20:44:55 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1981 |
2458
|
1982 * file-io.cc (Ftmpnam): Rename from Foctave_temp_file_name. |
|
1983 |
2457
|
1984 * Makefile.in (DLD_SRC): Move time.cc and getrusage.cc here from |
|
1985 SOURCES. Add getpwent.cc. |
|
1986 |
|
1987 * getrusage.cc: Rename from resource.cc. Make getrusage a |
|
1988 loadable function. |
|
1989 |
|
1990 * time.cc: Rename from timefns.cc. Make time functions loadable. |
|
1991 |
|
1992 * getpwent.cc: New file. |
|
1993 |
2439
|
1994 Wed Oct 30 01:06:19 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
1995 |
2452
|
1996 * Version 1.90. |
|
1997 |
|
1998 * Makefile.in (DISTFILES): Add ChangeLog. |
|
1999 |
2449
|
2000 * ov-range.cc (octave_range::convert_to_str): New function. |
|
2001 |
|
2002 * ov-str-mat.h (octave_char_matrix_str::char_matrix_value): |
|
2003 Delete function. Already handled by octave_char_matrix class. |
|
2004 |
|
2005 * ov-ch-mat.h (octave_char_matrix::convert_to_str): New function. |
|
2006 |
2448
|
2007 * pager.cc (Fmore): Set page_screen_output to 1.0 or 0.0, not |
|
2008 "true" or "false". |
|
2009 |
2447
|
2010 * ov-ch-mat.cc, ov-struct.cc, ov-struct.h, pr-output.cc, |
|
2011 pt-cmd.cc, pt-const.cc, pt-const.h, pt-fcn.cc, pt-fvc-base.cc, |
|
2012 pt-fvc-base.h, pt-fvc.cc, pt-fvc.h, rand.cc, sighandlers.cc, |
|
2013 variables.cc, variables.h: Delete unused code. |
|
2014 |
2445
|
2015 * octave.cc: Only include pwd.h if HAVE_PWD_H. |
|
2016 |
|
2017 * oct-strstrm.h: Include <string>, not <string.h>. |
|
2018 |
2442
|
2019 * defaults.cc, dirfns.cc, file-io.cc, help.cc, input.cc, |
|
2020 oct-hist.cc, oct-procbuf.cc, oct-procbuf.h, octave.cc, pager.h, |
|
2021 procstream.h, pt-misc.cc, pt-plot.cc, sighandlers.cc, strftime.c, |
|
2022 syscalls.cc, sysdep.cc, syswait.h, toplev.cc, utils.cc, |
|
2023 variables.cc: Only include sys/types.h if HAVE_SYS_TYPES_H. |
|
2024 |
2440
|
2025 * error.h (panic): Use GCC_ATTR_NORETURN macro, not NORETURN. |
|
2026 * toplev.h (clean_up_and_exit): Likewise. |
|
2027 * utils.h (jump_to_top_level): Likewise. |
|
2028 |
2439
|
2029 * derfaults.h.in, defaults.cc (local_arch_lib_dir): New variable. |
|
2030 * defaults.cc (set_default_local_arch_lib_dir): New function. |
|
2031 (install_defaults): Call it. |
|
2032 (exec_path): Use Vlocal_arch_lib_dir here. |
|
2033 * toplev.cc (octave_config_info): Add localarchlibdir to structure. |
|
2034 |
2436
|
2035 Tue Oct 29 15:54:27 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2036 |
2437
|
2037 * Makefile.in (install-oct): Don't do anything if $(OCT_FILES) is |
|
2038 empty. |
|
2039 |
2436
|
2040 * ov-range.cc (octave_range::index): New Function. |
|
2041 (octave_range::all, octave_range::any, octave_range::is_true): |
|
2042 Make these functions work. |
|
2043 |
|
2044 * ov.cc (octave_value::try_assignment_with_conversion): Remove |
|
2045 left over debugging print statements. |
|
2046 |
|
2047 Mon Oct 28 10:49:03 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2048 |
|
2049 * strftime.c: Add missing #endif for previous change. |
|
2050 |
2435
|
2051 Sun Oct 27 14:06:44 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2052 |
|
2053 * oct-hist.cc (do_history): Rewite option parsing to avoid |
|
2054 (probably bogus) errors from g++ on cygwin32 system. |
|
2055 |
|
2056 * strftime.c: Use autoconf macros TIME_WITH_SYS_TIME and |
|
2057 HAVE_SYS_TIME_H to decide which time.h files to include. |
|
2058 |
|
2059 * oct-stream.h, oct-stream.cc (octave_stream::error, |
|
2060 octave_base_stream::error): Rename errno => err_num. |
|
2061 |
2432
|
2062 Sat Oct 26 10:40:05 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2063 |
2434
|
2064 * oct-hist.cc (do_history): Move declaration of file inside |
|
2065 conditional. |
|
2066 |
2432
|
2067 * defun.h (DEFVAR_INT): Set eternal flag with (svc_fcn != 0) |
|
2068 instead of (sv_fcn ? 1 : 0) |
|
2069 |
2427
|
2070 Fri Oct 25 01:10:51 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2071 |
2431
|
2072 * ov-ch-mat.h (octave_char_matrix::any): Return 0.0 instead of false. |
|
2073 (octave_char_matrix::all): Likewise. |
|
2074 |
|
2075 * input.cc (Fecho): When binding value of echo_executing_commands, |
|
2076 cast ECHO_* to double. |
|
2077 |
|
2078 * sighandlers.cc (octave_child_list::do_remove): Delete unused |
|
2079 variable `enlarge'. |
|
2080 |
|
2081 * pt-const.h (tree_constant::tree_constant (const tree_constant&)): |
|
2082 Don't pass arg to tree_fvc constructor. |
|
2083 |
2427
|
2084 * resource.cc (getrusage): [HAVE_GETRUSAGE && RUSAGE_TIMES_ONLY]: |
|
2085 Only fill in time values. |
|
2086 |
|
2087 Thu Oct 24 20:37:28 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2088 |
|
2089 * parse.y: Comment out the %expect declaration so byacc can |
|
2090 compile this file. |
|
2091 (if_cmd_list): Add missing semicolon. |
|
2092 Include <cstdlib> for getenv if using byacc. |
|
2093 |
|
2094 * ov.h: Move typedefs outside of octave_value class scope to avoid |
|
2095 problem with cygwin32 beta16 compiler. |
|
2096 |
2421
|
2097 Fri Oct 18 13:44:33 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2098 |
2423
|
2099 * ov.h (octave_value::index): Undo previous change. |
|
2100 * ov.cc (octave_value constructors): Call maybe_mutate() in most |
|
2101 cases. |
|
2102 |
|
2103 * ov-complex.cc (octave_complex::index): Avoid implicit type |
|
2104 conversion back to scalar type. |
|
2105 * ov-scalar.cc (octave_scalar::index): Likewise. |
|
2106 |
2421
|
2107 * ov.h (octave_value::index): Call maybe_mutate() on retval before |
|
2108 returning it. |
|
2109 |
2418
|
2110 Wed Oct 16 12:00:11 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2111 |
2420
|
2112 * ov.h (octave_value::struct_elt_val): New optional arg, silent. |
|
2113 * ov-base.h, ov-base.cc, ov-struct.h, ov-struct.cc: Likewise, but |
|
2114 for the derived classes the arg is required. |
|
2115 |
|
2116 * data.cc (Fstruct_contains): Require arguments to be struct and |
|
2117 string, respectively. Call octave_value::struct_elt_val with |
|
2118 silent flag set. |
|
2119 |
2419
|
2120 * pt-mat.cc (tm_row_const::tm_row_const_rep::eval_error, |
|
2121 tm_row_const::tm_row_const_rep::eval_warning): New functions. |
|
2122 (tm_row_const::tm_row_const (const tree_matrix_row&): Use them to |
|
2123 give better error messages. |
|
2124 |
2418
|
2125 * pt-fvc.cc (tree_identifier::eval): Avoid dereferencing null |
|
2126 object_to_eval. |
|
2127 |
2412
|
2128 Tue Oct 15 11:35:51 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2129 |
|
2130 * op-cs-cm.cc, op-cs-cs.cc, op-cs-m.cc, op-cs-s.cc |
|
2131 (complex_matrix_conv): New functions. |
|
2132 Install preferred assignment conversion and widening ops. |
|
2133 |
|
2134 * op-s-cm.cc, op-s-cs.cc (complex_matrix_conv): New functions. |
|
2135 Install preferred assignment conversion and widening ops. |
|
2136 |
|
2137 * op-s-m.cc, op-s-s.cc (matrix_conv): New functions. |
|
2138 Install preferred assignment conversion and widening ops. |
|
2139 |
|
2140 * ov.cc (octave_value::try_assignment_with_conversion, |
|
2141 octave_value::convert_and_assign, octave_value::try_assignment): |
|
2142 New functions. |
|
2143 (octave_value::assign): Use them to implement twisted logic for |
|
2144 type conversions in assigments. |
|
2145 |
|
2146 * pt-const.h (tree_constant::maybe_mutate): New function. |
|
2147 * ov.h (octave_value::maybe_mutate): New function. |
|
2148 (octave_value::try_narrowing_conversion): New function. |
|
2149 Use just one typedef for widening_op_fcn and numeric_conv_fcn. |
|
2150 Change all uses. |
|
2151 * ov-base.h, ov-complex.h, ov-complex.cc, ov-cx-mat.h, |
|
2152 ov-cx-mat.cc, ov-range.h, ov-range.cc, ov-re-mat.h, ov-re-mat.cc, |
|
2153 Provide derived class versions of try try_narrowing_conversion(). |
|
2154 |
|
2155 * pr-output.cc (octave_print_internal): Don't bother handing off |
|
2156 to scalar/real versions, even when it would seem appropriate. |
|
2157 |
|
2158 * symtab.cc (symbol_def::define (tree_constant *)): Call |
|
2159 maybe_mutate on constants here. |
|
2160 |
2405
|
2161 Mon Oct 14 11:05:24 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2162 |
2407
|
2163 * pt-fvc.cc (tree_identifier::eval): If retval is undefined and |
|
2164 the object to eval is a constant, print error message. |
2406
|
2165 |
2405
|
2166 * Makefile (distclean): Remove *.oct too. |
|
2167 |
|
2168 * defun-int.h: Include variables.h here. |
|
2169 |
2403
|
2170 Sun Oct 13 10:52:28 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2171 |
2404
|
2172 * variables.cc (print_symbol_info_line): Never print negative |
|
2173 diminsions. |
|
2174 |
|
2175 * symtab.h (octave_symbol_record_info): Store const_type as string. |
|
2176 (octave_symbol_record_info::init): Delete. Fix constructors. |
|
2177 (octave_symbol_record_info::type_name): Handle const_type as string. |
|
2178 |
2403
|
2179 * octave.cc (maximum_braindamage): Replace "true" with 1.0 and |
|
2180 "false" with 0.0 in calls to bind_builtin_variable(). |
|
2181 Include sun-utils.h here. |
2404
|
2182 (intern_argv): Also bind __argv__. |
2403
|
2183 |
2391
|
2184 Sat Oct 12 13:40:21 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2185 |
2399
|
2186 * Makefile.in (distclean): Also delete mk-oct-links. |
|
2187 |
|
2188 Fri Oct 11 13:13:13 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2189 |
2391
|
2190 Changes for Octave's new type system: |
|
2191 |
|
2192 * arith-ops.cc: Delete. |
|
2193 * pt-const.h, pt-const.cc: Massive changes. Most functionality |
|
2194 moved to ov.h, ov.cc, and derived classes. |
|
2195 |
|
2196 * variables.h, variables.cc (octave_variable_reference): New class |
|
2197 for getting references to variables and structure elements used in |
|
2198 assignments or value contexts. |
|
2199 |
|
2200 * symtab.h, symtab.cc (symbol_record::define (const octave_value&), |
|
2201 symbol_record::variable_value, symbol_record::variable_reference): |
|
2202 New functions. |
|
2203 (symbol_record_info::type_name): Rename from type_as_string. |
|
2204 |
|
2205 * pt-fvc-base.h, pt-fvc-base.cc (tree_fvc::increment, |
|
2206 tree_fvc::decrement): New functions to replace |
|
2207 tree_fvc::bump_value. |
|
2208 #if 0 assign and lookup_map_element functions. |
|
2209 |
|
2210 * pt-mvr.cc (tree_multi_assignment_expression::eval): |
|
2211 Generated RHS value is now a tree_constant. |
|
2212 |
|
2213 * pt-exp.h, pt-exp.cc (tree_boolean_expression): New class. |
|
2214 (tree_unary_expression, tree_binary_expression, |
|
2215 tree_boolean_expression): Move codes here from tree_expression. |
|
2216 (tree_simple_assignment_expression): Cope with changes to way of |
|
2217 doing assignments. |
|
2218 |
|
2219 * pt-exp-base.h, pt-exp-base.cc (enum type): Delete codes for |
|
2220 unary and binary ops. |
|
2221 (tree_expression::expression_type): Delete. |
|
2222 (tree_expression::is_logically_true): Hand off to |
|
2223 octave_value::is_true to do real work. |
|
2224 |
|
2225 * pr-output.h, pr-output.cc (any_element_is_inf_or_nan, |
|
2226 all_elements_are_ints): Delete. Call member new functions for |
|
2227 these operations. |
|
2228 (free_format, plus_format, bank_format, hex_format, |
|
2229 compact_format, print_e, print_big_e): Use bool, not int. |
|
2230 (octave_print_internal): Hand off to scalar/real versions when |
|
2231 appropriate. |
|
2232 |
|
2233 * octave.cc (main): Call initialize_types() and install_ops(). |
|
2234 (verbose_usage): Add WWW address to output. |
|
2235 |
|
2236 * parse.y (indirect_ref): Handle by making a tree instead of a |
|
2237 list using new version of tree_indirect_ref class. |
|
2238 |
|
2239 * parse.y (make_boolean_op): New function. Use it instead of |
|
2240 make_binary_op to create trees for && and || ops. |
|
2241 (make_binary_op): Codes come from tree_binary_expression now, |
|
2242 instead of tree_expression. |
|
2243 (make_unary_op): Codes come from tree_unary_expression now, |
|
2244 instead of tree_expression. |
|
2245 (make_boolean_op): Codes come from tree_boolean_expression. |
|
2246 |
|
2247 *parse.y (tree_constant_type): Change type to tree_constant* from |
|
2248 octave_value*, and rename from octave_value_type. Change uses. |
|
2249 |
|
2250 * defun.h (DEFVAR_INT): Pass octave_value not pointer to |
|
2251 octave_value for defn when creating builtin_variable. |
|
2252 |
|
2253 * gripes.h, gripes.cc (gripe_invalid_conversion): Args are |
|
2254 strings, not char*. |
|
2255 (gripe_implicit_conversion, gripe_divide_by_zero): New extern |
|
2256 gripe functions. |
|
2257 |
|
2258 * mkbuiltins: For each file, create a separate static function to |
|
2259 install builtins, then create another single extern function to |
|
2260 call all of them. |
|
2261 |
|
2262 * pt-fcn.cc (tree_function::bind_nargin_and_nargout): |
|
2263 Just pass doubles and let symbol_record::define handle creating |
|
2264 new value. |
|
2265 |
|
2266 * pt-pr-code.cc, pt-pr-code.h (visit_constant): Renamed from |
|
2267 visit_octave_value. |
|
2268 (visit_unary_expression): Use tree_expression::is_prefix_op() |
|
2269 instead of switch on op types. |
|
2270 |
|
2271 * pt-walk.h (visit_constant): Renamed from visit_octave_value. |
|
2272 |
|
2273 * pt-misc.cc (initialize_undefined_elements): Get reference to |
|
2274 tmp, then assign. |
|
2275 * pt-cmd.cc (do_for_loop_once): Likewise, for loop identifier. |
|
2276 |
|
2277 * input.cc (generate_struct_completions, looks_like_struct): Cast |
|
2278 tmp_fvc to tree_constant*, not octave_value*. |
|
2279 (get_user_input): Call print() on retval, not eval(1). |
|
2280 |
|
2281 * help.cc (Ftype): Cast defn to tree_constant*, not octave_value*. |
|
2282 |
|
2283 * balance.cc: Fix docstring. |
|
2284 |
|
2285 * dassl.cc, fsolve.cc, load-save.cc, lsode.cc, npsol.cc, qpsol.cc, |
|
2286 quad.cc: |
|
2287 Include pt-fvc.h. |
|
2288 |
|
2289 * data.cc (Fstruct_contains): call octave_value::struct_elt_val, |
|
2290 not octave_value::lookup_map_element. |
|
2291 |
|
2292 * dirfns.cc (Fcd): Pass directory name as string directly to |
|
2293 bind_builtin_variable instead of creating new octave_value. |
|
2294 |
|
2295 * toplev.cc: Include pt-fvc.h and lo-mappers.h |
|
2296 |
|
2297 * data.cc, error.cc, file-io.cc, load-save.cc, pager.cc, |
|
2298 pt-mat.cc, pt-plot.cc, syscalls.cc, toplev.cc: |
|
2299 Include variables.h. |
|
2300 |
|
2301 * Array-tc.cc, Map-tc.cc, SLList-misc.cc SLList-tc.cc, data.cc, |
|
2302 defaults.cc, dynamic-ld.cc, error.cc, gripes.cc, lex.l, octave.cc, |
|
2303 oct-map.h, oct-map.cc, oct-obj.h, pt-cmd.cc, pt-exp.cc, pt-fcn.cc, |
|
2304 pt-fvc-base.cc, pt-mat.cc, pt-misc.cc, pt-mvr-base.cc, pt-mvr.h, |
|
2305 resource.cc, strfns.cc, sysdep.cc, timefns.cc, toplev.cc: |
|
2306 Include ov.h instead of pt-const.h. |
|
2307 |
|
2308 * xpow.cc (any_element_is_negative): Delete. |
|
2309 (xpow and elem_xpow functions): Check conformance here. |
|
2310 |
|
2311 * xdiv.cc (mx_leftdiv_conform, mx_div_conform): |
|
2312 Now template-based, taking Matrices instead of dimensions as args. |
|
2313 Change all callers. |
|
2314 |
|
2315 * op-cm-cm.cc, op-cm-cm.h, op-cm-cs.cc, op-cm-cs.h, op-cm-m.cc, |
|
2316 op-cm-m.h, op-cm-s.cc, op-cm-s.h, op-cs-cm.cc, op-cs-cm.h, |
|
2317 op-cs-cs.cc, op-cs-cs.h, op-cs-m.cc, op-cs-m.h, op-cs-s.cc, |
|
2318 op-cs-s.h, op-m-cm.cc, op-m-cm.h, op-m-cs.cc, op-m-cs.h, op-m-m.cc, |
|
2319 op-m-m.h, op-m-s.cc, op-m-s.h, op-s-cm.cc, op-s-cm.h, op-s-cs.cc, |
|
2320 op-s-cs.h, op-s-m.cc, op-s-m.h, op-s-s.cc, op-s-s.h, |
|
2321 op-str-str.cc, op-str-str.h, ops.cc, ops.h, ov-base.cc, ov-base.h, |
|
2322 ov-ch-mat.cc, ov-ch-mat.h, ov-colon.cc, ov-colon.h, ov-complex.cc, |
|
2323 ov-complex.h, ov-cx-mat.cc, ov-cx-mat.h, ov-range.cc, ov-range.h, |
|
2324 ov-re-mat.cc, ov-re-mat.h, ov-scalar.cc, ov-scalar.h, ov-str-mat.cc, |
|
2325 ov-str-mat.h, ov-struct.cc, ov-struct.h, ov-typeinfo.cc, |
|
2326 ov-typeinfo.h, ov-va-args.cc, ov-va-args.h, ov.cc, ov.h: |
|
2327 New files for Octave's new type system. |
|
2328 * Makefile.in: Add them to the appropriate lists. |
|
2329 |
|
2330 Sat Sep 14 21:58:33 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2331 |
|
2332 * mkbuiltins: Use .df instead of .def. |
|
2333 Write one function for each .df file, then call them |
|
2334 all in install_builtin_functions(). |
|
2335 * Makefile.in: Handle .df instead of .def. |
|
2336 |
|
2337 * balance.cc (balance): Fix typo in doc string. |
|
2338 |
|
2339 Wed Aug 28 21:01:49 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2340 |
|
2341 * octave.cc (verbose_usage): Include WWW address and bug-octave |
|
2342 mailing list address. |
|
2343 |
2354
|
2344 Tue Aug 20 17:41:19 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2345 |
2358
|
2346 * Makefile.in: Only define pattern rules for making .oct files if |
|
2347 OCTAVE_LITE is true. |
|
2348 Only add pic/ to $(TI_OBJ) if $(SHARED_LIBS) is true. |
|
2349 (stamp-picdir): Only create a pic subdirectory if SHARED_LIBS or |
|
2350 OCTAVE_LITE is true AND CPICFLAG or CXXPICFLAG is not empty. |
|
2351 |
2354
|
2352 * minmax.cc (Fmin, Fmax): Deal with changes to Matrix class |
|
2353 min/max methods. |
|
2354 |
2345
|
2355 Thu Jul 25 01:42:38 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2356 |
2348
|
2357 * input.cc (generate_possible_completions): Force the names to be |
|
2358 unique. |
|
2359 |
2345
|
2360 * load-save.cc (read_mat_binary_data): Expect to read terminating |
|
2361 NUL character in the variable name. |
|
2362 (save_mat_binary_data): Likewise, save it here. |
|
2363 |
2341
|
2364 Wed Jul 24 05:08:07 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2365 |
2343
|
2366 * lsode.cc (Flsode): Don't set the return value if an error |
|
2367 occurred during integration. |
2344
|
2368 * dassl.cc (Fdassl): Likewise. |
2343
|
2369 |
2341
|
2370 * file-io.cc (symbols_of_file_io): Redefine values of SEEK_SET, |
|
2371 SEEK_CUR, and SEEK_END for Matlab compatibility. |
|
2372 * oct-stream.cc (seek): Check for compatible values of ORIGIN arg. |
|
2373 Also handle "bof", "cof", and "eof". |
|
2374 |
2338
|
2375 Fri Jul 19 15:24:36 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2376 |
|
2377 * pt-const.cc: When creating octave_value_reps from ComplexMatrix |
|
2378 values, check to see if all the elements are actually real. |
|
2379 |
2330
|
2380 Tue Jul 16 10:53:42 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2381 |
2341
|
2382 * input.cc (decode_prompt_string): Swap meanings of \h and \H. |
2330
|
2383 |
|
2384 Mon Jul 15 16:01:51 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2385 |
|
2386 * toplev.cc (run_command_and_return_output): Renamed from do_system. |
|
2387 (Fsystem): Make `system ("emacs")' work as one would expect. |
|
2388 |
|
2389 Sun Jul 14 17:34:33 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2390 |
|
2391 * file-io.cc (Ffopen, Ffread, Ffwrite): Update doc strings, |
|
2392 correctly handle default architecture and precision args. |
|
2393 |
|
2394 * load-save.cc (mopt_digit_to_float_format): Rename from |
|
2395 get_floating_point_format. |
|
2396 (float_format_to_mopt_digit): New function. |
|
2397 |
|
2398 * oct-stream.cc (octave_base_stream::read, octave_base_stream::write): |
|
2399 Simplify by calling Matrix::read and Matrix::write to do real work |
|
2400 of reading, writing, and format conversion. |
|
2401 |
|
2402 * oct-stream.h (octave_base_stream): Move data_type enum to |
|
2403 liboctave/data-conv.h. Use float_format from |
|
2404 liboctave/mach-info.h instead of arch_type enum. |
|
2405 |
|
2406 * sysdep.h, sysdep.cc (octave_words_big_endian, ten_little_endians): |
|
2407 Delete. Now part of oct_mach_info class in liboctave. |
|
2408 |
|
2409 Tue Jul 9 11:18:59 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2410 |
|
2411 * arith-ops.cc, balance.cc, dassl.cc, data.cc, filter.cc, find.cc, |
|
2412 fsolve.cc, load-save.cc, log.cc, lsode.cc, minmax.cc, npsol.cc, |
|
2413 oct-obj.cc, oct-stream.cc, pr-output.cc, pt-cmd.cc, pt-const.cc, |
|
2414 pt-fvc.cc, pt-plot.cc, quad.cc, rand.cc, sighandlers.cc, sort.cc, |
|
2415 syscalls.cc, unwind-prot.cc, xdiv.cc, xpow.cc: |
|
2416 When indexing arrays, use operator() instead of elem() so that |
|
2417 bounds checking can be done consistently. |
|
2418 |
|
2419 Mon Jun 24 02:13:27 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2420 |
|
2421 * Makefile.in (install-oct): Use INSTALL_PROGRAM, instead of |
|
2422 INSTALL_DATA for installing shared libraries. |
|
2423 |
|
2424 * lex.l (grab_help_text): Ignore all initial comment characters, |
|
2425 not just the first. |
|
2426 * variables.cc (gobble_leading_white_space): Likewise. |
|
2427 |
|
2428 Sat Jun 22 22:43:45 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2429 |
|
2430 * input.h, input.cc (octave_completion_matches_called): New varaible. |
|
2431 (Fcompletion_matches): Set it to true on a successful call. |
|
2432 * toplev.cc (main_loop): If octave_completion_matches_called is |
|
2433 true, don't increment current_command_number. |
|
2434 |
|
2435 Thu Jun 13 03:52:19 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2436 |
|
2437 * variables.cc (is_mapper_function_name, |
|
2438 is_builtin_function_name): New functions. |
|
2439 (Fdocument): Use them. |
|
2440 Define as regular function, not a text style function. |
|
2441 |
|
2442 Thu Jun 6 00:09:25 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2443 |
|
2444 * pt-plot.cc: Handle new built-in variable `gnuplot_has_frames'. |
|
2445 |
|
2446 Wed Jun 5 14:45:04 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2447 |
|
2448 * input.cc (decode_prompt_string): \h now means the whole host |
|
2449 name and \H is the host name up to the first `.'. |
|
2450 |
|
2451 Thu May 30 23:41:51 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2452 |
|
2453 * fn-cache.cc (octave_fcn_file_name_cache::do_list): Always |
|
2454 recompute the lists of function files instead of trying to cache |
|
2455 them. |
|
2456 |
|
2457 Tue May 28 12:05:24 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2458 |
|
2459 * utils.cc (warn_old_style_preference): New function. |
|
2460 (check_preference): Use it. |
|
2461 |
|
2462 * fn-cache.h: Include <ctime> here. |
|
2463 |
|
2464 Fri May 24 00:57:14 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2465 |
|
2466 * input.cc (completion_matches): Don't return empty string_vectors. |
|
2467 |
|
2468 * octave.cc (long_opts): Add braindead. |
|
2469 |
|
2470 Thu May 23 01:49:33 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2471 |
|
2472 * input.cc (gnu_readline): New optional arg, force_readline. |
|
2473 (get_user_input): Use it. |
|
2474 |
|
2475 * pt-const.cc (OCT_VAL_REP::assign): If converting the rhs to a |
|
2476 numeric value, convert a copy, not the actual object. |
|
2477 (OCT_VAL_REP::do_index): Prevent s([]) from resulting in a string |
|
2478 with zero rows. |
|
2479 |
|
2480 * mappers.cc: Handle toascii here. |
|
2481 * strfns.cc: Not here. |
|
2482 |
|
2483 * mappers.cc: Handle tolower and toupper here. |
|
2484 * mappers.h: Rename can_return_complex_for_real to flag and |
|
2485 overload meaning for ch_mapper. |
|
2486 * pt-fvc.cc (apply_mapper_fcn): Handle overloaded meaning. |
|
2487 |
|
2488 * syscalls.cc (stat): Return 3 values instead of just 1. |
|
2489 (lstat): Likewise. |
|
2490 |
|
2491 Wed May 22 02:34:20 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2492 |
|
2493 * pt-const.cc (OCT_VAL_REP::make_numeric): For string to number |
|
2494 conversions, correctly set type tag before calling force_numeric. |
|
2495 (do_binary_op): Force string to number conversion if both args are |
|
2496 strings and we are doing some sort of comparison operation. |
|
2497 |
|
2498 * Makefile.in (stamp-tinst, stamp-interp): Use SH_TERMLIBS and |
|
2499 SH_LIBS instead of TERMLIBS and LIBS. |
|
2500 |
|
2501 * pt-const.cc (do_unary_op): Add special case to handle |
|
2502 transposing strings. |
|
2503 |
|
2504 * pt-mat.cc (Vstring_fill_char): New variable. |
|
2505 (symbols_of_pt_mat): DEFVAR it. |
|
2506 |
|
2507 * input.cc (generate_struct_completions, |
|
2508 generate_possible_completions): Return string_vector, not char **. |
|
2509 Change all callers. |
|
2510 |
|
2511 * pt-const.cc (lookup_map_element): Use substr() correctly. |
|
2512 |
|
2513 Tue May 21 21:37:17 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2514 |
|
2515 * oct.h: New file. |
|
2516 * Makefile.in (INCLUDES): Add it to the list. |
|
2517 |
|
2518 * octave.cc: New args --no-site-file and --no-init-file. Delete |
|
2519 --ignore-init-file. The flag --norc (-f) implies both |
|
2520 --no-site-file and --no-init-file. |
|
2521 |
|
2522 Fri May 17 01:54:51 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2523 |
|
2524 * input.cc (Fcompletion_matches): New function. |
|
2525 |
|
2526 * utils.cc (get_fcn_file_names): Delete. |
|
2527 * help.cc (simple_help): Use new file name cache instead of |
|
2528 calling get_fcn_file_names. |
|
2529 * variables.cc (make_name_list): Likewise. |
|
2530 |
|
2531 * fn-cache.h, fn-cache.cc, Map-fnc.cc: New files. |
|
2532 * Makefile.in: Add them to the lists. |
|
2533 |
|
2534 * Makefile.in (uninstall): Install in octincludedir, not includedir. |
|
2535 |
|
2536 * pt-plot.h: Include <csignal> here. |
|
2537 |
|
2538 Thu May 16 10:52:51 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2539 |
|
2540 * oct-stream.cc (octave_stream::oscanf, octave_base_stream::oscanf, |
|
2541 octave_base_stream::do_oscanf): New functions for backward |
|
2542 compatibility with older versions of Octave. |
|
2543 (scanf_format_elt, scanf_format_list): Keep track of width specifier. |
|
2544 * file-io.cc (Fscanf): New function. |
|
2545 (Fscanf, Ffscanf, Fsscanf): Handle compatibility arg. |
|
2546 |
|
2547 Wed May 15 01:00:12 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2548 |
|
2549 * oct-stream.cc (do_scanf): If doing '%c' conversion, unset |
|
2550 ios::skipws on input stream. |
|
2551 |
|
2552 * sighandlers.h, sighandlers.cc (octave_child, octave_child_list): |
|
2553 New classes for keeping track of the child processes we create. |
|
2554 (sigchld_handler): Check in octave_child_list to see if there is |
|
2555 anything we can do for the child that died. |
|
2556 * pager.cc: Register child pager process. |
|
2557 * pt-plot.cc: Likewise, for the plotter. |
|
2558 * Array-oc.cc: New file |
|
2559 * Makefile.in (TI_SRC): Add it to the list. |
|
2560 |
|
2561 * pager.cc (do_sync): Don't check error_state. |
|
2562 (flushing_output_to_pager): New static variable. |
|
2563 (flush_octave_stdout): Use it to avoid doing anything if already |
|
2564 flushing output. |
|
2565 |
|
2566 * sighandlers.cc (sigchld_handler): Call warning instead of |
|
2567 writing directly to cerr. |
|
2568 (sigpipe_handler): Call warning instead of message. |
|
2569 |
|
2570 * octave.cc (main): Call install_signal_handlers, |
|
2571 initialize_file_io, initialize_symbol_tables, and install_builtins |
|
2572 before parsing command line options. |
|
2573 |
|
2574 * user-prefs.h, user-prefs.cc: Delete. |
|
2575 |
|
2576 * utils.cc (check_preference): Move here. |
|
2577 * user-prefs.cc: From here. |
|
2578 |
|
2579 * defaults.cc: New file. Move initialization stuff from |
|
2580 variables.cc. Move DEFVARS for EDITOR, EXEC_PATH, LOADPATH, |
|
2581 IMAGEPATH, and OCTAVE_VERSION here. |
|
2582 |
|
2583 * user-prefs.h, user-prefs.cc: Delete all stuff related to |
|
2584 INFO_FILE and INFO_PROGRAM. |
|
2585 * help.cc: Move all of that here. |
|
2586 (symbols_of_help): Add DEFVARS for INFO_FILE and INFO_PROGRAM. |
|
2587 |
|
2588 Tue May 14 00:23:06 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2589 |
|
2590 * pager.cc (do_sync): Be more defensive about sending stuff to the |
|
2591 external pager. |
|
2592 * sighandlers.cc (sigchld_handler): For now, only wait for |
|
2593 octave_pager_pid. Don't call error(). Do set octave_pager_pid to |
|
2594 -1 if the pager process no longer exists. |
|
2595 |
|
2596 * user-prefs.h, user-prefs.cc: Delete all stuff related to |
|
2597 PWD. |
|
2598 * dirfns.cc: Move all of that here. |
|
2599 (symbols_of_dirfns): New function. |
|
2600 * variables.cc (install_builtin_variables): Call it. |
|
2601 |
|
2602 * user-prefs.h, user-prefs.cc: Delete all stuff related to |
|
2603 default_save_format and save_precision. |
|
2604 * load-save.cc: Move all of that here. |
|
2605 (symbols_of_load_save): New function. |
|
2606 * variables.cc (install_builtin_variables): Call it. |
|
2607 |
|
2608 * user-prefs.h, user-prefs.cc: Delete all stuff related to |
|
2609 warn_divide_by_zero. |
|
2610 * arith-ops.cc: Move all of that here. |
|
2611 (symbols_of_arith_ops): New function. |
|
2612 * variables.cc (install_builtin_variables): Call it. |
|
2613 |
|
2614 * mappers.cc: Add wrappers for ctype is* functions so that they |
|
2615 will work on systems that only define them as macros. |
|
2616 |
|
2617 Mon May 13 00:27:08 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2618 |
|
2619 * user-prefs.h, user-prefs.cc: Delete all stuff related to |
|
2620 suppress_verbose_help_message. |
|
2621 * help.cc: Move all of that here. |
|
2622 (symbols_of_help): New function. |
|
2623 * variables.cc (install_builtin_variables): Call it. |
|
2624 |
|
2625 * user-prefs.h, user-prefs.cc: Delete all stuff related to |
|
2626 treat_neg_dim_as_zero. |
|
2627 * pt-const.cc: Move all of that here. |
|
2628 |
|
2629 * pager.cc (octave_pager_stream::do_sync): Don't return early if |
|
2630 not interactive. |
|
2631 |
|
2632 * data.h: New file. |
|
2633 * Makefile.in (INCLUDES): Add it to the list. |
|
2634 * data.cc (symbols_of_data): New function. Move definition of I, |
|
2635 Inf, J, NaN, e, eps, i, inf, j, nan, pi, realmin, and realmax here. |
|
2636 * variables.cc: From here. |
|
2637 (install_builtin_variables): Call symbols_of_data. |
|
2638 |
|
2639 * file-io.cc (symbols_of_file_io): New function. Move definition |
|
2640 of SEEK_CUR, SEEK_END, SEEK_SET, stdin, stdout, stderr here. |
|
2641 * variables.cc: From here. |
|
2642 (install_builtin_variables): Call symbols_of_file_io. |
|
2643 |
|
2644 * user-prefs.h, user-prefs.cc: Delete all stuff related to |
|
2645 do_fortran_indexing, implicit_str_to_num_ok, |
|
2646 ok_to_lose_imaginary_part, prefer_column_vectors, |
|
2647 prefer_zero_one_indexing, print_answer_id_name, |
|
2648 propagate_empty_matrices, resize_on_range_error, and |
|
2649 struct_levels_to_print. |
|
2650 * pt-const.cc: Move all of that here. |
|
2651 (symbols_of_pt_const): New function. |
|
2652 * variables.cc (install_builtin_variables): Call it. |
|
2653 * pt-fvc.cc (tree_identifier::assign): Use Vresize_on_range_error |
|
2654 instead of user_pref.resize_on_range_error here. |
|
2655 * load-save.cc (save_mat_binary_data): Use Vimplicit_str_to_num_ok |
|
2656 instead of user_pref.implicit_str_to_num_ok here. |
|
2657 * utils.cc (empty_arg): Use Vpropagate_empty_matrices instead of |
|
2658 user_pref.propagate_empty_matrices here. |
|
2659 * pt-exp-base.cc (tree_expression::is_logically_true): Likewise.. |
|
2660 |
|
2661 * pt-fcn.cc (symbols_of_pt_fcn): Also move DEFVAR for |
|
2662 default_return_value here. |
|
2663 |
|
2664 * user-prefs.h, user-prefs.cc: Delete all stuff related to |
|
2665 ps1, ps2, ps4, and completion_append_char. |
|
2666 * input.cc: Move all of that here. |
|
2667 (symbols_of_input): New function. |
|
2668 * variables.cc (install_builtin_variables): Call it. |
|
2669 * pt-pr-code.cc (indent): Use Vps4 instead of user_pref.ps4 here. |
|
2670 * help.cc (Ftype): Also here. |
|
2671 |
|
2672 * user-prefs.h, user-prefs.cc: Delete all stuff related to |
|
2673 automatic_replot, gnuplot_binary, and gnuplot_has_multiplot. |
|
2674 * pt-plot.cc: Move all of that here. |
|
2675 (symbols_of_pt_plot): New function. |
|
2676 * variables.cc (install_builtin_variables): Call it. |
|
2677 |
|
2678 * user-prefs.h, user-prefs.cc: Delete all stuff related to |
|
2679 beep_on_error. |
|
2680 * error.cc: Move all of that here. |
|
2681 (symbols_of_error): New function. |
|
2682 * variables.cc (install_builtin_variables): Call it. |
|
2683 |
|
2684 * user-prefs.h, user-prefs.cc: Delete all stuff related to |
|
2685 empty_list_elements_ok. |
|
2686 * pt-mat.cc: Move all of that here. |
|
2687 (symbols_of_pt_mat): New function. |
|
2688 * variables.cc (install_builtin_variables): Call it. |
|
2689 |
|
2690 * user-prefs.h, user-prefs.cc: Delete all stuff related to |
|
2691 define_all_return_values, return_last_computed_value, and |
|
2692 silent_functions. |
|
2693 * pt-fcn.cc: Move all of that here. |
|
2694 (symbols_of_pt_fcn): New function. |
|
2695 * variables.cc (install_builtin_variables): Call it. |
|
2696 |
|
2697 * user-prefs.h, user-prefs.cc: Delete all stuff related to |
|
2698 whitespace_in_literal_matrix. |
|
2699 * lex.l: Move all of that here. |
|
2700 (symbols_of_lex): New function. |
|
2701 * variables.cc (install_builtin_variables): Call it. |
|
2702 |
|
2703 * user-prefs.h, user-prefs.cc: Delete all stuff related to |
|
2704 warn_assign_as_truth_value, warn_comma_in_global_decl, |
|
2705 warn_function_name_clash, and warn_missing_semicolon. |
|
2706 * parse.y: Move all of that here. |
|
2707 (symbols_of_parse): New function. |
|
2708 * variables.cc (install_builtin_variables): Call it. |
|
2709 |
|
2710 * user-prefs.h, user-prefs.cc: Delete all stuff related to |
|
2711 output_precision, output_max_field_width, print_empty_dimensions, |
|
2712 and split_long_rows. |
|
2713 * pr-output.cc: Move all of that here. |
|
2714 (symbols_of_pr_output): New function. |
|
2715 * variables.cc (install_builtin_variables): Call it. |
|
2716 |
|
2717 * user-prefs.h, user-prefs.cc: Delete all stuff related to |
|
2718 page_screen_output, page_output_immediately, and pager_binary. |
|
2719 * pager.cc: Move all of that here. |
|
2720 |
|
2721 * user-prefs.h (check_preference): Provide declaration. |
|
2722 * user-prefs.cc (check_preference): Make external. |
|
2723 |
|
2724 * toplev.cc (Foctave_config_info): New function. |
|
2725 |
|
2726 * oct-conf.h.in: New file |
|
2727 * Makefile.in (oct-conf.h): New target. |
|
2728 Add it to the appropriate lists. |
|
2729 |
|
2730 * sighandlers.cc (sigchld_handler): Don't complain about wait |
|
2731 returning a negative value. |
|
2732 |
|
2733 * file-io.cc (Fsscanf, Fsprintf): Pass true for second arg of |
|
2734 octave_stream constructor. |
|
2735 |
|
2736 * oct-stream.h (octave_stream): New field, preserve. |
|
2737 (octave_stream::~octave_stream): If preserve, don't delete rep. |
|
2738 |
|
2739 * pager.cc (symbols_of_pager): Set default for |
|
2740 page_output_immediately to 0. |
|
2741 |
|
2742 * toplev.cc (do_system): Correctly handle return_output. |
|
2743 Append ends to output_buf before calling str(). |
|
2744 |
|
2745 * variables.cc: If M_PI and M_E are available, use them. |
|
2746 |
|
2747 * mk-oct-links.in (links_dir): If old link exists, delete it first. |
|
2748 |
|
2749 Sun May 12 01:46:07 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2750 |
|
2751 * Makefile.in (DISTFILES): List defaults.h.in and oct-gperf.h here. |
|
2752 (INCLUDES): Not here. |
|
2753 (install-inc): New target. |
|
2754 (uninstall): Also delete libraries and include files. |
|
2755 (install-inc): If linkdir is a directory, leave it alone. |
|
2756 (TERMLIBS, LIBPLPLOT, LIBDLFCN): Don't substitute here (now in |
|
2757 Makeconf). |
|
2758 |
|
2759 * oct-stream.cc (octave_base_stream::do_read): Provide initial |
|
2760 value for tmp var. |
|
2761 |
|
2762 * pt-walk.h, pt-pr-code.h, pt-pr-code.cc: New tree-walking classes. |
|
2763 * Makefile.in: Add them to the appropriate lists. |
|
2764 * pt-fvc-base.h, pt-exp-base.cc, pt-fvc-base.cc, pt-mvr-base.cc, |
|
2765 pt-base.cc, pt-mvr.cc, pt-mat.h, pt-mat.cc, pt-fvc.cc, |
|
2766 pt-const.cc, pt-cmd.cc, pt-const.h, pt-misc.cc, pt-plot.cc, |
|
2767 pt-fcn.cc, pt-plot.h, pt-mvr.h, pt-mvr-base.h, pt-misc.h, |
|
2768 pt-fcn.h, pt-exp.h, pt-exp.cc, pt-exp-base.h, pt-fvc.h, pt-cmd.h, |
|
2769 pt-base.h: |
|
2770 Replace print_code stuff with accept() functions. |
|
2771 Add member access functions where necessary. |
|
2772 * help.cc (Ftype): Update to use new method of walking trees to |
|
2773 print text representation of user-defined functions. |
|
2774 |
|
2775 * file-io.cc (Ffscanf): Update doc string. |
|
2776 (Fsscanf): Likewise. |
|
2777 |
|
2778 * oct-stream.cc (octave_base_stream::do_read): Correctly set max_size. |
|
2779 Pad mval with zeros on final resize. |
|
2780 (octave_base_stream::do_scanf): Likewise. |
|
2781 (do_scanf_conv): Correctly resize mval. |
|
2782 |
|
2783 Sat May 11 05:14:09 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2784 |
|
2785 * pager.cc (octave_pager_buf::sync): Correctly set bypass_pager. |
|
2786 |
|
2787 * lex.l (<MATRIX>{SNLCMT}*\]{S}*): Match SNLCMT, not just SNL. |
|
2788 |
|
2789 Fri May 3 11:05:30 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2790 |
|
2791 * pt-const.cc (OCT_VAL_REP::set_index): Complain if type can't be |
|
2792 indexed. |
|
2793 |
|
2794 * input.cc (get_user_input): Don't increment input line number if |
|
2795 input is coming from eval string. |
|
2796 |
|
2797 * user-prefs.cc: Allow empty strings for prompts. |
|
2798 |
|
2799 Thu May 2 10:50:29 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2800 |
|
2801 * pt-mvr.h (class tree_oct_obj): Declare values data member const. |
|
2802 |
|
2803 Sun Apr 28 03:16:52 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2804 |
|
2805 * user-prefs.h (user_preferences): New field, |
|
2806 `page_output_immediately'. |
|
2807 * user-prefs.cc (init_user_prefs): Initialize it. |
|
2808 (page_output_immediately): New function. |
|
2809 * pager.cc (syms_of_pager): Add DEFVAR. |
|
2810 (really_flush_to_pager): New file-scope variable. |
|
2811 (flush_octave_stdout): Set and restore it. |
|
2812 (octave_pager_buf::sync): Check it, user_pref.page_screen_output, |
|
2813 and user_pref.page_output_immediately to decide when to really |
|
2814 flush output. |
|
2815 (more_than_a_screenful): New function. If paging but not |
|
2816 immediately, then check this too. |
|
2817 |
|
2818 * pager.cc (default_pager): Move here from variables.cc. If pager |
|
2819 is less and LESS is not in the environment, append useful flags. |
|
2820 (symbols_of_pager): New function. |
|
2821 * variables.cc (install_builtin_variables): Call it. |
|
2822 Delete pager-related DEFVARs. |
|
2823 |
|
2824 * syswait.h (WIFSIGNALLED): Define if sys/wait.h doesn't. |
|
2825 |
|
2826 * sighandlers.cc: Handle SIGCHLD. |
|
2827 |
|
2828 * pager.cc, pager.h: Rewrite. |
|
2829 * pt-mvr.cc, pt-misc.cc, pt-fcn.cc, pt-const.cc, oct-hist.cc, |
|
2830 file-io.cc, help.cc, variables.cc, qpsol.cc, dassl.cc, quad.cc, |
|
2831 npsol.cc, lsode.cc, fsolve.cc, load-save.cc, dirfns.cc, octave.cc, |
|
2832 toplev.cc, error.cc, input.cc: |
|
2833 Write to octave_stdout and octave_diary instead of calling |
|
2834 maybe_page_output() or maybe_write_to_diary_file(). |
|
2835 |
|
2836 * oct-procbuf.h, oct-procbuf.cc: New files. |
|
2837 * procstream.h (class procstreambase): Use octave_procbuf instead |
|
2838 of procbuf from libg++, so we can get pids of subprocesses. |
|
2839 |
|
2840 Fri Apr 26 01:21:29 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2841 |
|
2842 * pt-const.cc (OCT_VAL_REP::do_index): Call maybe_mutate() before |
|
2843 returning. |
|
2844 |
|
2845 * mappers.h (struct Mapper_fcn): Delete. |
|
2846 (struct builtin_mapper_function): New field ch_mapper. |
|
2847 * pt-fvc.h (tree_builtin): Convert type of mapper_fcn from |
|
2848 Mapper_fcn to builtin_mapper_function. |
|
2849 * variables.cc (install_builtin_mapper): Likewise, for arg. |
|
2850 Simplify, since we don't have to do the copying ourselves now. |
|
2851 * pt-fvc.cc (apply_mapper_function): Handle ch_mapper case. |
|
2852 * defun.h (DEFUN_MAPPER): Likewise. |
|
2853 * mappers.cc (install_builtin_mappers): Likewise. |
|
2854 Add ctype is* functions here. |
|
2855 |
|
2856 Thu Apr 25 00:57:06 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2857 |
|
2858 * arith-ops.h, defun-int.h, defun.h, dynamic-ld.h, gripes.h, |
|
2859 load-save.h, oct-map.h, oct-obj.h, oct-stream.h, pt-cmd.h, |
|
2860 pt-const.h, pt-exp-base.h, pt-exp.h, pt-fcn.h, pt-fvc-base.h, |
|
2861 pt-fvc.h, pt-mat.h, pt-misc.h, pt-mvr-base.h, pt-mvr.h, pt-plot.h, |
|
2862 symtab.h, toplev.h, utils.h, variables.h, xpow.h, Array-tc.cc, |
|
2863 Map-i.cc, Map-tc.cc, SLList-tc.cc, arith-ops.cc, balance.cc, |
|
2864 bogus.cc, chol.cc, colloc.cc, dassl.cc, data.cc, det.cc, |
|
2865 dirfns.cc, eig.cc, error.cc, expm.cc, fft.cc, fft2.cc, file-io.cc, |
|
2866 filter.cc, find.cc, fsolve.cc, fsqp.cc, givens.cc, gripes.cc, |
|
2867 help.cc, hess.cc, ifft.cc, ifft2.cc, input.cc, inv.cc, |
|
2868 load-save.cc, log.cc, lpsolve.cc, lsode.cc, lu.cc, minmax.cc, |
|
2869 npsol.cc, oct-hist.cc, oct-obj.cc, oct-stream.cc, pager.cc, |
|
2870 pinv.cc, pr-output.cc, pt-cmd.cc, pt-const.cc, pt-exp-base.cc, |
|
2871 pt-exp.cc, pt-fcn.cc, pt-fvc-base.cc, pt-fvc.cc, pt-mat.cc, |
|
2872 pt-misc.cc, pt-mvr-base.cc, pt-mvr.cc, pt-plot.cc, qpsol.cc, |
|
2873 qr.cc, quad.cc, qzval.cc, rand.cc, resource.cc, schur.cc, sort.cc, |
|
2874 strfns.cc, svd.cc, syl.cc, symtab.cc, syscalls.cc, sysdep.cc, |
|
2875 timefns.cc, toplev.cc, utils.cc, variables.cc, xpow.cc, parse.y: |
|
2876 Rename tree_constant -> octave_value. |
|
2877 Rename Octave_object -> octave_value_list. |
|
2878 |
|
2879 Wed Apr 24 22:15:34 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2880 |
|
2881 * toplev.cc (Fsystem): Merge functionality of async_system and |
|
2882 sync_system. |
|
2883 |
|
2884 * oct-fstrm.h, oct-iostrm.h, oct-prcstrm.h, oct-stdstrm.h, |
|
2885 oct-stream.h, oct-strstrm.h, oct-fstrm.cc, oct-iostrm.cc, |
|
2886 oct-prcstrm.cc, oct-stdstrm.cc, oct-stream.cc, oct-strstrm.cc, |
|
2887 Array-os.cc: New files. |
|
2888 * Makefile.in: Add them to the appropriate lists. |
|
2889 * file-io.cc: Rewrite to use new stream classes. |
|
2890 |
|
2891 Tue Apr 23 18:59:25 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2892 |
|
2893 * gripes.cc (gripe_not_supported): New function. |
|
2894 |
|
2895 * toplev.cc (do_octave_atexit, Fatexit): New functions. |
|
2896 (octave_atexit_functions): New file-scope variable. |
|
2897 * octave.cc (main): Register do_octave_atexit with atexit. |
|
2898 |
|
2899 * variables.cc (install_builtin_variables): Call |
|
2900 symbols_of_syscalls here. |
|
2901 |
|
2902 * syscalls.h, syscalls.cc: New files. |
|
2903 |
|
2904 Mon Apr 22 21:14:01 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2905 |
|
2906 * syscalls.cc: New file. |
|
2907 (Flstat, Fmkfifo, Fstat, Funlink, Fwait, Fwaitpid): Move here. |
|
2908 * file-io.cc: From here. |
|
2909 * Makefile.in (SOURCES): Add syscalls.cc to the list. |
|
2910 |
|
2911 Wed Apr 17 18:34:10 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2912 |
|
2913 * file-info.h, file-info.cc: Delete files. |
|
2914 * Makefile.in: Remove from lists. |
|
2915 |
|
2916 * toplev.cc (Fquit): Accept exit status argument. |
|
2917 (Fflops): Delete (now a function file). |
|
2918 |
|
2919 Thu Apr 11 16:20:20 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2920 |
|
2921 * lex.l: Recognize `.'. |
|
2922 Update current_input_column even for unrecognized characters. |
|
2923 Return LEXICAL_ERROR for unrecognized characters. |
|
2924 |
|
2925 Mon Apr 8 19:59:01 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2926 |
|
2927 * variables.cc (install_builtin_variables): Split into several |
|
2928 functions to make compiling with g++ go faster and consume less |
|
2929 memory. |
|
2930 |
|
2931 Sun Apr 7 16:25:35 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2932 |
|
2933 * load-save.cc (Fsave): Print usage if i == argc. |
|
2934 (Fload): Likewise. |
|
2935 |
|
2936 Sat Apr 6 21:26:49 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2937 |
|
2938 * Makefile.in (clean): Also delete pic/*.o |
|
2939 (maintainer-clean, distclean): Also remove stamp-picdir, |
|
2940 stamp-tinst, stamp-interp, and pic directory. |
|
2941 (stamp-prereq): New target. |
|
2942 |
|
2943 Wed Apr 3 11:19:30 1996 Rick Niles <niles@axp745.gsfc.nasa.gov> |
|
2944 |
|
2945 * resource.cc: Don't make including sys/resource.h and sys/times.h |
|
2946 mutually exclusive. |
|
2947 |
|
2948 Fri Mar 29 13:43:37 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2949 |
|
2950 * Makefile.in (distclean): Delete so_locations, which is created |
|
2951 on DEC Alpha systems. |
|
2952 |
|
2953 Thu Mar 28 02:53:48 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2954 |
|
2955 * utils.h (undo_string_escape): Provide extern declaration here. |
|
2956 |
|
2957 * lex.l (NL): Allow \r\n as new line character. |
|
2958 (.): Complain if invalid character is found on input |
|
2959 |
|
2960 Fri Mar 22 03:47:52 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2961 |
|
2962 * resource.cc (getrusage): If getrusage is missing, try using |
|
2963 times to at least fill in the cpu time values. If neither one is |
|
2964 available, return 0 for cpu times instead of NaN. |
|
2965 |
|
2966 * sighandlers.cc (octave_signal_mask): New file-scope variable. |
|
2967 (octave_save_signal_mask, octave_restore_signal_mask): New functions. |
|
2968 * toplev.cc (main_loop): Use them. |
|
2969 |
|
2970 Wed Mar 20 01:21:28 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2971 |
|
2972 * utils.cc (get_fcn_file_names (const string&, int)): Resize |
|
2973 retval to value of k, not i. |
|
2974 (get_fcn_file_names (int)): In loop for copying names to retval, |
|
2975 don't increment j twice. |
|
2976 |
|
2977 Mon Mar 18 22:27:19 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2978 |
|
2979 * Makefile.in ($(MAKEDEPS)): Depend on oct-gperf.h. |
|
2980 |
|
2981 Fri Mar 1 18:15:52 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2982 |
|
2983 * fsolve.cc (fsolve_options): Delete unused argument nargout. |
|
2984 |
|
2985 * filter.cc: Use MArray instead of Array so that automatic |
|
2986 conversions will work again. |
|
2987 |
|
2988 Tue Feb 27 04:49:51 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2989 |
|
2990 * variables.cc (looks_like_octave_copyright): Make the strings |
|
2991 that we are trying to match both have length 29. |
|
2992 |
|
2993 * Makefile.in (install-bin): Use $(INSTALL_PROGRAM), not $(INSTALL). |
|
2994 |
|
2995 * load-save.cc (read_mat_binary_data): Make sure name is |
|
2996 NUL terminated. |
|
2997 |
|
2998 Mon Feb 26 18:18:45 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
2999 |
|
3000 * variables.cc (whos): Make argv from tmp_args, not args. |
|
3001 |
|
3002 * defun.h (DEFCONSTX): Don't stringify name. |
|
3003 |
|
3004 Sat Feb 24 01:12:59 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3005 |
|
3006 * Makefile.in (install-oct): Make mk-oct-links executable. |
|
3007 * mk-oct-links.in (links_dir): Update to match new format of |
|
3008 DEFUN_DLD_BUILTIN macro. Use LN_S, not just LN. |
|
3009 (links_dir): |
|
3010 |
|
3011 * pr-output.cc (octave_print_internal): New arg, extra_indent, for |
|
3012 versions of this function that take matrices and ranges. |
|
3013 * pt-const.cc (TC_REP::print (ostream&)): Fix printing of structures. |
|
3014 Pass struct_indent to octave_print_internal as appropriate. |
|
3015 (print_with_name (ostream&, const string&, bool)): Handle spacing |
|
3016 around `=' differently for structures. |
|
3017 |
|
3018 Fri Feb 23 04:51:04 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3019 |
|
3020 * token.cc (token (double, const string&, int, int)): Store orig_text. |
|
3021 |
|
3022 Tue Feb 20 20:36:01 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3023 |
|
3024 * variables.cc (Fclear): Fix off-by-one error. |
|
3025 |
|
3026 Sat Feb 17 16:54:02 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3027 |
|
3028 * oct-hist.cc (default_history_file): Append "/.octave_hist" to |
|
3029 return value, not to home_directory. |
|
3030 |
|
3031 Fri Feb 16 18:10:46 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3032 |
|
3033 * utils.cc: (NINT, D_NINT): Move to liboctave. |
|
3034 |
|
3035 * sysdep.cc (octave_ieee_init): Move to liboctave. |
|
3036 |
|
3037 * procstream.h, procstream.cc: Rewrite. |
|
3038 |
|
3039 * pager.cc (cleanup_oprocstream): New static function. |
|
3040 * toplev.cc (cleanup_iprocstream): Likewise. |
|
3041 * dirfns.cc (cleanup_iprocstream): Likewise. |
|
3042 |
|
3043 * unwind-prot.cc (matrix_cleanup, complex_matrix_cleanup): Delete. |
|
3044 |
|
3045 Thu Feb 15 22:03:28 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3046 |
|
3047 * oct-obj.cc, oct-obj.h: Move most code to the header. |
|
3048 |
|
3049 * oct-obj.cc (make_argv, all_strings): New member functions. |
|
3050 * utils.cc: Moved from here. |
|
3051 |
|
3052 * load-save.cc: Move byte swapping stuff to liboctave. |
|
3053 Move float format conversion stuff to liboctave. |
|
3054 (all_parts_int, too_large_for_float): Move to liboctave. |
|
3055 |
|
3056 * symtab.cc (valid_identifier): Move here. |
|
3057 * load-save.cc: From here. |
|
3058 |
|
3059 * sysdep.cc: Move floating-point format stuff to liboctave. |
|
3060 * pr-output.cc: Include float-fmt.h here. |
|
3061 |
|
3062 Wed Feb 14 01:49:20 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3063 |
|
3064 * defun.h, defun-dld.h, defun-int.h: Simplify interface for DEFUN, |
|
3065 DEFUN_DLD, DEFVAR, and DEFCONST macros. Change all uses. |
|
3066 |
|
3067 * qzval.cc: Move guts to liboctave. |
|
3068 |
|
3069 Tue Feb 13 10:28:27 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3070 |
|
3071 * variables.cc (parse_fcn_file): Also avoid saving history if |
|
3072 input is from a script file. |
|
3073 |
|
3074 * help.cc (Ftype): Call unwind_protect_str for user_pref.ps4. |
|
3075 |
|
3076 * npsol.cc (nonlinear_constraints_ok): Now static. |
|
3077 |
|
3078 * npsol.cc (linear_constraints_ok): Now static. |
|
3079 * qpsol.cc (linear_constraints_ok): Duplicate here. |
|
3080 |
|
3081 * data.cc (Flinspace): Don't print usage message if nargin == 2. |
|
3082 |
|
3083 Sun Feb 11 14:20:32 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3084 |
|
3085 * mk-oct-links.in: Rename from mk-oct-links. |
|
3086 (LN_S): Use this variable instead of ln. |
|
3087 Set -e option for shell. |
|
3088 Exit with status of last command. |
|
3089 Print message when making link. |
|
3090 * Makefile.in (DISTFILES): Add mk-oct-links.in to the list. |
|
3091 (install-oct): Run ./mk-oct-links, not $(srcdir)/mk-oct-links. |
|
3092 |
|
3093 * variables.cc (install_builtin_variables): Restore accidentally |
|
3094 deleted DEFVAR for save_precision. |
|
3095 |
|
3096 Fri Feb 9 11:24:32 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3097 |
|
3098 * Makefile.in (INCLUDES): Delete statdefs.h from the list (it's |
|
3099 now in the liboctave directory). |
|
3100 |
|
3101 * toplev.cc (toplevel): Define here. |
|
3102 * octave.cc (toplevel): Not here. |
|
3103 |
|
3104 * toplev.cc (main_loop): New function. |
|
3105 * octave.cc (main): Call it here instead of doing main loop |
|
3106 actions here. |
|
3107 |
|
3108 * user-prefs.cc (do_fortran_indexing): Also set liboctave_dfi_flag. |
|
3109 (prefer_column_vectors): Also set liboctave_pcv_flag. |
|
3110 (prefer_zero_one_indexing): Also set liboctave_pzo_flag. |
|
3111 (resize_on_range_error): Also set liboctave_rre_flag. |
|
3112 |
|
3113 * variables.cc (restore_command_history): New function. |
|
3114 (parse_fcn_file): Use it here in unwind_protect. |
|
3115 |
|
3116 * dynamic-ld.cc (load_octave_oct_file): Reverse sense of test. |
|
3117 (load_octave_builtin): Delete. |
|
3118 (mangle_octave_oct_file_name): Delete. |
|
3119 |
|
3120 * pt-fvc.cc (tree_builtin::eval): Don't try to dynamically load |
|
3121 functions here. |
|
3122 |
|
3123 * pr-output.cc (set_format_style): Decrement argc for first arg too. |
|
3124 |
|
3125 * input.cc (gnu_readline): If readline returns an empty string, |
|
3126 convert it to a string containing a single newline character. |
|
3127 |
|
3128 * octave.cc (octave_argv): Now a static string_vector. |
|
3129 (intern_argv): Use string_vector ops, not charMatrix ops. |
|
3130 * toplev.cc (octave_argv): Delete definition. |
|
3131 * toplev.h (octave_argv): Delete declaration. |
|
3132 |
|
3133 Thu Feb 8 10:58:24 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3134 |
|
3135 * Makefile.in (conf-dist): New target. |
|
3136 |
|
3137 Tue Feb 6 10:59:45 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3138 |
|
3139 * help.cc (Ftype): Correctly handle structure names. |
|
3140 |
|
3141 Sun Feb 4 02:02:20 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3142 |
|
3143 * qpsol.cc (Fqpsol): Call set_options(), not copy() to set |
|
3144 options for QPSOL objects. |
|
3145 |
|
3146 * npsol.cc (Fnpsol): Call set_options(), not copy() to set |
|
3147 options for NPSOL objects. |
|
3148 |
|
3149 * quad.cc (Fquad): Call set_options(), not copy() to set |
|
3150 options for Quad objects. |
|
3151 |
|
3152 * dynamic-ld.cc (load_octave_builtin): Don't call destructor on string. |
|
3153 (load_octave_oct_file): Likewise. |
|
3154 Check oct_file.empty(), not just oct_file. |
|
3155 |
|
3156 * fsolve.cc (Ffsolve): Call set_options(), not copy() to set |
|
3157 options for NLEqn object. |
|
3158 |
|
3159 * variables.cc (do_who): Properly set match patterns from argument |
|
3160 vector for call to maybe_list. |
|
3161 |
|
3162 Sat Feb 3 03:29:33 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3163 |
|
3164 * octave.cc (long_opts): Properly set second field using new enum. |
|
3165 |
|
3166 * lsode.cc: Change ODE to LSODE where appropriate. |
|
3167 Use LSODE_options, not ODE_options. |
|
3168 |
|
3169 * dassl.cc: Change DAE to DASSL where appropriate. |
|
3170 Use DASSL_options, not ODE_options. |
|
3171 |
|
3172 Fri Feb 2 01:41:37 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3173 |
|
3174 * dirfns.cc: Include unistd.h. |
|
3175 |
|
3176 * parse.y, lex.l: Handle matrix lists without ml or mlnm stacks. |
|
3177 * pt-mat.h, pt-mat.cc (tree_matrix): |
|
3178 Rewrite to use SLList instead of home brew list. |
|
3179 * SLList-tm.cc: New file |
|
3180 * Makefile.in: Add it to the lists. |
|
3181 * SLStack-tm.cc: Delete. |
|
3182 * Makefile.in: Delete it from the lists. |
|
3183 |
|
3184 * All pt-* files: Use bool instead of int where appropriate. |
|
3185 |
|
3186 * Makefile.in (DEP_SOURCES_3): Add octave.cc. |
|
3187 |
|
3188 * pt-const.h (class tree_constant::tree_constant_rep): Make |
|
3189 everything in this class public, then it doesn't need to declare |
|
3190 the tree_constant class as a friend. |
|
3191 |
|
3192 Thu Feb 1 01:42:45 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3193 |
|
3194 * lex.h, lex.l, parse.h, parse.y (class lexical_feedback): New |
|
3195 class for lexer flags. Replace lots of global vars with members |
|
3196 of this class. |
|
3197 |
|
3198 * lex.l (class brace_paren_nesting_level): New class to replace |
|
3199 nesting_level stack. nesting_level is now an instance of this |
|
3200 class. |
|
3201 |
|
3202 * lex.l (yum_yum): New typedef. |
|
3203 (ATE_NOTHING): New global var. |
|
3204 (ATE_SPACE_OR_TAB, ATE_NEWLINE): Don't #define these, declare them |
|
3205 as const yum_yum. |
|
3206 (eat_whitespace, eat_continuation): Return yum_yum, not int. |
|
3207 |
|
3208 * lex.l (SHORT_CIRCUIT_LOGICALS): Delete. Always do this for || |
|
3209 and && tokens. |
|
3210 (yy_flex_alloc, yy_flex_realloc, yy_flex_free, next_char_is_space): |
|
3211 Delete. |
|
3212 |
|
3213 * toplev.cc (verbose_flag): Delete definition. |
|
3214 * toplev.h (verbose_flag): And declaration. |
|
3215 * octave.cc (verbose_flag): Now static. |
|
3216 |
|
3217 * lex.l (lookup_identifier): Arg is now string, not char*. |
|
3218 (handle_identifier, is_plot_keyword, is_keyword): Likewise. |
|
3219 (strip_trailing_whitespace): Return value is now string, not char*. |
|
3220 (plot_style_token): Likewise, for both arg and return value. |
|
3221 |
|
3222 * input.cc (octave_gets_line): Delete. |
|
3223 (gnu_readline, octave_gets, octave_read): |
|
3224 Properly handle input when using_readline is either true or false. |
|
3225 Don't limit length of input lines to flex buffer size. |
|
3226 (get_user_input): New function. |
|
3227 |
|
3228 * octave.cc (main): Handle --no-line-editing. |
|
3229 * toplev.h (using_readline): Provide external declaration here. |
|
3230 * input.h: Not here. |
|
3231 * toplev.cc (using_readline): Define here. |
|
3232 * input.cc: Not here. |
|
3233 |
|
3234 * toplev.h (no_line_editing): Delete declaration. |
|
3235 * input.cc (no_line_editing): Delete definition. |
|
3236 |
|
3237 Wed Jan 31 05:28:45 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3238 |
|
3239 * input.cc (DEFAULT_ARRAY_SIZE, PROMPT_GROWTH): Delete definitions |
|
3240 of unused macros. |
|
3241 (read_octal): Now static. |
|
3242 |
|
3243 * givens.cc (Fgivens): Use new functions from matrix classes |
|
3244 instead of calling Fortran functions directly. |
|
3245 * syl.cc (Fsyl): Likewise. |
|
3246 * expm.cc (Fexpm): Likewise. |
|
3247 |
|
3248 Mon Jan 29 00:00:48 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3249 |
|
3250 * octave.cc: Use new prog_args class instead of calling getopt |
|
3251 directly. |
|
3252 |
|
3253 * getopt.h, getopt.c, getopt1.c: Move to liboctave directory. |
|
3254 * Makefile: Remove from lists. |
|
3255 |
|
3256 * utils.cc (strconcat, read_until, discard_until): Delete. |
|
3257 |
|
3258 * pager.cc (terminal_columns, terminal_rows): Move to |
|
3259 liboctave/oct-term.cc. |
|
3260 * pager.cc, pr-output.cc: Include oct-term.h. |
|
3261 |
|
3262 * utils.cc (list_in_columns): Moved to liboctave/str-vec.cc. |
|
3263 Change all callers to use new member function syntax. |
|
3264 |
|
3265 * dirfns.cc (absolute_program): Now static. |
|
3266 (absolute_pathname): Delete. |
|
3267 |
|
3268 * pt-plot.cc (save_in_tmp_file): Call oct_tempnam, not |
|
3269 octave_tmp_file_name. Include file-ops.h. |
|
3270 * file-io.cc (do_scanf, Foctave_tmp_file_name): Likewise. |
|
3271 * oct-hist.cc (mk_tmp_hist_file): Likewise. |
|
3272 |
|
3273 * file-io.cc (Foctave_tmp_file_name): Move here. |
|
3274 * utils.cc: From here. |
|
3275 |
|
3276 * utils.cc (octave_tmp_file_name): Move to liboctave/file-ops.cc. |
|
3277 |
|
3278 * tempname.c, tempnam.c: Move to liboctave directory. |
|
3279 * Makefile.in: Remove from lists. |
|
3280 |
|
3281 Sun Jan 28 19:00:52 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3282 |
|
3283 * xdiv.cc (all xdiv functions): Return Matrix or ComplexMatrix, |
|
3284 not tree_constant. |
|
3285 |
|
3286 * oct-hist.h, oct-hist.cc, toplev.cc, octave.cc, input.cc, |
|
3287 file-io.cc, user-prefs.cc: Rewrite to use new command_history |
|
3288 class instead of calling readline history functions directly. |
|
3289 |
|
3290 * utils.cc (get_fcn_file_names): Delete num arg. |
|
3291 |
|
3292 Thu Jan 25 20:33:54 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3293 |
|
3294 * load-save.cc (matches_patterns): Use new glob_match class |
|
3295 instead of calling fnmatch directly. |
|
3296 * symtab.cc (matches_patterns, symbol_table::glob): Likewise. |
|
3297 * variables.cc (Fclear): Likewise. |
|
3298 |
|
3299 Wed Jan 24 02:05:22 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3300 |
|
3301 * fnmatch.h fnmatch.c: Delete. |
|
3302 * Makefile.in: Add glob stuff in the appropriate places, remove |
|
3303 fnmatch.h and fnmatch.c from lists. |
|
3304 |
|
3305 * octave.cc (program_invocation_name, program_invocation_short_name): |
|
3306 Maybe declare. |
|
3307 (initialize_globals): Maybe initialize them. |
|
3308 |
|
3309 * octave.cc (initialize_pathsearch): Define here, not in pathsearch.cc. |
|
3310 * pathsearch.h, pathsearch.cc: Remove files. |
|
3311 * Makefile.in: Remove them from the lists. |
|
3312 |
|
3313 * help.cc (simple_help): Ignore directories that don't have any .m |
|
3314 or .oct files. |
|
3315 |
|
3316 * utils.cc (search_path_for_file): Use new dir_path class instead |
|
3317 of calling kpathsea routines directly. |
|
3318 (get_fcn_file_names): Likewise. |
|
3319 * help.cc (simple_help): Likewise. |
|
3320 |
|
3321 * dirfns.cc (make_absolute): Don't convert empty arg to "./". |
|
3322 |
|
3323 * sysdir.h: Move to liboctave directory. |
|
3324 * Makefile.in: Remove from lists. |
|
3325 |
|
3326 * dirfns.cc (Freaddir): Use new dir_entry class instead of calling |
|
3327 readdir directly. Include dir-ops.h, not sysdir.h. |
|
3328 * utils.cc (get_fcn_file_names): Likewise. Delete unnecessary |
|
3329 first arg, change all callers. |
|
3330 |
|
3331 Tue Jan 23 00:43:12 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3332 |
|
3333 * safe-xstat.hin, safe-xstat.cin, statdefs.h, file-ops.h, |
|
3334 file-ops.cc, filemode.c, mkdir.c, rmdir.c, rename.c: |
|
3335 Files moved to liboctave directory. |
|
3336 * Makefile.in: Remove them from lists. Move appropriate rules. |
|
3337 |
|
3338 * acosh.c, asinh.c, atanh.c, erf.c, erfc.c, gamma.c, lgamma.c: |
|
3339 Files moved to liboctave directory. |
|
3340 * Makefile.in: Remove them from lists. |
|
3341 * missing-math.h: Deleted. |
|
3342 * pr-output.cc, sysdep.cc, minmax.cc, mappers.cc, expm.cc, |
|
3343 arith-ops.cc: Include oct-math.h, not cmath or missing-math.h. |
|
3344 |
|
3345 Mon Jan 22 19:33:05 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3346 |
|
3347 * variables.cc (Fexist): Use file_stat instead of calling stat |
|
3348 directly. Include file-ops.h, not statdefs.h. |
|
3349 * octave.cc (execute_startup_files): Likewise. |
|
3350 * file-io.cc (file_io_get_file, fopen_internal, popen_internal, Fstat): |
|
3351 Likewise. |
|
3352 (mk_stat_map): Likewise, use file_stat object, not struct stat. |
|
3353 * oct-hist.cc (do_history): Likewise. |
|
3354 |
|
3355 * file-ops.h, file-stat.cc: New files. |
|
3356 * Makefile.in: Include them. |
|
3357 * dirfns.cc: Delete is_newer. Don't include statdefs.h. |
|
3358 * toplev.cc: Don't include statdefs.h. |
|
3359 |
|
3360 Sun Jan 21 22:48:03 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3361 |
|
3362 * pt-mvr.h, pt-fvc.h, Map.cc, Map.h, dynamic-ld.h, |
|
3363 pt-fvc-base.cc, SLList-str.cc, pt-fcn.h, pt-fvc-base.h, |
|
3364 SLStack-str.cc, pt-mvr.cc, pt-exp.cc, token.h, token.cc, |
|
3365 user-prefs.h, pt-base.cc, user-prefs.cc, dirfns.h, sysdep.h, |
|
3366 sysdep.cc, input.h, parse.h, lex.l, parse.y, defun.h, mappers.h, |
|
3367 pt-fvc.cc, pt-plot.h, load-save.h, octave.cc, defun-int.h, help.h, |
|
3368 variables.h, oct-map.h, oct-obj.h, oct-obj.cc, pt-const.cc, |
|
3369 oct-map.cc, input.cc, symtab.h, pt-const.h, pathsearch.cc, |
|
3370 pr-output.h, pr-output.cc, toplev.h, timefns.cc, schur.cc, |
|
3371 pt-plot.cc, pager.cc, load-save.cc, dynamic-ld.cc, dirfns.cc, |
|
3372 data.cc, file-info.h, file-info.cc, colloc.cc, utils.h, qpsol.cc, |
|
3373 quad.cc, npsol.cc, lsode.cc, fsolve.cc, dassl.cc, file-io.cc, |
|
3374 help.cc, utils.cc, oct-hist.h, oct-hist.cc, symtab.cc, toplev.cc, |
|
3375 pt-fcn.cc, unwind-prot.h, unwind-prot.cc, variables.cc: |
|
3376 Most functions in these files that deal with character strings |
|
3377 have been converted to use the string class insatead of char*. If |
|
3378 you want more detailed information, you'll have to figure it out |
|
3379 for yourself. |
|
3380 |
|
3381 Sat Jan 20 18:19:12 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3382 |
|
3383 * dynamic-ld.cc [WITH_DL]: Define RTLD_LAZY to be 1 if it is not |
|
3384 already defined. |
|
3385 |
|
3386 Sun Jan 14 07:48:05 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3387 |
|
3388 * pt-const.cc (print_as_scalar, print_as_structure): |
|
3389 Make these member functions. |
|
3390 (tree_constant::print_with_name): New function, moved here from |
|
3391 old tree-expr.cc file (where it was called print_constant) and |
|
3392 converted to member function. Change all callers. |
|
3393 |
|
3394 Fri Jan 12 01:54:49 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3395 |
|
3396 * octave.cc (initialize_globals): Don't do kpathsearch stuff here. |
|
3397 (main): Call initialize_pathsearch() here. |
|
3398 |
|
3399 * pathsearch.cc: New file. |
|
3400 * Makefile.in (SOURCES): Add it to the list |
|
3401 |
|
3402 * oct-hist.h: Rename from octave-hist.h. |
|
3403 * oct-hist.cc: Rename from octave-hist.cc. |
|
3404 * Makefile.in, parse.y, other .cc files: Cope with it. |
|
3405 |
|
3406 * dynamic-ld.cc: Avoid warnings if !WITH_DYNAMIC_LINKING. |
|
3407 |
|
3408 * load-save.cc (save_ascii_data): string::data() returns const char*. |
|
3409 |
|
3410 * utils.h: Don't provide forward declaration for tree_constant. |
|
3411 |
|
3412 * oct-obj.h: Don't include mx-base.h or provide forward |
|
3413 declarations for Matrix and Range types. |
|
3414 |
|
3415 * file-info.h: Don't include oct-obj.h. Do include cstdio. |
|
3416 |
|
3417 * symtab.h: Don't provide forward declaration for ostream. |
|
3418 |
|
3419 * variables.h: Don't provide forward declarations for istream, |
|
3420 ostrstream, tree, builtin_function, or builtin_variable objects. |
|
3421 |
|
3422 * balance.cc, chol.cc, colloc.cc, dassl.cc, det.cc, eig.cc, |
|
3423 expm.cc, fft.cc, fft2.cc, filter.cc, find.cc, fsolve.cc, fsqp.cc, |
|
3424 givens.cc, hess.cc, ifft.cc, ifft2.cc, inv.cc, log.cc, lpsolve.cc, |
|
3425 lsode.cc, lu.cc, minmax.cc, npsol.cc, pinv.cc, qpsol.cc, qr.cc, |
|
3426 quad.cc, qzval.cc, rand.cc, schur.cc, sort.cc, svd.cc, syl.cc: |
|
3427 Clean up #include statements. |
|
3428 |
|
3429 * pt-const.h: Don't include oct-obj.h or tree-base.h. |
|
3430 Provide forward declaration of Octave_object here. |
|
3431 * pt-const.cc: Include oct-obj.h here. |
|
3432 |
|
3433 * pt-mat.h, pt-fcn.h, pt-const.h, pt-misc.h, pt-plot.h, |
|
3434 pt-exp-base.h, pt-cmd.h, pt-fvc-base.h, pt-mvr-base.h, pt-exp.h, |
|
3435 pt-mvr.h, pt-fvc.h: New files, split from tree-expr.h and/or |
|
3436 renamed from other tree-*.h files (pt == parse tree). |
|
3437 * pt-base.cc, pt-const.cc, pt-exp.cc, pt-fvc-base.cc, pt-mat.cc, |
|
3438 pt-mvr-base.cc, pt-plot.cc, pt-cmd.cc, pt-exp-base.cc, pt-fcn.cc, |
|
3439 pt-fvc.cc, pt-misc.cc, pt-mvr.cc: Likewse, split from tree-expr.cc |
|
3440 and/or other tree-*.cc files. |
|
3441 * Makefile.in: Include them in the appropriate lists. |
|
3442 * All: Fix #include statements to match. |
|
3443 |
|
3444 * Array-tc.cc: Don't instantiate ArrayRep objects. |
|
3445 |
|
3446 Thu Jan 11 02:35:19 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3447 |
|
3448 * tree-const.cc (tree_constant::eval (int, int, const Octave_object&)): |
|
3449 Define here instead of in tree-const.h. |
|
3450 |
|
3451 Wed Jan 10 04:34:20 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3452 |
|
3453 * tree-const.h (tree_constant::tree_constant (const string&): |
|
3454 * tree-const.cc (TC_REP::tree_constant_rep (const string&)): |
|
3455 New constructor. |
|
3456 |
|
3457 Tue Jan 9 04:10:29 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3458 |
|
3459 * rand.cc (do_rand): Use string_value() result directly instead of |
|
3460 c_str() conversion. |
|
3461 * balance.cc (Fbalance): Likewise. |
|
3462 |
|
3463 * tree-const.cc (TC_REP::string_value()): |
|
3464 Handle new definition of charMatrix::row_as_string() |
|
3465 * load-save.cc (save_ascii_data): Ditto. |
|
3466 (save_binary_data): Ditto. |
|
3467 * pr-output.cc (octave_print_internal): Ditto. |
|
3468 |
|
3469 * balance.cc (Fbalance): |
|
3470 Handle new definition of TC_REP::string_value() |
|
3471 * colloc.cc (Fcolloc): Ditto. |
|
3472 * dassl.cc (Fdassl_options): Ditto. |
|
3473 * data.cc (Fstruct_contains): Ditto. |
|
3474 * dirfns.cc (Fmkdir): Ditto. |
|
3475 (Freaddir): Ditto. |
|
3476 (Frmdir): Ditto. |
|
3477 (Frename): Ditto. |
|
3478 * error.cc (handle_message): Ditto. |
|
3479 * file-io.cc (process_printf_format): Ditto. |
|
3480 (fopen_internal): Ditto. |
|
3481 (file_io_get_file): Ditto. |
|
3482 (return_valid_file): Ditto. |
|
3483 (Flstat): Ditto. |
|
3484 (Fstat): Ditto. |
|
3485 (unlink_internal): Ditto. |
|
3486 (mkfifo_internal): Ditto. |
|
3487 (async_system_internal): Ditto. |
|
3488 (sync_system_internal): Ditto. |
|
3489 (execute_internal): Ditto. |
|
3490 (popen_internal): Ditto. |
|
3491 (fwrite_internal): Ditto. |
|
3492 (fread_internal): Ditto. |
|
3493 (do_printf): Ditto. |
|
3494 (do_scanf): Ditto. |
|
3495 * input.cc (get_user_input): Ditto. |
|
3496 * lsode.cc (Flsode_options): Ditto. |
|
3497 * npsol.cc (Fnpsol_options):Ditto. |
|
3498 * qpsol.cc (Fqpsol_options):Ditto. |
|
3499 * quad.cc (Fquad_options): Ditto. |
|
3500 * rand.cc (do_rand): Ditto. |
|
3501 * schur.cc (Fschur): Ditto. |
|
3502 * sysdep.cc (Fputenv): Ditto. |
|
3503 (Fgetenv): Ditto. |
|
3504 * timefns.cc (extract_tm): Ditto. |
|
3505 (Fstrftime): Ditto. |
|
3506 * toplev.cc (Fsource): Ditto. |
|
3507 (eval_string): Ditto. |
|
3508 (Fsystem): Ditto. |
|
3509 * tree-plot.cc (subplot::handle_plot_data): Ditto. |
|
3510 * variables.cc (is_valid_function): Ditto. |
|
3511 (Fis_global): Ditto. |
|
3512 (Fexist): Ditto. |
|
3513 (builtin_string_variable): Ditto. |
|
3514 * utils.cc (make_argv): Ditto. |
|
3515 (Fundo_string_escapes): Ditto. |
|
3516 |
|
3517 Mon Jan 8 01:54:50 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3518 |
|
3519 * Makefile.in (install-bin): Use $(LN_S), not just ln. |
|
3520 |
|
3521 * variables.cc (octave_fcn_file_dir): New function. |
|
3522 * tree-expr.cc (mark_as_system_fcn_file): Use it instead of |
|
3523 octave_lib_dir. |
|
3524 |
|
3525 * Makefile.in (clean): If $(SHARED_LIBS), also remove shared libs. |
|
3526 |
|
3527 * pr-output.cc (set_format (const ComplexMatrix&, int&, int&)): |
|
3528 Unconditionally call all_elements_are_int_or_inf_or_nan(). |
|
3529 (set_format (const Matrix&, int&, int&)): Likewise. |
|
3530 |
|
3531 Sun Jan 7 19:12:39 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3532 |
|
3533 * utils.cc (oct_putenv): New function. |
|
3534 * sysdep.cc (Fputenv): Use oct_putenv. |
|
3535 * octave.cc (initialize_globals): Likewise. |
|
3536 |
|
3537 Sat Jan 6 23:22:37 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3538 |
|
3539 * sysdep.cc (Fputenv): New function. |
|
3540 |
|
3541 * input.cc (initialize_readline): Call rl_initialize() here. |
|
3542 |
|
3543 * octave.cc: Conditionally define atexit to be on_exit here. |
|
3544 * toplev.cc: Not here. |
|
3545 |
|
3546 Fri Jan 5 14:01:02 1996 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3547 |
|
3548 * toplev.cc: Don't include <pwd.h> here. |
|
3549 |
|
3550 * octave-hist.cc, tree-plot.cc, utils.cc: Do include "sysdep.h". |
|
3551 |
|
3552 * dirfns.cc, file-io.cc, help.cc, load-save.cc, octave.cc, |
|
3553 octave-hist.cc, tree-plot.cc, utils.cc: |
|
3554 Don't include <readline/tilde.h>. |
|
3555 * sysdep.h: Do include it here. |
|
3556 |
|
3557 * tree-const.cc (TC_REP::assign (tree_constant&, Octave_object&)): |
|
3558 If we have a matrix or range, call maybe_mutate before returning. |
|
3559 |
|
3560 Sun Dec 31 15:56:18 1995 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3561 |
|
3562 * npsol.cc (Fnpsol): Improve doc string. |
|
3563 * qpsol.cc (Fqpsol): Likewise. |
|
3564 |
|
3565 Fri Dec 29 21:46:58 1995 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3566 |
|
3567 * defun-dld.h: Make work again for OCTAVE_LITE and |
|
3568 WITH_DYNAMIC_LINKING. |
|
3569 |
|
3570 * Makefile.in: Handle shared libraries. |
|
3571 |
|
3572 Wed Dec 27 17:47:51 1995 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3573 |
|
3574 * mk-oct-links: New file. |
|
3575 * Makefile.in (install-oct): Use it. |
|
3576 * f-*.cc: Rename to *.cc. |
|
3577 |
|
3578 * Makefile.in (install-bin, install-lib, install-oct): New targets. |
|
3579 (install): Use them. |
|
3580 |
|
3581 Tue Dec 26 21:38:22 1995 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3582 |
|
3583 * toplev.cc (reading_startup_message_printed): Move initialization |
|
3584 here and make extern. |
|
3585 |
|
3586 * dirfns.cc, dynamic-ld.cc, help.cc, input.cc, octave-hist.cc, |
|
3587 octave.cc, sighandlers.cc, sysdep.cc, tree-expr.cc, tree-misc.cc, |
|
3588 utils.cc, variables.cc, parse.y, lex.l: Include toplev.h instead |
|
3589 of octave.h. |
|
3590 * toplev.h: rename from octave.h. |
|
3591 |
|
3592 * octave.cc (main): Delete unused variable saved_sigint_handler. |
|
3593 |
|
3594 Sun Dec 24 00:26:54 1995 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3595 |
|
3596 * dynamic-ld.cc: Massive re-write to handle dlopen/dlsym and |
|
3597 shl_load/shl_findsym methods of dynamic linking. |
|
3598 |
|
3599 * utils.cc (get_fcn_file_names): Check for .oct files if |
|
3600 WITH_DYNAMIC_LINKING, not WITH_DLD. |
|
3601 |
|
3602 * Makefile.in (LIB, TERMLIBS): Substitute values. |
|
3603 (octave): Add $(LIBS) to link command and use $(TERMLIBS) instead |
|
3604 of -ltermcap. |
|
3605 |
|
3606 Sat Dec 23 21:56:12 1995 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3607 |
|
3608 * dynamic-ld.h, dynamic-ld.cc: Remove old unused code. |
|
3609 |
|
3610 * variables.cc (load_fcn_from_file): |
|
3611 Always call load_octave_oct_file. |
|
3612 |
|
3613 Wed Dec 20 00:56:57 1995 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3614 |
|
3615 * pr-output.cc (set_real_format, set_real_matrix_format, |
|
3616 set_complex_format, set_complex_matrix_format, set_range_format): |
|
3617 New functions. Ensure the count of the digits to the right of the |
|
3618 decimal point is positive. |
|
3619 |
|
3620 * xpow.cc (xpow (const Matrix&, double)): Print warning if |
|
3621 inverting singular matrix (but return value anyway, in the name of |
|
3622 compatibility). |
|
3623 xpow (const ComplexMatrix&, double)): Likewise. |
|
3624 |
|
3625 * f-inv.cc (Finv): If matrix is singular, return result anyway, in |
|
3626 the name of compatibility. |
|
3627 |
|
3628 * symtab.cc (symbol_record::pop_context): |
|
3629 Don't assert (! context.empty ()). |
|
3630 |
|
3631 * tree-const.cc (TC_REP::char_matrix_value): Don't complain about |
|
3632 type conversion if object is an empty matrix.f |
|
3633 (TC_REP::assign): If rhs is a string, don't convert to numeric |
|
3634 type if rhs is empty or "". |
|
3635 Only widen if rhs is not empty. |
|
3636 Don't return 0x0 char_matrix if it is supposed to be a string. |
|
3637 |
|
3638 * arith-ops.h, mappers.h, pr-output.h, xdiv.h, xpow.h: Include |
|
3639 oct-cmplx.h in place of forward declaration for class Complex. |
|
3640 |
|
3641 * pr-output.cc, mappers.cc, arith-ops.cc, xdiv.cc, xpow.cc, |
|
3642 utils.cc: Include "oct-cmplx.h" instead of <Complex.h>. |
|
3643 |
|
3644 * octave.cc (initialize_error_handlers): Don't call |
|
3645 set_Complex_error_handler(). |
|
3646 (octave_Complex_error_handler): Delete unused function. |
|
3647 Delete declaration for set_Complex_error_handler(). |
|
3648 |
|
3649 * sighandlers.cc (catch_interrupts): New function. |
|
3650 * octave.cc (main): Call catch_interrupts() instead of calling |
|
3651 octave_set_signal_handler() directly. |
|
3652 |
|
3653 Tue Dec 19 03:22:37 1995 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3654 |
|
3655 * variables.cc (looks_like_octave_copyright): Also recognize the |
|
3656 string " This program is free software". |
|
3657 |
|
3658 Thu Dec 14 01:54:06 1995 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3659 |
|
3660 * octave-hist.cc (clean_up_history): Only write history file if |
|
3661 user_pref.saving_history. |
|
3662 |
|
3663 * octave-hist.cc (initialize_history, clean_up_history, |
|
3664 do_history): Perform tilde expansion on history file name. |
|
3665 |
|
3666 * octave.cc (main): Check `defined (HAVE_ON_EXIT)' not just |
|
3667 `(HAVE_ON_EXIT)'. |
|
3668 |
|
3669 * user-prefs.h (user_preferences): New fields, `history_file' and |
|
3670 `history_size'. |
|
3671 * user-prefs.cc (init_user_prefs): Initialize them. |
|
3672 (sv_history_file, history_size): New functions. |
|
3673 * variables.cc (install_builtin_variables): Initialize user-level |
|
3674 variables history_file and history_size. |
|
3675 * octave-hist.cc (default_history_size): Now extern. |
|
3676 (default_history_file): Likewise. |
|
3677 (octave_hist_size, octave_hist_file): Use user preference |
|
3678 variables instead. |
|
3679 * octave.cc (main): Call initialize_history after |
|
3680 execute_startup_files. |
|
3681 |
|
3682 Fri Dec 8 15:53:59 1995 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3683 |
|
3684 * user-prefs.h (user_preferences): New field, `saving_history'. |
|
3685 * user-prefs.cc (init_user_prefs): Initialize it. |
|
3686 (saving_history): New function. |
|
3687 * variables.cc (install_builtin_variables): Initialize user-level |
|
3688 variable saving_history. |
|
3689 * octave.cc (parse_and_execute): Don't reset value of |
|
3690 saving_history here. |
|
3691 (main) Use user_pref.saving_history instead of saving_history. |
|
3692 * variables.cc (parse_fcn_file): Likewise. |
|
3693 * octave-hist.cc (maybe_save_history): Likewise. |
|
3694 Don't save history if input_from_startup_file. |
|
3695 |
|
3696 Mon Nov 27 23:05:52 1995 John W. Eaton <jwe@bevo.che.wisc.edu> |
|
3697 |
|
3698 * resource.cc: Include systime.h before <sys/resource.h>. |
|
3699 |
|
3700 Tue Nov 14 14:09:40 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
3701 |
|
3702 * error.cc: Include cstring. |
|
3703 |
|
3704 * tree-expr.cc (print_code): Decrement indent level after printing |
|
3705 function body. |
|
3706 |
|
3707 * Makefile.in: Remove references to oct-str.cc, oct-str.h, and |
|
3708 Array-string.cc. |
|
3709 |
|
3710 * tree-const.h: Don't include oct-str.h. |
|
3711 |
|
3712 Mon Nov 6 11:16:49 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
3713 |
|
3714 * parse.y (make_plot_command, finish_colon_expression, |
|
3715 make_unwind_protect, make_try_command, make_for_command, |
|
3716 make_break_command, make_continue_command, make_return_command, |
|
3717 start_if_command, finish_if_command, make_elseif_clause, |
|
3718 make_simple_assignment, make_multi_val_ret, start_function_def, |
|
3719 frob_function_def, finish_function_def, start_matrix, |
|
3720 finish_matrix): New functions. Use them in the grammar to clean |
|
3721 things up a bit. Possibly convert matrix lists, colon |
|
3722 expressions, binary expressions, and unary expressions to constant |
|
3723 values. |
|
3724 (tree_matrix_type): Delete. |
|
3725 (simple_expr1): Handle all expression stuff here, including |
|
3726 assignments. |
|
3727 (simple_expr): Just check to see that simple_expr1 produced |
|
3728 something useful. |
|
3729 |
|
3730 * tree-plot.cc, tree-plot.h: Move most simple constructors to the |
|
3731 header file. |
|
3732 |
|
3733 * tree-expr.h (tree_expression::is_constant): Move virtual |
|
3734 function definition here. |
|
3735 (tree_fvc::is_constant): From here. |
|
3736 (tree_expression::is_matrix_constant): New virtual function. |
|
3737 (tree_expression::is_range_constant): New virtual function. |
|
3738 * tree-expr.cc (tree_matrix::is_matrix_constant): New function. |
|
3739 * tree-expr.cc (tree_colon_expression::is_range_constant): New |
|
3740 function. |
|
3741 |
|
3742 Fri Nov 3 03:42:04 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
3743 |
|
3744 * utils.cc, utils.h (jump_to_top_level): Declare as extern "C". |
|
3745 |
|
3746 * tree-const.h (tree_constant::eval ()): Only mutate if printing. |
|
3747 |
|
3748 * tree-const.cc (TC_REP::tree_constant_rep (const Complex&), |
|
3749 TC_REP::tree_constant_rep (const ComplexMatrix&), |
|
3750 TC_REP::tree_constant_rep (const ComplexDiagMatrix&), |
|
3751 TC_REP::tree_constant_rep (const ComplexRowVector&), |
|
3752 TC_REP::tree_constant_rep (const ComplexColumnVector&)): |
|
3753 Also check to see if we can convert to scalar_constant, not just |
|
3754 complex_scalar_constant. |
|
3755 |
|
3756 * user-prefs.h (user_preferences): New field, `exec_path'. |
|
3757 * user-prefs.cc (init_user_prefs): Initialize it. |
|
3758 (sv_exec_path): New function. |
|
3759 * variables.cc (install_builtin_variables): Add DEFUN for EXEC_PATH. |
|
3760 (default_exec_path): New function. |
|
3761 * octave.cc (exec_path): New global variable. |
|
3762 Don't set and putenv() exec path here. |
|
3763 (long_opts): Add --exec-path option. |
|
3764 (main): Handle it. |
|
3765 (initialize_globals): Set default value here. |
|
3766 |
|
3767 * user-prefs.h (user_preferences): New field, `info_prog'. |
|
3768 * user-prefs.cc (init_user_prefs): Initialize it. |
|
3769 (sv_info_prog): New function. |
|
3770 * variables.cc (install_builtin_variables): Add DEFUN for INFO_PROGRAM. |
|
3771 (default_info_prog): New function. |
|
3772 * octave.cc (info_prog): New global variable. |
|
3773 (initialize_globals): Set default value here. |
|
3774 (long_opts): Add --info-prog option. |
|
3775 (main): Handle it. |
|
3776 * help.cc (try_info): Use user_pref.info_prog here. |
|
3777 |
|
3778 * octave.cc (initialize_globals): Put arch_dir and bin_dir ahead |
|
3779 of shell_path when resetting PATH. |
|
3780 |
|
3781 Thu Nov 2 04:30:13 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
3782 |
|
3783 * f-rand.cc (Frandn): New function. |
|
3784 (do_initialization): New function. |
|
3785 (do_rand): New function for doing the real work. |
|
3786 (Frand): Use it. |
|
3787 |
|
3788 * octave.cc (parse_and_execute): New arg, warn_for. If given, |
|
3789 print message if file cannot be opened. |
|
3790 Set curr_fcn_file_full_name here. |
|
3791 (Fsource): Pass extra arg to parse_and_execute to get warning message. |
|
3792 |
|
3793 * tree-const.h: Handle line and column info for double, Complex, |
|
3794 and char* constants. |
|
3795 |
|
3796 * parse.y (maybe_convert_to_ans_assign): Pass along line and |
|
3797 column info from expression. |
|
3798 |
|
3799 * parse.y (make_constant): New function. |
|
3800 (simple_expr1, word_list): Use it. |
|
3801 |
|
3802 * input.cc, input.h (curr_fcn_file_full_name): New global. |
|
3803 * variables.cc (load_fcn_from_file): Set it here. |
|
3804 * parse.y (func_def2, yyerror, maybe_warn_missing_semi): Use it. |
|
3805 (func_def2): If !reading_fcn_file, don't call strcmp if |
|
3806 curr_fcn_file_name is 0. |
|
3807 |
|
3808 * octave.cc (Fsource): New function. |
|
3809 (parse_and_execute): Declare file name const char *. |
|
3810 * input.cc (get_input_from_file): Likewise. |
|
3811 |
|
3812 Wed Nov 1 13:54:34 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
3813 |
|
3814 * f-filter.cc: New file. |
|
3815 * Makefile.in (DLD_SRC): Add it to the list. |
|
3816 |
|
3817 * sysdep.h (gethostname): Change declaration to match definition |
|
3818 in sysdep.cc. |
|
3819 |
|
3820 * resource.cc: Include sysdep.h here, for octave_NaN. |
|
3821 |
|
3822 Tue Oct 31 02:12:18 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
3823 |
|
3824 * tree-const.cc (TC_REP::assign): After converting rhs to a |
|
3825 numeric type, use the converted value, not the original. |
|
3826 |
|
3827 * dirfns.cc (Fpwd): If nargout == 0, print the directory name |
|
3828 instead of returning it. |
|
3829 |
|
3830 * pager.cc (maybe_page_output): Call maybe_write_to_diary_file here. |
|
3831 (flush_output_to_pager): Not here. |
|
3832 |
|
3833 Mon Oct 30 23:39:43 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
3834 |
|
3835 * variables.cc (install_builtin_commands): Add DEFVAR for |
|
3836 echo_executing_commands. |
|
3837 |
|
3838 * octave-hist.cc (do_edit_history): Handle new echo stuff. |
|
3839 * variables.cc (parse_fcn_file): Likewise. |
|
3840 * octave.cc (parse_and_execute): Likewise. |
|
3841 (main): Likewise. |
|
3842 * input.cc (do_input_echo): |
|
3843 (Fecho): New function. |
|
3844 |
|
3845 * tree-expr.cc (tree_function::print_code_function_header, |
|
3846 tree_function::print_code_function_trailer): New functions. |
|
3847 (tree_function::print_code): Use them. |
|
3848 (tree_function::eval): Likewise, if echoing commands. |
|
3849 * tree-misc.cc (tree_statement::maybe_echo_code): New function. |
|
3850 |
|
3851 * user-prefs.h (user_preferences): New field, echo_executing_commands. |
|
3852 (echo_state): New enum, for various types of echoing we do. |
|
3853 * user-prefs.cc (echo_executing_commands): New function. |
|
3854 |
|
3855 * tree-base.cc (print_code_indent): Print PS4 as line prefix. |
|
3856 * help.cc (Ftype): Add unwind_protect for ps4 and set it to "" |
|
3857 before printing code. |
|
3858 |
|
3859 * tree-misc.h (tree_statement_list): New field, function_body. |
|
3860 (tree_statement_list::mark_as_function_body): New function. |
|
3861 * parse.y (func_def3): Mark function bodies. |
|
3862 |
|
3863 * pr-output.cc (octave_print_internal): Undo string escapes when |
|
3864 printing charMatrix as strings. |
|
3865 |
|
3866 Sat Oct 28 17:38:29 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
3867 |
|
3868 * utils.h (undo_string_escapes): Add missing const in declaration. |
|
3869 |
|
3870 Fri Oct 27 03:49:44 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
3871 |
|
3872 * file-io.cc (next_available_file_number): New stack for keeping |
|
3873 track of next available file number. |
|
3874 (get_next_avail_file_num): New function. |
|
3875 (fopen_file_for_user, fopen_internal, popen_internal, |
|
3876 execute_internal): Use it. |
|
3877 |
|
3878 Mon Oct 23 07:00:09 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
3879 |
|
3880 * tree-const.cc (TC_REP::convert_to_matrix_type, |
|
3881 tree_constant::convert_to_matrix_type): New arg, make_complex. |
|
3882 (TC_REP::set_index): New arg, rhs_is_complex. Pass it to |
|
3883 convert_to_matrix_type. |
|
3884 (TC_REP::assign): Pass rhs.is_complex_type() to set_index. |
|
3885 |
|
3886 Thu Oct 19 00:38:38 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
3887 |
|
3888 * xpow.cc: Include <climits>. |
|
3889 |
|
3890 * sysdep.cc (Fpause): Do pause even if not interactive. |
|
3891 |
|
3892 * tree-const.cc (TC_REP::assign): Don't make RHS numeric if both |
|
3893 RHS and LHS are strings. |
|
3894 |
|
3895 Wed Oct 18 22:19:16 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
3896 |
|
3897 * f-expm.cc (Fexpm): Avoid taking log of negative number. Also, |
|
3898 don't unnecessarily divide the input matrix by 1.0. |
|
3899 |
|
3900 * input.cc (decode_prompt_string): Recognize \[ and \] too. |
|
3901 (initialize_readline): Bind M-p to history-search-backward and M-n |
|
3902 to history-search-forward. |
|
3903 |
|
3904 Tue Oct 17 04:31:06 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
3905 |
|
3906 * xpow.cc (xpow): Handle integer powers better for complex^double. |
|
3907 (elem_xpow): Likewise. |
|
3908 |
|
3909 * lex.l ({CCHAR}): If nesting_level.top() is BRACE, return ';', |
|
3910 not '\n'. |
|
3911 |
|
3912 Mon Oct 16 19:03:45 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
3913 |
|
3914 * help.cc (Fwhich): Fix doc string. |
|
3915 |
|
3916 * variables.cc (Fexist): Update doc string. |
|
3917 |
|
3918 Sun Oct 15 22:19:16 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
3919 |
|
3920 * Another massive set of changes to support character matrices |
|
3921 with indexing. The Octave_str_object class is no longer used. |
|
3922 Anything having to do with Octave_str_object in the following |
|
3923 files has been changed to use charMatrix instead: octave.h, |
|
3924 load-save.cc, octave.cc, strfns.cc, data.cc, pr-output.h, |
|
3925 pr-output.cc, tree-const.h, dirfns.cc, tree-const.cc, |
|
3926 tree-expr.cc. |
|
3927 |
|
3928 Sat Oct 14 22:28:18 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
3929 |
|
3930 * f-sort.cc (mx_sort): Don't attempt to sort vectors that have |
|
3931 only one element, or matrices that have only one row. |
|
3932 |
|
3933 Thu Oct 12 02:16:58 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
3934 |
|
3935 * mappers.cc (install_mapper_functions): Add gammaln as an alias |
|
3936 for lgamma. |
|
3937 |
|
3938 * tree-const.h, tree-const.cc: Massive overhaul of indexing and |
|
3939 indexed assignment functions. |
|
3940 * tc-inlines.h, tc-rep.h: Remove files. |
|
3941 * Makefile.in: Remove mention of them here too. |
|
3942 |
|
3943 * Makefile.in: Include $(TI_SRC) in DEP_SOURCES_3, not |
|
3944 $(TI_SOURCES). |
|
3945 Include $(DLD_SRC) in DEP_SOURCES_3. |
|
3946 Include $(TI_SRC) in DEF_FILES_5. |
|
3947 |
|
3948 Wed Oct 11 01:26:18 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
3949 |
|
3950 * Makefile.in (INCLUDES): Remove tc-inlines.h and tc-rep.h from |
|
3951 the list. |
|
3952 |
|
3953 Mon Oct 9 08:31:04 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
3954 |
|
3955 * lex.l (next_token_is_bin_op): Do match `.+', `.*', etc. |
|
3956 |
|
3957 Sun Oct 8 18:19:56 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
3958 |
|
3959 * idx-vector.h, idx-vector.cc: Delete files. |
|
3960 * Makefile.in (SOURCES, INCLUDES): Remove them from lists. |
|
3961 |
|
3962 Fri Oct 6 00:52:06 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
3963 |
|
3964 * f-svd.cc (Fsvd): If nargout == 0 or nargout == 1, don't ask for |
|
3965 U and V. |
|
3966 |
|
3967 Wed Oct 4 00:04:57 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
3968 |
|
3969 * f-npsol.cc (Fnpsol, Fnpsol_options): Avoid unused variable |
|
3970 warnings if NPSOL_MISSING. |
|
3971 * f-qpsol.cc (Fqpsol, Fqpsol_options): Likewise for QPSOL_MISSING. |
|
3972 |
|
3973 * Makefile.in (DISTFILES): Add octave.gperf. |
|
3974 |
|
3975 * lex.l (next_token_is_bin_op): Don't ever return true for `.' |
|
3976 since that causes problems with things like [ .1 .1 ]. |
|
3977 |
|
3978 Tue Oct 3 05:30:24 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
3979 |
|
3980 * variables.cc (is_valid_function): Avoid setting error_state if |
|
3981 argument is not a string. |
|
3982 |
|
3983 * parse.y (maybe_warn_missing_semi): New function. |
|
3984 (list1, list): Call it if statement not terminated by semicolon. |
|
3985 * tree-misc.h (tree_statement::line, tree_statement::column): |
|
3986 New functions. |
|
3987 * octave.cc (input_from_command_line_file): New global variable. |
|
3988 (main): Set it. |
|
3989 (parse_and_execute): Unwind-protect it and set it to zero. |
|
3990 (eval_string): Likewise. |
|
3991 * variables.cc (parse_fcn_file): Likewise. |
|
3992 |
|
3993 * user-prefs.cc (warn_missing_semicolon): New function. |
|
3994 * user-prefs.h (user_preferences): New field, warn_missing_semicolon. |
|
3995 * variables.cc (install_builtin_variables): DEFVAR it. |
|
3996 |
|
3997 * tree-expr.cc (tree_expression::is_logically_true): Actually use |
|
3998 argument. |
|
3999 |
|
4000 Mon Oct 2 19:55:48 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
4001 |
|
4002 * variables.cc (install_builtin_variables): Reduce the default |
|
4003 value of save_precision to 15. |
|
4004 |
|
4005 * variables.cc (builtin_real_scalar_variable): Return 1 for |
|
4006 success, 0 for failure. |
|
4007 |
|
4008 * user-prefs.cc (struct_levels_to_print, set_save_precision, |
|
4009 set_output_max_field_width, set_output_precision): |
|
4010 Change sense of test for builtin_real_scalar_variable return value. |
|
4011 (check_preference): Rename from check_str_pref. Change all callers. |
|
4012 Accept value of 0 to be the same as "false" and nonzero to be the |
|
4013 same as "true". |
|
4014 Delete val to avoid memory leak. |
|
4015 * variables.cc (install_builtin_variables): Change initial values |
|
4016 from "true" to 1, "false" to 0. |
|
4017 |
|
4018 * variables.cc (install_builtin_variables): Add DEFVAR for |
|
4019 gnuplot_has_multiplot. |
|
4020 |
|
4021 * user-prefs.h (user_preferences): New field, |
|
4022 `gnuplot_has_multiplot'. |
|
4023 * user-prefs.cc (init_user_prefs): Initialize it. |
|
4024 (gnuplot_has_multiplot): New function. |
|
4025 |
|
4026 Sat Sep 30 16:52:57 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
4027 |
|
4028 * oct-gperf.h, octave.gperf: Newfiles. |
|
4029 * Makefile.in (DISTFILES): Add octave.gperf. |
|
4030 (INCLUDES): Add oct-gperf.h. |
|
4031 (oct-gperf.h): New rule. |
|
4032 (local-dist, dist): Depend on oct-gperf.h. |
|
4033 * lex.l (is_keyword): Use perfect hash function to lookup |
|
4034 keywords. |
|
4035 |
|
4036 Fri Sep 29 04:36:04 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
4037 |
|
4038 * version.h (OCTAVE_NAME_AND_VERSION): Add TARGET_HOST_TYPE to this. |
|
4039 |
|
4040 Thu Sep 28 00:03:51 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
4041 |
|
4042 * tree-expr.cc (tree_expression::is_logically_true): New function. |
|
4043 * tree-cmd.cc (tree_while_command::eval): Use it instead of |
|
4044 handling the test directly here. |
|
4045 * tree-misc.cc (tree_if_clause::eval): Likewise |
|
4046 |
|
4047 * tree-const.cc (TC_REP::force_numeric): Don't try to print value |
|
4048 of str_obj with %s. |
|
4049 |
|
4050 * error.cc (buffer_error_messages): Rename from |
|
4051 suppress_octave_error_messages. |
|
4052 (error_message_buffer): New global variable. |
|
4053 (verror): Handle buffering of messages. |
|
4054 (handle_message): New function. |
|
4055 (Ferror, Fwarning, Fusage): Use it instead of duplicating code. |
|
4056 |
|
4057 * octave.cc (Feval): Buffer error messages instead of supressing them. |
|
4058 |
|
4059 * lex.l (is_keyword): Recognize `try', `catch', and `end_try_catch'. |
|
4060 * parse.y (TRY, CATCH): New tokens. |
|
4061 (command): Recognize try-catch block. |
|
4062 (end_error): Add cases for unwind_protect_end and try_catch_end. |
|
4063 * token.h (end_tok_type): New field, try_catch_end. |
|
4064 * tree-cmd.h, tree-cmd.cc (tree_try_catch): New class. |
|
4065 * variables.cc (bind_global_error_variable): New Function. |
|
4066 (clear_global_error_variable): Likewise. |
|
4067 (install_builtin_variables): Add DEFCONST for __error_text__. |
|
4068 * help.cc (keywords): Add `try', `catch', and `end_try_catch'. |
|
4069 |
|
4070 * tree-cmd.cc (tree_unwind_protect::eval): Undo previous change. |
|
4071 |
|
4072 * dirfns.cc (Freaddir, Fmkdir, Frmdir): |
|
4073 Do tilde expansion on the argument. |
|
4074 |
|
4075 Tue Sep 26 00:10:29 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
4076 |
|
4077 * f-dassl.cc, f-fsolve.cc, f-lsode.cc, f-npsol.cc, f-quad.cc: |
|
4078 Don't try to figure out if the user-supplied functions take the |
|
4079 correct number of arguments. Simply let the call fail. |
|
4080 * variables.cc (takes_correct_nargs): Delete unused function. |
|
4081 * tree-expr.cc (tree_builtin::eval): Don't complain for too many |
|
4082 arguments to mapper functions. |
|
4083 * tree-expr.h, tree-expr.cc (tree_builtin, tree_function, tree_fvc): |
|
4084 Delete unused function max_expected_args. |
|
4085 |
|
4086 * defun.h (DEFUN): Delete unnecessary args nargin_min and nargout_max. |
|
4087 New arg unused_arg_flags. |
|
4088 (DEFUN_TEXT): Likewise. |
|
4089 * defun-dld.h (DEFUN_DLD_BUILTIN): Likewise. |
|
4090 * defun-int.h (DEFUN_INTERNAL, DECLARE_FUN, DEFINE_FUN_STRUCT): |
|
4091 Do the real work. |
|
4092 |
|
4093 * data.cc, dirfns.cc, dynamic-ld.cc, error.cc, f-balance.cc, |
|
4094 f-chol.cc, f-colloc.cc, f-dassl.cc, f-det.cc, f-eig.cc, f-expm.cc, |
|
4095 f-fft.cc, f-fft2.cc, f-find.cc, f-fsolve.cc, f-fsqp.cc, |
|
4096 f-givens.cc, f-hess.cc, f-ifft.cc, f-ifft2.cc, f-inv.cc, f-log.cc, |
|
4097 f-lpsolve.cc, f-lsode.cc, f-lu.cc, f-minmax.cc, f-npsol.cc, |
|
4098 f-pinv.cc, f-qpsol.cc, f-qr.cc, f-quad.cc, f-qzval.cc, f-rand.cc, |
|
4099 f-schur.cc, f-sort.cc, f-svd.cc, f-syl.cc, file-io.cc, help.cc, |
|
4100 input.cc, lex.l, load-save.cc, mappers.cc, octave-hist.cc, |
|
4101 octave.cc, octave.h, pager.cc, pr-output.cc, resource.cc, |
|
4102 sighandlers.cc, strfns.cc, sysdep.cc, timefns.cc, token.cc, |
|
4103 tree-const.cc, tree-expr.cc, tree-expr.h, tree-plot.cc, |
|
4104 unwind-prot.cc, unwind-prot.h, utils.cc, variables.cc, |
|
4105 variables.h, version.h, xdiv.cc: |
|
4106 Avoid unused variable warnings. |
|
4107 |
|
4108 * tree-expr.h (tree_oct_obj::print_value (ostream&)): |
|
4109 Delete name of unused arg. |
|
4110 (tree_fvc::save (ostream&, int, int): Likewise. |
|
4111 |
|
4112 * tree-const.h (tree_constant::tree_constant (magic_colon)): |
|
4113 Delete name of unused arg. |
|
4114 (tree_constant::tree_constant (all_va_args)): Likewise |
|
4115 (ColumnVector vector_value (int, int)): Likewise. |
|
4116 (ComplexColumnVector vector_value (int, int)): Likewise. |
|
4117 (Octave_object::eval (int, int, const Octave_object&): Likewise. |
|
4118 |
|
4119 * octave.cc (execute_startup_files): Look for octaverc first in |
|
4120 site/m, then in $(version)/m. |
|
4121 * variables.cc (get_local_site_defaults): New function. |
|
4122 * defaults.h.in (OCTAVE_LOCALFCNFILEDIR, OCTAVE_LOCALSTARTUPFILEDIR): |
|
4123 New macros. |
|
4124 * Makefile.in (defaults.h): Also substitute ${localfcndir}. |
|
4125 |
|
4126 Mon Sep 25 17:01:03 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
4127 |
|
4128 * variables.cc (install_builtin_variables): Add DEFCONST for "e". |
|
4129 |
|
4130 Fri Sep 22 02:18:45 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
4131 |
|
4132 * dirfns.cc (Fls): Delete ls_command after using it, not before. |
|
4133 |
|
4134 * input.h, input.cc (gnu_readline): Don't declare gnu_readline |
|
4135 `extern "C"'. |
|
4136 |
|
4137 * sysdep.h: Only declare gethostname if it is missing, then don't |
|
4138 declare it `extern "C"'. |
|
4139 |
|
4140 * dirfns.cc: Don't declare strerror(). |
|
4141 |
|
4142 * input.cc (command_generator): Use malloc, not xmalloc. Don't |
|
4143 declare xmalloc. |
|
4144 (gnu_readline): Don't declare this `extern "C"'. |
|
4145 |
|
4146 * octave-hist.cc: Don't declare history_get(). It is now in |
|
4147 readline/history.h. |
|
4148 |
|
4149 * input.cc: Don't declare history_get(). It is now in |
|
4150 readline/readline.h. |
|
4151 |
|
4152 * resource.cc: Don't surround include of sys/resource.h in |
|
4153 `extern "C" { }'. |
|
4154 |
|
4155 * fnmatch.h [__cplusplus]: Surround contents in `extern "C" { }'. |
|
4156 * load-save.cc, symtab.cc, variables.cc: Don't surround |
|
4157 fnmatch.h include in `extern "C" { }'. |
|
4158 |
|
4159 * help.cc: Don't #undef __FUNCTION_DEF before including |
|
4160 readline/tilde.h. |
|
4161 |
|
4162 * dirfuns.cc, file-io.cc, help.cc, load-save.cc, octave-hist.cc, |
|
4163 sysdep.cc, tree-plot.cc, utils.cc, variables.cc: |
|
4164 Don't surround readline includes in `extern "C" { }'. |
|
4165 |
|
4166 * sysdep.cc: Move all include statements to top of file. |
|
4167 |
|
4168 Tue Sep 19 01:58:21 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
4169 |
|
4170 * octave.cc (Fsystem): Use iprocstream *, and unwind_protect it. |
|
4171 * pager.cc (flush_output_to_pager): Likewise. |
|
4172 * dirfns.cc (Fls): Likewise. |
|
4173 * tree-plot.cc (plot_stream): Now a pointer. |
|
4174 (open_plot_stream): Deal with it. |
|
4175 (send_to_plot_stream, cleanup_tmp_files, do_external_plotter_cd): |
|
4176 Likewise. |
|
4177 |
|
4178 * procstream.cc (cleanup_iprocstream, cleanup_oprocstream): |
|
4179 New functions. |
|
4180 |
|
4181 * procstream.h, procstream.cc (class iprocstream, class oprocstream): |
|
4182 Keep track of pbuf. Initialize it to 0 in default constructors, |
|
4183 delete it in destructor. Don't call close in destructor. |
|
4184 |
|
4185 * sighandlers.cc (octave_set_signal_handler): New function. |
|
4186 Use this name instead of signal everywhere. |
|
4187 * help.cc (try_info): Likewise. |
|
4188 * pager.cc (flush_output_to_pager): Likewise. |
|
4189 * octave.cc (main): Likewise. |
|
4190 * octave-hist.cc (do_edit_history): Likewise. |
|
4191 |
|
4192 * input.cc (initialize_readline): Set rl_paren_string_delimiters |
|
4193 to avoid treating single quotes as string delimiters when doing |
|
4194 paren matching. |
|
4195 |
|
4196 * Makefile.in (SOURCES): Don't list Map.cc or SLStack.cc here. |
|
4197 |
|
4198 * tree-const.cc: Do include utils.h. |
|
4199 |
|
4200 * sysdep.cc: Don't surround terminal includes in extern "C". |
|
4201 Include them before readline.h. |
|
4202 |
|
4203 * Map.h: Don't include utils.h. |
|
4204 (CHNode::CHNode (const char*, const C&, CHNode *t): |
|
4205 Do strsave() inline. |
|
4206 |
|
4207 * input.cc (generate_possible_completions): Generate name list |
|
4208 even when text == 0. |
|
4209 (operate_and_get_next): Don't declare history_stifled, call |
|
4210 history_is_stifled () instead. |
|
4211 Don't declare history_length, or max_input_history either. |
|
4212 Check (where >= history_length - 1) too, as in recent versions of |
|
4213 bash. |
|
4214 |
|
4215 * user-prefs.h (user_prefs): New field, `completion_append_char'. |
|
4216 * user-prefs.cc (init_user_prefs): Initialize it. |
|
4217 (sv_completion_append_char): New function. |
|
4218 * variables.cc (install_builtin_variables): Install |
|
4219 completion_append_char. |
|
4220 * input.cc (command_generator): Use it. |
|
4221 |
|
4222 * SLList-expr.cc, SLList-misc.cc, SLList-plot.cc, SLList-tc.cc, |
|
4223 DLList-fi.cc: Include config.h. |
|
4224 * DLList-fi.cc: Include file-info.h, not file-io.h. |
|
4225 |
|
4226 Mon Sep 18 11:01:24 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
4227 |
|
4228 * octave.h (clean_up_and_exit): Tag with NORETURN instead of using |
|
4229 typedef trick. |
|
4230 * error.h (panic): Likewise. |
|
4231 * utils.h (jump_to_top_level): Likewise. |
|
4232 |
|
4233 * file-io.h: Protect from multiple includes with octave_file_io, |
|
4234 not octave_files. |
|
4235 |
|
4236 * file-info.h (class file_info): Convert to using std C++ string |
|
4237 class from char *. |
|
4238 * file-info.cc: Likewise. Don't include utils.h. |
|
4239 * file-io.cc (return_valid_file, fopen_file_for_user, |
|
4240 fflush_internal, do_scanf): Use operator ==, not strcmp. |
|
4241 (close_files): Call error with file.name ().data (), |
|
4242 not file.name (). |
|
4243 (freport_internal): Call form with file.mode ().data () and |
|
4244 file.name ().data (). |
|
4245 |
|
4246 * file-io.cc, file-io.h: Extract file_info class. |
|
4247 * file-info.cc, file-info.h: New files for file_info class. |
|
4248 |
|
4249 * user-prefs.h (user_prefs): New field, `beep_on_error'. |
|
4250 * user-prefs.cc (init_user_prefs): Initialize it. |
|
4251 (beep_on_error): New function. |
|
4252 * variables.cc (install_builtin_variables): Install beep_on_error. |
|
4253 * octave.cc (maximum_braindamage): Set beep_on_error to "true". |
|
4254 * error.cc (verror): Conditionally beep. |
|
4255 (error): Don't reset error_state until after verror is called. |
|
4256 |
|
4257 Sun Sep 17 16:41:25 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
4258 |
|
4259 * load-save.cc (read_mat_binary_data, read_ascii_data, |
|
4260 save_ascii_data, read_binary_data, save_binary_data): |
|
4261 Handle string arrays. |
|
4262 |
|
4263 Fri Sep 15 00:24:19 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
4264 |
|
4265 * user-prefs.cc (struct_levels_to_print, |
|
4266 set_output_max_field_width, set_output_precision, |
|
4267 set_save_precision): Eliminate unecessary kludge variable. |
|
4268 |
|
4269 * variables.cc (gobble_leading_white_space): New arg, |
|
4270 in_parts. Change all callers. |
|
4271 |
|
4272 * lex.l (HELP_FCN): Delete start state. The `help' command is now |
|
4273 handled the same as any other text-style function. |
|
4274 |
|
4275 * gripes.cc (gripe_invalid_value_specified): New function |
|
4276 * user-prefs.cc: Use it. |
|
4277 |
|
4278 * sysdep.cc (octave_words_big_endian): New global variable. |
|
4279 (ten_little_endians): New function. |
|
4280 (sysdep_init): Call it. |
|
4281 * load-save.cc (words_big_endian): Use this at run-time instead of |
|
4282 depending on WORDS_BIGENDIAN at compile-time. |
|
4283 |
|
4284 * symtab.h (SYMTAB_VARIABLES): New macro. |
|
4285 * variables.cc (Fclear): Use it instead of just |
|
4286 symbol_def::USER_VARIABLE when looking for variables. |
|
4287 |
|
4288 * octave.cc (main): If there is a file to execute, set |
|
4289 program_invocation_name and program_name to the name of the file |
|
4290 and argv to the remaining args. |
|
4291 (intern_argv): Only define argv if there are some remaining |
|
4292 arguments. |
|
4293 |
|
4294 * defun.h (DEFVAR_INT): New macro. |
|
4295 (DEFVAR): Define in terms of DEFVAR_INT. Delete args protect and |
|
4296 eternal. |
|
4297 (DEFCONST): New macro. |
|
4298 * variables.cc (install_builtin_variables): Use DEFCONST where |
|
4299 appropriate, change uses of DEFVAR to match new definition. |
|
4300 |
|
4301 * variables.cc (bind_builtin_variable): New variant that accepts |
|
4302 const tree_constant& value. |
|
4303 (install_builtin_variables): Properly alphabetize DEFVAR for this. |
|
4304 |
|
4305 * octave.cc (short_opts): Prefix with `+' to prevent argv |
|
4306 permutation. |
|
4307 (main): Don't use readline if forced_interactive. |
|
4308 (traditional): New file-scope variable. |
|
4309 (long_opts, usage_string, verbose_usage): Add `--traditional'. |
|
4310 (maximum_braindamage): New function. |
|
4311 (main): Call it if --traditional. |
|
4312 |
|
4313 * input.cc (do_input_echo): Print prompt correctly when |
|
4314 forced_interactive is either true or false. |
|
4315 |
|
4316 Thu Sep 14 00:54:06 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
4317 |
|
4318 * data.cc (Fstruct_elements): New function. |
|
4319 |
|
4320 * file-io.cc (Fumask): New function. |
|
4321 |
|
4322 * dirfns.cc (Fmkdir, Frmdir, Frename): New functions. |
|
4323 |
|
4324 * Makefile.in: Add rules and dependencies for building safe-stat.o |
|
4325 and safe-lstat.o. |
|
4326 |
|
4327 * mkdir.c, rename.c, rmdir.c: New files. |
|
4328 * Makefile.in (SOURCES): Include them in the list. |
|
4329 |
|
4330 * safe-xstat.hin, safe-xstat.cin: New files |
|
4331 * Makefile.in (DISTFILES): Include them in the list. |
|
4332 |
|
4333 * sighandlers.cc (octave_new_handler): Try to continue on memory |
|
4334 exhausted errors. |
|
4335 (sigfpe_handler): Improve error message. |
|
4336 |
|
4337 * Makefile.in: Use `ifndef omit_deps', not `ifndef $(omit_deps)'. |
|
4338 |
|
4339 * dirfns.cc (Freaddir): New function. |
|
4340 |
|
4341 * f-sort.cc: Complete rewrite. Now uses stable sort algorithm and |
|
4342 correctly handles complex matrices containing columns of all real |
|
4343 numbers. |
|
4344 |
|
4345 Wed Sep 13 03:16:40 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
4346 |
|
4347 * arith-ops.cc: Unconditionally #define DIVIDE_BY_ZERO_ERROR. |
|
4348 |
|
4349 * variables.cc (install_builtin_variables): Unconditionally |
|
4350 install NaN and nan. |
|
4351 |
|
4352 * mappers.cc (xisinf): Don't do bogus things if isinf, isnan, or |
|
4353 finite are missing. |
|
4354 (xfinite): Likewise. |
|
4355 |
|
4356 * sysdep.cc (octave_ieee_init): Don't set octave_NaN and |
|
4357 octave_Inf if values are not available. |
|
4358 |
|
4359 * resource.cc (mk_ru_map): Don't use ru_ or tv_ as prefixes to |
|
4360 Octave names for the structure members. |
|
4361 |
|
4362 Tue Sep 12 02:04:16 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
4363 |
|
4364 * procstream.h, procstream.cc: Rewrite. |
|
4365 |
|
4366 Mon Sep 11 18:42:05 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
4367 |
|
4368 * filemode.c: New file, from Emacs. |
|
4369 * Makefile.in (SOURCES): Add it to the list. |
|
4370 |
|
4371 * file-io.cc (Fstat, Flstat, mk_stat_map): New functions. |
|
4372 |
|
4373 * timefns.cc (mk_tm_map): Don't use tm_ as prefix to Octave names |
|
4374 for these structure members. |
|
4375 (extract_tm): Likewise. |
|
4376 (Flocaltime): Fix doc string to match. |
|
4377 |
|
4378 Thu Sep 7 02:04:27 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
4379 |
|
4380 * load-save.cc (save_user_variables): New function. |
|
4381 * sighandlers.cc (my_friendly_exit): Call it before exiting. |
|
4382 (sigfpe_handler): New function. |
|
4383 (install_signal_handlers) [__alpha__]: Install it. |
|
4384 |
|
4385 Wed Sep 6 14:35:10 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
4386 |
|
4387 * tree-cmd.cc (tree_unwind_protect::eval): Ignore errors and |
|
4388 suppress error messages while executing first block of |
|
4389 unwind_protect commands. |
|
4390 |
|
4391 * parse.y (end_error): Add missing case for unwind_protect_end. |
|
4392 |
|
4393 * tree-expr.cc (tree_builtin::eval): Complain if no arguments |
|
4394 given for mapper functions. |
|
4395 (tree_fvc::lookup_map_element): Print error message for invalid |
|
4396 structure reference. |
|
4397 |
|
4398 Tue Sep 5 02:04:12 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
4399 |
|
4400 * file-io.cc, input.cc, load-save.cc, octave.cc, sysdep.cc, |
|
4401 variables.cc, octave-hist.cc, utils.cc, f-schur.cc, f-rand.cc, |
|
4402 f-quad.cc, f-qpsol.cc, f-npsol.cc, f-lsode.cc, f-fsolve.cc, |
|
4403 f-dassl.cc, f-colloc.cc, f-balance.cc, error.cc, data.cc: |
|
4404 Add const qualifiers where appropriate. |
|
4405 |
|
4406 * dirfns.h: Include <ctime>, for time_t. |
|
4407 |
|
4408 * tempname.c, file-io.cc, help.cc, input.cc, octave-hist.cc, |
|
4409 octave.cc, sighandlers.cc, sysdep.cc, tree-expr.cc, tree-misc.cc, |
|
4410 tree-plot.cc, utils.cc, variables.cc, sysdir.h: |
|
4411 Move #include <sys/type.h> inside #ifdef HAVE_UNISTD_H. |
|
4412 |
|
4413 * syswait.h: New file. |
|
4414 * Makefile.in (INCLUDES): Add it to the list. |
|
4415 * file-io.cc, sighandlers.cc: Use it instead of including |
|
4416 sys/wait.h directly. |
|
4417 |
|
4418 * octave.cc: Include statdefs.h, not sys/stat.h. |
|
4419 |
|
4420 * sysdir.h: New file. |
|
4421 * Makefile.in (INCLUDES): Add it to the list. |
|
4422 * dirfns.cc, utils.cc: Use it instead of including the headers |
|
4423 directly. |
|
4424 |
|
4425 * pathlen.h: New file. |
|
4426 * Makefile.in (INCLUDES): Add it to the list. |
|
4427 * dirfns.cc, input.cc: Use it instead of including sys/param.h |
|
4428 directly. |
|
4429 * utils.cc: Don't include sys/param.h |
|
4430 |
|
4431 Sun Sep 3 18:52:59 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
4432 |
|
4433 * tree-const.cc (TC_REP::string_value): Return const char*, not |
|
4434 char *. |
|
4435 |
|
4436 * All .cc, .y, .l, .y files: Include <cctype>, not <ctype.h>, and |
|
4437 so on for all new C++ versions of these standard C headers. |
|
4438 |
|
4439 Thu Aug 31 17:09:38 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
4440 |
|
4441 * pathsearch.h: Also hide `string'. |
|
4442 |
|
4443 * oct-str.cc, oct-str.h: New files. |
|
4444 * Makefile.in: Add to the appropriate lists. |
|
4445 * tc-rep.h: Change char* to Octave_string* in anonymous union. |
|
4446 * tree-expr.cc (tree_matrix::eval): Handle multiple element strings. |
|
4447 * strfns.cc (toascii): Likewise. |
|
4448 * tree-const.cc (print_as_string): Likewise. |
|
4449 (TC_REP::force_numeric, TC_REP::rows, TC_REP::columns, |
|
4450 TC_REP::double_value, TC_REP::complex_value, TC_REP::matrix_value, |
|
4451 TC_REP::complex_matrix_value, TC_REP::convert_to_str): Likewise. |
|
4452 (TC_REP::print): Call octave_print_internal for string case. |
|
4453 (all_strings): New function. |
|
4454 Fix constructors to use new data structure. |
|
4455 * pr-output.cc (octave_print_internal): Add version for strings. |
|
4456 * Array-string.cc: New file. |
|
4457 |
|
4458 * octave.cc (octave_argv): New global variable. |
|
4459 (intern_argv): New function. |
|
4460 (main): Fix argument parsing to do the right thing for arguments |
|
4461 to executable scripts. |
|
4462 * variables.cc: Add DEFUNs for argv, program_invocation_name, and |
|
4463 program_name. |
|
4464 |
|
4465 * defun.h (DEFVAR): Fix comment. |
|
4466 |
|
4467 Thu Aug 24 00:02:00 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
4468 |
|
4469 * file-io.cc (fgets_internal): Make second arg optional. Add |
|
4470 optional arg `strip_final_newline'. |
|
4471 (Ffgets): Change to match new definition of fgets_internal. |
|
4472 (Ffgetl): Implement using the new fgets_internal. |
|
4473 |
|
4474 * f-rand.cc (Frand): Update code for sizing return value to match |
|
4475 that used by ones, zeros, and eye. |
|
4476 |
|
4477 Wed Aug 23 19:52:45 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
4478 |
|
4479 * tree-const.cc (do_vector_assign): Don't crash for |
|
4480 A(range) = scalar, or A(matrix) = scalar. |
|
4481 |
|
4482 * f-dassl.cc (set_dassl_option): Rename from do_dassl_option. |
|
4483 (show_dassl_option): New function. |
|
4484 (Fdassl_options): Handle single arg. |
|
4485 * f-fsolve.cc (set_fsolve_option): Rename from do_fsolve_option. |
|
4486 (show_fsolve_option): New function. |
|
4487 (Ffsolve_options): Handle single arg. |
|
4488 * f-fsqp.cc (set_fsqp_option): Rename from do_fsqp_option. |
|
4489 (show_fsqp_option): New function. |
|
4490 (Ffsqp_options): Handle single arg. |
|
4491 * f-lpsolve.cc (set_lpsolve_option): Rename from do_lpsolve_option. |
|
4492 (show_lpsolve_option): New function. |
|
4493 (Flpsolve_options): Handle single arg. |
|
4494 * f-lsode.cc (set_lsode_option): Rename from do_lsode_option. |
|
4495 (show_lsode_option): New function. |
|
4496 (Flsode_options): Handle single arg. |
|
4497 * f-npsol.cc (set_npsol_option): Rename from do_npsol_option. |
|
4498 (show_npsol_option): New function. |
|
4499 (Fnpsol_options): Handle single arg. |
|
4500 * f-qpsol.cc (set_qpsol_option): Rename from do_qpsol_option. |
|
4501 (show_qpsol_option): New function. |
|
4502 (Fqpsol_options): Handle single arg. |
|
4503 * f-quad.cc: (set_quad_option): Rename from do_quad_option. |
|
4504 (show_quad_option): New function. |
|
4505 (Fquad_options): Handle single arg. |
|
4506 (Fquad): Doc fix. |
|
4507 |
|
4508 Tue Aug 22 00:38:05 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
4509 |
|
4510 * tree-plot.cc (do_external_plotter_cd): New function. |
|
4511 * dirfns.cc (octave_change_to_directory): New function. If cd is |
|
4512 successful, also call do_external_plotter_cd(). |
|
4513 (Fcd): Call octave_change_to_directory(), not change_to_directory(). |
|
4514 |
|
4515 * pr-output.cc (pr_any_float): Change declaration of counter to |
|
4516 size_t to avoid gcc warnings. |
|
4517 |
|
4518 * idx-vector.cc, octave-hist.cc, tree-const.cc, tree-expr.cc, |
|
4519 tree-misc.cc, utils.cc, xpow.cc, Map.cc: |
|
4520 Update for change in for loop variable scope for gcc 2.7.0. |
|
4521 |
|
4522 Mon Aug 21 19:34:53 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
4523 |
|
4524 * tree-const.cc (fortran_style_matrix_assignment): Properly handle |
|
4525 case of complex LHS, real RHS. |
|
4526 |
|
4527 * Makefile.in: Only include dependency files if $(omit_deps) is |
|
4528 not set. |
|
4529 |
|
4530 Wed Jul 5 00:03:58 1995 John Eaton <jwe@bevo.che.wisc.edu> |
|
4531 |
|
4532 * sysdep.cc: Explicitly include string.h. |
|
4533 |
|
4534 Sun Jun 25 00:18:10 1995 John Eaton <jwe@schoch.che.utexas.edu> |
|
4535 |
|
4536 * load-save.cc (too_large_for_float (const Matrix&)): |
|
4537 Extract elements as doubles, not Complex. |
|
4538 |
|
4539 Sat Jun 24 22:59:15 1995 John Eaton <jwe@schoch.che.utexas.edu> |
|
4540 |
|
4541 * pr-output.cc (any_element_is_inf_or_nan): Declare extern, not static. |
|
4542 * f-svd.cc (Fsvd): Call here to avoid trying to take SVD of matrix |
|
4543 containing Inf or NaN values. |
|
4544 |
|
4545 * pr-output.cc (bit_format): New file-scope variable. |
|
4546 (set_format, pr_any_float): Handle bit_format. |
|
4547 (octave_print_internal): Handle bit_format like bank_format. |
|
4548 (init_format_state): Initialize bit_format. |
|
4549 (set_format_style): Allow `format bit' and `format native-bit'. |
|
4550 |
|
4551 Thu Jun 8 15:20:26 1995 John Eaton <jwe@schoch.che.utexas.edu> |
|
4552 |
|
4553 * mappers.cc (arg, imag, signum): If arg is NaN, return NaN. |
|
4554 |
|
4555 Mon May 15 14:47:04 1995 John Eaton <jwe@schoch.che.utexas.edu> |
|
4556 |
|
4557 * pager.cc (Fdiary): Initialize diary_file here, not in the |
|
4558 file-scope declaration. |
|
4559 |
|
4560 * tree-expr.cc (tree_index_expression::eval): |
|
4561 Handle nargin == 0 the same as other cases. |
|
4562 |
|
4563 Tue May 2 10:02:23 1995 John Eaton <jwe@schoch.che.utexas.edu> |
|
4564 |
|
4565 * load-save.cc (do_double_format_conversion): Add missing breaks. |
|
4566 (do_float_format_conversion): Likewise. |
|
4567 |
|
4568 Mon May 1 13:50:24 1995 John Eaton <jwe@schoch.che.utexas.edu> |
|
4569 |
|
4570 * Makefile.in (OCTAVE_LIBS): Add @LIBPLPLOT@ to the list. |
|
4571 |
|
4572 * timefns.cc (Ftime): Handle GETTIMEOFDAY_NO_TZ. |
|
4573 |
|
4574 * Makefile.in (SOURCES): Delete tc-rep.cc, tc-rep-ass.cc, and |
|
4575 tc-rep-idx.cc from the list. |
|
4576 |
|
4577 * tree-const.h: Add #pragma interface. |
|
4578 * tree-const.cc: Add contents of tc-rep.cc, tc-rep-ass.cc, and |
|
4579 tc-idx.cc to this file. Add #pragma implementation. This makes |
|
4580 tree-const.cc large, but makes the final binary smaller. |
|
4581 |
|
4582 * unwind-prot.h unwind-prot.cc token.cc token.h procstream.cc |
|
4583 procstream.h idx-vector.cc idx-vector.h symtab.cc symtab.h |
|
4584 oct-map.cc oct-map.h oct-obj.cc oct-obj.h tree-plot.h tree-plot.cc |
|
4585 tree-misc.cc tree-misc.h tree-expr.cc tree-expr.h tree-cmd.cc |
|
4586 tree-cmd.h tree-base.cc tree-base.h: |
|
4587 Add #pragma interface/implementation. |
|
4588 |
|
4589 * Makefile.in (OCTAVE_LIBS): Delete @LIBINFO@ from list. |
|
4590 * help.cc: Don't include info headers or extern declarations for |
|
4591 functions from info. |
|
4592 (try_info): Call info as a subprocess. Delete second arg. |
|
4593 Handle SIGINT here, not in help_from_info(). |
|
4594 (help_from_info): Complain if info doesn't work. |
|
4595 |
|
4596 * defun-dld.h (DEFUN_DLD_BUILTIN) [OCTAVE_LITE && MAKE_BUILTINS]: |
|
4597 If ! WITH_DLD, simply emit a character string constant. |
|
4598 |
|
4599 Fri Apr 28 15:23:06 1995 John Eaton <jwe@schoch.che.utexas.edu> |
|
4600 |
|
4601 * lex.l ({IDENT}{S}*): Don't delete tok. That's handled by |
|
4602 strip_trailing_whitespace() now. |
|
4603 (<HELP_FCN>[^ \t\n]*{S}*|<TEXT_FCN>[^ \t\n\;\,]*{S}*): Ditto. |
|
4604 |
|
4605 * pathsearch.h: Include kpathsea/progname.h. |
|
4606 * octave.cc (initialize_globals): Call kpse_set_progname(). |
|
4607 |
|
4608 * token.h: Declare copy constructor and operator = private. |
|
4609 * token.cc: Abort if copy constructor or operator = is used. |
|
4610 |
|
4611 Thu Apr 27 13:54:39 1995 John Eaton <jwe@schoch.che.utexas.edu> |
|
4612 |
|
4613 * tree-expr.cc (lookup_map_element): Don't list default argument |
|
4614 values here too. |
|
4615 |
|
4616 * pr-output.cc (hex_format): New file-scope variable. |
|
4617 (set_format, pr_any_float): Handle hex_format. |
|
4618 (octave_print_internal): Handle hex_format like bank_format. |
|
4619 (init_format_state): Initialize hex_format. |
|
4620 (set_format_style): Allow `format hex' and `format native-hex'. |
|
4621 |
|
4622 * variables.cc (bind_ans): Create ans_id each time with new and |
|
4623 ask tree_simple_assignment_expression to handle cleaning it up. |
|
4624 This apparently plugs a memory leak. |
|
4625 |
|
4626 * help.cc (Ftype): Don't try to print map constants. Handle |
|
4627 references to structure members. |
|
4628 |
|
4629 Wed Apr 26 12:40:59 1995 John Eaton <jwe@schoch.che.utexas.edu> |
|
4630 |
|
4631 * input.cc (generate_struct_completions): New function. |
|
4632 (generate_possible_completions): Likewise. |
|
4633 (looks_like_struct): Likewise. |
|
4634 (command_generator): Handle completion of struct variables. |
|
4635 |
|
4636 * tree-expr.h, tree-expr.cc (tree_fvc::lookup_map_element): |
|
4637 Add insert and silent args. |
|
4638 |
|
4639 * oct-map.cc: New file. |
|
4640 * Makefile.in (SOURCES): Add it to the list. |
|
4641 |
|
4642 Mon Apr 24 09:41:02 1995 John Eaton <jwe@schoch.che.utexas.edu> |
|
4643 |
|
4644 * variables.cc (Fexist): Handle structure references too. |
|
4645 |
|
4646 * tree-const.cc (lookup_map_element (const char*, int, int): |
|
4647 New function. |
|
4648 (lookup_map_element (SLList<char*>&, int, int): New arg, silent. |
|
4649 * tc-rep.cc (lookup_map_element): New arg, silent. If nonzero, |
|
4650 don't call error(). |
|
4651 |
|
4652 * tc-rep.h (is_empty): Define here. |
|
4653 * tree-const.h (is_empty): Hand off to TC_REP::is_empty(). |
|
4654 |
|
4655 * data.cc (Fstruct_contains): Call lookup_map_element on args(0) |
|
4656 instead of extracting the map and calling contains() on it. |
|
4657 |
|
4658 * parse.y (EPLUS, EMINUS): New tokens. |
|
4659 (simple_expr): Handle EPLUS, EMINUS the same as `+' and `-'. |
|
4660 * lex.l (".+", ".-"): New patterns. Match these separately to |
|
4661 disallow using them as unary operators. |
|
4662 |
|
4663 * lex.l (next_token_is_bin_op): Simplify by noting that spacing |
|
4664 only matters for those tokens that can also be unary ops. |
|
4665 |
|
4666 Fri Apr 21 14:34:45 1995 John Eaton <jwe@schoch.che.utexas.edu> |
|
4667 |
|
4668 * load-save.cc (read_ascii_data): Allow reading of empty |
|
4669 matrices. |
|
4670 |
|
4671 * tc-rep-ass.cc (vector_assignment): Only assert that we are not |
|
4672 doing fortran-style indexing and that nr <= 1 || nc <= 1. |
|
4673 (do_vector_assign): Handle assignment of [] when one dimension is |
|
4674 zero and the other is anything. |
|
4675 |
|
4676 Thu Apr 20 13:56:21 1995 John Eaton <jwe@schoch.che.utexas.edu> |
|
4677 |
|
4678 * tc-rep-ass.cc (delete_rows, delete_columns): Simply return if |
|
4679 num_to_delete is 0. |
|
4680 |
|
4681 * lex.l (handle_identifier): Don't match plot option keywords |
|
4682 inside parentheses or braces. |
|
4683 |
|
4684 * variables.cc (parse_fcn_file): Also delete tmp_help_txt if |
|
4685 running a script. |
|
4686 |
|
4687 * tree-cmd.h (tree_command): Add destructor. |
|
4688 |
|
4689 * tree-expr.h tree_simple_assignment_expression (lhs_idx_expr): |
|
4690 Hang on to idx_expr, not just its parts so it can be deleted. |
|
4691 (init): Initialize it. |
|
4692 * tree-expr.cc (~tree_simple_assignment_expression): Delete it. |
|
4693 |
|
4694 * tree-expr.h (tree_multi_val_ret, tree_oct_obj, tree_fvc, |
|
4695 tree_identifier, tree_builtin, tree_function): Add destructors. |
|
4696 * tree-expr.cc (tree_function::~tree_function): Delete some stuff. |
|
4697 |
|
4698 * tree-misc.h (tree_va_return_list): Add destructor. |
|
4699 |
|
4700 * octave.cc (__builtin_new, __builtin_delete): Provide our own, |
|
4701 for debugging. |
|
4702 |
|
4703 * utils.cc (strconcat): Don't depend on the return value from |
|
4704 strcat. |
|
4705 (file_in_path): Simplify logic. |
|
4706 |
|
4707 * parse.y (maybe_convert_to_ans_assign): Create ans_id each time |
|
4708 with new and ask tree_simple_assignment_expression to handle |
|
4709 cleaning it up. This apparently plugs a memory leak. |
|
4710 |
|
4711 * lex.l (strip_trailing_whitespace): Declare retval static. |
|
4712 Delete it before saving next string. |
|
4713 |
|
4714 * error.cc (Ferror): Do call error() for empty string args. |
|
4715 (error_1): Don't print anything if fmt is "" or "\n", but do set |
|
4716 the error state appropriately. |
|
4717 |
|
4718 * tree-cmd.cc (tree_unwind_protect::eval): Handle return and break |
|
4719 in the `try' part of the statement. |
|
4720 |
|
4721 Mon Apr 10 19:29:44 1995 John Eaton <jwe@schoch.che.utexas.edu> |
|
4722 |
|
4723 * f-expm.cc, f-givens.cc, f-qzval.cc, f-syl.cc, f-rand.cc: |
|
4724 Where appropriate, declare Fortran functions to take reference |
|
4725 instead of pointer args. Change callers. |
|
4726 |
|
4727 * mappers.cc: Declare Fortran functions to take reference instead |
|
4728 of pointer args. Change callers. |
|
4729 |
|
4730 * gamma.c, lgamma.c, erfc.c, erf.c, atanh.c, asinh.c, acosh.c: |
|
4731 Declare Fortran functions to take reference instead of pointer |
|
4732 args. |
|
4733 |
|
4734 Sun Apr 9 19:38:53 1995 John Eaton <jwe@schoch.che.utexas.edu> |
|
4735 |
|
4736 * file-io.cc (Fpopen, Fpclose, Fexecute, Fsync_system, |
|
4737 Fasync_system, Fwaitpid, Fmkfifo, Funlink): New functions. |
|
4738 |
|
4739 * sighandlers.cc (sigchld_handler): New function. |
|
4740 (install_signal_handlers): Add call to install |
|
4741 sigchld_handler. (This is #if 0'd out, waiting for code to help |
|
4742 determine which child exited and what to do about it). |
|
4743 |
|
4744 * tree-expr.h (tree_oct_obj): New class. |
|
4745 |
|
4746 * tree-expr.h (tree_multi_assignment_expression::preserve): New |
|
4747 data member. Add arg with default value to constructors. Change |
|
4748 callers as necessary. |
|
4749 * tree-expr.cc (~tree_multi_assignment_expression): Conditionally |
|
4750 delete lhs. |
|
4751 |
|
4752 * parse.y (make_multi_val_ret): Pass matrix instead of getting it |
|
4753 from the global matrix list. |
|
4754 (expression): Extract matrix from matrix list before calling |
|
4755 make_multi_val_ret(). |
|
4756 |
|
4757 * parse.y (command): Handle new for loop syntax for structures. |
|
4758 |
|
4759 * tree-plot.h (subplot_list): Include tree_print_code() in |
|
4760 initializer lists for constructors. |
|
4761 * tree-expr.h (tree_statement_list, tree_argument_list, |
|
4762 tree_parameter_list, tree_return_list, tree_global_init_list, |
|
4763 tree_if_command_list, ): Likewise. |
|
4764 |
|
4765 * tree-cmd.h (tree_for_command::id_list): New data member. |
|
4766 (tree_for_command (tree_return_list*, tree_expression*, |
|
4767 tree_statement_list*, int, int)): Likewise. |
|
4768 * tree-cmd.cc (tree_for_command::eval): Handle for loops with |
|
4769 structures. |
|
4770 (do_for_loop_once (tree_return_list*, Octave_object&, int&)): |
|
4771 New form for handling for loops with structures. |
|
4772 |
|
4773 * sysdep.cc (octave_ieee_init): Determine floating point format |
|
4774 here. |
|
4775 (native_float_format): New global variable. |
|
4776 (Fisieee): Compute return value from native_float_format, not by |
|
4777 using preprocessor macros. |
|
4778 * sysdep.h (enum floating_point_format): Move declaration here. |
|
4779 * load-save.cc: From here. |
|
4780 Always define all floating point format conversion routines. |
|
4781 (do_double_format_conversion, do_float_format_conversion): |
|
4782 Use native_float_format instead of preprocessor macros. |
|
4783 |
|
4784 Sat Apr 8 15:41:35 1995 John Eaton <jwe@schoch.che.utexas.edu> |
|
4785 |
|
4786 * Makefile (TEMPLATE_SRC): New variable. |
|
4787 (DISTFILES): Add $(TEMPLATE_SRC). |
|
4788 (SOURCES): Delete Map.cc and SLStack.cc from here. |
|
4789 |
|
4790 * variables.cc (install_builtin_variables): Use OCTAVE_VERSION |
|
4791 instead of version_string to initialize OCTAVE_VERSION. |
|
4792 * version.h (version_string): Delete. |
|
4793 |
|
4794 * getopt.c (_getopt_internal): Initialize indfound to avoid warning. |
|
4795 |
|
4796 Fri Apr 7 15:29:41 1995 John Eaton <jwe@schoch.che.utexas.edu> |
|
4797 |
|
4798 * tc-inlines.h (REP_RHS_MATRIX): Just check to see if tc is real |
|
4799 or complex. If conversion fails, return. |
|
4800 |
|
4801 Thu Apr 6 00:10:47 1995 John Eaton <jwe@schoch.che.utexas.edu> |
|
4802 |
|
4803 * data.cc (Fstruct_contains): New function. |
|
4804 |
|
4805 * tc-rep.cc (print_code): Add extra parens around while condition |
|
4806 to avoid warning. |
|
4807 * utils.cc (undo_string_escapes): Likewise. |
|
4808 * input.cc (decode_prompt_string): Likewise. Also rewrite if |
|
4809 statement to avoid warning. |
|
4810 |
|
4811 Tue Apr 4 22:54:17 1995 John Eaton <jwe@schoch.che.utexas.edu> |
|
4812 |
|
4813 * tree-expr.cc (tree_multi_assignment_expression::eval, |
|
4814 tree_simple_assignment_expression::eval): Call print_constant |
|
4815 even if user_pref.print_answer_id_name is false. |
|
4816 |
|
4817 Mon Apr 3 17:57:14 1995 John Eaton <jwe@schoch.che.utexas.edu> |
|
4818 |
|
4819 * tc-inlines.h (TC_REP): Avoid redefinition. |
|
4820 |
|
4821 * tree-const.h (do_binary_op, do_unary_op): Declare as friends of |
|
4822 tree_constant class too. |
|
4823 |
|
4824 * tree-plot.h (subplot_using::have_values): Delete data member. |
|
4825 * tree-plot.cc (subplot_using::eval): Always recompute values. |
|
4826 |
|
4827 Fri Mar 31 10:18:32 1995 John Eaton <jwe@schoch.che.utexas.edu> |
|
4828 |
|
4829 * tc-rep.cc (print): Print open brace for structures here. |
|
4830 * tree-expr.cc (print_constant): Not here. |
|
4831 |
|
4832 * symtab.cc (define): Don't delete arg if sv_fcn fails. |
|
4833 |
|
4834 * tree-const.cc (print): New function. Create ostrstream buffer |
|
4835 and pass it to rep->print(). |
|
4836 * tree-const.h (eval (int)): Call print(), not rep->print(). |
|
4837 * tc-rep.cc (structure_indent_level): New file-scope variable. |
|
4838 (print): New arg, output_buf, is stream to print to. |
|
4839 Print values of structure elements too. |
|
4840 |
|
4841 * user-prefs.h (user_preferences): New field, struct_levels_to_print. |
|
4842 * user-prefs.cc (struct_levels_to_print): New function. |
|
4843 * variables.cc (install_builtin_variables): Add DEFVAR for new |
|
4844 variable struct_levels_to_print. |
|
4845 |
|
4846 * tree-const.cc (print_as_scalar, print_as_structure): Move here |
|
4847 from tree-expr.cc and make extern. |
|
4848 |
|
4849 * tree-expr.cc (print_as_structure): New function. |
|
4850 (print_constant): Use it. |
|
4851 |
|
4852 * tree-expr.cc (print_constant): New arg, print_padding. |
|
4853 (tree_simple_assignment_expression::eval): Use print_constant |
|
4854 instead of duplicating code here. |
|
4855 (tree_multi_assignment_expression::eval): Likewise. |
|
4856 |
|
4857 Thu Mar 30 13:24:11 1995 John Eaton <jwe@schoch.che.utexas.edu> |
|
4858 |
|
4859 * Makefile.in (SOURCES): Add resource.cc. |
|
4860 * resource.cc: New file, extracted from timefns.cc. |
|
4861 (Fgetrusage): New function. |
|
4862 * timefns.cc (cputime): Delete (now implemented in a function file |
|
4863 using new getrusage function). |
|
4864 |
|
4865 Wed Mar 29 22:52:42 1995 John Eaton <jwe@schoch.che.utexas.edu> |
|
4866 |
|
4867 * Makefile.in (SOURCES): Add strftime.c. |
|
4868 * strftime.c: New file, from sh-utils distribution. |
|
4869 |
|
4870 * timefns.cc (mk_tm_map, extract_tm, Ftime, Fgmtime, Flocaltime, |
|
4871 Fmktime, Fstrftime): New basic time functions. |
|
4872 (Fclock, Fdate): Delete (now implemented in function files using new |
|
4873 time functions). |
|
4874 |
|
4875 Tue Mar 28 17:51:51 1995 John Eaton <jwe@schoch.che.utexas.edu> |
|
4876 |
|
4877 * file-io.cc (return_valid_file, do_printf, do_scanf, |
|
4878 fclose_internal, feof_internal, ferror_internal, fflush_internal, |
|
4879 fgets_internal, fopen_internal, fread_internal, freport_internal, |
|
4880 frewind_internal, fseek_internal, ftell_internal, |
|
4881 fwrite_internal): Declare static. |
|
4882 * file-io.h: Delete extern declarations for them. |
|
4883 |
|
4884 Fri Mar 24 09:52:50 1995 John Eaton <jwe@schoch.che.utexas.edu> |
|
4885 |
|
4886 * pr-output.cc (pr_col_num_header): New function. |
|
4887 (compact_format): New file-scope variable. |
|
4888 (set_format_style): Handle loose and compact formats. |
|
4889 (octave_print_internal (ostream&, const ComplexMatrix&, int)): |
|
4890 Replace duplicate code with call to pr_col_num_header(). |
|
4891 (octave_print_internal (ostream&, const Matrix&, int): Likewise. |
|
4892 (octave_print_internal (ostream&, const Range&, int): Likewise. |
|
4893 |
|
4894 Tue Mar 21 08:44:48 1995 John Eaton <jwe@schoch.che.utexas.edu> |
|
4895 |
|
4896 * mappers.cc (xgamma): Always use Slatec library function. |
|
4897 * (xlgamma): Likewise. |
|
4898 * Makefile.in (SOURCES): Don't include lgamma.c. |
|
4899 |
|
4900 Fri Mar 17 22:38:39 1995 John Eaton <jwe@schoch.che.utexas.edu> |
|
4901 |
|
4902 * tc-rep.cc (TC_REP::new): Don't try to keep track of newlist_tail. |
|
4903 Explicitly initialize newlist to zero. |
|
4904 * tree-const.cc (tree_constant::operator new): Likewise. |
|
4905 |
|
4906 Fri Mar 10 12:40:24 1995 John Eaton <jwe@schoch.che.utexas.edu> |
|
4907 |
|
4908 * tree-cmd.cc (quit_loop_now): Declare inline. |
|
4909 (tree_for_command::do_for_loop_once): Split into two versions, one |
|
4910 for the general case and one for when the loop variable is a |
|
4911 simple identifier. |
|
4912 (DO_LOOP): New macro. Move tests outside of loop. |
|
4913 (tree_for_command::eval): Speed up by checking to see if loop |
|
4914 variable is a simple identifier and by using DO_LOOP. |
|
4915 |
|
4916 * tree-const.h: New union of rep and freeptr. The freeptr element |
|
4917 is used for our custom memory management functions. |
|
4918 |
|
4919 * tc-rep.h: Add freeptr element to anonymous union (for our custom |
|
4920 memory management functions). |
|
4921 |
|
4922 * tree-const.cc (newlist, newlist_grow_size, newlist_tail): New |
|
4923 static variables. |
|
4924 (tree_constant::operator new): Always define to allow more |
|
4925 efficient allocation of single tree_constants. |
|
4926 (tree_constant::operator delete): Likewise, handle deletion of the |
|
4927 memory we allocate. |
|
4928 |
|
4929 * tc-rep.cc (newlist, newlist_grow_size, newlist_tail): New static |
|
4930 variables. |
|
4931 (tree_constant::operator new): Always define to allow more |
|
4932 efficient allocation of single tree_constants. |
|
4933 (tree_constant::operator delete): Likewise, handle deletion of the |
|
4934 memory we allocate. |
|
4935 |
|
4936 Fri Mar 3 14:00:08 1995 John Eaton <jwe@schoch.che.utexas.edu> |
|
4937 |
|
4938 * error.cc (verror): Terminate output_buf with ends. |
|
4939 |
|
4940 * statdefs.h: Use C-style comment in first line instead of |
|
4941 C++-style comment. |
|
4942 |
|
4943 Mon Feb 27 10:11:18 1995 John Eaton <jwe@schoch.che.utexas.edu> |
|
4944 |
|
4945 * parse.y (maybe_convert_to_ans_assign): Only lookup ans once. |
|
4946 * variables.cc (bind_ans): New function. |
|
4947 * tree-expr.cc (tree_identifier::eval (int)): Use it here. |
|
4948 (tree_identifier::eval (int, int, const Octave_object&): And here. |
|
4949 |
|
4950 * tree-expr.cc (install_nargin_and_nargout): New function. |
|
4951 * tree-expr.h (tree_function::tree_function (tree_statement_list *, |
|
4952 symbol_table *, int, int)): Call it. |
|
4953 |
|
4954 * tree-expr.cc (tree_function::bind_nargin_and_nargout): New function. |
|
4955 (tree_function::eval): Call it insead of the one from variables.cc. |
|
4956 |
|
4957 * variables.cc (bind_nargin_and_nargout): #if 0 out. |
|
4958 |
|
4959 Sun Feb 26 00:17:06 1995 John Eaton <jwe@schoch.che.utexas.edu> |
|
4960 |
|
4961 * load-save.cc (Fload, Fsave): Free fname returned by tilde_expand(). |
|
4962 * dirfns.cc (Fls): Likewise. |
|
4963 |
|
4964 * tree-expr.cc (tree_multi_assignment_expression::eval (int, int, |
|
4965 const Octave_object&)): Call tree_return_list::operator () (Pix) |
|
4966 explicitly. |
|
4967 |
|
4968 * octave.cc (initialize_globals): Put TEXMF in the environment for |
|
4969 kpthsea. |
|
4970 |
|
4971 * Makefile.in (OCTAVE_LIBS): Use @LIBINFO@ and @LIBREADLINE@, |
|
4972 substituted by configure. Use kpathsea.a, not libkpathsea, so we |
|
4973 don't have to modify the kpathsea Makefile. |
|
4974 |
|
4975 Sat Feb 25 18:59:26 1995 John Eaton <jwe@schoch.che.utexas.edu> |
|
4976 |
|
4977 * pathsearch.cc: New file. |
|
4978 * pathsearch.h: New file. |
|
4979 * Makefile.in (INCLUDES): Include it in the list. |
|
4980 * dynamic-ld.cc, help.cc, utils.cc: Use it instead of repeating |
|
4981 identical code multiple times. |
|
4982 |
|
4983 * variables.cc (install_builtin_variables): Only DEFVAR |
|
4984 suppress_verbose_help_message if USE_GNU_INFO. |
|
4985 |
|
4986 * help.cc (Fhelp): Only handle -i if USE_GNU_INFO. |
|
4987 (additional_help_message): Only print message if USE_GNU_INFO. |
|
4988 (builtin_help): New function. |
|
4989 (help_from_info): New function. Print warning if not USE_GNU_INFO. |
|
4990 |
|
4991 See ChangeLog.1 in the top level directory for earlier changes. |