Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | Minor simplification in test-suite: Because "teststringobj maxchars" has the effect that the value is converted to Unicode for, we don't need a separate function "teststringobj getunicode" for that. So, merge the two functions to one. |
---|---|
Downloads: | Tarball | ZIP archive |
Timelines: | family | ancestors | descendants | both | core-8-branch |
Files: | files | file ages | folders |
SHA3-256: |
21b8fc0bb3dfd6e77f0bd387975feca5 |
User & Date: | jan.nijtmans 2019-08-14 19:23:13.300 |
Context
2019-08-15
| ||
07:08 | Eliminate "register" keyword _everywhere_ in Tcl. This keyword is deprecated in C++ (removed in C++1... check-in: 1f280ab76d user: jan.nijtmans tags: core-8-branch | |
2019-08-14
| ||
19:23 | Minor simplification in test-suite: Because "teststringobj maxchars" has the effect that the value i... check-in: 21b8fc0bb3 user: jan.nijtmans tags: core-8-branch | |
06:42 | Remove "register" keyword in various places. Also add some type-casts to help C++ compatibility. check-in: 7e530cff3d user: jan.nijtmans tags: core-8-branch | |
Changes
Changes to generic/tclTestObj.c.
︙ | ︙ | |||
1174 1175 1176 1177 1178 1179 1180 | int varIndex, option, i, length; #define MAX_STRINGS 11 const char *index, *string, *strings[MAX_STRINGS+1]; String *strPtr; Tcl_Obj **varPtr; static const char *const options[] = { "append", "appendstrings", "get", "get2", "length", "length2", | | | | 1174 1175 1176 1177 1178 1179 1180 1181 1182 1183 1184 1185 1186 1187 1188 1189 | int varIndex, option, i, length; #define MAX_STRINGS 11 const char *index, *string, *strings[MAX_STRINGS+1]; String *strPtr; Tcl_Obj **varPtr; static const char *const options[] = { "append", "appendstrings", "get", "get2", "length", "length2", "set", "set2", "setlength", "maxchars", "appendself", "appendself2", NULL }; if (objc < 3) { wrongNumArgs: Tcl_WrongNumArgs(interp, 1, objv, "option arg ?arg ...?"); return TCL_ERROR; } |
︙ | ︙ | |||
1340 1341 1342 1343 1344 1345 1346 | strPtr = varPtr[varIndex]->internalRep.twoPtrValue.ptr1; length = strPtr->maxChars; } else { length = -1; } Tcl_SetIntObj(Tcl_GetObjResult(interp), length); break; | | < < < < < < | 1340 1341 1342 1343 1344 1345 1346 1347 1348 1349 1350 1351 1352 1353 1354 | strPtr = varPtr[varIndex]->internalRep.twoPtrValue.ptr1; length = strPtr->maxChars; } else { length = -1; } Tcl_SetIntObj(Tcl_GetObjResult(interp), length); break; case 10: /* appendself */ if (objc != 4) { goto wrongNumArgs; } if (varPtr[varIndex] == NULL) { SetVarToObj(varPtr, varIndex, Tcl_NewObj()); } |
︙ | ︙ | |||
1377 1378 1379 1380 1381 1382 1383 | "index value out of range", -1)); return TCL_ERROR; } Tcl_AppendToObj(varPtr[varIndex], string + i, length - i); Tcl_SetObjResult(interp, varPtr[varIndex]); break; | | | 1371 1372 1373 1374 1375 1376 1377 1378 1379 1380 1381 1382 1383 1384 1385 | "index value out of range", -1)); return TCL_ERROR; } Tcl_AppendToObj(varPtr[varIndex], string + i, length - i); Tcl_SetObjResult(interp, varPtr[varIndex]); break; case 11: /* appendself2 */ if (objc != 4) { goto wrongNumArgs; } if (varPtr[varIndex] == NULL) { SetVarToObj(varPtr, varIndex, Tcl_NewObj()); } |
︙ | ︙ |
Changes to tests/stringObj.test.
︙ | ︙ | |||
435 436 437 438 439 440 441 | } 1 test stringObj-13.8 {Tcl_GetCharLength with identity nulls} {testobj testbytestring} { string length [testbytestring \x01\x00\x02] } 3 test stringObj-14.1 {Tcl_SetObjLength on pure unicode object} testobj { teststringobj set 1 foo | | | | 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 | } 1 test stringObj-13.8 {Tcl_GetCharLength with identity nulls} {testobj testbytestring} { string length [testbytestring \x01\x00\x02] } 3 test stringObj-14.1 {Tcl_SetObjLength on pure unicode object} testobj { teststringobj set 1 foo teststringobj maxchars 1 teststringobj append 1 bar -1 teststringobj maxchars 1 teststringobj append 1 bar -1 teststringobj setlength 1 0 teststringobj append 1 bar -1 teststringobj get 1 } {bar} test stringObj-15.1 {Tcl_Append*ToObj: self appends} testobj { |
︙ | ︙ |
Changes to tests/utf.test.
︙ | ︙ | |||
467 468 469 470 471 472 473 | test utf-25.1 {Tcl_UniCharNcasecmp} -constraints teststringobj \ -setup { testobj freeallvars } \ -body { teststringobj set 1 a teststringobj set 2 b | | | | | | | | | | 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 | test utf-25.1 {Tcl_UniCharNcasecmp} -constraints teststringobj \ -setup { testobj freeallvars } \ -body { teststringobj set 1 a teststringobj set 2 b teststringobj maxchars 1 teststringobj maxchars 2 string compare -nocase [teststringobj get 1] [teststringobj get 2] } \ -cleanup { testobj freeallvars } \ -result -1 test utf-25.2 {Tcl_UniCharNcasecmp} -constraints teststringobj \ -setup { testobj freeallvars } \ -body { teststringobj set 1 b teststringobj set 2 a teststringobj maxchars 1 teststringobj maxchars 2 string compare -nocase [teststringobj get 1] [teststringobj get 2] } \ -cleanup { testobj freeallvars } \ -result 1 test utf-25.3 {Tcl_UniCharNcasecmp} -constraints teststringobj \ -setup { testobj freeallvars } \ -body { teststringobj set 1 B teststringobj set 2 a teststringobj maxchars 1 teststringobj maxchars 2 string compare -nocase [teststringobj get 1] [teststringobj get 2] } \ -cleanup { testobj freeallvars } \ -result 1 test utf-25.4 {Tcl_UniCharNcasecmp} -constraints teststringobj \ -setup { testobj freeallvars } \ -body { teststringobj set 1 aBcB teststringobj set 2 abca teststringobj maxchars 1 teststringobj maxchars 2 string compare -nocase [teststringobj get 1] [teststringobj get 2] } \ -cleanup { testobj freeallvars } \ -result 1 |
︙ | ︙ |