Ignore include header files with Splint

H

Henry Fr?d?ric

I am currently working in Aisin-AW, in development of navigation
systems (embedded SW).
Since a few weeks, we are checking our source code with splint.

We encounter this problem. I hope this mailing-list can help us to
solve
it :

Our team is responsible of 1 module.
In our C files, we include Header files from others modules.
Those files contain splint errors/warnings, but we cannot modify them.

How can we use splint in order to parse those files (necessary for
definitions), but without getting any warning ?

For example, this is not working and we wonder why :
/*@ignore@*/
#include bad_file.h
/*@end@*/

warnings in "bad_file.h" are displayed, anyway.

thank you in advance !
 
M

Mark Odell

Henry Fr?d?ric wrote:
[snip]
How can we use splint in order to parse those files (necessary for
definitions), but without getting any warning ?

For example, this is not working and we wonder why :
/*@ignore@*/
#include bad_file.h
/*@end@*/

warnings in "bad_file.h" are displayed, anyway.

May I ask why you think the C language specifies how splint should work?
 
M

Michael Wojcik

I am currently working in Aisin-AW, in development of navigation
systems (embedded SW).
Since a few weeks, we are checking our source code with splint.

We encounter this problem. I hope this mailing-list can help us to
solve it :

Splint and other lint tools, though they may be closely related to C,
are not covered by the C language specification; thus they are not,
in the opinion of most of the comp.lang.c regulars, topical here.
(There are arguments for and against this opinion which need not be
rehashed, as they are available to anyone with access to Google's
archives.) Please note that the comp.lang.c FAQ and other materials
for new readers explain what is, and is not, generally considered
topical (by most of the regulars).

While you may be lucky enough to have a Splint expert read your
question here and respond to it, I suspect you would do better to
ask the Splint developers, or consult the documentation. I am not
personally familiar with all of the documentation on the Splint
website (www.splint.org), but there does seem to be quite a lot of
it.

Incidentally, comp.lang.c is not a mailing list. It's a Usenet
newsgroup, which is quite a different thing. There are several
"introduction to the Internet" resources which can explain the
difference.

--
Michael Wojcik (e-mail address removed)

Painful lark, labouring to rise!
The solemn mallet says:
In the grave's slot
he lies. We rot. -- Basil Bunting
 
M

Michael Mair

Henry said:
I am currently working in Aisin-AW, in development of navigation
systems (embedded SW).
Since a few weeks, we are checking our source code with splint.

We encounter this problem. I hope this mailing-list can help us to
solve
it :

Our team is responsible of 1 module.
In our C files, we include Header files from others modules.
Those files contain splint errors/warnings, but we cannot modify them.

How can we use splint in order to parse those files (necessary for
definitions), but without getting any warning ?

For example, this is not working and we wonder why :
/*@ignore@*/
#include bad_file.h
/*@end@*/

<OT>
Read the manual on header file inclusion (somewhere in chapter 14 IIRC)
about system headers and similar; if that does not help, use
/*@ignore@*/ .... /*@end@*/ _within_ the header file. If this is not
applicable in your case, ask in the splint mailing list.
warnings in "bad_file.h" are displayed, anyway.

Please note that this is not topical in comp.lang.c.
Try: http://www.splint.org/lists.html


Cheers
Michael
 
T

Tor Rustad

Henry Fr?d?ric said:
I am currently working in Aisin-AW, in development of navigation
systems (embedded SW).
Since a few weeks, we are checking our source code with splint.

We encounter this problem. I hope this mailing-list can help us to
solve
it :

Our team is responsible of 1 module.
In our C files, we include Header files from others modules.
Those files contain splint errors/warnings, but we cannot modify them.

How can we use splint in order to parse those files (necessary for
definitions), but without getting any warning ?

For example, this is not working and we wonder why :
/*@ignore@*/
#include bad_file.h
/*@end@*/

warnings in "bad_file.h" are displayed, anyway.


Have you tried putting /*@ignore@*/... /*@end@*/ inside the <bad_file.h>
header file? If so, this sound as a splint bug, check their maillist and
buglist, before posting a bug report.

Regarding topicality of lint like tools here, it show that most C
programmers are too ignorant on using such tools. PvdL say:

"Separating lint out from the compiler as an independent program was a
big mistake that people are only now coming to terms with."

A cool feature with splint, is that the tool also add security checks on
e.g. formatstrings and buffer overflow vulnerabilities. People here
complain about a "worse is better" xmalloc,

http://www.ai.mit.edu/docs/articles/good-news/subsection3.2.1.html

but don't wanna hear about exstensive program checking. lol
 
M

Michael Wojcik

Have you tried putting /*@ignore@*/... /*@end@*/ inside the <bad_file.h>
header file?

Presumably not, as the OP explicitly states that this is forbidden.
 
C

CBFalconer

Henry said:
(e-mail address removed) (Michael Wojcik) wrote in message

I can't proceed on this way because I can't modify the
<bad_file.h>

I distinctly recall telling you how to intercept its use without
altering the actual file. I did this in some newsgroup where you
were not off-topic.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,769
Messages
2,569,580
Members
45,055
Latest member
SlimSparkKetoACVReview

Latest Threads

Top