function testformat(expected, template, ...) local t = {...} testCall("string.format: " .. template, function() local output = string.format(template, unpack(t)) local inputs = "" for i = 1, #t do inputs = string.format("%s, %q", inputs, t[i]) end local msg = string.format("string.format(%q%s) == %q, expected %q", template, inputs, output, expected) assert(output == expected, msg) end) end --Testing widths testformat("0.000000e+00", "%e", "0") testformat("-0.000000e+00", "%e", "-0") testformat("1.000000e+00", "%e", "1") testformat("-1.000000e+00", "%e", "-1") testformat("1.230000e+02", "%e", "123") testformat("-1.230000e+02", "%e", "-123") testformat("1.234560e+02", "%e", "123.456") testformat("-1.234560e+02", "%e", "-123.456") testformat("1.234568e+07", "%e", "12345678") testformat("-1.234568e+07", "%e", "-12345678") testformat("1.234560e-12", "%e", "0.00000000000123456") testformat("-1.234560e-12", "%e", "-0.00000000000123456") testformat("1.234560e-01", "%e", "0.123456") testformat("-1.234560e-01", "%e", "-0.123456") testformat("1.000000e-05", "%e", "0.00001") testformat("-1.000000e-05", "%e", "-0.00001") testformat("9.900000e-01", "%e", "0.99") testformat("-9.900000e-01", "%e", "-0.99") testformat("2.500000e+00", "%e", "2.5") testformat("-2.500000e+00", "%e", "-2.5") testformat("3.500000e+00", "%e", "3.5") testformat("-3.500000e+00", "%e", "-3.5") testformat("nan", "%e", "nan") testformat("nan", "%e", "-nan") testformat("inf", "%e", "inf") testformat("-inf", "%e", "-inf") testformat("0.000000e+00", "%1e", "0") testformat("-0.000000e+00", "%1e", "-0") testformat("1.000000e+00", "%1e", "1") testformat("-1.000000e+00", "%1e", "-1") testformat("1.230000e+02", "%1e", "123") testformat("-1.230000e+02", "%1e", "-123") testformat("1.234560e+02", "%1e", "123.456") testformat("-1.234560e+02", "%1e", "-123.456") testformat("1.234568e+07", "%1e", "12345678") testformat("-1.234568e+07", "%1e", "-12345678") testformat("1.234560e-12", "%1e", "0.00000000000123456") testformat("-1.234560e-12", "%1e", "-0.00000000000123456") testformat("1.234560e-01", "%1e", "0.123456") testformat("-1.234560e-01", "%1e", "-0.123456") testformat("1.000000e-05", "%1e", "0.00001") testformat("-1.000000e-05", "%1e", "-0.00001") testformat("9.900000e-01", "%1e", "0.99") testformat("-9.900000e-01", "%1e", "-0.99") testformat("2.500000e+00", "%1e", "2.5") testformat("-2.500000e+00", "%1e", "-2.5") testformat("3.500000e+00", "%1e", "3.5") testformat("-3.500000e+00", "%1e", "-3.5") testformat("nan", "%1e", "nan") testformat("nan", "%1e", "-nan") testformat("inf", "%1e", "inf") testformat("-inf", "%1e", "-inf") testformat("0.000000e+00", "%2e", "0") testformat("-0.000000e+00", "%2e", "-0") testformat("1.000000e+00", "%2e", "1") testformat("-1.000000e+00", "%2e", "-1") testformat("1.230000e+02", "%2e", "123") testformat("-1.230000e+02", "%2e", "-123") testformat("1.234560e+02", "%2e", "123.456") testformat("-1.234560e+02", "%2e", "-123.456") testformat("1.234568e+07", "%2e", "12345678") testformat("-1.234568e+07", "%2e", "-12345678") testformat("1.234560e-12", "%2e", "0.00000000000123456") testformat("-1.234560e-12", "%2e", "-0.00000000000123456") testformat("1.234560e-01", "%2e", "0.123456") testformat("-1.234560e-01", "%2e", "-0.123456") testformat("1.000000e-05", "%2e", "0.00001") testformat("-1.000000e-05", "%2e", "-0.00001") testformat("9.900000e-01", "%2e", "0.99") testformat("-9.900000e-01", "%2e", "-0.99") testformat("2.500000e+00", "%2e", "2.5") testformat("-2.500000e+00", "%2e", "-2.5") testformat("3.500000e+00", "%2e", "3.5") testformat("-3.500000e+00", "%2e", "-3.5") testformat("nan", "%2e", "nan") testformat("nan", "%2e", "-nan") testformat("inf", "%2e", "inf") testformat("-inf", "%2e", "-inf") testformat("0.000000e+00", "%6e", "0") testformat("-0.000000e+00", "%6e", "-0") testformat("1.000000e+00", "%6e", "1") testformat("-1.000000e+00", "%6e", "-1") testformat("1.230000e+02", "%6e", "123") testformat("-1.230000e+02", "%6e", "-123") testformat("1.234560e+02", "%6e", "123.456") testformat("-1.234560e+02", "%6e", "-123.456") testformat("1.234568e+07", "%6e", "12345678") testformat("-1.234568e+07", "%6e", "-12345678") testformat("1.234560e-12", "%6e", "0.00000000000123456") testformat("-1.234560e-12", "%6e", "-0.00000000000123456") testformat("1.234560e-01", "%6e", "0.123456") testformat("-1.234560e-01", "%6e", "-0.123456") testformat("1.000000e-05", "%6e", "0.00001") testformat("-1.000000e-05", "%6e", "-0.00001") testformat("9.900000e-01", "%6e", "0.99") testformat("-9.900000e-01", "%6e", "-0.99") testformat("2.500000e+00", "%6e", "2.5") testformat("-2.500000e+00", "%6e", "-2.5") testformat("3.500000e+00", "%6e", "3.5") testformat("-3.500000e+00", "%6e", "-3.5") testformat(" nan", "%6e", "nan") testformat(" nan", "%6e", "-nan") testformat(" inf", "%6e", "inf") testformat(" -inf", "%6e", "-inf") testformat(" 0.000000e+00", "%50e", "0") testformat(" -0.000000e+00", "%50e", "-0") testformat(" 1.000000e+00", "%50e", "1") testformat(" -1.000000e+00", "%50e", "-1") testformat(" 1.230000e+02", "%50e", "123") testformat(" -1.230000e+02", "%50e", "-123") testformat(" 1.234560e+02", "%50e", "123.456") testformat(" -1.234560e+02", "%50e", "-123.456") testformat(" 1.234568e+07", "%50e", "12345678") testformat(" -1.234568e+07", "%50e", "-12345678") testformat(" 1.234560e-12", "%50e", "0.00000000000123456") testformat(" -1.234560e-12", "%50e", "-0.00000000000123456") testformat(" 1.234560e-01", "%50e", "0.123456") testformat(" -1.234560e-01", "%50e", "-0.123456") testformat(" 1.000000e-05", "%50e", "0.00001") testformat(" -1.000000e-05", "%50e", "-0.00001") testformat(" 9.900000e-01", "%50e", "0.99") testformat(" -9.900000e-01", "%50e", "-0.99") testformat(" 2.500000e+00", "%50e", "2.5") testformat(" -2.500000e+00", "%50e", "-2.5") testformat(" 3.500000e+00", "%50e", "3.5") testformat(" -3.500000e+00", "%50e", "-3.5") testformat(" nan", "%50e", "nan") testformat(" nan", "%50e", "-nan") testformat(" inf", "%50e", "inf") testformat(" -inf", "%50e", "-inf") --Testing precisions testformat("0.000000", "%f", "0") testformat("-0.000000", "%f", "-0") testformat("0.000000e+00", "%e", "0") testformat("-0.000000e+00", "%e", "-0") testformat("0", "%g", "0") testformat("-0", "%g", "-0") testformat("1.000000", "%f", "1") testformat("-1.000000", "%f", "-1") testformat("1.000000e+00", "%e", "1") testformat("-1.000000e+00", "%e", "-1") testformat("1", "%g", "1") testformat("-1", "%g", "-1") testformat("123.000000", "%f", "123") testformat("-123.000000", "%f", "-123") testformat("1.230000e+02", "%e", "123") testformat("-1.230000e+02", "%e", "-123") testformat("123", "%g", "123") testformat("-123", "%g", "-123") testformat("123.456000", "%f", "123.456") testformat("-123.456000", "%f", "-123.456") testformat("1.234560e+02", "%e", "123.456") testformat("-1.234560e+02", "%e", "-123.456") testformat("123.456", "%g", "123.456") testformat("-123.456", "%g", "-123.456") testformat("12345678.000000", "%f", "12345678") testformat("-12345678.000000", "%f", "-12345678") testformat("1.234568e+07", "%e", "12345678") testformat("-1.234568e+07", "%e", "-12345678") testformat("1.23457e+07", "%g", "12345678") testformat("-1.23457e+07", "%g", "-12345678") testformat("0.000000", "%f", "0.00000000000123456") testformat("-0.000000", "%f", "-0.00000000000123456") testformat("1.234560e-12", "%e", "0.00000000000123456") testformat("-1.234560e-12", "%e", "-0.00000000000123456") testformat("1.23456e-12", "%g", "0.00000000000123456") testformat("-1.23456e-12", "%g", "-0.00000000000123456") testformat("0.123456", "%f", "0.123456") testformat("-0.123456", "%f", "-0.123456") testformat("1.234560e-01", "%e", "0.123456") testformat("-1.234560e-01", "%e", "-0.123456") testformat("0.123456", "%g", "0.123456") testformat("-0.123456", "%g", "-0.123456") testformat("0.000010", "%f", "0.00001") testformat("-0.000010", "%f", "-0.00001") testformat("1.000000e-05", "%e", "0.00001") testformat("-1.000000e-05", "%e", "-0.00001") testformat("1e-05", "%g", "0.00001") testformat("-1e-05", "%g", "-0.00001") testformat("0.990000", "%f", "0.99") testformat("-0.990000", "%f", "-0.99") testformat("9.900000e-01", "%e", "0.99") testformat("-9.900000e-01", "%e", "-0.99") testformat("0.99", "%g", "0.99") testformat("-0.99", "%g", "-0.99") testformat("2.500000", "%f", "2.5") testformat("-2.500000", "%f", "-2.5") testformat("2.500000e+00", "%e", "2.5") testformat("-2.500000e+00", "%e", "-2.5") testformat("2.5", "%g", "2.5") testformat("-2.5", "%g", "-2.5") testformat("3.500000", "%f", "3.5") testformat("-3.500000", "%f", "-3.5") testformat("3.500000e+00", "%e", "3.5") testformat("-3.500000e+00", "%e", "-3.5") testformat("3.5", "%g", "3.5") testformat("-3.5", "%g", "-3.5") testformat("nan", "%f", "nan") testformat("nan", "%f", "-nan") testformat("nan", "%e", "nan") testformat("nan", "%e", "-nan") testformat("nan", "%g", "nan") testformat("nan", "%g", "-nan") testformat("inf", "%f", "inf") testformat("-inf", "%f", "-inf") testformat("inf", "%e", "inf") testformat("-inf", "%e", "-inf") testformat("inf", "%g", "inf") testformat("-inf", "%g", "-inf") testformat("0", "%.f", "0") testformat("-0", "%.f", "-0") testformat("0e+00", "%.e", "0") testformat("-0e+00", "%.e", "-0") testformat("0", "%.g", "0") testformat("-0", "%.g", "-0") testformat("1", "%.f", "1") testformat("-1", "%.f", "-1") testformat("1e+00", "%.e", "1") testformat("-1e+00", "%.e", "-1") testformat("1", "%.g", "1") testformat("-1", "%.g", "-1") testformat("123", "%.f", "123") testformat("-123", "%.f", "-123") testformat("1e+02", "%.e", "123") testformat("-1e+02", "%.e", "-123") testformat("1e+02", "%.g", "123") testformat("-1e+02", "%.g", "-123") testformat("123", "%.f", "123.456") testformat("-123", "%.f", "-123.456") testformat("1e+02", "%.e", "123.456") testformat("-1e+02", "%.e", "-123.456") testformat("1e+02", "%.g", "123.456") testformat("-1e+02", "%.g", "-123.456") testformat("12345678", "%.f", "12345678") testformat("-12345678", "%.f", "-12345678") testformat("1e+07", "%.e", "12345678") testformat("-1e+07", "%.e", "-12345678") testformat("1e+07", "%.g", "12345678") testformat("-1e+07", "%.g", "-12345678") testformat("0", "%.f", "0.00000000000123456") testformat("-0", "%.f", "-0.00000000000123456") testformat("1e-12", "%.e", "0.00000000000123456") testformat("-1e-12", "%.e", "-0.00000000000123456") testformat("1e-12", "%.g", "0.00000000000123456") testformat("-1e-12", "%.g", "-0.00000000000123456") testformat("0", "%.f", "0.123456") testformat("-0", "%.f", "-0.123456") testformat("1e-01", "%.e", "0.123456") testformat("-1e-01", "%.e", "-0.123456") testformat("0.1", "%.g", "0.123456") testformat("-0.1", "%.g", "-0.123456") testformat("0", "%.f", "0.00001") testformat("-0", "%.f", "-0.00001") testformat("1e-05", "%.e", "0.00001") testformat("-1e-05", "%.e", "-0.00001") testformat("1e-05", "%.g", "0.00001") testformat("-1e-05", "%.g", "-0.00001") testformat("1", "%.f", "0.99") testformat("-1", "%.f", "-0.99") testformat("1e+00", "%.e", "0.99") testformat("-1e+00", "%.e", "-0.99") testformat("1", "%.g", "0.99") testformat("-1", "%.g", "-0.99") testformat("2", "%.f", "2.5") testformat("-2", "%.f", "-2.5") testformat("2e+00", "%.e", "2.5") testformat("-2e+00", "%.e", "-2.5") testformat("2", "%.g", "2.5") testformat("-2", "%.g", "-2.5") testformat("4", "%.f", "3.5") testformat("-4", "%.f", "-3.5") testformat("4e+00", "%.e", "3.5") testformat("-4e+00", "%.e", "-3.5") testformat("4", "%.g", "3.5") testformat("-4", "%.g", "-3.5") testformat("nan", "%.f", "nan") testformat("nan", "%.f", "-nan") testformat("nan", "%.e", "nan") testformat("nan", "%.e", "-nan") testformat("nan", "%.g", "nan") testformat("nan", "%.g", "-nan") testformat("inf", "%.f", "inf") testformat("-inf", "%.f", "-inf") testformat("inf", "%.e", "inf") testformat("-inf", "%.e", "-inf") testformat("inf", "%.g", "inf") testformat("-inf", "%.g", "-inf") testformat("0", "%.0f", "0") testformat("-0", "%.0f", "-0") testformat("0e+00", "%.0e", "0") testformat("-0e+00", "%.0e", "-0") testformat("0", "%.0g", "0") testformat("-0", "%.0g", "-0") testformat("1", "%.0f", "1") testformat("-1", "%.0f", "-1") testformat("1e+00", "%.0e", "1") testformat("-1e+00", "%.0e", "-1") testformat("1", "%.0g", "1") testformat("-1", "%.0g", "-1") testformat("123", "%.0f", "123") testformat("-123", "%.0f", "-123") testformat("1e+02", "%.0e", "123") testformat("-1e+02", "%.0e", "-123") testformat("1e+02", "%.0g", "123") testformat("-1e+02", "%.0g", "-123") testformat("123", "%.0f", "123.456") testformat("-123", "%.0f", "-123.456") testformat("1e+02", "%.0e", "123.456") testformat("-1e+02", "%.0e", "-123.456") testformat("1e+02", "%.0g", "123.456") testformat("-1e+02", "%.0g", "-123.456") testformat("12345678", "%.0f", "12345678") testformat("-12345678", "%.0f", "-12345678") testformat("1e+07", "%.0e", "12345678") testformat("-1e+07", "%.0e", "-12345678") testformat("1e+07", "%.0g", "12345678") testformat("-1e+07", "%.0g", "-12345678") testformat("0", "%.0f", "0.00000000000123456") testformat("-0", "%.0f", "-0.00000000000123456") testformat("1e-12", "%.0e", "0.00000000000123456") testformat("-1e-12", "%.0e", "-0.00000000000123456") testformat("1e-12", "%.0g", "0.00000000000123456") testformat("-1e-12", "%.0g", "-0.00000000000123456") testformat("0", "%.0f", "0.123456") testformat("-0", "%.0f", "-0.123456") testformat("1e-01", "%.0e", "0.123456") testformat("-1e-01", "%.0e", "-0.123456") testformat("0.1", "%.0g", "0.123456") testformat("-0.1", "%.0g", "-0.123456") testformat("0", "%.0f", "0.00001") testformat("-0", "%.0f", "-0.00001") testformat("1e-05", "%.0e", "0.00001") testformat("-1e-05", "%.0e", "-0.00001") testformat("1e-05", "%.0g", "0.00001") testformat("-1e-05", "%.0g", "-0.00001") testformat("1", "%.0f", "0.99") testformat("-1", "%.0f", "-0.99") testformat("1e+00", "%.0e", "0.99") testformat("-1e+00", "%.0e", "-0.99") testformat("1", "%.0g", "0.99") testformat("-1", "%.0g", "-0.99") testformat("2", "%.0f", "2.5") testformat("-2", "%.0f", "-2.5") testformat("2e+00", "%.0e", "2.5") testformat("-2e+00", "%.0e", "-2.5") testformat("2", "%.0g", "2.5") testformat("-2", "%.0g", "-2.5") testformat("4", "%.0f", "3.5") testformat("-4", "%.0f", "-3.5") testformat("4e+00", "%.0e", "3.5") testformat("-4e+00", "%.0e", "-3.5") testformat("4", "%.0g", "3.5") testformat("-4", "%.0g", "-3.5") testformat("nan", "%.0f", "nan") testformat("nan", "%.0f", "-nan") testformat("nan", "%.0e", "nan") testformat("nan", "%.0e", "-nan") testformat("nan", "%.0g", "nan") testformat("nan", "%.0g", "-nan") testformat("inf", "%.0f", "inf") testformat("-inf", "%.0f", "-inf") testformat("inf", "%.0e", "inf") testformat("-inf", "%.0e", "-inf") testformat("inf", "%.0g", "inf") testformat("-inf", "%.0g", "-inf") testformat("0.0", "%.1f", "0") testformat("-0.0", "%.1f", "-0") testformat("0.0e+00", "%.1e", "0") testformat("-0.0e+00", "%.1e", "-0") testformat("0", "%.1g", "0") testformat("-0", "%.1g", "-0") testformat("1.0", "%.1f", "1") testformat("-1.0", "%.1f", "-1") testformat("1.0e+00", "%.1e", "1") testformat("-1.0e+00", "%.1e", "-1") testformat("1", "%.1g", "1") testformat("-1", "%.1g", "-1") testformat("123.0", "%.1f", "123") testformat("-123.0", "%.1f", "-123") testformat("1.2e+02", "%.1e", "123") testformat("-1.2e+02", "%.1e", "-123") testformat("1e+02", "%.1g", "123") testformat("-1e+02", "%.1g", "-123") testformat("123.5", "%.1f", "123.456") testformat("-123.5", "%.1f", "-123.456") testformat("1.2e+02", "%.1e", "123.456") testformat("-1.2e+02", "%.1e", "-123.456") testformat("1e+02", "%.1g", "123.456") testformat("-1e+02", "%.1g", "-123.456") testformat("12345678.0", "%.1f", "12345678") testformat("-12345678.0", "%.1f", "-12345678") testformat("1.2e+07", "%.1e", "12345678") testformat("-1.2e+07", "%.1e", "-12345678") testformat("1e+07", "%.1g", "12345678") testformat("-1e+07", "%.1g", "-12345678") testformat("0.0", "%.1f", "0.00000000000123456") testformat("-0.0", "%.1f", "-0.00000000000123456") testformat("1.2e-12", "%.1e", "0.00000000000123456") testformat("-1.2e-12", "%.1e", "-0.00000000000123456") testformat("1e-12", "%.1g", "0.00000000000123456") testformat("-1e-12", "%.1g", "-0.00000000000123456") testformat("0.1", "%.1f", "0.123456") testformat("-0.1", "%.1f", "-0.123456") testformat("1.2e-01", "%.1e", "0.123456") testformat("-1.2e-01", "%.1e", "-0.123456") testformat("0.1", "%.1g", "0.123456") testformat("-0.1", "%.1g", "-0.123456") testformat("0.0", "%.1f", "0.00001") testformat("-0.0", "%.1f", "-0.00001") testformat("1.0e-05", "%.1e", "0.00001") testformat("-1.0e-05", "%.1e", "-0.00001") testformat("1e-05", "%.1g", "0.00001") testformat("-1e-05", "%.1g", "-0.00001") testformat("1.0", "%.1f", "0.99") testformat("-1.0", "%.1f", "-0.99") testformat("9.9e-01", "%.1e", "0.99") testformat("-9.9e-01", "%.1e", "-0.99") testformat("1", "%.1g", "0.99") testformat("-1", "%.1g", "-0.99") testformat("2.5", "%.1f", "2.5") testformat("-2.5", "%.1f", "-2.5") testformat("2.5e+00", "%.1e", "2.5") testformat("-2.5e+00", "%.1e", "-2.5") testformat("2", "%.1g", "2.5") testformat("-2", "%.1g", "-2.5") testformat("3.5", "%.1f", "3.5") testformat("-3.5", "%.1f", "-3.5") testformat("3.5e+00", "%.1e", "3.5") testformat("-3.5e+00", "%.1e", "-3.5") testformat("4", "%.1g", "3.5") testformat("-4", "%.1g", "-3.5") testformat("nan", "%.1f", "nan") testformat("nan", "%.1f", "-nan") testformat("nan", "%.1e", "nan") testformat("nan", "%.1e", "-nan") testformat("nan", "%.1g", "nan") testformat("nan", "%.1g", "-nan") testformat("inf", "%.1f", "inf") testformat("-inf", "%.1f", "-inf") testformat("inf", "%.1e", "inf") testformat("-inf", "%.1e", "-inf") testformat("inf", "%.1g", "inf") testformat("-inf", "%.1g", "-inf") testformat("0.00", "%.2f", "0") testformat("-0.00", "%.2f", "-0") testformat("0.00e+00", "%.2e", "0") testformat("-0.00e+00", "%.2e", "-0") testformat("0", "%.2g", "0") testformat("-0", "%.2g", "-0") testformat("1.00", "%.2f", "1") testformat("-1.00", "%.2f", "-1") testformat("1.00e+00", "%.2e", "1") testformat("-1.00e+00", "%.2e", "-1") testformat("1", "%.2g", "1") testformat("-1", "%.2g", "-1") testformat("123.00", "%.2f", "123") testformat("-123.00", "%.2f", "-123") testformat("1.23e+02", "%.2e", "123") testformat("-1.23e+02", "%.2e", "-123") testformat("1.2e+02", "%.2g", "123") testformat("-1.2e+02", "%.2g", "-123") testformat("123.46", "%.2f", "123.456") testformat("-123.46", "%.2f", "-123.456") testformat("1.23e+02", "%.2e", "123.456") testformat("-1.23e+02", "%.2e", "-123.456") testformat("1.2e+02", "%.2g", "123.456") testformat("-1.2e+02", "%.2g", "-123.456") testformat("12345678.00", "%.2f", "12345678") testformat("-12345678.00", "%.2f", "-12345678") testformat("1.23e+07", "%.2e", "12345678") testformat("-1.23e+07", "%.2e", "-12345678") testformat("1.2e+07", "%.2g", "12345678") testformat("-1.2e+07", "%.2g", "-12345678") testformat("0.00", "%.2f", "0.00000000000123456") testformat("-0.00", "%.2f", "-0.00000000000123456") testformat("1.23e-12", "%.2e", "0.00000000000123456") testformat("-1.23e-12", "%.2e", "-0.00000000000123456") testformat("1.2e-12", "%.2g", "0.00000000000123456") testformat("-1.2e-12", "%.2g", "-0.00000000000123456") testformat("0.12", "%.2f", "0.123456") testformat("-0.12", "%.2f", "-0.123456") testformat("1.23e-01", "%.2e", "0.123456") testformat("-1.23e-01", "%.2e", "-0.123456") testformat("0.12", "%.2g", "0.123456") testformat("-0.12", "%.2g", "-0.123456") testformat("0.00", "%.2f", "0.00001") testformat("-0.00", "%.2f", "-0.00001") testformat("1.00e-05", "%.2e", "0.00001") testformat("-1.00e-05", "%.2e", "-0.00001") testformat("1e-05", "%.2g", "0.00001") testformat("-1e-05", "%.2g", "-0.00001") testformat("0.99", "%.2f", "0.99") testformat("-0.99", "%.2f", "-0.99") testformat("9.90e-01", "%.2e", "0.99") testformat("-9.90e-01", "%.2e", "-0.99") testformat("0.99", "%.2g", "0.99") testformat("-0.99", "%.2g", "-0.99") testformat("2.50", "%.2f", "2.5") testformat("-2.50", "%.2f", "-2.5") testformat("2.50e+00", "%.2e", "2.5") testformat("-2.50e+00", "%.2e", "-2.5") testformat("2.5", "%.2g", "2.5") testformat("-2.5", "%.2g", "-2.5") testformat("3.50", "%.2f", "3.5") testformat("-3.50", "%.2f", "-3.5") testformat("3.50e+00", "%.2e", "3.5") testformat("-3.50e+00", "%.2e", "-3.5") testformat("3.5", "%.2g", "3.5") testformat("-3.5", "%.2g", "-3.5") testformat("nan", "%.2f", "nan") testformat("nan", "%.2f", "-nan") testformat("nan", "%.2e", "nan") testformat("nan", "%.2e", "-nan") testformat("nan", "%.2g", "nan") testformat("nan", "%.2g", "-nan") testformat("inf", "%.2f", "inf") testformat("-inf", "%.2f", "-inf") testformat("inf", "%.2e", "inf") testformat("-inf", "%.2e", "-inf") testformat("inf", "%.2g", "inf") testformat("-inf", "%.2g", "-inf") testformat("0.000000", "%.6f", "0") testformat("-0.000000", "%.6f", "-0") testformat("0.000000e+00", "%.6e", "0") testformat("-0.000000e+00", "%.6e", "-0") testformat("0", "%.6g", "0") testformat("-0", "%.6g", "-0") testformat("1.000000", "%.6f", "1") testformat("-1.000000", "%.6f", "-1") testformat("1.000000e+00", "%.6e", "1") testformat("-1.000000e+00", "%.6e", "-1") testformat("1", "%.6g", "1") testformat("-1", "%.6g", "-1") testformat("123.000000", "%.6f", "123") testformat("-123.000000", "%.6f", "-123") testformat("1.230000e+02", "%.6e", "123") testformat("-1.230000e+02", "%.6e", "-123") testformat("123", "%.6g", "123") testformat("-123", "%.6g", "-123") testformat("123.456000", "%.6f", "123.456") testformat("-123.456000", "%.6f", "-123.456") testformat("1.234560e+02", "%.6e", "123.456") testformat("-1.234560e+02", "%.6e", "-123.456") testformat("123.456", "%.6g", "123.456") testformat("-123.456", "%.6g", "-123.456") testformat("12345678.000000", "%.6f", "12345678") testformat("-12345678.000000", "%.6f", "-12345678") testformat("1.234568e+07", "%.6e", "12345678") testformat("-1.234568e+07", "%.6e", "-12345678") testformat("1.23457e+07", "%.6g", "12345678") testformat("-1.23457e+07", "%.6g", "-12345678") testformat("0.000000", "%.6f", "0.00000000000123456") testformat("-0.000000", "%.6f", "-0.00000000000123456") testformat("1.234560e-12", "%.6e", "0.00000000000123456") testformat("-1.234560e-12", "%.6e", "-0.00000000000123456") testformat("1.23456e-12", "%.6g", "0.00000000000123456") testformat("-1.23456e-12", "%.6g", "-0.00000000000123456") testformat("0.123456", "%.6f", "0.123456") testformat("-0.123456", "%.6f", "-0.123456") testformat("1.234560e-01", "%.6e", "0.123456") testformat("-1.234560e-01", "%.6e", "-0.123456") testformat("0.123456", "%.6g", "0.123456") testformat("-0.123456", "%.6g", "-0.123456") testformat("0.000010", "%.6f", "0.00001") testformat("-0.000010", "%.6f", "-0.00001") testformat("1.000000e-05", "%.6e", "0.00001") testformat("-1.000000e-05", "%.6e", "-0.00001") testformat("1e-05", "%.6g", "0.00001") testformat("-1e-05", "%.6g", "-0.00001") testformat("0.990000", "%.6f", "0.99") testformat("-0.990000", "%.6f", "-0.99") testformat("9.900000e-01", "%.6e", "0.99") testformat("-9.900000e-01", "%.6e", "-0.99") testformat("0.99", "%.6g", "0.99") testformat("-0.99", "%.6g", "-0.99") testformat("2.500000", "%.6f", "2.5") testformat("-2.500000", "%.6f", "-2.5") testformat("2.500000e+00", "%.6e", "2.5") testformat("-2.500000e+00", "%.6e", "-2.5") testformat("2.5", "%.6g", "2.5") testformat("-2.5", "%.6g", "-2.5") testformat("3.500000", "%.6f", "3.5") testformat("-3.500000", "%.6f", "-3.5") testformat("3.500000e+00", "%.6e", "3.5") testformat("-3.500000e+00", "%.6e", "-3.5") testformat("3.5", "%.6g", "3.5") testformat("-3.5", "%.6g", "-3.5") testformat("nan", "%.6f", "nan") testformat("nan", "%.6f", "-nan") testformat("nan", "%.6e", "nan") testformat("nan", "%.6e", "-nan") testformat("nan", "%.6g", "nan") testformat("nan", "%.6g", "-nan") testformat("inf", "%.6f", "inf") testformat("-inf", "%.6f", "-inf") testformat("inf", "%.6e", "inf") testformat("-inf", "%.6e", "-inf") testformat("inf", "%.6g", "inf") testformat("-inf", "%.6g", "-inf") testformat("0.0000000000", "%.10f", "0") testformat("-0.0000000000", "%.10f", "-0") testformat("0.0000000000e+00", "%.10e", "0") testformat("-0.0000000000e+00", "%.10e", "-0") testformat("0", "%.10g", "0") testformat("-0", "%.10g", "-0") testformat("1.0000000000", "%.10f", "1") testformat("-1.0000000000", "%.10f", "-1") testformat("1.0000000000e+00", "%.10e", "1") testformat("-1.0000000000e+00", "%.10e", "-1") testformat("1", "%.10g", "1") testformat("-1", "%.10g", "-1") testformat("123.0000000000", "%.10f", "123") testformat("-123.0000000000", "%.10f", "-123") testformat("1.2300000000e+02", "%.10e", "123") testformat("-1.2300000000e+02", "%.10e", "-123") testformat("123", "%.10g", "123") testformat("-123", "%.10g", "-123") testformat("123.4560000000", "%.10f", "123.456") testformat("-123.4560000000", "%.10f", "-123.456") testformat("1.2345600000e+02", "%.10e", "123.456") testformat("-1.2345600000e+02", "%.10e", "-123.456") testformat("123.456", "%.10g", "123.456") testformat("-123.456", "%.10g", "-123.456") testformat("12345678.0000000000", "%.10f", "12345678") testformat("-12345678.0000000000", "%.10f", "-12345678") testformat("1.2345678000e+07", "%.10e", "12345678") testformat("-1.2345678000e+07", "%.10e", "-12345678") testformat("12345678", "%.10g", "12345678") testformat("-12345678", "%.10g", "-12345678") testformat("0.0000000000", "%.10f", "0.00000000000123456") testformat("-0.0000000000", "%.10f", "-0.00000000000123456") testformat("1.2345600000e-12", "%.10e", "0.00000000000123456") testformat("-1.2345600000e-12", "%.10e", "-0.00000000000123456") testformat("1.23456e-12", "%.10g", "0.00000000000123456") testformat("-1.23456e-12", "%.10g", "-0.00000000000123456") testformat("0.1234560000", "%.10f", "0.123456") testformat("-0.1234560000", "%.10f", "-0.123456") testformat("1.2345600000e-01", "%.10e", "0.123456") testformat("-1.2345600000e-01", "%.10e", "-0.123456") testformat("0.123456", "%.10g", "0.123456") testformat("-0.123456", "%.10g", "-0.123456") testformat("0.0000100000", "%.10f", "0.00001") testformat("-0.0000100000", "%.10f", "-0.00001") testformat("1.0000000000e-05", "%.10e", "0.00001") testformat("-1.0000000000e-05", "%.10e", "-0.00001") testformat("1e-05", "%.10g", "0.00001") testformat("-1e-05", "%.10g", "-0.00001") testformat("0.9900000000", "%.10f", "0.99") testformat("-0.9900000000", "%.10f", "-0.99") testformat("9.9000000000e-01", "%.10e", "0.99") testformat("-9.9000000000e-01", "%.10e", "-0.99") testformat("0.99", "%.10g", "0.99") testformat("-0.99", "%.10g", "-0.99") testformat("2.5000000000", "%.10f", "2.5") testformat("-2.5000000000", "%.10f", "-2.5") testformat("2.5000000000e+00", "%.10e", "2.5") testformat("-2.5000000000e+00", "%.10e", "-2.5") testformat("2.5", "%.10g", "2.5") testformat("-2.5", "%.10g", "-2.5") testformat("3.5000000000", "%.10f", "3.5") testformat("-3.5000000000", "%.10f", "-3.5") testformat("3.5000000000e+00", "%.10e", "3.5") testformat("-3.5000000000e+00", "%.10e", "-3.5") testformat("3.5", "%.10g", "3.5") testformat("-3.5", "%.10g", "-3.5") testformat("nan", "%.10f", "nan") testformat("nan", "%.10f", "-nan") testformat("nan", "%.10e", "nan") testformat("nan", "%.10e", "-nan") testformat("nan", "%.10g", "nan") testformat("nan", "%.10g", "-nan") testformat("inf", "%.10f", "inf") testformat("-inf", "%.10f", "-inf") testformat("inf", "%.10e", "inf") testformat("-inf", "%.10e", "-inf") testformat("inf", "%.10g", "inf") testformat("-inf", "%.10g", "-inf") --Testing %d testformat("0", "%d", "0") testformat("0", "%d", "-0") testformat("1", "%d", "1") testformat("-1", "%d", "-1") testformat("123", "%d", "123") testformat("-123", "%d", "-123") testformat("123", "%d", "123.456") testformat("-123", "%d", "-123.456") testformat("12345678", "%d", "12345678") testformat("-12345678", "%d", "-12345678") testformat("0", "%d", "0.00000000000123456") testformat("0", "%d", "-0.00000000000123456") testformat("0", "%d", "0.123456") testformat("0", "%d", "-0.123456") testformat("0", "%d", "0.00001") testformat("0", "%d", "-0.00001") testformat("0", "%d", "0.99") testformat("0", "%d", "-0.99") testformat("2", "%d", "2.5") testformat("-2", "%d", "-2.5") testformat("3", "%d", "3.5") testformat("-3", "%d", "-3.5") --Testing flags and specifiers testformat("0", "%d", "0") testformat("0.000000e+00", "%e", "0") testformat("0", "%g", "0") testformat("0.000000", "%f", "0") testformat("0", "%u", "0") testformat("0", "%o", "0") testformat("0", "%x", "0") testformat("1", "%d", "1") testformat("1.000000e+00", "%e", "1") testformat("1", "%g", "1") testformat("1.000000", "%f", "1") testformat("1", "%u", "1") testformat("1", "%o", "1") testformat("1", "%x", "1") testformat("123", "%d", "123") testformat("1.230000e+02", "%e", "123") testformat("123", "%g", "123") testformat("123.000000", "%f", "123") testformat("123", "%u", "123") testformat("173", "%o", "123") testformat("7b", "%x", "123") testformat("123", "%d", "123.456") testformat("1.234560e+02", "%e", "123.456") testformat("123.456", "%g", "123.456") testformat("123.456000", "%f", "123.456") testformat("123", "%u", "123.456") testformat("173", "%o", "123.456") testformat("7b", "%x", "123.456") testformat("12345678", "%d", "12345678") testformat("1.234568e+07", "%e", "12345678") testformat("1.23457e+07", "%g", "12345678") testformat("12345678.000000", "%f", "12345678") testformat("12345678", "%u", "12345678") testformat("57060516", "%o", "12345678") testformat("bc614e", "%x", "12345678") testformat("0", "%d", "0.00000000000123456") testformat("1.234560e-12", "%e", "0.00000000000123456") testformat("1.23456e-12", "%g", "0.00000000000123456") testformat("0.000000", "%f", "0.00000000000123456") testformat("0", "%u", "0.00000000000123456") testformat("0", "%o", "0.00000000000123456") testformat("0", "%x", "0.00000000000123456") testformat("0", "%d", "0.123456") testformat("1.234560e-01", "%e", "0.123456") testformat("0.123456", "%g", "0.123456") testformat("0.123456", "%f", "0.123456") testformat("0", "%u", "0.123456") testformat("0", "%o", "0.123456") testformat("0", "%x", "0.123456") testformat("0", "%d", "0.00001") testformat("1.000000e-05", "%e", "0.00001") testformat("1e-05", "%g", "0.00001") testformat("0.000010", "%f", "0.00001") testformat("0", "%u", "0.00001") testformat("0", "%o", "0.00001") testformat("0", "%x", "0.00001") testformat("0", "%d", "0.99") testformat("9.900000e-01", "%e", "0.99") testformat("0.99", "%g", "0.99") testformat("0.990000", "%f", "0.99") testformat("0", "%u", "0.99") testformat("0", "%o", "0.99") testformat("0", "%x", "0.99") testformat("2", "%d", "2.5") testformat("2.500000e+00", "%e", "2.5") testformat("2.5", "%g", "2.5") testformat("2.500000", "%f", "2.5") testformat("2", "%u", "2.5") testformat("2", "%o", "2.5") testformat("2", "%x", "2.5") testformat("3", "%d", "3.5") testformat("3.500000e+00", "%e", "3.5") testformat("3.5", "%g", "3.5") testformat("3.500000", "%f", "3.5") testformat("3", "%u", "3.5") testformat("3", "%o", "3.5") testformat("3", "%x", "3.5") testformat("0", "%#d", "0") testformat("0.000000e+00", "%#e", "0") testformat("0.00000", "%#g", "0") testformat("0.000000", "%#f", "0") testformat("0", "%#u", "0") testformat("0", "%#o", "0") testformat("0", "%#x", "0") testformat("1", "%#d", "1") testformat("1.000000e+00", "%#e", "1") testformat("1.00000", "%#g", "1") testformat("1.000000", "%#f", "1") testformat("1", "%#u", "1") testformat("01", "%#o", "1") testformat("0x1", "%#x", "1") testformat("123", "%#d", "123") testformat("1.230000e+02", "%#e", "123") testformat("123.000", "%#g", "123") testformat("123.000000", "%#f", "123") testformat("123", "%#u", "123") testformat("0173", "%#o", "123") testformat("0x7b", "%#x", "123") testformat("123", "%#d", "123.456") testformat("1.234560e+02", "%#e", "123.456") testformat("123.456", "%#g", "123.456") testformat("123.456000", "%#f", "123.456") testformat("123", "%#u", "123.456") testformat("0173", "%#o", "123.456") testformat("0x7b", "%#x", "123.456") testformat("12345678", "%#d", "12345678") testformat("1.234568e+07", "%#e", "12345678") testformat("1.23457e+07", "%#g", "12345678") testformat("12345678.000000", "%#f", "12345678") testformat("12345678", "%#u", "12345678") testformat("057060516", "%#o", "12345678") testformat("0xbc614e", "%#x", "12345678") testformat("0", "%#d", "0.00000000000123456") testformat("1.234560e-12", "%#e", "0.00000000000123456") testformat("1.23456e-12", "%#g", "0.00000000000123456") testformat("0.000000", "%#f", "0.00000000000123456") testformat("0", "%#u", "0.00000000000123456") testformat("0", "%#o", "0.00000000000123456") testformat("0", "%#x", "0.00000000000123456") testformat("0", "%#d", "0.123456") testformat("1.234560e-01", "%#e", "0.123456") testformat("0.123456", "%#g", "0.123456") testformat("0.123456", "%#f", "0.123456") testformat("0", "%#u", "0.123456") testformat("0", "%#o", "0.123456") testformat("0", "%#x", "0.123456") testformat("0", "%#d", "0.00001") testformat("1.000000e-05", "%#e", "0.00001") testformat("1.00000e-05", "%#g", "0.00001") testformat("0.000010", "%#f", "0.00001") testformat("0", "%#u", "0.00001") testformat("0", "%#o", "0.00001") testformat("0", "%#x", "0.00001") testformat("0", "%#d", "0.99") testformat("9.900000e-01", "%#e", "0.99") testformat("0.990000", "%#g", "0.99") testformat("0.990000", "%#f", "0.99") testformat("0", "%#u", "0.99") testformat("0", "%#o", "0.99") testformat("0", "%#x", "0.99") testformat("2", "%#d", "2.5") testformat("2.500000e+00", "%#e", "2.5") testformat("2.50000", "%#g", "2.5") testformat("2.500000", "%#f", "2.5") testformat("2", "%#u", "2.5") testformat("02", "%#o", "2.5") testformat("0x2", "%#x", "2.5") testformat("3", "%#d", "3.5") testformat("3.500000e+00", "%#e", "3.5") testformat("3.50000", "%#g", "3.5") testformat("3.500000", "%#f", "3.5") testformat("3", "%#u", "3.5") testformat("03", "%#o", "3.5") testformat("0x3", "%#x", "3.5") testformat("+0", "%#+d", "0") testformat("+0.000000e+00", "%#+e", "0") testformat("+0.00000", "%#+g", "0") testformat("+0.000000", "%#+f", "0") testformat("0", "%#+u", "0") testformat("0", "%#+o", "0") testformat("0", "%#+x", "0") testformat("+1", "%#+d", "1") testformat("+1.000000e+00", "%#+e", "1") testformat("+1.00000", "%#+g", "1") testformat("+1.000000", "%#+f", "1") testformat("1", "%#+u", "1") testformat("01", "%#+o", "1") testformat("0x1", "%#+x", "1") testformat("+123", "%#+d", "123") testformat("+1.230000e+02", "%#+e", "123") testformat("+123.000", "%#+g", "123") testformat("+123.000000", "%#+f", "123") testformat("123", "%#+u", "123") testformat("0173", "%#+o", "123") testformat("0x7b", "%#+x", "123") testformat("+123", "%#+d", "123.456") testformat("+1.234560e+02", "%#+e", "123.456") testformat("+123.456", "%#+g", "123.456") testformat("+123.456000", "%#+f", "123.456") testformat("123", "%#+u", "123.456") testformat("0173", "%#+o", "123.456") testformat("0x7b", "%#+x", "123.456") testformat("+12345678", "%#+d", "12345678") testformat("+1.234568e+07", "%#+e", "12345678") testformat("+1.23457e+07", "%#+g", "12345678") testformat("+12345678.000000", "%#+f", "12345678") testformat("12345678", "%#+u", "12345678") testformat("057060516", "%#+o", "12345678") testformat("0xbc614e", "%#+x", "12345678") testformat("+0", "%#+d", "0.00000000000123456") testformat("+1.234560e-12", "%#+e", "0.00000000000123456") testformat("+1.23456e-12", "%#+g", "0.00000000000123456") testformat("+0.000000", "%#+f", "0.00000000000123456") testformat("0", "%#+u", "0.00000000000123456") testformat("0", "%#+o", "0.00000000000123456") testformat("0", "%#+x", "0.00000000000123456") testformat("+0", "%#+d", "0.123456") testformat("+1.234560e-01", "%#+e", "0.123456") testformat("+0.123456", "%#+g", "0.123456") testformat("+0.123456", "%#+f", "0.123456") testformat("0", "%#+u", "0.123456") testformat("0", "%#+o", "0.123456") testformat("0", "%#+x", "0.123456") testformat("+0", "%#+d", "0.00001") testformat("+1.000000e-05", "%#+e", "0.00001") testformat("+1.00000e-05", "%#+g", "0.00001") testformat("+0.000010", "%#+f", "0.00001") testformat("0", "%#+u", "0.00001") testformat("0", "%#+o", "0.00001") testformat("0", "%#+x", "0.00001") testformat("+0", "%#+d", "0.99") testformat("+9.900000e-01", "%#+e", "0.99") testformat("+0.990000", "%#+g", "0.99") testformat("+0.990000", "%#+f", "0.99") testformat("0", "%#+u", "0.99") testformat("0", "%#+o", "0.99") testformat("0", "%#+x", "0.99") testformat("+2", "%#+d", "2.5") testformat("+2.500000e+00", "%#+e", "2.5") testformat("+2.50000", "%#+g", "2.5") testformat("+2.500000", "%#+f", "2.5") testformat("2", "%#+u", "2.5") testformat("02", "%#+o", "2.5") testformat("0x2", "%#+x", "2.5") testformat("+3", "%#+d", "3.5") testformat("+3.500000e+00", "%#+e", "3.5") testformat("+3.50000", "%#+g", "3.5") testformat("+3.500000", "%#+f", "3.5") testformat("3", "%#+u", "3.5") testformat("03", "%#+o", "3.5") testformat("0x3", "%#+x", "3.5") testformat("+0", "%#+-d", "0") testformat("+0.000000e+00", "%#+-e", "0") testformat("+0.00000", "%#+-g", "0") testformat("+0.000000", "%#+-f", "0") testformat("0", "%#+-u", "0") testformat("0", "%#+-o", "0") testformat("0", "%#+-x", "0") testformat("+1", "%#+-d", "1") testformat("+1.000000e+00", "%#+-e", "1") testformat("+1.00000", "%#+-g", "1") testformat("+1.000000", "%#+-f", "1") testformat("1", "%#+-u", "1") testformat("01", "%#+-o", "1") testformat("0x1", "%#+-x", "1") testformat("+123", "%#+-d", "123") testformat("+1.230000e+02", "%#+-e", "123") testformat("+123.000", "%#+-g", "123") testformat("+123.000000", "%#+-f", "123") testformat("123", "%#+-u", "123") testformat("0173", "%#+-o", "123") testformat("0x7b", "%#+-x", "123") testformat("+123", "%#+-d", "123.456") testformat("+1.234560e+02", "%#+-e", "123.456") testformat("+123.456", "%#+-g", "123.456") testformat("+123.456000", "%#+-f", "123.456") testformat("123", "%#+-u", "123.456") testformat("0173", "%#+-o", "123.456") testformat("0x7b", "%#+-x", "123.456") testformat("+12345678", "%#+-d", "12345678") testformat("+1.234568e+07", "%#+-e", "12345678") testformat("+1.23457e+07", "%#+-g", "12345678") testformat("+12345678.000000", "%#+-f", "12345678") testformat("12345678", "%#+-u", "12345678") testformat("057060516", "%#+-o", "12345678") testformat("0xbc614e", "%#+-x", "12345678") testformat("+0", "%#+-d", "0.00000000000123456") testformat("+1.234560e-12", "%#+-e", "0.00000000000123456") testformat("+1.23456e-12", "%#+-g", "0.00000000000123456") testformat("+0.000000", "%#+-f", "0.00000000000123456") testformat("0", "%#+-u", "0.00000000000123456") testformat("0", "%#+-o", "0.00000000000123456") testformat("0", "%#+-x", "0.00000000000123456") testformat("+0", "%#+-d", "0.123456") testformat("+1.234560e-01", "%#+-e", "0.123456") testformat("+0.123456", "%#+-g", "0.123456") testformat("+0.123456", "%#+-f", "0.123456") testformat("0", "%#+-u", "0.123456") testformat("0", "%#+-o", "0.123456") testformat("0", "%#+-x", "0.123456") testformat("+0", "%#+-d", "0.00001") testformat("+1.000000e-05", "%#+-e", "0.00001") testformat("+1.00000e-05", "%#+-g", "0.00001") testformat("+0.000010", "%#+-f", "0.00001") testformat("0", "%#+-u", "0.00001") testformat("0", "%#+-o", "0.00001") testformat("0", "%#+-x", "0.00001") testformat("+0", "%#+-d", "0.99") testformat("+9.900000e-01", "%#+-e", "0.99") testformat("+0.990000", "%#+-g", "0.99") testformat("+0.990000", "%#+-f", "0.99") testformat("0", "%#+-u", "0.99") testformat("0", "%#+-o", "0.99") testformat("0", "%#+-x", "0.99") testformat("+2", "%#+-d", "2.5") testformat("+2.500000e+00", "%#+-e", "2.5") testformat("+2.50000", "%#+-g", "2.5") testformat("+2.500000", "%#+-f", "2.5") testformat("2", "%#+-u", "2.5") testformat("02", "%#+-o", "2.5") testformat("0x2", "%#+-x", "2.5") testformat("+3", "%#+-d", "3.5") testformat("+3.500000e+00", "%#+-e", "3.5") testformat("+3.50000", "%#+-g", "3.5") testformat("+3.500000", "%#+-f", "3.5") testformat("3", "%#+-u", "3.5") testformat("03", "%#+-o", "3.5") testformat("0x3", "%#+-x", "3.5") testformat("+0", "%#+-0d", "0") testformat("+0.000000e+00", "%#+-0e", "0") testformat("+0.00000", "%#+-0g", "0") testformat("+0.000000", "%#+-0f", "0") testformat("0", "%#+-0u", "0") testformat("0", "%#+-0o", "0") testformat("0", "%#+-0x", "0") testformat("+1", "%#+-0d", "1") testformat("+1.000000e+00", "%#+-0e", "1") testformat("+1.00000", "%#+-0g", "1") testformat("+1.000000", "%#+-0f", "1") testformat("1", "%#+-0u", "1") testformat("01", "%#+-0o", "1") testformat("0x1", "%#+-0x", "1") testformat("+123", "%#+-0d", "123") testformat("+1.230000e+02", "%#+-0e", "123") testformat("+123.000", "%#+-0g", "123") testformat("+123.000000", "%#+-0f", "123") testformat("123", "%#+-0u", "123") testformat("0173", "%#+-0o", "123") testformat("0x7b", "%#+-0x", "123") testformat("+123", "%#+-0d", "123.456") testformat("+1.234560e+02", "%#+-0e", "123.456") testformat("+123.456", "%#+-0g", "123.456") testformat("+123.456000", "%#+-0f", "123.456") testformat("123", "%#+-0u", "123.456") testformat("0173", "%#+-0o", "123.456") testformat("0x7b", "%#+-0x", "123.456") testformat("+12345678", "%#+-0d", "12345678") testformat("+1.234568e+07", "%#+-0e", "12345678") testformat("+1.23457e+07", "%#+-0g", "12345678") testformat("+12345678.000000", "%#+-0f", "12345678") testformat("12345678", "%#+-0u", "12345678") testformat("057060516", "%#+-0o", "12345678") testformat("0xbc614e", "%#+-0x", "12345678") testformat("+0", "%#+-0d", "0.00000000000123456") testformat("+1.234560e-12", "%#+-0e", "0.00000000000123456") testformat("+1.23456e-12", "%#+-0g", "0.00000000000123456") testformat("+0.000000", "%#+-0f", "0.00000000000123456") testformat("0", "%#+-0u", "0.00000000000123456") testformat("0", "%#+-0o", "0.00000000000123456") testformat("0", "%#+-0x", "0.00000000000123456") testformat("+0", "%#+-0d", "0.123456") testformat("+1.234560e-01", "%#+-0e", "0.123456") testformat("+0.123456", "%#+-0g", "0.123456") testformat("+0.123456", "%#+-0f", "0.123456") testformat("0", "%#+-0u", "0.123456") testformat("0", "%#+-0o", "0.123456") testformat("0", "%#+-0x", "0.123456") testformat("+0", "%#+-0d", "0.00001") testformat("+1.000000e-05", "%#+-0e", "0.00001") testformat("+1.00000e-05", "%#+-0g", "0.00001") testformat("+0.000010", "%#+-0f", "0.00001") testformat("0", "%#+-0u", "0.00001") testformat("0", "%#+-0o", "0.00001") testformat("0", "%#+-0x", "0.00001") testformat("+0", "%#+-0d", "0.99") testformat("+9.900000e-01", "%#+-0e", "0.99") testformat("+0.990000", "%#+-0g", "0.99") testformat("+0.990000", "%#+-0f", "0.99") testformat("0", "%#+-0u", "0.99") testformat("0", "%#+-0o", "0.99") testformat("0", "%#+-0x", "0.99") testformat("+2", "%#+-0d", "2.5") testformat("+2.500000e+00", "%#+-0e", "2.5") testformat("+2.50000", "%#+-0g", "2.5") testformat("+2.500000", "%#+-0f", "2.5") testformat("2", "%#+-0u", "2.5") testformat("02", "%#+-0o", "2.5") testformat("0x2", "%#+-0x", "2.5") testformat("+3", "%#+-0d", "3.5") testformat("+3.500000e+00", "%#+-0e", "3.5") testformat("+3.50000", "%#+-0g", "3.5") testformat("+3.500000", "%#+-0f", "3.5") testformat("3", "%#+-0u", "3.5") testformat("03", "%#+-0o", "3.5") testformat("0x3", "%#+-0x", "3.5") testformat("+0", "%#+0d", "0") testformat("+0.000000e+00", "%#+0e", "0") testformat("+0.00000", "%#+0g", "0") testformat("+0.000000", "%#+0f", "0") testformat("0", "%#+0u", "0") testformat("0", "%#+0o", "0") testformat("0", "%#+0x", "0") testformat("+1", "%#+0d", "1") testformat("+1.000000e+00", "%#+0e", "1") testformat("+1.00000", "%#+0g", "1") testformat("+1.000000", "%#+0f", "1") testformat("1", "%#+0u", "1") testformat("01", "%#+0o", "1") testformat("0x1", "%#+0x", "1") testformat("+123", "%#+0d", "123") testformat("+1.230000e+02", "%#+0e", "123") testformat("+123.000", "%#+0g", "123") testformat("+123.000000", "%#+0f", "123") testformat("123", "%#+0u", "123") testformat("0173", "%#+0o", "123") testformat("0x7b", "%#+0x", "123") testformat("+123", "%#+0d", "123.456") testformat("+1.234560e+02", "%#+0e", "123.456") testformat("+123.456", "%#+0g", "123.456") testformat("+123.456000", "%#+0f", "123.456") testformat("123", "%#+0u", "123.456") testformat("0173", "%#+0o", "123.456") testformat("0x7b", "%#+0x", "123.456") testformat("+12345678", "%#+0d", "12345678") testformat("+1.234568e+07", "%#+0e", "12345678") testformat("+1.23457e+07", "%#+0g", "12345678") testformat("+12345678.000000", "%#+0f", "12345678") testformat("12345678", "%#+0u", "12345678") testformat("057060516", "%#+0o", "12345678") testformat("0xbc614e", "%#+0x", "12345678") testformat("+0", "%#+0d", "0.00000000000123456") testformat("+1.234560e-12", "%#+0e", "0.00000000000123456") testformat("+1.23456e-12", "%#+0g", "0.00000000000123456") testformat("+0.000000", "%#+0f", "0.00000000000123456") testformat("0", "%#+0u", "0.00000000000123456") testformat("0", "%#+0o", "0.00000000000123456") testformat("0", "%#+0x", "0.00000000000123456") testformat("+0", "%#+0d", "0.123456") testformat("+1.234560e-01", "%#+0e", "0.123456") testformat("+0.123456", "%#+0g", "0.123456") testformat("+0.123456", "%#+0f", "0.123456") testformat("0", "%#+0u", "0.123456") testformat("0", "%#+0o", "0.123456") testformat("0", "%#+0x", "0.123456") testformat("+0", "%#+0d", "0.00001") testformat("+1.000000e-05", "%#+0e", "0.00001") testformat("+1.00000e-05", "%#+0g", "0.00001") testformat("+0.000010", "%#+0f", "0.00001") testformat("0", "%#+0u", "0.00001") testformat("0", "%#+0o", "0.00001") testformat("0", "%#+0x", "0.00001") testformat("+0", "%#+0d", "0.99") testformat("+9.900000e-01", "%#+0e", "0.99") testformat("+0.990000", "%#+0g", "0.99") testformat("+0.990000", "%#+0f", "0.99") testformat("0", "%#+0u", "0.99") testformat("0", "%#+0o", "0.99") testformat("0", "%#+0x", "0.99") testformat("+2", "%#+0d", "2.5") testformat("+2.500000e+00", "%#+0e", "2.5") testformat("+2.50000", "%#+0g", "2.5") testformat("+2.500000", "%#+0f", "2.5") testformat("2", "%#+0u", "2.5") testformat("02", "%#+0o", "2.5") testformat("0x2", "%#+0x", "2.5") testformat("+3", "%#+0d", "3.5") testformat("+3.500000e+00", "%#+0e", "3.5") testformat("+3.50000", "%#+0g", "3.5") testformat("+3.500000", "%#+0f", "3.5") testformat("3", "%#+0u", "3.5") testformat("03", "%#+0o", "3.5") testformat("0x3", "%#+0x", "3.5") testformat("0", "%#-d", "0") testformat("0.000000e+00", "%#-e", "0") testformat("0.00000", "%#-g", "0") testformat("0.000000", "%#-f", "0") testformat("0", "%#-u", "0") testformat("0", "%#-o", "0") testformat("0", "%#-x", "0") testformat("1", "%#-d", "1") testformat("1.000000e+00", "%#-e", "1") testformat("1.00000", "%#-g", "1") testformat("1.000000", "%#-f", "1") testformat("1", "%#-u", "1") testformat("01", "%#-o", "1") testformat("0x1", "%#-x", "1") testformat("123", "%#-d", "123") testformat("1.230000e+02", "%#-e", "123") testformat("123.000", "%#-g", "123") testformat("123.000000", "%#-f", "123") testformat("123", "%#-u", "123") testformat("0173", "%#-o", "123") testformat("0x7b", "%#-x", "123") testformat("123", "%#-d", "123.456") testformat("1.234560e+02", "%#-e", "123.456") testformat("123.456", "%#-g", "123.456") testformat("123.456000", "%#-f", "123.456") testformat("123", "%#-u", "123.456") testformat("0173", "%#-o", "123.456") testformat("0x7b", "%#-x", "123.456") testformat("12345678", "%#-d", "12345678") testformat("1.234568e+07", "%#-e", "12345678") testformat("1.23457e+07", "%#-g", "12345678") testformat("12345678.000000", "%#-f", "12345678") testformat("12345678", "%#-u", "12345678") testformat("057060516", "%#-o", "12345678") testformat("0xbc614e", "%#-x", "12345678") testformat("0", "%#-d", "0.00000000000123456") testformat("1.234560e-12", "%#-e", "0.00000000000123456") testformat("1.23456e-12", "%#-g", "0.00000000000123456") testformat("0.000000", "%#-f", "0.00000000000123456") testformat("0", "%#-u", "0.00000000000123456") testformat("0", "%#-o", "0.00000000000123456") testformat("0", "%#-x", "0.00000000000123456") testformat("0", "%#-d", "0.123456") testformat("1.234560e-01", "%#-e", "0.123456") testformat("0.123456", "%#-g", "0.123456") testformat("0.123456", "%#-f", "0.123456") testformat("0", "%#-u", "0.123456") testformat("0", "%#-o", "0.123456") testformat("0", "%#-x", "0.123456") testformat("0", "%#-d", "0.00001") testformat("1.000000e-05", "%#-e", "0.00001") testformat("1.00000e-05", "%#-g", "0.00001") testformat("0.000010", "%#-f", "0.00001") testformat("0", "%#-u", "0.00001") testformat("0", "%#-o", "0.00001") testformat("0", "%#-x", "0.00001") testformat("0", "%#-d", "0.99") testformat("9.900000e-01", "%#-e", "0.99") testformat("0.990000", "%#-g", "0.99") testformat("0.990000", "%#-f", "0.99") testformat("0", "%#-u", "0.99") testformat("0", "%#-o", "0.99") testformat("0", "%#-x", "0.99") testformat("2", "%#-d", "2.5") testformat("2.500000e+00", "%#-e", "2.5") testformat("2.50000", "%#-g", "2.5") testformat("2.500000", "%#-f", "2.5") testformat("2", "%#-u", "2.5") testformat("02", "%#-o", "2.5") testformat("0x2", "%#-x", "2.5") testformat("3", "%#-d", "3.5") testformat("3.500000e+00", "%#-e", "3.5") testformat("3.50000", "%#-g", "3.5") testformat("3.500000", "%#-f", "3.5") testformat("3", "%#-u", "3.5") testformat("03", "%#-o", "3.5") testformat("0x3", "%#-x", "3.5") testformat("0", "%#-0d", "0") testformat("0.000000e+00", "%#-0e", "0") testformat("0.00000", "%#-0g", "0") testformat("0.000000", "%#-0f", "0") testformat("0", "%#-0u", "0") testformat("0", "%#-0o", "0") testformat("0", "%#-0x", "0") testformat("1", "%#-0d", "1") testformat("1.000000e+00", "%#-0e", "1") testformat("1.00000", "%#-0g", "1") testformat("1.000000", "%#-0f", "1") testformat("1", "%#-0u", "1") testformat("01", "%#-0o", "1") testformat("0x1", "%#-0x", "1") testformat("123", "%#-0d", "123") testformat("1.230000e+02", "%#-0e", "123") testformat("123.000", "%#-0g", "123") testformat("123.000000", "%#-0f", "123") testformat("123", "%#-0u", "123") testformat("0173", "%#-0o", "123") testformat("0x7b", "%#-0x", "123") testformat("123", "%#-0d", "123.456") testformat("1.234560e+02", "%#-0e", "123.456") testformat("123.456", "%#-0g", "123.456") testformat("123.456000", "%#-0f", "123.456") testformat("123", "%#-0u", "123.456") testformat("0173", "%#-0o", "123.456") testformat("0x7b", "%#-0x", "123.456") testformat("12345678", "%#-0d", "12345678") testformat("1.234568e+07", "%#-0e", "12345678") testformat("1.23457e+07", "%#-0g", "12345678") testformat("12345678.000000", "%#-0f", "12345678") testformat("12345678", "%#-0u", "12345678") testformat("057060516", "%#-0o", "12345678") testformat("0xbc614e", "%#-0x", "12345678") testformat("0", "%#-0d", "0.00000000000123456") testformat("1.234560e-12", "%#-0e", "0.00000000000123456") testformat("1.23456e-12", "%#-0g", "0.00000000000123456") testformat("0.000000", "%#-0f", "0.00000000000123456") testformat("0", "%#-0u", "0.00000000000123456") testformat("0", "%#-0o", "0.00000000000123456") testformat("0", "%#-0x", "0.00000000000123456") testformat("0", "%#-0d", "0.123456") testformat("1.234560e-01", "%#-0e", "0.123456") testformat("0.123456", "%#-0g", "0.123456") testformat("0.123456", "%#-0f", "0.123456") testformat("0", "%#-0u", "0.123456") testformat("0", "%#-0o", "0.123456") testformat("0", "%#-0x", "0.123456") testformat("0", "%#-0d", "0.00001") testformat("1.000000e-05", "%#-0e", "0.00001") testformat("1.00000e-05", "%#-0g", "0.00001") testformat("0.000010", "%#-0f", "0.00001") testformat("0", "%#-0u", "0.00001") testformat("0", "%#-0o", "0.00001") testformat("0", "%#-0x", "0.00001") testformat("0", "%#-0d", "0.99") testformat("9.900000e-01", "%#-0e", "0.99") testformat("0.990000", "%#-0g", "0.99") testformat("0.990000", "%#-0f", "0.99") testformat("0", "%#-0u", "0.99") testformat("0", "%#-0o", "0.99") testformat("0", "%#-0x", "0.99") testformat("2", "%#-0d", "2.5") testformat("2.500000e+00", "%#-0e", "2.5") testformat("2.50000", "%#-0g", "2.5") testformat("2.500000", "%#-0f", "2.5") testformat("2", "%#-0u", "2.5") testformat("02", "%#-0o", "2.5") testformat("0x2", "%#-0x", "2.5") testformat("3", "%#-0d", "3.5") testformat("3.500000e+00", "%#-0e", "3.5") testformat("3.50000", "%#-0g", "3.5") testformat("3.500000", "%#-0f", "3.5") testformat("3", "%#-0u", "3.5") testformat("03", "%#-0o", "3.5") testformat("0x3", "%#-0x", "3.5") testformat("0", "%#0d", "0") testformat("0.000000e+00", "%#0e", "0") testformat("0.00000", "%#0g", "0") testformat("0.000000", "%#0f", "0") testformat("0", "%#0u", "0") testformat("0", "%#0o", "0") testformat("0", "%#0x", "0") testformat("1", "%#0d", "1") testformat("1.000000e+00", "%#0e", "1") testformat("1.00000", "%#0g", "1") testformat("1.000000", "%#0f", "1") testformat("1", "%#0u", "1") testformat("01", "%#0o", "1") testformat("0x1", "%#0x", "1") testformat("123", "%#0d", "123") testformat("1.230000e+02", "%#0e", "123") testformat("123.000", "%#0g", "123") testformat("123.000000", "%#0f", "123") testformat("123", "%#0u", "123") testformat("0173", "%#0o", "123") testformat("0x7b", "%#0x", "123") testformat("123", "%#0d", "123.456") testformat("1.234560e+02", "%#0e", "123.456") testformat("123.456", "%#0g", "123.456") testformat("123.456000", "%#0f", "123.456") testformat("123", "%#0u", "123.456") testformat("0173", "%#0o", "123.456") testformat("0x7b", "%#0x", "123.456") testformat("12345678", "%#0d", "12345678") testformat("1.234568e+07", "%#0e", "12345678") testformat("1.23457e+07", "%#0g", "12345678") testformat("12345678.000000", "%#0f", "12345678") testformat("12345678", "%#0u", "12345678") testformat("057060516", "%#0o", "12345678") testformat("0xbc614e", "%#0x", "12345678") testformat("0", "%#0d", "0.00000000000123456") testformat("1.234560e-12", "%#0e", "0.00000000000123456") testformat("1.23456e-12", "%#0g", "0.00000000000123456") testformat("0.000000", "%#0f", "0.00000000000123456") testformat("0", "%#0u", "0.00000000000123456") testformat("0", "%#0o", "0.00000000000123456") testformat("0", "%#0x", "0.00000000000123456") testformat("0", "%#0d", "0.123456") testformat("1.234560e-01", "%#0e", "0.123456") testformat("0.123456", "%#0g", "0.123456") testformat("0.123456", "%#0f", "0.123456") testformat("0", "%#0u", "0.123456") testformat("0", "%#0o", "0.123456") testformat("0", "%#0x", "0.123456") testformat("0", "%#0d", "0.00001") testformat("1.000000e-05", "%#0e", "0.00001") testformat("1.00000e-05", "%#0g", "0.00001") testformat("0.000010", "%#0f", "0.00001") testformat("0", "%#0u", "0.00001") testformat("0", "%#0o", "0.00001") testformat("0", "%#0x", "0.00001") testformat("0", "%#0d", "0.99") testformat("9.900000e-01", "%#0e", "0.99") testformat("0.990000", "%#0g", "0.99") testformat("0.990000", "%#0f", "0.99") testformat("0", "%#0u", "0.99") testformat("0", "%#0o", "0.99") testformat("0", "%#0x", "0.99") testformat("2", "%#0d", "2.5") testformat("2.500000e+00", "%#0e", "2.5") testformat("2.50000", "%#0g", "2.5") testformat("2.500000", "%#0f", "2.5") testformat("2", "%#0u", "2.5") testformat("02", "%#0o", "2.5") testformat("0x2", "%#0x", "2.5") testformat("3", "%#0d", "3.5") testformat("3.500000e+00", "%#0e", "3.5") testformat("3.50000", "%#0g", "3.5") testformat("3.500000", "%#0f", "3.5") testformat("3", "%#0u", "3.5") testformat("03", "%#0o", "3.5") testformat("0x3", "%#0x", "3.5") testformat("+0", "%+d", "0") testformat("+0.000000e+00", "%+e", "0") testformat("+0", "%+g", "0") testformat("+0.000000", "%+f", "0") testformat("0", "%+u", "0") testformat("0", "%+o", "0") testformat("0", "%+x", "0") testformat("+1", "%+d", "1") testformat("+1.000000e+00", "%+e", "1") testformat("+1", "%+g", "1") testformat("+1.000000", "%+f", "1") testformat("1", "%+u", "1") testformat("1", "%+o", "1") testformat("1", "%+x", "1") testformat("+123", "%+d", "123") testformat("+1.230000e+02", "%+e", "123") testformat("+123", "%+g", "123") testformat("+123.000000", "%+f", "123") testformat("123", "%+u", "123") testformat("173", "%+o", "123") testformat("7b", "%+x", "123") testformat("+123", "%+d", "123.456") testformat("+1.234560e+02", "%+e", "123.456") testformat("+123.456", "%+g", "123.456") testformat("+123.456000", "%+f", "123.456") testformat("123", "%+u", "123.456") testformat("173", "%+o", "123.456") testformat("7b", "%+x", "123.456") testformat("+12345678", "%+d", "12345678") testformat("+1.234568e+07", "%+e", "12345678") testformat("+1.23457e+07", "%+g", "12345678") testformat("+12345678.000000", "%+f", "12345678") testformat("12345678", "%+u", "12345678") testformat("57060516", "%+o", "12345678") testformat("bc614e", "%+x", "12345678") testformat("+0", "%+d", "0.00000000000123456") testformat("+1.234560e-12", "%+e", "0.00000000000123456") testformat("+1.23456e-12", "%+g", "0.00000000000123456") testformat("+0.000000", "%+f", "0.00000000000123456") testformat("0", "%+u", "0.00000000000123456") testformat("0", "%+o", "0.00000000000123456") testformat("0", "%+x", "0.00000000000123456") testformat("+0", "%+d", "0.123456") testformat("+1.234560e-01", "%+e", "0.123456") testformat("+0.123456", "%+g", "0.123456") testformat("+0.123456", "%+f", "0.123456") testformat("0", "%+u", "0.123456") testformat("0", "%+o", "0.123456") testformat("0", "%+x", "0.123456") testformat("+0", "%+d", "0.00001") testformat("+1.000000e-05", "%+e", "0.00001") testformat("+1e-05", "%+g", "0.00001") testformat("+0.000010", "%+f", "0.00001") testformat("0", "%+u", "0.00001") testformat("0", "%+o", "0.00001") testformat("0", "%+x", "0.00001") testformat("+0", "%+d", "0.99") testformat("+9.900000e-01", "%+e", "0.99") testformat("+0.99", "%+g", "0.99") testformat("+0.990000", "%+f", "0.99") testformat("0", "%+u", "0.99") testformat("0", "%+o", "0.99") testformat("0", "%+x", "0.99") testformat("+2", "%+d", "2.5") testformat("+2.500000e+00", "%+e", "2.5") testformat("+2.5", "%+g", "2.5") testformat("+2.500000", "%+f", "2.5") testformat("2", "%+u", "2.5") testformat("2", "%+o", "2.5") testformat("2", "%+x", "2.5") testformat("+3", "%+d", "3.5") testformat("+3.500000e+00", "%+e", "3.5") testformat("+3.5", "%+g", "3.5") testformat("+3.500000", "%+f", "3.5") testformat("3", "%+u", "3.5") testformat("3", "%+o", "3.5") testformat("3", "%+x", "3.5") testformat("+0", "%+-d", "0") testformat("+0.000000e+00", "%+-e", "0") testformat("+0", "%+-g", "0") testformat("+0.000000", "%+-f", "0") testformat("0", "%+-u", "0") testformat("0", "%+-o", "0") testformat("0", "%+-x", "0") testformat("+1", "%+-d", "1") testformat("+1.000000e+00", "%+-e", "1") testformat("+1", "%+-g", "1") testformat("+1.000000", "%+-f", "1") testformat("1", "%+-u", "1") testformat("1", "%+-o", "1") testformat("1", "%+-x", "1") testformat("+123", "%+-d", "123") testformat("+1.230000e+02", "%+-e", "123") testformat("+123", "%+-g", "123") testformat("+123.000000", "%+-f", "123") testformat("123", "%+-u", "123") testformat("173", "%+-o", "123") testformat("7b", "%+-x", "123") testformat("+123", "%+-d", "123.456") testformat("+1.234560e+02", "%+-e", "123.456") testformat("+123.456", "%+-g", "123.456") testformat("+123.456000", "%+-f", "123.456") testformat("123", "%+-u", "123.456") testformat("173", "%+-o", "123.456") testformat("7b", "%+-x", "123.456") testformat("+12345678", "%+-d", "12345678") testformat("+1.234568e+07", "%+-e", "12345678") testformat("+1.23457e+07", "%+-g", "12345678") testformat("+12345678.000000", "%+-f", "12345678") testformat("12345678", "%+-u", "12345678") testformat("57060516", "%+-o", "12345678") testformat("bc614e", "%+-x", "12345678") testformat("+0", "%+-d", "0.00000000000123456") testformat("+1.234560e-12", "%+-e", "0.00000000000123456") testformat("+1.23456e-12", "%+-g", "0.00000000000123456") testformat("+0.000000", "%+-f", "0.00000000000123456") testformat("0", "%+-u", "0.00000000000123456") testformat("0", "%+-o", "0.00000000000123456") testformat("0", "%+-x", "0.00000000000123456") testformat("+0", "%+-d", "0.123456") testformat("+1.234560e-01", "%+-e", "0.123456") testformat("+0.123456", "%+-g", "0.123456") testformat("+0.123456", "%+-f", "0.123456") testformat("0", "%+-u", "0.123456") testformat("0", "%+-o", "0.123456") testformat("0", "%+-x", "0.123456") testformat("+0", "%+-d", "0.00001") testformat("+1.000000e-05", "%+-e", "0.00001") testformat("+1e-05", "%+-g", "0.00001") testformat("+0.000010", "%+-f", "0.00001") testformat("0", "%+-u", "0.00001") testformat("0", "%+-o", "0.00001") testformat("0", "%+-x", "0.00001") testformat("+0", "%+-d", "0.99") testformat("+9.900000e-01", "%+-e", "0.99") testformat("+0.99", "%+-g", "0.99") testformat("+0.990000", "%+-f", "0.99") testformat("0", "%+-u", "0.99") testformat("0", "%+-o", "0.99") testformat("0", "%+-x", "0.99") testformat("+2", "%+-d", "2.5") testformat("+2.500000e+00", "%+-e", "2.5") testformat("+2.5", "%+-g", "2.5") testformat("+2.500000", "%+-f", "2.5") testformat("2", "%+-u", "2.5") testformat("2", "%+-o", "2.5") testformat("2", "%+-x", "2.5") testformat("+3", "%+-d", "3.5") testformat("+3.500000e+00", "%+-e", "3.5") testformat("+3.5", "%+-g", "3.5") testformat("+3.500000", "%+-f", "3.5") testformat("3", "%+-u", "3.5") testformat("3", "%+-o", "3.5") testformat("3", "%+-x", "3.5") testformat("+0", "%+-0d", "0") testformat("+0.000000e+00", "%+-0e", "0") testformat("+0", "%+-0g", "0") testformat("+0.000000", "%+-0f", "0") testformat("0", "%+-0u", "0") testformat("0", "%+-0o", "0") testformat("0", "%+-0x", "0") testformat("+1", "%+-0d", "1") testformat("+1.000000e+00", "%+-0e", "1") testformat("+1", "%+-0g", "1") testformat("+1.000000", "%+-0f", "1") testformat("1", "%+-0u", "1") testformat("1", "%+-0o", "1") testformat("1", "%+-0x", "1") testformat("+123", "%+-0d", "123") testformat("+1.230000e+02", "%+-0e", "123") testformat("+123", "%+-0g", "123") testformat("+123.000000", "%+-0f", "123") testformat("123", "%+-0u", "123") testformat("173", "%+-0o", "123") testformat("7b", "%+-0x", "123") testformat("+123", "%+-0d", "123.456") testformat("+1.234560e+02", "%+-0e", "123.456") testformat("+123.456", "%+-0g", "123.456") testformat("+123.456000", "%+-0f", "123.456") testformat("123", "%+-0u", "123.456") testformat("173", "%+-0o", "123.456") testformat("7b", "%+-0x", "123.456") testformat("+12345678", "%+-0d", "12345678") testformat("+1.234568e+07", "%+-0e", "12345678") testformat("+1.23457e+07", "%+-0g", "12345678") testformat("+12345678.000000", "%+-0f", "12345678") testformat("12345678", "%+-0u", "12345678") testformat("57060516", "%+-0o", "12345678") testformat("bc614e", "%+-0x", "12345678") testformat("+0", "%+-0d", "0.00000000000123456") testformat("+1.234560e-12", "%+-0e", "0.00000000000123456") testformat("+1.23456e-12", "%+-0g", "0.00000000000123456") testformat("+0.000000", "%+-0f", "0.00000000000123456") testformat("0", "%+-0u", "0.00000000000123456") testformat("0", "%+-0o", "0.00000000000123456") testformat("0", "%+-0x", "0.00000000000123456") testformat("+0", "%+-0d", "0.123456") testformat("+1.234560e-01", "%+-0e", "0.123456") testformat("+0.123456", "%+-0g", "0.123456") testformat("+0.123456", "%+-0f", "0.123456") testformat("0", "%+-0u", "0.123456") testformat("0", "%+-0o", "0.123456") testformat("0", "%+-0x", "0.123456") testformat("+0", "%+-0d", "0.00001") testformat("+1.000000e-05", "%+-0e", "0.00001") testformat("+1e-05", "%+-0g", "0.00001") testformat("+0.000010", "%+-0f", "0.00001") testformat("0", "%+-0u", "0.00001") testformat("0", "%+-0o", "0.00001") testformat("0", "%+-0x", "0.00001") testformat("+0", "%+-0d", "0.99") testformat("+9.900000e-01", "%+-0e", "0.99") testformat("+0.99", "%+-0g", "0.99") testformat("+0.990000", "%+-0f", "0.99") testformat("0", "%+-0u", "0.99") testformat("0", "%+-0o", "0.99") testformat("0", "%+-0x", "0.99") testformat("+2", "%+-0d", "2.5") testformat("+2.500000e+00", "%+-0e", "2.5") testformat("+2.5", "%+-0g", "2.5") testformat("+2.500000", "%+-0f", "2.5") testformat("2", "%+-0u", "2.5") testformat("2", "%+-0o", "2.5") testformat("2", "%+-0x", "2.5") testformat("+3", "%+-0d", "3.5") testformat("+3.500000e+00", "%+-0e", "3.5") testformat("+3.5", "%+-0g", "3.5") testformat("+3.500000", "%+-0f", "3.5") testformat("3", "%+-0u", "3.5") testformat("3", "%+-0o", "3.5") testformat("3", "%+-0x", "3.5") testformat("+0", "%+0d", "0") testformat("+0.000000e+00", "%+0e", "0") testformat("+0", "%+0g", "0") testformat("+0.000000", "%+0f", "0") testformat("0", "%+0u", "0") testformat("0", "%+0o", "0") testformat("0", "%+0x", "0") testformat("+1", "%+0d", "1") testformat("+1.000000e+00", "%+0e", "1") testformat("+1", "%+0g", "1") testformat("+1.000000", "%+0f", "1") testformat("1", "%+0u", "1") testformat("1", "%+0o", "1") testformat("1", "%+0x", "1") testformat("+123", "%+0d", "123") testformat("+1.230000e+02", "%+0e", "123") testformat("+123", "%+0g", "123") testformat("+123.000000", "%+0f", "123") testformat("123", "%+0u", "123") testformat("173", "%+0o", "123") testformat("7b", "%+0x", "123") testformat("+123", "%+0d", "123.456") testformat("+1.234560e+02", "%+0e", "123.456") testformat("+123.456", "%+0g", "123.456") testformat("+123.456000", "%+0f", "123.456") testformat("123", "%+0u", "123.456") testformat("173", "%+0o", "123.456") testformat("7b", "%+0x", "123.456") testformat("+12345678", "%+0d", "12345678") testformat("+1.234568e+07", "%+0e", "12345678") testformat("+1.23457e+07", "%+0g", "12345678") testformat("+12345678.000000", "%+0f", "12345678") testformat("12345678", "%+0u", "12345678") testformat("57060516", "%+0o", "12345678") testformat("bc614e", "%+0x", "12345678") testformat("+0", "%+0d", "0.00000000000123456") testformat("+1.234560e-12", "%+0e", "0.00000000000123456") testformat("+1.23456e-12", "%+0g", "0.00000000000123456") testformat("+0.000000", "%+0f", "0.00000000000123456") testformat("0", "%+0u", "0.00000000000123456") testformat("0", "%+0o", "0.00000000000123456") testformat("0", "%+0x", "0.00000000000123456") testformat("+0", "%+0d", "0.123456") testformat("+1.234560e-01", "%+0e", "0.123456") testformat("+0.123456", "%+0g", "0.123456") testformat("+0.123456", "%+0f", "0.123456") testformat("0", "%+0u", "0.123456") testformat("0", "%+0o", "0.123456") testformat("0", "%+0x", "0.123456") testformat("+0", "%+0d", "0.00001") testformat("+1.000000e-05", "%+0e", "0.00001") testformat("+1e-05", "%+0g", "0.00001") testformat("+0.000010", "%+0f", "0.00001") testformat("0", "%+0u", "0.00001") testformat("0", "%+0o", "0.00001") testformat("0", "%+0x", "0.00001") testformat("+0", "%+0d", "0.99") testformat("+9.900000e-01", "%+0e", "0.99") testformat("+0.99", "%+0g", "0.99") testformat("+0.990000", "%+0f", "0.99") testformat("0", "%+0u", "0.99") testformat("0", "%+0o", "0.99") testformat("0", "%+0x", "0.99") testformat("+2", "%+0d", "2.5") testformat("+2.500000e+00", "%+0e", "2.5") testformat("+2.5", "%+0g", "2.5") testformat("+2.500000", "%+0f", "2.5") testformat("2", "%+0u", "2.5") testformat("2", "%+0o", "2.5") testformat("2", "%+0x", "2.5") testformat("+3", "%+0d", "3.5") testformat("+3.500000e+00", "%+0e", "3.5") testformat("+3.5", "%+0g", "3.5") testformat("+3.500000", "%+0f", "3.5") testformat("3", "%+0u", "3.5") testformat("3", "%+0o", "3.5") testformat("3", "%+0x", "3.5") testformat("0", "%-d", "0") testformat("0.000000e+00", "%-e", "0") testformat("0", "%-g", "0") testformat("0.000000", "%-f", "0") testformat("0", "%-u", "0") testformat("0", "%-o", "0") testformat("0", "%-x", "0") testformat("1", "%-d", "1") testformat("1.000000e+00", "%-e", "1") testformat("1", "%-g", "1") testformat("1.000000", "%-f", "1") testformat("1", "%-u", "1") testformat("1", "%-o", "1") testformat("1", "%-x", "1") testformat("123", "%-d", "123") testformat("1.230000e+02", "%-e", "123") testformat("123", "%-g", "123") testformat("123.000000", "%-f", "123") testformat("123", "%-u", "123") testformat("173", "%-o", "123") testformat("7b", "%-x", "123") testformat("123", "%-d", "123.456") testformat("1.234560e+02", "%-e", "123.456") testformat("123.456", "%-g", "123.456") testformat("123.456000", "%-f", "123.456") testformat("123", "%-u", "123.456") testformat("173", "%-o", "123.456") testformat("7b", "%-x", "123.456") testformat("12345678", "%-d", "12345678") testformat("1.234568e+07", "%-e", "12345678") testformat("1.23457e+07", "%-g", "12345678") testformat("12345678.000000", "%-f", "12345678") testformat("12345678", "%-u", "12345678") testformat("57060516", "%-o", "12345678") testformat("bc614e", "%-x", "12345678") testformat("0", "%-d", "0.00000000000123456") testformat("1.234560e-12", "%-e", "0.00000000000123456") testformat("1.23456e-12", "%-g", "0.00000000000123456") testformat("0.000000", "%-f", "0.00000000000123456") testformat("0", "%-u", "0.00000000000123456") testformat("0", "%-o", "0.00000000000123456") testformat("0", "%-x", "0.00000000000123456") testformat("0", "%-d", "0.123456") testformat("1.234560e-01", "%-e", "0.123456") testformat("0.123456", "%-g", "0.123456") testformat("0.123456", "%-f", "0.123456") testformat("0", "%-u", "0.123456") testformat("0", "%-o", "0.123456") testformat("0", "%-x", "0.123456") testformat("0", "%-d", "0.00001") testformat("1.000000e-05", "%-e", "0.00001") testformat("1e-05", "%-g", "0.00001") testformat("0.000010", "%-f", "0.00001") testformat("0", "%-u", "0.00001") testformat("0", "%-o", "0.00001") testformat("0", "%-x", "0.00001") testformat("0", "%-d", "0.99") testformat("9.900000e-01", "%-e", "0.99") testformat("0.99", "%-g", "0.99") testformat("0.990000", "%-f", "0.99") testformat("0", "%-u", "0.99") testformat("0", "%-o", "0.99") testformat("0", "%-x", "0.99") testformat("2", "%-d", "2.5") testformat("2.500000e+00", "%-e", "2.5") testformat("2.5", "%-g", "2.5") testformat("2.500000", "%-f", "2.5") testformat("2", "%-u", "2.5") testformat("2", "%-o", "2.5") testformat("2", "%-x", "2.5") testformat("3", "%-d", "3.5") testformat("3.500000e+00", "%-e", "3.5") testformat("3.5", "%-g", "3.5") testformat("3.500000", "%-f", "3.5") testformat("3", "%-u", "3.5") testformat("3", "%-o", "3.5") testformat("3", "%-x", "3.5") testformat("0", "%-0d", "0") testformat("0.000000e+00", "%-0e", "0") testformat("0", "%-0g", "0") testformat("0.000000", "%-0f", "0") testformat("0", "%-0u", "0") testformat("0", "%-0o", "0") testformat("0", "%-0x", "0") testformat("1", "%-0d", "1") testformat("1.000000e+00", "%-0e", "1") testformat("1", "%-0g", "1") testformat("1.000000", "%-0f", "1") testformat("1", "%-0u", "1") testformat("1", "%-0o", "1") testformat("1", "%-0x", "1") testformat("123", "%-0d", "123") testformat("1.230000e+02", "%-0e", "123") testformat("123", "%-0g", "123") testformat("123.000000", "%-0f", "123") testformat("123", "%-0u", "123") testformat("173", "%-0o", "123") testformat("7b", "%-0x", "123") testformat("123", "%-0d", "123.456") testformat("1.234560e+02", "%-0e", "123.456") testformat("123.456", "%-0g", "123.456") testformat("123.456000", "%-0f", "123.456") testformat("123", "%-0u", "123.456") testformat("173", "%-0o", "123.456") testformat("7b", "%-0x", "123.456") testformat("12345678", "%-0d", "12345678") testformat("1.234568e+07", "%-0e", "12345678") testformat("1.23457e+07", "%-0g", "12345678") testformat("12345678.000000", "%-0f", "12345678") testformat("12345678", "%-0u", "12345678") testformat("57060516", "%-0o", "12345678") testformat("bc614e", "%-0x", "12345678") testformat("0", "%-0d", "0.00000000000123456") testformat("1.234560e-12", "%-0e", "0.00000000000123456") testformat("1.23456e-12", "%-0g", "0.00000000000123456") testformat("0.000000", "%-0f", "0.00000000000123456") testformat("0", "%-0u", "0.00000000000123456") testformat("0", "%-0o", "0.00000000000123456") testformat("0", "%-0x", "0.00000000000123456") testformat("0", "%-0d", "0.123456") testformat("1.234560e-01", "%-0e", "0.123456") testformat("0.123456", "%-0g", "0.123456") testformat("0.123456", "%-0f", "0.123456") testformat("0", "%-0u", "0.123456") testformat("0", "%-0o", "0.123456") testformat("0", "%-0x", "0.123456") testformat("0", "%-0d", "0.00001") testformat("1.000000e-05", "%-0e", "0.00001") testformat("1e-05", "%-0g", "0.00001") testformat("0.000010", "%-0f", "0.00001") testformat("0", "%-0u", "0.00001") testformat("0", "%-0o", "0.00001") testformat("0", "%-0x", "0.00001") testformat("0", "%-0d", "0.99") testformat("9.900000e-01", "%-0e", "0.99") testformat("0.99", "%-0g", "0.99") testformat("0.990000", "%-0f", "0.99") testformat("0", "%-0u", "0.99") testformat("0", "%-0o", "0.99") testformat("0", "%-0x", "0.99") testformat("2", "%-0d", "2.5") testformat("2.500000e+00", "%-0e", "2.5") testformat("2.5", "%-0g", "2.5") testformat("2.500000", "%-0f", "2.5") testformat("2", "%-0u", "2.5") testformat("2", "%-0o", "2.5") testformat("2", "%-0x", "2.5") testformat("3", "%-0d", "3.5") testformat("3.500000e+00", "%-0e", "3.5") testformat("3.5", "%-0g", "3.5") testformat("3.500000", "%-0f", "3.5") testformat("3", "%-0u", "3.5") testformat("3", "%-0o", "3.5") testformat("3", "%-0x", "3.5") testformat("0", "%0d", "0") testformat("0.000000e+00", "%0e", "0") testformat("0", "%0g", "0") testformat("0.000000", "%0f", "0") testformat("0", "%0u", "0") testformat("0", "%0o", "0") testformat("0", "%0x", "0") testformat("1", "%0d", "1") testformat("1.000000e+00", "%0e", "1") testformat("1", "%0g", "1") testformat("1.000000", "%0f", "1") testformat("1", "%0u", "1") testformat("1", "%0o", "1") testformat("1", "%0x", "1") testformat("123", "%0d", "123") testformat("1.230000e+02", "%0e", "123") testformat("123", "%0g", "123") testformat("123.000000", "%0f", "123") testformat("123", "%0u", "123") testformat("173", "%0o", "123") testformat("7b", "%0x", "123") testformat("123", "%0d", "123.456") testformat("1.234560e+02", "%0e", "123.456") testformat("123.456", "%0g", "123.456") testformat("123.456000", "%0f", "123.456") testformat("123", "%0u", "123.456") testformat("173", "%0o", "123.456") testformat("7b", "%0x", "123.456") testformat("12345678", "%0d", "12345678") testformat("1.234568e+07", "%0e", "12345678") testformat("1.23457e+07", "%0g", "12345678") testformat("12345678.000000", "%0f", "12345678") testformat("12345678", "%0u", "12345678") testformat("57060516", "%0o", "12345678") testformat("bc614e", "%0x", "12345678") testformat("0", "%0d", "0.00000000000123456") testformat("1.234560e-12", "%0e", "0.00000000000123456") testformat("1.23456e-12", "%0g", "0.00000000000123456") testformat("0.000000", "%0f", "0.00000000000123456") testformat("0", "%0u", "0.00000000000123456") testformat("0", "%0o", "0.00000000000123456") testformat("0", "%0x", "0.00000000000123456") testformat("0", "%0d", "0.123456") testformat("1.234560e-01", "%0e", "0.123456") testformat("0.123456", "%0g", "0.123456") testformat("0.123456", "%0f", "0.123456") testformat("0", "%0u", "0.123456") testformat("0", "%0o", "0.123456") testformat("0", "%0x", "0.123456") testformat("0", "%0d", "0.00001") testformat("1.000000e-05", "%0e", "0.00001") testformat("1e-05", "%0g", "0.00001") testformat("0.000010", "%0f", "0.00001") testformat("0", "%0u", "0.00001") testformat("0", "%0o", "0.00001") testformat("0", "%0x", "0.00001") testformat("0", "%0d", "0.99") testformat("9.900000e-01", "%0e", "0.99") testformat("0.99", "%0g", "0.99") testformat("0.990000", "%0f", "0.99") testformat("0", "%0u", "0.99") testformat("0", "%0o", "0.99") testformat("0", "%0x", "0.99") testformat("2", "%0d", "2.5") testformat("2.500000e+00", "%0e", "2.5") testformat("2.5", "%0g", "2.5") testformat("2.500000", "%0f", "2.5") testformat("2", "%0u", "2.5") testformat("2", "%0o", "2.5") testformat("2", "%0x", "2.5") testformat("3", "%0d", "3.5") testformat("3.500000e+00", "%0e", "3.5") testformat("3.5", "%0g", "3.5") testformat("3.500000", "%0f", "3.5") testformat("3", "%0u", "3.5") testformat("3", "%0o", "3.5") testformat("3", "%0x", "3.5") --Testing large number testformat("1.234568e+27", "%e", "12345678e20") testformat("1.23457e+27", "%g", "12345678e20") testformat("1e+27", "%.e", "12345678e20") testformat("1e+27", "%.g", "12345678e20") testformat("1e+27", "%.0e", "12345678e20") testformat("1e+27", "%.0g", "12345678e20") testformat("1.2e+27", "%.1e", "12345678e20") testformat("1e+27", "%.1g", "12345678e20") testformat("1.23e+27", "%.2e", "12345678e20") testformat("1.2e+27", "%.2g", "12345678e20") testformat("1.234568e+27", "%.6e", "12345678e20") testformat("1.23457e+27", "%.6g", "12345678e20") testformat("1.2345678000e+27", "%.10e", "12345678e20") testformat("1.2345678e+27", "%.10g", "12345678e20") testformat("1.234568e+27", "%#e", "12345678e20") testformat("1.23457e+27", "%#g", "12345678e20") testformat("1.e+27", "%#.e", "12345678e20") testformat("1.e+27", "%#.g", "12345678e20") testformat("1.e+27", "%#.0e", "12345678e20") testformat("1.e+27", "%#.0g", "12345678e20") testformat("1.2e+27", "%#.1e", "12345678e20") testformat("1.e+27", "%#.1g", "12345678e20") testformat("1.23e+27", "%#.2e", "12345678e20") testformat("1.2e+27", "%#.2g", "12345678e20") testformat("1.234568e+27", "%#.6e", "12345678e20") testformat("1.23457e+27", "%#.6g", "12345678e20") testformat("1.2345678000e+27", "%#.10e", "12345678e20") testformat("1.234567800e+27", "%#.10g", "12345678e20") testformat("+1.234568e+27", "%#+e", "12345678e20") testformat("+1.23457e+27", "%#+g", "12345678e20") testformat("+1.e+27", "%#+.e", "12345678e20") testformat("+1.e+27", "%#+.g", "12345678e20") testformat("+1.e+27", "%#+.0e", "12345678e20") testformat("+1.e+27", "%#+.0g", "12345678e20") testformat("+1.2e+27", "%#+.1e", "12345678e20") testformat("+1.e+27", "%#+.1g", "12345678e20") testformat("+1.23e+27", "%#+.2e", "12345678e20") testformat("+1.2e+27", "%#+.2g", "12345678e20") testformat("+1.234568e+27", "%#+.6e", "12345678e20") testformat("+1.23457e+27", "%#+.6g", "12345678e20") testformat("+1.2345678000e+27", "%#+.10e", "12345678e20") testformat("+1.234567800e+27", "%#+.10g", "12345678e20") testformat("+1.234568e+27", "%#+-e", "12345678e20") testformat("+1.23457e+27", "%#+-g", "12345678e20") testformat("+1.e+27", "%#+-.e", "12345678e20") testformat("+1.e+27", "%#+-.g", "12345678e20") testformat("+1.e+27", "%#+-.0e", "12345678e20") testformat("+1.e+27", "%#+-.0g", "12345678e20") testformat("+1.2e+27", "%#+-.1e", "12345678e20") testformat("+1.e+27", "%#+-.1g", "12345678e20") testformat("+1.23e+27", "%#+-.2e", "12345678e20") testformat("+1.2e+27", "%#+-.2g", "12345678e20") testformat("+1.234568e+27", "%#+-.6e", "12345678e20") testformat("+1.23457e+27", "%#+-.6g", "12345678e20") testformat("+1.2345678000e+27", "%#+-.10e", "12345678e20") testformat("+1.234567800e+27", "%#+-.10g", "12345678e20") testformat("+1.234568e+27", "%#+-0e", "12345678e20") testformat("+1.23457e+27", "%#+-0g", "12345678e20") testformat("+1.e+27", "%#+-0.e", "12345678e20") testformat("+1.e+27", "%#+-0.g", "12345678e20") testformat("+1.e+27", "%#+-0.0e", "12345678e20") testformat("+1.e+27", "%#+-0.0g", "12345678e20") testformat("+1.2e+27", "%#+-0.1e", "12345678e20") testformat("+1.e+27", "%#+-0.1g", "12345678e20") testformat("+1.23e+27", "%#+-0.2e", "12345678e20") testformat("+1.2e+27", "%#+-0.2g", "12345678e20") testformat("+1.234568e+27", "%#+-0.6e", "12345678e20") testformat("+1.23457e+27", "%#+-0.6g", "12345678e20") testformat("+1.2345678000e+27", "%#+-0.10e", "12345678e20") testformat("+1.234567800e+27", "%#+-0.10g", "12345678e20") testformat("+1.234568e+27", "%#+0e", "12345678e20") testformat("+1.23457e+27", "%#+0g", "12345678e20") testformat("+1.e+27", "%#+0.e", "12345678e20") testformat("+1.e+27", "%#+0.g", "12345678e20") testformat("+1.e+27", "%#+0.0e", "12345678e20") testformat("+1.e+27", "%#+0.0g", "12345678e20") testformat("+1.2e+27", "%#+0.1e", "12345678e20") testformat("+1.e+27", "%#+0.1g", "12345678e20") testformat("+1.23e+27", "%#+0.2e", "12345678e20") testformat("+1.2e+27", "%#+0.2g", "12345678e20") testformat("+1.234568e+27", "%#+0.6e", "12345678e20") testformat("+1.23457e+27", "%#+0.6g", "12345678e20") testformat("+1.2345678000e+27", "%#+0.10e", "12345678e20") testformat("+1.234567800e+27", "%#+0.10g", "12345678e20") testformat("1.234568e+27", "%#-e", "12345678e20") testformat("1.23457e+27", "%#-g", "12345678e20") testformat("1.e+27", "%#-.e", "12345678e20") testformat("1.e+27", "%#-.g", "12345678e20") testformat("1.e+27", "%#-.0e", "12345678e20") testformat("1.e+27", "%#-.0g", "12345678e20") testformat("1.2e+27", "%#-.1e", "12345678e20") testformat("1.e+27", "%#-.1g", "12345678e20") testformat("1.23e+27", "%#-.2e", "12345678e20") testformat("1.2e+27", "%#-.2g", "12345678e20") testformat("1.234568e+27", "%#-.6e", "12345678e20") testformat("1.23457e+27", "%#-.6g", "12345678e20") testformat("1.2345678000e+27", "%#-.10e", "12345678e20") testformat("1.234567800e+27", "%#-.10g", "12345678e20") testformat("1.234568e+27", "%#-0e", "12345678e20") testformat("1.23457e+27", "%#-0g", "12345678e20") testformat("1.e+27", "%#-0.e", "12345678e20") testformat("1.e+27", "%#-0.g", "12345678e20") testformat("1.e+27", "%#-0.0e", "12345678e20") testformat("1.e+27", "%#-0.0g", "12345678e20") testformat("1.2e+27", "%#-0.1e", "12345678e20") testformat("1.e+27", "%#-0.1g", "12345678e20") testformat("1.23e+27", "%#-0.2e", "12345678e20") testformat("1.2e+27", "%#-0.2g", "12345678e20") testformat("1.234568e+27", "%#-0.6e", "12345678e20") testformat("1.23457e+27", "%#-0.6g", "12345678e20") testformat("1.2345678000e+27", "%#-0.10e", "12345678e20") testformat("1.234567800e+27", "%#-0.10g", "12345678e20") testformat("1.234568e+27", "%#0e", "12345678e20") testformat("1.23457e+27", "%#0g", "12345678e20") testformat("1.e+27", "%#0.e", "12345678e20") testformat("1.e+27", "%#0.g", "12345678e20") testformat("1.e+27", "%#0.0e", "12345678e20") testformat("1.e+27", "%#0.0g", "12345678e20") testformat("1.2e+27", "%#0.1e", "12345678e20") testformat("1.e+27", "%#0.1g", "12345678e20") testformat("1.23e+27", "%#0.2e", "12345678e20") testformat("1.2e+27", "%#0.2g", "12345678e20") testformat("1.234568e+27", "%#0.6e", "12345678e20") testformat("1.23457e+27", "%#0.6g", "12345678e20") testformat("1.2345678000e+27", "%#0.10e", "12345678e20") testformat("1.234567800e+27", "%#0.10g", "12345678e20") testformat("+1.234568e+27", "%+e", "12345678e20") testformat("+1.23457e+27", "%+g", "12345678e20") testformat("+1e+27", "%+.e", "12345678e20") testformat("+1e+27", "%+.g", "12345678e20") testformat("+1e+27", "%+.0e", "12345678e20") testformat("+1e+27", "%+.0g", "12345678e20") testformat("+1.2e+27", "%+.1e", "12345678e20") testformat("+1e+27", "%+.1g", "12345678e20") testformat("+1.23e+27", "%+.2e", "12345678e20") testformat("+1.2e+27", "%+.2g", "12345678e20") testformat("+1.234568e+27", "%+.6e", "12345678e20") testformat("+1.23457e+27", "%+.6g", "12345678e20") testformat("+1.2345678000e+27", "%+.10e", "12345678e20") testformat("+1.2345678e+27", "%+.10g", "12345678e20") testformat("+1.234568e+27", "%+-e", "12345678e20") testformat("+1.23457e+27", "%+-g", "12345678e20") testformat("+1e+27", "%+-.e", "12345678e20") testformat("+1e+27", "%+-.g", "12345678e20") testformat("+1e+27", "%+-.0e", "12345678e20") testformat("+1e+27", "%+-.0g", "12345678e20") testformat("+1.2e+27", "%+-.1e", "12345678e20") testformat("+1e+27", "%+-.1g", "12345678e20") testformat("+1.23e+27", "%+-.2e", "12345678e20") testformat("+1.2e+27", "%+-.2g", "12345678e20") testformat("+1.234568e+27", "%+-.6e", "12345678e20") testformat("+1.23457e+27", "%+-.6g", "12345678e20") testformat("+1.2345678000e+27", "%+-.10e", "12345678e20") testformat("+1.2345678e+27", "%+-.10g", "12345678e20") testformat("+1.234568e+27", "%+-0e", "12345678e20") testformat("+1.23457e+27", "%+-0g", "12345678e20") testformat("+1e+27", "%+-0.e", "12345678e20") testformat("+1e+27", "%+-0.g", "12345678e20") testformat("+1e+27", "%+-0.0e", "12345678e20") testformat("+1e+27", "%+-0.0g", "12345678e20") testformat("+1.2e+27", "%+-0.1e", "12345678e20") testformat("+1e+27", "%+-0.1g", "12345678e20") testformat("+1.23e+27", "%+-0.2e", "12345678e20") testformat("+1.2e+27", "%+-0.2g", "12345678e20") testformat("+1.234568e+27", "%+-0.6e", "12345678e20") testformat("+1.23457e+27", "%+-0.6g", "12345678e20") testformat("+1.2345678000e+27", "%+-0.10e", "12345678e20") testformat("+1.2345678e+27", "%+-0.10g", "12345678e20") testformat("+1.234568e+27", "%+0e", "12345678e20") testformat("+1.23457e+27", "%+0g", "12345678e20") testformat("+1e+27", "%+0.e", "12345678e20") testformat("+1e+27", "%+0.g", "12345678e20") testformat("+1e+27", "%+0.0e", "12345678e20") testformat("+1e+27", "%+0.0g", "12345678e20") testformat("+1.2e+27", "%+0.1e", "12345678e20") testformat("+1e+27", "%+0.1g", "12345678e20") testformat("+1.23e+27", "%+0.2e", "12345678e20") testformat("+1.2e+27", "%+0.2g", "12345678e20") testformat("+1.234568e+27", "%+0.6e", "12345678e20") testformat("+1.23457e+27", "%+0.6g", "12345678e20") testformat("+1.2345678000e+27", "%+0.10e", "12345678e20") testformat("+1.2345678e+27", "%+0.10g", "12345678e20") testformat("1.234568e+27", "%-e", "12345678e20") testformat("1.23457e+27", "%-g", "12345678e20") testformat("1e+27", "%-.e", "12345678e20") testformat("1e+27", "%-.g", "12345678e20") testformat("1e+27", "%-.0e", "12345678e20") testformat("1e+27", "%-.0g", "12345678e20") testformat("1.2e+27", "%-.1e", "12345678e20") testformat("1e+27", "%-.1g", "12345678e20") testformat("1.23e+27", "%-.2e", "12345678e20") testformat("1.2e+27", "%-.2g", "12345678e20") testformat("1.234568e+27", "%-.6e", "12345678e20") testformat("1.23457e+27", "%-.6g", "12345678e20") testformat("1.2345678000e+27", "%-.10e", "12345678e20") testformat("1.2345678e+27", "%-.10g", "12345678e20") testformat("1.234568e+27", "%-0e", "12345678e20") testformat("1.23457e+27", "%-0g", "12345678e20") testformat("1e+27", "%-0.e", "12345678e20") testformat("1e+27", "%-0.g", "12345678e20") testformat("1e+27", "%-0.0e", "12345678e20") testformat("1e+27", "%-0.0g", "12345678e20") testformat("1.2e+27", "%-0.1e", "12345678e20") testformat("1e+27", "%-0.1g", "12345678e20") testformat("1.23e+27", "%-0.2e", "12345678e20") testformat("1.2e+27", "%-0.2g", "12345678e20") testformat("1.234568e+27", "%-0.6e", "12345678e20") testformat("1.23457e+27", "%-0.6g", "12345678e20") testformat("1.2345678000e+27", "%-0.10e", "12345678e20") testformat("1.2345678e+27", "%-0.10g", "12345678e20") testformat("1.234568e+27", "%0e", "12345678e20") testformat("1.23457e+27", "%0g", "12345678e20") testformat("1e+27", "%0.e", "12345678e20") testformat("1e+27", "%0.g", "12345678e20") testformat("1e+27", "%0.0e", "12345678e20") testformat("1e+27", "%0.0g", "12345678e20") testformat("1.2e+27", "%0.1e", "12345678e20") testformat("1e+27", "%0.1g", "12345678e20") testformat("1.23e+27", "%0.2e", "12345678e20") testformat("1.2e+27", "%0.2g", "12345678e20") testformat("1.234568e+27", "%0.6e", "12345678e20") testformat("1.23457e+27", "%0.6g", "12345678e20") testformat("1.2345678000e+27", "%0.10e", "12345678e20") testformat("1.2345678e+27", "%0.10g", "12345678e20")