Code: Select all
#include <platform.h>
#define STX 0x02
#define ETX 0x03
int rx(unsigned char * alias buffer) {
unsigned char * alias org;
unsigned char * alias buf;
org = buffer;
buf = buffer;
if(*buffer++ != STX) return 0;
while(*buffer != ETX)
*buf++ = *buffer++;
return buf-org;
}
int main(void) {
unsigned char buffer[128];
rx(buffer);
return 1;
}
Code: Select all
C:\Users\Alan\xmos\inccharpointbug>xmake
No modules used.
Creating dependencies for main.xc
Compiling main.xc
../src/main.xc: In function `rx':
../src/main.xc:15: error: use of `buf' causes an ambiguous evaluation
xmake[1]: *** [.build/src/main.xc.o] Error 1
xmake: *** [bin//inccharpointbug.xe] Error 2
C:\Users\Alan\xmos\inccharpointbug>
Code: Select all
#include <platform.h>
#define STX 0x02
#define ETX 0x03
int rx(unsigned char * alias buffer) {
unsigned char * alias org;
unsigned char * alias buf;
org = buffer;
buf = buffer;
if(*buffer++ != STX) return 0;
while(*buffer != ETX) {
*buf = *buffer;
buf++;
buffer++;
}
return buf-org;
}
int main(void) {
unsigned char buffer[128];
rx(buffer);
return 1;
regards
Al