projects
/
pspp
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Change explicit variable name checks into use of dict_class_from_id().
[pspp]
/
src
/
recode.c
diff --git
a/src/recode.c
b/src/recode.c
index 523dcaa6442d850f971a0155e54fedc3722ca443..ee164b9c7c7889ea04bd6ecf12f941bfc9b5daaf 100644
(file)
--- a/
src/recode.c
+++ b/
src/recode.c
@@
-34,6
+34,7
@@
\f
/* Definitions. */
\f
/* Definitions. */
+/* Type of source value for RECODE. */
enum
{
RCD_END, /* sentinel value */
enum
{
RCD_END, /* sentinel value */
@@
-487,6
+488,11
@@
parse_dest_spec (struct rcd_var * rcd, union value * v, size_t *max_dst_width)
v->c = NULL;
}
}
v->c = NULL;
}
}
+ else
+ {
+ lex_error (_("expecting output value"));
+ return 0;
+ }
if ((rcd->flags & RCD_DEST_MASK) == RCD_DEST_ERROR)
rcd->flags |= flags;
if ((rcd->flags & RCD_DEST_MASK) == RCD_DEST_ERROR)
rcd->flags |= flags;
@@
-776,10
+782,11
@@
recode_trns_proc (struct trns_header * t, struct ccase * c,
int case_num UNUSED)
{
struct rcd_var *v;
int case_num UNUSED)
{
struct rcd_var *v;
- struct coding *cp;
for (v = ((struct recode_trns *) t)->codings; v; v = v->next)
{
for (v = ((struct recode_trns *) t)->codings; v; v = v->next)
{
+ struct coding *cp;
+
switch (v->flags & RCD_SRC_MASK)
{
case RCD_SRC_NUMERIC:
switch (v->flags & RCD_SRC_MASK)
{
case RCD_SRC_NUMERIC:
@@
-788,6
+795,8
@@
recode_trns_proc (struct trns_header * t, struct ccase * c,
case RCD_SRC_STRING:
cp = find_src_string (v, c);
break;
case RCD_SRC_STRING:
cp = find_src_string (v, c);
break;
+ default:
+ assert (0);
}
if (!cp)
continue;
}
if (!cp)
continue;