[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH] typedefs: add QJSON
From: |
Dr. David Alan Gilbert |
Subject: |
Re: [Qemu-devel] [PATCH] typedefs: add QJSON |
Date: |
Fri, 8 Jun 2018 10:20:37 +0100 |
User-agent: |
Mutt/1.9.5 (2018-04-13) |
* Greg Kurz (address@hidden) wrote:
> On Fri, 8 Jun 2018 10:04:39 +0100
> "Dr. David Alan Gilbert" <address@hidden> wrote:
>
> > * Greg Kurz (address@hidden) wrote:
> > > Since commit 83ee768d6247b, we now have two places that define the
> > > QJSON type:
> > >
> > > $ git grep 'typedef struct QJSON QJSON'
> > > include/migration/vmstate.h:typedef struct QJSON QJSON;
> > > migration/qjson.h:typedef struct QJSON QJSON;
> > >
> > > This breaks address@hidden:
> > >
> > > In file included from /tmp/qemu-test/src/migration/savevm.c:59:
> > > /tmp/qemu-test/src/migration/qjson.h:16: error: redefinition of typedef
> > > 'QJSON'
> > > /tmp/qemu-test/src/include/migration/vmstate.h:30: note: previous
> > > declaration of 'QJSON' was here
> > > make: *** [migration/savevm.o] Error 1
> > >
> > > This happens because CentOS 6 has an old GCC 4.4.7. Even if redefining
> > > a typedef with the same type is permitted since GCC 4.6, unless -pedantic
> > > is passed, we don't really need to do that on purpose. Let's have a
> > > single definition in <qemu/typedefs.h> instead.
> > >
> > > Signed-off-by: Greg Kurz <address@hidden>
> >
> > Yeh that looks right to me;
> >
> >
> > Reviewed-by: Dr. David Alan Gilbert <address@hidden>
> >
>
> Hi Dave,
>
> Whose tree should this go through ?
I'm happy to take it through migration.
Dave
> $ git show | ./scripts/get_maintainer.pl
> Juan Quintela <address@hidden> (maintainer:Migration)
> "Dr. David Alan Gilbert" <address@hidden> (maintainer:Migration)
> address@hidden (open list:All patches CC here)
>
> Cheers,
>
> --
> Greg
>
> > > ---
> > > include/migration/vmstate.h | 2 --
> > > include/qemu/typedefs.h | 1 +
> > > migration/qjson.h | 2 --
> > > 3 files changed, 1 insertion(+), 4 deletions(-)
> > >
> > > diff --git a/include/migration/vmstate.h b/include/migration/vmstate.h
> > > index 3747110f951a..42b946ce902c 100644
> > > --- a/include/migration/vmstate.h
> > > +++ b/include/migration/vmstate.h
> > > @@ -27,8 +27,6 @@
> > > #ifndef QEMU_VMSTATE_H
> > > #define QEMU_VMSTATE_H
> > >
> > > -typedef struct QJSON QJSON;
> > > -
> > > typedef struct VMStateInfo VMStateInfo;
> > > typedef struct VMStateDescription VMStateDescription;
> > > typedef struct VMStateField VMStateField;
> > > diff --git a/include/qemu/typedefs.h b/include/qemu/typedefs.h
> > > index 325c72de3313..3ec0e13a967f 100644
> > > --- a/include/qemu/typedefs.h
> > > +++ b/include/qemu/typedefs.h
> > > @@ -97,6 +97,7 @@ typedef struct QEMUTimer QEMUTimer;
> > > typedef struct QEMUTimerListGroup QEMUTimerListGroup;
> > > typedef struct QBool QBool;
> > > typedef struct QDict QDict;
> > > +typedef struct QJSON QJSON;
> > > typedef struct QList QList;
> > > typedef struct QNull QNull;
> > > typedef struct QNum QNum;
> > > diff --git a/migration/qjson.h b/migration/qjson.h
> > > index 2978b5f37121..41664f2d71b5 100644
> > > --- a/migration/qjson.h
> > > +++ b/migration/qjson.h
> > > @@ -13,8 +13,6 @@
> > > #ifndef QEMU_QJSON_H
> > > #define QEMU_QJSON_H
> > >
> > > -typedef struct QJSON QJSON;
> > > -
> > > QJSON *qjson_new(void);
> > > void qjson_destroy(QJSON *json);
> > > void json_prop_str(QJSON *json, const char *name, const char *str);
> > >
> > --
> > Dr. David Alan Gilbert / address@hidden / Manchester, UK
>
--
Dr. David Alan Gilbert / address@hidden / Manchester, UK