... when it's not allowed.
I. e. with HMR enabled [chunkhash] for the entry chunk
is not allowed. Now it throws an error.
Also fixes a bug where [chunkhash] doesn't have to correct
length. fixes#1192
If the length option on a hash was being used for a file path template
(e.g. '[hash:8].js'), the file would be outputted with the correct name,
but the reference inside require.ensure would not work, because the length
truncation would operate on more than just the hash, and would truncate
some of the characters added to pad the hash value.
Fix is to implement the `hashWithLength` function where this is a problem.
This doesn't feel like a proper solution, as it adds some redundancies
in a few places, but it's only in the chunk loading blocks that this matters,
so it's small in scope.