In the en_US locale on Windows, negative currency amounts is formatted
as "($0.01)" instead of "-$0.01".
This is the same issue as D120798, but with a different fix strategy.
To avoid excessive amounts of ifdefs to get the right string form for
each of them, just ifdef out groups of tests that test negative values.
(This keeps the number of ifdefs needed more reasonable, as there's 2-3
strings per ifdef in this case.)
Alternatively, we could just keep the XFAIL without the FIXME part and
conclude that this is known to be different and we don't want the churn
to fix it.
Could this go in LocaleHelpers instead? Or would that be problematic because the behavior depends on the specific locale too? (Or is that a good thing because it indicates that this function should actually be named currency_negate_en_US or something?)
Worth thinking about, but IMHO not worth my blocking this PR over. :)