D-Programming-Language/phobos — pull request #2764 by MetaLang (2014-11-23 03:21:42+00:00)
Title: Add CopyShared

Commit 2/3 to add some Copy* templates that make it easier to declare a variable with a different type from another variable but with the same storage class. Ex:

shared int i;
CopyShared!(char, i) c;
pragma(msg, typeof(c)); //shared(char)

The helper template Typeof is code that I factored out from CopyConstness. Once this PR gets merged, I will change CopyConstness to use Typeof.