From 8b464633a0f2df93912ad25af65a5724cd643da2 Mon Sep 17 00:00:00 2001 From: nijtmans Date: Thu, 16 Oct 2008 22:34:18 +0000 Subject: Add "const" to many internal const tables. No functional or API change. --- ChangeLog | 36 ++++++++++++++++++++++++++++++ generic/regc_locale.c | 6 ++--- generic/tclClock.c | 8 +++---- generic/tclCmdIL.c | 16 +++++++------- generic/tclConfig.c | 4 ++-- generic/tclDate.c | 6 ++--- generic/tclEncoding.c | 4 ++-- generic/tclEvent.c | 6 ++--- generic/tclExecute.c | 54 ++++++++++++++++++++++----------------------- generic/tclFileName.c | 10 ++++----- generic/tclGetDate.y | 8 +++---- generic/tclIO.c | 4 ++-- generic/tclIOCmd.c | 14 ++++++------ generic/tclIORChan.c | 10 ++++----- generic/tclIORTrans.c | 22 +++++++++---------- generic/tclInterp.c | 34 ++++++++++++++--------------- generic/tclLoad.c | 4 ++-- generic/tclOOBasic.c | 4 ++-- generic/tclOOCall.c | 4 ++-- generic/tclOOInfo.c | 8 +++---- generic/tclObj.c | 6 ++--- generic/tclPathObj.c | 4 ++-- generic/tclPkg.c | 6 ++--- generic/tclResult.c | 4 ++-- generic/tclStringObj.c | 4 ++-- generic/tclTest.c | 58 ++++++++++++++++++++++++------------------------- generic/tclTestObj.c | 8 +++---- generic/tclThreadTest.c | 6 ++--- generic/tclTimer.c | 8 +++---- generic/tclTrace.c | 14 ++++++------ macosx/tclMacOSXFCmd.c | 4 ++-- win/cat.c | 4 ++-- win/tclWinInit.c | 6 ++--- win/tclWinTest.c | 4 ++-- 34 files changed, 217 insertions(+), 181 deletions(-) diff --git a/ChangeLog b/ChangeLog index 91b88c8..47d21d2 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,39 @@ +2008-10-16 Jan Nijtmans + + * generic/regc_locale.c: Add "const" to many internal + * generic/tclClock.c: const tables. No functional + * generic/tclCmdIL.c: or API change. + * generic/tclConfig.c + * generic/tclDate.c + * generic/tclEncoding.c + * generic/tclEvent.c + * generic/tclExecute.c + * generic/tclFileName.c + * generic/tclGetDate.y + * generic/tclInterp.c + * generic/tclIO.c + * generic/tclIOCmd.c + * generic/tclIORChan.c + * generic/tclIORTrans.c + * generic/tclLoad.c + * generic/tclObj.c + * generic/tclOOBasic.c + * generic/tclOOCall.c + * generic/tclOOInfo.c + * generic/tclPathObj.c + * generic/tclPkg.c + * generic/tclResult.c + * generic/tclStringObj.c + * generic/tclTest.c + * generic/tclTestObj.c + * generic/tclThreadTest.c + * generic/tclTimer.c + * generic/tclTrace.c + * macosx/tclMacOSXFCmd.c: + * win/cat.c + * win/tclWinInit.c + * win/tclWinTest.c + 2008-10-16 Don Porter * library/init.tcl: Revised [unknown] so that it carefully diff --git a/generic/regc_locale.c b/generic/regc_locale.c index b5a44c4..98df798 100644 --- a/generic/regc_locale.c +++ b/generic/regc_locale.c @@ -9,7 +9,7 @@ * See the file "license.terms" for information on usage and redistribution of * this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: regc_locale.c,v 1.20 2007/12/13 15:23:14 dgp Exp $ + * RCS: @(#) $Id: regc_locale.c,v 1.21 2008/10/16 22:34:18 nijtmans Exp $ */ /* ASCII character-name table */ @@ -790,14 +790,14 @@ cclass( struct cvec *cv = NULL; Tcl_DString ds; const char *np; - const char **namePtr; + const char *const *namePtr; int i, index; /* * The following arrays define the valid character class names. */ - static const char *classNames[] = { + static const char *const classNames[] = { "alnum", "alpha", "ascii", "blank", "cntrl", "digit", "graph", "lower", "print", "punct", "space", "upper", "xdigit", NULL }; diff --git a/generic/tclClock.c b/generic/tclClock.c index d32e786..8b2e259 100644 --- a/generic/tclClock.c +++ b/generic/tclClock.c @@ -12,7 +12,7 @@ * See the file "license.terms" for information on usage and redistribution of * this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tclClock.c,v 1.70 2008/07/21 21:25:21 nijtmans Exp $ + * RCS: @(#) $Id: tclClock.c,v 1.71 2008/10/16 22:34:19 nijtmans Exp $ */ #include "tclInt.h" @@ -121,7 +121,7 @@ typedef struct TclDateFields { int iso8601Week; /* ISO8601 week number */ int dayOfWeek; /* Day of the week */ } TclDateFields; -static const char* eras[] = { "CE", "BCE", NULL }; +static const char *const eras[] = { "CE", "BCE", NULL }; /* * Thread specific data block holding a 'struct tm' for the 'gmtime' and @@ -1688,7 +1688,7 @@ ClockClicksObjCmd( int objc, /* Parameter count */ Tcl_Obj* const* objv) /* Parameter values */ { - static const char *clicksSwitches[] = { + static const char *const clicksSwitches[] = { "-milliseconds", "-microseconds", NULL }; enum ClicksSwitch { @@ -1849,7 +1849,7 @@ ClockParseformatargsObjCmd( /* Command line options expected */ - static const char* options[] = { + static const char *const options[] = { "-format", "-gmt", "-locale", "-timezone", NULL }; enum optionInd { diff --git a/generic/tclCmdIL.c b/generic/tclCmdIL.c index d1174ab..a6ee362 100644 --- a/generic/tclCmdIL.c +++ b/generic/tclCmdIL.c @@ -16,7 +16,7 @@ * See the file "license.terms" for information on usage and redistribution of * this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tclCmdIL.c,v 1.161 2008/10/14 19:26:59 dgp Exp $ + * RCS: @(#) $Id: tclCmdIL.c,v 1.162 2008/10/16 22:34:19 nijtmans Exp $ */ #include "tclInt.h" @@ -209,7 +209,7 @@ Tcl_IfObjCmd( int objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ { - return Tcl_NRCallObjProc(interp, TclNRIfObjCmd, dummy, objc, objv); + return Tcl_NRCallObjProc(interp, TclNRIfObjCmd, dummy, objc, objv); } int @@ -1087,7 +1087,7 @@ InfoFrameCmd( NULL); return TCL_ERROR; } - + /* * Let us convert to relative so that we know how many levels to go back */ @@ -1096,7 +1096,7 @@ InfoFrameCmd( level -= topLevel; } - framePtr = iPtr->cmdFramePtr; + framePtr = iPtr->cmdFramePtr; while (++level <= 0) { framePtr = framePtr->nextPtr; if (!framePtr) { @@ -1137,7 +1137,7 @@ TclInfoFrame( * This array is indexed by the TCL_LOCATION_... values, except * for _LAST. */ - static const char *typeString[TCL_LOCATION_LAST] = { + static const char *const typeString[TCL_LOCATION_LAST] = { "eval", "eval", "eval", "precompiled", "source", "proc" }; Tcl_Obj *tmpObj; @@ -2759,7 +2759,7 @@ Tcl_LsearchObjCmd( Tcl_Obj *patObj, **listv, *listPtr, *startPtr, *itemPtr; SortStrCmpFn_t strCmpFn = strcmp; Tcl_RegExp regexp = NULL; - static const char *options[] = { + static const char *const options[] = { "-all", "-ascii", "-bisect", "-decreasing", "-dictionary", "-exact", "-glob", "-increasing", "-index", "-inline", "-integer", "-nocase", "-not", @@ -3254,7 +3254,7 @@ Tcl_LsearchObjCmd( } else { itemPtr = listv[i]; } - + switch (mode) { case SORTED: case EXACT: @@ -3525,7 +3525,7 @@ Tcl_LsortObjCmd( SortElement *elementArray, *elementPtr; SortInfo sortInfo; /* Information about this sort that needs to * be passed to the comparison function. */ - static const char *switches[] = { + static const char *const switches[] = { "-ascii", "-command", "-decreasing", "-dictionary", "-increasing", "-index", "-indices", "-integer", "-nocase", "-real", "-stride", "-unique", NULL diff --git a/generic/tclConfig.c b/generic/tclConfig.c index 2380430..b2d3fbb 100644 --- a/generic/tclConfig.c +++ b/generic/tclConfig.c @@ -9,7 +9,7 @@ * See the file "license.terms" for information on usage and redistribution of * this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tclConfig.c,v 1.23 2008/10/04 11:34:19 nijtmans Exp $ + * RCS: @(#) $Id: tclConfig.c,v 1.24 2008/10/16 22:34:18 nijtmans Exp $ */ #include "tclInt.h" @@ -214,7 +214,7 @@ QueryConfigObjCmd( Tcl_Obj *pkgName = cdPtr->pkg; Tcl_Obj *pDB, *pkgDict, *val, *listPtr; int n, index; - static const char *subcmdStrings[] = { + static const char *const subcmdStrings[] = { "get", "list", NULL }; enum subcmds { diff --git a/generic/tclDate.c b/generic/tclDate.c index 2b0636b..eabd37a 100644 --- a/generic/tclDate.c +++ b/generic/tclDate.c @@ -235,7 +235,7 @@ typedef struct DateInfo { */ typedef struct _TABLE { - char *name; + const char *name; int type; time_t value; } TABLE; @@ -261,7 +261,7 @@ typedef enum _MERIDIAN { */ static int LookupWord(char *buff); -static void TclDateerror(char *s); +static void TclDateerror(const char *s); static int TclDatelex(void *info); static time_t ToSeconds(time_t Hours, time_t Minutes, time_t Seconds, MERIDIAN Meridian); @@ -2451,7 +2451,7 @@ static TABLE MilitaryTable[] = { static void TclDateerror( - char *s) + const char *s) { } diff --git a/generic/tclEncoding.c b/generic/tclEncoding.c index 456c8a4..a1b43cb 100644 --- a/generic/tclEncoding.c +++ b/generic/tclEncoding.c @@ -8,7 +8,7 @@ * See the file "license.terms" for information on usage and redistribution of * this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tclEncoding.c,v 1.61 2008/06/11 01:30:11 jenglish Exp $ + * RCS: @(#) $Id: tclEncoding.c,v 1.62 2008/10/16 22:34:19 nijtmans Exp $ */ #include "tclInt.h" @@ -277,7 +277,7 @@ static int Iso88591ToUtfProc(ClientData clientData, * See concerns raised in [Bug 1077262]. */ -static Tcl_ObjType encodingType = { +static const Tcl_ObjType encodingType = { "encoding", FreeEncodingIntRep, DupEncodingIntRep, NULL, NULL }; diff --git a/generic/tclEvent.c b/generic/tclEvent.c index 9e38f24..3d29cb5 100644 --- a/generic/tclEvent.c +++ b/generic/tclEvent.c @@ -12,7 +12,7 @@ * See the file "license.terms" for information on usage and redistribution of * this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tclEvent.c,v 1.83 2008/08/01 18:22:28 hobbs Exp $ + * RCS: @(#) $Id: tclEvent.c,v 1.84 2008/10/16 22:34:19 nijtmans Exp $ */ #include "tclInt.h" @@ -416,7 +416,7 @@ TclDefaultBgErrorHandlerObjCmd( */ saved = Tcl_SaveInterpState(interp, code); - + /* Invoke the bgerror command. */ Tcl_AllowExceptions(interp); code = Tcl_EvalObjv(interp, 2, tempObjv, TCL_EVAL_GLOBAL); @@ -1325,7 +1325,7 @@ Tcl_UpdateObjCmd( { int optionIndex; int flags = 0; /* Initialized to avoid compiler warning. */ - static const char *updateOptions[] = {"idletasks", NULL}; + static const char *const updateOptions[] = {"idletasks", NULL}; enum updateOptions {REGEXP_IDLETASKS}; if (objc == 1) { diff --git a/generic/tclExecute.c b/generic/tclExecute.c index 674cd56..2daa7ed 100644 --- a/generic/tclExecute.c +++ b/generic/tclExecute.c @@ -14,7 +14,7 @@ * See the file "license.terms" for information on usage and redistribution of * this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tclExecute.c,v 1.416 2008/10/14 19:26:59 dgp Exp $ + * RCS: @(#) $Id: tclExecute.c,v 1.417 2008/10/16 22:34:18 nijtmans Exp $ */ #include "tclInt.h" @@ -514,7 +514,7 @@ VarHashCreateVar( * be seen by user scripts. */ -static Tcl_ObjType dictIteratorType = { +static const Tcl_ObjType dictIteratorType = { "dictIterator", NULL, NULL, NULL, NULL }; @@ -689,7 +689,7 @@ static Tcl_Obj ** StackReallocWords(Tcl_Interp *interp, int numWords); * compiled bytecode for Tcl expressions. */ -static Tcl_ObjType exprCodeType = { +static const Tcl_ObjType exprCodeType = { "exprcode", FreeExprCodeInternalRep, /* freeIntRepProc */ DupExprCodeInternalRep, /* dupIntRepProc */ @@ -1851,7 +1851,7 @@ TclExecuteByteCode( initLevel = 0; nested = 1; - + oldBottomPtr = iPtr->execEnvPtr->bottomPtr; iPtr->execEnvPtr->corPtr->stackLevel = &initLevel; if (iPtr->execEnvPtr->rewind) { @@ -1859,7 +1859,7 @@ TclExecuteByteCode( } goto returnToCaller; } - + nonRecursiveCallStart: if (nested) { TEOV_callback *callbackPtr = TOP_CB(interp); @@ -1881,7 +1881,7 @@ TclExecuteByteCode( * A request to run a bytecode: record this level's state * variables, swap codePtr and start running the new one. */ - + codePtr = param; break; case TCL_NR_ATEXIT_TYPE: { @@ -1889,11 +1889,11 @@ TclExecuteByteCode( * A request to perform a command at exit: put it in the stack * and continue exec'ing the current bytecode */ - + TEOV_callback *newPtr = TOP_CB(interp); TOP_CB(interp) = newPtr->nextPtr; - + #ifdef TCL_COMPILE_DEBUG if (traceInstructions) { fprintf(stdout, " atProcExit request received\n"); @@ -1909,9 +1909,9 @@ TclExecuteByteCode( * A request to perform a tailcall: put it at the front of the * atExit stack and abandon the current bytecode. */ - + TEOV_callback *newPtr = TOP_CB(interp); - + TOP_CB(interp) = newPtr->nextPtr; isTailcall = 1; #ifdef TCL_COMPILE_DEBUG @@ -1926,7 +1926,7 @@ TclExecuteByteCode( TCL_STATIC); goto checkForCatch; } - + newPtr->nextPtr = NULL; if (!bottomPtr->atExitPtr) { newPtr->nextPtr = NULL; @@ -1935,9 +1935,9 @@ TclExecuteByteCode( /* * There are already atExit callbacks: run last. */ - + TEOV_callback *tmpPtr = bottomPtr->atExitPtr; - + while (tmpPtr->nextPtr) { tmpPtr = tmpPtr->nextPtr; } @@ -1947,11 +1947,11 @@ TclExecuteByteCode( } case TCL_NR_YIELD_TYPE: { /*[yield] */ CoroutineData *corPtr = iPtr->execEnvPtr->corPtr; - + if (!corPtr) { Tcl_SetResult(interp, "yield can only be called in a coroutine", TCL_STATIC); - Tcl_SetErrorCode(interp, "COROUTINE_ILLEGAL_YIELD", NULL); + Tcl_SetErrorCode(interp, "COROUTINE_ILLEGAL_YIELD", NULL); result = TCL_ERROR; goto checkForCatch; } @@ -1961,13 +1961,13 @@ TclExecuteByteCode( if (corPtr->stackLevel != &initLevel) { Tcl_SetResult(interp, "cannot yield: C stack busy", TCL_STATIC); - Tcl_SetErrorCode(interp, "COROUTINE_CANT_YIELD", NULL); + Tcl_SetErrorCode(interp, "COROUTINE_CANT_YIELD", NULL); result = TCL_ERROR; goto checkForCatch; } /* - * Save our state, restore the caller's execEnv and return + * Save our state, restore the caller's execEnv and return */ NR_DATA_BURY(); @@ -1992,7 +1992,7 @@ TclExecuteByteCode( auxObjList = NULL; initLevel = 1; NR_DATA_INIT(); /* record this level's data */ - + if (iPtr->execEnvPtr->corPtr && !iPtr->execEnvPtr->corPtr->stackLevel) { iPtr->execEnvPtr->corPtr->stackLevel = &initLevel; } @@ -2708,9 +2708,9 @@ TclExecuteByteCode( /* * Fix for [Bug 2102930] */ - + iPtr->numLevels++; - Tcl_NRAddCallback(interp, NRCommand, NULL, NULL, NULL, NULL); + Tcl_NRAddCallback(interp, NRCommand, NULL, NULL, NULL, NULL); goto doInvocationFromEval; } } @@ -2819,7 +2819,7 @@ TclExecuteByteCode( iPtr->cmdFramePtr = iPtr->cmdFramePtr->nextPtr; NRE_ASSERT(iPtr->cmdFramePtr == bcFramePtr->nextPtr); - + iPtr->execEnvPtr->bottomPtr = bottomPtr; if (result == TCL_OK) { @@ -7682,7 +7682,7 @@ TclExecuteByteCode( checkForCatch: if (iPtr->execEnvPtr->rewind) { goto abnormalReturn; - } + } if ((result == TCL_ERROR) && !(iPtr->flags & ERR_ALREADY_LOGGED)) { bytes = GetSrcInfoForPc(pc, codePtr, &length); if (bytes != NULL) { @@ -7902,18 +7902,18 @@ TclExecuteByteCode( NRE_ASSERT(result == TCL_OK); switch (type) { - case TCL_NR_BC_TYPE: + case TCL_NR_BC_TYPE: /* * One of the callbacks requested a new execution: a tailcall! * Start the new bytecode. */ - + goto nonRecursiveCallStart; case TCL_NR_ATEXIT_TYPE: case TCL_NR_TAILCALL_TYPE: TOP_CB(iPtr) = callbackPtr->nextPtr; TCLNR_FREE(interp, callbackPtr); - + Tcl_SetResult(interp, "atProcExit/tailcall cannot be invoked recursively", TCL_STATIC); result = TCL_ERROR; @@ -7930,7 +7930,7 @@ TclExecuteByteCode( /* save the interp state, arrange for restoring it after running the callbacks. Put the callback at the bottom of the atExit stack */ - + Tcl_InterpState state = Tcl_SaveInterpState(interp, result); TEOV_callback *lastPtr = atExitPtr; @@ -7938,7 +7938,7 @@ TclExecuteByteCode( lastPtr = lastPtr->nextPtr; } NRE_ASSERT(lastPtr->nextPtr == NULL); - + TclNRAddCallback(interp, NRRestoreInterpState, state, NULL, NULL, NULL); lastPtr->nextPtr = TOP_CB(iPtr); diff --git a/generic/tclFileName.c b/generic/tclFileName.c index 0c29459..cca1a9b 100644 --- a/generic/tclFileName.c +++ b/generic/tclFileName.c @@ -10,7 +10,7 @@ * See the file "license.terms" for information on usage and redistribution of * this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tclFileName.c,v 1.93 2008/09/29 16:03:30 dgp Exp $ + * RCS: @(#) $Id: tclFileName.c,v 1.94 2008/10/16 22:34:19 nijtmans Exp $ */ #include "tclInt.h" @@ -1212,7 +1212,7 @@ Tcl_GlobObjCmd( Tcl_Obj *typePtr, *resultPtr, *look; Tcl_Obj *pathOrDir = NULL; Tcl_DString prefix; - static const char *options[] = { + static const char *const options[] = { "-directory", "-join", "-nocomplain", "-path", "-tails", "-types", "--", NULL }; @@ -1897,7 +1897,7 @@ TclGlob( */ if (types == NULL) { - /* + /* * We just want to check for existence. In this case we make it * easy on Tcl_FSMatchInDirectory and its sub-implementations by * not bothering them (even though they should support this @@ -1910,7 +1910,7 @@ TclGlob( } result = TCL_OK; } else { - /* + /* * We want to check for the correct type. Tcl_FSMatchInDirectory * is documented to do this for us, if we give it a NULL pattern. */ @@ -1960,7 +1960,7 @@ TclGlob( if (pathPrefix == NULL) { Tcl_Panic("Called TclGlob with TCL_GLOBMODE_TAILS and pathPrefix==NULL"); } - + pre = Tcl_GetStringFromObj(pathPrefix, &prefixLen); if (prefixLen > 0 && (strchr(separators, pre[prefixLen-1]) == NULL)) { diff --git a/generic/tclGetDate.y b/generic/tclGetDate.y index 119b406..af20a61 100644 --- a/generic/tclGetDate.y +++ b/generic/tclGetDate.y @@ -13,7 +13,7 @@ * See the file "license.terms" for information on usage and redistribution of * this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tclGetDate.y,v 1.38 2007/12/13 15:23:17 dgp Exp $ + * RCS: @(#) $Id: tclGetDate.y,v 1.39 2008/10/16 22:34:18 nijtmans Exp $ */ %{ @@ -132,7 +132,7 @@ typedef struct DateInfo { */ typedef struct _TABLE { - char *name; + const char *name; int type; time_t value; } TABLE; @@ -158,7 +158,7 @@ typedef enum _MERIDIAN { */ static int LookupWord(char *buff); -static void TclDateerror(char *s); +static void TclDateerror(const char *s); static int TclDatelex(void *info); static time_t ToSeconds(time_t Hours, time_t Minutes, time_t Seconds, MERIDIAN Meridian); @@ -675,7 +675,7 @@ static TABLE MilitaryTable[] = { static void TclDateerror( - char *s) + const char *s) { } diff --git a/generic/tclIO.c b/generic/tclIO.c index c69a8e2..7ec28c8 100644 --- a/generic/tclIO.c +++ b/generic/tclIO.c @@ -10,7 +10,7 @@ * See the file "license.terms" for information on usage and redistribution of * this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tclIO.c,v 1.144 2008/10/04 12:33:34 nijtmans Exp $ + * RCS: @(#) $Id: tclIO.c,v 1.145 2008/10/16 22:34:19 nijtmans Exp $ */ #include "tclInt.h" @@ -8346,7 +8346,7 @@ Tcl_FileEventObjCmd( char *chanName; int modeIndex; /* Index of mode argument. */ int mask; - static const char *modeOptions[] = {"readable", "writable", NULL}; + static const char *const modeOptions[] = {"readable", "writable", NULL}; static int maskArray[] = {TCL_READABLE, TCL_WRITABLE}; if ((objc != 3) && (objc != 4)) { diff --git a/generic/tclIOCmd.c b/generic/tclIOCmd.c index 6bbf780..dbc9bb1 100644 --- a/generic/tclIOCmd.c +++ b/generic/tclIOCmd.c @@ -8,7 +8,7 @@ * See the file "license.terms" for information on usage and redistribution of * this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tclIOCmd.c,v 1.58 2008/07/21 21:58:22 das Exp $ + * RCS: @(#) $Id: tclIOCmd.c,v 1.59 2008/10/16 22:34:19 nijtmans Exp $ */ #include "tclInt.h" @@ -521,7 +521,7 @@ Tcl_SeekObjCmd( int mode; /* How to seek? */ Tcl_WideInt result; /* Of calling Tcl_Seek. */ int optionIndex; - static const char *originOptions[] = { + static const char *const originOptions[] = { "start", "current", "end", NULL }; static int modeArray[] = {SEEK_SET, SEEK_CUR, SEEK_END}; @@ -841,7 +841,7 @@ Tcl_ExecObjCmd( Tcl_Channel chan; int argc, background, i, index, keepNewline, result, skip, length; int ignoreStderr; - static const char *options[] = { + static const char *const options[] = { "-ignorestderr", "-keepnewline", "--", NULL }; enum options { @@ -1418,7 +1418,7 @@ Tcl_SocketObjCmd( int objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ { - static const char *socketOptions[] = { + static const char *const socketOptions[] = { "-async", "-myaddr", "-myport","-server", NULL }; enum socketOptions { @@ -1600,7 +1600,7 @@ Tcl_FcopyObjCmd( Tcl_Channel inChan, outChan; int mode, i, toRead, index; Tcl_Obj *cmdPtr; - static const char* switches[] = { "-size", "-command", NULL }; + static const char *const switches[] = { "-size", "-command", NULL }; enum { FcopySize, FcopyCommand }; if ((objc < 3) || (objc > 7) || (objc == 4) || (objc == 6)) { @@ -1691,7 +1691,7 @@ ChanPendingObjCmd( { Tcl_Channel chan; int index, mode; - static const char *options[] = {"input", "output", NULL}; + static const char *const options[] = {"input", "output", NULL}; enum options {PENDING_INPUT, PENDING_OUTPUT}; if (objc != 3) { @@ -1900,7 +1900,7 @@ TclInitChanCmd( {"truncate", ChanTruncateObjCmd}, /* TIP #208 */ {NULL} }; - static const char *extras[] = { + static const char *const extras[] = { "configure", "::fconfigure", "names", "::file channels", NULL diff --git a/generic/tclIORChan.c b/generic/tclIORChan.c index a30469b..679f393 100644 --- a/generic/tclIORChan.c +++ b/generic/tclIORChan.c @@ -15,7 +15,7 @@ * See the file "license.terms" for information on usage and redistribution of * this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tclIORChan.c,v 1.34 2008/07/03 17:38:38 andreas_kupries Exp $ + * RCS: @(#) $Id: tclIORChan.c,v 1.35 2008/10/16 22:34:19 nijtmans Exp $ */ #include @@ -161,7 +161,7 @@ typedef struct { * Event literals. ================================================== */ -static const char *eventOptions[] = { +static const char *const eventOptions[] = { "read", "write", NULL }; typedef enum { @@ -172,7 +172,7 @@ typedef enum { * Method literals. ================================================== */ -static const char *methodNames[] = { +static const char *const methodNames[] = { "blocking", /* OPT */ "cget", /* OPT \/ Together or none */ "cgetall", /* OPT /\ of these two */ @@ -2737,12 +2737,12 @@ ForwardProc( */ rcmPtr = GetReflectedChannelMap(interp); - hPtr = Tcl_FindHashEntry(&rcmPtr->map, + hPtr = Tcl_FindHashEntry(&rcmPtr->map, Tcl_GetChannelName(rcPtr->chan)); Tcl_DeleteHashEntry(hPtr); rcmPtr = GetThreadReflectedChannelMap(); - hPtr = Tcl_FindHashEntry(&rcmPtr->map, + hPtr = Tcl_FindHashEntry(&rcmPtr->map, Tcl_GetChannelName(rcPtr->chan)); Tcl_DeleteHashEntry(hPtr); diff --git a/generic/tclIORTrans.c b/generic/tclIORTrans.c index 89af0d5..bb7aebd 100644 --- a/generic/tclIORTrans.c +++ b/generic/tclIORTrans.c @@ -15,7 +15,7 @@ * See the file "license.terms" for information on usage and redistribution of * this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tclIORTrans.c,v 1.3 2008/06/12 06:28:41 das Exp $ + * RCS: @(#) $Id: tclIORTrans.c,v 1.4 2008/10/16 22:34:19 nijtmans Exp $ */ #include @@ -187,7 +187,7 @@ typedef struct { * Method literals. ================================================== */ -static const char *methodNames[] = { +static const char *const methodNames[] = { "clear", /* OPT */ "drain", /* OPT, drain => read */ "finalize", /* */ @@ -987,7 +987,7 @@ ReflectClose( */ rtmPtr = GetReflectedTransformMap(interp); - hPtr = Tcl_FindHashEntry (&rtmPtr->map, + hPtr = Tcl_FindHashEntry (&rtmPtr->map, Tcl_GetString(rtPtr->handle)); if (hPtr) { Tcl_DeleteHashEntry (hPtr); @@ -998,9 +998,9 @@ ReflectClose( * allow us to survive if the script level pulls the rug out under a * channel by deleting the owning thread. */ - + rtmPtr = GetThreadReflectedTransformMap(); - hPtr = Tcl_FindHashEntry (&rtmPtr->map, + hPtr = Tcl_FindHashEntry (&rtmPtr->map, Tcl_GetString(rtPtr->handle)); if (hPtr) { Tcl_DeleteHashEntry (hPtr); @@ -1120,7 +1120,7 @@ ReflectInput( } *errorCodePtr = Tcl_GetErrno (); - return -1; + return -1; } if (read == 0) { @@ -1490,7 +1490,7 @@ ReflectSetOption( * level is not involved there is no need for thread forwarding. */ - Tcl_DriverSetOptionProc *setOptionProc = + Tcl_DriverSetOptionProc *setOptionProc = Tcl_ChannelSetOptionProc (Tcl_GetChannelType (rtPtr->parent)); if (setOptionProc != NULL) { @@ -1537,7 +1537,7 @@ ReflectGetOption( * specific option has to fail. */ - Tcl_DriverGetOptionProc *getOptionProc = + Tcl_DriverGetOptionProc *getOptionProc = Tcl_ChannelGetOptionProc (Tcl_GetChannelType (rtPtr->parent)); if (getOptionProc != NULL) { @@ -1725,7 +1725,7 @@ NewReflectedTransform( rtPtr->timer = (Tcl_TimerToken) NULL; rtPtr->mode = 0; rtPtr->readIsDrained = 0; - rtPtr->nonblocking = + rtPtr->nonblocking = (((Channel*) parentChan)->state->flags & CHANNEL_NONBLOCKING); /* Query parent for current blocking mode. */ @@ -2489,7 +2489,7 @@ ForwardProc( */ rtmPtr = GetReflectedTransformMap (interp); - hPtr = Tcl_FindHashEntry (&rtmPtr->map, + hPtr = Tcl_FindHashEntry (&rtmPtr->map, Tcl_GetString(rtPtr->handle)); Tcl_DeleteHashEntry (hPtr); @@ -2500,7 +2500,7 @@ ForwardProc( */ rtmPtr = GetThreadReflectedTransformMap(); - hPtr = Tcl_FindHashEntry (&rtmPtr->map, + hPtr = Tcl_FindHashEntry (&rtmPtr->map, Tcl_GetString(rtPtr->handle)); Tcl_DeleteHashEntry (hPtr); FreeReflectedTransform(rtPtr); diff --git a/generic/tclInterp.c b/generic/tclInterp.c index 4f15134..84cc8d1 100644 --- a/generic/tclInterp.c +++ b/generic/tclInterp.c @@ -10,7 +10,7 @@ * See the file "license.terms" for information on usage and redistribution * of this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tclInterp.c,v 1.96 2008/08/03 17:33:12 msofer Exp $ + * RCS: @(#) $Id: tclInterp.c,v 1.97 2008/10/16 22:34:18 nijtmans Exp $ */ #include "tclInt.h" @@ -559,7 +559,7 @@ Tcl_InterpObjCmd( Tcl_Obj *const objv[]) /* Argument objects. */ { int index; - static const char *options[] = { + static const char *const options[] = { "alias", "aliases", "bgerror", "cancel", "create", "delete", "eval", "exists", "expose", "hide", "hidden", "issafe", @@ -645,7 +645,7 @@ Tcl_InterpObjCmd( int i, flags; Tcl_Interp *slaveInterp; Tcl_Obj *resultObjPtr; - static const char *options[] = { + static const char *const options[] = { "-unwind", "--", NULL }; enum option { @@ -686,7 +686,7 @@ Tcl_InterpObjCmd( /* * Did they specify a slave interp to cancel the script in - * progress in? If not, use the current interp. + * progress in? If not, use the current interp. */ if (i < objc) { @@ -714,7 +714,7 @@ Tcl_InterpObjCmd( int i, last, safe; Tcl_Obj *slavePtr; char buf[16 + TCL_INTEGER_SPACE]; - static const char *options[] = { + static const char *const options[] = { "-safe", "--", NULL }; enum option { @@ -876,7 +876,7 @@ Tcl_InterpObjCmd( int i, index; const char *namespaceName; Tcl_Interp *slaveInterp; - static const char *hiddenOptions[] = { + static const char *const hiddenOptions[] = { "-global", "-namespace", "--", NULL }; enum hiddenOption { @@ -919,7 +919,7 @@ Tcl_InterpObjCmd( } case OPT_LIMIT: { Tcl_Interp *slaveInterp; - static const char *limitTypes[] = { + static const char *const limitTypes[] = { "commands", "time", NULL }; enum LimitTypes { @@ -1487,7 +1487,7 @@ AliasCreate( if (slaveInterp == masterInterp) { aliasPtr->slaveCmd = Tcl_NRCreateCommand(slaveInterp, - TclGetString(namePtr), AliasObjCmd, AliasNRCmd, aliasPtr, + TclGetString(namePtr), AliasObjCmd, AliasNRCmd, aliasPtr, AliasObjCmdDeleteProc); } else { aliasPtr->slaveCmd = Tcl_CreateObjCommand(slaveInterp, @@ -1762,7 +1762,7 @@ AliasNRCmd( Tcl_Obj *listPtr; List *listRep; int flags = TCL_EVAL_INVOKE; - + /* * Append the arguments to the command prefix and invoke the command in * the target interp's global namespace. @@ -1776,7 +1776,7 @@ AliasNRCmd( listRep = listPtr->internalRep.twoPtrValue.ptr1; listRep->elemCount = cmdc; cmdv = &listRep->elements; - + prefv = &aliasPtr->objPtr; memcpy(cmdv, prefv, (size_t) (prefc * sizeof(Tcl_Obj *))); memcpy(cmdv+prefc, objv+1, (size_t) ((objc-1) * sizeof(Tcl_Obj *))); @@ -2368,7 +2368,7 @@ SlaveObjCmd( { Tcl_Interp *slaveInterp = clientData; int index; - static const char *options[] = { + static const char *const options[] = { "alias", "aliases", "bgerror", "eval", "expose", "hide", "hidden", "issafe", "invokehidden", "limit", "marktrusted", "recursionlimit", NULL @@ -2455,7 +2455,7 @@ SlaveObjCmd( case OPT_INVOKEHIDDEN: { int i, index; const char *namespaceName; - static const char *hiddenOptions[] = { + static const char *const hiddenOptions[] = { "-global", "-namespace", "--", NULL }; enum hiddenOption { @@ -2493,7 +2493,7 @@ SlaveObjCmd( objc - i, objv + i); } case OPT_LIMIT: { - static const char *limitTypes[] = { + static const char *const limitTypes[] = { "commands", "time", NULL }; enum LimitTypes { @@ -2617,7 +2617,7 @@ SlaveEval( * * Do not let any intReps accross, with the exception of * bytecodes. The intrep spoiling is due to happen anyway when - * compiling. + * compiling. */ Interp *iPtr = (Interp *) interp; @@ -2634,7 +2634,7 @@ SlaveEval( } TclArgumentGet (interp, objPtr, &invoker, &word); - + result = TclEvalObjEx(slaveInterp, objPtr, 0, invoker, word); } else { objPtr = Tcl_ConcatObj(objc, objv); @@ -4152,7 +4152,7 @@ SlaveCommandLimitCmd( int objc, /* Total number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ { - static const char *options[] = { + static const char *const options[] = { "-command", "-granularity", "-value", NULL }; enum Options { @@ -4323,7 +4323,7 @@ SlaveTimeLimitCmd( int objc, /* Total number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ { - static const char *options[] = { + static const char *const options[] = { "-command", "-granularity", "-milliseconds", "-seconds", NULL }; enum Options { diff --git a/generic/tclLoad.c b/generic/tclLoad.c index 479c1fb..36a61b0 100644 --- a/generic/tclLoad.c +++ b/generic/tclLoad.c @@ -9,7 +9,7 @@ * See the file "license.terms" for information on usage and redistribution of * this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tclLoad.c,v 1.19 2008/10/04 12:54:14 nijtmans Exp $ + * RCS: @(#) $Id: tclLoad.c,v 1.20 2008/10/16 22:34:18 nijtmans Exp $ */ #include "tclInt.h" @@ -506,7 +506,7 @@ Tcl_UnloadObjCmd( int trustedRefCount = -1, safeRefCount = -1; const char *fullFileName = ""; char *packageName; - static const char *options[] = { + static const char *const options[] = { "-nocomplain", "-keeplibrary", "--", NULL }; enum options { diff --git a/generic/tclOOBasic.c b/generic/tclOOBasic.c index 2d224dd..cbece15 100644 --- a/generic/tclOOBasic.c +++ b/generic/tclOOBasic.c @@ -9,7 +9,7 @@ * See the file "license.terms" for information on usage and redistribution of * this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tclOOBasic.c,v 1.12 2008/10/04 12:00:25 dkf Exp $ + * RCS: @(#) $Id: tclOOBasic.c,v 1.13 2008/10/16 22:34:18 nijtmans Exp $ */ #ifdef HAVE_CONFIG_H @@ -688,7 +688,7 @@ TclOOSelfObjCmd( int objc, Tcl_Obj *const *objv) { - static const char *subcmds[] = { + static const char *const subcmds[] = { "caller", "class", "filter", "method", "namespace", "next", "object", "target", NULL }; diff --git a/generic/tclOOCall.c b/generic/tclOOCall.c index 8c6c15b..c4b9ab2 100644 --- a/generic/tclOOCall.c +++ b/generic/tclOOCall.c @@ -9,7 +9,7 @@ * See the file "license.terms" for information on usage and redistribution of * this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tclOOCall.c,v 1.12 2008/09/25 10:15:04 dkf Exp $ + * RCS: @(#) $Id: tclOOCall.c,v 1.13 2008/10/16 22:34:18 nijtmans Exp $ */ #ifdef HAVE_CONFIG_H @@ -81,7 +81,7 @@ static inline void StashCallChain(Tcl_Obj *objPtr, CallChain *callPtr); * Object type used to manage type caches attached to method names. */ -static Tcl_ObjType methodNameType = { +static const Tcl_ObjType methodNameType = { "TclOO method name", FreeMethodNameRep, DupMethodNameRep, diff --git a/generic/tclOOInfo.c b/generic/tclOOInfo.c index d994e94..583907b 100644 --- a/generic/tclOOInfo.c +++ b/generic/tclOOInfo.c @@ -9,7 +9,7 @@ * See the file "license.terms" for information on usage and redistribution of * this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tclOOInfo.c,v 1.9 2008/10/13 21:10:43 dkf Exp $ + * RCS: @(#) $Id: tclOOInfo.c,v 1.10 2008/10/16 22:34:18 nijtmans Exp $ */ #ifdef HAVE_CONFIG_H @@ -415,7 +415,7 @@ InfoObjectIsACmd( int objc, Tcl_Obj *const objv[]) { - static const char *categories[] = { + static const char *const categories[] = { "class", "metaclass", "mixin", "object", "typeof", NULL }; enum IsACats { @@ -540,7 +540,7 @@ InfoObjectMethodsCmd( FOREACH_HASH_DECLS; Tcl_Obj *namePtr, *resultObj; Method *mPtr; - static const char *options[] = { + static const char *const options[] = { "-all", "-localprivate", "-private", NULL }; enum Options { @@ -1058,7 +1058,7 @@ InfoClassMethodsCmd( Tcl_Obj *namePtr, *resultObj; Method *mPtr; Class *clsPtr; - static const char *options[] = { + static const char *const options[] = { "-all", "-localprivate", "-private", NULL }; enum Options { diff --git a/generic/tclObj.c b/generic/tclObj.c index a92ea7e..c5fef11 100644 --- a/generic/tclObj.c +++ b/generic/tclObj.c @@ -13,7 +13,7 @@ * See the file "license.terms" for information on usage and redistribution of * this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tclObj.c,v 1.143 2008/10/15 06:17:03 nijtmans Exp $ + * RCS: @(#) $Id: tclObj.c,v 1.144 2008/10/16 22:34:19 nijtmans Exp $ */ #include "tclInt.h" @@ -2227,7 +2227,7 @@ Tcl_GetLongFromObj( tooLarge: #endif if (interp != NULL) { - char *s = "integer value too large to represent"; + const char *s = "integer value too large to represent"; Tcl_Obj *msg = Tcl_NewStringObj(s, -1); Tcl_SetObjResult(interp, msg); @@ -2526,7 +2526,7 @@ Tcl_GetWideIntFromObj( } } if (interp != NULL) { - char *s = "integer value too large to represent"; + const char *s = "integer value too large to represent"; Tcl_Obj *msg = Tcl_NewStringObj(s, -1); Tcl_SetObjResult(interp, msg); diff --git a/generic/tclPathObj.c b/generic/tclPathObj.c index 1ac1496..3839429 100644 --- a/generic/tclPathObj.c +++ b/generic/tclPathObj.c @@ -10,7 +10,7 @@ * See the file "license.terms" for information on usage and redistribution of * this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tclPathObj.c,v 1.73 2008/07/28 21:31:19 nijtmans Exp $ + * RCS: @(#) $Id: tclPathObj.c,v 1.74 2008/10/16 22:34:19 nijtmans Exp $ */ #include "tclInt.h" @@ -34,7 +34,7 @@ static Tcl_Obj * GetExtension(Tcl_Obj *pathPtr); * internally. */ -static Tcl_ObjType tclFsPathType = { +static const Tcl_ObjType tclFsPathType = { "path", /* name */ FreeFsPathInternalRep, /* freeIntRepProc */ DupFsPathInternalRep, /* dupIntRepProc */ diff --git a/generic/tclPkg.c b/generic/tclPkg.c index 346d113..558ccd9 100644 --- a/generic/tclPkg.c +++ b/generic/tclPkg.c @@ -10,7 +10,7 @@ * See the file "license.terms" for information on usage and redistribution of * this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tclPkg.c,v 1.37 2008/07/19 22:50:39 nijtmans Exp $ + * RCS: @(#) $Id: tclPkg.c,v 1.38 2008/10/16 22:34:18 nijtmans Exp $ * * TIP #268. * Heavily rewritten to handle the extend version numbers, and extended @@ -742,7 +742,7 @@ Tcl_PackageObjCmd( int objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ { - static const char *pkgOptions[] = { + static const char *const pkgOptions[] = { "forget", "ifneeded", "names", "prefer", "present", "provide", "require", "unknown", "vcompare", "versions", "vsatisfies", NULL @@ -1015,7 +1015,7 @@ Tcl_PackageObjCmd( break; } case PKG_PREFER: { - static const char *pkgPreferOptions[] = { + static const char *const pkgPreferOptions[] = { "latest", "stable", NULL }; diff --git a/generic/tclResult.c b/generic/tclResult.c index b91d6ef..b0a8836 100644 --- a/generic/tclResult.c +++ b/generic/tclResult.c @@ -8,7 +8,7 @@ * See the file "license.terms" for information on usage and redistribution of * this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tclResult.c,v 1.49 2008/10/02 20:59:45 dgp Exp $ + * RCS: @(#) $Id: tclResult.c,v 1.50 2008/10/16 22:34:19 nijtmans Exp $ */ #include "tclInt.h" @@ -1336,7 +1336,7 @@ TclMergeReturnOptions( Tcl_DictObjGet(NULL, returnOpts, keys[KEY_CODE], &valuePtr); if ((valuePtr != NULL) && (TCL_ERROR == TclGetIntFromObj(NULL, valuePtr, &code))) { - static const char *returnCodes[] = { + static const char *const returnCodes[] = { "ok", "error", "return", "break", "continue", NULL }; diff --git a/generic/tclStringObj.c b/generic/tclStringObj.c index 4a7d0f4..b017347 100644 --- a/generic/tclStringObj.c +++ b/generic/tclStringObj.c @@ -33,7 +33,7 @@ * See the file "license.terms" for information on usage and redistribution of * this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tclStringObj.c,v 1.72 2008/10/15 06:17:04 nijtmans Exp $ */ + * RCS: @(#) $Id: tclStringObj.c,v 1.73 2008/10/16 22:34:19 nijtmans Exp $ */ #include "tclInt.h" #include "tommath.h" @@ -1702,7 +1702,7 @@ Tcl_AppendFormatToObj( int originalLength; static const char *mixedXPG = "cannot mix \"%\" and \"%n$\" conversion specifiers"; - static const char *badIndex[2] = { + static const char *const badIndex[2] = { "not enough arguments for all format specifiers", "\"%n$\" argument index out of range" }; diff --git a/generic/tclTest.c b/generic/tclTest.c index 74d255e..1ddfb5f 100644 --- a/generic/tclTest.c +++ b/generic/tclTest.c @@ -14,7 +14,7 @@ * See the file "license.terms" for information on usage and redistribution of * this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tclTest.c,v 1.127 2008/10/13 22:05:59 patthoyts Exp $ + * RCS: @(#) $Id: tclTest.c,v 1.128 2008/10/16 22:34:19 nijtmans Exp $ */ #define TCL_TEST @@ -527,7 +527,7 @@ Tcltest_Init( Tcl_Obj *listPtr; Tcl_Obj **objv; int objc, index; - static const char *specialOptions[] = { + static const char *const specialOptions[] = { "-appinitprocerror", "-appinitprocdeleteinterp", "-appinitprocclosestderr", "-appinitprocsetrcfile", NULL }; @@ -1726,7 +1726,7 @@ TestencodingObjCmd( int index, length; char *string; TclEncoding *encodingPtr; - static const char *optionStrings[] = { + static const char *const optionStrings[] = { "create", "delete", NULL }; enum options { @@ -1974,11 +1974,11 @@ TesteventObjCmd( int objc, /* Parameter count */ Tcl_Obj *const objv[]) /* Parameter vector */ { - static const char *subcommands[] = { /* Possible subcommands */ + static const char *const subcommands[] = { /* Possible subcommands */ "queue", "delete", NULL }; int subCmdIndex; /* Index of the chosen subcommand */ - static const char *positions[] = { /* Possible queue positions */ + static const char *const positions[] = { /* Possible queue positions */ "head", "tail", "mark", NULL }; int posIndex; /* Index of the chosen position */ @@ -2529,7 +2529,7 @@ TestgetplatformCmd( int argc, /* Number of arguments. */ const char **argv) /* Argument strings. */ { - static const char *platformStrings[] = { "unix", "mac", "windows" }; + static const char *const platformStrings[] = { "unix", "mac", "windows" }; TclPlatformType *platform; platform = TclGetPlatform(); @@ -3082,7 +3082,7 @@ TestlocaleCmd( int index; char *locale; - static const char *optionStrings[] = { + static const char *const optionStrings[] = { "ctype", "numeric", "time", "collate", "monetary", "all", NULL }; @@ -3421,7 +3421,7 @@ PrintParse( Tcl_Parse *parsePtr) /* Parse structure to print out. */ { Tcl_Obj *objPtr; - char *typeString; + const char *typeString; Tcl_Token *tokenPtr; int i; @@ -3619,7 +3619,7 @@ TestregexpObjCmd( char *string; Tcl_Obj *objPtr; Tcl_RegExpInfo info; - static const char *options[] = { + static const char *const options[] = { "-indices", "-nocase", "-about", "-expanded", "-line", "-linestop", "-lineanchor", "-xflags", @@ -4852,7 +4852,7 @@ TestsaveresultCmd( int discard, result, index; Tcl_SavedResult state; Tcl_Obj *objPtr; - static const char *optionStrings[] = { + static const char *const optionStrings[] = { "append", "dynamic", "free", "object", "small", NULL }; enum options { @@ -5836,7 +5836,7 @@ TestGetIndexFromObjStructObjCmd( int objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ { - char *ary[] = { + const char *const ary[] = { "a", "b", "c", "d", "e", "f", NULL, NULL }; int idx,target; @@ -5891,7 +5891,7 @@ TestFilesystemObjCmd( Tcl_Obj *const objv[]) { int res, boolVal; - char *msg; + const char *msg; if (objc != 2) { Tcl_WrongNumArgs(interp, 1, objv, "boolean"); @@ -6263,7 +6263,7 @@ TestSimpleFilesystemObjCmd( Tcl_Obj *const objv[]) { int res, boolVal; - char *msg; + const char *msg; if (objc != 2) { Tcl_WrongNumArgs(interp, 1, objv, "boolean"); @@ -6445,7 +6445,7 @@ TestHashSystemHashCmd( int objc, Tcl_Obj *const objv[]) { - static Tcl_HashKeyType hkType = { + static const Tcl_HashKeyType hkType = { TCL_HASH_KEY_TYPE_VERSION, TCL_HASH_KEY_SYSTEM_HASH, NULL, NULL, NULL, NULL }; @@ -6553,11 +6553,11 @@ TestNRELevels( Tcl_Obj *levels[6]; int i = 0; TEOV_callback *cbPtr = ((Interp *) interp)->execEnvPtr->callbackPtr; - + if (refDepth == NULL) { refDepth = &depth; } - + depth = (refDepth - &depth); levels[0] = Tcl_NewIntObj(depth); @@ -6572,7 +6572,7 @@ TestNRELevels( cbPtr = cbPtr->nextPtr; } levels[5] = Tcl_NewIntObj(i); - + Tcl_SetObjResult(interp, Tcl_NewListObj(6, levels)); return TCL_OK; } @@ -6611,19 +6611,19 @@ TestconcatobjCmd( * Set the start of the error message as obj result; it will be cleared at * the end if no errors were found. */ - + Tcl_SetObjResult(interp, Tcl_NewStringObj("Tcl_ConcatObj is unsafe:", -1)); - + emptyPtr = Tcl_NewObj(); - + list1Ptr = Tcl_NewStringObj("foo bar sum", -1); Tcl_ListObjLength(NULL, list1Ptr, &len); if (list1Ptr->bytes != NULL) { ckfree(list1Ptr->bytes); list1Ptr->bytes = NULL; } - + list2Ptr = Tcl_NewStringObj("eeny meeny", -1); Tcl_ListObjLength(NULL, list2Ptr, &len); if (list2Ptr->bytes != NULL) { @@ -6637,7 +6637,7 @@ TestconcatobjCmd( */ tmpPtr = Tcl_DuplicateObj(list1Ptr); - + objv[0] = tmpPtr; objv[1] = emptyPtr; concatPtr = Tcl_ConcatObj(2, objv); @@ -6721,7 +6721,7 @@ TestconcatobjCmd( objv[1] = tmpPtr; } Tcl_DecrRefCount(concatPtr); - + Tcl_IncrRefCount(tmpPtr); concatPtr = Tcl_ConcatObj(3, objv); if (concatPtr->refCount != 0) { @@ -6766,7 +6766,7 @@ TestconcatobjCmd( } if (concatPtr == tmpPtr) { int len; - + result = TCL_ERROR; Tcl_AppendResult(interp, "\n\t* (e) concatObj is not a new obj ", NULL); @@ -6781,7 +6781,7 @@ TestconcatobjCmd( if (Tcl_IsShared(tmpPtr)) { Tcl_DecrRefCount(tmpPtr); } - tmpPtr = Tcl_DuplicateObj(list1Ptr); + tmpPtr = Tcl_DuplicateObj(list1Ptr); objv[0] = tmpPtr; } Tcl_DecrRefCount(concatPtr); @@ -6796,7 +6796,7 @@ TestconcatobjCmd( } if (concatPtr == tmpPtr) { int len; - + result = TCL_ERROR; Tcl_AppendResult(interp, "\n\t* (f) concatObj is not a new obj ", NULL); @@ -6811,7 +6811,7 @@ TestconcatobjCmd( if (Tcl_IsShared(tmpPtr)) { Tcl_DecrRefCount(tmpPtr); } - tmpPtr = Tcl_DuplicateObj(list1Ptr); + tmpPtr = Tcl_DuplicateObj(list1Ptr); objv[0] = tmpPtr; } Tcl_DecrRefCount(concatPtr); @@ -6827,7 +6827,7 @@ TestconcatobjCmd( } if (concatPtr == tmpPtr) { int len; - + result = TCL_ERROR; Tcl_AppendResult(interp, "\n\t* (g) concatObj is not a new obj ", NULL); @@ -6843,7 +6843,7 @@ TestconcatobjCmd( if (Tcl_IsShared(tmpPtr)) { Tcl_DecrRefCount(tmpPtr); } - tmpPtr = Tcl_DuplicateObj(list1Ptr); + tmpPtr = Tcl_DuplicateObj(list1Ptr); objv[0] = tmpPtr; } Tcl_DecrRefCount(concatPtr); diff --git a/generic/tclTestObj.c b/generic/tclTestObj.c index c0d4f17..842cbd0 100644 --- a/generic/tclTestObj.c +++ b/generic/tclTestObj.c @@ -13,7 +13,7 @@ * See the file "license.terms" for information on usage and redistribution of * this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tclTestObj.c,v 1.24 2008/07/27 22:18:23 nijtmans Exp $ + * RCS: @(#) $Id: tclTestObj.c,v 1.25 2008/10/16 22:34:19 nijtmans Exp $ */ #include "tclInt.h" @@ -129,7 +129,7 @@ TestbignumobjCmd( int objc, /* Argument count */ Tcl_Obj *const objv[]) /* Argument vector */ { - const char * subcmds[] = { + const char *const subcmds[] = { "set", "get", "mult10", "div10", NULL }; enum options { @@ -496,7 +496,7 @@ TestindexobjCmd( { int allowAbbrev, index, index2, setError, i, result; const char **argv; - static const char *tablePtr[] = {"a", "b", "check", NULL}; + static const char *const tablePtr[] = {"a", "b", "check", NULL}; /* * Keep this structure declaration in sync with tclIndexObj.c */ @@ -996,7 +996,7 @@ TeststringobjCmd( #define MAX_STRINGS 11 char *index, *string, *strings[MAX_STRINGS+1]; TestString *strPtr; - static const char *options[] = { + static const char *const options[] = { "append", "appendstrings", "get", "get2", "length", "length2", "set", "set2", "setlength", "ualloc", "getunicode", NULL }; diff --git a/generic/tclThreadTest.c b/generic/tclThreadTest.c index 74398fe..eb3b855 100644 --- a/generic/tclThreadTest.c +++ b/generic/tclThreadTest.c @@ -12,7 +12,7 @@ * See the file "license.terms" for information on usage and redistribution of * this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tclThreadTest.c,v 1.26 2008/07/19 22:50:42 nijtmans Exp $ + * RCS: @(#) $Id: tclThreadTest.c,v 1.27 2008/10/16 22:34:19 nijtmans Exp $ */ #include "tclInt.h" @@ -219,7 +219,7 @@ Tcl_ThreadObjCmd( { ThreadSpecificData *tsdPtr = TCL_TSD_INIT(&dataKey); int option; - static const char *threadOptions[] = { + static const char *const threadOptions[] = { "cancel", "create", "event", "exit", "id", "join", "names", "send", "wait", "errorproc", NULL @@ -984,7 +984,7 @@ TclThreadCancel( } /* - * Since Tcl_CancelEval can be safely called from any thread, + * Since Tcl_CancelEval can be safely called from any thread, * we do it now. */ diff --git a/generic/tclTimer.c b/generic/tclTimer.c index 704d2bb..1e1fd73 100644 --- a/generic/tclTimer.c +++ b/generic/tclTimer.c @@ -9,7 +9,7 @@ * See the file "license.terms" for information on usage and redistribution of * this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tclTimer.c,v 1.34 2008/07/19 22:50:42 nijtmans Exp $ + * RCS: @(#) $Id: tclTimer.c,v 1.35 2008/10/16 22:34:19 nijtmans Exp $ */ #include "tclInt.h" @@ -786,7 +786,7 @@ Tcl_AfterObjCmd( int length; int index; char buf[16 + TCL_INTEGER_SPACE]; - static const char *afterSubCmds[] = { + static const char *const afterSubCmds[] = { "cancel", "idle", "info", NULL }; enum afterSubCmds {AFTER_CANCEL, AFTER_IDLE, AFTER_INFO}; @@ -820,7 +820,7 @@ Tcl_AfterObjCmd( || objv[1]->typePtr == &tclWideIntType #endif || objv[1]->typePtr == &tclBignumType - || ( Tcl_GetIndexFromObj(NULL, objv[1], afterSubCmds, "", 0, + || ( Tcl_GetIndexFromObj(NULL, objv[1], afterSubCmds, "", 0, &index) != TCL_OK )) { index = -1; if (Tcl_GetWideIntFromObj(NULL, objv[1], &ms) != TCL_OK) { @@ -832,7 +832,7 @@ Tcl_AfterObjCmd( } } - /* + /* * At this point, either index = -1 and ms contains the number of ms * to wait, or else index is the index of a subcommand. */ diff --git a/generic/tclTrace.c b/generic/tclTrace.c index 6386f29..7876eab 100644 --- a/generic/tclTrace.c +++ b/generic/tclTrace.c @@ -11,7 +11,7 @@ * See the file "license.terms" for information on usage and redistribution of * this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tclTrace.c,v 1.52 2008/10/08 14:50:57 dgp Exp $ + * RCS: @(#) $Id: tclTrace.c,v 1.53 2008/10/16 22:34:19 nijtmans Exp $ */ #include "tclInt.h" @@ -109,7 +109,7 @@ static Tcl_TraceTypeObjCmd TraceExecutionObjCmd; * add to the list of supported trace types. */ -static const char *traceTypeOptions[] = { +static const char *const traceTypeOptions[] = { "execution", "command", "variable", NULL }; static Tcl_TraceTypeObjCmd *const traceSubCmds[] = { @@ -195,7 +195,7 @@ Tcl_TraceObjCmd( int optionIndex; char *name, *flagOps, *p; /* Main sub commands to 'trace' */ - static const char *traceOptions[] = { + static const char *const traceOptions[] = { "add", "info", "remove", #ifndef TCL_REMOVE_OBSOLETE_TRACES "variable", "vdelete", "vinfo", @@ -404,7 +404,7 @@ TraceExecutionObjCmd( enum traceOptions { TRACE_ADD, TRACE_INFO, TRACE_REMOVE }; - static const char *opStrings[] = { + static const char *const opStrings[] = { "enter", "leave", "enterstep", "leavestep", NULL }; enum operations { @@ -651,7 +651,7 @@ TraceCommandObjCmd( char *name, *command; size_t length; enum traceOptions { TRACE_ADD, TRACE_INFO, TRACE_REMOVE }; - static const char *opStrings[] = { "delete", "rename", NULL }; + static const char *const opStrings[] = { "delete", "rename", NULL }; enum operations { TRACE_CMD_DELETE, TRACE_CMD_RENAME }; switch ((enum traceOptions) optionIndex) { @@ -843,7 +843,7 @@ TraceVariableObjCmd( char *name, *command; size_t length; enum traceOptions { TRACE_ADD, TRACE_INFO, TRACE_REMOVE }; - static const char *opStrings[] = { + static const char *const opStrings[] = { "array", "read", "unset", "write", NULL }; enum operations { @@ -1948,7 +1948,7 @@ TraceVarProc( int code, destroy = 0; Tcl_DString cmd; int rewind = ((Interp *)interp)->execEnvPtr->rewind; - + /* * We might call Tcl_Eval() below, and that might evaluate [trace vdelete] * which might try to free tvarPtr. We want to use tvarPtr until the end diff --git a/macosx/tclMacOSXFCmd.c b/macosx/tclMacOSXFCmd.c index d230f4a..31245f1 100644 --- a/macosx/tclMacOSXFCmd.c +++ b/macosx/tclMacOSXFCmd.c @@ -9,7 +9,7 @@ * See the file "license.terms" for information on usage and redistribution of * this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tclMacOSXFCmd.c,v 1.13 2008/04/27 22:21:33 dkf Exp $ + * RCS: @(#) $Id: tclMacOSXFCmd.c,v 1.14 2008/10/16 22:34:19 nijtmans Exp $ */ #include "tclInt.h" @@ -74,7 +74,7 @@ static Tcl_Obj * NewOSTypeObj(const OSType newOSType); static int SetOSTypeFromAny(Tcl_Interp *interp, Tcl_Obj *objPtr); static void UpdateStringOfOSType(Tcl_Obj *objPtr); -static Tcl_ObjType tclOSTypeType = { +static const Tcl_ObjType tclOSTypeType = { "osType", /* name */ NULL, /* freeIntRepProc */ NULL, /* dupIntRepProc */ diff --git a/win/cat.c b/win/cat.c index 91c38f4..d1a7338 100644 --- a/win/cat.c +++ b/win/cat.c @@ -8,7 +8,7 @@ * See the file "license.terms" for information on usage and redistribution * of this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: cat.c,v 1.3 2005/11/04 00:06:49 dkf Exp $ + * RCS: @(#) $Id: cat.c,v 1.4 2008/10/16 22:34:19 nijtmans Exp $ */ #include @@ -20,7 +20,7 @@ main(void) { char buf[1024]; int n; - char *err; + const char *err; while (1) { n = read(0, buf, sizeof(buf)); diff --git a/win/tclWinInit.c b/win/tclWinInit.c index d47b2cb..70170fe 100644 --- a/win/tclWinInit.c +++ b/win/tclWinInit.c @@ -10,7 +10,7 @@ * See the file "license.terms" for information on usage and redistribution of * this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tclWinInit.c,v 1.78 2008/10/14 22:43:30 nijtmans Exp $ + * RCS: @(#) $Id: tclWinInit.c,v 1.79 2008/10/16 22:34:19 nijtmans Exp $ */ #include "tclWinInt.h" @@ -85,12 +85,12 @@ typedef struct { #define NUMPLATFORMS 4 -static const char *platforms[NUMPLATFORMS] = { +static const char *const platforms[NUMPLATFORMS] = { "Win32s", "Windows 95", "Windows NT", "Windows CE" }; #define NUMPROCESSORS 11 -static const char *processors[NUMPROCESSORS] = { +static const char *const processors[NUMPROCESSORS] = { "intel", "mips", "alpha", "ppc", "shx", "arm", "ia64", "alpha64", "msil", "amd64", "ia32_on_win64" }; diff --git a/win/tclWinTest.c b/win/tclWinTest.c index eb2ccf8..29e4974 100644 --- a/win/tclWinTest.c +++ b/win/tclWinTest.c @@ -8,7 +8,7 @@ * See the file "license.terms" for information on usage and redistribution of * this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tclWinTest.c,v 1.23 2008/07/19 22:16:57 nijtmans Exp $ + * RCS: @(#) $Id: tclWinTest.c,v 1.24 2008/10/16 22:34:19 nijtmans Exp $ */ #include "tclInt.h" @@ -421,7 +421,7 @@ TestExceptionCmd( int objc, /* Argument count */ Tcl_Obj *const objv[]) /* Argument vector */ { - static const char *cmds[] = { + static const char *const cmds[] = { "access_violation", "datatype_misalignment", "array_bounds", "float_denormal", "float_divbyzero", "float_inexact", "float_invalidop", "float_overflow", "float_stack", "float_underflow", -- cgit v0.12