#ifndef LLVM_CLANG_PARSE_SEMADECLSPEC_H
#define LLVM_CLANG_PARSE_SEMADECLSPEC_H
-#include "clang/Basic/Diagnostic.h"
#include "clang/Parse/Action.h"
#include "clang/Parse/AttributeList.h"
#include "llvm/ADT/SmallVector.h"
namespace clang {
struct LangOptions;
+ class Diagnostic;
class IdentifierInfo;
/// DeclSpec - This class captures information about "declaration specifiers",
private:
void Diag(Diagnostic &D, SourceLocation Loc, SourceManager& SrcMgr,
- unsigned DiagID) {
- D.Report(FullSourceLoc(Loc,SrcMgr), DiagID);
- }
+ unsigned DiagID);
void Diag(Diagnostic &D, SourceLocation Loc, SourceManager& SrcMgr,
- unsigned DiagID, const std::string &info) {
- D.Report(FullSourceLoc(Loc,SrcMgr), DiagID, &info, 1);
- }
+ unsigned DiagID, const std::string &info);
};
/// ObjCDeclSpec - This class captures information about
//===----------------------------------------------------------------------===//
#include "clang/Parse/DeclSpec.h"
+#include "clang/Basic/Diagnostic.h"
#include "clang/Basic/LangOptions.h"
#include "clang/Basic/SourceLocation.h"
using namespace clang;
// 'data definition has no type or storage class'?
}
+
+void DeclSpec::Diag(Diagnostic &D, SourceLocation Loc, SourceManager& SrcMgr,
+ unsigned DiagID) {
+ D.Report(FullSourceLoc(Loc,SrcMgr), DiagID);
+}
+
+void DeclSpec::Diag(Diagnostic &D, SourceLocation Loc, SourceManager& SrcMgr,
+ unsigned DiagID, const std::string &info) {
+ D.Report(FullSourceLoc(Loc,SrcMgr), DiagID, &info, 1);
+}
//===----------------------------------------------------------------------===//
#include "clang/Parse/Parser.h"
+#include "clang/Basic/Diagnostic.h"
#include "clang/Parse/DeclSpec.h"
#include "clang/Parse/Scope.h"
#include "llvm/ADT/SmallSet.h"
//===----------------------------------------------------------------------===//
#include "clang/Parse/Parser.h"
+#include "clang/Basic/Diagnostic.h"
#include "clang/Parse/DeclSpec.h"
#include "clang/Parse/Scope.h"
using namespace clang;
#include "clang/AST/Type.h"
#include "clang/Parse/DeclSpec.h"
#include "clang/Parse/Scope.h"
+#include "clang/Basic/Diagnostic.h"
#include "clang/Basic/LangOptions.h"
#include "clang/Basic/TargetInfo.h"
#include "clang/Basic/SourceManager.h"
#include "Sema.h"
#include "clang/AST/ASTContext.h"
+#include "clang/Basic/Diagnostic.h"
#include "clang/Basic/TargetInfo.h"
#include "clang/Parse/DeclSpec.h"
#include <llvm/ADT/StringExtras.h>
#include "clang/Parse/DeclSpec.h"
#include "clang/Lex/Preprocessor.h"
#include "clang/Lex/LiteralSupport.h"
+#include "clang/Basic/Diagnostic.h"
#include "clang/Basic/SourceManager.h"
#include "clang/Basic/TargetInfo.h"
#include "llvm/ADT/OwningPtr.h"
#include "clang/AST/ASTContext.h"
#include "clang/AST/Decl.h"
#include "clang/AST/DeclObjC.h"
-#include "clang/Parse/DeclSpec.h"
+#include "clang/Basic/Diagnostic.h"
#include "clang/Basic/LangOptions.h"
+#include "clang/Parse/DeclSpec.h"
using namespace clang;
/// ConvertDeclSpecToType - Convert the specified declspec to the appropriate