frontend: make Decl.zir_decl_index typed

This field had the wrong type. It's not a `Zir.Inst.Index`, it's
actually a `Zir.OptionalExtraIndex`. Also, the former is currently
aliased to `u32` while the latter is a nonexhaustive enum that gives us
more type checking.

This commit is preparation for making this field non-optional. Now it
can be changed to `Zir.ExtraIndex` and then the compiler will point out
all the places that the non-optional assumption is being violated.
256ab68a97Andrew Kelley committed on 10/28/2023, 8:30:27 AMparent9ff9ea3
5 files changedLine totals unavailable