compiler/libec/dbpass: Processing EDA/DB keywords within for each statements
authorJerome St-Louis <jerome@ecere.com>
Fri, 19 Sep 2014 22:20:02 +0000 (18:20 -0400)
committerJerome St-Louis <jerome@ecere.com>
Sun, 15 Feb 2015 18:38:57 +0000 (13:38 -0500)
compiler/libec/src/dbpass.ec

index b38b9a8..d6e89bf 100644 (file)
@@ -454,6 +454,20 @@ static void ProcessStatement(Statement stmt)
             ProcessStatement(stmt.forStmt.stmt);
          break;
       }
+      case forEachStmt:
+      {
+         Expression exp;
+
+         for(exp = stmt.forEachStmt.exp ? stmt.forEachStmt.exp->first : null; exp; exp = exp.next)
+            ProcessExpression(exp);
+
+         for(exp = stmt.forEachStmt.filter ? stmt.forEachStmt.filter->first : null; exp; exp = exp.next)
+            ProcessExpression(exp);
+
+         if(stmt.forEachStmt.stmt)
+            ProcessStatement(stmt.forEachStmt.stmt);
+         break;
+      }
       case gotoStmt:
          break;
       case continueStmt: