ΒΆbool ExpandResponseFiles(
    llvm::StringSaver& Saver,
    llvm::cl::TokenizerCallback Tokenizer,
    SmallVectorImpl<const char*>& Argv,
    bool MarkEOLs = false,
    bool RelativeNames = false,
    llvm::vfs::FileSystem& FS =
        *llvm::vfs::getRealFileSystem(),
    llvm::Optional<llvm::StringRef> CurrentDir =
        llvm::None)

Description

Expand response files on a command line recursively using the given StringSaver and tokenization strategy. Argv should contain the command line before expansion and will be modified in place. If requested, Argv will also be populated with nullptrs indicating where each response file line ends, which is useful for the "/link" argument that needs to consume all remaining arguments only until the next end of line, when in a response file.

Declared at: llvm/include/llvm/Support/CommandLine.h:2083

Parameters

llvm::StringSaver& Saver
Delegates back to the caller for saving parsed strings.
llvm::cl::TokenizerCallback Tokenizer
Tokenization strategy. Typically Unix or Windows.
SmallVectorImpl<const char*>& Argv
Command line into which to expand response files.
bool MarkEOLs = false
Mark end of lines and the end of the response file with nullptrs in the Argv vector.
bool RelativeNames = false
true if names of nested response files must be resolved relative to including file.
llvm::vfs::FileSystem& FS = * llvm::vfs::getRealFileSystem()
File system used for all file access when running the tool.
llvm::Optional<llvm::StringRef> CurrentDir = llvm::None
Path used to resolve relative rsp files. If set to None, process' cwd is used instead.

Returns

true if all