GNU bug report logs -
#21060
coreutils-8.24 - perl 5.22 warning on regular expression in "gmake check" output
Previous Next
Reported by: Peter Bray <pdb_ml <at> yahoo.com.au>
Date: Wed, 15 Jul 2015 08:00:03 UTC
Severity: normal
Done: Pádraig Brady <P <at> draigBrady.com>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
[Message part 1 (text/plain, inline)]
Your bug report
#21060: coreutils-8.24 - perl 5.22 warning on regular expression in "gmake check" output
which was filed against the coreutils package, has been closed.
The explanation is attached below, along with your original report.
If you require more details, please reply to 21060 <at> debbugs.gnu.org.
--
21060: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=21060
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
On 15/07/15 08:58, Peter Bray wrote:
> Greetings,
>
> While trying to prepare another bug report, I discovered that
> perl-5.22 warnings of the form:
>
> Unescaped left brace in regexp is deprecated
Fixed with:
http://git.sv.gnu.org/gitweb/?p=coreutils.git;a=commitdiff;h=a652e7b
thanks,
Pádraig.
[Message part 3 (message/rfc822, inline)]
Greetings,
While trying to prepare another bug report, I discovered that
perl-5.22 warnings of the form:
Unescaped left brace in regexp is deprecated
are present in the coreutils Makefile. The complete output is:
gmake[4]: Leaving directory `/tmp/64-bit/coreutils-8.24'
GEN check-README
GEN check-duplicate-no-install
GEN sc-avoid-builtin
GEN sc-avoid-io
GEN sc-avoid-non-zero
GEN sc-avoid-path
GEN sc-avoid-timezone
GEN sc-avoid-zeroes
GEN sc-exponent-grouping
GEN sc-lower-case-var
Unescaped left brace in regex is deprecated, passed through in regex;
marked by <-- HERE in m/\@var{ <-- HERE / at -e line 1.
Unescaped left brace in regex is deprecated, passed through in regex;
marked by <-- HERE in m/\@var{ <-- HERE (.+?)}/ at -e line 1.
GEN check-texinfo
gmake[3]: Leaving directory `/tmp/64-bit/coreutils-8.24'
gmake[2]: Leaving directory `/tmp/64-bit/coreutils-8.24'
gmake[1]: Leaving directory `/tmp/64-bit/coreutils-8.24'
In "doc/local.mk", is the code fragment:
112 # The quantity inside @var{...} should not contain upper case
letters.
113 # The leading backslash exemption is to permit in-macro uses like
114 # @var{\varName\} where the upper case letter is part of a
parameter name.
115 find_upper_case_var = \
116 '/\@var{/ or next; \
117 while (/\@var{(.+?)}/g) \
118 { \
119 $$v = $$1; \
120 $$v =~ /[A-Z]/ && $$v !~ /^\\/ and (print
"$$ARGV:$$.:$$_"), $$m = 1 \
121 } \
122 END {$$m and (warn "$@: do not use upper case in
\@var{...}\n"), exit 1}'
123 sc-lower-case-var:
124 $(AM_V_GEN)$(PERL) -e 1 || { echo $@: skipping test;
exit 0; }; \
125 $(PERL) -lne $(find_upper_case_var) $(texi_files)
126
127 check-local: check-texinfo
There are two instances of this warning, which match the two instances
in the code on line numbers 116 and 117 respectively. If the two
instances of '{' are escaped with '\' in the actual Makefile, the
warning is avoided.
Again (see coreutils-BUG-21059) these systems do not have autotools,
so the change has only been developed and tested on the generated
Makefile, and not by changing "doc/local.mk".
Regards,
Peter Bray
Sydney, Australia
Backup : ./Makefile.orig
Editted : ./Makefile
Command : gdiff -u
--- ./Makefile.orig 2015-07-15 07:02:26.181339000 +0000
+++ ./Makefile 2015-07-15 07:46:22.589468666 +0000
@@ -4984,8 +4984,8 @@
# The leading backslash exemption is to permit in-macro uses like
# @var{\varName\} where the upper case letter is part of a parameter name.
find_upper_case_var = \
- '/\@var{/ or next; \
- while (/\@var{(.+?)}/g) \
+ '/\@var\{/ or next; \
+ while (/\@var\{(.+?)}/g) \
{ \
$$v = $$1; \
$$v =~ /[A-Z]/ && $$v !~ /^\\/ and (print "$$ARGV:$$.:$$_"),
$$m = 1 \
This bug report was last modified 9 years and 317 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.