1
0
Fork 0
mirror of https://github.com/eclipse-cdt/cdt synced 2025-06-07 17:56:01 +02:00

Move the code to check for "(Each undeclared" pattern.

Append the filename in the descripion if the resource is not found.
This commit is contained in:
Alain Magloire 2002-11-06 16:28:19 +00:00
parent aef723b19b
commit f9820ec147

View file

@ -60,56 +60,58 @@ public class GCCErrorParser implements IErrorParser {
return false; return false;
} }
} }
IFile file = eoParser.findFilePath(fileName);
if (file != null) { // gnu c: filename:no: (Each undeclared identifier is reported
// gnu c: filename:no: (Each undeclared identifier is reported // only once. filename:no: for each function it appears in.)
// only once. filename:no: for each function it appears in.) if (desc.startsWith ("(Each undeclared")) {
if (desc.startsWith ("(Each undeclared")) { // Do nothing.
return false;
} else {
String previous = eoParser.getPreviousLine();
if (desc.endsWith(")")
&& previous.indexOf("(Each undeclared") >= 0 ) {
// Do nothing. // Do nothing.
return false; return false;
} else {
String previous = eoParser.getPreviousLine();
if (desc.endsWith(")")
&& previous.indexOf("(Each undeclared") >= 0 ) {
// Do nothing.
return false;
}
} }
/* See if we can get a var name }
* Look for:
* 'foo' undeclared /* See if we can get a var name
* 'foo' defined but not used * Look for:
* conflicting types for 'foo' * 'foo' undeclared
* * 'foo' defined but not used
*/ * conflicting types for 'foo'
int s; *
if((s = desc.indexOf("\' undeclared")) != -1) { */
int p = desc.indexOf("`"); int s;
if(p != -1) { if((s = desc.indexOf("\' undeclared")) != -1) {
varName = desc.substring(p+1, s); int p = desc.indexOf("`");
System.out.println("undex varName "+ varName); if (p != -1) {
} varName = desc.substring(p+1, s);
} else if((s = desc.indexOf("\' defined but not used")) != -1) { System.out.println("undex varName "+ varName);
int p = desc.indexOf("`"); }
if(p != -1) { } else if((s = desc.indexOf("\' defined but not used")) != -1) {
varName = desc.substring(p+1, s); int p = desc.indexOf("`");
System.out.println("unused varName "+ varName); if (p != -1) {
} varName = desc.substring(p+1, s);
} else if((s = desc.indexOf("conflicting types for `")) != -1) { System.out.println("unused varName "+ varName);
int p = desc.indexOf("\'", s); }
if(p != -1) { } else if((s = desc.indexOf("conflicting types for `")) != -1) {
varName = desc.substring(desc.indexOf("`") + 1, p); int p = desc.indexOf("\'", s);
System.out.println("confl varName "+ varName); if (p != -1) {
} varName = desc.substring(desc.indexOf("`") + 1, p);
} else if((s = desc.indexOf("previous declaration of `")) != -1) { System.out.println("confl varName "+ varName);
int p = desc.indexOf("\'", s); }
if(p != -1) { } else if((s = desc.indexOf("previous declaration of `")) != -1) {
varName = desc.substring(desc.indexOf("`") + 1, p); int p = desc.indexOf("\'", s);
System.out.println("prev varName "+ varName); if (p != -1) {
} varName = desc.substring(desc.indexOf("`") + 1, p);
} System.out.println("prev varName "+ varName);
} else { }
}
IFile file = eoParser.findFilePath(fileName);
if (file == null) {
// Parse the entire project. // Parse the entire project.
file = eoParser.findFileName(fileName); file = eoParser.findFileName(fileName);
if (file != null) { if (file != null) {
@ -119,15 +121,16 @@ public class GCCErrorParser implements IErrorParser {
file = null; file = null;
} }
} }
// Display the fileName.
if (file == null) {
desc = fileName + ": " + desc;
}
} }
if (desc.startsWith("warning") || desc.startsWith("Warning")) { if (desc.startsWith("warning") || desc.startsWith("Warning")) {
severity = IMarkerGenerator.SEVERITY_WARNING; severity = IMarkerGenerator.SEVERITY_WARNING;
} }
// Display the fileName.
if (file == null) {
desc = desc +"[" + fileName + "]";
}
eoParser.generateMarker(file, num, desc, severity, varName); eoParser.generateMarker(file, num, desc, severity, varName);
} }
} catch (StringIndexOutOfBoundsException e) { } catch (StringIndexOutOfBoundsException e) {