And numerical positional flags will be ignored.
If the value is an empty string, a number conversion would give 0. It is unexpected
from the user standpoint ("--num=" has the user expect a string value).
If a flag is followed by an equal sign, just treat it as a long name. So
the example above would translate to --a=value, while -abc=123 would be
"-a -b -c=123".
Fixes#12308
--help now accepts a value which can be a boolean or a string. If the value
is not understood we simply show a message to the user that it was invalid.