[Avida-SVN] r2408 - in development: source/script source/targets/avida-s tests/_asl_good_001_comment tests/_asl_good_002_variable tests/_asl_good_003_variable_set tests/_asl_good_004_basic_math tests/_asl_good_005_math_whitespace tests/_asl_good_006_math_longer tests/_asl_good_007_math_order_op tests/_asl_good_008_variable_types

brysonda at myxo.css.msu.edu brysonda at myxo.css.msu.edu
Sun Mar 2 09:47:19 PST 2008


Author: brysonda
Date: 2008-03-02 12:47:19 -0500 (Sun, 02 Mar 2008)
New Revision: 2408

Modified:
   development/source/script/AvidaScript.cc
   development/source/script/AvidaScript.h
   development/source/script/cLexer.l
   development/source/script/cParser.cc
   development/source/script/cSemanticASTVisitor.cc
   development/source/targets/avida-s/main.cc
   development/tests/_asl_good_001_comment/test_list
   development/tests/_asl_good_002_variable/test_list
   development/tests/_asl_good_003_variable_set/test_list
   development/tests/_asl_good_004_basic_math/test_list
   development/tests/_asl_good_005_math_whitespace/test_list
   development/tests/_asl_good_006_math_longer/test_list
   development/tests/_asl_good_007_math_order_op/test_list
   development/tests/_asl_good_008_variable_types/test_list
Log:
AS: Fix tests.   Add externally visible bool type.

