This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] Always include defs.h first.


On 11/08/2012 01:34 AM, Doug Evans wrote:
> On Wed, Nov 7, 2012 at 12:11 PM, Pedro Alves <palves@redhat.com> wrote:
>> defs.h should always be the first included header in a .c file.  In
>> turn, this means that a foo.h header should not need to include
>> defs.h, as the .c file always includes defs.h before including foo.h.
> 
> fwiw, I like the idea of header files including what they themselves
> need, and not assuming the includer will do it for them, even for
> defs.h.
> It's something I'd like to see gdb move towards, but I'm not in a hurry. :-)

Sorry, I hadn't imagined the change could be disagreeable.  Otherwise, I'd
have waited.

I'm also of the camp that advocates that header files should include what
they themselves need.  OTOH, IMO, defs.h is special.

 - It's defs.h that includes config.h.  Including config.h in headers
   is bad practice.  Comparing to gcc, I'd say defs.h is currently a
   kind of a mix of system.h and coretypes.h, and whatnot.
 - It's needed practically _everywhere_.

Also:

$ ls gdb/*.h | wc -l
232

since not including defs.h in headers is the de facto standard on the code
base, where only 4 of those 232 had "#include defs.h" in them, and another
include was being introduced exactly because the corresponding .c file was in
error, I thought it best to just get rid of those 4 instances making the
codebase a little bit less inconsistent.

-- 
Pedro Alves


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]