1775bee71ad21c84bc130af22ac47c1c8e0f9e72fDaniel Dunbar//===--- PreprocessorOutputOptions.h ----------------------------*- C++ -*-===// 2775bee71ad21c84bc130af22ac47c1c8e0f9e72fDaniel Dunbar// 3775bee71ad21c84bc130af22ac47c1c8e0f9e72fDaniel Dunbar// The LLVM Compiler Infrastructure 4775bee71ad21c84bc130af22ac47c1c8e0f9e72fDaniel Dunbar// 5775bee71ad21c84bc130af22ac47c1c8e0f9e72fDaniel Dunbar// This file is distributed under the University of Illinois Open Source 6775bee71ad21c84bc130af22ac47c1c8e0f9e72fDaniel Dunbar// License. See LICENSE.TXT for details. 7775bee71ad21c84bc130af22ac47c1c8e0f9e72fDaniel Dunbar// 8775bee71ad21c84bc130af22ac47c1c8e0f9e72fDaniel Dunbar//===----------------------------------------------------------------------===// 9775bee71ad21c84bc130af22ac47c1c8e0f9e72fDaniel Dunbar 10775bee71ad21c84bc130af22ac47c1c8e0f9e72fDaniel Dunbar#ifndef LLVM_CLANG_FRONTEND_PREPROCESSOROUTPUTOPTIONS_H 11775bee71ad21c84bc130af22ac47c1c8e0f9e72fDaniel Dunbar#define LLVM_CLANG_FRONTEND_PREPROCESSOROUTPUTOPTIONS_H 12775bee71ad21c84bc130af22ac47c1c8e0f9e72fDaniel Dunbar 13775bee71ad21c84bc130af22ac47c1c8e0f9e72fDaniel Dunbarnamespace clang { 14775bee71ad21c84bc130af22ac47c1c8e0f9e72fDaniel Dunbar 15775bee71ad21c84bc130af22ac47c1c8e0f9e72fDaniel Dunbar/// PreprocessorOutputOptions - Options for controlling the C preprocessor 16775bee71ad21c84bc130af22ac47c1c8e0f9e72fDaniel Dunbar/// output (e.g., -E). 17775bee71ad21c84bc130af22ac47c1c8e0f9e72fDaniel Dunbarclass PreprocessorOutputOptions { 18775bee71ad21c84bc130af22ac47c1c8e0f9e72fDaniel Dunbarpublic: 19f7c16d903f11814e2d6780e2a2e189b7a7afc4edDaniel Dunbar unsigned ShowCPP : 1; ///< Print normal preprocessed output. 20f7c16d903f11814e2d6780e2a2e189b7a7afc4edDaniel Dunbar unsigned ShowComments : 1; ///< Show comments. 21809d1be9820039b4cf6efa48246a0d70ffa13394James Dennett unsigned ShowLineMarkers : 1; ///< Show \#line markers. 22f7c16d903f11814e2d6780e2a2e189b7a7afc4edDaniel Dunbar unsigned ShowMacroComments : 1; ///< Show comments, even in macros. 23f7c16d903f11814e2d6780e2a2e189b7a7afc4edDaniel Dunbar unsigned ShowMacros : 1; ///< Print macro definitions. 24f1492f970c7c6eb85dc18f13fb864b185bed1d23David Blaikie unsigned RewriteIncludes : 1; ///< Preprocess include directives only. 25775bee71ad21c84bc130af22ac47c1c8e0f9e72fDaniel Dunbar 26775bee71ad21c84bc130af22ac47c1c8e0f9e72fDaniel Dunbarpublic: 27775bee71ad21c84bc130af22ac47c1c8e0f9e72fDaniel Dunbar PreprocessorOutputOptions() { 2874c2498bb9e339345ee32bdd095e76157cec3b86Jordan Rose ShowCPP = 0; 29775bee71ad21c84bc130af22ac47c1c8e0f9e72fDaniel Dunbar ShowComments = 0; 30f7c16d903f11814e2d6780e2a2e189b7a7afc4edDaniel Dunbar ShowLineMarkers = 1; 31775bee71ad21c84bc130af22ac47c1c8e0f9e72fDaniel Dunbar ShowMacroComments = 0; 32f7c16d903f11814e2d6780e2a2e189b7a7afc4edDaniel Dunbar ShowMacros = 0; 33f1492f970c7c6eb85dc18f13fb864b185bed1d23David Blaikie RewriteIncludes = 0; 34775bee71ad21c84bc130af22ac47c1c8e0f9e72fDaniel Dunbar } 35775bee71ad21c84bc130af22ac47c1c8e0f9e72fDaniel Dunbar}; 36775bee71ad21c84bc130af22ac47c1c8e0f9e72fDaniel Dunbar 37775bee71ad21c84bc130af22ac47c1c8e0f9e72fDaniel Dunbar} // end namespace clang 38775bee71ad21c84bc130af22ac47c1c8e0f9e72fDaniel Dunbar 39775bee71ad21c84bc130af22ac47c1c8e0f9e72fDaniel Dunbar#endif 40