From 68ad5fb9aa5ea8d00f95a19cd0c3ab211fb21f83 Mon Sep 17 00:00:00 2001 From: Simon Marchi Date: Wed, 27 Jun 2018 14:32:05 -0400 Subject: [PATCH] gdb-gdb.py.in: Fix ordering of TypeFlags objects with Python 3 Python 3 doesn't use __cmp__ to order objects, it uses __lt__. Because of this, we get this exception when trying to pretty-print "type" objects: I tested it with Python 2.7 as well. gdb/ChangeLog: * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove. <__lt__>: Add. --- gdb/ChangeLog | 5 +++++ gdb/gdb-gdb.py.in | 6 ++++-- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 644aed8e751..9a740097c42 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,8 @@ +2018-06-27 Simon Marchi + + * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove. + <__lt__>: Add. + 2018-06-27 Simon Marchi * gdb-gdb.py: Move to... diff --git a/gdb/gdb-gdb.py.in b/gdb/gdb-gdb.py.in index b8bb1ada9e3..c844e4c98ac 100644 --- a/gdb/gdb-gdb.py.in +++ b/gdb/gdb-gdb.py.in @@ -38,9 +38,11 @@ class TypeFlag: self.name = name self.value = value self.short_name = name.replace("TYPE_INSTANCE_FLAG_", '') - def __cmp__(self, other): + + def __lt__(self, other): """Sort by value order.""" - return self.value.__cmp__(other.value) + return self.value < other.value + # A list of all existing TYPE_INSTANCE_FLAGS_* enumerations, # stored as TypeFlags objects. Lazy-initialized. -- 2.30.2