[libdvbpsi-devel] Header multiple inclusion error

Jean-Paul Saman jpsaman at videolan.org
Tue May 14 09:44:05 CEST 2013


Andrey,

On Sat, May 11, 2013 at 10:54 PM, Andrey Utkin <
andrey.krieger.utkin at gmail.com> wrote:

> I consider forcing compilation fail in case of multiple inclusion not
> correct.
> You can see in other projects include guards without "else" block,
> which result in silently compiling and working correctly.
> To further justify my position, i'll give an example.
> We have two classes - A and B, both of which utilize some dvbpsi
> objects, let's say dvbpsi_t, in their data members or function
> signatures. Thus they both have to include dvbpsi.h in their .h files.
> Then we have class C, which includes A and B as data members, so it
> has to include A.h and B.h in its .h. Voila, multiple inclusion, and
> libdvbpsi forces compilation fail.
>

You should not include the dvbpsi.h header files inside the .h file for
this situation. Include it only in the
.c files is the right solutions in your example.


> Will a patch eliminating #error directive be accepted?
>

NO.

--
> Andrey Utkin
> _______________________________________________
> libdvbpsi-devel mailing list
> libdvbpsi-devel at videolan.org
> http://mailman.videolan.org/listinfo/libdvbpsi-devel
>

Kind regards,

Jean-Paul Saman.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.videolan.org/pipermail/libdvbpsi-devel/attachments/20130514/6eb564da/attachment.html>


More information about the libdvbpsi-devel mailing list