1//===--- PreprocessorOutputOptions.h ----------------------------*- C++ -*-===// 2// 3// The LLVM Compiler Infrastructure 4// 5// This file is distributed under the University of Illinois Open Source 6// License. See LICENSE.TXT for details. 7// 8//===----------------------------------------------------------------------===// 9 10#ifndef LLVM_CLANG_FRONTEND_PREPROCESSOROUTPUTOPTIONS_H 11#define LLVM_CLANG_FRONTEND_PREPROCESSOROUTPUTOPTIONS_H 12 13namespace clang { 14 15/// PreprocessorOutputOptions - Options for controlling the C preprocessor 16/// output (e.g., -E). 17class PreprocessorOutputOptions { 18public: 19 unsigned ShowCPP : 1; ///< Print normal preprocessed output. 20 unsigned ShowComments : 1; ///< Show comments. 21 unsigned ShowLineMarkers : 1; ///< Show \#line markers. 22 unsigned ShowMacroComments : 1; ///< Show comments, even in macros. 23 unsigned ShowMacros : 1; ///< Print macro definitions. 24 unsigned RewriteIncludes : 1; ///< Preprocess include directives only. 25 26public: 27 PreprocessorOutputOptions() { 28 ShowCPP = 0; 29 ShowComments = 0; 30 ShowLineMarkers = 1; 31 ShowMacroComments = 0; 32 ShowMacros = 0; 33 RewriteIncludes = 0; 34 } 35}; 36 37} // end namespace clang 38 39#endif 40