You must use parens around the arguments of a function call when the call is compiled before the function being called has been loaded.
My solution doesn't suffer from that problem. It loads the function (i.e. the module) before the call to the function is compiled.
So either add parens around the arguments for POST (and suffer from the loss of prototypes on all imported functions), or use what I already posted.