changeset 12656:ddbd9137910a octave-forge

fix nantest to avoid crashing Octave 4.0.0 on Windows
author schloegl
date Thu, 02 Jul 2015 11:14:16 +0000
parents 70d4171ae21a
children 64365c8eb18b
files extra/NaN/NEWS extra/NaN/inst/nantest.m
diffstat 2 files changed, 11 insertions(+), 5 deletions(-) [+]
line wrap: on
line diff
--- a/extra/NaN/NEWS	Tue Jun 30 09:09:47 2015 +0000
+++ b/extra/NaN/NEWS	Thu Jul 02 11:14:16 2015 +0000
@@ -1,3 +1,5 @@
+
+- fix nantest to avoid crashing octave 4.0.0 on windows
 
 2015-06-24: Release of NaN-tb v2.8.0
 
--- a/extra/NaN/inst/nantest.m	Tue Jun 30 09:09:47 2015 +0000
+++ b/extra/NaN/inst/nantest.m	Thu Jul 02 11:14:16 2015 +0000
@@ -227,16 +227,20 @@
 %(roots([2e-37,-2,2])-[1e37;1])
 %%%%% check nan/nan   %% this test addresses a problem in Matlab 5.3, 6.1 & 6.5
 p    = 4;
+tmp1 = repmat(nan, 4);
+tmp2 = repmat(nan, 4);
+if ~ispc
 try
        tmp1 = repmat(nan,p)/repmat(nan,p);
 catch   % exception error in Octave 3.8.2 of debian wheezy
-       tmp1 = repmat(nan, 4);
+	fprintf(2,'repmat(nan,4)/repmat(nan,4) fails with an exception\n');	
 end;
 try
        tmp2 = repmat(nan,p)\repmat(nan,p);
 catch   % exception error in Octave 3.8.2 of debian wheezy
-       tmp2 = repmat(nan, 4); 
+	fprintf(2,'repmat(nan,4)\repmat(nan,4) fails with an exception\n');
 end
+end;
 tmp3 = repmat(0,p)/repmat(0,p);
 tmp4 = repmat(0,p)\repmat(0,p);
 tmp5 = repmat(0,p)*repmat(inf,p);
@@ -278,16 +282,16 @@
 
 
 %%%%% QUANTILE TEST 
-d = [1 1 2 2 4 4 10 700]; 
+d = [1 1 2 2 4 4 10 700]'; 
 q = [-1,0,.05,.1,.25,.49,.5,.51,.75,.8, .999999,1,2];
 r = [ NaN, 1, 1, 1, 1.5, 2, 3, 4, 7, 10, 700, 700, NaN]; 
-if any( quantile(d, q) -  r>0)
+if any( quantile(d, q)' -  r>0)
 	fprintf(1,'Quantile(1): failed\n');
 else
 	fprintf(1,'Quantile(1): OK\n'); 
 end; 
 if exist('histo3','file')
-	H = histo3(d');
+	H = histo3(d);
 else
 	H.X = [1;2;4;10;700];
 	H.H = [2;2;2;1;1];