* Bug 15890 fixed: +[] warning from evstr() 46/20646/3
Samuel GOUGEON [Wed, 28 Nov 2018 22:50:22 +0000 (23:50 +0100)]
  http://bugzilla.scilab.org/15890

Change-Id: I3e26d32af0e6189dce48cbf62c38017d443b4087

scilab/CHANGES.md
scilab/modules/string/macros/evstr.sci

index ed1c41d..d3b4231 100644 (file)
@@ -642,6 +642,7 @@ Known issues
 * [#15847](http://bugzilla.scilab.org/show_bug.cgi?id=15847): Scilab crashed at startup.
 * [#15850](http://bugzilla.scilab.org/show_bug.cgi?id=15850): Adding a space after a string increases its size. 
 * [#15854](http://bugzilla.scilab.org/show_bug.cgi?id=15854): `horner(1:$,4)` yielded an error. Extractions from `cblock` tables were impacted.
+* [#15890](http://bugzilla.scilab.org/show_bug.cgi?id=15890): `evstr` sometimes yielded some `+[]` warnings.
 
 
 ### Bugs fixed in 6.0.1:
index bd8bbd8..f37c5b7 100644 (file)
@@ -32,7 +32,7 @@ function [%val, %ierr] = evstr(%str)
         vars = ["Nan"  "NaN"  "Inf"  "INF"]
         vals = ["%nan" "%nan" "%inf" "%inf"]
         tmp = ~isdef(vars)
-        if tmp~=[]
+        if or(tmp)
             execstr(vars(tmp)+"="+vals(tmp))
         end
 
@@ -57,7 +57,7 @@ function [%val, %ierr] = evstr(%str)
         %t1 = strcat(%str, ",", "c")+";"
         %t1(1) = "%val=[" + %t1(1);
         %t1($) = part(%t1($), 1:length(%t1($)) - 1)+";";
-        %t1($+1)="]";
+        %t1($+1) = "]";
         %ierr = execstr(%t1, "errcatch");
         if lhs == 1 & %ierr~=0 then
             msg = _("%s: Argument #%d: Some expression can''t be evaluated (%s).\n")