Hi, $SUBJECT concerns an assertion failure that is triggered when using pretty-printing with varobj. The cause of the problem is actually pretty simple: cplus_describe_child knows nothing about pretty printing. As a result, it strictly enforces that the immediate children of a root varobj whose type is a class/struct must be one of the "fake" children. When asking for an index greater than 2 (CPLUS_FAKE_CHILDren are indices 0, 1, 2), the code asserts because of an unknown fake child. The solution is to teach cplus_describe_child how to fetch the N'th child from the pretty-printed varobj. No regressions on x86_64 native and native-gdbserver. Keith ChangeLog 2013-07-08 Keith Seitz PR varobj/15166 * varobj.c (get_pretty_printed_element_index): New function. (cplus_describe_child): Add handling for pretty-printed varobjs. testsuite/ChangeLog 2013-07-08 Keith Seitz PR varobj/15166 * lib/mi-support.exp (mi_list_varobj_children_range): Ignore a display hint in the expected output. * gdb.python/py-pp-varobj-update.cc: New file. * gdb.python/py-pp.varobj-update.exp: New file. * gdb.python/py-pp-varobj-update.py: New file.