Change B::Deparse's test to test interpolation of @] instead of @*.

The test wasn't specifically relying on @*, so any unused punctuation
variable is equally good.  $] isn't going away any time soon, hence @] is
unlikely to change.
Change tie_fetch_count.t to use *] instead of **.

The test is not sensitive to which typeglob is used.
Additional tests for the deprecation warnings when using $* or $#.
Generate the deprecation warnings for all uses $* or $#.

Previously it would fail to be generated if another variable using the same
typeglob was seen first (e.g. @* before $*), and would not be generated for
the second and subsequent uses.

It's hard to fix the failure to generate warnings at all without also
generating them every time, and warning every time is consistent with the
warnings that $[ used to generate.
Change the warning for $* to add ", and will become a syntax error".

The intent is that $*, @*, %*, &* and ** stop being parsed as punctuation
variables, freeing up the syntax for other use (possibly "splats").
Add a deprecation warning for all uses of @*, %*, &* and **.

All compile-time uses of the ** typeglob now warn.
Merge in the changes that deprecate the use of @*, &*, ** and %*.

Use of $* already generated a deprecation warning.
This resolves RT #116943.