b525355729
Note: this backs out a number of changes we've made to awk because they aren't upstream, but are on the vendor branch. Those will be reapplied. svn makes it needlessly difficult to know which ones, but at least r315426, r301289, and maybe r301691, though there may be others too. None of these are critical, so bisecting through this point is safe for all but awk regression tests :).
20 lines
575 B
Awk
20 lines
575 B
Awk
# Unmodified nawk prints the 16 bit exit status divided by 256, but
|
|
# does so using floating point arithmetic, yielding strange results.
|
|
#
|
|
# The fix is to use the various macros defined for wait(2) and to
|
|
# use the signal number + 256 for death by signal, or signal number + 512
|
|
# for death by signal with core dump.
|
|
|
|
BEGIN {
|
|
status = system("exit 42")
|
|
print "normal status", status
|
|
|
|
status = system("kill -HUP $$")
|
|
print "death by signal status", status
|
|
|
|
status = system("kill -ABRT $$")
|
|
print "death by signal with core dump status", status
|
|
|
|
system("rm -f core*")
|
|
}
|