* Bugs 16567 16586 fixed: mfile2sci() supports block %{..%}. Appended comments improved"
[scilab.git] / scilab / modules / m2sci / macros / kernel / updatevarslist.sci
index 631fb73..ccf7566 100644 (file)
@@ -1,11 +1,14 @@
 // Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
 // Copyright (C) 2002-2004 - INRIA - Vincent COUVERT
 //
-// This file must be used under the terms of the CeCILL.
-// This source file is licensed as described in the file COPYING, which
-// you should have received as part of this distribution.  The terms
-// are also available at
-// http://www.cecill.info/licences/Licence_CeCILL_V2.1-en.txt
+// Copyright (C) 2012 - 2016 - Scilab Enterprises
+//
+// This file is hereby licensed under the terms of the GNU GPL v2.0,
+// pursuant to article 5.3.4 of the CeCILL v.2.1.
+// This file was originally licensed under the terms of the CeCILL v2.1,
+// and continues to be available under such terms.
+// For more information, see the COPYING file which you should have received
+// along with this program.
 
 function []=updatevarslist(instr_lhs)
     // (2 functions in this file: merge_vars() at the end)
@@ -19,6 +22,9 @@ function []=updatevarslist(instr_lhs)
 
     // Global variable for M2SCI
     global("varslist")
+    if isempty(varslist)
+        varslist = list()
+    end
     // level is declared in m2sci.sci and modified in clause2sci.sci
     level;
 
@@ -32,6 +38,7 @@ function []=updatevarslist(instr_lhs)
     // when end of conversion of a clause : merge infered data from the last two parts of clause
     levelsize=size(level,1)
     changepartclause=%F
+
     for i=size(varslist):-1:1
         if size(varslist(i).level,1)==levelsize then
             varlevel=varslist(i).level
@@ -130,7 +137,7 @@ function []=updatevarslist(instr_lhs)
         ierr=execstr("zz=instr_lhs(k).contents.index","errcatch")
         if ierr<>0 then pause;end
         // Remove multiple entries from contents
-        for kcont=lstsize(instr_lhs(k).contents.index):-1:1
+        for kcont = size(instr_lhs(k).contents.index):-1:1
             [infertlist,pos]=get_contents_infer(instr_lhs(k),instr_lhs(k).contents.index(kcont))
             if pos<>0 & pos<>kcont then
                 instr_lhs(k).contents.index(pos)=null()
@@ -212,7 +219,7 @@ function []=merge_vars(oldvarindex,newvar)
     end
 
     // Verify contents
-    for k=1:lstsize(newvar.contents.index)
+    for k = 1:size(newvar.contents.index)
         olddata=get_contents_infer(oldvar,newvar.contents.index(k))
         newdata=newvar.contents.data(k)