Fix bug parsing T-TEST
authorJohn Darrington <john@darrington.wattle.id.au>
Fri, 1 Jul 2011 14:48:19 +0000 (16:48 +0200)
committerJohn Darrington <john@darrington.wattle.id.au>
Fri, 1 Jul 2011 14:48:19 +0000 (16:48 +0200)
src/language/stats/t-test-parser.c
src/language/stats/t-test.h

index 51f30b9cfcd16a383af8725b8dfd94f685216ea3..7c8d8a548a5ea42b7343e5fe8b5b716c744bc37a 100644 (file)
@@ -68,6 +68,7 @@ cmd_t_test (struct lexer *lexer, struct dataset *ds)
   tt.missing_type = MISS_ANALYSIS;
   tt.n_vars = 0;
   tt.vars = NULL;
+  tt.mode = MODE_undef;
 
   lex_match (lexer, T_EQUALS);
 
@@ -128,6 +129,13 @@ cmd_t_test (struct lexer *lexer, struct dataset *ds)
        {
          bool with = false;
          bool paired = false;
+
+         if (tt.n_vars > 0)
+           {
+             msg (SE, _("VARIABLES subcommand may not be used with PAIRS."));
+             goto parse_failed;
+           }
+
          mode_count++;
          tt.mode = MODE_PAIRED;
          lex_match (lexer, T_EQUALS);
index 2b4dba445a77e439508045b12d3895b633d9d9df..c2e8099335489b26444d2bfbe5ed8ac03591ddc4 100644 (file)
@@ -30,6 +30,7 @@ enum missing_type
 
 enum mode
   {
+    MODE_undef,
     MODE_PAIRED,
     MODE_INDEP,
     MODE_SINGLE,