C99 section 5.1.1.2 states that 'a source file that is not empty shall end in a new-line character'