// co-arch.lnt // Compiler Options for Archimedes C // This file contains options to allow PC-lint to process source // files for your compiler. It is used as follows: // // lint co-arch.lnt source-file(s) // // while processing compiler (library) header files ... -wlib(1) // sets the warning level within library headers to 1 // (no warnings, just syntax errors). Comment out if you // are actually linting library headers. This // option makes obsolete options of the form -elib(axxx) where // xxx >= 400 which may be retained for historical reasons. -elib(652) // suppress message about #define of earlier declared symbols -elib(762) // suppress message about multiple identical declarations and -elib(760) // suppress message about multiple identical macro defs -elib(783) // one of the library headers does not end in a newline -elib(14) // allow 'redefinitions' within library headers +rw(_to_brackets) // activate the _to_brackets keyword // causes reserved word and trailing '[' ']' to be ignored -dinterrupt=_to_brackets // defines interrupt to be a _to_brackets -dusing=_to_brackets // defines using in the same way. -d"bit=unsigned char" // nearest approximation -d"sbit=unsigned char" // nearest approximation -d"sfr=unsigned char" // nearest approximation -d"sfr16=unsigned short" // nearest approximation -esym(553,__TID__) // don't be upset if this definition is missing // Some additional reserved words follow. These are all ignored: +rw(code,data,idata,xdata,zpage) +rw(monitor,no_init,non_banked,plm,reentrant) +rw(reset_processor) +rw(input,output,halt) +rw(interrupt_mode_0,interrupt_mode_1,interrupt_mode_2) +rw(wait_for_interrupt,_opc,_tbc) // The following are function-like reserved words. They are followed // by '()' which make them resemble function calls. -denable_interrupt()= -ddisable_interrupt()= -emacro(734,putc) // don't complain about items being too large. -emacro(413,offsetof) // use of NULL pointer creates a stir -emacro(545,offsetof) // addressing an array member is OK -emacro((???),va_arg) // the va_arg() macro can yield 415, 416, 661, 662 // 796 and 797 (out-of-bounds errors). // The following functions exhibit variable return modes. // That is, they may equally-usefully be called for a value // as called just for their effects. Accordingly we inhibit // Warning 534 for these functions. // Feel free to add to or subtract from this list. -esym(534,close,creat,fclose,fprintf,fputc) -esym(534,fputs,fscanf,fseek,fwrite,lseek,memcpy,memmove,memset) -esym(534,printf,puts,scanf,sprintf,sscanf,strcat,strcpy) -esym(534,strncat,strncpy,unlink,write)