On Wednesday, 23 November 2016 at 22:48:17 UTC, ketmar wrote:
On Wednesday, 23 November 2016 at 22:28:57 UTC, Tofu Ninja
wrote:
On Wednesday, 23 November 2016 at 22:19:28 UTC, ketmar wrote:
On Wednesday, 23 November 2016 at 22:14:25 UTC, Tofu Ninja
wrote:
What is a (ref int)? A tuple with "ref int" as its only
member? Since when is ref int a type?
it is "type with modifier", like "const int" or "immutable
int".
Since when has ref been a type qualifier? It has always been a
parameter/function attribute.
which is technically type qualifier. it just forbidden (in
grammar) to use it anywhere except arg declaration.
Maybe the compiler sees it as a type qualifier, but it is not
listed as a type qualifier and does not behave like a type
qualifier in any sense. For example typeof will never return "ref
int" but will return "const int", auto will never infer ref but
can infer const, you can pass const(int) into a template but can
never pass ref(int) into a template(even with that hack I posted
before, the ref gets striped).
Being able to get an alias to (ref int) seems like a bug.