static unsigned char val;
static void foo(void) {
val = 5;
}
static void wrap(void) {
asm("lda #<%v", foo);
asm("ldx #>%v", foo);
asm("jmp callax");
int main(void) {
val = 0;
wrap();
return val == 5 ? 0 : 1;