Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
RE: [cdt-dev] AbstractErrorParser question

Title: AbstractErrorParser question
It sounds like the main reason was so other parsers could be used for other things than problem reporting. 
 
- GNU Make Error Parser:  It harvests the output to discover patterns
  that would indicate the current build directory.
- The auto discovery:  (altough not visible to the user)  Also harvest
  the output for information ("-D", "-I" for macros and includes etc ...)
It sounds like these types of things need to be handled outside of the error parsing mechanism.  Maybe have a generic output listener list and an error parsers list?  Anyway, I'm going to change it in our copy as we don't use the output for anything other than problem detection.  I'll log a bugzilla for this so we can figure out how best to handle this going forward.
 
Thanks,
Warren
 


From: cdt-dev-bounces@xxxxxxxxxxx [mailto:cdt-dev-bounces@xxxxxxxxxxx] On Behalf Of ext Doug Schaefer
Sent: Friday, March 16, 2007 5:08 PM
To: CDT General developers list.
Subject: RE: [cdt-dev] AbstractErrorParser question

I think we were being over cautious just to make sure we weren’t missing anything. If you are seeing duplicates, that’s probably worse. We should review this again.

 

Doug Schaefer, QNX Software Systems
Eclipse CDT Project Lead, http://cdtdoug.blogspot.com


From: cdt-dev-bounces@xxxxxxxxxxx [mailto:cdt-dev-bounces@xxxxxxxxxxx] On Behalf Of Treggiari, Leo
Sent: Friday, March 16, 2007 5:29 PM
To: CDT General developers list.
Subject: RE: [cdt-dev] AbstractErrorParser question

 

This has been discussed before – perhaps, more than once.

 

You can start here for one discussion: [cdt-dev] Error Parser Issues..

 

I don’t remember all of the issues, but we didn’t end up changing it…

 

Leo

 


From: cdt-dev-bounces@xxxxxxxxxxx [mailto:cdt-dev-bounces@xxxxxxxxxxx] On Behalf Of Warren.Paul@xxxxxxxxx
Sent: Friday, March 16, 2007 1:27 PM
To: cdt-dev@xxxxxxxxxxx
Subject: [cdt-dev] AbstractErrorParser question

 

AbstractErrorParser#processLine has an interesting comment in it.

        public boolean processLine(String line, ErrorParserManager eoParser) {
                for (int i = 0; i < patterns.length; ++i)
                        if (patterns[i].processLine(line, eoParser))
                                break;
                // Should this return true if we processed a line?
                return false;
        }

My understanding is that processLine should return true if it generates a marker from the line.  Otherwise, the same line is passed to other error parsers which may also handle it.  We've been seeing duplicate warning markers for a while but wasn't sure why.  Any reason why we shouldn't change this to this?

        public boolean processLine(String line, ErrorParserManager eoParser) {
                for (int i = 0; i < patterns.length; ++i)
                        if (patterns[i].processLine(line, eoParser))
                                return true;
                return false;
        }


Back to the top