[HarfBuzz] MSVC compile issue with latest git master

John Emmas john at creativepost.co.uk
Fri Sep 7 06:28:55 UTC 2018


Apologies if this comes through twice (yesterday, I accidentally posted 
while being unsubscribed). Here's a link on MSDN which might be helpful...

https://msdn.microsoft.com/en-us/library/191ca0sk.aspx

On 06/09/2018 15:19, John Emmas wrote:
> I updated from git today and I've hit a problem when building with 
> MSVC...
>
> Trying to compile almost any source file produces the following 
> compiler error at lines 255 and 256 of 'hb-atomic.hh':-
>
>    error C2664: 'InterlockedExchangeAdd' : cannot convert parameter 1 
> from 'unsigned int *' to 'volatile LONG *'
>
> Here are the relevant lines:-
>
>    inline int inc (void) { return hb_atomic_int_impl_add (&v, 1); }
>    inline int dec (void) { return hb_atomic_int_impl_add (&v, -1); }
>
> and here's how 'hb_atomic_int_impl_add()' looks (at line 109):-
>
>    #define hb_atomic_int_impl_add(AI, V)    InterlockedExchangeAdd 
> ((unsigned *) (AI), (V)
>
> If I change the above line to this, the compiler error goes away:-
>
>    #define hb_atomic_int_impl_add(AI, V)    InterlockedExchangeAdd 
> ((volatile LONG *) (AI), (V)
>
> I'm building with MSVC-8 so could someone check on some other versions 
> please with a view to making the change permanent? Thanks.
>
> John
>
>



More information about the HarfBuzz mailing list