public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug c++/31042]  New: Instantiation with const pointer to member
@ 2007-03-05 12:43 wolfgang dot roehrl at gi-de dot com
  2007-03-05 13:27 ` [Bug c++/31042] " rguenth at gcc dot gnu dot org
                   ` (2 more replies)
  0 siblings, 3 replies; 4+ messages in thread
From: wolfgang dot roehrl at gi-de dot com @ 2007-03-05 12:43 UTC (permalink / raw)
  To: gcc-bugs

Dear all,

I would like to post a bug report for the GNU C/C++ compiler 3.3-e500.

We use the compiler to generate code for a PowerPC processor.

Used invokation line for the GNU C++ compiler:

ccppc -c -x c++ -ansi -Wall -Werror -mcpu=8540 -fverbose-asm -mbig
      -fmerge-templates -mmultiple -mno-string -mstrict-align -O3
      -fno-exceptions -fno-rtti -fno-builtin-printf
      -I<some include paths>
      -D<some #define's>
      X.CPP -oX.O


// file X.CPP

class X;

template <typename T_>
int X::** f1 () { return static_cast<T_*>(0); }

int X::** f2 () { return f1<int X::* const>(); }


The compiler gives the following error messages:

X.CPP: In function `int X::** f1() [with T_ = int X::*]':
X.CPP:6:   instantiated from here
X.CPP:4: error: invalid conversion from `int X::**' to `int X::**'


BTW, function f1 is instantiated with 'T_ = int X::* const'
and not with 'T_ = int X::*'.

Kind regards
W. Roehrl


-- 
           Summary: Instantiation with const pointer to member
           Product: gcc
           Version: 3.3
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: wolfgang dot roehrl at gi-de dot com
 GCC build triplet: sparc-sun-solaris2.5.1
  GCC host triplet: i386-pc-mingw32
GCC target triplet: powerpc-wrs-vxworks


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31042


^ permalink raw reply	[flat|nested] 4+ messages in thread

* [Bug c++/31042] Instantiation with const pointer to member
  2007-03-05 12:43 [Bug c++/31042] New: Instantiation with const pointer to member wolfgang dot roehrl at gi-de dot com
@ 2007-03-05 13:27 ` rguenth at gcc dot gnu dot org
  2007-03-05 14:10 ` [Bug c++/31042] Misleading error message with instantiation " rguenth at gcc dot gnu dot org
  2007-03-05 14:10 ` rguenth at gcc dot gnu dot org
  2 siblings, 0 replies; 4+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2007-03-05 13:27 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #1 from rguenth at gcc dot gnu dot org  2007-03-05 13:27 -------
Your code is invalid.  Valid is

class X;

template <typename T_>
int X::* const * f1 () { return static_cast<T_*>(0); }

int X::* const * f2 () { return f1<int X::* const>(); }


-- 

rguenth at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |RESOLVED
         Resolution|                            |INVALID


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31042


^ permalink raw reply	[flat|nested] 4+ messages in thread

* [Bug c++/31042] Misleading error message with instantiation with const pointer to member
  2007-03-05 12:43 [Bug c++/31042] New: Instantiation with const pointer to member wolfgang dot roehrl at gi-de dot com
  2007-03-05 13:27 ` [Bug c++/31042] " rguenth at gcc dot gnu dot org
  2007-03-05 14:10 ` [Bug c++/31042] Misleading error message with instantiation " rguenth at gcc dot gnu dot org
@ 2007-03-05 14:10 ` rguenth at gcc dot gnu dot org
  2 siblings, 0 replies; 4+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2007-03-05 14:10 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #2 from rguenth at gcc dot gnu dot org  2007-03-05 14:10 -------
Reopen ...


-- 

rguenth at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|RESOLVED                    |UNCONFIRMED
           Keywords|                            |diagnostic
         Resolution|INVALID                     |
            Summary|Instantiation with const    |Misleading error message
                   |pointer to member           |with instantiation with
                   |                            |const pointer to member


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31042


^ permalink raw reply	[flat|nested] 4+ messages in thread

* [Bug c++/31042] Misleading error message with instantiation with const pointer to member
  2007-03-05 12:43 [Bug c++/31042] New: Instantiation with const pointer to member wolfgang dot roehrl at gi-de dot com
  2007-03-05 13:27 ` [Bug c++/31042] " rguenth at gcc dot gnu dot org
@ 2007-03-05 14:10 ` rguenth at gcc dot gnu dot org
  2007-03-05 14:10 ` rguenth at gcc dot gnu dot org
  2 siblings, 0 replies; 4+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2007-03-05 14:10 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #3 from rguenth at gcc dot gnu dot org  2007-03-05 14:10 -------
... to mark as fixed in 3.4.0.


-- 

rguenth at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |RESOLVED
         Resolution|                            |FIXED
   Target Milestone|---                         |3.4.0


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31042


^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2007-03-05 14:10 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2007-03-05 12:43 [Bug c++/31042] New: Instantiation with const pointer to member wolfgang dot roehrl at gi-de dot com
2007-03-05 13:27 ` [Bug c++/31042] " rguenth at gcc dot gnu dot org
2007-03-05 14:10 ` [Bug c++/31042] Misleading error message with instantiation " rguenth at gcc dot gnu dot org
2007-03-05 14:10 ` rguenth at gcc dot gnu dot 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).