Re: [PATCH] Make large enum constants unsigned
"Maciej W. Rozycki" <[email protected]> Thu, 22 May 2014 22:41:26 +0100
| Newsgroups | gmane.comp.tools.cgen.devel |
|---|---|
| Message-ID | <[email protected]> |
On Thu, 22 May 2014, Frank Ch. Eigler wrote: > > > (string-append "(signed int)" (number->string (cadr e))) > > [...] > > how would that be better than? > > (string-append (number->string (cadr e)) "U") > > It would be a closer match to expressing our desire to match C enum > typing, but I'd be fine with "U" suffixing too. TBH I don't understand what you mean here, a C compiler is free to choose from `char', `int' and `unsigned int' as the underlying (compatible) type of an enumeration as long as the type can represent all the member values defined. How exactly the signed `int' type is going to be advantageous over the `unsigned int' type here? If this is used to produce a bit mask, which I gather it is, then I find using an unsigned type more natural. Maciej