Add gcc printf format attributes to yyerror() in parse.y files.
No yyerror() calls needed to be changed.

from doug@
convert the logic in yyerror().  Instead of creating a temporary format string, create a temporary message.

from bluhm@
Don't allow embedded nul characters in strings.

from jsg@
Merge branch 'master' into portable