[ERROR]
far, rom or uni has been specified for an array parameter where it is not legal to use it. In ANSI C, passing an array to a function always means passing a pointer to the array, because it is not possible to pass an array by value. To indicate that the pointer is a non-standard pointer, non-standard keywords as near or far may be specified if supported.
void foo(int far a) {}; // error
void foo(ARRAY far ap) {} // ok: passing a far pointer
Remove the illegal modifier.