我修改的Qemu的源代碼,創建這樣GCC錯誤消息:嘗試使用招「TARGET_I386」
#if defined(TARGET_I386)
/* some defines */
#elif defined(TARGET_ARM)
/* some other defines */
#endif
然後,這個文件包含在vl.c
文件,和gcc報告以下錯誤信息:
error: attempt to use poisoned "TARGET_I386"
error: attempt to use poisoned "TARGET_ARM"
TARGET_I386
在另一頭文件中定義並且在其它QEMU的源文件被使用。
此錯誤信息的含義是什麼?
更新:
正如馬提亞維爾納提到的,這些定義不應當被用於目標獨立代碼。這些毒物標識在poison.h
這個答案比我的好,它解釋了錯誤發生的原因,而不是如何解釋。 – 2012-02-27 14:48:18