Index: read.c =================================================================== RCS file: /cvsroot/make/make/read.c,v retrieving revision 1.131 diff -u -r1.131 read.c --- read.c 22 Mar 2004 15:11:49 -0000 1.131 +++ read.c 9 Apr 2004 18:47:48 -0000 @@ -1686,9 +1686,19 @@ p = create_pattern_var (name, percent); p->variable.fileinfo = *flocp; v = parse_variable_definition (&p->variable, defn); - v->value = xstrdup (v->value); + if (!v) error (flocp, _("Malformed pattern-specific variable definition")); + + if (v->flavor == f_simple) + { + v->value = allocated_variable_expand (v->value); + } + else + { + v->value = xstrdup (v->value); + } + fname = p->target; } else