This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
[rfc patch+7.11] gdb-gdb.py: SyntaxError: Missing parentheses in call to 'print'
- From: Jan Kratochvil <jan dot kratochvil at redhat dot com>
- To: gdb-patches at sourceware dot org
- Date: Mon, 22 Feb 2016 16:56:46 +0100
- Subject: [rfc patch+7.11] gdb-gdb.py: SyntaxError: Missing parentheses in call to 'print'
- Authentication-results: sourceware.org; auth=none
Hi,
after build GDB
--with-python=/usr/bin/python3
and for example stripping ./gdb and running:
./gdb -data-directory data-directory/ -iex "add-auto-load-safe-path $PWD/gdb-gdb.gdb" -iex "add-auto-load-safe-path $PWD/gdb-gdb.py" ./gdb
I get:
Make breakpoint pending on future shared library load? (y or [n]) [answered N; input not from terminal]
File "/home/jkratoch/redhat/gdb-test-python3/gdb/gdb-gdb.py", line 91
print "Warning: Cannot find enum type_flag_value type."
^
SyntaxError: Missing parentheses in call to 'print'
(top-gdb) q
The fix would be obvious:
s/print \(".*"\)/print (\1)
But then I was curious I do not see the warning messsage anyway.
So I tried to append \n to that string but I still do not see the warning.
But I do not know why. This patch is probably right and it could be checked
in as "obvious" but given the warning still is not seen who knows.
Jan
gdb/ChangeLog
2016-02-22 Jan Kratochvil <jan.kratochvil@redhat.com>
* gdb-gdb.py (class TypeFlagsPrinter): Use parentheses for print.
diff --git a/gdb/gdb-gdb.py b/gdb/gdb-gdb.py
index 4f3ac1c..9a12baf 100644
--- a/gdb/gdb-gdb.py
+++ b/gdb/gdb-gdb.py
@@ -88,14 +88,14 @@ class TypeFlagsPrinter:
try:
flags = gdb.lookup_type("enum type_flag_value")
except:
- print "Warning: Cannot find enum type_flag_value type."
- print " `struct type' pretty-printer will be degraded"
+ print("Warning: Cannot find enum type_flag_value type.")
+ print(" `struct type' pretty-printer will be degraded")
return
try:
iflags = gdb.lookup_type("enum type_instance_flag_value")
except:
- print "Warning: Cannot find enum type_instance_flag_value type."
- print " `struct type' pretty-printer will be degraded"
+ print("Warning: Cannot find enum type_instance_flag_value type.")
+ print(" `struct type' pretty-printer will be degraded")
return
# Note: TYPE_FLAG_MIN is a duplicate of TYPE_FLAG_UNSIGNED,
# so exclude it from the list we are building.