Где находится std :: hardware_destructive_interference_size? - PullRequest
3 голосов
/ 31 января 2020

Похоже, std::hardware_destructive_interference_size не определено в libc ++ или libstdc ++. Я собрал свои локальные установки. Я посмотрел в соответствующих репозиториях SVN.

Они должны быть в заголовке <new>, см .: cppreference.com

Я бы ожидал люди спрашивают, где эти константы, но, похоже, никто больше не скучает по ним.

Чего мне не хватает? Где они!

Ответы [ 2 ]

3 голосов
/ 31 января 2020

Ни одна библиотека не реализовала эту функцию. Это задокументировано в их списках соответствия C ++ 17:

https://gcc.gnu.org/onlinedocs/libstdc++/manual/status.html#status .iso.2017

http://libcxx.llvm.org/cxx1z_status.html

(В каждом из них ищите «P0154R1».)

Вы можете определить, доступна ли эта функция с помощью

#if __cpp_lib_hardware_interference_size >= 201603
2 голосов
/ 31 января 2020

Согласно документации , G CC еще не реализовал эту функцию.

Feature      | Proposal | Status | SD-6 Feature Test
constexpr... | P0154R1  | No     | __cpp_lib_hardware_interference_size >= 201603

То же самое для документации libc ++ :

Paper   | Group | Paper Name   | Meeting      | Status | First released version
P0154R1 | LWG   | constexpr... | Jacksonville | -      | -

Поддержка C ++ 17 в обеих реализациях все еще не завершена:

...