我的C++編譯器不能理解restrict
指令。如何抑制涉及restrict指令的g ++錯誤?
如何抑制這些錯誤?
/usr/include/inttypes.h:271: error: expected ',' or '...' before 'nptr'
usr/include/inttypes.h
包含
extern intmax_t strtoimax(const char * restrict nptr, char ** restrict endptr, int base);
編譯命令:
g++ -c -pipe -g -gdwarf-2 -arch x86_64 -Xarch_x86_64 -mmacosx-version-min=10.5 -Wall
-W -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE
-DPIC -DQT_GUI_LIB -DQT_CORE_LIB -DQT_SHARED -o player.o ../dir/player.cpp
編輯:
$ g++ --version
i686-apple-darwin11-llvm-g++-4.2 (GCC) 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2336.9.00)
這是什麼版本的GCC? Cygwin上的4.5.x和Linux上的4.1.x都沒有給我帶來麻煩...... – DevSolar
在問題中增加了g ++版本信息。我正在使用OS X Lion –
我在裏面看到了'-mmacosx-version-min = 10.5'的小內容......如果內存正常運行,MacOS會安裝一個特殊版本的llvm-gcc,它有一些涉及其自身的技巧。檢查你所調用的編譯器確實是/usr/bin/g++-4.2(或者你的版本是什麼),然後看看你的問題是否存在。 (編輯:呃,這不是你正在使用的「真正的」GCC);-) – DevSolar