The QOM types of QemuTextConsole and QemuFixedTextConsole are declared by OBJECT_DECLARE_SIMPLE_TYPE, which means they don't need the class!
Therefore, use OBJECT_DEFINE_SIMPLE_TYPE to implement the type, then there's no need for class definition. Cc: "Marc-André Lureau" <marcandre.lur...@redhat.com> Signed-off-by: Zhao Liu <zhao1....@intel.com> --- ui/console-vc.c | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/ui/console-vc.c b/ui/console-vc.c index 830842064d69..1b2c6951c275 100644 --- a/ui/console-vc.c +++ b/ui/console-vc.c @@ -70,17 +70,19 @@ typedef struct QemuTextConsole { Fifo8 out_fifo; } QemuTextConsole; -typedef QemuConsoleClass QemuTextConsoleClass; - -OBJECT_DEFINE_TYPE(QemuTextConsole, qemu_text_console, QEMU_TEXT_CONSOLE, QEMU_CONSOLE) +OBJECT_DEFINE_SIMPLE_TYPE(QemuTextConsole, + qemu_text_console, + QEMU_TEXT_CONSOLE, + QEMU_CONSOLE) typedef struct QemuFixedTextConsole { QemuTextConsole parent; } QemuFixedTextConsole; -typedef QemuTextConsoleClass QemuFixedTextConsoleClass; - -OBJECT_DEFINE_TYPE(QemuFixedTextConsole, qemu_fixed_text_console, QEMU_FIXED_TEXT_CONSOLE, QEMU_TEXT_CONSOLE) +OBJECT_DEFINE_SIMPLE_TYPE(QemuFixedTextConsole, + qemu_fixed_text_console, + QEMU_FIXED_TEXT_CONSOLE, + QEMU_TEXT_CONSOLE) struct VCChardev { Chardev parent; -- 2.34.1