fix __has_extension macro to take an argument