Posted to tcl by aku at Wed Jun 09 20:18:25 GMT 2010view pretty
--- generic/tclVar.c 31 May 2010 08:54:14 -0000 1.199 +++ generic/tclVar.c 9 Jun 2010 20:00:25 -0000 @@ -66,10 +66,19 @@ #define VarHashFindVar(tablePtr, key) \ VarHashCreateVar((tablePtr), (key), NULL) - +#ifdef _AIX +/* Work around AIX cc problem causing crash in TclDeleteVars. Possible + * optimizer bug. Do _NOT_ inline this function, this re-activates the + * problem. + */ +static void +VarHashInvalidateEntry(Var* varPtr) { + varPtr->flags |= VAR_DEAD_HASH; +} +#else #define VarHashInvalidateEntry(varPtr) \ ((varPtr)->flags |= VAR_DEAD_HASH) - +#endif #define VarHashDeleteEntry(varPtr) \ Tcl_DeleteHashEntry(&(((VarInHash *) varPtr)->entry))