Quantcast

[GNU Autoconf 2.69] testsuite: 503 failed

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

[GNU Autoconf 2.69] testsuite: 503 failed

James Hatfield
To Whom it May Concern,

I may have discovered (and fixed) a bug in the GNU Autoconf suite.
The TLDR version is that I think that line 361 of the "autoscan" bash
executable needs to be changed from:
s/\${[^\}]*}//g;
to:
s/\$\{[^\}]*}//g;

i.e., the first brace must be escaped.

Below I've provided the error messages and information that I hope can be
used to replicate the error.
I'd love to know if this helps at all, or if you've already discovered it.
Please let me know if you need any more info.

Thanks so much!

James

Detailed notes:

I was trying to compile W. Richard Stevens' daytimetcpcli.c (Unix Network
Programming Vol 1.)  I downloaded and extracted autfoconf-2.69 into my
downloads folder on my Ubuntu 16.04 VM.
 I then copied the files daytimetcpcli.c and unp.h to the autofconf folder
and ran "make check" and received the following error:

...
Autoscan.

503: autoscan                                        FAILED (autoscan.at:44)

## ------------- ##
## Test results. ##
## ------------- ##

ERROR: 459 tests were run,
5 failed (4 expected failures).
44 tests were skipped.
## -------------------------- ##
## testsuite.log was created. ##
## -------------------------- ##

Please send `tests/testsuite.log' and all information you think might help:

   To: <[hidden email]>
   Subject: [GNU Autoconf 2.69] testsuite: 503 failed

You may investigate any problem if you feel able to do so, in which
case the test suite provides a good starting point.  Its output may
be found below `tests/testsuite.dir'.

Makefile:596: recipe for target 'check-local' failed
make[3]: *** [check-local] Error 1
make[3]: Leaving directory '/home/james/Downloads/autoconf-2.69/tests'
Makefile:411: recipe for target 'check-am' failed
make[2]: *** [check-am] Error 2
make[2]: Leaving directory '/home/james/Downloads/autoconf-2.69/tests'
Makefile:357: recipe for target 'check-recursive' failed
make[1]: *** [check-recursive] Error 1
make[1]: Leaving directory '/home/james/Downloads/autoconf-2.69'
Makefile:665: recipe for target 'check' failed
make: *** [check] Error 2

I then found this section in testsuit.log:

## Detailed failed tests. ##
## ---------------------- ##

#                             -*- compilation -*-
503. autoscan.at:20: testing autoscan ...
./autoscan.at:44: autoscan
--- /dev/null    2017-04-30 14:32:24.816000000 -0500
+++
/home/james/Downloads/autoconf-2.69/tests/testsuite.dir/at-groups/503/stderr
2017-04-30 15:44:21.404662024 -0500
@@ -0,0 +1 @@
+Unescaped left brace in regex is deprecated, passed through in regex;
marked by <-- HERE in m/\${ <-- HERE [^\}]*}/ at
/home/james/Downloads/autoconf-2.69/bin/autoscan line 361.
503. autoscan.at:20: 503. autoscan (autoscan.at:20): FAILED (autoscan.at:44)

I escaped the first brace as indicated, ran "make check" again, and it
completed successfully.
Loading...