[英]Making data reads/writes atomic in C11 GCC using <stdatomic.h>?
[英]<stdatomic.h> in GCC 4.8?
我想利用C11標准提供的新原子操作。 但是,嘗試#include
適當的頭文件給了我這個:
csort-par.c:5:23: fatal error: stdatomic.h: No such file or directory
#include <stdatomic.h>
http://gcc.gnu.org/wiki/C11Status上的文檔似乎說自從GCC 4.7以來提供了頭文件...我錯過了什么? __STDC_NO_ATOMICS__
未定義。
gcc --version
如下:
gcc (Ubuntu/Linaro 4.8.1-10ubuntu9) 4.8.1
Copyright (C) 2013 Free Software Foundation, Inc.
我確認__STDC_NO_ATOMICS__
沒有定義如下:
#ifdef __STDC_NO_ATOMICS__
#error yes
#else
#error no
#endif
收益率:
csort-par.c:10:2: error: #error no
#error no
編輯:感謝您的快速回復。
如果有人在谷歌遇到同樣的問題而絆倒了這個問題,那么在此期間需要修復,直到他們發布GCC 4.9:
此文件丟失。 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58016
它僅在gcc 4.9中修復,正如其發行說明所述( http://gcc.gnu.org/gcc-4.9/changes.html )
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.