Removed left brace location from LinkageSpecDecl.

llvm-svn: 126945
This commit is contained in:
Abramo Bagnara 2011-03-03 16:52:29 +00:00
parent 4a8cda8556
commit 66a35d765f
5 changed files with 5 additions and 14 deletions

View File

@ -1711,20 +1711,17 @@ private:
/// Language - The language for this linkage specification.
LanguageIDs Language;
/// LBraceLoc - The source location for the left brace (if valid).
SourceLocation LBraceLoc;
/// RBraceLoc - The source location for the right brace (if valid).
SourceLocation RBraceLoc;
LinkageSpecDecl(DeclContext *DC, SourceLocation L, LanguageIDs lang,
SourceLocation LBLoc, SourceLocation RBLoc)
SourceLocation RBLoc)
: Decl(LinkageSpec, DC, L), DeclContext(LinkageSpec),
Language(lang), LBraceLoc(LBLoc), RBraceLoc(RBLoc) { }
Language(lang), RBraceLoc(RBLoc) { }
public:
static LinkageSpecDecl *Create(ASTContext &C, DeclContext *DC,
SourceLocation L, LanguageIDs Lang,
SourceLocation LBraceLoc,
SourceLocation RBraceLoc = SourceLocation());
/// \brief Return the language specified by this linkage specification.
@ -1736,9 +1733,7 @@ public:
/// \brief Determines whether this linkage specification had braces in
/// its syntactic form.
bool hasBraces() const { return RBraceLoc.isValid(); }
SourceLocation getLBraceLoc() const { return LBraceLoc; }
SourceLocation getRBraceLoc() const { return RBraceLoc; }
void setLBraceLoc(SourceLocation L) { LBraceLoc = L; }
void setRBraceLoc(SourceLocation L) { RBraceLoc = L; }
SourceLocation getLocEnd() const {

View File

@ -1271,9 +1271,8 @@ LinkageSpecDecl *LinkageSpecDecl::Create(ASTContext &C,
DeclContext *DC,
SourceLocation L,
LanguageIDs Lang,
SourceLocation LBraceLoc,
SourceLocation RBraceLoc) {
return new (C) LinkageSpecDecl(DC, L, Lang, LBraceLoc, RBraceLoc);
return new (C) LinkageSpecDecl(DC, L, Lang, RBraceLoc);
}
UsingDirectiveDecl *UsingDirectiveDecl::Create(ASTContext &C, DeclContext *DC,

View File

@ -6575,8 +6575,7 @@ Decl *Sema::ActOnStartLinkageSpecification(Scope *S, SourceLocation ExternLoc,
// FIXME: Add all the various semantics of linkage specifications
LinkageSpecDecl *D = LinkageSpecDecl::Create(Context, CurContext,
LangLoc, Language,
LBraceLoc);
LangLoc, Language);
CurContext->addDecl(D);
PushDeclContext(S, D);
return D;

View File

@ -721,7 +721,6 @@ void ASTDeclReader::VisitBlockDecl(BlockDecl *BD) {
void ASTDeclReader::VisitLinkageSpecDecl(LinkageSpecDecl *D) {
VisitDecl(D);
D->setLanguage((LinkageSpecDecl::LanguageIDs)Record[Idx++]);
D->setLBraceLoc(ReadSourceLocation(Record, Idx));
D->setRBraceLoc(ReadSourceLocation(Record, Idx));
}
@ -1419,7 +1418,7 @@ Decl *ASTReader::ReadDeclRecord(unsigned Index, DeclID ID) {
case DECL_LINKAGE_SPEC:
D = LinkageSpecDecl::Create(*Context, 0, SourceLocation(),
(LinkageSpecDecl::LanguageIDs)0,
SourceLocation(), SourceLocation());
SourceLocation());
break;
case DECL_LABEL:
D = LabelDecl::Create(*Context, 0, SourceLocation(), 0);

View File

@ -647,7 +647,6 @@ void ASTDeclWriter::VisitBlockDecl(BlockDecl *D) {
void ASTDeclWriter::VisitLinkageSpecDecl(LinkageSpecDecl *D) {
VisitDecl(D);
Record.push_back(D->getLanguage());
Writer.AddSourceLocation(D->getLBraceLoc(), Record);
Writer.AddSourceLocation(D->getRBraceLoc(), Record);
Code = serialization::DECL_LINKAGE_SPEC;
}