Hello!
Yesterday I found an interesting issue for myself while I was
implementing unique pointer for my project in BetterC. When I was
trying to return new instance from a `move` method I got calling
of destructor the instance. When the instance is out of scope the
calling is happens again. I also see that addresses of an
instance that calls destructor are same.
That thing doesn't happen when I don't use BetterC mode. Is that
bug or feature?
Please checkout code https://run.dlang.io/is/m1TRnT and try it in
BetterC mode and in usual mode.
But if I return result of a constructor directly instead of
saving the result to variable and returning the variable from the
`move` method I don't see double calling of the same destructor.
I. e.
```
auto newObject = Box(this);
return newObject;
```
is replaced by
```
return Box(this);
```
So... is that bug or feature?