GNU bug report logs - #21060
coreutils-8.24 - perl 5.22 warning on regular expression in "gmake check" output

Previous Next

Package: coreutils;

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.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 21060 in the body.
You can then email your comments to 21060 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-coreutils <at> gnu.org:
bug#21060; Package coreutils. (Wed, 15 Jul 2015 08:00:03 GMT) Full text and rfc822 format available.

Acknowledgement sent to Peter Bray <pdb_ml <at> yahoo.com.au>:
New bug report received and forwarded. Copy sent to bug-coreutils <at> gnu.org. (Wed, 15 Jul 2015 08:00:04 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Peter Bray <pdb_ml <at> yahoo.com.au>
To: bug-coreutils <at> gnu.org
Subject: coreutils-8.24 - perl 5.22 warning on regular expression in "gmake
 check" output
Date: Wed, 15 Jul 2015 17:58:52 +1000
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 \





Reply sent to Pádraig Brady <P <at> draigBrady.com>:
You have taken responsibility. (Wed, 15 Jul 2015 10:43:01 GMT) Full text and rfc822 format available.

Notification sent to Peter Bray <pdb_ml <at> yahoo.com.au>:
bug acknowledged by developer. (Wed, 15 Jul 2015 10:43:02 GMT) Full text and rfc822 format available.

Message #10 received at 21060-done <at> debbugs.gnu.org (full text, mbox):

From: Pádraig Brady <P <at> draigBrady.com>
To: Peter Bray <pdb_ml <at> yahoo.com.au>, 21060-done <at> debbugs.gnu.org
Subject: Re: bug#21060: coreutils-8.24 - perl 5.22 warning on regular
 expression in "gmake check" output
Date: Wed, 15 Jul 2015 11:42:14 +0100
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.





bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Wed, 12 Aug 2015 11:24:05 GMT) Full text and rfc822 format available.

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.