clang API Documentation
00001 //===--- SerializedDiagnostics.h - Common data for serialized diagnostics -===// 00002 // 00003 // The LLVM Compiler Infrastructure 00004 // 00005 // This file is distributed under the University of Illinois Open Source 00006 // License. See LICENSE.TXT for details. 00007 // 00008 //===----------------------------------------------------------------------===// 00009 00010 #ifndef LLVM_CLANG_FRONTEND_SERIALIZE_DIAGNOSTICS_H_ 00011 #define LLVM_CLANG_FRONTEND_SERIALIZE_DIAGNOSTICS_H_ 00012 00013 #include "llvm/Bitcode/BitCodes.h" 00014 00015 namespace clang { 00016 namespace serialized_diags { 00017 00018 enum BlockIDs { 00019 /// \brief A top-level block which represents any meta data associated 00020 /// with the diagostics, including versioning of the format. 00021 BLOCK_META = llvm::bitc::FIRST_APPLICATION_BLOCKID, 00022 00023 /// \brief The this block acts as a container for all the information 00024 /// for a specific diagnostic. 00025 BLOCK_DIAG 00026 }; 00027 00028 enum RecordIDs { 00029 RECORD_VERSION = 1, 00030 RECORD_DIAG, 00031 RECORD_SOURCE_RANGE, 00032 RECORD_DIAG_FLAG, 00033 RECORD_CATEGORY, 00034 RECORD_FILENAME, 00035 RECORD_FIXIT, 00036 RECORD_FIRST = RECORD_VERSION, 00037 RECORD_LAST = RECORD_FIXIT 00038 }; 00039 00040 /// \brief A stable version of DiagnosticIDs::Level. 00041 /// 00042 /// Do not change the order of values in this enum, and please increment the 00043 /// serialized diagnostics version number when you add to it. 00044 enum Level { 00045 Ignored = 0, 00046 Note, 00047 Warning, 00048 Error, 00049 Fatal, 00050 Remark 00051 }; 00052 00053 /// \brief The serialized diagnostics version number. 00054 enum { VersionNumber = 2 }; 00055 00056 } // end serialized_diags namespace 00057 } // end clang namespace 00058 00059 #endif