>A restore could mean to SET back to a previously set output file. It does not need to be always between ON and OFF.
>My concern is when SET("DEBUGOUT") returns non-blank string, how do I know that SET DEBUGOUT is called with or without ADDITIVE clause?
It really doesn't matter if ADDITIVE clause was used before. If you issue SET DEBUGOUT w/o additive clause, you'll erase whatever was before in the file. To restore to privious setting, you would always want to issue SET DEBUGOUT ... ADDITIVE to preserve info in the file.
--sb--