%+ works differently after upgrade

Apr 1, 2010
43
0
#1
in old 4NT, say 4.01a to 7.0, command after %+ after false condition if will run. for example:
Code:
[C:\]if 1==2 echo 1 %+ echo 2
2

[C:\]
but in newer versions start from 8.0, echo 2 will not run.
 
#2
| in old 4NT, say 4.01a to 7.0, command after %+ after false condition
| if will run. for example:
|
| Code:
| ---------
| [C:\]if 1==2 echo 1 %+ echo 2
| 2
|
| [C:\]
| ---------
| but in newer versions start from 8.0, echo 2 will not run.

I could not duplicate your reported observation. I tested the command as you
reported:
if 1==2 echo 1 %+ echo 2
and with corrected syntax:
if 1 == 2 echo 1 %+ echo 2
(note the spaces around the comparison operator), and all of the 4NT / TCC
versions below executed the command after the command separator:

4NT 06.01.245 - 2005-05-24 16.05.50
4NT 07.01.370 - 2006-07-24 01.12.00
4NT 08.02.106 - 2008.03.10 13.50.00
TCC 09.02.157 - 2009.04.25 10.44.40
TCC 10.00.078 - 2010.01.24 11.51.24
TCC 11.00.044 - 2010.03.15 10.24.06

Do you by any chance have an alias for either IF, or ECHO?
--
Steve
 

rconn

Administrator
Staff member
May 14, 2008
10,504
94
#3
> in old 4NT, say 4.01a to 7.0, command after %+ after false condition if
> will run. for example:
>
> Code:
> ---------
> [C:\]if 1==2 echo 1 %+ echo 2
> 2
>
> [C:\]
> ---------
> but in newer versions start from 8.0, echo 2 will not run.
WAD, for compatibility with CMD.EXE.

You can revert to the old behavior by going to OPTION / Startup and
unchecking "Duplicate CMD.EXE bugs". See IF in the help for more details.

Rex Conn
JP Software