1210008Srdivacky//===----- Attr.h - Enum values for C Attribute Kinds ----------*- C++ -*-===// 2210008Srdivacky// 3210008Srdivacky// The LLVM Compiler Infrastructure 4210008Srdivacky// 5210008Srdivacky// This file is distributed under the University of Illinois Open Source 6210008Srdivacky// License. See LICENSE.TXT for details. 7210008Srdivacky// 8210008Srdivacky//===----------------------------------------------------------------------===// 9239462Sdim/// 10239462Sdim/// \file 11239462Sdim/// \brief Defines the clang::attr::Kind enum. 12239462Sdim/// 13210008Srdivacky//===----------------------------------------------------------------------===// 14210008Srdivacky 15210008Srdivacky#ifndef LLVM_CLANG_ATTRKINDS_H 16210008Srdivacky#define LLVM_CLANG_ATTRKINDS_H 17210008Srdivacky 18210008Srdivackynamespace clang { 19210008Srdivacky 20210008Srdivackynamespace attr { 21210008Srdivacky 22239462Sdim// \brief A list of all the recognized kinds of attributes. 23210008Srdivackyenum Kind { 24210008Srdivacky#define ATTR(X) X, 25218893Sdim#define LAST_INHERITABLE_ATTR(X) X, LAST_INHERITABLE = X, 26221345Sdim#define LAST_INHERITABLE_PARAM_ATTR(X) X, LAST_INHERITABLE_PARAM = X, 27263508Sdim#define LAST_MS_INHERITANCE_ATTR(X) X, LAST_MS_INHERITANCE = X, 28210008Srdivacky#include "clang/Basic/AttrList.inc" 29210008Srdivacky NUM_ATTRS 30210008Srdivacky}; 31210008Srdivacky 32210008Srdivacky} // end namespace attr 33210008Srdivacky} // end namespace clang 34210008Srdivacky 35210008Srdivacky#endif 36