public inbox for gcc-prs@sourceware.org help / color / mirror / Atom feed
From: pthomas@suse.de To: gcc-gnats@gcc.gnu.org Cc: aj@suse.de, pmladek@suse.cz Subject: c++/6331: g++ 3.1 looses const qualifiers Date: Wed, 17 Apr 2002 02:46:00 -0000 [thread overview] Message-ID: <20020417094058.10284.qmail@sources.redhat.com> (raw) >Number: 6331 >Category: c++ >Synopsis: g++ 3.1 looses const qualifiers >Confidential: no >Severity: serious >Priority: medium >Responsible: unassigned >State: open >Class: rejects-legal >Submitter-Id: net >Arrival-Date: Wed Apr 17 02:46:00 PDT 2002 >Closed-Date: >Last-Modified: >Originator: Philipp Thomas, SuSE Linux Ag >Release: 3.1 >Organization: >Environment: suse-linux-gnu >Description: Gcc rejects the attached code, stating that the conversion is illegal. Output of 'c++ -v -c gcc31_bug_const.cc' is: Using built-in specs. Configured with: ../configure --enable-threads=posix --prefix=/usr --with-local-prefix=/usr/local --infodir=/usr/share/info --mandir=/usr/share/man --enable-languages=c,c++,f77,objc,java,ada --with-gxx-include-dir=/usr/include/g++ --with-slibdir=/lib --with-system-zlib --enable-shared i486-suse-linux Thread model: posix gcc version 3.1 20020408 (prerelease) /usr/lib/gcc-lib/i486-suse-linux/3.1/cc1plus -v -D__GNUC__=3 -D__GNUC_MINOR__=1 -D__GNUC_PATCHLEVEL__=0 -D__ELF__ -Dunix -Dlinux -D__ELF__ -D__unix__ -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_i486__ gcc31_bug_const.cc -D__GNUG__=3 -D__DEPRECATED -D__EXCEPTIONS -D__GXX_ABI_VERSION=100 -quiet -dumpbase gcc31_bug_const.cc -version -fmessage-length=0 -o /tmp/ccVQg0M0.s GNU CPP version 3.1 20020408 (prerelease) (cpplib) (i386 Linux/ELF) GNU C++ version 3.1 20020408 (prerelease) (i486-suse-linux) compiled by GNU C version 3.1 20020408 (prerelease). ignoring nonexistent directory "/usr/i486-suse-linux/include" #include "..." search starts here: #include <...> search starts here: /usr/include/g++ /usr/include/g++/i486-suse-linux /usr/include/g++/backward /usr/local/include /usr/lib/gcc-lib/i486-suse-linux/3.1/include /usr/include End of search list. gcc31_bug_const.cc: In member function `int Collision::automatic_shift()': gcc31_bug_const.cc:38: invalid conversion from `int (*)(int* const&, int* const&)' to `int (*)(int*&, int*&)' gcc31_bug_const.cc:38: initializing argument 1 of `void Link_array<T>::sort(int (*)(T*&, T*&), int, int) [with T = int]' gcc31_bug_const.cc: In member function `void Link_array<T>::sort(int (*)(T*&, T*&), int, int) [with T = int]': gcc31_bug_const.cc:38: instantiated from here gcc31_bug_const.cc:29: invalid conversion from `int (*)(int* const&, int* const&)' to `int (*)(int*&, int*&)' gcc31_bug_const.cc:29: initializing argument 1 of `void Link_array<T>::sort(int (*)(T*&, T*&), int, int) [with T = int]' >How-To-Repeat: >Fix: >Release-Note: >Audit-Trail: >Unformatted: ----gnatsweb-attachment---- Content-Type: text/plain; name="gcc31_bug_const.cc" Content-Disposition: inline; filename="gcc31_bug_const.cc" template<class T> class Link_array { public: Link_array () {} Link_array (Link_array<T> const &src) {} // quicksort. void sort (int (*compare) (T *const&,T *const&), int lower = -1, int upper = -1); }; class Note_column { public: static int shift_compare (int *const &, int *const &) {}; }; class Collision // interface { public: int automatic_shift (); }; template<class T> void Link_array<T>::sort (int (*compare) (T *const&,T *const&), int lower, int upper) { int last = lower; sort (compare, lower, last-1); } int Collision::automatic_shift () { int d = 1; Link_array<int> clashes; clashes.sort (Note_column::shift_compare); return 1; } int main() { return 0; }
next reply other threads:[~2002-04-17 9:46 UTC|newest] Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top 2002-04-17 2:46 pthomas [this message] 2002-04-22 11:14 mmitchel 2002-04-23 1:43 mmitchel 2002-04-23 15:24 schwab 2002-04-24 2:05 jason 2002-04-24 9:06 Mark Mitchell 2002-04-24 10:26 Jason Merrill 2002-04-24 10:26 Mark Mitchell 2002-04-24 10:36 Mark Mitchell 2002-04-24 10:36 Jason Merrill 2002-04-25 1:27 jason
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=20020417094058.10284.qmail@sources.redhat.com \ --to=pthomas@suse.de \ --cc=aj@suse.de \ --cc=gcc-gnats@gcc.gnu.org \ --cc=pmladek@suse.cz \ /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).