Files
carbon-lang/toolchain/driver/driver_subcommand.cpp
T
Chandler Carruth 437d3b9af6 Factor out fuzzing disablement in the driver (#5048)
We end up needing to do this in any driver subcommand that reaches into
external code that may not be fully fuzz-clean. No need to grow multiple
different diagnostics for each, we can use a common diagnostic.
2025-03-03 16:14:06 +00:00

30 lines
895 B
C++

// Part of the Carbon Language project, under the Apache License v2.0 with LLVM
// Exceptions. See /LICENSE for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
#include "toolchain/driver/driver_subcommand.h"
#include "llvm/TargetParser/Host.h"
#include "llvm/TargetParser/Triple.h"
#include "toolchain/driver/lld_runner.h"
namespace Carbon {
auto DriverSubcommand::DisableFuzzingExternalLibraries(DriverEnv& driver_env,
llvm::StringRef name)
-> bool {
// Only need to do anything when fuzzing.
if (!driver_env.fuzzing) {
return true;
}
CARBON_DIAGNOSTIC(
ToolFuzzingDisallowed, Error,
"preventing fuzzing of `{0}` subcommand due to external library",
std::string);
driver_env.emitter.Emit(ToolFuzzingDisallowed, name.str());
return false;
}
} // namespace Carbon