'define extern function printf style in ispc for logging

I want to implement a debugging function for my ispc code that can take a logging level as an argument and then printf style string and arguments.

The signature would be something like:

extern "C" void debug_log(enumDebugLevel debugLevel, char *literalString, ...);

I can see that ispc doesn't support "Variable numbers of arguments to functions" neither does it support strings or the char data type so I am thinking that the chances are pretty limited.

However, there is a built in function called print that works with both string literals and variable argument count. I am wondering if there is a way to implement my function as an extern function even though ispc itself does not support these features.



Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source