r329269 seems broke the parsing rule of -S flag, try to fix it and keep the new style.
BTW, if the style in old version (r325834) is acceptable, maybe we should just revert this part to keep the code concise.
Found by gcc build: (this actually a false positive but I found the bug while checking it.)
/workspace/src/stand/i386/boot2/boot2.c:395:16: error: 'i' may be used uninitialized in this function [-Werror=maybe-uninitialized] if (j > 0 && i == -'0') { ~~~~~~^~~~~~~~~~~~