c89 compatible