public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug c++/51804] New: Wabi false positives
@ 2012-01-09 21:26 bkoz at gcc dot gnu.org
2012-01-09 21:27 ` [Bug c++/51804] " bkoz at gcc dot gnu.org
` (5 more replies)
0 siblings, 6 replies; 7+ messages in thread
From: bkoz at gcc dot gnu.org @ 2012-01-09 21:26 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51804
Bug #: 51804
Summary: Wabi false positives
Classification: Unclassified
Product: gcc
Version: 4.7.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: c++
AssignedTo: unassigned@gcc.gnu.org
ReportedBy: bkoz@gcc.gnu.org
When adding -Wabi to the libstdc++ build flags, I ran the testsuite with -Wabi
as well, since that tends to instantiate more templates than just building the
libstdc++.so.
When I run the the libstdc++ testsuite with -Wabi, I get 72 new fails.
Some of these make sense from the manual, ie
http://gcc.gnu.org/onlinedocs/gcc/C_002b_002b-Dialect-Options.html#C_002b_002b-Dialect-Options
or from the example with non-type reference
extern int N;
template <int &> struct S {};
void n(S<N>) {2;}
which is
-fabi-version=3
0000000000000000 T _Z1n1SIL_Z1NEE
-fabi-version=2
0000000000000000 T _Z1n1SILZ1NEE
0000000000000000 T _Z1n1SIL_Z1NEE
One can see the difference very easily in terms of what is produced by the
compiler.
However, there look to be some false positives, in things like:
libstdc++-v3/testsuite/20_util/tuple/cons/constexpr-2.cc
and others (full log attached as 20120109-libstdc++.sum.bz2)
I see a lot of things like:
s.h:752:7: warning: the mangled name of ‘void
__gnu_test::constexpr_single_value_constructible::_Concept<_Ttesttype,
_Tvaluetype, true>::__constraint() [with _Ttesttype = std::tuple<int, int>;
_Tvaluetype = std::tuple<short int, short int>]’ will change in a future
version of GCC [-Wabi]
I'm finding it harder to make sense of this warning. Is this a false positive?
If not, what changed? I'll attach a pre-processed file that gives this warning,
and a log of the test run.
^ permalink raw reply [flat|nested] 7+ messages in thread
* [Bug c++/51804] Wabi false positives
2012-01-09 21:26 [Bug c++/51804] New: Wabi false positives bkoz at gcc dot gnu.org
@ 2012-01-09 21:27 ` bkoz at gcc dot gnu.org
2012-01-09 21:44 ` bkoz at gcc dot gnu.org
` (4 subsequent siblings)
5 siblings, 0 replies; 7+ messages in thread
From: bkoz at gcc dot gnu.org @ 2012-01-09 21:27 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51804
--- Comment #1 from Benjamin Kosnik <bkoz at gcc dot gnu.org> 2012-01-09 21:27:35 UTC ---
Created attachment 26284
--> http://gcc.gnu.org/bugzilla/attachment.cgi?id=26284
log file of 'make check-libstdc++-v3' with -Wabi
72 new fails
^ permalink raw reply [flat|nested] 7+ messages in thread
* [Bug c++/51804] Wabi false positives
2012-01-09 21:26 [Bug c++/51804] New: Wabi false positives bkoz at gcc dot gnu.org
2012-01-09 21:27 ` [Bug c++/51804] " bkoz at gcc dot gnu.org
@ 2012-01-09 21:44 ` bkoz at gcc dot gnu.org
2012-01-09 21:46 ` bkoz at gcc dot gnu.org
` (3 subsequent siblings)
5 siblings, 0 replies; 7+ messages in thread
From: bkoz at gcc dot gnu.org @ 2012-01-09 21:44 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51804
--- Comment #2 from Benjamin Kosnik <bkoz at gcc dot gnu.org> 2012-01-09 21:44:39 UTC ---
Created attachment 26286
--> http://gcc.gnu.org/bugzilla/attachment.cgi?id=26286
enables -Wabi for 'make check-libstdc++-v3'
^ permalink raw reply [flat|nested] 7+ messages in thread
* [Bug c++/51804] Wabi false positives
2012-01-09 21:26 [Bug c++/51804] New: Wabi false positives bkoz at gcc dot gnu.org
2012-01-09 21:27 ` [Bug c++/51804] " bkoz at gcc dot gnu.org
2012-01-09 21:44 ` bkoz at gcc dot gnu.org
@ 2012-01-09 21:46 ` bkoz at gcc dot gnu.org
2012-01-09 22:22 ` jason at gcc dot gnu.org
` (2 subsequent siblings)
5 siblings, 0 replies; 7+ messages in thread
From: bkoz at gcc dot gnu.org @ 2012-01-09 21:46 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51804
--- Comment #3 from Benjamin Kosnik <bkoz at gcc dot gnu.org> 2012-01-09 21:45:51 UTC ---
Created attachment 26287
--> http://gcc.gnu.org/bugzilla/attachment.cgi?id=26287
pre-processed test file, run with -Wabi
^ permalink raw reply [flat|nested] 7+ messages in thread
* [Bug c++/51804] Wabi false positives
2012-01-09 21:26 [Bug c++/51804] New: Wabi false positives bkoz at gcc dot gnu.org
` (2 preceding siblings ...)
2012-01-09 21:46 ` bkoz at gcc dot gnu.org
@ 2012-01-09 22:22 ` jason at gcc dot gnu.org
2012-01-10 0:06 ` bkoz at gcc dot gnu.org
2012-01-11 4:23 ` [Bug c++/51804] -Wabi confusion bkoz at gcc dot gnu.org
5 siblings, 0 replies; 7+ messages in thread
From: jason at gcc dot gnu.org @ 2012-01-09 22:22 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51804
Jason Merrill <jason at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |jason at gcc dot gnu.org
--- Comment #4 from Jason Merrill <jason at gcc dot gnu.org> 2012-01-09 22:22:11 UTC ---
(In reply to comment #0)
> I see a lot of things like:
>
> s.h:752:7: warning: the mangled name of ‘void
> __gnu_test::constexpr_single_value_constructible::_Concept<_Ttesttype,
> _Tvaluetype, true>::__constraint() [with _Ttesttype = std::tuple<int, int>;
> _Tvaluetype = std::tuple<short int, short int>]’ will change in a future
> version of GCC [-Wabi]
>
> I'm finding it harder to make sense of this warning. Is this a false positive?
Doesn't look like it. Any use of variadic templates in a function signature
will result in a -Wabi warning now, since the mangling of argument packs
changes in -fabi-version=6.
^ permalink raw reply [flat|nested] 7+ messages in thread
* [Bug c++/51804] Wabi false positives
2012-01-09 21:26 [Bug c++/51804] New: Wabi false positives bkoz at gcc dot gnu.org
` (3 preceding siblings ...)
2012-01-09 22:22 ` jason at gcc dot gnu.org
@ 2012-01-10 0:06 ` bkoz at gcc dot gnu.org
2012-01-11 4:23 ` [Bug c++/51804] -Wabi confusion bkoz at gcc dot gnu.org
5 siblings, 0 replies; 7+ messages in thread
From: bkoz at gcc dot gnu.org @ 2012-01-10 0:06 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51804
--- Comment #5 from Benjamin Kosnik <bkoz at gcc dot gnu.org> 2012-01-10 00:06:05 UTC ---
Ah! Ok. I didn't realize there was an -fabi-version=6. Now I get it. Stupid me,
for thinking v3 was the latest greatest, doh.
From:
http://gcc.gnu.org/onlinedocs/gcc-4.6.2/gcc/C_002b_002b-Dialect-Options.html#C_002b_002b-Dialect-Options
It looks like some bits should be added to invoke.texi for Version 6. (ie
-fabi-version=6).
Here's a first pass.
Version 6 changes the mangling for parameter packs in variadic templates,
certain preincrement/decrement operators, and the way C++11 scoped enumerators
are mangled for types larger than int.
^ permalink raw reply [flat|nested] 7+ messages in thread
* [Bug c++/51804] -Wabi confusion
2012-01-09 21:26 [Bug c++/51804] New: Wabi false positives bkoz at gcc dot gnu.org
` (4 preceding siblings ...)
2012-01-10 0:06 ` bkoz at gcc dot gnu.org
@ 2012-01-11 4:23 ` bkoz at gcc dot gnu.org
5 siblings, 0 replies; 7+ messages in thread
From: bkoz at gcc dot gnu.org @ 2012-01-11 4:23 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51804
Benjamin Kosnik <bkoz at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |RESOLVED
Resolution| |FIXED
--- Comment #6 from Benjamin Kosnik <bkoz at gcc dot gnu.org> 2012-01-11 04:22:54 UTC ---
Calling this fixed, via a combination of corrected docs and me actually
understanding them.
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2012-01-11 4:23 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-01-09 21:26 [Bug c++/51804] New: Wabi false positives bkoz at gcc dot gnu.org
2012-01-09 21:27 ` [Bug c++/51804] " bkoz at gcc dot gnu.org
2012-01-09 21:44 ` bkoz at gcc dot gnu.org
2012-01-09 21:46 ` bkoz at gcc dot gnu.org
2012-01-09 22:22 ` jason at gcc dot gnu.org
2012-01-10 0:06 ` bkoz at gcc dot gnu.org
2012-01-11 4:23 ` [Bug c++/51804] -Wabi confusion bkoz 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).