changeset 24312:9d25e88d83f6

isequal.m, isequaln.m: Return a full, non-sparse, logical value for compatibility. * isequal.m, isequaln.m: Always convert final return value to full matrix.
author Rik <rik@octave.org>
date Sun, 26 Nov 2017 14:55:26 -0800
parents 0643533930e7
children 7ba994876f3a
files scripts/general/isequal.m scripts/general/isequaln.m
diffstat 2 files changed, 8 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/scripts/general/isequal.m	Sun Nov 26 14:50:20 2017 -0800
+++ b/scripts/general/isequal.m	Sun Nov 26 14:55:26 2017 -0800
@@ -249,6 +249,8 @@
     endif
   endif
 
+  t = full (t);  # Always return full logical value for Matlab compatibility.
+
 endfunction
 
 
@@ -459,6 +461,10 @@
 %!assert (isequal (struct ("a",NaN,"b",2), struct ("a",NaN,"b",2),
 %!                 struct ("a",NaN,"b",2)), false)
 
+## Matlab compatibility
+%!assert (isequal (sparse (1), sparse (1)), true)
+%!assert (isequal (sparse (1), sparse (1)), sparse (1)), true)
+
 ## test input validation
 %!error isequal ()
 %!error isequal (1)
--- a/scripts/general/isequaln.m	Sun Nov 26 14:50:20 2017 -0800
+++ b/scripts/general/isequaln.m	Sun Nov 26 14:55:26 2017 -0800
@@ -259,6 +259,8 @@
     endif
   endif
 
+  t = full (t);  # Always return full logical value for Matlab compatibility.
+
 endfunction