As far as I can tell it's only purpose is to take the place of commented line...
!macro _IsEqual _MyVar _MyVal
StrCmp `${_MyVal}` `${_MyVar}` +3
; DetailPrint "They are not Equal!"
Nop ; Added to allow for Jump operation when previous line was commeted out
StrCpy ${_MyVar} `${_MyVal}`
!macroend
Section
StrCpy $0 "cake"
!insertmacro _IsEqual $0 "pie"
DetailPrint "Done! $$0=$0"
SectionEnd Even more unlikely would be to use Nop to space macros so jumps will land on the interned targets.!macro _MakeBrainHurtCode _Mode
## TODO Very complex Stuff
Goto +10
!if `${_Mode}` == "Simple"
Nop
Nop
Nop
Nop
Nop
Nop
DetailPrint "Do Stuff"
Nop
DetailPrint "Do Stuff"
!else
DetailPrint "Do Stuff"
DetailPrint "Do Stuff"
DetailPrint "Do Stuff"
Nop
DetailPrint "Do Stuff"
DetailPrint "Do Stuff"
DetailPrint "Do Stuff"
Nop
DetailPrint "Do Stuff"
!endif
DetailPrint "Done"
!macroend According to WikiPedia's article on NOP, it would appear to be very useful in assembler but I'm having trouble justifying it's existence in NSIS.Whats everyone's take on this? I'd like to know as I'm struggling to find practical things to do with this command.