public inbox for gcc-prs@sourceware.org help / color / mirror / Atom feed
From: Peter Schmid <schmid@snake.iap.physik.tu-darmstadt.de> To: gcc-gnats@gcc.gnu.org Subject: c++/6492: New boost regression (friends) Date: Sat, 27 Apr 2002 17:36:00 -0000 [thread overview] Message-ID: <200204280134.DAA32533@snake.iap.physik.tu-darmstadt.de> (raw) >Number: 6492 >Category: c++ >Synopsis: New boost regression (friends) >Confidential: no >Severity: serious >Priority: medium >Responsible: unassigned >State: open >Class: rejects-legal >Submitter-Id: net >Arrival-Date: Sat Apr 27 17:36:00 PDT 2002 >Closed-Date: >Last-Modified: >Originator: Peter Schmid >Release: 3.1 20020427 (prerelease) >Organization: TU Darmstadt >Environment: System: Linux kiste 2.4.18 #8 Sat Mar 9 15:33:15 CET 2002 i686 unknown Architecture: i686 host: i686-pc-linux-gnu build: i686-pc-linux-gnu target: i686-pc-linux-gnu configured with: ../gcc/configure --enable-shared --disable-nls --enable-threads=posix --enable-languages=c,c++,f77,objc >Description: There is a new boost regression. gcc 3.1 does no longer compile /libs/config/test/boost_no_mem_templ_frnds.cxx. gcc 3.1 20020418 accepted this code without a warning. Please fix this regression for the upcoming 3.1 release. >How-To-Repeat: source code libs/config/test/boost_no_mem_templ_frnds.cxx from boost // (C) Copyright John Maddock 2001. Permission to copy, use, modify, sell and // distribute this software is granted provided this copyright notice appears // in all copies. This software is provided "as is" without express or implied // warranty, and with no claim as to its suitability for any purpose. // MACRO: BOOST_NO_MEMBER_TEMPLATE_FRIENDS // TITLE: member template friends // DESCRIPTION: Member template friend syntax // ("template<class P> friend class frd;") // described in the C++ Standard, // 14.5.3, not supported. namespace boost_no_member_template_friends{ template <class T> class foobar; template <class T> class foo; template <class T> bool must_be_friend_proc(const foo<T>& f); template <class T> class foo { private: template<typename Y> friend class foobar; template<typename Y> friend class foo; template<typename Y> friend bool must_be_friend_proc(const foo<Y>& f); int i; public: foo(){ i = 0; } template <class U> foo(const foo<U>& f){ i = f.i; } }; template <class T> bool must_be_friend_proc(const foo<T>& f) { return f.i != 0; } template <class T> class foobar { int i; public: template <class U> foobar(const foo<U>& f) { i = f.i; } }; int test() { foo<int> fi; foo<double> fd(fi); (void) &fd; // avoid "unused variable" warning foobar<long> fb(fi); (void) &fb; // avoid "unused variable" warning return 0; } } g++ -v -c -W -Wall boost_no_mem_templ_frnds.cxx Reading specs from /usr/local/lib/gcc-lib/i686-pc-linux-gnu/3.1/specs Configured with: ../gcc/configure --enable-shared --disable-nls --enable-threads=posix --enable-languages=c,c++,f77,objc Thread model: posix gcc version 3.1 20020427 (prerelease) /usr/local/lib/gcc-lib/i686-pc-linux-gnu/3.1/cc1plus -v -D__GNUC__=3 -D__GNUC_MINOR__=1 -D__GNUC_PATCHLEVEL__=0 -D__ELF__ -Dunix -D__gnu_linux__ -Dlinux -D__ELF__ -D__unix__ -D__gnu_linux__ -D__linux__ -D__unix -D__linux -Asystem=posix -D__NO_INLINE__ -D__STDC_HOSTED__=1 -D_GNU_SOURCE -Acpu=i386 -Amachine=i386 -Di386 -D__i386 -D__i386__ -D__tune_i686__ -D__tune_pentiumpro__ boost_no_mem_templ_frnds.cxx -D__GNUG__=3 -D__DEPRECATED -D__EXCEPTIONS -D__GXX_ABI_VERSION=100 -quiet -dumpbase boost_no_mem_templ_frnds.cxx -W -Wall -version -o /tmp/ccYDxpXS.s GNU CPP version 3.1 20020427 (prerelease) (cpplib) (i386 Linux/ELF) GNU C++ version 3.1 20020427 (prerelease) (i686-pc-linux-gnu) compiled by GNU C version 3.1 20020427 (prerelease). ignoring nonexistent directory "NONE/include" ignoring nonexistent directory "/usr/local/i686-pc-linux-gnu/include" #include "..." search starts here: #include <...> search starts here: /usr/local/include/g++-v3 /usr/local/include/g++-v3/i686-pc-linux-gnu /usr/local/include/g++-v3/backward /usr/local/include /usr/local/lib/gcc-lib/i686-pc-linux-gnu/3.1/include /usr/include End of search list. boost_no_mem_templ_frnds.cxx: In constructor `boost_no_member_template_friends::foo<T>::foo(const boost_no_member_template_friends::foo<Y>&) [with U = int, T = double]': boost_no_mem_templ_frnds.cxx:57: instantiated from here boost_no_mem_templ_frnds.cxx:32: `int boost_no_member_template_friends::foo<int>::i' is private boost_no_mem_templ_frnds.cxx:36: within this context boost_no_mem_templ_frnds.cxx: In constructor `boost_no_member_template_friends::foobar<T>::foobar(const boost_no_member_template_friends::foo<Y>&) [with U = int, T = long int]': boost_no_mem_templ_frnds.cxx:59: instantiated from here boost_no_mem_templ_frnds.cxx:32: `int boost_no_member_template_friends::foo<int>::i' is private boost_no_mem_templ_frnds.cxx:50: within this context >Fix: >Release-Note: >Audit-Trail: >Unformatted:
next reply other threads:[~2002-04-28 0:36 UTC|newest] Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top 2002-04-27 17:36 Peter Schmid [this message] 2002-04-28 1:04 paolo 2002-04-28 11:38 mmitchel 2002-04-29 8:02 mmitchel
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=200204280134.DAA32533@snake.iap.physik.tu-darmstadt.de \ --to=schmid@snake.iap.physik.tu-darmstadt.de \ --cc=gcc-gnats@gcc.gnu.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
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).