Humor me and change it from native.font(native.systemFontBold) to just native.systemFontBold
native.systemFont and native.systemFontBold are userdata objects. display.newText() is smart enough to look at the font passed in and determine if it’s a string or one of the userdata based native.whatever font. native.newFont() is supposed to also not care if you pass it a string or a userdata object, but native.font spits out a userdata object so you should be able to bypass calling that and go straight to the native.systemFont or native.systemFontBold.
I’ve not tried it (and I don’t have a device to demonstrate it anyway), so give that a try.
Rob