Author: labath Date: Mon Aug 26 05:42:32 2019 New Revision: 369905 URL: http://llvm.org/viewvc/llvm-project?rev=369905&view=rev Log: Fix windows build after r369894
Constructing a std::vector from a llvm::map_range fails on windows, apparently because std::vector expects the input iterator to have a const operator* (map_range iterator has a non-const one). This avoids the cleverness and unrolls the map-loop manually (which is also slightly shorter). Modified: lldb/trunk/unittests/Symbol/PostfixExpressionTest.cpp Modified: lldb/trunk/unittests/Symbol/PostfixExpressionTest.cpp URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/unittests/Symbol/PostfixExpressionTest.cpp?rev=369905&r1=369904&r2=369905&view=diff ============================================================================== --- lldb/trunk/unittests/Symbol/PostfixExpressionTest.cpp (original) +++ lldb/trunk/unittests/Symbol/PostfixExpressionTest.cpp Mon Aug 26 05:42:32 2019 @@ -108,12 +108,10 @@ ParseFPOAndStringify(llvm::StringRef pro llvm::BumpPtrAllocator alloc; std::vector<std::pair<llvm::StringRef, Node *>> parsed = ParseFPOProgram(prog, alloc); - auto range = llvm::map_range( - parsed, [](const std::pair<llvm::StringRef, Node *> &pair) { - return std::make_pair(pair.first, ASTPrinter::Print(pair.second)); - }); - return std::vector<std::pair<std::string, std::string>>(range.begin(), - range.end()); + std::vector<std::pair<std::string, std::string>> result; + for (const auto &p : parsed) + result.emplace_back(p.first, ASTPrinter::Print(p.second)); + return result; } TEST(PostfixExpression, ParseFPOProgram) { _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits