Hello.
I was wondering: how should I call a function stored in a separate file that of whom I know nothing but the header?
If I had a function for a queue that takes void* (and therefore I can put anything into it) and I wanted to call the destruction function of the data I'm queueing passing it as a parameter to the destruction function of the queue itself, how should I call it?
If you're using a library that has the implementations of your .h file, then everything would probably be fine in your example except for your stray void before your function call.
If you aren't using a library then you're going to have to do some more magic.
For some obscure reason, if you must use that C implementation of queue:
write a type-unsafe stack clean-up function that accepts a void*
in the function, cast the void* to a pointer to a stack
pass a pointer to that function to queue_destruction()