We would previously silently wrap the derived child’s depth back to 0. Instead, explicitly fail when trying to derive an impossible depth, and handle the error in callers.
An extended fuzzing corpus of descriptor_parse triggered this behaviour, which was reported by MarcoFalke.
Fixes #25751.