about summary refs log tree commit diff
path: root/scripts
diff options
context:
space:
mode:
authorJohan Althoff <teetow@gmail.com>2007-07-13 21:56:08 +0000
committerJohan Althoff <teetow@gmail.com>2007-07-13 21:56:08 +0000
commit7acef9eb864344b26cb78f22da369851cc31aa76 (patch)
tree65848e4ed972bbaae4a37b50d1910c38d213bc0c /scripts
parent519e644a6258b06ac1836b5da0a575205dd0dbea (diff)
downloadzcatch-7acef9eb864344b26cb78f22da369851cc31aa76.tar.gz
zcatch-7acef9eb864344b26cb78f22da369851cc31aa76.zip
fixed errors in the data compiler
Diffstat (limited to 'scripts')
-rwxr-xr-xscripts/compiler.py5
1 files changed, 3 insertions, 2 deletions
diff --git a/scripts/compiler.py b/scripts/compiler.py
index 547bcb96..5d90e882 100755
--- a/scripts/compiler.py
+++ b/scripts/compiler.py
@@ -180,7 +180,8 @@ class data_constructor:
 			if p.target in self.targets:
 				i = self.targets[p.target]
 				#print "ptr @ %d -> %s -> %d" % (p.index, p.target, i)
-				self.write(p.index, 8, struct.pack("P", i)) # TODO: fix me
+				data = struct.pack("P", i)
+				self.write(p.index, len(data), data)
 			else:
 				print "ERROR: couldn't find target '%s' for pointer at %d" % (p.target, p.index)
 
@@ -305,7 +306,7 @@ class variable_instance(variable):
 	def get_patch_code(self, ptrname, basename):
 		return ["patch_ptr_%s(&(%s->%s), %s);" % (self.subtype, ptrname, self.name, basename)]
 	def size(self):
-		return translator.types[self.subtype].size()
+		return self.translator.types[self.subtype].size()
 	def emit_data(self, cons, index, src_data):
 		target = src_data.find_node(self.expr)
 		translator.types[self.subtype].emit_data(cons, index, target)