test.d(22): Error: cannot append type test.Path to type test.Path

Chris Wright via Digitalmars-d digitalmars-d at puremagic.com
Tue Jan 24 17:54:41 PST 2017


On Tue, 24 Jan 2017 23:39:40 +0000, Profile Anaysis wrote:

> test.d(22): Error: cannot append type test.Path to type test.Path
> 
> This is due to the changing some code that was appending. Obviously we
> can't append a type to itself.

You *can* append a type to itself:

  struct Path
  {
    Path opBinary(string op)(ref const Path other) if (op == "~")
    {
      return Path.init;
    }
  }

  Path a, b;
  Path c = a ~ b;

That's why the error message isn't clearer.


More information about the Digitalmars-d mailing list