Attempt to work around the "void*" Ubuntu bug

It appears that for some reason my template that turns

  libcodegen::pointer<void>::as_llvm() => "void*"

into

  libcodegen::pointer<void>::as_llvm() => "u8*"

is not working properly on Ubuntu.  This is really odd because it's
only happening in the package that I get back from Canonical's
servers, not when I try to build this myself.

I've added a bit of a hack to work around this behavior by adding a
runtime check, but I really don't understand at all why this isn't
working correctly.