With these it helps strtok_r is not a standard C function. You have asked for only C99 by using the -std=c99compiler flag, so the header files (of glibc) will only make the standard C99 functions in string.h available to you. Enable extensions by using -std=gnu99 , or by defining one of the extensions, shown in the manpage of strtok , that supports strtok_r before including string.h. E.g.
implicit declaration of function ‘memset’ [-Wimplicit-function-declaration]
wish help you to fix your issue If you return an object from a function, then invoke that as a constructor with new, the original this of the function is THROWN AWAY AND IGNORED AND LOST FOREVER. In other words, the value of this.firstName is never again accessible in this world. What are you trying to accomplish by returning that object literal?
warning: implicit declaration of function 'Min' is invalid in C99 [-Wimplicit-function-declaration]