> +LLVMValueRef LLVMInstructionClone(LLVMValueRef Inst) { > + if (Instruction *C = dyn_cast<Instruction>(unwrap(Inst))) Why dyn_cast? It seems better to document that an Instruction must be passed and use cast. Cheers, Rafael