Follow-up Comment #1, bug #45728 (project make):
I think the problem is a bit larger than what is exhibited here.
I started with the following script:
#!/bin/bash
#
gmake --version;
exec gmake --warn-undefined-variables -f "$0" "$@"
MY_foo:=foo
undefine MY_foo
MY_bar:=bar
$(warning MY variables: $(filter MY_%,${.VARIABLES}))
$(foreach x,$(filter MY_%,${.VARIABLES}),$(eval undefine ${x}))
MY_baz:=baz
$(warning MY Variables: $(filter MY_%,${.VARIABLES}))
all: ; @true
If I run that script, I get output on par with the originally submitted bug --
though it should be noted that it at least appears to work fine unless you use
$(foreach).
If I add an evaluation of .VARIABLES between lines 6 & 7 (copy/paste one of
the $(warning) lines) I get different (also buggy) behavior. If I put the
$(warning) line in a variable and evaluate that, I get other buggy behavior.
_______________________________________________________
Reply to this item at:
<http://savannah.gnu.org/bugs/?45728>
_______________________________________________
Message sent via/by Savannah
http://savannah.gnu.org/
_______________________________________________
Bug-make mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/bug-make