Fix type mismatch in enum deserialization.
authorJosé Fonseca <jose.r.fonseca@gmail.com>
Mon, 2 Apr 2012 06:10:48 +0000 (08:10 +0200)
committerJosé Fonseca <jose.r.fonseca@gmail.com>
Sat, 7 Apr 2012 10:01:50 +0000 (11:01 +0100)
retrace.py

index 47292e0..5913f56 100644 (file)
@@ -63,7 +63,7 @@ class ValueDeserializer(stdapi.Visitor):
         self.visit(alias.type, lvalue, rvalue)
     
     def visitEnum(self, enum, lvalue, rvalue):
-        print '    %s = (%s).toSInt();' % (lvalue, rvalue)
+        print '    %s = static_cast<%s>((%s).toSInt());' % (lvalue, enum, rvalue)
 
     def visitBitmask(self, bitmask, lvalue, rvalue):
         self.visit(bitmask.type, lvalue, rvalue)