[Bug c++/69317] [6 regression] wrong ABI version in -Wabi warnings

2016-01-27 Thread msebor at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69317

Martin Sebor  changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution|--- |FIXED

--- Comment #4 from Martin Sebor  ---
Fixed in r232881.

[Bug c++/69317] [6 regression] wrong ABI version in -Wabi warnings

2016-01-27 Thread msebor at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69317

--- Comment #3 from Martin Sebor  ---
Author: msebor
Date: Wed Jan 27 15:44:07 2016
New Revision: 232881

URL: https://gcc.gnu.org/viewcvs?rev=232881=gcc=rev
Log:
PR c++/69317 - [6 regression] wrong ABI version in -Wabi warnings

gcc/cp/ChangeLog:
2016-01-27  Martin Sebor  

PR c++/69317
* mangle.c (mangle_decl): Reference the correct (saved) version
of the ABI in -Wabi diagnostics.

gcc/testsuite/ChangeLog:
2016-01-27  Martin Sebor  

PR c++/69317
* g++.dg/abi/Wabi-2-2.C: New test.
* g++.dg/abi/Wabi-2-3.C: New test.
* g++.dg/abi/Wabi-3-2.C: New test.
* g++.dg/abi/Wabi-3-3.C: New test.

Added:
trunk/gcc/testsuite/g++.dg/abi/Wabi-2-2.C
trunk/gcc/testsuite/g++.dg/abi/Wabi-2-3.C
trunk/gcc/testsuite/g++.dg/abi/Wabi-3-2.C
trunk/gcc/testsuite/g++.dg/abi/Wabi-3-3.C
Modified:
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/mangle.c
trunk/gcc/testsuite/ChangeLog

[Bug c++/69317] [6 regression] wrong ABI version in -Wabi warnings

2016-01-17 Thread pinskia at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69317

Andrew Pinski  changed:

   What|Removed |Added

   Keywords||diagnostic, patch
URL||https://gcc.gnu.org/ml/gcc-
   ||patches/2016-01/msg01206.ht
   ||ml
   Target Milestone|--- |6.0

[Bug c++/69317] [6 regression] wrong ABI version in -Wabi warnings

2016-01-16 Thread msebor at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69317

Martin Sebor  changed:

   What|Removed |Added

 Status|UNCONFIRMED |ASSIGNED
   Last reconfirmed||2016-01-16
   Assignee|unassigned at gcc dot gnu.org  |msebor at gcc dot 
gnu.org
 Ever confirmed|0   |1
  Known to fail||6.0

--- Comment #1 from Martin Sebor  ---
I suspect the problem was introduced in r228017 which temporarily sets
flag_abi_version to warn_abi_version to determine if the mangling of the entity
is different in the version specified by -Wabi=.

The change below seems to fix it.  Let me add a test and post a patch for
review.

@@ -3658,13 +3670,13 @@ mangle_decl (const tree decl)
"the mangled name of %qD changed between "
"-fabi-version=%d (%D) and -fabi-version=%d (%D)",
G.entity, warn_abi_version, id2,
-   flag_abi_version, id);
+   save_ver, id);
  else
warning_at (DECL_SOURCE_LOCATION (G.entity), OPT_Wabi,
"the mangled name of %qD changes between "
"-fabi-version=%d (%D) and -fabi-version=%d (%D)",
G.entity, flag_abi_version, id,
-   warn_abi_version, id2);
+   save_ver, id2);
}

   flag_abi_version = save_ver;

[Bug c++/69317] [6 regression] wrong ABI version in -Wabi warnings

2016-01-16 Thread msebor at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69317

--- Comment #2 from Martin Sebor  ---
Slightly tweaked patch posted for review:
https://gcc.gnu.org/ml/gcc-patches/2016-01/msg01206.html