Codegen C - Fix `discriminant_value` to always return the variant index
Codegen C - Fix `discriminant_value` to always return the variant index

- Didn't fully handle niche-optimised variants (offset wasn't subtracted)
- Needed to match rustc behaviour (at least with 1.29) for bootstrap
  - Ideally, bootstrap wouldn't care - but too lazy.

thepowersgang/mrustc,thepowersgang/mrustc,thepowersgang/mrustc,thepowersgang/mrustc,thepowersgang/mrustc