Library assumes a default integer kind
I think that the library only compiles if the default integer kind matches ip
, which typically is 32-bits. If the default integer kind is different (e.g., in the typical case, 64-bits long), the library won't compile due to kind mismatches.
I think this should be addressed in the code. If not, I think it should at least be more clearly documented.