def retrace_function_body(self, function):
if not function.sideeffects:
+ print ' (void)call;'
return
success = True
success = False
print ' %s = 0; // FIXME' % arg.name
if not success:
+ print ' if (1) {'
self.fail_function(function)
+ print ' }'
self.call_function(function)
for arg in function.args:
if arg.output:
def extract_arg(self, function, arg, arg_type, lvalue, rvalue):
ValueExtractor().visit(arg_type, lvalue, rvalue)
+
+ def extract_opaque_arg(self, function, arg, arg_type, lvalue, rvalue):
+ OpaqueValueExtractor().visit(arg_type, lvalue, rvalue)
def call_function(self, function):
arg_names = ", ".join([arg.name for arg in function.args])
self.retrace_function(function)
print 'void retrace::retrace_call(Trace::Call &call) {'
- print ' const char *name = call.name().c_str();'
+ print ' const char *name = call.name();'
print
func_dict = dict([(function.name, function) for function in functions])