diff libinterp/octave.cc @ 19391:385499581a5e

allow disabling of permutation and diagonal matrices * ov.cc (Vdisable_diagonal_matrix, Vdisable_permutation_matrix): New static variables. Use them in octave_value constructors to determine whether to create diagonal and permutation matrices. (Fdisable_diagonal_matrix, Fdisable_permutation_matrix): New functions. * octave.cc (maximum_braindamage): Disable permutation and diagonal matrices for --traditional option. * CMatrix.cc, CMatrix.h, dMatrix.cc, dMatrix.h, fCMatrix.cc, fCMatrix.h, fMatrix.cc, fMatrix.h: New conversion constructors. * basics.txi, diagperm.txi: Update docs for change.
author John W. Eaton <jwe@octave.org>
date Mon, 08 Dec 2014 10:14:00 -0500
parents 9ef10e6a5987
children b39cbe9f3bb0
line wrap: on
line diff
--- a/libinterp/octave.cc	Sat Dec 06 22:26:32 2014 -0800
+++ b/libinterp/octave.cc	Mon Dec 08 10:14:00 2014 -0500
@@ -486,11 +486,13 @@
   Fbeep_on_error (octave_value (true));
   Fconfirm_recursive_rmdir (octave_value (false));
   Fcrash_dumps_octave_core (octave_value (false));
-  Fsave_default_options (octave_value ("-mat-binary"));
+  Fdisable_diagonal_matrix (octave_value (true));
+  Fdisable_permutation_matrix (octave_value (true));
   Ffixed_point_format (octave_value (true));
   Fhistory_timestamp_format_string (octave_value ("%%-- %D %I:%M %p --%%"));
   Fpage_screen_output (octave_value (false));
   Fprint_empty_dimensions (octave_value (false));
+  Fsave_default_options (octave_value ("-mat-binary"));
   Fstruct_levels_to_print (octave_value (0));
 
   disable_warning ("Octave:abbreviated-property-match");