FTP has a "feature" in it that allows one party to request that the FTP server send a file to another party, in effect acting as a proxy. This is really a vulnerability: if that feature is enabled on an internet-facing FTP server then that server could be used as a jumping off point for attacks on whatever the FTP server can connect to. This "feature" has long been deprecated and you're unlikely to find any FTP servers using it, although you never know.
When you use -b you are supposed to put the IP address of a vulnerable FTP server after the -b to act as a proxy. If you haven't put an IP address after it nmap won't have an FTP server to bounce through, so the option isn't used, so it would be silly to put -b without an IP address after.
If you have put an IP address after the -b, and the IP really is an FTP with bounce enabled, then the effect of the proxy would be to skew any OS fingerprinting so the results wouldn't be valid. Any OS fingerprinting done through any sort of proxy cannot be trusted, so using -O while using FTP bounce would also be silly.