diff options
author | Joerg Sonnenberger <joerg@bec.de> | 2011-07-07 16:57:26 +0000 |
---|---|---|
committer | Joerg Sonnenberger <joerg@bec.de> | 2011-07-07 16:57:26 +0000 |
commit | ca0264320a02c636beaedf834e8725b7d1d767e7 (patch) | |
tree | 7830e2995df70c5cf83a6cbbdf55ea2d3eae7cc8 /tools/driver/driver.cpp | |
parent | 3da626b4f38eb0350de960d71271ca77af7a9cc8 (diff) |
Slightly improve the code to derive target from program name to not
fault if no arguments are given.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@134618 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'tools/driver/driver.cpp')
-rw-r--r-- | tools/driver/driver.cpp | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/tools/driver/driver.cpp b/tools/driver/driver.cpp index db72da42ea..ca8982619e 100644 --- a/tools/driver/driver.cpp +++ b/tools/driver/driver.cpp @@ -327,9 +327,11 @@ static void ParseProgName(llvm::SmallVectorImpl<const char *> &ArgVector, std::string IgnoredError; if (llvm::TargetRegistry::lookupTarget(Prefix, IgnoredError)) { - ArgVector.insert(&ArgVector[1], - SaveStringInSet(SavedStrings, Prefix)); - ArgVector.insert(&ArgVector[1], + llvm::SmallVectorImpl<const char *>::iterator it = ArgVector.begin(); + if (it != ArgVector.end()) + ++it; + ArgVector.insert(it, SaveStringInSet(SavedStrings, Prefix)); + ArgVector.insert(it, SaveStringInSet(SavedStrings, std::string("-ccc-host-triple"))); } } |