second C linkage of overloaded function 'function' not allowed
More than one overloaded function was declared with C linkage.
When using C linkage, only one form of a given function can be made external.
Since overloaded functions have the same undecorated name, they cannot be used with C programs.