if (strcmp(STR(CHILD(n, 1)), "in") == 0) return NotIn; if (strcmp(STR(CHILD(n, 0)), "is") == 0) return IsNot; Shouldn't the 2nd if, do CHILD(n, 1) like the first? Neal