On 18/10/2016 11:54, Dr. David Alan Gilbert wrote: > I've not quite figured it out but we're linked against the stubs/ monitor > code rather than the real monitor code; and the stubs monitor_vprintf discards > and the stubs monitor_cur_is_qmp() always returns false, so to silence things > we just have to make cur_mon non-NULL. > Unfortunately cur_mon is of type Monitor * and Monitor isn't defined publicly, > so we can't know it's size. The following evil hack does silence things > for anyone desperate, but I do need to find a neater way; perhaps the right > thing is just to link against monitor and create a dummy "null" chardev as you > say.
If error_printf/error_vprintf are to a separate file, then stubs/ can be changed to use vfprintf unconditionally. And then I wonder what we actually use cur_mon for, perhaps with this change we can remove stubs/mon*. Paolo