+2014-06-23 Siva Chandra Reddy <sivachandra@google.com>
+
+ * python/lib/gdb/command/xmethods.py
+ (get_method_matchers_in_loci): Lookup xmethod matchers in the
+ current progspace only if the string "progspace" matches LOCUS_RE.
+
2014-06-20 Jan Kratochvil <jan.kratochvil@redhat.com>
Fix --with-system-readline with readline-6.3 patch 5.
Arguments:
loci: The list of loci to lookup matching xmethods in.
- locus_re: Xmethod matchers will be looked up in a particular locus
- only if its filename matches the regular expression LOCUS_RE.
+ locus_re: If a locus is an objfile, then xmethod matchers will be
+ looked up in it only if its filename matches the regular
+ expression LOCUS_RE. If a locus is the current progspace,
+ then xmethod matchers will be looked up in it only if the
+ string "progspace" matches LOCUS_RE.
matcher_re: The regular expression to match the xmethod matcher
names.
xm_dict = {}
for locus in loci:
if isinstance(locus, gdb.Progspace):
- if (not locus_re.match(locus.filename) and
- not locus_re.match('progspace')):
+ if not locus_re.match('progspace'):
continue
locus_type = "progspace"
else:
+2014-06-23 Siva Chandra Reddy <sivachandra@google.com>
+
+ * gdb.python/py-xmethods.exp: Use "progspace" instead of the
+ progspace's filename in 'info', 'enable' and 'disable' command
+ tests.
+
2014-06-23 Jan Kratochvil <jan.kratochvil@redhat.com>
* gdb.arch/amd64-stap-special-operands.exp: Use is_lp64_target.
"After: g_ptr->mul<char>('a')"
# Tests for 'disable/enable xmethod' command.
-gdb_test_no_output "disable xmethod .*xmethods G_methods" \
+gdb_test_no_output "disable xmethod progspace G_methods" \
"Disable G_methods"
gdb_test "p g.mul<char>('a')" "Couldn't find method.*" \
"g.mul<char>('a') after disabling G_methods"
-gdb_test_no_output "enable xmethod .*xmethods G_methods" \
+gdb_test_no_output "enable xmethod progspace G_methods" \
"Enable G_methods"
gdb_test "p g.mul<char>('a')" "From Python G<>::mul.*" \
"After enabling G_methods"
-gdb_test_no_output "disable xmethod .*xmethods G_methods;mul" \
+gdb_test_no_output "disable xmethod progspace G_methods;mul" \
"Disable G_methods;mul"
gdb_test "p g.mul<char>('a')" "Couldn't find method.*" \
"g.mul<char>('a') after disabling G_methods;mul"
-gdb_test_no_output "enable xmethod .*xmethods G_methods;mul" \
+gdb_test_no_output "enable xmethod progspace G_methods;mul" \
"Enable G_methods;mul"
gdb_test "p g.mul<char>('a')" "From Python G<>::mul.*" \
"After enabling G_methods;mul"
# Test for 'info xmethods' command
gdb_test "info xmethod global plus" "global.*plus_plus_A" \
"info xmethod global plus 1"
-gdb_test_no_output "disable xmethod .*xmethods E_methods;method_int" \
- "disable xmethod .*xmethods E_methods;method_int"
-gdb_test "info xmethod .*xmethods E_methods;method_int" ".* \\\[disabled\\\]" \
+gdb_test_no_output "disable xmethod progspace E_methods;method_int" \
+ "disable xmethod progspace E_methods;method_int"
+gdb_test "info xmethod progspace E_methods;method_int" ".* \\\[disabled\\\]" \
"info xmethod xmethods E_methods;method_int"
remote_file host delete ${xmethods_script}