When building the IR from an existing AST, my AST has some string values (at compile-time they are built from std::string) and I want to set them safely as ll
Yes, ConstantArray is what you should use here. In order to retrieve the value later just use ConstantArray::getAsCString(). If you have assertions turned on, it will assert if something will went wrong (e.g. you will try to grab string from the array w/o zero terminator).