This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
c++/739: Warnings generated by standard library -- should be corrected
- To: gcc-gnats at gcc dot gnu dot org
- Subject: c++/739: Warnings generated by standard library -- should be corrected
- From: dperkins at appsig dot com
- Date: 7 Nov 2000 02:09:53 -0000
- Reply-To: dperkins at appsig dot com
>Number: 739
>Category: c++
>Synopsis: Warnings generated by standard library -- should be corrected
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: unassigned
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Mon Nov 06 18:16:00 PST 2000
>Closed-Date:
>Last-Modified:
>Originator: Don Perkins
>Release: 2.95.2 on sun-sparc-solaris-2.6
>Organization:
>Environment:
>Description:
The following warnings are generated for system library files
when the full warning set is used:
In file included from /usr/local/lib/gcc-lib/sparc-sun-solaris2.6/2.95.2/../../../../include/g++-3/string:6,
from ../include/Hlci.H:69,
from ../include/HLCI:34,
from HlciTest.C:25:
/usr/local/lib/gcc-lib/sparc-sun-solaris2.6/2.95.2/../../../../include/g++-3/std/bastring.h: In method `basic_string<charT,traits,Allocator>::basic_string(InputIterator, InputIterator)':
/usr/local/lib/gcc-lib/sparc-sun-solaris2.6/2.95.2/../../../../include/g++-3/std/bastring.h:187: warning: declaration of `end' shadows a member of `this'
/usr/local/lib/gcc-lib/sparc-sun-solaris2.6/2.95.2/../../../../include/g++-3/std/bastring.h:187: warning: declaration of `begin' shadows a member of `this'
In file included from /usr/local/lib/gcc-lib/sparc-sun-solaris2.6/2.95.2/../../../../include/g++-3/std/bastring.h:652,
from /usr/local/lib/gcc-lib/sparc-sun-solaris2.6/2.95.2/../../../../include/g++-3/string:6,
from ../include/Hlci.H:69,
from ../include/HLCI:34,
from HlciTest.C:25:
/usr/local/lib/gcc-lib/sparc-sun-solaris2.6/2.95.2/../../../../include/g++-3/std/bastring.cc: In method `void basic_string<charT,traits,Allocator>::alloc(unsigned int, bool)':
/usr/local/lib/gcc-lib/sparc-sun-solaris2.6/2.95.2/../../../../include/g++-3/std/bastring.cc:98: warning: declaration of `size' shadows a member of `this'
/usr/local/lib/gcc-lib/sparc-sun-solaris2.6/2.95.2/../../../../include/g++-3/stl_alloc.h: In function `static char * __default_alloc_template<false,0>::_S_chunk_alloc(unsigned int, int &)':
/usr/local/lib/gcc-lib/sparc-sun-solaris2.6/2.95.2/../../../../include/g++-3/stl_alloc.h:531: instantiated from `__default_alloc_template<false,0>::_S_refill(unsigned int)'
/usr/local/lib/gcc-lib/sparc-sun-solaris2.6/2.95.2/../../../../include/g++-3/stl_alloc.h:419: instantiated from `__default_alloc_template<false,0>::allocate(unsigned int)'
/usr/local/lib/gcc-lib/sparc-sun-solaris2.6/2.95.2/../../../../include/g++-3/std/bastring.cc:33: instantiated from `basic_string<char,string_char_traits<char>,__default_alloc_template<false,0> >::Rep::operator new(unsigned int, unsigned int)'
/usr/local/lib/gcc-lib/sparc-sun-solaris2.6/2.95.2/../../../../include/g++-3/std/bastring.cc:60: instantiated from `basic_string<char,string_char_traits<char>,__default_alloc_template<false,0> >::Rep::create(unsigned int)'
/usr/local/lib/gcc-lib/sparc-sun-solaris2.6/2.95.2/../../../../include/g++-3/std/bastring.cc:71: instantiated from `basic_string<char,string_char_traits<char>,__default_alloc_template<false,0> >::Rep::clone()'
/usr/local/lib/gcc-lib/sparc-sun-solaris2.6/2.95.2/../../../../include/g++-3/std/bastring.h:75: instantiated from here
/usr/local/lib/gcc-lib/sparc-sun-solaris2.6/2.95.2/../../../../include/g++-3/stl_alloc.h:488: warning: cast increases required alignment of target type
/usr/local/lib/gcc-lib/sparc-sun-solaris2.6/2.95.2/../../../../include/g++-3/stl_alloc.h: In function `static void * __default_alloc_template<false,0>::_S_refill(unsigned int)':
/usr/local/lib/gcc-lib/sparc-sun-solaris2.6/2.95.2/../../../../include/g++-3/stl_alloc.h:419: instantiated from `__default_alloc_template<false,0>::allocate(unsigned int)'
/usr/local/lib/gcc-lib/sparc-sun-solaris2.6/2.95.2/../../../../include/g++-3/std/bastring.cc:33: instantiated from `basic_string<char,string_char_traits<char>,__default_alloc_template<false,0> >::Rep::operator new(unsigned int, unsigned int)'
/usr/local/lib/gcc-lib/sparc-sun-solaris2.6/2.95.2/../../../../include/g++-3/std/bastring.cc:60: instantiated from `basic_string<char,string_char_traits<char>,__default_alloc_template<false,0> >::Rep::create(unsigned int)'
/usr/local/lib/gcc-lib/sparc-sun-solaris2.6/2.95.2/../../../../include/g++-3/std/bastring.cc:71: instantiated from `basic_string<char,string_char_traits<char>,__default_alloc_template<false,0> >::Rep::clone()'
/usr/local/lib/gcc-lib/sparc-sun-solaris2.6/2.95.2/../../../../include/g++-3/std/bastring.h:75: instantiated from here
/usr/local/lib/gcc-lib/sparc-sun-solaris2.6/2.95.2/../../../../include/g++-3/stl_alloc.h:542: warning: cast increases required alignment of target type
/usr/local/lib/gcc-lib/sparc-sun-solaris2.6/2.95.2/../../../../include/g++-3/stl_alloc.h:543: warning: cast increases required alignment of target type
/usr/local/lib/gcc-lib/sparc-sun-solaris2.6/2.95.2/../../../../include/g++-3/stl_alloc.h:546: warning: cast increases required alignment of target type
Ideally, there should be no warnings generated from the
c++ libraries, even if uncommon warnings are used.
>How-To-Repeat:
This behavior can be demonstrated by creating a simple C++
program that #include's <cstring> and compiling using the
following set of warnings:
-Wall -W -Wshadow -Wpointer-arith \
-Wbad-function-cast -Wcast-align -Wconversion \
-Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations \
-Wnested-externs -Wwrite-strings \
-Wimplicit-function-declarations -Wctor-dtor-privacy \
-Wnon-virtual-dtor -Wreorder -Wsign-promo -Wsynth
In particular, -Wcast-align and -Wshadow are the flags that
allow the above errors to be generated.
>Fix:
>Release-Note:
>Audit-Trail:
>Unformatted: