summaryrefslogtreecommitdiffstats
path: root/generic/tclOO.c
diff options
context:
space:
mode:
Diffstat (limited to 'generic/tclOO.c')
-rw-r--r--generic/tclOO.c25
1 files changed, 11 insertions, 14 deletions
diff --git a/generic/tclOO.c b/generic/tclOO.c
index 5385f08..0d9c7da 100644
--- a/generic/tclOO.c
+++ b/generic/tclOO.c
@@ -1667,16 +1667,15 @@ Tcl_NewObjectInstance(
const char *nsNameStr, /* Name of namespace to create inside object,
* or NULL to ask the code to pick its own
* unique name. */
- size_t objc1, /* Number of arguments. Negative value means
+ size_t objc, /* Number of arguments. Negative value means
* do not call constructor. */
Tcl_Obj *const *objv, /* Argument list. */
- int skip) /* Number of arguments to _not_ pass to the
+ size_t skip) /* Number of arguments to _not_ pass to the
* constructor. */
{
Class *classPtr = (Class *) cls;
Object *oPtr;
ClientData clientData[4];
- int objc = objc1;
oPtr = TclNewObjectInstanceCommon(interp, classPtr, nameStr, nsNameStr);
if (oPtr == NULL) {
@@ -1688,7 +1687,7 @@ Tcl_NewObjectInstance(
* used for object cloning only.
*/
- if (objc >= 0) {
+ if (objc != TCL_INDEX_NONE) {
CallContext *contextPtr =
TclOOGetCallContext(oPtr, NULL, CONSTRUCTOR, NULL, NULL, NULL);
@@ -1736,10 +1735,10 @@ TclNRNewObjectInstance(
const char *nsNameStr, /* Name of namespace to create inside object,
* or NULL to ask the code to pick its own
* unique name. */
- int objc, /* Number of arguments. Negative value means
+ size_t objc, /* Number of arguments. Negative value means
* do not call constructor. */
Tcl_Obj *const *objv, /* Argument list. */
- int skip, /* Number of arguments to _not_ pass to the
+ size_t skip, /* Number of arguments to _not_ pass to the
* constructor. */
Tcl_Object *objectPtr) /* Place to write the object reference upon
* successful allocation. */
@@ -1755,11 +1754,11 @@ TclNRNewObjectInstance(
}
/*
- * Run constructors, except when objc < 0 (a special flag case used for
+ * Run constructors, except when objc == TCL_INDEX_NONE (a special flag case used for
* object cloning only). If there aren't any constructors, we do nothing.
*/
- if (objc < 0) {
+ if (objc == TCL_INDEX_NONE) {
*objectPtr = (Tcl_Object) oPtr;
return TCL_OK;
}
@@ -2628,7 +2627,7 @@ int
TclOOObjectCmdCore(
Object *oPtr, /* The object being invoked. */
Tcl_Interp *interp, /* The interpreter containing the object. */
- size_t objc1, /* How many arguments are being passed in. */
+ size_t objc, /* How many arguments are being passed in. */
Tcl_Obj *const *objv, /* The array of arguments. */
int flags, /* Whether this is an invocation through the
* public or the private command interface. */
@@ -2643,14 +2642,13 @@ TclOOObjectCmdCore(
Object *callerObjPtr = NULL;
Class *callerClsPtr = NULL;
int result;
- int objc = objc1;
/*
* If we've no method name, throw this directly into the unknown
* processing.
*/
- if (objc < 2) {
+ if (objc + 1 < 3) {
flags |= FORCE_UNKNOWN;
methodNamePtr = NULL;
goto noMapping;
@@ -2801,15 +2799,14 @@ int
Tcl_ObjectContextInvokeNext(
Tcl_Interp *interp,
Tcl_ObjectContext context,
- size_t objc1,
+ size_t objc,
Tcl_Obj *const *objv,
- int skip)
+ size_t skip)
{
CallContext *contextPtr = (CallContext *) context;
size_t savedIndex = contextPtr->index;
size_t savedSkip = contextPtr->skip;
int result;
- int objc = objc1;
if (contextPtr->index + 1 >= contextPtr->callPtr->numChain) {
/*