Macro param name scope?
I see a lot of macros that have very simple param names. What happens if one of those symbols is already defined or is the same name as a param used in another macro?
I have really long macro param names cause I have been using:
filename_macroname_paramname
But if I can get away with shorter names I would use them for readability.
I did the below test and it acts kind of funny. If I make the !define someBlah "adefine" without the space, then it compiles correctly and outputs "test" then "adefine".
OutFile testSymbol.exe
Page components
Page directory
Page instfiles
!define someBlah "a define"
!macro DoSomethin someBlah
DetailPrint "${someBlah}"
!macroend
Section mySection
!insertmacro DoSomethin "test"
DetailPrint "${someBlah}"
SectionEnd
The compile log:
OutFile: "testSymbol.exe"
Page: components
Page: directory
Page: instfiles
!define: "someBlah"="a define"
Section: "mySection"
!insertmacro: DoSomethin
DetailPrint: "test"
!insertmacro: end of DoSomethin
DetailPrint expects 1 parameters, got 2.
Usage: DetailPrint message