I raised the question on the Austin Group list:
http://tinyurl.com/yabnfk

Eric Blake points out that this difference in behavior is a known
portability problem in historical shells:
http://tinyurl.com/ybmfq5

The issue is documented in the Autoconf manual:
http://www.gnu.org/software/autoconf/manual/autoconf.html#Limitations-of-Builtins

Martin

Martin Sebor wrote:
Paul D. Smith wrote:

On Wednesday, 8 November, Martin Sebor ([EMAIL PROTECTED]) wrote:


It works for me.  Maybe it's your shell?


Apparently. I originally ran my code on Solaris. I have tried
/usr/xpg4/bin/sh but got the same results. AIX, HP-UX, IRIX,
and Tru64 all behave the same as well. Bash is the only shell
that produces the result I expect.



Odd.  Can you try this without make involved; what behavior do you get?

    $ /bin/sh -c "trap 'echo \$?' EXIT && exit 1"

?

Also, try using "0" instead of EXIT; maybe the other shells don't accept the
translated values?


With /bin/sh the script above prints 0, with both EXIT and 0.
So the bahavior has nothing to do with make. I'll dig into
the shell spec to see if conforms or if it's a bug. Thanks
for your help!

Martin



_______________________________________________
Help-make mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/help-make



_______________________________________________
Help-make mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/help-make

Reply via email to