work on better matrix error reporting
[pspp] / src / language / lexer / scan.c
index b6baf5ce5511538ff34a6d17956aa652edbe34f6..f2dcebca15ea562543d5fde64b7cac95ec96ab4b 100644 (file)
@@ -188,6 +188,8 @@ scan_punct1__ (char c0)
     case '-': return T_DASH;
     case '[': return T_LBRACK;
     case ']': return T_RBRACK;
+    case '{': return T_LCURLY;
+    case '}': return T_RCURLY;
     case '&': return T_AND;
     case '|': return T_OR;
     case '+': return T_PLUS;
@@ -196,6 +198,8 @@ scan_punct1__ (char c0)
     case '<': return T_LT;
     case '>': return T_GT;
     case '~': return T_NOT;
+    case ';': return T_SEMICOLON;
+    case ':': return T_COLON;
     default: return T_MACRO_PUNCT;
     }
 
@@ -290,6 +294,7 @@ tokenize_string_segment__ (enum segment_type type,
   else
     {
       tokenize_error__ (token, error);
+      ss_dealloc (&out);
       return TOKENIZE_ERROR;
     }
 }