On Thursday, 4 October 2018 at 12:08:38 UTC, Shachar Shemesh
wrote:
Two distinct things. Kinke was talking about how to pass a
struct through the ABI. You are talking about special-casing a
specific name.
Not just name, but argument passing as well.
Not to mention, your special case is to transform it to
something you can *already* specify in the language. Why?
Because that syntax pertains specifically to construction, which
is what a compiler move is; is not currently used by the language
(the fact that the compiler doesn't error on it is an oversight);
enforces calling convention.
Which is, however, not a reason to formalize it and make it a
requirement for an isolated specific case, such as this one,
utilizing a syntax that is currently not used by the language.
There is positively nothing in DIP 1014 that is "syntax not
used by the language". Quite the contrary.
Which is what I said in the very next sentence, so I'm not sure
what your point is here. It's like we're having a discussion but
we aren't at the same time.
As opposed to trying to fit existing language semantics to
something that the language didn't seem to want to allow in
the first place.
Formalize it as a suggestion, and we can discuss the "as
opposed to".
Alright, let's get back to it after the weekend then.
Like I said, I think there's a lot you're glossing over here
(such as backwards compatibility).
Backwards compatibility? With what, exactly? Non-existing
explicit moves?