// FIXME: Do not warn on C++11 attributes, once we start supporting
// them here.
Diag(Tok, diag::warn_attribute_on_function_definition)
- << LA.AttrName.getName();
+ << &LA.AttrName;
}
ParsedAttributes Attrs(AttrFactory);
if (!IsThreadSafetyAttribute(DtorAttrs->getName()->getName()) &&
!DtorAttrs->isCXX11Attribute()) {
Diag(DtorAttrs->getLoc(), diag::warn_attribute_on_function_definition)
- << DtorAttrs->getName()->getName();
+ << DtorAttrs->getName();
}
DtorAttrs = DtorAttrs->getNext();
}
int testFundef1(int *a) __attribute__((nonnull(1))) { // \
- // expected-warning {{GCC does not allow nonnull attribute in this position on a function definition}}
+ // expected-warning {{GCC does not allow 'nonnull' attribute in this position on a function definition}}
return *a;
}
// noreturn is lifted to type qualifier
void testFundef2() __attribute__((noreturn)) { // \
- // expected-warning {{GCC does not allow noreturn attribute in this position on a function definition}}
+ // expected-warning {{GCC does not allow 'noreturn' attribute in this position on a function definition}}
testFundef2();
}
int testFundef3(int *a) __attribute__((nonnull(1), // \
- // expected-warning {{GCC does not allow nonnull attribute in this position on a function definition}}
+ // expected-warning {{GCC does not allow 'nonnull' attribute in this position on a function definition}}
pure)) { // \
- // expected-warning {{GCC does not allow pure attribute in this position on a function definition}}
+ // expected-warning {{GCC does not allow 'pure' attribute in this position on a function definition}}
return *a;
}
int testFundef4(int *a) __attribute__((nonnull(1))) // \
- // expected-warning {{GCC does not allow nonnull attribute in this position on a function definition}}
+ // expected-warning {{GCC does not allow 'nonnull' attribute in this position on a function definition}}
__attribute((pure)) { // \
- // expected-warning {{GCC does not allow pure attribute in this position on a function definition}}
+ // expected-warning {{GCC does not allow 'pure' attribute in this position on a function definition}}
return *a;
}