//===--- Sema.h - Semantic Analysis & AST Building --------------*- C++ -*-===////// The LLVM Compiler Infrastructure//// This file is distributed under the University of Illinois Open Source// License. See LICENSE.TXT for details.////===----------------------------------------------------------------------===////// This file defines the Sema class, which performs semantic analysis and// builds ASTs.////===----------------------------------------------------------------------===//#ifndef LLVM_CLANG_AST_SEMA_H#define LLVM_CLANG_AST_SEMA_H#include"IdentifierResolver.h"#include"CXXFieldCollector.h"#include"SemaOverload.h"#include"clang/Parse/Action.h"#include"clang/Basic/Diagnostic.h"#include"llvm/ADT/SmallVector.h"#include"llvm/ADT/DenseSet.h"#include"llvm/ADT/SmallPtrSet.h"#include"llvm/ADT/OwningPtr.h"#include<vector>namespacellvm{classAPSInt;}namespaceclang{classASTContext;classASTConsumer;classPreprocessor;classDecl;classDeclContext;classDeclSpec;classNamedDecl;classScopedDecl;classExpr;classInitListExpr;classCallExpr;classVarDecl;classParmVarDecl;classTypedefDecl;classFunctionDecl;classQualType;structLangOptions;classToken;classIntegerLiteral;classStringLiteral;classArrayType;classLabelStmt;classSwitchStmt;classExtVectorType;classTypedefDecl;classObjCInterfaceDecl;class