after changing GCC version 3.0 to 4.1 i am getting invalid lvalue in increment error
#include <vscreen.h>
#include "vscreen_internal.h"
extern UDINT colPalette[256];
void memset_f(void *p,USINT value, UDINT len)
{
register UDINT longValue = colPalette[value];
while(len)
{
if ( ((UDINT)p&3) == 0 ) /* even address*/
{
if (len > 32) /*and more than 32 bytes to fill */
{
*((UDINT*)p)++ = longValue; /* lvalue in increment error*/
*((UDINT*)p)++ = longValue; /* lvalue in increment error*/
*((UDINT*)p)++ = longValue; /* lvalue in increment error*/
*((UDINT*)p)++ = longValue; /* lvalue in increment error*/
*((UDINT*)p)++ = longValue; /* lvalue in increment error*/
*((UDINT*)p)++ = longValue; /* lvalue in increment error*/
*((UDINT*)p)++ = longValue; /* lvalue in increment error*/
*((UDINT*)p)++ = longValue; /* lvalue in increment error*/
len-=32;
continue;
}
}
*(USINT*)p++ = (USINT)longValue; /* lvalue in increment error*/
len--;
}
}
#endif