aboutsummaryrefslogtreecommitdiff
path: root/gcc/recog.c
diff options
context:
space:
mode:
authorJason Merrill <jason@redhat.com>2015-03-19 15:31:48 -0400
committerJason Merrill <jason@gcc.gnu.org>2015-03-19 15:31:48 -0400
commit7cb73573606d5b0881b0af778a81b5b9c1569f36 (patch)
tree1366bd2f145ea6b0f0e6fc74fb3092fea4a40db4 /gcc/recog.c
parent9b65e171edf31cd83fd075f6ed4f3943ebecc505 (diff)
downloadgcc-7cb73573606d5b0881b0af778a81b5b9c1569f36.zip
gcc-7cb73573606d5b0881b0af778a81b5b9c1569f36.tar.gz
gcc-7cb73573606d5b0881b0af778a81b5b9c1569f36.tar.bz2
re PR c++/65046 (-Wabi-tag doesn't warn about variables or function return types)
PR c++/65046 Automatically propagate ABI tags to variables and functions from their (return) type. * class.c (check_tag): Handle variables and functions. (mark_or_check_attr_tags): Split out from find_abi_tags_r. (mark_or_check_tags): Likewise. (mark_abi_tags): Use it. Rename from mark_type_abi_tags. (check_abi_tags): Add single argument overload for decls. Handle inheriting tags for decls. * mangle.c (write_mangled_name): Call it. (mangle_return_type_p): Split out from write_encoding. (unmangled_name_p): Split out from write_mangled_name. (write_mangled_name): Ignore abi_tag on namespace. * cp-tree.h (NAMESPACE_IS_INLINE): Replace NAMESPACE_ABI_TAG. * parser.c (cp_parser_namespace_definition): Set it. * name-lookup.c (handle_namespace_attrs): Use arguments. Warn about abi_tag attribute on non-inline namespace. * tree.c (check_abi_tag_args): Split out from handle_abi_tag_attribute. (handle_abi_tag_attribute): Allow tags on variables. From-SVN: r221521
Diffstat (limited to 'gcc/recog.c')
0 files changed, 0 insertions, 0 deletions