diff --git a/tools/llvmc/doc/LLVMC-Reference.rst b/tools/llvmc/doc/LLVMC-Reference.rst index 9eb927c1658..53049d7b3c2 100644 --- a/tools/llvmc/doc/LLVMC-Reference.rst +++ b/tools/llvmc/doc/LLVMC-Reference.rst @@ -565,7 +565,7 @@ or names in the configuration file. This can be easily achieved via the hooks mechanism. To write your own hooks, just add their definitions to the ``PluginMain.cpp`` or drop a ``.cpp`` file into the your plugin directory. Hooks should live in the ``hooks`` namespace -and have the signature ``const char* hooks::MyHookName ([const char* +and have the signature ``std::string hooks::MyHookName ([const char* Arg0 [ const char* Arg2 [, ...]]])``. They can be used from the ``cmd_line`` tool property:: diff --git a/utils/TableGen/LLVMCConfigurationEmitter.cpp b/utils/TableGen/LLVMCConfigurationEmitter.cpp index 3de4d37f25e..ec023ba728a 100644 --- a/utils/TableGen/LLVMCConfigurationEmitter.cpp +++ b/utils/TableGen/LLVMCConfigurationEmitter.cpp @@ -1866,7 +1866,7 @@ void EmitHookDeclarations(const ToolDescriptions& ToolDescs, std::ostream& O) { O << "namespace hooks {\n"; for (StringMap::const_iterator B = HookNames.begin(), E = HookNames.end(); B != E; ++B) { - O << Indent1 << "const char* " << B->first() << "("; + O << Indent1 << "std::string " << B->first() << "("; for (unsigned i = 0, j = B->second; i < j; ++i) { O << "const char* Arg" << i << (i+1 == j ? "" : ", ");