This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
c++/2094: gcc3.1 emits 'sorry, not implemented: use of `ptrmem_cst' in template type unification'
- To: gcc-gnats at gcc dot gnu dot org
- Subject: c++/2094: gcc3.1 emits 'sorry, not implemented: use of `ptrmem_cst' in template type unification'
- From: togawa at acm dot org
- Date: 26 Feb 2001 07:21:14 -0000
- Reply-To: togawa at acm dot org
>Number: 2094
>Category: c++
>Synopsis: gcc3.1 emits 'sorry, not implemented: use of `ptrmem_cst' in template type unification'
>Confidential: no
>Severity: serious
>Priority: medium
>Responsible: unassigned
>State: open
>Class: rejects-legal
>Submitter-Id: net
>Arrival-Date: Sun Feb 25 23:26:01 PST 2001
>Closed-Date:
>Last-Modified:
>Originator: Atsushi Togawa
>Release: gcc version 3.1 20010225 (experimental)
>Organization:
>Environment:
i686-pc-linux-gnu, RedHat 6.2
>Description:
Gcc emits the following error message when I compile the code in the 'How-To-Repeat' section.
t.cc:16: sorry, not implemented: use of `ptrmem_cst' in template type
unification
t.cc: In function `void f()':
t.cc:16: warning: unused variable `bar<baz, &baz::the_foo_, baz> i'
>How-To-Repeat:
Compiling the following code with 'gcc -c <filename>' will repeat the problem.
template<typename Element, int Element::*Foo, typename CVElement>
struct bar {
bar() {}
template<typename CVE>
bar(const bar<Element, Foo, CVE>& x) {}
};
struct baz {
int the_foo_;
};
void f()
{
bar<baz, &baz::the_foo_, baz> i = bar<baz, &baz::the_foo_, baz>();
}
>Fix:
>Release-Note:
>Audit-Trail:
>Unformatted: