Message ID | 1358437928-2420-1-git-send-email-peter.maydell@linaro.org |
---|---|
State | Superseded |
Headers | show |
On Thu, Jan 17, 2013 at 03:52:08PM +0000, Peter Maydell wrote: > Remove an unnecessary mutual inclusion loop between qemu-pixman.h and > console.h, since the former was only including the latter for > 'PixelFormat*', which can be provided by typedefs.h. This requires a > minor adjustment to qemu-pixman.c, which was relying on the implicit > inclusion of console.h for the actual struct PixelFormat definition, > and on implicitly dragging in a header defining NULL. > > Signed-off-by: Peter Maydell <peter.maydell@linaro.org> > --- > I noticed this because I had an out of tree file which included > ui/console.h before qemu-common.h and it didn't compile. But mutual > include loops are a bad idea anyway IMHO. > > include/ui/qemu-pixman.h | 2 +- > ui/qemu-pixman.c | 3 ++- > 2 files changed, 3 insertions(+), 2 deletions(-) CC ui/curses.o In file included from ui/spice-core.c:40:0: /home/stefanha/qemu/include/ui/spice-display.h:93:5: error: unknown type name ‘QEMUCursor’ Stefan
On 18 January 2013 13:47, Stefan Hajnoczi <stefanha@gmail.com> wrote: > On Thu, Jan 17, 2013 at 03:52:08PM +0000, Peter Maydell wrote: >> Remove an unnecessary mutual inclusion loop between qemu-pixman.h and >> console.h, since the former was only including the latter for >> 'PixelFormat*', which can be provided by typedefs.h. This requires a >> minor adjustment to qemu-pixman.c, which was relying on the implicit >> inclusion of console.h for the actual struct PixelFormat definition, >> and on implicitly dragging in a header defining NULL. > CC ui/curses.o > In file included from ui/spice-core.c:40:0: > /home/stefanha/qemu/include/ui/spice-display.h:93:5: error: unknown type name ‘QEMUCursor’ Oops. I don't have spice in my dev environment I guess. Having spice-display.h include console.h will probably fix this. -- PMM
diff --git a/include/ui/qemu-pixman.h b/include/ui/qemu-pixman.h index 016fd87..b032f52 100644 --- a/include/ui/qemu-pixman.h +++ b/include/ui/qemu-pixman.h @@ -15,7 +15,7 @@ #pragma GCC diagnostic error "-Wredundant-decls" #endif -#include "console.h" +#include "qemu/typedefs.h" /* * pixman image formats are defined to be native endian, diff --git a/ui/qemu-pixman.c b/ui/qemu-pixman.c index 609335a..6dcbe90 100644 --- a/ui/qemu-pixman.c +++ b/ui/qemu-pixman.c @@ -3,7 +3,8 @@ * See the COPYING file in the top-level directory. */ -#include "ui/qemu-pixman.h" +#include "qemu-common.h" +#include "ui/console.h" int qemu_pixman_get_type(int rshift, int gshift, int bshift) {
Remove an unnecessary mutual inclusion loop between qemu-pixman.h and console.h, since the former was only including the latter for 'PixelFormat*', which can be provided by typedefs.h. This requires a minor adjustment to qemu-pixman.c, which was relying on the implicit inclusion of console.h for the actual struct PixelFormat definition, and on implicitly dragging in a header defining NULL. Signed-off-by: Peter Maydell <peter.maydell@linaro.org> --- I noticed this because I had an out of tree file which included ui/console.h before qemu-common.h and it didn't compile. But mutual include loops are a bad idea anyway IMHO. include/ui/qemu-pixman.h | 2 +- ui/qemu-pixman.c | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-)