`Type::mod` is not pointer type, so this line is not good.
Replace this line to comment out code `//t->mod = this->mod;  // Do not touch the mod`.