Re: [PATCH libcacard 3/3] libcacard: add G_BEGIN/END_DECLS

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, Nov 19, 2015 at 02:18:25PM -0200, Eduardo Lima (Etrunko) wrote:
> On 11/19/2015 02:00 PM, Marc-André Lureau wrote:
> > 
> > 
> > ----- Original Message -----
> >> On 11/19/2015 10:30 AM, Marc-André Lureau wrote:
> >>> If the compiler in use is a C++ compiler, adds extern "C" around the
> >>> header.
> >>>
> >>> Signed-off-by: Marc-André Lureau <marcandre.lureau@xxxxxxxxx>
> >>> ---
> >>>  src/libcacard.h | 6 ++++++
> >>>  1 file changed, 6 insertions(+)
> >>>
> >>> diff --git a/src/libcacard.h b/src/libcacard.h
> >>> index 0770d13..2b2082e 100644
> >>> --- a/src/libcacard.h
> >>> +++ b/src/libcacard.h
> >>> @@ -5,6 +5,10 @@
> >>>  #ifndef LIBCACARD_H
> >>>  #define LIBCACARD_H
> >>>  
> >>> +#include <glib.h>
> >>> +
> >>
> >> I guess this glib.h include shouldn't be here.
> > 
> > Why? (need more coffee?)
> 
> Well, it might as well be a convention on the project, but in my opinion
> it should only include files from the project itself. For instance, you
> don't have a glib.h include in gtk.h

gtk.h does not include glib.h because the G_BEGIN_DECLS/G_END_DECLS
macros are not used in gtk.h, but in each individual file included from
gtk.h (ie gtkwidget.h and friends).
Here a different approach is taken, and G_BEGIN_DECLS/G_END_DECLS are
only present in the main include file, which in turn includes the
various headers.
Given that libcacard.h uses macros from glib headers, it makes sense to
me that it directly includes <glib.h>
An alternative would be to move the G_BEGIN_DECLS/G_END_DECLS to each
individual files, in which case the #include <glib.h> could be moved to
each includes as well.

Christophe

Attachment: signature.asc
Description: PGP signature

_______________________________________________
Spice-devel mailing list
Spice-devel@xxxxxxxxxxxxxxxxxxxxx
http://lists.freedesktop.org/mailman/listinfo/spice-devel

[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]     [Monitors]