diff options
author | jan.nijtmans <nijtmans@users.sourceforge.net> | 2023-10-01 19:06:33 (GMT) |
---|---|---|
committer | jan.nijtmans <nijtmans@users.sourceforge.net> | 2023-10-01 19:06:33 (GMT) |
commit | 9220b96d3c8ec555212d8aee0f81f1c898c75190 (patch) | |
tree | 8723417dca18dfa332b5623378c0b18fe32ce2e8 /generic/tclIntDecls.h | |
parent | a568c3a7370ca204923a22917acd5520223036f9 (diff) | |
download | tcl-9220b96d3c8ec555212d8aee0f81f1c898c75190.zip tcl-9220b96d3c8ec555212d8aee0f81f1c898c75190.tar.gz tcl-9220b96d3c8ec555212d8aee0f81f1c898c75190.tar.bz2 |
Fix [7371b6270b]: AddressSanitizer use-after-return detection breaks NRE tests, coroutines. (patch by chrstphrchvz, with some minor modifications)
Diffstat (limited to 'generic/tclIntDecls.h')
-rw-r--r-- | generic/tclIntDecls.h | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/generic/tclIntDecls.h b/generic/tclIntDecls.h index e958733..cb13327 100644 --- a/generic/tclIntDecls.h +++ b/generic/tclIntDecls.h @@ -532,7 +532,8 @@ EXTERN void TclPopStackFrame(Tcl_Interp *interp); /* Slot 220 is reserved */ /* Slot 221 is reserved */ /* Slot 222 is reserved */ -/* Slot 223 is reserved */ +/* 223 */ +EXTERN void * TclGetCStackPtr(void); /* 224 */ EXTERN TclPlatformType * TclGetPlatform(void); /* 225 */ @@ -875,7 +876,7 @@ typedef struct TclIntStubs { void (*reserved220)(void); void (*reserved221)(void); void (*reserved222)(void); - void (*reserved223)(void); + void * (*tclGetCStackPtr) (void); /* 223 */ TclPlatformType * (*tclGetPlatform) (void); /* 224 */ Tcl_Obj * (*tclTraceDictPath) (Tcl_Interp *interp, Tcl_Obj *rootPtr, int keyc, Tcl_Obj *const keyv[], int flags); /* 225 */ int (*tclObjBeingDeleted) (Tcl_Obj *objPtr); /* 226 */ @@ -1289,7 +1290,8 @@ extern const TclIntStubs *tclIntStubsPtr; /* Slot 220 is reserved */ /* Slot 221 is reserved */ /* Slot 222 is reserved */ -/* Slot 223 is reserved */ +#define TclGetCStackPtr \ + (tclIntStubsPtr->tclGetCStackPtr) /* 223 */ #define TclGetPlatform \ (tclIntStubsPtr->tclGetPlatform) /* 224 */ #define TclTraceDictPath \ |