why is it
apr_uint32_t apr_atomic_cas(volatile apr_uint32_t *, long, long) (generic version)
apr_uint32_t apr_atomic_cas(volatile apr_atomic_t *, apr_uint32_t,
apr_uint32_t cmp)
(MVS version)instead of
apr_uint32_t apr_atomic_cas(volatile apr_uint32_t *, apr_uint32_t,
apr_uint32_t)everywhere?
The MVS version just has a typographical difference to what is needed (apr_atomic_t vs. apr_uint32_t, which are the same). The generic version is broken where long is 64-bit.
Is there some reason why "long" was chosen for the 2nd and 3rd parameters.
