public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug c++/65046] New: -Wabi-tag doesn't warn about variables or function return types
@ 2015-02-12 21:34 jason at gcc dot gnu.org
  2015-02-12 21:35 ` [Bug c++/65046] " jason at gcc dot gnu.org
                   ` (4 more replies)
  0 siblings, 5 replies; 6+ messages in thread
From: jason at gcc dot gnu.org @ 2015-02-12 21:34 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65046

            Bug ID: 65046
           Summary: -Wabi-tag doesn't warn about variables or function
                    return types
           Product: gcc
           Version: 5.0
            Status: UNCONFIRMED
          Keywords: ABI
          Severity: blocker
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: jason at gcc dot gnu.org

Compiling this testcase with -Wabi-tag doesn't warn about 'a' or change its
mangled name.  This needs to be fixed for GCC 5.

inline namespace foo __attribute ((abi_tag)) {
  struct A { };
};

A a;


^ permalink raw reply	[flat|nested] 6+ messages in thread

* [Bug c++/65046] -Wabi-tag doesn't warn about variables or function return types
  2015-02-12 21:34 [Bug c++/65046] New: -Wabi-tag doesn't warn about variables or function return types jason at gcc dot gnu.org
@ 2015-02-12 21:35 ` jason at gcc dot gnu.org
  2015-02-13 15:19 ` [Bug c++/65046] [5 regression] " jason at gcc dot gnu.org
                   ` (3 subsequent siblings)
  4 siblings, 0 replies; 6+ messages in thread
From: jason at gcc dot gnu.org @ 2015-02-12 21:35 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65046

Jason Merrill <jason at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Priority|P3                          |P1
             Status|UNCONFIRMED                 |NEW
   Last reconfirmed|                            |2015-02-12
           Assignee|unassigned at gcc dot gnu.org      |jason at gcc dot gnu.org
   Target Milestone|---                         |5.0
     Ever confirmed|0                           |1


^ permalink raw reply	[flat|nested] 6+ messages in thread

* [Bug c++/65046] [5 regression] -Wabi-tag doesn't warn about variables or function return types
  2015-02-12 21:34 [Bug c++/65046] New: -Wabi-tag doesn't warn about variables or function return types jason at gcc dot gnu.org
  2015-02-12 21:35 ` [Bug c++/65046] " jason at gcc dot gnu.org
@ 2015-02-13 15:19 ` jason at gcc dot gnu.org
  2015-03-18 18:09 ` redi at gcc dot gnu.org
                   ` (2 subsequent siblings)
  4 siblings, 0 replies; 6+ messages in thread
From: jason at gcc dot gnu.org @ 2015-02-13 15:19 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65046

Jason Merrill <jason at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
            Summary|-Wabi-tag doesn't warn      |[5 regression] -Wabi-tag
                   |about variables or function |doesn't warn about
                   |return types                |variables or function
                   |                            |return types

--- Comment #1 from Jason Merrill <jason at gcc dot gnu.org> ---
Marking this as a regression to raise its visibility.


^ permalink raw reply	[flat|nested] 6+ messages in thread

* [Bug c++/65046] [5 regression] -Wabi-tag doesn't warn about variables or function return types
  2015-02-12 21:34 [Bug c++/65046] New: -Wabi-tag doesn't warn about variables or function return types jason at gcc dot gnu.org
  2015-02-12 21:35 ` [Bug c++/65046] " jason at gcc dot gnu.org
  2015-02-13 15:19 ` [Bug c++/65046] [5 regression] " jason at gcc dot gnu.org
@ 2015-03-18 18:09 ` redi at gcc dot gnu.org
  2015-03-19 20:01 ` jason at gcc dot gnu.org
  2015-03-24 20:13 ` jason at gcc dot gnu.org
  4 siblings, 0 replies; 6+ messages in thread
From: redi at gcc dot gnu.org @ 2015-03-18 18:09 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65046

--- Comment #2 from Jonathan Wakely <redi at gcc dot gnu.org> ---
Author: redi
Date: Wed Mar 18 18:08:29 2015
New Revision: 221497

URL: https://gcc.gnu.org/viewcvs?rev=221497&root=gcc&view=rev
Log:
    PR c++/65046
    * config/locale/gnu/messages_members.cc (Catalog_info, Catalogs,
    get_catalogs): Add abi-tag.
    * include/ext/codecvt_specializations.h (encoding_state,
    encoding_char_traits): Likewise.
    * src/c++11/cxx11-ios_failure.cc (io_error_category): Likewise.
    * src/c++11/cxx11-shim_facets.cc (__any_string::operator basic_string,
    numpunct_shim, collate_shim, time_get_shim, moneypunct_shim,
    money_get_shim, money_put_shim, messages_shim): Likewise.
    * src/c++11/future.cc (future_error_category::message): Likewise.
    * src/c++11/system_error.cc (generic_error_category::message,
    system_error_category::message): Likewise.
    (__sso_string): Disable -Wabi-tag warnings.

Modified:
    trunk/libstdc++-v3/ChangeLog
    trunk/libstdc++-v3/config/locale/gnu/messages_members.cc
    trunk/libstdc++-v3/include/ext/codecvt_specializations.h
    trunk/libstdc++-v3/src/c++11/cxx11-ios_failure.cc
    trunk/libstdc++-v3/src/c++11/cxx11-shim_facets.cc
    trunk/libstdc++-v3/src/c++11/future.cc
    trunk/libstdc++-v3/src/c++11/system_error.cc


^ permalink raw reply	[flat|nested] 6+ messages in thread

* [Bug c++/65046] [5 regression] -Wabi-tag doesn't warn about variables or function return types
  2015-02-12 21:34 [Bug c++/65046] New: -Wabi-tag doesn't warn about variables or function return types jason at gcc dot gnu.org
                   ` (2 preceding siblings ...)
  2015-03-18 18:09 ` redi at gcc dot gnu.org
@ 2015-03-19 20:01 ` jason at gcc dot gnu.org
  2015-03-24 20:13 ` jason at gcc dot gnu.org
  4 siblings, 0 replies; 6+ messages in thread
From: jason at gcc dot gnu.org @ 2015-03-19 20:01 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65046

--- Comment #3 from Jason Merrill <jason at gcc dot gnu.org> ---
Author: jason
Date: Thu Mar 19 19:31:48 2015
New Revision: 221521

URL: https://gcc.gnu.org/viewcvs?rev=221521&root=gcc&view=rev
Log:
    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.

Added:
    trunk/gcc/testsuite/g++.dg/abi/abi-tag14.C
Modified:
    trunk/gcc/cp/ChangeLog
    trunk/gcc/cp/class.c
    trunk/gcc/cp/cp-tree.h
    trunk/gcc/cp/mangle.c
    trunk/gcc/cp/name-lookup.c
    trunk/gcc/cp/parser.c
    trunk/gcc/cp/tree.c
    trunk/gcc/doc/extend.texi
    trunk/gcc/doc/invoke.texi
    trunk/gcc/testsuite/g++.dg/abi/abi-tag1.C
    trunk/gcc/testsuite/g++.dg/abi/abi-tag4.C
    trunk/gcc/testsuite/g++.dg/abi/abi-tag8.C
    trunk/libstdc++-v3/ChangeLog
    trunk/libstdc++-v3/config/locale/gnu/messages_members.cc
    trunk/libstdc++-v3/include/bits/c++config
    trunk/libstdc++-v3/src/c++11/cxx11-shim_facets.cc


^ permalink raw reply	[flat|nested] 6+ messages in thread

* [Bug c++/65046] [5 regression] -Wabi-tag doesn't warn about variables or function return types
  2015-02-12 21:34 [Bug c++/65046] New: -Wabi-tag doesn't warn about variables or function return types jason at gcc dot gnu.org
                   ` (3 preceding siblings ...)
  2015-03-19 20:01 ` jason at gcc dot gnu.org
@ 2015-03-24 20:13 ` jason at gcc dot gnu.org
  4 siblings, 0 replies; 6+ messages in thread
From: jason at gcc dot gnu.org @ 2015-03-24 20:13 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65046

--- Comment #5 from Jason Merrill <jason at gcc dot gnu.org> ---
Author: jason
Date: Tue Mar 24 19:40:44 2015
New Revision: 221642

URL: https://gcc.gnu.org/viewcvs?rev=221642&root=gcc&view=rev
Log:
    PR c++/65046
    * cp-tree.h (NAMESPACE_IS_INLINE): Remove.
    * parser.c (cp_parser_namespace_definition): Don't set it.
    * name-lookup.c (handle_namespace_attrs): Check
    DECL_NAMESPACE_ASSOCIATIONS instead.

Modified:
    trunk/gcc/cp/ChangeLog
    trunk/gcc/cp/cp-tree.h
    trunk/gcc/cp/name-lookup.c
    trunk/gcc/cp/parser.c


^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2015-03-24 19:41 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-02-12 21:34 [Bug c++/65046] New: -Wabi-tag doesn't warn about variables or function return types jason at gcc dot gnu.org
2015-02-12 21:35 ` [Bug c++/65046] " jason at gcc dot gnu.org
2015-02-13 15:19 ` [Bug c++/65046] [5 regression] " jason at gcc dot gnu.org
2015-03-18 18:09 ` redi at gcc dot gnu.org
2015-03-19 20:01 ` jason at gcc dot gnu.org
2015-03-24 20:13 ` jason at gcc dot gnu.org

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).