http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55115



--- Comment #3 from Pierre Poissinger <pierre.poissinger at gmail dot com> 
2012-10-29 14:42:09 UTC ---

Hi,



Typically: The header is used, and contains all the 'visible' functions found

in source BUT it's only needed:

a) To perform real compilation: To check that function called are called

correctly

b) As export/header for the lib.



cproto only preproc the file via -E option.



Quick 'real life' example:

myfuncs.h: Auto generated proto, generated out of a.c and b.c

a.c: Define a(), calls b() - include 'myfuncs.h'

b.c: Define b() - include 'myfuncs.h'



=> the "include" of the generated myfuncs.h file is to avoid local definitions

+ allow early check if functions signature changes for whatever reasons.



Now - myfuncs.h being auto generated, during first build, prototyping will fail

quickly due to "Missing headers"... 

This create some kind of a "Chicken/Egg" problem :-)



If adding an option is annoying: Maybe then the 'fatal' should not be enforced

if run is limited to preproc only, aka '-E' ?

Reply via email to