Diff
Not logged in

Differences From Artifact [1a004db6b6]:

To Artifact [3b21a1c839]:


22
23
24
25
26
27
28

29

30
31
32
33
34
35
36
22
23
24
25
26
27
28
29

30
31
32
33
34
35
36
37







+
-
+







 */

static Tcl_Obj *	DisassembleByteCodeAsDicts(Tcl_Obj *objPtr);
static Tcl_Obj *	DisassembleByteCodeObj(Tcl_Obj *objPtr);
static int		FormatInstruction(ByteCode *codePtr,
			    const unsigned char *pc, Tcl_Obj *bufferObj);
static void		GetLocationInformation(Proc *procPtr,
			    Tcl_Obj **restrict fileObjPtr,
			    Tcl_Obj **fileObjPtr, int *linePtr);
			    int *restrict linePtr);
static void		PrintSourceToObj(Tcl_Obj *appendObj,
			    const char *stringPtr, Tcl_Size maxChars);
static void		UpdateStringOfInstName(Tcl_Obj *objPtr);

/*
 * The structure below defines an instruction name Tcl object to allow
 * reporting of inner contexts in errorstack without string allocation.
76
77
78
79
80
81
82

83

84
85
86
87
88
89

90
91
92
93
94
95
96
77
78
79
80
81
82
83
84

85
86
87
88
89
90

91
92
93
94
95
96
97
98







+
-
+





-
+







 *
 *----------------------------------------------------------------------
 */

static void
GetLocationInformation(
    Proc *procPtr,		/* What to look up the information for. */
    Tcl_Obj **restrict fileObjPtr,
    Tcl_Obj **fileObjPtr,	/* Where to write the information about what
				/* Where to write the information about what
				 * file the code came from. Will be written
				 * to, either with the object (assume shared!)
				 * that describes what the file was, or with
				 * NULL if the information is not
				 * available. */
    int *linePtr)		/* Where to write the information about what
    int *restrict linePtr)	/* Where to write the information about what
				 * line number represented the start of the
				 * code in question. Will be written to,
				 * either with the line number or with -1 if
				 * the information is not available. */
{
    CmdFrame *cfPtr = TclGetCmdFrameForProcedure(procPtr);