Implicit pointer de-reference into proc argument, bad idea?

I was just curious why implicit de-reference is disallowed here. The data would only be read, not modified, and if the type is too big, it would get passed by reference anyway. What kind of bug is being prevented here?