parent
ee8b55d6a8
commit
ba4b86d074
|
@ -931,10 +931,6 @@ public:
|
|||
return const_cast<VarDecl*>(this)->getActingDefinition();
|
||||
}
|
||||
|
||||
/// \brief Determine whether this is a tentative definition of a
|
||||
/// variable in C.
|
||||
bool isTentativeDefinitionNow() const;
|
||||
|
||||
/// \brief Get the real (not just tentative) definition for this declaration.
|
||||
VarDecl *getDefinition(ASTContext &);
|
||||
const VarDecl *getDefinition(ASTContext &C) const {
|
||||
|
|
|
@ -428,7 +428,6 @@ public:
|
|||
return const_cast<AttrVec&>(const_cast<const Decl*>(this)->getAttrs());
|
||||
}
|
||||
const AttrVec &getAttrs() const;
|
||||
void swapAttrs(Decl *D);
|
||||
void dropAttrs();
|
||||
|
||||
void addAttr(Attr *A) {
|
||||
|
|
|
@ -1715,18 +1715,6 @@ VarDecl *VarDecl::getActingDefinition() {
|
|||
return LastTentative;
|
||||
}
|
||||
|
||||
bool VarDecl::isTentativeDefinitionNow() const {
|
||||
DefinitionKind Kind = isThisDeclarationADefinition();
|
||||
if (Kind != TentativeDefinition)
|
||||
return false;
|
||||
|
||||
for (redecl_iterator I = redecls_begin(), E = redecls_end(); I != E; ++I) {
|
||||
if ((*I)->isThisDeclarationADefinition() == Definition)
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
VarDecl *VarDecl::getDefinition(ASTContext &C) {
|
||||
VarDecl *First = getFirstDeclaration();
|
||||
for (redecl_iterator I = First->redecls_begin(), E = First->redecls_end();
|
||||
|
|
|
@ -595,32 +595,6 @@ const AttrVec &Decl::getAttrs() const {
|
|||
return getASTContext().getDeclAttrs(this);
|
||||
}
|
||||
|
||||
void Decl::swapAttrs(Decl *RHS) {
|
||||
bool HasLHSAttr = this->HasAttrs;
|
||||
bool HasRHSAttr = RHS->HasAttrs;
|
||||
|
||||
// Usually, neither decl has attrs, nothing to do.
|
||||
if (!HasLHSAttr && !HasRHSAttr) return;
|
||||
|
||||
// If 'this' has no attrs, swap the other way.
|
||||
if (!HasLHSAttr)
|
||||
return RHS->swapAttrs(this);
|
||||
|
||||
ASTContext &Context = getASTContext();
|
||||
|
||||
// Handle the case when both decls have attrs.
|
||||
if (HasRHSAttr) {
|
||||
std::swap(Context.getDeclAttrs(this), Context.getDeclAttrs(RHS));
|
||||
return;
|
||||
}
|
||||
|
||||
// Otherwise, LHS has an attr and RHS doesn't.
|
||||
Context.getDeclAttrs(RHS) = Context.getDeclAttrs(this);
|
||||
Context.eraseDeclAttrs(this);
|
||||
this->HasAttrs = false;
|
||||
RHS->HasAttrs = true;
|
||||
}
|
||||
|
||||
Decl *Decl::castFromDeclContext (const DeclContext *D) {
|
||||
Decl::Kind DK = D->getDeclKind();
|
||||
switch(DK) {
|
||||
|
|
Loading…
Reference in New Issue