Annotation of embedaddon/sqlite3/test/printf.test, revision 1.1
1.1 ! misho 1: # 2001 September 15
! 2: #
! 3: # The author disclaims copyright to this source code. In place of
! 4: # a legal notice, here is a blessing:
! 5: #
! 6: # May you do good and not evil.
! 7: # May you find forgiveness for yourself and forgive others.
! 8: # May you share freely, never taking more than you give.
! 9: #
! 10: #***********************************************************************
! 11: # This file implements regression tests for SQLite library. The
! 12: # focus of this file is testing the sqlite_*_printf() interface.
! 13: #
! 14: # $Id: printf.test,v 1.31 2009/02/01 00:21:10 drh Exp $
! 15:
! 16: set testdir [file dirname $argv0]
! 17: source $testdir/tester.tcl
! 18:
! 19:
! 20: do_test printf-1.1.1 {
! 21: sqlite3_mprintf_int {abc: %d %x %o :xyz}\
! 22: 1 1 1
! 23: } {abc: 1 1 1 :xyz}
! 24: do_test printf-1.1.2 {
! 25: sqlite3_mprintf_int {abc: (%6d) (%6x) (%6o) :xyz}\
! 26: 1 1 1
! 27: } {abc: ( 1) ( 1) ( 1) :xyz}
! 28: do_test printf-1.1.3 {
! 29: sqlite3_mprintf_int {abc: (%-6d) (%-6x) (%-6o) :xyz}\
! 30: 1 1 1
! 31: } {abc: (1 ) (1 ) (1 ) :xyz}
! 32: do_test printf-1.1.4 {
! 33: sqlite3_mprintf_int {abc: (%+6d) (%+6x) (%+6o) :xyz}\
! 34: 1 1 1
! 35: } {abc: ( +1) ( 1) ( 1) :xyz}
! 36: do_test printf-1.1.5 {
! 37: sqlite3_mprintf_int {abc: (%06d) (%06x) (%06o) :xyz}\
! 38: 1 1 1
! 39: } {abc: (000001) (000001) (000001) :xyz}
! 40: do_test printf-1.1.6 {
! 41: sqlite3_mprintf_int {abc: (% 6d) (% 6x) (% 6o) :xyz}\
! 42: 1 1 1
! 43: } {abc: ( 1) ( 1) ( 1) :xyz}
! 44: do_test printf-1.1.7 {
! 45: sqlite3_mprintf_int {abc: (%#6d) (%#6x) (%#6o) :xyz}\
! 46: 1 1 1
! 47: } {abc: ( 1) ( 0x1) ( 01) :xyz}
! 48: do_test printf-1.2.1 {
! 49: sqlite3_mprintf_int {abc: %d %x %o :xyz}\
! 50: 2 2 2
! 51: } {abc: 2 2 2 :xyz}
! 52: do_test printf-1.2.2 {
! 53: sqlite3_mprintf_int {abc: (%6d) (%6x) (%6o) :xyz}\
! 54: 2 2 2
! 55: } {abc: ( 2) ( 2) ( 2) :xyz}
! 56: do_test printf-1.2.3 {
! 57: sqlite3_mprintf_int {abc: (%-6d) (%-6x) (%-6o) :xyz}\
! 58: 2 2 2
! 59: } {abc: (2 ) (2 ) (2 ) :xyz}
! 60: do_test printf-1.2.4 {
! 61: sqlite3_mprintf_int {abc: (%+6d) (%+6x) (%+6o) :xyz}\
! 62: 2 2 2
! 63: } {abc: ( +2) ( 2) ( 2) :xyz}
! 64: do_test printf-1.2.5 {
! 65: sqlite3_mprintf_int {abc: (%06d) (%06x) (%06o) :xyz}\
! 66: 2 2 2
! 67: } {abc: (000002) (000002) (000002) :xyz}
! 68: do_test printf-1.2.6 {
! 69: sqlite3_mprintf_int {abc: (% 6d) (% 6x) (% 6o) :xyz}\
! 70: 2 2 2
! 71: } {abc: ( 2) ( 2) ( 2) :xyz}
! 72: do_test printf-1.2.7 {
! 73: sqlite3_mprintf_int {abc: (%#6d) (%#6x) (%#6o) :xyz}\
! 74: 2 2 2
! 75: } {abc: ( 2) ( 0x2) ( 02) :xyz}
! 76: do_test printf-1.3.1 {
! 77: sqlite3_mprintf_int {abc: %d %x %o :xyz}\
! 78: 5 5 5
! 79: } {abc: 5 5 5 :xyz}
! 80: do_test printf-1.3.2 {
! 81: sqlite3_mprintf_int {abc: (%6d) (%6x) (%6o) :xyz}\
! 82: 5 5 5
! 83: } {abc: ( 5) ( 5) ( 5) :xyz}
! 84: do_test printf-1.3.3 {
! 85: sqlite3_mprintf_int {abc: (%-6d) (%-6x) (%-6o) :xyz}\
! 86: 5 5 5
! 87: } {abc: (5 ) (5 ) (5 ) :xyz}
! 88: do_test printf-1.3.4 {
! 89: sqlite3_mprintf_int {abc: (%+6d) (%+6x) (%+6o) :xyz}\
! 90: 5 5 5
! 91: } {abc: ( +5) ( 5) ( 5) :xyz}
! 92: do_test printf-1.3.5 {
! 93: sqlite3_mprintf_int {abc: (%06d) (%06x) (%06o) :xyz}\
! 94: 5 5 5
! 95: } {abc: (000005) (000005) (000005) :xyz}
! 96: do_test printf-1.3.6 {
! 97: sqlite3_mprintf_int {abc: (% 6d) (% 6x) (% 6o) :xyz}\
! 98: 5 5 5
! 99: } {abc: ( 5) ( 5) ( 5) :xyz}
! 100: do_test printf-1.3.7 {
! 101: sqlite3_mprintf_int {abc: (%#6d) (%#6x) (%#6o) :xyz}\
! 102: 5 5 5
! 103: } {abc: ( 5) ( 0x5) ( 05) :xyz}
! 104: do_test printf-1.4.1 {
! 105: sqlite3_mprintf_int {abc: %d %x %o :xyz}\
! 106: 10 10 10
! 107: } {abc: 10 a 12 :xyz}
! 108: do_test printf-1.4.2 {
! 109: sqlite3_mprintf_int {abc: (%6d) (%6x) (%6o) :xyz}\
! 110: 10 10 10
! 111: } {abc: ( 10) ( a) ( 12) :xyz}
! 112: do_test printf-1.4.3 {
! 113: sqlite3_mprintf_int {abc: (%-6d) (%-6x) (%-6o) :xyz}\
! 114: 10 10 10
! 115: } {abc: (10 ) (a ) (12 ) :xyz}
! 116: do_test printf-1.4.4 {
! 117: sqlite3_mprintf_int {abc: (%+6d) (%+6x) (%+6o) :xyz}\
! 118: 10 10 10
! 119: } {abc: ( +10) ( a) ( 12) :xyz}
! 120: do_test printf-1.4.5 {
! 121: sqlite3_mprintf_int {abc: (%06d) (%06x) (%06o) :xyz}\
! 122: 10 10 10
! 123: } {abc: (000010) (00000a) (000012) :xyz}
! 124: do_test printf-1.4.6 {
! 125: sqlite3_mprintf_int {abc: (% 6d) (% 6x) (% 6o) :xyz}\
! 126: 10 10 10
! 127: } {abc: ( 10) ( a) ( 12) :xyz}
! 128: do_test printf-1.4.7 {
! 129: sqlite3_mprintf_int {abc: (%#6d) (%#6x) (%#6o) :xyz}\
! 130: 10 10 10
! 131: } {abc: ( 10) ( 0xa) ( 012) :xyz}
! 132: do_test printf-1.5.1 {
! 133: sqlite3_mprintf_int {abc: %d %x %o :xyz}\
! 134: 99 99 99
! 135: } {abc: 99 63 143 :xyz}
! 136: do_test printf-1.5.2 {
! 137: sqlite3_mprintf_int {abc: (%6d) (%6x) (%6o) :xyz}\
! 138: 99 99 99
! 139: } {abc: ( 99) ( 63) ( 143) :xyz}
! 140: do_test printf-1.5.3 {
! 141: sqlite3_mprintf_int {abc: (%-6d) (%-6x) (%-6o) :xyz}\
! 142: 99 99 99
! 143: } {abc: (99 ) (63 ) (143 ) :xyz}
! 144: do_test printf-1.5.4 {
! 145: sqlite3_mprintf_int {abc: (%+6d) (%+6x) (%+6o) :xyz}\
! 146: 99 99 99
! 147: } {abc: ( +99) ( 63) ( 143) :xyz}
! 148: do_test printf-1.5.5 {
! 149: sqlite3_mprintf_int {abc: (%06d) (%06x) (%06o) :xyz}\
! 150: 99 99 99
! 151: } {abc: (000099) (000063) (000143) :xyz}
! 152: do_test printf-1.5.6 {
! 153: sqlite3_mprintf_int {abc: (% 6d) (% 6x) (% 6o) :xyz}\
! 154: 99 99 99
! 155: } {abc: ( 99) ( 63) ( 143) :xyz}
! 156: do_test printf-1.5.7 {
! 157: sqlite3_mprintf_int {abc: (%#6d) (%#6x) (%#6o) :xyz}\
! 158: 99 99 99
! 159: } {abc: ( 99) ( 0x63) ( 0143) :xyz}
! 160: do_test printf-1.6.1 {
! 161: sqlite3_mprintf_int {abc: %d %x %o :xyz}\
! 162: 100 100 100
! 163: } {abc: 100 64 144 :xyz}
! 164: do_test printf-1.6.2 {
! 165: sqlite3_mprintf_int {abc: (%6d) (%6x) (%6o) :xyz}\
! 166: 100 100 100
! 167: } {abc: ( 100) ( 64) ( 144) :xyz}
! 168: do_test printf-1.6.3 {
! 169: sqlite3_mprintf_int {abc: (%-6d) (%-6x) (%-6o) :xyz}\
! 170: 100 100 100
! 171: } {abc: (100 ) (64 ) (144 ) :xyz}
! 172: do_test printf-1.6.4 {
! 173: sqlite3_mprintf_int {abc: (%+6d) (%+6x) (%+6o) :xyz}\
! 174: 100 100 100
! 175: } {abc: ( +100) ( 64) ( 144) :xyz}
! 176: do_test printf-1.6.5 {
! 177: sqlite3_mprintf_int {abc: (%06d) (%06x) (%06o) :xyz}\
! 178: 100 100 100
! 179: } {abc: (000100) (000064) (000144) :xyz}
! 180: do_test printf-1.6.6 {
! 181: sqlite3_mprintf_int {abc: (% 6d) (% 6x) (% 6o) :xyz}\
! 182: 100 100 100
! 183: } {abc: ( 100) ( 64) ( 144) :xyz}
! 184: do_test printf-1.6.7 {
! 185: sqlite3_mprintf_int {abc: (%#6d) (%#6x) (%#6o) :xyz}\
! 186: 100 100 100
! 187: } {abc: ( 100) ( 0x64) ( 0144) :xyz}
! 188: do_test printf-1.7.1 {
! 189: sqlite3_mprintf_int {abc: %d %x %o :xyz}\
! 190: 1000000 1000000 1000000
! 191: } {abc: 1000000 f4240 3641100 :xyz}
! 192: do_test printf-1.7.2 {
! 193: sqlite3_mprintf_int {abc: (%6d) (%6x) (%6o) :xyz}\
! 194: 1000000 1000000 1000000
! 195: } {abc: (1000000) ( f4240) (3641100) :xyz}
! 196: do_test printf-1.7.3 {
! 197: sqlite3_mprintf_int {abc: (%-6d) (%-6x) (%-6o) :xyz}\
! 198: 1000000 1000000 1000000
! 199: } {abc: (1000000) (f4240 ) (3641100) :xyz}
! 200: do_test printf-1.7.4 {
! 201: sqlite3_mprintf_int {abc: (%+6d) (%+6x) (%+6o) :xyz}\
! 202: 1000000 1000000 1000000
! 203: } {abc: (+1000000) ( f4240) (3641100) :xyz}
! 204: do_test printf-1.7.5 {
! 205: sqlite3_mprintf_int {abc: (%06d) (%06x) (%06o) :xyz}\
! 206: 1000000 1000000 1000000
! 207: } {abc: (1000000) (0f4240) (3641100) :xyz}
! 208: do_test printf-1.7.6 {
! 209: sqlite3_mprintf_int {abc: (% 6d) (% 6x) (% 6o) :xyz}\
! 210: 1000000 1000000 1000000
! 211: } {abc: ( 1000000) ( f4240) (3641100) :xyz}
! 212: do_test printf-1.7.7 {
! 213: sqlite3_mprintf_int {abc: (%#6d) (%#6x) (%#6o) :xyz}\
! 214: 1000000 1000000 1000000
! 215: } {abc: (1000000) (0xf4240) (03641100) :xyz}
! 216: do_test printf-1.8.1 {
! 217: sqlite3_mprintf_int {abc: %d %x %o :xyz}\
! 218: 999999999 999999999 999999999
! 219: } {abc: 999999999 3b9ac9ff 7346544777 :xyz}
! 220: do_test printf-1.8.2 {
! 221: sqlite3_mprintf_int {abc: (%6d) (%6x) (%6o) :xyz}\
! 222: 999999999 999999999 999999999
! 223: } {abc: (999999999) (3b9ac9ff) (7346544777) :xyz}
! 224: do_test printf-1.8.3 {
! 225: sqlite3_mprintf_int {abc: (%-6d) (%-6x) (%-6o) :xyz}\
! 226: 999999999 999999999 999999999
! 227: } {abc: (999999999) (3b9ac9ff) (7346544777) :xyz}
! 228: do_test printf-1.8.4 {
! 229: sqlite3_mprintf_int {abc: (%+6d) (%+6x) (%+6o) :xyz}\
! 230: 999999999 999999999 999999999
! 231: } {abc: (+999999999) (3b9ac9ff) (7346544777) :xyz}
! 232: do_test printf-1.8.5 {
! 233: sqlite3_mprintf_int {abc: (%06d) (%06x) (%06o) :xyz}\
! 234: 999999999 999999999 999999999
! 235: } {abc: (999999999) (3b9ac9ff) (7346544777) :xyz}
! 236: do_test printf-1.8.6 {
! 237: sqlite3_mprintf_int {abc: (% 6d) (% 6x) (% 6o) :xyz}\
! 238: 999999999 999999999 999999999
! 239: } {abc: ( 999999999) (3b9ac9ff) (7346544777) :xyz}
! 240: do_test printf-1.8.7 {
! 241: sqlite3_mprintf_int {abc: (%#6d) (%#6x) (%#6o) :xyz}\
! 242: 999999999 999999999 999999999
! 243: } {abc: (999999999) (0x3b9ac9ff) (07346544777) :xyz}
! 244: do_test printf-1.9.1 {
! 245: sqlite3_mprintf_int {abc: %d %x %o :xyz}\
! 246: 0 0 0
! 247: } {abc: 0 0 0 :xyz}
! 248: do_test printf-1.9.2 {
! 249: sqlite3_mprintf_int {abc: (%6d) (%6x) (%6o) :xyz}\
! 250: 0 0 0
! 251: } {abc: ( 0) ( 0) ( 0) :xyz}
! 252: do_test printf-1.9.3 {
! 253: sqlite3_mprintf_int {abc: (%-6d) (%-6x) (%-6o) :xyz}\
! 254: 0 0 0
! 255: } {abc: (0 ) (0 ) (0 ) :xyz}
! 256: do_test printf-1.9.4 {
! 257: sqlite3_mprintf_int {abc: (%+6d) (%+6x) (%+6o) :xyz}\
! 258: 0 0 0
! 259: } {abc: ( +0) ( 0) ( 0) :xyz}
! 260: do_test printf-1.9.5 {
! 261: sqlite3_mprintf_int {abc: (%06d) (%06x) (%06o) :xyz}\
! 262: 0 0 0
! 263: } {abc: (000000) (000000) (000000) :xyz}
! 264: do_test printf-1.9.6 {
! 265: sqlite3_mprintf_int {abc: (% 6d) (% 6x) (% 6o) :xyz}\
! 266: 0 0 0
! 267: } {abc: ( 0) ( 0) ( 0) :xyz}
! 268: do_test printf-1.9.7 {
! 269: sqlite3_mprintf_int {abc: (%#6d) (%#6x) (%#6o) :xyz}\
! 270: 0 0 0
! 271: } {abc: ( 0) ( 0) ( 0) :xyz}
! 272: # 0xffffffff == -1
! 273: do_test printf-1.10.1 {
! 274: sqlite3_mprintf_int {abc: %d %x %o :xyz}\
! 275: 0xffffffff 0xffffffff 0xffffffff
! 276: } {abc: -1 ffffffff 37777777777 :xyz}
! 277: do_test printf-1.10.2 {
! 278: sqlite3_mprintf_int {abc: (%6d) (%6x) (%6o) :xyz}\
! 279: 0xffffffff 0xffffffff 0xffffffff
! 280: } {abc: ( -1) (ffffffff) (37777777777) :xyz}
! 281: do_test printf-1.10.3 {
! 282: sqlite3_mprintf_int {abc: (%-6d) (%-6x) (%-6o) :xyz}\
! 283: 0xffffffff 0xffffffff 0xffffffff
! 284: } {abc: (-1 ) (ffffffff) (37777777777) :xyz}
! 285: do_test printf-1.10.4 {
! 286: sqlite3_mprintf_int {abc: (%+6d) (%+6x) (%+6o) :xyz}\
! 287: 0xffffffff 0xffffffff 0xffffffff
! 288: } {abc: ( -1) (ffffffff) (37777777777) :xyz}
! 289: do_test printf-1.10.5 {
! 290: sqlite3_mprintf_int {abc: (%06d) (%06x) (%06o) :xyz}\
! 291: 0xffffffff 0xffffffff 0xffffffff
! 292: } {abc: (-00001) (ffffffff) (37777777777) :xyz}
! 293: do_test printf-1.10.6 {
! 294: sqlite3_mprintf_int {abc: (% 6d) (% 6x) (% 6o) :xyz}\
! 295: 0xffffffff 0xffffffff 0xffffffff
! 296: } {abc: ( -1) (ffffffff) (37777777777) :xyz}
! 297: do_test printf-1.10.7 {
! 298: sqlite3_mprintf_int {abc: (%#6d) (%#6x) (%#6o) :xyz}\
! 299: 0xffffffff 0xffffffff 0xffffffff
! 300: } {abc: ( -1) (0xffffffff) (037777777777) :xyz}
! 301: # 0xfffffffe == -2
! 302: do_test printf-1.11.1 {
! 303: sqlite3_mprintf_int {abc: %d %x %o :xyz}\
! 304: 0xfffffffe 0xfffffffe 0xfffffffe
! 305: } {abc: -2 fffffffe 37777777776 :xyz}
! 306: do_test printf-1.11.2 {
! 307: sqlite3_mprintf_int {abc: (%6d) (%6x) (%6o) :xyz}\
! 308: 0xfffffffe 0xfffffffe 0xfffffffe
! 309: } {abc: ( -2) (fffffffe) (37777777776) :xyz}
! 310: do_test printf-1.11.3 {
! 311: sqlite3_mprintf_int {abc: (%-6d) (%-6x) (%-6o) :xyz}\
! 312: 0xfffffffe 0xfffffffe 0xfffffffe
! 313: } {abc: (-2 ) (fffffffe) (37777777776) :xyz}
! 314: do_test printf-1.11.4 {
! 315: sqlite3_mprintf_int {abc: (%+6d) (%+6x) (%+6o) :xyz}\
! 316: 0xfffffffe 0xfffffffe 0xfffffffe
! 317: } {abc: ( -2) (fffffffe) (37777777776) :xyz}
! 318: do_test printf-1.11.5 {
! 319: sqlite3_mprintf_int {abc: (%06d) (%06x) (%06o) :xyz}\
! 320: 0xfffffffe 0xfffffffe 0xfffffffe
! 321: } {abc: (-00002) (fffffffe) (37777777776) :xyz}
! 322: do_test printf-1.11.6 {
! 323: sqlite3_mprintf_int {abc: (% 6d) (% 6x) (% 6o) :xyz}\
! 324: 0xfffffffe 0xfffffffe 0xfffffffe
! 325: } {abc: ( -2) (fffffffe) (37777777776) :xyz}
! 326: do_test printf-1.11.7 {
! 327: sqlite3_mprintf_int {abc: (%#6d) (%#6x) (%#6o) :xyz}\
! 328: 0xfffffffe 0xfffffffe 0xfffffffe
! 329: } {abc: ( -2) (0xfffffffe) (037777777776) :xyz}
! 330: # 0xfffffffb == -5
! 331: do_test printf-1.12.1 {
! 332: sqlite3_mprintf_int {abc: %d %x %o :xyz}\
! 333: 0xfffffffb 0xfffffffb 0xfffffffb
! 334: } {abc: -5 fffffffb 37777777773 :xyz}
! 335: do_test printf-1.12.2 {
! 336: sqlite3_mprintf_int {abc: (%6d) (%6x) (%6o) :xyz}\
! 337: 0xfffffffb 0xfffffffb 0xfffffffb
! 338: } {abc: ( -5) (fffffffb) (37777777773) :xyz}
! 339: do_test printf-1.12.3 {
! 340: sqlite3_mprintf_int {abc: (%-6d) (%-6x) (%-6o) :xyz}\
! 341: 0xfffffffb 0xfffffffb 0xfffffffb
! 342: } {abc: (-5 ) (fffffffb) (37777777773) :xyz}
! 343: do_test printf-1.12.4 {
! 344: sqlite3_mprintf_int {abc: (%+6d) (%+6x) (%+6o) :xyz}\
! 345: 0xfffffffb 0xfffffffb 0xfffffffb
! 346: } {abc: ( -5) (fffffffb) (37777777773) :xyz}
! 347: do_test printf-1.12.5 {
! 348: sqlite3_mprintf_int {abc: (%06d) (%06x) (%06o) :xyz}\
! 349: 0xfffffffb 0xfffffffb 0xfffffffb
! 350: } {abc: (-00005) (fffffffb) (37777777773) :xyz}
! 351: do_test printf-1.12.6 {
! 352: sqlite3_mprintf_int {abc: (% 6d) (% 6x) (% 6o) :xyz}\
! 353: 0xfffffffb 0xfffffffb 0xfffffffb
! 354: } {abc: ( -5) (fffffffb) (37777777773) :xyz}
! 355: do_test printf-1.12.7 {
! 356: sqlite3_mprintf_int {abc: (%#6d) (%#6x) (%#6o) :xyz}\
! 357: 0xfffffffb 0xfffffffb 0xfffffffb
! 358: } {abc: ( -5) (0xfffffffb) (037777777773) :xyz}
! 359: # 0xfffffff6 == -10
! 360: do_test printf-1.13.1 {
! 361: sqlite3_mprintf_int {abc: %d %x %o :xyz}\
! 362: 0xfffffff6 0xfffffff6 0xfffffff6
! 363: } {abc: -10 fffffff6 37777777766 :xyz}
! 364: do_test printf-1.13.2 {
! 365: sqlite3_mprintf_int {abc: (%6d) (%6x) (%6o) :xyz}\
! 366: 0xfffffff6 0xfffffff6 0xfffffff6
! 367: } {abc: ( -10) (fffffff6) (37777777766) :xyz}
! 368: do_test printf-1.13.3 {
! 369: sqlite3_mprintf_int {abc: (%-6d) (%-6x) (%-6o) :xyz}\
! 370: 0xfffffff6 0xfffffff6 0xfffffff6
! 371: } {abc: (-10 ) (fffffff6) (37777777766) :xyz}
! 372: do_test printf-1.13.4 {
! 373: sqlite3_mprintf_int {abc: (%+6d) (%+6x) (%+6o) :xyz}\
! 374: 0xfffffff6 0xfffffff6 0xfffffff6
! 375: } {abc: ( -10) (fffffff6) (37777777766) :xyz}
! 376: do_test printf-1.13.5 {
! 377: sqlite3_mprintf_int {abc: (%06d) (%06x) (%06o) :xyz}\
! 378: 0xfffffff6 0xfffffff6 0xfffffff6
! 379: } {abc: (-00010) (fffffff6) (37777777766) :xyz}
! 380: do_test printf-1.13.6 {
! 381: sqlite3_mprintf_int {abc: (% 6d) (% 6x) (% 6o) :xyz}\
! 382: 0xfffffff6 0xfffffff6 0xfffffff6
! 383: } {abc: ( -10) (fffffff6) (37777777766) :xyz}
! 384: do_test printf-1.13.7 {
! 385: sqlite3_mprintf_int {abc: (%#6d) (%#6x) (%#6o) :xyz}\
! 386: 0xfffffff6 0xfffffff6 0xfffffff6
! 387: } {abc: ( -10) (0xfffffff6) (037777777766) :xyz}
! 388: # 0xffffff9d == -99
! 389: do_test printf-1.14.1 {
! 390: sqlite3_mprintf_int {abc: %d %x %o :xyz}\
! 391: 0xffffff9d 0xffffff9d 0xffffff9d
! 392: } {abc: -99 ffffff9d 37777777635 :xyz}
! 393: do_test printf-1.14.2 {
! 394: sqlite3_mprintf_int {abc: (%6d) (%6x) (%6o) :xyz}\
! 395: 0xffffff9d 0xffffff9d 0xffffff9d
! 396: } {abc: ( -99) (ffffff9d) (37777777635) :xyz}
! 397: do_test printf-1.14.3 {
! 398: sqlite3_mprintf_int {abc: (%-6d) (%-6x) (%-6o) :xyz}\
! 399: 0xffffff9d 0xffffff9d 0xffffff9d
! 400: } {abc: (-99 ) (ffffff9d) (37777777635) :xyz}
! 401: do_test printf-1.14.4 {
! 402: sqlite3_mprintf_int {abc: (%+6d) (%+6x) (%+6o) :xyz}\
! 403: 0xffffff9d 0xffffff9d 0xffffff9d
! 404: } {abc: ( -99) (ffffff9d) (37777777635) :xyz}
! 405: do_test printf-1.14.5 {
! 406: sqlite3_mprintf_int {abc: (%06d) (%06x) (%06o) :xyz}\
! 407: 0xffffff9d 0xffffff9d 0xffffff9d
! 408: } {abc: (-00099) (ffffff9d) (37777777635) :xyz}
! 409: do_test printf-1.14.6 {
! 410: sqlite3_mprintf_int {abc: (% 6d) (% 6x) (% 6o) :xyz}\
! 411: 0xffffff9d 0xffffff9d 0xffffff9d
! 412: } {abc: ( -99) (ffffff9d) (37777777635) :xyz}
! 413: do_test printf-1.14.7 {
! 414: sqlite3_mprintf_int {abc: (%#6d) (%#6x) (%#6o) :xyz}\
! 415: 0xffffff9d 0xffffff9d 0xffffff9d
! 416: } {abc: ( -99) (0xffffff9d) (037777777635) :xyz}
! 417: # 0xffffff9c == -100
! 418: do_test printf-1.15.1 {
! 419: sqlite3_mprintf_int {abc: %d %x %o :xyz}\
! 420: 0xffffff9c 0xffffff9c 0xffffff9c
! 421: } {abc: -100 ffffff9c 37777777634 :xyz}
! 422: do_test printf-1.15.2 {
! 423: sqlite3_mprintf_int {abc: (%6d) (%6x) (%6o) :xyz}\
! 424: 0xffffff9c 0xffffff9c 0xffffff9c
! 425: } {abc: ( -100) (ffffff9c) (37777777634) :xyz}
! 426: do_test printf-1.15.3 {
! 427: sqlite3_mprintf_int {abc: (%-6d) (%-6x) (%-6o) :xyz}\
! 428: 0xffffff9c 0xffffff9c 0xffffff9c
! 429: } {abc: (-100 ) (ffffff9c) (37777777634) :xyz}
! 430: do_test printf-1.15.4 {
! 431: sqlite3_mprintf_int {abc: (%+6d) (%+6x) (%+6o) :xyz}\
! 432: 0xffffff9c 0xffffff9c 0xffffff9c
! 433: } {abc: ( -100) (ffffff9c) (37777777634) :xyz}
! 434: do_test printf-1.15.5 {
! 435: sqlite3_mprintf_int {abc: (%06d) (%06x) (%06o) :xyz}\
! 436: 0xffffff9c 0xffffff9c 0xffffff9c
! 437: } {abc: (-00100) (ffffff9c) (37777777634) :xyz}
! 438: do_test printf-1.15.6 {
! 439: sqlite3_mprintf_int {abc: (% 6d) (% 6x) (% 6o) :xyz}\
! 440: 0xffffff9c 0xffffff9c 0xffffff9c
! 441: } {abc: ( -100) (ffffff9c) (37777777634) :xyz}
! 442: do_test printf-1.15.7 {
! 443: sqlite3_mprintf_int {abc: (%#6d) (%#6x) (%#6o) :xyz}\
! 444: 0xffffff9c 0xffffff9c 0xffffff9c
! 445: } {abc: ( -100) (0xffffff9c) (037777777634) :xyz}
! 446: # 0xff676981 == -9999999
! 447: do_test printf-1.16.1 {
! 448: sqlite3_mprintf_int {abc: %d %x %o :xyz}\
! 449: 0xff676981 0xff676981 0xff676981
! 450: } {abc: -9999999 ff676981 37731664601 :xyz}
! 451: do_test printf-1.16.2 {
! 452: sqlite3_mprintf_int {abc: (%6d) (%6x) (%6o) :xyz}\
! 453: 0xff676981 0xff676981 0xff676981
! 454: } {abc: (-9999999) (ff676981) (37731664601) :xyz}
! 455: do_test printf-1.16.3 {
! 456: sqlite3_mprintf_int {abc: (%-6d) (%-6x) (%-6o) :xyz}\
! 457: 0xff676981 0xff676981 0xff676981
! 458: } {abc: (-9999999) (ff676981) (37731664601) :xyz}
! 459: do_test printf-1.16.4 {
! 460: sqlite3_mprintf_int {abc: (%+6d) (%+6x) (%+6o) :xyz}\
! 461: 0xff676981 0xff676981 0xff676981
! 462: } {abc: (-9999999) (ff676981) (37731664601) :xyz}
! 463: do_test printf-1.16.5 {
! 464: sqlite3_mprintf_int {abc: (%06d) (%06x) (%06o) :xyz}\
! 465: 0xff676981 0xff676981 0xff676981
! 466: } {abc: (-9999999) (ff676981) (37731664601) :xyz}
! 467: do_test printf-1.16.6 {
! 468: sqlite3_mprintf_int {abc: (% 6d) (% 6x) (% 6o) :xyz}\
! 469: 0xff676981 0xff676981 0xff676981
! 470: } {abc: (-9999999) (ff676981) (37731664601) :xyz}
! 471: do_test printf-1.16.7 {
! 472: sqlite3_mprintf_int {abc: (%#6d) (%#6x) (%#6o) :xyz}\
! 473: 0xff676981 0xff676981 0xff676981
! 474: } {abc: (-9999999) (0xff676981) (037731664601) :xyz}
! 475: do_test printf-2.1.1.1 {
! 476: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 1 1 0.001
! 477: } {abc: (0.0) :xyz}
! 478: do_test printf-2.1.1.2 {
! 479: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 1 1 0.001
! 480: } {abc: (1.0e-03) :xyz}
! 481: do_test printf-2.1.1.3 {
! 482: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 1 1 0.001
! 483: } {abc: (0.001) :xyz}
! 484: do_test printf-2.1.1.4 {
! 485: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 1 1 0.001
! 486: } {abc: 1 1 (0.001) :xyz}
! 487: do_test printf-2.1.1.5 {
! 488: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 1 1 0.001
! 489: } {abc: 1 1 (0.00100000) :xyz}
! 490: do_test printf-2.1.1.6 {
! 491: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 1 1 0.001
! 492: } {abc: 1 1 (000000.001) :xyz}
! 493: do_test printf-2.1.1.7 {
! 494: sqlite3_mprintf_double {abc: %d %d (%1.1f) :xyz} 1 1 0.001
! 495: } {abc: 1 1 (0.0) :xyz}
! 496: do_test printf-2.1.1.8 {
! 497: sqlite3_mprintf_double {abc: %d %d (%1.1e) :xyz} 1 1 0.001
! 498: } {abc: 1 1 (1.0e-03) :xyz}
! 499: do_test printf-2.1.1.9 {
! 500: sqlite3_mprintf_double {abc: %d %d (%1.1g) :xyz} 1 1 0.001
! 501: } {abc: 1 1 (0.001) :xyz}
! 502: do_test printf-2.1.2.1 {
! 503: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 1 1 1.0e-20
! 504: } {abc: (0.0) :xyz}
! 505: do_test printf-2.1.2.2 {
! 506: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 1 1 1.0e-20
! 507: } {abc: (1.0e-20) :xyz}
! 508: do_test printf-2.1.2.3 {
! 509: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 1 1 1.0e-20
! 510: } {abc: (1e-20) :xyz}
! 511: do_test printf-2.1.2.4 {
! 512: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 1 1 1.0e-20
! 513: } {abc: 1 1 (1e-20) :xyz}
! 514: do_test printf-2.1.2.5 {
! 515: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 1 1 1.0e-20
! 516: } {abc: 1 1 (1.00000e-20) :xyz}
! 517: do_test printf-2.1.2.6 {
! 518: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 1 1 1.0e-20
! 519: } {abc: 1 1 (000001e-20) :xyz}
! 520: do_test printf-2.1.2.7 {
! 521: sqlite3_mprintf_double {abc: %d %d (%1.1f) :xyz} 1 1 1.0e-20
! 522: } {abc: 1 1 (0.0) :xyz}
! 523: do_test printf-2.1.2.8 {
! 524: sqlite3_mprintf_double {abc: %d %d (%1.1e) :xyz} 1 1 1.0e-20
! 525: } {abc: 1 1 (1.0e-20) :xyz}
! 526: do_test printf-2.1.2.9 {
! 527: sqlite3_mprintf_double {abc: %d %d (%1.1g) :xyz} 1 1 1.0e-20
! 528: } {abc: 1 1 (1e-20) :xyz}
! 529: do_test printf-2.1.3.1 {
! 530: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 1 1 1.0
! 531: } {abc: (1.0) :xyz}
! 532: do_test printf-2.1.3.2 {
! 533: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 1 1 1.0
! 534: } {abc: (1.0e+00) :xyz}
! 535: do_test printf-2.1.3.3 {
! 536: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 1 1 1.0
! 537: } {abc: (1) :xyz}
! 538: do_test printf-2.1.3.4 {
! 539: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 1 1 1.0
! 540: } {abc: 1 1 (1) :xyz}
! 541: do_test printf-2.1.3.5 {
! 542: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 1 1 1.0
! 543: } {abc: 1 1 (1.00000) :xyz}
! 544: do_test printf-2.1.3.6 {
! 545: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 1 1 1.0
! 546: } {abc: 1 1 (0000000001) :xyz}
! 547: do_test printf-2.1.3.7 {
! 548: sqlite3_mprintf_double {abc: %d %d (%1.1f) :xyz} 1 1 1.0
! 549: } {abc: 1 1 (1.0) :xyz}
! 550: do_test printf-2.1.3.8 {
! 551: sqlite3_mprintf_double {abc: %d %d (%1.1e) :xyz} 1 1 1.0
! 552: } {abc: 1 1 (1.0e+00) :xyz}
! 553: do_test printf-2.1.3.9 {
! 554: sqlite3_mprintf_double {abc: %d %d (%1.1g) :xyz} 1 1 1.0
! 555: } {abc: 1 1 (1) :xyz}
! 556: do_test printf-2.1.4.1 {
! 557: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 1 1 0.0
! 558: } {abc: (0.0) :xyz}
! 559: do_test printf-2.1.4.2 {
! 560: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 1 1 0.0
! 561: } {abc: (0.0e+00) :xyz}
! 562: do_test printf-2.1.4.3 {
! 563: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 1 1 0.0
! 564: } {abc: (0) :xyz}
! 565: do_test printf-2.1.4.4 {
! 566: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 1 1 0.0
! 567: } {abc: 1 1 (0) :xyz}
! 568: do_test printf-2.1.4.5 {
! 569: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 1 1 0.0
! 570: } {abc: 1 1 (0.00000) :xyz}
! 571: do_test printf-2.1.4.6 {
! 572: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 1 1 0.0
! 573: } {abc: 1 1 (0000000000) :xyz}
! 574: do_test printf-2.1.4.7 {
! 575: sqlite3_mprintf_double {abc: %d %d (%1.1f) :xyz} 1 1 0.0
! 576: } {abc: 1 1 (0.0) :xyz}
! 577: do_test printf-2.1.4.8 {
! 578: sqlite3_mprintf_double {abc: %d %d (%1.1e) :xyz} 1 1 0.0
! 579: } {abc: 1 1 (0.0e+00) :xyz}
! 580: do_test printf-2.1.4.9 {
! 581: sqlite3_mprintf_double {abc: %d %d (%1.1g) :xyz} 1 1 0.0
! 582: } {abc: 1 1 (0) :xyz}
! 583: do_test printf-2.1.5.1 {
! 584: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 1 1 100.0
! 585: } {abc: (100.0) :xyz}
! 586: do_test printf-2.1.5.2 {
! 587: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 1 1 100.0
! 588: } {abc: (1.0e+02) :xyz}
! 589: do_test printf-2.1.5.3 {
! 590: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 1 1 100.0
! 591: } {abc: (1e+02) :xyz}
! 592: do_test printf-2.1.5.4 {
! 593: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 1 1 100.0
! 594: } {abc: 1 1 (100) :xyz}
! 595: do_test printf-2.1.5.5 {
! 596: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 1 1 100.0
! 597: } {abc: 1 1 (100.000) :xyz}
! 598: do_test printf-2.1.5.6 {
! 599: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 1 1 100.0
! 600: } {abc: 1 1 (0000000100) :xyz}
! 601: do_test printf-2.1.5.7 {
! 602: sqlite3_mprintf_double {abc: %d %d (%1.1f) :xyz} 1 1 100.0
! 603: } {abc: 1 1 (100.0) :xyz}
! 604: do_test printf-2.1.5.8 {
! 605: sqlite3_mprintf_double {abc: %d %d (%1.1e) :xyz} 1 1 100.0
! 606: } {abc: 1 1 (1.0e+02) :xyz}
! 607: do_test printf-2.1.5.9 {
! 608: sqlite3_mprintf_double {abc: %d %d (%1.1g) :xyz} 1 1 100.0
! 609: } {abc: 1 1 (1e+02) :xyz}
! 610: do_test printf-2.1.6.1 {
! 611: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 1 1 9.99999
! 612: } {abc: (10.0) :xyz}
! 613: do_test printf-2.1.6.2 {
! 614: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 1 1 9.99999
! 615: } {abc: (1.0e+01) :xyz}
! 616: do_test printf-2.1.6.3 {
! 617: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 1 1 9.99999
! 618: } {abc: (1e+01) :xyz}
! 619: do_test printf-2.1.6.4 {
! 620: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 1 1 9.99999
! 621: } {abc: 1 1 (9.99999) :xyz}
! 622: do_test printf-2.1.6.5 {
! 623: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 1 1 9.99999
! 624: } {abc: 1 1 (9.99999) :xyz}
! 625: do_test printf-2.1.6.6 {
! 626: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 1 1 9.99999
! 627: } {abc: 1 1 (0009.99999) :xyz}
! 628: do_test printf-2.1.6.7 {
! 629: sqlite3_mprintf_double {abc: %d %d (%1.1f) :xyz} 1 1 9.99999
! 630: } {abc: 1 1 (10.0) :xyz}
! 631: do_test printf-2.1.6.8 {
! 632: sqlite3_mprintf_double {abc: %d %d (%1.1e) :xyz} 1 1 9.99999
! 633: } {abc: 1 1 (1.0e+01) :xyz}
! 634: do_test printf-2.1.6.9 {
! 635: sqlite3_mprintf_double {abc: %d %d (%1.1g) :xyz} 1 1 9.99999
! 636: } {abc: 1 1 (1e+01) :xyz}
! 637: do_test printf-2.1.7.1 {
! 638: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 1 1 -0.00543
! 639: } {abc: (-0.0) :xyz}
! 640: do_test printf-2.1.7.2 {
! 641: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 1 1 -0.00543
! 642: } {abc: (-5.4e-03) :xyz}
! 643: do_test printf-2.1.7.3 {
! 644: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 1 1 -0.00543
! 645: } {abc: (-0.005) :xyz}
! 646: do_test printf-2.1.7.4 {
! 647: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 1 1 -0.00543
! 648: } {abc: 1 1 (-0.00543) :xyz}
! 649: do_test printf-2.1.7.5 {
! 650: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 1 1 -0.00543
! 651: } {abc: 1 1 (-0.00543000) :xyz}
! 652: do_test printf-2.1.7.6 {
! 653: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 1 1 -0.00543
! 654: } {abc: 1 1 (-000.00543) :xyz}
! 655: do_test printf-2.1.7.7 {
! 656: sqlite3_mprintf_double {abc: %d %d (%1.1f) :xyz} 1 1 -0.00543
! 657: } {abc: 1 1 (-0.0) :xyz}
! 658: do_test printf-2.1.7.8 {
! 659: sqlite3_mprintf_double {abc: %d %d (%1.1e) :xyz} 1 1 -0.00543
! 660: } {abc: 1 1 (-5.4e-03) :xyz}
! 661: do_test printf-2.1.7.9 {
! 662: sqlite3_mprintf_double {abc: %d %d (%1.1g) :xyz} 1 1 -0.00543
! 663: } {abc: 1 1 (-0.005) :xyz}
! 664: do_test printf-2.1.8.1 {
! 665: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 1 1 -1.0
! 666: } {abc: (-1.0) :xyz}
! 667: do_test printf-2.1.8.2 {
! 668: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 1 1 -1.0
! 669: } {abc: (-1.0e+00) :xyz}
! 670: do_test printf-2.1.8.3 {
! 671: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 1 1 -1.0
! 672: } {abc: (-1) :xyz}
! 673: do_test printf-2.1.8.4 {
! 674: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 1 1 -1.0
! 675: } {abc: 1 1 (-1) :xyz}
! 676: do_test printf-2.1.8.5 {
! 677: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 1 1 -1.0
! 678: } {abc: 1 1 (-1.00000) :xyz}
! 679: do_test printf-2.1.8.6 {
! 680: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 1 1 -1.0
! 681: } {abc: 1 1 (-000000001) :xyz}
! 682: do_test printf-2.1.8.7 {
! 683: sqlite3_mprintf_double {abc: %d %d (%1.1f) :xyz} 1 1 -1.0
! 684: } {abc: 1 1 (-1.0) :xyz}
! 685: do_test printf-2.1.8.8 {
! 686: sqlite3_mprintf_double {abc: %d %d (%1.1e) :xyz} 1 1 -1.0
! 687: } {abc: 1 1 (-1.0e+00) :xyz}
! 688: do_test printf-2.1.8.9 {
! 689: sqlite3_mprintf_double {abc: %d %d (%1.1g) :xyz} 1 1 -1.0
! 690: } {abc: 1 1 (-1) :xyz}
! 691: do_test printf-2.1.9.1 {
! 692: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 1 1 -99.99999
! 693: } {abc: (-100.0) :xyz}
! 694: do_test printf-2.1.9.2 {
! 695: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 1 1 -99.99999
! 696: } {abc: (-1.0e+02) :xyz}
! 697: do_test printf-2.1.9.3 {
! 698: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 1 1 -99.99999
! 699: } {abc: (-1e+02) :xyz}
! 700: do_test printf-2.1.9.4 {
! 701: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 1 1 -99.99999
! 702: } {abc: 1 1 (-100) :xyz}
! 703: do_test printf-2.1.9.5 {
! 704: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 1 1 -99.99999
! 705: } {abc: 1 1 (-100.000) :xyz}
! 706: do_test printf-2.1.9.6 {
! 707: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 1 1 -99.99999
! 708: } {abc: 1 1 (-000000100) :xyz}
! 709: do_test printf-2.1.9.7 {
! 710: sqlite3_mprintf_double {abc: %d %d (%1.1f) :xyz} 1 1 -99.99999
! 711: } {abc: 1 1 (-100.0) :xyz}
! 712: do_test printf-2.1.9.8 {
! 713: sqlite3_mprintf_double {abc: %d %d (%1.1e) :xyz} 1 1 -99.99999
! 714: } {abc: 1 1 (-1.0e+02) :xyz}
! 715: do_test printf-2.1.9.9 {
! 716: sqlite3_mprintf_double {abc: %d %d (%1.1g) :xyz} 1 1 -99.99999
! 717: } {abc: 1 1 (-1e+02) :xyz}
! 718: do_test printf-2.1.10.1 {
! 719: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 1 1 3.14e+9
! 720: } {abc: (3140000000.0) :xyz}
! 721: do_test printf-2.1.10.2 {
! 722: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 1 1 3.14e+9
! 723: } {abc: (3.1e+09) :xyz}
! 724: do_test printf-2.1.10.3 {
! 725: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 1 1 3.14e+9
! 726: } {abc: (3e+09) :xyz}
! 727: do_test printf-2.1.10.4 {
! 728: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 1 1 3.14e+9
! 729: } {abc: 1 1 (3.14e+09) :xyz}
! 730: do_test printf-2.1.10.5 {
! 731: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 1 1 3.14e+9
! 732: } {abc: 1 1 (3.14000e+09) :xyz}
! 733: do_test printf-2.1.10.6 {
! 734: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 1 1 3.14e+9
! 735: } {abc: 1 1 (003.14e+09) :xyz}
! 736: do_test printf-2.1.10.7 {
! 737: sqlite3_mprintf_double {abc: %d %d (%1.1f) :xyz} 1 1 3.14e+9
! 738: } {abc: 1 1 (3140000000.0) :xyz}
! 739: do_test printf-2.1.10.8 {
! 740: sqlite3_mprintf_double {abc: %d %d (%1.1e) :xyz} 1 1 3.14e+9
! 741: } {abc: 1 1 (3.1e+09) :xyz}
! 742: do_test printf-2.1.10.9 {
! 743: sqlite3_mprintf_double {abc: %d %d (%1.1g) :xyz} 1 1 3.14e+9
! 744: } {abc: 1 1 (3e+09) :xyz}
! 745: do_test printf-2.1.11.2 {
! 746: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 1 1 -4.72732e+88
! 747: } {abc: (-4.7e+88) :xyz}
! 748: do_test printf-2.1.11.3 {
! 749: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 1 1 -4.72732e+88
! 750: } {abc: (-5e+88) :xyz}
! 751: do_test printf-2.1.11.4 {
! 752: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 1 1 -4.72732e+88
! 753: } {abc: 1 1 (-4.72732e+88) :xyz}
! 754: do_test printf-2.1.11.5 {
! 755: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 1 1 -4.72732e+88
! 756: } {abc: 1 1 (-4.72732e+88) :xyz}
! 757: do_test printf-2.1.11.6 {
! 758: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 1 1 -4.72732e+88
! 759: } {abc: 1 1 (-4.72732e+88) :xyz}
! 760: do_test printf-2.1.11.8 {
! 761: sqlite3_mprintf_double {abc: %d %d (%1.1e) :xyz} 1 1 -4.72732e+88
! 762: } {abc: 1 1 (-4.7e+88) :xyz}
! 763: do_test printf-2.1.11.9 {
! 764: sqlite3_mprintf_double {abc: %d %d (%1.1g) :xyz} 1 1 -4.72732e+88
! 765: } {abc: 1 1 (-5e+88) :xyz}
! 766: do_test printf-2.1.12.2 {
! 767: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 1 1 9.87991e+143
! 768: } {abc: (9.9e+143) :xyz}
! 769: do_test printf-2.1.12.3 {
! 770: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 1 1 9.87991e+143
! 771: } {abc: (1e+144) :xyz}
! 772: do_test printf-2.1.12.4 {
! 773: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 1 1 9.87991e+143
! 774: } {abc: 1 1 (9.87991e+143) :xyz}
! 775: do_test printf-2.1.12.5 {
! 776: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 1 1 9.87991e+143
! 777: } {abc: 1 1 (9.87991e+143) :xyz}
! 778: do_test printf-2.1.12.6 {
! 779: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 1 1 9.87991e+143
! 780: } {abc: 1 1 (9.87991e+143) :xyz}
! 781: do_test printf-2.1.12.8 {
! 782: sqlite3_mprintf_double {abc: %d %d (%1.1e) :xyz} 1 1 9.87991e+143
! 783: } {abc: 1 1 (9.9e+143) :xyz}
! 784: do_test printf-2.1.12.9 {
! 785: sqlite3_mprintf_double {abc: %d %d (%1.1g) :xyz} 1 1 9.87991e+143
! 786: } {abc: 1 1 (1e+144) :xyz}
! 787: do_test printf-2.1.13.1 {
! 788: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 1 1 -6.287291e-9
! 789: } {abc: (-0.0) :xyz}
! 790: do_test printf-2.1.13.2 {
! 791: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 1 1 -6.287291e-9
! 792: } {abc: (-6.3e-09) :xyz}
! 793: do_test printf-2.1.13.3 {
! 794: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 1 1 -6.287291e-9
! 795: } {abc: (-6e-09) :xyz}
! 796: do_test printf-2.1.13.4 {
! 797: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 1 1 -6.287291e-9
! 798: } {abc: 1 1 (-6.28729e-09) :xyz}
! 799: do_test printf-2.1.13.5 {
! 800: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 1 1 -6.287291e-9
! 801: } {abc: 1 1 (-6.28729e-09) :xyz}
! 802: do_test printf-2.1.13.6 {
! 803: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 1 1 -6.287291e-9
! 804: } {abc: 1 1 (-6.28729e-09) :xyz}
! 805: do_test printf-2.1.13.7 {
! 806: sqlite3_mprintf_double {abc: %d %d (%1.1f) :xyz} 1 1 -6.287291e-9
! 807: } {abc: 1 1 (-0.0) :xyz}
! 808: do_test printf-2.1.13.8 {
! 809: sqlite3_mprintf_double {abc: %d %d (%1.1e) :xyz} 1 1 -6.287291e-9
! 810: } {abc: 1 1 (-6.3e-09) :xyz}
! 811: do_test printf-2.1.13.9 {
! 812: sqlite3_mprintf_double {abc: %d %d (%1.1g) :xyz} 1 1 -6.287291e-9
! 813: } {abc: 1 1 (-6e-09) :xyz}
! 814: do_test printf-2.1.14.1 {
! 815: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 1 1 3.38826392e-110
! 816: } {abc: (0.0) :xyz}
! 817: do_test printf-2.1.14.2 {
! 818: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 1 1 3.38826392e-110
! 819: } {abc: (3.4e-110) :xyz}
! 820: do_test printf-2.1.14.3 {
! 821: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 1 1 3.38826392e-110
! 822: } {abc: (3e-110) :xyz}
! 823: do_test printf-2.1.14.4 {
! 824: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 1 1 3.38826392e-110
! 825: } {abc: 1 1 (3.38826e-110) :xyz}
! 826: do_test printf-2.1.14.5 {
! 827: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 1 1 3.38826392e-110
! 828: } {abc: 1 1 (3.38826e-110) :xyz}
! 829: do_test printf-2.1.14.6 {
! 830: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 1 1 3.38826392e-110
! 831: } {abc: 1 1 (3.38826e-110) :xyz}
! 832: do_test printf-2.1.14.7 {
! 833: sqlite3_mprintf_double {abc: %d %d (%1.1f) :xyz} 1 1 3.38826392e-110
! 834: } {abc: 1 1 (0.0) :xyz}
! 835: do_test printf-2.1.14.8 {
! 836: sqlite3_mprintf_double {abc: %d %d (%1.1e) :xyz} 1 1 3.38826392e-110
! 837: } {abc: 1 1 (3.4e-110) :xyz}
! 838: do_test printf-2.1.14.9 {
! 839: sqlite3_mprintf_double {abc: %d %d (%1.1g) :xyz} 1 1 3.38826392e-110
! 840: } {abc: 1 1 (3e-110) :xyz}
! 841: do_test printf-2.2.1.1 {
! 842: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 5 5 0.001
! 843: } {abc: (0.00100) :xyz}
! 844: do_test printf-2.2.1.2 {
! 845: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 5 5 0.001
! 846: } {abc: (1.00000e-03) :xyz}
! 847: do_test printf-2.2.1.3 {
! 848: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 5 5 0.001
! 849: } {abc: (0.001) :xyz}
! 850: do_test printf-2.2.1.4 {
! 851: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 5 5 0.001
! 852: } {abc: 5 5 (0.001) :xyz}
! 853: do_test printf-2.2.1.5 {
! 854: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 5 5 0.001
! 855: } {abc: 5 5 (0.00100000) :xyz}
! 856: do_test printf-2.2.1.6 {
! 857: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 5 5 0.001
! 858: } {abc: 5 5 (000000.001) :xyz}
! 859: do_test printf-2.2.1.7 {
! 860: sqlite3_mprintf_double {abc: %d %d (%5.5f) :xyz} 5 5 0.001
! 861: } {abc: 5 5 (0.00100) :xyz}
! 862: do_test printf-2.2.1.8 {
! 863: sqlite3_mprintf_double {abc: %d %d (%5.5e) :xyz} 5 5 0.001
! 864: } {abc: 5 5 (1.00000e-03) :xyz}
! 865: do_test printf-2.2.1.9 {
! 866: sqlite3_mprintf_double {abc: %d %d (%5.5g) :xyz} 5 5 0.001
! 867: } {abc: 5 5 (0.001) :xyz}
! 868: do_test printf-2.2.2.1 {
! 869: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 5 5 1.0e-20
! 870: } {abc: (0.00000) :xyz}
! 871: do_test printf-2.2.2.2 {
! 872: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 5 5 1.0e-20
! 873: } {abc: (1.00000e-20) :xyz}
! 874: do_test printf-2.2.2.3 {
! 875: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 5 5 1.0e-20
! 876: } {abc: (1e-20) :xyz}
! 877: do_test printf-2.2.2.4 {
! 878: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 5 5 1.0e-20
! 879: } {abc: 5 5 (1e-20) :xyz}
! 880: do_test printf-2.2.2.5 {
! 881: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 5 5 1.0e-20
! 882: } {abc: 5 5 (1.00000e-20) :xyz}
! 883: do_test printf-2.2.2.6 {
! 884: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 5 5 1.0e-20
! 885: } {abc: 5 5 (000001e-20) :xyz}
! 886: do_test printf-2.2.2.7 {
! 887: sqlite3_mprintf_double {abc: %d %d (%5.5f) :xyz} 5 5 1.0e-20
! 888: } {abc: 5 5 (0.00000) :xyz}
! 889: do_test printf-2.2.2.8 {
! 890: sqlite3_mprintf_double {abc: %d %d (%5.5e) :xyz} 5 5 1.0e-20
! 891: } {abc: 5 5 (1.00000e-20) :xyz}
! 892: do_test printf-2.2.2.9 {
! 893: sqlite3_mprintf_double {abc: %d %d (%5.5g) :xyz} 5 5 1.0e-20
! 894: } {abc: 5 5 (1e-20) :xyz}
! 895: do_test printf-2.2.3.1 {
! 896: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 5 5 1.0
! 897: } {abc: (1.00000) :xyz}
! 898: do_test printf-2.2.3.2 {
! 899: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 5 5 1.0
! 900: } {abc: (1.00000e+00) :xyz}
! 901: do_test printf-2.2.3.3 {
! 902: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 5 5 1.0
! 903: } {abc: ( 1) :xyz}
! 904: do_test printf-2.2.3.4 {
! 905: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 5 5 1.0
! 906: } {abc: 5 5 (1) :xyz}
! 907: do_test printf-2.2.3.5 {
! 908: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 5 5 1.0
! 909: } {abc: 5 5 (1.00000) :xyz}
! 910: do_test printf-2.2.3.6 {
! 911: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 5 5 1.0
! 912: } {abc: 5 5 (0000000001) :xyz}
! 913: do_test printf-2.2.3.7 {
! 914: sqlite3_mprintf_double {abc: %d %d (%5.5f) :xyz} 5 5 1.0
! 915: } {abc: 5 5 (1.00000) :xyz}
! 916: do_test printf-2.2.3.8 {
! 917: sqlite3_mprintf_double {abc: %d %d (%5.5e) :xyz} 5 5 1.0
! 918: } {abc: 5 5 (1.00000e+00) :xyz}
! 919: do_test printf-2.2.3.9 {
! 920: sqlite3_mprintf_double {abc: %d %d (%5.5g) :xyz} 5 5 1.0
! 921: } {abc: 5 5 ( 1) :xyz}
! 922: do_test printf-2.2.4.1 {
! 923: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 5 5 0.0
! 924: } {abc: (0.00000) :xyz}
! 925: do_test printf-2.2.4.2 {
! 926: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 5 5 0.0
! 927: } {abc: (0.00000e+00) :xyz}
! 928: do_test printf-2.2.4.3 {
! 929: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 5 5 0.0
! 930: } {abc: ( 0) :xyz}
! 931: do_test printf-2.2.4.4 {
! 932: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 5 5 0.0
! 933: } {abc: 5 5 (0) :xyz}
! 934: do_test printf-2.2.4.5 {
! 935: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 5 5 0.0
! 936: } {abc: 5 5 (0.00000) :xyz}
! 937: do_test printf-2.2.4.6 {
! 938: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 5 5 0.0
! 939: } {abc: 5 5 (0000000000) :xyz}
! 940: do_test printf-2.2.4.7 {
! 941: sqlite3_mprintf_double {abc: %d %d (%5.5f) :xyz} 5 5 0.0
! 942: } {abc: 5 5 (0.00000) :xyz}
! 943: do_test printf-2.2.4.8 {
! 944: sqlite3_mprintf_double {abc: %d %d (%5.5e) :xyz} 5 5 0.0
! 945: } {abc: 5 5 (0.00000e+00) :xyz}
! 946: do_test printf-2.2.4.9 {
! 947: sqlite3_mprintf_double {abc: %d %d (%5.5g) :xyz} 5 5 0.0
! 948: } {abc: 5 5 ( 0) :xyz}
! 949: do_test printf-2.2.5.1 {
! 950: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 5 5 100.0
! 951: } {abc: (100.00000) :xyz}
! 952: do_test printf-2.2.5.2 {
! 953: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 5 5 100.0
! 954: } {abc: (1.00000e+02) :xyz}
! 955: do_test printf-2.2.5.3 {
! 956: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 5 5 100.0
! 957: } {abc: ( 100) :xyz}
! 958: do_test printf-2.2.5.4 {
! 959: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 5 5 100.0
! 960: } {abc: 5 5 (100) :xyz}
! 961: do_test printf-2.2.5.5 {
! 962: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 5 5 100.0
! 963: } {abc: 5 5 (100.000) :xyz}
! 964: do_test printf-2.2.5.6 {
! 965: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 5 5 100.0
! 966: } {abc: 5 5 (0000000100) :xyz}
! 967: do_test printf-2.2.5.7 {
! 968: sqlite3_mprintf_double {abc: %d %d (%5.5f) :xyz} 5 5 100.0
! 969: } {abc: 5 5 (100.00000) :xyz}
! 970: do_test printf-2.2.5.8 {
! 971: sqlite3_mprintf_double {abc: %d %d (%5.5e) :xyz} 5 5 100.0
! 972: } {abc: 5 5 (1.00000e+02) :xyz}
! 973: do_test printf-2.2.5.9 {
! 974: sqlite3_mprintf_double {abc: %d %d (%5.5g) :xyz} 5 5 100.0
! 975: } {abc: 5 5 ( 100) :xyz}
! 976: do_test printf-2.2.6.1 {
! 977: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 5 5 9.99999
! 978: } {abc: (9.99999) :xyz}
! 979: do_test printf-2.2.6.2 {
! 980: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 5 5 9.99999
! 981: } {abc: (9.99999e+00) :xyz}
! 982: do_test printf-2.2.6.3 {
! 983: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 5 5 9.99999
! 984: } {abc: ( 10) :xyz}
! 985: do_test printf-2.2.6.4 {
! 986: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 5 5 9.99999
! 987: } {abc: 5 5 (9.99999) :xyz}
! 988: do_test printf-2.2.6.5 {
! 989: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 5 5 9.99999
! 990: } {abc: 5 5 (9.99999) :xyz}
! 991: do_test printf-2.2.6.6 {
! 992: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 5 5 9.99999
! 993: } {abc: 5 5 (0009.99999) :xyz}
! 994: do_test printf-2.2.6.7 {
! 995: sqlite3_mprintf_double {abc: %d %d (%5.5f) :xyz} 5 5 9.99999
! 996: } {abc: 5 5 (9.99999) :xyz}
! 997: do_test printf-2.2.6.8 {
! 998: sqlite3_mprintf_double {abc: %d %d (%5.5e) :xyz} 5 5 9.99999
! 999: } {abc: 5 5 (9.99999e+00) :xyz}
! 1000: do_test printf-2.2.6.9 {
! 1001: sqlite3_mprintf_double {abc: %d %d (%5.5g) :xyz} 5 5 9.99999
! 1002: } {abc: 5 5 ( 10) :xyz}
! 1003: do_test printf-2.2.7.1 {
! 1004: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 5 5 -0.00543
! 1005: } {abc: (-0.00543) :xyz}
! 1006: do_test printf-2.2.7.2 {
! 1007: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 5 5 -0.00543
! 1008: } {abc: (-5.43000e-03) :xyz}
! 1009: do_test printf-2.2.7.3 {
! 1010: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 5 5 -0.00543
! 1011: } {abc: (-0.00543) :xyz}
! 1012: do_test printf-2.2.7.4 {
! 1013: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 5 5 -0.00543
! 1014: } {abc: 5 5 (-0.00543) :xyz}
! 1015: do_test printf-2.2.7.5 {
! 1016: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 5 5 -0.00543
! 1017: } {abc: 5 5 (-0.00543000) :xyz}
! 1018: do_test printf-2.2.7.6 {
! 1019: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 5 5 -0.00543
! 1020: } {abc: 5 5 (-000.00543) :xyz}
! 1021: do_test printf-2.2.7.7 {
! 1022: sqlite3_mprintf_double {abc: %d %d (%5.5f) :xyz} 5 5 -0.00543
! 1023: } {abc: 5 5 (-0.00543) :xyz}
! 1024: do_test printf-2.2.7.8 {
! 1025: sqlite3_mprintf_double {abc: %d %d (%5.5e) :xyz} 5 5 -0.00543
! 1026: } {abc: 5 5 (-5.43000e-03) :xyz}
! 1027: do_test printf-2.2.7.9 {
! 1028: sqlite3_mprintf_double {abc: %d %d (%5.5g) :xyz} 5 5 -0.00543
! 1029: } {abc: 5 5 (-0.00543) :xyz}
! 1030: do_test printf-2.2.8.1 {
! 1031: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 5 5 -1.0
! 1032: } {abc: (-1.00000) :xyz}
! 1033: do_test printf-2.2.8.2 {
! 1034: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 5 5 -1.0
! 1035: } {abc: (-1.00000e+00) :xyz}
! 1036: do_test printf-2.2.8.3 {
! 1037: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 5 5 -1.0
! 1038: } {abc: ( -1) :xyz}
! 1039: do_test printf-2.2.8.4 {
! 1040: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 5 5 -1.0
! 1041: } {abc: 5 5 (-1) :xyz}
! 1042: do_test printf-2.2.8.5 {
! 1043: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 5 5 -1.0
! 1044: } {abc: 5 5 (-1.00000) :xyz}
! 1045: do_test printf-2.2.8.6 {
! 1046: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 5 5 -1.0
! 1047: } {abc: 5 5 (-000000001) :xyz}
! 1048: do_test printf-2.2.8.7 {
! 1049: sqlite3_mprintf_double {abc: %d %d (%5.5f) :xyz} 5 5 -1.0
! 1050: } {abc: 5 5 (-1.00000) :xyz}
! 1051: do_test printf-2.2.8.8 {
! 1052: sqlite3_mprintf_double {abc: %d %d (%5.5e) :xyz} 5 5 -1.0
! 1053: } {abc: 5 5 (-1.00000e+00) :xyz}
! 1054: do_test printf-2.2.8.9 {
! 1055: sqlite3_mprintf_double {abc: %d %d (%5.5g) :xyz} 5 5 -1.0
! 1056: } {abc: 5 5 ( -1) :xyz}
! 1057: do_test printf-2.2.9.1 {
! 1058: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 5 5 -99.99999
! 1059: } {abc: (-99.99999) :xyz}
! 1060: do_test printf-2.2.9.2 {
! 1061: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 5 5 -99.99999
! 1062: } {abc: (-1.00000e+02) :xyz}
! 1063: do_test printf-2.2.9.3 {
! 1064: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 5 5 -99.99999
! 1065: } {abc: ( -100) :xyz}
! 1066: do_test printf-2.2.9.4 {
! 1067: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 5 5 -99.99999
! 1068: } {abc: 5 5 (-100) :xyz}
! 1069: do_test printf-2.2.9.5 {
! 1070: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 5 5 -99.99999
! 1071: } {abc: 5 5 (-100.000) :xyz}
! 1072: do_test printf-2.2.9.6 {
! 1073: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 5 5 -99.99999
! 1074: } {abc: 5 5 (-000000100) :xyz}
! 1075: do_test printf-2.2.9.7 {
! 1076: sqlite3_mprintf_double {abc: %d %d (%5.5f) :xyz} 5 5 -99.99999
! 1077: } {abc: 5 5 (-99.99999) :xyz}
! 1078: do_test printf-2.2.9.8 {
! 1079: sqlite3_mprintf_double {abc: %d %d (%5.5e) :xyz} 5 5 -99.99999
! 1080: } {abc: 5 5 (-1.00000e+02) :xyz}
! 1081: do_test printf-2.2.9.9 {
! 1082: sqlite3_mprintf_double {abc: %d %d (%5.5g) :xyz} 5 5 -99.99999
! 1083: } {abc: 5 5 ( -100) :xyz}
! 1084: do_test printf-2.2.10.1 {
! 1085: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 5 5 3.14e+9
! 1086: } {abc: (3140000000.00000) :xyz}
! 1087: do_test printf-2.2.10.2 {
! 1088: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 5 5 3.14e+9
! 1089: } {abc: (3.14000e+09) :xyz}
! 1090: do_test printf-2.2.10.3 {
! 1091: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 5 5 3.14e+9
! 1092: } {abc: (3.14e+09) :xyz}
! 1093: do_test printf-2.2.10.4 {
! 1094: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 5 5 3.14e+9
! 1095: } {abc: 5 5 (3.14e+09) :xyz}
! 1096: do_test printf-2.2.10.5 {
! 1097: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 5 5 3.14e+9
! 1098: } {abc: 5 5 (3.14000e+09) :xyz}
! 1099: do_test printf-2.2.10.6 {
! 1100: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 5 5 3.14e+9
! 1101: } {abc: 5 5 (003.14e+09) :xyz}
! 1102: do_test printf-2.2.10.7 {
! 1103: sqlite3_mprintf_double {abc: %d %d (%5.5f) :xyz} 5 5 3.14e+9
! 1104: } {abc: 5 5 (3140000000.00000) :xyz}
! 1105: do_test printf-2.2.10.8 {
! 1106: sqlite3_mprintf_double {abc: %d %d (%5.5e) :xyz} 5 5 3.14e+9
! 1107: } {abc: 5 5 (3.14000e+09) :xyz}
! 1108: do_test printf-2.2.10.9 {
! 1109: sqlite3_mprintf_double {abc: %d %d (%5.5g) :xyz} 5 5 3.14e+9
! 1110: } {abc: 5 5 (3.14e+09) :xyz}
! 1111: do_test printf-2.2.11.2 {
! 1112: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 5 5 -4.72732e+88
! 1113: } {abc: (-4.72732e+88) :xyz}
! 1114: do_test printf-2.2.11.3 {
! 1115: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 5 5 -4.72732e+88
! 1116: } {abc: (-4.7273e+88) :xyz}
! 1117: do_test printf-2.2.11.4 {
! 1118: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 5 5 -4.72732e+88
! 1119: } {abc: 5 5 (-4.72732e+88) :xyz}
! 1120: do_test printf-2.2.11.5 {
! 1121: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 5 5 -4.72732e+88
! 1122: } {abc: 5 5 (-4.72732e+88) :xyz}
! 1123: do_test printf-2.2.11.6 {
! 1124: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 5 5 -4.72732e+88
! 1125: } {abc: 5 5 (-4.72732e+88) :xyz}
! 1126: do_test printf-2.2.11.8 {
! 1127: sqlite3_mprintf_double {abc: %d %d (%5.5e) :xyz} 5 5 -4.72732e+88
! 1128: } {abc: 5 5 (-4.72732e+88) :xyz}
! 1129: do_test printf-2.2.11.9 {
! 1130: sqlite3_mprintf_double {abc: %d %d (%5.5g) :xyz} 5 5 -4.72732e+88
! 1131: } {abc: 5 5 (-4.7273e+88) :xyz}
! 1132: do_test printf-2.2.12.2 {
! 1133: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 5 5 9.87991e+143
! 1134: } {abc: (9.87991e+143) :xyz}
! 1135: do_test printf-2.2.12.3 {
! 1136: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 5 5 9.87991e+143
! 1137: } {abc: (9.8799e+143) :xyz}
! 1138: do_test printf-2.2.12.4 {
! 1139: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 5 5 9.87991e+143
! 1140: } {abc: 5 5 (9.87991e+143) :xyz}
! 1141: do_test printf-2.2.12.5 {
! 1142: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 5 5 9.87991e+143
! 1143: } {abc: 5 5 (9.87991e+143) :xyz}
! 1144: do_test printf-2.2.12.6 {
! 1145: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 5 5 9.87991e+143
! 1146: } {abc: 5 5 (9.87991e+143) :xyz}
! 1147: do_test printf-2.2.12.8 {
! 1148: sqlite3_mprintf_double {abc: %d %d (%5.5e) :xyz} 5 5 9.87991e+143
! 1149: } {abc: 5 5 (9.87991e+143) :xyz}
! 1150: do_test printf-2.2.12.9 {
! 1151: sqlite3_mprintf_double {abc: %d %d (%5.5g) :xyz} 5 5 9.87991e+143
! 1152: } {abc: 5 5 (9.8799e+143) :xyz}
! 1153: do_test printf-2.2.13.1 {
! 1154: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 5 5 -6.287291e-9
! 1155: } {abc: (-0.00000) :xyz}
! 1156: do_test printf-2.2.13.2 {
! 1157: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 5 5 -6.287291e-9
! 1158: } {abc: (-6.28729e-09) :xyz}
! 1159: do_test printf-2.2.13.3 {
! 1160: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 5 5 -6.287291e-9
! 1161: } {abc: (-6.2873e-09) :xyz}
! 1162: do_test printf-2.2.13.4 {
! 1163: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 5 5 -6.287291e-9
! 1164: } {abc: 5 5 (-6.28729e-09) :xyz}
! 1165: do_test printf-2.2.13.5 {
! 1166: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 5 5 -6.287291e-9
! 1167: } {abc: 5 5 (-6.28729e-09) :xyz}
! 1168: do_test printf-2.2.13.6 {
! 1169: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 5 5 -6.287291e-9
! 1170: } {abc: 5 5 (-6.28729e-09) :xyz}
! 1171: do_test printf-2.2.13.7 {
! 1172: sqlite3_mprintf_double {abc: %d %d (%5.5f) :xyz} 5 5 -6.287291e-9
! 1173: } {abc: 5 5 (-0.00000) :xyz}
! 1174: do_test printf-2.2.13.8 {
! 1175: sqlite3_mprintf_double {abc: %d %d (%5.5e) :xyz} 5 5 -6.287291e-9
! 1176: } {abc: 5 5 (-6.28729e-09) :xyz}
! 1177: do_test printf-2.2.13.9 {
! 1178: sqlite3_mprintf_double {abc: %d %d (%5.5g) :xyz} 5 5 -6.287291e-9
! 1179: } {abc: 5 5 (-6.2873e-09) :xyz}
! 1180: do_test printf-2.2.14.1 {
! 1181: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 5 5 3.38826392e-110
! 1182: } {abc: (0.00000) :xyz}
! 1183: do_test printf-2.2.14.2 {
! 1184: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 5 5 3.38826392e-110
! 1185: } {abc: (3.38826e-110) :xyz}
! 1186: do_test printf-2.2.14.3 {
! 1187: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 5 5 3.38826392e-110
! 1188: } {abc: (3.3883e-110) :xyz}
! 1189: do_test printf-2.2.14.4 {
! 1190: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 5 5 3.38826392e-110
! 1191: } {abc: 5 5 (3.38826e-110) :xyz}
! 1192: do_test printf-2.2.14.5 {
! 1193: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 5 5 3.38826392e-110
! 1194: } {abc: 5 5 (3.38826e-110) :xyz}
! 1195: do_test printf-2.2.14.6 {
! 1196: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 5 5 3.38826392e-110
! 1197: } {abc: 5 5 (3.38826e-110) :xyz}
! 1198: do_test printf-2.2.14.7 {
! 1199: sqlite3_mprintf_double {abc: %d %d (%5.5f) :xyz} 5 5 3.38826392e-110
! 1200: } {abc: 5 5 (0.00000) :xyz}
! 1201: do_test printf-2.2.14.8 {
! 1202: sqlite3_mprintf_double {abc: %d %d (%5.5e) :xyz} 5 5 3.38826392e-110
! 1203: } {abc: 5 5 (3.38826e-110) :xyz}
! 1204: do_test printf-2.2.14.9 {
! 1205: sqlite3_mprintf_double {abc: %d %d (%5.5g) :xyz} 5 5 3.38826392e-110
! 1206: } {abc: 5 5 (3.3883e-110) :xyz}
! 1207: do_test printf-2.3.1.1 {
! 1208: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 10 10 0.001
! 1209: } {abc: (0.0010000000) :xyz}
! 1210: do_test printf-2.3.1.2 {
! 1211: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 10 10 0.001
! 1212: } {abc: (1.0000000000e-03) :xyz}
! 1213: do_test printf-2.3.1.3 {
! 1214: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 10 10 0.001
! 1215: } {abc: ( 0.001) :xyz}
! 1216: do_test printf-2.3.1.4 {
! 1217: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 10 10 0.001
! 1218: } {abc: 10 10 (0.001) :xyz}
! 1219: do_test printf-2.3.1.5 {
! 1220: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 10 10 0.001
! 1221: } {abc: 10 10 (0.00100000) :xyz}
! 1222: do_test printf-2.3.1.6 {
! 1223: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 10 10 0.001
! 1224: } {abc: 10 10 (000000.001) :xyz}
! 1225: do_test printf-2.3.1.7 {
! 1226: sqlite3_mprintf_double {abc: %d %d (%10.10f) :xyz} 10 10 0.001
! 1227: } {abc: 10 10 (0.0010000000) :xyz}
! 1228: do_test printf-2.3.1.8 {
! 1229: sqlite3_mprintf_double {abc: %d %d (%10.10e) :xyz} 10 10 0.001
! 1230: } {abc: 10 10 (1.0000000000e-03) :xyz}
! 1231: do_test printf-2.3.1.9 {
! 1232: sqlite3_mprintf_double {abc: %d %d (%10.10g) :xyz} 10 10 0.001
! 1233: } {abc: 10 10 ( 0.001) :xyz}
! 1234: do_test printf-2.3.2.1 {
! 1235: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 10 10 1.0e-20
! 1236: } {abc: (0.0000000000) :xyz}
! 1237: do_test printf-2.3.2.2 {
! 1238: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 10 10 1.0e-20
! 1239: } {abc: (1.0000000000e-20) :xyz}
! 1240: do_test printf-2.3.2.3 {
! 1241: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 10 10 1.0e-20
! 1242: } {abc: ( 1e-20) :xyz}
! 1243: do_test printf-2.3.2.4 {
! 1244: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 10 10 1.0e-20
! 1245: } {abc: 10 10 (1e-20) :xyz}
! 1246: do_test printf-2.3.2.5 {
! 1247: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 10 10 1.0e-20
! 1248: } {abc: 10 10 (1.00000e-20) :xyz}
! 1249: do_test printf-2.3.2.6 {
! 1250: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 10 10 1.0e-20
! 1251: } {abc: 10 10 (000001e-20) :xyz}
! 1252: do_test printf-2.3.2.7 {
! 1253: sqlite3_mprintf_double {abc: %d %d (%10.10f) :xyz} 10 10 1.0e-20
! 1254: } {abc: 10 10 (0.0000000000) :xyz}
! 1255: do_test printf-2.3.2.8 {
! 1256: sqlite3_mprintf_double {abc: %d %d (%10.10e) :xyz} 10 10 1.0e-20
! 1257: } {abc: 10 10 (1.0000000000e-20) :xyz}
! 1258: do_test printf-2.3.2.9 {
! 1259: sqlite3_mprintf_double {abc: %d %d (%10.10g) :xyz} 10 10 1.0e-20
! 1260: } {abc: 10 10 ( 1e-20) :xyz}
! 1261: do_test printf-2.3.3.1 {
! 1262: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 10 10 1.0
! 1263: } {abc: (1.0000000000) :xyz}
! 1264: do_test printf-2.3.3.2 {
! 1265: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 10 10 1.0
! 1266: } {abc: (1.0000000000e+00) :xyz}
! 1267: do_test printf-2.3.3.3 {
! 1268: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 10 10 1.0
! 1269: } {abc: ( 1) :xyz}
! 1270: do_test printf-2.3.3.4 {
! 1271: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 10 10 1.0
! 1272: } {abc: 10 10 (1) :xyz}
! 1273: do_test printf-2.3.3.5 {
! 1274: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 10 10 1.0
! 1275: } {abc: 10 10 (1.00000) :xyz}
! 1276: do_test printf-2.3.3.6 {
! 1277: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 10 10 1.0
! 1278: } {abc: 10 10 (0000000001) :xyz}
! 1279: do_test printf-2.3.3.7 {
! 1280: sqlite3_mprintf_double {abc: %d %d (%10.10f) :xyz} 10 10 1.0
! 1281: } {abc: 10 10 (1.0000000000) :xyz}
! 1282: do_test printf-2.3.3.8 {
! 1283: sqlite3_mprintf_double {abc: %d %d (%10.10e) :xyz} 10 10 1.0
! 1284: } {abc: 10 10 (1.0000000000e+00) :xyz}
! 1285: do_test printf-2.3.3.9 {
! 1286: sqlite3_mprintf_double {abc: %d %d (%10.10g) :xyz} 10 10 1.0
! 1287: } {abc: 10 10 ( 1) :xyz}
! 1288: do_test printf-2.3.4.1 {
! 1289: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 10 10 0.0
! 1290: } {abc: (0.0000000000) :xyz}
! 1291: do_test printf-2.3.4.2 {
! 1292: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 10 10 0.0
! 1293: } {abc: (0.0000000000e+00) :xyz}
! 1294: do_test printf-2.3.4.3 {
! 1295: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 10 10 0.0
! 1296: } {abc: ( 0) :xyz}
! 1297: do_test printf-2.3.4.4 {
! 1298: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 10 10 0.0
! 1299: } {abc: 10 10 (0) :xyz}
! 1300: do_test printf-2.3.4.5 {
! 1301: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 10 10 0.0
! 1302: } {abc: 10 10 (0.00000) :xyz}
! 1303: do_test printf-2.3.4.6 {
! 1304: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 10 10 0.0
! 1305: } {abc: 10 10 (0000000000) :xyz}
! 1306: do_test printf-2.3.4.7 {
! 1307: sqlite3_mprintf_double {abc: %d %d (%10.10f) :xyz} 10 10 0.0
! 1308: } {abc: 10 10 (0.0000000000) :xyz}
! 1309: do_test printf-2.3.4.8 {
! 1310: sqlite3_mprintf_double {abc: %d %d (%10.10e) :xyz} 10 10 0.0
! 1311: } {abc: 10 10 (0.0000000000e+00) :xyz}
! 1312: do_test printf-2.3.4.9 {
! 1313: sqlite3_mprintf_double {abc: %d %d (%10.10g) :xyz} 10 10 0.0
! 1314: } {abc: 10 10 ( 0) :xyz}
! 1315: do_test printf-2.3.5.1 {
! 1316: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 10 10 100.0
! 1317: } {abc: (100.0000000000) :xyz}
! 1318: do_test printf-2.3.5.2 {
! 1319: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 10 10 100.0
! 1320: } {abc: (1.0000000000e+02) :xyz}
! 1321: do_test printf-2.3.5.3 {
! 1322: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 10 10 100.0
! 1323: } {abc: ( 100) :xyz}
! 1324: do_test printf-2.3.5.4 {
! 1325: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 10 10 100.0
! 1326: } {abc: 10 10 (100) :xyz}
! 1327: do_test printf-2.3.5.5 {
! 1328: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 10 10 100.0
! 1329: } {abc: 10 10 (100.000) :xyz}
! 1330: do_test printf-2.3.5.6 {
! 1331: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 10 10 100.0
! 1332: } {abc: 10 10 (0000000100) :xyz}
! 1333: do_test printf-2.3.5.7 {
! 1334: sqlite3_mprintf_double {abc: %d %d (%10.10f) :xyz} 10 10 100.0
! 1335: } {abc: 10 10 (100.0000000000) :xyz}
! 1336: do_test printf-2.3.5.8 {
! 1337: sqlite3_mprintf_double {abc: %d %d (%10.10e) :xyz} 10 10 100.0
! 1338: } {abc: 10 10 (1.0000000000e+02) :xyz}
! 1339: do_test printf-2.3.5.9 {
! 1340: sqlite3_mprintf_double {abc: %d %d (%10.10g) :xyz} 10 10 100.0
! 1341: } {abc: 10 10 ( 100) :xyz}
! 1342: do_test printf-2.3.6.1 {
! 1343: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 10 10 9.99999
! 1344: } {abc: (9.9999900000) :xyz}
! 1345: do_test printf-2.3.6.2 {
! 1346: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 10 10 9.99999
! 1347: } {abc: (9.9999900000e+00) :xyz}
! 1348: do_test printf-2.3.6.3 {
! 1349: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 10 10 9.99999
! 1350: } {abc: ( 9.99999) :xyz}
! 1351: do_test printf-2.3.6.4 {
! 1352: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 10 10 9.99999
! 1353: } {abc: 10 10 (9.99999) :xyz}
! 1354: do_test printf-2.3.6.5 {
! 1355: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 10 10 9.99999
! 1356: } {abc: 10 10 (9.99999) :xyz}
! 1357: do_test printf-2.3.6.6 {
! 1358: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 10 10 9.99999
! 1359: } {abc: 10 10 (0009.99999) :xyz}
! 1360: do_test printf-2.3.6.7 {
! 1361: sqlite3_mprintf_double {abc: %d %d (%10.10f) :xyz} 10 10 9.99999
! 1362: } {abc: 10 10 (9.9999900000) :xyz}
! 1363: do_test printf-2.3.6.8 {
! 1364: sqlite3_mprintf_double {abc: %d %d (%10.10e) :xyz} 10 10 9.99999
! 1365: } {abc: 10 10 (9.9999900000e+00) :xyz}
! 1366: do_test printf-2.3.6.9 {
! 1367: sqlite3_mprintf_double {abc: %d %d (%10.10g) :xyz} 10 10 9.99999
! 1368: } {abc: 10 10 ( 9.99999) :xyz}
! 1369: do_test printf-2.3.7.1 {
! 1370: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 10 10 -0.00543
! 1371: } {abc: (-0.0054300000) :xyz}
! 1372: do_test printf-2.3.7.2 {
! 1373: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 10 10 -0.00543
! 1374: } {abc: (-5.4300000000e-03) :xyz}
! 1375: do_test printf-2.3.7.3 {
! 1376: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 10 10 -0.00543
! 1377: } {abc: ( -0.00543) :xyz}
! 1378: do_test printf-2.3.7.4 {
! 1379: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 10 10 -0.00543
! 1380: } {abc: 10 10 (-0.00543) :xyz}
! 1381: do_test printf-2.3.7.5 {
! 1382: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 10 10 -0.00543
! 1383: } {abc: 10 10 (-0.00543000) :xyz}
! 1384: do_test printf-2.3.7.6 {
! 1385: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 10 10 -0.00543
! 1386: } {abc: 10 10 (-000.00543) :xyz}
! 1387: do_test printf-2.3.7.7 {
! 1388: sqlite3_mprintf_double {abc: %d %d (%10.10f) :xyz} 10 10 -0.00543
! 1389: } {abc: 10 10 (-0.0054300000) :xyz}
! 1390: do_test printf-2.3.7.8 {
! 1391: sqlite3_mprintf_double {abc: %d %d (%10.10e) :xyz} 10 10 -0.00543
! 1392: } {abc: 10 10 (-5.4300000000e-03) :xyz}
! 1393: do_test printf-2.3.7.9 {
! 1394: sqlite3_mprintf_double {abc: %d %d (%10.10g) :xyz} 10 10 -0.00543
! 1395: } {abc: 10 10 ( -0.00543) :xyz}
! 1396: do_test printf-2.3.8.1 {
! 1397: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 10 10 -1.0
! 1398: } {abc: (-1.0000000000) :xyz}
! 1399: do_test printf-2.3.8.2 {
! 1400: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 10 10 -1.0
! 1401: } {abc: (-1.0000000000e+00) :xyz}
! 1402: do_test printf-2.3.8.3 {
! 1403: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 10 10 -1.0
! 1404: } {abc: ( -1) :xyz}
! 1405: do_test printf-2.3.8.4 {
! 1406: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 10 10 -1.0
! 1407: } {abc: 10 10 (-1) :xyz}
! 1408: do_test printf-2.3.8.5 {
! 1409: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 10 10 -1.0
! 1410: } {abc: 10 10 (-1.00000) :xyz}
! 1411: do_test printf-2.3.8.6 {
! 1412: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 10 10 -1.0
! 1413: } {abc: 10 10 (-000000001) :xyz}
! 1414: do_test printf-2.3.8.7 {
! 1415: sqlite3_mprintf_double {abc: %d %d (%10.10f) :xyz} 10 10 -1.0
! 1416: } {abc: 10 10 (-1.0000000000) :xyz}
! 1417: do_test printf-2.3.8.8 {
! 1418: sqlite3_mprintf_double {abc: %d %d (%10.10e) :xyz} 10 10 -1.0
! 1419: } {abc: 10 10 (-1.0000000000e+00) :xyz}
! 1420: do_test printf-2.3.8.9 {
! 1421: sqlite3_mprintf_double {abc: %d %d (%10.10g) :xyz} 10 10 -1.0
! 1422: } {abc: 10 10 ( -1) :xyz}
! 1423: do_test printf-2.3.9.1 {
! 1424: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 10 10 -99.99999
! 1425: } {abc: (-99.9999900000) :xyz}
! 1426: do_test printf-2.3.9.2 {
! 1427: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 10 10 -99.99999
! 1428: } {abc: (-9.9999990000e+01) :xyz}
! 1429: do_test printf-2.3.9.3 {
! 1430: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 10 10 -99.99999
! 1431: } {abc: ( -99.99999) :xyz}
! 1432: do_test printf-2.3.9.4 {
! 1433: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 10 10 -99.99999
! 1434: } {abc: 10 10 (-100) :xyz}
! 1435: do_test printf-2.3.9.5 {
! 1436: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 10 10 -99.99999
! 1437: } {abc: 10 10 (-100.000) :xyz}
! 1438: do_test printf-2.3.9.6 {
! 1439: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 10 10 -99.99999
! 1440: } {abc: 10 10 (-000000100) :xyz}
! 1441: do_test printf-2.3.9.7 {
! 1442: sqlite3_mprintf_double {abc: %d %d (%10.10f) :xyz} 10 10 -99.99999
! 1443: } {abc: 10 10 (-99.9999900000) :xyz}
! 1444: do_test printf-2.3.9.8 {
! 1445: sqlite3_mprintf_double {abc: %d %d (%10.10e) :xyz} 10 10 -99.99999
! 1446: } {abc: 10 10 (-9.9999990000e+01) :xyz}
! 1447: do_test printf-2.3.9.9 {
! 1448: sqlite3_mprintf_double {abc: %d %d (%10.10g) :xyz} 10 10 -99.99999
! 1449: } {abc: 10 10 ( -99.99999) :xyz}
! 1450: do_test printf-2.3.10.1 {
! 1451: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 10 10 3.14e+9
! 1452: } {abc: (3140000000.0000000000) :xyz}
! 1453: do_test printf-2.3.10.2 {
! 1454: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 10 10 3.14e+9
! 1455: } {abc: (3.1400000000e+09) :xyz}
! 1456: do_test printf-2.3.10.3 {
! 1457: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 10 10 3.14e+9
! 1458: } {abc: (3140000000) :xyz}
! 1459: do_test printf-2.3.10.4 {
! 1460: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 10 10 3.14e+9
! 1461: } {abc: 10 10 (3.14e+09) :xyz}
! 1462: do_test printf-2.3.10.5 {
! 1463: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 10 10 3.14e+9
! 1464: } {abc: 10 10 (3.14000e+09) :xyz}
! 1465: do_test printf-2.3.10.6 {
! 1466: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 10 10 3.14e+9
! 1467: } {abc: 10 10 (003.14e+09) :xyz}
! 1468: do_test printf-2.3.10.7 {
! 1469: sqlite3_mprintf_double {abc: %d %d (%10.10f) :xyz} 10 10 3.14e+9
! 1470: } {abc: 10 10 (3140000000.0000000000) :xyz}
! 1471: do_test printf-2.3.10.8 {
! 1472: sqlite3_mprintf_double {abc: %d %d (%10.10e) :xyz} 10 10 3.14e+9
! 1473: } {abc: 10 10 (3.1400000000e+09) :xyz}
! 1474: do_test printf-2.3.10.9 {
! 1475: sqlite3_mprintf_double {abc: %d %d (%10.10g) :xyz} 10 10 3.14e+9
! 1476: } {abc: 10 10 (3140000000) :xyz}
! 1477: do_test printf-2.3.11.2 {
! 1478: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 10 10 -4.72732e+88
! 1479: } {abc: (-4.7273200000e+88) :xyz}
! 1480: do_test printf-2.3.11.3 {
! 1481: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 10 10 -4.72732e+88
! 1482: } {abc: (-4.72732e+88) :xyz}
! 1483: do_test printf-2.3.11.4 {
! 1484: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 10 10 -4.72732e+88
! 1485: } {abc: 10 10 (-4.72732e+88) :xyz}
! 1486: do_test printf-2.3.11.5 {
! 1487: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 10 10 -4.72732e+88
! 1488: } {abc: 10 10 (-4.72732e+88) :xyz}
! 1489: do_test printf-2.3.11.6 {
! 1490: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 10 10 -4.72732e+88
! 1491: } {abc: 10 10 (-4.72732e+88) :xyz}
! 1492: do_test printf-2.3.11.8 {
! 1493: sqlite3_mprintf_double {abc: %d %d (%10.10e) :xyz} 10 10 -4.72732e+88
! 1494: } {abc: 10 10 (-4.7273200000e+88) :xyz}
! 1495: do_test printf-2.3.11.9 {
! 1496: sqlite3_mprintf_double {abc: %d %d (%10.10g) :xyz} 10 10 -4.72732e+88
! 1497: } {abc: 10 10 (-4.72732e+88) :xyz}
! 1498: do_test printf-2.3.12.2 {
! 1499: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 10 10 9.87991e+143
! 1500: } {abc: (9.8799100000e+143) :xyz}
! 1501: do_test printf-2.3.12.3 {
! 1502: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 10 10 9.87991e+143
! 1503: } {abc: (9.87991e+143) :xyz}
! 1504: do_test printf-2.3.12.4 {
! 1505: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 10 10 9.87991e+143
! 1506: } {abc: 10 10 (9.87991e+143) :xyz}
! 1507: do_test printf-2.3.12.5 {
! 1508: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 10 10 9.87991e+143
! 1509: } {abc: 10 10 (9.87991e+143) :xyz}
! 1510: do_test printf-2.3.12.6 {
! 1511: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 10 10 9.87991e+143
! 1512: } {abc: 10 10 (9.87991e+143) :xyz}
! 1513: do_test printf-2.3.12.8 {
! 1514: sqlite3_mprintf_double {abc: %d %d (%10.10e) :xyz} 10 10 9.87991e+143
! 1515: } {abc: 10 10 (9.8799100000e+143) :xyz}
! 1516: do_test printf-2.3.12.9 {
! 1517: sqlite3_mprintf_double {abc: %d %d (%10.10g) :xyz} 10 10 9.87991e+143
! 1518: } {abc: 10 10 (9.87991e+143) :xyz}
! 1519: do_test printf-2.3.13.1 {
! 1520: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 10 10 -6.287291e-9
! 1521: } {abc: (-0.0000000063) :xyz}
! 1522: do_test printf-2.3.13.2 {
! 1523: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 10 10 -6.287291e-9
! 1524: } {abc: (-6.2872910000e-09) :xyz}
! 1525: do_test printf-2.3.13.3 {
! 1526: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 10 10 -6.287291e-9
! 1527: } {abc: (-6.287291e-09) :xyz}
! 1528: do_test printf-2.3.13.4 {
! 1529: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 10 10 -6.287291e-9
! 1530: } {abc: 10 10 (-6.28729e-09) :xyz}
! 1531: do_test printf-2.3.13.5 {
! 1532: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 10 10 -6.287291e-9
! 1533: } {abc: 10 10 (-6.28729e-09) :xyz}
! 1534: do_test printf-2.3.13.6 {
! 1535: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 10 10 -6.287291e-9
! 1536: } {abc: 10 10 (-6.28729e-09) :xyz}
! 1537: do_test printf-2.3.13.7 {
! 1538: sqlite3_mprintf_double {abc: %d %d (%10.10f) :xyz} 10 10 -6.287291e-9
! 1539: } {abc: 10 10 (-0.0000000063) :xyz}
! 1540: do_test printf-2.3.13.8 {
! 1541: sqlite3_mprintf_double {abc: %d %d (%10.10e) :xyz} 10 10 -6.287291e-9
! 1542: } {abc: 10 10 (-6.2872910000e-09) :xyz}
! 1543: do_test printf-2.3.13.9 {
! 1544: sqlite3_mprintf_double {abc: %d %d (%10.10g) :xyz} 10 10 -6.287291e-9
! 1545: } {abc: 10 10 (-6.287291e-09) :xyz}
! 1546: do_test printf-2.3.14.1 {
! 1547: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 10 10 3.38826392e-110
! 1548: } {abc: (0.0000000000) :xyz}
! 1549: do_test printf-2.3.14.2 {
! 1550: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 10 10 3.38826392e-110
! 1551: } {abc: (3.3882639200e-110) :xyz}
! 1552: do_test printf-2.3.14.3 {
! 1553: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 10 10 3.38826392e-110
! 1554: } {abc: (3.38826392e-110) :xyz}
! 1555: do_test printf-2.3.14.4 {
! 1556: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 10 10 3.38826392e-110
! 1557: } {abc: 10 10 (3.38826e-110) :xyz}
! 1558: do_test printf-2.3.14.5 {
! 1559: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 10 10 3.38826392e-110
! 1560: } {abc: 10 10 (3.38826e-110) :xyz}
! 1561: do_test printf-2.3.14.6 {
! 1562: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 10 10 3.38826392e-110
! 1563: } {abc: 10 10 (3.38826e-110) :xyz}
! 1564: do_test printf-2.3.14.7 {
! 1565: sqlite3_mprintf_double {abc: %d %d (%10.10f) :xyz} 10 10 3.38826392e-110
! 1566: } {abc: 10 10 (0.0000000000) :xyz}
! 1567: do_test printf-2.3.14.8 {
! 1568: sqlite3_mprintf_double {abc: %d %d (%10.10e) :xyz} 10 10 3.38826392e-110
! 1569: } {abc: 10 10 (3.3882639200e-110) :xyz}
! 1570: do_test printf-2.3.14.9 {
! 1571: sqlite3_mprintf_double {abc: %d %d (%10.10g) :xyz} 10 10 3.38826392e-110
! 1572: } {abc: 10 10 (3.38826392e-110) :xyz}
! 1573: do_test printf-2.4.1.1 {
! 1574: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 10 5 0.001
! 1575: } {abc: ( 0.00100) :xyz}
! 1576: do_test printf-2.4.1.2 {
! 1577: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 10 5 0.001
! 1578: } {abc: (1.00000e-03) :xyz}
! 1579: do_test printf-2.4.1.3 {
! 1580: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 10 5 0.001
! 1581: } {abc: ( 0.001) :xyz}
! 1582: do_test printf-2.4.1.4 {
! 1583: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 10 5 0.001
! 1584: } {abc: 10 5 (0.001) :xyz}
! 1585: do_test printf-2.4.1.5 {
! 1586: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 10 5 0.001
! 1587: } {abc: 10 5 (0.00100000) :xyz}
! 1588: do_test printf-2.4.1.6 {
! 1589: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 10 5 0.001
! 1590: } {abc: 10 5 (000000.001) :xyz}
! 1591: do_test printf-2.4.1.7 {
! 1592: sqlite3_mprintf_double {abc: %d %d (%10.5f) :xyz} 10 5 0.001
! 1593: } {abc: 10 5 ( 0.00100) :xyz}
! 1594: do_test printf-2.4.1.8 {
! 1595: sqlite3_mprintf_double {abc: %d %d (%10.5e) :xyz} 10 5 0.001
! 1596: } {abc: 10 5 (1.00000e-03) :xyz}
! 1597: do_test printf-2.4.1.9 {
! 1598: sqlite3_mprintf_double {abc: %d %d (%10.5g) :xyz} 10 5 0.001
! 1599: } {abc: 10 5 ( 0.001) :xyz}
! 1600: do_test printf-2.4.2.1 {
! 1601: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 10 5 1.0e-20
! 1602: } {abc: ( 0.00000) :xyz}
! 1603: do_test printf-2.4.2.2 {
! 1604: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 10 5 1.0e-20
! 1605: } {abc: (1.00000e-20) :xyz}
! 1606: do_test printf-2.4.2.3 {
! 1607: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 10 5 1.0e-20
! 1608: } {abc: ( 1e-20) :xyz}
! 1609: do_test printf-2.4.2.4 {
! 1610: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 10 5 1.0e-20
! 1611: } {abc: 10 5 (1e-20) :xyz}
! 1612: do_test printf-2.4.2.5 {
! 1613: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 10 5 1.0e-20
! 1614: } {abc: 10 5 (1.00000e-20) :xyz}
! 1615: do_test printf-2.4.2.6 {
! 1616: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 10 5 1.0e-20
! 1617: } {abc: 10 5 (000001e-20) :xyz}
! 1618: do_test printf-2.4.2.7 {
! 1619: sqlite3_mprintf_double {abc: %d %d (%10.5f) :xyz} 10 5 1.0e-20
! 1620: } {abc: 10 5 ( 0.00000) :xyz}
! 1621: do_test printf-2.4.2.8 {
! 1622: sqlite3_mprintf_double {abc: %d %d (%10.5e) :xyz} 10 5 1.0e-20
! 1623: } {abc: 10 5 (1.00000e-20) :xyz}
! 1624: do_test printf-2.4.2.9 {
! 1625: sqlite3_mprintf_double {abc: %d %d (%10.5g) :xyz} 10 5 1.0e-20
! 1626: } {abc: 10 5 ( 1e-20) :xyz}
! 1627: do_test printf-2.4.3.1 {
! 1628: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 10 5 1.0
! 1629: } {abc: ( 1.00000) :xyz}
! 1630: do_test printf-2.4.3.2 {
! 1631: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 10 5 1.0
! 1632: } {abc: (1.00000e+00) :xyz}
! 1633: do_test printf-2.4.3.3 {
! 1634: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 10 5 1.0
! 1635: } {abc: ( 1) :xyz}
! 1636: do_test printf-2.4.3.4 {
! 1637: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 10 5 1.0
! 1638: } {abc: 10 5 (1) :xyz}
! 1639: do_test printf-2.4.3.5 {
! 1640: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 10 5 1.0
! 1641: } {abc: 10 5 (1.00000) :xyz}
! 1642: do_test printf-2.4.3.6 {
! 1643: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 10 5 1.0
! 1644: } {abc: 10 5 (0000000001) :xyz}
! 1645: do_test printf-2.4.3.7 {
! 1646: sqlite3_mprintf_double {abc: %d %d (%10.5f) :xyz} 10 5 1.0
! 1647: } {abc: 10 5 ( 1.00000) :xyz}
! 1648: do_test printf-2.4.3.8 {
! 1649: sqlite3_mprintf_double {abc: %d %d (%10.5e) :xyz} 10 5 1.0
! 1650: } {abc: 10 5 (1.00000e+00) :xyz}
! 1651: do_test printf-2.4.3.9 {
! 1652: sqlite3_mprintf_double {abc: %d %d (%10.5g) :xyz} 10 5 1.0
! 1653: } {abc: 10 5 ( 1) :xyz}
! 1654: do_test printf-2.4.4.1 {
! 1655: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 10 5 0.0
! 1656: } {abc: ( 0.00000) :xyz}
! 1657: do_test printf-2.4.4.2 {
! 1658: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 10 5 0.0
! 1659: } {abc: (0.00000e+00) :xyz}
! 1660: do_test printf-2.4.4.3 {
! 1661: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 10 5 0.0
! 1662: } {abc: ( 0) :xyz}
! 1663: do_test printf-2.4.4.4 {
! 1664: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 10 5 0.0
! 1665: } {abc: 10 5 (0) :xyz}
! 1666: do_test printf-2.4.4.5 {
! 1667: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 10 5 0.0
! 1668: } {abc: 10 5 (0.00000) :xyz}
! 1669: do_test printf-2.4.4.6 {
! 1670: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 10 5 0.0
! 1671: } {abc: 10 5 (0000000000) :xyz}
! 1672: do_test printf-2.4.4.7 {
! 1673: sqlite3_mprintf_double {abc: %d %d (%10.5f) :xyz} 10 5 0.0
! 1674: } {abc: 10 5 ( 0.00000) :xyz}
! 1675: do_test printf-2.4.4.8 {
! 1676: sqlite3_mprintf_double {abc: %d %d (%10.5e) :xyz} 10 5 0.0
! 1677: } {abc: 10 5 (0.00000e+00) :xyz}
! 1678: do_test printf-2.4.4.9 {
! 1679: sqlite3_mprintf_double {abc: %d %d (%10.5g) :xyz} 10 5 0.0
! 1680: } {abc: 10 5 ( 0) :xyz}
! 1681: do_test printf-2.4.5.1 {
! 1682: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 10 5 100.0
! 1683: } {abc: ( 100.00000) :xyz}
! 1684: do_test printf-2.4.5.2 {
! 1685: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 10 5 100.0
! 1686: } {abc: (1.00000e+02) :xyz}
! 1687: do_test printf-2.4.5.3 {
! 1688: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 10 5 100.0
! 1689: } {abc: ( 100) :xyz}
! 1690: do_test printf-2.4.5.4 {
! 1691: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 10 5 100.0
! 1692: } {abc: 10 5 (100) :xyz}
! 1693: do_test printf-2.4.5.5 {
! 1694: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 10 5 100.0
! 1695: } {abc: 10 5 (100.000) :xyz}
! 1696: do_test printf-2.4.5.6 {
! 1697: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 10 5 100.0
! 1698: } {abc: 10 5 (0000000100) :xyz}
! 1699: do_test printf-2.4.5.7 {
! 1700: sqlite3_mprintf_double {abc: %d %d (%10.5f) :xyz} 10 5 100.0
! 1701: } {abc: 10 5 ( 100.00000) :xyz}
! 1702: do_test printf-2.4.5.8 {
! 1703: sqlite3_mprintf_double {abc: %d %d (%10.5e) :xyz} 10 5 100.0
! 1704: } {abc: 10 5 (1.00000e+02) :xyz}
! 1705: do_test printf-2.4.5.9 {
! 1706: sqlite3_mprintf_double {abc: %d %d (%10.5g) :xyz} 10 5 100.0
! 1707: } {abc: 10 5 ( 100) :xyz}
! 1708: do_test printf-2.4.6.1 {
! 1709: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 10 5 9.99999
! 1710: } {abc: ( 9.99999) :xyz}
! 1711: do_test printf-2.4.6.2 {
! 1712: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 10 5 9.99999
! 1713: } {abc: (9.99999e+00) :xyz}
! 1714: do_test printf-2.4.6.3 {
! 1715: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 10 5 9.99999
! 1716: } {abc: ( 10) :xyz}
! 1717: do_test printf-2.4.6.4 {
! 1718: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 10 5 9.99999
! 1719: } {abc: 10 5 (9.99999) :xyz}
! 1720: do_test printf-2.4.6.5 {
! 1721: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 10 5 9.99999
! 1722: } {abc: 10 5 (9.99999) :xyz}
! 1723: do_test printf-2.4.6.6 {
! 1724: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 10 5 9.99999
! 1725: } {abc: 10 5 (0009.99999) :xyz}
! 1726: do_test printf-2.4.6.7 {
! 1727: sqlite3_mprintf_double {abc: %d %d (%10.5f) :xyz} 10 5 9.99999
! 1728: } {abc: 10 5 ( 9.99999) :xyz}
! 1729: do_test printf-2.4.6.8 {
! 1730: sqlite3_mprintf_double {abc: %d %d (%10.5e) :xyz} 10 5 9.99999
! 1731: } {abc: 10 5 (9.99999e+00) :xyz}
! 1732: do_test printf-2.4.6.9 {
! 1733: sqlite3_mprintf_double {abc: %d %d (%10.5g) :xyz} 10 5 9.99999
! 1734: } {abc: 10 5 ( 10) :xyz}
! 1735: do_test printf-2.4.7.1 {
! 1736: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 10 5 -0.00543
! 1737: } {abc: ( -0.00543) :xyz}
! 1738: do_test printf-2.4.7.2 {
! 1739: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 10 5 -0.00543
! 1740: } {abc: (-5.43000e-03) :xyz}
! 1741: do_test printf-2.4.7.3 {
! 1742: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 10 5 -0.00543
! 1743: } {abc: ( -0.00543) :xyz}
! 1744: do_test printf-2.4.7.4 {
! 1745: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 10 5 -0.00543
! 1746: } {abc: 10 5 (-0.00543) :xyz}
! 1747: do_test printf-2.4.7.5 {
! 1748: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 10 5 -0.00543
! 1749: } {abc: 10 5 (-0.00543000) :xyz}
! 1750: do_test printf-2.4.7.6 {
! 1751: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 10 5 -0.00543
! 1752: } {abc: 10 5 (-000.00543) :xyz}
! 1753: do_test printf-2.4.7.7 {
! 1754: sqlite3_mprintf_double {abc: %d %d (%10.5f) :xyz} 10 5 -0.00543
! 1755: } {abc: 10 5 ( -0.00543) :xyz}
! 1756: do_test printf-2.4.7.8 {
! 1757: sqlite3_mprintf_double {abc: %d %d (%10.5e) :xyz} 10 5 -0.00543
! 1758: } {abc: 10 5 (-5.43000e-03) :xyz}
! 1759: do_test printf-2.4.7.9 {
! 1760: sqlite3_mprintf_double {abc: %d %d (%10.5g) :xyz} 10 5 -0.00543
! 1761: } {abc: 10 5 ( -0.00543) :xyz}
! 1762: do_test printf-2.4.8.1 {
! 1763: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 10 5 -1.0
! 1764: } {abc: ( -1.00000) :xyz}
! 1765: do_test printf-2.4.8.2 {
! 1766: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 10 5 -1.0
! 1767: } {abc: (-1.00000e+00) :xyz}
! 1768: do_test printf-2.4.8.3 {
! 1769: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 10 5 -1.0
! 1770: } {abc: ( -1) :xyz}
! 1771: do_test printf-2.4.8.4 {
! 1772: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 10 5 -1.0
! 1773: } {abc: 10 5 (-1) :xyz}
! 1774: do_test printf-2.4.8.5 {
! 1775: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 10 5 -1.0
! 1776: } {abc: 10 5 (-1.00000) :xyz}
! 1777: do_test printf-2.4.8.6 {
! 1778: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 10 5 -1.0
! 1779: } {abc: 10 5 (-000000001) :xyz}
! 1780: do_test printf-2.4.8.7 {
! 1781: sqlite3_mprintf_double {abc: %d %d (%10.5f) :xyz} 10 5 -1.0
! 1782: } {abc: 10 5 ( -1.00000) :xyz}
! 1783: do_test printf-2.4.8.8 {
! 1784: sqlite3_mprintf_double {abc: %d %d (%10.5e) :xyz} 10 5 -1.0
! 1785: } {abc: 10 5 (-1.00000e+00) :xyz}
! 1786: do_test printf-2.4.8.9 {
! 1787: sqlite3_mprintf_double {abc: %d %d (%10.5g) :xyz} 10 5 -1.0
! 1788: } {abc: 10 5 ( -1) :xyz}
! 1789: do_test printf-2.4.9.1 {
! 1790: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 10 5 -99.99999
! 1791: } {abc: ( -99.99999) :xyz}
! 1792: do_test printf-2.4.9.2 {
! 1793: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 10 5 -99.99999
! 1794: } {abc: (-1.00000e+02) :xyz}
! 1795: do_test printf-2.4.9.3 {
! 1796: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 10 5 -99.99999
! 1797: } {abc: ( -100) :xyz}
! 1798: do_test printf-2.4.9.4 {
! 1799: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 10 5 -99.99999
! 1800: } {abc: 10 5 (-100) :xyz}
! 1801: do_test printf-2.4.9.5 {
! 1802: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 10 5 -99.99999
! 1803: } {abc: 10 5 (-100.000) :xyz}
! 1804: do_test printf-2.4.9.6 {
! 1805: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 10 5 -99.99999
! 1806: } {abc: 10 5 (-000000100) :xyz}
! 1807: do_test printf-2.4.9.7 {
! 1808: sqlite3_mprintf_double {abc: %d %d (%10.5f) :xyz} 10 5 -99.99999
! 1809: } {abc: 10 5 ( -99.99999) :xyz}
! 1810: do_test printf-2.4.9.8 {
! 1811: sqlite3_mprintf_double {abc: %d %d (%10.5e) :xyz} 10 5 -99.99999
! 1812: } {abc: 10 5 (-1.00000e+02) :xyz}
! 1813: do_test printf-2.4.9.9 {
! 1814: sqlite3_mprintf_double {abc: %d %d (%10.5g) :xyz} 10 5 -99.99999
! 1815: } {abc: 10 5 ( -100) :xyz}
! 1816: do_test printf-2.4.10.1 {
! 1817: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 10 5 3.14e+9
! 1818: } {abc: (3140000000.00000) :xyz}
! 1819: do_test printf-2.4.10.2 {
! 1820: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 10 5 3.14e+9
! 1821: } {abc: (3.14000e+09) :xyz}
! 1822: do_test printf-2.4.10.3 {
! 1823: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 10 5 3.14e+9
! 1824: } {abc: ( 3.14e+09) :xyz}
! 1825: do_test printf-2.4.10.4 {
! 1826: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 10 5 3.14e+9
! 1827: } {abc: 10 5 (3.14e+09) :xyz}
! 1828: do_test printf-2.4.10.5 {
! 1829: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 10 5 3.14e+9
! 1830: } {abc: 10 5 (3.14000e+09) :xyz}
! 1831: do_test printf-2.4.10.6 {
! 1832: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 10 5 3.14e+9
! 1833: } {abc: 10 5 (003.14e+09) :xyz}
! 1834: do_test printf-2.4.10.7 {
! 1835: sqlite3_mprintf_double {abc: %d %d (%10.5f) :xyz} 10 5 3.14e+9
! 1836: } {abc: 10 5 (3140000000.00000) :xyz}
! 1837: do_test printf-2.4.10.8 {
! 1838: sqlite3_mprintf_double {abc: %d %d (%10.5e) :xyz} 10 5 3.14e+9
! 1839: } {abc: 10 5 (3.14000e+09) :xyz}
! 1840: do_test printf-2.4.10.9 {
! 1841: sqlite3_mprintf_double {abc: %d %d (%10.5g) :xyz} 10 5 3.14e+9
! 1842: } {abc: 10 5 ( 3.14e+09) :xyz}
! 1843: do_test printf-2.4.11.2 {
! 1844: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 10 5 -4.72732e+88
! 1845: } {abc: (-4.72732e+88) :xyz}
! 1846: do_test printf-2.4.11.3 {
! 1847: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 10 5 -4.72732e+88
! 1848: } {abc: (-4.7273e+88) :xyz}
! 1849: do_test printf-2.4.11.4 {
! 1850: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 10 5 -4.72732e+88
! 1851: } {abc: 10 5 (-4.72732e+88) :xyz}
! 1852: do_test printf-2.4.11.5 {
! 1853: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 10 5 -4.72732e+88
! 1854: } {abc: 10 5 (-4.72732e+88) :xyz}
! 1855: do_test printf-2.4.11.6 {
! 1856: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 10 5 -4.72732e+88
! 1857: } {abc: 10 5 (-4.72732e+88) :xyz}
! 1858: do_test printf-2.4.11.8 {
! 1859: sqlite3_mprintf_double {abc: %d %d (%10.5e) :xyz} 10 5 -4.72732e+88
! 1860: } {abc: 10 5 (-4.72732e+88) :xyz}
! 1861: do_test printf-2.4.11.9 {
! 1862: sqlite3_mprintf_double {abc: %d %d (%10.5g) :xyz} 10 5 -4.72732e+88
! 1863: } {abc: 10 5 (-4.7273e+88) :xyz}
! 1864: do_test printf-2.4.12.2 {
! 1865: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 10 5 9.87991e+143
! 1866: } {abc: (9.87991e+143) :xyz}
! 1867: do_test printf-2.4.12.3 {
! 1868: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 10 5 9.87991e+143
! 1869: } {abc: (9.8799e+143) :xyz}
! 1870: do_test printf-2.4.12.4 {
! 1871: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 10 5 9.87991e+143
! 1872: } {abc: 10 5 (9.87991e+143) :xyz}
! 1873: do_test printf-2.4.12.5 {
! 1874: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 10 5 9.87991e+143
! 1875: } {abc: 10 5 (9.87991e+143) :xyz}
! 1876: do_test printf-2.4.12.6 {
! 1877: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 10 5 9.87991e+143
! 1878: } {abc: 10 5 (9.87991e+143) :xyz}
! 1879: do_test printf-2.4.12.8 {
! 1880: sqlite3_mprintf_double {abc: %d %d (%10.5e) :xyz} 10 5 9.87991e+143
! 1881: } {abc: 10 5 (9.87991e+143) :xyz}
! 1882: do_test printf-2.4.12.9 {
! 1883: sqlite3_mprintf_double {abc: %d %d (%10.5g) :xyz} 10 5 9.87991e+143
! 1884: } {abc: 10 5 (9.8799e+143) :xyz}
! 1885: do_test printf-2.4.13.1 {
! 1886: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 10 5 -6.287291e-9
! 1887: } {abc: ( -0.00000) :xyz}
! 1888: do_test printf-2.4.13.2 {
! 1889: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 10 5 -6.287291e-9
! 1890: } {abc: (-6.28729e-09) :xyz}
! 1891: do_test printf-2.4.13.3 {
! 1892: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 10 5 -6.287291e-9
! 1893: } {abc: (-6.2873e-09) :xyz}
! 1894: do_test printf-2.4.13.4 {
! 1895: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 10 5 -6.287291e-9
! 1896: } {abc: 10 5 (-6.28729e-09) :xyz}
! 1897: do_test printf-2.4.13.5 {
! 1898: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 10 5 -6.287291e-9
! 1899: } {abc: 10 5 (-6.28729e-09) :xyz}
! 1900: do_test printf-2.4.13.6 {
! 1901: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 10 5 -6.287291e-9
! 1902: } {abc: 10 5 (-6.28729e-09) :xyz}
! 1903: do_test printf-2.4.13.7 {
! 1904: sqlite3_mprintf_double {abc: %d %d (%10.5f) :xyz} 10 5 -6.287291e-9
! 1905: } {abc: 10 5 ( -0.00000) :xyz}
! 1906: do_test printf-2.4.13.8 {
! 1907: sqlite3_mprintf_double {abc: %d %d (%10.5e) :xyz} 10 5 -6.287291e-9
! 1908: } {abc: 10 5 (-6.28729e-09) :xyz}
! 1909: do_test printf-2.4.13.9 {
! 1910: sqlite3_mprintf_double {abc: %d %d (%10.5g) :xyz} 10 5 -6.287291e-9
! 1911: } {abc: 10 5 (-6.2873e-09) :xyz}
! 1912: do_test printf-2.4.14.1 {
! 1913: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 10 5 3.38826392e-110
! 1914: } {abc: ( 0.00000) :xyz}
! 1915: do_test printf-2.4.14.2 {
! 1916: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 10 5 3.38826392e-110
! 1917: } {abc: (3.38826e-110) :xyz}
! 1918: do_test printf-2.4.14.3 {
! 1919: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 10 5 3.38826392e-110
! 1920: } {abc: (3.3883e-110) :xyz}
! 1921: do_test printf-2.4.14.4 {
! 1922: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 10 5 3.38826392e-110
! 1923: } {abc: 10 5 (3.38826e-110) :xyz}
! 1924: do_test printf-2.4.14.5 {
! 1925: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 10 5 3.38826392e-110
! 1926: } {abc: 10 5 (3.38826e-110) :xyz}
! 1927: do_test printf-2.4.14.6 {
! 1928: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 10 5 3.38826392e-110
! 1929: } {abc: 10 5 (3.38826e-110) :xyz}
! 1930: do_test printf-2.4.14.7 {
! 1931: sqlite3_mprintf_double {abc: %d %d (%10.5f) :xyz} 10 5 3.38826392e-110
! 1932: } {abc: 10 5 ( 0.00000) :xyz}
! 1933: do_test printf-2.4.14.8 {
! 1934: sqlite3_mprintf_double {abc: %d %d (%10.5e) :xyz} 10 5 3.38826392e-110
! 1935: } {abc: 10 5 (3.38826e-110) :xyz}
! 1936: do_test printf-2.4.14.9 {
! 1937: sqlite3_mprintf_double {abc: %d %d (%10.5g) :xyz} 10 5 3.38826392e-110
! 1938: } {abc: 10 5 (3.3883e-110) :xyz}
! 1939: do_test printf-2.5.1.1 {
! 1940: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 2 2 0.001
! 1941: } {abc: (0.00) :xyz}
! 1942: do_test printf-2.5.1.2 {
! 1943: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 2 2 0.001
! 1944: } {abc: (1.00e-03) :xyz}
! 1945: do_test printf-2.5.1.3 {
! 1946: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 2 2 0.001
! 1947: } {abc: (0.001) :xyz}
! 1948: do_test printf-2.5.1.4 {
! 1949: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 2 2 0.001
! 1950: } {abc: 2 2 (0.001) :xyz}
! 1951: do_test printf-2.5.1.5 {
! 1952: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 2 2 0.001
! 1953: } {abc: 2 2 (0.00100000) :xyz}
! 1954: do_test printf-2.5.1.6 {
! 1955: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 2 2 0.001
! 1956: } {abc: 2 2 (000000.001) :xyz}
! 1957: do_test printf-2.5.1.7 {
! 1958: sqlite3_mprintf_double {abc: %d %d (%2.2f) :xyz} 2 2 0.001
! 1959: } {abc: 2 2 (0.00) :xyz}
! 1960: do_test printf-2.5.1.8 {
! 1961: sqlite3_mprintf_double {abc: %d %d (%2.2e) :xyz} 2 2 0.001
! 1962: } {abc: 2 2 (1.00e-03) :xyz}
! 1963: do_test printf-2.5.1.9 {
! 1964: sqlite3_mprintf_double {abc: %d %d (%2.2g) :xyz} 2 2 0.001
! 1965: } {abc: 2 2 (0.001) :xyz}
! 1966: do_test printf-2.5.2.1 {
! 1967: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 2 2 1.0e-20
! 1968: } {abc: (0.00) :xyz}
! 1969: do_test printf-2.5.2.2 {
! 1970: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 2 2 1.0e-20
! 1971: } {abc: (1.00e-20) :xyz}
! 1972: do_test printf-2.5.2.3 {
! 1973: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 2 2 1.0e-20
! 1974: } {abc: (1e-20) :xyz}
! 1975: do_test printf-2.5.2.4 {
! 1976: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 2 2 1.0e-20
! 1977: } {abc: 2 2 (1e-20) :xyz}
! 1978: do_test printf-2.5.2.5 {
! 1979: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 2 2 1.0e-20
! 1980: } {abc: 2 2 (1.00000e-20) :xyz}
! 1981: do_test printf-2.5.2.6 {
! 1982: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 2 2 1.0e-20
! 1983: } {abc: 2 2 (000001e-20) :xyz}
! 1984: do_test printf-2.5.2.7 {
! 1985: sqlite3_mprintf_double {abc: %d %d (%2.2f) :xyz} 2 2 1.0e-20
! 1986: } {abc: 2 2 (0.00) :xyz}
! 1987: do_test printf-2.5.2.8 {
! 1988: sqlite3_mprintf_double {abc: %d %d (%2.2e) :xyz} 2 2 1.0e-20
! 1989: } {abc: 2 2 (1.00e-20) :xyz}
! 1990: do_test printf-2.5.2.9 {
! 1991: sqlite3_mprintf_double {abc: %d %d (%2.2g) :xyz} 2 2 1.0e-20
! 1992: } {abc: 2 2 (1e-20) :xyz}
! 1993: do_test printf-2.5.3.1 {
! 1994: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 2 2 1.0
! 1995: } {abc: (1.00) :xyz}
! 1996: do_test printf-2.5.3.2 {
! 1997: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 2 2 1.0
! 1998: } {abc: (1.00e+00) :xyz}
! 1999: do_test printf-2.5.3.3 {
! 2000: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 2 2 1.0
! 2001: } {abc: ( 1) :xyz}
! 2002: do_test printf-2.5.3.4 {
! 2003: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 2 2 1.0
! 2004: } {abc: 2 2 (1) :xyz}
! 2005: do_test printf-2.5.3.5 {
! 2006: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 2 2 1.0
! 2007: } {abc: 2 2 (1.00000) :xyz}
! 2008: do_test printf-2.5.3.6 {
! 2009: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 2 2 1.0
! 2010: } {abc: 2 2 (0000000001) :xyz}
! 2011: do_test printf-2.5.3.7 {
! 2012: sqlite3_mprintf_double {abc: %d %d (%2.2f) :xyz} 2 2 1.0
! 2013: } {abc: 2 2 (1.00) :xyz}
! 2014: do_test printf-2.5.3.8 {
! 2015: sqlite3_mprintf_double {abc: %d %d (%2.2e) :xyz} 2 2 1.0
! 2016: } {abc: 2 2 (1.00e+00) :xyz}
! 2017: do_test printf-2.5.3.9 {
! 2018: sqlite3_mprintf_double {abc: %d %d (%2.2g) :xyz} 2 2 1.0
! 2019: } {abc: 2 2 ( 1) :xyz}
! 2020: do_test printf-2.5.4.1 {
! 2021: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 2 2 0.0
! 2022: } {abc: (0.00) :xyz}
! 2023: do_test printf-2.5.4.2 {
! 2024: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 2 2 0.0
! 2025: } {abc: (0.00e+00) :xyz}
! 2026: do_test printf-2.5.4.3 {
! 2027: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 2 2 0.0
! 2028: } {abc: ( 0) :xyz}
! 2029: do_test printf-2.5.4.4 {
! 2030: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 2 2 0.0
! 2031: } {abc: 2 2 (0) :xyz}
! 2032: do_test printf-2.5.4.5 {
! 2033: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 2 2 0.0
! 2034: } {abc: 2 2 (0.00000) :xyz}
! 2035: do_test printf-2.5.4.6 {
! 2036: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 2 2 0.0
! 2037: } {abc: 2 2 (0000000000) :xyz}
! 2038: do_test printf-2.5.4.7 {
! 2039: sqlite3_mprintf_double {abc: %d %d (%2.2f) :xyz} 2 2 0.0
! 2040: } {abc: 2 2 (0.00) :xyz}
! 2041: do_test printf-2.5.4.8 {
! 2042: sqlite3_mprintf_double {abc: %d %d (%2.2e) :xyz} 2 2 0.0
! 2043: } {abc: 2 2 (0.00e+00) :xyz}
! 2044: do_test printf-2.5.4.9 {
! 2045: sqlite3_mprintf_double {abc: %d %d (%2.2g) :xyz} 2 2 0.0
! 2046: } {abc: 2 2 ( 0) :xyz}
! 2047: do_test printf-2.5.5.1 {
! 2048: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 2 2 100.0
! 2049: } {abc: (100.00) :xyz}
! 2050: do_test printf-2.5.5.2 {
! 2051: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 2 2 100.0
! 2052: } {abc: (1.00e+02) :xyz}
! 2053: do_test printf-2.5.5.3 {
! 2054: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 2 2 100.0
! 2055: } {abc: (1e+02) :xyz}
! 2056: do_test printf-2.5.5.4 {
! 2057: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 2 2 100.0
! 2058: } {abc: 2 2 (100) :xyz}
! 2059: do_test printf-2.5.5.5 {
! 2060: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 2 2 100.0
! 2061: } {abc: 2 2 (100.000) :xyz}
! 2062: do_test printf-2.5.5.6 {
! 2063: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 2 2 100.0
! 2064: } {abc: 2 2 (0000000100) :xyz}
! 2065: do_test printf-2.5.5.7 {
! 2066: sqlite3_mprintf_double {abc: %d %d (%2.2f) :xyz} 2 2 100.0
! 2067: } {abc: 2 2 (100.00) :xyz}
! 2068: do_test printf-2.5.5.8 {
! 2069: sqlite3_mprintf_double {abc: %d %d (%2.2e) :xyz} 2 2 100.0
! 2070: } {abc: 2 2 (1.00e+02) :xyz}
! 2071: do_test printf-2.5.5.9 {
! 2072: sqlite3_mprintf_double {abc: %d %d (%2.2g) :xyz} 2 2 100.0
! 2073: } {abc: 2 2 (1e+02) :xyz}
! 2074: do_test printf-2.5.6.1 {
! 2075: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 2 2 9.99999
! 2076: } {abc: (10.00) :xyz}
! 2077: do_test printf-2.5.6.2 {
! 2078: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 2 2 9.99999
! 2079: } {abc: (1.00e+01) :xyz}
! 2080: do_test printf-2.5.6.3 {
! 2081: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 2 2 9.99999
! 2082: } {abc: (10) :xyz}
! 2083: do_test printf-2.5.6.4 {
! 2084: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 2 2 9.99999
! 2085: } {abc: 2 2 (9.99999) :xyz}
! 2086: do_test printf-2.5.6.5 {
! 2087: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 2 2 9.99999
! 2088: } {abc: 2 2 (9.99999) :xyz}
! 2089: do_test printf-2.5.6.6 {
! 2090: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 2 2 9.99999
! 2091: } {abc: 2 2 (0009.99999) :xyz}
! 2092: do_test printf-2.5.6.7 {
! 2093: sqlite3_mprintf_double {abc: %d %d (%2.2f) :xyz} 2 2 9.99999
! 2094: } {abc: 2 2 (10.00) :xyz}
! 2095: do_test printf-2.5.6.8 {
! 2096: sqlite3_mprintf_double {abc: %d %d (%2.2e) :xyz} 2 2 9.99999
! 2097: } {abc: 2 2 (1.00e+01) :xyz}
! 2098: do_test printf-2.5.6.9 {
! 2099: sqlite3_mprintf_double {abc: %d %d (%2.2g) :xyz} 2 2 9.99999
! 2100: } {abc: 2 2 (10) :xyz}
! 2101: do_test printf-2.5.7.1 {
! 2102: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 2 2 -0.00543
! 2103: } {abc: (-0.01) :xyz}
! 2104: do_test printf-2.5.7.2 {
! 2105: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 2 2 -0.00543
! 2106: } {abc: (-5.43e-03) :xyz}
! 2107: do_test printf-2.5.7.3 {
! 2108: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 2 2 -0.00543
! 2109: } {abc: (-0.0054) :xyz}
! 2110: do_test printf-2.5.7.4 {
! 2111: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 2 2 -0.00543
! 2112: } {abc: 2 2 (-0.00543) :xyz}
! 2113: do_test printf-2.5.7.5 {
! 2114: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 2 2 -0.00543
! 2115: } {abc: 2 2 (-0.00543000) :xyz}
! 2116: do_test printf-2.5.7.6 {
! 2117: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 2 2 -0.00543
! 2118: } {abc: 2 2 (-000.00543) :xyz}
! 2119: do_test printf-2.5.7.7 {
! 2120: sqlite3_mprintf_double {abc: %d %d (%2.2f) :xyz} 2 2 -0.00543
! 2121: } {abc: 2 2 (-0.01) :xyz}
! 2122: do_test printf-2.5.7.8 {
! 2123: sqlite3_mprintf_double {abc: %d %d (%2.2e) :xyz} 2 2 -0.00543
! 2124: } {abc: 2 2 (-5.43e-03) :xyz}
! 2125: do_test printf-2.5.7.9 {
! 2126: sqlite3_mprintf_double {abc: %d %d (%2.2g) :xyz} 2 2 -0.00543
! 2127: } {abc: 2 2 (-0.0054) :xyz}
! 2128: do_test printf-2.5.8.1 {
! 2129: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 2 2 -1.0
! 2130: } {abc: (-1.00) :xyz}
! 2131: do_test printf-2.5.8.2 {
! 2132: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 2 2 -1.0
! 2133: } {abc: (-1.00e+00) :xyz}
! 2134: do_test printf-2.5.8.3 {
! 2135: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 2 2 -1.0
! 2136: } {abc: (-1) :xyz}
! 2137: do_test printf-2.5.8.4 {
! 2138: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 2 2 -1.0
! 2139: } {abc: 2 2 (-1) :xyz}
! 2140: do_test printf-2.5.8.5 {
! 2141: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 2 2 -1.0
! 2142: } {abc: 2 2 (-1.00000) :xyz}
! 2143: do_test printf-2.5.8.6 {
! 2144: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 2 2 -1.0
! 2145: } {abc: 2 2 (-000000001) :xyz}
! 2146: do_test printf-2.5.8.7 {
! 2147: sqlite3_mprintf_double {abc: %d %d (%2.2f) :xyz} 2 2 -1.0
! 2148: } {abc: 2 2 (-1.00) :xyz}
! 2149: do_test printf-2.5.8.8 {
! 2150: sqlite3_mprintf_double {abc: %d %d (%2.2e) :xyz} 2 2 -1.0
! 2151: } {abc: 2 2 (-1.00e+00) :xyz}
! 2152: do_test printf-2.5.8.9 {
! 2153: sqlite3_mprintf_double {abc: %d %d (%2.2g) :xyz} 2 2 -1.0
! 2154: } {abc: 2 2 (-1) :xyz}
! 2155: do_test printf-2.5.9.1 {
! 2156: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 2 2 -99.99999
! 2157: } {abc: (-100.00) :xyz}
! 2158: do_test printf-2.5.9.2 {
! 2159: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 2 2 -99.99999
! 2160: } {abc: (-1.00e+02) :xyz}
! 2161: do_test printf-2.5.9.3 {
! 2162: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 2 2 -99.99999
! 2163: } {abc: (-1e+02) :xyz}
! 2164: do_test printf-2.5.9.4 {
! 2165: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 2 2 -99.99999
! 2166: } {abc: 2 2 (-100) :xyz}
! 2167: do_test printf-2.5.9.5 {
! 2168: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 2 2 -99.99999
! 2169: } {abc: 2 2 (-100.000) :xyz}
! 2170: do_test printf-2.5.9.6 {
! 2171: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 2 2 -99.99999
! 2172: } {abc: 2 2 (-000000100) :xyz}
! 2173: do_test printf-2.5.9.7 {
! 2174: sqlite3_mprintf_double {abc: %d %d (%2.2f) :xyz} 2 2 -99.99999
! 2175: } {abc: 2 2 (-100.00) :xyz}
! 2176: do_test printf-2.5.9.8 {
! 2177: sqlite3_mprintf_double {abc: %d %d (%2.2e) :xyz} 2 2 -99.99999
! 2178: } {abc: 2 2 (-1.00e+02) :xyz}
! 2179: do_test printf-2.5.9.9 {
! 2180: sqlite3_mprintf_double {abc: %d %d (%2.2g) :xyz} 2 2 -99.99999
! 2181: } {abc: 2 2 (-1e+02) :xyz}
! 2182: do_test printf-2.5.10.1 {
! 2183: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 2 2 3.14e+9
! 2184: } {abc: (3140000000.00) :xyz}
! 2185: do_test printf-2.5.10.2 {
! 2186: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 2 2 3.14e+9
! 2187: } {abc: (3.14e+09) :xyz}
! 2188: do_test printf-2.5.10.3 {
! 2189: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 2 2 3.14e+9
! 2190: } {abc: (3.1e+09) :xyz}
! 2191: do_test printf-2.5.10.4 {
! 2192: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 2 2 3.14e+9
! 2193: } {abc: 2 2 (3.14e+09) :xyz}
! 2194: do_test printf-2.5.10.5 {
! 2195: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 2 2 3.14e+9
! 2196: } {abc: 2 2 (3.14000e+09) :xyz}
! 2197: do_test printf-2.5.10.6 {
! 2198: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 2 2 3.14e+9
! 2199: } {abc: 2 2 (003.14e+09) :xyz}
! 2200: do_test printf-2.5.10.7 {
! 2201: sqlite3_mprintf_double {abc: %d %d (%2.2f) :xyz} 2 2 3.14e+9
! 2202: } {abc: 2 2 (3140000000.00) :xyz}
! 2203: do_test printf-2.5.10.8 {
! 2204: sqlite3_mprintf_double {abc: %d %d (%2.2e) :xyz} 2 2 3.14e+9
! 2205: } {abc: 2 2 (3.14e+09) :xyz}
! 2206: do_test printf-2.5.10.9 {
! 2207: sqlite3_mprintf_double {abc: %d %d (%2.2g) :xyz} 2 2 3.14e+9
! 2208: } {abc: 2 2 (3.1e+09) :xyz}
! 2209: do_test printf-2.5.11.2 {
! 2210: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 2 2 -4.72732e+88
! 2211: } {abc: (-4.73e+88) :xyz}
! 2212: do_test printf-2.5.11.3 {
! 2213: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 2 2 -4.72732e+88
! 2214: } {abc: (-4.7e+88) :xyz}
! 2215: do_test printf-2.5.11.4 {
! 2216: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 2 2 -4.72732e+88
! 2217: } {abc: 2 2 (-4.72732e+88) :xyz}
! 2218: do_test printf-2.5.11.5 {
! 2219: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 2 2 -4.72732e+88
! 2220: } {abc: 2 2 (-4.72732e+88) :xyz}
! 2221: do_test printf-2.5.11.6 {
! 2222: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 2 2 -4.72732e+88
! 2223: } {abc: 2 2 (-4.72732e+88) :xyz}
! 2224: do_test printf-2.5.11.8 {
! 2225: sqlite3_mprintf_double {abc: %d %d (%2.2e) :xyz} 2 2 -4.72732e+88
! 2226: } {abc: 2 2 (-4.73e+88) :xyz}
! 2227: do_test printf-2.5.11.9 {
! 2228: sqlite3_mprintf_double {abc: %d %d (%2.2g) :xyz} 2 2 -4.72732e+88
! 2229: } {abc: 2 2 (-4.7e+88) :xyz}
! 2230: do_test printf-2.5.12.2 {
! 2231: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 2 2 9.87991e+143
! 2232: } {abc: (9.88e+143) :xyz}
! 2233: do_test printf-2.5.12.3 {
! 2234: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 2 2 9.87991e+143
! 2235: } {abc: (9.9e+143) :xyz}
! 2236: do_test printf-2.5.12.4 {
! 2237: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 2 2 9.87991e+143
! 2238: } {abc: 2 2 (9.87991e+143) :xyz}
! 2239: do_test printf-2.5.12.5 {
! 2240: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 2 2 9.87991e+143
! 2241: } {abc: 2 2 (9.87991e+143) :xyz}
! 2242: do_test printf-2.5.12.6 {
! 2243: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 2 2 9.87991e+143
! 2244: } {abc: 2 2 (9.87991e+143) :xyz}
! 2245: do_test printf-2.5.12.8 {
! 2246: sqlite3_mprintf_double {abc: %d %d (%2.2e) :xyz} 2 2 9.87991e+143
! 2247: } {abc: 2 2 (9.88e+143) :xyz}
! 2248: do_test printf-2.5.12.9 {
! 2249: sqlite3_mprintf_double {abc: %d %d (%2.2g) :xyz} 2 2 9.87991e+143
! 2250: } {abc: 2 2 (9.9e+143) :xyz}
! 2251: do_test printf-2.5.13.1 {
! 2252: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 2 2 -6.287291e-9
! 2253: } {abc: (-0.00) :xyz}
! 2254: do_test printf-2.5.13.2 {
! 2255: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 2 2 -6.287291e-9
! 2256: } {abc: (-6.29e-09) :xyz}
! 2257: do_test printf-2.5.13.3 {
! 2258: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 2 2 -6.287291e-9
! 2259: } {abc: (-6.3e-09) :xyz}
! 2260: do_test printf-2.5.13.4 {
! 2261: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 2 2 -6.287291e-9
! 2262: } {abc: 2 2 (-6.28729e-09) :xyz}
! 2263: do_test printf-2.5.13.5 {
! 2264: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 2 2 -6.287291e-9
! 2265: } {abc: 2 2 (-6.28729e-09) :xyz}
! 2266: do_test printf-2.5.13.6 {
! 2267: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 2 2 -6.287291e-9
! 2268: } {abc: 2 2 (-6.28729e-09) :xyz}
! 2269: do_test printf-2.5.13.7 {
! 2270: sqlite3_mprintf_double {abc: %d %d (%2.2f) :xyz} 2 2 -6.287291e-9
! 2271: } {abc: 2 2 (-0.00) :xyz}
! 2272: do_test printf-2.5.13.8 {
! 2273: sqlite3_mprintf_double {abc: %d %d (%2.2e) :xyz} 2 2 -6.287291e-9
! 2274: } {abc: 2 2 (-6.29e-09) :xyz}
! 2275: do_test printf-2.5.13.9 {
! 2276: sqlite3_mprintf_double {abc: %d %d (%2.2g) :xyz} 2 2 -6.287291e-9
! 2277: } {abc: 2 2 (-6.3e-09) :xyz}
! 2278: do_test printf-2.5.14.1 {
! 2279: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 2 2 3.38826392e-110
! 2280: } {abc: (0.00) :xyz}
! 2281: do_test printf-2.5.14.2 {
! 2282: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 2 2 3.38826392e-110
! 2283: } {abc: (3.39e-110) :xyz}
! 2284: do_test printf-2.5.14.3 {
! 2285: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 2 2 3.38826392e-110
! 2286: } {abc: (3.4e-110) :xyz}
! 2287: do_test printf-2.5.14.4 {
! 2288: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 2 2 3.38826392e-110
! 2289: } {abc: 2 2 (3.38826e-110) :xyz}
! 2290: do_test printf-2.5.14.5 {
! 2291: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 2 2 3.38826392e-110
! 2292: } {abc: 2 2 (3.38826e-110) :xyz}
! 2293: do_test printf-2.5.14.6 {
! 2294: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 2 2 3.38826392e-110
! 2295: } {abc: 2 2 (3.38826e-110) :xyz}
! 2296: do_test printf-2.5.14.7 {
! 2297: sqlite3_mprintf_double {abc: %d %d (%2.2f) :xyz} 2 2 3.38826392e-110
! 2298: } {abc: 2 2 (0.00) :xyz}
! 2299: do_test printf-2.5.14.8 {
! 2300: sqlite3_mprintf_double {abc: %d %d (%2.2e) :xyz} 2 2 3.38826392e-110
! 2301: } {abc: 2 2 (3.39e-110) :xyz}
! 2302: do_test printf-2.5.14.9 {
! 2303: sqlite3_mprintf_double {abc: %d %d (%2.2g) :xyz} 2 2 3.38826392e-110
! 2304: } {abc: 2 2 (3.4e-110) :xyz}
! 2305: do_test printf-2.6.1.1 {
! 2306: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 2 3 0.001
! 2307: } {abc: (0.001) :xyz}
! 2308: do_test printf-2.6.1.2 {
! 2309: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 2 3 0.001
! 2310: } {abc: (1.000e-03) :xyz}
! 2311: do_test printf-2.6.1.3 {
! 2312: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 2 3 0.001
! 2313: } {abc: (0.001) :xyz}
! 2314: do_test printf-2.6.1.4 {
! 2315: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 2 3 0.001
! 2316: } {abc: 2 3 (0.001) :xyz}
! 2317: do_test printf-2.6.1.5 {
! 2318: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 2 3 0.001
! 2319: } {abc: 2 3 (0.00100000) :xyz}
! 2320: do_test printf-2.6.1.6 {
! 2321: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 2 3 0.001
! 2322: } {abc: 2 3 (000000.001) :xyz}
! 2323: do_test printf-2.6.1.7 {
! 2324: sqlite3_mprintf_double {abc: %d %d (%2.3f) :xyz} 2 3 0.001
! 2325: } {abc: 2 3 (0.001) :xyz}
! 2326: do_test printf-2.6.1.8 {
! 2327: sqlite3_mprintf_double {abc: %d %d (%2.3e) :xyz} 2 3 0.001
! 2328: } {abc: 2 3 (1.000e-03) :xyz}
! 2329: do_test printf-2.6.1.9 {
! 2330: sqlite3_mprintf_double {abc: %d %d (%2.3g) :xyz} 2 3 0.001
! 2331: } {abc: 2 3 (0.001) :xyz}
! 2332: do_test printf-2.6.2.1 {
! 2333: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 2 3 1.0e-20
! 2334: } {abc: (0.000) :xyz}
! 2335: do_test printf-2.6.2.2 {
! 2336: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 2 3 1.0e-20
! 2337: } {abc: (1.000e-20) :xyz}
! 2338: do_test printf-2.6.2.3 {
! 2339: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 2 3 1.0e-20
! 2340: } {abc: (1e-20) :xyz}
! 2341: do_test printf-2.6.2.4 {
! 2342: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 2 3 1.0e-20
! 2343: } {abc: 2 3 (1e-20) :xyz}
! 2344: do_test printf-2.6.2.5 {
! 2345: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 2 3 1.0e-20
! 2346: } {abc: 2 3 (1.00000e-20) :xyz}
! 2347: do_test printf-2.6.2.6 {
! 2348: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 2 3 1.0e-20
! 2349: } {abc: 2 3 (000001e-20) :xyz}
! 2350: do_test printf-2.6.2.7 {
! 2351: sqlite3_mprintf_double {abc: %d %d (%2.3f) :xyz} 2 3 1.0e-20
! 2352: } {abc: 2 3 (0.000) :xyz}
! 2353: do_test printf-2.6.2.8 {
! 2354: sqlite3_mprintf_double {abc: %d %d (%2.3e) :xyz} 2 3 1.0e-20
! 2355: } {abc: 2 3 (1.000e-20) :xyz}
! 2356: do_test printf-2.6.2.9 {
! 2357: sqlite3_mprintf_double {abc: %d %d (%2.3g) :xyz} 2 3 1.0e-20
! 2358: } {abc: 2 3 (1e-20) :xyz}
! 2359: do_test printf-2.6.3.1 {
! 2360: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 2 3 1.0
! 2361: } {abc: (1.000) :xyz}
! 2362: do_test printf-2.6.3.2 {
! 2363: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 2 3 1.0
! 2364: } {abc: (1.000e+00) :xyz}
! 2365: do_test printf-2.6.3.3 {
! 2366: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 2 3 1.0
! 2367: } {abc: ( 1) :xyz}
! 2368: do_test printf-2.6.3.4 {
! 2369: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 2 3 1.0
! 2370: } {abc: 2 3 (1) :xyz}
! 2371: do_test printf-2.6.3.5 {
! 2372: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 2 3 1.0
! 2373: } {abc: 2 3 (1.00000) :xyz}
! 2374: do_test printf-2.6.3.6 {
! 2375: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 2 3 1.0
! 2376: } {abc: 2 3 (0000000001) :xyz}
! 2377: do_test printf-2.6.3.7 {
! 2378: sqlite3_mprintf_double {abc: %d %d (%2.3f) :xyz} 2 3 1.0
! 2379: } {abc: 2 3 (1.000) :xyz}
! 2380: do_test printf-2.6.3.8 {
! 2381: sqlite3_mprintf_double {abc: %d %d (%2.3e) :xyz} 2 3 1.0
! 2382: } {abc: 2 3 (1.000e+00) :xyz}
! 2383: do_test printf-2.6.3.9 {
! 2384: sqlite3_mprintf_double {abc: %d %d (%2.3g) :xyz} 2 3 1.0
! 2385: } {abc: 2 3 ( 1) :xyz}
! 2386: do_test printf-2.6.4.1 {
! 2387: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 2 3 0.0
! 2388: } {abc: (0.000) :xyz}
! 2389: do_test printf-2.6.4.2 {
! 2390: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 2 3 0.0
! 2391: } {abc: (0.000e+00) :xyz}
! 2392: do_test printf-2.6.4.3 {
! 2393: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 2 3 0.0
! 2394: } {abc: ( 0) :xyz}
! 2395: do_test printf-2.6.4.4 {
! 2396: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 2 3 0.0
! 2397: } {abc: 2 3 (0) :xyz}
! 2398: do_test printf-2.6.4.5 {
! 2399: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 2 3 0.0
! 2400: } {abc: 2 3 (0.00000) :xyz}
! 2401: do_test printf-2.6.4.6 {
! 2402: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 2 3 0.0
! 2403: } {abc: 2 3 (0000000000) :xyz}
! 2404: do_test printf-2.6.4.7 {
! 2405: sqlite3_mprintf_double {abc: %d %d (%2.3f) :xyz} 2 3 0.0
! 2406: } {abc: 2 3 (0.000) :xyz}
! 2407: do_test printf-2.6.4.8 {
! 2408: sqlite3_mprintf_double {abc: %d %d (%2.3e) :xyz} 2 3 0.0
! 2409: } {abc: 2 3 (0.000e+00) :xyz}
! 2410: do_test printf-2.6.4.9 {
! 2411: sqlite3_mprintf_double {abc: %d %d (%2.3g) :xyz} 2 3 0.0
! 2412: } {abc: 2 3 ( 0) :xyz}
! 2413: do_test printf-2.6.5.1 {
! 2414: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 2 3 100.0
! 2415: } {abc: (100.000) :xyz}
! 2416: do_test printf-2.6.5.2 {
! 2417: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 2 3 100.0
! 2418: } {abc: (1.000e+02) :xyz}
! 2419: do_test printf-2.6.5.3 {
! 2420: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 2 3 100.0
! 2421: } {abc: (100) :xyz}
! 2422: do_test printf-2.6.5.4 {
! 2423: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 2 3 100.0
! 2424: } {abc: 2 3 (100) :xyz}
! 2425: do_test printf-2.6.5.5 {
! 2426: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 2 3 100.0
! 2427: } {abc: 2 3 (100.000) :xyz}
! 2428: do_test printf-2.6.5.6 {
! 2429: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 2 3 100.0
! 2430: } {abc: 2 3 (0000000100) :xyz}
! 2431: do_test printf-2.6.5.7 {
! 2432: sqlite3_mprintf_double {abc: %d %d (%2.3f) :xyz} 2 3 100.0
! 2433: } {abc: 2 3 (100.000) :xyz}
! 2434: do_test printf-2.6.5.8 {
! 2435: sqlite3_mprintf_double {abc: %d %d (%2.3e) :xyz} 2 3 100.0
! 2436: } {abc: 2 3 (1.000e+02) :xyz}
! 2437: do_test printf-2.6.5.9 {
! 2438: sqlite3_mprintf_double {abc: %d %d (%2.3g) :xyz} 2 3 100.0
! 2439: } {abc: 2 3 (100) :xyz}
! 2440: do_test printf-2.6.6.1 {
! 2441: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 2 3 9.99999
! 2442: } {abc: (10.000) :xyz}
! 2443: do_test printf-2.6.6.2 {
! 2444: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 2 3 9.99999
! 2445: } {abc: (1.000e+01) :xyz}
! 2446: do_test printf-2.6.6.3 {
! 2447: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 2 3 9.99999
! 2448: } {abc: (10) :xyz}
! 2449: do_test printf-2.6.6.4 {
! 2450: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 2 3 9.99999
! 2451: } {abc: 2 3 (9.99999) :xyz}
! 2452: do_test printf-2.6.6.5 {
! 2453: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 2 3 9.99999
! 2454: } {abc: 2 3 (9.99999) :xyz}
! 2455: do_test printf-2.6.6.6 {
! 2456: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 2 3 9.99999
! 2457: } {abc: 2 3 (0009.99999) :xyz}
! 2458: do_test printf-2.6.6.7 {
! 2459: sqlite3_mprintf_double {abc: %d %d (%2.3f) :xyz} 2 3 9.99999
! 2460: } {abc: 2 3 (10.000) :xyz}
! 2461: do_test printf-2.6.6.8 {
! 2462: sqlite3_mprintf_double {abc: %d %d (%2.3e) :xyz} 2 3 9.99999
! 2463: } {abc: 2 3 (1.000e+01) :xyz}
! 2464: do_test printf-2.6.6.9 {
! 2465: sqlite3_mprintf_double {abc: %d %d (%2.3g) :xyz} 2 3 9.99999
! 2466: } {abc: 2 3 (10) :xyz}
! 2467: do_test printf-2.6.7.1 {
! 2468: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 2 3 -0.00543
! 2469: } {abc: (-0.005) :xyz}
! 2470: do_test printf-2.6.7.2 {
! 2471: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 2 3 -0.00543
! 2472: } {abc: (-5.430e-03) :xyz}
! 2473: do_test printf-2.6.7.3 {
! 2474: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 2 3 -0.00543
! 2475: } {abc: (-0.00543) :xyz}
! 2476: do_test printf-2.6.7.4 {
! 2477: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 2 3 -0.00543
! 2478: } {abc: 2 3 (-0.00543) :xyz}
! 2479: do_test printf-2.6.7.5 {
! 2480: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 2 3 -0.00543
! 2481: } {abc: 2 3 (-0.00543000) :xyz}
! 2482: do_test printf-2.6.7.6 {
! 2483: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 2 3 -0.00543
! 2484: } {abc: 2 3 (-000.00543) :xyz}
! 2485: do_test printf-2.6.7.7 {
! 2486: sqlite3_mprintf_double {abc: %d %d (%2.3f) :xyz} 2 3 -0.00543
! 2487: } {abc: 2 3 (-0.005) :xyz}
! 2488: do_test printf-2.6.7.8 {
! 2489: sqlite3_mprintf_double {abc: %d %d (%2.3e) :xyz} 2 3 -0.00543
! 2490: } {abc: 2 3 (-5.430e-03) :xyz}
! 2491: do_test printf-2.6.7.9 {
! 2492: sqlite3_mprintf_double {abc: %d %d (%2.3g) :xyz} 2 3 -0.00543
! 2493: } {abc: 2 3 (-0.00543) :xyz}
! 2494: do_test printf-2.6.8.1 {
! 2495: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 2 3 -1.0
! 2496: } {abc: (-1.000) :xyz}
! 2497: do_test printf-2.6.8.2 {
! 2498: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 2 3 -1.0
! 2499: } {abc: (-1.000e+00) :xyz}
! 2500: do_test printf-2.6.8.3 {
! 2501: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 2 3 -1.0
! 2502: } {abc: (-1) :xyz}
! 2503: do_test printf-2.6.8.4 {
! 2504: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 2 3 -1.0
! 2505: } {abc: 2 3 (-1) :xyz}
! 2506: do_test printf-2.6.8.5 {
! 2507: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 2 3 -1.0
! 2508: } {abc: 2 3 (-1.00000) :xyz}
! 2509: do_test printf-2.6.8.6 {
! 2510: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 2 3 -1.0
! 2511: } {abc: 2 3 (-000000001) :xyz}
! 2512: do_test printf-2.6.8.7 {
! 2513: sqlite3_mprintf_double {abc: %d %d (%2.3f) :xyz} 2 3 -1.0
! 2514: } {abc: 2 3 (-1.000) :xyz}
! 2515: do_test printf-2.6.8.8 {
! 2516: sqlite3_mprintf_double {abc: %d %d (%2.3e) :xyz} 2 3 -1.0
! 2517: } {abc: 2 3 (-1.000e+00) :xyz}
! 2518: do_test printf-2.6.8.9 {
! 2519: sqlite3_mprintf_double {abc: %d %d (%2.3g) :xyz} 2 3 -1.0
! 2520: } {abc: 2 3 (-1) :xyz}
! 2521: do_test printf-2.6.9.1 {
! 2522: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 2 3 -99.99999
! 2523: } {abc: (-100.000) :xyz}
! 2524: do_test printf-2.6.9.2 {
! 2525: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 2 3 -99.99999
! 2526: } {abc: (-1.000e+02) :xyz}
! 2527: do_test printf-2.6.9.3 {
! 2528: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 2 3 -99.99999
! 2529: } {abc: (-100) :xyz}
! 2530: do_test printf-2.6.9.4 {
! 2531: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 2 3 -99.99999
! 2532: } {abc: 2 3 (-100) :xyz}
! 2533: do_test printf-2.6.9.5 {
! 2534: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 2 3 -99.99999
! 2535: } {abc: 2 3 (-100.000) :xyz}
! 2536: do_test printf-2.6.9.6 {
! 2537: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 2 3 -99.99999
! 2538: } {abc: 2 3 (-000000100) :xyz}
! 2539: do_test printf-2.6.9.7 {
! 2540: sqlite3_mprintf_double {abc: %d %d (%2.3f) :xyz} 2 3 -99.99999
! 2541: } {abc: 2 3 (-100.000) :xyz}
! 2542: do_test printf-2.6.9.8 {
! 2543: sqlite3_mprintf_double {abc: %d %d (%2.3e) :xyz} 2 3 -99.99999
! 2544: } {abc: 2 3 (-1.000e+02) :xyz}
! 2545: do_test printf-2.6.9.9 {
! 2546: sqlite3_mprintf_double {abc: %d %d (%2.3g) :xyz} 2 3 -99.99999
! 2547: } {abc: 2 3 (-100) :xyz}
! 2548: do_test printf-2.6.10.1 {
! 2549: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 2 3 3.14e+9
! 2550: } {abc: (3140000000.000) :xyz}
! 2551: do_test printf-2.6.10.2 {
! 2552: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 2 3 3.14e+9
! 2553: } {abc: (3.140e+09) :xyz}
! 2554: do_test printf-2.6.10.3 {
! 2555: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 2 3 3.14e+9
! 2556: } {abc: (3.14e+09) :xyz}
! 2557: do_test printf-2.6.10.4 {
! 2558: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 2 3 3.14e+9
! 2559: } {abc: 2 3 (3.14e+09) :xyz}
! 2560: do_test printf-2.6.10.5 {
! 2561: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 2 3 3.14e+9
! 2562: } {abc: 2 3 (3.14000e+09) :xyz}
! 2563: do_test printf-2.6.10.6 {
! 2564: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 2 3 3.14e+9
! 2565: } {abc: 2 3 (003.14e+09) :xyz}
! 2566: do_test printf-2.6.10.7 {
! 2567: sqlite3_mprintf_double {abc: %d %d (%2.3f) :xyz} 2 3 3.14e+9
! 2568: } {abc: 2 3 (3140000000.000) :xyz}
! 2569: do_test printf-2.6.10.8 {
! 2570: sqlite3_mprintf_double {abc: %d %d (%2.3e) :xyz} 2 3 3.14e+9
! 2571: } {abc: 2 3 (3.140e+09) :xyz}
! 2572: do_test printf-2.6.10.9 {
! 2573: sqlite3_mprintf_double {abc: %d %d (%2.3g) :xyz} 2 3 3.14e+9
! 2574: } {abc: 2 3 (3.14e+09) :xyz}
! 2575: do_test printf-2.6.11.2 {
! 2576: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 2 3 -4.72732e+88
! 2577: } {abc: (-4.727e+88) :xyz}
! 2578: do_test printf-2.6.11.3 {
! 2579: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 2 3 -4.72732e+88
! 2580: } {abc: (-4.73e+88) :xyz}
! 2581: do_test printf-2.6.11.4 {
! 2582: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 2 3 -4.72732e+88
! 2583: } {abc: 2 3 (-4.72732e+88) :xyz}
! 2584: do_test printf-2.6.11.5 {
! 2585: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 2 3 -4.72732e+88
! 2586: } {abc: 2 3 (-4.72732e+88) :xyz}
! 2587: do_test printf-2.6.11.6 {
! 2588: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 2 3 -4.72732e+88
! 2589: } {abc: 2 3 (-4.72732e+88) :xyz}
! 2590: do_test printf-2.6.11.8 {
! 2591: sqlite3_mprintf_double {abc: %d %d (%2.3e) :xyz} 2 3 -4.72732e+88
! 2592: } {abc: 2 3 (-4.727e+88) :xyz}
! 2593: do_test printf-2.6.11.9 {
! 2594: sqlite3_mprintf_double {abc: %d %d (%2.3g) :xyz} 2 3 -4.72732e+88
! 2595: } {abc: 2 3 (-4.73e+88) :xyz}
! 2596: do_test printf-2.6.12.2 {
! 2597: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 2 3 9.87991e+143
! 2598: } {abc: (9.880e+143) :xyz}
! 2599: do_test printf-2.6.12.3 {
! 2600: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 2 3 9.87991e+143
! 2601: } {abc: (9.88e+143) :xyz}
! 2602: do_test printf-2.6.12.4 {
! 2603: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 2 3 9.87991e+143
! 2604: } {abc: 2 3 (9.87991e+143) :xyz}
! 2605: do_test printf-2.6.12.5 {
! 2606: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 2 3 9.87991e+143
! 2607: } {abc: 2 3 (9.87991e+143) :xyz}
! 2608: do_test printf-2.6.12.6 {
! 2609: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 2 3 9.87991e+143
! 2610: } {abc: 2 3 (9.87991e+143) :xyz}
! 2611: do_test printf-2.6.12.8 {
! 2612: sqlite3_mprintf_double {abc: %d %d (%2.3e) :xyz} 2 3 9.87991e+143
! 2613: } {abc: 2 3 (9.880e+143) :xyz}
! 2614: do_test printf-2.6.12.9 {
! 2615: sqlite3_mprintf_double {abc: %d %d (%2.3g) :xyz} 2 3 9.87991e+143
! 2616: } {abc: 2 3 (9.88e+143) :xyz}
! 2617: do_test printf-2.6.13.1 {
! 2618: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 2 3 -6.287291e-9
! 2619: } {abc: (-0.000) :xyz}
! 2620: do_test printf-2.6.13.2 {
! 2621: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 2 3 -6.287291e-9
! 2622: } {abc: (-6.287e-09) :xyz}
! 2623: do_test printf-2.6.13.3 {
! 2624: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 2 3 -6.287291e-9
! 2625: } {abc: (-6.29e-09) :xyz}
! 2626: do_test printf-2.6.13.4 {
! 2627: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 2 3 -6.287291e-9
! 2628: } {abc: 2 3 (-6.28729e-09) :xyz}
! 2629: do_test printf-2.6.13.5 {
! 2630: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 2 3 -6.287291e-9
! 2631: } {abc: 2 3 (-6.28729e-09) :xyz}
! 2632: do_test printf-2.6.13.6 {
! 2633: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 2 3 -6.287291e-9
! 2634: } {abc: 2 3 (-6.28729e-09) :xyz}
! 2635: do_test printf-2.6.13.7 {
! 2636: sqlite3_mprintf_double {abc: %d %d (%2.3f) :xyz} 2 3 -6.287291e-9
! 2637: } {abc: 2 3 (-0.000) :xyz}
! 2638: do_test printf-2.6.13.8 {
! 2639: sqlite3_mprintf_double {abc: %d %d (%2.3e) :xyz} 2 3 -6.287291e-9
! 2640: } {abc: 2 3 (-6.287e-09) :xyz}
! 2641: do_test printf-2.6.13.9 {
! 2642: sqlite3_mprintf_double {abc: %d %d (%2.3g) :xyz} 2 3 -6.287291e-9
! 2643: } {abc: 2 3 (-6.29e-09) :xyz}
! 2644: do_test printf-2.6.14.1 {
! 2645: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 2 3 3.38826392e-110
! 2646: } {abc: (0.000) :xyz}
! 2647: do_test printf-2.6.14.2 {
! 2648: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 2 3 3.38826392e-110
! 2649: } {abc: (3.388e-110) :xyz}
! 2650: do_test printf-2.6.14.3 {
! 2651: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 2 3 3.38826392e-110
! 2652: } {abc: (3.39e-110) :xyz}
! 2653: do_test printf-2.6.14.4 {
! 2654: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 2 3 3.38826392e-110
! 2655: } {abc: 2 3 (3.38826e-110) :xyz}
! 2656: do_test printf-2.6.14.5 {
! 2657: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 2 3 3.38826392e-110
! 2658: } {abc: 2 3 (3.38826e-110) :xyz}
! 2659: do_test printf-2.6.14.6 {
! 2660: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 2 3 3.38826392e-110
! 2661: } {abc: 2 3 (3.38826e-110) :xyz}
! 2662: do_test printf-2.6.14.7 {
! 2663: sqlite3_mprintf_double {abc: %d %d (%2.3f) :xyz} 2 3 3.38826392e-110
! 2664: } {abc: 2 3 (0.000) :xyz}
! 2665: do_test printf-2.6.14.8 {
! 2666: sqlite3_mprintf_double {abc: %d %d (%2.3e) :xyz} 2 3 3.38826392e-110
! 2667: } {abc: 2 3 (3.388e-110) :xyz}
! 2668: do_test printf-2.6.14.9 {
! 2669: sqlite3_mprintf_double {abc: %d %d (%2.3g) :xyz} 2 3 3.38826392e-110
! 2670: } {abc: 2 3 (3.39e-110) :xyz}
! 2671: do_test printf-2.7.1.1 {
! 2672: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 3 3 0.001
! 2673: } {abc: (0.001) :xyz}
! 2674: do_test printf-2.7.1.2 {
! 2675: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 3 3 0.001
! 2676: } {abc: (1.000e-03) :xyz}
! 2677: do_test printf-2.7.1.3 {
! 2678: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 3 3 0.001
! 2679: } {abc: (0.001) :xyz}
! 2680: do_test printf-2.7.1.4 {
! 2681: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 3 3 0.001
! 2682: } {abc: 3 3 (0.001) :xyz}
! 2683: do_test printf-2.7.1.5 {
! 2684: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 3 3 0.001
! 2685: } {abc: 3 3 (0.00100000) :xyz}
! 2686: do_test printf-2.7.1.6 {
! 2687: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 3 3 0.001
! 2688: } {abc: 3 3 (000000.001) :xyz}
! 2689: do_test printf-2.7.1.7 {
! 2690: sqlite3_mprintf_double {abc: %d %d (%3.3f) :xyz} 3 3 0.001
! 2691: } {abc: 3 3 (0.001) :xyz}
! 2692: do_test printf-2.7.1.8 {
! 2693: sqlite3_mprintf_double {abc: %d %d (%3.3e) :xyz} 3 3 0.001
! 2694: } {abc: 3 3 (1.000e-03) :xyz}
! 2695: do_test printf-2.7.1.9 {
! 2696: sqlite3_mprintf_double {abc: %d %d (%3.3g) :xyz} 3 3 0.001
! 2697: } {abc: 3 3 (0.001) :xyz}
! 2698: do_test printf-2.7.2.1 {
! 2699: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 3 3 1.0e-20
! 2700: } {abc: (0.000) :xyz}
! 2701: do_test printf-2.7.2.2 {
! 2702: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 3 3 1.0e-20
! 2703: } {abc: (1.000e-20) :xyz}
! 2704: do_test printf-2.7.2.3 {
! 2705: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 3 3 1.0e-20
! 2706: } {abc: (1e-20) :xyz}
! 2707: do_test printf-2.7.2.4 {
! 2708: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 3 3 1.0e-20
! 2709: } {abc: 3 3 (1e-20) :xyz}
! 2710: do_test printf-2.7.2.5 {
! 2711: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 3 3 1.0e-20
! 2712: } {abc: 3 3 (1.00000e-20) :xyz}
! 2713: do_test printf-2.7.2.6 {
! 2714: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 3 3 1.0e-20
! 2715: } {abc: 3 3 (000001e-20) :xyz}
! 2716: do_test printf-2.7.2.7 {
! 2717: sqlite3_mprintf_double {abc: %d %d (%3.3f) :xyz} 3 3 1.0e-20
! 2718: } {abc: 3 3 (0.000) :xyz}
! 2719: do_test printf-2.7.2.8 {
! 2720: sqlite3_mprintf_double {abc: %d %d (%3.3e) :xyz} 3 3 1.0e-20
! 2721: } {abc: 3 3 (1.000e-20) :xyz}
! 2722: do_test printf-2.7.2.9 {
! 2723: sqlite3_mprintf_double {abc: %d %d (%3.3g) :xyz} 3 3 1.0e-20
! 2724: } {abc: 3 3 (1e-20) :xyz}
! 2725: do_test printf-2.7.3.1 {
! 2726: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 3 3 1.0
! 2727: } {abc: (1.000) :xyz}
! 2728: do_test printf-2.7.3.2 {
! 2729: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 3 3 1.0
! 2730: } {abc: (1.000e+00) :xyz}
! 2731: do_test printf-2.7.3.3 {
! 2732: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 3 3 1.0
! 2733: } {abc: ( 1) :xyz}
! 2734: do_test printf-2.7.3.4 {
! 2735: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 3 3 1.0
! 2736: } {abc: 3 3 (1) :xyz}
! 2737: do_test printf-2.7.3.5 {
! 2738: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 3 3 1.0
! 2739: } {abc: 3 3 (1.00000) :xyz}
! 2740: do_test printf-2.7.3.6 {
! 2741: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 3 3 1.0
! 2742: } {abc: 3 3 (0000000001) :xyz}
! 2743: do_test printf-2.7.3.7 {
! 2744: sqlite3_mprintf_double {abc: %d %d (%3.3f) :xyz} 3 3 1.0
! 2745: } {abc: 3 3 (1.000) :xyz}
! 2746: do_test printf-2.7.3.8 {
! 2747: sqlite3_mprintf_double {abc: %d %d (%3.3e) :xyz} 3 3 1.0
! 2748: } {abc: 3 3 (1.000e+00) :xyz}
! 2749: do_test printf-2.7.3.9 {
! 2750: sqlite3_mprintf_double {abc: %d %d (%3.3g) :xyz} 3 3 1.0
! 2751: } {abc: 3 3 ( 1) :xyz}
! 2752: do_test printf-2.7.4.1 {
! 2753: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 3 3 0.0
! 2754: } {abc: (0.000) :xyz}
! 2755: do_test printf-2.7.4.2 {
! 2756: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 3 3 0.0
! 2757: } {abc: (0.000e+00) :xyz}
! 2758: do_test printf-2.7.4.3 {
! 2759: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 3 3 0.0
! 2760: } {abc: ( 0) :xyz}
! 2761: do_test printf-2.7.4.4 {
! 2762: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 3 3 0.0
! 2763: } {abc: 3 3 (0) :xyz}
! 2764: do_test printf-2.7.4.5 {
! 2765: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 3 3 0.0
! 2766: } {abc: 3 3 (0.00000) :xyz}
! 2767: do_test printf-2.7.4.6 {
! 2768: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 3 3 0.0
! 2769: } {abc: 3 3 (0000000000) :xyz}
! 2770: do_test printf-2.7.4.7 {
! 2771: sqlite3_mprintf_double {abc: %d %d (%3.3f) :xyz} 3 3 0.0
! 2772: } {abc: 3 3 (0.000) :xyz}
! 2773: do_test printf-2.7.4.8 {
! 2774: sqlite3_mprintf_double {abc: %d %d (%3.3e) :xyz} 3 3 0.0
! 2775: } {abc: 3 3 (0.000e+00) :xyz}
! 2776: do_test printf-2.7.4.9 {
! 2777: sqlite3_mprintf_double {abc: %d %d (%3.3g) :xyz} 3 3 0.0
! 2778: } {abc: 3 3 ( 0) :xyz}
! 2779: do_test printf-2.7.5.1 {
! 2780: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 3 3 100.0
! 2781: } {abc: (100.000) :xyz}
! 2782: do_test printf-2.7.5.2 {
! 2783: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 3 3 100.0
! 2784: } {abc: (1.000e+02) :xyz}
! 2785: do_test printf-2.7.5.3 {
! 2786: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 3 3 100.0
! 2787: } {abc: (100) :xyz}
! 2788: do_test printf-2.7.5.4 {
! 2789: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 3 3 100.0
! 2790: } {abc: 3 3 (100) :xyz}
! 2791: do_test printf-2.7.5.5 {
! 2792: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 3 3 100.0
! 2793: } {abc: 3 3 (100.000) :xyz}
! 2794: do_test printf-2.7.5.6 {
! 2795: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 3 3 100.0
! 2796: } {abc: 3 3 (0000000100) :xyz}
! 2797: do_test printf-2.7.5.7 {
! 2798: sqlite3_mprintf_double {abc: %d %d (%3.3f) :xyz} 3 3 100.0
! 2799: } {abc: 3 3 (100.000) :xyz}
! 2800: do_test printf-2.7.5.8 {
! 2801: sqlite3_mprintf_double {abc: %d %d (%3.3e) :xyz} 3 3 100.0
! 2802: } {abc: 3 3 (1.000e+02) :xyz}
! 2803: do_test printf-2.7.5.9 {
! 2804: sqlite3_mprintf_double {abc: %d %d (%3.3g) :xyz} 3 3 100.0
! 2805: } {abc: 3 3 (100) :xyz}
! 2806: do_test printf-2.7.6.1 {
! 2807: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 3 3 9.99999
! 2808: } {abc: (10.000) :xyz}
! 2809: do_test printf-2.7.6.2 {
! 2810: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 3 3 9.99999
! 2811: } {abc: (1.000e+01) :xyz}
! 2812: do_test printf-2.7.6.3 {
! 2813: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 3 3 9.99999
! 2814: } {abc: ( 10) :xyz}
! 2815: do_test printf-2.7.6.4 {
! 2816: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 3 3 9.99999
! 2817: } {abc: 3 3 (9.99999) :xyz}
! 2818: do_test printf-2.7.6.5 {
! 2819: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 3 3 9.99999
! 2820: } {abc: 3 3 (9.99999) :xyz}
! 2821: do_test printf-2.7.6.6 {
! 2822: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 3 3 9.99999
! 2823: } {abc: 3 3 (0009.99999) :xyz}
! 2824: do_test printf-2.7.6.7 {
! 2825: sqlite3_mprintf_double {abc: %d %d (%3.3f) :xyz} 3 3 9.99999
! 2826: } {abc: 3 3 (10.000) :xyz}
! 2827: do_test printf-2.7.6.8 {
! 2828: sqlite3_mprintf_double {abc: %d %d (%3.3e) :xyz} 3 3 9.99999
! 2829: } {abc: 3 3 (1.000e+01) :xyz}
! 2830: do_test printf-2.7.6.9 {
! 2831: sqlite3_mprintf_double {abc: %d %d (%3.3g) :xyz} 3 3 9.99999
! 2832: } {abc: 3 3 ( 10) :xyz}
! 2833: do_test printf-2.7.7.1 {
! 2834: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 3 3 -0.00543
! 2835: } {abc: (-0.005) :xyz}
! 2836: do_test printf-2.7.7.2 {
! 2837: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 3 3 -0.00543
! 2838: } {abc: (-5.430e-03) :xyz}
! 2839: do_test printf-2.7.7.3 {
! 2840: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 3 3 -0.00543
! 2841: } {abc: (-0.00543) :xyz}
! 2842: do_test printf-2.7.7.4 {
! 2843: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 3 3 -0.00543
! 2844: } {abc: 3 3 (-0.00543) :xyz}
! 2845: do_test printf-2.7.7.5 {
! 2846: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 3 3 -0.00543
! 2847: } {abc: 3 3 (-0.00543000) :xyz}
! 2848: do_test printf-2.7.7.6 {
! 2849: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 3 3 -0.00543
! 2850: } {abc: 3 3 (-000.00543) :xyz}
! 2851: do_test printf-2.7.7.7 {
! 2852: sqlite3_mprintf_double {abc: %d %d (%3.3f) :xyz} 3 3 -0.00543
! 2853: } {abc: 3 3 (-0.005) :xyz}
! 2854: do_test printf-2.7.7.8 {
! 2855: sqlite3_mprintf_double {abc: %d %d (%3.3e) :xyz} 3 3 -0.00543
! 2856: } {abc: 3 3 (-5.430e-03) :xyz}
! 2857: do_test printf-2.7.7.9 {
! 2858: sqlite3_mprintf_double {abc: %d %d (%3.3g) :xyz} 3 3 -0.00543
! 2859: } {abc: 3 3 (-0.00543) :xyz}
! 2860: do_test printf-2.7.8.1 {
! 2861: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 3 3 -1.0
! 2862: } {abc: (-1.000) :xyz}
! 2863: do_test printf-2.7.8.2 {
! 2864: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 3 3 -1.0
! 2865: } {abc: (-1.000e+00) :xyz}
! 2866: do_test printf-2.7.8.3 {
! 2867: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 3 3 -1.0
! 2868: } {abc: ( -1) :xyz}
! 2869: do_test printf-2.7.8.4 {
! 2870: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 3 3 -1.0
! 2871: } {abc: 3 3 (-1) :xyz}
! 2872: do_test printf-2.7.8.5 {
! 2873: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 3 3 -1.0
! 2874: } {abc: 3 3 (-1.00000) :xyz}
! 2875: do_test printf-2.7.8.6 {
! 2876: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 3 3 -1.0
! 2877: } {abc: 3 3 (-000000001) :xyz}
! 2878: do_test printf-2.7.8.7 {
! 2879: sqlite3_mprintf_double {abc: %d %d (%3.3f) :xyz} 3 3 -1.0
! 2880: } {abc: 3 3 (-1.000) :xyz}
! 2881: do_test printf-2.7.8.8 {
! 2882: sqlite3_mprintf_double {abc: %d %d (%3.3e) :xyz} 3 3 -1.0
! 2883: } {abc: 3 3 (-1.000e+00) :xyz}
! 2884: do_test printf-2.7.8.9 {
! 2885: sqlite3_mprintf_double {abc: %d %d (%3.3g) :xyz} 3 3 -1.0
! 2886: } {abc: 3 3 ( -1) :xyz}
! 2887: do_test printf-2.7.9.1 {
! 2888: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 3 3 -99.99999
! 2889: } {abc: (-100.000) :xyz}
! 2890: do_test printf-2.7.9.2 {
! 2891: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 3 3 -99.99999
! 2892: } {abc: (-1.000e+02) :xyz}
! 2893: do_test printf-2.7.9.3 {
! 2894: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 3 3 -99.99999
! 2895: } {abc: (-100) :xyz}
! 2896: do_test printf-2.7.9.4 {
! 2897: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 3 3 -99.99999
! 2898: } {abc: 3 3 (-100) :xyz}
! 2899: do_test printf-2.7.9.5 {
! 2900: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 3 3 -99.99999
! 2901: } {abc: 3 3 (-100.000) :xyz}
! 2902: do_test printf-2.7.9.6 {
! 2903: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 3 3 -99.99999
! 2904: } {abc: 3 3 (-000000100) :xyz}
! 2905: do_test printf-2.7.9.7 {
! 2906: sqlite3_mprintf_double {abc: %d %d (%3.3f) :xyz} 3 3 -99.99999
! 2907: } {abc: 3 3 (-100.000) :xyz}
! 2908: do_test printf-2.7.9.8 {
! 2909: sqlite3_mprintf_double {abc: %d %d (%3.3e) :xyz} 3 3 -99.99999
! 2910: } {abc: 3 3 (-1.000e+02) :xyz}
! 2911: do_test printf-2.7.9.9 {
! 2912: sqlite3_mprintf_double {abc: %d %d (%3.3g) :xyz} 3 3 -99.99999
! 2913: } {abc: 3 3 (-100) :xyz}
! 2914: do_test printf-2.7.10.1 {
! 2915: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 3 3 3.14e+9
! 2916: } {abc: (3140000000.000) :xyz}
! 2917: do_test printf-2.7.10.2 {
! 2918: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 3 3 3.14e+9
! 2919: } {abc: (3.140e+09) :xyz}
! 2920: do_test printf-2.7.10.3 {
! 2921: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 3 3 3.14e+9
! 2922: } {abc: (3.14e+09) :xyz}
! 2923: do_test printf-2.7.10.4 {
! 2924: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 3 3 3.14e+9
! 2925: } {abc: 3 3 (3.14e+09) :xyz}
! 2926: do_test printf-2.7.10.5 {
! 2927: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 3 3 3.14e+9
! 2928: } {abc: 3 3 (3.14000e+09) :xyz}
! 2929: do_test printf-2.7.10.6 {
! 2930: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 3 3 3.14e+9
! 2931: } {abc: 3 3 (003.14e+09) :xyz}
! 2932: do_test printf-2.7.10.7 {
! 2933: sqlite3_mprintf_double {abc: %d %d (%3.3f) :xyz} 3 3 3.14e+9
! 2934: } {abc: 3 3 (3140000000.000) :xyz}
! 2935: do_test printf-2.7.10.8 {
! 2936: sqlite3_mprintf_double {abc: %d %d (%3.3e) :xyz} 3 3 3.14e+9
! 2937: } {abc: 3 3 (3.140e+09) :xyz}
! 2938: do_test printf-2.7.10.9 {
! 2939: sqlite3_mprintf_double {abc: %d %d (%3.3g) :xyz} 3 3 3.14e+9
! 2940: } {abc: 3 3 (3.14e+09) :xyz}
! 2941: do_test printf-2.7.11.2 {
! 2942: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 3 3 -4.72732e+88
! 2943: } {abc: (-4.727e+88) :xyz}
! 2944: do_test printf-2.7.11.3 {
! 2945: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 3 3 -4.72732e+88
! 2946: } {abc: (-4.73e+88) :xyz}
! 2947: do_test printf-2.7.11.4 {
! 2948: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 3 3 -4.72732e+88
! 2949: } {abc: 3 3 (-4.72732e+88) :xyz}
! 2950: do_test printf-2.7.11.5 {
! 2951: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 3 3 -4.72732e+88
! 2952: } {abc: 3 3 (-4.72732e+88) :xyz}
! 2953: do_test printf-2.7.11.6 {
! 2954: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 3 3 -4.72732e+88
! 2955: } {abc: 3 3 (-4.72732e+88) :xyz}
! 2956: do_test printf-2.7.11.8 {
! 2957: sqlite3_mprintf_double {abc: %d %d (%3.3e) :xyz} 3 3 -4.72732e+88
! 2958: } {abc: 3 3 (-4.727e+88) :xyz}
! 2959: do_test printf-2.7.11.9 {
! 2960: sqlite3_mprintf_double {abc: %d %d (%3.3g) :xyz} 3 3 -4.72732e+88
! 2961: } {abc: 3 3 (-4.73e+88) :xyz}
! 2962: do_test printf-2.7.12.2 {
! 2963: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 3 3 9.87991e+143
! 2964: } {abc: (9.880e+143) :xyz}
! 2965: do_test printf-2.7.12.3 {
! 2966: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 3 3 9.87991e+143
! 2967: } {abc: (9.88e+143) :xyz}
! 2968: do_test printf-2.7.12.4 {
! 2969: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 3 3 9.87991e+143
! 2970: } {abc: 3 3 (9.87991e+143) :xyz}
! 2971: do_test printf-2.7.12.5 {
! 2972: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 3 3 9.87991e+143
! 2973: } {abc: 3 3 (9.87991e+143) :xyz}
! 2974: do_test printf-2.7.12.6 {
! 2975: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 3 3 9.87991e+143
! 2976: } {abc: 3 3 (9.87991e+143) :xyz}
! 2977: do_test printf-2.7.12.8 {
! 2978: sqlite3_mprintf_double {abc: %d %d (%3.3e) :xyz} 3 3 9.87991e+143
! 2979: } {abc: 3 3 (9.880e+143) :xyz}
! 2980: do_test printf-2.7.12.9 {
! 2981: sqlite3_mprintf_double {abc: %d %d (%3.3g) :xyz} 3 3 9.87991e+143
! 2982: } {abc: 3 3 (9.88e+143) :xyz}
! 2983: do_test printf-2.7.13.1 {
! 2984: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 3 3 -6.287291e-9
! 2985: } {abc: (-0.000) :xyz}
! 2986: do_test printf-2.7.13.2 {
! 2987: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 3 3 -6.287291e-9
! 2988: } {abc: (-6.287e-09) :xyz}
! 2989: do_test printf-2.7.13.3 {
! 2990: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 3 3 -6.287291e-9
! 2991: } {abc: (-6.29e-09) :xyz}
! 2992: do_test printf-2.7.13.4 {
! 2993: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 3 3 -6.287291e-9
! 2994: } {abc: 3 3 (-6.28729e-09) :xyz}
! 2995: do_test printf-2.7.13.5 {
! 2996: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 3 3 -6.287291e-9
! 2997: } {abc: 3 3 (-6.28729e-09) :xyz}
! 2998: do_test printf-2.7.13.6 {
! 2999: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 3 3 -6.287291e-9
! 3000: } {abc: 3 3 (-6.28729e-09) :xyz}
! 3001: do_test printf-2.7.13.7 {
! 3002: sqlite3_mprintf_double {abc: %d %d (%3.3f) :xyz} 3 3 -6.287291e-9
! 3003: } {abc: 3 3 (-0.000) :xyz}
! 3004: do_test printf-2.7.13.8 {
! 3005: sqlite3_mprintf_double {abc: %d %d (%3.3e) :xyz} 3 3 -6.287291e-9
! 3006: } {abc: 3 3 (-6.287e-09) :xyz}
! 3007: do_test printf-2.7.13.9 {
! 3008: sqlite3_mprintf_double {abc: %d %d (%3.3g) :xyz} 3 3 -6.287291e-9
! 3009: } {abc: 3 3 (-6.29e-09) :xyz}
! 3010: do_test printf-2.7.14.1 {
! 3011: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 3 3 3.38826392e-110
! 3012: } {abc: (0.000) :xyz}
! 3013: do_test printf-2.7.14.2 {
! 3014: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 3 3 3.38826392e-110
! 3015: } {abc: (3.388e-110) :xyz}
! 3016: do_test printf-2.7.14.3 {
! 3017: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 3 3 3.38826392e-110
! 3018: } {abc: (3.39e-110) :xyz}
! 3019: do_test printf-2.7.14.4 {
! 3020: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 3 3 3.38826392e-110
! 3021: } {abc: 3 3 (3.38826e-110) :xyz}
! 3022: do_test printf-2.7.14.5 {
! 3023: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 3 3 3.38826392e-110
! 3024: } {abc: 3 3 (3.38826e-110) :xyz}
! 3025: do_test printf-2.7.14.6 {
! 3026: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 3 3 3.38826392e-110
! 3027: } {abc: 3 3 (3.38826e-110) :xyz}
! 3028: do_test printf-2.7.14.7 {
! 3029: sqlite3_mprintf_double {abc: %d %d (%3.3f) :xyz} 3 3 3.38826392e-110
! 3030: } {abc: 3 3 (0.000) :xyz}
! 3031: do_test printf-2.7.14.8 {
! 3032: sqlite3_mprintf_double {abc: %d %d (%3.3e) :xyz} 3 3 3.38826392e-110
! 3033: } {abc: 3 3 (3.388e-110) :xyz}
! 3034: do_test printf-2.7.14.9 {
! 3035: sqlite3_mprintf_double {abc: %d %d (%3.3g) :xyz} 3 3 3.38826392e-110
! 3036: } {abc: 3 3 (3.39e-110) :xyz}
! 3037: do_test printf-2.8.1.1 {
! 3038: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 3 2 0.001
! 3039: } {abc: (0.00) :xyz}
! 3040: do_test printf-2.8.1.2 {
! 3041: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 3 2 0.001
! 3042: } {abc: (1.00e-03) :xyz}
! 3043: do_test printf-2.8.1.3 {
! 3044: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 3 2 0.001
! 3045: } {abc: (0.001) :xyz}
! 3046: do_test printf-2.8.1.4 {
! 3047: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 3 2 0.001
! 3048: } {abc: 3 2 (0.001) :xyz}
! 3049: do_test printf-2.8.1.5 {
! 3050: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 3 2 0.001
! 3051: } {abc: 3 2 (0.00100000) :xyz}
! 3052: do_test printf-2.8.1.6 {
! 3053: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 3 2 0.001
! 3054: } {abc: 3 2 (000000.001) :xyz}
! 3055: do_test printf-2.8.1.7 {
! 3056: sqlite3_mprintf_double {abc: %d %d (%3.2f) :xyz} 3 2 0.001
! 3057: } {abc: 3 2 (0.00) :xyz}
! 3058: do_test printf-2.8.1.8 {
! 3059: sqlite3_mprintf_double {abc: %d %d (%3.2e) :xyz} 3 2 0.001
! 3060: } {abc: 3 2 (1.00e-03) :xyz}
! 3061: do_test printf-2.8.1.9 {
! 3062: sqlite3_mprintf_double {abc: %d %d (%3.2g) :xyz} 3 2 0.001
! 3063: } {abc: 3 2 (0.001) :xyz}
! 3064: do_test printf-2.8.2.1 {
! 3065: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 3 2 1.0e-20
! 3066: } {abc: (0.00) :xyz}
! 3067: do_test printf-2.8.2.2 {
! 3068: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 3 2 1.0e-20
! 3069: } {abc: (1.00e-20) :xyz}
! 3070: do_test printf-2.8.2.3 {
! 3071: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 3 2 1.0e-20
! 3072: } {abc: (1e-20) :xyz}
! 3073: do_test printf-2.8.2.4 {
! 3074: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 3 2 1.0e-20
! 3075: } {abc: 3 2 (1e-20) :xyz}
! 3076: do_test printf-2.8.2.5 {
! 3077: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 3 2 1.0e-20
! 3078: } {abc: 3 2 (1.00000e-20) :xyz}
! 3079: do_test printf-2.8.2.6 {
! 3080: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 3 2 1.0e-20
! 3081: } {abc: 3 2 (000001e-20) :xyz}
! 3082: do_test printf-2.8.2.7 {
! 3083: sqlite3_mprintf_double {abc: %d %d (%3.2f) :xyz} 3 2 1.0e-20
! 3084: } {abc: 3 2 (0.00) :xyz}
! 3085: do_test printf-2.8.2.8 {
! 3086: sqlite3_mprintf_double {abc: %d %d (%3.2e) :xyz} 3 2 1.0e-20
! 3087: } {abc: 3 2 (1.00e-20) :xyz}
! 3088: do_test printf-2.8.2.9 {
! 3089: sqlite3_mprintf_double {abc: %d %d (%3.2g) :xyz} 3 2 1.0e-20
! 3090: } {abc: 3 2 (1e-20) :xyz}
! 3091: do_test printf-2.8.3.1 {
! 3092: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 3 2 1.0
! 3093: } {abc: (1.00) :xyz}
! 3094: do_test printf-2.8.3.2 {
! 3095: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 3 2 1.0
! 3096: } {abc: (1.00e+00) :xyz}
! 3097: do_test printf-2.8.3.3 {
! 3098: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 3 2 1.0
! 3099: } {abc: ( 1) :xyz}
! 3100: do_test printf-2.8.3.4 {
! 3101: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 3 2 1.0
! 3102: } {abc: 3 2 (1) :xyz}
! 3103: do_test printf-2.8.3.5 {
! 3104: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 3 2 1.0
! 3105: } {abc: 3 2 (1.00000) :xyz}
! 3106: do_test printf-2.8.3.6 {
! 3107: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 3 2 1.0
! 3108: } {abc: 3 2 (0000000001) :xyz}
! 3109: do_test printf-2.8.3.7 {
! 3110: sqlite3_mprintf_double {abc: %d %d (%3.2f) :xyz} 3 2 1.0
! 3111: } {abc: 3 2 (1.00) :xyz}
! 3112: do_test printf-2.8.3.8 {
! 3113: sqlite3_mprintf_double {abc: %d %d (%3.2e) :xyz} 3 2 1.0
! 3114: } {abc: 3 2 (1.00e+00) :xyz}
! 3115: do_test printf-2.8.3.9 {
! 3116: sqlite3_mprintf_double {abc: %d %d (%3.2g) :xyz} 3 2 1.0
! 3117: } {abc: 3 2 ( 1) :xyz}
! 3118: do_test printf-2.8.4.1 {
! 3119: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 3 2 0.0
! 3120: } {abc: (0.00) :xyz}
! 3121: do_test printf-2.8.4.2 {
! 3122: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 3 2 0.0
! 3123: } {abc: (0.00e+00) :xyz}
! 3124: do_test printf-2.8.4.3 {
! 3125: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 3 2 0.0
! 3126: } {abc: ( 0) :xyz}
! 3127: do_test printf-2.8.4.4 {
! 3128: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 3 2 0.0
! 3129: } {abc: 3 2 (0) :xyz}
! 3130: do_test printf-2.8.4.5 {
! 3131: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 3 2 0.0
! 3132: } {abc: 3 2 (0.00000) :xyz}
! 3133: do_test printf-2.8.4.6 {
! 3134: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 3 2 0.0
! 3135: } {abc: 3 2 (0000000000) :xyz}
! 3136: do_test printf-2.8.4.7 {
! 3137: sqlite3_mprintf_double {abc: %d %d (%3.2f) :xyz} 3 2 0.0
! 3138: } {abc: 3 2 (0.00) :xyz}
! 3139: do_test printf-2.8.4.8 {
! 3140: sqlite3_mprintf_double {abc: %d %d (%3.2e) :xyz} 3 2 0.0
! 3141: } {abc: 3 2 (0.00e+00) :xyz}
! 3142: do_test printf-2.8.4.9 {
! 3143: sqlite3_mprintf_double {abc: %d %d (%3.2g) :xyz} 3 2 0.0
! 3144: } {abc: 3 2 ( 0) :xyz}
! 3145: do_test printf-2.8.5.1 {
! 3146: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 3 2 100.0
! 3147: } {abc: (100.00) :xyz}
! 3148: do_test printf-2.8.5.2 {
! 3149: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 3 2 100.0
! 3150: } {abc: (1.00e+02) :xyz}
! 3151: do_test printf-2.8.5.3 {
! 3152: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 3 2 100.0
! 3153: } {abc: (1e+02) :xyz}
! 3154: do_test printf-2.8.5.4 {
! 3155: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 3 2 100.0
! 3156: } {abc: 3 2 (100) :xyz}
! 3157: do_test printf-2.8.5.5 {
! 3158: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 3 2 100.0
! 3159: } {abc: 3 2 (100.000) :xyz}
! 3160: do_test printf-2.8.5.6 {
! 3161: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 3 2 100.0
! 3162: } {abc: 3 2 (0000000100) :xyz}
! 3163: do_test printf-2.8.5.7 {
! 3164: sqlite3_mprintf_double {abc: %d %d (%3.2f) :xyz} 3 2 100.0
! 3165: } {abc: 3 2 (100.00) :xyz}
! 3166: do_test printf-2.8.5.8 {
! 3167: sqlite3_mprintf_double {abc: %d %d (%3.2e) :xyz} 3 2 100.0
! 3168: } {abc: 3 2 (1.00e+02) :xyz}
! 3169: do_test printf-2.8.5.9 {
! 3170: sqlite3_mprintf_double {abc: %d %d (%3.2g) :xyz} 3 2 100.0
! 3171: } {abc: 3 2 (1e+02) :xyz}
! 3172: do_test printf-2.8.6.1 {
! 3173: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 3 2 9.99999
! 3174: } {abc: (10.00) :xyz}
! 3175: do_test printf-2.8.6.2 {
! 3176: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 3 2 9.99999
! 3177: } {abc: (1.00e+01) :xyz}
! 3178: do_test printf-2.8.6.3 {
! 3179: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 3 2 9.99999
! 3180: } {abc: ( 10) :xyz}
! 3181: do_test printf-2.8.6.4 {
! 3182: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 3 2 9.99999
! 3183: } {abc: 3 2 (9.99999) :xyz}
! 3184: do_test printf-2.8.6.5 {
! 3185: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 3 2 9.99999
! 3186: } {abc: 3 2 (9.99999) :xyz}
! 3187: do_test printf-2.8.6.6 {
! 3188: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 3 2 9.99999
! 3189: } {abc: 3 2 (0009.99999) :xyz}
! 3190: do_test printf-2.8.6.7 {
! 3191: sqlite3_mprintf_double {abc: %d %d (%3.2f) :xyz} 3 2 9.99999
! 3192: } {abc: 3 2 (10.00) :xyz}
! 3193: do_test printf-2.8.6.8 {
! 3194: sqlite3_mprintf_double {abc: %d %d (%3.2e) :xyz} 3 2 9.99999
! 3195: } {abc: 3 2 (1.00e+01) :xyz}
! 3196: do_test printf-2.8.6.9 {
! 3197: sqlite3_mprintf_double {abc: %d %d (%3.2g) :xyz} 3 2 9.99999
! 3198: } {abc: 3 2 ( 10) :xyz}
! 3199: do_test printf-2.8.7.1 {
! 3200: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 3 2 -0.00543
! 3201: } {abc: (-0.01) :xyz}
! 3202: do_test printf-2.8.7.2 {
! 3203: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 3 2 -0.00543
! 3204: } {abc: (-5.43e-03) :xyz}
! 3205: do_test printf-2.8.7.3 {
! 3206: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 3 2 -0.00543
! 3207: } {abc: (-0.0054) :xyz}
! 3208: do_test printf-2.8.7.4 {
! 3209: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 3 2 -0.00543
! 3210: } {abc: 3 2 (-0.00543) :xyz}
! 3211: do_test printf-2.8.7.5 {
! 3212: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 3 2 -0.00543
! 3213: } {abc: 3 2 (-0.00543000) :xyz}
! 3214: do_test printf-2.8.7.6 {
! 3215: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 3 2 -0.00543
! 3216: } {abc: 3 2 (-000.00543) :xyz}
! 3217: do_test printf-2.8.7.7 {
! 3218: sqlite3_mprintf_double {abc: %d %d (%3.2f) :xyz} 3 2 -0.00543
! 3219: } {abc: 3 2 (-0.01) :xyz}
! 3220: do_test printf-2.8.7.8 {
! 3221: sqlite3_mprintf_double {abc: %d %d (%3.2e) :xyz} 3 2 -0.00543
! 3222: } {abc: 3 2 (-5.43e-03) :xyz}
! 3223: do_test printf-2.8.7.9 {
! 3224: sqlite3_mprintf_double {abc: %d %d (%3.2g) :xyz} 3 2 -0.00543
! 3225: } {abc: 3 2 (-0.0054) :xyz}
! 3226: do_test printf-2.8.8.1 {
! 3227: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 3 2 -1.0
! 3228: } {abc: (-1.00) :xyz}
! 3229: do_test printf-2.8.8.2 {
! 3230: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 3 2 -1.0
! 3231: } {abc: (-1.00e+00) :xyz}
! 3232: do_test printf-2.8.8.3 {
! 3233: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 3 2 -1.0
! 3234: } {abc: ( -1) :xyz}
! 3235: do_test printf-2.8.8.4 {
! 3236: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 3 2 -1.0
! 3237: } {abc: 3 2 (-1) :xyz}
! 3238: do_test printf-2.8.8.5 {
! 3239: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 3 2 -1.0
! 3240: } {abc: 3 2 (-1.00000) :xyz}
! 3241: do_test printf-2.8.8.6 {
! 3242: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 3 2 -1.0
! 3243: } {abc: 3 2 (-000000001) :xyz}
! 3244: do_test printf-2.8.8.7 {
! 3245: sqlite3_mprintf_double {abc: %d %d (%3.2f) :xyz} 3 2 -1.0
! 3246: } {abc: 3 2 (-1.00) :xyz}
! 3247: do_test printf-2.8.8.8 {
! 3248: sqlite3_mprintf_double {abc: %d %d (%3.2e) :xyz} 3 2 -1.0
! 3249: } {abc: 3 2 (-1.00e+00) :xyz}
! 3250: do_test printf-2.8.8.9 {
! 3251: sqlite3_mprintf_double {abc: %d %d (%3.2g) :xyz} 3 2 -1.0
! 3252: } {abc: 3 2 ( -1) :xyz}
! 3253: do_test printf-2.8.9.1 {
! 3254: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 3 2 -99.99999
! 3255: } {abc: (-100.00) :xyz}
! 3256: do_test printf-2.8.9.2 {
! 3257: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 3 2 -99.99999
! 3258: } {abc: (-1.00e+02) :xyz}
! 3259: do_test printf-2.8.9.3 {
! 3260: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 3 2 -99.99999
! 3261: } {abc: (-1e+02) :xyz}
! 3262: do_test printf-2.8.9.4 {
! 3263: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 3 2 -99.99999
! 3264: } {abc: 3 2 (-100) :xyz}
! 3265: do_test printf-2.8.9.5 {
! 3266: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 3 2 -99.99999
! 3267: } {abc: 3 2 (-100.000) :xyz}
! 3268: do_test printf-2.8.9.6 {
! 3269: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 3 2 -99.99999
! 3270: } {abc: 3 2 (-000000100) :xyz}
! 3271: do_test printf-2.8.9.7 {
! 3272: sqlite3_mprintf_double {abc: %d %d (%3.2f) :xyz} 3 2 -99.99999
! 3273: } {abc: 3 2 (-100.00) :xyz}
! 3274: do_test printf-2.8.9.8 {
! 3275: sqlite3_mprintf_double {abc: %d %d (%3.2e) :xyz} 3 2 -99.99999
! 3276: } {abc: 3 2 (-1.00e+02) :xyz}
! 3277: do_test printf-2.8.9.9 {
! 3278: sqlite3_mprintf_double {abc: %d %d (%3.2g) :xyz} 3 2 -99.99999
! 3279: } {abc: 3 2 (-1e+02) :xyz}
! 3280: do_test printf-2.8.10.1 {
! 3281: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 3 2 3.14e+9
! 3282: } {abc: (3140000000.00) :xyz}
! 3283: do_test printf-2.8.10.2 {
! 3284: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 3 2 3.14e+9
! 3285: } {abc: (3.14e+09) :xyz}
! 3286: do_test printf-2.8.10.3 {
! 3287: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 3 2 3.14e+9
! 3288: } {abc: (3.1e+09) :xyz}
! 3289: do_test printf-2.8.10.4 {
! 3290: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 3 2 3.14e+9
! 3291: } {abc: 3 2 (3.14e+09) :xyz}
! 3292: do_test printf-2.8.10.5 {
! 3293: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 3 2 3.14e+9
! 3294: } {abc: 3 2 (3.14000e+09) :xyz}
! 3295: do_test printf-2.8.10.6 {
! 3296: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 3 2 3.14e+9
! 3297: } {abc: 3 2 (003.14e+09) :xyz}
! 3298: do_test printf-2.8.10.7 {
! 3299: sqlite3_mprintf_double {abc: %d %d (%3.2f) :xyz} 3 2 3.14e+9
! 3300: } {abc: 3 2 (3140000000.00) :xyz}
! 3301: do_test printf-2.8.10.8 {
! 3302: sqlite3_mprintf_double {abc: %d %d (%3.2e) :xyz} 3 2 3.14e+9
! 3303: } {abc: 3 2 (3.14e+09) :xyz}
! 3304: do_test printf-2.8.10.9 {
! 3305: sqlite3_mprintf_double {abc: %d %d (%3.2g) :xyz} 3 2 3.14e+9
! 3306: } {abc: 3 2 (3.1e+09) :xyz}
! 3307: do_test printf-2.8.11.2 {
! 3308: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 3 2 -4.72732e+88
! 3309: } {abc: (-4.73e+88) :xyz}
! 3310: do_test printf-2.8.11.3 {
! 3311: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 3 2 -4.72732e+88
! 3312: } {abc: (-4.7e+88) :xyz}
! 3313: do_test printf-2.8.11.4 {
! 3314: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 3 2 -4.72732e+88
! 3315: } {abc: 3 2 (-4.72732e+88) :xyz}
! 3316: do_test printf-2.8.11.5 {
! 3317: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 3 2 -4.72732e+88
! 3318: } {abc: 3 2 (-4.72732e+88) :xyz}
! 3319: do_test printf-2.8.11.6 {
! 3320: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 3 2 -4.72732e+88
! 3321: } {abc: 3 2 (-4.72732e+88) :xyz}
! 3322: do_test printf-2.8.11.8 {
! 3323: sqlite3_mprintf_double {abc: %d %d (%3.2e) :xyz} 3 2 -4.72732e+88
! 3324: } {abc: 3 2 (-4.73e+88) :xyz}
! 3325: do_test printf-2.8.11.9 {
! 3326: sqlite3_mprintf_double {abc: %d %d (%3.2g) :xyz} 3 2 -4.72732e+88
! 3327: } {abc: 3 2 (-4.7e+88) :xyz}
! 3328: do_test printf-2.8.12.2 {
! 3329: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 3 2 9.87991e+143
! 3330: } {abc: (9.88e+143) :xyz}
! 3331: do_test printf-2.8.12.3 {
! 3332: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 3 2 9.87991e+143
! 3333: } {abc: (9.9e+143) :xyz}
! 3334: do_test printf-2.8.12.4 {
! 3335: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 3 2 9.87991e+143
! 3336: } {abc: 3 2 (9.87991e+143) :xyz}
! 3337: do_test printf-2.8.12.5 {
! 3338: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 3 2 9.87991e+143
! 3339: } {abc: 3 2 (9.87991e+143) :xyz}
! 3340: do_test printf-2.8.12.6 {
! 3341: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 3 2 9.87991e+143
! 3342: } {abc: 3 2 (9.87991e+143) :xyz}
! 3343: do_test printf-2.8.12.8 {
! 3344: sqlite3_mprintf_double {abc: %d %d (%3.2e) :xyz} 3 2 9.87991e+143
! 3345: } {abc: 3 2 (9.88e+143) :xyz}
! 3346: do_test printf-2.8.12.9 {
! 3347: sqlite3_mprintf_double {abc: %d %d (%3.2g) :xyz} 3 2 9.87991e+143
! 3348: } {abc: 3 2 (9.9e+143) :xyz}
! 3349: do_test printf-2.8.13.1 {
! 3350: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 3 2 -6.287291e-9
! 3351: } {abc: (-0.00) :xyz}
! 3352: do_test printf-2.8.13.2 {
! 3353: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 3 2 -6.287291e-9
! 3354: } {abc: (-6.29e-09) :xyz}
! 3355: do_test printf-2.8.13.3 {
! 3356: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 3 2 -6.287291e-9
! 3357: } {abc: (-6.3e-09) :xyz}
! 3358: do_test printf-2.8.13.4 {
! 3359: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 3 2 -6.287291e-9
! 3360: } {abc: 3 2 (-6.28729e-09) :xyz}
! 3361: do_test printf-2.8.13.5 {
! 3362: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 3 2 -6.287291e-9
! 3363: } {abc: 3 2 (-6.28729e-09) :xyz}
! 3364: do_test printf-2.8.13.6 {
! 3365: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 3 2 -6.287291e-9
! 3366: } {abc: 3 2 (-6.28729e-09) :xyz}
! 3367: do_test printf-2.8.13.7 {
! 3368: sqlite3_mprintf_double {abc: %d %d (%3.2f) :xyz} 3 2 -6.287291e-9
! 3369: } {abc: 3 2 (-0.00) :xyz}
! 3370: do_test printf-2.8.13.8 {
! 3371: sqlite3_mprintf_double {abc: %d %d (%3.2e) :xyz} 3 2 -6.287291e-9
! 3372: } {abc: 3 2 (-6.29e-09) :xyz}
! 3373: do_test printf-2.8.13.9 {
! 3374: sqlite3_mprintf_double {abc: %d %d (%3.2g) :xyz} 3 2 -6.287291e-9
! 3375: } {abc: 3 2 (-6.3e-09) :xyz}
! 3376: do_test printf-2.8.14.1 {
! 3377: sqlite3_mprintf_double {abc: (%*.*f) :xyz} 3 2 3.38826392e-110
! 3378: } {abc: (0.00) :xyz}
! 3379: do_test printf-2.8.14.2 {
! 3380: sqlite3_mprintf_double {abc: (%*.*e) :xyz} 3 2 3.38826392e-110
! 3381: } {abc: (3.39e-110) :xyz}
! 3382: do_test printf-2.8.14.3 {
! 3383: sqlite3_mprintf_double {abc: (%*.*g) :xyz} 3 2 3.38826392e-110
! 3384: } {abc: (3.4e-110) :xyz}
! 3385: do_test printf-2.8.14.4 {
! 3386: sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 3 2 3.38826392e-110
! 3387: } {abc: 3 2 (3.38826e-110) :xyz}
! 3388: do_test printf-2.8.14.5 {
! 3389: sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 3 2 3.38826392e-110
! 3390: } {abc: 3 2 (3.38826e-110) :xyz}
! 3391: do_test printf-2.8.14.6 {
! 3392: sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 3 2 3.38826392e-110
! 3393: } {abc: 3 2 (3.38826e-110) :xyz}
! 3394: do_test printf-2.8.14.7 {
! 3395: sqlite3_mprintf_double {abc: %d %d (%3.2f) :xyz} 3 2 3.38826392e-110
! 3396: } {abc: 3 2 (0.00) :xyz}
! 3397: do_test printf-2.8.14.8 {
! 3398: sqlite3_mprintf_double {abc: %d %d (%3.2e) :xyz} 3 2 3.38826392e-110
! 3399: } {abc: 3 2 (3.39e-110) :xyz}
! 3400: do_test printf-2.8.14.9 {
! 3401: sqlite3_mprintf_double {abc: %d %d (%3.2g) :xyz} 3 2 3.38826392e-110
! 3402: } {abc: 3 2 (3.4e-110) :xyz}
! 3403: do_test printf-2.8.15.1 {
! 3404: sqlite3_mprintf_double {abc: (% *.*f) :xyz} 3 2 3.38826392e-110
! 3405: } {abc: ( 0.00) :xyz}
! 3406: do_test printf-2.8.15.2 {
! 3407: sqlite3_mprintf_double {abc: (% *.*e) :xyz} 3 2 3.38826392e-110
! 3408: } {abc: ( 3.39e-110) :xyz}
! 3409: do_test printf-2.8.15.3 {
! 3410: sqlite3_mprintf_double {abc: (% *.*g) :xyz} 3 2 3.38826392e-110
! 3411: } {abc: ( 3.4e-110) :xyz}
! 3412: do_test printf-2.8.15.4 {
! 3413: sqlite3_mprintf_double {abc: %d %d (% g) :xyz} 3 2 3.38826392e-110
! 3414: } {abc: 3 2 ( 3.38826e-110) :xyz}
! 3415: do_test printf-2.8.15.5 {
! 3416: sqlite3_mprintf_double {abc: %d %d (% #g) :xyz} 3 2 3.38826392e-110
! 3417: } {abc: 3 2 ( 3.38826e-110) :xyz}
! 3418: do_test printf-2.8.15.6 {
! 3419: sqlite3_mprintf_double {abc: %d %d (%0 10g) :xyz} 3 2 3.38826392e-110
! 3420: } {abc: 3 2 ( 3.38826e-110) :xyz}
! 3421: do_test printf-2.8.15.7 {
! 3422: sqlite3_mprintf_double {abc: %d %d (% 3.2f) :xyz} 3 2 3.38826392e-110
! 3423: } {abc: 3 2 ( 0.00) :xyz}
! 3424: do_test printf-2.8.15.8 {
! 3425: sqlite3_mprintf_double {abc: %d %d (% 3.2e) :xyz} 3 2 3.38826392e-110
! 3426: } {abc: 3 2 ( 3.39e-110) :xyz}
! 3427: do_test printf-2.8.15.9 {
! 3428: sqlite3_mprintf_double {abc: %d %d (% 3.2g) :xyz} 3 2 3.38826392e-110
! 3429: } {abc: 3 2 ( 3.4e-110) :xyz}
! 3430:
! 3431: do_test printf-2.9.1 {
! 3432: sqlite3_mprintf_double {abc: %d %d (%5.0g) :xyz} 0 0 1.234
! 3433: } {abc: 0 0 ( 1) :xyz}
! 3434: do_test printf-2.9.2 {
! 3435: sqlite3_mprintf_double {abc: %d %d (%+5.0g) :xyz} 0 0 1.234
! 3436: } {abc: 0 0 ( +1) :xyz}
! 3437: do_test printf-2.9.3 {
! 3438: sqlite3_mprintf_double {abc: %d %d (%+-5.0g) :xyz} 0 0 1.234
! 3439: } {abc: 0 0 (+1 ) :xyz}
! 3440:
! 3441: do_test printf-2.10.1 {
! 3442: sqlite3_mprintf_double {abc: %d %d (%-010.5f) :xyz} 0 0 1.234
! 3443: } {abc: 0 0 (1.23400 ) :xyz}
! 3444: do_test printf-2.10.2 {
! 3445: sqlite3_mprintf_double {abc: %d %d (%010.5f) :xyz} 0 0 1.234
! 3446: } {abc: 0 0 (0001.23400) :xyz}
! 3447: do_test printf-2.10.3 {
! 3448: sqlite3_mprintf_double {abc: %d %d (%+010.5f) :xyz} 0 0 1.234
! 3449: } {abc: 0 0 (+001.23400) :xyz}
! 3450:
! 3451: do_test printf-3.1 {
! 3452: sqlite3_mprintf_str {A String: (%*.*s)} 10 10 {This is the string}
! 3453: } [format {A String: (%*.*s)} 10 10 {This is the string}]
! 3454: do_test printf-3.2 {
! 3455: sqlite3_mprintf_str {A String: (%*.*s)} 10 5 {This is the string}
! 3456: } [format {A String: (%*.*s)} 10 5 {This is the string}]
! 3457: do_test printf-3.3 {
! 3458: sqlite3_mprintf_str {A String: (%*.*s)} -10 5 {This is the string}
! 3459: } [format {A String: (%*.*s)} -10 5 {This is the string}]
! 3460: do_test printf-3.4 {
! 3461: sqlite3_mprintf_str {%d %d A String: (%s)} 1 2 {This is the string}
! 3462: } [format {%d %d A String: (%s)} 1 2 {This is the string}]
! 3463: do_test printf-3.5 {
! 3464: sqlite3_mprintf_str {%d %d A String: (%30s)} 1 2 {This is the string}
! 3465: } [format {%d %d A String: (%30s)} 1 2 {This is the string}]
! 3466: do_test printf-3.6 {
! 3467: sqlite3_mprintf_str {%d %d A String: (%-30s)} 1 2 {This is the string}
! 3468: } [format {%d %d A String: (%-30s)} 1 2 {This is the string}]
! 3469: do_test snprintf-3.11 {
! 3470: sqlite3_snprintf_str 2 {x%d %d %s} 10 10 {This is the string}
! 3471: } {x}
! 3472: do_test snprintf-3.12 {
! 3473: sqlite3_snprintf_str 3 {x%d %d %s} 10 10 {This is the string}
! 3474: } {x1}
! 3475: do_test snprintf-3.13 {
! 3476: sqlite3_snprintf_str 4 {x%d %d %s} 10 10 {This is the string}
! 3477: } {x10}
! 3478: do_test snprintf-3.14 {
! 3479: sqlite3_snprintf_str 5 {x%d %d %s} 10 10 {This is the string}
! 3480: } {x10 }
! 3481: do_test snprintf-3.15 {
! 3482: sqlite3_snprintf_str 6 {x%d %d %s} 10 10 {This is the string}
! 3483: } {x10 1}
! 3484: do_test snprintf-3.16 {
! 3485: sqlite3_snprintf_str 7 {x%d %d %s} 10 10 {This is the string}
! 3486: } {x10 10}
! 3487: do_test snprintf-3.17 {
! 3488: sqlite3_snprintf_str 8 {x%d %d %s} 10 10 {This is the string}
! 3489: } {x10 10 }
! 3490: do_test snprintf-3.18 {
! 3491: sqlite3_snprintf_str 9 {x%d %d %s} 10 10 {This is the string}
! 3492: } {x10 10 T}
! 3493: do_test snprintf-3.19 {
! 3494: sqlite3_snprintf_str 100 {x%d %d %s} 10 10 {This is the string}
! 3495: } {x10 10 This is the string}
! 3496:
! 3497: do_test printf-4.1 {
! 3498: sqlite3_mprintf_str {%d %d A quoted string: '%q'} 1 2 {Hi Y'all}
! 3499: } {1 2 A quoted string: 'Hi Y''all'}
! 3500: do_test printf-4.2 {
! 3501: sqlite3_mprintf_str {%d %d A NULL pointer in %%q: '%q'} 1 2
! 3502: } {1 2 A NULL pointer in %q: '(NULL)'}
! 3503: do_test printf-4.3 {
! 3504: sqlite3_mprintf_str {%d %d A quoted string: %Q} 1 2 {Hi Y'all}
! 3505: } {1 2 A quoted string: 'Hi Y''all'}
! 3506: do_test printf-4.4 {
! 3507: sqlite3_mprintf_str {%d %d A NULL pointer in %%Q: %Q} 1 2
! 3508: } {1 2 A NULL pointer in %Q: NULL}
! 3509: do_test printf-4.5 {
! 3510: sqlite3_mprintf_str {%d %d A quoted string: '%.10q'} 1 2 {Hi Y'all}
! 3511: } {1 2 A quoted string: 'Hi Y''all'}
! 3512: do_test printf-4.6 {
! 3513: sqlite3_mprintf_str {%d %d A quoted string: '%.9q'} 1 2 {Hi Y'all}
! 3514: } {1 2 A quoted string: 'Hi Y''all'}
! 3515: do_test printf-4.7 {
! 3516: sqlite3_mprintf_str {%d %d A quoted string: '%.8q'} 1 2 {Hi Y'all}
! 3517: } {1 2 A quoted string: 'Hi Y''all'}
! 3518: do_test printf-4.8 {
! 3519: sqlite3_mprintf_str {%d %d A quoted string: '%.7q'} 1 2 {Hi Y'all}
! 3520: } {1 2 A quoted string: 'Hi Y''al'}
! 3521: do_test printf-4.9 {
! 3522: sqlite3_mprintf_str {%d %d A quoted string: '%.6q'} 1 2 {Hi Y'all}
! 3523: } {1 2 A quoted string: 'Hi Y''a'}
! 3524: do_test printf-4.10 {
! 3525: sqlite3_mprintf_str {%d %d A quoted string: '%.5q'} 1 2 {Hi Y'all}
! 3526: } {1 2 A quoted string: 'Hi Y'''}
! 3527: do_test printf-4.11 {
! 3528: sqlite3_mprintf_str {%d %d A quoted string: '%.4q'} 1 2 {Hi Y'all}
! 3529: } {1 2 A quoted string: 'Hi Y'}
! 3530: do_test printf-4.12 {
! 3531: sqlite3_mprintf_str {%d %d A quoted string: '%.3q'} 1 2 {Hi Y'all}
! 3532: } {1 2 A quoted string: 'Hi '}
! 3533: do_test printf-4.13 {
! 3534: sqlite3_mprintf_str {%d %d A quoted string: '%.2q'} 1 2 {Hi Y'all}
! 3535: } {1 2 A quoted string: 'Hi'}
! 3536: do_test printf-4.14 {
! 3537: sqlite3_mprintf_str {%d %d A quoted string: '%.1q'} 1 2 {Hi Y'all}
! 3538: } {1 2 A quoted string: 'H'}
! 3539: do_test printf-4.15 {
! 3540: sqlite3_mprintf_str {%d %d A quoted string: '%.0q'} 1 2 {Hi Y'all}
! 3541: } {1 2 A quoted string: ''}
! 3542: do_test printf-4.16 {
! 3543: sqlite3_mprintf_str {%d A quoted string: '%.*q'} 1 6 {Hi Y'all}
! 3544: } {1 A quoted string: 'Hi Y''a'}
! 3545:
! 3546:
! 3547: do_test printf-5.1 {
! 3548: set x [sqlite3_mprintf_str {%d %d %100000s} 0 0 {Hello}]
! 3549: string length $x
! 3550: } {100004}
! 3551: do_test printf-5.2 {
! 3552: sqlite3_mprintf_str {%d %d (%-10.10s) %} -9 -10 {HelloHelloHello}
! 3553: } {-9 -10 (HelloHello) %}
! 3554:
! 3555: do_test printf-6.1 {
! 3556: sqlite3_mprintf_z_test , one two three four five six
! 3557: } {,one,two,three,four,five,six}
! 3558:
! 3559:
! 3560: do_test printf-7.1 {
! 3561: sqlite3_mprintf_scaled {A double: %g} 1.0e307 1.0
! 3562: } {A double: 1e+307}
! 3563: do_test printf-7.2 {
! 3564: sqlite3_mprintf_scaled {A double: %g} 1.0e307 10.0
! 3565: } {A double: 1e+308}
! 3566: do_test printf-7.3 {
! 3567: sqlite3_mprintf_scaled {A double: %g} 1.0e307 100.0
! 3568: } {A double: Inf}
! 3569: do_test printf-7.4 {
! 3570: sqlite3_mprintf_scaled {A double: %g} -1.0e307 100.0
! 3571: } {A double: -Inf}
! 3572: do_test printf-7.5 {
! 3573: sqlite3_mprintf_scaled {A double: %+g} 1.0e307 100.0
! 3574: } {A double: +Inf}
! 3575:
! 3576: do_test printf-8.1 {
! 3577: sqlite3_mprintf_int {%u %u %u} 0x7fffffff 0x80000000 0xffffffff
! 3578: } {2147483647 2147483648 4294967295}
! 3579: do_test printf-8.2 {
! 3580: sqlite3_mprintf_long {%lu %lu %lu} 0x7fffffff 0x80000000 0xffffffff
! 3581: } {2147483647 2147483648 4294967295}
! 3582: do_test printf-8.3 {
! 3583: sqlite3_mprintf_int64 {%llu %llu %llu} 2147483647 2147483648 4294967296
! 3584: } {2147483647 2147483648 4294967296}
! 3585: do_test printf-8.4 {
! 3586: sqlite3_mprintf_int64 {%lld %lld %lld} 2147483647 2147483648 4294967296
! 3587: } {2147483647 2147483648 4294967296}
! 3588: do_test printf-8.5 {
! 3589: sqlite3_mprintf_int64 {%llx %llx %llx} 2147483647 2147483648 4294967296
! 3590: } {7fffffff 80000000 100000000}
! 3591: do_test printf-8.6 {
! 3592: sqlite3_mprintf_int64 {%llx %llo %lld} -1 -1 -1
! 3593: } {ffffffffffffffff 1777777777777777777777 -1}
! 3594: do_test printf-8.7 {
! 3595: sqlite3_mprintf_int64 {%llx %llx %llx} +2147483647 +2147483648 +4294967296
! 3596: } {7fffffff 80000000 100000000}
! 3597:
! 3598: do_test printf-9.1 {
! 3599: sqlite3_mprintf_int {%*.*c} 4 4 65
! 3600: } {AAAA}
! 3601: do_test printf-9.2 {
! 3602: sqlite3_mprintf_int {%*.*c} -4 1 66
! 3603: } {B }
! 3604: do_test printf-9.3 {
! 3605: sqlite3_mprintf_int {%*.*c} 4 1 67
! 3606: } { C}
! 3607: do_test printf-9.4 {
! 3608: sqlite3_mprintf_int {%d %d %c} 4 1 67
! 3609: } {4 1 C}
! 3610: set ten { }
! 3611: set fifty $ten$ten$ten$ten$ten
! 3612: do_test printf-9.5 {
! 3613: sqlite3_mprintf_int {%d %*c} 1 -201 67
! 3614: } "1 C$fifty$fifty$fifty$fifty"
! 3615: do_test printf-9.6 {
! 3616: sqlite3_mprintf_int {hi%12345.12346yhello} 0 0 0
! 3617: } {hi}
! 3618:
! 3619: # Ticket #812
! 3620: #
! 3621: do_test printf-10.1 {
! 3622: sqlite3_mprintf_stronly %s {}
! 3623: } {}
! 3624:
! 3625: # Ticket #831
! 3626: #
! 3627: do_test printf-10.2 {
! 3628: sqlite3_mprintf_stronly %q {}
! 3629: } {}
! 3630:
! 3631: # Ticket #1340: Test for loss of precision on large positive exponents
! 3632: #
! 3633: do_test printf-10.3 {
! 3634: sqlite3_mprintf_double {%d %d %f} 1 1 1e300
! 3635: } {1 1 1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.000000}
! 3636:
! 3637: # The non-standard '!' flag on a 'g' conversion forces a decimal point
! 3638: # and at least one digit on either side of the decimal point.
! 3639: #
! 3640: do_test printf-11.1 {
! 3641: sqlite3_mprintf_double {%d %d %!g} 1 1 1
! 3642: } {1 1 1.0}
! 3643: do_test printf-11.2 {
! 3644: sqlite3_mprintf_double {%d %d %!g} 1 1 123
! 3645: } {1 1 123.0}
! 3646: do_test printf-11.3 {
! 3647: sqlite3_mprintf_double {%d %d %!g} 1 1 12.3
! 3648: } {1 1 12.3}
! 3649: do_test printf-11.4 {
! 3650: sqlite3_mprintf_double {%d %d %!g} 1 1 0.123
! 3651: } {1 1 0.123}
! 3652: do_test printf-11.5 {
! 3653: sqlite3_mprintf_double {%d %d %!.15g} 1 1 1
! 3654: } {1 1 1.0}
! 3655: do_test printf-11.6 {
! 3656: sqlite3_mprintf_double {%d %d %!.15g} 1 1 1e10
! 3657: } {1 1 10000000000.0}
! 3658: do_test printf-11.7 {
! 3659: sqlite3_mprintf_double {%d %d %!.15g} 1 1 1e300
! 3660: } {1 1 1.0e+300}
! 3661:
! 3662: # Additional tests for coverage
! 3663: #
! 3664: do_test printf-12.1 {
! 3665: sqlite3_mprintf_double {%d %d %.2000g} 1 1 1.0
! 3666: } {1 1 1}
! 3667:
! 3668: # Floating point boundary cases
! 3669: #
! 3670: do_test printf-13.1 {
! 3671: sqlite3_mprintf_hexdouble %.20f 4024000000000000
! 3672: } {10.00000000000000000000}
! 3673: do_test printf-13.2 {
! 3674: sqlite3_mprintf_hexdouble %.20f 4197d78400000000
! 3675: } {100000000.00000000000000000000}
! 3676: do_test printf-13.3 {
! 3677: sqlite3_mprintf_hexdouble %.20f 4693b8b5b5056e17
! 3678: } {100000000000000000000000000000000.00000000000000000000}
! 3679: do_test printf-13.4 {
! 3680: sqlite3_mprintf_hexdouble %.20f 7ff0000000000000
! 3681: } {Inf}
! 3682: do_test printf-13.5 {
! 3683: sqlite3_mprintf_hexdouble %.20f fff0000000000000
! 3684: } {-Inf}
! 3685: do_test printf-13.6 {
! 3686: sqlite3_mprintf_hexdouble %.20f fff8000000000000
! 3687: } {NaN}
! 3688:
! 3689: do_test printf-14.1 {
! 3690: sqlite3_mprintf_str {abc-%y-123} 0 0 {not used}
! 3691: } {abc-}
! 3692: do_test printf-14.2 {
! 3693: sqlite3_mprintf_n_test {xyzzy}
! 3694: } 5
! 3695: do_test printf-14.3 {
! 3696: sqlite3_mprintf_str {abc-%T-123} 0 0 {not used}
! 3697: } {abc-}
! 3698: do_test printf-14.4 {
! 3699: sqlite3_mprintf_str {abc-%#} 0 0 {not used}
! 3700: } {abc-}
! 3701: do_test printf-14.5 {
! 3702: sqlite3_mprintf_str {abc-%*.*s-xyz} 10 -10 {a_very_long_string}
! 3703: } {abc-a_very_lon-xyz}
! 3704: do_test printf-14.6 {
! 3705: sqlite3_mprintf_str {abc-%5.10/} 0 0 {not used}
! 3706: } {abc-}
! 3707: do_test printf-14.7 {
! 3708: sqlite3_mprintf_str {abc-%05.5d} 123 0 {not used}
! 3709: } {abc-00123}
! 3710: do_test printf-14.8 {
! 3711: sqlite3_mprintf_str {abc-%05.5d} 1234567 0 {not used}
! 3712: } {abc-1234567}
! 3713:
! 3714: for {set i 2} {$i<200} {incr i} {
! 3715: set res [string repeat { } [expr {$i-1}]]x
! 3716: do_test printf-14.90.$i "
! 3717: sqlite3_mprintf_str {%*.*s} $i 500 x
! 3718: " $res
! 3719: }
! 3720:
! 3721: do_test printf-15.1 {
! 3722: sqlite3_snprintf_int 5 {12345} 0
! 3723: } {1234}
! 3724: do_test printf-15.2 {
! 3725: sqlite3_snprintf_int 5 {} 0
! 3726: } {}
! 3727: do_test printf-15.3 {
! 3728: sqlite3_snprintf_int 0 {} 0
! 3729: } {abcdefghijklmnopqrstuvwxyz}
! 3730:
! 3731: # Now test malloc() failure within a sqlite3_mprintf():
! 3732: #
! 3733: ifcapable memdebug {
! 3734: foreach var {a b c d} {
! 3735: set $var [string repeat $var 400]
! 3736: }
! 3737: set str1 "[string repeat A 360]%d%d%s"
! 3738: set str2 [string repeat B 5000]
! 3739: set zSuccess "[string repeat A 360]11[string repeat B 5000]"
! 3740: foreach ::iRepeat {0 1} {
! 3741: set nTestNum 1
! 3742: while {1} {
! 3743: sqlite3_memdebug_fail $nTestNum -repeat $::iRepeat
! 3744: set z [sqlite3_mprintf_str $str1 1 1 $str2]
! 3745: set nFail [sqlite3_memdebug_fail -1 -benign nBenign]
! 3746: do_test printf-malloc-$::iRepeat.$nTestNum {
! 3747: expr {($nFail>0 && $z eq "") || ($nFail==$nBenign && $z eq $zSuccess)}
! 3748: } {1}
! 3749: if {$nFail == 0} break
! 3750: incr nTestNum
! 3751: }
! 3752: }
! 3753: }
! 3754:
! 3755: finish_test
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>