📄 co-unix.lnt
字号:
// co-unix.lnt
// Compiler Options for Unix C
// This file contains options to allow PC-lint to process source
// files for your compiler. It is used as follows:
//
// lint co-unix.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(553) // undefined preprocessor variables are taken as 0
// while processing library headers
-elib(607) // parameter substitution within string
-elib(602) // in dial.h there are comments within comments ?
-elib(537) // repeated include files
-elib(2) // unclosed quotes in nserve.h
-elib(123) // size is both a variable and a macro with args
-si4 // int's are typically 4 bytes
-sp4 // ptr's are typically 4 bytes
-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 options were found necessary when processing
// the Unix headers within /usr/include
-i/usr/include // Set an include directory
+fdi // Use the directory of the including file
+ppw(ident) // Tolerate #ident
-di386=1 // needed for some Unix's
-a#machine(i386) // #assert's machine(i386) (SVR4 facility).
// Not all Unix systems are identical; please tailor to suit
// 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)
// For non-ANSI compilers we suppress messages 515 and 516
// for functions known to have variable argument lists.
// For ANSI compilers, header files should take care of this.
-esym(515,fprintf,printf,sprintf,fscanf,scanf,sscanf)
-esym(516,fprintf,printf,sprintf,fscanf,scanf,sscanf)
-e746 // do not insist on prototypes
// The following options are required by most compilers to
// noiselessly process iostream.h
-elib(1717) //empty prototypes
-elib(522) //function return value ignored
-elib(1053) //prototypes cannot be distinguished
-elib(1721) //unusual operator =() declaration
-elib(1720) //assignment op has non-const parameter
-elib(655) // bitwise operator combining compatible enum's
-elib(641) // converting enum's to int
-elib(537) // repeated include file (ios.h)
-elib(1511) // member (rdbuf) hides nonvirtual member
-elib(1712) // default constructor not defined for class
-elib(1736) // redundant access specifier
-esym(1702,operator<<,operator>>) // both a member and an ordinary function
// These functions return things that are frequently ignored.
-esym(534,ostream::operator<<,istream::operator>>)
// The following additional options seem to be needed.
-fdc // do not Distinguish plain Char as a unique type.
// i.e. char is either signed char or unsigned char
-elib(747) //significant prototype coercion
-elib(740) //unusual pointer casts
-elib(1029) //default argument repeated -- can't dist. char, signed char
-elib(1055) //call to rdbuf() questioned?
-elib(1708,1709) // minor C/C++ declaration conflict
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -