Add ABC_HOST_API_BSD for more generic BSD detection
Use decltype() to typedef reg_t to ensure using the correct type