I don't think so. Gotos are fine, strcat and strcpy without a malloc with the correct size in the same scope is a code smell.