Re: [PATCH] IB/mlx4: Avoid implicit enumerated type conversion

From: Bart Van Assche
Date: Thu Sep 27 2018 - 18:33:48 EST


On Thu, 2018-09-27 at 16:28 -0600, Jason Gunthorpe wrote:
+AD4 On Thu, Sep 27, 2018 at 01:34:16PM -0700, Nick Desaulniers wrote:
+AD4
+AD4 +AD4 +AD4 Neither ib+AF8-qp+AF8-create+AF8-flags nor mlx4+AF8-ib+AF8-qp+AF8-flags have negative values, is
+AD4 +AD4 +AD4 signedness necessary?
+AD4 +AD4
+AD4 +AD4 enums are by default restricted to the range of ints.
+AD4
+AD4 That's not quite right, the compiler sizes the enum to be able to fit
+AD4 the largest value contained within, today that is int, but if we added
+AD4 1+ADwAPA-31, then it would become larger.

Hi Jason,

Are you perhaps confusing C and C+-+-? For C+-+-, an enumeration whose underlying
type is not fixed, the underlying type is an integral type that can represent
all the enumerator values defined in the enumeration. For C however I think
that enumeration values are restricted to what fits in an int.

Bart.