Can not overload template method function with const. Bug?

Tobias Pankrath tobias at pankrath.net
Wed Aug 8 08:26:55 PDT 2012


On Wednesday, 8 August 2012 at 15:01:23 UTC, kenji hara wrote:
> In the declaration of std.typecons.Tuple:
>
>     bool opEquals(R)(R rhs) if (isTuple!R)
>     {
>         // [snip]
>     }
>
>     bool opEquals(R)(R rhs) const if (isTuple!R)
>     {
>         // same as non-const version
>     }
>
> Adding const version works correctly.
> What's the problem?
>
> Kenji Hara
>
That's exactly what I've tried first. Using a git clone from 
yesterday and within phobos directory, using

> make -f posix.mak

everything works. Now I'm adding the const version of opEquals 
and I get: http://pastebin.com/akRdFfAJ

But it's similar with the reduced example from the thread in 
d.learn. Does that work for you?

I'm using dmd cef1bbfdcd9282934ff6f1b07617254753334799 and phobos 
90eb9313030340dc274d2fd82144a7f30d0e4ae5



More information about the Digitalmars-d mailing list