fix #2353, ensure macro arguments are not internal types