Стоит посмотреть на готовый define-constant в alexandria (файлик definitions.lisp), там рядом как раз и проверка лежит. Если изменить без перезаливки всего начисто, то это implementation defined, как я понимаю, так как в CLHS пишут, что "A constant defined by
defconstant can be redefined with
defconstant. However, the consequences are undefined if an attempt is made to assign a
value to the
symbol using another operator, or to assign it to a
different value using a subsequent
defconstant." http://www.lispworks.com/documentation/HyperSpec/Body/m_defcon.htm#defconstant