void DoSomething()
{
// No default constructor for object of type 'Foo'.
// No appropriate opAssign method found in 'Foo' for value assignment
auto f = Foo(Resources::GetSValue("something.sval"));
// OK
Foo@ f2 = Foo(Resources::GetSValue("something.sval"));
// OK
auto@ f3 = Foo(Resources::GetSValue("something.sval"));
}
class Foo
{
Foo(SValue@ sval)
{
}
}
So it seems like the auto keyword is causing some issues here. The issue also doesn't show if I put int as the constructor param instead of SValue@. Might be related to this change?
Now the question is - is this change intended or is this a bug? We use the auto keyword like the first case all over our code. Seems like a big behavior change like this has to be a bug.. right?
This is tested on the latest SVN version.