#include <string>
#include <vector>
#include <clang/Lex/PreprocessorOptions.h>
/* Convert a clang::PreprocessorOptions to the fourth argument
* of CompilerInvocation::setLangDefaults, which may be either
* a clang::PreprocessorOptions itself or its Includes.
*/
struct setLangDefaultsArg4 {
setLangDefaultsArg4(clang::PreprocessorOptions &PO) : PO(PO) {}
operator clang::PreprocessorOptions &() { return PO; }
operator std::vector<std::string> &() { return PO.Includes; }
clang::PreprocessorOptions &PO;
};