Hello, I have been scouring the net and the gcc documentation without success to try and find a definitive description of the gcc diagnostic messages. I am working on a project in which I need to parse the gcc compiler diagnostics in order to automate the correction of the source code being compiled. For most of the diagnostics, the semantics are fairly self-evident but I am left with a few questions: . In some cases, the 'mark' line that follows an 'invalid conversion' diagnostic description identifies the object that generated the diagnostic with a '^' and a string of '~'s but in some cases the mark line only contains a caret that identifies the closing parenthesis of a function call or declaration and the column value in the diagnostic also points to this location. Why are there two behaviors? . In the case described in the first question above, I have found that the error:/warning: diagnostic is followed by a note: diagnostic that DOES identify the argument that provoked the diagnostic. Is this entirely consistent - i.e. will this 'note:' always be present? . What I am really trying to find is a comprehensive description of the gcc diagnostic message syntax. This is not in the documentation and does not appear to be on the web either. Can you point me at a source? Thanks and regards, David Gilbert David Gilbert - NIH Software 23, chemin du Bois des Arpents 78860 St Nom la Breteche dgilbert@xxxxxxxxxxx Bureau: +33-(0)9.65.03.17.15 Mobile: +33-(0)6-03.85.32.55