Posted to tcl by miguel at Sat Jul 12 20:27:50 GMT 2008view raw

  1. #define TclSmallAlloc(nbytes, memPtr) \
  2. { \
  3. Tcl_Obj *objPtr; \
  4. switch (nbytes>sizeof(Tcl_Obj)) { \
  5. case (2 +(nbytes>sizeof(Tcl_Obj))): \
  6. case 3: \
  7. case 1: \
  8. Tcl_Panic("TclSmallAlloc: nBytes too large!"); \
  9. case 0: (void)0; \
  10. } \
  11. TclIncrObjsAllocated(); \
  12. TclAllocObjStorage(objPtr); \
  13. memPtr = (ClientData) objPtr; \
  14. }
  15.  
  16. #define TclSmallFree(memPtr) \
  17. TclFreeObjStorage((Tcl_Obj *) memPtr); \
  18. TclIncrObjsFreed()