diff --git a/llvm/lib/Option/OptTable.cpp b/llvm/lib/Option/OptTable.cpp --- a/llvm/lib/Option/OptTable.cpp +++ b/llvm/lib/Option/OptTable.cpp @@ -198,8 +198,8 @@ static bool optionMatches(const OptTable::Info &In, StringRef Option) { if (In.Prefixes) for (size_t I = 0; In.Prefixes[I]; I++) - if (Option.endswith(In.Name)) - if (Option == std::string(In.Prefixes[I]) + In.Name) + if (Option.consume_back(In.Name)) + if (Option.equals(In.Prefixes[I])) return true; return false; }