Both, since per standard it's undefined. (But Gawk's implementation makes
more sense, IMO. The shell builtins of ksh/bash/zsh behave similarly, BTW.
/usr/bin/printf complains about that conversion specifier combination in
context of %s, but not in context of %d.)
If your intention is to pad leading zeroes to numbers use %d instead of %s.
Janis