5

After compiling and installing GNU automake 1.15, I get this error whenever I run automake:

Unescaped left brace in regex is deprecated, passed through in regex;

marked by <-- HERE in m/\${ <-- HERE ([^ \t=:+{}]+)}/

at /usr/local/bin/automake line 3936

I have perl v5.22.0

2 Answers 2

5

A deprecation warning isn't in-and-of-itself a problem.

The Perl 5.21.1 release notes indicate:

If you want a literal left curly bracket (also called a left brace) in a regular expression pattern, you should now escape it by either preceding it with a backslash ("\{") or enclosing it within square brackets "[{]", or by using \Q; otherwise a deprecation warning will be raised. This was first announced as forthcoming in the v5.16 release; it will allow future extensions to the language to happen.

You could report this bug to the Automake authors, although they may want to retain compatibility with older versions of Perl.

0

I got this error just because I was using by mistake 'print' instead of echo in bash:

print "abcd123" | perl -e 'myscript'  #causes error

Solution was use echo, I just confused print/echo by mixing languages

echo "abcd123" | perl -e 'myscript'  #is fine
printf "abcd123" | perl -e 'myscript'  #is fine too, "printf" not print

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .