parent
bc48f32d0a
commit
de15baf1f4
|
@ -5553,7 +5553,7 @@ public:
|
|||
SourceLocation PragmaLoc);
|
||||
|
||||
/// ActOnPragmaVisibility - Called on well formed #pragma GCC visibility... .
|
||||
void ActOnPragmaVisibility(bool IsPush, const IdentifierInfo* VisType,
|
||||
void ActOnPragmaVisibility(const IdentifierInfo* VisType,
|
||||
SourceLocation PragmaLoc);
|
||||
|
||||
NamedDecl *DeclClonePragmaWeak(NamedDecl *ND, IdentifierInfo *II,
|
||||
|
|
|
@ -42,13 +42,10 @@ void PragmaGCCVisibilityHandler::HandlePragma(Preprocessor &PP,
|
|||
|
||||
const IdentifierInfo *PushPop = Tok.getIdentifierInfo();
|
||||
|
||||
bool IsPush;
|
||||
const IdentifierInfo *VisType;
|
||||
if (PushPop && PushPop->isStr("pop")) {
|
||||
IsPush = false;
|
||||
VisType = 0;
|
||||
} else if (PushPop && PushPop->isStr("push")) {
|
||||
IsPush = true;
|
||||
PP.LexUnexpandedToken(Tok);
|
||||
if (Tok.isNot(tok::l_paren)) {
|
||||
PP.Diag(Tok.getLocation(), diag::warn_pragma_expected_lparen)
|
||||
|
@ -80,7 +77,7 @@ void PragmaGCCVisibilityHandler::HandlePragma(Preprocessor &PP,
|
|||
return;
|
||||
}
|
||||
|
||||
Actions.ActOnPragmaVisibility(IsPush, VisType, VisLoc);
|
||||
Actions.ActOnPragmaVisibility(VisType, VisLoc);
|
||||
}
|
||||
|
||||
// #pragma pack(...) comes in the following delicious flavors:
|
||||
|
|
|
@ -345,9 +345,9 @@ static void PushPragmaVisibility(Sema &S, unsigned type, SourceLocation loc) {
|
|||
Stack->push_back(std::make_pair(type, loc));
|
||||
}
|
||||
|
||||
void Sema::ActOnPragmaVisibility(bool IsPush, const IdentifierInfo* VisType,
|
||||
void Sema::ActOnPragmaVisibility(const IdentifierInfo* VisType,
|
||||
SourceLocation PragmaLoc) {
|
||||
if (IsPush) {
|
||||
if (VisType) {
|
||||
// Compute visibility to use.
|
||||
VisibilityAttr::VisibilityType type;
|
||||
if (VisType->isStr("default"))
|
||||
|
|
Loading…
Reference in New Issue