defconstant does not check for invalid redefinitions
[this is not a regression, same behavior is present in 16.1.3]
(defconstant +foo+ 42) (defconstant +foo+ 13)
This should signal an error, that +foo+ is being redefined from 42 to 13. In both bytecmp and ccmp redefinition succeeds (same happens when we compile-file files with such redefinitions).
Also note, that assigning a constant leads to an error (correct behavior):
In form (SETF +FOO+ 42) SETQ: Tried to assign a value to the constant +FOO+. [Condition of type SI:SIMPLE-PROGRAM-ERROR]