From 3836fc2905bdcd38157e529d1a13c586a50221bb Mon Sep 17 00:00:00 2001 From: "jan.nijtmans" Date: Thu, 1 Dec 2022 15:57:20 +0000 Subject: Code cleanup (undo some unnecessary changed compared to trunk) --- generic/tclBasic.c | 2 +- generic/tclCmdIL.c | 60 +++++++++++++++++++++++++-------------------------- generic/tclCmdMZ.c | 2 +- generic/tclEncoding.c | 6 +++++- generic/tclIO.c | 4 ++-- generic/tclIndexObj.c | 2 +- generic/tclLink.c | 2 +- generic/tclProc.c | 2 +- 8 files changed, 42 insertions(+), 38 deletions(-) diff --git a/generic/tclBasic.c b/generic/tclBasic.c index 91ef0a2..52c35fc 100644 --- a/generic/tclBasic.c +++ b/generic/tclBasic.c @@ -310,7 +310,7 @@ static const CmdInfo builtInCmds[] = { {"lreplace", Tcl_LreplaceObjCmd, TclCompileLreplaceCmd, NULL, CMD_IS_SAFE}, {"lreverse", Tcl_LreverseObjCmd, NULL, NULL, CMD_IS_SAFE}, {"lsearch", Tcl_LsearchObjCmd, NULL, NULL, CMD_IS_SAFE}, - {"lseq", Tcl_LseqObjCmd, NULL, NULL, CMD_IS_SAFE}, + {"lseq", Tcl_LseqObjCmd, NULL, NULL, CMD_IS_SAFE}, {"lset", Tcl_LsetObjCmd, TclCompileLsetCmd, NULL, CMD_IS_SAFE}, {"lsort", Tcl_LsortObjCmd, NULL, NULL, CMD_IS_SAFE}, {"package", Tcl_PackageObjCmd, NULL, TclNRPackageObjCmd, CMD_IS_SAFE}, diff --git a/generic/tclCmdIL.c b/generic/tclCmdIL.c index 1ffc1c7..349a7e2 100644 --- a/generic/tclCmdIL.c +++ b/generic/tclCmdIL.c @@ -17,7 +17,6 @@ * this file, and for a DISCLAIMER OF ALL WARRANTIES. */ -#include #include "tclInt.h" #include "tclRegexp.h" #include "tclArithSeries.h" @@ -99,6 +98,23 @@ typedef struct { #define SORTMODE_ASCII_NC 8 /* + * Definitions for [lseq] command + */ +static const char *const seq_operations[] = { + "..", "to", "count", "by", NULL +}; +typedef enum Sequence_Operators { + LSEQ_DOTS, LSEQ_TO, LSEQ_COUNT, LSEQ_BY +} SequenceOperators; +static const char *const seq_step_keywords[] = {"by", NULL}; +typedef enum Step_Operators { + STEP_BY = 4 +} SequenceByMode; +typedef enum Sequence_Decoded { + NoneArg, NumericArg, RangeKeywordArg, ByKeywordArg +} SequenceDecoded; + +/* * Forward declarations for procedures defined in this file: */ @@ -166,24 +182,6 @@ static const EnsembleImplMap defaultInfoMap[] = { {"vars", TclInfoVarsCmd, TclCompileBasic0Or1ArgCmd, NULL, NULL, 0}, {NULL, NULL, NULL, NULL, NULL, 0} }; - -/* - * Definitions for [lseq] command - */ -static const char *const seq_operations[] = { - "..", "to", "count", "by", NULL -}; -typedef enum Sequence_Operators { - LSEQ_DOTS, LSEQ_TO, LSEQ_COUNT, LSEQ_BY -} SequenceOperators; -static const char *const seq_step_keywords[] = {"by", NULL}; -typedef enum Step_Operators { - STEP_BY = 4 -} SequenceByMode; -typedef enum Sequence_Decoded { - NoneArg, NumericArg, RangeKeywordArg, ByKeywordArg -} SequenceDecoded; - /* *---------------------------------------------------------------------- @@ -2203,7 +2201,8 @@ Tcl_JoinObjCmd( int objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* The argument objects. */ { - size_t length, listLen, isAbstractList = 0; + size_t length, listLen; + int isAbstractList = 0; Tcl_Obj *resObjPtr = NULL, *joinObjPtr, **elemPtrs; if ((objc < 2) || (objc > 3)) { @@ -2709,7 +2708,7 @@ Tcl_LrangeObjCmd( /* Argument objects. */ { int result; - Tcl_Size listLen, first, last; + size_t listLen, first, last; if (objc != 4) { Tcl_WrongNumArgs(interp, 1, objv, "list first last"); return TCL_ERROR; @@ -2737,8 +2736,9 @@ Tcl_LrangeObjCmd( int status = Tcl_ObjTypeSlice(interp, objv[1], first, last, &resultObj); if (status == TCL_OK) { Tcl_SetObjResult(interp, resultObj); + } else { + return TCL_ERROR; } - return status; } else { Tcl_SetObjResult(interp, TclListObjRange(objv[1], first, last)); } @@ -3125,6 +3125,7 @@ Tcl_LreverseObjCmd( Tcl_WrongNumArgs(interp, 1, objv, "list"); return TCL_ERROR; } + /* * Handle AbstractList special case - do not shimmer into a list, if it * supports a private Reverse function, just to reverse it. @@ -3598,7 +3599,7 @@ Tcl_LsearchObjCmd( if (allMatches || inlineReturn) { Tcl_ResetResult(interp); } else { - TclNewIntObj(itemPtr, TCL_INDEX_NONE); + TclNewIntObj(itemPtr, -1); Tcl_SetObjResult(interp, itemPtr); } goto done; @@ -3985,12 +3986,9 @@ SequenceIdentifyArgument( int status; SequenceOperators opmode; SequenceByMode bymode; - union { - Tcl_WideInt i; - double d; - } *nvalue; + void *clientData; - status = Tcl_GetNumberFromObj(NULL, argPtr, (void**)&nvalue, keywordIndexPtr); + status = Tcl_GetNumberFromObj(NULL, argPtr, &clientData, keywordIndexPtr); if (status == TCL_OK) { if (numValuePtr) { *numValuePtr = argPtr; @@ -4330,9 +4328,11 @@ Tcl_LseqObjCmd( /* * Success! Now lets create the series object. */ - status = TclNewArithSeriesObj(interp, &arithSeriesPtr, useDoubles, start, end, step, elementCount); + status = TclNewArithSeriesObj(interp, &arithSeriesPtr, + useDoubles, start, end, step, elementCount); + if (status == TCL_OK) { - Tcl_SetObjResult(interp, arithSeriesPtr); + Tcl_SetObjResult(interp, arithSeriesPtr); } done: diff --git a/generic/tclCmdMZ.c b/generic/tclCmdMZ.c index 338b422..84a7e91 100644 --- a/generic/tclCmdMZ.c +++ b/generic/tclCmdMZ.c @@ -3752,7 +3752,7 @@ TclNRSwitchObjCmd( TclNewIndexObj(rangeObjAry[0], info.matches[j].start); TclNewIndexObj(rangeObjAry[1], info.matches[j].end-1); } else { - TclNewIntObj(rangeObjAry[1], TCL_INDEX_NONE); + TclNewIntObj(rangeObjAry[1], -1); rangeObjAry[0] = rangeObjAry[1]; } diff --git a/generic/tclEncoding.c b/generic/tclEncoding.c index 6347863..ef32d29 100644 --- a/generic/tclEncoding.c +++ b/generic/tclEncoding.c @@ -236,7 +236,11 @@ static Tcl_EncodingConvertProc Iso88591ToUtfProc; */ static const Tcl_ObjType encodingType = { - "encoding", FreeEncodingInternalRep, DupEncodingInternalRep, NULL, NULL, + "encoding", + FreeEncodingInternalRep, + DupEncodingInternalRep, + NULL, + NULL, TCL_OBJTYPE_V0 }; diff --git a/generic/tclIO.c b/generic/tclIO.c index 32551a1..64b309d 100644 --- a/generic/tclIO.c +++ b/generic/tclIO.c @@ -329,8 +329,8 @@ static void FreeChannelInternalRep(Tcl_Obj *objPtr); static const Tcl_ObjType chanObjType = { "channel", /* name for this type */ - FreeChannelInternalRep, /* freeIntRepProc */ - DupChannelInternalRep, /* dupIntRepProc */ + FreeChannelInternalRep, /* freeIntRepProc */ + DupChannelInternalRep, /* dupIntRepProc */ NULL, /* updateStringProc */ NULL, /* setFromAnyProc */ TCL_OBJTYPE_V0 diff --git a/generic/tclIndexObj.c b/generic/tclIndexObj.c index a2e515a..58bcc04 100644 --- a/generic/tclIndexObj.c +++ b/generic/tclIndexObj.c @@ -43,7 +43,7 @@ static const Tcl_ObjType indexType = { UpdateStringOfIndex, /* updateStringProc */ NULL, /* setFromAnyProc */ TCL_OBJTYPE_V0 - }; +}; /* * The definition of the internal representation of the "index" object; The diff --git a/generic/tclLink.c b/generic/tclLink.c index 4ccc2d9..e0e82dd 100644 --- a/generic/tclLink.c +++ b/generic/tclLink.c @@ -116,7 +116,7 @@ static Tcl_ObjType invalidRealType = { NULL, /* updateStringProc */ NULL, /* setFromAnyProc */ TCL_OBJTYPE_V0 - }; +}; /* * Convenience macro for accessing the value of the C variable pointed to by a diff --git a/generic/tclProc.c b/generic/tclProc.c index 4060466..01bc337 100644 --- a/generic/tclProc.c +++ b/generic/tclProc.c @@ -66,7 +66,7 @@ const Tcl_ObjType tclProcBodyType = { NULL, /* SetFromAny function; Tcl_ConvertToType * should panic instead. */ TCL_OBJTYPE_V0 - }; +}; #define ProcSetInternalRep(objPtr, procPtr) \ do { \ -- cgit v0.12