This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Undesired pointer conversion

I am calling an assembly function from C. The prototype explicitly declares a xdata pointer parameter, foo(unsigned char xdata *buffer). Likewise the definition explicitly declares xdata pointer parameter. However, when it is compiled, the pointer is passed as a generic pointer. This is a problem because memory-specific pointer is passed in registers R6/R7 while generic is passed in R1/R2/R3.

Has anybody heard of this happening before.

My C Compiler is C51.exe V8.12

0