introduce MY_CXT, and C89 fix