I tried switching over unsigned integer values in GLSL and got a warning (implicit cast to int). I was surprised and found out a switch statement only accepts scalar integer values (according to GLSL 330 and 400 specifications).
I’d suggest removing this minor inconvenience (mainly for aesthetic reasons) and being able to switch over unsigned integer values as well in GLSL. Using unsigned integers is especially useful to select different render paths for different materials in shaders. Of course mostly an int can easily handle all cases, but I think that storing id’s as unsigned int is better practice.