_GLIBCXX_ATOMIC_BUILTINS не определено в gcc 4.4.5 - PullRequest
0 голосов
/ 06 апреля 2011

У меня есть какой-то код, который я портирую, и я отследил ошибку до отсутствия макрос _GLIBCXX_ATOMIC_BUILTINS

Разве более поздние версии gcc не определяют это?

Какой правильный способ обойти это?

1 Ответ

0 голосов
/ 06 апреля 2011

В этой версии вы также захотите проверить атомарные макросы для определенного типа данных, чтобы вы могли сделать:

#if defined(_GLIBCXX_ATOMIC_BUILTINS_4) && !defined(_GLIBCXX_ATOMIC_BUILTINS)
#define _GLIBCXX_ATOMIC_BUILTINS
#endif

или

#if defined(_GLIBCXX_ATOMIC_BUILTINS) || defined(_GLIBCXX_ATOMIC_BUILTINS_4)

Макросы:

/* Define if builtin atomic operations for bool are supported on this host. */
#undef _GLIBCXX_ATOMIC_BUILTINS_1

/* Define if builtin atomic operations for short are supported on this host. */
#undef _GLIBCXX_ATOMIC_BUILTINS_2

/* Define if builtin atomic operations for int are supported on this host. */
#undef _GLIBCXX_ATOMIC_BUILTINS_4

/* Define if builtin atomic operations for long long are supported on this
   host. */
#undef _GLIBCXX_ATOMIC_BUILTINS_8
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...