Param is a type of Value which may be used
as an Operand to an Instruction. It is also
used in MethodSignatures to
define the method parameters.
The only thing useful to be done with a Param is to construct it for
use with another object. It may be constructed either
directly or through an Allocator
object.
Param(std::string
Name, Type *Tp) : Value(Name, Tp), index_(-1) { }