我在应用程序的构 build 置中添加了arm64支持,现在在curlrules.h中得到此错误,
这是发生错误的代码:
typedef char
__curl_rule_01__
[CurlchkszEQ(long, CURL_SIZEOF_LONG)]; //where the error occurs
最佳答案
好吧,显然,您需要确保在定义了CURL_SIZEOF_LONG
的任何位置都将其定义为sizeof(long)
(或等效的整数字面量,可能是8
)。您可能正在尝试对仍然认为您在32位ARM上的 header 进行#include
。
“具有负大小的数组”技巧是在C和C++-pre-2011中模拟 static_assert
的非常常见的技巧。如果您想知道CurlchkszEQ
在这种特殊情况下的工作方式,请在源代码中查找。