Thanks.  I was hoping it'd be something like that.  Even with that clue,
though, I'm not having any luck making the buffer need reallocating at
the appropriate point.  How frustrating.

-----Original Message-----
From: bug-make-bounces+mdorey=bluearc....@gnu.org
[mailto:bug-make-bounces+mdorey=bluearc....@gnu.org] On Behalf Of David
Wuertele
Sent: Tuesday, January 20, 2009 15:07
To: bug-make@gnu.org
Subject: Re: Bug in make-3.81: variable_buffer moves out from under
buffer

Martin Dorey <mdorey <at> bluearc.com> writes:

> In the original makefile, does
> the long rule really not contain any variables or involve any $(eval)
trickery?

Not sure what you mean by trickery, but it definitely involves eval and
variables.

The rule is created with an eval:

$(eval $(call somemacro,many,different,arguments,many,many,many))

somemacro calls other macros:

define somemacro

  $(foreach thing,$(filter-out unwanted-stuff,$(wildcard $1/*)),$(call
othermacro,$1,$(thing),$2,$3,and,more,stuff))

endef

othermacro calls yet more functions:

define othermacro

  $(patsubst $1/%.x,$3/.y-%,$2): $3/.y-%: $1/%.x; echo blah blah blah

endef

When I unwind these calls and write the expansion out manually, I
invariably
change the order that stuff gets evaluated, which results in
variable_buffer
being large enough to avoid triggering the bug.

Dave



_______________________________________________
Bug-make mailing list
Bug-make@gnu.org
http://lists.gnu.org/mailman/listinfo/bug-make


_______________________________________________
Bug-make mailing list
Bug-make@gnu.org
http://lists.gnu.org/mailman/listinfo/bug-make

Reply via email to