Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | Better keep Tcl_ConsolePanic as it was (with TCL_NORETURN) |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | bug-ef23a85ac6 |
Files: | files | file ages | folders |
SHA3-256: |
a82f088431b59145853a54c74aee5b56 |
User & Date: | jan.nijtmans 2024-04-24 19:41:08 |
Context
2024-04-25
| ||
08:44 | Rebase to 9.0 check-in: 29bb6ad3f1 user: jan.nijtmans tags: bug-ef23a85ac6 | |
2024-04-24
| ||
19:41 | Better keep Tcl_ConsolePanic as it was (with TCL_NORETURN) check-in: a82f088431 user: jan.nijtmans tags: bug-ef23a85ac6 | |
19:16 | Improve use of TCL_NORETURN, so no unnecessary warnings are produced any more check-in: 8afd80d68a user: jan.nijtmans tags: bug-ef23a85ac6 | |
Changes
Changes to generic/tcl.h.
︙ | ︙ | |||
2308 2309 2310 2311 2312 2313 2314 | const char * Tcl_InitStubs(Tcl_Interp *interp, const char *version, int exact, int magic); const char * TclTomMathInitializeStubs(Tcl_Interp *interp, const char *version, int epoch, int revision); const char * TclInitStubTable(const char *version); void * TclStubCall(void *arg); #if defined(_WIN32) | | | 2308 2309 2310 2311 2312 2313 2314 2315 2316 2317 2318 2319 2320 2321 2322 | const char * Tcl_InitStubs(Tcl_Interp *interp, const char *version, int exact, int magic); const char * TclTomMathInitializeStubs(Tcl_Interp *interp, const char *version, int epoch, int revision); const char * TclInitStubTable(const char *version); void * TclStubCall(void *arg); #if defined(_WIN32) TCL_NORETURN void Tcl_ConsolePanic(const char *format, ...); #else # define Tcl_ConsolePanic NULL #endif #ifdef USE_TCL_STUBS #if TCL_MAJOR_VERSION < 9 # if TCL_UTF_MAX < 4 |
︙ | ︙ |
Changes to win/tclWinPanic.c.
︙ | ︙ | |||
24 25 26 27 28 29 30 | * * Side effects: * None. * *---------------------------------------------------------------------- */ | | | 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 | * * Side effects: * None. * *---------------------------------------------------------------------- */ TCL_NORETURN void Tcl_ConsolePanic( const char *format, ...) { #define TCL_MAX_WARN_LEN 26000 va_list argList; WCHAR msgString[TCL_MAX_WARN_LEN]; char buf[TCL_MAX_WARN_LEN * 3]; |
︙ | ︙ | |||
59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 | WriteConsoleW(handle, msgString, (DWORD)wcslen(msgString), &dummy, 0); } else { buf[0] = '\xEF'; buf[1] = '\xBB'; buf[2] = '\xBF'; /* UTF-8 bom */ WriteFile(handle, buf, (DWORD)strlen(buf), &dummy, 0); WriteFile(handle, "\n", 1, &dummy, 0); FlushFileBuffers(handle); } } /* * Local Variables: * mode: c * c-basic-offset: 4 * fill-column: 78 * tab-width: 8 * End: */ | > > > > > > > > > > > > > > | 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 | WriteConsoleW(handle, msgString, (DWORD)wcslen(msgString), &dummy, 0); } else { buf[0] = '\xEF'; buf[1] = '\xBB'; buf[2] = '\xBF'; /* UTF-8 bom */ WriteFile(handle, buf, (DWORD)strlen(buf), &dummy, 0); WriteFile(handle, "\n", 1, &dummy, 0); FlushFileBuffers(handle); } # if defined(__GNUC__) __builtin_trap(); # elif defined(_WIN64) __debugbreak(); # elif defined(_MSC_VER) _asm {int 3} # else DebugBreak(); # endif #if defined(_WIN32) ExitProcess(1); #else abort(); #endif } /* * Local Variables: * mode: c * c-basic-offset: 4 * fill-column: 78 * tab-width: 8 * End: */ |