[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: semantics.at test failures with ksh Version M-12/28/93d
From: |
Akim Demaille |
Subject: |
Re: semantics.at test failures with ksh Version M-12/28/93d |
Date: |
20 Mar 2002 13:49:48 +0100 |
User-agent: |
Gnus/5.0808 (Gnus v5.8.8) XEmacs/21.4 (Common Lisp) |
| On Solaris 8 I tested Autoconf with dtksh as follows:
| CONFIG_SHELL=/usr/dt/bin/dtksh dtksh ./testsuite
|
| and got failures like this:
|
| 54: semantics.at:171 FAILED near `semantics.at:171'
| 55: semantics.at:189 FAILED near `semantics.at:189'
|
| I tracked it down to a bug in dtksh (which claims that it is Korn
| Shell Version M-12/28/93d). dtksh mishandles variable expansion on
| 1024-byte buffer boundaries. For example, if you run the following
| script with dtksh, the output incorrectly ends in "x":
|
| abcde=abcde
| cat <<CEOF
| xxxxxxxxxxxxxxxxxxxxx
| xxxxx
| xxxxx
| xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
| xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
| xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
| xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
| xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
| xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
| xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
| xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
| xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
| xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
| xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
| xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
| xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
| xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
| xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
| xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx${abcde}
| CEOF
Incredible! As usual, would you report this limitation in the doc,
please?
| I have reported this bug to Sun (case number 62917825).
| The same bug occurs in Solaris 9 early access.
|
| I worked around the problem by setting ac_max_here_lines=12 in my
| environment; this caused all the Autoconf tests to succeed. However,
| the real bug is not related to the number of lines, it is related to
| the number of bytes.
Yep, but anyway, we are loaded with weird heuristic to work around
such bugs. Not all are full bullet proof.
| Currently, lib/autoconf/general.m4 says:
|
| # Maximum number of lines to put in a shell here document.
| # This variable seems obsolete. It should probably be removed, and
| # only ac_max_sed_lines should be used.
| : ${ac_max_here_lines=38}
|
| I'm not sure that the variable is obsolete, since it was useful to me
| in working around the dtksh bug, and that bug was really in the shell,
| not in sed (though the document in question was for a sed script).
Yes, indeed.
| On the other hand I was using dtksh mostly as a stress test for
| Autoconf, so this problem is probably low priority.
It definitely has. In such a context, I'd suggest having a simple
shell sanity check that dies with this shell.