Changes On Branch bug-4b61afd660
Not logged in

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Changes In Branch bug-4b61afd660 Excluding Merge-Ins

This is equivalent to a diff from 37a9ecdea2 to e4da71ec40

2016-06-16
17:12
[4b61afd660] Allow [info frame] to record line info for substituted command names. check-in: 49f56e9254 user: dgp tags: core-8-5-branch
17:06
[16828b3744] [vwait] *must* successfully undo its variable trace, or else it risks corrupting memory... check-in: e1f890de4b user: dgp tags: core-8-5-branch
16:59
Improve fix and add test. Closed-Leaf check-in: e4da71ec40 user: dgp tags: bug-4b61afd660
16:41
merge 8.5 check-in: b33785a91c user: dgp tags: bug-4b61afd660
2016-06-14
09:57
Fix [7393be0be6e7f91cbb2016fa777896e3895929e3|7393be0be6]: Tcl Thread library doesn't work in Debug ... check-in: 5ed3db2343 user: jan.nijtmans tags: core-8-6-branch
09:55
Fix [7393be0be6e7f91cbb2016fa777896e3895929e3|7393be0be6]: Tcl Thread library doesn't work in Debug ... check-in: 37a9ecdea2 user: jan.nijtmans tags: core-8-5-branch
09:12
(cherry-pick): Fix [e14c77b845]: Compilation error over typedef. check-in: eb44f9209e user: jan.nijtmans tags: core-8-5-branch

Changes to generic/tclCompile.c.
2599
2600
2601
2602
2603
2604
2605
2606

2607
2608
2609
2610
2611
2612
2613
    wordNext = clNext;
    for (wordIdx=0 ; wordIdx<numWords;
	    wordIdx++, tokenPtr += tokenPtr->numComponents + 1) {
        TclAdvanceLines         (&wordLine, last, tokenPtr->start);
	TclAdvanceContinuations (&wordLine, &wordNext,
				 tokenPtr->start - envPtr->source);
	wwlines[wordIdx] =
		(TclWordKnownAtCompileTime(tokenPtr, NULL) ? wordLine : -1);

	ePtr->line[wordIdx] = wordLine;
	ePtr->next[wordIdx] = wordNext;
	last = tokenPtr->start;
    }

    *wlines = wwlines;
    eclPtr->nuloc ++;







|
>







2599
2600
2601
2602
2603
2604
2605
2606
2607
2608
2609
2610
2611
2612
2613
2614
    wordNext = clNext;
    for (wordIdx=0 ; wordIdx<numWords;
	    wordIdx++, tokenPtr += tokenPtr->numComponents + 1) {
        TclAdvanceLines         (&wordLine, last, tokenPtr->start);
	TclAdvanceContinuations (&wordLine, &wordNext,
				 tokenPtr->start - envPtr->source);
	wwlines[wordIdx] =
		((wordIdx == 0) || TclWordKnownAtCompileTime(tokenPtr, NULL))
		? wordLine : -1;
	ePtr->line[wordIdx] = wordLine;
	ePtr->next[wordIdx] = wordNext;
	last = tokenPtr->start;
    }

    *wlines = wwlines;
    eclPtr->nuloc ++;
Changes to tests/info.test.
1813
1814
1815
1816
1817
1818
1819

















1820
1821
1822
1823
1824
	    set y DL.
	    etrace
	}] 0 2] \n
    }
} -result {* {type source line 1807 file info.test cmd {info frame $level} proc ::etrace level 0}
* {type source line 1814 file info.test cmd etrace level 1}
* {type source line 1812 file info.test cmd uplevel\\ \\\\ level 1}} -cleanup {interp delete sub}


















# cleanup
catch {namespace delete test_ns_info1 test_ns_info2}
::tcltest::cleanupTests
return







>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>





1813
1814
1815
1816
1817
1818
1819
1820
1821
1822
1823
1824
1825
1826
1827
1828
1829
1830
1831
1832
1833
1834
1835
1836
1837
1838
1839
1840
1841
	    set y DL.
	    etrace
	}] 0 2] \n
    }
} -result {* {type source line 1807 file info.test cmd {info frame $level} proc ::etrace level 0}
* {type source line 1814 file info.test cmd etrace level 1}
* {type source line 1812 file info.test cmd uplevel\\ \\\\ level 1}} -cleanup {interp delete sub}

test info-39.0 {Bug 4b61afd660} -setup {
    proc probe {} {
	return [dict get [info frame -1] line]
    }
    set body {
	set cmd probe
	$cmd
    }
    proc demo {} $body
} -body {
    demo
} -cleanup {
    unset -nocomplain body
    rename demo {}
    rename probe {}
} -result 3

# cleanup
catch {namespace delete test_ns_info1 test_ns_info2}
::tcltest::cleanupTests
return