printers.py: Don't use string exceptions.
2010-06-22 Matthias Klose <doko@ubuntu.com> * python/libstdcxx/v6/printers.py: Don't use string exceptions. From-SVN: r161233
This commit is contained in:
parent
87867ff656
commit
b2e894b50a
|
@ -1,3 +1,7 @@
|
||||||
|
2010-06-22 Matthias Klose <doko@ubuntu.com>
|
||||||
|
|
||||||
|
* python/libstdcxx/v6/printers.py: Don't use string exceptions.
|
||||||
|
|
||||||
2010-06-22 Paolo Carlini <paolo.carlini@oracle.com>
|
2010-06-22 Paolo Carlini <paolo.carlini@oracle.com>
|
||||||
|
|
||||||
PR libstdc++/44630
|
PR libstdc++/44630
|
||||||
|
|
|
@ -15,7 +15,7 @@
|
||||||
# You should have received a copy of the GNU General Public License
|
# You should have received a copy of the GNU General Public License
|
||||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
import gdb
|
#import gdb
|
||||||
import itertools
|
import itertools
|
||||||
import re
|
import re
|
||||||
|
|
||||||
|
@ -77,6 +77,7 @@ class StdListPrinter:
|
||||||
elif self.typename == "std::__debug::list":
|
elif self.typename == "std::__debug::list":
|
||||||
nodetype = gdb.lookup_type('std::__norm::_List_node<%s>' % itype).pointer()
|
nodetype = gdb.lookup_type('std::__norm::_List_node<%s>' % itype).pointer()
|
||||||
else:
|
else:
|
||||||
|
#raise ValueError, "Cannot cast list node for list printer."
|
||||||
raise "Cannot cast list node for list printer."
|
raise "Cannot cast list node for list printer."
|
||||||
return self._iterator(nodetype, self.val['_M_impl']['_M_node'])
|
return self._iterator(nodetype, self.val['_M_impl']['_M_node'])
|
||||||
|
|
||||||
|
@ -101,7 +102,7 @@ class StdListIteratorPrinter:
|
||||||
elif self.typename == "std::__norm::_List_iterator" or self.typename == "std::__norm::_List_const_iterator":
|
elif self.typename == "std::__norm::_List_iterator" or self.typename == "std::__norm::_List_const_iterator":
|
||||||
nodetype = gdb.lookup_type('std::__norm::_List_node<%s>' % itype).pointer()
|
nodetype = gdb.lookup_type('std::__norm::_List_node<%s>' % itype).pointer()
|
||||||
else:
|
else:
|
||||||
raise "Cannot cast list node for list iterator printer."
|
raise ValueError, "Cannot cast list node for list iterator printer."
|
||||||
return self.val['_M_node'].cast(nodetype).dereference()['_M_data']
|
return self.val['_M_node'].cast(nodetype).dereference()['_M_data']
|
||||||
|
|
||||||
class StdSlistPrinter:
|
class StdSlistPrinter:
|
||||||
|
@ -208,7 +209,7 @@ class StdTuplePrinter:
|
||||||
# tuple.
|
# tuple.
|
||||||
nodes = self.head.type.fields ()
|
nodes = self.head.type.fields ()
|
||||||
if len (nodes) != 1:
|
if len (nodes) != 1:
|
||||||
raise "Top of tuple tree does not consist of a single node."
|
raise ValueError, "Top of tuple tree does not consist of a single node."
|
||||||
|
|
||||||
# Set the actual head to the first pair.
|
# Set the actual head to the first pair.
|
||||||
self.head = self.head.cast (nodes[0].type)
|
self.head = self.head.cast (nodes[0].type)
|
||||||
|
@ -224,7 +225,7 @@ class StdTuplePrinter:
|
||||||
raise StopIteration
|
raise StopIteration
|
||||||
# Check that this iteration has an expected structure.
|
# Check that this iteration has an expected structure.
|
||||||
if len (nodes) != 2:
|
if len (nodes) != 2:
|
||||||
raise "Cannot parse more than 2 nodes in a tuple tree."
|
raise ValueError, "Cannot parse more than 2 nodes in a tuple tree."
|
||||||
|
|
||||||
# - Left node is the next recursion parent.
|
# - Left node is the next recursion parent.
|
||||||
# - Right node is the actual class contained in the tuple.
|
# - Right node is the actual class contained in the tuple.
|
||||||
|
|
Loading…
Reference in New Issue