Ok, now fixed in GitHub. Turns out GCC's handling of signed bit fields seems to be broken (or at the very least different) on non-x86 platforms. I never noticed because in my tests on real hardware I'd been using g.setFontAlign.

setFontAlign is new, but basically it defines how subsequent calls to drawString(txt,x,y) will align the text to x,y. In your example you've left x&y out, so it'll be using 0,0 as the centre, hence the apparent -2,-2.