== Quote from Walter Bright (newshou...@digitalmars.com)'s article
> Andrei Alexandrescu wrote:
> > Time has come to make a decision on implementing Steven Schveighoffer's
> > proposal:
> Unmentioned in the proposal is is inout a type constructor or a storage
> class? For example,
>      U[inout(T)]* foo(inout(X)*** p) { ... }

I think it's got to be a storage class, or it's only a partial solution.  If 
your
above example doesn't work, people will still be forced to resort to all kinds 
of
kludges like using templates and plain old code duplication.

> I also prefer the idea of inout on the return type being assumed, rather
> than explicit:
>      T foo(inout U p) { ... }

Not sure how much sense that would make if we go the full storage class route, 
for
example in your above example.  It seems like this would be hard to infer.  If 
we
go the top level only route, then it seems like a worthwhile thing to save some
syntactic noise.

Reply via email to