📄 msg.txt
字号:
x = (int y) z;
152 Lob base file 'file name' missing -- The indicated file
has been specified as the base of lob production via the
option -lobbase(). On output, this message is given if
the lob base is missing. The situation is correctable by
simply producing the missing lob output. This will not be
a problem given the appropriate dependencies in the make
file. On input, the most likely cause of this message is
an out-of-date base file. A hash code within the lob file
being read, did not match a similar code already embedded
within the base. The input lob file should be considered
in error and should be regenerated. See Chapter 7.
153 Could not create temporary file -- This message is
produced when generating a lob output file based upon some
lob base file. When the lob file is produced, it is first
written to a temporary. The temporary is generated by the
C library function tmpnam().
154 Could not evaluate type 'String', int assumed -- String
in the message is the second argument to either a
printf_code option or a scanf_code option. When used, it
was to be evaluated as a type. Unfortunately the type
could not be identified.
155 Ignoring {...} sequence within an expression, 0 assumed -- A
braced sequence within an expression is a non-standard
extension of some compilers (in particular GCC).
Internally, we treat such a braced sequence as the
equivalent of a constant 0. This means that we may be
able to quietly lint such constructions if you merely
suppress the message.
17.2 Internal Errors
200-299 Some inconsistency or contradiction was discovered in
the PC-lint/FlexeLint system. This may or may not be the
result of a user error. This inconsistency should be
brought to the attention of Gimpel Software.
17.3 Fatal Errors
Errors in this category are normally fatal and suppressing the
error is normally impossible. However, those errors marked with
an asterisk(*) can be suppressed and processing will be
continued. For example -e306 will allow reprocessing of modules.
301 Stack overflow -- There was a stack overflow while
processing declarations. Approximately 50 nested
declarators were found. For example, if a '/' followed by
50 consecutive '*'s were to introduce a box-like comment
and if the '/' were omitted, then this message would be
produced.
302 Exceeded Available Memory -- Main memory has been
exhausted.
303 String too long (try +macros) -- A single #define
definition or macro invocation exceeded an internal limit
(of 4096 characters). As the diagnostic indicates the
problem can be corrected with an option.
304 Corrupt object file, code Integer, symbol=String -- A
PC-lint/FlexeLint object file is apparently corrupted.
Please delete the object module and recreate it using the
-oo option. See Section 7. The special code identifier
number as well as a list of symbol names are optionally
suffixed to the message as an aid in diagnosing the
problem by technical support.
305 Unable to open module 'file name' -- file name is the
name of the file. The named module could not be opened
for reading. Perhaps you misspelled the name.
306* Previously encountered module 'FileName' -- FileName is
the name of the module. The named module was previously
encountered. This is probably a user blunder.
307 Can't open indirect file 'FileName' -- FileName is the
name of the indirect file. The named indirect file
(ending in .lnt) could not be opened for reading.
308 Can't write to standard out -- stdout was found to equal
NULL. This is most unusual.
309* #error ... -- The #error directive was encountered. The
ellipsis reflects the original line. Normally processing
is terminated at this point. If you set the fce (continue
on #error) flag, processing will continue.
310 Declaration too long: 'String...' -- A single declaration
was found to be too long for an internal buffer (about
2000 characters). This occurred when attempting to write
out the declaration using the -o... option. The first 30
characters of the declaration is given in String.
Typically this is caused by a very long struct whose
substructures, if any, are untagged. First identify the
declaration that is causing the difficulty. If a struct
or union, assign a tag to any unnamed substructures or
subunion. A typedef can also be used to reduce the size
of such a declaration.
312 Lint Object Module has obsolete or foreign version id --
A lint object module was produced with a prior or
different version of PC-lint/FlexeLint. Delete the.lob
file and recreate it using your new version of
PC-lint/FlexeLint.
313 Too many files -- The number of files that
PC-lint/FlexeLint can process has exceeded an internal
limit. The FlexeLint user may recompile his system to
increase this limit. Look for symbol FSETLEN in custom.h.
Currently, the number of files is limited to 6400.
314* Previously used .lnt file: FileName -- The indirect file
named was previously encountered. If this was not an
accident, you may suppress this message.
315 Exceeded message limit (see -limit) -- The maximum number
of messages was exceeded. Normally there is no limit
unless one is imposed by the -limit(n) option. ( See
Section 5.)
316 Error while writing to file "file name" -- The given file
could not be opened for output.
321 Declaration stack overflow -- An overflow occurred in the
stack used to contain array, pointer, function or
reference modifiers when processing a declarator.
322* Unable to open include file FileName -- FileName is the
name of the include file, which could not be opened.
Directory search is controlled by options: -i (See
Section 5.), +fdi (Section 5.5 Flag Options) and the
INCLUDE environment variable. This is a suppressible
fatal message. If option -e322 is used, Error message 7
will kick in. A diagnostic will be issued but processing
will continue.
323 Token String too long -- In attempting to save a token
for later reuse, a fixed size buffer was exceeded
(governed by the size M_TOKEN).
324 Too many symbols Integer -- Too many symbols were
encountered. An internal limit was reached.
325 Cannot re-open file 'file name' -- In the case of a large
number of nested includes, files in the outer fringe need
to be closed before new ones are opened. These outer
files then need to be re-opened. An error occurred when
attempting to re-open such a file.
17.4 C Warning Messages
401 symbol 'Symbol' not previously declared static at Location
-- The indicated Symbol declared static was previously
declared without the static storage class. This is
technically a violation of the ANSI standard. Some
compilers will accept this situation without complaint and
regard the Symbol as static.
402 static function 'Symbol' (Location) not defined -- The
named Symbol was declared as a static function in the
current module and was referenced but was not defined (in
the module).
403 static symbol 'Symbol' has unusual type modifier -- Some
type modifiers such as _export are inconsistent with the
static storage class.
404 struct not completed within file 'FileName' -- A struct
(or union or enum) definition was started within a header
file but was not completed within the same header file.
405 #if not closed off within file 'FileName' -- An #if
construct was begun within a header file (name given) but
was not completed within that header file. Was this
intentional?
406 Comment not closed off within file 'FileName' -- A
comment was begun within a header file (name given) but
was not completed within that header file. Was this
intentional?
407 Inconsistent use of tag 'Symbol' conflicts with Location
-- A tag specified as a union, struct or enum was
respecified as being one of the other two in the same
module. For example:
struct tag *p;
union tag *q;
will elicit this message.
408 Type mismatch with switch expression -- The expression
within a case does not agree exactly with the type within
the switch expression. For example, an enumerated type is
matched against an int.
409 Expecting a pointer or array -- An expression of the form
i[...] was encountered where i is an integral expression.
This could be legitimate depending on the subscript
operand. For example, if i is an int and a is an array
then i[a] is legitimate but unusual. If this is your
coding style, suppress this message.
410 size_t not what was expected from fzl and/or fzu, using
'Type' -- This warning is issued if you had previously
attempted to set the type of sizeof by use of the options
+fzl, -fzl, or -fzu, and a later size_t declaration
contradicts the setting. This usually means you are
attempting to lint programs for another system using
header files for your own system. If this is the case we
suggest you create a directory housing header files for
that foreign system, alter size_t within that directory,
and lint using that directory.
411 ptrdiff_t not what was expected from fdl option, using
'Type' -- This warning is issued if you had previously
attempted to set the type of pointer differences by use of
the fdl option and a later ptrdiff_t declaration
contradicts the setting. See suggestion in Error Message
410.
412 Ambiguous format specifier '%X' -- The format specifier
%X when used with one of the scanf family, is ambiguous.
With Microsoft C it means %lx whereas in ANSI C it has the
meaning of %x. This ambiguous format specification has no
place in any serious C program and should be replaced by
one of the above.
413 Likely use of null pointer 'Symbol' in [left/right]
argument to operator 'String' Reference -- From
information gleaned from earlier statements, it appears
certain that a null pointer (a pointer whose value is 0)
has been used in a context where null pointers are
inappropriate. These include: Unary *, pointer increment
(++) or decrement(--), addition of pointer to numeric, and
subtraction of two pointers. In the case of binary
operators, one of the words 'left' or 'right' is used to
designate which operand is null. Symbol identifies the
pointer variable that may be null. See also messages 613
and 794, and Section 9.2 Value Tracking.
414 Possible division by 0 -- The second argument to either
the division operator (/) or the modulus operator (%) may
be zero. Information is taken from earlier statements
including assignments, initialization and tests. See
Section 9.
415 access of out-of-bounds pointer ('Integer' beyond end of
data) by operator 'String' -- An out-of-bounds pointer
was accessed. String designates the operator. The
parameter 'Integer' gives some idea how far out of bounds
the pointer may be. It is measured in units given by the
size of the pointed to object. The value is relative to
the last item of good data and therefore should always be
greater than zero. For example:
int a[10];
a[10] = 0;
results in an overflow message containing the phrase '1
beyond end of data'. See Section 9.
416 creation of out-of-bounds pointer ('Integer' beyond end of
data) by operator 'String' -- An out-of-bounds pointer
was created. See message 415 for a description of the
parameters Integer and String. For example:
int a[10];
...
f( a + 11 );
Here, an illicit pointer value is created and is flagged
as such by PC-lint/FlexeLint. Note that the pointer a+10
is not considered by PC-lint/FlexeLint to be the creation
of an out-of-bounds pointer. This is because ANSI C
explicitly allows pointing just beyond an array. Access
through a+10, however, as in *(a+10) or the more familiar
a[10], would be considered erroneous but in that case
message 415 would be issued. See Section 9.
417 integral constant 'String' longer than long long int --
The longest possible integer is by default 8 bytes (see
the +fll flag and then the -sll# option). An integral
constant was found to be even larger than such a quantity.
For example: 0xFFFF0000FFFF0000F. String is the token in
error.
418 Passing null pointer to function 'Symbol', Context
Reference -- A NULL pointer is being passed to a function
identified by Symbol. The argument in question is given
by Context. The function is either a library function
designed not to receive a NULL pointer or a user function
dubbed so via the option -function. See Section 10.1
Function Mimicry (function) and Section 10.2.1 Possible
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -