diff options
Diffstat (limited to 'gcc/c-family/c-attribs.c')
-rw-r--r-- | gcc/c-family/c-attribs.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/gcc/c-family/c-attribs.c b/gcc/c-family/c-attribs.c index 1c9f285..c62cebf 100644 --- a/gcc/c-family/c-attribs.c +++ b/gcc/c-family/c-attribs.c @@ -3227,10 +3227,12 @@ parse_tm_stmt_attr (tree attrs, int allowed) for ( ; attrs ; attrs = TREE_CHAIN (attrs)) { - tree a = TREE_PURPOSE (attrs); + tree a = get_attribute_name (attrs); + tree ns = get_attribute_namespace (attrs); int m = 0; - if (is_attribute_p ("outer", a)) + if (is_attribute_p ("outer", a) + && (ns == NULL_TREE || strcmp (IDENTIFIER_POINTER (ns), "gnu") == 0)) m = TM_STMT_ATTR_OUTER; if ((m & allowed) == 0) |