print '#else'
print '# include <alloca.h> // alloca'
print '#endif'
+ print
+ print '#include "trace.hpp"'
+ print
def footer(self, api):
pass
print function.prototype() + ' {'
if function.type is not stdapi.Void:
print ' %s _result;' % function.type
+
+ # No-op if tracing is disabled
+ print ' if (!trace::isTracingEnabled()) {'
+ Tracer.invokeFunction(self, function)
+ if function.type is not stdapi.Void:
+ print ' return _result;'
+ else:
+ print ' return;'
+ print ' }'
+
self.traceFunctionImplBody(function)
if function.type is not stdapi.Void:
print ' return _result;'