Tcl Source Code

Attachments To Ticket a09031e288
Login

Attachments for ticket a09031e288

  1. Attachment c3d1d76f51
    patch-a09031e288-quickfix.diff-c50-w [download]
    Added build-time and run-time control over the tradeoff between performance and debuggability of Tcl source code. The environment variable TCL_INFO_FRAME_ENABLE_ACCURATE_LINE_NUMBERS is checked during the startup of the Tcl interpreter, and if its value is 0 then line continuations (backslash+newline) sequences are not tracked (thus resulting in improved performance). For any other value of that environment variable the line continuations are tracked and correct line numbers are reported by [info frame]. When the TCL_INFO_FRAME_ENABLE_ACCURATE_LINE_NUMBERS envvar is not set, the default value defined by the macro of the same name provided during build is assumed (if the macro is not specified during the build either, then it defaults to 1, i.e. this change is backward compatible).
    Added by leon on 2018-12-10 20:21:09.

  2. Attachment ad04939aa7
    patch-a09031e288-quickfix.diff.1 [download]
    This is a preliminary change that was intended to be the first in a series of small checkins on my branch created for this purpose. It unconditionally disables tracking of line continuations. Though this change introduce a possibility of NULL pointer dereferencing (at least in TclContinuationsEnterDerived()) no test failed with a crash (but there are 32 failures of info.test test cases and 1 failure of a test case from parse.test). I wonder if the tests don't provide enough coverage or the said code is simply unreachable. Depending on the answer to that question I will continue the development accordingly (improve the tests or clean the code up).
    Added by leon on 2018-12-02 19:30:09.