Message ID | 20160122170233.GY14825@redhat.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA512 On 01/22/16 09:02, Daniel P. Berrange wrote: > On Fri, Jan 22, 2016 at 08:52:36AM -0800, Sean Bruno wrote: >> -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA512 >> >> >> >> On 01/22/16 08:47, Peter Maydell wrote: >> >>> This one is just straightforwardly BSD-only code that hasn't >>> been compile-tested. >>> >>>> qemu-char.c:4265:36: warning: incompatible pointer types >>>> passing 'ChardevCommon *' (aka 'struct ChardevCommon *') to >>>> parameter of type 'ChardevBackend *' (aka 'struct >>>> ChardevBackend *') [-Wincompatible-pointer-types] return >>>> qemu_chr_open_pp_fd(fd, common, errp); ^~~~~~ >>>> qemu-char.c:1838:61: note: passing argument to parameter >>>> 'backend' here ChardevBackend *backend, >>> >>> This one looks like it ought to build on Linux so you're >>> probably right about it being a clang-only thing. (We do build >>> with clang on OSX but I think there the CHARDEV_PARPORT code is >>> not compiled in.) >>> >>> thanks -- PMM >>> >> >> Yeah, this is smack in the middle of #ifdef (random BSD) here. >> It looks like a simple copy/paste error where "common" should >> have been "backend". Fixes the build failure, but still emits a >> cast warning. I think this is the intent of the changes however. >> >> index e133f4f..73eb10f 100644 - --- a/qemu-char.c +++ >> b/qemu-char.c @@ -1840,7 +1840,7 @@ static CharDriverState >> *qemu_chr_open_pp_fd(int fd, { CharDriverState *chr; >> >> - - chr = qemu_chr_alloc(common, errp); + chr = >> qemu_chr_alloc(backend, errp); if (!chr) { return NULL; } > > Close, but you need to change the type of the parameter too. Can > you test this for me > > diff --git a/qemu-char.c b/qemu-char.c index e133f4f..aa2e660 > 100644 --- a/qemu-char.c +++ b/qemu-char.c @@ -1835,12 +1835,12 @@ > static int pp_ioctl(CharDriverState *chr, int cmd, void *arg) } > > static CharDriverState *qemu_chr_open_pp_fd(int fd, - > ChardevBackend *backend, + > ChardevCommon *backend, Error **errp) { CharDriverState *chr; > > - chr = qemu_chr_alloc(common, errp); + chr = > qemu_chr_alloc(backend, errp); if (!chr) { return NULL; } > > > If it solves it, i'll send a patch formally > > > Regards, Daniel > Yep, confirmed working/compiling with no warning. Thanks! sean -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iQF8BAEBCgBmBQJWomP7XxSAAAAAAC4AKGlzc3Vlci1mcHJAbm90YXRpb25zLm9w ZW5wZ3AuZmlmdGhob3JzZW1hbi5uZXRCQUFENDYzMkU3MTIxREU4RDIwOTk3REQx MjAxRUZDQTFFNzI3RTY0AAoJEBIB78oecn5knMwH/2jnh/+AVDDDlJVgNV6PiTWB +kaKO0B/22xGHsiUQNpvxjcnb03PH82XZ1XSyBdHpMWfWoLXIkXXi4vtf7On/008 jtMw7DNcInTdAsFLgQQlfmO7MnTnxaL93KpbR12eMLkau7/QRPxE+LSjeqHCHWMs tuH4i7Hgd4hfhYoWma8lBR3Jca7YOa882QLKoUPZ4+qt2G0WkvpkW95E3RFnLFvD M0bTTqk2E6oAKIps+Rbfu4/e2cpGygBk9m2ZcXWLXJKEQHeQ4Pn97ns15xWTDtn3 q0XIbEMqHRG7RVqm/V+fiKB4n4joSxDRD8MZEfGm6e9d7pJIQfz1ZIFmvpsiNcE= =vMv+ -----END PGP SIGNATURE-----
diff --git a/qemu-char.c b/qemu-char.c index e133f4f..aa2e660 100644 --- a/qemu-char.c +++ b/qemu-char.c @@ -1835,12 +1835,12 @@ static int pp_ioctl(CharDriverState *chr, int cmd, void *arg) } static CharDriverState *qemu_chr_open_pp_fd(int fd, - ChardevBackend *backend, + ChardevCommon *backend, Error **errp) { CharDriverState *chr; - chr = qemu_chr_alloc(common, errp); + chr = qemu_chr_alloc(backend, errp); if (!chr) { return NULL; }