https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102440

--- Comment #6 from Segher Boessenkool <segher at gcc dot gnu.org> ---
(In reply to Martin Liška from comment #5)
> All right, so the meaning of the UInteger type is actually that users can't
> set the flag/param to a negative value:
> 
> $ gcc -fabi-version=-3 a.c
> gcc: error: argument to '-fabi-version=' should be a non-negative integer

That doesn't contradict using it with an "unsigned int".

> Plus there are very many flags that are initialized to -1 with Init(-1). The
> special value is used for distinguishing between a set value and the default
> one.

That doesn't contradict using it with an "unsigned int".

> So the name is unfortunate, but I don't see what can we do about it?

We could make the "UInteger" type mean it is implemented with an "unsigned int"
C type (or some other unsigned integer type).

Reply via email to