The struct _timer_info data type includes a sigevent, so we now also have struct _timer_info32 and struct _timer_info64 variants that include the 32- and 64-bit versions of sigevent, respectively. An additional problem is that a process for a 32-bit architecture might have to deal with a timer from a process in a 64-bit architecture.

In a 32-bit architecture, TimerInfo() gives an error of EOVERFLOW if you try to get information on a SIGEV_64BIT sigevent. You can make the call succeed by passing a pointer to a struct _timer_info64 and adding the new _NTO_TIMER_SUPPORT_64BIT bit to the flags argument.

In a 64-bit architecture, the struct _timer_info is big enough, so you don't have to do anything special.