mirror of
https://github.com/carbon-language/carbon-lang.git
synced 2026-10-05 17:01:05 +01:00
Use llvm::any_of instead of std::ranges::any_of (#4542)
We do not intend to use std::ranges in the Carbon implementation due to concerns of compile time cost, largely due to implicit instantiation of types involved in calling and typechecking the functions and their requires clauses. In #4539, we converted std::any_of to std::ranges::any_of, but this replaces that with llvm::any_of from llvm/ADT/STLExtras.h. This conversion was suggested by the modernize-use-ranges clang-tidy check. We can keep the check on, and use it to guide conversion to llvm helpers that do similar things (as was done in this CL now). If it's being too confusing, then it can be disabled as well.
This commit is contained in:
@@ -5,6 +5,7 @@
|
||||
#include "toolchain/driver/compile_subcommand.h"
|
||||
|
||||
#include "common/vlog.h"
|
||||
#include "llvm/ADT/STLExtras.h"
|
||||
#include "llvm/ADT/ScopeExit.h"
|
||||
#include "toolchain/base/pretty_stack_trace_function.h"
|
||||
#include "toolchain/base/timings.h"
|
||||
@@ -807,8 +808,7 @@ auto CompileSubcommand::Run(DriverEnv& driver_env) -> DriverResult {
|
||||
}
|
||||
|
||||
// Unlike previous steps, errors block further progress.
|
||||
if (std::ranges::any_of(units,
|
||||
[&](const auto& unit) { return !unit->success(); })) {
|
||||
if (llvm::any_of(units, [&](const auto& unit) { return !unit->success(); })) {
|
||||
CARBON_VLOG_TO(driver_env.vlog_stream,
|
||||
"*** Stopping before lowering due to errors ***");
|
||||
return make_result();
|
||||
|
||||
Reference in New Issue
Block a user