Globals are handled simply by rejecting them. Weak undefined functions need to generate a stub which fails at runtime.
These are the two error cases described for relocations in Linking.md. The operands for `get/set_global` simply can't be generated if the symbol is undefined (which is possible if it's weak), and the operand for `call` requires generation of a synthetic stub.
Add tests for this case.