Windows Subsystem for Linux
The code of line break - EOL i.e., End-of-line - should be LF instead of CRLF in the .profile file on Bash.
I was able to avoid the error with that.

Then type the following command to update.
source .profile

Compiling C source files in GCC on WSL (Ubuntu 64-bit)
You can describe the calling convention by specifying an ABI - i.e., Application Binary Interface - attribute of functions for GCC.

# include <stdarg.h>
signed(__attribute__((ms_abi)) f(signed char **argp,...)) {

The sequence of three bytes EFh BFh BDh in UTF-8 represents the Unicode Replacement Character U+FFFD.