Merge "output" into "master"
[pspp] / src / language / lexer / variable-parser.c
index f019b533a59d3f36e74aa0f43afd3d8968d3768e..8a39dbf0b2d2d6b6684766d8352d4cbf02cfdd59 100644 (file)
@@ -1,5 +1,5 @@
 /* PSPP - a program for statistical analysis.
-   Copyright (C) 1997-9, 2000 Free Software Foundation, Inc.
+   Copyright (C) 1997-9, 2000, 2009 Free Software Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
@@ -26,7 +26,6 @@
 #include <data/dictionary.h>
 #include <data/procedure.h>
 #include <data/variable.h>
-#include <libpspp/alloc.h>
 #include <libpspp/assertion.h>
 #include <libpspp/bit-vector.h>
 #include <libpspp/hash.h>
@@ -35,6 +34,8 @@
 #include <libpspp/pool.h>
 #include <libpspp/str.h>
 
+#include "xalloc.h"
+
 #include "gettext.h"
 #define _(msgid) gettext (msgid)
 
@@ -191,7 +192,7 @@ add_variable (struct variable ***v, size_t *nv, size_t *mv,
            && var_get_width (add) != var_get_width ((*v)[0]))
     msg (SE, _("%s and %s are string variables with different widths.  "
                "All variables in this variable list must have the "
-               "same width.  %s will be omttied from the list."),
+               "same width.  %s will be omitted from the list."),
          var_get_name ((*v)[0]), add_name, add_name);
   else if ((pv_opts & PV_NO_DUPLICATE) && included[idx])
     msg (SE, _("Variable %s appears twice in variable list."), add_name);
@@ -404,8 +405,8 @@ parse_DATA_LIST_vars (struct lexer *lexer, char ***names, size_t *nnames, int pv
   int d1, d2;
   int n;
   size_t nvar, mvar;
-  char name1[LONG_NAME_LEN + 1], name2[LONG_NAME_LEN + 1];
-  char root1[LONG_NAME_LEN + 1], root2[LONG_NAME_LEN + 1];
+  char name1[VAR_NAME_LEN + 1], name2[VAR_NAME_LEN + 1];
+  char root1[VAR_NAME_LEN + 1], root2[VAR_NAME_LEN + 1];
   int success = 0;
 
   assert (names != NULL);
@@ -473,7 +474,7 @@ parse_DATA_LIST_vars (struct lexer *lexer, char ***names, size_t *nnames, int pv
 
          for (n = n1; n <= n2; n++)
            {
-              char name[LONG_NAME_LEN + 1];
+              char name[VAR_NAME_LEN + 1];
              sprintf (name, "%s%0*d", root1, d1, n);
              (*names)[nvar] = xstrdup (name);
              nvar++;
@@ -663,7 +664,7 @@ var_set_lookup_var_idx (const struct var_set *vs, const char *name,
 {
   assert (vs != NULL);
   assert (name != NULL);
-  assert (strlen (name) <= LONG_NAME_LEN);
+  assert (strlen (name) <= VAR_NAME_LEN);
 
   return vs->lookup_var_idx (vs, name, idx);
 }
@@ -756,7 +757,7 @@ array_var_set_get_var (const struct var_set *vs, size_t idx)
 {
   struct array_var_set *avs = vs->aux;
 
-  return (struct variable *) avs->var[idx];
+  return CONST_CAST (struct variable *, avs->var[idx]);
 }
 
 /* If VS contains a variable named NAME, sets *IDX to its index