Date: Fri, 18 Jul 2003 10:32:51 +0200 From: Michael Nottebrock <michaelnottebrock@gmx.net> To: Mikhail Teterin <mi+mx@aldan.algebra.com>, Alexander Kabaev <ak03@gte.com>, Daniel Eischen <eischen@vigrid.com>, Kris Kennaway <kris@obsecurity.org> Cc: kde@freebsd.org Subject: Re: gcc-3.3 issues Message-ID: <200307181032.59474.michaelnottebrock@gmx.net> In-Reply-To: <200307171650.15405@misha-mx.virtual-estates.net> References: <1058366903.81198.18.camel@skeeve> <20030717162554.680475cc.ak03@gte.com> <200307171650.15405@misha-mx.virtual-estates.net>
next in thread | previous in thread | raw e-mail | index | archive | help
--Boundary-02=_7C7F/SYedgjHKOC Content-Type: text/plain; charset="koi8-u" Content-Transfer-Encoding: quoted-printable Content-Description: signed data Content-Disposition: inline On Thursday 17 July 2003 22:50, Mikhail Teterin wrote: > Here is how to reproduce the problem, Michael is talking about. Simply > try to build the kdelibs3 (or kdegraphic3, or kdenetwork3) port. I've tried to come up with a less obscure testcase: #include <string> #include <iostream> using namespace std; int main () { string astring=3D"Hello World"; cout << astring << endl; } Now, if I compile this on 5.1-RELEASE with=20 c++ -Wnon-virtual-dtor -Wno-long-long -Wall -pedantic -W -Wpointer-arith=20 =2DWmissing-prototypes -Wwrite-strings -DNDEBUG -DNO_DEBUG -O -pipe=20 =2Dmcpu=3Dpentiumpro -fno-check-new -L/usr/local/lib -I/usr/local/include=20 =2DI/usr/local/include -I/usr/X11R6/include -D_GETOPT_H -o helloworld=20 helloworld.cc I get a plethora of warnings: In file included from /usr/include/g++/memory:55, from /usr/include/g++/string:48, from helloworld.cc:1: /usr/include/g++/bits/stl_alloc.h:979: warning: ISO C++ forbids the use of ` extern' on explicit instantiations /usr/include/g++/bits/stl_alloc.h:980: warning: ISO C++ forbids the use of ` extern' on explicit instantiations /usr/include/g++/bits/stl_alloc.h:981: warning: ISO C++ forbids the use of ` extern' on explicit instantiations /usr/include/g++/bits/stl_alloc.h:981: warning: ISO C++ forbids the use of ` extern' on explicit instantiations /usr/include/g++/bits/stl_alloc.h:981: warning: ISO C++ forbids the use of ` extern' on explicit instantiations [and many, many more] but it will compile. If I omit -pedantic, none of these warnings occur. The= =20 thing is, in -CURRENT with the new gcc, all these warnings for some reason= =20 become errors. The other thing is, if I try this with with a ports-compiled= =20 g++32 on 4-STABLE, I don't get warnings at all, no matter if -pedantic is=20 specified or not. So here's the questions for the experts: =2D Why errors instead of warnings? =2D Why do gcc's own bits seem to not conform to some kind of standard that= it=20 tries to adhere to in 5-CURRENT but not in 4-STABLE? =2D Who's to blame? =2D-=20 Michael Nottebrock \ KDE on FreeBSD \ ,ww =20 \ --- \ ,wWWCybaWW_)=20 \ http://freebsd.kde.org \ `WSheepW' free \ II II node --Boundary-02=_7C7F/SYedgjHKOC Content-Type: application/pgp-signature Content-Description: signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.2 (FreeBSD) iD8DBQA/F7C7Xhc68WspdLARAkpgAKCkJYNAwtLDk/7J8rhhyqPEqSWlZgCfYyHy U+NBy6G1IRP6sW74a3QqvAM= =JeB5 -----END PGP SIGNATURE----- --Boundary-02=_7C7F/SYedgjHKOC--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200307181032.59474.michaelnottebrock>