Except that no standard library function is defined to return an
lvalue.
Right, but the example that started this was just the sort of thing
the might plausibly be made to do so:
creal(myvar)=8.0;[/QUOTE]
Where will we stop? What about atan(myvar) = 1 to set myvar to
tan(1)?
One can imagine that being implemented as a macro in such a way that
it *would* work, for example
#define creal(x) ((x)._realpart)
which would make it natural to wish for a function to be able to do
the same.
That would sound great, but for consistency with the rest of the
language I'd prefer setreal(z, x).
Much like ferror() which doesn't return a lvalue (but, depending
on how the FILE object is made, it could be very straightforward
to write a macro which does), and we have to use clearerr() to set
it to zero (and have no way to set it to one).