The type of a case item expression that does not match the type of the case condition expression often indicates a coding error.
module m;
enum {A, B} e;
enum {C, D} f;
initial begin
case (e)
C: ;
endcase
end
endmodule
module m;
enum {A, B} e;
enum {C, D} f;
initial begin
case (e)
A: ;
endcase
end
endmodule