implementation restriction: untyped macros ignore partial type annotations