Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Changes In Branch tip-515 Excluding Merge-Ins
This is equivalent to a diff from 59d28e540e to 3e22a9b9f9
2018-09-26
| ||
23:43 | Implementatin of TIP #515: Level Value Reform check-in: 1486105322 user: jan.nijtmans tags: core-8-branch-timeline-fix | |
2018-09-22
| ||
16:51 | Handle the (unlikely) case that Tcl_DStringSetLength() results in a re-allocation of the buffer check-in: 24aadadf9c user: jan.nijtmans tags: core-8-branch | |
16:33 | merge core-8-branch check-in: 938e58b7ab user: jan.nijtmans tags: tip-452 | |
13:37 | merge tip-515 branch check-in: 686effa0af user: jan.nijtmans tags: tip-514 | |
13:24 | Merge 8.7 Closed-Leaf check-in: 3e22a9b9f9 user: jan.nijtmans tags: tip-515 | |
13:19 | Merge 8.7 check-in: 4abebf3c7c user: jan.nijtmans tags: trunk | |
13:18 | Change ULLONG_MAX -> UWIDE_MAX, LLONG_MAX -> WIDE_MAX and LLONG_MIN -> WIDE_MIN everywhere, because ... check-in: 59d28e540e user: jan.nijtmans tags: core-8-branch | |
12:45 | merge 8.7 check-in: 7160931bed user: jan.nijtmans tags: tip-515 | |
12:29 | Fix a couple of test-cases, since http1.0 is no longer there check-in: 58773f387b user: jan.nijtmans tags: core-8-branch | |
Changes to doc/uplevel.n.
︙ | |||
20 21 22 23 24 25 26 | 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 | - + - + | been passed to \fBconcat\fR; the result is then evaluated in the variable context indicated by \fIlevel\fR. \fBUplevel\fR returns the result of that evaluation. .PP If \fIlevel\fR is an integer then it gives a distance (up the procedure calling stack) to move before executing the command. If \fIlevel\fR consists of \fB#\fR followed by |
︙ |
Changes to generic/tclProc.c.
︙ | |||
684 685 686 687 688 689 690 | 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 | - - + - - + - - - - - - - - - - - - - - - - - - - + - - - - + - - + - - - - - + - - - + - - + - - - - - | int TclGetFrame( Tcl_Interp *interp, /* Interpreter in which to find frame. */ const char *name, /* String describing frame. */ CallFrame **framePtrPtr) /* Store pointer to frame here (or NULL if * global frame indicated). */ { |
︙ | |||
766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 | 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 | + - - - - + + + + + + + + - - - - - + + + + + + + + + - + - + + - - - + + + - - | Tcl_Obj *objPtr, /* Object describing frame. */ CallFrame **framePtrPtr) /* Store pointer to frame here (or NULL if * global frame indicated). */ { register Interp *iPtr = (Interp *) interp; int curLevel, level, result; const char *name = NULL; Tcl_WideInt w; /* * Parse object to figure out which level number to go to. */ result = 0; curLevel = iPtr->varFramePtr->level; /* * Check for integer first, since that has potential to spare us * a generation of a stringrep. */ if (objPtr == NULL) { /* Do nothing */ |
︙ |
Changes to tests/uplevel.test.
︙ | |||
133 134 135 136 137 138 139 | 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 | - + - - + + - - + + - - + + - + - + - + - + - + - + | } {} test uplevel-4.15 {level parsing} { apply {{} {uplevel [expr 1] {}}} } {} test uplevel-4.16 {level parsing} { apply {{} {uplevel #[expr 1] {}}} } {} |
︙ |