Disallow more voids.

Now elements of arrays, fields of structs/unions, l-values, and function
arguments cannot have type void anymore. This removes a run-time check on the
memory lookup operation.