Apply patch from Jason Stover <jstover@sdf.lonestar.org> to obtain
[pspp-builds.git] / src / vector.c
index 2296672dc22363be9e0641f009c2744b0e2efe85..9a0d749265529f92332a2877feb5a1ad1db9c225 100644 (file)
    02111-1307, USA. */
 
 #include <config.h>
-#include <assert.h>
+#include "error.h"
 #include <stdlib.h>
 #include "alloc.h"
 #include "command.h"
+#include "dictionary.h"
 #include "error.h"
 #include "lexer.h"
 #include "misc.h"
@@ -43,8 +44,6 @@ cmd_vector (void)
   /* Maximum allocated position for vecnames, plus one position. */
   char *endp = NULL;
 
-  lex_match_id ("VECTOR");
-
   cp = vecnames = xmalloc (256);
   endp = &vecnames[256];
   do
@@ -114,7 +113,7 @@ cmd_vector (void)
          int ndig;
 
          /* Name of an individual variable to be created. */
-         char name[9];
+         char name[SHORT_NAME_LEN + 1];
 
           /* Vector variables. */
           struct variable **v;
@@ -132,13 +131,13 @@ cmd_vector (void)
          if (!lex_force_match (')'))
            goto fail;
 
-         /* First check that all the generated variable names are 8
+         /* First check that all the generated variable names are SHORT_NAME_LEN
             characters or shorter. */
          ndig = intlog10 (nv);
          for (cp = vecnames; *cp;)
            {
              int len = strlen (cp);
-             if (len + ndig > 8)
+             if (len + ndig > SHORT_NAME_LEN)
                {
                  msg (SE, _("%s%d is too long for a variable name."), cp, nv);
                  goto fail;