Modified: development/source/script/AvidaScript.cc
===================================================================
--- development/source/script/AvidaScript.cc	2008-03-02 00:50:52 UTC (rev 2407)
+++ development/source/script/AvidaScript.cc	2008-03-02 17:47:19 UTC (rev 2408)
@@ -57,6 +57,7 @@
 {
   switch (type) {
     case AS_TYPE_ARRAY:       return "array";
+    case AS_TYPE_BOOL:        return "bool";
     case AS_TYPE_CHAR:        return "char";
     case AS_TYPE_FLOAT:       return "float";
     case AS_TYPE_INT:         return "int";

Modified: development/source/script/AvidaScript.h
===================================================================
--- development/source/script/AvidaScript.h	2008-03-02 00:50:52 UTC (rev 2407)
+++ development/source/script/AvidaScript.h	2008-03-02 17:47:19 UTC (rev 2408)
@@ -61,7 +61,7 @@
   AS_TOKEN_IDX_OPEN, // 26
   AS_TOKEN_IDX_CLOSE,
   
-  AS_TOKEN_ARR_OPEN, // 28
+  AS_TOKEN_ARR_OPEN, // 28Avida::Exit
   AS_TOKEN_ARR_CLOSE,
   AS_TOKEN_ARR_RANGE,
   AS_TOKEN_ARR_EXPAN,
@@ -70,6 +70,7 @@
   AS_TOKEN_MAT_MODIFY, // 33
   
   AS_TOKEN_TYPE_ARRAY, // 34
+  AS_TOKEN_TYPE_BOOL,
   AS_TOKEN_TYPE_CHAR,
   AS_TOKEN_TYPE_FLOAT,
   AS_TOKEN_TYPE_INT,
@@ -77,23 +78,24 @@
   AS_TOKEN_TYPE_STRING,
   AS_TOKEN_TYPE_VOID,
   
-  AS_TOKEN_CMD_IF, // 41
+  AS_TOKEN_CMD_IF, // 42
   AS_TOKEN_CMD_ELSE,
   AS_TOKEN_CMD_ELSEIF,
   AS_TOKEN_CMD_WHILE,
   AS_TOKEN_CMD_FOREACH,
   AS_TOKEN_CMD_FUNCTION,
   
-  AS_TOKEN_CMD_RETURN, // 47
+  AS_TOKEN_CMD_RETURN, // 48
   
-  AS_TOKEN_ID, // 48
+  AS_TOKEN_ID, // 49
   
-  AS_TOKEN_FLOAT, // 49
+  AS_TOKEN_FLOAT, // 50
   AS_TOKEN_INT,
   AS_TOKEN_STRING,
   AS_TOKEN_CHAR,
+  AS_TOKEN_BOOL,
   
-  AS_TOKEN_UNKNOWN, // 53
+  AS_TOKEN_UNKNOWN, // 54
   AS_TOKEN_INVALID
 } ASToken_t;
 

Modified: development/source/script/cLexer.l
===================================================================
--- development/source/script/cLexer.l	2008-03-02 00:50:52 UTC (rev 2407)
+++ development/source/script/cLexer.l	2008-03-02 17:47:19 UTC (rev 2408)
@@ -86,6 +86,7 @@
 \$          return AS_TOKEN_MAT_MODIFY;    // Matrix Modifier
 
 array       return AS_TOKEN_TYPE_ARRAY;    // Built-in Types
+bool        return AS_TOKEN_TYPE_BOOL;
 char        return AS_TOKEN_TYPE_CHAR;
 float       return AS_TOKEN_TYPE_FLOAT;
 int         return AS_TOKEN_TYPE_INT;
@@ -102,6 +103,9 @@
 
 return      return AS_TOKEN_CMD_RETURN;
 
+true        return AS_TOKEN_BOOL;
+false       return AS_TOKEN_BOOL;
+
 ([a-zA-Z]|_+[a-zA-Z])[a-zA-Z0-9_]*  return AS_TOKEN_ID;      // Identifiers
   
 [0-9]*\.[0-9]+([eE][-+]?[0-9]+)?    return AS_TOKEN_FLOAT;   // Literal Values

Modified: development/source/script/cParser.cc
===================================================================
--- development/source/script/cParser.cc	2008-03-02 00:50:52 UTC (rev 2407)
+++ development/source/script/cParser.cc	2008-03-02 17:47:19 UTC (rev 2408)
@@ -54,7 +54,7 @@
   
  lineterm: SUPPRESS | ENDL
  
- type_def: TYPE_ARRAY | TYPE_CHAR | TYPE_FLOAT | TYPE_INT | TYPE_MATRIX | TYPE_STRING | ID REF
+ type_def: TYPE_ARRAY | TYPE_BOOL | TYPE_CHAR | TYPE_FLOAT | TYPE_INT | TYPE_MATRIX | TYPE_STRING | ID REF
  type_any: type_def | TYPE_VOID
  
  assign_expr: assign_dest ASSIGN expr
@@ -571,6 +571,9 @@
     case TOKEN(CHAR):
       expr.Set(new cASTLiteral(FILEPOS, AS_TYPE_CHAR, currentText()));
       break;
+    case TOKEN(BOOL):
+      expr.Set(new cASTLiteral(FILEPOS, AS_TYPE_BOOL, currentText()));
+      break;
     case TOKEN(STRING):
       expr.Set(new cASTLiteral(FILEPOS, AS_TYPE_STRING, currentText()));
       break;
@@ -634,6 +637,7 @@
   ASType_t type = AS_TYPE_INVALID;
   switch (nextToken()) {
     case TOKEN(TYPE_ARRAY):  type = AS_TYPE_ARRAY;  break;
+    case TOKEN(TYPE_BOOL):   type = AS_TYPE_BOOL;   break;
     case TOKEN(TYPE_CHAR):   type = AS_TYPE_CHAR;   break;
     case TOKEN(TYPE_FLOAT):  type = AS_TYPE_FLOAT;  break;
     case TOKEN(TYPE_INT):    type = AS_TYPE_INT;    break;
@@ -698,6 +702,7 @@
   ASType_t type = AS_TYPE_INVALID;
   switch (nextToken()) {
     case TOKEN(TYPE_ARRAY):  type = AS_TYPE_ARRAY;  break;
+    case TOKEN(TYPE_BOOL):   type = AS_TYPE_BOOL;   break;
     case TOKEN(TYPE_CHAR):   type = AS_TYPE_CHAR;   break;
     case TOKEN(TYPE_FLOAT):  type = AS_TYPE_FLOAT;  break;
     case TOKEN(TYPE_INT):    type = AS_TYPE_INT;    break;
@@ -863,6 +868,7 @@
       case TOKEN(SUPPRESS):
         continue;
       case TOKEN(TYPE_ARRAY):
+      case TOKEN(TYPE_BOOL):
       case TOKEN(TYPE_CHAR):
       case TOKEN(TYPE_FLOAT):
       case TOKEN(TYPE_INT):
@@ -901,6 +907,7 @@
   ASType_t vtype = AS_TYPE_INVALID;
   switch (currentToken()) {
     case TOKEN(TYPE_ARRAY):  vtype = AS_TYPE_ARRAY;  break;
+    case TOKEN(TYPE_BOOL):   vtype = AS_TYPE_BOOL;   break;
     case TOKEN(TYPE_CHAR):   vtype = AS_TYPE_CHAR;   break;
     case TOKEN(TYPE_FLOAT):  vtype = AS_TYPE_FLOAT;  break;
     case TOKEN(TYPE_INT):    vtype = AS_TYPE_INT;    break;

Modified: development/source/script/cSemanticASTVisitor.cc
===================================================================
--- development/source/script/cSemanticASTVisitor.cc	2008-03-02 00:50:52 UTC (rev 2407)
+++ development/source/script/cSemanticASTVisitor.cc	2008-03-02 17:47:19 UTC (rev 2408)
@@ -560,12 +560,14 @@
 void cSemanticASTVisitor::visitObjectCall(cASTObjectCall& node)
 {
   // @TODO - object call
+  SEMANTIC_ERROR(INTERNAL);
 }
 
 
 void cSemanticASTVisitor::visitObjectReference(cASTObjectReference& node)
 {
   // @TODO - object reference
+  SEMANTIC_ERROR(INTERNAL);
 }
 
 

Modified: development/source/targets/avida-s/main.cc
===================================================================
--- development/source/targets/avida-s/main.cc	2008-03-02 00:50:52 UTC (rev 2407)
+++ development/source/targets/avida-s/main.cc	2008-03-02 17:47:19 UTC (rev 2408)
@@ -60,7 +60,7 @@
       Avida::Exit(0);
     } else {
       std::cout << "Parse Failed" << std::endl;
-      Avida::Exit(1);
+      Avida::Exit(-1);
     }
   } else {
     std::cerr << "error: unable to open script" << std::endl;

Modified: development/tests/_asl_good_001_comment/test_list
===================================================================
--- development/tests/_asl_good_001_comment/test_list	2008-03-02 00:50:52 UTC (rev 2407)
+++ development/tests/_asl_good_001_comment/test_list	2008-03-02 17:47:19 UTC (rev 2408)
@@ -3,11 +3,7 @@
 ; Command line arguments to pass to the application
 args = 
 app = %(builddir)s/work/avida-s
-nonzeroexit = disallow   ; Exit code handling (disallow, allow, or require)
-                         ;  disallow - treat non-zero exit codes as failures
-                         ;  allow - all exit codes are acceptable
-                         ;  require - treat zero exit codes as failures, useful
-                         ;            for creating tests for app error checking
+nonzeroexit = disallow
 createdby = David Bryson ; Who created the test
 email = brysonda at egr.msu.edu ; Email address for the test's creator
 

Modified: development/tests/_asl_good_002_variable/test_list
===================================================================
--- development/tests/_asl_good_002_variable/test_list	2008-03-02 00:50:52 UTC (rev 2407)
+++ development/tests/_asl_good_002_variable/test_list	2008-03-02 17:47:19 UTC (rev 2408)
@@ -3,11 +3,7 @@
 ; Command line arguments to pass to the application
 args = 
 app = %(builddir)s/work/avida-s
-nonzeroexit = disallow   ; Exit code handling (disallow, allow, or require)
-                         ;  disallow - treat non-zero exit codes as failures
-                         ;  allow - all exit codes are acceptable
-                         ;  require - treat zero exit codes as failures, useful
-                         ;            for creating tests for app error checking
+nonzeroexit = disallow
 createdby = David Bryson ; Who created the test
 email = brysonda at egr.msu.edu ; Email address for the test's creator
 

Modified: development/tests/_asl_good_003_variable_set/test_list
===================================================================
--- development/tests/_asl_good_003_variable_set/test_list	2008-03-02 00:50:52 UTC (rev 2407)
+++ development/tests/_asl_good_003_variable_set/test_list	2008-03-02 17:47:19 UTC (rev 2408)
@@ -3,11 +3,7 @@
 ; Command line arguments to pass to the application
 args = 
 app = %(builddir)s/work/avida-s
-nonzeroexit = disallow   ; Exit code handling (disallow, allow, or require)
-                         ;  disallow - treat non-zero exit codes as failures
-                         ;  allow - all exit codes are acceptable
-                         ;  require - treat zero exit codes as failures, useful
-                         ;            for creating tests for app error checking
+nonzeroexit = disallow
 createdby = David Bryson ; Who created the test
 email = brysonda at egr.msu.edu ; Email address for the test's creator
 

Modified: development/tests/_asl_good_004_basic_math/test_list
===================================================================
--- development/tests/_asl_good_004_basic_math/test_list	2008-03-02 00:50:52 UTC (rev 2407)
+++ development/tests/_asl_good_004_basic_math/test_list	2008-03-02 17:47:19 UTC (rev 2408)
@@ -3,11 +3,7 @@
 ; Command line arguments to pass to the application
 args = 
 app = %(builddir)s/work/avida-s
-nonzeroexit = disallow   ; Exit code handling (disallow, allow, or require)
-                         ;  disallow - treat non-zero exit codes as failures
-                         ;  allow - all exit codes are acceptable
-                         ;  require - treat zero exit codes as failures, useful
-                         ;            for creating tests for app error checking
+nonzeroexit = disallow
 createdby = David Bryson ; Who created the test
 email = brysonda at egr.msu.edu ; Email address for the test's creator
 

Modified: development/tests/_asl_good_005_math_whitespace/test_list
===================================================================
--- development/tests/_asl_good_005_math_whitespace/test_list	2008-03-02 00:50:52 UTC (rev 2407)
+++ development/tests/_asl_good_005_math_whitespace/test_list	2008-03-02 17:47:19 UTC (rev 2408)
@@ -3,11 +3,7 @@
 ; Command line arguments to pass to the application
 args = 
 app = %(builddir)s/work/avida-s
-nonzeroexit = disallow   ; Exit code handling (disallow, allow, or require)
-                         ;  disallow - treat non-zero exit codes as failures
-                         ;  allow - all exit codes are acceptable
-                         ;  require - treat zero exit codes as failures, useful
-                         ;            for creating tests for app error checking
+nonzeroexit = disallow
 createdby = David Bryson ; Who created the test
 email = brysonda at egr.msu.edu ; Email address for the test's creator
 

Modified: development/tests/_asl_good_006_math_longer/test_list
===================================================================
--- development/tests/_asl_good_006_math_longer/test_list	2008-03-02 00:50:52 UTC (rev 2407)
+++ development/tests/_asl_good_006_math_longer/test_list	2008-03-02 17:47:19 UTC (rev 2408)
@@ -3,11 +3,7 @@
 ; Command line arguments to pass to the application
 args = 
 app = %(builddir)s/work/avida-s
-nonzeroexit = disallow   ; Exit code handling (disallow, allow, or require)
-                         ;  disallow - treat non-zero exit codes as failures
-                         ;  allow - all exit codes are acceptable
-                         ;  require - treat zero exit codes as failures, useful
-                         ;            for creating tests for app error checking
+nonzeroexit = disallow
 createdby = David Bryson ; Who created the test
 email = brysonda at egr.msu.edu ; Email address for the test's creator
 

Modified: development/tests/_asl_good_007_math_order_op/test_list
===================================================================
--- development/tests/_asl_good_007_math_order_op/test_list	2008-03-02 00:50:52 UTC (rev 2407)
+++ development/tests/_asl_good_007_math_order_op/test_list	2008-03-02 17:47:19 UTC (rev 2408)
@@ -3,11 +3,7 @@
 ; Command line arguments to pass to the application
 args = 
 app = %(builddir)s/work/avida-s
-nonzeroexit = disallow   ; Exit code handling (disallow, allow, or require)
-                         ;  disallow - treat non-zero exit codes as failures
-                         ;  allow - all exit codes are acceptable
-                         ;  require - treat zero exit codes as failures, useful
-                         ;            for creating tests for app error checking
+nonzeroexit = disallow
 createdby = David Bryson ; Who created the test
 email = brysonda at egr.msu.edu ; Email address for the test's creator
 

Modified: development/tests/_asl_good_008_variable_types/test_list
===================================================================
--- development/tests/_asl_good_008_variable_types/test_list	2008-03-02 00:50:52 UTC (rev 2407)
+++ development/tests/_asl_good_008_variable_types/test_list	2008-03-02 17:47:19 UTC (rev 2408)
@@ -3,11 +3,7 @@
 ; Command line arguments to pass to the application
 args = 
 app = %(builddir)s/work/avida-s
-nonzeroexit = disallow   ; Exit code handling (disallow, allow, or require)
-                         ;  disallow - treat non-zero exit codes as failures
-                         ;  allow - all exit codes are acceptable
-                         ;  require - treat zero exit codes as failures, useful
-                         ;            for creating tests for app error checking
+nonzeroexit = disallow
 createdby = David Bryson ; Who created the test
 email = brysonda at egr.msu.edu ; Email address for the test's creator
 




More information about the Avida-cvs mailing list