diff options
| author | Eli Friedman <eli.friedman@gmail.com> | 2013-08-20 22:01:43 +0000 |
|---|---|---|
| committer | Eli Friedman <eli.friedman@gmail.com> | 2013-08-20 22:01:43 +0000 |
| commit | a617d094229bec694011cef9a32b825f658d37ba (patch) | |
| tree | 299349179118a7186d43fd2ff0614faaa270dbdd | |
| parent | ce76304627d39e9e4308a2d0fe63d7b4651feaa5 (diff) | |
| download | bcm5719-llvm-a617d094229bec694011cef9a32b825f658d37ba.tar.gz bcm5719-llvm-a617d094229bec694011cef9a32b825f658d37ba.zip | |
Fix iterator invalidation. PR16935.
llvm-svn: 188835
| -rw-r--r-- | clang/tools/driver/driver.cpp | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/clang/tools/driver/driver.cpp b/clang/tools/driver/driver.cpp index 11fa4d289eb..88863ab0661 100644 --- a/clang/tools/driver/driver.cpp +++ b/clang/tools/driver/driver.cpp @@ -269,9 +269,10 @@ static void ParseProgName(SmallVectorImpl<const char *> &ArgVector, 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("-target"))); + const char* Strings[] = + { SaveStringInSet(SavedStrings, std::string("-target")), + SaveStringInSet(SavedStrings, Prefix) }; + ArgVector.insert(it, Strings, Strings + llvm::array_lengthof(Strings)); } } |

