1199482Srdivacky//===--- PreprocessorOutputOptions.h ----------------------------*- C++ -*-===// 2199482Srdivacky// 3199482Srdivacky// The LLVM Compiler Infrastructure 4199482Srdivacky// 5199482Srdivacky// This file is distributed under the University of Illinois Open Source 6199482Srdivacky// License. See LICENSE.TXT for details. 7199482Srdivacky// 8199482Srdivacky//===----------------------------------------------------------------------===// 9199482Srdivacky 10199482Srdivacky#ifndef LLVM_CLANG_FRONTEND_PREPROCESSOROUTPUTOPTIONS_H 11199482Srdivacky#define LLVM_CLANG_FRONTEND_PREPROCESSOROUTPUTOPTIONS_H 12199482Srdivacky 13199482Srdivackynamespace clang { 14199482Srdivacky 15199482Srdivacky/// PreprocessorOutputOptions - Options for controlling the C preprocessor 16199482Srdivacky/// output (e.g., -E). 17199482Srdivackyclass PreprocessorOutputOptions { 18199482Srdivackypublic: 19212904Sdim unsigned ShowCPP : 1; ///< Print normal preprocessed output. 20212904Sdim unsigned ShowComments : 1; ///< Show comments. 21239462Sdim unsigned ShowLineMarkers : 1; ///< Show \#line markers. 22212904Sdim unsigned ShowMacroComments : 1; ///< Show comments, even in macros. 23212904Sdim unsigned ShowMacros : 1; ///< Print macro definitions. 24239462Sdim unsigned RewriteIncludes : 1; ///< Preprocess include directives only. 25199482Srdivacky 26199482Srdivackypublic: 27199482Srdivacky PreprocessorOutputOptions() { 28249423Sdim ShowCPP = 0; 29212904Sdim ShowComments = 0; 30199482Srdivacky ShowLineMarkers = 1; 31199482Srdivacky ShowMacroComments = 0; 32212904Sdim ShowMacros = 0; 33239462Sdim RewriteIncludes = 0; 34199482Srdivacky } 35199482Srdivacky}; 36199482Srdivacky 37199482Srdivacky} // end namespace clang 38199482Srdivacky 39199482Srdivacky#endif 40