S3A6 USBX Device Class CDC-ACM Ejecution failed

Hi

We are trying to communicate our electronic board with the 64-pin S3A6 synergy micro with a PC through the serial USB port, With the USBX Device class CDC-ACM.

We have tested with the project USB_CDCACM_Device on a S5D9 PK development board and it works perfectly.

When we use the USBX Device class CDC-ACM in our project with the S3A6 and we configure it, it compiles well, the problem comes when we try to debug.

The debug stop in the function:

VOID ux_dcd_synergy_register_set (UX_DCD_SYNERGY * dcd_synergy, ULONG synergy_register, USHORT value)
{
     USHORT * dcd_reg;

     / * Calculate register * /
     dcd_reg = (USHORT *) ((dcd_synergy-> ux_dcd_synergy_base) + synergy_register);

     / * Write to a Synergy USB register. * /
     * dcd_reg = * dcd_reg | value;
}

inside ux_dcd_synergy_register_set.c, specifically in the line: * dcd_reg = * dcd_reg | value;

This function is called with the next parameters by:

ux_dcd_synergy_register_set(dcd_synergy, UX_SYNERGY_DCD_INTENB0,  (UX_SYNERGY_DCD_INTENB0_VBSE |
                                                                                                              UX_SYNERGY_DCD_INTENB0_DVSE |
                                                                                                              UX_SYNERGY_DCD_INTENB0_CTRE |
                                                                                                              UX_SYNERGY_DCD_INTENB0_BEMPE |
                                                                                                              UX_SYNERGY_DCD_INTENB0_NRDYE |
                                                                                                              UX_SYNERGY_DCD_INTENB0_BRDYE));

in the ux_dcd_synergy_initialize.c, inside static void ux_dcd_synergy_initialize_common_complete (void) function.

The debug only say:

Failed to execute MI command:
-data-evaluate-expression &(dcd_reg)
Error message from debugger back end:
Can't take address of "dcd_reg" which isn't an lvalue.

in the aforementioned line: * dcd_reg = * dcd_reg | value;

Can someone give us some clue as to what we are setting wrong?

Thanks in advance.

Hanton