#include <language/command.h>
#include <language/data-io/file-handle.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/hash.h>
#include <libpspp/message.h>
}
else
aw->writer = any_writer_open (handle, dict);
+ if (aw->writer == NULL)
+ goto error;
dict_destroy (dict);
return aw;
saw_table = true;
}
else
- assert (0);
+ NOT_REACHED ();
lex_match ('=');
file->by = NULL;
discard_variables ();
+ dict_destroy (default_dict);
default_dict = mtf.dict;
mtf.dict = NULL;
proc_set_source (storage_source_create (mtf.output));
if (iter->handle == NULL)
{
if (!mtf_delete_file_in_place (mtf, &iter))
- abort ();
+ NOT_REACHED ();
break;
}
if (dv->width == mv->width)
{
if (val_labs_count (dv->val_labs)
- && !val_labs_count (mv->val_labs))
- mv->val_labs = val_labs_copy (dv->val_labs);
+ && !val_labs_count (mv->val_labs))
+ {
+ val_labs_destroy (mv->val_labs);
+ mv->val_labs = val_labs_copy (dv->val_labs);
+ }
if (!mv_is_empty (&dv->miss) && mv_is_empty (&mv->miss))
mv_copy (&mv->miss, &dv->miss);
}