Problem with %_do_loop in nested do loops

Apr 18, 2014
299
9
TCC 24.02.50 x64 Windows 10 [Version 10.0.18362.239]
TCC Build 50 Windows 10 Build 18362

According to the help the internal variable %_do_loop contains "The number of times the current DO loop has been executed". I read that to mean that if Do loops are nested, then %_do_loop will return the correct value for the "currently active" loop. So I would expect this test code:

Code:
@echo off
do 3
  echo %_do_loop
  do 5
   echos %_do_loop` `
  enddo
  echo ``
  echo %_do_loop
  echo ``
enddo

to return this:
Code:
1
1 2 3 4 5
1

2
1 2 3 4 5
2

3
1 2 3 4 5
3

However, what it actually returns is:
Code:
1
1 2 3 4 5
6

2
1 2 3 4 5
6

3
1 2 3 4 5
6

It seems that on return from the nested Do, the internal variable is left with its last value from the nested loop.
 
Apr 18, 2014
299
9
%_do_loop is a global variable; it is not intended to be used in nested DO loops. It's being updated at the top of the loop, so when you test after the inner DO loop it still has the value from the inner loop.
OK, thanks Rex.

Your statement is the exact opposite of what the help says about %_do_loop (and indeed the other three DO variables), here's a quote from the DO help page:
The number of directories traversed (with /S) for the current DO loop. (I.e., nested DO's each have their own _do_dirs, _do_files, _do_errors, and _do_loop.)

So if it's WAD that one or more of those variables are global and don't work in nested loops could I request that you update the help to make it clear please?
 
Similar threads
Thread starter Title Forum Replies Date
Dick Johnson Weird Color Problem Support 8
fishman@panix.com Problem with 27.15 Support 2
M Problem with VSDevCmd.bat in VS 16.7.3 Support 0
R Problem with @INT[ value] in V26 Support 9
M Selecting test "off by one" problem in Take command Support 4
Alpengreis UTF-8 problem in TCC related to Python Support 7
K_Meinhard Small problem in german IDE 26 Support 3
B Problem with color in nested shells Support 1
Joe Caverly Problem creating and switching to a DESKTOP Support 9
vefatica Another popup problem Support 10
Alpengreis ffind dialog (/W) problem Support 4
Alpengreis [TCMD v25.00.24] Small space problem with the DE translation in Prefs-GUI Support 1
Alpengreis [TCMD v25.00.24] Problem with copy and paste and the # char via mouse in TCC Support 6
A Problem with functions @int @decimal and identifying Powershell as a shell. Support 12
B IF command problem in tcexit.btm Support 9
fishman@panix.com Problem at Startup of TCC Support 3
P Problem with SFTP copies Support 7
P Problem with FTP copies Support 10
Jay Sage Problem with Context Menu Copy+Paste+Run Key Assignment Support 7
fishman@panix.com New Problem with later Windows 10 Support 10
Peter Murschall A little problem with LEAVE and COMMENT Support 5
M Handling of %~I problem Support 4
WinLanEm FOR problem Support 18
K Problem With SCRPUT /u Support 3
vefatica What's TCMD's problem with ^e[0m? Support 13
Peter Murschall IDE: RTL with non-English resources-problem is back in Build 28 Support 4
rps Regex problem: \xnn not recognized as a hex character Support 0
rps PRIORITY LOW problem Support 1
old coot Regex problem: \xnn not recognized as a hex character Support 12
vefatica Another problem with build 22. Support 3
Alpengreis [23.x] Download-Problem Support 2
S Problem with " Support 3
C Problem navigating forums Support 11
x13 Problem listing repository files using DIR http(s)://... Support 8
Joe Caverly Problem with TEE in v22 Support 2
Alpengreis Problem with thousands delimiter and colors Support 17
M Take Command 18, migrating to another machine, license problem. Support 1
B TCC 21.01.50 Problem with ALIAS /r and SET /r Support 2
rps How to? @search problem Support 2
WinLanEm @SELECT problem Support 6
T Fixed Problem with use of Batch parameters in the IDE Support 1
Oz Solomon Problem with "list" Support 14
S V21.24 theme problem Support 2
Alpengreis Problem if command prompt is not legacy Support 4
Alpengreis TCMD.INI: The "super hidden" problem ... Support 6
G Odd problem - screen brightness Support 4
rps V20 In-process pipes problem Support 8
Alpengreis Again theme problem [v20.0.21]? Support 11
WinLanEm INPUT problem Support 1
Craig Fitzgerald problem with executable extensons with TCC version 19.10.51 x64 Support 3

Similar threads