- print ' if(%s) {' % instance
- index = '__i' + array.type.id
- print ' Trace::BeginArray(%s);' % (array.length,)
- print ' for (int %s = 0; %s < %s; ++%s) {' % (index, index, array.length, index)
- print ' Trace::BeginElement();'
+ length = '__c' + array.type.tag
+ index = '__i' + array.type.tag
+ print ' if (%s) {' % instance
+ print ' size_t %s = %s;' % (length, array.length)
+ print ' trace::localWriter.beginArray(%s);' % length
+ print ' for (size_t %s = 0; %s < %s; ++%s) {' % (index, index, length, index)
+ print ' trace::localWriter.beginElement();'