//===--- DiagOptions.def - Diagnostic option database ------------- C++ -*-===// // // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. // See https://llvm.org/LICENSE.txt for license information. // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// // // This file defines the diagnostic options. Users of this file // must define the DIAGOPT macro to make use of this information. // Optionally, the user may also define ENUM_DIAGOPT (for options // that have enumeration type and VALUE_DIAGOPT (for options that // describe a value rather than a flag). The SEMANTIC_* variants of these macros // indicate options that affect the processing of the program, rather than // simply the output. // //===----------------------------------------------------------------------===// #ifndef DIAGOPT # error Define the DIAGOPT macro to handle language options #endif #ifndef VALUE_DIAGOPT # define VALUE_DIAGOPT(Name, Bits, Default) \ DIAGOPT(Name, Bits, Default) #endif #ifndef ENUM_DIAGOPT # define ENUM_DIAGOPT(Name, Type, Bits, Default) \ DIAGOPT(Name, Bits, Default) #endif #ifndef SEMANTIC_DIAGOPT # define SEMANTIC_DIAGOPT(Name, Bits, Default) DIAGOPT(Name, Bits, Default) #endif #ifndef SEMANTIC_VALUE_DIAGOPT # define SEMANTIC_VALUE_DIAGOPT(Name, Bits, Default) \ VALUE_DIAGOPT(Name, Bits, Default) #endif #ifndef SEMANTIC_ENUM_DIAGOPT # define SEMANTIC_ENUM_DIAGOPT(Name, Type, Bits, Default) \ ENUM_DIAGOPT(Name, Type, Bits, Default) #endif SEMANTIC_DIAGOPT( … }