1

这是取自一些真实代码的示例。这不能在我的三星 Galaxy Tab 2 上编译:

#define some_macro(x_)

void some_function(vec4 some_arg some_macro(FOO))
{

}

这个想法是参数列表中的“some_macro(FOO)”部分应该扩展为空。相反,这会生成一条错误消息,例如“错误:0:520:'(':语法错误”,我假设它指的是宏调用中的左父级。无参数宏(简单的#define)在同一个地方工作正常.

我并不十分担心必须重构我的代码以避免这种语法,但我想知道是否有人知道这段代码是否应该根据 GLSL ES 规范工作。这在其他设备上编译得很好(比如 Galaxy Note II)。

4

0 回答 0