(the large switch table replacing a lookup)
Its not that esoteric, maintaining switches is more
intuitive and flexible than dealing with rigid lookup
table logic.
Although it is a common case, changing the lookup to use an explicit array is a simple fix for code that relies on this optimization. Even non-consecutive ranges are often straightforward to handle with C array designators (standardized for 25 years now!)