[Issue 3008] Members of non-lvalues (rvalues) can be assigned to.

d-bugmail at puremagic.com d-bugmail at puremagic.com
Thu Jul 30 13:40:57 PDT 2009


http://d.puremagic.com/issues/show_bug.cgi?id=3008





--- Comment #18 from Steven Schveighoffer <schveiguy at yahoo.com>  2009-07-30 13:40:56 PDT ---
(In reply to comment #15)
> Incorrect.
> 
> s is an lvalue (it isn't being returned)
> s.getValue is an lvalue (pointer to some C's data, AKA a reference type)

*struct* MyNiftyPointerTo(T)

...

MyNiftyPointerTo!(C) getValue()

Read that carefully about 5 times

getValue returns a struct.  getValue returns an rvalue.  Please recognize this
before commenting again.

> It's not going away because MyNiftyPointerTo!(C).getValue is an lvalue.

MyNiftyPointerTo!(C) does not have a function called getValue, it is the return
type from getValue

> But I'm going to answer the question anyways ...

Incidentally, I can type quite fast and I have never EVER wanted to save
keystrokes when it sacrifices clarity.  My protests have nothing to do with
saving keystrokes, they have to do with generic code -- writing code that works
whether something is a builtin or a custom wrapper type.

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------


More information about the Digitalmars-d-bugs mailing list