On Sun, 14 May 2006 11:46:33 +0200
Florian Klaempfl <[EMAIL PROTECTED]> wrote:

> Michael Van Canneyt wrote:
> > 
> > On Sun, 14 May 2006, Daniël Mantione wrote:
> > 
> >>
> >> Op Sun, 14 May 2006, schreef Michael Van Canneyt:
> >>
> >>>
> >>> On Sun, 14 May 2006, Daniël Mantione wrote:
> >>>
> >>>>
> >>>> Op Sun, 14 May 2006, schreef Martin Schreiber:
> >>>>
> >>>>> Since some time FPC doesn't  flush output on pipes after writeln.
> >>>>> On linux I can use a pseudo terminal, what can I do on win32 to get
> >flushed  >>>> output from FPC into the message window of MSEide?
> >>>> It is strongly recommended against to parse the compiler output, as
> >it is  >>> designed for humans, not computers. The formatting of the
> >compiler output  >>> can therefore change in time and can also be
> >configured by the user in any  >>> language. Some people are doing it
> >anyway, like Lazarus. >>>
> >>>> The compiler has an interface designed for computers and that is
> >through  >>> the compiler and comphook units. This allows you to retrieve
> >the messages  >>> neatly. If you want process separation, please write a
> >wrapper that puts  >>> the messages in a computer friendly way, and we'll
> >include it in FPC. >> We could do this ourselves by assigning a unique
> >number to each error. >> (and keeping these numbers)
> >> I think a command line output for computers needs to be a bit more 
> >> advanced, take for example this error message:
> >>
> >> testc.pas(11,1) Fatal: Syntax error, "BEGIN" expected but "identifier
> >Z" found >
> >> We have:
> >> * The source file
> >> * The error location
> >> * The error severity
> >> * The error message, containing two parameters.
> >>
> >> Both the severity and error message are currently unpredictable, i.e.
> >they  > can be translated for example. Some IDE's may want to have access
> >to the  > error messages their parameters as well.
> >>
> >> A command line output for computers also needs to be extendable, if we 
> >> want to output more information, this should not break existing 
> >> applications.
> >>
> >> For example, a good way to output this error message in a computer
> >> friendly format would be:
> >>
> >> error:(file='testc.pas';line=11;column=1;message_code='02003_F';
> >>        message='Syntax error, $1 expected but $2 found';
> >>        parameters=('BEGIN','IDENTIFIER Z'));
> > 
> > I'm all for such a message form; it should be easy to add with some -v
> > switch... But  
> > - This is no use if the message code changes over time,
> >   because that is still the unique identifier for the error...
> > - The message itself should not be given, IMHO. 
> >   The program can look it up in the error message file...
> 
> Parsing the current error messages isn't that hard?

For the quick fix items (like eclipse and lazarus), we need the message ID
and parameters, independent of current localization. 


Mattias
_______________________________________________
fpc-devel maillist  -  fpc-devel@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-devel

Reply via email to