In the beginning of function I establish a list of the necessary environment variables,
list variable always miscellaneous:
(SETQ
ERROR-LST-
'("AUTOSNAP" "OSMODE" "APERTURE" "HPSPACE" "HPASSOC" "MIRRTEXT" "AUPREC" "LUPREC"
"DIMZIN" "cecolor"
)
ERROR-LST- (mapcar (function (lambda (a) (list 'setvar a (getvar a)))) ERROR-LST-)
) ;_ SETQ
Function *error*
(defun *error* (msg) (MAPCAR 'eval ERROR-LST-))
It is a universal *error* function