From: Mikhail Glushenkov Date: Tue, 6 May 2008 17:24:26 +0000 (+0000) Subject: Return const char* instead of std::string in Tool classes X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=b96cb6082784fcf58349fa37e8d4a7cd2030c9cb;p=oota-llvm.git Return const char* instead of std::string in Tool classes git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50733 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/tools/llvmc2/Tool.h b/tools/llvmc2/Tool.h index b0cd2373038..0d907dd83a8 100644 --- a/tools/llvmc2/Tool.h +++ b/tools/llvmc2/Tool.h @@ -34,10 +34,10 @@ namespace llvmcc { virtual Action GenerateAction (llvm::sys::Path const& inFile, llvm::sys::Path const& outFile) const = 0; - virtual std::string Name() const = 0; - virtual std::string InputLanguage() const = 0; - virtual std::string OutputLanguage() const = 0; - virtual std::string OutputSuffix() const = 0; + virtual const char* Name() const = 0; + virtual const char* InputLanguage() const = 0; + virtual const char* OutputLanguage() const = 0; + virtual const char* OutputSuffix() const = 0; virtual bool IsLast() const = 0; virtual bool IsJoin() const = 0; diff --git a/utils/TableGen/LLVMCCConfigurationEmitter.cpp b/utils/TableGen/LLVMCCConfigurationEmitter.cpp index 48008f1065d..fe8e50695ca 100644 --- a/utils/TableGen/LLVMCCConfigurationEmitter.cpp +++ b/utils/TableGen/LLVMCCConfigurationEmitter.cpp @@ -742,25 +742,25 @@ void EmitIsLastMethod (const ToolProperties& P, std::ostream& O) { // Emit static [Input,Output]Language() methods for Tool classes void EmitInOutLanguageMethods (const ToolProperties& P, std::ostream& O) { - O << Indent1 << "std::string InputLanguage() const {\n" + O << Indent1 << "const char* InputLanguage() const {\n" << Indent2 << "return \"" << P.InLanguage << "\";\n" << Indent1 << "}\n\n"; - O << Indent1 << "std::string OutputLanguage() const {\n" + O << Indent1 << "const char* OutputLanguage() const {\n" << Indent2 << "return \"" << P.OutLanguage << "\";\n" << Indent1 << "}\n\n"; } // Emit static [Input,Output]Language() methods for Tool classes void EmitOutputSuffixMethod (const ToolProperties& P, std::ostream& O) { - O << Indent1 << "std::string OutputSuffix() const {\n" + O << Indent1 << "const char* OutputSuffix() const {\n" << Indent2 << "return \"" << P.OutputSuffix << "\";\n" << Indent1 << "}\n\n"; } // Emit static Name() method for Tool classes void EmitNameMethod (const ToolProperties& P, std::ostream& O) { - O << Indent1 << "std::string Name() const {\n" + O << Indent1 << "const char* Name() const {\n" << Indent2 << "return \"" << P.Name << "\";\n" << Indent1 << "}\n\n"; }