[HarfBuzz] Conflict type declaration with Win32/64 API (SHORT, USHORT, ...)

Behdad Esfahbod behdad at behdad.org
Mon Jan 16 07:22:41 PST 2012


On 01/16/2012 10:16 AM, Behdad Esfahbod wrote:
> On 01/16/2012 02:03 AM, Petr Kobalíček wrote:
>> Hi Behdad,
>>
>> yes, I saw these errors when compiling file hb-tt-font.cc. I removed
>> it and harfbuzz compiled just fine.
> 
> Ah, that explains.  Because that file is not used currently.  I'll fix it.

Humm.  We're still compiling it though.  So I'm not sure why I don't get the
same error with Mingw32.  Do you have any idea why that single file has the
problem?

behdad

> behdad
> 
> 
>> Best regards
>> Petr Kobalicek
>>
>> On Sun, Jan 15, 2012 at 10:16 PM, Behdad Esfahbod <behdad at behdad.org> wrote:
>>> On 01/07/2012 12:53 PM, Petr Kobalíček wrote:
>>>> Hi Behdad,
>>>>
>>>> On Thu, Jan 5, 2012 at 7:49 PM, Behdad Esfahbod <behdad at behdad.org> wrote:
>>>>> On 01/05/2012 11:43 AM, Petr Kobalíček wrote:
>>>>>> Another solution can be to maintain my private version of patched
>>>>>> harfbuzz, but personally I don't like this idea.
>>>>>
>>>>> People have successfully compiled HarfBuzz on Windows, and I regularly do so
>>>>> using mingw32.  The issue you are facing may be as simple as reordering a
>>>>> couple includes to fix.
>>>>
>>>> Yeah, it's include files problem, but I only wanted to show that I had
>>>> this issue and maybe others in the future will encounter the issue
>>>> too. This problem can be definitely fixed by choosing different names
>>>> for these symbols. If I see LONG, SHORT, and similar symbols in the
>>>> code I always think that the code is written for Windows and is using
>>>> conventions designed for this platform. If there is no will from
>>>> harfbuzz side then okay.
>>>
>>> What I'm saying is that you should NOT see these errors.  You are only
>>> supposed to include the public header files, and those do not include the
>>> problem symbols.  Or are you seeing the errors compiling HarfBuzz itself?
>>>
>>> behdad
>>>
>>>>>> There are also many warnings related to implicit size_t -> int casts
>>>>>> (64-bit mode), but these are simple to fix.
>>>>>
>>>>> Patch please.
>>>>
>>>> Give me some time to fix this. The error is mainly related to
>>>> constructs like (unsigned int)(ptr_a - ptr_b). It's not reported by
>>>> gcc, but reported my msc.
>>>>
>>>>> behdad
>>>>
>>>> Thanks
>>>> Petr
>>>>
>>



More information about the HarfBuzz mailing list