C18 typedef union

Estou tentando usar um exemplo que achei num site,mas tem algo errado na estrutura;
Ela é usada nesta parte da função;
Mas o compilador retorna erro:main.c:227:Error: syntax error
O que esta errado?
- Código: Selecionar todos
typedef union _SET_GET_EFFECT_STRUCTURE
{
struct
{
BYTE report_id;
BYTE effect_type;
BYTE byte_count; // valid only for custom force data effect.
// custom force effects are not supported by this device.
}SET_REPORT_REQUEST;
struct
{
BYTE report_id; // 2
BYTE effect_block_index; // index dell'effetto
BYTE block_load_status; // 1 ok, 2 -out of memory, 3 JC was here, or maybe not ? case: undefined.
int ram_pool_available;
}PID_BLOCK_LOAD_REPORT;
BYTE val[8];
}SET_GET_EFFECT_STRUCTURE;
Ela é usada nesta parte da função;
- Código: Selecionar todos
SET_GET_EFFECT_STRUCTURE.SET_REPORT_REQUEST.report_id=hid_report_out[0];
Mas o compilador retorna erro:main.c:227:Error: syntax error
O que esta errado?