CO-WC32.LNT 2.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. // Compiler Options for Watcom C, C++ 32 bit
  2. -cwc
  3. // This file contains options to allow PC-lint to process source
  4. // files for your compiler. It is used as follows:
  5. //
  6. // lint co-wc32.lnt source-file(s)
  7. //
  8. -d_M_IX86=200 // assume Intel 80286 architecture -- modify to suit
  9. -d__declspec()= // ignore this construct
  10. // additional reserve words needed
  11. +rw(_loadds,_export)
  12. +rw(__interrupt,__near,__far,__huge,__fortran,__pascal,__cdecl)
  13. +rw(__export,__loadds,__saveregs,__asm,__fastcall,__stdcall)
  14. +rw(_export)
  15. +fcd // makes cdecl significant -- used for proto generation
  16. +fcu // chars are by default unsigned
  17. +fsu // so are strings
  18. -d__386__ // pre-defined macro for 386 version, not set by -cwc
  19. -d__FLAT__ // not set by -cwc
  20. -si4 // sizeof(int) is 4
  21. -spN4 // sizeof(near pointer) is 4
  22. -spF6 // sizeof( far pointer) is 6
  23. -sld10 // sizeof(long double) is 10.
  24. -function(exit,_exit) // _exit() is like exit()
  25. -emacro(734,putc) // don't complain about items being too large.
  26. -emacro(506,putc) // don't complain about constant Boolean
  27. -emacro(???,va_arg) // the va_arg() macro can yield 415, 416, 661, 662
  28. // 796 and 797 (out-of-bounds errors).
  29. // While processing compiler (library) header files ...
  30. -elib(46) // an unsigned short bit field is used as __FILLER__
  31. -elib(522) // function return value ignored
  32. -elib(537) // repeated include file (ios.h)
  33. -elib(641) // converting enum to int
  34. -elib(652) // suppress message about #define of earlier declared symbols
  35. -elib(655) // ORing enum's
  36. -elib(726) // extraneous comma in enumeration
  37. -elib(760) // suppress message about multiple identical macro defs
  38. -elib(762) // suppress message about multiple identical declarations and
  39. -elib(806) // small bit field is signed
  40. -elib(1053) // prototypes cannot be distinguished
  41. -elib(1511) // member (rdbuf) hides nonvirtual member
  42. -elib(1704) // private copy constructor
  43. -elib(1712) // default constructor missing
  44. -elib(1717) // empty prototypes
  45. -elib(1720) // strange argument to assignment operator
  46. -elib(1721) // unusual operator =() declaration
  47. -elib(1722) // assignment operator does not return ref to class
  48. -elib(1724) // strange argument to copy constructor
  49. -esym(1702,operator<<,operator>>)
  50. // The following functions exhibit variable return modes.
  51. // That is, they may equally-usefully be called for a value
  52. // as called just for their effects. Accordingly we inhibit
  53. // Warning 534 for these functions.
  54. // Feel free to add to or subtract from this list.
  55. -esym(534,close,creat,fclose,fflush,fprintf,fputc)
  56. -esym(534,fputs,fscanf,fseek,fwrite,lseek,memcpy,memmove,memset)
  57. -esym(534,printf,puts,scanf,sprintf,sscanf,strcat,strcpy)
  58. -esym(534,strncat,strncpy,unlink,write)