https://issues.dlang.org/show_bug.cgi?id=22108 --- Comment #2 from Walter Bright <bugzilla at digitalmars.com> --- What's happening is the value of p is being returned, and `return ref` and `scope` should prevent the value of p being returned. --