ah, i see: if (radix == 10) return parse!Target(s); in Target parse(Target, Source)(ref Source s, uint radix)

it cheating a little and using 'general' decimal number parser, which accepts '+' and '-'. for other bases it uses another code though, where '+' and '-' threats as digits, which leads to error.

i think that it should either not accept sign in any radix, or accept always (given the resulting type is signed, of course). the later is much more logical if you'll ask me.

Reply via email to