On Mon, Oct 17, 2016 at 01:00:29PM +0200, Markus Armbruster wrote: > Eduardo Habkost <[email protected]> writes: > > > On Thu, Oct 13, 2016 at 06:44:14PM +0200, Markus Armbruster wrote: > >> machine_set_property() replaces '_' by '-' in the property name. > >> Except it fails to replace an initial '_'. Screwed up in commit > >> b0ddb8b. Reproducer: "-M pc,__foo_bar=true" produces "Property > >> '._-foo-bar' not found". > >> > >> Error messages using a mangled name rather than the name the user > >> actually wrote is user-hostile, but that's a different topic. > >> > >> Signed-off-by: Markus Armbruster <[email protected]> > > > > Reviewed-by: Eduardo Habkost <[email protected]> > > > > I suggest we follow the same approach we used in the x86 CPU > > code: instead of requiring a special parser that magically > > translate strings, just add property aliases for the old names > > that contained "_". It would fix the user-hostile error messages > > as well. > > Adding the aliases is slightly annoying, but it's probably the easiest > way to get decent error messages.
I started working on it, but then I noticed I had do check for "_" in all TYPE_MACHINE subclasses and it would take more time than I expected. Then I put it at the end of my queue and went work on something else. > How can we ensure no new alias-requiring names get added? Being a style issue, maybe checkpatch.pl could detect some cases. It's not different from the other QOM classes. -- Eduardo
