]> gitweb.factorcode.org Git - factor.git/commitdiff
formatting: fix missing '+' for %+e with negative exponent
authorJon Harper <jon.harper87@gmail.com>
Sun, 26 Feb 2017 14:15:47 +0000 (15:15 +0100)
committerJohn Benediktsson <mrjbq7@gmail.com>
Thu, 8 Jun 2017 18:23:37 +0000 (11:23 -0700)
basis/formatting/formatting-tests.factor
basis/formatting/formatting.factor

index 8433ac5fe7b106c3480ac3bb80e794b2419e3827..0b1ff20a97635522df2b158ee3b6e51d2884aa1b 100755 (executable)
@@ -39,6 +39,7 @@ IN: formatting.tests
 { "  +1.0E+01" } [ 10 "%+10.1E" sprintf ] unit-test
 { "-001.0E+01" } [ -10 "%+010.1E" sprintf ] unit-test
 { "+001.0E+01" } [ 10 "%+010.1E" sprintf ] unit-test
+{ "+001.0E-01" } [ 0.1 "%+010.1E" sprintf ] unit-test
 
 { "ff" } [ 0xff "%x" sprintf ] unit-test
 { "FF" } [ 0xff "%X" sprintf ] unit-test
index f98d1a04e3e3d03c9759be43ce1033fc760265b4..5d811f7803e4c1bfd004925acb8ffc73989791d9 100644 (file)
@@ -47,7 +47,7 @@ pad-align = ("-")?               => [[ \ pad-tail \ pad-head ? ]]
 pad-width = ([0-9])*             => [[ >digits ]]
 pad       = pad-align pad-char pad-width => [[ <reversed> >quotation dup first 0 = [ drop [ ] ] when ]]
 
-sign_     = [+ ]                 => [[ '[ dup CHAR: - swap index [ _ prefix ] unless ] ]]
+sign_     = [+ ]                 => [[ '[ dup first CHAR: - = [ _ prefix ] unless ] ]]
 sign      = (sign_)?             => [[ [ ] or ]]
 
 width_    = "." ([0-9])*         => [[ second >digits '[ _ short head ] ]]