"stop at start of mi_access"
# The bug was that creating a varobj for A_String_Access would crash.
-set re_ok "\\^done,name=\"A_String_Access\",numchild=\"1\",.*"
+# The value of NUMCHILD may vary on different systems. Use generic $decimal
+# to match possible values.
+set re_ok "\\^done,name=\"A_String_Access\",numchild=\"$decimal\",.*"
set re_error "\\^error,msg=\"Value out of range\.\".*"
mi_gdb_test "-var-create A_String_Access * A_String_Access" \
"($re_ok|$re_error)" \
"mi_access.adb:$bp_location" \
"stop at stop 2"
+# If the VAROBJ_UPDATE_RESULT.TYPE is true, the new_type and new_num_children
+# strings and values will be printed. This currently happens on PowerPC but
+# not X86-64.
+set re_default [string_to_regexp {^done,changelist=[{name="A_String_Access",in_scope="true",type_changed="false",has_more="0"}]}]
+set re_varobj_update_result_type [string_to_regexp {^done,changelist=[{name="A_String_Access",in_scope="true",type_changed="true",new_type="pck.string_access",new_num_children="1",has_more="0"}]}]
mi_gdb_test "-var-update A_String_Access" \
- [string_to_regexp {^done,changelist=[{name="A_String_Access",in_scope="true",type_changed="false",has_more="0"}]}] \
+ "($re_default|$re_varobj_update_result_type)" \
"update at stop 2"
mi_gdb_test "-var-list-children A_String_Access" \