Fix fully qualified symbol name outside a module
The code in `absolute_name` constructed the correct name, then patched it to get the module prefix for updating the list of referenced modules, then backed out the patch to return the full name. The patching handled symbols outside any module incorrectly, resulting in weird references of names ending in a single quote by patching the opening quote instead of the (non-existent) separating dot, and names starting with a dot and ending in a single quote because the patch was undone by unconditionally putting a dot in where there had been none. This makes the entire module prefix and module referencing conditional upon the existence of an enclosing module and furthermore documents/asserts the structure of the generated name. Signed-off-by: Erik Boasson <eb@ilities.com>
E
Erik Boasson committed
f228c5aba0286542059546d56d5117eb20827377
Parent: 7486f55