Question:
Under Windows, using system environment variables containing paths in the iocShell doesn't work, because backslash characters (\) in the path are interpreted as the first character of an escape sequence.
Example. Trying to set a location inside %AppData% by doing
epicsEnvSet FOO ${APPDATA}/foobar
creates an invalid path, because the backslashes disappear:
C:UsersnobodyAppDataRoaming/foobar
Shouldn't backslashes rather be treated verbatim here?
The expansion is done by macLib before the epicsEnvSet command is being called. Do we need a modifier that allows verbatim macro replacement? The getenv() used by macLib converts '\' to '\\' when reading from the environment, but macLib seems to resolve (discard) the "escape sequence" further down in the process.
Cheers,
~Ralph