analyzer: deal with -fshort-enums

On platforms that enable -fshort-enums by default, various switch-enum
analyzer tests fail, because apply_constraints_for_gswitch doesn't
expect the integral promotion type cast.  I've arranged for the code
to cope with those casts.

for  gcc/analyzer/ChangeLog

	* (has_nondefault_case_for_value_p): Take
	enumerate type as a parameter.
	(region_model::apply_constraints_for_gswitch): Cope with
	integral promotion type casts.

for  gcc/testsuite/ChangeLog

	* gcc.dg/analyzer/switch-short-enum-1.c: New.
	* gcc.dg/analyzer/switch-no-short-enum-1.c: New.
3 files changed