Using a getter or trying to resolve an overloaded property is ambiguous. Disallow it.
Signed-off-by: Peter Crosthwaite <peter.crosthwa...@xilinx.com> --- qom/object.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/qom/object.c b/qom/object.c index 967ed0d..1590df7 100644 --- a/qom/object.c +++ b/qom/object.c @@ -827,6 +827,9 @@ void object_property_get(Object *obj, Visitor *v, const char *name, if (!prop->get) { error_set(errp, QERR_PERMISSION_DENIED); + } else if (prop->overloaded) { + error_setg(errp, "Overloaded property '.%s' getter not supported\n", + name); } else { prop->get(obj, v, prop->opaque, name, errp); } @@ -1352,7 +1355,7 @@ gchar *object_get_canonical_path(Object *obj) Object *object_resolve_path_component(Object *parent, const gchar *part) { ObjectProperty *prop = object_property_find(parent, part, NULL); - if (prop == NULL) { + if (prop == NULL || prop->overloaded) { return NULL; } -- 2.4.3.3.g905f831