David, Glenn, could you look at the following warnings gcc4.6 gave me
when I compiled ast-ksh.2012-02-29 with-Wclobbered?

The gcc man page defines -Wclobbered as
       -Wclobbered
           Warn for variables that might be changed by longjmp or
vfork.  This warning is also enabled by -Wextra.

Some of the warnings may be bogus but I bet there are at least 1 or 2
which present serious hazards and need to be protected using the C
volatile key word.

====================================
src/cmd/ksh93/bltins/getopts.c:60:13: warning: variable 'extended'
might be clobbered by 'longjmp' or 'vfork' [-Wclobbered]
src/cmd/ksh93/bltins/misc.c:216:19: warning: variable 'argsave' might
be clobbered by 'longjmp' or 'vfork' [-Wclobbered]
src/cmd/ksh93/bltins/read.c:204:46: warning: argument 'names' might be
clobbered by 'longjmp' or 'vfork' [-Wclobbered]
src/cmd/ksh93/bltins/read.c:204:57: warning: argument 'fd' might be
clobbered by 'longjmp' or 'vfork' [-Wclobbered]
src/cmd/ksh93/bltins/read.c:204:65: warning: argument 'flags' might be
clobbered by 'longjmp' or 'vfork' [-Wclobbered]
src/cmd/ksh93/bltins/read.c:208:21: warning: variable 'np' might be
clobbered by 'longjmp' or 'vfork' [-Wclobbered]
src/cmd/ksh93/bltins/read.c:209:18: warning: variable 'name' might be
clobbered by 'longjmp' or 'vfork' [-Wclobbered]
src/cmd/ksh93/bltins/read.c:210:20: warning: variable 'iop' might be
clobbered by 'longjmp' or 'vfork' [-Wclobbered]
src/cmd/ksh93/bltins/read.c:219:18: warning: variable 'keytrap' might
be clobbered by 'longjmp' or 'vfork' [-Wclobbered]
src/cmd/ksh93/bltins/read.c:222:8: warning: variable 'delim' might be
clobbered by 'longjmp' or 'vfork' [-Wclobbered]
src/cmd/ksh93/bltins/typeset.c:1128:56: warning: argument 'troot'
might be clobbered by 'longjmp' or 'vfork' [-Wclobbered]
src/cmd/ksh93/bltins/typeset.c:1132:15: warning: variable 'r' might be
clobbered by 'longjmp' or 'vfork' [-Wclobbered]
src/cmd/ksh93/edit/emacs.c:178:55: warning: argument 'scend' might be
clobbered by 'longjmp' or 'vfork' [-Wclobbered]
src/cmd/ksh93/edit/emacs.c:178:66: warning: argument 'reedit' might be
clobbered by 'longjmp' or 'vfork' [-Wclobbered]
src/cmd/ksh93/edit/emacs.c:185:20: warning: variable 'ep' might be
clobbered by 'longjmp' or 'vfork' [-Wclobbered]
src/cmd/ksh93/edit/vi.c:217:75: warning: argument 'reedit' might be
clobbered by 'longjmp' or 'vfork' [-Wclobbered]
src/cmd/ksh93/edit/vi.c:222:17: warning: variable 'vp' might be
clobbered by 'longjmp' or 'vfork' [-Wclobbered]
src/cmd/ksh93/sh/fault.c:449:14: warning: variable 'savxit' might be
clobbered by 'longjmp' or 'vfork' [-Wclobbered]
src/cmd/ksh93/sh/io.c:1686:27: warning: variable 'newfd' might be
clobbered by 'longjmp' or 'vfork' [-Wclobbered]
src/cmd/ksh93/sh/macro.c:134:45: warning: argument 'string' might be
clobbered by 'longjmp' or 'vfork' [-Wclobbered]
src/cmd/ksh93/sh/main.c:384:60: warning: argument 'iop' might be
clobbered by 'longjmp' or 'vfork' [-Wclobbered]
src/cmd/ksh93/sh/main.c:384:77: warning: argument 'fno' might be
clobbered by 'longjmp' or 'vfork' [-Wclobbered]
src/cmd/ksh93/sh/parse.c:742:21: warning: variable 't' might be
clobbered by 'longjmp' or 'vfork' [-Wclobbered]
src/cmd/ksh93/sh/parse.c:752:6: warning: variable 'nargs' might be
clobbered by 'longjmp' or 'vfork' [-Wclobbered]
src/cmd/ksh93/sh/subshell.c:458:51: warning: argument 'flags' might be
clobbered by 'longjmp' or 'vfork' [-Wclobbered]
src/cmd/ksh93/sh/xec.c:1199:20: warning: variable 'was_vi' might be
clobbered by 'longjmp' or 'vfork' [-Wclobbered]
src/cmd/ksh93/sh/xec.c:1199:30: warning: variable 'was_emacs' might be
clobbered by 'longjmp' or 'vfork' [-Wclobbered]
src/cmd/ksh93/sh/xec.c:1199:43: warning: variable 'was_gmacs' might be
clobbered by 'longjmp' or 'vfork' [-Wclobbered]
src/cmd/ksh93/sh/xec.c:1475:8: warning: variable 'no_fork' might be
clobbered by 'longjmp' or 'vfork' [-Wclobbered]
src/cmd/ksh93/sh/xec.c:1660:21: warning: variable 'buffp' might be
clobbered by 'longjmp' or 'vfork' [-Wclobbered]
src/cmd/ksh93/sh/xec.c:1780:10: warning: variable 'pid' might be
clobbered by 'longjmp' or 'vfork' [-Wclobbered]
src/cmd/ksh93/sh/xec.c:1783:20: warning: variable 'buffp' might be
clobbered by 'longjmp' or 'vfork' [-Wclobbered]
src/cmd/ksh93/sh/xec.c:2139:20: warning: variable 'buffp' might be
clobbered by 'longjmp' or 'vfork' [-Wclobbered]
src/cmd/ksh93/sh/xec.c:2273:20: warning: variable 'buffp' might be
clobbered by 'longjmp' or 'vfork' [-Wclobbered]
src/cmd/ksh93/sh/xec.c:3240:16: warning: variable 'nsig' might be
clobbered by 'longjmp' or 'vfork' [-Wclobbered]
src/cmd/ksh93/sh/xec.c:3248:11: warning: variable 'savstak' might be
clobbered by 'longjmp' or 'vfork' [-Wclobbered]
src/cmd/ksh93/sh/xec.c:3249:18: warning: variable 'fp' might be
clobbered by 'longjmp' or 'vfork' [-Wclobbered]
src/cmd/ksh93/sh/xec.c:3250:19: warning: variable 'buffp' might be
clobbered by 'longjmp' or 'vfork' [-Wclobbered]
src/cmd/ksh93/sh/xec.c:3463:46: warning: argument 'argv' might be
clobbered by 'longjmp' or 'vfork' [-Wclobbered]
src/cmd/ksh93/sh/xec.c:3472:6: warning: variable 'n' might be
clobbered by 'longjmp' or 'vfork' [-Wclobbered]
src/cmd/ksh93/sh/xec.c:3492:19: warning: variable 'buffp' might be
clobbered by 'longjmp' or 'vfork' [-Wclobbered]
src/cmd/ksh93/sh/xec.c:3678:18: warning: variable 'buffp' might be
clobbered by 'longjmp' or 'vfork' [-Wclobbered]
src/cmd/ksh93/sh/xec.c:3679:7: warning: variable 'otype' might be
clobbered by 'longjmp' or 'vfork' [-Wclobbered]
src/cmd/ksh93/sh/xec.c:544:39: warning: argument 'mode' might be
clobbered by 'longjmp' or 'vfork' [-Wclobbered]
src/cmd/ksh93/sh/xec.c:551:18: warning: variable 'buffp' might be
clobbered by 'longjmp' or 'vfork' [-Wclobbered]
src/cmd/ksh93/sh/xec.c:874:38: warning: argument 't' might be
clobbered by 'longjmp' or 'vfork' [-Wclobbered]
src/cmd/ksh93/sh/xec.c:882:18: warning: variable 'com0' might be
clobbered by 'longjmp' or 'vfork' [-Wclobbered]
src/cmd/ksh93/sh/xec.c:883:9: warning: variable 'errorflg' might be
clobbered by 'longjmp' or 'vfork' [-Wclobbered]
src/cmd/ksh93/sh/xec.c:884:9: warning: variable 'execflg' might be
clobbered by 'longjmp' or 'vfork' [-Wclobbered]
src/cmd/ksh93/sh/xec.c:894:18: warning: variable 'com' might be
clobbered by 'longjmp' or 'vfork' [-Wclobbered]
src/cmd/ksh93/sh/xec.c:897:8: warning: variable 'was_interactive'
might be clobbered by 'longjmp' or 'vfork' [-Wclobbered]
src/cmd/ksh93/sh/xec.c:900:8: warning: variable 'echeck' might be
clobbered by 'longjmp' or 'vfork' [-Wclobbered]
src/cmd/ksh93/sh/xec.c:930:9: warning: variable 'command' might be
clobbered by 'longjmp' or 'vfork' [-Wclobbered]
src/lib/libast/comp/spawnveg.c:156:60: warning: argument 'envv' might
be clobbered by 'longjmp' or 'vfork' [-Wclobbered]
src/lib/libast/comp/spawnveg.c:156:74: warning: argument 'pgid' might
be clobbered by 'longjmp' or 'vfork' [-Wclobbered]
src/lib/libast/comp/spawnveg.c:159:8: warning: variable 'n' might be
clobbered by 'longjmp' or 'vfork' [-Wclobbered]
====================================

Olga
-- 
      ,   _                                    _   ,
     { \/`o;====-    Olga Kryzhanovska   -====;o`\/ }
.----'-/`-/     [email protected]   \-`\-'----.
 `'-..-| /       http://twitter.com/fleyta     \ |-..-'`
      /\/\     Solaris/BSD//C/C++ programmer   /\/\
      `--`                                      `--`

_______________________________________________
ast-developers mailing list
[email protected]
https://mailman.research.att.com/mailman/listinfo/ast-developers

Reply via email to