https://d.puremagic.com/issues/show_bug.cgi?id=12013
--- Comment #3 from Adam D. Ruppe <[email protected]> 2014-01-27 13:45:59 PST --- The D language also has a type system that should catch such problems statically... but I think this is three bugs coming together: 1) static arrays are implicitly sliced. i think this is a mistake since it doesn't let you easily keep track of where the references are going. It is easy enough to do [] when you want one. 2) it is an implicit cast from mutable to immutable. Generally ok since static arrays are value types, but when combined with the implicit slice it is a problem. 3) it is an escaping reference to stack data. This isn't supposed to be allowed in D I think. char[8] => string alone should be illegal but it might do: char[8] => immutable(char[8]), which makes sense alone in the same way int => immutable(int) is logical but then auto slice it, immutable(char[8]) => immutable(char)[]... and now we've entered insanity. -- Configure issuemail: https://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
