Done Add the possibility to comment the ENDIFF

It seems to be convenient to have the possibility to comment the ELSE and ENDIFF on the same line:
iff "%a" == "s1" then
iff isdir "%b" then
else %b
endiff %b
else %a
iff %c LE 7 then
else %c
endiff %c
endiff %a

The idea is to make the TCC accepting and ignoring the "parameters" of the ELSE and ENDIFF clauses. Now such commenting requires a combination of the 'command separator symbol' with the REM command, which seems ugly and increases the file's size.
Last edited:
May 20, 2008
Syracuse, NY, USA
Apparently you can do that with just "::". This seems to work OK.

iff "%1" == "1" then :: beginning of IFF
    echo OK
else :: "%1" != "1"
    echo Not OK
endiff :: done
  • Like
Reactions: Dmitry L. Kobyakov
May 20, 2008
Syracuse, NY, USA
Lines beginning with colons are labels -- GOTO and GOSUB targets. A double colon is a fairly useless label, but can be used as a comment.
That's how I always thought of it. So it was a bit of a surprise to see it work at the end of an IFF, ELSE, or ENDIFF line. In my brief testing, it works in those places with or without "&" and REM behaves similarly.
  • Like
Reactions: Dmitry L. Kobyakov
Jan 12, 2014
Switzerland, SO
Hi Dmitry

I could not find anything about the '::' in the TCC's help…

In my version here (24.00.36) I could find the following line in the Help for REM:

You can also place a comment in a batch file by starting the comment line with two colons [::]. In essence this creates a batch file "label" without a valid label name.

There are the words 'starting the line' there. The statement does not mean the double colons will work so anywhere in a command line. A command line starting with 'REM ' is ignored as commment, but the 'REM ' after some characters in a line will constitutes a part of a command. The commands
echo the test for rem is OK
echo the test for :: is OK

display all the phrases, not the words before 'rem' or '::'.
Oct 18, 2009
I've used :: for years instead of REM. Basically, it WOULD create a label named ":". But since there are no "GOTO :" or "GOSUB :" commands it doesn't create a problem.

I never tried it at the end of lines, but I'll definitely start using it--that's one thing I've wanted for a long time but never said anything about it.
Similar threads
Thread starter Title Forum Replies Date
Joe Caverly Done Add ability to DEL Stream from SYMLINK Suggestions 2
Joe Caverly Add VHD to @drivetype Suggestions 1
R Option to add tcc to Bash profile Suggestions 1
R Add Custom Message to commands Suggestions 2
mfarah Declined Implement an "Add TCC to the task bar" in the TCMD installer. Suggestions 2
C Declined Add switch to MOVE to not make empty destination folders. (COPY's /F) Suggestions 4
M Add "ReleaseID" (aka version or build) to ver output Suggestions 2
R Declined In setup, add back/refresh buttons. Suggestions 1
D Done Suggestion: Add VIEW option to open in same position as current window Suggestions 0
D Done BDEBUGGER: add cmdline option to set a breakpoint at a given line Suggestions 0
D Done TCEdit and BDEBUGGER: add cmdline switch to jump to given line Suggestions 2
R Done Add "Evaluate Expression" to Right-Click Context Menu in Batch Debugger Suggestions 3
S Add support for Git auto-completion Suggestions 0
R Declined wish-list: add a command to copy a file to clipboard. Suggestions 17
R Declined Install option: Add File Explorer Run As Adminstrator option Suggestions 14
Charles Dye Declined Windows functions and command: Add syntax to specify HWND directly Suggestions 0
Charles Dye Done @SNAPSHOT: Add option to capture the entire virtual screen Suggestions 0
R Done Add Libraries and Multi-line In-Memory functions to Features List on Website Suggestions 1
R Done Add to Pause Help text re indenting the prompt Suggestions 0
C Done Add ability for inline image files for sendmail or similar Suggestions 2
WinLanEm Add commands and functions Suggestions 11
rps Declined Add auto-load directives to tcmd.ini Suggestions 3
fromano Declined Add library functions to shralias saving feature Suggestions 12
Joe Caverly Add a "Snippet" Menu to CMDebug and TCC Debugger Suggestions 0
D Done Add the ability to control syntax coloring via an environment variable or some other way Suggestions 3
Joe Caverly Add example .BTM code to TCC Debugger and CMDebug Suggestions 1
Alpengreis Done Add "Slow copy" (/WAIT) parameter to SYNC command Suggestions 1
Charles Dye Done MOUNTISO: Add support for VHD / VHDX files Suggestions 5
A Declined Take Command/Debugger as a Visual Studio 2017 add-in/extension Suggestions 4
rps Declined Add optional parameters to @search Suggestions 4
rps Done Add PDIR switches Suggestions 1
rps Declined ECHO -- Add spacing option Suggestions 2
vefatica Done Add log2 to @EVAL Suggestions 3
rps Done Add exclusion ranges to @files Suggestions 0
D Done Add VIEW option to open in same position as current window Suggestions 0
R Done Add a .btm LIBRARY system Suggestions 12
N Done Add display options to new HASH function Suggestions 1
rconn Add a parameter to dir command to handle zip files as folders Suggestions 1
rconn add support for batch file projects Suggestions 0
rconn Add support for backpipes Suggestions 0
rconn Add option to run programs Elevated from toolbar buttons Suggestions 0
rconn In the Help tab let the user add links either to files or web pages, with an icon & label. Suggestions 0
W Done Add colorize to tree command? Suggestions 0
Phileosophos Done Please add options for scrollback buffer searching Suggestions 24
G Declined Add option to turn on file name case sensitivity Suggestions 6
nickles Done Add a "Mark all threads read" button Suggestions 3
B Done Add New INI Directive To Specify WIPE Default Pass Count Suggestions 0
S Declined Add /W(ipe) option to several commands Suggestions 17
C TC drop-zone to add a tab Suggestions 0
W Done Add an option to control command line parsing Suggestions 7

Similar threads