corsis/clock — pull request #14 by mboes (2014-10-26 16:53:38+00:00)
Title:     Use hsc2hs to determine field types, size of TimeSpec, alignment.

The alignment value was wrong. `hsc2hs` computes the correct value for us.
Mor importantly, the size of a long differs from platform to platform.
Whatever the size of a `long`, it usually exceeds the range of an `Int`.
Again, hsc2hs maps a C `long` to the correct Haskell type that fits, on
every architecture.

`Int` cannot be assumed to have the same range than that of a word
(pointer size), no matter the platform (see Haskell report - the
compiler is allowed to still some of the low order bits). So using `Int`
to represent a C `long` was incorrect.