Fix ICE with switch statement uninitialized variable warnings
GCC now correctly converts switch label types to match the switch index type, resolving an internal compiler error.
An internal compiler error (ICE) occurred when the type of switch indices and case labels differed, particularly when uninitialized variable warnings were enabled. This change modifies gimple-predicate-analysis.cc to convert case label values to the type of the switch index, thus ensuring type consistency. A new test case pr127262.c is added to verify the fix.
In Details
The predicate::init_from_control_deps function in gimple-predicate-analysis.cc incorrectly assumed switch indices and case labels would have compatible types. This commit forces a conversion of the case label values to match the switch index's type, preventing an ICE that occurred during analysis of control dependencies, especially when warnings about uninitialized variables were active.