Why is this a macro? It's not like apr_uint32_t is a name which is going to change any time soon?
It's a macro because we don't want to lose sight of the fact that we did something there that we utimately want to back out (i.e. in APR 2.0 when we can change the API). If we used apr_uint32_t it would be easy to lose track of these places - make sense?
Allan