static int autorecode_trns_proc (struct trns_header *, struct ccase *);
static void autorecode_trns_free (struct trns_header *);
-static int autorecode_proc_func (struct ccase *);
+static int autorecode_proc_func (struct ccase *, void *);
static hsh_compare_func compare_alpha_value, compare_numeric_value;
static hsh_hash_func hash_alpha_value, hash_numeric_value;
static void recode (void);
lex_match_id ("AUTORECODE");
lex_match_id ("VARIABLES");
lex_match ('=');
- if (!parse_variables (&default_dict, &v_src, &nv_src, PV_NO_DUPLICATE))
+ if (!parse_variables (default_dict, &v_src, &nv_src, PV_NO_DUPLICATE))
return CMD_FAILURE;
if (!lex_force_match_id ("INTO"))
return CMD_FAILURE;
{
int j;
- if (is_varname (n_dest[i]))
+ if (dict_lookup_var (default_dict, n_dest[i]) != NULL)
{
msg (SE, _("Target variable %s duplicates existing variable %s."),
n_dest[i], n_dest[i]);
h_trans[i] = hsh_create (10, compare_numeric_value,
hash_numeric_value, NULL, NULL);
- procedure (NULL, autorecode_proc_func, NULL);
+ procedure (NULL, autorecode_proc_func, NULL, NULL);
for (i = 0; i < nv_dest; i++)
{
- v_dest[i] = force_create_variable (&default_dict, n_dest[i], NUMERIC, 0);
+ v_dest[i] = dict_create_var_assert (default_dict, n_dest[i], 0);
+ v_dest[i]->init = 0;
free (n_dest[i]);
}
free (n_dest);
}
static int
-compare_numeric_value (const void *a_, const void *b_, void *foo unused)
+compare_numeric_value (const void *a_, const void *b_, void *foo UNUSED)
{
const union value *a = a_;
const union value *b = b_;
}
static unsigned
-hash_numeric_value (const void *a_, void *foo unused)
+hash_numeric_value (const void *a_, void *foo UNUSED)
{
const union value *a = a_;
}
static int
-autorecode_proc_func (struct ccase * c)
+autorecode_proc_func (struct ccase *c, void *aux UNUSED)
{
int i;