11.2 Translation

ISO Standard Implementation
“How a diagnostic is identified (3.10, 5.1.1.3).”
By default, when compiling on the command-line the following formats are used. The string (warning) is only displayed for warning messages.
filename: function()
linenumber: source line
^ (ID) message (warning)

or

filename: linenumber: (ID) message (warning)

where filename is the name of the file that contains the code (or empty if no particular file is relevant); linenumber is the line number of the code (or 0 if no line number is relevant); ID is a unique number that identifies the message; and message is the diagnostic message itself.

“Whether each nonempty sequence of white-space characters other than new-line is retained or replaced by one space character in translation phase 3 (5.1.1.2).”
The compiler will replace each leading or interleaved whitespace character sequences with a space. A trailing sequence of whitespace characters is replaced with a new-line.