Is there a way to make __gshared part of an alias?

as in

enum AddrSpace : uint
{
    Private  = 0,
    Global   = 1,
    Shared   = 2,
    Constant = 3,
    Generic  = 4,
}

struct Variable(AddrSpace as, T)
{
    T val;
    alias val this;
}
alias Global(T)   = __gshared Variable!(AddrSpace.Global,   T);

Global!float bar1; // <- still thread local

Reply via email to