Hello.
I believe I have found a bug in FASL loading, with respect to *read-base* being reset. At least, I get the behavior I expect in sbcl, and not in abcl.
Consider the following code:
(defmacro foo-bar (s) `(sublis '((foo . bar)) ,s))
(defun foo-bar-rb () (let ((*read-base* #x10) (it (read))) (eval it)))
Load this code, then execute (foo-bar-rb). It will wait for input. Type (foo-bar '(foo)). I would expect this to evaluate to (bar), but abcl gives a FASL version mismatch, where it seems that it is reading the FASL in the new base (16 instead of 10), and reports "found '56' but expected '38' in sublis".