mirror of
https://github.com/lammertb/libhttp.git
synced 2025-12-22 04:02:04 +03:00
Add support for GCC below 4.1.0.
This commit is contained in:
@@ -1253,7 +1253,7 @@ mg_atomic_inc(volatile int *addr)
|
|||||||
* (volatile unsigned int *) or (volatile LONG *),
|
* (volatile unsigned int *) or (volatile LONG *),
|
||||||
* so whatever you use, the other SDK is likely to raise a warning. */
|
* so whatever you use, the other SDK is likely to raise a warning. */
|
||||||
ret = InterlockedIncrement((volatile long *)addr);
|
ret = InterlockedIncrement((volatile long *)addr);
|
||||||
#elif defined(__GNUC__)
|
#elif defined(__GNUC__) && (__GNUC__ > 5 || (__GNUC__ == 4 && __GNUC_MINOR__ > 0))
|
||||||
ret = __sync_add_and_fetch(addr, 1);
|
ret = __sync_add_and_fetch(addr, 1);
|
||||||
#else
|
#else
|
||||||
ret = (++(*addr));
|
ret = (++(*addr));
|
||||||
@@ -1270,7 +1270,7 @@ mg_atomic_dec(volatile int *addr)
|
|||||||
* (volatile unsigned int *) or (volatile LONG *),
|
* (volatile unsigned int *) or (volatile LONG *),
|
||||||
* so whatever you use, the other SDK is likely to raise a warning. */
|
* so whatever you use, the other SDK is likely to raise a warning. */
|
||||||
ret = InterlockedDecrement((volatile long *)addr);
|
ret = InterlockedDecrement((volatile long *)addr);
|
||||||
#elif defined(__GNUC__)
|
#elif defined(__GNUC__) && (__GNUC__ > 5 || (__GNUC__ == 4 && __GNUC_MINOR__ > 0))
|
||||||
ret = __sync_sub_and_fetch(addr, 1);
|
ret = __sync_sub_and_fetch(addr, 1);
|
||||||
#else
|
#else
|
||||||
ret = (--(*addr));
|
ret = (--(*addr));
|
||||||
|
|||||||
Reference in New Issue
Block a user