gccでデフォルトのCを使用しています。
私のコード:
typedef struct _OpcodeEntry OpcodeEntry;
//
struct _OpcodeEntry
{
unsigned char uOpcode;
OpcodeMetadata pMetadata;
};
//
const OpcodeMetadata omCopyBytes1 = { 1, 1, 0, 0, 0, 0, &CopyBytes };
const OpcodeEntry pOpcodeTable[] =
{
{ 0x0, omCopyBytes1 },
};
エラー:
error: initializer element is not constant
error: (near initialization for 'pOpcodeTable[0].pMetadata')
omCopyBytes1
上記の行で実際に設定されているものに変更すると、コードは正常にコンパイルされます。私は何が間違っているのですか?