From: Daniel Dunbar Date: Thu, 17 Sep 2009 00:47:46 +0000 (+0000) Subject: Simplify. X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=13fdf289683ff7d44da1da921792bdd6f09e5758;p=clang Simplify. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@82104 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/tools/clang-cc/clang-cc.cpp b/tools/clang-cc/clang-cc.cpp index f3563e6ab2..1e1117a1aa 100644 --- a/tools/clang-cc/clang-cc.cpp +++ b/tools/clang-cc/clang-cc.cpp @@ -397,18 +397,11 @@ static llvm::cl::opt PThread("pthread", llvm::cl::desc("Support POSIX threads in generated code"), llvm::cl::init(false)); -static LangKind GetLanguage(const std::string &Filename) { +static LangKind GetLanguage(llvm::StringRef Filename) { if (BaseLang != langkind_unspecified) return BaseLang; - std::string::size_type DotPos = Filename.rfind('.'); - - if (DotPos == std::string::npos) { - BaseLang = langkind_c; // Default to C if no extension. - return langkind_c; - } - - std::string Ext = std::string(Filename.begin()+DotPos+1, Filename.end()); + llvm::StringRef Ext = Filename.rsplit('.').second; if (Ext == "c") return langkind_c; else if (Ext == "S" || Ext == "s")