Bug fix: compile was not actually compiling the correct functions
Since the introduction of the arg-checking DEFMFUN (see, for example,
commit
e7b16e89 from September 2018), attempting to call compile on
a function defined with DEFMFUN hasn't really been compiling the
correct function.
When DEFMFUN is used to define a function $FOO, it creates a function
$FOO and another internal function FOO-IMPL. FOO-IMPL contains the
real function code, while $FOO contains the arg-checking code.
When a function bar is translated, in many cases it gets defined using
DEFMFUN (there are some exceptions). Then the translation of bar goes
into BAR-IMPL while the DEFMFUN arg-checking stuff goes in $BAR. When
compiling bar via compile(bar), only $BAR has been getting compiled
since compile has known nothing about the internal function BAR-IMPL.
Now we compile the internal function at the same time.
This matters for lisp implementations that have interpreted functions.
No problems with the test suite or share test suite.
tests/rtest_translator.mac runs as expected, with a new test.