* Smake: Add --doc-base=gl/doc to gnulib-tool invocation, which is
[pspp-builds.git] / src / language / data-io / print.c
index 63270160d949dd9654776fd13ffa4e8572415cd0..3c8db1cb0a1b4bd334211ee12b72c5e02d5b7338 100644 (file)
@@ -32,7 +32,9 @@
 #include <language/data-io/file-handle.h>
 #include <language/expressions/public.h>
 #include <language/lexer/lexer.h>
+#include <language/lexer/variable-parser.h>
 #include <libpspp/alloc.h>
+#include <libpspp/assertion.h>
 #include <libpspp/compiler.h>
 #include <libpspp/message.h>
 #include <libpspp/message.h>
@@ -141,7 +143,7 @@ static int
 internal_cmd_print (int f)
 {
   int table = 0;                /* Print table? */
-  struct print_trns *trns;      /* malloc()'d transformation. */
+  struct print_trns *trns = NULL; /* malloc()'d transformation. */
   struct file_handle *fh = NULL;
 
   /* Fill in prt to facilitate error-handling. */
@@ -350,7 +352,7 @@ parse_string_argument (void)
 {
   fx.spec.type = PRT_CONST;
   fx.spec.fc = fx.sc - 1;
-  fx.spec.u.c = xstrdup (ds_c_str (&tokstr));
+  fx.spec.u.c = ds_xstrdup (&tokstr);
   lex_get ();
 
   /* Parse the included column range. */
@@ -837,7 +839,7 @@ dump_table (const struct file_handle *fh)
       case PRT_SPACE:
        break;
       case PRT_ERROR:
-       assert (0);
+        NOT_REACHED ();
       }
 
   if (fh != NULL)
@@ -882,8 +884,7 @@ alloc_line (void)
          break;
        case PRT_ERROR:
         default:
-         assert (0);
-          abort ();
+          NOT_REACHED ();
        }
       if (pot_w > w)
        w = pot_w;
@@ -957,8 +958,7 @@ print_trns_proc (void *trns_, struct ccase *c, int case_num UNUSED)
        break;
 
       case PRT_ERROR:
-       assert (0);
-       break;
+        NOT_REACHED ();
       }
 
   if (t->writer != NULL && dfm_write_error (t->writer))
@@ -966,7 +966,7 @@ print_trns_proc (void *trns_, struct ccase *c, int case_num UNUSED)
   return TRNS_CONTINUE;
 }
 
-/* Frees all the data inside print_trns T.  Does not free T. */
+/* Frees all the data inside print_trns PRT.  Does not free PRT. */
 static bool
 print_trns_free (void *prt_)
 {
@@ -987,8 +987,7 @@ print_trns_free (void *prt_)
          /* nothing to do */
          break;
        case PRT_ERROR:
-         assert (0);
-         break;
+         NOT_REACHED ();
        }
       n = i->next;
       free (i);
@@ -996,7 +995,6 @@ print_trns_free (void *prt_)
   if (prt->writer != NULL)
     ok = dfm_close_writer (prt->writer);
   free (prt->line);
-  free (prt);
   return ok;
 }
 \f