Re: [PATCH] Fix cygwin build error with i386-linux-tdep.c

Jiang Jilin
2009-08-30T23:53:08Z

On Mon, Aug 31, 2009 at 7:43 AM, Hui Zhu<teawater@gmail.com> wrote:
> On Mon, Aug 31, 2009 at 07:39, Jiang Jilin<freephp@gmail.com> wrote:
>> On Sun, Aug 30, 2009 at 11:22 PM, Hui Zhu<teawater@gmail.com> wrote:
>>> On Sun, Aug 30, 2009 at 23:13, Jiang Jilin<freephp@gmail.com> wrote:
>>>> On Sun, Aug 30, 2009 at 9:15 PM, Hui Zhu<teawater@gmail.com> wrote:
>>>>> Hi guys,
>>>>>
>>>>>   if (tmpu32 > 499)
>>>>>     {
>>>>>       printf_unfiltered (_("Process record and replay target doesn't "
>>>>> -                           "support syscall number %u\n"), tmpu32);
>>>>> +                           "support syscall number %u\n"), (unsigned) tmpu32);
>>>>>       return -1;
>>>>>     }
>>>>>
>>>>
>>>> Sorry, it's not clear to me.
>>>>
>>>> when looking into the code, I found the type of tmpu32 is uint32_t,
>>>> why did the gcc complain "warning: unsigned int format, uint32_t arg
>>>> (arg 2)"?
>>>>
>>>> %u doesn't mean unsigned int?
>>>>
>>>
>>> Really?  what does it mean?
>>
>> I mean without your patch, the type of tmpu32 _is_ uint32_t, why did
>> gcc complain? and when you cast it to unsigned, the warning
>> disappeared?
>>
>
> I am not sure the unit32_t in cygwin.  But it looks like uint32_t is
> not unsigned int in cygwin.
> And "unsigned" is seems "unsigned int".

If it's true, that is, uint32_t is not unsigned int in cygwin, I
think there is a bug in cygwin, we should redefine the uint32_t to
real unsigned int, shouldn't we?

--
Thanks

Jiang