Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective c Obj-C中“结构块文字1”的重新定义_Objective C_Struct_Compiler Errors_Objective C Blocks_Llvm Gcc - Fatal编程技术网

Objective c Obj-C中“结构块文字1”的重新定义

Objective c Obj-C中“结构块文字1”的重新定义,objective-c,struct,compiler-errors,objective-c-blocks,llvm-gcc,Objective C,Struct,Compiler Errors,Objective C Blocks,Llvm Gcc,我已经解决这个问题一段时间了,它真的让我发疯。无论何时声明块,在使用LLVM GCC 4.2编译Xcode 4.1时都会出现编译错误: Redefinition of 'struct __block_literal_1' 即使是从文档粘贴的复制块示例也会引发错误: int multiplier = 7; int (^myBlock)(int) = ^(int num) { return num * multiplier; }; 我曾多次尝试寻找解决此错误的方法,但都无济于事。任何帮助

我已经解决这个问题一段时间了,它真的让我发疯。无论何时声明块,在使用LLVM GCC 4.2编译Xcode 4.1时都会出现编译错误:

Redefinition of 'struct __block_literal_1'
即使是从文档粘贴的复制块示例也会引发错误:

int multiplier = 7;
int (^myBlock)(int) = ^(int num) {
    return num * multiplier;
};
我曾多次尝试寻找解决此错误的方法,但都无济于事。任何帮助都将不胜感激

更新:


我知道我发帖子已经有一段时间了,但我迟早要解决这个问题。我认为这与使用静态库有关。将包含块的静态库添加到项目时,将引发错误。将很快发布更多的细节。

这是一些C++ lambda扩展名?@ PST:不,它是C/Objy-C扩展。但是,你是正确的,它是lambda表达式的一种实现。你能提供一个最小的测试用例来复制这个问题,并且包括生成系统中的错误的构建日志吗?这是一些C++ lambda扩展?@ PST:不,它是C/Objy-C扩展。但是,您是正确的,它是lambda表达式的一个实现。您能否提供一个最小的测试用例来重现问题,并包括在您的系统中产生错误的构建日志?