Add macros CONTRACT_(PRE|PRE_INV|POST|POST_INV)