URL: <http://savannah.gnu.org/bugs/?20513>
Summary: # still needs to be escaped in a function like $(shell) Project: make Submitted by: lmamane Submitted on: Wednesday 18/07/07 at 17:50 Severity: 3 - Normal Item Group: Bug Status: None Privacy: Public Assigned to: None Open/Closed: Open Discussion Lock: Any Component Version: 3.81 Operating System: POSIX-Based Fixed Release: None _______________________________________________________ Details: The NEWS file says: Version 3.81 * WARNING: Backward-incompatibility! Some previous versions of GNU make had a bug where "#" in a function invocation such as $(shell ...) was treated as a make comment. A workaround was to escape these with backslashes. This bug has been fixed: if your makefile uses "\#" in a function invocation the backslash is now preserved, so you'll need to remove it. But I still get that bug with 3.81 and with CVS HEAD. The following makefile: FOO:=$(shell echo '#') foo: echo '$(FOO)' gives: Makefile:1: *** unterminated call to function `shell': missing `)'. Stop. while FOO:=$(shell echo '\#') foo: echo '$(FOO)' works, and the backslash is _not_ passed to the shell. _______________________________________________________ Reply to this item at: <http://savannah.gnu.org/bugs/?20513> _______________________________________________ Message sent via/by Savannah http://savannah.gnu.org/ _______________________________________________ Bug-make mailing list Bug-make@gnu.org http://lists.gnu.org/mailman/listinfo/bug-make