i blame this one on posix for using hideous const-qualified double pointers which are unusable without hideous casts.