Menu

#1291 LogicLib ${Switch} will not compile with /SAFEPPO

3.0 Series
closed-fixed
nobody
None
5
2023-07-28
2023-01-23
idleberg
No

When compiling a script that includes a ${Switch} block, makensis will throw an error when using the /SAFEPPO switch.

Example

$ makensis NSIS\Examples\LogicLib.nsi /SAFEPPO

# Script output omitted
# !include: could not find: "${_LogicLib_Label_222Tmp}"
# Error in macro _EndSwitch on macroline 9
# Error in script "LogicLib.nsi" on line 387 -- aborting creation process

When using no switch (or /PPO), this error will not be thrown. I don't know any details about PPO switches, they are hardly documented.

My two cents: If this is a bug, it should be fixed. If it's a feature, it deserves an error explaining what's going on.

Discussion

  • Anders

    Anders - 2023-01-24

    Switch uses a temp file and SafePPO does not allow writes to files. Ideally it should work but it might need special support from the compiler.

     
  • Anders

    Anders - 2023-07-28
    • status: open --> closed-fixed
     

Log in to post a comment.