first compile successfully as a program