1 //===-- ResourceScriptCppFilter.h ------------------------------*- C++ -*-===//
3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4 // See https://llvm.org/LICENSE.txt for license information.
5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
7 //===---------------------------------------------------------------------===//
9 // This filters the input to llvm-rc for preprocessor markers, removing
10 // preprocessing directives that a preprocessor can output or leave behind.
12 // It also filters out any contribution from files named *.h or *.c, based
13 // on preprocessor line markers. When preprocessing RC files, the included
14 // headers can leave behind C declarations, that RC doesn't understand.
15 // Rc.exe simply discards anything that comes from files named *.h or *.h.
17 // https://msdn.microsoft.com/en-us/library/windows/desktop/aa381033(v=vs.85).aspx
19 //===---------------------------------------------------------------------===//
21 #ifndef LLVM_TOOLS_LLVMRC_RESOURCESCRIPTCPPFILTER_H
22 #define LLVM_TOOLS_LLVMRC_RESOURCESCRIPTCPPFILTER_H
24 #include "llvm/ADT/StringRef.h"
30 std::string
filterCppOutput(StringRef Input
);